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
@@ -0,0 +1,118 @@
1
+ # Navigation Standardization Test Results
2
+
3
+ ## Summary
4
+ Successfully standardized navigation across all 5 dashboard views using a shared navigation component.
5
+
6
+ ## Implementation Details
7
+
8
+ ### 1. Created Shared Navigation Component
9
+ - **File**: `/src/claude_mpm/dashboard/static/built/components/nav-bar.js`
10
+ - **Features**:
11
+ - Consistent navigation tabs across all pages
12
+ - Automatic active page detection
13
+ - Unified styling with dark theme gradients
14
+ - Responsive design support
15
+
16
+ ### 2. Updated All Dashboard Views
17
+
18
+ #### Activity Dashboard (`activity.html`)
19
+ - ✅ Updated to use shared navigation component
20
+ - ✅ Removed duplicate navigation CSS
21
+ - ✅ Added navigation container div
22
+ - ✅ Imported and initialized NavBar component
23
+
24
+ #### Events Monitor (`events.html`)
25
+ - ✅ Updated to use shared navigation component
26
+ - ✅ Removed duplicate navigation CSS
27
+ - ✅ Added navigation container div
28
+ - ✅ Imported and initialized NavBar component
29
+
30
+ #### Agents Monitor (`agents.html`)
31
+ - ✅ Updated to use shared navigation component
32
+ - ✅ Removed duplicate navigation CSS
33
+ - ✅ Added navigation container div
34
+ - ✅ Imported and initialized NavBar component
35
+
36
+ #### Tools Monitor (`tools.html`)
37
+ - ✅ Updated to use shared navigation component
38
+ - ✅ Removed duplicate navigation CSS
39
+ - ✅ Added navigation container div
40
+ - ✅ Imported and initialized NavBar component
41
+
42
+ #### Files Monitor (`files.html`)
43
+ - ✅ Updated to use shared navigation component
44
+ - ✅ Removed duplicate navigation CSS
45
+ - ✅ Added navigation container div
46
+ - ✅ Imported and initialized NavBar component
47
+
48
+ ## Navigation Features
49
+
50
+ ### Consistent Tab Order
51
+ All pages now display the same navigation tabs in the same order:
52
+ 1. 🎯 Activity
53
+ 2. 📡 Events
54
+ 3. 🤖 Agents
55
+ 4. 🔧 Tools
56
+ 5. 📁 Files
57
+
58
+ ### Visual Consistency
59
+ - **Background**: Semi-transparent with backdrop blur
60
+ - **Tab Style**: Rounded corners with subtle borders
61
+ - **Hover Effect**: Lift animation with shadow
62
+ - **Active Tab**: Gradient background (green to cyan) with white text
63
+ - **Responsive**: Wraps on smaller screens
64
+
65
+ ### Active Page Highlighting
66
+ Each page correctly highlights its corresponding tab:
67
+ - `activity.html` → Activity tab highlighted
68
+ - `events.html` → Events tab highlighted
69
+ - `agents.html` → Agents tab highlighted
70
+ - `tools.html` → Tools tab highlighted
71
+ - `files.html` → Files tab highlighted
72
+
73
+ ## Testing
74
+
75
+ ### Test Page Created
76
+ - **File**: `/src/claude_mpm/dashboard/static/test-navigation.html`
77
+ - **Purpose**: Visual verification of navigation consistency
78
+ - **Features**:
79
+ - Shows navigation component in isolation
80
+ - Displays all 5 dashboard pages in iframes
81
+ - Verifies navigation loads on each page
82
+ - Provides pass/fail status for each page
83
+
84
+ ## Code Changes Summary
85
+
86
+ ### Files Modified
87
+ 1. `/src/claude_mpm/dashboard/static/activity.html`
88
+ 2. `/src/claude_mpm/dashboard/static/events.html`
89
+ 3. `/src/claude_mpm/dashboard/static/agents.html`
90
+ 4. `/src/claude_mpm/dashboard/static/tools.html`
91
+ 5. `/src/claude_mpm/dashboard/static/files.html`
92
+
93
+ ### Files Created
94
+ 1. `/src/claude_mpm/dashboard/static/built/components/nav-bar.js`
95
+ 2. `/src/claude_mpm/dashboard/static/test-navigation.html`
96
+ 3. `/src/claude_mpm/dashboard/static/navigation-test-results.md` (this file)
97
+
98
+ ## Benefits
99
+
100
+ 1. **Maintainability**: Single source of truth for navigation
101
+ 2. **Consistency**: Identical navigation across all views
102
+ 3. **Extensibility**: Easy to add new pages or modify navigation
103
+ 4. **Performance**: Styles injected once, reused across pages
104
+ 5. **User Experience**: Predictable navigation behavior
105
+
106
+ ## Verification Steps
107
+
108
+ To verify the implementation:
109
+
110
+ 1. Open each dashboard view in a browser
111
+ 2. Check that navigation appears identically on all pages
112
+ 3. Click through tabs to ensure they work
113
+ 4. Verify active tab highlighting is correct on each page
114
+ 5. Test hover effects are consistent
115
+
116
+ ## Conclusion
117
+
118
+ The navigation has been successfully standardized across all dashboard views. All pages now use the same shared navigation component, ensuring consistency in appearance, behavior, and user experience.
@@ -15,10 +15,10 @@
15
15
 
16
16
  <!-- External Dependencies -->
17
17
  <script src="https://cdn.socket.io/4.7.5/socket.io.min.js"></script>
18
-
18
+
19
19
  <!-- D3.js for Activity Tree Visualization -->
20
20
  <script src="https://d3js.org/d3.v7.min.js"></script>
21
-
21
+
22
22
  <!-- Font Awesome for icons -->
23
23
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
24
24
 
@@ -500,19 +500,19 @@
500
500
  // Set up working directory environment variables
501
501
  // These will be used by the working-directory component
502
502
  // The server will inject these values through a separate API call
503
-
503
+
504
504
  // Get the current working directory from the server
505
505
  fetch('/api/working-directory')
506
506
  .then(response => response.json())
507
507
  .then(data => {
508
508
  window.processWorkingDirectory = data.working_directory || '/Users/masa/Projects/claude-mpm';
509
509
  window.homeDirectory = data.home_directory || '/Users/masa';
510
-
510
+
511
511
  // Store in session storage for persistence
512
512
  if (window.processWorkingDirectory && window.processWorkingDirectory !== '/') {
513
513
  sessionStorage.setItem('currentWorkingDirectory', window.processWorkingDirectory);
514
514
  }
515
-
515
+
516
516
  // Dispatch event to notify components that working directory is ready
517
517
  window.dispatchEvent(new CustomEvent('workingDirectoryInitialized', {
518
518
  detail: {
@@ -527,10 +527,10 @@
527
527
  window.processWorkingDirectory = '/Users/masa/Projects/claude-mpm';
528
528
  window.homeDirectory = '/Users/masa';
529
529
  });
530
-
530
+
531
531
  // Add timestamp-based cache busting and ensure proper loading order
532
532
  const timestamp = Date.now();
533
-
533
+
534
534
  // Load modules sequentially to ensure dashboard.js loads first
535
535
  const loadModule = (src) => {
536
536
  return new Promise((resolve, reject) => {
@@ -542,7 +542,7 @@
542
542
  document.body.appendChild(script);
543
543
  });
544
544
  };
545
-
545
+
546
546
  // Load shared services first, then tree modules, then components
547
547
  // Load services sequentially to ensure dependencies are available
548
548
  loadModule('/static/js/shared/tooltip-service.js')
@@ -594,19 +594,19 @@
594
594
  })
595
595
  .then(() => {
596
596
  console.log('All dashboard modules loaded successfully');
597
-
597
+
598
598
  // Debug: Check if CodeViewer loaded
599
599
  if (window.CodeViewer) {
600
600
  console.log('[DEBUG] CodeViewer is available on window object');
601
601
  } else {
602
602
  console.error('[ERROR] CodeViewer NOT FOUND on window object!');
603
603
  }
604
-
604
+
605
605
  // CodeViewer will auto-initialize and handle tab switching internally
606
-
606
+
607
607
  // Browser Log Viewer initialization is now handled by UIStateManager
608
608
  // This prevents duplicate event handlers and tab selection conflicts
609
-
609
+
610
610
  // Load bulletproof tab isolation fix
611
611
  loadModule('/static/js/tab-isolation-fix.js')
612
612
  .then(() => {
@@ -632,21 +632,21 @@
632
632
  console.error('[CRITICAL] Error loading dashboard modules:', error);
633
633
  console.error('Stack trace:', error.stack);
634
634
  });
635
-
635
+
636
636
  // Give modules time to execute and initialize dashboard
637
637
  setTimeout(() => {
638
638
  console.log('Checking dashboard initialization...');
639
-
639
+
640
640
  if (window.dashboard) {
641
641
  console.log('Dashboard found, checking auto-connect status...');
642
-
642
+
643
643
  // Force auto-connect if not already connected
644
644
  if (window.dashboard.socketManager) {
645
645
  const socketManager = window.dashboard.socketManager;
646
-
646
+
647
647
  if (!socketManager.isConnected() && !socketManager.isConnecting()) {
648
648
  console.log('Dashboard loaded but not connected, forcing auto-connect...');
649
-
649
+
650
650
  // Try to trigger auto-connect manually
651
651
  const params = new URLSearchParams(window.location.search);
652
652
  socketManager.initializeFromURL(params);
@@ -658,23 +658,23 @@
658
658
  }
659
659
  } else {
660
660
  console.warn('Dashboard still not initialized after module loading');
661
-
661
+
662
662
  // Try to manually trigger initialization
663
663
  if (document.readyState === 'complete' || document.readyState === 'interactive') {
664
664
  console.log('Document ready, attempting to trigger dashboard initialization...');
665
665
  document.dispatchEvent(new Event('DOMContentLoaded'));
666
666
  }
667
667
  }
668
-
668
+
669
669
  // Debug: Test connection settings button
670
670
  const connectionToggleBtn = document.getElementById('connection-toggle-btn');
671
671
  if (connectionToggleBtn) {
672
672
  console.log('Connection toggle button found, testing functionality...');
673
-
673
+
674
674
  // Add a debug click handler to ensure the button works
675
675
  connectionToggleBtn.addEventListener('click', () => {
676
676
  console.log('Connection toggle button clicked (debug handler)');
677
-
677
+
678
678
  if (window.dashboard && window.dashboard.socketManager) {
679
679
  console.log('Calling socketManager.toggleConnectionControls()');
680
680
  window.dashboard.socketManager.toggleConnectionControls();
@@ -15,10 +15,10 @@
15
15
 
16
16
  <!-- External Dependencies -->
17
17
  <script src="https://cdn.socket.io/4.7.5/socket.io.min.js"></script>
18
-
18
+
19
19
  <!-- D3.js for Activity Tree Visualization -->
20
20
  <script src="https://d3js.org/d3.v7.min.js"></script>
21
-
21
+
22
22
  <!-- Font Awesome for icons -->
23
23
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
24
24
 
@@ -142,7 +142,7 @@
142
142
  <body>
143
143
  <!-- Connection Notifications Area -->
144
144
  <div id="connection-notifications" class="connection-notifications"></div>
145
-
145
+
146
146
  <div class="container">
147
147
  <!-- Header Section -->
148
148
  <div class="header">
@@ -437,19 +437,19 @@
437
437
  // Set up working directory environment variables
438
438
  // These will be used by the working-directory component
439
439
  // The server will inject these values through a separate API call
440
-
440
+
441
441
  // Get the current working directory from the server
442
442
  fetch('/api/working-directory')
443
443
  .then(response => response.json())
444
444
  .then(data => {
445
445
  window.processWorkingDirectory = data.working_directory || '/Users/masa/Projects/claude-mpm';
446
446
  window.homeDirectory = data.home_directory || '/Users/masa';
447
-
447
+
448
448
  // Store in session storage for persistence
449
449
  if (window.processWorkingDirectory && window.processWorkingDirectory !== '/') {
450
450
  sessionStorage.setItem('currentWorkingDirectory', window.processWorkingDirectory);
451
451
  }
452
-
452
+
453
453
  // Dispatch event to notify components that working directory is ready
454
454
  window.dispatchEvent(new CustomEvent('workingDirectoryInitialized', {
455
455
  detail: {
@@ -464,10 +464,10 @@
464
464
  window.processWorkingDirectory = '/Users/masa/Projects/claude-mpm';
465
465
  window.homeDirectory = '/Users/masa';
466
466
  });
467
-
467
+
468
468
  // Add timestamp-based cache busting and ensure proper loading order
469
469
  const timestamp = Date.now();
470
-
470
+
471
471
  // Load modules sequentially to ensure dashboard.js loads first
472
472
  const loadModule = (src) => {
473
473
  return new Promise((resolve, reject) => {
@@ -479,7 +479,7 @@
479
479
  document.body.appendChild(script);
480
480
  });
481
481
  };
482
-
482
+
483
483
  // Load shared services first, then tree modules, then components
484
484
  // Load services sequentially to ensure dependencies are available
485
485
  loadModule('/static/js/shared/tooltip-service.js')
@@ -531,19 +531,19 @@
531
531
  })
532
532
  .then(() => {
533
533
  console.log('All dashboard modules loaded successfully');
534
-
534
+
535
535
  // Debug: Check if CodeViewer loaded
536
536
  if (window.CodeViewer) {
537
537
  console.log('[DEBUG] CodeViewer is available on window object');
538
538
  } else {
539
539
  console.error('[ERROR] CodeViewer NOT FOUND on window object!');
540
540
  }
541
-
541
+
542
542
  // CodeViewer will auto-initialize and handle tab switching internally
543
-
543
+
544
544
  // Browser Log Viewer initialization is now handled by UIStateManager
545
545
  // This prevents duplicate event handlers and tab selection conflicts
546
-
546
+
547
547
  // Load bulletproof tab isolation fix
548
548
  loadModule('/static/js/tab-isolation-fix.js')
549
549
  .then(() => {
@@ -569,21 +569,21 @@
569
569
  console.error('[CRITICAL] Error loading dashboard modules:', error);
570
570
  console.error('Stack trace:', error.stack);
571
571
  });
572
-
572
+
573
573
  // Give modules time to execute and initialize dashboard
574
574
  setTimeout(() => {
575
575
  console.log('Checking dashboard initialization...');
576
-
576
+
577
577
  if (window.dashboard) {
578
578
  console.log('Dashboard found, checking auto-connect status...');
579
-
579
+
580
580
  // Force auto-connect if not already connected
581
581
  if (window.dashboard.socketManager) {
582
582
  const socketManager = window.dashboard.socketManager;
583
-
583
+
584
584
  if (!socketManager.isConnected() && !socketManager.isConnecting()) {
585
585
  console.log('Dashboard loaded but not connected, forcing auto-connect...');
586
-
586
+
587
587
  // Try to trigger auto-connect manually
588
588
  const params = new URLSearchParams(window.location.search);
589
589
  socketManager.initializeFromURL(params);
@@ -595,23 +595,23 @@
595
595
  }
596
596
  } else {
597
597
  console.warn('Dashboard still not initialized after module loading');
598
-
598
+
599
599
  // Try to manually trigger initialization
600
600
  if (document.readyState === 'complete' || document.readyState === 'interactive') {
601
601
  console.log('Document ready, attempting to trigger dashboard initialization...');
602
602
  document.dispatchEvent(new Event('DOMContentLoaded'));
603
603
  }
604
604
  }
605
-
605
+
606
606
  // Debug: Test connection settings button
607
607
  const connectionToggleBtn = document.getElementById('connection-toggle-btn');
608
608
  if (connectionToggleBtn) {
609
609
  console.log('Connection toggle button found, testing functionality...');
610
-
610
+
611
611
  // Add a debug click handler to ensure the button works
612
612
  connectionToggleBtn.addEventListener('click', () => {
613
613
  console.log('Connection toggle button clicked (debug handler)');
614
-
614
+
615
615
  if (window.dashboard && window.dashboard.socketManager) {
616
616
  console.log('Calling socketManager.toggleConnectionControls()');
617
617
  window.dashboard.socketManager.toggleConnectionControls();
@@ -0,0 +1,36 @@
1
+ # Agent Memory System
2
+
3
+ ## Purpose
4
+ Each agent maintains project-specific knowledge in these files. Agents read their memory file before tasks and update it when they learn something new.
5
+
6
+ ## Manual Editing
7
+ Feel free to edit these files to:
8
+ - Add project-specific guidelines
9
+ - Remove outdated information
10
+ - Reorganize for better clarity
11
+ - Add domain-specific knowledge
12
+
13
+ ## Memory Limits
14
+ - Max file size: 8KB (~2000 tokens)
15
+ - Max sections: 10
16
+ - Max items per section: 15
17
+ - Files auto-truncate when limits exceeded
18
+
19
+ ## File Format
20
+ Standard markdown with structured sections. Agents expect:
21
+ - Project Architecture
22
+ - Implementation Guidelines
23
+ - Common Mistakes to Avoid
24
+ - Current Technical Context
25
+
26
+ ## How It Works
27
+ 1. Agents read their memory file before starting tasks
28
+ 2. Agents add learnings during or after task completion
29
+ 3. Files automatically enforce size limits
30
+ 4. Developers can manually edit for accuracy
31
+
32
+ ## Memory File Lifecycle
33
+ - Created automatically when agent first runs
34
+ - Updated through hook system after delegations
35
+ - Manually editable by developers
36
+ - Version controlled with project
@@ -0,0 +1,39 @@
1
+ # Engineer Agent Memory - templates
2
+
3
+ <!-- MEMORY LIMITS: 8KB max | 10 sections max | 15 items per section -->
4
+ <!-- Last Updated: 2025-08-07 18:26:34 | Auto-updated by: engineer -->
5
+
6
+ ## Project Context
7
+ templates: mixed standard application
8
+
9
+ ## Project Architecture
10
+ - Standard Application with mixed implementation
11
+
12
+ ## Coding Patterns Learned
13
+ <!-- Items will be added as knowledge accumulates -->
14
+
15
+ ## Implementation Guidelines
16
+ <!-- Items will be added as knowledge accumulates -->
17
+
18
+ ## Domain-Specific Knowledge
19
+ <!-- Agent-specific knowledge for templates domain -->
20
+ - Key project terms: templates
21
+ - Focus on implementation patterns, coding standards, and best practices
22
+
23
+ ## Effective Strategies
24
+ <!-- Successful approaches discovered through experience -->
25
+
26
+ ## Common Mistakes to Avoid
27
+ <!-- Items will be added as knowledge accumulates -->
28
+
29
+ ## Integration Points
30
+ <!-- Items will be added as knowledge accumulates -->
31
+
32
+ ## Performance Considerations
33
+ <!-- Items will be added as knowledge accumulates -->
34
+
35
+ ## Current Technical Context
36
+ <!-- Items will be added as knowledge accumulates -->
37
+
38
+ ## Recent Learnings
39
+ <!-- Most recent discoveries and insights -->
@@ -0,0 +1,38 @@
1
+ # Version Control Agent Memory - templates
2
+
3
+ <!-- MEMORY LIMITS: 8KB max | 10 sections max | 15 items per section -->
4
+ <!-- Last Updated: 2025-08-07 18:28:51 | Auto-updated by: version_control -->
5
+
6
+ ## Project Context
7
+ templates: mixed standard application
8
+
9
+ ## Project Architecture
10
+ - Standard Application with mixed implementation
11
+
12
+ ## Coding Patterns Learned
13
+ <!-- Items will be added as knowledge accumulates -->
14
+
15
+ ## Implementation Guidelines
16
+ <!-- Items will be added as knowledge accumulates -->
17
+
18
+ ## Domain-Specific Knowledge
19
+ <!-- Agent-specific knowledge for templates domain -->
20
+ - Key project terms: templates
21
+
22
+ ## Effective Strategies
23
+ <!-- Successful approaches discovered through experience -->
24
+
25
+ ## Common Mistakes to Avoid
26
+ <!-- Items will be added as knowledge accumulates -->
27
+
28
+ ## Integration Points
29
+ <!-- Items will be added as knowledge accumulates -->
30
+
31
+ ## Performance Considerations
32
+ <!-- Items will be added as knowledge accumulates -->
33
+
34
+ ## Current Technical Context
35
+ <!-- Items will be added as knowledge accumulates -->
36
+
37
+ ## Recent Learnings
38
+ <!-- Most recent discoveries and insights -->
@@ -24,50 +24,50 @@
24
24
  border-radius: 4px;
25
25
  margin-bottom: 20px;
26
26
  }
27
-
27
+
28
28
  /* Tree visualization styles */
29
29
  .tree-node {
30
30
  cursor: pointer;
31
31
  }
32
-
32
+
33
33
  .tree-node circle {
34
34
  fill: #fff;
35
35
  stroke: steelblue;
36
36
  stroke-width: 2px;
37
37
  transition: all 0.3s ease;
38
38
  }
39
-
39
+
40
40
  .tree-node:hover circle {
41
41
  fill: #e6f3ff;
42
42
  stroke-width: 3px;
43
43
  }
44
-
44
+
45
45
  .tree-node text {
46
46
  font: 12px sans-serif;
47
47
  pointer-events: none;
48
48
  }
49
-
49
+
50
50
  .tree-link {
51
51
  fill: none;
52
52
  stroke: #ccc;
53
53
  stroke-width: 2px;
54
54
  }
55
-
55
+
56
56
  .view-toggle button {
57
57
  transition: all 0.3s ease;
58
58
  }
59
-
59
+
60
60
  .view-toggle button:hover {
61
61
  transform: translateY(-1px);
62
62
  box-shadow: 0 2px 4px rgba(0,0,0,0.2);
63
63
  }
64
-
64
+
65
65
  .file-selector input:focus {
66
66
  outline: none;
67
67
  border-color: #007cba;
68
68
  box-shadow: 0 0 0 2px rgba(0, 124, 186, 0.2);
69
69
  }
70
-
70
+
71
71
  .tree-legend {
72
72
  position: absolute;
73
73
  top: 10px;
@@ -79,13 +79,13 @@
79
79
  font-size: 12px;
80
80
  z-index: 1000;
81
81
  }
82
-
82
+
83
83
  .tree-legend-item {
84
84
  margin: 2px 0;
85
85
  display: flex;
86
86
  align-items: center;
87
87
  }
88
-
88
+
89
89
  .tree-legend-color {
90
90
  width: 12px;
91
91
  height: 12px;
@@ -103,15 +103,15 @@
103
103
  <div>⏳ Page loaded...</div>
104
104
  </div>
105
105
  </div>
106
-
106
+
107
107
  <div id="code-container">
108
108
  <!-- SimpleCodeView will render here -->
109
109
  </div>
110
110
  </div>
111
-
111
+
112
112
  <script>
113
113
  console.log('[HTML] Page script starting');
114
-
114
+
115
115
  function addStatus(message) {
116
116
  const statusDiv = document.getElementById('status-messages');
117
117
  if (statusDiv) {
@@ -119,27 +119,27 @@
119
119
  }
120
120
  console.log('[HTML Status]', message);
121
121
  }
122
-
122
+
123
123
  addStatus('⏳ Loading code-simple.js...');
124
124
  </script>
125
-
125
+
126
126
  <!-- D3.js for tree visualization -->
127
- <script src="https://d3js.org/d3.v7.min.js"
127
+ <script src="https://d3js.org/d3.v7.min.js"
128
128
  onload="addStatus('✅ D3.js loaded successfully')"
129
129
  onerror="addStatus('❌ Failed to load D3.js')"></script>
130
-
130
+
131
131
  <!-- Socket.IO for real-time communication -->
132
- <script src="https://cdn.socket.io/4.7.2/socket.io.min.js"
132
+ <script src="https://cdn.socket.io/4.7.2/socket.io.min.js"
133
133
  onload="addStatus('✅ Socket.IO loaded successfully')"
134
134
  onerror="addStatus('❌ Failed to load Socket.IO')"></script>
135
-
136
- <script src="/static/js/components/code-simple.js"
135
+
136
+ <script src="/static/js/components/code-simple.js"
137
137
  onload="addStatus('✅ code-simple.js loaded successfully')"
138
138
  onerror="addStatus('❌ Failed to load code-simple.js')"></script>
139
-
139
+
140
140
  <script>
141
141
  addStatus('⏳ Waiting for initialization...');
142
-
142
+
143
143
  // Check initialization after a delay
144
144
  setTimeout(() => {
145
145
  if (window.simpleCodeView) {