claude-mpm 4.13.1__tar.gz → 4.14.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of claude-mpm might be problematic. Click here for more details.

Files changed (878) hide show
  1. claude_mpm-4.14.0/BUILD_NUMBER +1 -0
  2. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/PKG-INFO +1 -1
  3. claude_mpm-4.14.0/VERSION +1 -0
  4. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/pyproject.toml +2 -2
  5. claude_mpm-4.14.0/src/claude_mpm/VERSION +1 -0
  6. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/PM_INSTRUCTIONS.md +68 -0
  7. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/__init__.py +10 -0
  8. claude_mpm-4.14.0/src/claude_mpm/cli/commands/local_deploy.py +536 -0
  9. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/base_parser.py +7 -0
  10. claude_mpm-4.14.0/src/claude_mpm/cli/parsers/local_deploy_parser.py +227 -0
  11. claude_mpm-4.14.0/src/claude_mpm/commands/mpm-agents-detect.md +168 -0
  12. claude_mpm-4.14.0/src/claude_mpm/commands/mpm-agents-recommend.md +214 -0
  13. claude_mpm-4.14.0/src/claude_mpm/commands/mpm-agents.md +122 -0
  14. claude_mpm-4.14.0/src/claude_mpm/commands/mpm-auto-configure.md +217 -0
  15. claude_mpm-4.14.0/src/claude_mpm/commands/mpm-help.md +284 -0
  16. claude_mpm-4.14.0/src/claude_mpm/config/model_config.py +428 -0
  17. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/interactive_session.py +3 -0
  18. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/interfaces/__init__.py +74 -2
  19. claude_mpm-4.14.0/src/claude_mpm/services/core/interfaces/health.py +172 -0
  20. claude_mpm-4.14.0/src/claude_mpm/services/core/interfaces/model.py +281 -0
  21. claude_mpm-4.14.0/src/claude_mpm/services/core/interfaces/process.py +372 -0
  22. claude_mpm-4.14.0/src/claude_mpm/services/core/interfaces/restart.py +307 -0
  23. claude_mpm-4.14.0/src/claude_mpm/services/core/interfaces/stability.py +260 -0
  24. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/models/__init__.py +35 -0
  25. claude_mpm-4.14.0/src/claude_mpm/services/core/models/health.py +189 -0
  26. claude_mpm-4.14.0/src/claude_mpm/services/core/models/process.py +258 -0
  27. claude_mpm-4.14.0/src/claude_mpm/services/core/models/restart.py +302 -0
  28. claude_mpm-4.14.0/src/claude_mpm/services/core/models/stability.py +264 -0
  29. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/__init__.py +163 -0
  30. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/crash_detector.py +257 -0
  31. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/health_checks/__init__.py +28 -0
  32. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/health_checks/http_check.py +223 -0
  33. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/health_checks/process_check.py +235 -0
  34. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/health_checks/resource_check.py +254 -0
  35. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/health_manager.py +430 -0
  36. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/log_monitor.py +396 -0
  37. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/memory_leak_detector.py +294 -0
  38. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/process_manager.py +595 -0
  39. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/resource_monitor.py +331 -0
  40. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/restart_manager.py +401 -0
  41. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/restart_policy.py +387 -0
  42. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/state_manager.py +371 -0
  43. claude_mpm-4.14.0/src/claude_mpm/services/local_ops/unified_manager.py +600 -0
  44. claude_mpm-4.14.0/src/claude_mpm/services/model/__init__.py +147 -0
  45. claude_mpm-4.14.0/src/claude_mpm/services/model/base_provider.py +365 -0
  46. claude_mpm-4.14.0/src/claude_mpm/services/model/claude_provider.py +412 -0
  47. claude_mpm-4.14.0/src/claude_mpm/services/model/model_router.py +453 -0
  48. claude_mpm-4.14.0/src/claude_mpm/services/model/ollama_provider.py +415 -0
  49. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm.egg-info/PKG-INFO +1 -1
  50. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm.egg-info/SOURCES.txt +35 -0
  51. claude_mpm-4.13.1/BUILD_NUMBER +0 -1
  52. claude_mpm-4.13.1/VERSION +0 -1
  53. claude_mpm-4.13.1/src/claude_mpm/VERSION +0 -1
  54. claude_mpm-4.13.1/src/claude_mpm/commands/mpm-agents.md +0 -48
  55. claude_mpm-4.13.1/src/claude_mpm/commands/mpm-help.md +0 -124
  56. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/CLAUDE.md +0 -0
  57. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/LICENSE +0 -0
  58. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/MANIFEST.in +0 -0
  59. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/README.md +0 -0
  60. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/claude-mpm +0 -0
  61. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/scripts/ticket +0 -0
  62. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/setup.cfg +0 -0
  63. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/BUILD_NUMBER +0 -0
  64. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/__init__.py +0 -0
  65. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/__main__.py +0 -0
  66. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/BASE_AGENT_TEMPLATE.md +0 -0
  67. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/BASE_DOCUMENTATION.md +0 -0
  68. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/BASE_ENGINEER.md +0 -0
  69. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/BASE_OPS.md +0 -0
  70. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/BASE_PM.md +0 -0
  71. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/BASE_PROMPT_ENGINEER.md +0 -0
  72. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/BASE_QA.md +0 -0
  73. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/BASE_RESEARCH.md +0 -0
  74. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/INSTRUCTIONS_OLD_DEPRECATED.md +0 -0
  75. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/MEMORY.md +0 -0
  76. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/OUTPUT_STYLE.md +0 -0
  77. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/WORKFLOW.md +0 -0
  78. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/__init__.py +0 -0
  79. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/agent-template.yaml +0 -0
  80. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/agent_loader.py +0 -0
  81. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/agent_loader_integration.py +0 -0
  82. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/agents_metadata.py +0 -0
  83. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/async_agent_loader.py +0 -0
  84. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/base_agent.json +0 -0
  85. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/base_agent_loader.py +0 -0
  86. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/frontmatter_validator.py +0 -0
  87. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/system_agent_config.py +0 -0
  88. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/.claude-mpm/memories/README.md +0 -0
  89. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/.claude-mpm/memories/engineer_memories.md +0 -0
  90. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/README.md +0 -0
  91. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/__init__.py +0 -0
  92. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/agent-manager.json +0 -0
  93. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/agentic-coder-optimizer.json +0 -0
  94. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/api_qa.json +0 -0
  95. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/circuit_breakers.md +0 -0
  96. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/clerk-ops.json +0 -0
  97. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/code_analyzer.json +0 -0
  98. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/content-agent.json +0 -0
  99. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/dart_engineer.json +0 -0
  100. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/data_engineer.json +0 -0
  101. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/documentation.json +0 -0
  102. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/engineer.json +0 -0
  103. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/gcp_ops_agent.json +0 -0
  104. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/git_file_tracking.md +0 -0
  105. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/golang_engineer.json +0 -0
  106. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/imagemagick.json +0 -0
  107. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/java_engineer.json +0 -0
  108. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/local_ops_agent.json +0 -0
  109. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/logs/prompts/agent_engineer_20250826_014258_728.md +0 -0
  110. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/logs/prompts/agent_engineer_20250901_010124_142.md +0 -0
  111. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/memory_manager.json +0 -0
  112. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/nextjs_engineer.json +0 -0
  113. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/ops.json +0 -0
  114. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/php-engineer.json +0 -0
  115. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/pm_examples.md +0 -0
  116. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/pm_red_flags.md +0 -0
  117. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/product_owner.json +0 -0
  118. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/project_organizer.json +0 -0
  119. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/prompt-engineer.json +0 -0
  120. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/python_engineer.json +0 -0
  121. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/qa.json +0 -0
  122. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/react_engineer.json +0 -0
  123. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/refactoring_engineer.json +0 -0
  124. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/research.json +0 -0
  125. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/response_format.md +0 -0
  126. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/ruby-engineer.json +0 -0
  127. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/rust_engineer.json +0 -0
  128. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/security.json +0 -0
  129. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/ticketing.json +0 -0
  130. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/typescript_engineer.json +0 -0
  131. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/validation_templates.md +0 -0
  132. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/vercel_ops_agent.json +0 -0
  133. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/version_control.json +0 -0
  134. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/web_qa.json +0 -0
  135. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/agents/templates/web_ui.json +0 -0
  136. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/__main__.py +0 -0
  137. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/__init__.py +0 -0
  138. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/agent_manager.py +0 -0
  139. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/agents.py +0 -0
  140. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/agents_detect.py +0 -0
  141. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/agents_recommend.py +0 -0
  142. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/aggregate.py +0 -0
  143. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/analyze.py +0 -0
  144. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/analyze_code.py +0 -0
  145. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/auto_configure.py +0 -0
  146. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/cleanup.py +0 -0
  147. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/cleanup_orphaned_agents.py +0 -0
  148. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/config.py +0 -0
  149. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/configure.py +0 -0
  150. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/dashboard.py +0 -0
  151. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/debug.py +0 -0
  152. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/doctor.py +0 -0
  153. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/info.py +0 -0
  154. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mcp.py +0 -0
  155. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mcp_command_router.py +0 -0
  156. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mcp_config.py +0 -0
  157. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mcp_config_commands.py +0 -0
  158. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mcp_external_commands.py +0 -0
  159. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mcp_install_commands.py +0 -0
  160. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mcp_pipx_config.py +0 -0
  161. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mcp_server_commands.py +0 -0
  162. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mcp_setup_external.py +0 -0
  163. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mcp_tool_commands.py +0 -0
  164. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/memory.py +0 -0
  165. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/monitor.py +0 -0
  166. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mpm_init.py +0 -0
  167. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/mpm_init_handler.py +0 -0
  168. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/run.py +0 -0
  169. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/search.py +0 -0
  170. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/tickets.py +0 -0
  171. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/uninstall.py +0 -0
  172. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/upgrade.py +0 -0
  173. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/commands/verify.py +0 -0
  174. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/interactive/__init__.py +0 -0
  175. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/interactive/agent_wizard.py +0 -0
  176. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parser.py +0 -0
  177. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/__init__.py +0 -0
  178. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/agent_manager_parser.py +0 -0
  179. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/agents_parser.py +0 -0
  180. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/analyze_code_parser.py +0 -0
  181. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/analyze_parser.py +0 -0
  182. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/auto_configure_parser.py +0 -0
  183. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/config_parser.py +0 -0
  184. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/configure_parser.py +0 -0
  185. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/dashboard_parser.py +0 -0
  186. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/debug_parser.py +0 -0
  187. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/mcp_parser.py +0 -0
  188. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/memory_parser.py +0 -0
  189. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/monitor_parser.py +0 -0
  190. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/mpm_init_parser.py +0 -0
  191. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/run_parser.py +0 -0
  192. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/search_parser.py +0 -0
  193. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/parsers/tickets_parser.py +0 -0
  194. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/shared/__init__.py +0 -0
  195. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/shared/argument_patterns.py +0 -0
  196. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/shared/base_command.py +0 -0
  197. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/shared/error_handling.py +0 -0
  198. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/shared/output_formatters.py +0 -0
  199. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/startup_logging.py +0 -0
  200. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/ticket_cli.py +0 -0
  201. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli/utils.py +0 -0
  202. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli_module/__init__.py +0 -0
  203. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli_module/args.py +0 -0
  204. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli_module/commands.py +0 -0
  205. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/cli_module/migration_example.py +0 -0
  206. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/commands/__init__.py +0 -0
  207. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/commands/mpm-config.md +0 -0
  208. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/commands/mpm-doctor.md +0 -0
  209. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/commands/mpm-init.md +0 -0
  210. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/commands/mpm-monitor.md +0 -0
  211. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/commands/mpm-organize.md +0 -0
  212. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/commands/mpm-status.md +0 -0
  213. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/commands/mpm-tickets.md +0 -0
  214. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/commands/mpm.md +0 -0
  215. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/config/__init__.py +0 -0
  216. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/config/agent_config.py +0 -0
  217. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/config/experimental_features.py +0 -0
  218. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/config/paths.py +0 -0
  219. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/config/socketio_config.py +0 -0
  220. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/constants.py +0 -0
  221. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/__init__.py +0 -0
  222. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/agent_name_normalizer.py +0 -0
  223. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/agent_registry.py +0 -0
  224. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/agent_session_manager.py +0 -0
  225. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/api_validator.py +0 -0
  226. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/base_service.py +0 -0
  227. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/cache.py +0 -0
  228. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/claude_runner.py +0 -0
  229. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/config.py +0 -0
  230. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/config_aliases.py +0 -0
  231. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/config_constants.py +0 -0
  232. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/constants.py +0 -0
  233. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/container.py +0 -0
  234. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/error_handler.py +0 -0
  235. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/exceptions.py +0 -0
  236. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/factories.py +0 -0
  237. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/file_utils.py +0 -0
  238. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/__init__.py +0 -0
  239. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/formatters/__init__.py +0 -0
  240. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/formatters/capability_generator.py +0 -0
  241. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/formatters/content_formatter.py +0 -0
  242. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/formatters/context_generator.py +0 -0
  243. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/loaders/__init__.py +0 -0
  244. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/loaders/agent_loader.py +0 -0
  245. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/loaders/file_loader.py +0 -0
  246. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/loaders/instruction_loader.py +0 -0
  247. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/loaders/packaged_loader.py +0 -0
  248. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/processors/__init__.py +0 -0
  249. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/processors/memory_processor.py +0 -0
  250. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/processors/metadata_processor.py +0 -0
  251. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework/processors/template_processor.py +0 -0
  252. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/framework_loader.py +0 -0
  253. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/hook_manager.py +0 -0
  254. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/hook_performance_config.py +0 -0
  255. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/injectable_service.py +0 -0
  256. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/instruction_reinforcement_hook.py +0 -0
  257. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/interfaces.py +0 -0
  258. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/lazy.py +0 -0
  259. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/log_manager.py +0 -0
  260. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/logger.py +0 -0
  261. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/logging_config.py +0 -0
  262. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/logging_utils.py +0 -0
  263. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/minimal_framework_loader.py +0 -0
  264. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/mixins.py +0 -0
  265. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/oneshot_session.py +0 -0
  266. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/optimized_agent_loader.py +0 -0
  267. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/optimized_startup.py +0 -0
  268. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/output_style_manager.py +0 -0
  269. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/pm_hook_interceptor.py +0 -0
  270. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/service_registry.py +0 -0
  271. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/session_manager.py +0 -0
  272. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/shared/__init__.py +0 -0
  273. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/shared/config_loader.py +0 -0
  274. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/shared/path_resolver.py +0 -0
  275. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/shared/singleton_manager.py +0 -0
  276. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/socketio_pool.py +0 -0
  277. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/tool_access_control.py +0 -0
  278. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/types.py +0 -0
  279. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/typing_utils.py +0 -0
  280. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/unified_agent_registry.py +0 -0
  281. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/unified_config.py +0 -0
  282. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/core/unified_paths.py +0 -0
  283. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/.claude-mpm/socketio-instances.json +0 -0
  284. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/__init__.py +0 -0
  285. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/analysis_runner.py +0 -0
  286. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/api/simple_directory.py +0 -0
  287. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/index.html +0 -0
  288. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/open_dashboard.py +0 -0
  289. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/react/components/DataInspector/DataInspector.module.css +0 -0
  290. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/react/components/EventViewer/EventViewer.module.css +0 -0
  291. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/react/components/shared/ConnectionStatus.module.css +0 -0
  292. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/react/components/shared/FilterBar.module.css +0 -0
  293. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/activity_dashboard_fixed.html +0 -0
  294. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/activity_dashboard_test.html +0 -0
  295. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_activity_connection.html +0 -0
  296. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_claude_tree_tab.html +0 -0
  297. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_dashboard.html +0 -0
  298. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_dashboard_fixed.html +0 -0
  299. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_dashboard_verification.html +0 -0
  300. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_file_data.html +0 -0
  301. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_file_tree_empty_state.html +0 -0
  302. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_file_tree_fix.html +0 -0
  303. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_file_tree_rename.html +0 -0
  304. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_file_tree_tab.html +0 -0
  305. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_file_viewer.html +0 -0
  306. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_final_activity.html +0 -0
  307. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/archive/test_tab_fix.html +0 -0
  308. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/assets/events.DjpNxWNo.css +0 -0
  309. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/activity-tree.js +0 -0
  310. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/agent-hierarchy.js +0 -0
  311. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/agent-inference.js +0 -0
  312. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/build-tracker.js +0 -0
  313. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/code-simple.js +0 -0
  314. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/code-tree/tree-breadcrumb.js +0 -0
  315. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/code-tree/tree-constants.js +0 -0
  316. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/code-tree/tree-search.js +0 -0
  317. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/code-tree/tree-utils.js +0 -0
  318. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/code-tree.js +0 -0
  319. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/code-viewer.js +0 -0
  320. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/connection-debug.js +0 -0
  321. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/diff-viewer.js +0 -0
  322. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/event-processor.js +0 -0
  323. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/event-viewer.js +0 -0
  324. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/export-manager.js +0 -0
  325. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/file-change-tracker.js +0 -0
  326. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/file-change-viewer.js +0 -0
  327. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/file-tool-tracker.js +0 -0
  328. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/file-viewer.js +0 -0
  329. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/hud-library-loader.js +0 -0
  330. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/hud-manager.js +0 -0
  331. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/hud-visualizer.js +0 -0
  332. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/module-viewer.js +0 -0
  333. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/nav-bar.js +0 -0
  334. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/page-structure.js +0 -0
  335. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/session-manager.js +0 -0
  336. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/socket-manager.js +0 -0
  337. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/ui-state-manager.js +0 -0
  338. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/unified-data-viewer.js +0 -0
  339. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/components/working-directory.js +0 -0
  340. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/connection-manager.js +0 -0
  341. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/dashboard.js +0 -0
  342. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/extension-error-handler.js +0 -0
  343. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/react/events.js +0 -0
  344. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/shared/dom-helpers.js +0 -0
  345. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/shared/event-bus.js +0 -0
  346. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/shared/event-filter-service.js +0 -0
  347. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/shared/logger.js +0 -0
  348. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/shared/page-structure.js +0 -0
  349. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/shared/tooltip-service.js +0 -0
  350. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/socket-client.js +0 -0
  351. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/built/tab-isolation-fix.js +0 -0
  352. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/css/activity.css +0 -0
  353. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/css/code-tree.css +0 -0
  354. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/css/connection-status.css +0 -0
  355. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/css/dashboard.css +0 -0
  356. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/assets/events.DjpNxWNo.css +0 -0
  357. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/activity-tree.js +0 -0
  358. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/agent-inference.js +0 -0
  359. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/code-tree.js +0 -0
  360. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/code-viewer.js +0 -0
  361. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/event-processor.js +0 -0
  362. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/event-viewer.js +0 -0
  363. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/export-manager.js +0 -0
  364. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/file-tool-tracker.js +0 -0
  365. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/file-viewer.js +0 -0
  366. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/hud-library-loader.js +0 -0
  367. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/hud-manager.js +0 -0
  368. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/hud-visualizer.js +0 -0
  369. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/module-viewer.js +0 -0
  370. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/session-manager.js +0 -0
  371. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/socket-manager.js +0 -0
  372. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/ui-state-manager.js +0 -0
  373. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/unified-data-viewer.js +0 -0
  374. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/components/working-directory.js +0 -0
  375. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/dashboard.js +0 -0
  376. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/react/events.js +0 -0
  377. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/dist/socket-client.js +0 -0
  378. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/events.html +0 -0
  379. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/index.html +0 -0
  380. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/activity-tree.js +0 -0
  381. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/agent-hierarchy.js +0 -0
  382. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/agent-inference.js +0 -0
  383. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/build-tracker.js +0 -0
  384. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/code-simple.js +0 -0
  385. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/code-tree/tree-breadcrumb.js +0 -0
  386. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/code-tree/tree-constants.js +0 -0
  387. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/code-tree/tree-search.js +0 -0
  388. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/code-tree/tree-utils.js +0 -0
  389. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/code-tree.js +0 -0
  390. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/code-viewer.js +0 -0
  391. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/connection-debug.js +0 -0
  392. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/diff-viewer.js +0 -0
  393. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/event-processor.js +0 -0
  394. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/event-viewer.js +0 -0
  395. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/export-manager.js +0 -0
  396. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/file-change-tracker.js +0 -0
  397. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/file-change-viewer.js +0 -0
  398. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/file-tool-tracker.js +0 -0
  399. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/file-viewer.js +0 -0
  400. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/hud-library-loader.js +0 -0
  401. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/hud-manager.js +0 -0
  402. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/hud-visualizer.js +0 -0
  403. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/module-viewer.js +0 -0
  404. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/session-manager.js +0 -0
  405. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/socket-manager.js +0 -0
  406. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/ui-state-manager.js +0 -0
  407. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/unified-data-viewer.js +0 -0
  408. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/components/working-directory.js +0 -0
  409. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/connection-manager.js +0 -0
  410. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/dashboard.js +0 -0
  411. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/extension-error-handler.js +0 -0
  412. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/shared/dom-helpers.js +0 -0
  413. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/shared/event-bus.js +0 -0
  414. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/shared/logger.js +0 -0
  415. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/shared/tooltip-service.js +0 -0
  416. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/socket-client.js +0 -0
  417. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/stores/dashboard-store.js +0 -0
  418. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/js/tab-isolation-fix.js +0 -0
  419. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/legacy/activity.html +0 -0
  420. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/legacy/agents.html +0 -0
  421. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/legacy/files.html +0 -0
  422. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/legacy/tools.html +0 -0
  423. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/monitors.html +0 -0
  424. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/production/events.html +0 -0
  425. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/production/main.html +0 -0
  426. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/production/monitors.html +0 -0
  427. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/socket.io.min.js +0 -0
  428. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/socket.io.v4.8.1.backup.js +0 -0
  429. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/test-archive/dashboard.html +0 -0
  430. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/test-archive/debug-events.html +0 -0
  431. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/test-archive/test-navigation.html +0 -0
  432. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/test-archive/test-react-exports.html +0 -0
  433. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/static/test-archive/test_debug.html +0 -0
  434. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/templates/code_simple.html +0 -0
  435. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/templates/index.html +0 -0
  436. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/dashboard/test_dashboard.html +0 -0
  437. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/experimental/__init__.py +0 -0
  438. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/experimental/cli_enhancements.py +0 -0
  439. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/generators/__init__.py +0 -0
  440. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/generators/agent_profile_generator.py +0 -0
  441. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/__init__.py +0 -0
  442. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/base_hook.py +0 -0
  443. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/__init__.py +0 -0
  444. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/connection_pool.py +0 -0
  445. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/event_handlers.py +0 -0
  446. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/hook_handler.py +0 -0
  447. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/hook_handler_eventbus.py +0 -0
  448. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/hook_handler_original.py +0 -0
  449. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/hook_handler_refactored.py +0 -0
  450. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/hook_wrapper.sh +0 -0
  451. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/installer.py +0 -0
  452. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/memory_integration.py +0 -0
  453. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/response_tracking.py +0 -0
  454. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/services/__init__.py +0 -0
  455. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/services/connection_manager.py +0 -0
  456. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/services/connection_manager_http.py +0 -0
  457. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/services/duplicate_detector.py +0 -0
  458. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/services/state_manager.py +0 -0
  459. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/services/subagent_processor.py +0 -0
  460. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/claude_hooks/tool_analysis.py +0 -0
  461. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/failure_learning/__init__.py +0 -0
  462. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/failure_learning/failure_detection_hook.py +0 -0
  463. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/failure_learning/fix_detection_hook.py +0 -0
  464. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/failure_learning/learning_extraction_hook.py +0 -0
  465. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/instruction_reinforcement.py +0 -0
  466. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/kuzu_enrichment_hook.py +0 -0
  467. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/kuzu_memory_hook.py +0 -0
  468. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/kuzu_response_hook.py +0 -0
  469. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/memory_integration_hook.py +0 -0
  470. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/tool_call_interceptor.py +0 -0
  471. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/hooks/validation_hooks.py +0 -0
  472. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/init.py +0 -0
  473. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/models/__init__.py +0 -0
  474. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/models/agent_definition.py +0 -0
  475. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/models/agent_session.py +0 -0
  476. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/schemas/__init__.py +0 -0
  477. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/scripts/__init__.py +0 -0
  478. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/scripts/claude-hook-handler.sh +0 -0
  479. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/scripts/launch_monitor.py +0 -0
  480. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/scripts/mcp_server.py +0 -0
  481. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/scripts/mcp_wrapper.py +0 -0
  482. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/scripts/mpm_doctor.py +0 -0
  483. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/scripts/socketio_daemon.py +0 -0
  484. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/scripts/start_activity_logging.py +0 -0
  485. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/__init__.py +0 -0
  486. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agent_capabilities_service.py +0 -0
  487. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/__init__.py +0 -0
  488. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/agent_builder.py +0 -0
  489. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/auto_config_manager.py +0 -0
  490. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/__init__.py +0 -0
  491. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_config_provider.py +0 -0
  492. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_configuration_manager.py +0 -0
  493. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_definition_factory.py +0 -0
  494. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_deployment.py +0 -0
  495. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_discovery_service.py +0 -0
  496. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_environment_manager.py +0 -0
  497. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_filesystem_manager.py +0 -0
  498. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_format_converter.py +0 -0
  499. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_frontmatter_validator.py +0 -0
  500. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_lifecycle_manager.py +0 -0
  501. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_lifecycle_manager_refactored.py +0 -0
  502. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_metrics_collector.py +0 -0
  503. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_operation_service.py +0 -0
  504. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_record_service.py +0 -0
  505. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_restore_handler.py +0 -0
  506. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_state_service.py +0 -0
  507. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_template_builder.py +0 -0
  508. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_validator.py +0 -0
  509. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_version_manager.py +0 -0
  510. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agent_versioning.py +0 -0
  511. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/agents_directory_resolver.py +0 -0
  512. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/async_agent_deployment.py +0 -0
  513. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/base_agent_locator.py +0 -0
  514. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/config/__init__.py +0 -0
  515. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/config/deployment_config.py +0 -0
  516. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/config/deployment_config_manager.py +0 -0
  517. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/deployment_config_loader.py +0 -0
  518. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/deployment_results_manager.py +0 -0
  519. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/deployment_type_detector.py +0 -0
  520. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/deployment_wrapper.py +0 -0
  521. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/facade/__init__.py +0 -0
  522. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/facade/async_deployment_executor.py +0 -0
  523. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/facade/deployment_executor.py +0 -0
  524. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/facade/deployment_facade.py +0 -0
  525. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/facade/sync_deployment_executor.py +0 -0
  526. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/interface_adapter.py +0 -0
  527. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/lifecycle_health_checker.py +0 -0
  528. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/lifecycle_performance_tracker.py +0 -0
  529. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/local_template_deployment.py +0 -0
  530. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/multi_source_deployment_service.py +0 -0
  531. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/pipeline/__init__.py +0 -0
  532. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/pipeline/pipeline_builder.py +0 -0
  533. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/pipeline/pipeline_context.py +0 -0
  534. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/pipeline/pipeline_executor.py +0 -0
  535. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/__init__.py +0 -0
  536. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/agent_processing_step.py +0 -0
  537. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/base_step.py +0 -0
  538. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/configuration_step.py +0 -0
  539. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/target_directory_step.py +0 -0
  540. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/pipeline/steps/validation_step.py +0 -0
  541. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/processors/__init__.py +0 -0
  542. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/processors/agent_deployment_context.py +0 -0
  543. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/processors/agent_deployment_result.py +0 -0
  544. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/processors/agent_processor.py +0 -0
  545. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/refactored_agent_deployment_service.py +0 -0
  546. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/results/__init__.py +0 -0
  547. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/results/deployment_metrics.py +0 -0
  548. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/results/deployment_result_builder.py +0 -0
  549. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/single_agent_deployer.py +0 -0
  550. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/strategies/__init__.py +0 -0
  551. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/strategies/base_strategy.py +0 -0
  552. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/strategies/project_strategy.py +0 -0
  553. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/strategies/strategy_selector.py +0 -0
  554. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/strategies/system_strategy.py +0 -0
  555. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/strategies/user_strategy.py +0 -0
  556. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/system_instructions_deployer.py +0 -0
  557. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/validation/__init__.py +0 -0
  558. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/validation/agent_validator.py +0 -0
  559. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/validation/deployment_validator.py +0 -0
  560. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/validation/template_validator.py +0 -0
  561. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/deployment/validation/validation_result.py +0 -0
  562. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/loading/__init__.py +0 -0
  563. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/loading/agent_profile_loader.py +0 -0
  564. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/loading/base_agent_manager.py +0 -0
  565. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/loading/framework_agent_loader.py +0 -0
  566. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/local_template_manager.py +0 -0
  567. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/management/__init__.py +0 -0
  568. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/management/agent_capabilities_generator.py +0 -0
  569. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/management/agent_management_service.py +0 -0
  570. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/memory/__init__.py +0 -0
  571. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/memory/agent_memory_manager.py +0 -0
  572. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/memory/agent_persistence_service.py +0 -0
  573. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/memory/content_manager.py +0 -0
  574. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/memory/memory_categorization_service.py +0 -0
  575. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/memory/memory_file_service.py +0 -0
  576. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/memory/memory_format_service.py +0 -0
  577. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/memory/memory_limits_service.py +0 -0
  578. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/memory/template_generator.py +0 -0
  579. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/observers.py +0 -0
  580. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/recommender.py +0 -0
  581. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/registry/__init__.py +0 -0
  582. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/registry/deployed_agent_discovery.py +0 -0
  583. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/agents/registry/modification_tracker.py +0 -0
  584. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/async_session_logger.py +0 -0
  585. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/claude_session_logger.py +0 -0
  586. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/__init__.py +0 -0
  587. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/agent_cleanup_service.py +0 -0
  588. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/agent_dependency_service.py +0 -0
  589. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/agent_listing_service.py +0 -0
  590. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/agent_output_formatter.py +0 -0
  591. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/agent_validation_service.py +0 -0
  592. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/memory_crud_service.py +0 -0
  593. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/memory_output_formatter.py +0 -0
  594. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/session_manager.py +0 -0
  595. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/startup_checker.py +0 -0
  596. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/cli/unified_dashboard_manager.py +0 -0
  597. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/command_deployment_service.py +0 -0
  598. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/command_handler_service.py +0 -0
  599. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/communication/__init__.py +0 -0
  600. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/__init__.py +0 -0
  601. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/base.py +0 -0
  602. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/cache_manager.py +0 -0
  603. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/interfaces/agent.py +0 -0
  604. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/interfaces/communication.py +0 -0
  605. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/interfaces/infrastructure.py +0 -0
  606. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/interfaces/project.py +0 -0
  607. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/interfaces/service.py +0 -0
  608. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/interfaces.py +0 -0
  609. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/memory_manager.py +0 -0
  610. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/models/agent_config.py +0 -0
  611. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/models/toolchain.py +0 -0
  612. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/path_resolver.py +0 -0
  613. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/service_container.py +0 -0
  614. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/core/service_interfaces.py +0 -0
  615. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/__init__.py +0 -0
  616. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/__init__.py +0 -0
  617. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/agent_check.py +0 -0
  618. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/base_check.py +0 -0
  619. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/claude_code_check.py +0 -0
  620. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/common_issues_check.py +0 -0
  621. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/configuration_check.py +0 -0
  622. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/filesystem_check.py +0 -0
  623. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/installation_check.py +0 -0
  624. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/instructions_check.py +0 -0
  625. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/mcp_check.py +0 -0
  626. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/mcp_services_check.py +0 -0
  627. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/monitor_check.py +0 -0
  628. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/checks/startup_log_check.py +0 -0
  629. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/diagnostic_runner.py +0 -0
  630. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/doctor_reporter.py +0 -0
  631. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/diagnostics/models.py +0 -0
  632. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/event_aggregator.py +0 -0
  633. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/event_bus/__init__.py +0 -0
  634. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/event_bus/config.py +0 -0
  635. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/event_bus/direct_relay.py +0 -0
  636. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/event_bus/event_bus.py +0 -0
  637. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/event_bus/relay.py +0 -0
  638. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/__init__.py +0 -0
  639. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/consumers/__init__.py +0 -0
  640. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/consumers/dead_letter.py +0 -0
  641. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/consumers/logging.py +0 -0
  642. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/consumers/metrics.py +0 -0
  643. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/consumers/socketio.py +0 -0
  644. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/core.py +0 -0
  645. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/interfaces.py +0 -0
  646. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/producers/__init__.py +0 -0
  647. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/producers/hook.py +0 -0
  648. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/events/producers/system.py +0 -0
  649. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/exceptions.py +0 -0
  650. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/__init__.py +0 -0
  651. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/content_assembler.py +0 -0
  652. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/content_validator.py +0 -0
  653. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/deployment_manager.py +0 -0
  654. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/__init__.py +0 -0
  655. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/agents.py +0 -0
  656. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/claude_pm_init.py +0 -0
  657. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/core_responsibilities.py +0 -0
  658. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/delegation_constraints.py +0 -0
  659. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/environment_config.py +0 -0
  660. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/footer.py +0 -0
  661. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/header.py +0 -0
  662. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/orchestration_principles.py +0 -0
  663. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/role_designation.py +0 -0
  664. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/subprocess_validation.py +0 -0
  665. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/todo_task_tools.py +0 -0
  666. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_generators/troubleshooting.py +0 -0
  667. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/section_manager.py +0 -0
  668. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/framework_claude_md_generator/version_manager.py +0 -0
  669. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/hook_installer_service.py +0 -0
  670. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/hook_service.py +0 -0
  671. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/__init__.py +0 -0
  672. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/context_preservation.py +0 -0
  673. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/daemon_manager.py +0 -0
  674. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/logging.py +0 -0
  675. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/monitoring/__init__.py +0 -0
  676. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/monitoring/aggregator.py +0 -0
  677. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/monitoring/base.py +0 -0
  678. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/monitoring/legacy.py +0 -0
  679. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/monitoring/network.py +0 -0
  680. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/monitoring/process.py +0 -0
  681. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/monitoring/resources.py +0 -0
  682. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/monitoring/service.py +0 -0
  683. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/infrastructure/monitoring.py +0 -0
  684. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_config_manager.py +0 -0
  685. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/__init__.py +0 -0
  686. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/auto_configure.py +0 -0
  687. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/config/__init__.py +0 -0
  688. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/config/config_loader.py +0 -0
  689. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/config/config_schema.py +0 -0
  690. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/config/configuration.py +0 -0
  691. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/core/__init__.py +0 -0
  692. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/core/base.py +0 -0
  693. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/core/exceptions.py +0 -0
  694. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/core/interfaces.py +0 -0
  695. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/core/process_pool.py +0 -0
  696. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/core/singleton_manager.py +0 -0
  697. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/core/startup_verification.py +0 -0
  698. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/main.py +0 -0
  699. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/registry/__init__.py +0 -0
  700. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/registry/service_registry.py +0 -0
  701. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/registry/tool_registry.py +0 -0
  702. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/server/__init__.py +0 -0
  703. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/server/mcp_gateway.py +0 -0
  704. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/server/stdio_handler.py +0 -0
  705. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/server/stdio_server.py +0 -0
  706. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/tools/__init__.py +0 -0
  707. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/tools/base_adapter.py +0 -0
  708. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/tools/document_summarizer.py +0 -0
  709. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/tools/external_mcp_services.py +0 -0
  710. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/tools/health_check_tool.py +0 -0
  711. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/tools/hello_world.py +0 -0
  712. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/tools/kuzu_memory_service.py +0 -0
  713. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/utils/__init__.py +0 -0
  714. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/utils/package_version_checker.py +0 -0
  715. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_gateway/utils/update_preferences.py +0 -0
  716. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/mcp_service_verifier.py +0 -0
  717. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/memory/__init__.py +0 -0
  718. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/memory/builder.py +0 -0
  719. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/memory/cache/__init__.py +0 -0
  720. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/memory/cache/shared_prompt_cache.py +0 -0
  721. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/memory/cache/simple_cache.py +0 -0
  722. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/memory/failure_tracker.py +0 -0
  723. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/memory/indexed_memory.py +0 -0
  724. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/memory/optimizer.py +0 -0
  725. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/memory/router.py +0 -0
  726. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/memory_hook_service.py +0 -0
  727. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/__init__.py +0 -0
  728. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/daemon.py +0 -0
  729. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/daemon_manager.py +0 -0
  730. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/event_emitter.py +0 -0
  731. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/handlers/__init__.py +0 -0
  732. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/handlers/code_analysis.py +0 -0
  733. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/handlers/dashboard.py +0 -0
  734. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/handlers/file.py +0 -0
  735. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/handlers/hooks.py +0 -0
  736. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/management/__init__.py +0 -0
  737. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/management/health.py +0 -0
  738. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/management/lifecycle.py +0 -0
  739. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor/server.py +0 -0
  740. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/monitor_build_service.py +0 -0
  741. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/orphan_detection.py +0 -0
  742. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/port_manager.py +0 -0
  743. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/__init__.py +0 -0
  744. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/analyzer.py +0 -0
  745. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/analyzer_refactored.py +0 -0
  746. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/analyzer_v2.py +0 -0
  747. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/architecture_analyzer.py +0 -0
  748. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/archive_manager.py +0 -0
  749. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/dependency_analyzer.py +0 -0
  750. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/detection_strategies.py +0 -0
  751. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/documentation_manager.py +0 -0
  752. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/enhanced_analyzer.py +0 -0
  753. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/language_analyzer.py +0 -0
  754. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/metrics_collector.py +0 -0
  755. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/project_organizer.py +0 -0
  756. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/registry.py +0 -0
  757. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project/toolchain_analyzer.py +0 -0
  758. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/project_port_allocator.py +0 -0
  759. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/recovery_manager.py +0 -0
  760. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/response_tracker.py +0 -0
  761. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/runner_configuration_service.py +0 -0
  762. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/self_upgrade_service.py +0 -0
  763. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/session_management_service.py +0 -0
  764. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/session_manager.py +0 -0
  765. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/shared/__init__.py +0 -0
  766. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/shared/async_service_base.py +0 -0
  767. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/shared/config_service_base.py +0 -0
  768. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/shared/lifecycle_service_base.py +0 -0
  769. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/shared/manager_base.py +0 -0
  770. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/shared/service_factory.py +0 -0
  771. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/__init__.py +0 -0
  772. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/client_proxy.py +0 -0
  773. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/dashboard_server.py +0 -0
  774. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/event_normalizer.py +0 -0
  775. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/__init__.py +0 -0
  776. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/base.py +0 -0
  777. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/code_analysis.py +0 -0
  778. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/connection.py +0 -0
  779. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/connection_handler.py +0 -0
  780. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/file.py +0 -0
  781. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/git.py +0 -0
  782. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/hook.py +0 -0
  783. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/memory.py +0 -0
  784. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/project.py +0 -0
  785. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/handlers/registry.py +0 -0
  786. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/migration_utils.py +0 -0
  787. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/monitor_client.py +0 -0
  788. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/server/__init__.py +0 -0
  789. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/server/broadcaster.py +0 -0
  790. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/server/connection_manager.py +0 -0
  791. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/server/core.py +0 -0
  792. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/server/eventbus_integration.py +0 -0
  793. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio/server/main.py +0 -0
  794. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio_client_manager.py +0 -0
  795. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/socketio_server.py +0 -0
  796. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/subprocess_launcher_service.py +0 -0
  797. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/system_instructions_service.py +0 -0
  798. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/ticket_manager.py +0 -0
  799. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/ticket_services/__init__.py +0 -0
  800. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/ticket_services/crud_service.py +0 -0
  801. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/ticket_services/formatter_service.py +0 -0
  802. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/ticket_services/search_service.py +0 -0
  803. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/ticket_services/validation_service.py +0 -0
  804. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/ticket_services/workflow_service.py +0 -0
  805. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/__init__.py +0 -0
  806. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/analyzer_strategies/__init__.py +0 -0
  807. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/analyzer_strategies/code_analyzer.py +0 -0
  808. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/analyzer_strategies/dependency_analyzer.py +0 -0
  809. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/analyzer_strategies/performance_analyzer.py +0 -0
  810. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/analyzer_strategies/security_analyzer.py +0 -0
  811. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/analyzer_strategies/structure_analyzer.py +0 -0
  812. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/config_strategies/__init__.py +0 -0
  813. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/config_strategies/config_schema.py +0 -0
  814. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/config_strategies/context_strategy.py +0 -0
  815. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/config_strategies/error_handling_strategy.py +0 -0
  816. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/config_strategies/file_loader_strategy.py +0 -0
  817. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/config_strategies/unified_config_service.py +0 -0
  818. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/config_strategies/validation_strategy.py +0 -0
  819. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/deployment_strategies/__init__.py +0 -0
  820. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/deployment_strategies/base.py +0 -0
  821. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/deployment_strategies/cloud_strategies.py +0 -0
  822. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/deployment_strategies/local.py +0 -0
  823. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/deployment_strategies/utils.py +0 -0
  824. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/deployment_strategies/vercel.py +0 -0
  825. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/interfaces.py +0 -0
  826. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/migration.py +0 -0
  827. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/strategies.py +0 -0
  828. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/unified_analyzer.py +0 -0
  829. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/unified_config.py +0 -0
  830. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/unified/unified_deployment.py +0 -0
  831. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/utility_service.py +0 -0
  832. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/version_control/__init__.py +0 -0
  833. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/version_control/branch_strategy.py +0 -0
  834. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/version_control/conflict_resolution.py +0 -0
  835. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/version_control/git_operations.py +0 -0
  836. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/version_control/semantic_versioning.py +0 -0
  837. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/version_control/version_parser.py +0 -0
  838. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/version_service.py +0 -0
  839. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/visualization/__init__.py +0 -0
  840. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/services/visualization/mermaid_generator.py +0 -0
  841. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/storage/__init__.py +0 -0
  842. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/storage/state_storage.py +0 -0
  843. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/ticket_wrapper.py +0 -0
  844. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/tools/__init__.py +0 -0
  845. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/tools/__main__.py +0 -0
  846. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/tools/code_tree_analyzer.py +0 -0
  847. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/tools/code_tree_builder.py +0 -0
  848. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/tools/code_tree_events.py +0 -0
  849. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/tools/socketio_debug.py +0 -0
  850. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/__init__.py +0 -0
  851. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/agent_dependency_loader.py +0 -0
  852. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/common.py +0 -0
  853. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/config_manager.py +0 -0
  854. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/console.py +0 -0
  855. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/database_connector.py +0 -0
  856. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/dependency_cache.py +0 -0
  857. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/dependency_manager.py +0 -0
  858. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/dependency_strategies.py +0 -0
  859. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/display_helper.py +0 -0
  860. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/environment_context.py +0 -0
  861. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/error_handler.py +0 -0
  862. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/file_utils.py +0 -0
  863. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/framework_detection.py +0 -0
  864. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/git_analyzer.py +0 -0
  865. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/import_migration_example.py +0 -0
  866. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/imports.py +0 -0
  867. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/log_cleanup.py +0 -0
  868. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/path_operations.py +0 -0
  869. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/robust_installer.py +0 -0
  870. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/session_logging.py +0 -0
  871. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/utils/subprocess_utils.py +0 -0
  872. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/validation/__init__.py +0 -0
  873. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/validation/agent_validator.py +0 -0
  874. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm/validation/frontmatter_validator.py +0 -0
  875. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm.egg-info/dependency_links.txt +0 -0
  876. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm.egg-info/entry_points.txt +0 -0
  877. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm.egg-info/requires.txt +0 -0
  878. {claude_mpm-4.13.1 → claude_mpm-4.14.0}/src/claude_mpm.egg-info/top_level.txt +0 -0
@@ -0,0 +1 @@
1
+ 460
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-mpm
3
- Version: 4.13.1
3
+ Version: 4.14.0
4
4
  Summary: Claude Multi-Agent Project Manager - Orchestrate Claude with agent delegation and ticket tracking
5
5
  Author-email: Bob Matsuoka <bob@matsuoka.com>
6
6
  Maintainer: Claude MPM Team
@@ -0,0 +1 @@
1
+ 4.14.0
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "claude-mpm"
7
- version = "4.13.1"
7
+ version = "4.14.0"
8
8
  description = "Claude Multi-Agent Project Manager - Orchestrate Claude with agent delegation and ticket tracking"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.8"
@@ -84,7 +84,7 @@ ignore-imports = false
84
84
 
85
85
  [tool.commitizen]
86
86
  name = "cz_conventional_commits"
87
- version = "4.13.1"
87
+ version = "4.14.0"
88
88
  version_files = [ "VERSION", "src/claude_mpm/VERSION", "package.json:version",]
89
89
  tag_format = "v$version"
90
90
  update_changelog_on_bump = true
@@ -0,0 +1 @@
1
+ 4.14.0
@@ -113,6 +113,73 @@ Read: /mpm-doctor # WRONG - not a file to read
113
113
  - MPM commands are system operations, NOT files or scripts
114
114
  - Always use SlashCommand tool for these operations
115
115
 
116
+ ## 🤖 AUTO-CONFIGURATION FEATURE (NEW!)
117
+
118
+ **IMPORTANT**: Claude MPM now includes intelligent auto-configuration that can detect project stacks and recommend the right agents automatically.
119
+
120
+ ### When to Suggest Auto-Configuration
121
+
122
+ PM SHOULD proactively suggest auto-configuration when:
123
+ 1. **New user/session**: First interaction in a project without deployed agents
124
+ 2. **Few agents deployed**: < 3 agents deployed but project seems to need more
125
+ 3. **User asks about agents**: "What agents should I use?" or "Which agents do I need?"
126
+ 4. **Stack changes detected**: User mentions adding new frameworks or tools
127
+ 5. **User struggles**: User manually deploying multiple agents one-by-one
128
+
129
+ ### Auto-Configuration Commands
130
+
131
+ **Three new MPM commands available**:
132
+ - `/mpm-auto-configure [--preview|--yes]` - Full auto-configuration workflow
133
+ - `/mpm-agents-detect` - Just show detected toolchain
134
+ - `/mpm-agents-recommend` - Show agent recommendations without deploying
135
+
136
+ ### Suggestion Patterns
137
+
138
+ **Example 1: First-time user**
139
+ ```
140
+ User: "I need help with my FastAPI project"
141
+ PM: "I notice this is a FastAPI project. Would you like me to run auto-configuration
142
+ to set up the right agents automatically? Run '/mpm-auto-configure --preview'
143
+ to see what would be configured."
144
+ ```
145
+
146
+ **Example 2: User manually deploying agents**
147
+ ```
148
+ User: "Deploy fastapi-engineer"
149
+ PM: "Deploying fastapi-engineer... By the way, you can use '/mpm-auto-configure'
150
+ to automatically detect your stack and deploy all recommended agents at once.
151
+ Would you like to try that instead?"
152
+ ```
153
+
154
+ **Example 3: User asks about agents**
155
+ ```
156
+ User: "What agents should I use for Next.js?"
157
+ PM: "Let me run auto-detection to give you personalized recommendations.
158
+ I'll use '/mpm-agents-detect' to scan your project, then
159
+ '/mpm-agents-recommend' to show exactly which agents fit your stack."
160
+ ```
161
+
162
+ ### Proactive Suggestion Template
163
+
164
+ When appropriate, include a helpful suggestion like:
165
+
166
+ ```
167
+ 💡 Tip: Try the new auto-configuration feature!
168
+ Run '/mpm-auto-configure --preview' to see which agents
169
+ are recommended for your project based on detected toolchain.
170
+
171
+ Supported: Python, Node.js, Rust, Go, and popular frameworks
172
+ like FastAPI, Next.js, React, Express, and more.
173
+ ```
174
+
175
+ ### Important Notes
176
+
177
+ - **Don't over-suggest**: Only mention once per session
178
+ - **User choice**: Always respect if user prefers manual configuration
179
+ - **Preview first**: Recommend --preview flag for first-time users
180
+ - **Not mandatory**: Auto-config is a convenience, not a requirement
181
+ - **Fallback available**: Manual agent deployment always works
182
+
116
183
  ## NO ASSERTION WITHOUT VERIFICATION RULE
117
184
 
118
185
  **CRITICAL**: PM MUST NEVER make claims without evidence from agents.
@@ -194,6 +261,7 @@ See [Validation Templates](templates/validation_templates.md#required-evidence-f
194
261
  | "error", "bug", "issue" | "I'll have QA reproduce this" | QA |
195
262
  | "slow", "performance" | "I'll have QA benchmark this" | QA |
196
263
  | "/mpm-doctor", "/mpm-status", etc | "I'll run the MPM command" | Use SlashCommand tool (NOT bash) |
264
+ | "/mpm-auto-configure", "/mpm-agents-detect" | "I'll run the auto-config command" | Use SlashCommand tool (NEW!) |
197
265
  | ANY question about code | "I'll have Research examine this" | Research |
198
266
 
199
267
  ### 🔴 CIRCUIT BREAKER - IMPLEMENTATION DETECTION 🔴
@@ -730,6 +730,16 @@ def _execute_command(command: str, args) -> int:
730
730
  # Convert CommandResult to exit code
731
731
  return result.exit_code if result else 0
732
732
 
733
+ # Handle local-deploy command with lazy import
734
+ if command == "local-deploy":
735
+ # Lazy import to avoid loading unless needed
736
+ from .commands.local_deploy import LocalDeployCommand
737
+
738
+ cmd = LocalDeployCommand()
739
+ result = cmd.run(args)
740
+ # Convert CommandResult to exit code
741
+ return result.exit_code if result else 0
742
+
733
743
  # Map stable commands to their implementations
734
744
  command_map = {
735
745
  CLICommands.RUN.value: run_session,
@@ -0,0 +1,536 @@
1
+ """
2
+ Local Deploy command implementation for claude-mpm.
3
+
4
+ WHY: This module provides CLI commands for managing local development deployments
5
+ using the UnifiedLocalOpsManager. Supports starting, stopping, monitoring, and
6
+ managing local processes with full health monitoring and auto-restart capabilities.
7
+
8
+ DESIGN DECISIONS:
9
+ - Use UnifiedLocalOpsManager as single entry point
10
+ - Rich terminal output for better user experience
11
+ - Subcommands: start, stop, restart, status, health, list, monitor, history
12
+ - Support both interactive and script-friendly output modes
13
+ """
14
+
15
+ import json
16
+ import time
17
+ from pathlib import Path
18
+ from typing import Optional
19
+
20
+ from rich.console import Console
21
+ from rich.live import Live
22
+ from rich.panel import Panel
23
+ from rich.table import Table
24
+ from rich.text import Text
25
+
26
+ from ...services.local_ops import (
27
+ ProcessStatus,
28
+ StartConfig,
29
+ UnifiedLocalOpsManager,
30
+ )
31
+ from ..shared import BaseCommand, CommandResult
32
+
33
+
34
+ class LocalDeployCommand(BaseCommand):
35
+ """Local Deploy command for managing local development deployments."""
36
+
37
+ def __init__(self):
38
+ super().__init__("local-deploy")
39
+ self.console = Console()
40
+ self.manager: Optional[UnifiedLocalOpsManager] = None
41
+
42
+ def validate_args(self, args) -> Optional[str]:
43
+ """Validate command arguments."""
44
+ if not hasattr(args, "local_deploy_command") or not args.local_deploy_command:
45
+ return "No subcommand specified. Use: start, stop, restart, status, list, monitor, history"
46
+
47
+ valid_commands = [
48
+ "start",
49
+ "stop",
50
+ "restart",
51
+ "status",
52
+ "health",
53
+ "list",
54
+ "monitor",
55
+ "history",
56
+ "enable-auto-restart",
57
+ "disable-auto-restart",
58
+ ]
59
+ if args.local_deploy_command not in valid_commands:
60
+ return f"Unknown subcommand: {args.local_deploy_command}. Valid commands: {', '.join(valid_commands)}"
61
+
62
+ # Validate command-specific arguments
63
+ if args.local_deploy_command == "start":
64
+ if not hasattr(args, "command") or not args.command:
65
+ return "Missing required argument: --command"
66
+
67
+ elif args.local_deploy_command in [
68
+ "stop",
69
+ "restart",
70
+ "status",
71
+ "health",
72
+ "history",
73
+ "enable-auto-restart",
74
+ "disable-auto-restart",
75
+ ]:
76
+ if not hasattr(args, "deployment_id") or not args.deployment_id:
77
+ return "Missing required argument: --deployment-id"
78
+
79
+ return None
80
+
81
+ def run(self, args) -> CommandResult:
82
+ """Execute the local-deploy command."""
83
+ try:
84
+ self.logger.info(f"Local deploy command: {args.local_deploy_command}")
85
+
86
+ # Initialize manager
87
+ project_root = getattr(args, "project_dir", None) or self.working_dir
88
+ self.manager = UnifiedLocalOpsManager(project_root=Path(project_root))
89
+
90
+ if not self.manager.initialize():
91
+ return CommandResult.error_result(
92
+ "Failed to initialize local ops manager"
93
+ )
94
+
95
+ # Route to specific command
96
+ command = args.local_deploy_command
97
+ if command == "start":
98
+ return self._start_command(args)
99
+ if command == "stop":
100
+ return self._stop_command(args)
101
+ if command == "restart":
102
+ return self._restart_command(args)
103
+ if command == "status":
104
+ return self._status_command(args)
105
+ if command == "health":
106
+ return self._health_command(args)
107
+ if command == "list":
108
+ return self._list_command(args)
109
+ if command == "monitor":
110
+ return self._monitor_command(args)
111
+ if command == "history":
112
+ return self._history_command(args)
113
+ if command == "enable-auto-restart":
114
+ return self._enable_auto_restart_command(args)
115
+ if command == "disable-auto-restart":
116
+ return self._disable_auto_restart_command(args)
117
+ return CommandResult.error_result(f"Unknown command: {command}")
118
+
119
+ except Exception as e:
120
+ self.logger.error(
121
+ f"Error executing local-deploy command: {e}", exc_info=True
122
+ )
123
+ return CommandResult.error_result(f"Error: {e}")
124
+ finally:
125
+ if self.manager:
126
+ self.manager.shutdown()
127
+
128
+ def _start_command(self, args) -> CommandResult:
129
+ """Start a new deployment."""
130
+ try:
131
+ # Parse command
132
+ command = (
133
+ args.command.split() if isinstance(args.command, str) else args.command
134
+ )
135
+
136
+ # Create start configuration
137
+ config = StartConfig(
138
+ command=command,
139
+ working_directory=str(args.working_directory or self.working_dir),
140
+ port=getattr(args, "port", None),
141
+ auto_find_port=getattr(args, "auto_find_port", True),
142
+ environment=getattr(args, "env", {}) or {},
143
+ metadata={"log_file": getattr(args, "log_file", None)},
144
+ )
145
+
146
+ # Start deployment
147
+ auto_restart = getattr(args, "auto_restart", False)
148
+ deployment = self.manager.start_deployment(
149
+ config, auto_restart=auto_restart
150
+ )
151
+
152
+ # Output result
153
+ self.console.print(
154
+ Panel(
155
+ f"[green]✓[/green] Deployment started successfully\n\n"
156
+ f"[bold]Deployment ID:[/bold] {deployment.deployment_id}\n"
157
+ f"[bold]Process ID:[/bold] {deployment.process_id}\n"
158
+ f"[bold]Port:[/bold] {deployment.port or 'N/A'}\n"
159
+ f"[bold]Auto-restart:[/bold] {'Enabled' if auto_restart else 'Disabled'}\n"
160
+ f"[bold]Command:[/bold] {' '.join(deployment.command)}",
161
+ title="Deployment Started",
162
+ border_style="green",
163
+ )
164
+ )
165
+
166
+ return CommandResult.success_result(
167
+ f"Started deployment {deployment.deployment_id}",
168
+ data={
169
+ "deployment_id": deployment.deployment_id,
170
+ "process_id": deployment.process_id,
171
+ "port": deployment.port,
172
+ },
173
+ )
174
+
175
+ except Exception as e:
176
+ self.logger.error(f"Failed to start deployment: {e}", exc_info=True)
177
+ self.console.print(f"[red]✗ Failed to start deployment: {e}[/red]")
178
+ return CommandResult.error_result(str(e))
179
+
180
+ def _stop_command(self, args) -> CommandResult:
181
+ """Stop a deployment."""
182
+ try:
183
+ deployment_id = args.deployment_id
184
+ force = getattr(args, "force", False)
185
+ timeout = getattr(args, "timeout", 10)
186
+
187
+ success = self.manager.stop_deployment(
188
+ deployment_id, timeout=timeout, force=force
189
+ )
190
+
191
+ if success:
192
+ self.console.print(
193
+ f"[green]✓ Deployment {deployment_id} stopped successfully[/green]"
194
+ )
195
+ return CommandResult.success_result(
196
+ f"Stopped deployment {deployment_id}"
197
+ )
198
+ self.console.print(
199
+ f"[red]✗ Failed to stop deployment {deployment_id}[/red]"
200
+ )
201
+ return CommandResult.error_result("Failed to stop deployment")
202
+
203
+ except Exception as e:
204
+ self.logger.error(f"Failed to stop deployment: {e}", exc_info=True)
205
+ self.console.print(f"[red]✗ Error: {e}[/red]")
206
+ return CommandResult.error_result(str(e))
207
+
208
+ def _restart_command(self, args) -> CommandResult:
209
+ """Restart a deployment."""
210
+ try:
211
+ deployment_id = args.deployment_id
212
+ timeout = getattr(args, "timeout", 10)
213
+
214
+ deployment = self.manager.restart_deployment(deployment_id, timeout=timeout)
215
+
216
+ self.console.print(
217
+ Panel(
218
+ f"[green]✓[/green] Deployment restarted successfully\n\n"
219
+ f"[bold]Deployment ID:[/bold] {deployment.deployment_id}\n"
220
+ f"[bold]New Process ID:[/bold] {deployment.process_id}\n"
221
+ f"[bold]Port:[/bold] {deployment.port or 'N/A'}",
222
+ title="Deployment Restarted",
223
+ border_style="green",
224
+ )
225
+ )
226
+
227
+ return CommandResult.success_result(f"Restarted deployment {deployment_id}")
228
+
229
+ except Exception as e:
230
+ self.logger.error(f"Failed to restart deployment: {e}", exc_info=True)
231
+ self.console.print(f"[red]✗ Error: {e}[/red]")
232
+ return CommandResult.error_result(str(e))
233
+
234
+ def _status_command(self, args) -> CommandResult:
235
+ """Show deployment status."""
236
+ try:
237
+ deployment_id = args.deployment_id
238
+ json_output = getattr(args, "json", False)
239
+
240
+ status = self.manager.get_full_status(deployment_id)
241
+
242
+ if json_output:
243
+ print(json.dumps(status, indent=2, default=str))
244
+ return CommandResult.success_result("Status retrieved")
245
+
246
+ # Rich formatted output
247
+ self._render_status_panel(status)
248
+
249
+ return CommandResult.success_result("Status retrieved", data=status)
250
+
251
+ except Exception as e:
252
+ self.logger.error(f"Failed to get status: {e}", exc_info=True)
253
+ self.console.print(f"[red]✗ Error: {e}[/red]")
254
+ return CommandResult.error_result(str(e))
255
+
256
+ def _health_command(self, args) -> CommandResult:
257
+ """Show health status."""
258
+ try:
259
+ deployment_id = args.deployment_id
260
+ health = self.manager.get_health_status(deployment_id)
261
+
262
+ if not health:
263
+ self.console.print(
264
+ f"[yellow]No health data available for {deployment_id}[/yellow]"
265
+ )
266
+ return CommandResult.error_result("No health data available")
267
+
268
+ # Render health status
269
+ status_color = {
270
+ "healthy": "green",
271
+ "degraded": "yellow",
272
+ "unhealthy": "red",
273
+ "unknown": "dim",
274
+ }.get(health.overall_status.value, "dim")
275
+
276
+ self.console.print(
277
+ Panel(
278
+ f"[{status_color}]Status:[/{status_color}] {health.overall_status.value.upper()}\n\n"
279
+ f"[bold]HTTP Check:[/bold] {'✓' if health.http_healthy else '✗'}\n"
280
+ f"[bold]Process Check:[/bold] {'✓' if health.process_healthy else '✗'}\n"
281
+ f"[bold]Resource Check:[/bold] {'✓' if health.resource_healthy else '✗'}\n"
282
+ f"[bold]Last Check:[/bold] {health.last_check or 'Never'}\n"
283
+ f"{f'[bold]Failure Reason:[/bold] {health.failure_reason}' if health.failure_reason else ''}",
284
+ title=f"Health Status: {deployment_id}",
285
+ border_style=status_color,
286
+ )
287
+ )
288
+
289
+ return CommandResult.success_result("Health status retrieved")
290
+
291
+ except Exception as e:
292
+ self.logger.error(f"Failed to get health status: {e}", exc_info=True)
293
+ self.console.print(f"[red]✗ Error: {e}[/red]")
294
+ return CommandResult.error_result(str(e))
295
+
296
+ def _list_command(self, args) -> CommandResult:
297
+ """List all deployments."""
298
+ try:
299
+ status_filter_str = getattr(args, "status", None)
300
+ status_filter = (
301
+ ProcessStatus(status_filter_str) if status_filter_str else None
302
+ )
303
+
304
+ deployments = self.manager.list_deployments(status_filter=status_filter)
305
+
306
+ if not deployments:
307
+ self.console.print("[yellow]No deployments found[/yellow]")
308
+ return CommandResult.success_result("No deployments found")
309
+
310
+ # Create table
311
+ table = Table(title="Local Deployments", show_header=True)
312
+ table.add_column("Deployment ID", style="cyan")
313
+ table.add_column("PID", style="magenta")
314
+ table.add_column("Port", style="green")
315
+ table.add_column("Status", style="yellow")
316
+ table.add_column("Started At", style="dim")
317
+
318
+ for deployment in deployments:
319
+ table.add_row(
320
+ deployment.deployment_id,
321
+ str(deployment.process_id),
322
+ str(deployment.port) if deployment.port else "N/A",
323
+ deployment.status.value,
324
+ deployment.started_at.strftime("%Y-%m-%d %H:%M:%S"),
325
+ )
326
+
327
+ self.console.print(table)
328
+
329
+ return CommandResult.success_result(
330
+ f"Found {len(deployments)} deployment(s)",
331
+ data={"count": len(deployments)},
332
+ )
333
+
334
+ except Exception as e:
335
+ self.logger.error(f"Failed to list deployments: {e}", exc_info=True)
336
+ self.console.print(f"[red]✗ Error: {e}[/red]")
337
+ return CommandResult.error_result(str(e))
338
+
339
+ def _monitor_command(self, args) -> CommandResult:
340
+ """Live monitoring dashboard."""
341
+ try:
342
+ deployment_id = args.deployment_id
343
+ refresh_interval = getattr(args, "refresh", 2)
344
+
345
+ self.console.print(
346
+ f"[cyan]Monitoring {deployment_id}... (Press Ctrl+C to stop)[/cyan]\n"
347
+ )
348
+
349
+ with Live(
350
+ console=self.console, refresh_per_second=1 / refresh_interval
351
+ ) as live:
352
+ while True:
353
+ try:
354
+ status = self.manager.get_full_status(deployment_id)
355
+ live.update(self._render_live_status(status))
356
+ time.sleep(refresh_interval)
357
+ except KeyboardInterrupt:
358
+ break
359
+
360
+ return CommandResult.success_result("Monitoring stopped")
361
+
362
+ except Exception as e:
363
+ self.logger.error(f"Failed to monitor deployment: {e}", exc_info=True)
364
+ self.console.print(f"[red]✗ Error: {e}[/red]")
365
+ return CommandResult.error_result(str(e))
366
+
367
+ def _history_command(self, args) -> CommandResult:
368
+ """Show restart history."""
369
+ try:
370
+ deployment_id = args.deployment_id
371
+ history = self.manager.get_restart_history(deployment_id)
372
+
373
+ if not history:
374
+ self.console.print(
375
+ f"[yellow]No restart history for {deployment_id}[/yellow]"
376
+ )
377
+ return CommandResult.success_result("No restart history")
378
+
379
+ self.console.print(
380
+ Panel(
381
+ f"[bold]Total Restarts:[/bold] {history.total_restarts}\n"
382
+ f"[bold]Successful:[/bold] {history.successful_restarts}\n"
383
+ f"[bold]Failed:[/bold] {history.failed_restarts}\n"
384
+ f"[bold]Circuit Breaker:[/bold] {history.circuit_breaker_state.value}\n"
385
+ f"[bold]Auto-restart:[/bold] {'Enabled' if history.auto_restart_enabled else 'Disabled'}",
386
+ title=f"Restart History: {deployment_id}",
387
+ border_style="cyan",
388
+ )
389
+ )
390
+
391
+ # Show recent attempts
392
+ if history.recent_attempts:
393
+ table = Table(title="Recent Restart Attempts", show_header=True)
394
+ table.add_column("Timestamp", style="dim")
395
+ table.add_column("Success", style="green")
396
+ table.add_column("Reason", style="yellow")
397
+
398
+ for attempt in history.recent_attempts[-10:]: # Last 10
399
+ table.add_row(
400
+ attempt.timestamp.strftime("%Y-%m-%d %H:%M:%S"),
401
+ "✓" if attempt.success else "✗",
402
+ attempt.reason or "Unknown",
403
+ )
404
+
405
+ self.console.print("\n")
406
+ self.console.print(table)
407
+
408
+ return CommandResult.success_result("Restart history retrieved")
409
+
410
+ except Exception as e:
411
+ self.logger.error(f"Failed to get restart history: {e}", exc_info=True)
412
+ self.console.print(f"[red]✗ Error: {e}[/red]")
413
+ return CommandResult.error_result(str(e))
414
+
415
+ def _enable_auto_restart_command(self, args) -> CommandResult:
416
+ """Enable auto-restart for a deployment."""
417
+ try:
418
+ deployment_id = args.deployment_id
419
+ success = self.manager.enable_auto_restart(deployment_id)
420
+
421
+ if success:
422
+ self.console.print(
423
+ f"[green]✓ Auto-restart enabled for {deployment_id}[/green]"
424
+ )
425
+ return CommandResult.success_result(
426
+ f"Auto-restart enabled for {deployment_id}"
427
+ )
428
+ self.console.print(
429
+ f"[red]✗ Failed to enable auto-restart for {deployment_id}[/red]"
430
+ )
431
+ return CommandResult.error_result("Failed to enable auto-restart")
432
+
433
+ except Exception as e:
434
+ self.logger.error(f"Failed to enable auto-restart: {e}", exc_info=True)
435
+ self.console.print(f"[red]✗ Error: {e}[/red]")
436
+ return CommandResult.error_result(str(e))
437
+
438
+ def _disable_auto_restart_command(self, args) -> CommandResult:
439
+ """Disable auto-restart for a deployment."""
440
+ try:
441
+ deployment_id = args.deployment_id
442
+ success = self.manager.disable_auto_restart(deployment_id)
443
+
444
+ if success:
445
+ self.console.print(
446
+ f"[green]✓ Auto-restart disabled for {deployment_id}[/green]"
447
+ )
448
+ return CommandResult.success_result(
449
+ f"Auto-restart disabled for {deployment_id}"
450
+ )
451
+ self.console.print(
452
+ f"[red]✗ Failed to disable auto-restart for {deployment_id}[/red]"
453
+ )
454
+ return CommandResult.error_result("Failed to disable auto-restart")
455
+
456
+ except Exception as e:
457
+ self.logger.error(f"Failed to disable auto-restart: {e}", exc_info=True)
458
+ self.console.print(f"[red]✗ Error: {e}[/red]")
459
+ return CommandResult.error_result(str(e))
460
+
461
+ def _render_status_panel(self, status: dict) -> None:
462
+ """Render full status as a rich panel."""
463
+ process = status.get("process", {})
464
+ health = status.get("health", {})
465
+ restart = status.get("restart_history", {})
466
+
467
+ content = "[bold cyan]Process Information[/bold cyan]\n"
468
+ content += f" Status: {process.get('status', 'unknown')}\n"
469
+ content += f" PID: {process.get('pid', 'N/A')}\n"
470
+ content += f" Port: {process.get('port', 'N/A')}\n"
471
+ content += f" Uptime: {process.get('uptime_seconds', 0):.1f}s\n"
472
+ content += f" Memory: {process.get('memory_mb', 0):.1f} MB\n"
473
+ content += f" CPU: {process.get('cpu_percent', 0):.1f}%\n\n"
474
+
475
+ if health:
476
+ content += "[bold green]Health Status[/bold green]\n"
477
+ content += f" Overall: {health.get('status', 'unknown')}\n"
478
+ content += f" HTTP: {'✓' if health.get('http_healthy') else '✗'}\n"
479
+ content += f" Process: {'✓' if health.get('process_healthy') else '✗'}\n"
480
+ content += (
481
+ f" Resources: {'✓' if health.get('resource_healthy') else '✗'}\n\n"
482
+ )
483
+
484
+ if restart:
485
+ content += "[bold yellow]Restart Statistics[/bold yellow]\n"
486
+ content += f" Total Restarts: {restart.get('total_restarts', 0)}\n"
487
+ content += f" Successful: {restart.get('successful_restarts', 0)}\n"
488
+ content += f" Failed: {restart.get('failed_restarts', 0)}\n"
489
+ content += f" Auto-restart: {'Enabled' if restart.get('auto_restart_enabled') else 'Disabled'}"
490
+
491
+ self.console.print(
492
+ Panel(
493
+ content,
494
+ title=f"Status: {status.get('deployment_id', 'Unknown')}",
495
+ border_style="cyan",
496
+ )
497
+ )
498
+
499
+ def _render_live_status(self, status: dict) -> Panel:
500
+ """Render status for live monitoring."""
501
+ process = status.get("process", {})
502
+ health = status.get("health", {})
503
+
504
+ content = Text()
505
+ content.append("Process Status\n", style="bold cyan")
506
+ content.append(f" PID: {process.get('pid', 'N/A')}\n")
507
+ content.append(f" Status: {process.get('status', 'unknown')}\n")
508
+ content.append(f" Uptime: {process.get('uptime_seconds', 0):.1f}s\n")
509
+ content.append(f" Memory: {process.get('memory_mb', 0):.1f} MB\n")
510
+ content.append(f" CPU: {process.get('cpu_percent', 0):.1f}%\n\n")
511
+
512
+ if health:
513
+ health_status = health.get("status", "unknown")
514
+ health_color = {
515
+ "healthy": "green",
516
+ "degraded": "yellow",
517
+ "unhealthy": "red",
518
+ }.get(health_status, "white")
519
+
520
+ content.append("Health Status\n", style="bold green")
521
+ content.append(" Overall: ", style="white")
522
+ content.append(f"{health_status.upper()}\n", style=health_color)
523
+ content.append(
524
+ f" Checks: HTTP={'✓' if health.get('http_healthy') else '✗'} "
525
+ f"Process={'✓' if health.get('process_healthy') else '✗'} "
526
+ f"Resources={'✓' if health.get('resource_healthy') else '✗'}\n"
527
+ )
528
+
529
+ return Panel(
530
+ content,
531
+ title=f"Monitoring: {status.get('deployment_id', 'Unknown')}",
532
+ border_style="cyan",
533
+ )
534
+
535
+
536
+ __all__ = ["LocalDeployCommand"]