claude-mpm 3.7.4__py3-none-any.whl → 3.8.1__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/VERSION +1 -1
- claude_mpm/agents/BASE_PM.md +0 -106
- claude_mpm/agents/INSTRUCTIONS.md +0 -78
- claude_mpm/agents/MEMORY.md +88 -0
- claude_mpm/agents/WORKFLOW.md +86 -0
- claude_mpm/agents/schema/agent_schema.json +1 -1
- claude_mpm/agents/templates/code_analyzer.json +26 -11
- claude_mpm/agents/templates/data_engineer.json +4 -7
- claude_mpm/agents/templates/documentation.json +2 -2
- claude_mpm/agents/templates/engineer.json +2 -2
- claude_mpm/agents/templates/ops.json +3 -8
- claude_mpm/agents/templates/qa.json +2 -3
- claude_mpm/agents/templates/research.json +2 -3
- claude_mpm/agents/templates/security.json +3 -6
- claude_mpm/agents/templates/ticketing.json +4 -9
- claude_mpm/agents/templates/version_control.json +3 -3
- claude_mpm/agents/templates/web_qa.json +4 -4
- claude_mpm/agents/templates/web_ui.json +4 -4
- claude_mpm/cli/__init__.py +2 -2
- claude_mpm/cli/commands/__init__.py +2 -1
- claude_mpm/cli/commands/agents.py +118 -1
- claude_mpm/cli/commands/tickets.py +596 -19
- claude_mpm/cli/parser.py +228 -5
- claude_mpm/config/__init__.py +30 -39
- claude_mpm/config/socketio_config.py +8 -5
- claude_mpm/constants.py +13 -0
- claude_mpm/core/__init__.py +8 -18
- claude_mpm/core/cache.py +596 -0
- claude_mpm/core/claude_runner.py +166 -622
- claude_mpm/core/config.py +5 -1
- claude_mpm/core/constants.py +339 -0
- claude_mpm/core/container.py +461 -22
- claude_mpm/core/exceptions.py +392 -0
- claude_mpm/core/framework_loader.py +208 -93
- claude_mpm/core/interactive_session.py +432 -0
- claude_mpm/core/interfaces.py +424 -0
- claude_mpm/core/lazy.py +467 -0
- claude_mpm/core/logging_config.py +444 -0
- claude_mpm/core/oneshot_session.py +465 -0
- claude_mpm/core/optimized_agent_loader.py +485 -0
- claude_mpm/core/optimized_startup.py +490 -0
- claude_mpm/core/service_registry.py +52 -26
- claude_mpm/core/socketio_pool.py +162 -5
- claude_mpm/core/types.py +292 -0
- claude_mpm/core/typing_utils.py +477 -0
- claude_mpm/dashboard/static/js/components/file-tool-tracker.js +46 -2
- claude_mpm/dashboard/templates/index.html +5 -5
- claude_mpm/hooks/claude_hooks/hook_handler.py +213 -99
- claude_mpm/init.py +2 -1
- claude_mpm/services/__init__.py +78 -14
- claude_mpm/services/agent/__init__.py +24 -0
- claude_mpm/services/agent/deployment.py +2548 -0
- claude_mpm/services/agent/management.py +598 -0
- claude_mpm/services/agent/registry.py +813 -0
- claude_mpm/services/agents/deployment/agent_deployment.py +592 -269
- claude_mpm/services/agents/deployment/async_agent_deployment.py +5 -1
- claude_mpm/services/agents/management/agent_capabilities_generator.py +21 -11
- claude_mpm/services/agents/memory/agent_memory_manager.py +156 -1
- claude_mpm/services/async_session_logger.py +8 -3
- claude_mpm/services/communication/__init__.py +21 -0
- claude_mpm/services/communication/socketio.py +1933 -0
- claude_mpm/services/communication/websocket.py +479 -0
- claude_mpm/services/core/__init__.py +123 -0
- claude_mpm/services/core/base.py +247 -0
- claude_mpm/services/core/interfaces.py +951 -0
- claude_mpm/services/framework_claude_md_generator/section_generators/todo_task_tools.py +23 -23
- claude_mpm/services/framework_claude_md_generator.py +3 -2
- claude_mpm/services/health_monitor.py +4 -3
- claude_mpm/services/hook_service.py +64 -4
- claude_mpm/services/infrastructure/__init__.py +21 -0
- claude_mpm/services/infrastructure/logging.py +202 -0
- claude_mpm/services/infrastructure/monitoring.py +893 -0
- claude_mpm/services/memory/indexed_memory.py +648 -0
- claude_mpm/services/project/__init__.py +21 -0
- claude_mpm/services/project/analyzer.py +864 -0
- claude_mpm/services/project/registry.py +608 -0
- claude_mpm/services/project_analyzer.py +95 -2
- claude_mpm/services/recovery_manager.py +15 -9
- claude_mpm/services/socketio/__init__.py +25 -0
- claude_mpm/services/socketio/handlers/__init__.py +25 -0
- claude_mpm/services/socketio/handlers/base.py +121 -0
- claude_mpm/services/socketio/handlers/connection.py +198 -0
- claude_mpm/services/socketio/handlers/file.py +213 -0
- claude_mpm/services/socketio/handlers/git.py +723 -0
- claude_mpm/services/socketio/handlers/memory.py +27 -0
- claude_mpm/services/socketio/handlers/project.py +25 -0
- claude_mpm/services/socketio/handlers/registry.py +145 -0
- claude_mpm/services/socketio_client_manager.py +12 -7
- claude_mpm/services/socketio_server.py +156 -30
- claude_mpm/services/ticket_manager.py +377 -51
- claude_mpm/utils/agent_dependency_loader.py +66 -15
- claude_mpm/utils/error_handler.py +1 -1
- claude_mpm/utils/robust_installer.py +587 -0
- claude_mpm/validation/agent_validator.py +27 -14
- claude_mpm/validation/frontmatter_validator.py +231 -0
- {claude_mpm-3.7.4.dist-info → claude_mpm-3.8.1.dist-info}/METADATA +74 -41
- {claude_mpm-3.7.4.dist-info → claude_mpm-3.8.1.dist-info}/RECORD +101 -76
- claude_mpm/.claude-mpm/logs/hooks_20250728.log +0 -10
- claude_mpm/agents/agent-template.yaml +0 -83
- claude_mpm/cli/README.md +0 -108
- claude_mpm/cli_module/refactoring_guide.md +0 -253
- claude_mpm/config/async_logging_config.yaml +0 -145
- claude_mpm/core/.claude-mpm/logs/hooks_20250730.log +0 -34
- claude_mpm/dashboard/.claude-mpm/memories/README.md +0 -36
- claude_mpm/dashboard/README.md +0 -121
- claude_mpm/dashboard/static/js/dashboard.js.backup +0 -1973
- claude_mpm/dashboard/templates/.claude-mpm/memories/README.md +0 -36
- claude_mpm/dashboard/templates/.claude-mpm/memories/engineer_agent.md +0 -39
- claude_mpm/dashboard/templates/.claude-mpm/memories/version_control_agent.md +0 -38
- claude_mpm/hooks/README.md +0 -96
- claude_mpm/schemas/agent_schema.json +0 -435
- claude_mpm/services/framework_claude_md_generator/README.md +0 -92
- claude_mpm/services/version_control/VERSION +0 -1
- {claude_mpm-3.7.4.dist-info → claude_mpm-3.8.1.dist-info}/WHEEL +0 -0
- {claude_mpm-3.7.4.dist-info → claude_mpm-3.8.1.dist-info}/entry_points.txt +0 -0
- {claude_mpm-3.7.4.dist-info → claude_mpm-3.8.1.dist-info}/licenses/LICENSE +0 -0
- {claude_mpm-3.7.4.dist-info → claude_mpm-3.8.1.dist-info}/top_level.txt +0 -0
| @@ -1,16 +1,16 @@ | |
| 1 | 
            -
            claude_mpm/VERSION,sha256= | 
| 1 | 
            +
            claude_mpm/VERSION,sha256=g2awpqK9GPuvghdl5JCLhAj7r-O6li59azK4ueBIYlQ,6
         | 
| 2 2 | 
             
            claude_mpm/__init__.py,sha256=ix_J0PHZBz37nVBDEYJmLpwnURlWuBKKQ8rK_00TFpk,964
         | 
| 3 3 | 
             
            claude_mpm/__main__.py,sha256=8IcM9tEbTqSN_er04eKTPX3AGo6qzRiTnPI7KfIf7rw,641
         | 
| 4 | 
            -
            claude_mpm/constants.py,sha256= | 
| 4 | 
            +
            claude_mpm/constants.py,sha256=xdYTQfOdrnp_fp2A-P4gA68X-XMq29cCwF6Xdwg3oQE,5217
         | 
| 5 5 | 
             
            claude_mpm/deployment_paths.py,sha256=JO7-fhhp_AkVB7ZssggHDBbee-r2sokpkqjoqnQLTmM,9073
         | 
| 6 | 
            -
            claude_mpm/init.py,sha256= | 
| 6 | 
            +
            claude_mpm/init.py,sha256=hK_ROp6FsgTjpi-VJ_Z4FJICNEXwchh6F2KOqms-kfI,14938
         | 
| 7 7 | 
             
            claude_mpm/ticket_wrapper.py,sha256=bWjLReYyuHSBguuiRm1d52rHYNHqrPJAOLUbMt4CnuM,836
         | 
| 8 | 
            -
            claude_mpm/.claude-mpm/logs/hooks_20250728.log,sha256=5CAZYZB8sl1mE50SphO3RbdW6E_VVT6YUBCwzN-Y-RI,1244
         | 
| 9 8 | 
             
            claude_mpm/agents/BASE_AGENT_TEMPLATE.md,sha256=VbIyiYPTpYB4FnhultZjjnlqfKKMcPywchTCVKWqE-s,6205
         | 
| 10 | 
            -
            claude_mpm/agents/BASE_PM.md,sha256= | 
| 11 | 
            -
            claude_mpm/agents/INSTRUCTIONS.md,sha256= | 
| 9 | 
            +
            claude_mpm/agents/BASE_PM.md,sha256=WxBF_Mif5a9hdXdr6m9K5X3KWQ6QKywk19pDV_SHNXI,5905
         | 
| 10 | 
            +
            claude_mpm/agents/INSTRUCTIONS.md,sha256=k5VfQUeUCJYxzav6MvtmC-D3XgIH3B_4HSgWuOfz_UQ,8305
         | 
| 11 | 
            +
            claude_mpm/agents/MEMORY.md,sha256=Kohnu829PYJmwSEnvYTRg6ltPCq77qMJ7F-AwRnNnW4,2982
         | 
| 12 | 
            +
            claude_mpm/agents/WORKFLOW.md,sha256=lQvJzacWNr24qML5MjfnY4xlvYPuRRF6A3nEXTolosc,2693
         | 
| 12 13 | 
             
            claude_mpm/agents/__init__.py,sha256=r-p7ervzjLPD7_8dm2tXX_fwvdTZy6KwKA03ofxN3sA,3275
         | 
| 13 | 
            -
            claude_mpm/agents/agent-template.yaml,sha256=koKJn8MCAJx0QNQMHouvIZrwvw5qjPV0U-aV-YVyk6s,2036
         | 
| 14 14 | 
             
            claude_mpm/agents/agent_loader.py,sha256=DgY0CMShaxdANV5GYT1Bd-lYizRKz89KpuR89VRx9GY,59534
         | 
| 15 15 | 
             
            claude_mpm/agents/agent_loader_integration.py,sha256=h07Kmk4D75jmHxz5BucP6oQ5VhqVgQ35Sn5w3hcZNYI,7474
         | 
| 16 16 | 
             
            claude_mpm/agents/agents_metadata.py,sha256=Xju9Yim6XSv2u1J_Swre5VJySbdxxC-9TzpOfXG8ibg,5170
         | 
| @@ -20,20 +20,20 @@ claude_mpm/agents/base_agent_loader.py,sha256=Ur2pcYQXInS_z8MAD3154rvPn-zEpD2fx6 | |
| 20 20 | 
             
            claude_mpm/agents/frontmatter_validator.py,sha256=OR6DWgGxV7b6A6WPAM9ikkDqCJitmp3UgYC45TkB5ZU,22630
         | 
| 21 21 | 
             
            claude_mpm/agents/system_agent_config.py,sha256=Lke4FFjU0Vq3LLo4O7KvtHxadP7agAwC-ljCXK40h_A,23526
         | 
| 22 22 | 
             
            claude_mpm/agents/backups/INSTRUCTIONS.md,sha256=tdekngpZ5RjECYZosOaDSBmXPZsVvZcwDQEmmlw7fOQ,14268
         | 
| 23 | 
            -
            claude_mpm/agents/schema/agent_schema.json,sha256= | 
| 23 | 
            +
            claude_mpm/agents/schema/agent_schema.json,sha256=6fqrQUG3sPVX7IKdcP_LYYZeYt3W9NxNBzSG0-XOBCw,8747
         | 
| 24 24 | 
             
            claude_mpm/agents/templates/__init__.py,sha256=7UyIChghCnkrDctvmCRYr0Wrnn8Oj-eCdgL0KpFy1Mo,2668
         | 
| 25 | 
            -
            claude_mpm/agents/templates/code_analyzer.json,sha256= | 
| 26 | 
            -
            claude_mpm/agents/templates/data_engineer.json,sha256= | 
| 27 | 
            -
            claude_mpm/agents/templates/documentation.json,sha256= | 
| 28 | 
            -
            claude_mpm/agents/templates/engineer.json,sha256= | 
| 29 | 
            -
            claude_mpm/agents/templates/ops.json,sha256= | 
| 30 | 
            -
            claude_mpm/agents/templates/qa.json,sha256= | 
| 31 | 
            -
            claude_mpm/agents/templates/research.json,sha256= | 
| 32 | 
            -
            claude_mpm/agents/templates/security.json,sha256= | 
| 33 | 
            -
            claude_mpm/agents/templates/ticketing.json,sha256= | 
| 34 | 
            -
            claude_mpm/agents/templates/version_control.json,sha256= | 
| 35 | 
            -
            claude_mpm/agents/templates/web_qa.json,sha256= | 
| 36 | 
            -
            claude_mpm/agents/templates/web_ui.json,sha256= | 
| 25 | 
            +
            claude_mpm/agents/templates/code_analyzer.json,sha256=T6uM2pyzIhtL5vS7XKdNIrB_KxIatyOQv5dtT_7lmGM,17722
         | 
| 26 | 
            +
            claude_mpm/agents/templates/data_engineer.json,sha256=Dwwts56-z_Trh_gSIqGJBcjoNXBTDz0AuVdiA3T-kY4,15248
         | 
| 27 | 
            +
            claude_mpm/agents/templates/documentation.json,sha256=Cvk3mdmvWHA8SMEwS9zXtViMIUy2Q34JrYRLkV5nYdM,11905
         | 
| 28 | 
            +
            claude_mpm/agents/templates/engineer.json,sha256=C_90fbF54AZk8gwuxxLOTA5H8aXCt-7AwGWMN87JAxw,16570
         | 
| 29 | 
            +
            claude_mpm/agents/templates/ops.json,sha256=pXDc2RUQVv5qqDtZ9LGHXYFoccNkH5mBYIYHXSqp1h4,13776
         | 
| 30 | 
            +
            claude_mpm/agents/templates/qa.json,sha256=ObztCsMr9haahOaHvaLDRHYj1TZwRxECuzluKscUb_M,10807
         | 
| 31 | 
            +
            claude_mpm/agents/templates/research.json,sha256=fQt8m1jS_qiowa239AiYkbJ2ab3bKZ2Pi8cG0eRCV2Y,15319
         | 
| 32 | 
            +
            claude_mpm/agents/templates/security.json,sha256=KAJOIZeYUPbnC83S2q7ufwdmpS1xrEwWW6H9bvSNVdo,12349
         | 
| 33 | 
            +
            claude_mpm/agents/templates/ticketing.json,sha256=QnLtEQjQ43JDoSWNEDN2R_nrvIsW4quA9fSPCY9cbZE,28255
         | 
| 34 | 
            +
            claude_mpm/agents/templates/version_control.json,sha256=yaRwaFA2JjMzCfGki2RIylKytjiVcn-lJKJ3jzTbuyY,11692
         | 
| 35 | 
            +
            claude_mpm/agents/templates/web_qa.json,sha256=4enHHY0KonWE7c2zS_P7JPoOG1foarMtI4CzUpZp49k,17634
         | 
| 36 | 
            +
            claude_mpm/agents/templates/web_ui.json,sha256=M4ILRYG_EhIilUcu93XVlO51BiVh72M4p7XvUbTqkcs,22752
         | 
| 37 37 | 
             
            claude_mpm/agents/templates/.claude-mpm/memories/README.md,sha256=gDuLkzgcELaaoEB5Po70F0qabTu11vBi1PnUrYCK3fw,1098
         | 
| 38 38 | 
             
            claude_mpm/agents/templates/.claude-mpm/memories/engineer_agent.md,sha256=oX-L8D2oyS-NAoe5UNVTbfmLWYTpp1gYq6dKAm6KxLI,1150
         | 
| 39 39 | 
             
            claude_mpm/agents/templates/.claude-mpm/memories/qa_agent.md,sha256=3GOmBq3t3y1-mvWC7_lJ4ltsujJ14wCZCSzEVWCIrz8,1065
         | 
| @@ -47,70 +47,74 @@ claude_mpm/agents/templates/backup/qa_agent_20250726_234551.json,sha256=_FHWnUeh | |
| 47 47 | 
             
            claude_mpm/agents/templates/backup/research_agent_20250726_234551.json,sha256=o4n_sqSbjnsFRELB2q501vgwm-o2tQNLJLYvnVP9LWU,5629
         | 
| 48 48 | 
             
            claude_mpm/agents/templates/backup/security_agent_20250726_234551.json,sha256=l5YuD-27CxKSOsRLv0bDY_tCZyds0yGbeizLb8paeFY,2322
         | 
| 49 49 | 
             
            claude_mpm/agents/templates/backup/version_control_agent_20250726_234551.json,sha256=too38RPTLJ9HutCMn0nfmEdCj2me241dx5tUYDFtu94,2143
         | 
| 50 | 
            -
            claude_mpm/cli/ | 
| 51 | 
            -
            claude_mpm/cli/__init__.py,sha256=5LuZoio9fl5UEWVKblC9r7f60UlsQxY_iHCihagw--I,6985
         | 
| 50 | 
            +
            claude_mpm/cli/__init__.py,sha256=gm_YJQ-4tGZbEP3IB-Px3KxQJjObHCO_-2r_z7qsgvM,6989
         | 
| 52 51 | 
             
            claude_mpm/cli/__main__.py,sha256=vShalycGU13i1-OOixEb_bjl8da4_FolrKdvoiZB-64,769
         | 
| 53 | 
            -
            claude_mpm/cli/parser.py,sha256= | 
| 52 | 
            +
            claude_mpm/cli/parser.py,sha256=qdB3ImlWVJplw0eVGztEOi3zvLbHCKKZ3dNzrKULE-M,30708
         | 
| 54 53 | 
             
            claude_mpm/cli/ticket_cli.py,sha256=Jftgan7t7ZGNWo9zuZoPcw5zItCrVpBjPSOWz3FuIXE,919
         | 
| 55 54 | 
             
            claude_mpm/cli/utils.py,sha256=qNIbQcA6iE46lsve-GyoIw6eyd9ksHZz3tQA4bSmtt8,6325
         | 
| 56 | 
            -
            claude_mpm/cli/commands/__init__.py,sha256= | 
| 57 | 
            -
            claude_mpm/cli/commands/agents.py,sha256= | 
| 55 | 
            +
            claude_mpm/cli/commands/__init__.py,sha256=INWIDbjUthoUNwu2DnmFQPlvXwo7rfZbSsI6SFXyCAQ,671
         | 
| 56 | 
            +
            claude_mpm/cli/commands/agents.py,sha256=zDmoUxhZVqFtOJc7FInWJWSR2gJz85Or2Dv2-aos0NY,33461
         | 
| 58 57 | 
             
            claude_mpm/cli/commands/aggregate.py,sha256=rFFIYlOosGnw_DvTuWKw_6sxJeYag3RdACPSz0RHZyE,14869
         | 
| 59 58 | 
             
            claude_mpm/cli/commands/config.py,sha256=50LzTVlvR1LbeW25i-oSx4D6BZGa48DXuLLGXKhejyk,9919
         | 
| 60 59 | 
             
            claude_mpm/cli/commands/info.py,sha256=ETL6jC08OTQVTPjs219Y0m3FzfKOUlI0-yI81AI8FXY,2990
         | 
| 61 60 | 
             
            claude_mpm/cli/commands/memory.py,sha256=ymw4EatEKHfvvMHSy6dr4-x9OB7e1nZdJS0EP0f5paI,37350
         | 
| 62 61 | 
             
            claude_mpm/cli/commands/monitor.py,sha256=80_tmSdfn_2cYpzxxPu9GnvFW0eixlSJ4wCqbn8VSCM,12407
         | 
| 63 62 | 
             
            claude_mpm/cli/commands/run.py,sha256=8RiN-7whjqJ83zlYDzYSXOhkpuwQf21eZzGoGMj85k4,40097
         | 
| 64 | 
            -
            claude_mpm/cli/commands/tickets.py,sha256= | 
| 63 | 
            +
            claude_mpm/cli/commands/tickets.py,sha256=c2v8i510cvw8hvaPjpZR4jnSmLZRyw0xJr3wwzAh9TE,21029
         | 
| 65 64 | 
             
            claude_mpm/cli_module/__init__.py,sha256=CkMp4gzWKoZZF_qKyBDi2sQaZw_GLWZYLtKouv-4f8s,390
         | 
| 66 65 | 
             
            claude_mpm/cli_module/args.py,sha256=nilYpziBsoEySO4W1hQ2MRJyn9TFx3c3TrucyMMhRtk,7970
         | 
| 67 66 | 
             
            claude_mpm/cli_module/commands.py,sha256=CBNfO-bXrZ0spjeW_7-swprEq5V4PQSc0qhl9SLP5UU,7168
         | 
| 68 67 | 
             
            claude_mpm/cli_module/migration_example.py,sha256=C-_GbsW8dGzutnNeRLLld74ibDLyAOQx0stdpYZS0hs,6137
         | 
| 69 | 
            -
            claude_mpm/ | 
| 70 | 
            -
            claude_mpm/config/__init__.py,sha256=xte4oPG1ubIKhzne1do7slU6FbGebXin_QmyzGRn8c8,1114
         | 
| 68 | 
            +
            claude_mpm/config/__init__.py,sha256=KTJkOHVtC1t6goMkj2xaQWZKZfokEHNw0wxPE48bl1g,828
         | 
| 71 69 | 
             
            claude_mpm/config/agent_config.py,sha256=QS-25LSiNz4uOocjIM_FX_SGoRQHJOfkBZCKlz09K5k,13830
         | 
| 72 | 
            -
            claude_mpm/config/async_logging_config.yaml,sha256=SBnTiykFxPpHU5yV-oFeRPAzTP7ewRbdl7dt3PPADds,3805
         | 
| 73 70 | 
             
            claude_mpm/config/paths.py,sha256=bOxSLNPBDQ3GM4NupY4Z0Jrxykgtw40z92Ytc-LMCuo,9670
         | 
| 74 | 
            -
            claude_mpm/config/socketio_config.py,sha256= | 
| 75 | 
            -
            claude_mpm/core/__init__.py,sha256= | 
| 71 | 
            +
            claude_mpm/config/socketio_config.py,sha256=rf5XKtdAKeypwZZPF8r6uSHnJHVXeMmX1YiYQmzUOZo,9727
         | 
| 72 | 
            +
            claude_mpm/core/__init__.py,sha256=5Hdb4fLdMEqXdOeBJB0zFGJx8CxtaSRYIiD-foiz3yQ,874
         | 
| 76 73 | 
             
            claude_mpm/core/agent_name_normalizer.py,sha256=-X68oz3_74t9BRbHA54NEGyjy0xjTsGp_sCUHDtKp1s,9269
         | 
| 77 74 | 
             
            claude_mpm/core/agent_registry.py,sha256=YvEu-ZBc7XBi9KC2ZV8sWbVAuk0iwi38tg2cK45ZWb4,22521
         | 
| 78 75 | 
             
            claude_mpm/core/agent_session_manager.py,sha256=6alXQr4gnMR-unT4J1ryEtTxJqQolA0-NgPQN6X3lqY,11212
         | 
| 79 76 | 
             
            claude_mpm/core/base_service.py,sha256=qWI_rUybHmmKroptJxcE4rzPBhK8yeMKIt2JqnqJB7E,29125
         | 
| 80 | 
            -
            claude_mpm/core/ | 
| 81 | 
            -
            claude_mpm/core/ | 
| 77 | 
            +
            claude_mpm/core/cache.py,sha256=QoDzPSs6LFA4aKvoBe_PYdTLn0KbIYL4YlN-Z2iiPoc,18164
         | 
| 78 | 
            +
            claude_mpm/core/claude_runner.py,sha256=stIDHiyCRhl456QvqGGn03h1qZCyzsvoqM3BtOaLa6E,64885
         | 
| 79 | 
            +
            claude_mpm/core/config.py,sha256=JsoRR32POBKZkEUWOhVR4lbDb-YlUYqJ8Pl-0cjMU2g,28661
         | 
| 82 80 | 
             
            claude_mpm/core/config_aliases.py,sha256=uilRxeIVMY4ZM_I7lnUeR0n4_nmiOpW2jY2_aW4udNA,10105
         | 
| 83 81 | 
             
            claude_mpm/core/config_paths.py,sha256=SwoB02p7GVw5pnEasC5wPyjfFZKxCsQvQmepRCpm-Es,4971
         | 
| 84 | 
            -
            claude_mpm/core/ | 
| 82 | 
            +
            claude_mpm/core/constants.py,sha256=kR_3uG7iW4vNk780xyYYE3LZ7ERZjCpAzELdFov-Fws,12106
         | 
| 83 | 
            +
            claude_mpm/core/container.py,sha256=wtKBDNd0NeXSys_wGmjLFYnEeRXBFswrw7FbZrnmGMM,30217
         | 
| 84 | 
            +
            claude_mpm/core/exceptions.py,sha256=6zmggUjH0rV9qOUUPJyAprHAaoM1xubK6C_4fp7f1xE,15065
         | 
| 85 85 | 
             
            claude_mpm/core/factories.py,sha256=hdC1BwS8gIYXt7NxoJxas3URIPxkWU8FcRbuy31ctB0,6310
         | 
| 86 | 
            -
            claude_mpm/core/framework_loader.py,sha256= | 
| 86 | 
            +
            claude_mpm/core/framework_loader.py,sha256=LZSwPw8NWKoQ8k_pIUwoADwYtp7yA6mM4Ff2e6L6qaw,32280
         | 
| 87 87 | 
             
            claude_mpm/core/hook_manager.py,sha256=pVjVTu54FvpzI4F91VWX-hNStTeQelKCUM3qLjE8MhE,7045
         | 
| 88 88 | 
             
            claude_mpm/core/injectable_service.py,sha256=7fOny9c6x8IJ9hVZmFql1eNDXXB1jcWbsxfTKbMZk74,7497
         | 
| 89 | 
            -
            claude_mpm/core/ | 
| 89 | 
            +
            claude_mpm/core/interactive_session.py,sha256=Hj7ES1MkJBkzxxCJa-zVp9kVOreJxxnjYTS7_mjEyA0,17035
         | 
| 90 | 
            +
            claude_mpm/core/interfaces.py,sha256=9cUwfnnUCiRv-19BXJTZ2zPKMQRZVBVGGoRsx0wgWOE,27660
         | 
| 91 | 
            +
            claude_mpm/core/lazy.py,sha256=xxICDQI3U-sxVBPTIoTdkDLznalW8EczIrpR87YSNH0,15341
         | 
| 90 92 | 
             
            claude_mpm/core/logger.py,sha256=d5pb81uIKGIw1TeEEI8yW5q4hqCVBUrq6Jjz6smW_7c,15916
         | 
| 93 | 
            +
            claude_mpm/core/logging_config.py,sha256=ygj0hfH8YSa_d6Bae-WHFXnav44AmTmrtqpeSsn1jJI,14594
         | 
| 91 94 | 
             
            claude_mpm/core/minimal_framework_loader.py,sha256=liYS4IyuW_aFK7yhRDZwTwT-3q09fT3wIJSUzkI93Ko,3673
         | 
| 92 95 | 
             
            claude_mpm/core/mixins.py,sha256=rTEH-7FDpNiLB8oo6mSb0CLarJklv4fDJw1xM-gr5wI,5599
         | 
| 96 | 
            +
            claude_mpm/core/oneshot_session.py,sha256=RmjXX7cLrt2Cqw53-m2_XWnc_OAswa258p1zSVUeLBQ,17542
         | 
| 97 | 
            +
            claude_mpm/core/optimized_agent_loader.py,sha256=dJEFVyLI6AXf4t_3ZNJMt_qHvt4Wj1Jyg3oUytbsFMc,16656
         | 
| 98 | 
            +
            claude_mpm/core/optimized_startup.py,sha256=bjm3e6YGSQP6i75664A2KEQAOENuoBYIxX-kCgj2VxM,16176
         | 
| 93 99 | 
             
            claude_mpm/core/pm_hook_interceptor.py,sha256=PRaloqgxn-Alt9HflrywYXRL2GL3Ixb8Wxov8GfAMMU,7173
         | 
| 94 | 
            -
            claude_mpm/core/service_registry.py,sha256= | 
| 100 | 
            +
            claude_mpm/core/service_registry.py,sha256=m8V1ifkuvFjTw5jB0gyAjybiqBOxusA7j22SUxqitsg,11903
         | 
| 95 101 | 
             
            claude_mpm/core/session_manager.py,sha256=D6ZA7bHAgfdkv0nLKjza0FKDng5iqi___IESrb3nSuk,8292
         | 
| 96 | 
            -
            claude_mpm/core/socketio_pool.py,sha256= | 
| 102 | 
            +
            claude_mpm/core/socketio_pool.py,sha256=sC5gcKo6t_TWC2Reu22EbD3ug-zK-_yWAInWj5tEBCo,29496
         | 
| 97 103 | 
             
            claude_mpm/core/tool_access_control.py,sha256=htZbDhC8s7D7BVqfmk0BwRrYJnlnUAk8_NeJKOaeNlg,6632
         | 
| 98 | 
            -
            claude_mpm/core | 
| 99 | 
            -
            claude_mpm/ | 
| 104 | 
            +
            claude_mpm/core/types.py,sha256=Ybl7cmMXC34hybkFO2x_YQr88yH1PzMJOhGNkd4URpw,7817
         | 
| 105 | 
            +
            claude_mpm/core/typing_utils.py,sha256=QQQFPz_7SaWg1CBuReGM5GmVQ9oWoQPqEUWrgvDDgxU,13392
         | 
| 100 106 | 
             
            claude_mpm/dashboard/index.html,sha256=lXd4WCDn46w9a6edUpGQIy5DtCmiTvDerd1vY97Ule8,451
         | 
| 101 107 | 
             
            claude_mpm/dashboard/open_dashboard.py,sha256=aXUc6LzUMwmTQMkl_h2jjvICimr-ED4FPMHP_9mnrgQ,1108
         | 
| 102 108 | 
             
            claude_mpm/dashboard/test_dashboard.html,sha256=Aakmm9O-pWld_CCXLuUBOJC81Ix9D1avytTN93u0zfc,15090
         | 
| 103 | 
            -
            claude_mpm/dashboard/.claude-mpm/memories/README.md,sha256=gDuLkzgcELaaoEB5Po70F0qabTu11vBi1PnUrYCK3fw,1098
         | 
| 104 109 | 
             
            claude_mpm/dashboard/static/css/dashboard.css,sha256=z2Z9jLWoPsC71gdQQML9D9Dkr54XnpKhcz4jomCKfdY,49692
         | 
| 105 110 | 
             
            claude_mpm/dashboard/static/js/dashboard-original.js,sha256=MfrEvUbvB-sU67wslVBEYmk2q9d0s2a_u1NWodJNQrc,162374
         | 
| 106 111 | 
             
            claude_mpm/dashboard/static/js/dashboard.js,sha256=vCRjE6HfxQ4VGqe8sML2_8lX0w6qoaZF0AmWjKVldpM,72056
         | 
| 107 | 
            -
            claude_mpm/dashboard/static/js/dashboard.js.backup,sha256=UNqDPBwzJ1aZAVCxT-FGBY13nF1Q6W2UUUZggNZnOxY,71607
         | 
| 108 112 | 
             
            claude_mpm/dashboard/static/js/socket-client.js,sha256=hjh-HGAlTpaX0Cr6A7DG75TZjujPFcRQSdw7FrysCWQ,18912
         | 
| 109 113 | 
             
            claude_mpm/dashboard/static/js/components/agent-inference.js,sha256=xlH3ka8Ev-WybsMp5wAHTQyJzqpht6n3iksmgGO8nfc,27889
         | 
| 110 114 | 
             
            claude_mpm/dashboard/static/js/components/event-processor.js,sha256=7CsQw1WtKuhV_uj5AaVNMYj6PAAOcT77dxyucBDqs4w,25428
         | 
| 111 115 | 
             
            claude_mpm/dashboard/static/js/components/event-viewer.js,sha256=kbRtHcsR3ZmMGK2jmTd3MJ1Ga6FkZJ0IQNrdmGoSrMY,32810
         | 
| 112 116 | 
             
            claude_mpm/dashboard/static/js/components/export-manager.js,sha256=vaBVwLnjzmS_euyeG5Kuq-LHbINcOAcMdibZtgvrUJk,12032
         | 
| 113 | 
            -
            claude_mpm/dashboard/static/js/components/file-tool-tracker.js,sha256= | 
| 117 | 
            +
            claude_mpm/dashboard/static/js/components/file-tool-tracker.js,sha256=wFK0gnn_vSIM-6aGfC_kNmLHA4E_l8-68x7AUtM8084,26430
         | 
| 114 118 | 
             
            claude_mpm/dashboard/static/js/components/hud-library-loader.js,sha256=LDeHIgoSc_ucgWOWgKqXogeKwf9ClGJTBUErLG3SxzE,7289
         | 
| 115 119 | 
             
            claude_mpm/dashboard/static/js/components/hud-manager.js,sha256=W-mUqEAiR6zIQAoTT-Tz3_OpwnNRg3KjV_3Ujm6LG04,26538
         | 
| 116 120 | 
             
            claude_mpm/dashboard/static/js/components/hud-visualizer.js,sha256=C78tZ9if-qhxhfUX3-PMezCBSw9apb3Exp_R23ZmU7I,62850
         | 
| @@ -119,69 +123,73 @@ claude_mpm/dashboard/static/js/components/session-manager.js,sha256=9BkA4NzM_4k9 | |
| 119 123 | 
             
            claude_mpm/dashboard/static/js/components/socket-manager.js,sha256=x0mKU7gIpIkfAPVyCY3i6Idy_QbxfW5Pc3vqv4zgSvg,12362
         | 
| 120 124 | 
             
            claude_mpm/dashboard/static/js/components/ui-state-manager.js,sha256=5Ligdos7L_UTWMtCW34Y7BNh7msdd9ArCr-7Yr9-VS8,12979
         | 
| 121 125 | 
             
            claude_mpm/dashboard/static/js/components/working-directory.js,sha256=YGyTP0vCaRc9qR7g2d1INShG0-0_X-xkqCW2IF82eXc,33213
         | 
| 122 | 
            -
            claude_mpm/dashboard/templates/index.html,sha256= | 
| 123 | 
            -
            claude_mpm/dashboard/templates/.claude-mpm/memories/README.md,sha256=gDuLkzgcELaaoEB5Po70F0qabTu11vBi1PnUrYCK3fw,1098
         | 
| 124 | 
            -
            claude_mpm/dashboard/templates/.claude-mpm/memories/engineer_agent.md,sha256=t8WHtbTdnh9lKJPaHPD-3nynA7kMCogaEGER-orO4bs,1150
         | 
| 125 | 
            -
            claude_mpm/dashboard/templates/.claude-mpm/memories/version_control_agent.md,sha256=tHMYDLOkL06iaiuI0Lt-UK81iJxMaa8APWfgPXc46nw,1091
         | 
| 126 | 
            +
            claude_mpm/dashboard/templates/index.html,sha256=vsE5vGsG00q-X6_vqtLF2fVCiCRbCNmxt9axUQSK-Sw,15027
         | 
| 126 127 | 
             
            claude_mpm/experimental/cli_enhancements.py,sha256=-N5f2u9TaxUcOJegUd3lt1FRz5ErEyYUvvgrNmMRL7Q,11814
         | 
| 127 128 | 
             
            claude_mpm/generators/__init__.py,sha256=l53aBn6kBQSDz3b6bZkMCJBcEmYnV9hHEZq8LKzXgH8,152
         | 
| 128 129 | 
             
            claude_mpm/generators/agent_profile_generator.py,sha256=2HjOscogSyvrtQj8KwdgNPS6Ym_QvgX1BMeauQZewZA,5751
         | 
| 129 | 
            -
            claude_mpm/hooks/README.md,sha256=wrj5GP0aiPzx0vQrZlE4I1JaQ_JaO_kdQPj7pgfiQKc,3129
         | 
| 130 130 | 
             
            claude_mpm/hooks/__init__.py,sha256=Y3JJ_mEtvRP07r_gXkju4c0s18bjIXGH1uAbhSw1ES0,166
         | 
| 131 131 | 
             
            claude_mpm/hooks/base_hook.py,sha256=a4V2EKEG02QQB0h-pnxhZI-fouKBLYbdBLckcaNuf0k,5098
         | 
| 132 132 | 
             
            claude_mpm/hooks/memory_integration_hook.py,sha256=z0I5R4rsmLx3mzYf7QLeMTYbRShagjS6u3ASyc4XLv0,16311
         | 
| 133 133 | 
             
            claude_mpm/hooks/tool_call_interceptor.py,sha256=08_Odgm6Sg1zBJhGjwzVa03AReeBPZHTjndyjEO99cY,7629
         | 
| 134 134 | 
             
            claude_mpm/hooks/validation_hooks.py,sha256=7TU2N4SzCm2nwpsR0xiNKsHQNsWODnOVAmK9jHq1QqM,6582
         | 
| 135 135 | 
             
            claude_mpm/hooks/claude_hooks/__init__.py,sha256=bMUwt2RzDGAcEbtDMA7vWS1uJsauOY0OixIe4pHwgQ0,129
         | 
| 136 | 
            -
            claude_mpm/hooks/claude_hooks/hook_handler.py,sha256= | 
| 136 | 
            +
            claude_mpm/hooks/claude_hooks/hook_handler.py,sha256=3Y1zqQVn8a3WfsQN9CUYX3Ay4fvVEFuM8ErkGNwsIv4,78067
         | 
| 137 137 | 
             
            claude_mpm/hooks/claude_hooks/hook_wrapper.sh,sha256=JBbedWNs1EHaUsAkmqfPv_tWxV_DcRP707hma74oHU0,2370
         | 
| 138 138 | 
             
            claude_mpm/models/__init__.py,sha256=vy2NLX2KT9QeH76SjCYh9dOYKPLRgxGrnwkQFAg08gc,465
         | 
| 139 139 | 
             
            claude_mpm/models/agent_definition.py,sha256=y9XQOED_maOyiYKhNB8H8MfJJMBN0vIYPS_wCXnRJmA,6647
         | 
| 140 140 | 
             
            claude_mpm/models/agent_session.py,sha256=cBl71q33TIBX8S6U1w2UnKOjEWyypFB04s0BCyKv0iQ,20174
         | 
| 141 | 
            -
            claude_mpm/schemas/agent_schema.json,sha256=T6yRidCHiRbeXYj1MqZJkepiOfUSN9kwNcU28Zqdi_k,13911
         | 
| 142 141 | 
             
            claude_mpm/scripts/__init__.py,sha256=zKYLZfT0P5z7C7r1YrhsTDnnyFXY-2awxhLVPYx68ek,552
         | 
| 143 142 | 
             
            claude_mpm/scripts/socketio_daemon.py,sha256=93jzq-h5GQRK-xYpLaovaqNAXtwR_ZqYjmEMmFn0xE8,9741
         | 
| 144 143 | 
             
            claude_mpm/scripts/start_activity_logging.py,sha256=9xTu6Kd9lmCx17vMmoAGRXegoaZIVqLzLJoXQDeZ9Yw,2917
         | 
| 145 | 
            -
            claude_mpm/services/__init__.py,sha256= | 
| 146 | 
            -
            claude_mpm/services/async_session_logger.py,sha256= | 
| 144 | 
            +
            claude_mpm/services/__init__.py,sha256=4sQ3HgvZnZQuEXBiEYR1u34lDql7upAQUgfd5msBF70,7106
         | 
| 145 | 
            +
            claude_mpm/services/async_session_logger.py,sha256=bCQ-7dlkZlbffTcG2b-CO5Y9UZoBvHwwyu1Ueaqo2Os,21829
         | 
| 147 146 | 
             
            claude_mpm/services/claude_session_logger.py,sha256=VgXOo45k2hCqxLGyHzuOmdQZRk0-S8KVzVUNHas7Bbk,10535
         | 
| 148 147 | 
             
            claude_mpm/services/event_aggregator.py,sha256=Ty2hwDS3IbH9PD1u7NPbPAJM-UFcuOTNeCJ0Tns84LA,20478
         | 
| 149 148 | 
             
            claude_mpm/services/exceptions.py,sha256=Q7yUnkxRvm8jAQgdIhW7opAgWVemlVRjGPYTm8EyHjg,25800
         | 
| 150 | 
            -
            claude_mpm/services/framework_claude_md_generator.py,sha256= | 
| 151 | 
            -
            claude_mpm/services/health_monitor.py,sha256= | 
| 152 | 
            -
            claude_mpm/services/hook_service.py,sha256= | 
| 149 | 
            +
            claude_mpm/services/framework_claude_md_generator.py,sha256=ngmhfq5pHqhu0ump3cEWz499w0Pwc7qA91fZvkdlotY,23116
         | 
| 150 | 
            +
            claude_mpm/services/health_monitor.py,sha256=OPyT976wENCMFzid88ovG5HLqCo71evYqTVn5lsJ4SU,33882
         | 
| 151 | 
            +
            claude_mpm/services/hook_service.py,sha256=njijIp95S5Hnm6UONP_XfHqiDw7QZOQLmohZSvnNKdM,16642
         | 
| 153 152 | 
             
            claude_mpm/services/optimized_hook_service.py,sha256=GIh86NbOwdUQ2Fax6cf5kqcmBXyWbORrD5m1U2dAdF4,19010
         | 
| 154 | 
            -
            claude_mpm/services/project_analyzer.py,sha256= | 
| 153 | 
            +
            claude_mpm/services/project_analyzer.py,sha256=6mOt18BZaIRm5lzGWOS1bKUFtvaOxPb42CAw2iTzG8M,37297
         | 
| 155 154 | 
             
            claude_mpm/services/project_registry.py,sha256=Nxs-c1YoinGW_evnHn6EmD9nwM5cMKERjeWpJOiUtoY,24608
         | 
| 156 | 
            -
            claude_mpm/services/recovery_manager.py,sha256= | 
| 155 | 
            +
            claude_mpm/services/recovery_manager.py,sha256=WW0GEbab71qJ80bhnzdYjgmOabi1S-Kj5toNqqr6Z7E,26180
         | 
| 157 156 | 
             
            claude_mpm/services/response_tracker.py,sha256=QdktFGGuV653WYnDKbEiiGXfb_B8zVjRB0lS4I52TbI,9047
         | 
| 158 | 
            -
            claude_mpm/services/socketio_client_manager.py,sha256= | 
| 159 | 
            -
            claude_mpm/services/socketio_server.py,sha256= | 
| 157 | 
            +
            claude_mpm/services/socketio_client_manager.py,sha256=WAfCm5AzWo2sNjzJGWOhyvJv3ah-KiGAk7-rgl9V7FU,18344
         | 
| 158 | 
            +
            claude_mpm/services/socketio_server.py,sha256=C4uvt7BgtX8n_xE77CDPEdztygkZUEPqkLix0kcBB8k,90265
         | 
| 160 159 | 
             
            claude_mpm/services/standalone_socketio_server.py,sha256=TfdtwdtlKA6cZyTon9O7zkSeu0H-1HpW0te7vu1r3o0,55214
         | 
| 161 | 
            -
            claude_mpm/services/ticket_manager.py,sha256= | 
| 160 | 
            +
            claude_mpm/services/ticket_manager.py,sha256=33w3UX87ld57Pa1NgjhjWBo1-zGeIrQOMpzLFAy4iFU,22299
         | 
| 162 161 | 
             
            claude_mpm/services/ticket_manager_di.py,sha256=pIsIGncbboKzBYSRQTO7ZX5MuQzV6iFfIflvKe6u1jw,11123
         | 
| 163 162 | 
             
            claude_mpm/services/ticketing_service_original.py,sha256=_GbPCPuIAlfxQGfmHN-LQ6sjuDk00eNdY7rlS4qhjI4,16745
         | 
| 163 | 
            +
            claude_mpm/services/agent/__init__.py,sha256=y1knypwvnU6fYoBOHO-if_Qb2HCzovin0EQmkJZQVdc,659
         | 
| 164 | 
            +
            claude_mpm/services/agent/deployment.py,sha256=xqPG-uGm2t2k5WyvvrPk6AmMpx0wmhq1agnLXEo0l94,111392
         | 
| 165 | 
            +
            claude_mpm/services/agent/management.py,sha256=OKU6dxxR1x53I9eimlJPMUDV9Hbc-Urw5gerCvM1nEk,23053
         | 
| 166 | 
            +
            claude_mpm/services/agent/registry.py,sha256=jb-hIDGAoLWqBauS49N5Iin-nSozspGgUtb-gAROCfc,31570
         | 
| 164 167 | 
             
            claude_mpm/services/agents/__init__.py,sha256=F5yJSTruNz0qiI2--oJIBO5-LoGQ6wXHvbt1sk-eVLU,2224
         | 
| 165 168 | 
             
            claude_mpm/services/agents/deployment/__init__.py,sha256=PhQQ108KP9RoxLLh_8aoPIjmwJau3az_10cEoPDm7DQ,538
         | 
| 166 | 
            -
            claude_mpm/services/agents/deployment/agent_deployment.py,sha256= | 
| 169 | 
            +
            claude_mpm/services/agents/deployment/agent_deployment.py,sha256=DdigRi0dqqOGCg1aWQw9ZA3IXvaqlFs8BW3YsIbBZw0,112322
         | 
| 167 170 | 
             
            claude_mpm/services/agents/deployment/agent_lifecycle_manager.py,sha256=b7guIDwEiJNRWtaRx1PwusqZX5QCnXqq-tl5AQOFp7Y,50136
         | 
| 168 171 | 
             
            claude_mpm/services/agents/deployment/agent_versioning.py,sha256=y4SiKGKdTn-9_Ht6nGlmKGJW6MLgEHZUy5SR1OPTZZM,1108
         | 
| 169 | 
            -
            claude_mpm/services/agents/deployment/async_agent_deployment.py,sha256= | 
| 172 | 
            +
            claude_mpm/services/agents/deployment/async_agent_deployment.py,sha256=adD0XfNnxmHpTYRU9Ud4osmGvkp02ZQc8xELs-poxMM,24266
         | 
| 170 173 | 
             
            claude_mpm/services/agents/loading/__init__.py,sha256=NN4JGAH7nsoY7qTW-jIBKOJPpLJVcD4P6S2Vmdd7QH8,305
         | 
| 171 174 | 
             
            claude_mpm/services/agents/loading/agent_profile_loader.py,sha256=2L_KIBk-ltt0lWQ5MzZE2JTdYxj4m8Rc7aeLoAiCp4k,25741
         | 
| 172 175 | 
             
            claude_mpm/services/agents/loading/base_agent_manager.py,sha256=y_MKtqReD5h70BpCTO4JbkcSUIxCsdzYaHyLMbdNLYU,15028
         | 
| 173 176 | 
             
            claude_mpm/services/agents/loading/framework_agent_loader.py,sha256=fyP54zrNxv-Xe8hRMInTnltaMtFgmRuCfMbaArPlkmc,17560
         | 
| 174 177 | 
             
            claude_mpm/services/agents/management/__init__.py,sha256=ZZm0jEdso59S72fw4O8jnU1iGWfDN68nWdXe9APvi8U,233
         | 
| 175 | 
            -
            claude_mpm/services/agents/management/agent_capabilities_generator.py,sha256= | 
| 178 | 
            +
            claude_mpm/services/agents/management/agent_capabilities_generator.py,sha256=Q6oS7vHFnqhegpi8NuDRe8egL34Nan5ssh_HxLRW1ic,7075
         | 
| 176 179 | 
             
            claude_mpm/services/agents/management/agent_management_service.py,sha256=OKU6dxxR1x53I9eimlJPMUDV9Hbc-Urw5gerCvM1nEk,23053
         | 
| 177 180 | 
             
            claude_mpm/services/agents/memory/__init__.py,sha256=IzY-iU93_v9HBCHZ0UaSYkdLWXobFRLcjdJXd6iAuFY,455
         | 
| 178 | 
            -
            claude_mpm/services/agents/memory/agent_memory_manager.py,sha256= | 
| 181 | 
            +
            claude_mpm/services/agents/memory/agent_memory_manager.py,sha256=4BOLVV8b1zJISlGpQXJu6iYbYessGn9dYrstDz_0kE8,65035
         | 
| 179 182 | 
             
            claude_mpm/services/agents/memory/agent_persistence_service.py,sha256=B_Vz43zCKWq47zWkoibcia-Qwn2y3gARu7MV5Cpiptc,2893
         | 
| 180 183 | 
             
            claude_mpm/services/agents/registry/__init__.py,sha256=_NsxGhhykoj0NecfA4o8XscrvpuMHBYaRmQearquF1c,632
         | 
| 181 184 | 
             
            claude_mpm/services/agents/registry/agent_registry.py,sha256=jb-hIDGAoLWqBauS49N5Iin-nSozspGgUtb-gAROCfc,31570
         | 
| 182 185 | 
             
            claude_mpm/services/agents/registry/deployed_agent_discovery.py,sha256=EFsrutLB3Kxa5TXoQC2aVNx5cMIAaDcTqCBnF1FfrPc,9762
         | 
| 183 186 | 
             
            claude_mpm/services/agents/registry/modification_tracker.py,sha256=efkl652bAHhxUc6keoE2dOxlaQXtDnC3lkmR_jat4u4,34565
         | 
| 184 | 
            -
            claude_mpm/services/ | 
| 187 | 
            +
            claude_mpm/services/communication/__init__.py,sha256=7sa76Pvv0-gAE7wrWW6J3oVg8yM3SFZ86utUiLR8GT0,526
         | 
| 188 | 
            +
            claude_mpm/services/communication/socketio.py,sha256=C4uvt7BgtX8n_xE77CDPEdztygkZUEPqkLix0kcBB8k,90265
         | 
| 189 | 
            +
            claude_mpm/services/communication/websocket.py,sha256=WAfCm5AzWo2sNjzJGWOhyvJv3ah-KiGAk7-rgl9V7FU,18344
         | 
| 190 | 
            +
            claude_mpm/services/core/__init__.py,sha256=mWqf6wfzspDgrue_ktLkK12LyxNrJJCfMJP72TpQVoc,2420
         | 
| 191 | 
            +
            claude_mpm/services/core/base.py,sha256=mgv9p-hyIh6_3PIYvNBzEvOoKPd-9E04JlzKP2L1khc,7570
         | 
| 192 | 
            +
            claude_mpm/services/core/interfaces.py,sha256=V7B5gIqD2PAUqEYwo6eZQrqMY_rUaX_b75Xitrn_GKc,27205
         | 
| 185 193 | 
             
            claude_mpm/services/framework_claude_md_generator/__init__.py,sha256=OtnwxLiJektfFtsKdkHM1X27rKkFiNd_rcf4843ziKw,7334
         | 
| 186 194 | 
             
            claude_mpm/services/framework_claude_md_generator/content_assembler.py,sha256=DNMVz6Jvy7bxxa8WNL2h-JwrK89bJpuxXEI5xD1i8mY,6570
         | 
| 187 195 | 
             
            claude_mpm/services/framework_claude_md_generator/content_validator.py,sha256=89QSGil9_NL15ci3HsVVQmfg7MZvsJS3i_ELP5yD-gA,4583
         | 
| @@ -199,41 +207,58 @@ claude_mpm/services/framework_claude_md_generator/section_generators/header.py,s | |
| 199 207 | 
             
            claude_mpm/services/framework_claude_md_generator/section_generators/orchestration_principles.py,sha256=yblY8P0UYrfOjdqgum1PI56oW0zl5xMIHCYEwgYVVyc,1830
         | 
| 200 208 | 
             
            claude_mpm/services/framework_claude_md_generator/section_generators/role_designation.py,sha256=aYBHykUbsgUz7XYUNR-J3nQjIevFHvUQNBO0L1GqlTw,1468
         | 
| 201 209 | 
             
            claude_mpm/services/framework_claude_md_generator/section_generators/subprocess_validation.py,sha256=eqj2nNXtOZ8KkMyINpkU-JLDfXHY81MpKhf_qmnZdUc,4117
         | 
| 202 | 
            -
            claude_mpm/services/framework_claude_md_generator/section_generators/todo_task_tools.py,sha256= | 
| 210 | 
            +
            claude_mpm/services/framework_claude_md_generator/section_generators/todo_task_tools.py,sha256=xTm2_K1iSizg2E7NnP7vXS3r3oiMmv5cdGPt9C5XE8E,5767
         | 
| 203 211 | 
             
            claude_mpm/services/framework_claude_md_generator/section_generators/troubleshooting.py,sha256=_wYqXRj6z48bJjX7zb_7Zacx5G9LXNDZpsUxvBe27DE,1888
         | 
| 212 | 
            +
            claude_mpm/services/infrastructure/__init__.py,sha256=rZir3Ktwc0Dyrc0Sl2rAn7h6uc8VBp7QWcnRRK3kQ5Y,504
         | 
| 213 | 
            +
            claude_mpm/services/infrastructure/logging.py,sha256=LuujazzNebzfOCB921wSAUpGDrIxkMrlsvLxI4e1RRo,6693
         | 
| 214 | 
            +
            claude_mpm/services/infrastructure/monitoring.py,sha256=OPyT976wENCMFzid88ovG5HLqCo71evYqTVn5lsJ4SU,33882
         | 
| 204 215 | 
             
            claude_mpm/services/memory/__init__.py,sha256=XkRcNRalLYPClYc8CX9PNhmSqSI5FNHatMfiGHCuW4o,394
         | 
| 205 216 | 
             
            claude_mpm/services/memory/builder.py,sha256=a3X3mZsd3YxmhwOYsAmbpmCACkoKxcuKuyHXPa26gqs,34075
         | 
| 217 | 
            +
            claude_mpm/services/memory/indexed_memory.py,sha256=nb2bVxFelNyJ9GINw5mPABj8wNJJ23XyTNZ9NgywB1w,20098
         | 
| 206 218 | 
             
            claude_mpm/services/memory/optimizer.py,sha256=uuxjArywLCJCw6akg9wySqw5njYWPdXIvGaDqf-3mhM,23645
         | 
| 207 219 | 
             
            claude_mpm/services/memory/router.py,sha256=ECQQ1v0BsMFQ4RXqpKfc9fwAXpzx5Kk0QlmJSxdh9TI,22511
         | 
| 208 220 | 
             
            claude_mpm/services/memory/cache/__init__.py,sha256=FBff6fkrJWuWbQjQ4MoOxQa6ybRVBeH29hQC2XP0DEU,350
         | 
| 209 221 | 
             
            claude_mpm/services/memory/cache/shared_prompt_cache.py,sha256=bw1FDXM6iMuVfFxx_RNlIFZfiGC10p18Npwk-IGFCJ0,29899
         | 
| 210 222 | 
             
            claude_mpm/services/memory/cache/simple_cache.py,sha256=eVJq7mD4fn-EfRaLgKJxP65rqQrup-AqB-Cf7EFYy58,10480
         | 
| 211 | 
            -
            claude_mpm/services/ | 
| 223 | 
            +
            claude_mpm/services/project/__init__.py,sha256=W1-aV0fgVS1hFFNVbHJLGbcnA8zrZ_ri-KdFQsCjMEc,511
         | 
| 224 | 
            +
            claude_mpm/services/project/analyzer.py,sha256=6mOt18BZaIRm5lzGWOS1bKUFtvaOxPb42CAw2iTzG8M,37297
         | 
| 225 | 
            +
            claude_mpm/services/project/registry.py,sha256=Nxs-c1YoinGW_evnHn6EmD9nwM5cMKERjeWpJOiUtoY,24608
         | 
| 226 | 
            +
            claude_mpm/services/socketio/__init__.py,sha256=1rIISwzGi7WNwYeQ47_Lk-BBtKlXx7MzOxJ0_6zxVis,555
         | 
| 227 | 
            +
            claude_mpm/services/socketio/handlers/__init__.py,sha256=zEYzQGnY7Mo8_M7Nqbg4wONPEivwmXyTTVEZgRWfbfU,788
         | 
| 228 | 
            +
            claude_mpm/services/socketio/handlers/base.py,sha256=3D7CylKmh_loGzTB2VXLsuuj5nA6y7x1Uk3yRwERai8,4712
         | 
| 229 | 
            +
            claude_mpm/services/socketio/handlers/connection.py,sha256=tXsWsxe4c4Hv46ConewcqBJoeXdusGuvEbliSiKJih4,8603
         | 
| 230 | 
            +
            claude_mpm/services/socketio/handlers/file.py,sha256=kXN0fgFp-eYTjLnsR6oaBUCO1MAirVF4-kaqbthaZ0Q,8530
         | 
| 231 | 
            +
            claude_mpm/services/socketio/handlers/git.py,sha256=siLS0UxJcCbz1ZbMRMkNq9f5DIjHw7uY2VAvmEu1-fI,34897
         | 
| 232 | 
            +
            claude_mpm/services/socketio/handlers/memory.py,sha256=kcBgxYc9B0rMQXCopSqQm7fV63PTjH0BGwhp193j0D8,999
         | 
| 233 | 
            +
            claude_mpm/services/socketio/handlers/project.py,sha256=cuo2-y2IQn8ygogxIxFknF7-FKdFsic3maJOmDB38ZM,804
         | 
| 234 | 
            +
            claude_mpm/services/socketio/handlers/registry.py,sha256=Y2RMi2NMta8rRqeIo24yFsAofasaWvEAckjgx3VJAJk,5931
         | 
| 212 235 | 
             
            claude_mpm/services/version_control/__init__.py,sha256=5BFbqFUMtpCyDbMcekRjCQ4jgBAJI50PhfuZ8S5NTjk,1513
         | 
| 213 236 | 
             
            claude_mpm/services/version_control/branch_strategy.py,sha256=xOLeNcu0AtpgIRmNkew-fNvXVcGHRuAe6MqOyyS36HQ,23068
         | 
| 214 237 | 
             
            claude_mpm/services/version_control/conflict_resolution.py,sha256=yWa9fzmkds1U0EBw-LyTZvlj56MpEEsRmryLQg4KDdU,26084
         | 
| 215 238 | 
             
            claude_mpm/services/version_control/git_operations.py,sha256=197Cmk_cLzSVzqNPQHKvsTGncWXEI3F5OOCmo4sWgTg,28422
         | 
| 216 239 | 
             
            claude_mpm/services/version_control/semantic_versioning.py,sha256=xiDsirwq8CApnOBc4UMf4VcrgolzQgfK2T_Yi3mY7Bk,29039
         | 
| 217 240 | 
             
            claude_mpm/utils/__init__.py,sha256=E8Hvv6ykL6rnnc8-YmfoGNpRCZbcIirxcFuNz7YvDIg,346
         | 
| 218 | 
            -
            claude_mpm/utils/agent_dependency_loader.py,sha256= | 
| 241 | 
            +
            claude_mpm/utils/agent_dependency_loader.py,sha256=AWLDapjGZNHoRBJVCqR6iTK2-P71tEtPitFKKSmMLl4,28281
         | 
| 219 242 | 
             
            claude_mpm/utils/config_manager.py,sha256=TlekZYIWOz_ouWHQU4Gc-zckhoFK9AqA25b6A_XZdDc,16412
         | 
| 220 243 | 
             
            claude_mpm/utils/console.py,sha256=5mBwhNU5p9fIveIbbdzuttJw182wv_VaAfe11iGFyTA,278
         | 
| 221 244 | 
             
            claude_mpm/utils/dependency_cache.py,sha256=gecpOA0BZYNiowUiAWNMTgPOoSJb9wvIivs7-mnLaCc,12351
         | 
| 222 245 | 
             
            claude_mpm/utils/dependency_manager.py,sha256=2Gs881HkzwMEm7X2z7Lx8l2Lws4PvS-rPBuH737-rkg,7543
         | 
| 223 246 | 
             
            claude_mpm/utils/dependency_strategies.py,sha256=83YZ45ZAwgFN_hhCSUaDv__QR0AWTqBGWMwnBxmiF1Q,11473
         | 
| 224 247 | 
             
            claude_mpm/utils/environment_context.py,sha256=ZbtarJ3gUPF9cLKYIG_vtpZYowetyDxKpz0FPW0Wpu8,10527
         | 
| 225 | 
            -
            claude_mpm/utils/error_handler.py,sha256= | 
| 248 | 
            +
            claude_mpm/utils/error_handler.py,sha256=7fVcmQIoj-mmdmibEts7aJit-XMbuCOrxbJmLuUBaZQ,8174
         | 
| 226 249 | 
             
            claude_mpm/utils/framework_detection.py,sha256=nzs1qRZK9K-zT0382z1FpGDvgzUNrUg8rBL-O_WLq-Q,1217
         | 
| 227 250 | 
             
            claude_mpm/utils/import_migration_example.py,sha256=W4a4XH3FY_VBB00BB8Lae2aRPM021PxLHzdUfEs0B5w,2463
         | 
| 228 251 | 
             
            claude_mpm/utils/imports.py,sha256=wX-SOXUHbemx01MHRGQpVwajzXH6qYdQkYNFCIbb2mw,6851
         | 
| 229 252 | 
             
            claude_mpm/utils/path_operations.py,sha256=6pLMnAWBVzHkgp6JyQHmHbGD-dWn-nX21yV4E_eT-kM,11614
         | 
| 230 253 | 
             
            claude_mpm/utils/paths.py,sha256=DlkYrIVvfgyuF9cN01cWuxehK0UUsCfjp6ymrv8XY7A,10253
         | 
| 254 | 
            +
            claude_mpm/utils/robust_installer.py,sha256=5-iW4Qpba4DBitx5Ie3uoUJgXBpbvuLUJ_uNGgOxwi4,19855
         | 
| 231 255 | 
             
            claude_mpm/utils/session_logging.py,sha256=9G0AzB7V0WkhLQlN0ocqbyDv0ifooEsJ5UPXIhA-wt0,3022
         | 
| 232 256 | 
             
            claude_mpm/validation/__init__.py,sha256=bJ19g9lnk7yIjtxzN8XPegp87HTFBzCrGQOpFgRTf3g,155
         | 
| 233 | 
            -
            claude_mpm/validation/agent_validator.py,sha256= | 
| 234 | 
            -
            claude_mpm | 
| 235 | 
            -
            claude_mpm-3. | 
| 236 | 
            -
            claude_mpm-3. | 
| 237 | 
            -
            claude_mpm-3. | 
| 238 | 
            -
            claude_mpm-3. | 
| 239 | 
            -
            claude_mpm-3. | 
| 257 | 
            +
            claude_mpm/validation/agent_validator.py,sha256=OEYhmy0K99pkoCCoVea2Q-d1JMiDyhEpzEJikuF8T-U,20910
         | 
| 258 | 
            +
            claude_mpm/validation/frontmatter_validator.py,sha256=vSinu0XD9-31h0-ePYiYivBbxTZEanhymLinTCODr7k,7206
         | 
| 259 | 
            +
            claude_mpm-3.8.1.dist-info/licenses/LICENSE,sha256=cSdDfXjoTVhstrERrqme4zgxAu4GubU22zVEHsiXGxs,1071
         | 
| 260 | 
            +
            claude_mpm-3.8.1.dist-info/METADATA,sha256=HfQZU6Odxv7rYzSVKV98kMzQzvj_wL_BmwZ6OHOmT0o,13315
         | 
| 261 | 
            +
            claude_mpm-3.8.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
         | 
| 262 | 
            +
            claude_mpm-3.8.1.dist-info/entry_points.txt,sha256=3_d7wLrg9sRmQ1SfrFGWoTNL8Wrd6lQb2XVSYbTwRIg,324
         | 
| 263 | 
            +
            claude_mpm-3.8.1.dist-info/top_level.txt,sha256=1nUg3FEaBySgm8t-s54jK5zoPnu3_eY6EP6IOlekyHA,11
         | 
| 264 | 
            +
            claude_mpm-3.8.1.dist-info/RECORD,,
         | 
| @@ -1,10 +0,0 @@ | |
| 1 | 
            -
            2025-07-28 09:57:00,914 - claude_mpm_hooks_claude_mpm - INFO - hook_handler.py:231 - Claude Code hook event: PostToolUse (session: 9a641bea)
         | 
| 2 | 
            -
            2025-07-28 09:57:00,914 - claude_mpm_hooks_claude_mpm - INFO - hook_handler.py:254 - PostToolUse: Bash (exit code: N/A)
         | 
| 3 | 
            -
            2025-07-28 09:57:09,289 - claude_mpm_hooks_claude_mpm - INFO - hook_handler.py:231 - Claude Code hook event: PreToolUse (session: 9a641bea)
         | 
| 4 | 
            -
            2025-07-28 09:57:09,290 - claude_mpm_hooks_claude_mpm - INFO - hook_handler.py:247 - PreToolUse: Bash
         | 
| 5 | 
            -
            2025-07-28 09:57:21,601 - claude_mpm_hooks_claude_mpm - INFO - hook_handler.py:231 - Claude Code hook event: PreToolUse (session: 9a641bea)
         | 
| 6 | 
            -
            2025-07-28 09:57:21,601 - claude_mpm_hooks_claude_mpm - INFO - hook_handler.py:247 - PreToolUse: LS
         | 
| 7 | 
            -
            2025-07-28 09:57:25,939 - claude_mpm_hooks_claude_mpm - INFO - hook_handler.py:231 - Claude Code hook event: PostToolUse (session: 9a641bea)
         | 
| 8 | 
            -
            2025-07-28 09:57:25,939 - claude_mpm_hooks_claude_mpm - INFO - hook_handler.py:254 - PostToolUse: LS (exit code: N/A)
         | 
| 9 | 
            -
            2025-07-28 09:57:35,668 - claude_mpm_hooks_claude_mpm - INFO - hook_handler.py:231 - Claude Code hook event: PreToolUse (session: 9a641bea)
         | 
| 10 | 
            -
            2025-07-28 09:57:35,668 - claude_mpm_hooks_claude_mpm - INFO - hook_handler.py:247 - PreToolUse: Bash
         | 
| @@ -1,83 +0,0 @@ | |
| 1 | 
            -
            # Agent Profile Template Configuration
         | 
| 2 | 
            -
            # Inspired by awesome-claude-code's template system
         | 
| 3 | 
            -
             | 
| 4 | 
            -
            profile:
         | 
| 5 | 
            -
              name: "{{AGENT_NAME}}"
         | 
| 6 | 
            -
              version: "{{VERSION}}"
         | 
| 7 | 
            -
              description: "{{DESCRIPTION}}"
         | 
| 8 | 
            -
              author: "{{AUTHOR}}"
         | 
| 9 | 
            -
              created: "{{CREATED_DATE}}"
         | 
| 10 | 
            -
              
         | 
| 11 | 
            -
              # Categories for organizing agents
         | 
| 12 | 
            -
              categories:
         | 
| 13 | 
            -
                - id: analysis
         | 
| 14 | 
            -
                  title: "Code Analysis Agents"
         | 
| 15 | 
            -
                  description: |
         | 
| 16 | 
            -
                    > Agents specialized in analyzing codebases, identifying patterns, and providing insights
         | 
| 17 | 
            -
                  icon: "🔍"
         | 
| 18 | 
            -
                
         | 
| 19 | 
            -
                - id: implementation
         | 
| 20 | 
            -
                  title: "Implementation Agents"
         | 
| 21 | 
            -
                  description: |
         | 
| 22 | 
            -
                    > Agents focused on writing and modifying code
         | 
| 23 | 
            -
                  icon: "🛠️"
         | 
| 24 | 
            -
                
         | 
| 25 | 
            -
                - id: testing
         | 
| 26 | 
            -
                  title: "Testing & QA Agents"
         | 
| 27 | 
            -
                  description: |
         | 
| 28 | 
            -
                    > Agents dedicated to testing, quality assurance, and validation
         | 
| 29 | 
            -
                  icon: "🧪"
         | 
| 30 | 
            -
                
         | 
| 31 | 
            -
                - id: security
         | 
| 32 | 
            -
                  title: "Security Agents"
         | 
| 33 | 
            -
                  description: |
         | 
| 34 | 
            -
                    > Agents specialized in security analysis and vulnerability detection
         | 
| 35 | 
            -
                  icon: "🔒"
         | 
| 36 | 
            -
             | 
| 37 | 
            -
            agents:
         | 
| 38 | 
            -
              - name: "{{AGENT_ID}}"
         | 
| 39 | 
            -
                category: "{{CATEGORY}}"
         | 
| 40 | 
            -
                role: "{{ROLE}}"
         | 
| 41 | 
            -
                description: "{{AGENT_DESCRIPTION}}"
         | 
| 42 | 
            -
                
         | 
| 43 | 
            -
                capabilities:
         | 
| 44 | 
            -
                  - "{{CAPABILITY_1}}"
         | 
| 45 | 
            -
                  - "{{CAPABILITY_2}}"
         | 
| 46 | 
            -
                  - "{{CAPABILITY_3}}"
         | 
| 47 | 
            -
                
         | 
| 48 | 
            -
                constraints:
         | 
| 49 | 
            -
                  - "{{CONSTRAINT_1}}"
         | 
| 50 | 
            -
                  - "{{CONSTRAINT_2}}"
         | 
| 51 | 
            -
                
         | 
| 52 | 
            -
                tools:
         | 
| 53 | 
            -
                  - name: "{{TOOL_NAME}}"
         | 
| 54 | 
            -
                    description: "{{TOOL_DESCRIPTION}}"
         | 
| 55 | 
            -
                    required: true
         | 
| 56 | 
            -
                
         | 
| 57 | 
            -
                prompt_template: |
         | 
| 58 | 
            -
                  You are a {{ROLE}} agent specializing in {{SPECIALIZATION}}.
         | 
| 59 | 
            -
                  
         | 
| 60 | 
            -
                  ## Your Capabilities:
         | 
| 61 | 
            -
                  {{CAPABILITIES_LIST}}
         | 
| 62 | 
            -
                  
         | 
| 63 | 
            -
                  ## Your Constraints:
         | 
| 64 | 
            -
                  {{CONSTRAINTS_LIST}}
         | 
| 65 | 
            -
                  
         | 
| 66 | 
            -
                  ## Context:
         | 
| 67 | 
            -
                  {context}
         | 
| 68 | 
            -
                  
         | 
| 69 | 
            -
                  ## Task:
         | 
| 70 | 
            -
                  {task}
         | 
| 71 | 
            -
                  
         | 
| 72 | 
            -
                  ## Additional Instructions:
         | 
| 73 | 
            -
                  {{ADDITIONAL_INSTRUCTIONS}}
         | 
| 74 | 
            -
                
         | 
| 75 | 
            -
                examples:
         | 
| 76 | 
            -
                  - scenario: "{{EXAMPLE_SCENARIO}}"
         | 
| 77 | 
            -
                    input: "{{EXAMPLE_INPUT}}"
         | 
| 78 | 
            -
                    expected_output: "{{EXAMPLE_OUTPUT}}"
         | 
| 79 | 
            -
                
         | 
| 80 | 
            -
                best_practices:
         | 
| 81 | 
            -
                  - "{{BEST_PRACTICE_1}}"
         | 
| 82 | 
            -
                  - "{{BEST_PRACTICE_2}}"
         | 
| 83 | 
            -
                  - "{{BEST_PRACTICE_3}}"
         | 
    
        claude_mpm/cli/README.md
    DELETED
    
    | @@ -1,108 +0,0 @@ | |
| 1 | 
            -
            # Claude MPM CLI Architecture
         | 
| 2 | 
            -
             | 
| 3 | 
            -
            This document describes the refactored CLI architecture for claude-mpm.
         | 
| 4 | 
            -
             | 
| 5 | 
            -
            ## Overview
         | 
| 6 | 
            -
             | 
| 7 | 
            -
            The CLI has been refactored from a single monolithic `cli.py` file into a modular structure that improves maintainability and code organization.
         | 
| 8 | 
            -
             | 
| 9 | 
            -
            ## Directory Structure
         | 
| 10 | 
            -
             | 
| 11 | 
            -
            ```
         | 
| 12 | 
            -
            cli/
         | 
| 13 | 
            -
            ├── __init__.py       # Main entry point - orchestrates the CLI flow
         | 
| 14 | 
            -
            ├── parser.py         # Argument parsing logic - single source of truth for CLI arguments
         | 
| 15 | 
            -
            ├── utils.py          # Shared utility functions
         | 
| 16 | 
            -
            ├── commands/         # Individual command implementations
         | 
| 17 | 
            -
            │   ├── __init__.py
         | 
| 18 | 
            -
            │   ├── run.py        # Default command - runs Claude sessions
         | 
| 19 | 
            -
            │   ├── tickets.py    # Lists tickets
         | 
| 20 | 
            -
            │   ├── info.py       # Shows system information
         | 
| 21 | 
            -
            │   └── agents.py     # Manages agent deployments
         | 
| 22 | 
            -
            └── README.md         # This file
         | 
| 23 | 
            -
            ```
         | 
| 24 | 
            -
             | 
| 25 | 
            -
            ## Key Design Decisions
         | 
| 26 | 
            -
             | 
| 27 | 
            -
            ### 1. Modular Command Structure
         | 
| 28 | 
            -
            Each command is implemented in its own module under `commands/`. This makes it easy to:
         | 
| 29 | 
            -
            - Add new commands without touching existing code
         | 
| 30 | 
            -
            - Test commands in isolation
         | 
| 31 | 
            -
            - Understand what each command does
         | 
| 32 | 
            -
             | 
| 33 | 
            -
            ### 2. Centralized Argument Parsing
         | 
| 34 | 
            -
            All argument definitions are in `parser.py`. This provides:
         | 
| 35 | 
            -
            - Single source of truth for CLI arguments
         | 
| 36 | 
            -
            - Reusable argument groups (common arguments, run arguments)
         | 
| 37 | 
            -
            - Clear separation of parsing from execution
         | 
| 38 | 
            -
             | 
| 39 | 
            -
            ### 3. Shared Utilities
         | 
| 40 | 
            -
            Common functions are in `utils.py`:
         | 
| 41 | 
            -
            - `get_user_input()` - Handles input from files, stdin, or command line
         | 
| 42 | 
            -
            - `get_agent_versions_display()` - Formats agent version information
         | 
| 43 | 
            -
            - `setup_logging()` - Configures logging based on arguments
         | 
| 44 | 
            -
            - `ensure_directories()` - Creates required directories on first run
         | 
| 45 | 
            -
             | 
| 46 | 
            -
            ### 4. Backward Compatibility
         | 
| 47 | 
            -
            The refactoring maintains full backward compatibility:
         | 
| 48 | 
            -
            - `__main__.py` still imports from `claude_mpm.cli`
         | 
| 49 | 
            -
            - The main `cli/__init__.py` exports the same `main()` function
         | 
| 50 | 
            -
            - All existing commands and arguments work exactly as before
         | 
| 51 | 
            -
             | 
| 52 | 
            -
            ## Entry Points
         | 
| 53 | 
            -
             | 
| 54 | 
            -
            1. **Package execution**: `python -m claude_mpm`
         | 
| 55 | 
            -
               - Uses `__main__.py` which imports from `cli/__init__.py`
         | 
| 56 | 
            -
             | 
| 57 | 
            -
            2. **Direct import**: `from claude_mpm.cli import main`
         | 
| 58 | 
            -
               - Imports the main function from `cli/__init__.py`
         | 
| 59 | 
            -
             | 
| 60 | 
            -
            3. **Shell script**: `claude-mpm` command
         | 
| 61 | 
            -
               - Calls `python -m claude_mpm` with proper environment setup
         | 
| 62 | 
            -
             | 
| 63 | 
            -
            ## Adding New Commands
         | 
| 64 | 
            -
             | 
| 65 | 
            -
            To add a new command:
         | 
| 66 | 
            -
             | 
| 67 | 
            -
            1. Create a new module in `commands/`:
         | 
| 68 | 
            -
            ```python
         | 
| 69 | 
            -
            # commands/mycommand.py
         | 
| 70 | 
            -
            def my_command(args):
         | 
| 71 | 
            -
                """Execute my command."""
         | 
| 72 | 
            -
                # Implementation here
         | 
| 73 | 
            -
            ```
         | 
| 74 | 
            -
             | 
| 75 | 
            -
            2. Add the command to `commands/__init__.py`:
         | 
| 76 | 
            -
            ```python
         | 
| 77 | 
            -
            from .mycommand import my_command
         | 
| 78 | 
            -
            ```
         | 
| 79 | 
            -
             | 
| 80 | 
            -
            3. Add parser configuration in `parser.py`:
         | 
| 81 | 
            -
            ```python
         | 
| 82 | 
            -
            # In create_parser()
         | 
| 83 | 
            -
            mycommand_parser = subparsers.add_parser(
         | 
| 84 | 
            -
                "mycommand",
         | 
| 85 | 
            -
                help="Description of my command"
         | 
| 86 | 
            -
            )
         | 
| 87 | 
            -
            # Add command-specific arguments
         | 
| 88 | 
            -
            ```
         | 
| 89 | 
            -
             | 
| 90 | 
            -
            4. Add the command mapping in `cli/__init__.py`:
         | 
| 91 | 
            -
            ```python
         | 
| 92 | 
            -
            # In _execute_command()
         | 
| 93 | 
            -
            command_map = {
         | 
| 94 | 
            -
                # ... existing commands ...
         | 
| 95 | 
            -
                "mycommand": my_command,
         | 
| 96 | 
            -
            }
         | 
| 97 | 
            -
            ```
         | 
| 98 | 
            -
             | 
| 99 | 
            -
            ## Removed Files
         | 
| 100 | 
            -
             | 
| 101 | 
            -
            - `cli_main.py` - Redundant entry point, functionality moved to `__main__.py`
         | 
| 102 | 
            -
            - Original `cli.py` - Split into the modular structure described above
         | 
| 103 | 
            -
             | 
| 104 | 
            -
            ## Preserved Files
         | 
| 105 | 
            -
             | 
| 106 | 
            -
            - `cli_enhancements.py` - Experimental Click-based CLI with enhanced features
         | 
| 107 | 
            -
              - Kept for reference and future enhancement ideas
         | 
| 108 | 
            -
              - Not currently used in production
         |