drydock-cli 2.3.7__tar.gz → 2.3.9__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.
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/PKG-INFO +1 -1
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/agent_loop.py +25 -66
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/config/_settings.py +6 -1
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/prompts/__init__.py +1 -0
- drydock_cli-2.3.9/drydock/core/prompts/gemma4.md +25 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/pyproject.toml +1 -1
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.github/CODEOWNERS +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.github/DISCUSSION_TEMPLATE/ideas.yml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.github/workflows/build-and-upload.yml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.github/workflows/ci.yml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.github/workflows/issue-labeler.yml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.github/workflows/release.yml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.gitignore +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.pre-commit-config.yaml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.python-version +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.typos.toml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.vscode/extensions.json +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.vscode/launch.json +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/.vscode/settings.json +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/AGENTS.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/CHANGELOG.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/CLAUDE.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/CONTRIBUTING.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/Drydock_rebrand.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/LICENSE +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/NOTICE +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/PRD.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/README.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/action.yml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/distribution/zed/LICENSE +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/distribution/zed/extension.toml +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/distribution/zed/icons/mistral_vibe.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/docs/README.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/docs/acp-setup.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/docs/proxy-setup.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/acp_agent_loop.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/acp_logger.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/entrypoint.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/tools/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/tools/base.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/tools/builtins/bash.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/tools/builtins/read_file.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/tools/builtins/search_replace.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/tools/builtins/todo.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/tools/builtins/write_file.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/tools/session_update.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/acp/utils.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/autocompletion/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/autocompletion/base.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/autocompletion/path_completion.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/autocompletion/slash_command.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/cli.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/clipboard.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/commands.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/entrypoint.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/history_manager.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/plan_offer/adapters/http_whoami_gateway.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/plan_offer/decide_plan_offer.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/plan_offer/ports/whoami_gateway.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/terminal_setup.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/ansi_markdown.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/app.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/app.tcss +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/external_editor.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/handlers/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/handlers/event_handler.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/notifications/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/notifications/adapters/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/notifications/adapters/textual_notification_adapter.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/notifications/ports/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/notifications/ports/notification_port.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/approval_app.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/banner/banner.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/banner/petit_chat.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/braille_renderer.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/chat_input/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/chat_input/body.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/chat_input/completion_manager.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/chat_input/completion_popup.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/chat_input/container.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/chat_input/text_area.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/compact.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/config_app.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/context_progress.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/load_more.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/loading.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/messages.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/no_markup_static.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/path_display.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/proxy_setup_app.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/question_app.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/session_picker.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/spinner.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/status_message.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/teleport_message.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/tool_widgets.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/tools.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/vscode_compat.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/windowing/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/windowing/history.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/windowing/history_windowing.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/windowing/state.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/update_notifier/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/update_notifier/adapters/filesystem_update_cache_repository.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/update_notifier/adapters/github_update_gateway.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/update_notifier/adapters/pypi_update_gateway.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/update_notifier/ports/update_cache_repository.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/update_notifier/ports/update_gateway.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/update_notifier/update.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/update_notifier/whats_new.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/agents/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/agents/manager.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/agents/models.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/auth/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/auth/crypto.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/auth/github.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/completers.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/file_indexer/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/file_indexer/ignore_rules.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/file_indexer/indexer.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/file_indexer/store.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/file_indexer/watcher.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/fuzzy.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/path_prompt.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/path_prompt_adapter.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/build_orchestrator.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/config/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/config/harness_files/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/config/harness_files/_harness_manager.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/config/harness_files/_paths.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/consultant.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/drydock_states.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/hooks.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/backend/anthropic.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/backend/base.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/backend/factory.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/backend/generic.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/backend/mistral.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/backend/reasoning_adapter.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/backend/vertex.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/exceptions.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/format.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/message_utils.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/llm/types.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/logger.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/middleware.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/output_formatters.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/paths/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/paths/_local_config_walk.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/paths/_vibe_home.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/paths/conventions.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/plan_session.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/plugins.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/programmatic.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/prompts/builder.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/prompts/cli.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/prompts/compact.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/prompts/dangerous_directory.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/prompts/diagnostic.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/prompts/explore.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/prompts/planner.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/prompts/project_context.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/prompts/tests.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/proxy_setup.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/session/agent_memory.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/session/checkpoints.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/session/session_loader.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/session/session_logger.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/session/session_migration.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/session/state_file.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/skills/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/skills/manager.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/skills/models.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/skills/parser.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/slug.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/system_prompt.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/telemetry/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/telemetry/send.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/teleport/errors.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/teleport/git.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/teleport/nuage.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/teleport/teleport.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/teleport/types.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/base.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/ask_user_question.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/bash.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/cron.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/exit_plan_mode.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/glob_tool.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/grep.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/invoke_skill.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/lsp.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/mcp_resources.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/notebook_edit.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/powershell.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/ask_user_question.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/bash.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/cron.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/glob.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/grep.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/invoke_skill.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/lsp.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/mcp_resources.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/notebook_edit.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/powershell.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/read_file.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/search_replace.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/swe_bench.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/task.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/task_manager.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/todo.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/tool_search.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/webfetch.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/websearch.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/worktree.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/prompts/write_file.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/read_file.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/search_replace.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/task.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/task_manager.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/todo.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/tool_search.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/webfetch.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/websearch.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/worktree.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/builtins/write_file.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/injection_guard.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/manager.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/mcp/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/mcp/registry.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/mcp/tools.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/mcp_sampling.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/ui.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/tools/utils.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/trusted_folders.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/types.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/utils.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/setup/onboarding/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/setup/onboarding/base.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/setup/onboarding/onboarding.tcss +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/setup/onboarding/screens/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/setup/onboarding/screens/api_key.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/setup/onboarding/screens/welcome.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/setup/trusted_folders/trust_folder_dialog.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/setup/trusted_folders/trust_folder_dialog.tcss +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/api-design/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/batch/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/commit-code/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/context-summary/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/create-presentation/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/deep-research/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/deploy/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/diff-review/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/doc-gen/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/explain-code/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/explore-code/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/fix-issue/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/git-ops/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/init-project/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/investigate/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/loop/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/migrate/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/perf-analyze/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/plan-impl/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/pr-review/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/refactor/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/regex-help/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/review/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/security-review/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/ship/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/simplify/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/skills/test-verify/SKILL.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/whats_new.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock-acp.spec +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock_terms.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/flake.lock +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/flake.nix +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/README.md +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/auto_test_loop.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/backup.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/bump_version.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/deploy_to_github.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/install.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/monitor_swebench.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/monitor_test_battery.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/notify_release.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/overnight_agents_test.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/prepare_release.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/publish_to_pypi.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/test_bank.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/test_full.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/scripts/test_smoke.sh +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/conftest.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_acp.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_agent_thought.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_bash.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_compact_session_updates.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_content.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_initialize.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_list_sessions.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_load_session.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_multi_session.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_new_session.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_proxy_setup_acp.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_read_file.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_search_replace.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_set_config_option.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_set_mode.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_set_model.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_tool_call_session_update.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_utils.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/acp/test_write_file.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/autocompletion/test_file_indexer.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/autocompletion/test_fuzzy.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/autocompletion/test_path_completer_fuzzy.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/autocompletion/test_path_completer_recursive.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/autocompletion/test_path_completion_controller.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/autocompletion/test_path_prompt_transformer.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/autocompletion/test_slash_command_controller.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/autocompletion/test_ui_chat_autocompletion.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/backend/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/backend/data/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/backend/data/fireworks.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/backend/data/mistral.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/backend/test_anthropic_adapter.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/backend/test_backend.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/backend/test_reasoning_adapter.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/backend/test_vertex_anthropic_adapter.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/plan_offer/adapters/fake_whoami_gateway.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/plan_offer/test_decide_plan_offer.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/plan_offer/test_http_whoami_gateway.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_bell_notifications.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_braille_renderer.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_clipboard.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_commands.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_copy_shortcuts.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_external_editor.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_no_markup_static.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_question_app.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_spinner.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_switching_mode.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_ui_clipboard_notifications.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_ui_session_incremental_renderer.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_ui_session_resume.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/test_ui_skill_dispatch.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/textual_ui/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/cli/textual_ui/test_session_picker.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/conftest.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_agents.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_auth_crypto.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_auth_github.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_config_load_dotenv.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_config_paths.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_config_resolution.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_file_logging.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_plan_session.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_proxy_setup.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_slug.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_telemetry_send.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_teleport_git.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_teleport_nuage.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_teleport_service.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_trusted_folders.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/core/test_utils.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/e2e/common.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/e2e/conftest.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/e2e/mock_server.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/e2e/test_cli_tui_onboarding.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/e2e/test_cli_tui_streaming.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/e2e/test_cli_tui_tool_approval.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/mock/__init__.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/mock/mock_backend_factory.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/mock/mock_entrypoint.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/mock/utils.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/onboarding/test_run_onboarding.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/onboarding/test_ui_onboarding.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/session/test_session_loader.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/session/test_session_logger.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/session/test_session_migration.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/skills/conftest.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/skills/test_manager.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/skills/test_models.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/skills/test_parser.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_collapsed.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_ask_user_question/test_snapshot_ask_user_question_expanded.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_basic_conversation/test_snapshot_shows_basic_conversation.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_code_block_horizontal_scrolling/test_snapshot_allows_horizontal_scrolling_for_long_code_blocks.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_empty_assistant_before_reasoning/test_snapshot_empty_assistant_removed_when_reasoning_starts.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_accept_edits_mode.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_auto_approve_mode.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_to_plan_mode.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_cycle_wraps_to_default.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_modes/test_snapshot_default_mode.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_pending.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_parallel_tool_calls/test_snapshot_parallel_tool_calls_resolved.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_cancel_discards_changes.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_edit_existing_values.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_empty.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_initial_with_values.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_error.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_proxy_setup/test_snapshot_proxy_setup_save_new_values.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_answer_first_advance.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_first_answered_checkmark.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_initial.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_left_wraps.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_navigate_right.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_question_tab_to_second.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_initial.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_mixed_selection.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_navigate_to_submit.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_other_with_text.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_first.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_toggle_multiple.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_multi_select_untoggle.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_initial.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_down.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_other.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_to_third_option.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_navigate_up_wraps.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_question_app/test_snapshot_question_app_other_typing.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_buffered_reasoning_yields_before_content.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_interleaved_reasoning.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_reasoning_content/test_snapshot_shows_reasoning_content_expanded.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_release_update_notification/test_snapshot_shows_release_update_notification.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_session_resume/test_snapshot_shows_resumed_session_messages.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_partial.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_streaming_tool_call/test_snapshot_tool_call_updated.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_cancel_selected.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_multiple_commits.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_push_confirmation_single_commit.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_complete.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_auth_required.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_checking_git.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_complete.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_error.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_pushing.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_sending_token.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_teleport/test_snapshot_teleport_status_starting_workflow.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_no_plan_message.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_switch_message.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_upgrade_message.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/__snapshots__/test_ui_snapshot_whats_new/test_snapshot_shows_whats_new_message.svg +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/base_snapshot_test_app.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/conftest.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/snap_compare.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_ask_user_question.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_basic_conversation.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_code_block_horizontal_scrolling.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_empty_assistant_before_reasoning.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_modes.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_parallel_tool_calls.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_proxy_setup.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_question_app.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_reasoning_content.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_release_update_notification.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_session_resume.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_streaming_tool_call.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_teleport.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/snapshots/test_ui_snapshot_whats_new.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/stubs/fake_backend.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/stubs/fake_client.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/stubs/fake_tool.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_agent_auto_compact.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_agent_backend.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_agent_observer_streaming.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_agent_stats.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_agent_tasks.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_agent_tool_call.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_agents.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_bank_build.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_bank_debug.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_bank_multiagent.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_bank_prd.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_bank_prd_extended.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_bank_tools.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_bank_update.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_build_projects.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_cli_programmatic_preload.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_current_bugs.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_drydock_regression.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_drydock_tasks.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_full_regression.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_history_manager.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_integration.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_loop_detection.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_message_id.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_message_merging.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_middleware.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_multi_agent.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_real_failures.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_real_issues.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_real_workflow.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_reasoning_content.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_smoke.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_system_prompt.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_tagged_text.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_ui_external_editor.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_ui_input_history.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_user_issues.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/test_workloads.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/testbank_helpers.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_ask_user_question.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_bash.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_exit_plan_mode.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_grep.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_invoke_context.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_manager_get_tool_config.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_mcp.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_mcp_sampling.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_task.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_ui_bash_execution.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_webfetch.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/tools/test_websearch.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/update_notifier/adapters/fake_update_cache_repository.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/update_notifier/adapters/fake_update_gateway.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/update_notifier/test_do_update.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/update_notifier/test_filesystem_update_cache_repository.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/update_notifier/test_github_update_gateway.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/update_notifier/test_pypi_update_gateway.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/update_notifier/test_ui_update_notification.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/update_notifier/test_update_use_case.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/tests/update_notifier/test_whats_new.py +0 -0
- {drydock_cli-2.3.7 → drydock_cli-2.3.9}/uv.lock +0 -0
|
@@ -1811,72 +1811,32 @@ class AgentLoop:
|
|
|
1811
1811
|
return None
|
|
1812
1812
|
|
|
1813
1813
|
async def _auto_route_task(self, user_msg: str) -> None:
|
|
1814
|
-
"""
|
|
1814
|
+
"""Lightweight auto-context: list project files and key docs.
|
|
1815
1815
|
|
|
1816
|
-
|
|
1817
|
-
the exploration ourselves and inject the results + relevant skill.
|
|
1816
|
+
Kept minimal to avoid bloating context — just filenames, no content.
|
|
1818
1817
|
"""
|
|
1819
|
-
msg_lower = user_msg.lower()
|
|
1820
1818
|
parts = []
|
|
1821
1819
|
|
|
1822
|
-
# 1. Auto-explore: if project has files, read key ones
|
|
1823
1820
|
try:
|
|
1824
1821
|
cwd = Path.cwd()
|
|
1822
|
+
# List project files (names only, no content)
|
|
1825
1823
|
py_files = sorted(
|
|
1826
1824
|
f for f in cwd.rglob("*.py")
|
|
1827
|
-
if ".
|
|
1828
|
-
and "__pycache__" not in str(f)
|
|
1825
|
+
if ".venv" not in str(f) and "__pycache__" not in str(f)
|
|
1829
1826
|
)
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
for f in py_files[:15]:
|
|
1839
|
-
if files_read >= 5:
|
|
1840
|
-
break
|
|
1841
|
-
if f.stat().st_size > 10000:
|
|
1842
|
-
continue # Skip large files
|
|
1843
|
-
if f.name in ("__init__.py", "__main__.py"):
|
|
1844
|
-
continue # Skip boilerplate
|
|
1845
|
-
try:
|
|
1846
|
-
content = f.read_text()[:2000]
|
|
1847
|
-
rel = f.relative_to(cwd)
|
|
1848
|
-
# Extract just function/class signatures
|
|
1849
|
-
import ast
|
|
1850
|
-
tree = ast.parse(content)
|
|
1851
|
-
sigs = []
|
|
1852
|
-
for node in ast.walk(tree):
|
|
1853
|
-
if isinstance(node, (ast.FunctionDef, ast.AsyncFunctionDef)):
|
|
1854
|
-
args = ", ".join(a.arg for a in node.args.args)
|
|
1855
|
-
sigs.append(f" def {node.name}({args}) [line {node.lineno}]")
|
|
1856
|
-
elif isinstance(node, ast.ClassDef):
|
|
1857
|
-
sigs.append(f" class {node.name} [line {node.lineno}]")
|
|
1858
|
-
if sigs:
|
|
1859
|
-
parts.append(f"{rel}:\n" + "\n".join(sigs[:10]))
|
|
1860
|
-
files_read += 1
|
|
1861
|
-
except Exception:
|
|
1862
|
-
pass
|
|
1863
|
-
except Exception:
|
|
1864
|
-
pass
|
|
1865
|
-
|
|
1866
|
-
# Skill routing removed — handled by _build_auto_context description injection
|
|
1867
|
-
# The model discovers skills from the auto-context skill list and
|
|
1868
|
-
# invokes them via invoke_skill when relevant
|
|
1869
|
-
|
|
1870
|
-
# 3. Also list non-Python files of interest
|
|
1871
|
-
try:
|
|
1872
|
-
for pattern in ("*.md", "*.txt", "*.json", "*.yaml", "*.yml", "*.toml", "*.csv"):
|
|
1873
|
-
for f in sorted(Path.cwd().glob(pattern))[:3]:
|
|
1874
|
-
parts.append(f" {f.name} ({f.stat().st_size} bytes)")
|
|
1827
|
+
if py_files:
|
|
1828
|
+
listing = "\n".join(f" {f.relative_to(cwd)}" for f in py_files[:20])
|
|
1829
|
+
parts.append(f"PROJECT FILES ({len(py_files)} .py files):\n{listing}")
|
|
1830
|
+
|
|
1831
|
+
# List docs/config files
|
|
1832
|
+
for pattern in ("*.md", "*.toml", "*.json", "*.yaml"):
|
|
1833
|
+
for f in sorted(cwd.glob(pattern))[:3]:
|
|
1834
|
+
parts.append(f" {f.name} ({f.stat().st_size}b)")
|
|
1875
1835
|
except Exception:
|
|
1876
1836
|
pass
|
|
1877
1837
|
|
|
1878
1838
|
if parts:
|
|
1879
|
-
self._inject_system_note("\n
|
|
1839
|
+
self._inject_system_note("\n".join(parts))
|
|
1880
1840
|
|
|
1881
1841
|
def _ensure_agents_md(self) -> None:
|
|
1882
1842
|
"""Auto-create AGENTS.md if no project instructions file exists.
|
|
@@ -1896,25 +1856,24 @@ class AgentLoop:
|
|
|
1896
1856
|
if (cwd / "CLAUDE.md").exists():
|
|
1897
1857
|
return
|
|
1898
1858
|
|
|
1899
|
-
# Create default AGENTS.md
|
|
1859
|
+
# Create default AGENTS.md — simplified for Gemma 4
|
|
1900
1860
|
agents_md = cwd / "AGENTS.md"
|
|
1901
1861
|
try:
|
|
1902
1862
|
agents_md.write_text(
|
|
1903
1863
|
"# Project Instructions\n\n"
|
|
1904
|
-
"DO NOT ask for confirmation.
|
|
1905
|
-
"If there is a PRD.md,
|
|
1864
|
+
"DO NOT ask for confirmation. ACT IMMEDIATELY. Start writing code NOW.\n"
|
|
1865
|
+
"If there is a PRD.md, read it then create the files.\n\n"
|
|
1906
1866
|
"## Workflow\n"
|
|
1907
|
-
"
|
|
1908
|
-
"
|
|
1909
|
-
"
|
|
1910
|
-
"
|
|
1911
|
-
"
|
|
1912
|
-
"5. Test with `bash` after creating files\n\n"
|
|
1867
|
+
"1. Read requirements (PRD.md, README, etc.)\n"
|
|
1868
|
+
"2. Create __init__.py and __main__.py first\n"
|
|
1869
|
+
"3. Create each module file with write_file\n"
|
|
1870
|
+
"4. Test: python3 -m package_name --help\n"
|
|
1871
|
+
"5. Fix errors and verify\n\n"
|
|
1913
1872
|
"## Rules\n"
|
|
1914
|
-
"- Use absolute imports: `from package.module import X
|
|
1915
|
-
"- Always create `__init__.py` and `__main__.py
|
|
1916
|
-
"-
|
|
1917
|
-
"-
|
|
1873
|
+
"- Use absolute imports: `from package.module import X`\n"
|
|
1874
|
+
"- Always create `__init__.py` and `__main__.py`\n"
|
|
1875
|
+
"- NEVER ask 'should I proceed' or 'would you like me to' — JUST DO IT\n"
|
|
1876
|
+
"- After creating a file, immediately create the next one\n"
|
|
1918
1877
|
)
|
|
1919
1878
|
logger.info("Auto-created AGENTS.md in %s", cwd)
|
|
1920
1879
|
except (OSError, PermissionError):
|
|
@@ -419,8 +419,13 @@ class VibeConfig(BaseSettings):
|
|
|
419
419
|
|
|
420
420
|
@property
|
|
421
421
|
def system_prompt(self) -> str:
|
|
422
|
+
# Auto-select simplified prompt for Gemma 4 (complex prompts cause loops)
|
|
423
|
+
prompt_id = self.system_prompt_id
|
|
424
|
+
if prompt_id == "cli" and "gemma" in self.active_model.lower():
|
|
425
|
+
prompt_id = "gemma4"
|
|
426
|
+
|
|
422
427
|
try:
|
|
423
|
-
return SystemPrompt[
|
|
428
|
+
return SystemPrompt[prompt_id.upper()].read()
|
|
424
429
|
except KeyError:
|
|
425
430
|
pass
|
|
426
431
|
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
You are DryDock, a CLI coding agent. You write code, fix bugs, and build projects.
|
|
2
|
+
|
|
3
|
+
ACT IMMEDIATELY. Do NOT ask for permission. Do NOT explain what you will do. Just do it.
|
|
4
|
+
|
|
5
|
+
Your tools: read_file, write_file, search_replace, grep, glob, bash.
|
|
6
|
+
|
|
7
|
+
Workflow for building from a PRD or spec:
|
|
8
|
+
1. Read the spec file
|
|
9
|
+
2. Create each file with write_file — start with __init__.py and __main__.py
|
|
10
|
+
3. After all files are created, test with bash: python3 -m package_name --help
|
|
11
|
+
4. Fix any errors
|
|
12
|
+
|
|
13
|
+
Workflow for fixing bugs:
|
|
14
|
+
1. Grep for the function/class mentioned
|
|
15
|
+
2. Read the source file
|
|
16
|
+
3. Fix with search_replace
|
|
17
|
+
4. Verify the fix
|
|
18
|
+
|
|
19
|
+
Rules:
|
|
20
|
+
- Create files immediately. Do not plan or discuss — write code.
|
|
21
|
+
- Use absolute imports for Python packages
|
|
22
|
+
- Always create __init__.py and __main__.py for packages
|
|
23
|
+
- Keep responses under 50 words. Code speaks for itself.
|
|
24
|
+
- NEVER ask "would you like me to proceed" or "shall I continue" — JUST DO IT.
|
|
25
|
+
- After creating/editing a file, move to the next one. Do not stop.
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/plan_offer/adapters/http_whoami_gateway.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
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/notifications/adapters/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/notifications/ports/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/chat_input/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/chat_input/container.py
RENAMED
|
File without changes
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/widgets/chat_input/text_area.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
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/textual_ui/windowing/history_windowing.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/update_notifier/adapters/pypi_update_gateway.py
RENAMED
|
File without changes
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/cli/update_notifier/ports/update_cache_repository.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
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/file_indexer/__init__.py
RENAMED
|
File without changes
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/autocompletion/file_indexer/ignore_rules.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
|
{drydock_cli-2.3.7 → drydock_cli-2.3.9}/drydock/core/config/harness_files/_harness_manager.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
|