bmad-method 6.0.0-alpha.14 → 6.0.0-alpha.16

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 (412) hide show
  1. package/.coderabbit.yaml +36 -0
  2. package/{CODE_OF_CONDUCT.md → .github/CODE_OF_CONDUCT.md} +4 -4
  3. package/CHANGELOG.md +168 -409
  4. package/README.md +4 -1
  5. package/docs/agent-customization-guide.md +7 -7
  6. package/docs/custom-content-installation.md +245 -0
  7. package/docs/ide-info/crush.md +1 -1
  8. package/docs/ide-info/cursor.md +7 -7
  9. package/docs/ide-info/iflow.md +3 -3
  10. package/docs/ide-info/opencode.md +1 -1
  11. package/docs/index.md +2 -2
  12. package/docs/installers-bundlers/ide-injections.md +2 -2
  13. package/docs/installers-bundlers/installers-modules-platforms-reference.md +29 -28
  14. package/docs/v4-to-v6-upgrade.md +10 -10
  15. package/docs/web-bundles-gemini-gpt-guide.md +2 -2
  16. package/package.json +1 -1
  17. package/src/core/_module-installer/installer.js +1 -1
  18. package/src/core/agents/bmad-master.agent.yaml +5 -5
  19. package/src/core/agents/bmad-web-orchestrator.agent.xml +6 -6
  20. package/src/core/{_module-installer/install-config.yaml → module.yaml} +0 -7
  21. package/src/core/resources/excalidraw/README.md +4 -4
  22. package/src/core/tasks/advanced-elicitation.xml +3 -3
  23. package/src/core/tasks/index-docs.xml +1 -1
  24. package/src/core/tasks/validate-workflow.xml +1 -1
  25. package/src/core/tasks/workflow.xml +4 -4
  26. package/src/core/tools/shard-doc.xml +1 -1
  27. package/src/core/workflows/brainstorming/workflow.md +2 -2
  28. package/src/core/workflows/party-mode/steps/step-01-agent-loading.md +2 -2
  29. package/src/core/workflows/party-mode/workflow.md +4 -4
  30. package/src/modules/bmb/README.md +2 -2
  31. package/src/modules/bmb/_module-installer/installer.js +1 -1
  32. package/src/modules/bmb/agents/bmad-builder.agent.yaml +15 -15
  33. package/src/modules/bmb/docs/agents/agent-compilation.md +2 -2
  34. package/src/modules/bmb/docs/agents/agent-menu-patterns.md +22 -22
  35. package/src/modules/bmb/docs/agents/expert-agent-architecture.md +1 -1
  36. package/src/modules/bmb/docs/agents/index.md +2 -2
  37. package/src/modules/bmb/docs/agents/module-agent-architecture.md +50 -51
  38. package/src/modules/bmb/docs/agents/understanding-agent-types.md +3 -3
  39. package/src/modules/bmb/docs/workflows/architecture.md +1 -1
  40. package/src/modules/bmb/docs/workflows/common-workflow-tools.csv +3 -3
  41. package/src/modules/bmb/docs/workflows/templates/step-01-init-continuable-template.md +1 -1
  42. package/src/modules/bmb/docs/workflows/templates/step-1b-template.md +1 -1
  43. package/src/modules/bmb/docs/workflows/templates/step-file.md +3 -3
  44. package/src/modules/bmb/docs/workflows/templates/step-template.md +3 -3
  45. package/src/modules/bmb/docs/workflows/templates/workflow-template.md +2 -2
  46. package/src/modules/bmb/docs/workflows/templates/workflow.md +1 -1
  47. package/src/modules/bmb/{_module-installer/install-config.yaml → module.yaml} +0 -1
  48. package/src/modules/bmb/reference/agents/module-examples/README.md +1 -1
  49. package/src/modules/bmb/reference/agents/module-examples/security-engineer.agent.yaml +5 -5
  50. package/src/modules/bmb/reference/agents/module-examples/trend-analyst.agent.yaml +7 -7
  51. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-01-init.md +1 -1
  52. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-01b-continue.md +1 -1
  53. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-02-profile.md +3 -3
  54. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-03-assessment.md +3 -3
  55. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-04-strategy.md +5 -5
  56. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-05-shopping.md +5 -5
  57. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-06-prep-schedule.md +5 -5
  58. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/workflow.md +2 -2
  59. package/src/modules/bmb/workflows/create-agent/data/reference/agents/module-examples/README.md +1 -1
  60. package/src/modules/bmb/workflows/create-agent/data/reference/agents/module-examples/security-engineer.agent.yaml +6 -6
  61. package/src/modules/bmb/workflows/create-agent/data/reference/agents/module-examples/trend-analyst.agent.yaml +7 -7
  62. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-01-init.md +1 -1
  63. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-01b-continue.md +1 -1
  64. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-02-profile.md +3 -3
  65. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-03-assessment.md +3 -3
  66. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-04-strategy.md +5 -5
  67. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-05-shopping.md +5 -5
  68. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-06-prep-schedule.md +5 -5
  69. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/workflow.md +2 -2
  70. package/src/modules/bmb/workflows/create-agent/data/validation-complete.md +5 -5
  71. package/src/modules/bmb/workflows/create-agent/steps/step-01-brainstorm.md +4 -4
  72. package/src/modules/bmb/workflows/create-agent/steps/step-02-discover.md +4 -4
  73. package/src/modules/bmb/workflows/create-agent/steps/step-03-persona.md +4 -4
  74. package/src/modules/bmb/workflows/create-agent/steps/step-04-commands.md +7 -7
  75. package/src/modules/bmb/workflows/create-agent/steps/step-05-name.md +3 -3
  76. package/src/modules/bmb/workflows/create-agent/steps/step-06-build.md +4 -4
  77. package/src/modules/bmb/workflows/create-agent/steps/step-07-validate.md +4 -4
  78. package/src/modules/bmb/workflows/create-agent/steps/step-08-setup.md +3 -3
  79. package/src/modules/bmb/workflows/create-agent/steps/step-09-customize.md +4 -4
  80. package/src/modules/bmb/workflows/create-agent/steps/step-10-build-tools.md +3 -3
  81. package/src/modules/bmb/workflows/create-agent/steps/step-11-celebrate.md +3 -3
  82. package/src/modules/bmb/workflows/create-agent/workflow.md +13 -13
  83. package/src/modules/bmb/workflows/create-module/steps/step-01-init.md +2 -2
  84. package/src/modules/bmb/workflows/create-module/steps/step-02-concept.md +4 -4
  85. package/src/modules/bmb/workflows/create-module/steps/step-03-components.md +4 -4
  86. package/src/modules/bmb/workflows/create-module/steps/step-04-structure.md +6 -6
  87. package/src/modules/bmb/workflows/create-module/steps/step-05-config.md +5 -5
  88. package/src/modules/bmb/workflows/create-module/steps/step-06-agents.md +6 -6
  89. package/src/modules/bmb/workflows/create-module/steps/step-07-workflows.md +3 -3
  90. package/src/modules/bmb/workflows/create-module/steps/step-08-installer.md +12 -12
  91. package/src/modules/bmb/workflows/create-module/steps/step-09-documentation.md +6 -5
  92. package/src/modules/bmb/workflows/create-module/steps/step-10-roadmap.md +6 -5
  93. package/src/modules/bmb/workflows/create-module/steps/step-11-validate.md +7 -7
  94. package/src/modules/bmb/workflows/create-module/templates/agent.template.md +7 -7
  95. package/src/modules/bmb/workflows/create-module/templates/installer.template.js +1 -1
  96. package/src/modules/bmb/workflows/create-module/templates/{install-config.template.yaml → module.template.yaml} +1 -1
  97. package/src/modules/bmb/workflows/create-module/validation.md +3 -3
  98. package/src/modules/bmb/workflows/create-module/workflow.md +2 -2
  99. package/src/modules/bmb/workflows/create-workflow/steps/step-01-init.md +3 -3
  100. package/src/modules/bmb/workflows/create-workflow/steps/step-02-gather.md +5 -5
  101. package/src/modules/bmb/workflows/create-workflow/steps/step-03-tools-configuration.md +4 -4
  102. package/src/modules/bmb/workflows/create-workflow/steps/step-04-plan-review.md +3 -3
  103. package/src/modules/bmb/workflows/create-workflow/steps/step-05-output-format-design.md +3 -3
  104. package/src/modules/bmb/workflows/create-workflow/steps/step-06-design.md +10 -10
  105. package/src/modules/bmb/workflows/create-workflow/steps/step-07-build.md +13 -13
  106. package/src/modules/bmb/workflows/create-workflow/steps/step-08-review.md +3 -3
  107. package/src/modules/bmb/workflows/create-workflow/steps/step-09-complete.md +1 -1
  108. package/src/modules/bmb/workflows/create-workflow/workflow.md +1 -1
  109. package/src/modules/bmb/workflows/edit-agent/steps/step-01-discover-intent.md +3 -3
  110. package/src/modules/bmb/workflows/edit-agent/steps/step-02-analyze-agent.md +13 -13
  111. package/src/modules/bmb/workflows/edit-agent/steps/step-03-propose-changes.md +5 -5
  112. package/src/modules/bmb/workflows/edit-agent/steps/step-04-apply-changes.md +3 -3
  113. package/src/modules/bmb/workflows/edit-agent/steps/step-05-validate.md +5 -5
  114. package/src/modules/bmb/workflows/edit-agent/workflow.md +1 -1
  115. package/src/modules/bmb/workflows/edit-workflow/steps/step-01-analyze.md +4 -4
  116. package/src/modules/bmb/workflows/edit-workflow/steps/step-02-discover.md +3 -3
  117. package/src/modules/bmb/workflows/edit-workflow/steps/step-03-improve.md +6 -6
  118. package/src/modules/bmb/workflows/edit-workflow/steps/step-04-validate.md +3 -3
  119. package/src/modules/bmb/workflows/edit-workflow/steps/step-05-compliance-check.md +3 -3
  120. package/src/modules/bmb/workflows/edit-workflow/workflow.md +1 -1
  121. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-01-validate-goal.md +3 -3
  122. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-02-workflow-validation.md +5 -5
  123. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-03-step-validation.md +6 -6
  124. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-04-file-validation.md +4 -4
  125. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-05-intent-spectrum-validation.md +4 -4
  126. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-06-web-subprocess-validation.md +4 -4
  127. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-07-holistic-analysis.md +4 -4
  128. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-08-generate-report.md +3 -3
  129. package/src/modules/bmb/workflows/workflow-compliance-check/workflow.md +1 -1
  130. package/src/modules/bmb/workflows-legacy/edit-module/README.md +2 -2
  131. package/src/modules/bmb/workflows-legacy/edit-module/checklist.md +2 -2
  132. package/src/modules/bmb/workflows-legacy/edit-module/instructions.md +4 -4
  133. package/src/modules/bmb/workflows-legacy/edit-module/workflow.yaml +10 -10
  134. package/src/modules/bmb/workflows-legacy/module-brief/README.md +2 -2
  135. package/src/modules/bmb/workflows-legacy/module-brief/instructions.md +2 -2
  136. package/src/modules/bmb/workflows-legacy/module-brief/workflow.yaml +4 -4
  137. package/src/modules/bmgd/README.md +3 -2
  138. package/src/modules/bmgd/agents/game-architect.agent.yaml +6 -6
  139. package/src/modules/bmgd/agents/game-designer.agent.yaml +7 -7
  140. package/src/modules/bmgd/agents/game-dev.agent.yaml +9 -9
  141. package/src/modules/bmgd/agents/game-scrum-master.agent.yaml +21 -21
  142. package/src/modules/bmgd/{_module-installer/install-config.yaml → module.yaml} +0 -1
  143. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/instructions.md +1 -1
  144. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/workflow.yaml +9 -9
  145. package/src/modules/bmgd/workflows/1-preproduction/game-brief/instructions.md +1 -1
  146. package/src/modules/bmgd/workflows/1-preproduction/game-brief/workflow.yaml +8 -8
  147. package/src/modules/bmgd/workflows/2-design/gdd/instructions-gdd.md +4 -4
  148. package/src/modules/bmgd/workflows/2-design/gdd/workflow.yaml +30 -30
  149. package/src/modules/bmgd/workflows/2-design/narrative/instructions-narrative.md +1 -1
  150. package/src/modules/bmgd/workflows/2-design/narrative/workflow.yaml +5 -5
  151. package/src/modules/bmgd/workflows/3-technical/game-architecture/instructions.md +1 -1
  152. package/src/modules/bmgd/workflows/3-technical/game-architecture/workflow.yaml +2 -2
  153. package/src/modules/bmgd/workflows/4-production/code-review/instructions.md +2 -2
  154. package/src/modules/bmgd/workflows/4-production/code-review/workflow.yaml +2 -2
  155. package/src/modules/bmgd/workflows/4-production/correct-course/checklist.md +1 -1
  156. package/src/modules/bmgd/workflows/4-production/correct-course/instructions.md +2 -2
  157. package/src/modules/bmgd/workflows/4-production/correct-course/workflow.yaml +2 -2
  158. package/src/modules/bmgd/workflows/4-production/create-story/instructions.md +2 -2
  159. package/src/modules/bmgd/workflows/4-production/create-story/workflow.yaml +2 -2
  160. package/src/modules/bmgd/workflows/4-production/dev-story/instructions.md +2 -2
  161. package/src/modules/bmgd/workflows/4-production/dev-story/workflow.yaml +2 -2
  162. package/src/modules/bmgd/workflows/4-production/epic-tech-context/checklist.md +1 -1
  163. package/src/modules/bmgd/workflows/4-production/epic-tech-context/instructions.md +2 -2
  164. package/src/modules/bmgd/workflows/4-production/epic-tech-context/workflow.yaml +2 -2
  165. package/src/modules/bmgd/workflows/4-production/retrospective/instructions.md +2 -2
  166. package/src/modules/bmgd/workflows/4-production/retrospective/workflow.yaml +3 -3
  167. package/src/modules/bmgd/workflows/4-production/sprint-planning/instructions.md +2 -2
  168. package/src/modules/bmgd/workflows/4-production/sprint-planning/workflow.yaml +2 -2
  169. package/src/modules/bmgd/workflows/4-production/story-context/checklist.md +1 -1
  170. package/src/modules/bmgd/workflows/4-production/story-context/context-template.xml +1 -1
  171. package/src/modules/bmgd/workflows/4-production/story-context/instructions.md +2 -2
  172. package/src/modules/bmgd/workflows/4-production/story-context/workflow.yaml +2 -2
  173. package/src/modules/bmgd/workflows/4-production/story-done/instructions.md +1 -1
  174. package/src/modules/bmgd/workflows/4-production/story-done/workflow.yaml +2 -2
  175. package/src/modules/bmgd/workflows/4-production/story-ready/instructions.md +1 -1
  176. package/src/modules/bmgd/workflows/4-production/story-ready/workflow.yaml +2 -2
  177. package/src/modules/bmm/_module-installer/installer.js +1 -1
  178. package/src/modules/bmm/_module-installer/platform-specifics/claude-code.js +1 -1
  179. package/src/modules/bmm/_module-installer/platform-specifics/windsurf.js +1 -1
  180. package/src/modules/bmm/agents/analyst.agent.yaml +8 -8
  181. package/src/modules/bmm/agents/architect.agent.yaml +8 -8
  182. package/src/modules/bmm/agents/dev.agent.yaml +3 -3
  183. package/src/modules/bmm/agents/pm.agent.yaml +8 -8
  184. package/src/modules/bmm/agents/quick-flow-solo-dev.agent.yaml +5 -5
  185. package/src/modules/bmm/agents/sm.agent.yaml +9 -9
  186. package/src/modules/bmm/agents/tea.agent.yaml +13 -13
  187. package/src/modules/bmm/agents/tech-writer.agent.yaml +9 -9
  188. package/src/modules/bmm/agents/ux-designer.agent.yaml +6 -6
  189. package/src/modules/bmm/docs/README.md +0 -25
  190. package/src/modules/bmm/docs/agents-guide.md +4 -4
  191. package/src/modules/bmm/docs/brownfield-guide.md +4 -4
  192. package/src/modules/bmm/docs/enterprise-agentic-development.md +3 -3
  193. package/src/modules/bmm/docs/faq.md +1 -1
  194. package/src/modules/bmm/docs/party-mode.md +3 -3
  195. package/src/modules/bmm/docs/quick-start.md +1 -1
  196. package/src/modules/bmm/docs/test-architecture.md +3 -3
  197. package/src/modules/bmm/docs/workflow-document-project-reference.md +1 -1
  198. package/src/modules/bmm/docs/workflows-implementation.md +0 -100
  199. package/src/modules/bmm/{_module-installer/install-config.yaml → module.yaml} +1 -2
  200. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01-init.md +1 -1
  201. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01b-continue.md +1 -1
  202. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-02-vision.md +3 -3
  203. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-03-users.md +3 -3
  204. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-04-metrics.md +3 -3
  205. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-05-scope.md +3 -3
  206. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-06-complete.md +5 -3
  207. package/src/modules/bmm/workflows/1-analysis/product-brief/workflow.md +2 -2
  208. package/src/modules/bmm/workflows/1-analysis/research/workflow.md +2 -2
  209. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +4 -4
  210. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +4 -4
  211. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +4 -4
  212. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +4 -4
  213. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +4 -4
  214. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +4 -4
  215. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +4 -4
  216. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +4 -4
  217. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +4 -4
  218. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +4 -4
  219. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +4 -4
  220. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +4 -4
  221. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +2 -2
  222. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-01-init.md +1 -1
  223. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-01b-continue.md +1 -1
  224. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-02-discovery.md +3 -3
  225. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-03-success.md +7 -7
  226. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-04-journeys.md +8 -8
  227. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-05-domain.md +12 -12
  228. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md +12 -12
  229. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-07-project-type.md +10 -10
  230. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-08-scoping.md +7 -7
  231. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-09-functional.md +9 -9
  232. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-10-nonfunctional.md +9 -9
  233. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-11-complete.md +1 -1
  234. package/src/modules/bmm/workflows/2-plan-workflows/prd/workflow.md +1 -1
  235. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-02-context.md +4 -4
  236. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-03-starter.md +4 -4
  237. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-04-decisions.md +4 -4
  238. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-05-patterns.md +4 -4
  239. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-06-structure.md +4 -4
  240. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-07-validation.md +4 -4
  241. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-08-complete.md +1 -1
  242. package/src/modules/bmm/workflows/3-solutioning/architecture/workflow.md +2 -2
  243. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +1 -1
  244. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +1 -1
  245. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +1 -1
  246. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +1 -1
  247. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +2 -2
  248. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-01-document-discovery.md +1 -1
  249. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-02-prd-analysis.md +1 -1
  250. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-03-epic-coverage-validation.md +6 -6
  251. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-04-ux-alignment.md +1 -1
  252. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-05-epic-quality-review.md +2 -2
  253. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-06-final-assessment.md +1 -1
  254. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/workflow.md +1 -1
  255. package/src/modules/bmm/workflows/4-implementation/code-review/instructions.xml +1 -1
  256. package/src/modules/bmm/workflows/4-implementation/code-review/workflow.yaml +2 -2
  257. package/src/modules/bmm/workflows/4-implementation/correct-course/checklist.md +1 -1
  258. package/src/modules/bmm/workflows/4-implementation/correct-course/instructions.md +2 -2
  259. package/src/modules/bmm/workflows/4-implementation/correct-course/workflow.yaml +2 -2
  260. package/src/modules/bmm/workflows/4-implementation/create-story/checklist.md +2 -2
  261. package/src/modules/bmm/workflows/4-implementation/create-story/instructions.xml +2 -2
  262. package/src/modules/bmm/workflows/4-implementation/create-story/workflow.yaml +2 -2
  263. package/src/modules/bmm/workflows/4-implementation/dev-story/instructions.xml +1 -1
  264. package/src/modules/bmm/workflows/4-implementation/dev-story/workflow.yaml +2 -2
  265. package/src/modules/bmm/workflows/4-implementation/retrospective/instructions.md +2 -2
  266. package/src/modules/bmm/workflows/4-implementation/retrospective/workflow.yaml +3 -3
  267. package/src/modules/bmm/workflows/4-implementation/sprint-planning/instructions.md +2 -2
  268. package/src/modules/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +2 -2
  269. package/src/modules/bmm/workflows/4-implementation/sprint-status/instructions.md +2 -2
  270. package/src/modules/bmm/workflows/4-implementation/sprint-status/workflow.yaml +2 -2
  271. package/src/modules/bmm/workflows/bmad-quick-flow/create-tech-spec/workflow.yaml +5 -5
  272. package/src/modules/bmm/workflows/bmad-quick-flow/quick-dev/workflow.yaml +7 -7
  273. package/src/modules/bmm/workflows/diagrams/create-dataflow/instructions.md +1 -1
  274. package/src/modules/bmm/workflows/diagrams/create-dataflow/workflow.yaml +5 -5
  275. package/src/modules/bmm/workflows/diagrams/create-diagram/instructions.md +2 -2
  276. package/src/modules/bmm/workflows/diagrams/create-diagram/workflow.yaml +5 -5
  277. package/src/modules/bmm/workflows/diagrams/create-flowchart/instructions.md +2 -2
  278. package/src/modules/bmm/workflows/diagrams/create-flowchart/workflow.yaml +5 -5
  279. package/src/modules/bmm/workflows/diagrams/create-wireframe/instructions.md +1 -1
  280. package/src/modules/bmm/workflows/diagrams/create-wireframe/workflow.yaml +5 -5
  281. package/src/modules/bmm/workflows/document-project/instructions.md +5 -5
  282. package/src/modules/bmm/workflows/document-project/workflow.yaml +2 -2
  283. package/src/modules/bmm/workflows/document-project/workflows/deep-dive.yaml +5 -5
  284. package/src/modules/bmm/workflows/document-project/workflows/full-scan.yaml +5 -5
  285. package/src/modules/bmm/workflows/generate-project-context/steps/step-02-generate.md +2 -2
  286. package/src/modules/bmm/workflows/generate-project-context/workflow.md +2 -2
  287. package/src/modules/bmm/workflows/testarch/atdd/instructions.md +2 -2
  288. package/src/modules/bmm/workflows/testarch/atdd/workflow.yaml +2 -2
  289. package/src/modules/bmm/workflows/testarch/automate/instructions.md +2 -2
  290. package/src/modules/bmm/workflows/testarch/automate/workflow.yaml +2 -2
  291. package/src/modules/bmm/workflows/testarch/ci/instructions.md +1 -1
  292. package/src/modules/bmm/workflows/testarch/ci/workflow.yaml +2 -2
  293. package/src/modules/bmm/workflows/testarch/framework/instructions.md +3 -3
  294. package/src/modules/bmm/workflows/testarch/framework/workflow.yaml +2 -2
  295. package/src/modules/bmm/workflows/testarch/nfr-assess/instructions.md +1 -1
  296. package/src/modules/bmm/workflows/testarch/nfr-assess/workflow.yaml +2 -2
  297. package/src/modules/bmm/workflows/testarch/test-design/instructions.md +3 -3
  298. package/src/modules/bmm/workflows/testarch/test-design/test-design-template.md +1 -1
  299. package/src/modules/bmm/workflows/testarch/test-design/workflow.yaml +2 -2
  300. package/src/modules/bmm/workflows/testarch/test-review/instructions.md +1 -1
  301. package/src/modules/bmm/workflows/testarch/test-review/workflow.yaml +2 -2
  302. package/src/modules/bmm/workflows/testarch/trace/instructions.md +6 -6
  303. package/src/modules/bmm/workflows/testarch/trace/workflow.yaml +2 -2
  304. package/src/modules/bmm/workflows/workflow-status/init/instructions.md +1 -1
  305. package/src/modules/bmm/workflows/workflow-status/init/workflow.yaml +4 -4
  306. package/src/modules/bmm/workflows/workflow-status/instructions.md +3 -3
  307. package/src/modules/bmm/workflows/workflow-status/project-levels.yaml +1 -1
  308. package/src/modules/bmm/workflows/workflow-status/workflow.yaml +2 -2
  309. package/src/modules/cis/README.md +1 -1
  310. package/src/modules/cis/_module-installer/installer.js +1 -1
  311. package/src/modules/cis/agents/README.md +1 -1
  312. package/src/modules/cis/agents/brainstorming-coach.agent.yaml +4 -4
  313. package/src/modules/cis/agents/creative-problem-solver.agent.yaml +4 -4
  314. package/src/modules/cis/agents/design-thinking-coach.agent.yaml +4 -4
  315. package/src/modules/cis/agents/innovation-strategist.agent.yaml +4 -4
  316. package/src/modules/cis/agents/presentation-master.agent.yaml +3 -3
  317. package/src/modules/cis/agents/storyteller.agent.yaml +4 -4
  318. package/src/modules/cis/{_module-installer/install-config.yaml → module.yaml} +0 -1
  319. package/src/modules/cis/workflows/README.md +1 -1
  320. package/src/modules/cis/workflows/design-thinking/instructions.md +2 -2
  321. package/src/modules/cis/workflows/design-thinking/workflow.yaml +7 -7
  322. package/src/modules/cis/workflows/innovation-strategy/instructions.md +2 -2
  323. package/src/modules/cis/workflows/innovation-strategy/workflow.yaml +7 -7
  324. package/src/modules/cis/workflows/problem-solving/instructions.md +2 -2
  325. package/src/modules/cis/workflows/problem-solving/workflow.yaml +7 -7
  326. package/src/modules/cis/workflows/storytelling/instructions.md +2 -2
  327. package/src/modules/cis/workflows/storytelling/workflow.yaml +7 -7
  328. package/src/utility/models/agent-activation-ide.xml +3 -3
  329. package/src/utility/models/agent-activation-web.xml +3 -3
  330. package/src/utility/models/fragments/activation-steps.xml +1 -1
  331. package/src/utility/models/fragments/handler-validate-workflow.xml +1 -1
  332. package/src/utility/models/fragments/handler-workflow.xml +1 -1
  333. package/src/utility/models/fragments/web-bundle-activation-steps.xml +3 -3
  334. package/tools/cli/README.md +23 -23
  335. package/tools/cli/bundlers/web-bundler.js +23 -33
  336. package/tools/cli/commands/build.js +5 -5
  337. package/tools/cli/installers/lib/core/config-collector.js +33 -20
  338. package/tools/cli/installers/lib/core/custom-module-cache.js +251 -0
  339. package/tools/cli/installers/lib/core/detector.js +8 -4
  340. package/tools/cli/installers/lib/core/installer.js +885 -98
  341. package/tools/cli/installers/lib/core/manifest-generator.js +177 -14
  342. package/tools/cli/installers/lib/core/manifest.js +47 -0
  343. package/tools/cli/installers/lib/custom/handler.js +147 -20
  344. package/tools/cli/installers/lib/ide/_base-ide.js +14 -14
  345. package/tools/cli/installers/lib/ide/gemini.js +4 -4
  346. package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +2 -2
  347. package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +3 -3
  348. package/tools/cli/installers/lib/ide/templates/agent-command-template.md +1 -1
  349. package/tools/cli/installers/lib/ide/templates/gemini-agent-command.toml +3 -3
  350. package/tools/cli/installers/lib/ide/templates/gemini-task-command.toml +3 -3
  351. package/tools/cli/installers/lib/ide/templates/workflow-command-template.md +1 -1
  352. package/tools/cli/installers/lib/modules/manager.js +99 -53
  353. package/tools/cli/lib/agent/compiler.js +6 -14
  354. package/tools/cli/lib/agent/installer.js +4 -3
  355. package/tools/cli/lib/cli-utils.js +21 -4
  356. package/tools/cli/lib/ui.js +496 -12
  357. package/tools/cli/regenerate-manifests.js +3 -4
  358. package/tools/maintainer/review-pr-README.md +55 -0
  359. package/tools/maintainer/review-pr.md +242 -0
  360. package/tools/migrate-custom-module-paths.js +124 -0
  361. package/bmad-method-6.0.0-alpha.14.tgz +0 -0
  362. package/docs/custom-agent-installation.md +0 -137
  363. package/example-custom-content/README.md +0 -4
  364. package/example-custom-content/agents/commit-poet/commit-poet.agent.yaml +0 -129
  365. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/instructions.md +0 -70
  366. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/bundlers.md +0 -111
  367. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/deploy.md +0 -70
  368. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/docs.md +0 -114
  369. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/installers.md +0 -134
  370. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/modules.md +0 -161
  371. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/tests.md +0 -103
  372. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/memories.md +0 -17
  373. package/example-custom-content/agents/toolsmith/toolsmith.agent.yaml +0 -109
  374. package/example-custom-content/custom.yaml +0 -3
  375. package/example-custom-content/workflows/quiz-master/steps/step-01-init.md +0 -168
  376. package/example-custom-content/workflows/quiz-master/steps/step-02-q1.md +0 -155
  377. package/example-custom-content/workflows/quiz-master/steps/step-03-q2.md +0 -89
  378. package/example-custom-content/workflows/quiz-master/steps/step-04-q3.md +0 -36
  379. package/example-custom-content/workflows/quiz-master/steps/step-05-q4.md +0 -36
  380. package/example-custom-content/workflows/quiz-master/steps/step-06-q5.md +0 -36
  381. package/example-custom-content/workflows/quiz-master/steps/step-07-q6.md +0 -36
  382. package/example-custom-content/workflows/quiz-master/steps/step-08-q7.md +0 -36
  383. package/example-custom-content/workflows/quiz-master/steps/step-09-q8.md +0 -36
  384. package/example-custom-content/workflows/quiz-master/steps/step-10-q9.md +0 -36
  385. package/example-custom-content/workflows/quiz-master/steps/step-11-q10.md +0 -36
  386. package/example-custom-content/workflows/quiz-master/steps/step-12-results.md +0 -150
  387. package/example-custom-content/workflows/quiz-master/templates/csv-headers.template +0 -1
  388. package/example-custom-content/workflows/quiz-master/workflow-plan-quiz-master.md +0 -269
  389. package/example-custom-content/workflows/quiz-master/workflow.md +0 -54
  390. package/example-custom-content/workflows/wassup/workflow.md +0 -26
  391. package/example-custom-module/mwm/README.md +0 -4
  392. package/example-custom-module/mwm/_module-installer/install-config.yaml +0 -27
  393. package/example-custom-module/mwm/agents/cbt-coach/cbt-coach-sidecar/cognitive-distortions.md +0 -47
  394. package/example-custom-module/mwm/agents/cbt-coach/cbt-coach-sidecar/thought-records.md +0 -17
  395. package/example-custom-module/mwm/agents/cbt-coach/cbt-coach.agent.yaml +0 -150
  396. package/example-custom-module/mwm/agents/crisis-navigator.agent.yaml +0 -137
  397. package/example-custom-module/mwm/agents/meditation-guide.agent.yaml +0 -137
  398. package/example-custom-module/mwm/agents/wellness-companion/wellness-companion-sidecar/insights.md +0 -13
  399. package/example-custom-module/mwm/agents/wellness-companion/wellness-companion-sidecar/instructions.md +0 -30
  400. package/example-custom-module/mwm/agents/wellness-companion/wellness-companion-sidecar/memories.md +0 -13
  401. package/example-custom-module/mwm/agents/wellness-companion/wellness-companion-sidecar/patterns.md +0 -17
  402. package/example-custom-module/mwm/agents/wellness-companion/wellness-companion.agent.yaml +0 -124
  403. package/example-custom-module/mwm/workflows/cbt-thought-record/README.md +0 -31
  404. package/example-custom-module/mwm/workflows/cbt-thought-record/workflow.md +0 -45
  405. package/example-custom-module/mwm/workflows/crisis-support/README.md +0 -31
  406. package/example-custom-module/mwm/workflows/crisis-support/workflow.md +0 -45
  407. package/example-custom-module/mwm/workflows/daily-checkin/README.md +0 -32
  408. package/example-custom-module/mwm/workflows/daily-checkin/workflow.md +0 -45
  409. package/example-custom-module/mwm/workflows/guided-meditation/README.md +0 -31
  410. package/example-custom-module/mwm/workflows/guided-meditation/workflow.md +0 -45
  411. package/example-custom-module/mwm/workflows/wellness-journal/README.md +0 -31
  412. package/example-custom-module/mwm/workflows/wellness-journal/workflow.md +0 -45
@@ -0,0 +1,251 @@
1
+ /**
2
+ * Custom Module Source Cache
3
+ * Caches custom module sources under _cfg/custom/ to ensure they're never lost
4
+ * and can be checked into source control
5
+ */
6
+
7
+ const fs = require('fs-extra');
8
+ const path = require('node:path');
9
+ const crypto = require('node:crypto');
10
+
11
+ class CustomModuleCache {
12
+ constructor(bmadDir) {
13
+ this.bmadDir = bmadDir;
14
+ this.customCacheDir = path.join(bmadDir, '_cfg', 'custom');
15
+ this.manifestPath = path.join(this.customCacheDir, 'cache-manifest.yaml');
16
+ }
17
+
18
+ /**
19
+ * Ensure the custom cache directory exists
20
+ */
21
+ async ensureCacheDir() {
22
+ await fs.ensureDir(this.customCacheDir);
23
+ }
24
+
25
+ /**
26
+ * Get cache manifest
27
+ */
28
+ async getCacheManifest() {
29
+ if (!(await fs.pathExists(this.manifestPath))) {
30
+ return {};
31
+ }
32
+
33
+ const content = await fs.readFile(this.manifestPath, 'utf8');
34
+ const yaml = require('js-yaml');
35
+ return yaml.load(content) || {};
36
+ }
37
+
38
+ /**
39
+ * Update cache manifest
40
+ */
41
+ async updateCacheManifest(manifest) {
42
+ const yaml = require('js-yaml');
43
+ const content = yaml.dump(manifest, {
44
+ indent: 2,
45
+ lineWidth: -1,
46
+ noRefs: true,
47
+ sortKeys: false,
48
+ });
49
+
50
+ await fs.writeFile(this.manifestPath, content);
51
+ }
52
+
53
+ /**
54
+ * Stream a file into the hash to avoid loading entire file into memory
55
+ */
56
+ async hashFileStream(filePath, hash) {
57
+ return new Promise((resolve, reject) => {
58
+ const stream = require('node:fs').createReadStream(filePath);
59
+ stream.on('data', (chunk) => hash.update(chunk));
60
+ stream.on('end', resolve);
61
+ stream.on('error', reject);
62
+ });
63
+ }
64
+
65
+ /**
66
+ * Calculate hash of a file or directory using streaming to minimize memory usage
67
+ */
68
+ async calculateHash(sourcePath) {
69
+ const hash = crypto.createHash('sha256');
70
+
71
+ const isDir = (await fs.stat(sourcePath)).isDirectory();
72
+
73
+ if (isDir) {
74
+ // For directories, hash all files
75
+ const files = [];
76
+ async function collectFiles(dir) {
77
+ const entries = await fs.readdir(dir, { withFileTypes: true });
78
+ for (const entry of entries) {
79
+ if (entry.isFile()) {
80
+ files.push(path.join(dir, entry.name));
81
+ } else if (entry.isDirectory() && !entry.name.startsWith('.')) {
82
+ await collectFiles(path.join(dir, entry.name));
83
+ }
84
+ }
85
+ }
86
+
87
+ await collectFiles(sourcePath);
88
+ files.sort(); // Ensure consistent order
89
+
90
+ for (const file of files) {
91
+ const relativePath = path.relative(sourcePath, file);
92
+ // Hash the path first, then stream file contents
93
+ hash.update(relativePath + '|');
94
+ await this.hashFileStream(file, hash);
95
+ }
96
+ } else {
97
+ // For single files, stream directly into hash
98
+ await this.hashFileStream(sourcePath, hash);
99
+ }
100
+
101
+ return hash.digest('hex');
102
+ }
103
+
104
+ /**
105
+ * Cache a custom module source
106
+ * @param {string} moduleId - Module ID
107
+ * @param {string} sourcePath - Original source path
108
+ * @param {Object} metadata - Additional metadata to store
109
+ * @returns {Object} Cached module info
110
+ */
111
+ async cacheModule(moduleId, sourcePath, metadata = {}) {
112
+ await this.ensureCacheDir();
113
+
114
+ const cacheDir = path.join(this.customCacheDir, moduleId);
115
+ const cacheManifest = await this.getCacheManifest();
116
+
117
+ // Check if already cached and unchanged
118
+ if (cacheManifest[moduleId]) {
119
+ const cached = cacheManifest[moduleId];
120
+ if (cached.originalHash && cached.originalHash === (await this.calculateHash(sourcePath))) {
121
+ // Source unchanged, return existing cache info
122
+ return {
123
+ moduleId,
124
+ cachePath: cacheDir,
125
+ ...cached,
126
+ };
127
+ }
128
+ }
129
+
130
+ // Remove existing cache if it exists
131
+ if (await fs.pathExists(cacheDir)) {
132
+ await fs.remove(cacheDir);
133
+ }
134
+
135
+ // Copy module to cache
136
+ await fs.copy(sourcePath, cacheDir, {
137
+ filter: (src) => {
138
+ const relative = path.relative(sourcePath, src);
139
+ // Skip node_modules, .git, and other common ignore patterns
140
+ return !relative.includes('node_modules') && !relative.startsWith('.git') && !relative.startsWith('.DS_Store');
141
+ },
142
+ });
143
+
144
+ // Calculate hash of the source
145
+ const sourceHash = await this.calculateHash(sourcePath);
146
+ const cacheHash = await this.calculateHash(cacheDir);
147
+
148
+ // Update manifest - don't store originalPath for source control friendliness
149
+ cacheManifest[moduleId] = {
150
+ originalHash: sourceHash,
151
+ cacheHash: cacheHash,
152
+ cachedAt: new Date().toISOString(),
153
+ ...metadata,
154
+ };
155
+
156
+ await this.updateCacheManifest(cacheManifest);
157
+
158
+ return {
159
+ moduleId,
160
+ cachePath: cacheDir,
161
+ ...cacheManifest[moduleId],
162
+ };
163
+ }
164
+
165
+ /**
166
+ * Get cached module info
167
+ * @param {string} moduleId - Module ID
168
+ * @returns {Object|null} Cached module info or null
169
+ */
170
+ async getCachedModule(moduleId) {
171
+ const cacheManifest = await this.getCacheManifest();
172
+ const cached = cacheManifest[moduleId];
173
+
174
+ if (!cached) {
175
+ return null;
176
+ }
177
+
178
+ const cacheDir = path.join(this.customCacheDir, moduleId);
179
+
180
+ if (!(await fs.pathExists(cacheDir))) {
181
+ // Cache dir missing, remove from manifest
182
+ delete cacheManifest[moduleId];
183
+ await this.updateCacheManifest(cacheManifest);
184
+ return null;
185
+ }
186
+
187
+ // Verify cache integrity
188
+ const currentCacheHash = await this.calculateHash(cacheDir);
189
+ if (currentCacheHash !== cached.cacheHash) {
190
+ console.warn(`Warning: Cache integrity check failed for ${moduleId}`);
191
+ }
192
+
193
+ return {
194
+ moduleId,
195
+ cachePath: cacheDir,
196
+ ...cached,
197
+ };
198
+ }
199
+
200
+ /**
201
+ * Get all cached modules
202
+ * @returns {Array} Array of cached module info
203
+ */
204
+ async getAllCachedModules() {
205
+ const cacheManifest = await this.getCacheManifest();
206
+ const cached = [];
207
+
208
+ for (const [moduleId, info] of Object.entries(cacheManifest)) {
209
+ const cachedModule = await this.getCachedModule(moduleId);
210
+ if (cachedModule) {
211
+ cached.push(cachedModule);
212
+ }
213
+ }
214
+
215
+ return cached;
216
+ }
217
+
218
+ /**
219
+ * Remove a cached module
220
+ * @param {string} moduleId - Module ID to remove
221
+ */
222
+ async removeCachedModule(moduleId) {
223
+ const cacheManifest = await this.getCacheManifest();
224
+ const cacheDir = path.join(this.customCacheDir, moduleId);
225
+
226
+ // Remove cache directory
227
+ if (await fs.pathExists(cacheDir)) {
228
+ await fs.remove(cacheDir);
229
+ }
230
+
231
+ // Remove from manifest
232
+ delete cacheManifest[moduleId];
233
+ await this.updateCacheManifest(cacheManifest);
234
+ }
235
+
236
+ /**
237
+ * Sync cached modules with a list of module IDs
238
+ * @param {Array<string>} moduleIds - Module IDs to keep
239
+ */
240
+ async syncCache(moduleIds) {
241
+ const cached = await this.getAllCachedModules();
242
+
243
+ for (const cachedModule of cached) {
244
+ if (!moduleIds.includes(cachedModule.moduleId)) {
245
+ await this.removeCachedModule(cachedModule.moduleId);
246
+ }
247
+ }
248
+ }
249
+ }
250
+
251
+ module.exports = { CustomModuleCache };
@@ -17,6 +17,7 @@ class Detector {
17
17
  hasCore: false,
18
18
  modules: [],
19
19
  ides: [],
20
+ customModules: [],
20
21
  manifest: null,
21
22
  };
22
23
 
@@ -32,6 +33,10 @@ class Detector {
32
33
  result.manifest = manifestData;
33
34
  result.version = manifestData.version;
34
35
  result.installed = true;
36
+ // Copy custom modules if they exist
37
+ if (manifestData.customModules) {
38
+ result.customModules = manifestData.customModules;
39
+ }
35
40
  }
36
41
 
37
42
  // Check for core
@@ -275,10 +280,9 @@ class Detector {
275
280
  hasV6Installation = true;
276
281
  // Don't break - continue scanning to be thorough
277
282
  } else {
278
- // Not V6+, check if folder name contains "bmad" (case insensitive)
279
- const nameLower = name.toLowerCase();
280
- if (nameLower.includes('bmad')) {
281
- // Potential V4 legacy folder
283
+ // Not V6+, check if this is the exact V4 folder name "bmad-method"
284
+ if (name === 'bmad-method') {
285
+ // This is the V4 default folder - flag it as legacy
282
286
  potentialV4Folders.push(fullPath);
283
287
  }
284
288
  }