claude-mpm 4.25.10__py3-none-any.whl → 5.1.8__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.
Files changed (507) hide show
  1. claude_mpm/VERSION +1 -1
  2. claude_mpm/agents/BASE_PM.md +12 -0
  3. claude_mpm/agents/PM_INSTRUCTIONS.md +1055 -2230
  4. claude_mpm/agents/PM_INSTRUCTIONS_TEACH.md +1322 -0
  5. claude_mpm/agents/WORKFLOW.md +4 -4
  6. claude_mpm/agents/__init__.py +6 -0
  7. claude_mpm/agents/agent_loader.py +1 -4
  8. claude_mpm/agents/base_agent_loader.py +10 -35
  9. claude_mpm/agents/templates/{circuit_breakers.md → circuit-breakers.md} +576 -66
  10. claude_mpm/agents/templates/context-management-examples.md +544 -0
  11. claude_mpm/agents/templates/pr-workflow-examples.md +427 -0
  12. claude_mpm/agents/templates/research-gate-examples.md +669 -0
  13. claude_mpm/agents/templates/structured-questions-examples.md +615 -0
  14. claude_mpm/agents/templates/ticket-completeness-examples.md +139 -0
  15. claude_mpm/agents/templates/ticketing-examples.md +277 -0
  16. claude_mpm/cli/__init__.py +28 -3
  17. claude_mpm/cli/commands/__init__.py +2 -0
  18. claude_mpm/cli/commands/agent_source.py +774 -0
  19. claude_mpm/cli/commands/agent_state_manager.py +188 -30
  20. claude_mpm/cli/commands/agents.py +959 -36
  21. claude_mpm/cli/commands/agents_cleanup.py +210 -0
  22. claude_mpm/cli/commands/agents_discover.py +338 -0
  23. claude_mpm/cli/commands/auto_configure.py +537 -239
  24. claude_mpm/cli/commands/config.py +7 -4
  25. claude_mpm/cli/commands/configure.py +924 -45
  26. claude_mpm/cli/commands/configure_navigation.py +63 -46
  27. claude_mpm/cli/commands/doctor.py +10 -2
  28. claude_mpm/cli/commands/local_deploy.py +1 -4
  29. claude_mpm/cli/commands/postmortem.py +401 -0
  30. claude_mpm/cli/commands/run.py +1 -39
  31. claude_mpm/cli/commands/skill_source.py +694 -0
  32. claude_mpm/cli/commands/skills.py +322 -19
  33. claude_mpm/cli/executor.py +22 -3
  34. claude_mpm/cli/interactive/agent_wizard.py +1028 -43
  35. claude_mpm/cli/parsers/agent_source_parser.py +171 -0
  36. claude_mpm/cli/parsers/agents_parser.py +256 -4
  37. claude_mpm/cli/parsers/auto_configure_parser.py +13 -0
  38. claude_mpm/cli/parsers/base_parser.py +25 -0
  39. claude_mpm/cli/parsers/config_parser.py +96 -43
  40. claude_mpm/cli/parsers/skill_source_parser.py +169 -0
  41. claude_mpm/cli/parsers/skills_parser.py +7 -0
  42. claude_mpm/cli/parsers/source_parser.py +138 -0
  43. claude_mpm/cli/startup.py +456 -103
  44. claude_mpm/cli/startup_display.py +4 -4
  45. claude_mpm/commands/{mpm-auto-configure.md → mpm-agents-auto-configure.md} +9 -0
  46. claude_mpm/commands/mpm-agents-detect.md +9 -0
  47. claude_mpm/commands/{mpm-agents.md → mpm-agents-list.md} +9 -0
  48. claude_mpm/commands/mpm-agents-recommend.md +9 -0
  49. claude_mpm/commands/{mpm-config.md → mpm-config-view.md} +9 -0
  50. claude_mpm/commands/mpm-doctor.md +9 -0
  51. claude_mpm/commands/mpm-help.md +14 -2
  52. claude_mpm/commands/mpm-init.md +9 -0
  53. claude_mpm/commands/mpm-monitor.md +9 -0
  54. claude_mpm/commands/mpm-postmortem.md +123 -0
  55. claude_mpm/commands/{mpm-resume.md → mpm-session-resume.md} +9 -0
  56. claude_mpm/commands/mpm-status.md +9 -0
  57. claude_mpm/commands/{mpm-organize.md → mpm-ticket-organize.md} +9 -0
  58. claude_mpm/commands/mpm-ticket-view.md +552 -0
  59. claude_mpm/commands/mpm-version.md +9 -0
  60. claude_mpm/commands/mpm.md +10 -0
  61. claude_mpm/config/agent_presets.py +488 -0
  62. claude_mpm/config/agent_sources.py +325 -0
  63. claude_mpm/config/skill_presets.py +392 -0
  64. claude_mpm/config/skill_sources.py +590 -0
  65. claude_mpm/constants.py +1 -0
  66. claude_mpm/core/claude_runner.py +5 -34
  67. claude_mpm/core/config.py +16 -0
  68. claude_mpm/core/framework/__init__.py +3 -16
  69. claude_mpm/core/framework/loaders/file_loader.py +54 -101
  70. claude_mpm/core/framework/loaders/instruction_loader.py +25 -5
  71. claude_mpm/core/interactive_session.py +83 -7
  72. claude_mpm/core/oneshot_session.py +71 -8
  73. claude_mpm/core/protocols/__init__.py +23 -0
  74. claude_mpm/core/protocols/runner_protocol.py +103 -0
  75. claude_mpm/core/protocols/session_protocol.py +131 -0
  76. claude_mpm/core/shared/singleton_manager.py +11 -4
  77. claude_mpm/core/system_context.py +38 -0
  78. claude_mpm/core/unified_config.py +22 -0
  79. claude_mpm/experimental/cli_enhancements.py +1 -5
  80. claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-313.pyc +0 -0
  81. claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-313.pyc +0 -0
  82. claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-313.pyc +0 -0
  83. claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-313.pyc +0 -0
  84. claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-313.pyc +0 -0
  85. claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-313.pyc +0 -0
  86. claude_mpm/hooks/claude_hooks/memory_integration.py +12 -1
  87. claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-313.pyc +0 -0
  88. claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-313.pyc +0 -0
  89. claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-313.pyc +0 -0
  90. claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-313.pyc +0 -0
  91. claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-313.pyc +0 -0
  92. claude_mpm/hooks/failure_learning/__init__.py +2 -8
  93. claude_mpm/hooks/failure_learning/failure_detection_hook.py +1 -6
  94. claude_mpm/hooks/failure_learning/fix_detection_hook.py +1 -6
  95. claude_mpm/hooks/failure_learning/learning_extraction_hook.py +1 -6
  96. claude_mpm/hooks/kuzu_response_hook.py +1 -5
  97. claude_mpm/models/git_repository.py +198 -0
  98. claude_mpm/services/agents/agent_builder.py +45 -9
  99. claude_mpm/services/agents/agent_preset_service.py +238 -0
  100. claude_mpm/services/agents/agent_selection_service.py +484 -0
  101. claude_mpm/services/agents/auto_deploy_index_parser.py +569 -0
  102. claude_mpm/services/agents/cache_git_manager.py +621 -0
  103. claude_mpm/services/agents/deployment/agent_deployment.py +126 -2
  104. claude_mpm/services/agents/deployment/agent_discovery_service.py +105 -73
  105. claude_mpm/services/agents/deployment/agent_lifecycle_manager.py +1 -5
  106. claude_mpm/services/agents/deployment/agent_restore_handler.py +1 -4
  107. claude_mpm/services/agents/deployment/agent_template_builder.py +236 -15
  108. claude_mpm/services/agents/deployment/agents_directory_resolver.py +101 -15
  109. claude_mpm/services/agents/deployment/async_agent_deployment.py +2 -1
  110. claude_mpm/services/agents/deployment/multi_source_deployment_service.py +115 -15
  111. claude_mpm/services/agents/deployment/refactored_agent_deployment_service.py +1 -4
  112. claude_mpm/services/agents/deployment/remote_agent_discovery_service.py +363 -0
  113. claude_mpm/services/agents/deployment/single_agent_deployer.py +2 -2
  114. claude_mpm/services/agents/deployment/system_instructions_deployer.py +168 -46
  115. claude_mpm/services/agents/deployment/validation/deployment_validator.py +2 -2
  116. claude_mpm/services/agents/git_source_manager.py +629 -0
  117. claude_mpm/services/agents/loading/framework_agent_loader.py +1 -4
  118. claude_mpm/services/agents/local_template_manager.py +47 -9
  119. claude_mpm/services/agents/single_tier_deployment_service.py +696 -0
  120. claude_mpm/services/agents/sources/__init__.py +13 -0
  121. claude_mpm/services/agents/sources/agent_sync_state.py +516 -0
  122. claude_mpm/services/agents/sources/git_source_sync_service.py +1087 -0
  123. claude_mpm/services/agents/startup_sync.py +239 -0
  124. claude_mpm/services/agents/toolchain_detector.py +474 -0
  125. claude_mpm/services/analysis/__init__.py +25 -0
  126. claude_mpm/services/analysis/postmortem_reporter.py +474 -0
  127. claude_mpm/services/analysis/postmortem_service.py +765 -0
  128. claude_mpm/services/command_deployment_service.py +200 -6
  129. claude_mpm/services/core/base.py +7 -2
  130. claude_mpm/services/core/interfaces/__init__.py +1 -3
  131. claude_mpm/services/core/interfaces/health.py +1 -4
  132. claude_mpm/services/core/models/__init__.py +2 -11
  133. claude_mpm/services/diagnostics/checks/__init__.py +4 -0
  134. claude_mpm/services/diagnostics/checks/agent_sources_check.py +577 -0
  135. claude_mpm/services/diagnostics/checks/mcp_services_check.py +7 -15
  136. claude_mpm/services/diagnostics/checks/skill_sources_check.py +587 -0
  137. claude_mpm/services/diagnostics/diagnostic_runner.py +9 -0
  138. claude_mpm/services/diagnostics/doctor_reporter.py +34 -6
  139. claude_mpm/services/git/__init__.py +21 -0
  140. claude_mpm/services/git/git_operations_service.py +494 -0
  141. claude_mpm/services/github/__init__.py +21 -0
  142. claude_mpm/services/github/github_cli_service.py +397 -0
  143. claude_mpm/services/infrastructure/monitoring/__init__.py +1 -5
  144. claude_mpm/services/infrastructure/monitoring/aggregator.py +1 -6
  145. claude_mpm/services/instructions/__init__.py +9 -0
  146. claude_mpm/services/instructions/instruction_cache_service.py +374 -0
  147. claude_mpm/services/local_ops/__init__.py +3 -13
  148. claude_mpm/services/local_ops/health_checks/__init__.py +1 -3
  149. claude_mpm/services/local_ops/health_manager.py +1 -4
  150. claude_mpm/services/mcp_config_manager.py +75 -145
  151. claude_mpm/services/mcp_gateway/core/process_pool.py +22 -16
  152. claude_mpm/services/mcp_gateway/server/mcp_gateway.py +1 -6
  153. claude_mpm/services/mcp_service_verifier.py +6 -3
  154. claude_mpm/services/monitor/daemon.py +28 -8
  155. claude_mpm/services/monitor/daemon_manager.py +96 -19
  156. claude_mpm/services/pr/__init__.py +14 -0
  157. claude_mpm/services/pr/pr_template_service.py +329 -0
  158. claude_mpm/services/project/project_organizer.py +4 -0
  159. claude_mpm/services/runner_configuration_service.py +16 -3
  160. claude_mpm/services/session_management_service.py +16 -4
  161. claude_mpm/services/skills/__init__.py +18 -0
  162. claude_mpm/services/skills/git_skill_source_manager.py +1169 -0
  163. claude_mpm/services/skills/skill_discovery_service.py +568 -0
  164. claude_mpm/services/socketio/server/core.py +1 -4
  165. claude_mpm/services/socketio/server/main.py +1 -3
  166. claude_mpm/services/unified/deployment_strategies/vercel.py +1 -5
  167. claude_mpm/services/unified/unified_deployment.py +1 -5
  168. claude_mpm/services/visualization/__init__.py +1 -5
  169. claude_mpm/templates/questions/__init__.py +2 -7
  170. claude_mpm/templates/questions/pr_strategy.py +1 -4
  171. claude_mpm/templates/questions/project_init.py +1 -4
  172. claude_mpm/templates/questions/ticket_mgmt.py +1 -4
  173. claude_mpm/utils/agent_dependency_loader.py +77 -10
  174. claude_mpm/utils/agent_filters.py +288 -0
  175. claude_mpm/utils/gitignore.py +3 -0
  176. claude_mpm/utils/migration.py +372 -0
  177. claude_mpm/utils/progress.py +387 -0
  178. {claude_mpm-4.25.10.dist-info → claude_mpm-5.1.8.dist-info}/METADATA +356 -112
  179. {claude_mpm-4.25.10.dist-info → claude_mpm-5.1.8.dist-info}/RECORD +188 -439
  180. claude_mpm/agents/templates/agent-manager.json +0 -273
  181. claude_mpm/agents/templates/agentic-coder-optimizer.json +0 -248
  182. claude_mpm/agents/templates/api_qa.json +0 -183
  183. claude_mpm/agents/templates/clerk-ops.json +0 -235
  184. claude_mpm/agents/templates/code_analyzer.json +0 -101
  185. claude_mpm/agents/templates/content-agent.json +0 -358
  186. claude_mpm/agents/templates/dart_engineer.json +0 -307
  187. claude_mpm/agents/templates/data_engineer.json +0 -225
  188. claude_mpm/agents/templates/documentation.json +0 -238
  189. claude_mpm/agents/templates/engineer.json +0 -210
  190. claude_mpm/agents/templates/gcp_ops_agent.json +0 -253
  191. claude_mpm/agents/templates/golang_engineer.json +0 -270
  192. claude_mpm/agents/templates/imagemagick.json +0 -264
  193. claude_mpm/agents/templates/java_engineer.json +0 -346
  194. claude_mpm/agents/templates/javascript_engineer_agent.json +0 -380
  195. claude_mpm/agents/templates/local_ops_agent.json +0 -1840
  196. claude_mpm/agents/templates/memory_manager.json +0 -158
  197. claude_mpm/agents/templates/nextjs_engineer.json +0 -285
  198. claude_mpm/agents/templates/ops.json +0 -185
  199. claude_mpm/agents/templates/php-engineer.json +0 -287
  200. claude_mpm/agents/templates/product_owner.json +0 -338
  201. claude_mpm/agents/templates/project_organizer.json +0 -144
  202. claude_mpm/agents/templates/prompt-engineer.json +0 -737
  203. claude_mpm/agents/templates/python_engineer.json +0 -387
  204. claude_mpm/agents/templates/qa.json +0 -243
  205. claude_mpm/agents/templates/react_engineer.json +0 -239
  206. claude_mpm/agents/templates/refactoring_engineer.json +0 -276
  207. claude_mpm/agents/templates/research.json +0 -258
  208. claude_mpm/agents/templates/ruby-engineer.json +0 -280
  209. claude_mpm/agents/templates/rust_engineer.json +0 -275
  210. claude_mpm/agents/templates/security.json +0 -202
  211. claude_mpm/agents/templates/svelte-engineer.json +0 -225
  212. claude_mpm/agents/templates/tauri_engineer.json +0 -274
  213. claude_mpm/agents/templates/ticketing.json +0 -181
  214. claude_mpm/agents/templates/typescript_engineer.json +0 -285
  215. claude_mpm/agents/templates/vercel_ops_agent.json +0 -412
  216. claude_mpm/agents/templates/version_control.json +0 -159
  217. claude_mpm/agents/templates/web_qa.json +0 -400
  218. claude_mpm/agents/templates/web_ui.json +0 -189
  219. claude_mpm/cli/README.md +0 -253
  220. claude_mpm/cli/commands/mcp_install_commands.py.backup +0 -284
  221. claude_mpm/cli/commands/mpm_init/README.md +0 -365
  222. claude_mpm/cli_module/refactoring_guide.md +0 -253
  223. claude_mpm/commands/mpm-tickets.md +0 -151
  224. claude_mpm/config/agent_capabilities.yaml +0 -658
  225. claude_mpm/config/async_logging_config.yaml +0 -145
  226. claude_mpm/core/.claude-mpm/logs/hooks_20250730.log +0 -34
  227. claude_mpm/d2/.gitignore +0 -22
  228. claude_mpm/d2/ARCHITECTURE_COMPARISON.md +0 -273
  229. claude_mpm/d2/FLASK_INTEGRATION.md +0 -156
  230. claude_mpm/d2/IMPLEMENTATION_SUMMARY.md +0 -452
  231. claude_mpm/d2/QUICKSTART.md +0 -186
  232. claude_mpm/d2/README.md +0 -232
  233. claude_mpm/d2/STORE_FIX_SUMMARY.md +0 -167
  234. claude_mpm/d2/SVELTE5_STORES_GUIDE.md +0 -180
  235. claude_mpm/d2/TESTING.md +0 -288
  236. claude_mpm/d2/index.html +0 -118
  237. claude_mpm/d2/package.json +0 -19
  238. claude_mpm/d2/src/App.svelte +0 -110
  239. claude_mpm/d2/src/components/Header.svelte +0 -153
  240. claude_mpm/d2/src/components/MainContent.svelte +0 -74
  241. claude_mpm/d2/src/components/Sidebar.svelte +0 -85
  242. claude_mpm/d2/src/components/tabs/EventsTab.svelte +0 -326
  243. claude_mpm/d2/src/lib/socketio.js +0 -144
  244. claude_mpm/d2/src/main.js +0 -7
  245. claude_mpm/d2/src/stores/events.js +0 -114
  246. claude_mpm/d2/src/stores/socket.js +0 -108
  247. claude_mpm/d2/src/stores/theme.js +0 -65
  248. claude_mpm/d2/svelte.config.js +0 -12
  249. claude_mpm/d2/vite.config.js +0 -15
  250. claude_mpm/dashboard/.claude-mpm/memories/README.md +0 -36
  251. claude_mpm/dashboard/BUILD_NUMBER +0 -1
  252. claude_mpm/dashboard/README.md +0 -121
  253. claude_mpm/dashboard/VERSION +0 -1
  254. claude_mpm/dashboard/react/components/DataInspector/DataInspector.module.css +0 -188
  255. claude_mpm/dashboard/react/components/DataInspector/DataInspector.tsx +0 -273
  256. claude_mpm/dashboard/react/components/ErrorBoundary.tsx +0 -75
  257. claude_mpm/dashboard/react/components/EventViewer/EventViewer.module.css +0 -156
  258. claude_mpm/dashboard/react/components/EventViewer/EventViewer.tsx +0 -141
  259. claude_mpm/dashboard/react/components/shared/ConnectionStatus.module.css +0 -38
  260. claude_mpm/dashboard/react/components/shared/ConnectionStatus.tsx +0 -36
  261. claude_mpm/dashboard/react/components/shared/FilterBar.module.css +0 -92
  262. claude_mpm/dashboard/react/components/shared/FilterBar.tsx +0 -89
  263. claude_mpm/dashboard/react/contexts/DashboardContext.tsx +0 -215
  264. claude_mpm/dashboard/react/entries/events.tsx +0 -165
  265. claude_mpm/dashboard/react/hooks/useEvents.ts +0 -191
  266. claude_mpm/dashboard/react/hooks/useSocket.ts +0 -225
  267. claude_mpm/dashboard/static/archive/activity_dashboard_fixed.html +0 -248
  268. claude_mpm/dashboard/static/built/REFACTORING_SUMMARY.md +0 -170
  269. claude_mpm/dashboard/static/built/assets/events.DjpNxWNo.css +0 -1
  270. claude_mpm/dashboard/static/built/components/activity-tree.js +0 -2
  271. claude_mpm/dashboard/static/built/components/activity-tree.js.map +0 -1
  272. claude_mpm/dashboard/static/built/components/agent-hierarchy.js +0 -777
  273. claude_mpm/dashboard/static/built/components/agent-inference.js +0 -2
  274. claude_mpm/dashboard/static/built/components/agent-inference.js.map +0 -1
  275. claude_mpm/dashboard/static/built/components/build-tracker.js +0 -333
  276. claude_mpm/dashboard/static/built/components/code-simple.js +0 -857
  277. claude_mpm/dashboard/static/built/components/code-tree/tree-breadcrumb.js +0 -353
  278. claude_mpm/dashboard/static/built/components/code-tree/tree-constants.js +0 -235
  279. claude_mpm/dashboard/static/built/components/code-tree/tree-search.js +0 -409
  280. claude_mpm/dashboard/static/built/components/code-tree/tree-utils.js +0 -435
  281. claude_mpm/dashboard/static/built/components/code-tree.js +0 -2
  282. claude_mpm/dashboard/static/built/components/code-tree.js.map +0 -1
  283. claude_mpm/dashboard/static/built/components/code-viewer.js +0 -2
  284. claude_mpm/dashboard/static/built/components/code-viewer.js.map +0 -1
  285. claude_mpm/dashboard/static/built/components/connection-debug.js +0 -654
  286. claude_mpm/dashboard/static/built/components/diff-viewer.js +0 -891
  287. claude_mpm/dashboard/static/built/components/event-processor.js +0 -2
  288. claude_mpm/dashboard/static/built/components/event-processor.js.map +0 -1
  289. claude_mpm/dashboard/static/built/components/event-viewer.js +0 -2
  290. claude_mpm/dashboard/static/built/components/event-viewer.js.map +0 -1
  291. claude_mpm/dashboard/static/built/components/export-manager.js +0 -2
  292. claude_mpm/dashboard/static/built/components/export-manager.js.map +0 -1
  293. claude_mpm/dashboard/static/built/components/file-change-tracker.js +0 -443
  294. claude_mpm/dashboard/static/built/components/file-change-viewer.js +0 -690
  295. claude_mpm/dashboard/static/built/components/file-tool-tracker.js +0 -2
  296. claude_mpm/dashboard/static/built/components/file-tool-tracker.js.map +0 -1
  297. claude_mpm/dashboard/static/built/components/file-viewer.js +0 -2
  298. claude_mpm/dashboard/static/built/components/file-viewer.js.map +0 -1
  299. claude_mpm/dashboard/static/built/components/hud-library-loader.js +0 -2
  300. claude_mpm/dashboard/static/built/components/hud-library-loader.js.map +0 -1
  301. claude_mpm/dashboard/static/built/components/hud-manager.js +0 -2
  302. claude_mpm/dashboard/static/built/components/hud-manager.js.map +0 -1
  303. claude_mpm/dashboard/static/built/components/hud-visualizer.js +0 -2
  304. claude_mpm/dashboard/static/built/components/hud-visualizer.js.map +0 -1
  305. claude_mpm/dashboard/static/built/components/module-viewer.js +0 -2
  306. claude_mpm/dashboard/static/built/components/module-viewer.js.map +0 -1
  307. claude_mpm/dashboard/static/built/components/nav-bar.js +0 -145
  308. claude_mpm/dashboard/static/built/components/page-structure.js +0 -429
  309. claude_mpm/dashboard/static/built/components/session-manager.js +0 -2
  310. claude_mpm/dashboard/static/built/components/session-manager.js.map +0 -1
  311. claude_mpm/dashboard/static/built/components/socket-manager.js +0 -2
  312. claude_mpm/dashboard/static/built/components/socket-manager.js.map +0 -1
  313. claude_mpm/dashboard/static/built/components/ui-state-manager.js +0 -2
  314. claude_mpm/dashboard/static/built/components/ui-state-manager.js.map +0 -1
  315. claude_mpm/dashboard/static/built/components/unified-data-viewer.js +0 -2
  316. claude_mpm/dashboard/static/built/components/unified-data-viewer.js.map +0 -1
  317. claude_mpm/dashboard/static/built/components/working-directory.js +0 -2
  318. claude_mpm/dashboard/static/built/components/working-directory.js.map +0 -1
  319. claude_mpm/dashboard/static/built/connection-manager.js +0 -536
  320. claude_mpm/dashboard/static/built/dashboard.js +0 -2
  321. claude_mpm/dashboard/static/built/dashboard.js.map +0 -1
  322. claude_mpm/dashboard/static/built/extension-error-handler.js +0 -164
  323. claude_mpm/dashboard/static/built/react/events.js +0 -30
  324. claude_mpm/dashboard/static/built/react/events.js.map +0 -1
  325. claude_mpm/dashboard/static/built/shared/dom-helpers.js +0 -396
  326. claude_mpm/dashboard/static/built/shared/event-bus.js +0 -330
  327. claude_mpm/dashboard/static/built/shared/event-filter-service.js +0 -540
  328. claude_mpm/dashboard/static/built/shared/logger.js +0 -385
  329. claude_mpm/dashboard/static/built/shared/page-structure.js +0 -249
  330. claude_mpm/dashboard/static/built/shared/tooltip-service.js +0 -253
  331. claude_mpm/dashboard/static/built/socket-client.js +0 -2
  332. claude_mpm/dashboard/static/built/socket-client.js.map +0 -1
  333. claude_mpm/dashboard/static/built/tab-isolation-fix.js +0 -185
  334. claude_mpm/dashboard/static/events.html +0 -607
  335. claude_mpm/dashboard/static/index.html +0 -635
  336. claude_mpm/dashboard/static/js/REFACTORING_SUMMARY.md +0 -170
  337. claude_mpm/dashboard/static/js/shared/dom-helpers.js +0 -396
  338. claude_mpm/dashboard/static/js/shared/event-bus.js +0 -330
  339. claude_mpm/dashboard/static/js/shared/logger.js +0 -385
  340. claude_mpm/dashboard/static/js/shared/tooltip-service.js +0 -253
  341. claude_mpm/dashboard/static/js/stores/dashboard-store.js +0 -562
  342. claude_mpm/dashboard/static/legacy/activity.html +0 -736
  343. claude_mpm/dashboard/static/legacy/agents.html +0 -786
  344. claude_mpm/dashboard/static/legacy/files.html +0 -747
  345. claude_mpm/dashboard/static/legacy/tools.html +0 -831
  346. claude_mpm/dashboard/static/monitors.html +0 -431
  347. claude_mpm/dashboard/static/navigation-test-results.md +0 -118
  348. claude_mpm/dashboard/static/production/events.html +0 -659
  349. claude_mpm/dashboard/static/production/main.html +0 -698
  350. claude_mpm/dashboard/static/production/monitors.html +0 -483
  351. claude_mpm/dashboard/static/test-archive/dashboard.html +0 -635
  352. claude_mpm/dashboard/static/test-archive/debug-events.html +0 -147
  353. claude_mpm/dashboard/static/test-archive/test-navigation.html +0 -256
  354. claude_mpm/dashboard/static/test-archive/test-react-exports.html +0 -180
  355. claude_mpm/dashboard/templates/.claude-mpm/memories/README.md +0 -36
  356. claude_mpm/dashboard/templates/.claude-mpm/memories/engineer_agent.md +0 -39
  357. claude_mpm/dashboard/templates/.claude-mpm/memories/version_control_agent.md +0 -38
  358. claude_mpm/hooks/README.md +0 -143
  359. claude_mpm/hooks/templates/README.md +0 -180
  360. claude_mpm/hooks/templates/settings.json.example +0 -147
  361. claude_mpm/schemas/agent_schema.json +0 -596
  362. claude_mpm/schemas/frontmatter_schema.json +0 -165
  363. claude_mpm/services/event_bus/README.md +0 -244
  364. claude_mpm/services/events/README.md +0 -303
  365. claude_mpm/services/framework_claude_md_generator/README.md +0 -119
  366. claude_mpm/services/mcp_gateway/README.md +0 -185
  367. claude_mpm/services/socketio/handlers/connection.py.backup +0 -217
  368. claude_mpm/services/socketio/handlers/hook.py.backup +0 -154
  369. claude_mpm/services/static/.gitkeep +0 -2
  370. claude_mpm/services/version_control/VERSION +0 -1
  371. claude_mpm/skills/bundled/.gitkeep +0 -2
  372. claude_mpm/skills/bundled/collaboration/brainstorming/SKILL.md +0 -79
  373. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/SKILL.md +0 -178
  374. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/agent-prompts.md +0 -577
  375. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/coordination-patterns.md +0 -467
  376. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/examples.md +0 -537
  377. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/troubleshooting.md +0 -730
  378. claude_mpm/skills/bundled/collaboration/git-worktrees.md +0 -317
  379. claude_mpm/skills/bundled/collaboration/requesting-code-review/SKILL.md +0 -112
  380. claude_mpm/skills/bundled/collaboration/requesting-code-review/references/code-reviewer-template.md +0 -146
  381. claude_mpm/skills/bundled/collaboration/requesting-code-review/references/review-examples.md +0 -412
  382. claude_mpm/skills/bundled/collaboration/stacked-prs.md +0 -251
  383. claude_mpm/skills/bundled/collaboration/writing-plans/SKILL.md +0 -81
  384. claude_mpm/skills/bundled/collaboration/writing-plans/references/best-practices.md +0 -362
  385. claude_mpm/skills/bundled/collaboration/writing-plans/references/plan-structure-templates.md +0 -312
  386. claude_mpm/skills/bundled/debugging/root-cause-tracing/SKILL.md +0 -152
  387. claude_mpm/skills/bundled/debugging/root-cause-tracing/find-polluter.sh +0 -63
  388. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/advanced-techniques.md +0 -668
  389. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/examples.md +0 -587
  390. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/integration.md +0 -438
  391. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/tracing-techniques.md +0 -391
  392. claude_mpm/skills/bundled/debugging/systematic-debugging/CREATION-LOG.md +0 -119
  393. claude_mpm/skills/bundled/debugging/systematic-debugging/SKILL.md +0 -148
  394. claude_mpm/skills/bundled/debugging/systematic-debugging/references/anti-patterns.md +0 -483
  395. claude_mpm/skills/bundled/debugging/systematic-debugging/references/examples.md +0 -452
  396. claude_mpm/skills/bundled/debugging/systematic-debugging/references/troubleshooting.md +0 -449
  397. claude_mpm/skills/bundled/debugging/systematic-debugging/references/workflow.md +0 -411
  398. claude_mpm/skills/bundled/debugging/systematic-debugging/test-academic.md +0 -14
  399. claude_mpm/skills/bundled/debugging/systematic-debugging/test-pressure-1.md +0 -58
  400. claude_mpm/skills/bundled/debugging/systematic-debugging/test-pressure-2.md +0 -68
  401. claude_mpm/skills/bundled/debugging/systematic-debugging/test-pressure-3.md +0 -69
  402. claude_mpm/skills/bundled/debugging/verification-before-completion/SKILL.md +0 -131
  403. claude_mpm/skills/bundled/debugging/verification-before-completion/references/gate-function.md +0 -325
  404. claude_mpm/skills/bundled/debugging/verification-before-completion/references/integration-and-workflows.md +0 -490
  405. claude_mpm/skills/bundled/debugging/verification-before-completion/references/red-flags-and-failures.md +0 -425
  406. claude_mpm/skills/bundled/debugging/verification-before-completion/references/verification-patterns.md +0 -499
  407. claude_mpm/skills/bundled/infrastructure/env-manager/INTEGRATION.md +0 -611
  408. claude_mpm/skills/bundled/infrastructure/env-manager/README.md +0 -596
  409. claude_mpm/skills/bundled/infrastructure/env-manager/SKILL.md +0 -260
  410. claude_mpm/skills/bundled/infrastructure/env-manager/examples/nextjs-env-structure.md +0 -315
  411. claude_mpm/skills/bundled/infrastructure/env-manager/references/frameworks.md +0 -436
  412. claude_mpm/skills/bundled/infrastructure/env-manager/references/security.md +0 -433
  413. claude_mpm/skills/bundled/infrastructure/env-manager/references/synchronization.md +0 -452
  414. claude_mpm/skills/bundled/infrastructure/env-manager/references/troubleshooting.md +0 -404
  415. claude_mpm/skills/bundled/infrastructure/env-manager/references/validation.md +0 -420
  416. claude_mpm/skills/bundled/main/artifacts-builder/LICENSE.txt +0 -202
  417. claude_mpm/skills/bundled/main/artifacts-builder/SKILL.md +0 -86
  418. claude_mpm/skills/bundled/main/artifacts-builder/scripts/bundle-artifact.sh +0 -54
  419. claude_mpm/skills/bundled/main/artifacts-builder/scripts/init-artifact.sh +0 -322
  420. claude_mpm/skills/bundled/main/artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  421. claude_mpm/skills/bundled/main/internal-comms/LICENSE.txt +0 -202
  422. claude_mpm/skills/bundled/main/internal-comms/SKILL.md +0 -43
  423. claude_mpm/skills/bundled/main/internal-comms/examples/3p-updates.md +0 -47
  424. claude_mpm/skills/bundled/main/internal-comms/examples/company-newsletter.md +0 -65
  425. claude_mpm/skills/bundled/main/internal-comms/examples/faq-answers.md +0 -30
  426. claude_mpm/skills/bundled/main/internal-comms/examples/general-comms.md +0 -16
  427. claude_mpm/skills/bundled/main/mcp-builder/LICENSE.txt +0 -202
  428. claude_mpm/skills/bundled/main/mcp-builder/SKILL.md +0 -160
  429. claude_mpm/skills/bundled/main/mcp-builder/reference/design_principles.md +0 -412
  430. claude_mpm/skills/bundled/main/mcp-builder/reference/evaluation.md +0 -602
  431. claude_mpm/skills/bundled/main/mcp-builder/reference/mcp_best_practices.md +0 -915
  432. claude_mpm/skills/bundled/main/mcp-builder/reference/node_mcp_server.md +0 -916
  433. claude_mpm/skills/bundled/main/mcp-builder/reference/python_mcp_server.md +0 -752
  434. claude_mpm/skills/bundled/main/mcp-builder/reference/workflow.md +0 -1237
  435. claude_mpm/skills/bundled/main/mcp-builder/scripts/example_evaluation.xml +0 -22
  436. claude_mpm/skills/bundled/main/mcp-builder/scripts/requirements.txt +0 -2
  437. claude_mpm/skills/bundled/main/skill-creator/LICENSE.txt +0 -202
  438. claude_mpm/skills/bundled/main/skill-creator/SKILL.md +0 -189
  439. claude_mpm/skills/bundled/main/skill-creator/references/best-practices.md +0 -500
  440. claude_mpm/skills/bundled/main/skill-creator/references/creation-workflow.md +0 -464
  441. claude_mpm/skills/bundled/main/skill-creator/references/examples.md +0 -619
  442. claude_mpm/skills/bundled/main/skill-creator/references/progressive-disclosure.md +0 -437
  443. claude_mpm/skills/bundled/main/skill-creator/references/skill-structure.md +0 -231
  444. claude_mpm/skills/bundled/php/espocrm-development/SKILL.md +0 -170
  445. claude_mpm/skills/bundled/php/espocrm-development/references/architecture.md +0 -602
  446. claude_mpm/skills/bundled/php/espocrm-development/references/common-tasks.md +0 -821
  447. claude_mpm/skills/bundled/php/espocrm-development/references/development-workflow.md +0 -742
  448. claude_mpm/skills/bundled/php/espocrm-development/references/frontend-customization.md +0 -726
  449. claude_mpm/skills/bundled/php/espocrm-development/references/hooks-and-services.md +0 -764
  450. claude_mpm/skills/bundled/php/espocrm-development/references/testing-debugging.md +0 -831
  451. claude_mpm/skills/bundled/react/flexlayout-react.md +0 -742
  452. claude_mpm/skills/bundled/rust/desktop-applications/SKILL.md +0 -226
  453. claude_mpm/skills/bundled/rust/desktop-applications/references/architecture-patterns.md +0 -901
  454. claude_mpm/skills/bundled/rust/desktop-applications/references/native-gui-frameworks.md +0 -901
  455. claude_mpm/skills/bundled/rust/desktop-applications/references/platform-integration.md +0 -775
  456. claude_mpm/skills/bundled/rust/desktop-applications/references/state-management.md +0 -937
  457. claude_mpm/skills/bundled/rust/desktop-applications/references/tauri-framework.md +0 -770
  458. claude_mpm/skills/bundled/rust/desktop-applications/references/testing-deployment.md +0 -961
  459. claude_mpm/skills/bundled/tauri/tauri-async-patterns.md +0 -495
  460. claude_mpm/skills/bundled/tauri/tauri-build-deploy.md +0 -599
  461. claude_mpm/skills/bundled/tauri/tauri-command-patterns.md +0 -535
  462. claude_mpm/skills/bundled/tauri/tauri-error-handling.md +0 -613
  463. claude_mpm/skills/bundled/tauri/tauri-event-system.md +0 -648
  464. claude_mpm/skills/bundled/tauri/tauri-file-system.md +0 -673
  465. claude_mpm/skills/bundled/tauri/tauri-frontend-integration.md +0 -767
  466. claude_mpm/skills/bundled/tauri/tauri-performance.md +0 -669
  467. claude_mpm/skills/bundled/tauri/tauri-state-management.md +0 -573
  468. claude_mpm/skills/bundled/tauri/tauri-testing.md +0 -384
  469. claude_mpm/skills/bundled/tauri/tauri-window-management.md +0 -628
  470. claude_mpm/skills/bundled/testing/condition-based-waiting/SKILL.md +0 -119
  471. claude_mpm/skills/bundled/testing/condition-based-waiting/example.ts +0 -158
  472. claude_mpm/skills/bundled/testing/condition-based-waiting/references/patterns-and-implementation.md +0 -253
  473. claude_mpm/skills/bundled/testing/test-driven-development/SKILL.md +0 -145
  474. claude_mpm/skills/bundled/testing/test-driven-development/references/anti-patterns.md +0 -543
  475. claude_mpm/skills/bundled/testing/test-driven-development/references/examples.md +0 -741
  476. claude_mpm/skills/bundled/testing/test-driven-development/references/integration.md +0 -470
  477. claude_mpm/skills/bundled/testing/test-driven-development/references/philosophy.md +0 -458
  478. claude_mpm/skills/bundled/testing/test-driven-development/references/workflow.md +0 -639
  479. claude_mpm/skills/bundled/testing/test-quality-inspector/SKILL.md +0 -458
  480. claude_mpm/skills/bundled/testing/test-quality-inspector/examples/example-inspection-report.md +0 -411
  481. claude_mpm/skills/bundled/testing/test-quality-inspector/references/assertion-quality.md +0 -317
  482. claude_mpm/skills/bundled/testing/test-quality-inspector/references/inspection-checklist.md +0 -270
  483. claude_mpm/skills/bundled/testing/test-quality-inspector/references/red-flags.md +0 -436
  484. claude_mpm/skills/bundled/testing/testing-anti-patterns/SKILL.md +0 -140
  485. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/completeness-anti-patterns.md +0 -572
  486. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/core-anti-patterns.md +0 -411
  487. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/detection-guide.md +0 -569
  488. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/tdd-connection.md +0 -695
  489. claude_mpm/skills/bundled/testing/webapp-testing/LICENSE.txt +0 -202
  490. claude_mpm/skills/bundled/testing/webapp-testing/SKILL.md +0 -184
  491. claude_mpm/skills/bundled/testing/webapp-testing/decision-tree.md +0 -459
  492. claude_mpm/skills/bundled/testing/webapp-testing/playwright-patterns.md +0 -479
  493. claude_mpm/skills/bundled/testing/webapp-testing/reconnaissance-pattern.md +0 -687
  494. claude_mpm/skills/bundled/testing/webapp-testing/server-management.md +0 -758
  495. claude_mpm/skills/bundled/testing/webapp-testing/troubleshooting.md +0 -868
  496. claude_mpm/templates/questions/EXAMPLES.md +0 -501
  497. claude_mpm/tools/README_SOCKETIO_DEBUG.md +0 -224
  498. claude_mpm/tools/code_tree_analyzer/README.md +0 -64
  499. /claude_mpm/agents/templates/{git_file_tracking.md → git-file-tracking.md} +0 -0
  500. /claude_mpm/agents/templates/{pm_examples.md → pm-examples.md} +0 -0
  501. /claude_mpm/agents/templates/{pm_red_flags.md → pm-red-flags.md} +0 -0
  502. /claude_mpm/agents/templates/{response_format.md → response-format.md} +0 -0
  503. /claude_mpm/agents/templates/{validation_templates.md → validation-templates.md} +0 -0
  504. {claude_mpm-4.25.10.dist-info → claude_mpm-5.1.8.dist-info}/WHEEL +0 -0
  505. {claude_mpm-4.25.10.dist-info → claude_mpm-5.1.8.dist-info}/entry_points.txt +0 -0
  506. {claude_mpm-4.25.10.dist-info → claude_mpm-5.1.8.dist-info}/licenses/LICENSE +0 -0
  507. {claude_mpm-4.25.10.dist-info → claude_mpm-5.1.8.dist-info}/top_level.txt +0 -0
@@ -1,611 +0,0 @@
1
- # Agent Integration Guide for env-manager
2
-
3
- This guide shows how Claude MPM agents should use the env-manager skill for environment variable validation, security scanning, and deployment preparation.
4
-
5
- ## Overview
6
-
7
- The env-manager skill provides agents with systematic environment variable management capabilities. Agents can delegate environment validation tasks to this skill or invoke it directly for automated checks.
8
-
9
- ## Skill Invocation Pattern
10
-
11
- ### Basic Invocation
12
-
13
- Agents can invoke the env-manager skill using the standard Claude MPM skill invocation pattern:
14
-
15
- ```
16
- Use env-manager skill for environment variable validation
17
- ```
18
-
19
- ### Specific Task Invocation
20
-
21
- For targeted tasks, agents can be more specific:
22
-
23
- ```
24
- Use env-manager skill to validate Next.js environment variables for security issues
25
- ```
26
-
27
- ```
28
- Use env-manager skill to generate .env.example documentation
29
- ```
30
-
31
- ```
32
- Use env-manager skill to compare .env with .env.example before deployment
33
- ```
34
-
35
- ## Agent Usage Patterns
36
-
37
- ### Pattern 1: Pre-Deployment Validation
38
-
39
- **Scenario:** Agent needs to validate environment before deployment
40
-
41
- ```python
42
- # Agent workflow
43
- 1. Identify deployment target (Vercel, Railway, etc.)
44
- 2. Invoke env-manager skill: "Validate .env for Next.js deployment to Vercel"
45
- 3. Parse validation results
46
- 4. If errors: Report to user, block deployment
47
- 5. If warnings: Report to user, request confirmation
48
- 6. If success: Proceed with deployment
49
- ```
50
-
51
- **Example skill invocation:**
52
- ```
53
- I need to validate the Next.js environment configuration before deploying to Vercel.
54
- Use env-manager skill to check .env.local for:
55
- - Next.js specific issues (NEXT_PUBLIC_ prefix usage)
56
- - Security issues (exposed secrets)
57
- - Missing required variables
58
- - Deployment readiness
59
- ```
60
-
61
- ### Pattern 2: Security Scanning
62
-
63
- **Scenario:** Security agent needs to scan for exposed secrets
64
-
65
- ```python
66
- # Security agent workflow
67
- 1. Locate .env files in project
68
- 2. Invoke env-manager: "Scan for security issues in environment variables"
69
- 3. Parse security warnings
70
- 4. Generate security report
71
- 5. Recommend fixes for found issues
72
- ```
73
-
74
- **Example skill invocation:**
75
- ```
76
- Use env-manager skill to perform security scan of .env.local:
77
- - Check for secrets in client-exposed variables (NEXT_PUBLIC_, VITE_, REACT_APP_)
78
- - Validate secret formats
79
- - Identify potential credential leaks
80
- - Report security warnings
81
- ```
82
-
83
- ### Pattern 3: Documentation Generation
84
-
85
- **Scenario:** Agent needs to generate .env.example for repository
86
-
87
- ```python
88
- # Documentation agent workflow
89
- 1. Read current .env file
90
- 2. Invoke env-manager: "Generate .env.example with sanitized values"
91
- 3. Review generated file
92
- 4. Add to git (ensure .env.example, not .env)
93
- 5. Update README with environment setup instructions
94
- ```
95
-
96
- **Example skill invocation:**
97
- ```
98
- Use env-manager skill to generate .env.example from .env:
99
- - Sanitize all secret values
100
- - Keep structure and variable names
101
- - Add helpful comments for required variables
102
- - Ensure safe for git commit
103
- ```
104
-
105
- ### Pattern 4: Onboarding Assistance
106
-
107
- **Scenario:** Agent helps new developer set up environment
108
-
109
- ```python
110
- # Onboarding agent workflow
111
- 1. Guide user to copy .env.example to .env
112
- 2. Invoke env-manager: "Compare .env with .env.example"
113
- 3. Report missing variables to user
114
- 4. Guide user to fill in missing values
115
- 5. Re-validate until complete
116
- ```
117
-
118
- **Example skill invocation:**
119
- ```
120
- Use env-manager skill to verify new developer's environment setup:
121
- - Compare .env with .env.example
122
- - Report missing required variables
123
- - Identify extra undocumented variables
124
- - Validate all values are filled in (no empty values)
125
- ```
126
-
127
- ### Pattern 5: CI/CD Integration
128
-
129
- **Scenario:** CI/CD agent validates environment in pipeline
130
-
131
- ```python
132
- # CI/CD agent workflow
133
- 1. Locate .env.example in repository
134
- 2. Invoke env-manager: "Validate .env.example with strict mode and JSON output"
135
- 3. Parse JSON results
136
- 4. If validation fails: Fail pipeline with details
137
- 5. If validation passes: Continue pipeline
138
- ```
139
-
140
- **Example skill invocation:**
141
- ```
142
- Use env-manager skill for CI/CD validation:
143
- - Validate .env.example structure
144
- - Use strict mode (warnings as errors)
145
- - Output JSON for parsing
146
- - Return exit code for pipeline
147
- ```
148
-
149
- ## Expected Outputs
150
-
151
- ### Success Response
152
-
153
- When validation passes:
154
-
155
- ```json
156
- {
157
- "status": "success",
158
- "message": "Validation successful",
159
- "stats": {
160
- "total_vars": 15,
161
- "errors": 0,
162
- "warnings": 0
163
- }
164
- }
165
- ```
166
-
167
- **Agent action:** Proceed with next step in workflow
168
-
169
- ### Error Response
170
-
171
- When validation fails:
172
-
173
- ```json
174
- {
175
- "status": "error",
176
- "errors": [
177
- {
178
- "line": 12,
179
- "key": "DATABASE_URL",
180
- "message": "Empty value not allowed",
181
- "severity": "error"
182
- }
183
- ],
184
- "stats": {
185
- "total_vars": 15,
186
- "errors": 1,
187
- "warnings": 0
188
- }
189
- }
190
- ```
191
-
192
- **Agent action:**
193
- 1. Report errors to user
194
- 2. Suggest fixes
195
- 3. Block deployment/pipeline
196
- 4. Request user to fix errors and retry
197
-
198
- ### Warning Response
199
-
200
- When warnings are found:
201
-
202
- ```json
203
- {
204
- "status": "warning",
205
- "warnings": [
206
- {
207
- "line": 5,
208
- "key": "NEXT_PUBLIC_API_KEY",
209
- "message": "Potential secret in client-exposed variable",
210
- "severity": "warning"
211
- }
212
- ],
213
- "stats": {
214
- "total_vars": 15,
215
- "errors": 0,
216
- "warnings": 1
217
- }
218
- }
219
- ```
220
-
221
- **Agent action:**
222
- 1. Report warnings to user
223
- 2. Explain security implications
224
- 3. Request confirmation to proceed
225
- 4. In strict mode: Treat as error
226
-
227
- ## Error Handling
228
-
229
- ### File Not Found
230
-
231
- ```python
232
- if file_not_found:
233
- agent.report("Environment file not found")
234
- agent.suggest("Create .env file from .env.example: cp .env.example .env")
235
- agent.guide_user_to_fill_values()
236
- ```
237
-
238
- ### Validation Errors
239
-
240
- ```python
241
- if validation_errors:
242
- agent.report_errors(errors)
243
- agent.suggest_fixes_for_each_error()
244
- agent.block_deployment()
245
- agent.request_retry_after_fixes()
246
- ```
247
-
248
- ### Security Warnings
249
-
250
- ```python
251
- if security_warnings:
252
- agent.highlight_security_risks()
253
- agent.explain_client_exposure()
254
- agent.suggest_moving_to_server_side()
255
- agent.request_confirmation_or_fix()
256
- ```
257
-
258
- ### Missing Variables
259
-
260
- ```python
261
- if missing_vars:
262
- agent.list_missing_vars()
263
- agent.guide_where_to_find_values()
264
- agent.explain_importance_of_each_var()
265
- agent.validate_after_user_adds_vars()
266
- ```
267
-
268
- ## JSON Output Parsing
269
-
270
- Agents should use `--json` flag for structured output:
271
-
272
- ```bash
273
- python3 scripts/validate_env.py .env --framework nextjs --json
274
- ```
275
-
276
- **Parsing JSON output:**
277
-
278
- ```python
279
- import json
280
- import subprocess
281
-
282
- result = subprocess.run(
283
- ["python3", "scripts/validate_env.py", ".env", "--framework", "nextjs", "--json"],
284
- capture_output=True,
285
- text=True
286
- )
287
-
288
- data = json.loads(result.stdout)
289
-
290
- if data["valid"]:
291
- # Validation passed
292
- proceed_with_deployment()
293
- elif data["errors"]:
294
- # Validation failed
295
- report_errors_to_user(data["errors"])
296
- block_deployment()
297
- elif data["warnings"]:
298
- # Warnings found
299
- report_warnings_to_user(data["warnings"])
300
- request_confirmation()
301
- ```
302
-
303
- ## Agent-Specific Workflows
304
-
305
- ### nextjs-engineer Agent
306
-
307
- **Use cases:**
308
- - Pre-deployment validation for Vercel
309
- - NEXT_PUBLIC_ variable security checks
310
- - .env.local vs .env.production management
311
-
312
- **Example workflow:**
313
- ```
314
- 1. User: "Deploy to Vercel"
315
- 2. Agent validates .env.local with --framework nextjs
316
- 3. Agent checks for NEXT_PUBLIC_ secrets
317
- 4. Agent compares with Vercel environment variables
318
- 5. Agent proceeds with deployment or reports issues
319
- ```
320
-
321
- ### security Agent
322
-
323
- **Use cases:**
324
- - Secret exposure scanning
325
- - Client-side variable security audit
326
- - Credential format validation
327
-
328
- **Example workflow:**
329
- ```
330
- 1. User: "Run security audit"
331
- 2. Agent scans all .env* files
332
- 3. Agent checks for exposed secrets in NEXT_PUBLIC_ vars
333
- 4. Agent validates .gitignore covers .env files
334
- 5. Agent generates security report
335
- ```
336
-
337
- ### vercel-ops-agent Agent
338
-
339
- **Use cases:**
340
- - Platform environment sync
341
- - Deployment configuration validation
342
- - Environment parity checks
343
-
344
- **Example workflow:**
345
- ```
346
- 1. User: "Sync environment to Vercel"
347
- 2. Agent compares local .env with Vercel project settings
348
- 3. Agent identifies missing/different variables
349
- 4. Agent generates vercel.json or CLI commands
350
- 5. Agent syncs to platform (with confirmation)
351
- ```
352
-
353
- ### devops Agent
354
-
355
- **Use cases:**
356
- - CI/CD pipeline validation
357
- - Multi-environment management
358
- - .env.example maintenance
359
-
360
- **Example workflow:**
361
- ```
362
- 1. User: "Set up CI/CD for environment validation"
363
- 2. Agent creates GitHub Actions workflow
364
- 3. Agent configures env-manager validation step
365
- 4. Agent sets up strict mode for quality gate
366
- 5. Agent tests pipeline with .env.example
367
- ```
368
-
369
- ### onboarding-assistant Agent
370
-
371
- **Use cases:**
372
- - New developer environment setup
373
- - Guided .env configuration
374
- - Validation and troubleshooting
375
-
376
- **Example workflow:**
377
- ```
378
- 1. User: "New developer needs environment setup"
379
- 2. Agent guides: cp .env.example .env
380
- 3. Agent runs validation to find missing vars
381
- 4. Agent explains each required variable
382
- 5. Agent validates complete setup
383
- 6. Agent confirms ready for development
384
- ```
385
-
386
- ## Best Practices for Agents
387
-
388
- ### 1. Always Validate Before Deployment
389
-
390
- ```python
391
- def deploy_to_platform():
392
- # ✅ Good: Validate first
393
- validation_result = run_env_validation()
394
- if not validation_result.valid:
395
- report_errors_and_block()
396
- return
397
-
398
- proceed_with_deployment()
399
- ```
400
-
401
- ### 2. Use Framework-Specific Validation
402
-
403
- ```python
404
- def validate_for_framework(framework):
405
- # ✅ Good: Framework-aware
406
- cmd = f"python3 scripts/validate_env.py .env --framework {framework}"
407
-
408
- # ❌ Bad: Generic validation only
409
- # cmd = "python3 scripts/validate_env.py .env"
410
- ```
411
-
412
- ### 3. Parse JSON for Structured Handling
413
-
414
- ```python
415
- # ✅ Good: Structured output
416
- result = run_validation(json=True)
417
- data = json.loads(result.stdout)
418
- handle_each_error(data["errors"])
419
-
420
- # ❌ Bad: Parse text output
421
- # result = run_validation()
422
- # grep for errors in text
423
- ```
424
-
425
- ### 4. Explain Security Warnings
426
-
427
- ```python
428
- def handle_security_warning(warning):
429
- # ✅ Good: Explain the risk
430
- agent.explain(f"{warning.key} is exposed to client-side code")
431
- agent.explain("This means users can see this value in their browser")
432
- agent.suggest("Move to server-side variable or use publishable key")
433
-
434
- # ❌ Bad: Just show the warning
435
- # print(warning)
436
- ```
437
-
438
- ### 5. Guide Users to Fix Issues
439
-
440
- ```python
441
- def handle_missing_variable(var_name):
442
- # ✅ Good: Actionable guidance
443
- agent.explain(f"{var_name} is required but missing")
444
- agent.explain("This variable is used for: <purpose>")
445
- agent.suggest(f"Add to .env: {var_name}=<value>")
446
- agent.guide("You can find this value in: <location>")
447
-
448
- # ❌ Bad: Just report it's missing
449
- # print(f"Missing: {var_name}")
450
- ```
451
-
452
- ### 6. Use Strict Mode in CI/CD
453
-
454
- ```python
455
- def ci_cd_validation():
456
- # ✅ Good: Strict mode in CI
457
- result = run_validation(strict=True)
458
- # Warnings will fail the pipeline
459
-
460
- # ❌ Bad: Ignore warnings in CI
461
- # result = run_validation()
462
- ```
463
-
464
- ### 7. Never Log Actual Secret Values
465
-
466
- ```python
467
- def report_validation_result(result):
468
- # ✅ Good: Report structure, not values
469
- agent.report(f"Found {len(result.errors)} errors")
470
- agent.report_error_details_without_values()
471
-
472
- # ❌ Bad: Log actual values
473
- # print(f"DATABASE_URL={os.getenv('DATABASE_URL')}") # NEVER!
474
- ```
475
-
476
- ## Integration Checklist
477
-
478
- When integrating env-manager into an agent workflow:
479
-
480
- - [ ] Identify validation trigger (deployment, commit, security scan)
481
- - [ ] Determine appropriate framework (nextjs, vite, react, nodejs, flask)
482
- - [ ] Choose validation mode (normal, strict, quiet)
483
- - [ ] Set up JSON output parsing
484
- - [ ] Handle all error types (file not found, validation errors, warnings)
485
- - [ ] Provide actionable guidance for each error type
486
- - [ ] Implement retry logic after user fixes issues
487
- - [ ] Never log actual secret values
488
- - [ ] Test with various .env file scenarios
489
- - [ ] Document agent's env-manager usage in agent template
490
-
491
- ## Example Agent Implementation
492
-
493
- Here's a complete example of a deployment agent using env-manager:
494
-
495
- ```python
496
- class DeploymentAgent:
497
- def __init__(self):
498
- self.env_manager = EnvManagerSkill()
499
-
500
- def deploy_to_vercel(self, env_file=".env.local"):
501
- """Deploy Next.js app to Vercel with env validation."""
502
-
503
- # Step 1: Pre-deployment validation
504
- print("🔍 Validating environment variables...")
505
- result = self.env_manager.validate(
506
- file=env_file,
507
- framework="nextjs",
508
- strict=True,
509
- json=True
510
- )
511
-
512
- # Step 2: Parse results
513
- data = json.loads(result.stdout)
514
-
515
- # Step 3: Handle errors
516
- if data.get("errors"):
517
- self.report_errors(data["errors"])
518
- print("❌ Deployment blocked due to validation errors")
519
- return False
520
-
521
- # Step 4: Handle warnings
522
- if data.get("warnings"):
523
- self.report_warnings(data["warnings"])
524
- if not self.request_user_confirmation():
525
- print("⚠️ Deployment cancelled by user")
526
- return False
527
-
528
- # Step 5: Validate completeness
529
- if not self.compare_with_example(env_file):
530
- print("❌ Missing required variables")
531
- return False
532
-
533
- # Step 6: Proceed with deployment
534
- print("✅ Environment validation passed")
535
- print("🚀 Deploying to Vercel...")
536
- self.deploy()
537
- return True
538
-
539
- def report_errors(self, errors):
540
- """Report validation errors with actionable guidance."""
541
- print(f"\n❌ Found {len(errors)} validation error(s):\n")
542
- for error in errors:
543
- print(f"Line {error['line']}: {error['key']}")
544
- print(f" Error: {error['message']}")
545
- print(f" Fix: {self.get_fix_suggestion(error)}\n")
546
-
547
- def report_warnings(self, warnings):
548
- """Report validation warnings with security context."""
549
- print(f"\n⚠️ Found {len(warnings)} warning(s):\n")
550
- for warning in warnings:
551
- print(f"{warning['key']}: {warning['message']}")
552
- if "client-exposed" in warning['message']:
553
- print(" ⚠️ Security risk: This value will be visible in browser")
554
- print(" Fix: Move to server-side variable or use publishable key")
555
- print()
556
-
557
- def compare_with_example(self, env_file):
558
- """Ensure all required variables are present."""
559
- result = self.env_manager.validate(
560
- file=env_file,
561
- compare_with=".env.example",
562
- json=True
563
- )
564
- data = json.loads(result.stdout)
565
-
566
- if data.get("missing_vars"):
567
- print(f"❌ Missing required variables: {', '.join(data['missing_vars'])}")
568
- print("Add these to your .env file before deploying")
569
- return False
570
-
571
- return True
572
-
573
- def request_user_confirmation(self):
574
- """Request user confirmation for warnings."""
575
- response = input("⚠️ Warnings found. Proceed anyway? (y/N): ")
576
- return response.lower() == 'y'
577
-
578
- def get_fix_suggestion(self, error):
579
- """Provide fix suggestion based on error type."""
580
- if "empty value" in error["message"].lower():
581
- return f"Add a value for {error['key']}"
582
- elif "duplicate" in error["message"].lower():
583
- return f"Remove duplicate definition of {error['key']}"
584
- elif "invalid format" in error["message"].lower():
585
- return f"Fix format: {error['key']}=value"
586
- else:
587
- return "Review and fix the issue"
588
- ```
589
-
590
- ## Support and Resources
591
-
592
- - **Skill Documentation**: [README.md](README.md)
593
- - **Validation Reference**: [references/validation.md](references/validation.md)
594
- - **Security Reference**: [references/security.md](references/security.md)
595
- - **Framework Reference**: [references/frameworks.md](references/frameworks.md)
596
- - **Troubleshooting**: [references/troubleshooting.md](references/troubleshooting.md)
597
-
598
- ## Contributing
599
-
600
- When adding env-manager integration to agents:
601
-
602
- 1. Follow the patterns in this guide
603
- 2. Test with various .env file scenarios
604
- 3. Document the integration in agent template
605
- 4. Submit examples to this guide
606
- 5. Ensure security best practices (never log secrets!)
607
-
608
- ---
609
-
610
- **Version**: 1.0.0
611
- **Last Updated**: 2025-11-13