titan-cli 0.4.3__tar.gz → 0.4.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {titan_cli-0.4.3 → titan_cli-0.4.5}/PKG-INFO +1 -1
- {titan_cli-0.4.3 → titan_cli-0.4.5}/pyproject.toml +1 -1
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/cli.py +31 -8
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/utils/autoupdate.py +99 -5
- {titan_cli-0.4.3 → titan_cli-0.4.5}/LICENSE +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/README.md +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/git_client.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/network/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/network/git_network.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/services/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/services/branch_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/services/commit_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/services/diff_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/services/remote_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/services/stash_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/services/status_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/services/tag_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/services/worktree_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/exceptions.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/messages.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/mappers/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/mappers/branch_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/mappers/commit_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/mappers/status_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/mappers/tag_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/mappers/worktree_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/network/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/network/branch.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/network/commit.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/network/status.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/network/tag.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/network/worktree.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/view/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/view/branch.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/view/commit.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/view/status.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/view/tag.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/view/worktree.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/operations/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/operations/branch_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/operations/commit_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/operations/diff_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/plugin.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/ai_commit_message_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/branch_steps.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/checkout_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/commit_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/create_branch_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/create_worktree_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/diff_summary_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/pull_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/push_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/remove_worktree_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/restore_original_branch_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/save_current_branch_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/status_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/worktree_command_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/workflows/__previews__/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/workflows/__previews__/commit_ai_preview.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/workflows/commit-ai.yaml +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/agents/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/agents/code_review_agent.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/agents/config_loader.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/agents/issue_generator.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/agents/pr_agent.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/checklists/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/checklists/defaults.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/github_client.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/network/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/network/gh_network.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/network/graphql_network.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/network/graphql_queries.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/protocols.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/services/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/services/issue_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/services/pr_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/services/release_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/services/review_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/clients/services/team_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/config/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/config/pr_agent.toml +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/exceptions.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/managers/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/managers/checklist_manager.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/managers/diff_context_manager.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/messages.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/diff_models.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/formatting.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/mappers/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/mappers/comment_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/mappers/issue_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/mappers/pr_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/mappers/release_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/mappers/review_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/mappers/thread_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/graphql/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/graphql/issue_comment.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/graphql/review_comment.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/graphql/review_thread.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/graphql/user.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/rest/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/rest/issue.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/rest/pull_request.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/rest/release.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/rest/review.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/network/rest/user.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/review_enums.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/review_models.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/validators.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/view.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/code_review_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/comment_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/context_resolution_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/findings_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/issue_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/manifest_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/plan_prompt_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/pr_creation_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/pr_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/review_action_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/thread_resolution_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/operations/worktree_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/plugin.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/ai_pr_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/code_review_steps.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/create_pr_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/github_prompt_steps.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/issue_steps.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/pr_review_steps.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/preview_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/pull_request_steps.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/select_cli_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/steps/worktree_steps.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/utils.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/widgets/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/widgets/code_block.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/widgets/comment_thread.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/widgets/comment_utils.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/widgets/comment_view.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/widgets/reply_comment.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/workflows/__previews__/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/workflows/__previews__/create_pr_ai_preview.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/workflows/create-issue-ai.yaml +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/workflows/create-pr-ai.yaml +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/workflows/respond-pr-comments.yaml +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/workflows/review-pr-new-findings.yaml.disabled +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/workflows/review-pr-thread-resolution.yaml.disabled +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/agents/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/agents/config_loader.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/agents/jira_agent.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/agents/prompts.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/agents/response_parser.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/agents/token_tracker.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/agents/validators.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/jira_client.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/network/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/network/jira_network.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/services/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/services/comment_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/services/issue_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/services/link_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/services/metadata_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/services/project_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/clients/services/transition_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/config/jira_agent.toml +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/config/templates/generic_issue.md.j2 +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/config/templates/issue_analysis.md.j2 +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/constants/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/constants/defaults.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/constants/messages.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/constants/templates.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/constants.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/exceptions.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/formatters/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/formatters/markdown_formatter.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/messages.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/enums.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/formatting.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/mappers/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/mappers/comment_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/mappers/issue_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/mappers/issue_type_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/mappers/priority_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/mappers/project_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/mappers/status_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/mappers/transition_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/mappers/user_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/mappers/version_mapper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/network/rest/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/network/rest/comment.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/network/rest/issue.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/network/rest/issue_type.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/network/rest/priority.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/network/rest/project.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/network/rest/status.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/network/rest/transition.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/network/rest/user.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/network/rest/version.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/models/view.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/operations/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/operations/issue_formatting_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/operations/issue_management_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/operations/issue_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/operations/jql_operations.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/plugin.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/ai_analyze_issue_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/ai_enhance_issue_description_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/confirm_auto_assign_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/create_generic_issue_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/get_issue_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/issue_management_steps.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/list_versions_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/prompt_issue_description_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/prompt_select_issue_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/review_issue_description_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/search_jql_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/search_saved_query_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/select_issue_priority_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/steps/select_issue_type_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/utils/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/utils/input_validation.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/utils/issue_sorter.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/utils/saved_queries.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/utils.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/workflows/analyze-jira-issues.yaml +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-jira/titan_plugin_jira/workflows/create-generic-issue.yaml +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/__main__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/agents/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/agents/base.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/client.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/constants.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/dependencies.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/exceptions.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/litellm_client.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/llm_tools.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/models.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/oauth_helper.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/providers/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/providers/anthropic.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/providers/base.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/providers/gemini.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/providers/litellm.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ai/providers/openai.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/clients/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/clients/gcloud_client.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/config.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/discovery.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/errors.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/logging/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/logging/config.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/logging/decorators.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/migrations/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/migrations/base.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/migrations/legacy_to_v1.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/migrations/manager.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/models/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/models/code_review.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/plugins/available.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/plugins/community_sources.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/plugins/local_sources.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/plugins/models.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/plugins/plugin_base.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/plugins/plugin_registry.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/plugins/runtime.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/result.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/secrets.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/utils.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/validators/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/workflows/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/workflows/models.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/workflows/project_step_source.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/workflows/workflow_exceptions.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/workflows/workflow_filter_service.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/workflows/workflow_registry.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/core/workflows/workflow_sources.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/engine/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/engine/builder.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/engine/context.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/engine/mock_context.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/engine/results.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/engine/steps/ai_assistant_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/engine/steps/command_step.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/engine/utils/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/engine/utils/venv.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/engine/workflow_executor.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/external_cli/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/external_cli/adapters/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/external_cli/adapters/base.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/external_cli/adapters/claude.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/external_cli/adapters/codex.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/external_cli/adapters/gemini.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/external_cli/adapters/registry.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/external_cli/configs.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/external_cli/launcher.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/messages.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/__previews__/statusbar_preview.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/app.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/colors.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/icons.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/ai_config.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/ai_config_wizard.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/base.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/cli_launcher.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/global_setup_wizard.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/install_plugin_screen.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/main_menu.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/plugin_config_wizard.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/plugin_management.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/project_setup_wizard.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/workflow_execution.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/screens/workflows.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/textual_components.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/textual_workflow_executor.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/theme.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/__init__.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/button.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/decision_badge.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/dev_source_path_modal.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/header.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/multiline_input.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/panel.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/panel_container.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/prompt_choice.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/prompt_input.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/prompt_option_list.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/prompt_selection_list.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/prompt_textarea.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/segmented_switch.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/status_bar.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/step_container.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/styled_option_list.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/table.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/text.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/ui/tui/widgets/wizard.py +0 -0
- {titan_cli-0.4.3 → titan_cli-0.4.5}/titan_cli/utils/__init__.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "titan-cli"
|
|
3
|
-
version = "0.4.
|
|
3
|
+
version = "0.4.5"
|
|
4
4
|
description = "Modular development tools orchestrator - Streamline your workflows with AI integration and intuitive terminal UI"
|
|
5
5
|
authors = ["MasOrange Apps Team <apps-management-stores@masorange.es>"]
|
|
6
6
|
readme = "README.md"
|
|
@@ -4,14 +4,19 @@ Titan CLI - Main CLI application
|
|
|
4
4
|
Combines all tool commands into a single CLI interface.
|
|
5
5
|
"""
|
|
6
6
|
import os
|
|
7
|
-
import subprocess
|
|
8
7
|
import sys
|
|
9
8
|
import typer
|
|
10
9
|
|
|
11
10
|
from titan_cli import __version__
|
|
12
11
|
from titan_cli.messages import msg
|
|
13
12
|
from titan_cli.ui.tui import launch_tui
|
|
14
|
-
from titan_cli.utils.autoupdate import
|
|
13
|
+
from titan_cli.utils.autoupdate import (
|
|
14
|
+
check_for_updates,
|
|
15
|
+
get_installed_version,
|
|
16
|
+
meets_target_version,
|
|
17
|
+
update_core,
|
|
18
|
+
update_plugins,
|
|
19
|
+
)
|
|
15
20
|
from titan_cli.core.logging import setup_logging, get_logger
|
|
16
21
|
|
|
17
22
|
|
|
@@ -86,7 +91,7 @@ def main(
|
|
|
86
91
|
|
|
87
92
|
# Step 1: update core
|
|
88
93
|
typer.echo("⏳ Updating Titan CLI...")
|
|
89
|
-
core_result = update_core()
|
|
94
|
+
core_result = update_core(target_version=latest)
|
|
90
95
|
|
|
91
96
|
if not core_result["success"]:
|
|
92
97
|
logger.error("update_core_failed", error=core_result["error"])
|
|
@@ -116,12 +121,30 @@ def main(
|
|
|
116
121
|
if not plugins_result.get("skipped"):
|
|
117
122
|
typer.echo("✅ Plugins updated")
|
|
118
123
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
124
|
+
final_version = get_installed_version()
|
|
125
|
+
if not final_version or not meets_target_version(final_version, latest):
|
|
126
|
+
logger.error(
|
|
127
|
+
"update_final_version_check_failed",
|
|
128
|
+
expected=latest,
|
|
129
|
+
installed=final_version,
|
|
130
|
+
)
|
|
131
|
+
typer.echo(
|
|
132
|
+
"❌ Failed to verify Titan CLI after plugin update: "
|
|
133
|
+
f"installed version is {final_version or 'unknown'}, "
|
|
134
|
+
f"expected at least {latest}"
|
|
135
|
+
)
|
|
136
|
+
typer.echo()
|
|
137
|
+
typer.echo(" Please update manually:")
|
|
138
|
+
typer.echo(" pipx upgrade --force titan-cli")
|
|
139
|
+
typer.echo(" pipx upgrade --include-injected titan-cli")
|
|
140
|
+
sys.exit(1)
|
|
123
141
|
|
|
124
|
-
|
|
142
|
+
logger.info("update_successful", version=final_version)
|
|
143
|
+
typer.echo()
|
|
144
|
+
typer.echo(
|
|
145
|
+
"✅ Update complete. Please run `titan` again to use "
|
|
146
|
+
f"v{final_version}."
|
|
147
|
+
)
|
|
125
148
|
sys.exit(0)
|
|
126
149
|
else:
|
|
127
150
|
logger.info("update_skipped")
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"""Auto-update utility for Titan CLI."""
|
|
2
2
|
|
|
3
3
|
import os
|
|
4
|
+
import re
|
|
5
|
+
import shutil
|
|
4
6
|
import sys
|
|
5
7
|
import subprocess
|
|
6
8
|
from typing import Dict, Optional
|
|
7
9
|
from pathlib import Path
|
|
8
10
|
|
|
11
|
+
from packaging import version
|
|
12
|
+
|
|
9
13
|
from titan_cli import __version__
|
|
10
14
|
|
|
11
15
|
|
|
@@ -99,7 +103,7 @@ def check_for_updates() -> Dict[str, any]:
|
|
|
99
103
|
return result
|
|
100
104
|
|
|
101
105
|
|
|
102
|
-
def update_core() -> Dict[str, any]:
|
|
106
|
+
def update_core(target_version: Optional[str] = None) -> Dict[str, any]:
|
|
103
107
|
"""
|
|
104
108
|
Upgrade the titan-cli core package.
|
|
105
109
|
|
|
@@ -116,6 +120,13 @@ def update_core() -> Dict[str, any]:
|
|
|
116
120
|
if mock_version:
|
|
117
121
|
if os.environ.get("TITAN_MOCK_CORE_FAIL"):
|
|
118
122
|
return {"success": False, "method": None, "installed_version": None, "error": "Mock core failure"}
|
|
123
|
+
if target_version and not _meets_target_version(mock_version, target_version):
|
|
124
|
+
return {
|
|
125
|
+
"success": False,
|
|
126
|
+
"method": None,
|
|
127
|
+
"installed_version": mock_version,
|
|
128
|
+
"error": _target_version_error(mock_version, target_version),
|
|
129
|
+
}
|
|
119
130
|
return {"success": True, "method": "pipx", "installed_version": mock_version, "error": None}
|
|
120
131
|
|
|
121
132
|
result = {
|
|
@@ -136,11 +147,14 @@ def update_core() -> Dict[str, any]:
|
|
|
136
147
|
)
|
|
137
148
|
|
|
138
149
|
if proc.returncode == 0:
|
|
139
|
-
installed_version =
|
|
140
|
-
if installed_version:
|
|
150
|
+
installed_version = get_installed_version()
|
|
151
|
+
if installed_version and _is_expected_installed_version(installed_version, target_version):
|
|
141
152
|
result["success"] = True
|
|
142
153
|
result["method"] = "pipx"
|
|
143
154
|
result["installed_version"] = installed_version
|
|
155
|
+
elif installed_version:
|
|
156
|
+
result["installed_version"] = installed_version
|
|
157
|
+
result["error"] = _target_version_error(installed_version, target_version)
|
|
144
158
|
else:
|
|
145
159
|
result["error"] = "Could not verify installed version"
|
|
146
160
|
return result
|
|
@@ -161,11 +175,14 @@ def update_core() -> Dict[str, any]:
|
|
|
161
175
|
)
|
|
162
176
|
|
|
163
177
|
if proc.returncode == 0:
|
|
164
|
-
installed_version =
|
|
165
|
-
if installed_version:
|
|
178
|
+
installed_version = get_installed_version()
|
|
179
|
+
if installed_version and _is_expected_installed_version(installed_version, target_version):
|
|
166
180
|
result["success"] = True
|
|
167
181
|
result["method"] = "pip"
|
|
168
182
|
result["installed_version"] = installed_version
|
|
183
|
+
elif installed_version:
|
|
184
|
+
result["installed_version"] = installed_version
|
|
185
|
+
result["error"] = _target_version_error(installed_version, target_version)
|
|
169
186
|
else:
|
|
170
187
|
result["error"] = "Could not verify installed version"
|
|
171
188
|
else:
|
|
@@ -177,6 +194,40 @@ def update_core() -> Dict[str, any]:
|
|
|
177
194
|
return result
|
|
178
195
|
|
|
179
196
|
|
|
197
|
+
def get_installed_version() -> Optional[str]:
|
|
198
|
+
"""Get the Titan version that is visible to the user after installation."""
|
|
199
|
+
return (
|
|
200
|
+
_get_active_titan_version()
|
|
201
|
+
or _get_installed_version_pipx()
|
|
202
|
+
or _get_installed_version_pip()
|
|
203
|
+
or _get_installed_version_runtime()
|
|
204
|
+
)
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
def _get_active_titan_version() -> Optional[str]:
|
|
208
|
+
"""Get the version reported by the `titan` command currently on PATH."""
|
|
209
|
+
titan_command = shutil.which("titan")
|
|
210
|
+
if not titan_command:
|
|
211
|
+
return None
|
|
212
|
+
|
|
213
|
+
try:
|
|
214
|
+
proc = subprocess.run(
|
|
215
|
+
[titan_command, "version"],
|
|
216
|
+
capture_output=True,
|
|
217
|
+
text=True,
|
|
218
|
+
timeout=10,
|
|
219
|
+
)
|
|
220
|
+
if proc.returncode != 0:
|
|
221
|
+
return None
|
|
222
|
+
|
|
223
|
+
match = re.search(r"v?(\d+(?:\.\d+)+(?:[-+\.a-zA-Z0-9]*)?)", proc.stdout.strip())
|
|
224
|
+
if match:
|
|
225
|
+
return match.group(1)
|
|
226
|
+
except Exception:
|
|
227
|
+
pass
|
|
228
|
+
return None
|
|
229
|
+
|
|
230
|
+
|
|
180
231
|
def update_plugins() -> Dict[str, any]:
|
|
181
232
|
"""
|
|
182
233
|
Upgrade injected plugins via pipx.
|
|
@@ -287,6 +338,49 @@ def _get_installed_version_pip() -> Optional[str]:
|
|
|
287
338
|
return None
|
|
288
339
|
|
|
289
340
|
|
|
341
|
+
def _is_newer_installed_version(installed_version: str) -> bool:
|
|
342
|
+
"""Return True when the installed version is newer than the running one."""
|
|
343
|
+
try:
|
|
344
|
+
return version.parse(installed_version) > version.parse(__version__)
|
|
345
|
+
except Exception:
|
|
346
|
+
return installed_version != __version__
|
|
347
|
+
|
|
348
|
+
|
|
349
|
+
def _is_expected_installed_version(
|
|
350
|
+
installed_version: str,
|
|
351
|
+
target_version: Optional[str] = None,
|
|
352
|
+
) -> bool:
|
|
353
|
+
"""Return True when installed version satisfies the expected post-update state."""
|
|
354
|
+
if target_version:
|
|
355
|
+
return _meets_target_version(installed_version, target_version)
|
|
356
|
+
return _is_newer_installed_version(installed_version)
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
def _meets_target_version(installed_version: str, target_version: str) -> bool:
|
|
360
|
+
"""Return True when installed version is at least the requested target."""
|
|
361
|
+
try:
|
|
362
|
+
return version.parse(installed_version) >= version.parse(target_version)
|
|
363
|
+
except Exception:
|
|
364
|
+
return installed_version == target_version
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
def meets_target_version(installed_version: str, target_version: str) -> bool:
|
|
368
|
+
"""Return True when installed version is at least the requested target."""
|
|
369
|
+
return _meets_target_version(installed_version, target_version)
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
def _target_version_error(
|
|
373
|
+
installed_version: str,
|
|
374
|
+
target_version: Optional[str] = None,
|
|
375
|
+
) -> str:
|
|
376
|
+
"""Build a precise error for a failed post-update version check."""
|
|
377
|
+
if target_version:
|
|
378
|
+
return (
|
|
379
|
+
f"Installed version is {installed_version}; expected at least {target_version}"
|
|
380
|
+
)
|
|
381
|
+
return f"Installed version remains at {installed_version}; update did not apply"
|
|
382
|
+
|
|
383
|
+
|
|
290
384
|
def get_update_message(update_info: Dict[str, any]) -> Optional[str]:
|
|
291
385
|
"""
|
|
292
386
|
Generate user-friendly update message.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/__init__.py
RENAMED
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/clients/git_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/network/tag.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/view/branch.py
RENAMED
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/view/commit.py
RENAMED
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/view/status.py
RENAMED
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/models/view/tag.py
RENAMED
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/operations/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/branch_steps.py
RENAMED
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/checkout_step.py
RENAMED
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/commit_step.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/pull_step.py
RENAMED
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/push_step.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-git/titan_plugin_git/steps/status_step.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/exceptions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/messages.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/models/view.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{titan_cli-0.4.3 → titan_cli-0.4.5}/plugins/titan-plugin-github/titan_plugin_github/plugin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|