claude-mpm 3.4.10__py3-none-any.whl → 5.4.85__py3-none-any.whl
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/BUILD_NUMBER +1 -0
- claude_mpm/VERSION +1 -0
- claude_mpm/__init__.py +50 -12
- claude_mpm/__main__.py +7 -2
- claude_mpm/agents/BASE_AGENT.md +164 -0
- claude_mpm/agents/BASE_ENGINEER.md +658 -0
- claude_mpm/agents/CLAUDE_MPM_FOUNDERS_OUTPUT_STYLE.md +405 -0
- claude_mpm/agents/CLAUDE_MPM_OUTPUT_STYLE.md +112 -0
- claude_mpm/agents/CLAUDE_MPM_TEACHER_OUTPUT_STYLE.md +186 -0
- claude_mpm/agents/MEMORY.md +72 -0
- claude_mpm/agents/PM_INSTRUCTIONS.md +1429 -0
- claude_mpm/agents/WORKFLOW.md +111 -0
- claude_mpm/agents/__init__.py +92 -80
- claude_mpm/agents/agent-template.yaml +83 -0
- claude_mpm/agents/agent_loader.py +560 -745
- claude_mpm/agents/agent_loader_integration.py +53 -55
- claude_mpm/agents/agents_metadata.py +186 -27
- claude_mpm/agents/async_agent_loader.py +436 -0
- claude_mpm/agents/base_agent.json +8 -4
- claude_mpm/agents/frontmatter_validator.py +754 -0
- claude_mpm/agents/system_agent_config.py +222 -155
- claude_mpm/agents/templates/README.md +465 -0
- claude_mpm/agents/templates/__init__.py +17 -13
- claude_mpm/agents/templates/circuit-breakers.md +1391 -0
- claude_mpm/agents/templates/context-management-examples.md +544 -0
- claude_mpm/agents/templates/git-file-tracking.md +584 -0
- claude_mpm/agents/templates/pm-examples.md +474 -0
- claude_mpm/agents/templates/pm-red-flags.md +310 -0
- claude_mpm/agents/templates/pr-workflow-examples.md +427 -0
- claude_mpm/agents/templates/research-gate-examples.md +669 -0
- claude_mpm/agents/templates/response-format.md +583 -0
- claude_mpm/agents/templates/structured-questions-examples.md +615 -0
- claude_mpm/agents/templates/ticket-completeness-examples.md +139 -0
- claude_mpm/agents/templates/ticketing-examples.md +277 -0
- claude_mpm/agents/templates/validation-templates.md +312 -0
- claude_mpm/cli/__init__.py +94 -128
- claude_mpm/cli/__main__.py +33 -0
- claude_mpm/cli/chrome_devtools_installer.py +175 -0
- claude_mpm/cli/commands/__init__.py +36 -12
- claude_mpm/cli/commands/agent_manager.py +1403 -0
- claude_mpm/cli/commands/agent_source.py +774 -0
- claude_mpm/cli/commands/agent_state_manager.py +335 -0
- claude_mpm/cli/commands/agents.py +2501 -168
- claude_mpm/cli/commands/agents_cleanup.py +210 -0
- claude_mpm/cli/commands/agents_discover.py +338 -0
- claude_mpm/cli/commands/agents_reconcile.py +197 -0
- claude_mpm/cli/commands/aggregate.py +540 -0
- claude_mpm/cli/commands/analyze.py +553 -0
- claude_mpm/cli/commands/analyze_code.py +528 -0
- claude_mpm/cli/commands/auto_configure.py +1053 -0
- claude_mpm/cli/commands/cleanup.py +588 -0
- claude_mpm/cli/commands/cleanup_orphaned_agents.py +150 -0
- claude_mpm/cli/commands/config.py +586 -0
- claude_mpm/cli/commands/configure.py +3253 -0
- claude_mpm/cli/commands/configure_agent_display.py +282 -0
- claude_mpm/cli/commands/configure_behavior_manager.py +204 -0
- claude_mpm/cli/commands/configure_hook_manager.py +225 -0
- claude_mpm/cli/commands/configure_models.py +18 -0
- claude_mpm/cli/commands/configure_navigation.py +184 -0
- claude_mpm/cli/commands/configure_paths.py +104 -0
- claude_mpm/cli/commands/configure_persistence.py +254 -0
- claude_mpm/cli/commands/configure_startup_manager.py +646 -0
- claude_mpm/cli/commands/configure_template_editor.py +497 -0
- claude_mpm/cli/commands/configure_validators.py +73 -0
- claude_mpm/cli/commands/dashboard.py +286 -0
- claude_mpm/cli/commands/debug.py +1386 -0
- claude_mpm/cli/commands/doctor.py +243 -0
- claude_mpm/cli/commands/hook_errors.py +277 -0
- claude_mpm/cli/commands/info.py +195 -74
- claude_mpm/cli/commands/local_deploy.py +534 -0
- claude_mpm/cli/commands/mcp.py +205 -0
- claude_mpm/cli/commands/mcp_command_router.py +161 -0
- claude_mpm/cli/commands/mcp_config.py +154 -0
- claude_mpm/cli/commands/mcp_config_commands.py +20 -0
- claude_mpm/cli/commands/mcp_external_commands.py +249 -0
- claude_mpm/cli/commands/mcp_install_commands.py +346 -0
- claude_mpm/cli/commands/mcp_pipx_config.py +208 -0
- claude_mpm/cli/commands/mcp_server_commands.py +155 -0
- claude_mpm/cli/commands/mcp_setup_external.py +868 -0
- claude_mpm/cli/commands/mcp_tool_commands.py +34 -0
- claude_mpm/cli/commands/memory.py +585 -846
- claude_mpm/cli/commands/monitor.py +228 -310
- claude_mpm/cli/commands/mpm_init/__init__.py +73 -0
- claude_mpm/cli/commands/mpm_init/core.py +759 -0
- claude_mpm/cli/commands/mpm_init/display.py +341 -0
- claude_mpm/cli/commands/mpm_init/git_activity.py +427 -0
- claude_mpm/cli/commands/mpm_init/knowledge_extractor.py +481 -0
- claude_mpm/cli/commands/mpm_init/modes.py +397 -0
- claude_mpm/cli/commands/mpm_init/prompts.py +722 -0
- claude_mpm/cli/commands/mpm_init_cli.py +396 -0
- claude_mpm/cli/commands/mpm_init_handler.py +195 -0
- claude_mpm/cli/commands/postmortem.py +401 -0
- claude_mpm/cli/commands/profile.py +276 -0
- claude_mpm/cli/commands/run.py +910 -488
- claude_mpm/cli/commands/search.py +458 -0
- claude_mpm/cli/commands/skill_source.py +694 -0
- claude_mpm/cli/commands/skills.py +1398 -0
- claude_mpm/cli/commands/summarize.py +413 -0
- claude_mpm/cli/commands/tickets.py +536 -53
- claude_mpm/cli/commands/uninstall.py +176 -0
- claude_mpm/cli/commands/upgrade.py +152 -0
- claude_mpm/cli/commands/verify.py +119 -0
- claude_mpm/cli/executor.py +298 -0
- claude_mpm/cli/helpers.py +105 -0
- claude_mpm/cli/interactive/__init__.py +31 -0
- claude_mpm/cli/interactive/agent_wizard.py +1927 -0
- claude_mpm/cli/interactive/questionary_styles.py +65 -0
- claude_mpm/cli/interactive/skill_selector.py +481 -0
- claude_mpm/cli/interactive/skills_wizard.py +491 -0
- claude_mpm/cli/parser.py +87 -563
- claude_mpm/cli/parsers/__init__.py +35 -0
- claude_mpm/cli/parsers/agent_manager_parser.py +393 -0
- claude_mpm/cli/parsers/agent_source_parser.py +171 -0
- claude_mpm/cli/parsers/agents_parser.py +575 -0
- claude_mpm/cli/parsers/analyze_code_parser.py +170 -0
- claude_mpm/cli/parsers/analyze_parser.py +135 -0
- claude_mpm/cli/parsers/auto_configure_parser.py +120 -0
- claude_mpm/cli/parsers/base_parser.py +649 -0
- claude_mpm/cli/parsers/config_parser.py +208 -0
- claude_mpm/cli/parsers/configure_parser.py +138 -0
- claude_mpm/cli/parsers/dashboard_parser.py +113 -0
- claude_mpm/cli/parsers/debug_parser.py +319 -0
- claude_mpm/cli/parsers/local_deploy_parser.py +227 -0
- claude_mpm/cli/parsers/mcp_parser.py +195 -0
- claude_mpm/cli/parsers/memory_parser.py +138 -0
- claude_mpm/cli/parsers/monitor_parser.py +142 -0
- claude_mpm/cli/parsers/mpm_init_parser.py +311 -0
- claude_mpm/cli/parsers/profile_parser.py +147 -0
- claude_mpm/cli/parsers/run_parser.py +157 -0
- claude_mpm/cli/parsers/search_parser.py +245 -0
- claude_mpm/cli/parsers/skill_source_parser.py +169 -0
- claude_mpm/cli/parsers/skills_parser.py +277 -0
- claude_mpm/cli/parsers/source_parser.py +138 -0
- claude_mpm/cli/parsers/tickets_parser.py +203 -0
- claude_mpm/cli/shared/__init__.py +40 -0
- claude_mpm/cli/shared/argument_patterns.py +205 -0
- claude_mpm/cli/shared/base_command.py +242 -0
- claude_mpm/cli/shared/error_handling.py +242 -0
- claude_mpm/cli/shared/output_formatters.py +241 -0
- claude_mpm/cli/startup.py +1578 -0
- claude_mpm/cli/startup_display.py +480 -0
- claude_mpm/cli/startup_logging.py +839 -0
- claude_mpm/cli/utils.py +136 -47
- claude_mpm/cli_module/__init__.py +6 -6
- claude_mpm/cli_module/args.py +188 -140
- claude_mpm/cli_module/commands.py +79 -70
- claude_mpm/cli_module/migration_example.py +42 -64
- claude_mpm/commands/__init__.py +14 -0
- claude_mpm/commands/mpm-config.md +28 -0
- claude_mpm/commands/mpm-doctor.md +20 -0
- claude_mpm/commands/mpm-help.md +20 -0
- claude_mpm/commands/mpm-init.md +120 -0
- claude_mpm/commands/mpm-monitor.md +31 -0
- claude_mpm/commands/mpm-organize.md +120 -0
- claude_mpm/commands/mpm-postmortem.md +21 -0
- claude_mpm/commands/mpm-session-resume.md +30 -0
- claude_mpm/commands/mpm-status.md +20 -0
- claude_mpm/commands/mpm-ticket-view.md +109 -0
- claude_mpm/commands/mpm-version.md +20 -0
- claude_mpm/commands/mpm.md +31 -0
- claude_mpm/config/__init__.py +42 -2
- claude_mpm/config/agent_config.py +402 -0
- claude_mpm/config/agent_presets.py +488 -0
- claude_mpm/config/agent_sources.py +352 -0
- claude_mpm/config/experimental_features.py +217 -0
- claude_mpm/config/model_config.py +428 -0
- claude_mpm/config/paths.py +258 -0
- claude_mpm/config/skill_presets.py +392 -0
- claude_mpm/config/skill_sources.py +590 -0
- claude_mpm/config/socketio_config.py +125 -83
- claude_mpm/constants.py +133 -22
- claude_mpm/core/__init__.py +62 -36
- claude_mpm/core/agent_name_normalizer.py +71 -73
- claude_mpm/core/agent_registry.py +385 -492
- claude_mpm/core/agent_session_manager.py +81 -70
- claude_mpm/core/api_validator.py +330 -0
- claude_mpm/core/base_service.py +159 -122
- claude_mpm/core/cache.py +560 -0
- claude_mpm/core/claude_runner.py +696 -916
- claude_mpm/core/config.py +613 -122
- claude_mpm/core/config_aliases.py +74 -73
- claude_mpm/core/config_constants.py +314 -0
- claude_mpm/core/constants.py +361 -0
- claude_mpm/core/container.py +646 -104
- claude_mpm/core/enums.py +452 -0
- claude_mpm/core/error_handler.py +623 -0
- claude_mpm/core/exceptions.py +536 -0
- claude_mpm/core/factories.py +105 -109
- claude_mpm/core/file_utils.py +764 -0
- claude_mpm/core/framework/__init__.py +25 -0
- claude_mpm/core/framework/formatters/__init__.py +11 -0
- claude_mpm/core/framework/formatters/capability_generator.py +367 -0
- claude_mpm/core/framework/formatters/content_formatter.py +278 -0
- claude_mpm/core/framework/formatters/context_generator.py +185 -0
- claude_mpm/core/framework/loaders/__init__.py +13 -0
- claude_mpm/core/framework/loaders/agent_loader.py +213 -0
- claude_mpm/core/framework/loaders/file_loader.py +176 -0
- claude_mpm/core/framework/loaders/instruction_loader.py +222 -0
- claude_mpm/core/framework/loaders/packaged_loader.py +232 -0
- claude_mpm/core/framework/processors/__init__.py +11 -0
- claude_mpm/core/framework/processors/memory_processor.py +230 -0
- claude_mpm/core/framework/processors/metadata_processor.py +146 -0
- claude_mpm/core/framework/processors/template_processor.py +244 -0
- claude_mpm/core/framework_loader.py +485 -414
- claude_mpm/core/hook_error_memory.py +381 -0
- claude_mpm/core/hook_manager.py +246 -86
- claude_mpm/core/hook_performance_config.py +147 -0
- claude_mpm/core/injectable_service.py +72 -63
- claude_mpm/core/instruction_reinforcement_hook.py +267 -0
- claude_mpm/core/interactive_session.py +670 -0
- claude_mpm/core/interfaces.py +570 -164
- claude_mpm/core/lazy.py +467 -0
- claude_mpm/core/log_manager.py +707 -0
- claude_mpm/core/logger.py +295 -134
- claude_mpm/core/logging_config.py +474 -0
- claude_mpm/core/logging_utils.py +520 -0
- claude_mpm/core/minimal_framework_loader.py +24 -22
- claude_mpm/core/mixins.py +30 -29
- claude_mpm/core/oneshot_session.py +594 -0
- claude_mpm/core/optimized_agent_loader.py +479 -0
- claude_mpm/core/optimized_startup.py +554 -0
- claude_mpm/core/output_style_manager.py +491 -0
- claude_mpm/core/pm_hook_interceptor.py +197 -82
- claude_mpm/core/protocols/__init__.py +23 -0
- claude_mpm/core/protocols/runner_protocol.py +103 -0
- claude_mpm/core/protocols/session_protocol.py +131 -0
- claude_mpm/core/service_registry.py +153 -116
- claude_mpm/core/session_manager.py +179 -64
- claude_mpm/core/shared/__init__.py +17 -0
- claude_mpm/core/shared/config_loader.py +326 -0
- claude_mpm/core/shared/path_resolver.py +281 -0
- claude_mpm/core/shared/singleton_manager.py +221 -0
- claude_mpm/core/socketio_pool.py +400 -137
- claude_mpm/core/system_context.py +38 -0
- claude_mpm/core/tool_access_control.py +64 -57
- claude_mpm/core/types.py +307 -0
- claude_mpm/core/typing_utils.py +553 -0
- claude_mpm/core/unified_agent_registry.py +969 -0
- claude_mpm/core/unified_config.py +612 -0
- claude_mpm/core/unified_paths.py +958 -0
- claude_mpm/dashboard/__init__.py +12 -0
- claude_mpm/dashboard/api/simple_directory.py +261 -0
- claude_mpm/dashboard/static/svelte-build/_app/env.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/assets/0.DWzvg0-y.css +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/assets/2.ThTw9_ym.css +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/4TdZjIqw.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/5shd3_w0.js +24 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/B0uc0UOD.js +36 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/B7RN905-.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/B7xVLGWV.js +2 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/BIF9m_hv.js +61 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/BKjSRqUr.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/BPYeabCQ.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/BQaXIfA_.js +331 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/BSNlmTZj.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Be7GpZd6.js +7 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Bh0LDWpI.js +145 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/BofRWZRR.js +10 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/BovzEFCE.js +30 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/C30mlcqg.js +165 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/C4B-KCzX.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/C4JcI4KD.js +122 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/CBBdVcY8.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/CDuw-vjf.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/C_Usid8X.js +15 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Cfqx1Qun.js +10 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/CiIAseT4.js +128 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/CmKTTxBW.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/CnA0NrzZ.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Cs_tUR18.js +24 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Cu_Erd72.js +261 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/CyWMqx4W.js +43 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/CzZX-COe.js +220 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/CzeYkLYB.js +65 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/D3k0OPJN.js +4 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/D9lljYKQ.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/DGkLK5U1.js +267 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/DI7hHRFL.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/DLVjFsZ3.js +139 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/DUrLdbGD.js +89 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/DVp1hx9R.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/DY1XQ8fi.js +2 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/DZX00Y4g.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Da0KfYnO.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/DaimHw_p.js +68 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Dfy6j1xT.js +323 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Dhb8PKl3.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Dle-35c7.js +64 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/DmxopI1J.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/DwBR2MJi.js +60 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/GYwsonyD.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Gi6I4Gst.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/NqQ1dWOy.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/RJiighC3.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/Vzk33B_K.js +2 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/ZGh7QtNv.js +7 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/bT1r9zLR.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/bTOqqlTd.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/eNVUfhuA.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/iEWssX7S.js +162 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/sQeU3Y1z.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/chunks/uuIeMWc-.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/entry/app.D6-I5TpK.js +2 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/entry/start.NWzMBYRp.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/nodes/0.m1gL8KXf.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/nodes/1.CgNOuw-d.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/immutable/nodes/2.C0GcWctS.js +1 -0
- claude_mpm/dashboard/static/svelte-build/_app/version.json +1 -0
- claude_mpm/dashboard/static/svelte-build/favicon.svg +7 -0
- claude_mpm/dashboard/static/svelte-build/index.html +36 -0
- claude_mpm/dashboard-svelte/node_modules/katex/src/fonts/generate_fonts.py +58 -0
- claude_mpm/dashboard-svelte/node_modules/katex/src/metrics/extract_tfms.py +114 -0
- claude_mpm/dashboard-svelte/node_modules/katex/src/metrics/extract_ttfs.py +122 -0
- claude_mpm/dashboard-svelte/node_modules/katex/src/metrics/format_json.py +28 -0
- claude_mpm/dashboard-svelte/node_modules/katex/src/metrics/parse_tfm.py +211 -0
- claude_mpm/experimental/__init__.py +10 -0
- claude_mpm/experimental/cli_enhancements.py +104 -89
- claude_mpm/generators/__init__.py +1 -1
- claude_mpm/generators/agent_profile_generator.py +76 -66
- claude_mpm/hooks/__init__.py +37 -1
- claude_mpm/hooks/base_hook.py +37 -32
- claude_mpm/hooks/claude_hooks/__init__.py +1 -1
- claude_mpm/hooks/claude_hooks/connection_pool.py +250 -0
- claude_mpm/hooks/claude_hooks/correlation_manager.py +60 -0
- claude_mpm/hooks/claude_hooks/event_handlers.py +888 -0
- claude_mpm/hooks/claude_hooks/hook_handler.py +652 -875
- claude_mpm/hooks/claude_hooks/hook_wrapper.sh +10 -7
- claude_mpm/hooks/claude_hooks/installer.py +806 -0
- claude_mpm/hooks/claude_hooks/memory_integration.py +249 -0
- claude_mpm/hooks/claude_hooks/response_tracking.py +412 -0
- claude_mpm/hooks/claude_hooks/services/__init__.py +15 -0
- claude_mpm/hooks/claude_hooks/services/connection_manager.py +229 -0
- claude_mpm/hooks/claude_hooks/services/connection_manager_http.py +254 -0
- claude_mpm/hooks/claude_hooks/services/duplicate_detector.py +106 -0
- claude_mpm/hooks/claude_hooks/services/state_manager.py +284 -0
- claude_mpm/hooks/claude_hooks/services/subagent_processor.py +374 -0
- claude_mpm/hooks/claude_hooks/tool_analysis.py +224 -0
- claude_mpm/hooks/failure_learning/__init__.py +54 -0
- claude_mpm/hooks/failure_learning/failure_detection_hook.py +230 -0
- claude_mpm/hooks/failure_learning/fix_detection_hook.py +212 -0
- claude_mpm/hooks/failure_learning/learning_extraction_hook.py +281 -0
- claude_mpm/hooks/instruction_reinforcement.py +301 -0
- claude_mpm/hooks/kuzu_enrichment_hook.py +263 -0
- claude_mpm/hooks/kuzu_memory_hook.py +386 -0
- claude_mpm/hooks/kuzu_response_hook.py +179 -0
- claude_mpm/hooks/memory_integration_hook.py +201 -107
- claude_mpm/hooks/session_resume_hook.py +121 -0
- claude_mpm/hooks/templates/pre_tool_use_simple.py +78 -0
- claude_mpm/hooks/templates/pre_tool_use_template.py +323 -0
- claude_mpm/hooks/tool_call_interceptor.py +92 -76
- claude_mpm/hooks/validation_hooks.py +62 -54
- claude_mpm/init.py +518 -83
- claude_mpm/models/__init__.py +9 -9
- claude_mpm/models/agent_definition.py +40 -23
- claude_mpm/models/agent_session.py +538 -0
- claude_mpm/models/git_repository.py +198 -0
- claude_mpm/models/resume_log.py +340 -0
- claude_mpm/schemas/__init__.py +12 -0
- claude_mpm/scripts/__init__.py +15 -0
- claude_mpm/scripts/claude-hook-handler.sh +227 -0
- claude_mpm/scripts/launch_monitor.py +165 -0
- claude_mpm/scripts/mpm_doctor.py +322 -0
- claude_mpm/scripts/socketio_daemon.py +189 -200
- claude_mpm/scripts/start_activity_logging.py +91 -0
- claude_mpm/services/__init__.py +208 -39
- claude_mpm/services/agent_capabilities_service.py +266 -0
- claude_mpm/services/agents/__init__.py +89 -0
- claude_mpm/services/agents/agent_builder.py +514 -0
- claude_mpm/services/agents/agent_preset_service.py +238 -0
- claude_mpm/services/agents/agent_recommendation_service.py +278 -0
- claude_mpm/services/agents/agent_review_service.py +280 -0
- claude_mpm/services/agents/agent_selection_service.py +484 -0
- claude_mpm/services/agents/auto_config_manager.py +796 -0
- claude_mpm/services/agents/auto_deploy_index_parser.py +569 -0
- claude_mpm/services/agents/cache_git_manager.py +621 -0
- claude_mpm/services/agents/deployment/__init__.py +21 -0
- claude_mpm/services/agents/deployment/agent_config_provider.py +410 -0
- claude_mpm/services/agents/deployment/agent_configuration_manager.py +358 -0
- claude_mpm/services/agents/deployment/agent_definition_factory.py +80 -0
- claude_mpm/services/agents/deployment/agent_deployment.py +1037 -0
- claude_mpm/services/agents/deployment/agent_discovery_service.py +546 -0
- claude_mpm/services/agents/deployment/agent_environment_manager.py +288 -0
- claude_mpm/services/agents/deployment/agent_filesystem_manager.py +383 -0
- claude_mpm/services/agents/deployment/agent_format_converter.py +505 -0
- claude_mpm/services/agents/deployment/agent_frontmatter_validator.py +160 -0
- claude_mpm/services/agents/deployment/agent_lifecycle_manager.py +957 -0
- claude_mpm/services/agents/deployment/agent_metrics_collector.py +273 -0
- claude_mpm/services/agents/deployment/agent_operation_service.py +573 -0
- claude_mpm/services/agents/deployment/agent_record_service.py +418 -0
- claude_mpm/services/agents/deployment/agent_restore_handler.py +84 -0
- claude_mpm/services/agents/deployment/agent_state_service.py +381 -0
- claude_mpm/services/agents/deployment/agent_template_builder.py +1377 -0
- claude_mpm/services/agents/deployment/agent_validator.py +376 -0
- claude_mpm/services/agents/deployment/agent_version_manager.py +322 -0
- claude_mpm/services/{agent_versioning.py → agents/deployment/agent_versioning.py} +10 -13
- claude_mpm/services/agents/deployment/agents_directory_resolver.py +149 -0
- claude_mpm/services/agents/deployment/async_agent_deployment.py +768 -0
- claude_mpm/services/agents/deployment/base_agent_locator.py +132 -0
- claude_mpm/services/agents/deployment/config/__init__.py +13 -0
- claude_mpm/services/agents/deployment/config/deployment_config.py +181 -0
- claude_mpm/services/agents/deployment/config/deployment_config_manager.py +200 -0
- claude_mpm/services/agents/deployment/deployment_config_loader.py +178 -0
- claude_mpm/services/agents/deployment/deployment_reconciler.py +577 -0
- claude_mpm/services/agents/deployment/deployment_results_manager.py +185 -0
- claude_mpm/services/agents/deployment/deployment_type_detector.py +120 -0
- claude_mpm/services/agents/deployment/deployment_wrapper.py +129 -0
- claude_mpm/services/agents/deployment/facade/__init__.py +18 -0
- claude_mpm/services/agents/deployment/facade/async_deployment_executor.py +159 -0
- claude_mpm/services/agents/deployment/facade/deployment_executor.py +70 -0
- claude_mpm/services/agents/deployment/facade/deployment_facade.py +269 -0
- claude_mpm/services/agents/deployment/facade/sync_deployment_executor.py +178 -0
- claude_mpm/services/agents/deployment/interface_adapter.py +226 -0
- claude_mpm/services/agents/deployment/lifecycle_health_checker.py +85 -0
- claude_mpm/services/agents/deployment/lifecycle_performance_tracker.py +100 -0
- claude_mpm/services/agents/deployment/local_template_deployment.py +362 -0
- claude_mpm/services/agents/deployment/multi_source_deployment_service.py +1478 -0
- claude_mpm/services/agents/deployment/pipeline/__init__.py +32 -0
- claude_mpm/services/agents/deployment/pipeline/pipeline_builder.py +158 -0
- claude_mpm/services/agents/deployment/pipeline/pipeline_context.py +162 -0
- claude_mpm/services/agents/deployment/pipeline/pipeline_executor.py +169 -0
- claude_mpm/services/agents/deployment/pipeline/steps/__init__.py +19 -0
- claude_mpm/services/agents/deployment/pipeline/steps/agent_processing_step.py +240 -0
- claude_mpm/services/agents/deployment/pipeline/steps/base_step.py +110 -0
- claude_mpm/services/agents/deployment/pipeline/steps/configuration_step.py +80 -0
- claude_mpm/services/agents/deployment/pipeline/steps/target_directory_step.py +92 -0
- claude_mpm/services/agents/deployment/pipeline/steps/validation_step.py +101 -0
- claude_mpm/services/agents/deployment/processors/__init__.py +15 -0
- claude_mpm/services/agents/deployment/processors/agent_deployment_context.py +102 -0
- claude_mpm/services/agents/deployment/processors/agent_deployment_result.py +235 -0
- claude_mpm/services/agents/deployment/processors/agent_processor.py +269 -0
- claude_mpm/services/agents/deployment/refactored_agent_deployment_service.py +311 -0
- claude_mpm/services/agents/deployment/remote_agent_discovery_service.py +862 -0
- claude_mpm/services/agents/deployment/results/__init__.py +13 -0
- claude_mpm/services/agents/deployment/results/deployment_metrics.py +200 -0
- claude_mpm/services/agents/deployment/results/deployment_result_builder.py +249 -0
- claude_mpm/services/agents/deployment/single_agent_deployer.py +315 -0
- claude_mpm/services/agents/deployment/startup_reconciliation.py +138 -0
- claude_mpm/services/agents/deployment/strategies/__init__.py +25 -0
- claude_mpm/services/agents/deployment/strategies/base_strategy.py +113 -0
- claude_mpm/services/agents/deployment/strategies/project_strategy.py +148 -0
- claude_mpm/services/agents/deployment/strategies/strategy_selector.py +117 -0
- claude_mpm/services/agents/deployment/strategies/system_strategy.py +131 -0
- claude_mpm/services/agents/deployment/strategies/user_strategy.py +130 -0
- claude_mpm/services/agents/deployment/system_instructions_deployer.py +228 -0
- claude_mpm/services/agents/deployment/validation/__init__.py +21 -0
- claude_mpm/services/agents/deployment/validation/agent_validator.py +323 -0
- claude_mpm/services/agents/deployment/validation/deployment_validator.py +238 -0
- claude_mpm/services/agents/deployment/validation/template_validator.py +319 -0
- claude_mpm/services/agents/deployment/validation/validation_result.py +214 -0
- claude_mpm/services/agents/git_source_manager.py +682 -0
- claude_mpm/services/agents/loading/__init__.py +11 -0
- claude_mpm/services/{agent_profile_loader.py → agents/loading/agent_profile_loader.py} +306 -228
- claude_mpm/services/{base_agent_manager.py → agents/loading/base_agent_manager.py} +106 -91
- claude_mpm/services/agents/loading/framework_agent_loader.py +433 -0
- claude_mpm/services/agents/local_template_manager.py +784 -0
- claude_mpm/services/agents/management/__init__.py +9 -0
- claude_mpm/services/{agent_capabilities_generator.py → agents/management/agent_capabilities_generator.py} +92 -69
- claude_mpm/services/{agent_management_service.py → agents/management/agent_management_service.py} +219 -168
- claude_mpm/services/agents/memory/__init__.py +22 -0
- claude_mpm/services/agents/memory/agent_memory_manager.py +784 -0
- claude_mpm/services/{agent_persistence_service.py → agents/memory/agent_persistence_service.py} +20 -18
- claude_mpm/services/agents/memory/content_manager.py +470 -0
- claude_mpm/services/agents/memory/memory_categorization_service.py +167 -0
- claude_mpm/services/agents/memory/memory_file_service.py +129 -0
- claude_mpm/services/agents/memory/memory_format_service.py +201 -0
- claude_mpm/services/agents/memory/memory_limits_service.py +101 -0
- claude_mpm/services/agents/memory/template_generator.py +83 -0
- claude_mpm/services/agents/observers.py +547 -0
- claude_mpm/services/agents/recommender.py +617 -0
- claude_mpm/services/agents/registry/__init__.py +30 -0
- claude_mpm/services/agents/registry/deployed_agent_discovery.py +273 -0
- claude_mpm/services/{agent_modification_tracker.py → agents/registry/modification_tracker.py} +370 -295
- claude_mpm/services/agents/single_tier_deployment_service.py +696 -0
- claude_mpm/services/agents/sources/__init__.py +13 -0
- claude_mpm/services/agents/sources/agent_sync_state.py +516 -0
- claude_mpm/services/agents/sources/git_source_sync_service.py +1205 -0
- claude_mpm/services/agents/startup_sync.py +262 -0
- claude_mpm/services/agents/toolchain_detector.py +478 -0
- claude_mpm/services/analysis/__init__.py +35 -0
- claude_mpm/services/analysis/clone_detector.py +1030 -0
- claude_mpm/services/analysis/postmortem_reporter.py +474 -0
- claude_mpm/services/analysis/postmortem_service.py +765 -0
- claude_mpm/services/async_session_logger.py +665 -0
- claude_mpm/services/claude_session_logger.py +321 -0
- claude_mpm/services/cli/__init__.py +18 -0
- claude_mpm/services/cli/agent_cleanup_service.py +408 -0
- claude_mpm/services/cli/agent_dependency_service.py +395 -0
- claude_mpm/services/cli/agent_listing_service.py +463 -0
- claude_mpm/services/cli/agent_output_formatter.py +605 -0
- claude_mpm/services/cli/agent_validation_service.py +590 -0
- claude_mpm/services/cli/memory_crud_service.py +622 -0
- claude_mpm/services/cli/memory_output_formatter.py +604 -0
- claude_mpm/services/cli/resume_service.py +617 -0
- claude_mpm/services/cli/session_manager.py +604 -0
- claude_mpm/services/cli/session_pause_manager.py +504 -0
- claude_mpm/services/cli/session_resume_helper.py +372 -0
- claude_mpm/services/cli/startup_checker.py +362 -0
- claude_mpm/services/cli/unified_dashboard_manager.py +439 -0
- claude_mpm/services/command_deployment_service.py +446 -0
- claude_mpm/services/command_handler_service.py +221 -0
- claude_mpm/services/communication/__init__.py +22 -0
- claude_mpm/services/core/__init__.py +108 -0
- claude_mpm/services/core/base.py +269 -0
- claude_mpm/services/core/cache_manager.py +309 -0
- claude_mpm/services/core/interfaces/__init__.py +273 -0
- claude_mpm/services/core/interfaces/agent.py +514 -0
- claude_mpm/services/core/interfaces/communication.py +316 -0
- claude_mpm/services/core/interfaces/health.py +169 -0
- claude_mpm/services/core/interfaces/infrastructure.py +357 -0
- claude_mpm/services/core/interfaces/model.py +281 -0
- claude_mpm/services/core/interfaces/process.py +372 -0
- claude_mpm/services/core/interfaces/project.py +121 -0
- claude_mpm/services/core/interfaces/restart.py +307 -0
- claude_mpm/services/core/interfaces/service.py +405 -0
- claude_mpm/services/core/interfaces/stability.py +260 -0
- claude_mpm/services/core/interfaces.py +81 -0
- claude_mpm/services/core/memory_manager.py +682 -0
- claude_mpm/services/core/models/__init__.py +70 -0
- claude_mpm/services/core/models/agent_config.py +384 -0
- claude_mpm/services/core/models/health.py +162 -0
- claude_mpm/services/core/models/process.py +239 -0
- claude_mpm/services/core/models/restart.py +302 -0
- claude_mpm/services/core/models/stability.py +264 -0
- claude_mpm/services/core/models/toolchain.py +306 -0
- claude_mpm/services/core/path_resolver.py +517 -0
- claude_mpm/services/core/service_container.py +520 -0
- claude_mpm/services/core/service_interfaces.py +436 -0
- claude_mpm/services/diagnostics/__init__.py +18 -0
- claude_mpm/services/diagnostics/checks/__init__.py +38 -0
- claude_mpm/services/diagnostics/checks/agent_check.py +370 -0
- claude_mpm/services/diagnostics/checks/agent_sources_check.py +577 -0
- claude_mpm/services/diagnostics/checks/base_check.py +60 -0
- claude_mpm/services/diagnostics/checks/claude_code_check.py +270 -0
- claude_mpm/services/diagnostics/checks/common_issues_check.py +363 -0
- claude_mpm/services/diagnostics/checks/configuration_check.py +306 -0
- claude_mpm/services/diagnostics/checks/filesystem_check.py +233 -0
- claude_mpm/services/diagnostics/checks/installation_check.py +520 -0
- claude_mpm/services/diagnostics/checks/instructions_check.py +415 -0
- claude_mpm/services/diagnostics/checks/mcp_check.py +330 -0
- claude_mpm/services/diagnostics/checks/mcp_services_check.py +1058 -0
- claude_mpm/services/diagnostics/checks/monitor_check.py +281 -0
- claude_mpm/services/diagnostics/checks/skill_sources_check.py +587 -0
- claude_mpm/services/diagnostics/checks/startup_log_check.py +319 -0
- claude_mpm/services/diagnostics/diagnostic_runner.py +286 -0
- claude_mpm/services/diagnostics/doctor_reporter.py +578 -0
- claude_mpm/services/diagnostics/models.py +138 -0
- claude_mpm/services/event_aggregator.py +582 -0
- claude_mpm/services/event_bus/__init__.py +18 -0
- claude_mpm/services/event_bus/config.py +186 -0
- claude_mpm/services/event_bus/direct_relay.py +312 -0
- claude_mpm/services/event_bus/event_bus.py +396 -0
- claude_mpm/services/event_bus/relay.py +326 -0
- claude_mpm/services/events/__init__.py +44 -0
- claude_mpm/services/events/consumers/__init__.py +18 -0
- claude_mpm/services/events/consumers/dead_letter.py +306 -0
- claude_mpm/services/events/consumers/logging.py +184 -0
- claude_mpm/services/events/consumers/metrics.py +241 -0
- claude_mpm/services/events/consumers/socketio.py +377 -0
- claude_mpm/services/events/core.py +480 -0
- claude_mpm/services/events/interfaces.py +214 -0
- claude_mpm/services/events/producers/__init__.py +14 -0
- claude_mpm/services/events/producers/hook.py +269 -0
- claude_mpm/services/events/producers/system.py +329 -0
- claude_mpm/services/exceptions.py +433 -353
- claude_mpm/services/framework_claude_md_generator/__init__.py +81 -80
- claude_mpm/services/framework_claude_md_generator/content_assembler.py +74 -67
- claude_mpm/services/framework_claude_md_generator/content_validator.py +66 -62
- claude_mpm/services/framework_claude_md_generator/deployment_manager.py +82 -60
- claude_mpm/services/framework_claude_md_generator/section_generators/__init__.py +36 -37
- claude_mpm/services/framework_claude_md_generator/section_generators/agents.py +41 -40
- claude_mpm/services/framework_claude_md_generator/section_generators/claude_pm_init.py +15 -15
- claude_mpm/services/framework_claude_md_generator/section_generators/core_responsibilities.py +5 -4
- claude_mpm/services/framework_claude_md_generator/section_generators/delegation_constraints.py +4 -3
- claude_mpm/services/framework_claude_md_generator/section_generators/environment_config.py +4 -3
- claude_mpm/services/framework_claude_md_generator/section_generators/footer.py +6 -5
- claude_mpm/services/framework_claude_md_generator/section_generators/header.py +8 -7
- claude_mpm/services/framework_claude_md_generator/section_generators/orchestration_principles.py +5 -4
- claude_mpm/services/framework_claude_md_generator/section_generators/role_designation.py +6 -5
- claude_mpm/services/framework_claude_md_generator/section_generators/subprocess_validation.py +9 -8
- claude_mpm/services/framework_claude_md_generator/section_generators/todo_task_tools.py +26 -30
- claude_mpm/services/framework_claude_md_generator/section_generators/troubleshooting.py +6 -5
- claude_mpm/services/framework_claude_md_generator/section_manager.py +28 -27
- claude_mpm/services/framework_claude_md_generator/version_manager.py +31 -30
- claude_mpm/services/git/__init__.py +21 -0
- claude_mpm/services/git/git_operations_service.py +579 -0
- claude_mpm/services/github/__init__.py +21 -0
- claude_mpm/services/github/github_cli_service.py +397 -0
- claude_mpm/services/hook_installer_service.py +506 -0
- claude_mpm/services/hook_service.py +159 -111
- claude_mpm/services/infrastructure/__init__.py +52 -0
- claude_mpm/services/infrastructure/context_preservation.py +569 -0
- claude_mpm/services/infrastructure/daemon_manager.py +279 -0
- claude_mpm/services/infrastructure/logging.py +209 -0
- claude_mpm/services/infrastructure/monitoring/__init__.py +39 -0
- claude_mpm/services/infrastructure/monitoring/aggregator.py +432 -0
- claude_mpm/services/infrastructure/monitoring/base.py +122 -0
- claude_mpm/services/infrastructure/monitoring/legacy.py +203 -0
- claude_mpm/services/infrastructure/monitoring/network.py +219 -0
- claude_mpm/services/infrastructure/monitoring/process.py +343 -0
- claude_mpm/services/infrastructure/monitoring/resources.py +244 -0
- claude_mpm/services/infrastructure/monitoring/service.py +368 -0
- claude_mpm/services/infrastructure/monitoring.py +71 -0
- claude_mpm/services/infrastructure/resume_log_generator.py +439 -0
- claude_mpm/services/instructions/__init__.py +9 -0
- claude_mpm/services/instructions/instruction_cache_service.py +374 -0
- claude_mpm/services/local_ops/__init__.py +155 -0
- claude_mpm/services/local_ops/crash_detector.py +257 -0
- claude_mpm/services/local_ops/health_checks/__init__.py +26 -0
- claude_mpm/services/local_ops/health_checks/http_check.py +224 -0
- claude_mpm/services/local_ops/health_checks/process_check.py +236 -0
- claude_mpm/services/local_ops/health_checks/resource_check.py +255 -0
- claude_mpm/services/local_ops/health_manager.py +427 -0
- claude_mpm/services/local_ops/log_monitor.py +396 -0
- claude_mpm/services/local_ops/memory_leak_detector.py +294 -0
- claude_mpm/services/local_ops/process_manager.py +595 -0
- claude_mpm/services/local_ops/resource_monitor.py +331 -0
- claude_mpm/services/local_ops/restart_manager.py +401 -0
- claude_mpm/services/local_ops/restart_policy.py +387 -0
- claude_mpm/services/local_ops/state_manager.py +372 -0
- claude_mpm/services/local_ops/unified_manager.py +600 -0
- claude_mpm/services/mcp_config_manager.py +1542 -0
- claude_mpm/services/mcp_service_verifier.py +732 -0
- claude_mpm/services/memory/__init__.py +19 -0
- claude_mpm/services/{memory_builder.py → memory/builder.py} +465 -373
- claude_mpm/services/memory/cache/__init__.py +14 -0
- claude_mpm/services/{shared_prompt_cache.py → memory/cache/shared_prompt_cache.py} +237 -200
- claude_mpm/services/memory/cache/simple_cache.py +331 -0
- claude_mpm/services/memory/failure_tracker.py +578 -0
- claude_mpm/services/memory/indexed_memory.py +648 -0
- claude_mpm/services/{memory_optimizer.py → memory/optimizer.py} +272 -243
- claude_mpm/services/memory/router.py +951 -0
- claude_mpm/services/memory_hook_service.py +470 -0
- claude_mpm/services/model/__init__.py +147 -0
- claude_mpm/services/model/base_provider.py +365 -0
- claude_mpm/services/model/claude_provider.py +412 -0
- claude_mpm/services/model/model_router.py +452 -0
- claude_mpm/services/model/ollama_provider.py +415 -0
- claude_mpm/services/monitor/__init__.py +20 -0
- claude_mpm/services/monitor/daemon.py +698 -0
- claude_mpm/services/monitor/daemon_manager.py +1076 -0
- claude_mpm/services/monitor/event_emitter.py +350 -0
- claude_mpm/services/monitor/handlers/__init__.py +21 -0
- claude_mpm/services/monitor/handlers/code_analysis.py +332 -0
- claude_mpm/services/monitor/handlers/dashboard.py +299 -0
- claude_mpm/services/monitor/handlers/file.py +264 -0
- claude_mpm/services/monitor/handlers/hooks.py +512 -0
- claude_mpm/services/monitor/management/__init__.py +18 -0
- claude_mpm/services/monitor/management/health.py +124 -0
- claude_mpm/services/monitor/management/lifecycle.py +730 -0
- claude_mpm/services/monitor/server.py +1493 -0
- claude_mpm/services/monitor_build_service.py +349 -0
- claude_mpm/services/native_agent_converter.py +356 -0
- claude_mpm/services/orphan_detection.py +786 -0
- claude_mpm/services/pm_skills_deployer.py +711 -0
- claude_mpm/services/port_manager.py +597 -0
- claude_mpm/services/pr/__init__.py +14 -0
- claude_mpm/services/pr/pr_template_service.py +329 -0
- claude_mpm/services/profile_manager.py +337 -0
- claude_mpm/services/project/__init__.py +44 -0
- claude_mpm/services/{project_analyzer.py → project/analyzer.py} +541 -291
- claude_mpm/services/project/analyzer_v2.py +566 -0
- claude_mpm/services/project/architecture_analyzer.py +461 -0
- claude_mpm/services/project/archive_manager.py +1045 -0
- claude_mpm/services/project/dependency_analyzer.py +462 -0
- claude_mpm/services/project/detection_strategies.py +719 -0
- claude_mpm/services/project/documentation_manager.py +554 -0
- claude_mpm/services/project/enhanced_analyzer.py +572 -0
- claude_mpm/services/project/language_analyzer.py +265 -0
- claude_mpm/services/project/metrics_collector.py +407 -0
- claude_mpm/services/project/project_organizer.py +1009 -0
- claude_mpm/services/project/registry.py +636 -0
- claude_mpm/services/project/toolchain_analyzer.py +583 -0
- claude_mpm/services/project_port_allocator.py +596 -0
- claude_mpm/services/recovery_manager.py +293 -240
- claude_mpm/services/response_tracker.py +267 -0
- claude_mpm/services/runner_configuration_service.py +605 -0
- claude_mpm/services/self_upgrade_service.py +608 -0
- claude_mpm/services/session_management_service.py +314 -0
- claude_mpm/services/session_manager.py +380 -0
- claude_mpm/services/shared/__init__.py +21 -0
- claude_mpm/services/shared/async_service_base.py +216 -0
- claude_mpm/services/shared/config_service_base.py +301 -0
- claude_mpm/services/shared/lifecycle_service_base.py +308 -0
- claude_mpm/services/shared/manager_base.py +315 -0
- claude_mpm/services/shared/service_factory.py +309 -0
- claude_mpm/services/skills/__init__.py +21 -0
- claude_mpm/services/skills/git_skill_source_manager.py +1340 -0
- claude_mpm/services/skills/selective_skill_deployer.py +743 -0
- claude_mpm/services/skills/skill_discovery_service.py +568 -0
- claude_mpm/services/skills/skill_to_agent_mapper.py +406 -0
- claude_mpm/services/skills_config.py +547 -0
- claude_mpm/services/skills_deployer.py +1168 -0
- claude_mpm/services/socketio/__init__.py +25 -0
- claude_mpm/services/socketio/client_proxy.py +229 -0
- claude_mpm/services/socketio/dashboard_server.py +362 -0
- claude_mpm/services/socketio/event_normalizer.py +798 -0
- claude_mpm/services/socketio/handlers/__init__.py +30 -0
- claude_mpm/services/socketio/handlers/base.py +136 -0
- claude_mpm/services/socketio/handlers/code_analysis.py +682 -0
- claude_mpm/services/socketio/handlers/connection.py +643 -0
- claude_mpm/services/socketio/handlers/connection_handler.py +333 -0
- claude_mpm/services/socketio/handlers/file.py +263 -0
- claude_mpm/services/socketio/handlers/git.py +962 -0
- claude_mpm/services/socketio/handlers/hook.py +211 -0
- claude_mpm/services/socketio/handlers/memory.py +26 -0
- claude_mpm/services/socketio/handlers/project.py +24 -0
- claude_mpm/services/socketio/handlers/registry.py +214 -0
- claude_mpm/services/socketio/migration_utils.py +343 -0
- claude_mpm/services/socketio/monitor_client.py +364 -0
- claude_mpm/services/socketio/server/__init__.py +18 -0
- claude_mpm/services/socketio/server/broadcaster.py +569 -0
- claude_mpm/services/socketio/server/connection_manager.py +579 -0
- claude_mpm/services/socketio/server/core.py +1079 -0
- claude_mpm/services/socketio/server/eventbus_integration.py +245 -0
- claude_mpm/services/socketio/server/main.py +501 -0
- claude_mpm/services/socketio_client_manager.py +173 -143
- claude_mpm/services/socketio_server.py +38 -1657
- claude_mpm/services/subprocess_launcher_service.py +322 -0
- claude_mpm/services/system_instructions_service.py +270 -0
- claude_mpm/services/ticket_manager.py +25 -209
- claude_mpm/services/ticket_services/__init__.py +26 -0
- claude_mpm/services/ticket_services/crud_service.py +328 -0
- claude_mpm/services/ticket_services/formatter_service.py +290 -0
- claude_mpm/services/ticket_services/search_service.py +324 -0
- claude_mpm/services/ticket_services/validation_service.py +303 -0
- claude_mpm/services/ticket_services/workflow_service.py +244 -0
- claude_mpm/services/unified/__init__.py +65 -0
- claude_mpm/services/unified/analyzer_strategies/__init__.py +44 -0
- claude_mpm/services/unified/analyzer_strategies/code_analyzer.py +518 -0
- claude_mpm/services/unified/analyzer_strategies/dependency_analyzer.py +680 -0
- claude_mpm/services/unified/analyzer_strategies/performance_analyzer.py +900 -0
- claude_mpm/services/unified/analyzer_strategies/security_analyzer.py +745 -0
- claude_mpm/services/unified/analyzer_strategies/structure_analyzer.py +733 -0
- claude_mpm/services/unified/config_strategies/__init__.py +175 -0
- claude_mpm/services/unified/config_strategies/config_schema.py +731 -0
- claude_mpm/services/unified/config_strategies/context_strategy.py +747 -0
- claude_mpm/services/unified/config_strategies/error_handling_strategy.py +1005 -0
- claude_mpm/services/unified/config_strategies/file_loader_strategy.py +881 -0
- claude_mpm/services/unified/config_strategies/unified_config_service.py +823 -0
- claude_mpm/services/unified/config_strategies/validation_strategy.py +1148 -0
- claude_mpm/services/unified/deployment_strategies/__init__.py +97 -0
- claude_mpm/services/unified/deployment_strategies/base.py +553 -0
- claude_mpm/services/unified/deployment_strategies/cloud_strategies.py +573 -0
- claude_mpm/services/unified/deployment_strategies/local.py +607 -0
- claude_mpm/services/unified/deployment_strategies/utils.py +667 -0
- claude_mpm/services/unified/deployment_strategies/vercel.py +471 -0
- claude_mpm/services/unified/interfaces.py +475 -0
- claude_mpm/services/unified/migration.py +509 -0
- claude_mpm/services/unified/strategies.py +534 -0
- claude_mpm/services/unified/unified_analyzer.py +542 -0
- claude_mpm/services/unified/unified_config.py +691 -0
- claude_mpm/services/unified/unified_deployment.py +466 -0
- claude_mpm/services/utility_service.py +280 -0
- claude_mpm/services/version_control/__init__.py +34 -37
- claude_mpm/services/version_control/branch_strategy.py +26 -17
- claude_mpm/services/version_control/conflict_resolution.py +52 -36
- claude_mpm/services/version_control/git_operations.py +183 -49
- claude_mpm/services/version_control/semantic_versioning.py +172 -61
- claude_mpm/services/version_control/version_parser.py +546 -0
- claude_mpm/services/version_service.py +379 -0
- claude_mpm/services/visualization/__init__.py +15 -0
- claude_mpm/services/visualization/mermaid_generator.py +937 -0
- claude_mpm/skills/__init__.py +42 -0
- claude_mpm/skills/agent_skills_injector.py +324 -0
- claude_mpm/skills/bundled/LICENSE_ATTRIBUTIONS.md +79 -0
- claude_mpm/skills/bundled/__init__.py +6 -0
- claude_mpm/skills/bundled/api-documentation.md +393 -0
- claude_mpm/skills/bundled/async-testing.md +571 -0
- claude_mpm/skills/bundled/code-review.md +143 -0
- claude_mpm/skills/bundled/collaboration/brainstorming/SKILL.md +79 -0
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/SKILL.md +178 -0
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/agent-prompts.md +577 -0
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/coordination-patterns.md +467 -0
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/examples.md +537 -0
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/troubleshooting.md +730 -0
- claude_mpm/skills/bundled/collaboration/git-worktrees.md +317 -0
- claude_mpm/skills/bundled/collaboration/requesting-code-review/SKILL.md +112 -0
- claude_mpm/skills/bundled/collaboration/requesting-code-review/references/code-reviewer-template.md +146 -0
- claude_mpm/skills/bundled/collaboration/requesting-code-review/references/review-examples.md +412 -0
- claude_mpm/skills/bundled/collaboration/stacked-prs.md +251 -0
- claude_mpm/skills/bundled/collaboration/writing-plans/SKILL.md +81 -0
- claude_mpm/skills/bundled/collaboration/writing-plans/references/best-practices.md +362 -0
- claude_mpm/skills/bundled/collaboration/writing-plans/references/plan-structure-templates.md +312 -0
- claude_mpm/skills/bundled/database-migration.md +199 -0
- claude_mpm/skills/bundled/debugging/root-cause-tracing/SKILL.md +152 -0
- claude_mpm/skills/bundled/debugging/root-cause-tracing/references/advanced-techniques.md +668 -0
- claude_mpm/skills/bundled/debugging/root-cause-tracing/references/examples.md +587 -0
- claude_mpm/skills/bundled/debugging/root-cause-tracing/references/integration.md +438 -0
- claude_mpm/skills/bundled/debugging/root-cause-tracing/references/tracing-techniques.md +391 -0
- claude_mpm/skills/bundled/debugging/systematic-debugging/CREATION-LOG.md +119 -0
- claude_mpm/skills/bundled/debugging/systematic-debugging/SKILL.md +148 -0
- claude_mpm/skills/bundled/debugging/systematic-debugging/references/anti-patterns.md +483 -0
- claude_mpm/skills/bundled/debugging/systematic-debugging/references/examples.md +452 -0
- claude_mpm/skills/bundled/debugging/systematic-debugging/references/troubleshooting.md +449 -0
- claude_mpm/skills/bundled/debugging/systematic-debugging/references/workflow.md +411 -0
- claude_mpm/skills/bundled/debugging/systematic-debugging/test-academic.md +14 -0
- claude_mpm/skills/bundled/debugging/systematic-debugging/test-pressure-1.md +58 -0
- claude_mpm/skills/bundled/debugging/systematic-debugging/test-pressure-2.md +68 -0
- claude_mpm/skills/bundled/debugging/systematic-debugging/test-pressure-3.md +69 -0
- claude_mpm/skills/bundled/debugging/verification-before-completion/SKILL.md +131 -0
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/gate-function.md +325 -0
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/integration-and-workflows.md +490 -0
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/red-flags-and-failures.md +425 -0
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/verification-patterns.md +499 -0
- claude_mpm/skills/bundled/docker-containerization.md +194 -0
- claude_mpm/skills/bundled/express-local-dev.md +1429 -0
- claude_mpm/skills/bundled/fastapi-local-dev.md +1199 -0
- claude_mpm/skills/bundled/git-workflow.md +414 -0
- claude_mpm/skills/bundled/imagemagick.md +204 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/INTEGRATION.md +611 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/README.md +596 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/SKILL.md +260 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/examples/nextjs-env-structure.md +315 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/references/frameworks.md +436 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/references/security.md +433 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/references/synchronization.md +452 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/references/troubleshooting.md +404 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/references/validation.md +420 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/scripts/validate_env.py +576 -0
- claude_mpm/skills/bundled/json-data-handling.md +223 -0
- claude_mpm/skills/bundled/main/artifacts-builder/SKILL.md +86 -0
- claude_mpm/skills/bundled/main/internal-comms/SKILL.md +43 -0
- claude_mpm/skills/bundled/main/internal-comms/examples/3p-updates.md +47 -0
- claude_mpm/skills/bundled/main/internal-comms/examples/company-newsletter.md +65 -0
- claude_mpm/skills/bundled/main/internal-comms/examples/faq-answers.md +30 -0
- claude_mpm/skills/bundled/main/internal-comms/examples/general-comms.md +16 -0
- claude_mpm/skills/bundled/main/mcp-builder/SKILL.md +160 -0
- claude_mpm/skills/bundled/main/mcp-builder/reference/design_principles.md +412 -0
- claude_mpm/skills/bundled/main/mcp-builder/reference/evaluation.md +602 -0
- claude_mpm/skills/bundled/main/mcp-builder/reference/mcp_best_practices.md +915 -0
- claude_mpm/skills/bundled/main/mcp-builder/reference/node_mcp_server.md +916 -0
- claude_mpm/skills/bundled/main/mcp-builder/reference/python_mcp_server.md +752 -0
- claude_mpm/skills/bundled/main/mcp-builder/reference/workflow.md +1237 -0
- claude_mpm/skills/bundled/main/mcp-builder/scripts/connections.py +157 -0
- claude_mpm/skills/bundled/main/mcp-builder/scripts/evaluation.py +425 -0
- claude_mpm/skills/bundled/main/skill-creator/SKILL.md +189 -0
- claude_mpm/skills/bundled/main/skill-creator/references/best-practices.md +500 -0
- claude_mpm/skills/bundled/main/skill-creator/references/creation-workflow.md +464 -0
- claude_mpm/skills/bundled/main/skill-creator/references/examples.md +619 -0
- claude_mpm/skills/bundled/main/skill-creator/references/progressive-disclosure.md +437 -0
- claude_mpm/skills/bundled/main/skill-creator/references/skill-structure.md +231 -0
- claude_mpm/skills/bundled/main/skill-creator/scripts/init_skill.py +303 -0
- claude_mpm/skills/bundled/main/skill-creator/scripts/package_skill.py +113 -0
- claude_mpm/skills/bundled/main/skill-creator/scripts/quick_validate.py +72 -0
- claude_mpm/skills/bundled/nextjs-local-dev.md +807 -0
- claude_mpm/skills/bundled/pdf.md +141 -0
- claude_mpm/skills/bundled/performance-profiling.md +573 -0
- claude_mpm/skills/bundled/php/espocrm-development/SKILL.md +170 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/architecture.md +602 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/common-tasks.md +821 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/development-workflow.md +742 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/frontend-customization.md +726 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/hooks-and-services.md +764 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/testing-debugging.md +831 -0
- claude_mpm/skills/bundled/pm/pm-bug-reporting/pm-bug-reporting.md +248 -0
- claude_mpm/skills/bundled/pm/pm-delegation-patterns/SKILL.md +167 -0
- claude_mpm/skills/bundled/pm/pm-git-file-tracking/SKILL.md +113 -0
- claude_mpm/skills/bundled/pm/pm-pr-workflow/SKILL.md +124 -0
- claude_mpm/skills/bundled/pm/pm-teaching-mode/SKILL.md +657 -0
- claude_mpm/skills/bundled/pm/pm-ticketing-integration/SKILL.md +154 -0
- claude_mpm/skills/bundled/pm/pm-verification-protocols/SKILL.md +198 -0
- claude_mpm/skills/bundled/react/flexlayout-react.md +742 -0
- claude_mpm/skills/bundled/refactoring-patterns.md +180 -0
- claude_mpm/skills/bundled/rust/desktop-applications/SKILL.md +226 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/architecture-patterns.md +901 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/native-gui-frameworks.md +901 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/platform-integration.md +775 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/state-management.md +937 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/tauri-framework.md +770 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/testing-deployment.md +961 -0
- claude_mpm/skills/bundled/security-scanning.md +439 -0
- claude_mpm/skills/bundled/systematic-debugging.md +473 -0
- claude_mpm/skills/bundled/tauri/tauri-async-patterns.md +495 -0
- claude_mpm/skills/bundled/tauri/tauri-build-deploy.md +599 -0
- claude_mpm/skills/bundled/tauri/tauri-command-patterns.md +535 -0
- claude_mpm/skills/bundled/tauri/tauri-error-handling.md +613 -0
- claude_mpm/skills/bundled/tauri/tauri-event-system.md +648 -0
- claude_mpm/skills/bundled/tauri/tauri-file-system.md +673 -0
- claude_mpm/skills/bundled/tauri/tauri-frontend-integration.md +767 -0
- claude_mpm/skills/bundled/tauri/tauri-performance.md +669 -0
- claude_mpm/skills/bundled/tauri/tauri-state-management.md +573 -0
- claude_mpm/skills/bundled/tauri/tauri-testing.md +384 -0
- claude_mpm/skills/bundled/tauri/tauri-window-management.md +628 -0
- claude_mpm/skills/bundled/test-driven-development.md +378 -0
- claude_mpm/skills/bundled/testing/condition-based-waiting/SKILL.md +119 -0
- claude_mpm/skills/bundled/testing/condition-based-waiting/references/patterns-and-implementation.md +253 -0
- claude_mpm/skills/bundled/testing/test-driven-development/SKILL.md +145 -0
- claude_mpm/skills/bundled/testing/test-driven-development/references/anti-patterns.md +543 -0
- claude_mpm/skills/bundled/testing/test-driven-development/references/examples.md +741 -0
- claude_mpm/skills/bundled/testing/test-driven-development/references/integration.md +470 -0
- claude_mpm/skills/bundled/testing/test-driven-development/references/philosophy.md +458 -0
- claude_mpm/skills/bundled/testing/test-driven-development/references/workflow.md +639 -0
- claude_mpm/skills/bundled/testing/test-quality-inspector/SKILL.md +458 -0
- claude_mpm/skills/bundled/testing/test-quality-inspector/examples/example-inspection-report.md +411 -0
- claude_mpm/skills/bundled/testing/test-quality-inspector/references/assertion-quality.md +317 -0
- claude_mpm/skills/bundled/testing/test-quality-inspector/references/inspection-checklist.md +270 -0
- claude_mpm/skills/bundled/testing/test-quality-inspector/references/red-flags.md +436 -0
- claude_mpm/skills/bundled/testing/testing-anti-patterns/SKILL.md +140 -0
- claude_mpm/skills/bundled/testing/testing-anti-patterns/references/completeness-anti-patterns.md +572 -0
- claude_mpm/skills/bundled/testing/testing-anti-patterns/references/core-anti-patterns.md +411 -0
- claude_mpm/skills/bundled/testing/testing-anti-patterns/references/detection-guide.md +569 -0
- claude_mpm/skills/bundled/testing/testing-anti-patterns/references/tdd-connection.md +695 -0
- claude_mpm/skills/bundled/testing/webapp-testing/SKILL.md +184 -0
- claude_mpm/skills/bundled/testing/webapp-testing/decision-tree.md +459 -0
- claude_mpm/skills/bundled/testing/webapp-testing/examples/console_logging.py +35 -0
- claude_mpm/skills/bundled/testing/webapp-testing/examples/element_discovery.py +44 -0
- claude_mpm/skills/bundled/testing/webapp-testing/examples/static_html_automation.py +34 -0
- claude_mpm/skills/bundled/testing/webapp-testing/playwright-patterns.md +479 -0
- claude_mpm/skills/bundled/testing/webapp-testing/reconnaissance-pattern.md +687 -0
- claude_mpm/skills/bundled/testing/webapp-testing/scripts/with_server.py +129 -0
- claude_mpm/skills/bundled/testing/webapp-testing/server-management.md +758 -0
- claude_mpm/skills/bundled/testing/webapp-testing/troubleshooting.md +868 -0
- claude_mpm/skills/bundled/vite-local-dev.md +1061 -0
- claude_mpm/skills/bundled/web-performance-optimization.md +2305 -0
- claude_mpm/skills/bundled/xlsx.md +157 -0
- claude_mpm/skills/registry.py +286 -0
- claude_mpm/skills/skill_manager.py +405 -0
- claude_mpm/skills/skills_registry.py +347 -0
- claude_mpm/skills/skills_service.py +739 -0
- claude_mpm/storage/__init__.py +9 -0
- claude_mpm/storage/state_storage.py +546 -0
- claude_mpm/templates/.pre-commit-config.yaml +112 -0
- claude_mpm/templates/questions/__init__.py +38 -0
- claude_mpm/templates/questions/base.py +193 -0
- claude_mpm/templates/questions/pr_strategy.py +311 -0
- claude_mpm/templates/questions/project_init.py +385 -0
- claude_mpm/templates/questions/ticket_mgmt.py +394 -0
- claude_mpm/ticket_wrapper.py +2 -2
- claude_mpm/tools/__init__.py +10 -0
- claude_mpm/tools/__main__.py +208 -0
- claude_mpm/tools/code_tree_analyzer/__init__.py +45 -0
- claude_mpm/tools/code_tree_analyzer/analysis.py +299 -0
- claude_mpm/tools/code_tree_analyzer/cache.py +131 -0
- claude_mpm/tools/code_tree_analyzer/core.py +380 -0
- claude_mpm/tools/code_tree_analyzer/discovery.py +403 -0
- claude_mpm/tools/code_tree_analyzer/events.py +168 -0
- claude_mpm/tools/code_tree_analyzer/gitignore.py +308 -0
- claude_mpm/tools/code_tree_analyzer/models.py +39 -0
- claude_mpm/tools/code_tree_analyzer/multilang_analyzer.py +224 -0
- claude_mpm/tools/code_tree_analyzer/python_analyzer.py +284 -0
- claude_mpm/tools/code_tree_builder.py +631 -0
- claude_mpm/tools/code_tree_events.py +420 -0
- claude_mpm/tools/socketio_debug.py +671 -0
- claude_mpm/utils/__init__.py +8 -8
- claude_mpm/utils/agent_dependency_loader.py +1189 -0
- claude_mpm/utils/agent_filters.py +261 -0
- claude_mpm/utils/common.py +544 -0
- claude_mpm/utils/config_manager.py +168 -126
- claude_mpm/utils/console.py +11 -0
- claude_mpm/utils/database_connector.py +298 -0
- claude_mpm/utils/dependency_cache.py +373 -0
- claude_mpm/utils/dependency_manager.py +60 -59
- claude_mpm/utils/dependency_strategies.py +381 -0
- claude_mpm/utils/display_helper.py +260 -0
- claude_mpm/utils/environment_context.py +313 -0
- claude_mpm/utils/error_handler.py +78 -66
- claude_mpm/utils/file_utils.py +305 -0
- claude_mpm/utils/framework_detection.py +12 -11
- claude_mpm/utils/git_analyzer.py +407 -0
- claude_mpm/utils/gitignore.py +244 -0
- claude_mpm/utils/import_migration_example.py +12 -60
- claude_mpm/utils/imports.py +48 -45
- claude_mpm/utils/log_cleanup.py +627 -0
- claude_mpm/utils/migration.py +372 -0
- claude_mpm/utils/path_operations.py +110 -104
- claude_mpm/utils/progress.py +387 -0
- claude_mpm/utils/robust_installer.py +844 -0
- claude_mpm/utils/session_logging.py +121 -0
- claude_mpm/utils/structured_questions.py +619 -0
- claude_mpm/utils/subprocess_utils.py +343 -0
- claude_mpm/validation/__init__.py +1 -1
- claude_mpm/validation/agent_validator.py +214 -108
- claude_mpm/validation/frontmatter_validator.py +252 -0
- claude_mpm-5.4.85.dist-info/METADATA +1023 -0
- claude_mpm-5.4.85.dist-info/RECORD +980 -0
- {claude_mpm-3.4.10.dist-info → claude_mpm-5.4.85.dist-info}/entry_points.txt +1 -3
- claude_mpm-5.4.85.dist-info/licenses/LICENSE +94 -0
- claude_mpm-5.4.85.dist-info/licenses/LICENSE-FAQ.md +153 -0
- claude_mpm/agents/BASE_AGENT_TEMPLATE.md +0 -88
- claude_mpm/agents/INSTRUCTIONS.md +0 -352
- claude_mpm/agents/backups/INSTRUCTIONS.md +0 -352
- claude_mpm/agents/base_agent_loader.py +0 -529
- claude_mpm/agents/schema/agent_schema.json +0 -314
- claude_mpm/agents/templates/.claude-mpm/memories/README.md +0 -36
- claude_mpm/agents/templates/backup/data_engineer_agent_20250726_234551.json +0 -46
- claude_mpm/agents/templates/backup/documentation_agent_20250726_234551.json +0 -45
- claude_mpm/agents/templates/backup/engineer_agent_20250726_234551.json +0 -49
- claude_mpm/agents/templates/backup/ops_agent_20250726_234551.json +0 -46
- claude_mpm/agents/templates/backup/qa_agent_20250726_234551.json +0 -45
- claude_mpm/agents/templates/backup/research_agent_20250726_234551.json +0 -49
- claude_mpm/agents/templates/backup/security_agent_20250726_234551.json +0 -46
- claude_mpm/agents/templates/backup/version_control_agent_20250726_234551.json +0 -46
- claude_mpm/agents/templates/data_engineer.json +0 -110
- claude_mpm/agents/templates/documentation.json +0 -109
- claude_mpm/agents/templates/engineer.json +0 -113
- claude_mpm/agents/templates/ops.json +0 -109
- claude_mpm/agents/templates/pm.json +0 -25
- claude_mpm/agents/templates/qa.json +0 -111
- claude_mpm/agents/templates/research.json +0 -65
- claude_mpm/agents/templates/security.json +0 -113
- claude_mpm/agents/templates/test_integration.json +0 -112
- claude_mpm/agents/templates/version_control.json +0 -107
- claude_mpm/cli/commands/ui.py +0 -57
- claude_mpm/core/simple_runner.py +0 -1046
- claude_mpm/dashboard/open_dashboard.py +0 -34
- claude_mpm/deployment_paths.py +0 -261
- claude_mpm/hooks/builtin/__init__.py +0 -1
- claude_mpm/hooks/builtin/logging_hook_example.py +0 -165
- claude_mpm/hooks/builtin/memory_hooks_example.py +0 -67
- claude_mpm/hooks/builtin/mpm_command_hook.py +0 -125
- claude_mpm/hooks/builtin/post_delegation_hook_example.py +0 -124
- claude_mpm/hooks/builtin/pre_delegation_hook_example.py +0 -125
- claude_mpm/hooks/builtin/submit_hook_example.py +0 -100
- claude_mpm/hooks/builtin/ticket_extraction_hook_example.py +0 -237
- claude_mpm/hooks/builtin/todo_agent_prefix_hook.py +0 -240
- claude_mpm/hooks/builtin/workflow_start_hook.py +0 -181
- claude_mpm/orchestration/__init__.py +0 -6
- claude_mpm/orchestration/archive/direct_orchestrator.py +0 -195
- claude_mpm/orchestration/archive/factory.py +0 -215
- claude_mpm/orchestration/archive/hook_enabled_orchestrator.py +0 -188
- claude_mpm/orchestration/archive/hook_integration_example.py +0 -178
- claude_mpm/orchestration/archive/interactive_subprocess_orchestrator.py +0 -826
- claude_mpm/orchestration/archive/orchestrator.py +0 -501
- claude_mpm/orchestration/archive/pexpect_orchestrator.py +0 -252
- claude_mpm/orchestration/archive/pty_orchestrator.py +0 -270
- claude_mpm/orchestration/archive/simple_orchestrator.py +0 -82
- claude_mpm/orchestration/archive/subprocess_orchestrator.py +0 -801
- claude_mpm/orchestration/archive/system_prompt_orchestrator.py +0 -278
- claude_mpm/orchestration/archive/wrapper_orchestrator.py +0 -187
- claude_mpm/schemas/workflow_validator.py +0 -411
- claude_mpm/services/agent_deployment.py +0 -1534
- claude_mpm/services/agent_lifecycle_manager.py +0 -1169
- claude_mpm/services/agent_memory_manager.py +0 -1415
- claude_mpm/services/agent_registry.py +0 -676
- claude_mpm/services/deployed_agent_discovery.py +0 -226
- claude_mpm/services/framework_agent_loader.py +0 -337
- claude_mpm/services/framework_claude_md_generator.py +0 -621
- claude_mpm/services/health_monitor.py +0 -892
- claude_mpm/services/memory_router.py +0 -538
- claude_mpm/services/parent_directory_manager/__init__.py +0 -577
- claude_mpm/services/parent_directory_manager/backup_manager.py +0 -258
- claude_mpm/services/parent_directory_manager/config_manager.py +0 -210
- claude_mpm/services/parent_directory_manager/deduplication_manager.py +0 -279
- claude_mpm/services/parent_directory_manager/framework_protector.py +0 -143
- claude_mpm/services/parent_directory_manager/operations.py +0 -186
- claude_mpm/services/parent_directory_manager/state_manager.py +0 -624
- claude_mpm/services/parent_directory_manager/template_deployer.py +0 -579
- claude_mpm/services/parent_directory_manager/validation_manager.py +0 -378
- claude_mpm/services/parent_directory_manager/version_control_helper.py +0 -339
- claude_mpm/services/parent_directory_manager/version_manager.py +0 -222
- claude_mpm/services/standalone_socketio_server.py +0 -1300
- claude_mpm/services/ticket_manager_di.py +0 -318
- claude_mpm/services/ticketing_service_original.py +0 -508
- claude_mpm/ui/__init__.py +0 -1
- claude_mpm/ui/rich_terminal_ui.py +0 -295
- claude_mpm/ui/terminal_ui.py +0 -328
- claude_mpm/utils/paths.py +0 -289
- claude_mpm-3.4.10.dist-info/METADATA +0 -183
- claude_mpm-3.4.10.dist-info/RECORD +0 -201
- claude_mpm-3.4.10.dist-info/licenses/LICENSE +0 -21
- {claude_mpm-3.4.10.dist-info → claude_mpm-5.4.85.dist-info}/WHEEL +0 -0
- {claude_mpm-3.4.10.dist-info → claude_mpm-5.4.85.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,722 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Prompt building functions for MPM-Init command.
|
|
3
|
+
|
|
4
|
+
This module contains pure functions that generate prompts for different
|
|
5
|
+
initialization and update modes. All prompts are constructed as standalone
|
|
6
|
+
functions with no external dependencies.
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from pathlib import Path
|
|
10
|
+
from typing import Any, Dict, Optional
|
|
11
|
+
|
|
12
|
+
__all__ = [
|
|
13
|
+
"build_enhanced_update_prompt",
|
|
14
|
+
"build_initialization_prompt",
|
|
15
|
+
"build_prompt_engineer_optimization_prompt",
|
|
16
|
+
"build_research_context_prompt",
|
|
17
|
+
"build_update_prompt",
|
|
18
|
+
]
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def build_initialization_prompt(
|
|
22
|
+
project_path: Path,
|
|
23
|
+
project_type: Optional[str] = None,
|
|
24
|
+
framework: Optional[str] = None,
|
|
25
|
+
ast_analysis: bool = True,
|
|
26
|
+
) -> str:
|
|
27
|
+
"""
|
|
28
|
+
Build the initialization prompt for the agent.
|
|
29
|
+
|
|
30
|
+
Args:
|
|
31
|
+
project_path: Path to the project directory
|
|
32
|
+
project_type: Type of project (web, api, cli, library, etc.)
|
|
33
|
+
framework: Specific framework if applicable
|
|
34
|
+
ast_analysis: Enable AST analysis for enhanced documentation
|
|
35
|
+
|
|
36
|
+
Returns:
|
|
37
|
+
Formatted prompt string for agent delegation
|
|
38
|
+
"""
|
|
39
|
+
base_prompt = f"""Please delegate this task to the Agentic Coder Optimizer agent:
|
|
40
|
+
|
|
41
|
+
Initialize this project for optimal use with Claude Code and Claude MPM.
|
|
42
|
+
|
|
43
|
+
Project Path: {project_path}
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
if project_type:
|
|
47
|
+
base_prompt += f"Project Type: {project_type}\n"
|
|
48
|
+
|
|
49
|
+
if framework:
|
|
50
|
+
base_prompt += f"Framework: {framework}\n"
|
|
51
|
+
|
|
52
|
+
base_prompt += """
|
|
53
|
+
Please perform the following initialization tasks:
|
|
54
|
+
|
|
55
|
+
1. **Analyze Current State**:
|
|
56
|
+
- Scan project structure and existing configurations
|
|
57
|
+
- Identify project type, language, and frameworks
|
|
58
|
+
- Check for existing documentation and tooling
|
|
59
|
+
|
|
60
|
+
2. **Create/Update CLAUDE.md**:
|
|
61
|
+
- Project overview and purpose
|
|
62
|
+
- Architecture and key components
|
|
63
|
+
- Development guidelines
|
|
64
|
+
- ONE clear way to: build, test, deploy, lint, format
|
|
65
|
+
- Links to all relevant documentation
|
|
66
|
+
- Common tasks and workflows
|
|
67
|
+
|
|
68
|
+
3. **Establish Single-Path Standards**:
|
|
69
|
+
- ONE command for each operation (build, test, lint, etc.)
|
|
70
|
+
- Clear documentation of THE way to do things
|
|
71
|
+
- Remove ambiguity in workflows
|
|
72
|
+
|
|
73
|
+
4. **Configure Development Tools**:
|
|
74
|
+
- Set up or verify linting configuration
|
|
75
|
+
- Configure code formatting standards
|
|
76
|
+
- Establish testing framework
|
|
77
|
+
- Add pre-commit hooks if needed
|
|
78
|
+
|
|
79
|
+
5. **Create Project Structure Documentation**:
|
|
80
|
+
- Document folder organization
|
|
81
|
+
- Explain where different file types belong
|
|
82
|
+
- Provide examples of proper file placement
|
|
83
|
+
|
|
84
|
+
6. **Set Up GitHub Integration** (if applicable):
|
|
85
|
+
- Create/update .github/workflows
|
|
86
|
+
- Add issue and PR templates
|
|
87
|
+
- Configure branch protection rules documentation
|
|
88
|
+
|
|
89
|
+
7. **Initialize Memory System**:
|
|
90
|
+
- Create .claude-mpm/memories/ directory
|
|
91
|
+
- Add initial memory files for key project knowledge
|
|
92
|
+
- Document memory usage patterns
|
|
93
|
+
|
|
94
|
+
8. **Generate Quick Start Guide**:
|
|
95
|
+
- Step-by-step setup instructions
|
|
96
|
+
- Common commands reference
|
|
97
|
+
- Troubleshooting guide
|
|
98
|
+
"""
|
|
99
|
+
|
|
100
|
+
if ast_analysis:
|
|
101
|
+
base_prompt += """
|
|
102
|
+
9. **Perform AST Analysis** (using Code Analyzer agent if needed):
|
|
103
|
+
- Parse code files to extract structure (classes, functions, methods)
|
|
104
|
+
- Generate comprehensive API documentation
|
|
105
|
+
- Create code architecture diagrams
|
|
106
|
+
- Document function signatures and dependencies
|
|
107
|
+
- Extract docstrings and inline comments
|
|
108
|
+
- Map code relationships and inheritance hierarchies
|
|
109
|
+
- Generate developer documentation with:
|
|
110
|
+
* Module overview and purpose
|
|
111
|
+
* Class hierarchies and relationships
|
|
112
|
+
* Function/method documentation
|
|
113
|
+
* Type annotations and parameter descriptions
|
|
114
|
+
* Code complexity metrics
|
|
115
|
+
* Dependency graphs
|
|
116
|
+
- Create DEVELOPER.md with technical architecture details
|
|
117
|
+
- Add CODE_STRUCTURE.md with AST-derived insights
|
|
118
|
+
"""
|
|
119
|
+
|
|
120
|
+
base_prompt += """
|
|
121
|
+
|
|
122
|
+
10. **Holistic CLAUDE.md Organization** (CRITICAL - Do this LAST):
|
|
123
|
+
After completing all initialization tasks, take a holistic look at the CLAUDE.md file and:
|
|
124
|
+
|
|
125
|
+
a) **Reorganize Content by Priority**:
|
|
126
|
+
- CRITICAL instructions (security, data handling, core business rules) at the TOP
|
|
127
|
+
- Project overview and purpose
|
|
128
|
+
- Key architectural decisions and constraints
|
|
129
|
+
- Development guidelines and standards
|
|
130
|
+
- Common tasks and workflows
|
|
131
|
+
- Links to additional documentation
|
|
132
|
+
- Nice-to-have or optional information at the BOTTOM
|
|
133
|
+
|
|
134
|
+
b) **Rank Instructions by Importance**:
|
|
135
|
+
- Use clear markers:
|
|
136
|
+
* 🔴 CRITICAL: Security, data handling, breaking changes, core business rules
|
|
137
|
+
* 🟡 IMPORTANT: Key workflows, architecture decisions, performance requirements
|
|
138
|
+
* 🟢 STANDARD: Common operations, coding standards, best practices
|
|
139
|
+
* ⚪ OPTIONAL: Nice-to-have features, experimental code, future considerations
|
|
140
|
+
- Group related instructions together
|
|
141
|
+
- Ensure no contradictory instructions exist
|
|
142
|
+
- Remove redundant or outdated information
|
|
143
|
+
- Add a "Priority Index" at the top listing all CRITICAL and IMPORTANT items
|
|
144
|
+
|
|
145
|
+
c) **Optimize for AI Agent Understanding**:
|
|
146
|
+
- Use consistent formatting and structure
|
|
147
|
+
- Provide clear examples for complex instructions
|
|
148
|
+
- Include "WHY" explanations for critical rules
|
|
149
|
+
- Add quick reference sections for common operations
|
|
150
|
+
- Ensure instructions are actionable and unambiguous
|
|
151
|
+
|
|
152
|
+
d) **Validate Completeness**:
|
|
153
|
+
- Ensure ALL critical project knowledge is captured
|
|
154
|
+
- Verify single-path principle (ONE way to do each task)
|
|
155
|
+
- Check that all referenced documentation exists
|
|
156
|
+
- Confirm all tools and dependencies are documented
|
|
157
|
+
- Test that a new AI agent could understand the project from CLAUDE.md alone
|
|
158
|
+
|
|
159
|
+
e) **Add Meta-Instructions Section**:
|
|
160
|
+
- Include a section about how to maintain CLAUDE.md
|
|
161
|
+
- Document when and how to update instructions
|
|
162
|
+
- Provide guidelines for instruction priority levels
|
|
163
|
+
- Add a changelog or last-updated timestamp
|
|
164
|
+
|
|
165
|
+
f) **Follow This CLAUDE.md Template Structure**:
|
|
166
|
+
```markdown
|
|
167
|
+
# Project Name - CLAUDE.md
|
|
168
|
+
|
|
169
|
+
## 🎯 Priority Index
|
|
170
|
+
### 🔴 CRITICAL Instructions
|
|
171
|
+
- [List all critical items with links to their sections]
|
|
172
|
+
|
|
173
|
+
### 🟡 IMPORTANT Instructions
|
|
174
|
+
- [List all important items with links to their sections]
|
|
175
|
+
|
|
176
|
+
## 📋 Project Overview
|
|
177
|
+
[Brief description and purpose]
|
|
178
|
+
|
|
179
|
+
## 🔴 CRITICAL: Security & Data Handling
|
|
180
|
+
[Critical security rules and data handling requirements]
|
|
181
|
+
|
|
182
|
+
## 🔴 CRITICAL: Core Business Rules
|
|
183
|
+
[Non-negotiable business logic and constraints]
|
|
184
|
+
|
|
185
|
+
## 🟡 IMPORTANT: Architecture & Design
|
|
186
|
+
[Key architectural decisions and patterns]
|
|
187
|
+
|
|
188
|
+
## 🟡 IMPORTANT: Development Workflow
|
|
189
|
+
### ONE Way to Build
|
|
190
|
+
### ONE Way to Test
|
|
191
|
+
### ONE Way to Deploy
|
|
192
|
+
|
|
193
|
+
## 🟢 STANDARD: Coding Guidelines
|
|
194
|
+
[Standard practices and conventions]
|
|
195
|
+
|
|
196
|
+
## 🟢 STANDARD: Common Tasks
|
|
197
|
+
[How to perform routine operations]
|
|
198
|
+
|
|
199
|
+
## 📚 Documentation Links
|
|
200
|
+
[Links to additional resources]
|
|
201
|
+
|
|
202
|
+
## ⚪ OPTIONAL: Future Enhancements
|
|
203
|
+
[Nice-to-have features and ideas]
|
|
204
|
+
|
|
205
|
+
## 📝 Meta: Maintaining This Document
|
|
206
|
+
- Last Updated: [timestamp]
|
|
207
|
+
- Update Frequency: [when to update]
|
|
208
|
+
- Priority Guidelines: [how to assign priorities]
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
Please ensure all documentation is clear, concise, and optimized for AI agents to understand and follow.
|
|
212
|
+
Focus on establishing ONE clear way to do ANYTHING in the project.
|
|
213
|
+
The final CLAUDE.md should be a comprehensive, well-organized guide that any AI agent can follow to work effectively on this project.
|
|
214
|
+
"""
|
|
215
|
+
|
|
216
|
+
return base_prompt
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
def build_update_prompt(
|
|
220
|
+
project_path: Path,
|
|
221
|
+
doc_analysis: Dict[str, Any],
|
|
222
|
+
project_type: Optional[str] = None,
|
|
223
|
+
framework: Optional[str] = None,
|
|
224
|
+
ast_analysis: bool = True,
|
|
225
|
+
preserve_custom: bool = True,
|
|
226
|
+
) -> str:
|
|
227
|
+
"""
|
|
228
|
+
Build prompt for update mode.
|
|
229
|
+
|
|
230
|
+
Args:
|
|
231
|
+
project_path: Path to the project directory
|
|
232
|
+
doc_analysis: Analysis results from DocumentationManager
|
|
233
|
+
project_type: Type of project (web, api, cli, library, etc.)
|
|
234
|
+
framework: Specific framework if applicable
|
|
235
|
+
ast_analysis: Enable AST analysis for enhanced documentation
|
|
236
|
+
preserve_custom: Preserve custom sections when updating
|
|
237
|
+
|
|
238
|
+
Returns:
|
|
239
|
+
Formatted prompt string for update mode
|
|
240
|
+
"""
|
|
241
|
+
prompt = f"""Please delegate this task to the Agentic Coder Optimizer agent:
|
|
242
|
+
|
|
243
|
+
UPDATE existing CLAUDE.md documentation for this project.
|
|
244
|
+
|
|
245
|
+
Project Path: {project_path}
|
|
246
|
+
Update Mode: Smart merge with existing content
|
|
247
|
+
"""
|
|
248
|
+
if project_type:
|
|
249
|
+
prompt += f"Project Type: {project_type}\n"
|
|
250
|
+
if framework:
|
|
251
|
+
prompt += f"Framework: {framework}\n"
|
|
252
|
+
|
|
253
|
+
prompt += f"""
|
|
254
|
+
Existing Documentation Analysis:
|
|
255
|
+
- Current CLAUDE.md: {doc_analysis.get("size", 0):,} characters, {doc_analysis.get("lines", 0)} lines
|
|
256
|
+
- Has Priority Index: {"Yes" if doc_analysis.get("has_priority_index") else "No"}
|
|
257
|
+
- Custom Sections: {len(doc_analysis.get("custom_sections", []))} found
|
|
258
|
+
"""
|
|
259
|
+
if preserve_custom and doc_analysis.get("custom_sections"):
|
|
260
|
+
prompt += f"- Preserve Custom Sections: {', '.join(doc_analysis['custom_sections'][:5])}\n"
|
|
261
|
+
|
|
262
|
+
prompt += """
|
|
263
|
+
Please perform the following UPDATE tasks:
|
|
264
|
+
|
|
265
|
+
1. **Review Existing Content**:
|
|
266
|
+
- Analyze current CLAUDE.md structure and content
|
|
267
|
+
- Identify outdated or missing information
|
|
268
|
+
- Preserve valuable custom sections and project-specific knowledge
|
|
269
|
+
|
|
270
|
+
2. **Smart Content Merge**:
|
|
271
|
+
- Update project overview if needed
|
|
272
|
+
- Refresh architecture documentation
|
|
273
|
+
- Update development workflows to ensure single-path principle
|
|
274
|
+
- Merge new standard sections while preserving custom content
|
|
275
|
+
- Remove duplicate or contradictory information
|
|
276
|
+
|
|
277
|
+
3. **Update Priority Organization**:
|
|
278
|
+
- Reorganize content with priority markers (🔴🟡🟢⚪)
|
|
279
|
+
- Ensure critical instructions are at the top
|
|
280
|
+
- Update priority index with all important items
|
|
281
|
+
- Validate instruction clarity and completeness
|
|
282
|
+
|
|
283
|
+
4. **Refresh Technical Content**:
|
|
284
|
+
- Update build/test/deploy commands
|
|
285
|
+
- Verify tool configurations are current
|
|
286
|
+
- Update dependency information
|
|
287
|
+
- Refresh API documentation if applicable
|
|
288
|
+
"""
|
|
289
|
+
if ast_analysis:
|
|
290
|
+
prompt += """
|
|
291
|
+
5. **Update Code Documentation** (using Code Analyzer agent):
|
|
292
|
+
- Re-analyze code structure for changes
|
|
293
|
+
- Update API documentation
|
|
294
|
+
- Refresh architecture diagrams
|
|
295
|
+
- Update function/class documentation
|
|
296
|
+
"""
|
|
297
|
+
prompt += """
|
|
298
|
+
6. **Final Optimization**:
|
|
299
|
+
- Ensure single-path principle throughout
|
|
300
|
+
- Validate all links and references
|
|
301
|
+
- Add/update timestamp in meta section
|
|
302
|
+
- Verify AI agent readability
|
|
303
|
+
|
|
304
|
+
IMPORTANT: This is an UPDATE operation. Intelligently merge new content with existing,
|
|
305
|
+
preserving valuable project-specific information while refreshing standard sections.
|
|
306
|
+
"""
|
|
307
|
+
return prompt
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
def build_enhanced_update_prompt(
|
|
311
|
+
project_path: Path,
|
|
312
|
+
doc_analysis: Dict[str, Any],
|
|
313
|
+
git_insights: Dict[str, Any],
|
|
314
|
+
log_insights: Dict[str, Any],
|
|
315
|
+
memory_insights: Dict[str, Any],
|
|
316
|
+
project_type: Optional[str] = None,
|
|
317
|
+
framework: Optional[str] = None,
|
|
318
|
+
ast_analysis: bool = True,
|
|
319
|
+
preserve_custom: bool = True,
|
|
320
|
+
) -> str:
|
|
321
|
+
"""
|
|
322
|
+
Build enhanced update prompt with extracted knowledge from multiple sources.
|
|
323
|
+
|
|
324
|
+
This is the AUTO-DETECTED update mode that enriches CLAUDE.md with:
|
|
325
|
+
- Git history insights (architectural decisions, tech changes, workflows)
|
|
326
|
+
- Session log learnings (completed work, patterns)
|
|
327
|
+
- Memory file knowledge (accumulated project wisdom)
|
|
328
|
+
|
|
329
|
+
Args:
|
|
330
|
+
project_path: Path to the project directory
|
|
331
|
+
doc_analysis: Analysis results from DocumentationManager
|
|
332
|
+
git_insights: Extracted git history insights
|
|
333
|
+
log_insights: Extracted session log insights
|
|
334
|
+
memory_insights: Extracted memory file insights
|
|
335
|
+
project_type: Type of project (web, api, cli, library, etc.)
|
|
336
|
+
framework: Specific framework if applicable
|
|
337
|
+
ast_analysis: Enable AST analysis for enhanced documentation
|
|
338
|
+
preserve_custom: Preserve custom sections when updating
|
|
339
|
+
|
|
340
|
+
Returns:
|
|
341
|
+
Formatted prompt string for enhanced update mode
|
|
342
|
+
"""
|
|
343
|
+
prompt = f"""Please delegate this task to the Agentic Coder Optimizer agent:
|
|
344
|
+
|
|
345
|
+
ENHANCED UPDATE of existing CLAUDE.md documentation with extracted project knowledge.
|
|
346
|
+
|
|
347
|
+
Project Path: {project_path}
|
|
348
|
+
Update Mode: Knowledge-enriched smart merge
|
|
349
|
+
"""
|
|
350
|
+
if project_type:
|
|
351
|
+
prompt += f"Project Type: {project_type}\n"
|
|
352
|
+
if framework:
|
|
353
|
+
prompt += f"Framework: {framework}\n"
|
|
354
|
+
|
|
355
|
+
prompt += f"""
|
|
356
|
+
Existing Documentation Analysis:
|
|
357
|
+
- Current CLAUDE.md: {doc_analysis.get("size", 0):,} characters, {doc_analysis.get("lines", 0)} lines
|
|
358
|
+
- Has Priority Index: {"Yes" if doc_analysis.get("has_priority_index") else "No"}
|
|
359
|
+
- Custom Sections: {len(doc_analysis.get("custom_sections", []))} found
|
|
360
|
+
"""
|
|
361
|
+
if preserve_custom and doc_analysis.get("custom_sections"):
|
|
362
|
+
prompt += f"- Preserve Custom Sections: {', '.join(doc_analysis['custom_sections'][:5])}\n"
|
|
363
|
+
|
|
364
|
+
# Add extracted knowledge sections
|
|
365
|
+
prompt += "\n## Extracted Project Knowledge\n\n"
|
|
366
|
+
|
|
367
|
+
# Git insights
|
|
368
|
+
if git_insights.get("available"):
|
|
369
|
+
prompt += "### From Git History (last 90 days):\n\n"
|
|
370
|
+
|
|
371
|
+
if git_insights.get("architectural_decisions"):
|
|
372
|
+
prompt += "**Architectural Patterns Detected:**\n"
|
|
373
|
+
for decision in git_insights["architectural_decisions"][:10]:
|
|
374
|
+
prompt += f"- {decision}\n"
|
|
375
|
+
prompt += "\n"
|
|
376
|
+
|
|
377
|
+
if git_insights.get("tech_stack_changes"):
|
|
378
|
+
prompt += "**Tech Stack Changes:**\n"
|
|
379
|
+
for change in git_insights["tech_stack_changes"][:10]:
|
|
380
|
+
prompt += f"- {change}\n"
|
|
381
|
+
prompt += "\n"
|
|
382
|
+
|
|
383
|
+
if git_insights.get("workflow_patterns"):
|
|
384
|
+
prompt += "**Common Workflows:**\n"
|
|
385
|
+
for workflow in git_insights["workflow_patterns"][:8]:
|
|
386
|
+
prompt += f"- {workflow}\n"
|
|
387
|
+
prompt += "\n"
|
|
388
|
+
|
|
389
|
+
if git_insights.get("hot_files"):
|
|
390
|
+
prompt += "**Hot Files (frequently modified):**\n"
|
|
391
|
+
for file_info in git_insights["hot_files"][:10]:
|
|
392
|
+
prompt += (
|
|
393
|
+
f"- {file_info['path']} ({file_info['modifications']} changes)\n"
|
|
394
|
+
)
|
|
395
|
+
prompt += "\n"
|
|
396
|
+
|
|
397
|
+
# Session log insights
|
|
398
|
+
if log_insights.get("available") and log_insights.get("learnings"):
|
|
399
|
+
prompt += "### From Session Logs:\n\n"
|
|
400
|
+
prompt += "**Recent Learnings from PM Summaries:**\n"
|
|
401
|
+
for learning in log_insights["learnings"][:10]:
|
|
402
|
+
source = learning.get("source", "unknown")
|
|
403
|
+
content = learning.get("content", "")
|
|
404
|
+
# Truncate long content
|
|
405
|
+
if len(content) > 200:
|
|
406
|
+
content = content[:200] + "..."
|
|
407
|
+
prompt += f"- [{source}] {content}\n"
|
|
408
|
+
prompt += "\n"
|
|
409
|
+
|
|
410
|
+
if log_insights.get("common_patterns"):
|
|
411
|
+
prompt += "**Common Task Patterns:**\n"
|
|
412
|
+
prompt += f"- {', '.join(log_insights['common_patterns'][:10])}\n\n"
|
|
413
|
+
|
|
414
|
+
# Memory insights
|
|
415
|
+
if memory_insights.get("available"):
|
|
416
|
+
has_content = False
|
|
417
|
+
|
|
418
|
+
if memory_insights.get("architectural_knowledge"):
|
|
419
|
+
has_content = True
|
|
420
|
+
prompt += "### From Agent Memories:\n\n"
|
|
421
|
+
prompt += "**Architectural Knowledge:**\n"
|
|
422
|
+
for item in memory_insights["architectural_knowledge"][:8]:
|
|
423
|
+
prompt += f"- {item}\n"
|
|
424
|
+
prompt += "\n"
|
|
425
|
+
|
|
426
|
+
if memory_insights.get("implementation_guidelines"):
|
|
427
|
+
if not has_content:
|
|
428
|
+
prompt += "### From Agent Memories:\n\n"
|
|
429
|
+
has_content = True
|
|
430
|
+
prompt += "**Implementation Guidelines:**\n"
|
|
431
|
+
for item in memory_insights["implementation_guidelines"][:8]:
|
|
432
|
+
prompt += f"- {item}\n"
|
|
433
|
+
prompt += "\n"
|
|
434
|
+
|
|
435
|
+
if memory_insights.get("common_mistakes"):
|
|
436
|
+
if not has_content:
|
|
437
|
+
prompt += "### From Agent Memories:\n\n"
|
|
438
|
+
has_content = True
|
|
439
|
+
prompt += "**Common Mistakes to Avoid:**\n"
|
|
440
|
+
for item in memory_insights["common_mistakes"][:8]:
|
|
441
|
+
prompt += f"- {item}\n"
|
|
442
|
+
prompt += "\n"
|
|
443
|
+
|
|
444
|
+
if memory_insights.get("technical_context"):
|
|
445
|
+
if not has_content:
|
|
446
|
+
prompt += "### From Agent Memories:\n\n"
|
|
447
|
+
prompt += "**Current Technical Context:**\n"
|
|
448
|
+
for item in memory_insights["technical_context"][:8]:
|
|
449
|
+
prompt += f"- {item}\n"
|
|
450
|
+
prompt += "\n"
|
|
451
|
+
|
|
452
|
+
# Add update instructions
|
|
453
|
+
prompt += """
|
|
454
|
+
## UPDATE Tasks with Knowledge Integration:
|
|
455
|
+
|
|
456
|
+
1. **Review Existing Content**:
|
|
457
|
+
- Analyze current CLAUDE.md structure and content
|
|
458
|
+
- Identify outdated or missing information
|
|
459
|
+
- Preserve valuable custom sections and project-specific knowledge
|
|
460
|
+
|
|
461
|
+
2. **Integrate Extracted Knowledge**:
|
|
462
|
+
- Merge architectural decisions from git history into Architecture section
|
|
463
|
+
- Add tech stack changes to Technology/Dependencies sections
|
|
464
|
+
- Update workflow patterns in Development Guidelines
|
|
465
|
+
- Incorporate session learnings into relevant sections
|
|
466
|
+
- Merge memory insights into appropriate documentation areas
|
|
467
|
+
- Highlight hot files as critical components
|
|
468
|
+
|
|
469
|
+
3. **Smart Content Merge**:
|
|
470
|
+
- Update project overview with recent developments
|
|
471
|
+
- Refresh architecture documentation with detected patterns
|
|
472
|
+
- Update development workflows with discovered common patterns
|
|
473
|
+
- Ensure single-path principle (ONE way to do each task)
|
|
474
|
+
- Remove duplicate or contradictory information
|
|
475
|
+
|
|
476
|
+
4. **Update Priority Organization**:
|
|
477
|
+
- Reorganize content with priority markers (🔴🟡🟢⚪)
|
|
478
|
+
- Ensure critical instructions are at the top
|
|
479
|
+
- Update priority index with all important items
|
|
480
|
+
- Promote frequently-modified files to IMPORTANT sections
|
|
481
|
+
|
|
482
|
+
5. **Refresh Technical Content**:
|
|
483
|
+
- Update build/test/deploy commands based on workflow patterns
|
|
484
|
+
- Verify tool configurations match tech stack changes
|
|
485
|
+
- Update dependency information with detected changes
|
|
486
|
+
- Refresh API documentation if applicable
|
|
487
|
+
"""
|
|
488
|
+
if ast_analysis:
|
|
489
|
+
prompt += """
|
|
490
|
+
6. **Update Code Documentation** (using Code Analyzer agent):
|
|
491
|
+
- Re-analyze code structure for changes
|
|
492
|
+
- Update API documentation
|
|
493
|
+
- Refresh architecture diagrams
|
|
494
|
+
- Document hot files and critical components
|
|
495
|
+
"""
|
|
496
|
+
prompt += """
|
|
497
|
+
7. **Final Optimization**:
|
|
498
|
+
- Ensure single-path principle throughout
|
|
499
|
+
- Validate all links and references
|
|
500
|
+
- Add/update timestamp in meta section
|
|
501
|
+
- Add "Last Updated" note mentioning knowledge extraction
|
|
502
|
+
- Verify AI agent readability
|
|
503
|
+
|
|
504
|
+
IMPORTANT: This is an ENHANCED UPDATE operation with extracted knowledge.
|
|
505
|
+
Intelligently merge insights from git history, session logs, and agent memories
|
|
506
|
+
into the existing CLAUDE.md while preserving valuable custom content.
|
|
507
|
+
The goal is to create a living document that reflects actual project evolution.
|
|
508
|
+
"""
|
|
509
|
+
return prompt
|
|
510
|
+
|
|
511
|
+
|
|
512
|
+
def build_research_context_prompt(git_analysis: Dict[str, Any], days: int) -> str:
|
|
513
|
+
"""
|
|
514
|
+
Build structured Research agent delegation prompt from git analysis.
|
|
515
|
+
|
|
516
|
+
Args:
|
|
517
|
+
git_analysis: Git analysis data from EnhancedProjectAnalyzer
|
|
518
|
+
days: Number of days analyzed
|
|
519
|
+
|
|
520
|
+
Returns:
|
|
521
|
+
Formatted research prompt for context analysis
|
|
522
|
+
"""
|
|
523
|
+
# Extract key data
|
|
524
|
+
commits = git_analysis.get("commits", [])
|
|
525
|
+
branches = git_analysis.get("branches", [])
|
|
526
|
+
contributors = git_analysis.get("contributors", {})
|
|
527
|
+
file_changes = git_analysis.get("file_changes", {})
|
|
528
|
+
|
|
529
|
+
# Build prompt following Prompt Engineer's template
|
|
530
|
+
prompt = f"""# Project Context Analysis Mission
|
|
531
|
+
|
|
532
|
+
You are Research agent analyzing git history to provide PM with intelligent project context for resuming work.
|
|
533
|
+
|
|
534
|
+
## Analysis Scope
|
|
535
|
+
- **Time Range**: Last {days} days"""
|
|
536
|
+
|
|
537
|
+
# Add adaptive mode note if applicable
|
|
538
|
+
if git_analysis.get("adaptive_mode"):
|
|
539
|
+
actual_days = git_analysis.get("actual_time_span", "extended period")
|
|
540
|
+
prompt += f""" (adaptive: {actual_days} days analyzed)
|
|
541
|
+
- **Note**: {git_analysis.get("reason", "Analysis window adjusted to ensure meaningful context")}"""
|
|
542
|
+
|
|
543
|
+
prompt += f"""
|
|
544
|
+
- **Commits Analyzed**: {len(commits)} commits
|
|
545
|
+
- **Branches**: {", ".join(branches[:5]) if branches else "main"}
|
|
546
|
+
- **Contributors**: {", ".join(contributors.keys()) if contributors else "Unknown"}
|
|
547
|
+
|
|
548
|
+
## Your Mission
|
|
549
|
+
|
|
550
|
+
Analyze git history to answer these questions for PM:
|
|
551
|
+
|
|
552
|
+
1. **What was being worked on?** (Active work streams)
|
|
553
|
+
2. **Why was this work happening?** (Intent and motivation)
|
|
554
|
+
3. **What's the natural next step?** (Continuation recommendations)
|
|
555
|
+
4. **What needs attention?** (Risks, stalls, conflicts)
|
|
556
|
+
|
|
557
|
+
## Git Data Provided
|
|
558
|
+
|
|
559
|
+
### Recent Commits ({min(len(commits), 10)} most recent):
|
|
560
|
+
"""
|
|
561
|
+
|
|
562
|
+
# Add recent commits
|
|
563
|
+
for commit in commits[:10]:
|
|
564
|
+
author = commit.get("author", "Unknown")
|
|
565
|
+
timestamp = commit.get("timestamp", "Unknown date")
|
|
566
|
+
message = commit.get("message", "No message")
|
|
567
|
+
files = commit.get("files", [])
|
|
568
|
+
|
|
569
|
+
prompt += f"\n- **{timestamp}** by {author}"
|
|
570
|
+
prompt += f"\n {message}"
|
|
571
|
+
prompt += f"\n Files changed: {len(files)}\n"
|
|
572
|
+
|
|
573
|
+
# Add file change summary
|
|
574
|
+
if file_changes:
|
|
575
|
+
# Sort by modifications count
|
|
576
|
+
sorted_files = sorted(
|
|
577
|
+
file_changes.items(),
|
|
578
|
+
key=lambda x: x[1].get("modifications", 0),
|
|
579
|
+
reverse=True,
|
|
580
|
+
)
|
|
581
|
+
prompt += "\n### Most Changed Files:\n"
|
|
582
|
+
for file_path, file_data in sorted_files[:10]:
|
|
583
|
+
modifications = file_data.get("modifications", 0)
|
|
584
|
+
file_contributors = file_data.get("contributors", [])
|
|
585
|
+
prompt += f"- {file_path}: {modifications} changes ({len(file_contributors)} contributor{'s' if len(file_contributors) != 1 else ''})\n"
|
|
586
|
+
|
|
587
|
+
# Add contributor summary
|
|
588
|
+
if contributors:
|
|
589
|
+
prompt += "\n### Contributors:\n"
|
|
590
|
+
sorted_contributors = sorted(
|
|
591
|
+
contributors.items(),
|
|
592
|
+
key=lambda x: x[1].get("commits", 0),
|
|
593
|
+
reverse=True,
|
|
594
|
+
)
|
|
595
|
+
for name, info in sorted_contributors[:5]:
|
|
596
|
+
commit_count = info.get("commits", 0)
|
|
597
|
+
prompt += (
|
|
598
|
+
f"- {name}: {commit_count} commit{'s' if commit_count != 1 else ''}\n"
|
|
599
|
+
)
|
|
600
|
+
|
|
601
|
+
# Add analysis instructions
|
|
602
|
+
prompt += """
|
|
603
|
+
|
|
604
|
+
## Analysis Instructions
|
|
605
|
+
|
|
606
|
+
### Phase 1: Work Stream Identification
|
|
607
|
+
Group related commits into thematic work streams. For each stream:
|
|
608
|
+
- **Name**: Infer from commit messages (e.g., "Authentication refactor")
|
|
609
|
+
- **Status**: ongoing/completed/stalled
|
|
610
|
+
- **Commits**: Count of commits in this stream
|
|
611
|
+
- **Intent**: WHY this work (from commit bodies/messages)
|
|
612
|
+
- **Key Files**: Most changed files in this stream
|
|
613
|
+
|
|
614
|
+
### Phase 2: Risk Detection
|
|
615
|
+
Identify:
|
|
616
|
+
- **Stalled Work**: Work streams with no activity >3 days
|
|
617
|
+
- **Anti-Patterns**: WIP commits, temp commits, debug commits
|
|
618
|
+
- **Documentation Lag**: Code changes without doc updates
|
|
619
|
+
- **Conflicts**: Merge conflicts or divergent branches
|
|
620
|
+
|
|
621
|
+
### Phase 3: Recommendations
|
|
622
|
+
Based on analysis:
|
|
623
|
+
1. **Primary Focus**: Most active/recent work to continue
|
|
624
|
+
2. **Quick Wins**: Small tasks that could be finished
|
|
625
|
+
3. **Blockers**: Issues preventing progress
|
|
626
|
+
4. **Next Steps**: Logical continuation points
|
|
627
|
+
|
|
628
|
+
## Output Format
|
|
629
|
+
|
|
630
|
+
Provide a clear markdown summary with:
|
|
631
|
+
|
|
632
|
+
1. **Active Work Streams** (What was being worked on)
|
|
633
|
+
2. **Intent Summary** (Why this work matters)
|
|
634
|
+
3. **Risks Detected** (What needs attention)
|
|
635
|
+
4. **Recommended Next Actions** (What to work on)
|
|
636
|
+
|
|
637
|
+
Keep it concise (<1000 words) but actionable.
|
|
638
|
+
|
|
639
|
+
## Success Criteria
|
|
640
|
+
- Work streams accurately reflect development themes
|
|
641
|
+
- Intent captures the "why" not just "what"
|
|
642
|
+
- Recommendations are specific and actionable
|
|
643
|
+
- Risks are prioritized by impact
|
|
644
|
+
"""
|
|
645
|
+
|
|
646
|
+
return prompt
|
|
647
|
+
|
|
648
|
+
|
|
649
|
+
def build_prompt_engineer_optimization_prompt(
|
|
650
|
+
content: str, estimated_tokens: int
|
|
651
|
+
) -> str:
|
|
652
|
+
"""
|
|
653
|
+
Build prompt for prompt-engineer to optimize CLAUDE.md.
|
|
654
|
+
|
|
655
|
+
Args:
|
|
656
|
+
content: Current CLAUDE.md content to optimize
|
|
657
|
+
estimated_tokens: Estimated token count of current content
|
|
658
|
+
|
|
659
|
+
Returns:
|
|
660
|
+
Formatted prompt string for prompt-engineer optimization
|
|
661
|
+
"""
|
|
662
|
+
return f"""Please delegate this task to the Prompt Engineer agent:
|
|
663
|
+
|
|
664
|
+
Optimize this CLAUDE.md file for conciseness, clarity, and token efficiency while preserving all critical information.
|
|
665
|
+
|
|
666
|
+
## Current CLAUDE.md Statistics
|
|
667
|
+
- Estimated tokens: {estimated_tokens:,}
|
|
668
|
+
- Target reduction: 20-30% if possible
|
|
669
|
+
- Priority: Preserve ALL CRITICAL (🔴) and IMPORTANT (🟡) information
|
|
670
|
+
|
|
671
|
+
## Optimization Goals
|
|
672
|
+
|
|
673
|
+
1. **Remove Redundancy**:
|
|
674
|
+
- Eliminate duplicate information across sections
|
|
675
|
+
- Consolidate similar instructions
|
|
676
|
+
- Remove verbose explanations where brevity suffices
|
|
677
|
+
|
|
678
|
+
2. **Tighten Language**:
|
|
679
|
+
- Use fewer words to convey the same meaning
|
|
680
|
+
- Replace wordy phrases with concise alternatives
|
|
681
|
+
- Remove filler words and unnecessary qualifiers
|
|
682
|
+
|
|
683
|
+
3. **Improve Structure**:
|
|
684
|
+
- Ensure clear hierarchical organization
|
|
685
|
+
- Use priority markers (🔴 🟡 🟢 ⚪) effectively
|
|
686
|
+
- Group related information logically
|
|
687
|
+
- Maintain scannable headings
|
|
688
|
+
|
|
689
|
+
4. **Preserve Critical Content**:
|
|
690
|
+
- Keep ALL security and data handling rules (🔴)
|
|
691
|
+
- Maintain core business logic and constraints (🔴)
|
|
692
|
+
- Preserve architectural decisions (🟡)
|
|
693
|
+
- Keep essential workflows intact (🟡)
|
|
694
|
+
|
|
695
|
+
5. **Apply Claude Best Practices**:
|
|
696
|
+
- Use high-level guidance over prescriptive checklists
|
|
697
|
+
- Provide context for WHY, not just WHAT
|
|
698
|
+
- Ensure instructions are actionable and unambiguous
|
|
699
|
+
- Optimize for AI agent understanding
|
|
700
|
+
|
|
701
|
+
## Current CLAUDE.md Content
|
|
702
|
+
|
|
703
|
+
{content}
|
|
704
|
+
|
|
705
|
+
## Output Requirements
|
|
706
|
+
|
|
707
|
+
Return ONLY the optimized CLAUDE.md content with NO additional explanations.
|
|
708
|
+
The optimized version should:
|
|
709
|
+
- Reduce token count by 20-30% if feasible
|
|
710
|
+
- Maintain all CRITICAL and IMPORTANT instructions
|
|
711
|
+
- Improve clarity and scannability
|
|
712
|
+
- Follow the same structural template (Priority Index, sections with markers)
|
|
713
|
+
|
|
714
|
+
## Quality Criteria
|
|
715
|
+
|
|
716
|
+
✅ All 🔴 CRITICAL items preserved
|
|
717
|
+
✅ All 🟡 IMPORTANT items preserved
|
|
718
|
+
✅ No contradictory instructions
|
|
719
|
+
✅ Clear, concise language throughout
|
|
720
|
+
✅ Logical organization maintained
|
|
721
|
+
✅ Token count reduced meaningfully
|
|
722
|
+
"""
|