claude-mpm 4.20.3__py3-none-any.whl → 4.25.10__py3-none-any.whl

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

Potentially problematic release.


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

Files changed (454) hide show
  1. claude_mpm/VERSION +1 -1
  2. claude_mpm/agents/BASE_PM.md +23 -6
  3. claude_mpm/agents/OUTPUT_STYLE.md +3 -48
  4. claude_mpm/agents/PM_INSTRUCTIONS.md +1783 -34
  5. claude_mpm/agents/WORKFLOW.md +75 -2
  6. claude_mpm/agents/base_agent.json +6 -3
  7. claude_mpm/agents/frontmatter_validator.py +1 -1
  8. claude_mpm/agents/templates/api_qa.json +5 -2
  9. claude_mpm/agents/templates/circuit_breakers.md +108 -2
  10. claude_mpm/agents/templates/documentation.json +33 -6
  11. claude_mpm/agents/templates/javascript_engineer_agent.json +380 -0
  12. claude_mpm/agents/templates/php-engineer.json +10 -4
  13. claude_mpm/agents/templates/pm_red_flags.md +89 -19
  14. claude_mpm/agents/templates/project_organizer.json +7 -3
  15. claude_mpm/agents/templates/qa.json +2 -1
  16. claude_mpm/agents/templates/react_engineer.json +1 -0
  17. claude_mpm/agents/templates/research.json +82 -12
  18. claude_mpm/agents/templates/security.json +4 -4
  19. claude_mpm/agents/templates/tauri_engineer.json +274 -0
  20. claude_mpm/agents/templates/ticketing.json +10 -6
  21. claude_mpm/agents/templates/version_control.json +4 -2
  22. claude_mpm/agents/templates/web_qa.json +2 -1
  23. claude_mpm/cli/README.md +253 -0
  24. claude_mpm/cli/__init__.py +11 -1
  25. claude_mpm/cli/commands/aggregate.py +1 -1
  26. claude_mpm/cli/commands/analyze.py +3 -3
  27. claude_mpm/cli/commands/cleanup.py +1 -1
  28. claude_mpm/cli/commands/configure_agent_display.py +4 -4
  29. claude_mpm/cli/commands/debug.py +12 -12
  30. claude_mpm/cli/commands/hook_errors.py +277 -0
  31. claude_mpm/cli/commands/mcp_install_commands.py +1 -1
  32. claude_mpm/cli/commands/mcp_install_commands.py.backup +284 -0
  33. claude_mpm/cli/commands/mpm_init/README.md +365 -0
  34. claude_mpm/cli/commands/mpm_init/__init__.py +73 -0
  35. claude_mpm/cli/commands/mpm_init/core.py +573 -0
  36. claude_mpm/cli/commands/mpm_init/display.py +341 -0
  37. claude_mpm/cli/commands/mpm_init/git_activity.py +427 -0
  38. claude_mpm/cli/commands/mpm_init/modes.py +397 -0
  39. claude_mpm/cli/commands/mpm_init/prompts.py +442 -0
  40. claude_mpm/cli/commands/mpm_init_cli.py +396 -0
  41. claude_mpm/cli/commands/mpm_init_handler.py +67 -1
  42. claude_mpm/cli/commands/run.py +124 -128
  43. claude_mpm/cli/commands/skills.py +522 -34
  44. claude_mpm/cli/executor.py +56 -0
  45. claude_mpm/cli/interactive/agent_wizard.py +5 -5
  46. claude_mpm/cli/parsers/base_parser.py +28 -0
  47. claude_mpm/cli/parsers/mpm_init_parser.py +42 -0
  48. claude_mpm/cli/parsers/skills_parser.py +138 -0
  49. claude_mpm/cli/startup.py +111 -8
  50. claude_mpm/cli/startup_display.py +480 -0
  51. claude_mpm/cli/utils.py +1 -1
  52. claude_mpm/cli_module/commands.py +1 -1
  53. claude_mpm/cli_module/refactoring_guide.md +253 -0
  54. claude_mpm/commands/mpm-help.md +3 -0
  55. claude_mpm/commands/mpm-init.md +19 -3
  56. claude_mpm/commands/mpm-resume.md +372 -0
  57. claude_mpm/commands/mpm-tickets.md +56 -7
  58. claude_mpm/commands/mpm.md +1 -0
  59. claude_mpm/config/agent_capabilities.yaml +658 -0
  60. claude_mpm/config/async_logging_config.yaml +145 -0
  61. claude_mpm/constants.py +12 -0
  62. claude_mpm/core/.claude-mpm/logs/hooks_20250730.log +34 -0
  63. claude_mpm/core/api_validator.py +1 -1
  64. claude_mpm/core/claude_runner.py +14 -1
  65. claude_mpm/core/config.py +8 -0
  66. claude_mpm/core/constants.py +1 -1
  67. claude_mpm/core/framework/processors/metadata_processor.py +1 -1
  68. claude_mpm/core/hook_error_memory.py +381 -0
  69. claude_mpm/core/hook_manager.py +41 -2
  70. claude_mpm/core/interactive_session.py +48 -3
  71. claude_mpm/core/interfaces.py +56 -1
  72. claude_mpm/core/logger.py +3 -1
  73. claude_mpm/core/oneshot_session.py +39 -0
  74. claude_mpm/d2/.gitignore +22 -0
  75. claude_mpm/d2/ARCHITECTURE_COMPARISON.md +273 -0
  76. claude_mpm/d2/FLASK_INTEGRATION.md +156 -0
  77. claude_mpm/d2/IMPLEMENTATION_SUMMARY.md +452 -0
  78. claude_mpm/d2/QUICKSTART.md +186 -0
  79. claude_mpm/d2/README.md +232 -0
  80. claude_mpm/d2/STORE_FIX_SUMMARY.md +167 -0
  81. claude_mpm/d2/SVELTE5_STORES_GUIDE.md +180 -0
  82. claude_mpm/d2/TESTING.md +288 -0
  83. claude_mpm/d2/index.html +118 -0
  84. claude_mpm/d2/package.json +19 -0
  85. claude_mpm/d2/src/App.svelte +110 -0
  86. claude_mpm/d2/src/components/Header.svelte +153 -0
  87. claude_mpm/d2/src/components/MainContent.svelte +74 -0
  88. claude_mpm/d2/src/components/Sidebar.svelte +85 -0
  89. claude_mpm/d2/src/components/tabs/EventsTab.svelte +326 -0
  90. claude_mpm/d2/src/lib/socketio.js +144 -0
  91. claude_mpm/d2/src/main.js +7 -0
  92. claude_mpm/d2/src/stores/events.js +114 -0
  93. claude_mpm/d2/src/stores/socket.js +108 -0
  94. claude_mpm/d2/src/stores/theme.js +65 -0
  95. claude_mpm/d2/svelte.config.js +12 -0
  96. claude_mpm/d2/vite.config.js +15 -0
  97. claude_mpm/dashboard/.claude-mpm/memories/README.md +36 -0
  98. claude_mpm/dashboard/BUILD_NUMBER +1 -0
  99. claude_mpm/dashboard/README.md +121 -0
  100. claude_mpm/dashboard/VERSION +1 -0
  101. claude_mpm/dashboard/react/components/DataInspector/DataInspector.tsx +273 -0
  102. claude_mpm/dashboard/react/components/ErrorBoundary.tsx +75 -0
  103. claude_mpm/dashboard/react/components/EventViewer/EventViewer.tsx +141 -0
  104. claude_mpm/dashboard/react/components/shared/ConnectionStatus.tsx +36 -0
  105. claude_mpm/dashboard/react/components/shared/FilterBar.tsx +89 -0
  106. claude_mpm/dashboard/react/contexts/DashboardContext.tsx +215 -0
  107. claude_mpm/dashboard/react/entries/events.tsx +165 -0
  108. claude_mpm/dashboard/react/hooks/useEvents.ts +191 -0
  109. claude_mpm/dashboard/react/hooks/useSocket.ts +225 -0
  110. claude_mpm/dashboard/static/built/REFACTORING_SUMMARY.md +170 -0
  111. claude_mpm/dashboard/static/built/components/activity-tree.js.map +1 -0
  112. claude_mpm/dashboard/static/built/components/agent-hierarchy.js +101 -101
  113. claude_mpm/dashboard/static/built/components/agent-inference.js.map +1 -0
  114. claude_mpm/dashboard/static/built/components/build-tracker.js +59 -59
  115. claude_mpm/dashboard/static/built/components/code-simple.js +107 -107
  116. claude_mpm/dashboard/static/built/components/code-tree/tree-breadcrumb.js +29 -29
  117. claude_mpm/dashboard/static/built/components/code-tree/tree-constants.js +24 -24
  118. claude_mpm/dashboard/static/built/components/code-tree/tree-search.js +27 -27
  119. claude_mpm/dashboard/static/built/components/code-tree/tree-utils.js +25 -25
  120. claude_mpm/dashboard/static/built/components/code-tree.js.map +1 -0
  121. claude_mpm/dashboard/static/built/components/code-viewer.js.map +1 -0
  122. claude_mpm/dashboard/static/built/components/connection-debug.js +101 -101
  123. claude_mpm/dashboard/static/built/components/diff-viewer.js +113 -113
  124. claude_mpm/dashboard/static/built/components/event-processor.js.map +1 -0
  125. claude_mpm/dashboard/static/built/components/event-viewer.js.map +1 -0
  126. claude_mpm/dashboard/static/built/components/export-manager.js.map +1 -0
  127. claude_mpm/dashboard/static/built/components/file-change-tracker.js +57 -57
  128. claude_mpm/dashboard/static/built/components/file-change-viewer.js +74 -74
  129. claude_mpm/dashboard/static/built/components/file-tool-tracker.js.map +1 -0
  130. claude_mpm/dashboard/static/built/components/file-viewer.js.map +1 -0
  131. claude_mpm/dashboard/static/built/components/hud-library-loader.js.map +1 -0
  132. claude_mpm/dashboard/static/built/components/hud-manager.js.map +1 -0
  133. claude_mpm/dashboard/static/built/components/hud-visualizer.js.map +1 -0
  134. claude_mpm/dashboard/static/built/components/module-viewer.js.map +1 -0
  135. claude_mpm/dashboard/static/built/components/session-manager.js.map +1 -0
  136. claude_mpm/dashboard/static/built/components/socket-manager.js.map +1 -0
  137. claude_mpm/dashboard/static/built/components/ui-state-manager.js.map +1 -0
  138. claude_mpm/dashboard/static/built/components/unified-data-viewer.js.map +1 -0
  139. claude_mpm/dashboard/static/built/components/working-directory.js.map +1 -0
  140. claude_mpm/dashboard/static/built/connection-manager.js +76 -76
  141. claude_mpm/dashboard/static/built/dashboard.js.map +1 -0
  142. claude_mpm/dashboard/static/built/extension-error-handler.js +22 -22
  143. claude_mpm/dashboard/static/built/react/events.js.map +1 -0
  144. claude_mpm/dashboard/static/built/shared/dom-helpers.js +9 -9
  145. claude_mpm/dashboard/static/built/shared/event-bus.js +5 -5
  146. claude_mpm/dashboard/static/built/shared/logger.js +16 -16
  147. claude_mpm/dashboard/static/built/shared/tooltip-service.js +6 -6
  148. claude_mpm/dashboard/static/built/socket-client.js.map +1 -0
  149. claude_mpm/dashboard/static/css/activity.css +69 -69
  150. claude_mpm/dashboard/static/css/connection-status.css +10 -10
  151. claude_mpm/dashboard/static/css/dashboard.css +15 -15
  152. claude_mpm/dashboard/static/index.html +22 -22
  153. claude_mpm/dashboard/static/js/REFACTORING_SUMMARY.md +170 -0
  154. claude_mpm/dashboard/static/js/components/activity-tree.js +178 -178
  155. claude_mpm/dashboard/static/js/components/agent-hierarchy.js +101 -101
  156. claude_mpm/dashboard/static/js/components/agent-inference.js +31 -31
  157. claude_mpm/dashboard/static/js/components/build-tracker.js +59 -59
  158. claude_mpm/dashboard/static/js/components/code-simple.js +107 -107
  159. claude_mpm/dashboard/static/js/components/connection-debug.js +101 -101
  160. claude_mpm/dashboard/static/js/components/diff-viewer.js +113 -113
  161. claude_mpm/dashboard/static/js/components/event-viewer.js +12 -12
  162. claude_mpm/dashboard/static/js/components/file-change-tracker.js +57 -57
  163. claude_mpm/dashboard/static/js/components/file-change-viewer.js +74 -74
  164. claude_mpm/dashboard/static/js/components/file-tool-tracker.js +6 -6
  165. claude_mpm/dashboard/static/js/components/file-viewer.js +42 -42
  166. claude_mpm/dashboard/static/js/components/module-viewer.js +27 -27
  167. claude_mpm/dashboard/static/js/components/session-manager.js +14 -14
  168. claude_mpm/dashboard/static/js/components/socket-manager.js +1 -1
  169. claude_mpm/dashboard/static/js/components/ui-state-manager.js +14 -14
  170. claude_mpm/dashboard/static/js/components/unified-data-viewer.js +110 -110
  171. claude_mpm/dashboard/static/js/components/working-directory.js +8 -8
  172. claude_mpm/dashboard/static/js/connection-manager.js +76 -76
  173. claude_mpm/dashboard/static/js/dashboard.js +76 -58
  174. claude_mpm/dashboard/static/js/extension-error-handler.js +22 -22
  175. claude_mpm/dashboard/static/js/shared/dom-helpers.js +9 -9
  176. claude_mpm/dashboard/static/js/shared/event-bus.js +5 -5
  177. claude_mpm/dashboard/static/js/shared/logger.js +16 -16
  178. claude_mpm/dashboard/static/js/shared/tooltip-service.js +6 -6
  179. claude_mpm/dashboard/static/js/socket-client.js +138 -121
  180. claude_mpm/dashboard/static/navigation-test-results.md +118 -0
  181. claude_mpm/dashboard/static/production/main.html +21 -21
  182. claude_mpm/dashboard/static/test-archive/dashboard.html +22 -22
  183. claude_mpm/dashboard/templates/.claude-mpm/memories/README.md +36 -0
  184. claude_mpm/dashboard/templates/.claude-mpm/memories/engineer_agent.md +39 -0
  185. claude_mpm/dashboard/templates/.claude-mpm/memories/version_control_agent.md +38 -0
  186. claude_mpm/dashboard/templates/code_simple.html +23 -23
  187. claude_mpm/dashboard/templates/index.html +18 -18
  188. claude_mpm/hooks/README.md +143 -0
  189. claude_mpm/hooks/claude_hooks/event_handlers.py +3 -1
  190. claude_mpm/hooks/claude_hooks/hook_handler.py +24 -7
  191. claude_mpm/hooks/claude_hooks/installer.py +45 -0
  192. claude_mpm/hooks/templates/README.md +180 -0
  193. claude_mpm/hooks/templates/pre_tool_use_simple.py +78 -0
  194. claude_mpm/hooks/templates/pre_tool_use_template.py +323 -0
  195. claude_mpm/hooks/templates/settings.json.example +147 -0
  196. claude_mpm/schemas/agent_schema.json +596 -0
  197. claude_mpm/schemas/frontmatter_schema.json +165 -0
  198. claude_mpm/scripts/claude-hook-handler.sh +3 -3
  199. claude_mpm/scripts/start_activity_logging.py +3 -1
  200. claude_mpm/services/agents/deployment/agent_format_converter.py +1 -1
  201. claude_mpm/services/agents/deployment/agent_metrics_collector.py +3 -3
  202. claude_mpm/services/agents/deployment/facade/deployment_facade.py +3 -3
  203. claude_mpm/services/agents/deployment/pipeline/pipeline_executor.py +2 -2
  204. claude_mpm/services/agents/loading/framework_agent_loader.py +8 -8
  205. claude_mpm/services/agents/local_template_manager.py +3 -1
  206. claude_mpm/services/cli/session_pause_manager.py +504 -0
  207. claude_mpm/services/cli/session_resume_helper.py +36 -16
  208. claude_mpm/services/cli/unified_dashboard_manager.py +1 -1
  209. claude_mpm/services/core/base.py +26 -11
  210. claude_mpm/services/core/interfaces.py +56 -1
  211. claude_mpm/services/core/models/agent_config.py +3 -0
  212. claude_mpm/services/core/models/process.py +4 -0
  213. claude_mpm/services/diagnostics/checks/agent_check.py +0 -2
  214. claude_mpm/services/diagnostics/checks/instructions_check.py +1 -2
  215. claude_mpm/services/diagnostics/checks/mcp_check.py +0 -1
  216. claude_mpm/services/diagnostics/checks/monitor_check.py +0 -1
  217. claude_mpm/services/diagnostics/doctor_reporter.py +6 -4
  218. claude_mpm/services/diagnostics/models.py +21 -0
  219. claude_mpm/services/event_bus/README.md +244 -0
  220. claude_mpm/services/event_bus/direct_relay.py +3 -3
  221. claude_mpm/services/event_bus/event_bus.py +36 -3
  222. claude_mpm/services/event_bus/relay.py +23 -7
  223. claude_mpm/services/events/README.md +303 -0
  224. claude_mpm/services/events/consumers/logging.py +1 -2
  225. claude_mpm/services/framework_claude_md_generator/README.md +119 -0
  226. claude_mpm/services/infrastructure/monitoring/resources.py +1 -1
  227. claude_mpm/services/local_ops/__init__.py +2 -0
  228. claude_mpm/services/local_ops/process_manager.py +1 -1
  229. claude_mpm/services/local_ops/resource_monitor.py +2 -2
  230. claude_mpm/services/mcp_gateway/README.md +185 -0
  231. claude_mpm/services/mcp_gateway/auto_configure.py +31 -25
  232. claude_mpm/services/mcp_gateway/config/configuration.py +1 -1
  233. claude_mpm/services/mcp_gateway/core/process_pool.py +19 -10
  234. claude_mpm/services/mcp_gateway/server/stdio_server.py +0 -2
  235. claude_mpm/services/mcp_gateway/tools/document_summarizer.py +1 -1
  236. claude_mpm/services/mcp_gateway/tools/external_mcp_services.py +26 -21
  237. claude_mpm/services/mcp_gateway/tools/kuzu_memory_service.py +6 -2
  238. claude_mpm/services/memory/failure_tracker.py +19 -4
  239. claude_mpm/services/memory/optimizer.py +1 -1
  240. claude_mpm/services/model/model_router.py +8 -9
  241. claude_mpm/services/monitor/daemon.py +1 -1
  242. claude_mpm/services/monitor/server.py +2 -2
  243. claude_mpm/services/native_agent_converter.py +356 -0
  244. claude_mpm/services/port_manager.py +1 -1
  245. claude_mpm/services/project/documentation_manager.py +2 -1
  246. claude_mpm/services/project/toolchain_analyzer.py +3 -1
  247. claude_mpm/services/runner_configuration_service.py +1 -0
  248. claude_mpm/services/self_upgrade_service.py +165 -7
  249. claude_mpm/services/skills_config.py +547 -0
  250. claude_mpm/services/skills_deployer.py +955 -0
  251. claude_mpm/services/socketio/handlers/connection.py +1 -1
  252. claude_mpm/services/socketio/handlers/connection.py.backup +217 -0
  253. claude_mpm/services/socketio/handlers/git.py +2 -2
  254. claude_mpm/services/socketio/handlers/hook.py.backup +154 -0
  255. claude_mpm/services/static/.gitkeep +2 -0
  256. claude_mpm/services/system_instructions_service.py +1 -3
  257. claude_mpm/services/unified/analyzer_strategies/performance_analyzer.py +0 -3
  258. claude_mpm/services/unified/analyzer_strategies/security_analyzer.py +0 -1
  259. claude_mpm/services/unified/deployment_strategies/cloud_strategies.py +1 -1
  260. claude_mpm/services/version_control/VERSION +1 -0
  261. claude_mpm/services/version_control/conflict_resolution.py +6 -4
  262. claude_mpm/services/visualization/mermaid_generator.py +2 -3
  263. claude_mpm/skills/__init__.py +3 -3
  264. claude_mpm/skills/agent_skills_injector.py +42 -49
  265. claude_mpm/skills/bundled/.gitkeep +2 -0
  266. claude_mpm/skills/bundled/collaboration/brainstorming/SKILL.md +4 -0
  267. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/SKILL.md +108 -114
  268. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/agent-prompts.md +577 -0
  269. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/coordination-patterns.md +467 -0
  270. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/examples.md +537 -0
  271. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/troubleshooting.md +730 -0
  272. claude_mpm/skills/bundled/collaboration/git-worktrees.md +317 -0
  273. claude_mpm/skills/bundled/collaboration/requesting-code-review/SKILL.md +46 -41
  274. claude_mpm/skills/bundled/collaboration/requesting-code-review/references/review-examples.md +412 -0
  275. claude_mpm/skills/bundled/collaboration/stacked-prs.md +251 -0
  276. claude_mpm/skills/bundled/collaboration/writing-plans/SKILL.md +36 -73
  277. claude_mpm/skills/bundled/collaboration/writing-plans/references/best-practices.md +362 -0
  278. claude_mpm/skills/bundled/collaboration/writing-plans/references/plan-structure-templates.md +312 -0
  279. claude_mpm/skills/bundled/debugging/root-cause-tracing/SKILL.md +100 -125
  280. claude_mpm/skills/bundled/debugging/root-cause-tracing/find-polluter.sh +63 -0
  281. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/advanced-techniques.md +668 -0
  282. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/examples.md +587 -0
  283. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/integration.md +438 -0
  284. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/tracing-techniques.md +391 -0
  285. claude_mpm/skills/bundled/debugging/verification-before-completion/SKILL.md +28 -72
  286. claude_mpm/skills/bundled/debugging/verification-before-completion/references/gate-function.md +11 -0
  287. claude_mpm/skills/bundled/debugging/verification-before-completion/references/integration-and-workflows.md +490 -0
  288. claude_mpm/skills/bundled/debugging/verification-before-completion/references/red-flags-and-failures.md +425 -0
  289. claude_mpm/skills/bundled/debugging/verification-before-completion/references/verification-patterns.md +272 -0
  290. claude_mpm/skills/bundled/infrastructure/env-manager/INTEGRATION.md +611 -0
  291. claude_mpm/skills/bundled/infrastructure/env-manager/README.md +596 -0
  292. claude_mpm/skills/bundled/infrastructure/env-manager/SKILL.md +260 -0
  293. claude_mpm/skills/bundled/infrastructure/env-manager/examples/nextjs-env-structure.md +315 -0
  294. claude_mpm/skills/bundled/infrastructure/env-manager/references/frameworks.md +436 -0
  295. claude_mpm/skills/bundled/infrastructure/env-manager/references/security.md +433 -0
  296. claude_mpm/skills/bundled/infrastructure/env-manager/references/synchronization.md +452 -0
  297. claude_mpm/skills/bundled/infrastructure/env-manager/references/troubleshooting.md +404 -0
  298. claude_mpm/skills/bundled/infrastructure/env-manager/references/validation.md +420 -0
  299. claude_mpm/skills/bundled/infrastructure/env-manager/scripts/validate_env.py +576 -0
  300. claude_mpm/skills/bundled/main/artifacts-builder/LICENSE.txt +202 -0
  301. claude_mpm/skills/bundled/main/artifacts-builder/SKILL.md +13 -1
  302. claude_mpm/skills/bundled/main/artifacts-builder/scripts/bundle-artifact.sh +54 -0
  303. claude_mpm/skills/bundled/main/artifacts-builder/scripts/init-artifact.sh +322 -0
  304. claude_mpm/skills/bundled/main/artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  305. claude_mpm/skills/bundled/main/internal-comms/LICENSE.txt +202 -0
  306. claude_mpm/skills/bundled/main/internal-comms/SKILL.md +11 -0
  307. claude_mpm/skills/bundled/main/mcp-builder/LICENSE.txt +202 -0
  308. claude_mpm/skills/bundled/main/mcp-builder/SKILL.md +109 -277
  309. claude_mpm/skills/bundled/main/mcp-builder/reference/design_principles.md +412 -0
  310. claude_mpm/skills/bundled/main/mcp-builder/reference/workflow.md +1237 -0
  311. claude_mpm/skills/bundled/main/mcp-builder/scripts/connections.py +17 -10
  312. claude_mpm/skills/bundled/main/mcp-builder/scripts/evaluation.py +92 -39
  313. claude_mpm/skills/bundled/main/mcp-builder/scripts/example_evaluation.xml +22 -0
  314. claude_mpm/skills/bundled/main/mcp-builder/scripts/requirements.txt +2 -0
  315. claude_mpm/skills/bundled/main/skill-creator/LICENSE.txt +202 -0
  316. claude_mpm/skills/bundled/main/skill-creator/SKILL.md +135 -155
  317. claude_mpm/skills/bundled/main/skill-creator/references/best-practices.md +500 -0
  318. claude_mpm/skills/bundled/main/skill-creator/references/creation-workflow.md +464 -0
  319. claude_mpm/skills/bundled/main/skill-creator/references/examples.md +619 -0
  320. claude_mpm/skills/bundled/main/skill-creator/references/progressive-disclosure.md +437 -0
  321. claude_mpm/skills/bundled/main/skill-creator/references/skill-structure.md +231 -0
  322. claude_mpm/skills/bundled/main/skill-creator/scripts/init_skill.py +13 -12
  323. claude_mpm/skills/bundled/main/skill-creator/scripts/package_skill.py +5 -3
  324. claude_mpm/skills/bundled/main/skill-creator/scripts/quick_validate.py +19 -12
  325. claude_mpm/skills/bundled/performance-profiling.md +6 -0
  326. claude_mpm/skills/bundled/php/espocrm-development/SKILL.md +170 -0
  327. claude_mpm/skills/bundled/php/espocrm-development/references/architecture.md +602 -0
  328. claude_mpm/skills/bundled/php/espocrm-development/references/common-tasks.md +821 -0
  329. claude_mpm/skills/bundled/php/espocrm-development/references/development-workflow.md +742 -0
  330. claude_mpm/skills/bundled/php/espocrm-development/references/frontend-customization.md +726 -0
  331. claude_mpm/skills/bundled/php/espocrm-development/references/hooks-and-services.md +764 -0
  332. claude_mpm/skills/bundled/php/espocrm-development/references/testing-debugging.md +831 -0
  333. claude_mpm/skills/bundled/react/flexlayout-react.md +742 -0
  334. claude_mpm/skills/bundled/rust/desktop-applications/SKILL.md +226 -0
  335. claude_mpm/skills/bundled/rust/desktop-applications/references/architecture-patterns.md +901 -0
  336. claude_mpm/skills/bundled/rust/desktop-applications/references/native-gui-frameworks.md +901 -0
  337. claude_mpm/skills/bundled/rust/desktop-applications/references/platform-integration.md +775 -0
  338. claude_mpm/skills/bundled/rust/desktop-applications/references/state-management.md +937 -0
  339. claude_mpm/skills/bundled/rust/desktop-applications/references/tauri-framework.md +770 -0
  340. claude_mpm/skills/bundled/rust/desktop-applications/references/testing-deployment.md +961 -0
  341. claude_mpm/skills/bundled/tauri/tauri-async-patterns.md +495 -0
  342. claude_mpm/skills/bundled/tauri/tauri-build-deploy.md +599 -0
  343. claude_mpm/skills/bundled/tauri/tauri-command-patterns.md +535 -0
  344. claude_mpm/skills/bundled/tauri/tauri-error-handling.md +613 -0
  345. claude_mpm/skills/bundled/tauri/tauri-event-system.md +648 -0
  346. claude_mpm/skills/bundled/tauri/tauri-file-system.md +673 -0
  347. claude_mpm/skills/bundled/tauri/tauri-frontend-integration.md +767 -0
  348. claude_mpm/skills/bundled/tauri/tauri-performance.md +669 -0
  349. claude_mpm/skills/bundled/tauri/tauri-state-management.md +573 -0
  350. claude_mpm/skills/bundled/tauri/tauri-testing.md +384 -0
  351. claude_mpm/skills/bundled/tauri/tauri-window-management.md +628 -0
  352. claude_mpm/skills/bundled/testing/condition-based-waiting/SKILL.md +21 -25
  353. claude_mpm/skills/bundled/testing/condition-based-waiting/example.ts +158 -0
  354. claude_mpm/skills/bundled/testing/condition-based-waiting/references/patterns-and-implementation.md +253 -0
  355. claude_mpm/skills/bundled/testing/test-quality-inspector/SKILL.md +458 -0
  356. claude_mpm/skills/bundled/testing/test-quality-inspector/examples/example-inspection-report.md +411 -0
  357. claude_mpm/skills/bundled/testing/test-quality-inspector/references/assertion-quality.md +317 -0
  358. claude_mpm/skills/bundled/testing/test-quality-inspector/references/inspection-checklist.md +270 -0
  359. claude_mpm/skills/bundled/testing/test-quality-inspector/references/red-flags.md +436 -0
  360. claude_mpm/skills/bundled/testing/testing-anti-patterns/SKILL.md +86 -250
  361. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/completeness-anti-patterns.md +572 -0
  362. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/core-anti-patterns.md +411 -0
  363. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/detection-guide.md +569 -0
  364. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/tdd-connection.md +695 -0
  365. claude_mpm/skills/bundled/testing/webapp-testing/LICENSE.txt +202 -0
  366. claude_mpm/skills/bundled/testing/webapp-testing/SKILL.md +145 -57
  367. claude_mpm/skills/bundled/testing/webapp-testing/decision-tree.md +459 -0
  368. claude_mpm/skills/bundled/testing/webapp-testing/examples/console_logging.py +6 -6
  369. claude_mpm/skills/bundled/testing/webapp-testing/examples/element_discovery.py +13 -9
  370. claude_mpm/skills/bundled/testing/webapp-testing/examples/static_html_automation.py +8 -8
  371. claude_mpm/skills/bundled/testing/webapp-testing/playwright-patterns.md +479 -0
  372. claude_mpm/skills/bundled/testing/webapp-testing/reconnaissance-pattern.md +687 -0
  373. claude_mpm/skills/bundled/testing/webapp-testing/scripts/with_server.py +37 -15
  374. claude_mpm/skills/bundled/testing/webapp-testing/server-management.md +758 -0
  375. claude_mpm/skills/bundled/testing/webapp-testing/troubleshooting.md +868 -0
  376. claude_mpm/skills/skills_registry.py +44 -48
  377. claude_mpm/skills/skills_service.py +117 -108
  378. claude_mpm/templates/questions/EXAMPLES.md +501 -0
  379. claude_mpm/templates/questions/__init__.py +43 -0
  380. claude_mpm/templates/questions/base.py +193 -0
  381. claude_mpm/templates/questions/pr_strategy.py +314 -0
  382. claude_mpm/templates/questions/project_init.py +388 -0
  383. claude_mpm/templates/questions/ticket_mgmt.py +397 -0
  384. claude_mpm/tools/README_SOCKETIO_DEBUG.md +224 -0
  385. claude_mpm/tools/__main__.py +8 -8
  386. claude_mpm/tools/code_tree_analyzer/README.md +64 -0
  387. claude_mpm/tools/code_tree_analyzer/__init__.py +45 -0
  388. claude_mpm/tools/code_tree_analyzer/analysis.py +299 -0
  389. claude_mpm/tools/code_tree_analyzer/cache.py +131 -0
  390. claude_mpm/tools/code_tree_analyzer/core.py +380 -0
  391. claude_mpm/tools/code_tree_analyzer/discovery.py +403 -0
  392. claude_mpm/tools/code_tree_analyzer/events.py +168 -0
  393. claude_mpm/tools/code_tree_analyzer/gitignore.py +308 -0
  394. claude_mpm/tools/code_tree_analyzer/models.py +39 -0
  395. claude_mpm/tools/code_tree_analyzer/multilang_analyzer.py +224 -0
  396. claude_mpm/tools/code_tree_analyzer/python_analyzer.py +284 -0
  397. claude_mpm/utils/agent_dependency_loader.py +3 -3
  398. claude_mpm/utils/dependency_cache.py +3 -1
  399. claude_mpm/utils/gitignore.py +241 -0
  400. claude_mpm/utils/log_cleanup.py +3 -3
  401. claude_mpm/utils/robust_installer.py +3 -5
  402. claude_mpm/utils/structured_questions.py +619 -0
  403. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/METADATA +218 -31
  404. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/RECORD +409 -246
  405. claude_mpm/agents/templates/.claude-mpm/memories/README.md +0 -17
  406. claude_mpm/agents/templates/.claude-mpm/memories/engineer_memories.md +0 -3
  407. claude_mpm/agents/templates/logs/prompts/agent_engineer_20250826_014258_728.md +0 -39
  408. claude_mpm/agents/templates/logs/prompts/agent_engineer_20250901_010124_142.md +0 -400
  409. claude_mpm/cli/commands/mpm_init.py +0 -2093
  410. claude_mpm/dashboard/.claude-mpm/socketio-instances.json +0 -1
  411. claude_mpm/dashboard/static/archive/activity_dashboard_test.html +0 -61
  412. claude_mpm/dashboard/static/archive/test_activity_connection.html +0 -179
  413. claude_mpm/dashboard/static/archive/test_claude_tree_tab.html +0 -68
  414. claude_mpm/dashboard/static/archive/test_dashboard.html +0 -409
  415. claude_mpm/dashboard/static/archive/test_dashboard_fixed.html +0 -519
  416. claude_mpm/dashboard/static/archive/test_dashboard_verification.html +0 -181
  417. claude_mpm/dashboard/static/archive/test_file_data.html +0 -315
  418. claude_mpm/dashboard/static/archive/test_file_tree_empty_state.html +0 -243
  419. claude_mpm/dashboard/static/archive/test_file_tree_fix.html +0 -234
  420. claude_mpm/dashboard/static/archive/test_file_tree_rename.html +0 -117
  421. claude_mpm/dashboard/static/archive/test_file_tree_tab.html +0 -115
  422. claude_mpm/dashboard/static/archive/test_file_viewer.html +0 -224
  423. claude_mpm/dashboard/static/archive/test_final_activity.html +0 -220
  424. claude_mpm/dashboard/static/archive/test_tab_fix.html +0 -139
  425. claude_mpm/dashboard/static/dist/assets/events.DjpNxWNo.css +0 -1
  426. claude_mpm/dashboard/static/dist/components/activity-tree.js +0 -2
  427. claude_mpm/dashboard/static/dist/components/agent-inference.js +0 -2
  428. claude_mpm/dashboard/static/dist/components/code-tree.js +0 -2
  429. claude_mpm/dashboard/static/dist/components/code-viewer.js +0 -2
  430. claude_mpm/dashboard/static/dist/components/event-processor.js +0 -2
  431. claude_mpm/dashboard/static/dist/components/event-viewer.js +0 -2
  432. claude_mpm/dashboard/static/dist/components/export-manager.js +0 -2
  433. claude_mpm/dashboard/static/dist/components/file-tool-tracker.js +0 -2
  434. claude_mpm/dashboard/static/dist/components/file-viewer.js +0 -2
  435. claude_mpm/dashboard/static/dist/components/hud-library-loader.js +0 -2
  436. claude_mpm/dashboard/static/dist/components/hud-manager.js +0 -2
  437. claude_mpm/dashboard/static/dist/components/hud-visualizer.js +0 -2
  438. claude_mpm/dashboard/static/dist/components/module-viewer.js +0 -2
  439. claude_mpm/dashboard/static/dist/components/session-manager.js +0 -2
  440. claude_mpm/dashboard/static/dist/components/socket-manager.js +0 -2
  441. claude_mpm/dashboard/static/dist/components/ui-state-manager.js +0 -2
  442. claude_mpm/dashboard/static/dist/components/unified-data-viewer.js +0 -2
  443. claude_mpm/dashboard/static/dist/components/working-directory.js +0 -2
  444. claude_mpm/dashboard/static/dist/dashboard.js +0 -2
  445. claude_mpm/dashboard/static/dist/react/events.js +0 -30
  446. claude_mpm/dashboard/static/dist/socket-client.js +0 -2
  447. claude_mpm/dashboard/static/test-archive/test_debug.html +0 -25
  448. claude_mpm/skills/bundled/debugging/verification-before-completion/references/common-failures.md +0 -213
  449. claude_mpm/tools/code_tree_analyzer.py +0 -1825
  450. /claude_mpm/skills/bundled/collaboration/requesting-code-review/{code-reviewer.md → references/code-reviewer-template.md} +0 -0
  451. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/WHEEL +0 -0
  452. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/entry_points.txt +0 -0
  453. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/licenses/LICENSE +0 -0
  454. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/top_level.txt +0 -0
@@ -87,13 +87,13 @@ class AgentSkillsInjector(LoggerMixin):
87
87
  >>> assert 'required' in template['skills']
88
88
  """
89
89
  try:
90
- with open(template_path, encoding='utf-8') as f:
90
+ with open(template_path, encoding="utf-8") as f:
91
91
  template = json.load(f)
92
92
  except (OSError, json.JSONDecodeError) as e:
93
93
  self.logger.error(f"Failed to load template {template_path}: {e}")
94
94
  raise ValueError(f"Cannot load template {template_path}") from e
95
95
 
96
- agent_id = template.get('agent_id')
96
+ agent_id = template.get("agent_id")
97
97
  if not agent_id:
98
98
  self.logger.error(f"Template missing agent_id: {template_path}")
99
99
  return template
@@ -106,10 +106,10 @@ class AgentSkillsInjector(LoggerMixin):
106
106
  required = skills[:2] if len(skills) > 2 else skills
107
107
  optional = skills[2:] if len(skills) > 2 else []
108
108
 
109
- template['skills'] = {
110
- 'required': required,
111
- 'optional': optional,
112
- 'auto_load': True
109
+ template["skills"] = {
110
+ "required": required,
111
+ "optional": optional,
112
+ "auto_load": True,
113
113
  }
114
114
 
115
115
  self.logger.info(f"Enhanced {agent_id} with {len(skills)} skills")
@@ -151,37 +151,30 @@ class AgentSkillsInjector(LoggerMixin):
151
151
  """
152
152
  # Build frontmatter dict
153
153
  frontmatter = {
154
- 'name': agent_config.get('agent_id'),
155
- 'description': agent_config.get('metadata', {}).get('description'),
156
- 'version': agent_config.get('version'),
157
- 'tools': agent_config.get('capabilities', {}).get('tools', [])
154
+ "name": agent_config.get("agent_id"),
155
+ "description": agent_config.get("metadata", {}).get("description"),
156
+ "version": agent_config.get("version"),
157
+ "tools": agent_config.get("capabilities", {}).get("tools", []),
158
158
  }
159
159
 
160
160
  # Add skills if present
161
- if 'skills' in agent_config:
162
- skills_config = agent_config['skills']
163
- required = skills_config.get('required', [])
164
- optional = skills_config.get('optional', [])
161
+ if "skills" in agent_config:
162
+ skills_config = agent_config["skills"]
163
+ required = skills_config.get("required", [])
164
+ optional = skills_config.get("optional", [])
165
165
  all_skills = required + optional
166
166
 
167
167
  if all_skills:
168
- frontmatter['skills'] = all_skills
168
+ frontmatter["skills"] = all_skills
169
169
 
170
170
  # Convert to YAML with clean formatting
171
171
  yaml_str = yaml.dump(
172
- frontmatter,
173
- default_flow_style=False,
174
- sort_keys=False,
175
- allow_unicode=True
172
+ frontmatter, default_flow_style=False, sort_keys=False, allow_unicode=True
176
173
  )
177
174
 
178
175
  return f"---\n{yaml_str}---\n"
179
176
 
180
- def inject_skills_documentation(
181
- self,
182
- agent_content: str,
183
- skills: List[str]
184
- ) -> str:
177
+ def inject_skills_documentation(self, agent_content: str, skills: List[str]) -> str:
185
178
  """Inject skills documentation reference into agent instructions.
186
179
 
187
180
  Adds a "## Available Skills" section after the YAML frontmatter that
@@ -222,8 +215,8 @@ class AgentSkillsInjector(LoggerMixin):
222
215
  skills_section += "\nClaude will automatically read these skills when your task matches their descriptions.\n"
223
216
 
224
217
  # Insert after frontmatter
225
- if '---' in agent_content:
226
- parts = agent_content.split('---', 2)
218
+ if "---" in agent_content:
219
+ parts = agent_content.split("---", 2)
227
220
  if len(parts) >= 3:
228
221
  # Reconstruct: frontmatter + skills section + rest
229
222
  return f"{parts[0]}---{parts[1]}---{skills_section}{parts[2]}"
@@ -232,9 +225,7 @@ class AgentSkillsInjector(LoggerMixin):
232
225
  return agent_content + skills_section
233
226
 
234
227
  def enhance_agent_with_skills(
235
- self,
236
- agent_id: str,
237
- template_content: str
228
+ self, agent_id: str, template_content: str
238
229
  ) -> Dict[str, Any]:
239
230
  """Convenience method to fully enhance an agent with skills.
240
231
 
@@ -267,19 +258,19 @@ class AgentSkillsInjector(LoggerMixin):
267
258
 
268
259
  if not skills:
269
260
  return {
270
- 'agent_id': agent_id,
271
- 'skills': [],
272
- 'frontmatter': '',
273
- 'content': template_content
261
+ "agent_id": agent_id,
262
+ "skills": [],
263
+ "frontmatter": "",
264
+ "content": template_content,
274
265
  }
275
266
 
276
267
  # Create config dict for frontmatter generation
277
268
  agent_config = {
278
- 'agent_id': agent_id,
279
- 'skills': {
280
- 'required': skills[:2] if len(skills) > 2 else skills,
281
- 'optional': skills[2:] if len(skills) > 2 else []
282
- }
269
+ "agent_id": agent_id,
270
+ "skills": {
271
+ "required": skills[:2] if len(skills) > 2 else skills,
272
+ "optional": skills[2:] if len(skills) > 2 else [],
273
+ },
283
274
  }
284
275
 
285
276
  # Generate frontmatter
@@ -289,10 +280,10 @@ class AgentSkillsInjector(LoggerMixin):
289
280
  enhanced_content = self.inject_skills_documentation(template_content, skills)
290
281
 
291
282
  return {
292
- 'agent_id': agent_id,
293
- 'skills': skills,
294
- 'frontmatter': frontmatter,
295
- 'content': enhanced_content
283
+ "agent_id": agent_id,
284
+ "skills": skills,
285
+ "frontmatter": frontmatter,
286
+ "content": enhanced_content,
296
287
  }
297
288
 
298
289
  def get_skills_references_for_agent(self, agent_id: str) -> List[Dict[str, str]]:
@@ -320,12 +311,14 @@ class AgentSkillsInjector(LoggerMixin):
320
311
 
321
312
  skill_refs = []
322
313
  for skill_name in skills:
323
- metadata = registry.get('skills_metadata', {}).get(skill_name, {})
324
-
325
- skill_refs.append({
326
- 'name': skill_name,
327
- 'category': metadata.get('category', 'unknown'),
328
- 'description': metadata.get('description', '')
329
- })
314
+ metadata = registry.get("skills_metadata", {}).get(skill_name, {})
315
+
316
+ skill_refs.append(
317
+ {
318
+ "name": skill_name,
319
+ "category": metadata.get("category", "unknown"),
320
+ "description": metadata.get("description", ""),
321
+ }
322
+ )
330
323
 
331
324
  return skill_refs
@@ -0,0 +1,2 @@
1
+ # This directory will contain bundled Claude Code skills
2
+ # Skills will be organized by category subdirectories
@@ -3,6 +3,10 @@ name: Brainstorming Ideas Into Designs
3
3
  description: Interactive idea refinement using Socratic method to develop fully-formed designs
4
4
  when_to_use: when partner describes any feature or project idea, before writing code or implementation plans
5
5
  version: 2.2.0
6
+ progressive_disclosure:
7
+ level: 1
8
+ references: []
9
+ note: Already optimal at 75 lines - intentionally compact, no references needed
6
10
  ---
7
11
 
8
12
  # Brainstorming Ideas Into Designs
@@ -2,9 +2,17 @@
2
2
  name: Dispatching Parallel Agents
3
3
  description: Use multiple Claude agents to investigate and fix independent problems concurrently
4
4
  when_to_use: when facing 3+ independent failures that can be investigated without shared state or dependencies
5
- version: 1.1.0
6
- languages: all
7
- context: AI-assisted development (Claude Code or similar)
5
+ version: 2.0.0
6
+ progressive_disclosure:
7
+ entry_point:
8
+ summary: "Dispatch one agent per independent problem domain to solve multiple unrelated failures concurrently"
9
+ when_to_use: "When you have 3+ independent failures in different test files/subsystems with no shared state or dependencies"
10
+ quick_start: "1. Identify independent domains 2. Create focused agent tasks 3. Dispatch in parallel 4. Review summaries 5. Verify no conflicts and integrate"
11
+ references:
12
+ - coordination-patterns.md
13
+ - agent-prompts.md
14
+ - examples.md
15
+ - troubleshooting.md
8
16
  ---
9
17
 
10
18
  # Dispatching Parallel Agents
@@ -15,45 +23,52 @@ When you have multiple unrelated failures (different test files, different subsy
15
23
 
16
24
  **Core principle:** Dispatch one agent per independent problem domain. Let them work concurrently.
17
25
 
18
- ## When to Use
19
-
20
- ```dot
21
- digraph when_to_use {
22
- "Multiple failures?" [shape=diamond];
23
- "Are they independent?" [shape=diamond];
24
- "Single agent investigates all" [shape=box];
25
- "One agent per problem domain" [shape=box];
26
- "Can they work in parallel?" [shape=diamond];
27
- "Sequential agents" [shape=box];
28
- "Parallel dispatch" [shape=box];
29
-
30
- "Multiple failures?" -> "Are they independent?" [label="yes"];
31
- "Are they independent?" -> "Single agent investigates all" [label="no - related"];
32
- "Are they independent?" -> "Can they work in parallel?" [label="yes"];
33
- "Can they work in parallel?" -> "Parallel dispatch" [label="yes"];
34
- "Can they work in parallel?" -> "Sequential agents" [label="no - shared state"];
35
- }
36
- ```
26
+ ## When to Use This Skill
37
27
 
38
- **Use when:**
39
- - 3+ test files failing with different root causes
40
- - Multiple subsystems broken independently
41
- - Each problem can be understood without context from others
42
- - No shared state between investigations
28
+ Activate this skill when you're facing:
29
+ - **3+ test files failing** with different root causes
30
+ - **Multiple subsystems broken** independently
31
+ - **Each problem is self-contained** - can be understood without context from others
32
+ - **No shared state** between investigations
33
+ - **Clear domain boundaries** - fixing one won't affect others
43
34
 
44
35
  **Don't use when:**
45
36
  - Failures are related (fix one might fix others)
46
- - Need to understand full system state
47
- - Agents would interfere with each other
37
+ - Need to understand full system state first
38
+ - Agents would interfere with each other (editing same files)
39
+ - Exploratory debugging (don't know what's broken yet)
40
+
41
+ ## The Iron Law
42
+
43
+ ```
44
+ One agent, one problem domain, one clear outcome.
45
+ Never overlap scopes. Never share state. Always integrate consciously.
46
+ ```
47
+
48
+ ## Core Principles
49
+
50
+ ### Independence is Key
51
+ Problems must be truly independent - no shared files, no related root causes, no dependencies between fixes.
52
+
53
+ ### Focus Over Breadth
54
+ Each agent gets narrow scope: one test file, one subsystem, one clear goal. Broad tasks lead to confusion.
55
+
56
+ ### Clear Output Required
57
+ Every agent must return a summary: what was found, what was fixed, what changed. No silent fixes.
48
58
 
49
- ## The Pattern
59
+ ### Conscious Integration
60
+ Don't blindly merge agent work. Review summaries, check conflicts, run full suite, verify compatibility.
61
+
62
+ ## Quick Start
50
63
 
51
64
  ### 1. Identify Independent Domains
52
65
 
53
66
  Group failures by what's broken:
54
- - File A tests: Tool approval flow
55
- - File B tests: Batch completion behavior
56
- - File C tests: Abort functionality
67
+ ```
68
+ File A tests: Tool approval flow
69
+ File B tests: Batch completion behavior
70
+ File C tests: Abort functionality
71
+ ```
57
72
 
58
73
  Each domain is independent - fixing tool approval doesn't affect abort tests.
59
74
 
@@ -65,6 +80,8 @@ Each agent gets:
65
80
  - **Constraints:** Don't change other code
66
81
  - **Expected output:** Summary of what you found and fixed
67
82
 
83
+ **→** [agent-prompts.md](references/agent-prompts.md) for prompt templates and examples
84
+
68
85
  ### 3. Dispatch in Parallel
69
86
 
70
87
  ```typescript
@@ -75,110 +92,87 @@ Task("Fix tool-approval-race-conditions.test.ts failures")
75
92
  // All three run concurrently
76
93
  ```
77
94
 
95
+ **→** [coordination-patterns.md](references/coordination-patterns.md) for dispatch strategies
96
+
78
97
  ### 4. Review and Integrate
79
98
 
80
99
  When agents return:
81
- - Read each summary
82
- - Verify fixes don't conflict
83
- - Run full test suite
84
- - Integrate all changes
85
-
86
- ## Agent Prompt Structure
87
-
88
- Good agent prompts are:
89
- 1. **Focused** - One clear problem domain
90
- 2. **Self-contained** - All context needed to understand the problem
91
- 3. **Specific about output** - What should the agent return?
92
-
93
- ```markdown
94
- Fix the 3 failing tests in src/agents/agent-tool-abort.test.ts:
95
-
96
- 1. "should abort tool with partial output capture" - expects 'interrupted at' in message
97
- 2. "should handle mixed completed and aborted tools" - fast tool aborted instead of completed
98
- 3. "should properly track pendingToolCount" - expects 3 results but gets 0
100
+ - Read each summary - understand what changed
101
+ - Verify fixes don't conflict - check for same file edits
102
+ - Run full test suite - ensure compatibility
103
+ - Spot check changes - agents can make systematic errors
99
104
 
100
- These are timing/race condition issues. Your task:
105
+ **→** [troubleshooting.md](references/troubleshooting.md) for conflict resolution
101
106
 
102
- 1. Read the test file and understand what each test verifies
103
- 2. Identify root cause - timing issues or actual bugs?
104
- 3. Fix by:
105
- - Replacing arbitrary timeouts with event-based waiting
106
- - Fixing bugs in abort implementation if found
107
- - Adjusting test expectations if testing changed behavior
107
+ ## Decision Tree
108
108
 
109
- Do NOT just increase timeouts - find the real issue.
110
-
111
- Return: Summary of what you found and what you fixed.
109
+ ```
110
+ Multiple failures?
111
+ └→ Are they independent?
112
+ ├→ NO (related) → Single agent investigates all
113
+ └→ YES → Can they work in parallel?
114
+ ├→ NO (shared state) → Sequential agents
115
+ └→ YES → Parallel dispatch ✓
112
116
  ```
113
117
 
114
- ## Common Mistakes
115
-
116
- **❌ Too broad:** "Fix all the tests" - agent gets lost
117
- **✅ Specific:** "Fix agent-tool-abort.test.ts" - focused scope
118
-
119
- **❌ No context:** "Fix the race condition" - agent doesn't know where
120
- **✅ Context:** Paste the error messages and test names
121
-
122
- **❌ No constraints:** Agent might refactor everything
123
- **✅ Constraints:** "Do NOT change production code" or "Fix tests only"
124
-
125
- **❌ Vague output:** "Fix it" - you don't know what changed
126
- **✅ Specific:** "Return summary of root cause and changes"
118
+ ## Key Benefits
127
119
 
128
- ## When NOT to Use
120
+ 1. **Parallelization** - Multiple investigations happen simultaneously
121
+ 2. **Focus** - Each agent has narrow scope, less context to track
122
+ 3. **Independence** - Agents don't interfere with each other
123
+ 4. **Speed** - N problems solved in time of 1
129
124
 
130
- **Related failures:** Fixing one might fix others - investigate together first
131
- **Need full context:** Understanding requires seeing entire system
132
- **Exploratory debugging:** You don't know what's broken yet
133
- **Shared state:** Agents would interfere (editing same files, using same resources)
125
+ ## Navigation
134
126
 
135
- ## Real Example from Session
127
+ ### Pattern Reference
128
+ - **[Coordination Patterns](references/coordination-patterns.md)** - Dispatch strategies, domain identification, integration workflows
136
129
 
137
- **Scenario:** 6 test failures across 3 files after major refactoring
130
+ ### Agent Management
131
+ - **[Agent Prompts](references/agent-prompts.md)** - Prompt structure, templates, common mistakes, constraints
138
132
 
139
- **Failures:**
140
- - agent-tool-abort.test.ts: 3 failures (timing issues)
141
- - batch-completion-behavior.test.ts: 2 failures (tools not executing)
142
- - tool-approval-race-conditions.test.ts: 1 failure (execution count = 0)
133
+ ### Learning Resources
134
+ - **[Examples](references/examples.md)** - Real-world scenarios, case studies, time savings analysis
143
135
 
144
- **Decision:** Independent domains - abort logic separate from batch completion separate from race conditions
136
+ ### Problem Solving
137
+ - **[Troubleshooting](references/troubleshooting.md)** - Conflict resolution, verification strategies, common pitfalls
145
138
 
146
- **Dispatch:**
147
- ```
148
- Agent 1 Fix agent-tool-abort.test.ts
149
- Agent 2 Fix batch-completion-behavior.test.ts
150
- Agent 3 → Fix tool-approval-race-conditions.test.ts
151
- ```
139
+ ### Related Skills
140
+ - **[pm-workflow](../pm-workflow/)** - PM coordination and task management
141
+ - **[test-driven-development](../../testing/test-driven-development/)** - TDD patterns that benefit from parallel fixing
142
+ - **[verification-before-completion](../../productivity/verification-before-completion/)** - Integration verification
152
143
 
153
- **Results:**
154
- - Agent 1: Replaced timeouts with event-based waiting
155
- - Agent 2: Fixed event structure bug (threadId in wrong place)
156
- - Agent 3: Added wait for async tool execution to complete
144
+ ## Key Reminders
157
145
 
158
- **Integration:** All fixes independent, no conflicts, full suite green
146
+ 1. **Independence is mandatory** - Related failures need single-agent investigation
147
+ 2. **Focus beats breadth** - Narrow scope per agent prevents confusion
148
+ 3. **Always verify integration** - Don't blindly merge agent work
149
+ 4. **Clear outputs required** - Every agent returns summary of changes
150
+ 5. **Parallelization has overhead** - Only worth it for 3+ independent problems
159
151
 
160
- **Time saved:** 3 problems solved in parallel vs sequentially
152
+ ## Red Flags - STOP
161
153
 
162
- ## Key Benefits
154
+ **STOP immediately if:**
155
+ - Agents are editing the same files (scope overlap)
156
+ - Fixes from one agent break another's work (hidden dependencies)
157
+ - You can't clearly separate problem domains (not independent)
158
+ - Agents return no summary (can't verify changes)
159
+ - Integration requires major refactoring (conflicts)
163
160
 
164
- 1. **Parallelization** - Multiple investigations happen simultaneously
165
- 2. **Focus** - Each agent has narrow scope, less context to track
166
- 3. **Independence** - Agents don't interfere with each other
167
- 4. **Speed** - 3 problems solved in time of 1
161
+ **When in doubt:** Start with one agent, understand the landscape, then dispatch if truly independent.
168
162
 
169
- ## Verification
163
+ ## Integration with Other Skills
170
164
 
171
- After agents return:
172
- 1. **Review each summary** - Understand what changed
173
- 2. **Check for conflicts** - Did agents edit same code?
174
- 3. **Run full suite** - Verify all fixes work together
175
- 4. **Spot check** - Agents can make systematic errors
165
+ **Prerequisite:** Basic understanding of problem domains and test structure
166
+ **Complementary:** [pm-workflow](../pm-workflow/) for coordinating multiple agents
167
+ **Domain-specific:** Testing skills for understanding test failures
176
168
 
177
169
  ## Real-World Impact
178
170
 
179
171
  From debugging session (2025-10-03):
180
- - 6 failures across 3 files
181
- - 3 agents dispatched in parallel
182
- - All investigations completed concurrently
183
- - All fixes integrated successfully
184
- - Zero conflicts between agent changes
172
+ - **6 failures** across 3 test files
173
+ - **3 agents** dispatched in parallel
174
+ - **All investigations** completed concurrently
175
+ - **Zero conflicts** between agent changes
176
+ - **Time saved:** 3 problems solved in parallel vs sequentially
177
+
178
+ **→** [examples.md](references/examples.md) for detailed case study