code-puppy 0.0.484__tar.gz → 0.0.485__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.
- {code_puppy-0.0.484 → code_puppy-0.0.485}/PKG-INFO +1 -1
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/cli_runner.py +61 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/pyproject.toml +1 -1
- {code_puppy-0.0.484 → code_puppy-0.0.485}/.gitignore +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/LICENSE +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/README.md +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/__main__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/_builder.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/_compaction.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/_diagnostics.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/_history.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/_key_listeners.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/_non_streaming_render.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/_runtime.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/agent_code_puppy.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/agent_creator_agent.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/agent_helios.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/agent_manager.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/agent_planning.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/agent_qa_kitten.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/base_agent.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/event_stream_handler.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/json_agent.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/agents/subagent_stream_handler.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/chatgpt_codex_client.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/claude_cache_client.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/add_model_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/agent_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/attachments.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/autosave_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/clipboard.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/colors_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/command_handler.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/command_registry.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/config_commands.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/core_commands.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/diff_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/file_path_completion.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/load_context_completion.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/base.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/catalog_server_installer.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/custom_server_form.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/custom_server_installer.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/edit_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/handler.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/help_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/install_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/install_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/list_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/logs_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/remove_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/restart_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/search_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/start_all_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/start_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/status_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/stop_all_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/stop_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/test_command.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/wizard_utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp_completion.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/model_picker_completion.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/model_settings_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/onboarding_slides.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/onboarding_wizard.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/pagination.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/pin_command_completion.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/prompt_toolkit_completion.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/session_commands.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/shell_passthrough.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/skills_completion.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/uc_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/wiggum_state.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/config.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/error_logging.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/gemini_code_assist.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/gemini_model.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/hook_engine/README.md +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/hook_engine/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/hook_engine/aliases.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/hook_engine/engine.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/hook_engine/executor.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/hook_engine/matcher.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/hook_engine/models.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/hook_engine/registry.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/hook_engine/validator.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/http_utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/keymap.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/list_filtering.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/main.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/async_lifecycle.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/blocking_startup.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/captured_stdio_server.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/circuit_breaker.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/config_wizard.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/dashboard.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/error_isolation.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/examples/retry_example.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/health_monitor.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/managed_server.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/manager.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/mcp_logs.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/registry.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/retry_manager.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/server_registry_catalog.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/status_tracker.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_/system_tools.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_prompts/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/mcp_prompts/hook_creator.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/bus.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/commands.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/markdown_patches.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/message_queue.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/messages.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/queue_console.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/renderers.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/rich_renderer.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/spinner/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/spinner/console_spinner.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/spinner/spinner_base.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/messaging/subagent_console.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/model_factory.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/model_switching.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/model_utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/models.json +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/models_dev_api.json +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/models_dev_parser.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/config.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/discovery.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/downloader.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/installer.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/metadata.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/prompt_builder.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/remote_catalog.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/skill_catalog.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/skills_install_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/skills_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/aws_bedrock/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/aws_bedrock/config.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/aws_bedrock/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/aws_bedrock/utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/azure_foundry/README.md +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/azure_foundry/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/azure_foundry/config.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/azure_foundry/discovery.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/azure_foundry/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/azure_foundry/token.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/azure_foundry/utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/chatgpt_oauth/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/chatgpt_oauth/config.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/chatgpt_oauth/oauth_flow.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/chatgpt_oauth/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/chatgpt_oauth/test_plugin.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/chatgpt_oauth/utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_hooks/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_hooks/config.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_hooks/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/README.md +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/SETUP.md +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/config.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/fast_mode.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/prompt_handler.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/test_fast_mode.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/test_plugin.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/token_refresh_heartbeat.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/copilot_auth/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/copilot_auth/config.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/copilot_auth/reasoning_client.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/copilot_auth/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/copilot_auth/utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/customizable_commands/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/customizable_commands/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/dbos_durable_exec/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/dbos_durable_exec/cancel.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/dbos_durable_exec/commands.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/dbos_durable_exec/config.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/dbos_durable_exec/lifecycle.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/dbos_durable_exec/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/dbos_durable_exec/runtime.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/dbos_durable_exec/workflow_ids.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/dbos_durable_exec/wrapper.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/destructive_command_guard/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/destructive_command_guard/detector.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/example_custom_command/README.md +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/example_custom_command/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/file_permission_handler/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/file_permission_handler/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/force_push_guard/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/force_push_guard/detector.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/force_push_guard/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/force_push_guard/test_detector.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/frontend_emitter/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/frontend_emitter/emitter.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/frontend_emitter/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/hook_creator/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/hook_creator/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/hook_manager/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/hook_manager/config.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/hook_manager/hooks_menu.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/hook_manager/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/oauth_puppy_html.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/ollama_setup/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/ollama_setup/completer.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/ollama_setup/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/pop_command/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/pop_command/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/shell_safety/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/shell_safety/agent_shell_safety.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/shell_safety/command_cache.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/shell_safety/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/synthetic_status/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/synthetic_status/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/synthetic_status/status_api.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/universal_constructor/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/universal_constructor/models.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/universal_constructor/register_callbacks.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/universal_constructor/registry.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/universal_constructor/sandbox.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/provider_identity.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/pydantic_patches.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/reopenable_async_client.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/round_robin_model.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/session_storage.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/status_display.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/summarization_agent.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/terminal_utils.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/agent_tools.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/ask_user_question/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/ask_user_question/constants.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/ask_user_question/demo_tui.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/ask_user_question/handler.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/ask_user_question/models.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/ask_user_question/registration.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/ask_user_question/renderers.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/ask_user_question/terminal_ui.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/ask_user_question/theme.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/ask_user_question/tui_loop.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/browser/__init__.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/browser/browser_control.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/browser/browser_interactions.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/browser/browser_locators.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/browser/browser_manager.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/browser/browser_navigation.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/browser/browser_screenshot.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/browser/browser_scripts.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/browser/browser_workflows.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/command_runner.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/common.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/display.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/file_modifications.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/file_operations.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/image_tools.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/skills_tools.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/subagent_context.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/tools_content.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/tools/universal_constructor.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/uvx_detection.py +0 -0
- {code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/version_checker.py +0 -0
|
@@ -47,6 +47,57 @@ from code_puppy.version_checker import default_version_mismatch_behavior
|
|
|
47
47
|
plugins.load_plugin_callbacks()
|
|
48
48
|
|
|
49
49
|
|
|
50
|
+
def _resume_session_from_path(raw_path: str) -> None:
|
|
51
|
+
"""Restore agent message history from a saved .pkl session file.
|
|
52
|
+
|
|
53
|
+
Accepts any path (autosaves, contexts, somewhere weird on disk). We don't
|
|
54
|
+
care where it lives — we just decompose into (parent_dir, stem) and reuse
|
|
55
|
+
``session_storage.load_session`` so we stay DRY.
|
|
56
|
+
"""
|
|
57
|
+
from code_puppy.agents.agent_manager import get_current_agent
|
|
58
|
+
from code_puppy.messaging import emit_error, emit_success
|
|
59
|
+
from code_puppy.session_storage import load_session
|
|
60
|
+
|
|
61
|
+
session_path = Path(raw_path).expanduser().resolve()
|
|
62
|
+
|
|
63
|
+
if not session_path.exists():
|
|
64
|
+
emit_error(f"--resume: session file not found: {session_path}")
|
|
65
|
+
sys.exit(1)
|
|
66
|
+
|
|
67
|
+
if session_path.suffix != ".pkl":
|
|
68
|
+
emit_error(
|
|
69
|
+
f"--resume: expected a .pkl session file, got '{session_path.suffix}': {session_path}"
|
|
70
|
+
)
|
|
71
|
+
sys.exit(1)
|
|
72
|
+
|
|
73
|
+
try:
|
|
74
|
+
history = load_session(session_path.stem, session_path.parent)
|
|
75
|
+
except Exception as exc:
|
|
76
|
+
emit_error(f"--resume: failed to load session: {exc}")
|
|
77
|
+
sys.exit(1)
|
|
78
|
+
|
|
79
|
+
try:
|
|
80
|
+
agent = get_current_agent()
|
|
81
|
+
agent.set_message_history(history)
|
|
82
|
+
except Exception as exc:
|
|
83
|
+
emit_error(f"--resume: failed to attach history to agent: {exc}")
|
|
84
|
+
sys.exit(1)
|
|
85
|
+
|
|
86
|
+
# Rotate autosave id so we don't clobber the original file we just resumed.
|
|
87
|
+
try:
|
|
88
|
+
from code_puppy.config import rotate_autosave_id
|
|
89
|
+
|
|
90
|
+
rotate_autosave_id()
|
|
91
|
+
except Exception:
|
|
92
|
+
pass # autosave rotation is best-effort
|
|
93
|
+
|
|
94
|
+
total_tokens = sum(agent.estimate_tokens_for_message(m) for m in history)
|
|
95
|
+
emit_success(
|
|
96
|
+
f"✅ Resumed session: {len(history)} messages ({total_tokens} tokens)\n"
|
|
97
|
+
f"📁 From: {session_path}"
|
|
98
|
+
)
|
|
99
|
+
|
|
100
|
+
|
|
50
101
|
async def main():
|
|
51
102
|
"""Main async entry point for Code Puppy CLI."""
|
|
52
103
|
parser = argparse.ArgumentParser(description="Code Puppy - A code generation agent")
|
|
@@ -81,6 +132,13 @@ async def main():
|
|
|
81
132
|
type=str,
|
|
82
133
|
help="Specify which model to use (e.g., --model gpt-5)",
|
|
83
134
|
)
|
|
135
|
+
parser.add_argument(
|
|
136
|
+
"--resume",
|
|
137
|
+
"-r",
|
|
138
|
+
type=str,
|
|
139
|
+
metavar="PATH",
|
|
140
|
+
help="Resume a saved session from a .pkl file (e.g. ~/.code_puppy/contexts/foo.pkl)",
|
|
141
|
+
)
|
|
84
142
|
parser.add_argument(
|
|
85
143
|
"command", nargs="*", help="Run a single command (deprecated, use -p instead)"
|
|
86
144
|
)
|
|
@@ -282,6 +340,9 @@ async def main():
|
|
|
282
340
|
|
|
283
341
|
await callbacks.on_startup()
|
|
284
342
|
|
|
343
|
+
if args.resume:
|
|
344
|
+
_resume_session_from_path(args.resume)
|
|
345
|
+
|
|
285
346
|
global shutdown_flag
|
|
286
347
|
shutdown_flag = False
|
|
287
348
|
try:
|
|
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
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/load_context_completion.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/catalog_server_installer.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/mcp/custom_server_installer.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
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/model_picker_completion.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/command_line/prompt_toolkit_completion.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
|
|
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
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/register_callbacks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/agent_skills/skills_install_menu.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/aws_bedrock/register_callbacks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/azure_foundry/register_callbacks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/chatgpt_oauth/register_callbacks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_hooks/register_callbacks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/prompt_handler.py
RENAMED
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/register_callbacks.py
RENAMED
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/test_fast_mode.py
RENAMED
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/claude_code_oauth/test_plugin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/copilot_auth/reasoning_client.py
RENAMED
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/copilot_auth/register_callbacks.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/customizable_commands/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.484 → code_puppy-0.0.485}/code_puppy/plugins/dbos_durable_exec/register_callbacks.py
RENAMED
|
File without changes
|