code-puppy 0.0.347__tar.gz → 0.0.348__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.347 → code_puppy-0.0.348}/PKG-INFO +1 -1
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/agent_tools.py +66 -13
- {code_puppy-0.0.347 → code_puppy-0.0.348}/pyproject.toml +1 -1
- {code_puppy-0.0.347 → code_puppy-0.0.348}/.gitignore +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/LICENSE +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/README.md +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/__main__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_c_reviewer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_code_puppy.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_code_reviewer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_cpp_reviewer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_creator_agent.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_golang_reviewer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_javascript_reviewer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_manager.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_planning.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_python_programmer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_python_reviewer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_qa_expert.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_qa_kitten.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_security_auditor.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/agent_typescript_reviewer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/base_agent.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/event_stream_handler.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/json_agent.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/agents/prompt_reviewer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/callbacks.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/chatgpt_codex_client.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/claude_cache_client.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/cli_runner.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/add_model_menu.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/attachments.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/autosave_menu.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/clipboard.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/colors_menu.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/command_handler.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/command_registry.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/config_commands.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/core_commands.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/diff_menu.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/file_path_completion.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/load_context_completion.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/base.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/catalog_server_installer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/custom_server_form.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/custom_server_installer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/edit_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/handler.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/help_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/install_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/install_menu.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/list_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/logs_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/remove_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/restart_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/search_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/start_all_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/start_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/status_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/stop_all_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/stop_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/test_command.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/utils.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/wizard_utils.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp_completion.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/model_picker_completion.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/model_settings_menu.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/motd.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/onboarding_slides.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/onboarding_wizard.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/pin_command_completion.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/prompt_toolkit_completion.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/session_commands.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/utils.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/config.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/error_logging.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/gemini_code_assist.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/http_utils.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/keymap.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/main.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/async_lifecycle.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/blocking_startup.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/captured_stdio_server.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/circuit_breaker.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/config_wizard.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/dashboard.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/error_isolation.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/examples/retry_example.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/health_monitor.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/managed_server.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/manager.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/mcp_logs.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/registry.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/retry_manager.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/server_registry_catalog.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/status_tracker.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/mcp_/system_tools.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/bus.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/commands.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/markdown_patches.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/message_queue.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/messages.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/queue_console.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/renderers.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/rich_renderer.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/spinner/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/spinner/console_spinner.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/messaging/spinner/spinner_base.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/model_factory.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/model_utils.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/models.json +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/models_dev_api.json +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/models_dev_parser.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/accounts.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/antigravity_model.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/config.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/constants.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/oauth.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/register_callbacks.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/storage.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/test_plugin.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/token.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/transport.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/utils.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/chatgpt_oauth/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/chatgpt_oauth/config.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/chatgpt_oauth/oauth_flow.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/chatgpt_oauth/register_callbacks.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/chatgpt_oauth/test_plugin.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/chatgpt_oauth/utils.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/claude_code_oauth/README.md +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/claude_code_oauth/SETUP.md +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/claude_code_oauth/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/claude_code_oauth/config.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/claude_code_oauth/register_callbacks.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/claude_code_oauth/test_plugin.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/claude_code_oauth/utils.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/customizable_commands/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/customizable_commands/register_callbacks.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/example_custom_command/README.md +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/example_custom_command/register_callbacks.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/file_permission_handler/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/file_permission_handler/register_callbacks.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/oauth_puppy_html.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/shell_safety/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/shell_safety/agent_shell_safety.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/shell_safety/command_cache.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/shell_safety/register_callbacks.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/prompts/codex_system_prompt.md +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/pydantic_patches.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/reopenable_async_client.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/round_robin_model.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/session_storage.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/status_display.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/summarization_agent.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/terminal_utils.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/browser/__init__.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/browser/browser_control.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/browser/browser_interactions.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/browser/browser_locators.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/browser/browser_navigation.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/browser/browser_screenshot.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/browser/browser_scripts.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/browser/browser_workflows.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/browser/camoufox_manager.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/browser/vqa_agent.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/command_runner.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/common.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/file_modifications.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/file_operations.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/tools/tools_content.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/uvx_detection.py +0 -0
- {code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/version_checker.py +0 -0
|
@@ -21,6 +21,7 @@ from code_puppy.config import (
|
|
|
21
21
|
DATA_DIR,
|
|
22
22
|
get_message_limit,
|
|
23
23
|
get_use_dbos,
|
|
24
|
+
get_value,
|
|
24
25
|
)
|
|
25
26
|
from code_puppy.messaging import (
|
|
26
27
|
SubAgentInvocationMessage,
|
|
@@ -471,39 +472,90 @@ def register_invoke_agent(agent):
|
|
|
471
472
|
subagent_name = f"temp-invoke-agent-{session_id}"
|
|
472
473
|
model_settings = make_model_settings(model_name)
|
|
473
474
|
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
instructions=instructions,
|
|
477
|
-
output_type=str,
|
|
478
|
-
retries=3,
|
|
479
|
-
history_processors=[agent_config.message_history_accumulator],
|
|
480
|
-
model_settings=model_settings,
|
|
481
|
-
)
|
|
475
|
+
# Get MCP servers for sub-agents (same as main agent)
|
|
476
|
+
from code_puppy.mcp_ import get_mcp_manager
|
|
482
477
|
|
|
483
|
-
|
|
484
|
-
|
|
478
|
+
mcp_servers = []
|
|
479
|
+
mcp_disabled = get_value("disable_mcp_servers")
|
|
480
|
+
if not (
|
|
481
|
+
mcp_disabled and str(mcp_disabled).lower() in ("1", "true", "yes", "on")
|
|
482
|
+
):
|
|
483
|
+
manager = get_mcp_manager()
|
|
484
|
+
mcp_servers = manager.get_servers_for_agent()
|
|
485
485
|
|
|
486
|
-
|
|
487
|
-
|
|
486
|
+
# Get the event_stream_handler for streaming output
|
|
487
|
+
from code_puppy.agents.event_stream_handler import event_stream_handler
|
|
488
488
|
|
|
489
489
|
if get_use_dbos():
|
|
490
490
|
from pydantic_ai.durable_exec.dbos import DBOSAgent
|
|
491
491
|
|
|
492
|
-
|
|
492
|
+
# For DBOS, create agent without MCP servers (to avoid serialization issues)
|
|
493
|
+
# and add them at runtime
|
|
494
|
+
temp_agent = Agent(
|
|
495
|
+
model=model,
|
|
496
|
+
instructions=instructions,
|
|
497
|
+
output_type=str,
|
|
498
|
+
retries=3,
|
|
499
|
+
toolsets=[], # MCP servers added separately for DBOS
|
|
500
|
+
history_processors=[agent_config.message_history_accumulator],
|
|
501
|
+
model_settings=model_settings,
|
|
502
|
+
)
|
|
503
|
+
|
|
504
|
+
# Register the tools that the agent needs
|
|
505
|
+
from code_puppy.tools import register_tools_for_agent
|
|
506
|
+
|
|
507
|
+
agent_tools = agent_config.get_available_tools()
|
|
508
|
+
register_tools_for_agent(temp_agent, agent_tools)
|
|
509
|
+
|
|
510
|
+
# Wrap with DBOS - pass event_stream_handler for streaming output
|
|
511
|
+
dbos_agent = DBOSAgent(
|
|
512
|
+
temp_agent,
|
|
513
|
+
name=subagent_name,
|
|
514
|
+
event_stream_handler=event_stream_handler,
|
|
515
|
+
)
|
|
493
516
|
temp_agent = dbos_agent
|
|
494
517
|
|
|
518
|
+
# Store MCP servers to add at runtime
|
|
519
|
+
subagent_mcp_servers = mcp_servers
|
|
520
|
+
else:
|
|
521
|
+
# Non-DBOS path - include MCP servers directly in the agent
|
|
522
|
+
temp_agent = Agent(
|
|
523
|
+
model=model,
|
|
524
|
+
instructions=instructions,
|
|
525
|
+
output_type=str,
|
|
526
|
+
retries=3,
|
|
527
|
+
toolsets=mcp_servers,
|
|
528
|
+
history_processors=[agent_config.message_history_accumulator],
|
|
529
|
+
model_settings=model_settings,
|
|
530
|
+
)
|
|
531
|
+
|
|
532
|
+
# Register the tools that the agent needs
|
|
533
|
+
from code_puppy.tools import register_tools_for_agent
|
|
534
|
+
|
|
535
|
+
agent_tools = agent_config.get_available_tools()
|
|
536
|
+
register_tools_for_agent(temp_agent, agent_tools)
|
|
537
|
+
|
|
538
|
+
subagent_mcp_servers = None
|
|
539
|
+
|
|
495
540
|
# Run the temporary agent with the provided prompt as an asyncio task
|
|
496
541
|
# Pass the message_history from the session to continue the conversation
|
|
497
542
|
workflow_id = None # Track for potential cancellation
|
|
498
543
|
if get_use_dbos():
|
|
499
544
|
# Generate a unique workflow ID for DBOS - ensures no collisions in back-to-back calls
|
|
500
545
|
workflow_id = _generate_dbos_workflow_id(group_id)
|
|
546
|
+
|
|
547
|
+
# Add MCP servers to the DBOS agent's toolsets
|
|
548
|
+
# (temp_agent is discarded after this invocation, so no need to restore)
|
|
549
|
+
if subagent_mcp_servers:
|
|
550
|
+
temp_agent._toolsets = temp_agent._toolsets + subagent_mcp_servers
|
|
551
|
+
|
|
501
552
|
with SetWorkflowID(workflow_id):
|
|
502
553
|
task = asyncio.create_task(
|
|
503
554
|
temp_agent.run(
|
|
504
555
|
prompt,
|
|
505
556
|
message_history=message_history,
|
|
506
557
|
usage_limits=UsageLimits(request_limit=get_message_limit()),
|
|
558
|
+
event_stream_handler=event_stream_handler,
|
|
507
559
|
)
|
|
508
560
|
)
|
|
509
561
|
_active_subagent_tasks.add(task)
|
|
@@ -513,6 +565,7 @@ def register_invoke_agent(agent):
|
|
|
513
565
|
prompt,
|
|
514
566
|
message_history=message_history,
|
|
515
567
|
usage_limits=UsageLimits(request_limit=get_message_limit()),
|
|
568
|
+
event_stream_handler=event_stream_handler,
|
|
516
569
|
)
|
|
517
570
|
)
|
|
518
571
|
_active_subagent_tasks.add(task)
|
|
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.347 → code_puppy-0.0.348}/code_puppy/command_line/load_context_completion.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/command_line/mcp/catalog_server_installer.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/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.347 → code_puppy-0.0.348}/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.347 → code_puppy-0.0.348}/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
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/antigravity_model.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/register_callbacks.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/antigravity_oauth/test_plugin.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.347 → code_puppy-0.0.348}/code_puppy/plugins/chatgpt_oauth/register_callbacks.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.347 → code_puppy-0.0.348}/code_puppy/plugins/claude_code_oauth/register_callbacks.py
RENAMED
|
File without changes
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/claude_code_oauth/test_plugin.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/customizable_commands/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/example_custom_command/README.md
RENAMED
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/file_permission_handler/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/shell_safety/agent_shell_safety.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_puppy-0.0.347 → code_puppy-0.0.348}/code_puppy/plugins/shell_safety/register_callbacks.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
|