claude-mpm 4.0.32__tar.gz → 4.1.0__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.
- claude_mpm-4.1.0/BUILD_NUMBER +1 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/CLAUDE.md +3 -2
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/PKG-INFO +28 -9
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/README.md +21 -8
- claude_mpm-4.1.0/VERSION +1 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/pyproject.toml +59 -2
- claude_mpm-4.1.0/src/claude_mpm/VERSION +1 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/INSTRUCTIONS.md +70 -2
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/OUTPUT_STYLE.md +0 -11
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/WORKFLOW.md +14 -2
- claude_mpm-4.1.0/src/claude_mpm/agents/templates/documentation.json +194 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/research.json +0 -11
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/__init__.py +111 -33
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/agent_manager.py +10 -8
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/agents.py +82 -0
- claude_mpm-4.1.0/src/claude_mpm/cli/commands/cleanup_orphaned_agents.py +150 -0
- claude_mpm-4.1.0/src/claude_mpm/cli/commands/mcp_pipx_config.py +199 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parsers/agents_parser.py +27 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parsers/base_parser.py +6 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/startup_logging.py +75 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/framework_loader.py +173 -84
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/css/dashboard.css +449 -0
- claude_mpm-4.1.0/src/claude_mpm/dashboard/static/dist/components/agent-inference.js +2 -0
- claude_mpm-4.1.0/src/claude_mpm/dashboard/static/dist/components/event-viewer.js +2 -0
- claude_mpm-4.1.0/src/claude_mpm/dashboard/static/dist/components/file-tool-tracker.js +2 -0
- claude_mpm-4.1.0/src/claude_mpm/dashboard/static/dist/components/module-viewer.js +2 -0
- claude_mpm-4.1.0/src/claude_mpm/dashboard/static/dist/components/session-manager.js +2 -0
- claude_mpm-4.1.0/src/claude_mpm/dashboard/static/dist/dashboard.js +2 -0
- claude_mpm-4.1.0/src/claude_mpm/dashboard/static/dist/socket-client.js +2 -0
- claude_mpm-4.1.0/src/claude_mpm/dashboard/static/js/components/agent-hierarchy.js +774 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/agent-inference.js +257 -3
- claude_mpm-4.1.0/src/claude_mpm/dashboard/static/js/components/build-tracker.js +323 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/event-viewer.js +168 -39
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/file-tool-tracker.js +17 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/session-manager.js +23 -3
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/socket-manager.js +2 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/dashboard.js +207 -31
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/socket-client.js +92 -11
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/templates/index.html +1 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/claude_hooks/connection_pool.py +25 -4
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/claude_hooks/event_handlers.py +81 -19
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/claude_hooks/hook_handler.py +125 -163
- claude_mpm-4.1.0/src/claude_mpm/hooks/claude_hooks/hook_handler_eventbus.py +398 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/claude_hooks/response_tracking.py +10 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_deployment.py +34 -48
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_discovery_service.py +4 -1
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_template_builder.py +20 -11
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_version_manager.py +4 -1
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agents_directory_resolver.py +10 -25
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/multi_source_deployment_service.py +396 -13
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/target_directory_step.py +3 -2
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/strategies/system_strategy.py +10 -3
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/strategies/user_strategy.py +10 -14
- claude_mpm-4.1.0/src/claude_mpm/services/agents/deployment/system_instructions_deployer.py +103 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/memory/content_manager.py +98 -105
- claude_mpm-4.1.0/src/claude_mpm/services/event_bus/__init__.py +18 -0
- claude_mpm-4.1.0/src/claude_mpm/services/event_bus/config.py +165 -0
- claude_mpm-4.1.0/src/claude_mpm/services/event_bus/event_bus.py +349 -0
- claude_mpm-4.1.0/src/claude_mpm/services/event_bus/relay.py +297 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/__init__.py +44 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/consumers/__init__.py +18 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/consumers/dead_letter.py +296 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/consumers/logging.py +183 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/consumers/metrics.py +242 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/consumers/socketio.py +376 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/core.py +470 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/interfaces.py +230 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/producers/__init__.py +14 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/producers/hook.py +269 -0
- claude_mpm-4.1.0/src/claude_mpm/services/events/producers/system.py +327 -0
- claude_mpm-4.1.0/src/claude_mpm/services/mcp_gateway/auto_configure.py +372 -0
- claude_mpm-4.1.0/src/claude_mpm/services/mcp_gateway/core/process_pool.py +411 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/server/stdio_server.py +13 -0
- claude_mpm-4.1.0/src/claude_mpm/services/monitor_build_service.py +345 -0
- claude_mpm-4.1.0/src/claude_mpm/services/socketio/event_normalizer.py +667 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/handlers/connection.py +81 -23
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/handlers/hook.py +14 -5
- claude_mpm-4.1.0/src/claude_mpm/services/socketio/migration_utils.py +329 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/server/broadcaster.py +26 -33
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/server/core.py +29 -5
- claude_mpm-4.1.0/src/claude_mpm/services/socketio/server/eventbus_integration.py +189 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/server/main.py +25 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm.egg-info/PKG-INFO +28 -9
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm.egg-info/SOURCES.txt +26 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm.egg-info/requires.txt +6 -0
- claude_mpm-4.0.32/BUILD_NUMBER +0 -1
- claude_mpm-4.0.32/VERSION +0 -1
- claude_mpm-4.0.32/src/claude_mpm/VERSION +0 -1
- claude_mpm-4.0.32/src/claude_mpm/agents/templates/documentation.json +0 -177
- claude_mpm-4.0.32/src/claude_mpm/dashboard/static/dist/components/agent-inference.js +0 -2
- claude_mpm-4.0.32/src/claude_mpm/dashboard/static/dist/components/event-viewer.js +0 -2
- claude_mpm-4.0.32/src/claude_mpm/dashboard/static/dist/components/file-tool-tracker.js +0 -2
- claude_mpm-4.0.32/src/claude_mpm/dashboard/static/dist/components/module-viewer.js +0 -2
- claude_mpm-4.0.32/src/claude_mpm/dashboard/static/dist/components/session-manager.js +0 -2
- claude_mpm-4.0.32/src/claude_mpm/dashboard/static/dist/dashboard.js +0 -2
- claude_mpm-4.0.32/src/claude_mpm/dashboard/static/dist/socket-client.js +0 -2
- claude_mpm-4.0.32/src/claude_mpm/services/agents/deployment/system_instructions_deployer.py +0 -180
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/LICENSE +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/MANIFEST.in +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/scripts/ticket +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/setup.cfg +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/BUILD_NUMBER +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/__main__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/BASE_AGENT_TEMPLATE.md +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/BASE_PM.md +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/MEMORY.md +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/agent-template.yaml +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/agent_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/agent_loader_integration.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/agents_metadata.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/async_agent_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/backups/INSTRUCTIONS.md +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/base_agent.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/base_agent_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/frontmatter_validator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/schema/agent_schema.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/system_agent_config.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/agent-manager.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/agent-manager.md +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/api_qa.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/backup/data_engineer_agent_20250726_234551.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/backup/documentation_agent_20250726_234551.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/backup/engineer_agent_20250726_234551.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/backup/ops_agent_20250726_234551.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/backup/qa_agent_20250726_234551.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/backup/research_agent_2025011_234551.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/backup/research_agent_20250726_234551.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/backup/research_memory_efficient.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/backup/security_agent_20250726_234551.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/backup/version_control_agent_20250726_234551.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/code_analyzer.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/data_engineer.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/engineer.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/memory_manager.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/ops.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/project_organizer.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/qa.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/refactoring_engineer.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/security.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/ticketing.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/vercel_ops_agent.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/vercel_ops_instructions.md +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/version_control.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/web_qa.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/agents/templates/web_ui.json +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/__main__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/aggregate.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/cleanup.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/config.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/doctor.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/info.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/mcp.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/mcp_command_router.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/mcp_config_commands.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/mcp_install_commands.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/mcp_server_commands.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/mcp_tool_commands.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/memory.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/monitor.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/run.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/run_config_checker.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/socketio_monitor.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/commands/tickets.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parser.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parsers/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parsers/agent_manager_parser.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parsers/config_parser.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parsers/mcp_parser.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parsers/memory_parser.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parsers/monitor_parser.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parsers/run_parser.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/parsers/tickets_parser.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/shared/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/shared/argument_patterns.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/shared/base_command.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/shared/error_handling.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/shared/output_formatters.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/ticket_cli.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli/utils.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli_module/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli_module/args.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli_module/commands.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/cli_module/migration_example.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/config/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/config/agent_config.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/config/experimental_features.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/config/paths.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/config/socketio_config.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/constants.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/agent_name_normalizer.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/agent_registry.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/agent_session_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/base_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/cache.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/claude_runner.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/config.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/config_aliases.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/config_constants.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/constants.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/container.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/exceptions.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/factories.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/hook_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/hook_performance_config.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/injectable_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/interactive_session.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/interfaces.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/lazy.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/logger.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/logging_config.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/minimal_framework_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/mixins.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/oneshot_session.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/optimized_agent_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/optimized_startup.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/output_style_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/pm_hook_interceptor.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/service_registry.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/session_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/shared/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/shared/config_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/shared/path_resolver.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/shared/singleton_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/socketio_pool.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/tool_access_control.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/types.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/typing_utils.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/unified_agent_registry.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/unified_config.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/core/unified_paths.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/index.html +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/open_dashboard.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/agent-inference.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/event-processor.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/event-viewer.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/export-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/file-tool-tracker.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/hud-library-loader.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/hud-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/hud-visualizer.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/module-viewer.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/session-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/socket-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/ui-state-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/components/working-directory.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/dashboard.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/built/socket-client.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/dist/components/event-processor.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/dist/components/export-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/dist/components/hud-library-loader.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/dist/components/hud-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/dist/components/hud-visualizer.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/dist/components/socket-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/dist/components/ui-state-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/dist/components/working-directory.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/event-processor.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/export-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/hud-library-loader.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/hud-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/hud-visualizer.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/module-viewer.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/ui-state-manager.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/components/working-directory.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/static/js/extension-error-handler.js +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/dashboard/test_dashboard.html +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/experimental/cli_enhancements.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/generators/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/generators/agent_profile_generator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/base_hook.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/claude_hooks/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/claude_hooks/hook_wrapper.sh +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/claude_hooks/memory_integration.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/claude_hooks/tool_analysis.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/memory_integration_hook.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/tool_call_interceptor.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/hooks/validation_hooks.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/init.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/models/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/models/agent_definition.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/models/agent_session.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/scripts/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/scripts/mcp_server.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/scripts/mcp_wrapper.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/scripts/socketio_daemon.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/scripts/socketio_daemon_hardened.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/scripts/socketio_server_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/scripts/start_activity_logging.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agent_capabilities_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/agent_builder.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_config_provider.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_configuration_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_definition_factory.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_environment_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_filesystem_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_format_converter.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_frontmatter_validator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_lifecycle_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_metrics_collector.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_restore_handler.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_validator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/agent_versioning.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/async_agent_deployment.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/config/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/config/deployment_config.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/config/deployment_config_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/deployment_config_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/deployment_type_detector.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/deployment_wrapper.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/facade/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/facade/async_deployment_executor.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/facade/deployment_executor.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/facade/deployment_facade.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/facade/sync_deployment_executor.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/interface_adapter.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/lifecycle_health_checker.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/lifecycle_performance_tracker.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/pipeline/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/pipeline/pipeline_builder.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/pipeline/pipeline_context.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/pipeline/pipeline_executor.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/agent_processing_step.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/base_step.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/configuration_step.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/validation_step.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/processors/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/processors/agent_deployment_context.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/processors/agent_deployment_result.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/processors/agent_processor.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/refactored_agent_deployment_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/results/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/results/deployment_metrics.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/results/deployment_result_builder.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/strategies/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/strategies/base_strategy.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/strategies/project_strategy.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/strategies/strategy_selector.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/validation/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/validation/agent_validator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/validation/deployment_validator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/validation/template_validator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/deployment/validation/validation_result.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/loading/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/loading/agent_profile_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/loading/base_agent_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/loading/framework_agent_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/management/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/management/agent_capabilities_generator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/management/agent_management_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/memory/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/memory/agent_memory_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/memory/agent_persistence_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/memory/template_generator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/registry/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/registry/deployed_agent_discovery.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/agents/registry/modification_tracker.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/async_session_logger.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/claude_session_logger.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/command_handler_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/communication/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/core/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/core/base.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/core/interfaces/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/core/interfaces/agent.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/core/interfaces/communication.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/core/interfaces/infrastructure.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/core/interfaces/service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/core/interfaces.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/agent_check.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/base_check.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/claude_desktop_check.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/common_issues_check.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/configuration_check.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/filesystem_check.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/installation_check.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/mcp_check.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/monitor_check.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/checks/startup_log_check.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/diagnostic_runner.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/doctor_reporter.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/diagnostics/models.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/event_aggregator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/exceptions.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/content_assembler.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/content_validator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/deployment_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/agents.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/claude_pm_init.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/core_responsibilities.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/delegation_constraints.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/environment_config.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/footer.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/header.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/orchestration_principles.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/role_designation.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/subprocess_validation.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/todo_task_tools.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/troubleshooting.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/section_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/framework_claude_md_generator/version_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/hook_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/infrastructure/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/infrastructure/context_preservation.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/infrastructure/daemon_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/infrastructure/logging.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/infrastructure/monitoring.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/config/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/config/config_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/config/config_schema.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/config/configuration.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/core/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/core/base.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/core/exceptions.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/core/interfaces.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/core/singleton_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/core/startup_verification.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/main.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/registry/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/registry/service_registry.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/registry/tool_registry.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/server/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/server/mcp_gateway.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/server/stdio_handler.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/tools/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/tools/base_adapter.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/tools/document_summarizer.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/tools/health_check_tool.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/tools/hello_world.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/tools/ticket_tools.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/mcp_gateway/tools/unified_ticket_tool.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/memory/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/memory/builder.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/memory/cache/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/memory/cache/shared_prompt_cache.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/memory/cache/simple_cache.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/memory/indexed_memory.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/memory/optimizer.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/memory/router.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/memory_hook_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/port_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/project/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/project/analyzer.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/project/registry.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/recovery_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/response_tracker.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/runner_configuration_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/session_management_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/shared/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/shared/async_service_base.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/shared/config_service_base.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/shared/lifecycle_service_base.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/shared/manager_base.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/shared/service_factory.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/client_proxy.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/handlers/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/handlers/base.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/handlers/file.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/handlers/git.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/handlers/memory.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/handlers/project.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/handlers/registry.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio/server/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio_client_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/socketio_server.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/subprocess_launcher_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/system_instructions_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/ticket_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/utility_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/version_control/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/version_control/branch_strategy.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/version_control/conflict_resolution.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/version_control/git_operations.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/version_control/semantic_versioning.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/version_control/version_parser.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/services/version_service.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/storage/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/storage/state_storage.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/ticket_wrapper.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/agent_dependency_loader.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/config_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/console.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/dependency_cache.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/dependency_manager.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/dependency_strategies.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/environment_context.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/error_handler.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/file_utils.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/framework_detection.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/import_migration_example.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/imports.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/path_operations.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/robust_installer.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/session_logging.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/utils/subprocess_utils.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/validation/__init__.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/validation/agent_validator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm/validation/frontmatter_validator.py +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm.egg-info/dependency_links.txt +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm.egg-info/entry_points.txt +0 -0
- {claude_mpm-4.0.32 → claude_mpm-4.1.0}/src/claude_mpm.egg-info/top_level.txt +0 -0
| @@ -0,0 +1 @@ | |
| 1 | 
            +
            296
         | 
| @@ -72,11 +72,12 @@ Following the TSK-0053 refactoring, Claude MPM features: | |
| 72 72 | 
             
            # Full test suite
         | 
| 73 73 | 
             
            ./scripts/run_all_tests.sh
         | 
| 74 74 |  | 
| 75 | 
            -
            # Lint and type checks
         | 
| 75 | 
            +
            # Lint and type checks (catches duplicate imports!)
         | 
| 76 76 | 
             
            ./scripts/run_lint.sh
         | 
| 77 77 | 
             
            ```
         | 
| 78 78 |  | 
| 79 79 | 
             
            See [docs/QA.md](docs/QA.md) for detailed testing procedures.
         | 
| 80 | 
            +
            See [docs/LINTING.md](docs/LINTING.md) for linting configuration and duplicate import detection.
         | 
| 80 81 |  | 
| 81 82 | 
             
            ### Key System Components
         | 
| 82 83 |  | 
| @@ -186,7 +187,7 @@ def test_service_implements_interface(): | |
| 186 187 | 
             
            1. **Import Errors**: Ensure virtual environment is activated and PYTHONPATH includes `src/`
         | 
| 187 188 | 
             
            2. **Hook Service Errors**: Check port availability (8765-8785)
         | 
| 188 189 | 
             
            3. **Version Errors**: Run `pip install -e .` to ensure proper installation
         | 
| 189 | 
            -
            4. **Agent  | 
| 190 | 
            +
            4. **Agent Deployment**: All agents now deploy to project-level `.claude/agents/` directory (changed in v4.0.32+)
         | 
| 190 191 |  | 
| 191 192 | 
             
            ## Contributing
         | 
| 192 193 |  | 
| @@ -1,6 +1,6 @@ | |
| 1 1 | 
             
            Metadata-Version: 2.4
         | 
| 2 2 | 
             
            Name: claude-mpm
         | 
| 3 | 
            -
            Version: 4.0 | 
| 3 | 
            +
            Version: 4.1.0
         | 
| 4 4 | 
             
            Summary: Claude Multi-Agent Project Manager - Orchestrate Claude with agent delegation and ticket tracking
         | 
| 5 5 | 
             
            Author-email: Bob Matsuoka <bob@matsuoka.com>
         | 
| 6 6 | 
             
            Maintainer: Claude MPM Team
         | 
| @@ -46,6 +46,7 @@ Requires-Dist: toml>=0.10.2 | |
| 46 46 | 
             
            Requires-Dist: packaging>=21.0
         | 
| 47 47 | 
             
            Requires-Dist: pydantic>=2.0.0
         | 
| 48 48 | 
             
            Requires-Dist: pydantic-settings>=2.0.0
         | 
| 49 | 
            +
            Requires-Dist: pyee>=13.0.0
         | 
| 49 50 | 
             
            Requires-Dist: importlib-resources>=5.0; python_version < "3.9"
         | 
| 50 51 | 
             
            Provides-Extra: dev
         | 
| 51 52 | 
             
            Requires-Dist: pytest>=7.0; extra == "dev"
         | 
| @@ -53,6 +54,11 @@ Requires-Dist: pytest-asyncio; extra == "dev" | |
| 53 54 | 
             
            Requires-Dist: pytest-cov; extra == "dev"
         | 
| 54 55 | 
             
            Requires-Dist: black; extra == "dev"
         | 
| 55 56 | 
             
            Requires-Dist: flake8; extra == "dev"
         | 
| 57 | 
            +
            Requires-Dist: flake8-import-order; extra == "dev"
         | 
| 58 | 
            +
            Requires-Dist: flake8-tidy-imports; extra == "dev"
         | 
| 59 | 
            +
            Requires-Dist: flake8-bugbear; extra == "dev"
         | 
| 60 | 
            +
            Requires-Dist: ruff>=0.1.0; extra == "dev"
         | 
| 61 | 
            +
            Requires-Dist: pylint>=3.0.0; extra == "dev"
         | 
| 56 62 | 
             
            Requires-Dist: pre-commit; extra == "dev"
         | 
| 57 63 | 
             
            Requires-Dist: mypy>=1.0.0; extra == "dev"
         | 
| 58 64 | 
             
            Requires-Dist: types-PyYAML>=6.0.0; extra == "dev"
         | 
| @@ -116,7 +122,7 @@ A powerful orchestration framework for Claude Code that enables multi-agent work | |
| 116 122 | 
             
            ## Features
         | 
| 117 123 |  | 
| 118 124 | 
             
            - 🤖 **Multi-Agent System**: 15 specialized agents for comprehensive project management
         | 
| 119 | 
            -
            - 🧠 **Agent Memory System**:  | 
| 125 | 
            +
            - 🧠 **Agent Memory System**: Simple list-based persistent learning with JSON response field updates
         | 
| 120 126 | 
             
            - 🔄 **Session Management**: Resume previous sessions with `--resume` 
         | 
| 121 127 | 
             
            - 📊 **Real-Time Monitoring**: Live dashboard with `--monitor` flag
         | 
| 122 128 | 
             
            - 🔌 **MCP Gateway**: Model Context Protocol integration for extensible tool capabilities
         | 
| @@ -132,6 +138,13 @@ A powerful orchestration framework for Claude Code that enables multi-agent work | |
| 132 138 | 
             
            pip install claude-mpm
         | 
| 133 139 | 
             
            ```
         | 
| 134 140 |  | 
| 141 | 
            +
            Or with pipx (recommended for isolated installation):
         | 
| 142 | 
            +
            ```bash
         | 
| 143 | 
            +
            pipx install claude-mpm
         | 
| 144 | 
            +
            # Configure MCP for pipx users:
         | 
| 145 | 
            +
            claude-mpm mcp-pipx-config
         | 
| 146 | 
            +
            ```
         | 
| 147 | 
            +
             | 
| 135 148 | 
             
            **That's it!** See [QUICKSTART.md](QUICKSTART.md) for immediate usage or [docs/user/installation.md](docs/user/installation.md) for advanced options.
         | 
| 136 149 |  | 
| 137 150 | 
             
            ## Quick Usage
         | 
| @@ -156,15 +169,17 @@ claude-mpm cleanup-memory | |
| 156 169 | 
             
            See [QUICKSTART.md](QUICKSTART.md) for complete usage examples.
         | 
| 157 170 |  | 
| 158 171 |  | 
| 159 | 
            -
            ## Architecture ( | 
| 172 | 
            +
            ## Architecture (v4.1.0+)
         | 
| 160 173 |  | 
| 161 | 
            -
            Following  | 
| 174 | 
            +
            Following continuous improvements through v4.1.0, Claude MPM features:
         | 
| 162 175 |  | 
| 163 | 
            -
            - **Service-Oriented Architecture**: Five specialized service domains
         | 
| 176 | 
            +
            - **Service-Oriented Architecture**: Five specialized service domains with Socket.IO stability improvements
         | 
| 164 177 | 
             
            - **Interface-Based Contracts**: All services implement explicit interfaces
         | 
| 165 178 | 
             
            - **Dependency Injection**: Service container with automatic resolution
         | 
| 166 179 | 
             
            - **50-80% Performance Improvement**: Through lazy loading and intelligent caching
         | 
| 167 180 | 
             
            - **Enhanced Security**: Comprehensive input validation and sanitization framework
         | 
| 181 | 
            +
            - **Improved Monitoring**: Enhanced dashboard with hierarchical agent display
         | 
| 182 | 
            +
            - **Socket.IO Stability**: Major reliability improvements for real-time communication
         | 
| 168 183 |  | 
| 169 184 | 
             
            See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) for detailed architecture information.
         | 
| 170 185 |  | 
| @@ -200,7 +215,7 @@ Claude MPM includes 15 specialized agents: | |
| 200 215 | 
             
            - **Code Analyzer** - Static code analysis with AST and tree-sitter
         | 
| 201 216 |  | 
| 202 217 | 
             
            ### Agent Memory System
         | 
| 203 | 
            -
            Agents learn project-specific patterns and remember  | 
| 218 | 
            +
            Agents learn project-specific patterns using a simple list format and can update memories via JSON response fields (`remember` for incremental updates, `MEMORIES` for complete replacement). Initialize with `claude-mpm memory init`.
         | 
| 204 219 |  | 
| 205 220 | 
             
            ### MCP Gateway (Model Context Protocol)
         | 
| 206 221 |  | 
| @@ -253,11 +268,15 @@ See [docs/MEMORY.md](docs/MEMORY.md) and [docs/developer/11-dashboard/README.md] | |
| 253 268 | 
             
            ### API Documentation
         | 
| 254 269 | 
             
            Comprehensive API documentation is available at [docs/api/](docs/api/) - build with `make html` in that directory.
         | 
| 255 270 |  | 
| 256 | 
            -
            ## Recent Updates ( | 
| 271 | 
            +
            ## Recent Updates (v4.1.0)
         | 
| 272 | 
            +
             | 
| 273 | 
            +
            **Socket.IO Stability Improvements**: Major reliability enhancements for real-time communication with improved error handling and connection management.
         | 
| 274 | 
            +
             | 
| 275 | 
            +
            **Project Organization**: Comprehensive cleanup and reorganization with structured script directories for better maintainability.
         | 
| 257 276 |  | 
| 258 | 
            -
            ** | 
| 277 | 
            +
            **Documentation Consolidation**: Streamlined documentation structure with consolidated guides and improved navigation.
         | 
| 259 278 |  | 
| 260 | 
            -
            ** | 
| 279 | 
            +
            **Agent Hierarchy Display**: Enhanced dashboard with hierarchical agent display showing PM at top level with visual distinction for implied vs explicit nodes.
         | 
| 261 280 |  | 
| 262 281 | 
             
            See [CHANGELOG.md](CHANGELOG.md) for full history and [docs/MIGRATION.md](docs/MIGRATION.md) for upgrade instructions.
         | 
| 263 282 |  | 
| @@ -7,7 +7,7 @@ A powerful orchestration framework for Claude Code that enables multi-agent work | |
| 7 7 | 
             
            ## Features
         | 
| 8 8 |  | 
| 9 9 | 
             
            - 🤖 **Multi-Agent System**: 15 specialized agents for comprehensive project management
         | 
| 10 | 
            -
            - 🧠 **Agent Memory System**:  | 
| 10 | 
            +
            - 🧠 **Agent Memory System**: Simple list-based persistent learning with JSON response field updates
         | 
| 11 11 | 
             
            - 🔄 **Session Management**: Resume previous sessions with `--resume` 
         | 
| 12 12 | 
             
            - 📊 **Real-Time Monitoring**: Live dashboard with `--monitor` flag
         | 
| 13 13 | 
             
            - 🔌 **MCP Gateway**: Model Context Protocol integration for extensible tool capabilities
         | 
| @@ -23,6 +23,13 @@ A powerful orchestration framework for Claude Code that enables multi-agent work | |
| 23 23 | 
             
            pip install claude-mpm
         | 
| 24 24 | 
             
            ```
         | 
| 25 25 |  | 
| 26 | 
            +
            Or with pipx (recommended for isolated installation):
         | 
| 27 | 
            +
            ```bash
         | 
| 28 | 
            +
            pipx install claude-mpm
         | 
| 29 | 
            +
            # Configure MCP for pipx users:
         | 
| 30 | 
            +
            claude-mpm mcp-pipx-config
         | 
| 31 | 
            +
            ```
         | 
| 32 | 
            +
             | 
| 26 33 | 
             
            **That's it!** See [QUICKSTART.md](QUICKSTART.md) for immediate usage or [docs/user/installation.md](docs/user/installation.md) for advanced options.
         | 
| 27 34 |  | 
| 28 35 | 
             
            ## Quick Usage
         | 
| @@ -47,15 +54,17 @@ claude-mpm cleanup-memory | |
| 47 54 | 
             
            See [QUICKSTART.md](QUICKSTART.md) for complete usage examples.
         | 
| 48 55 |  | 
| 49 56 |  | 
| 50 | 
            -
            ## Architecture ( | 
| 57 | 
            +
            ## Architecture (v4.1.0+)
         | 
| 51 58 |  | 
| 52 | 
            -
            Following  | 
| 59 | 
            +
            Following continuous improvements through v4.1.0, Claude MPM features:
         | 
| 53 60 |  | 
| 54 | 
            -
            - **Service-Oriented Architecture**: Five specialized service domains
         | 
| 61 | 
            +
            - **Service-Oriented Architecture**: Five specialized service domains with Socket.IO stability improvements
         | 
| 55 62 | 
             
            - **Interface-Based Contracts**: All services implement explicit interfaces
         | 
| 56 63 | 
             
            - **Dependency Injection**: Service container with automatic resolution
         | 
| 57 64 | 
             
            - **50-80% Performance Improvement**: Through lazy loading and intelligent caching
         | 
| 58 65 | 
             
            - **Enhanced Security**: Comprehensive input validation and sanitization framework
         | 
| 66 | 
            +
            - **Improved Monitoring**: Enhanced dashboard with hierarchical agent display
         | 
| 67 | 
            +
            - **Socket.IO Stability**: Major reliability improvements for real-time communication
         | 
| 59 68 |  | 
| 60 69 | 
             
            See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) for detailed architecture information.
         | 
| 61 70 |  | 
| @@ -91,7 +100,7 @@ Claude MPM includes 15 specialized agents: | |
| 91 100 | 
             
            - **Code Analyzer** - Static code analysis with AST and tree-sitter
         | 
| 92 101 |  | 
| 93 102 | 
             
            ### Agent Memory System
         | 
| 94 | 
            -
            Agents learn project-specific patterns and remember  | 
| 103 | 
            +
            Agents learn project-specific patterns using a simple list format and can update memories via JSON response fields (`remember` for incremental updates, `MEMORIES` for complete replacement). Initialize with `claude-mpm memory init`.
         | 
| 95 104 |  | 
| 96 105 | 
             
            ### MCP Gateway (Model Context Protocol)
         | 
| 97 106 |  | 
| @@ -144,11 +153,15 @@ See [docs/MEMORY.md](docs/MEMORY.md) and [docs/developer/11-dashboard/README.md] | |
| 144 153 | 
             
            ### API Documentation
         | 
| 145 154 | 
             
            Comprehensive API documentation is available at [docs/api/](docs/api/) - build with `make html` in that directory.
         | 
| 146 155 |  | 
| 147 | 
            -
            ## Recent Updates ( | 
| 156 | 
            +
            ## Recent Updates (v4.1.0)
         | 
| 157 | 
            +
             | 
| 158 | 
            +
            **Socket.IO Stability Improvements**: Major reliability enhancements for real-time communication with improved error handling and connection management.
         | 
| 159 | 
            +
             | 
| 160 | 
            +
            **Project Organization**: Comprehensive cleanup and reorganization with structured script directories for better maintainability.
         | 
| 148 161 |  | 
| 149 | 
            -
            ** | 
| 162 | 
            +
            **Documentation Consolidation**: Streamlined documentation structure with consolidated guides and improved navigation.
         | 
| 150 163 |  | 
| 151 | 
            -
            ** | 
| 164 | 
            +
            **Agent Hierarchy Display**: Enhanced dashboard with hierarchical agent display showing PM at top level with visual distinction for implied vs explicit nodes.
         | 
| 152 165 |  | 
| 153 166 | 
             
            See [CHANGELOG.md](CHANGELOG.md) for full history and [docs/MIGRATION.md](docs/MIGRATION.md) for upgrade instructions.
         | 
| 154 167 |  | 
    
        claude_mpm-4.1.0/VERSION
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            4.1.0
         | 
| @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" | |
| 4 4 |  | 
| 5 5 | 
             
            [project]
         | 
| 6 6 | 
             
            name = "claude-mpm"
         | 
| 7 | 
            -
            version = "4.0 | 
| 7 | 
            +
            version = "4.1.0"
         | 
| 8 8 | 
             
            description = "Claude Multi-Agent Project Manager - Orchestrate Claude with agent delegation and ticket tracking"
         | 
| 9 9 | 
             
            readme = "README.md"
         | 
| 10 10 | 
             
            requires-python = ">=3.8"
         | 
| @@ -65,6 +65,9 @@ dependencies = [ | |
| 65 65 | 
             
                "packaging>=21.0",
         | 
| 66 66 | 
             
                "pydantic>=2.0.0",
         | 
| 67 67 | 
             
                "pydantic-settings>=2.0.0",
         | 
| 68 | 
            +
                
         | 
| 69 | 
            +
                # Event bus for decoupled event handling
         | 
| 70 | 
            +
                "pyee>=13.0.0",
         | 
| 68 71 |  | 
| 69 72 | 
             
                # Python version compatibility
         | 
| 70 73 | 
             
                "importlib-resources>=5.0; python_version < '3.9'",
         | 
| @@ -86,6 +89,11 @@ dev = [ | |
| 86 89 | 
             
                # Code formatting and linting
         | 
| 87 90 | 
             
                "black",
         | 
| 88 91 | 
             
                "flake8",
         | 
| 92 | 
            +
                "flake8-import-order",
         | 
| 93 | 
            +
                "flake8-tidy-imports",
         | 
| 94 | 
            +
                "flake8-bugbear",
         | 
| 95 | 
            +
                "ruff>=0.1.0",
         | 
| 96 | 
            +
                "pylint>=3.0.0",
         | 
| 89 97 | 
             
                "pre-commit",
         | 
| 90 98 |  | 
| 91 99 | 
             
                # Type checking
         | 
| @@ -181,9 +189,58 @@ markers = [ | |
| 181 189 | 
             
            ]
         | 
| 182 190 | 
             
            asyncio_mode = "auto"
         | 
| 183 191 |  | 
| 192 | 
            +
            [tool.ruff]
         | 
| 193 | 
            +
            # Ruff configuration for duplicate import detection
         | 
| 194 | 
            +
            line-length = 88
         | 
| 195 | 
            +
            target-version = "py38"
         | 
| 196 | 
            +
            select = [
         | 
| 197 | 
            +
                "F",     # Pyflakes
         | 
| 198 | 
            +
                "E",     # pycodestyle errors  
         | 
| 199 | 
            +
                "W",     # pycodestyle warnings
         | 
| 200 | 
            +
                "I",     # isort
         | 
| 201 | 
            +
                "F401",  # Unused imports
         | 
| 202 | 
            +
                "F811",  # Redefinition (catches duplicate imports!)
         | 
| 203 | 
            +
                "F821",  # Undefined name (catches scope issues!)
         | 
| 204 | 
            +
                "F823",  # Local variable referenced before assignment
         | 
| 205 | 
            +
            ]
         | 
| 206 | 
            +
            ignore = ["E203", "E501"]
         | 
| 207 | 
            +
            exclude = [
         | 
| 208 | 
            +
                ".git", "__pycache__", ".venv", "venv", "build", "dist",
         | 
| 209 | 
            +
                "*.egg-info", ".pytest_cache", ".mypy_cache", "node_modules"
         | 
| 210 | 
            +
            ]
         | 
| 211 | 
            +
             | 
| 212 | 
            +
            [tool.ruff.per-file-ignores]
         | 
| 213 | 
            +
            "__init__.py" = ["F401", "F403"]
         | 
| 214 | 
            +
            "tests/*" = ["F403", "F405"]
         | 
| 215 | 
            +
             | 
| 216 | 
            +
            [tool.pylint]
         | 
| 217 | 
            +
            # Pylint configuration for additional checks
         | 
| 218 | 
            +
            max-line-length = 88
         | 
| 219 | 
            +
            disable = [
         | 
| 220 | 
            +
                "C0111",  # missing-docstring
         | 
| 221 | 
            +
                "C0103",  # invalid-name
         | 
| 222 | 
            +
                "R0903",  # too-few-public-methods
         | 
| 223 | 
            +
                "R0913",  # too-many-arguments
         | 
| 224 | 
            +
                "W0212",  # protected-access
         | 
| 225 | 
            +
            ]
         | 
| 226 | 
            +
            # Enable duplicate code detection
         | 
| 227 | 
            +
            enable = [
         | 
| 228 | 
            +
                "duplicate-code",
         | 
| 229 | 
            +
                "reimported",
         | 
| 230 | 
            +
                "import-self",
         | 
| 231 | 
            +
                "cyclic-import",
         | 
| 232 | 
            +
                "wrong-import-order",
         | 
| 233 | 
            +
                "ungrouped-imports",
         | 
| 234 | 
            +
                "wrong-import-position",
         | 
| 235 | 
            +
            ]
         | 
| 236 | 
            +
            min-similarity-lines = 4
         | 
| 237 | 
            +
            ignore-comments = true
         | 
| 238 | 
            +
            ignore-docstrings = true
         | 
| 239 | 
            +
            ignore-imports = false
         | 
| 240 | 
            +
             | 
| 184 241 | 
             
            [tool.commitizen]
         | 
| 185 242 | 
             
            name = "cz_conventional_commits"
         | 
| 186 | 
            -
            version = "4.0 | 
| 243 | 
            +
            version = "4.1.0"
         | 
| 187 244 | 
             
            version_files = [
         | 
| 188 245 | 
             
                "VERSION",
         | 
| 189 246 | 
             
                "src/claude_mpm/VERSION",
         | 
| @@ -0,0 +1 @@ | |
| 1 | 
            +
            4.1.0
         | 
| @@ -1,9 +1,9 @@ | |
| 1 1 | 
             
            <!-- FRAMEWORK_VERSION: 0010 -->
         | 
| 2 2 | 
             
            <!-- LAST_MODIFIED: 2025-08-10T00:00:00Z -->
         | 
| 3 3 |  | 
| 4 | 
            -
            # Claude Multi-Agent Project Manager Instructions
         | 
| 4 | 
            +
            # Claude Multi-Agent (Claude-MPM) Project Manager Instructions
         | 
| 5 5 |  | 
| 6 | 
            -
            ## 🔴  | 
| 6 | 
            +
            ## 🔴 YOUR PRIME DIRECTIVE - MANDATORY DELEGATION 🔴
         | 
| 7 7 |  | 
| 8 8 | 
             
            **YOU ARE STRICTLY FORBIDDEN FROM DOING ANY WORK DIRECTLY.**
         | 
| 9 9 |  | 
| @@ -97,6 +97,74 @@ You are a PROJECT MANAGER whose SOLE PURPOSE is to delegate work to specialized | |
| 97 97 |  | 
| 98 98 | 
             
            ## MCP Vector Search Integration
         | 
| 99 99 |  | 
| 100 | 
            +
            ## 🎫 MANDATORY TICKET TRACKING PROTOCOL 🎫
         | 
| 101 | 
            +
             | 
| 102 | 
            +
            **CRITICAL REQUIREMENT**: You MUST track ALL work using the integrated ticketing system. This is NOT optional.
         | 
| 103 | 
            +
             | 
| 104 | 
            +
            ### Session Work Tracking Rules
         | 
| 105 | 
            +
             | 
| 106 | 
            +
            **At Session Start**:
         | 
| 107 | 
            +
            1. **ALWAYS create or update an ISS (Issue) ticket** for the current user request
         | 
| 108 | 
            +
            2. **Attach the ISS to an appropriate Epic (EP-)** or create new Epic if needed
         | 
| 109 | 
            +
            3. **Set ISS status to "in-progress"** when beginning work
         | 
| 110 | 
            +
            4. **Use ticket ID in all agent delegations** for traceability
         | 
| 111 | 
            +
             | 
| 112 | 
            +
            **During Work**:
         | 
| 113 | 
            +
            1. **Include ticket context in ALL delegations** to agents
         | 
| 114 | 
            +
            2. **Agents will create TSK (Task) tickets** for their implementation work
         | 
| 115 | 
            +
            3. **Update ISS ticket after each phase completion** with progress
         | 
| 116 | 
            +
            4. **Add comments to ticket for significant decisions or blockers**
         | 
| 117 | 
            +
             | 
| 118 | 
            +
            **At Work Completion**:
         | 
| 119 | 
            +
            1. **Update ISS ticket status to "done"** when all delegations complete
         | 
| 120 | 
            +
            2. **Add final summary comment** with outcomes and deliverables
         | 
| 121 | 
            +
            3. **Close the ticket** if no follow-up work is needed
         | 
| 122 | 
            +
            4. **Reference ticket ID in final response** to user
         | 
| 123 | 
            +
             | 
| 124 | 
            +
            ### Ticket Creation Commands
         | 
| 125 | 
            +
             | 
| 126 | 
            +
            **When MCP Gateway is available**:
         | 
| 127 | 
            +
            ```
         | 
| 128 | 
            +
            Use mcp__claude-mpm-gateway__ticket tool with operation: "create"
         | 
| 129 | 
            +
            ```
         | 
| 130 | 
            +
             | 
| 131 | 
            +
            **When using delegation**:
         | 
| 132 | 
            +
            ```
         | 
| 133 | 
            +
            Delegate to Ticketing Agent with clear instructions:
         | 
| 134 | 
            +
            - Create ISS for: [user request]
         | 
| 135 | 
            +
            - Parent Epic: [EP-XXXX or create new]
         | 
| 136 | 
            +
            - Priority: [based on urgency]
         | 
| 137 | 
            +
            - Description: [detailed context]
         | 
| 138 | 
            +
            ```
         | 
| 139 | 
            +
             | 
| 140 | 
            +
            ### Work Resumption via Tickets
         | 
| 141 | 
            +
             | 
| 142 | 
            +
            **Instead of session resume, use tickets for continuity**:
         | 
| 143 | 
            +
            1. Search for open ISS tickets: `operation: "list", status: "in-progress"`
         | 
| 144 | 
            +
            2. View ticket details: `operation: "view", ticket_id: "ISS-XXXX"`
         | 
| 145 | 
            +
            3. Resume work based on ticket history and status
         | 
| 146 | 
            +
            4. Continue updating the same ticket throughout the work
         | 
| 147 | 
            +
             | 
| 148 | 
            +
            ### Ticket Hierarchy Enforcement
         | 
| 149 | 
            +
             | 
| 150 | 
            +
            ```
         | 
| 151 | 
            +
            Epic (EP-XXXX) - Major initiative or multi-session work
         | 
| 152 | 
            +
            └── Issue (ISS-XXXX) - PM tracks user request here ← YOU CREATE THIS
         | 
| 153 | 
            +
                ├── Task (TSK-XXXX) - Research Agent's work
         | 
| 154 | 
            +
                ├── Task (TSK-XXXX) - Engineer Agent's work
         | 
| 155 | 
            +
                ├── Task (TSK-XXXX) - QA Agent's work
         | 
| 156 | 
            +
                └── Task (TSK-XXXX) - Documentation Agent's work
         | 
| 157 | 
            +
            ```
         | 
| 158 | 
            +
             | 
| 159 | 
            +
            **REMEMBER**:
         | 
| 160 | 
            +
            - ✅ ALWAYS create ISS tickets for user requests
         | 
| 161 | 
            +
            - ✅ ALWAYS attach ISS to an Epic
         | 
| 162 | 
            +
            - ✅ ALWAYS update ticket status as work progresses
         | 
| 163 | 
            +
            - ✅ ALWAYS close tickets when work completes
         | 
| 164 | 
            +
            - ❌ NEVER work without an active ISS ticket
         | 
| 165 | 
            +
            - ❌ NEVER create TSK tickets (agents do this)
         | 
| 166 | 
            +
            - ❌ NEVER leave tickets in "in-progress" after completion
         | 
| 167 | 
            +
             | 
| 100 168 | 
             
            ## Agent Response Format
         | 
| 101 169 |  | 
| 102 170 | 
             
            When completing tasks, all agents should structure their responses with:
         | 
| @@ -5,17 +5,6 @@ description: Multi-Agent Project Manager orchestration mode for delegation and c | |
| 5 5 |  | 
| 6 6 | 
             
            You are Claude Multi-Agent PM, a PROJECT MANAGER whose SOLE PURPOSE is to delegate work to specialized agents.
         | 
| 7 7 |  | 
| 8 | 
            -
            ## 🔴 PRIMARY DIRECTIVE - MANDATORY DELEGATION 🔴
         | 
| 9 | 
            -
             | 
| 10 | 
            -
            **YOU ARE STRICTLY FORBIDDEN FROM DOING ANY WORK DIRECTLY.**
         | 
| 11 | 
            -
             | 
| 12 | 
            -
            Direct implementation is ABSOLUTELY PROHIBITED unless the user EXPLICITLY overrides with phrases like:
         | 
| 13 | 
            -
            - "do this yourself"
         | 
| 14 | 
            -
            - "don't delegate"
         | 
| 15 | 
            -
            - "implement directly"
         | 
| 16 | 
            -
            - "you do it"
         | 
| 17 | 
            -
            - "no delegation"
         | 
| 18 | 
            -
             | 
| 19 8 | 
             
            ## Core Operating Rules
         | 
| 20 9 |  | 
| 21 10 | 
             
            **DEFAULT BEHAVIOR - ALWAYS DELEGATE**:
         | 
| @@ -372,7 +372,11 @@ Delegate to Research when: | |
| 372 372 | 
             
            - Architecture decisions needed
         | 
| 373 373 | 
             
            - Domain knowledge required
         | 
| 374 374 |  | 
| 375 | 
            -
            ### Ticketing Agent Integration
         | 
| 375 | 
            +
            ### 🔴 MANDATORY Ticketing Agent Integration 🔴
         | 
| 376 | 
            +
             | 
| 377 | 
            +
            **THIS IS NOT OPTIONAL - ALL WORK MUST BE TRACKED IN TICKETS**
         | 
| 378 | 
            +
             | 
| 379 | 
            +
            The PM MUST create and maintain tickets for ALL user requests. Failure to track work in tickets is a CRITICAL VIOLATION of PM protocols.
         | 
| 376 380 |  | 
| 377 381 | 
             
            **ALWAYS delegate to Ticketing Agent when user mentions:**
         | 
| 378 382 | 
             
            - "ticket", "tickets", "ticketing"
         | 
| @@ -437,4 +441,12 @@ The Ticketing Agent specializes in: | |
| 437 441 | 
             
            - Generating structured project documentation
         | 
| 438 442 | 
             
            - Breaking down work into manageable pieces
         | 
| 439 443 | 
             
            - Tracking project progress and dependencies
         | 
| 440 | 
            -
            - Maintaining clear audit trail of all work performed
         | 
| 444 | 
            +
            - Maintaining clear audit trail of all work performed
         | 
| 445 | 
            +
             | 
| 446 | 
            +
            ### Ticket-Based Work Resumption
         | 
| 447 | 
            +
             | 
| 448 | 
            +
            **Tickets replace session resume for work continuation**:
         | 
| 449 | 
            +
            - When starting any session, first check for open ISS tickets
         | 
| 450 | 
            +
            - Resume work on existing tickets rather than starting new ones
         | 
| 451 | 
            +
            - Use ticket history to understand context and progress
         | 
| 452 | 
            +
            - This ensures continuity across sessions and PMs
         | 
| @@ -0,0 +1,194 @@ | |
| 1 | 
            +
            {
         | 
| 2 | 
            +
              "schema_version": "1.2.0",
         | 
| 3 | 
            +
              "agent_id": "documentation-agent",
         | 
| 4 | 
            +
              "agent_version": "3.2.0",
         | 
| 5 | 
            +
              "template_version": "2.0.1",
         | 
| 6 | 
            +
              "template_changelog": [
         | 
| 7 | 
            +
                {
         | 
| 8 | 
            +
                  "version": "3.2.0",
         | 
| 9 | 
            +
                  "date": "2025-08-22",
         | 
| 10 | 
            +
                  "description": "Enhanced: Fixed MCP tool name (document_summarizer), cleaned up overly specific instructions with generic placeholders, added comprehensive memory consumption protection, enhanced file size pre-checking and forbidden practices enforcement"
         | 
| 11 | 
            +
                },
         | 
| 12 | 
            +
                {
         | 
| 13 | 
            +
                  "version": "2.0.1",
         | 
| 14 | 
            +
                  "date": "2025-08-22",
         | 
| 15 | 
            +
                  "description": "Optimized: Removed redundant instructions, now inherits from BASE_AGENT_TEMPLATE (75% reduction)"
         | 
| 16 | 
            +
                },
         | 
| 17 | 
            +
                {
         | 
| 18 | 
            +
                  "version": "2.0.0",
         | 
| 19 | 
            +
                  "date": "2025-08-20",
         | 
| 20 | 
            +
                  "description": "Major template restructuring"
         | 
| 21 | 
            +
                }
         | 
| 22 | 
            +
              ],
         | 
| 23 | 
            +
              "agent_type": "documentation",
         | 
| 24 | 
            +
              "metadata": {
         | 
| 25 | 
            +
                "name": "Documentation Agent",
         | 
| 26 | 
            +
                "description": "Memory-protected documentation generation with MANDATORY file size checks, 20KB/200-line thresholds, progressive summarization, forbidden practices enforcement, and immediate content discard after pattern extraction",
         | 
| 27 | 
            +
                "category": "specialized",
         | 
| 28 | 
            +
                "tags": [
         | 
| 29 | 
            +
                  "documentation",
         | 
| 30 | 
            +
                  "memory-efficient",
         | 
| 31 | 
            +
                  "strategic-sampling",
         | 
| 32 | 
            +
                  "pattern-extraction",
         | 
| 33 | 
            +
                  "writing",
         | 
| 34 | 
            +
                  "api-docs",
         | 
| 35 | 
            +
                  "guides",
         | 
| 36 | 
            +
                  "mcp-summarizer",
         | 
| 37 | 
            +
                  "line-tracking",
         | 
| 38 | 
            +
                  "content-thresholds",
         | 
| 39 | 
            +
                  "progressive-summarization"
         | 
| 40 | 
            +
                ],
         | 
| 41 | 
            +
                "author": "Claude MPM Team",
         | 
| 42 | 
            +
                "created_at": "2025-07-27T03:45:51.468276Z",
         | 
| 43 | 
            +
                "updated_at": "2025-08-22T12:00:00.000000Z",
         | 
| 44 | 
            +
                "color": "cyan"
         | 
| 45 | 
            +
              },
         | 
| 46 | 
            +
              "capabilities": {
         | 
| 47 | 
            +
                "model": "sonnet",
         | 
| 48 | 
            +
                "tools": [
         | 
| 49 | 
            +
                  "Read",
         | 
| 50 | 
            +
                  "Write",
         | 
| 51 | 
            +
                  "Edit",
         | 
| 52 | 
            +
                  "MultiEdit",
         | 
| 53 | 
            +
                  "Grep",
         | 
| 54 | 
            +
                  "Glob",
         | 
| 55 | 
            +
                  "LS",
         | 
| 56 | 
            +
                  "WebSearch",
         | 
| 57 | 
            +
                  "TodoWrite",
         | 
| 58 | 
            +
                  "mcp__claude-mpm-gateway__document_summarizer"
         | 
| 59 | 
            +
                ],
         | 
| 60 | 
            +
                "resource_tier": "lightweight",
         | 
| 61 | 
            +
                "max_tokens": 8192,
         | 
| 62 | 
            +
                "temperature": 0.2,
         | 
| 63 | 
            +
                "timeout": 600,
         | 
| 64 | 
            +
                "memory_limit": 1024,
         | 
| 65 | 
            +
                "cpu_limit": 20,
         | 
| 66 | 
            +
                "network_access": true,
         | 
| 67 | 
            +
                "file_access": {
         | 
| 68 | 
            +
                  "read_paths": [
         | 
| 69 | 
            +
                    "./"
         | 
| 70 | 
            +
                  ],
         | 
| 71 | 
            +
                  "write_paths": [
         | 
| 72 | 
            +
                    "./"
         | 
| 73 | 
            +
                  ]
         | 
| 74 | 
            +
                }
         | 
| 75 | 
            +
              },
         | 
| 76 | 
            +
              "instructions": "# Documentation Agent\n\n**Inherits from**: BASE_AGENT_TEMPLATE.md\n**Focus**: Memory-efficient documentation generation with MCP summarizer integration\n\n## Core Expertise\n\nCreate comprehensive, clear documentation with strict memory management. Focus on user-friendly content and technical accuracy while leveraging MCP document summarizer tool.\n\n## CRITICAL MEMORY PROTECTION MECHANISMS\n\n### Enhanced Content Threshold System (MANDATORY)\n- **Single File Limit**: 20KB OR 200 lines → triggers mandatory summarization\n- **Critical Files**: Files >100KB → ALWAYS summarized, NEVER loaded fully\n- **Cumulative Threshold**: 50KB total OR 3 files → triggers batch summarization\n- **Implementation Chunking**: Process large files in <100 line segments\n- **Immediate Discard**: Extract patterns, then discard content IMMEDIATELY\n\n### File Size Pre-Checking Protocol (MANDATORY)\n```bash\n# ALWAYS check file size BEFORE reading\nls -lh <filepath>  # Check size first\n# If >100KB: Use MCP summarizer directly without reading\n# If >1MB: Skip or defer entirely\n# If 20KB-100KB: Read in chunks with immediate summarization\n# If <20KB: Safe to read but discard after extraction\n```\n\n### Forbidden Memory Practices (NEVER VIOLATE)\n- ❌ **NEVER** read entire large codebases\n- ❌ **NEVER** load multiple files in parallel\n- ❌ **NEVER** retain file contents after extraction\n- ❌ **NEVER** load files >1MB into memory\n- ❌ **NEVER** accumulate content across multiple file reads\n- ❌ **NEVER** skip file size checks before reading\n- ❌ **NEVER** process >5 files without summarization\n\n## Documentation-Specific Memory Management\n\n### Progressive Summarization Strategy\n1. **Immediate Summarization**: When single file hits 20KB/200 lines\n2. **Batch Summarization**: After processing 3 files or 50KB cumulative\n3. **Counter Reset**: Reset cumulative counter after batch summarization\n4. **Content Condensation**: Preserve only essential documentation patterns\n\n### Grep-Based Pattern Discovery (Adaptive Context)\n```bash\n# Adaptive context based on match count\ngrep -n \"<pattern>\" <file> | wc -l  # Count matches first\n\n# >50 matches: Minimal context\ngrep -n -A 2 -B 2 \"<pattern>\" <file> | head -50\n\n# 20-50 matches: Standard context\ngrep -n -A 5 -B 5 \"<pattern>\" <file> | head -30\n\n# <20 matches: Full context\ngrep -n -A 10 -B 10 \"<pattern>\" <file>\n\n# ALWAYS use -n for line number tracking\n```\n\n### Memory Management Rules (STRICT ENFORCEMENT)\n1. **Process ONE file at a time** - NEVER parallel\n2. **Extract patterns, not full implementations**\n3. **Use targeted reads with Grep** for specific content\n4. **Maximum 3-5 files** handled simultaneously\n5. **Discard content immediately** after extraction\n6. **Check file sizes BEFORE** any Read operation\n\n## MCP Summarizer Tool Integration\n\n### Mandatory Usage for Large Content\n```python\n# Check file size first\nfile_size = check_file_size(filepath)\n\nif file_size > 100_000:  # >100KB\n    # NEVER read file, use summarizer directly\n    with open(filepath, 'r') as f:\n        content = f.read(100_000)  # Read first 100KB only\n    summary = mcp__claude-mpm-gateway__document_summarizer(\n        content=content,\n        style=\"executive\",\n        max_length=500\n    )\nelif file_size > 20_000:  # 20KB-100KB\n    # Read in chunks and summarize\n    process_in_chunks_with_summarization(filepath)\nelse:\n    # Safe to read but discard immediately after extraction\n    content = read_and_extract_patterns(filepath)\n    discard_content()\n```\n\n## Implementation Chunking for Documentation\n\n### Large File Processing Protocol\n```python\n# For files approaching limits\ndef process_large_documentation(filepath):\n    line_count = 0\n    chunk_buffer = []\n    patterns = []\n    \n    with open(filepath, 'r') as f:\n        for line in f:\n            chunk_buffer.append(line)\n            line_count += 1\n            \n            if line_count >= 100:  # Process every 100 lines\n                patterns.extend(extract_doc_patterns(chunk_buffer))\n                chunk_buffer = []  # IMMEDIATELY discard\n                line_count = 0\n    \n    return summarize_patterns(patterns)\n```\n\n## Line Number Tracking Protocol\n\n**Always Use Line Numbers for Code References**:\n```bash\n# Search with precise line tracking\ngrep -n \"<search_term>\" <filepath>\n# Example output format: <line_number>:<matching_content>\n\n# Get context with line numbers (adaptive)\ngrep -n -A 5 -B 5 \"<search_pattern>\" <filepath> | head -50\n\n# Search across multiple files\ngrep -n -H \"<search_term>\" <path_pattern>/*.py | head -30\n```\n\n## Documentation Workflow with Memory Protection\n\n### Phase 1: File Size Assessment\n```bash\n# MANDATORY first step for all files\nls -lh docs/*.md | awk '{print $9, $5}'  # List files with sizes\nfind . -name \"*.md\" -size +100k  # Find large documentation files\n```\n\n### Phase 2: Strategic Sampling\n```bash\n# Sample without full reading\ngrep -n \"^#\" docs/*.md | head -50  # Get section headers\ngrep -n \"```\" docs/*.md | wc -l  # Count code blocks\n```\n\n### Phase 3: Pattern Extraction with Summarization\n```python\n# Process with thresholds\nfor doc_file in documentation_files[:5]:  # MAX 5 files\n    size = check_file_size(doc_file)\n    if size > 100_000:\n        summary = auto_summarize_without_reading(doc_file)\n    elif size > 20_000:\n        patterns = extract_with_chunking(doc_file)\n        summary = summarize_patterns(patterns)\n    else:\n        patterns = quick_extract(doc_file)\n    \n    # IMMEDIATELY discard all content\n    clear_memory()\n```\n\n## Documentation-Specific Todo Patterns\n\n**Memory-Safe Documentation**:\n- `[Documentation] Document API with chunked processing`\n- `[Documentation] Create guide using pattern extraction`\n- `[Documentation] Generate docs with file size checks`\n\n**Pattern-Based Documentation**:\n- `[Documentation] Extract and document patterns (<5 files)`\n- `[Documentation] Summarize large documentation sets`\n- `[Documentation] Create overview from sampled content`\n\n## Documentation Memory Categories\n\n**Pattern Memories**: Content organization patterns (NOT full content)\n**Extraction Memories**: Key documentation structures only\n**Summary Memories**: Condensed overviews, not full text\n**Reference Memories**: Line numbers and file paths only\n**Threshold Memories**: File size limits and triggers\n\n## Quality Standards with Memory Protection\n\n- **Accuracy**: Line references without full file retention\n- **Efficiency**: Pattern extraction over full reading\n- **Safety**: File size checks before ALL operations\n- **Summarization**: Mandatory for content >20KB\n- **Chunking**: Required for files >100 lines\n- **Discarding**: Immediate after pattern extraction",
         | 
| 77 | 
            +
              "knowledge": {
         | 
| 78 | 
            +
                "domain_expertise": [
         | 
| 79 | 
            +
                  "Memory-efficient documentation with MANDATORY file size pre-checking",
         | 
| 80 | 
            +
                  "Immediate summarization at 20KB/200 line thresholds",
         | 
| 81 | 
            +
                  "Progressive summarization for cumulative content (50KB/3 files)",
         | 
| 82 | 
            +
                  "Critical file handling (>100KB auto-summarized, >1MB skipped)",
         | 
| 83 | 
            +
                  "Implementation chunking in <100 line segments",
         | 
| 84 | 
            +
                  "Adaptive grep context based on match count for memory efficiency",
         | 
| 85 | 
            +
                  "Pattern extraction with immediate content discard",
         | 
| 86 | 
            +
                  "Technical writing standards with memory constraints",
         | 
| 87 | 
            +
                  "Documentation frameworks optimized for large codebases",
         | 
| 88 | 
            +
                  "API documentation through strategic sampling only",
         | 
| 89 | 
            +
                  "MCP document summarizer integration for threshold management",
         | 
| 90 | 
            +
                  "Precise code referencing with line numbers without full retention",
         | 
| 91 | 
            +
                  "Sequential processing to prevent parallel memory accumulation",
         | 
| 92 | 
            +
                  "Forbidden practice enforcement (no parallel loads, no retention)"
         | 
| 93 | 
            +
                ],
         | 
| 94 | 
            +
                "best_practices": [
         | 
| 95 | 
            +
                  "ALWAYS check file size with LS before any Read operation",
         | 
| 96 | 
            +
                  "Extract key patterns from 3-5 representative files maximum",
         | 
| 97 | 
            +
                  "Use grep with line numbers (-n) and adaptive context based on match count",
         | 
| 98 | 
            +
                  "Leverage MCP summarizer tool for ALL files exceeding thresholds",
         | 
| 99 | 
            +
                  "Trigger MANDATORY summarization at 20KB or 200 lines for single files",
         | 
| 100 | 
            +
                  "Apply batch summarization after 3 files or 50KB cumulative content",
         | 
| 101 | 
            +
                  "Process files sequentially - NEVER in parallel",
         | 
| 102 | 
            +
                  "Auto-summarize >100KB files WITHOUT reading them",
         | 
| 103 | 
            +
                  "Skip or defer files >1MB entirely",
         | 
| 104 | 
            +
                  "Reset cumulative counters after batch summarization",
         | 
| 105 | 
            +
                  "Extract patterns and IMMEDIATELY discard full file contents",
         | 
| 106 | 
            +
                  "Use adaptive grep context: >50 matches (-A 2 -B 2 | head -50), <20 matches (-A 10 -B 10)",
         | 
| 107 | 
            +
                  "Process large files in <100 line chunks with immediate discard",
         | 
| 108 | 
            +
                  "Create clear technical documentation with precise line references",
         | 
| 109 | 
            +
                  "Generate comprehensive API documentation from sampled patterns only",
         | 
| 110 | 
            +
                  "NEVER accumulate content across multiple file reads",
         | 
| 111 | 
            +
                  "Always use grep -n for line number tracking in code references",
         | 
| 112 | 
            +
                  "Use targeted grep searches instead of full file reads",
         | 
| 113 | 
            +
                  "Implement progressive summarization for cumulative content management"
         | 
| 114 | 
            +
                ],
         | 
| 115 | 
            +
                "constraints": [
         | 
| 116 | 
            +
                  "❌ NEVER read entire large codebases",
         | 
| 117 | 
            +
                  "❌ NEVER load multiple files in parallel",
         | 
| 118 | 
            +
                  "❌ NEVER retain file contents after extraction",
         | 
| 119 | 
            +
                  "❌ NEVER load files >1MB into memory",
         | 
| 120 | 
            +
                  "❌ NEVER accumulate content across multiple file reads",
         | 
| 121 | 
            +
                  "❌ NEVER skip file size checks before reading",
         | 
| 122 | 
            +
                  "❌ NEVER process >5 files without summarization",
         | 
| 123 | 
            +
                  "Process files sequentially to prevent memory accumulation",
         | 
| 124 | 
            +
                  "Maximum 3-5 files for documentation analysis without summarization",
         | 
| 125 | 
            +
                  "Critical files >100KB MUST be summarized, NEVER fully read",
         | 
| 126 | 
            +
                  "Single file threshold: 20KB or 200 lines triggers MANDATORY summarization",
         | 
| 127 | 
            +
                  "Cumulative threshold: 50KB total or 3 files triggers batch summarization",
         | 
| 128 | 
            +
                  "Adaptive grep context: >50 matches use -A 2 -B 2 | head -50, <20 matches use -A 10 -B 10",
         | 
| 129 | 
            +
                  "Content MUST be discarded IMMEDIATELY after extraction",
         | 
| 130 | 
            +
                  "File size checking is MANDATORY before ALL Read operations",
         | 
| 131 | 
            +
                  "Check MCP summarizer tool availability before use",
         | 
| 132 | 
            +
                  "Always include line numbers in code references",
         | 
| 133 | 
            +
                  "Implementation chunking: Process large files in <100 line segments",
         | 
| 134 | 
            +
                  "Sequential processing is MANDATORY for documentation generation"
         | 
| 135 | 
            +
                ],
         | 
| 136 | 
            +
                "examples": []
         | 
| 137 | 
            +
              },
         | 
| 138 | 
            +
              "interactions": {
         | 
| 139 | 
            +
                "input_format": {
         | 
| 140 | 
            +
                  "required_fields": [
         | 
| 141 | 
            +
                    "task"
         | 
| 142 | 
            +
                  ],
         | 
| 143 | 
            +
                  "optional_fields": [
         | 
| 144 | 
            +
                    "context",
         | 
| 145 | 
            +
                    "constraints"
         | 
| 146 | 
            +
                  ]
         | 
| 147 | 
            +
                },
         | 
| 148 | 
            +
                "output_format": {
         | 
| 149 | 
            +
                  "structure": "markdown",
         | 
| 150 | 
            +
                  "includes": [
         | 
| 151 | 
            +
                    "analysis",
         | 
| 152 | 
            +
                    "recommendations",
         | 
| 153 | 
            +
                    "code"
         | 
| 154 | 
            +
                  ]
         | 
| 155 | 
            +
                },
         | 
| 156 | 
            +
                "handoff_agents": [
         | 
| 157 | 
            +
                  "version_control"
         | 
| 158 | 
            +
                ],
         | 
| 159 | 
            +
                "triggers": []
         | 
| 160 | 
            +
              },
         | 
| 161 | 
            +
              "testing": {
         | 
| 162 | 
            +
                "test_cases": [
         | 
| 163 | 
            +
                  {
         | 
| 164 | 
            +
                    "name": "Basic documentation task",
         | 
| 165 | 
            +
                    "input": "Perform a basic documentation analysis",
         | 
| 166 | 
            +
                    "expected_behavior": "Agent performs documentation tasks correctly",
         | 
| 167 | 
            +
                    "validation_criteria": [
         | 
| 168 | 
            +
                      "completes_task",
         | 
| 169 | 
            +
                      "follows_format"
         | 
| 170 | 
            +
                    ]
         | 
| 171 | 
            +
                  }
         | 
| 172 | 
            +
                ],
         | 
| 173 | 
            +
                "performance_benchmarks": {
         | 
| 174 | 
            +
                  "response_time": 300,
         | 
| 175 | 
            +
                  "token_usage": 8192,
         | 
| 176 | 
            +
                  "success_rate": 0.95
         | 
| 177 | 
            +
                }
         | 
| 178 | 
            +
              },
         | 
| 179 | 
            +
              "dependencies": {
         | 
| 180 | 
            +
                "python": [
         | 
| 181 | 
            +
                  "sphinx>=7.2.0",
         | 
| 182 | 
            +
                  "mkdocs>=1.5.0",
         | 
| 183 | 
            +
                  "pydoc-markdown>=4.8.0",
         | 
| 184 | 
            +
                  "diagrams>=0.23.0",
         | 
| 185 | 
            +
                  "mermaid-py>=0.2.0",
         | 
| 186 | 
            +
                  "docstring-parser>=0.15.0"
         | 
| 187 | 
            +
                ],
         | 
| 188 | 
            +
                "system": [
         | 
| 189 | 
            +
                  "python3",
         | 
| 190 | 
            +
                  "git"
         | 
| 191 | 
            +
                ],
         | 
| 192 | 
            +
                "optional": false
         | 
| 193 | 
            +
              }
         | 
| 194 | 
            +
            }
         | 
| @@ -37,17 +37,6 @@ | |
| 37 37 | 
             
              },
         | 
| 38 38 | 
             
              "capabilities": {
         | 
| 39 39 | 
             
                "model": "opus",
         | 
| 40 | 
            -
                "tools": [
         | 
| 41 | 
            -
                  "Read",
         | 
| 42 | 
            -
                  "Grep",
         | 
| 43 | 
            -
                  "Glob",
         | 
| 44 | 
            -
                  "LS",
         | 
| 45 | 
            -
                  "WebSearch",
         | 
| 46 | 
            -
                  "WebFetch",
         | 
| 47 | 
            -
                  "Bash",
         | 
| 48 | 
            -
                  "TodoWrite",
         | 
| 49 | 
            -
                  "mcp__claude-mpm-gateway__document_summarizer"
         | 
| 50 | 
            -
                ],
         | 
| 51 40 | 
             
                "resource_tier": "high",
         | 
| 52 41 | 
             
                "temperature": 0.2,
         | 
| 53 42 | 
             
                "max_tokens": 16384,
         |