bmad-method 6.0.0-alpha.0 → 6.0.0-alpha.10

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 (704) hide show
  1. package/.github/ISSUE_TEMPLATE/config.yaml +4 -0
  2. package/.github/ISSUE_TEMPLATE/idea_submission.md +3 -3
  3. package/.github/workflows/bundle-latest.yaml +277 -0
  4. package/.github/workflows/manual-release.yaml +64 -17
  5. package/.github/workflows/quality.yaml +78 -0
  6. package/.husky/pre-commit +4 -0
  7. package/.prettierignore +6 -0
  8. package/.vscode/settings.json +3 -1
  9. package/CHANGELOG.md +1211 -2
  10. package/CONTRIBUTING.md +2 -13
  11. package/README.md +442 -0
  12. package/docs/BUNDLE_DISTRIBUTION_SETUP.md +95 -0
  13. package/docs/agent-customization-guide.md +208 -0
  14. package/docs/document-sharding-guide.md +449 -0
  15. package/docs/ide-info/auggie.md +2 -2
  16. package/docs/ide-info/claude-code.md +4 -4
  17. package/docs/ide-info/codex.md +9 -20
  18. package/docs/ide-info/crush.md +1 -1
  19. package/docs/ide-info/cursor.md +7 -7
  20. package/docs/ide-info/iflow.md +3 -3
  21. package/docs/ide-info/opencode.md +24 -0
  22. package/docs/index.md +227 -0
  23. package/docs/installers-bundlers/ide-injections.md +2 -12
  24. package/docs/installers-bundlers/installers-modules-platforms-reference.md +100 -67
  25. package/docs/v4-to-v6-upgrade.md +227 -0
  26. package/docs/web-bundles-gemini-gpt-guide.md +473 -0
  27. package/eslint.config.mjs +6 -2
  28. package/package.json +13 -6
  29. package/src/core/_module-installer/install-config.yaml +35 -0
  30. package/src/core/_module-installer/installer.js +1 -9
  31. package/src/core/agents/bmad-master.agent.yaml +39 -0
  32. package/src/core/agents/bmad-web-orchestrator.agent.xml +113 -0
  33. package/src/core/tasks/advanced-elicitation-methods.csv +21 -0
  34. package/src/core/tasks/{adv-elicit.md → advanced-elicitation.xml} +11 -14
  35. package/src/core/tasks/{index-docs.md → index-docs.xml} +6 -10
  36. package/src/core/tasks/{validate-workflow.md → validate-workflow.xml} +4 -7
  37. package/src/core/tasks/workflow.xml +270 -0
  38. package/src/core/tools/shard-doc.xml +109 -0
  39. package/src/{modules/cis → core}/workflows/brainstorming/README.md +8 -18
  40. package/src/{modules/cis → core}/workflows/brainstorming/instructions.md +29 -24
  41. package/src/{modules/cis → core}/workflows/brainstorming/template.md +6 -2
  42. package/src/{modules/cis → core}/workflows/brainstorming/workflow.yaml +17 -9
  43. package/src/core/workflows/party-mode/instructions.md +27 -25
  44. package/src/core/workflows/party-mode/workflow.yaml +14 -10
  45. package/src/modules/bmb/README.md +194 -0
  46. package/src/modules/bmb/_module-installer/install-config.yaml +31 -0
  47. package/src/modules/bmb/agents/bmad-builder.agent.yaml +57 -0
  48. package/src/modules/bmb/workflows/audit-workflow/checklist.md +142 -0
  49. package/src/modules/bmb/workflows/audit-workflow/instructions.md +341 -0
  50. package/src/modules/bmb/workflows/audit-workflow/template.md +118 -0
  51. package/src/modules/bmb/workflows/audit-workflow/workflow.yaml +25 -0
  52. package/src/modules/bmb/workflows/convert-legacy/README.md +34 -34
  53. package/src/modules/bmb/workflows/convert-legacy/checklist.md +22 -21
  54. package/src/modules/bmb/workflows/convert-legacy/instructions.md +135 -86
  55. package/src/modules/bmb/workflows/convert-legacy/workflow.yaml +10 -15
  56. package/src/modules/bmb/workflows/create-agent/README.md +144 -209
  57. package/src/modules/bmb/workflows/create-agent/agent-architecture.md +68 -65
  58. package/src/modules/bmb/workflows/create-agent/agent-command-patterns.md +174 -172
  59. package/src/modules/bmb/workflows/create-agent/agent-types.md +139 -24
  60. package/src/modules/bmb/workflows/create-agent/brainstorm-context.md +4 -4
  61. package/src/modules/bmb/workflows/create-agent/checklist.md +30 -102
  62. package/src/modules/bmb/workflows/create-agent/communication-styles.md +22 -60
  63. package/src/modules/bmb/workflows/create-agent/instructions.md +339 -221
  64. package/src/modules/bmb/workflows/create-agent/workflow.yaml +28 -19
  65. package/src/modules/bmb/workflows/create-module/README.md +164 -153
  66. package/src/modules/bmb/workflows/create-module/brainstorm-context.md +1 -1
  67. package/src/modules/bmb/workflows/create-module/checklist.md +21 -31
  68. package/src/modules/bmb/workflows/create-module/installer-templates/install-config.yaml +92 -0
  69. package/src/modules/bmb/workflows/create-module/installer-templates/installer.js +1 -1
  70. package/src/modules/bmb/workflows/create-module/instructions.md +306 -238
  71. package/src/modules/bmb/workflows/create-module/module-structure.md +135 -45
  72. package/src/modules/bmb/workflows/create-module/workflow.yaml +32 -27
  73. package/src/modules/bmb/workflows/create-workflow/README.md +70 -9
  74. package/src/modules/bmb/workflows/create-workflow/brainstorm-context.md +4 -4
  75. package/src/modules/bmb/workflows/create-workflow/checklist.md +22 -0
  76. package/src/modules/bmb/workflows/create-workflow/instructions.md +505 -47
  77. package/src/modules/bmb/workflows/create-workflow/workflow-creation-guide.md +939 -68
  78. package/src/modules/bmb/workflows/create-workflow/workflow-template/instructions.md +6 -3
  79. package/src/modules/bmb/workflows/create-workflow/workflow-template/workflow.yaml +31 -5
  80. package/src/modules/bmb/workflows/create-workflow/workflow.yaml +16 -17
  81. package/src/modules/bmb/workflows/edit-agent/README.md +112 -0
  82. package/src/modules/bmb/workflows/edit-agent/checklist.md +112 -0
  83. package/src/modules/bmb/workflows/edit-agent/instructions.md +290 -0
  84. package/src/modules/bmb/workflows/edit-agent/workflow.yaml +33 -0
  85. package/src/modules/bmb/workflows/edit-module/README.md +187 -0
  86. package/src/modules/bmb/workflows/edit-module/checklist.md +165 -0
  87. package/src/modules/bmb/workflows/edit-module/instructions.md +341 -0
  88. package/src/modules/bmb/workflows/edit-module/workflow.yaml +34 -0
  89. package/src/modules/bmb/workflows/edit-workflow/README.md +58 -2
  90. package/src/modules/bmb/workflows/edit-workflow/instructions.md +290 -118
  91. package/src/modules/bmb/workflows/edit-workflow/workflow.yaml +9 -16
  92. package/src/modules/bmb/workflows/module-brief/README.md +17 -17
  93. package/src/modules/bmb/workflows/module-brief/checklist.md +6 -6
  94. package/src/modules/bmb/workflows/module-brief/instructions.md +10 -7
  95. package/src/modules/bmb/workflows/module-brief/template.md +9 -9
  96. package/src/modules/bmb/workflows/module-brief/workflow.yaml +16 -10
  97. package/src/modules/bmb/workflows/redoc/README.md +5 -5
  98. package/src/modules/bmb/workflows/redoc/checklist.md +2 -2
  99. package/src/modules/bmb/workflows/redoc/instructions.md +20 -10
  100. package/src/modules/bmb/workflows/redoc/workflow.yaml +6 -5
  101. package/src/modules/bmgd/README.md +208 -0
  102. package/src/modules/bmgd/_module-installer/install-config.yaml +54 -0
  103. package/src/modules/bmgd/agents/game-architect.agent.yaml +33 -0
  104. package/src/modules/bmgd/agents/game-designer.agent.yaml +40 -0
  105. package/src/modules/bmgd/agents/game-dev.agent.yaml +40 -0
  106. package/src/modules/bmgd/agents/game-scrum-master.agent.yaml +75 -0
  107. package/src/modules/bmgd/teams/default-party.csv +10 -0
  108. package/src/modules/bmgd/teams/team-gamedev.yaml +18 -0
  109. package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/brainstorm-game/game-context.md +3 -3
  110. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/instructions.md +130 -0
  111. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/workflow.yaml +41 -0
  112. package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/game-brief/checklist.md +2 -2
  113. package/src/modules/bmgd/workflows/1-preproduction/game-brief/instructions.md +373 -0
  114. package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/game-brief/template.md +2 -2
  115. package/src/modules/bmgd/workflows/1-preproduction/game-brief/workflow.yaml +36 -0
  116. package/src/modules/bmgd/workflows/2-design/gdd/checklist.md +148 -0
  117. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/action-platformer.md +1 -1
  118. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/adventure.md +1 -1
  119. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/card-game.md +2 -2
  120. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/fighting.md +1 -1
  121. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/horror.md +2 -2
  122. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/idle-incremental.md +1 -1
  123. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/moba.md +4 -4
  124. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/party-game.md +1 -1
  125. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/racing.md +3 -3
  126. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/rhythm.md +1 -1
  127. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/roguelike.md +2 -2
  128. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/rpg.md +3 -3
  129. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/sandbox.md +4 -4
  130. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/shooter.md +3 -3
  131. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/simulation.md +3 -3
  132. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/sports.md +3 -3
  133. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/strategy.md +3 -3
  134. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/survival.md +2 -2
  135. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/text-based.md +3 -3
  136. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/tower-defense.md +5 -5
  137. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/turn-based-tactics.md +4 -4
  138. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/visual-novel.md +1 -1
  139. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/gdd-template.md +6 -12
  140. package/src/modules/bmgd/workflows/2-design/gdd/instructions-gdd.md +502 -0
  141. package/src/modules/bmgd/workflows/2-design/gdd/workflow.yaml +81 -0
  142. package/src/modules/bmgd/workflows/2-design/narrative/checklist.md +139 -0
  143. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/narrative/instructions-narrative.md +99 -12
  144. package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/narrative/narrative-template.md +8 -8
  145. package/src/modules/bmgd/workflows/2-design/narrative/workflow.yaml +32 -0
  146. package/src/modules/bmgd/workflows/3-technical/game-architecture/architecture-patterns.yaml +321 -0
  147. package/src/modules/bmgd/workflows/3-technical/game-architecture/architecture-template.md +103 -0
  148. package/src/modules/bmgd/workflows/3-technical/game-architecture/checklist.md +240 -0
  149. package/src/modules/bmgd/workflows/3-technical/game-architecture/decision-catalog.yaml +222 -0
  150. package/src/modules/bmgd/workflows/3-technical/game-architecture/instructions.md +701 -0
  151. package/src/modules/bmgd/workflows/3-technical/game-architecture/pattern-categories.csv +13 -0
  152. package/src/modules/bmgd/workflows/3-technical/game-architecture/workflow.yaml +69 -0
  153. package/src/modules/bmgd/workflows/4-production/code-review/instructions.md +398 -0
  154. package/src/modules/bmgd/workflows/4-production/code-review/workflow.yaml +61 -0
  155. package/src/modules/bmgd/workflows/4-production/correct-course/checklist.md +279 -0
  156. package/src/modules/bmgd/workflows/4-production/correct-course/instructions.md +206 -0
  157. package/src/modules/bmgd/workflows/4-production/correct-course/workflow.yaml +58 -0
  158. package/src/modules/bmgd/workflows/4-production/create-story/checklist.md +240 -0
  159. package/src/modules/bmgd/workflows/4-production/create-story/instructions.md +256 -0
  160. package/src/modules/bmgd/workflows/4-production/create-story/template.md +51 -0
  161. package/src/modules/bmgd/workflows/4-production/create-story/workflow.yaml +74 -0
  162. package/src/modules/bmgd/workflows/4-production/dev-story/checklist.md +38 -0
  163. package/src/modules/bmgd/workflows/4-production/dev-story/instructions.md +267 -0
  164. package/src/modules/bmgd/workflows/4-production/dev-story/workflow.yaml +58 -0
  165. package/src/modules/{bmm/workflows/3-solutioning/tech-spec → bmgd/workflows/4-production/epic-tech-context}/checklist.md +1 -1
  166. package/src/modules/bmgd/workflows/4-production/epic-tech-context/instructions.md +164 -0
  167. package/src/modules/{bmm/workflows/3-solutioning/tech-spec → bmgd/workflows/4-production/epic-tech-context}/template.md +1 -1
  168. package/src/modules/bmgd/workflows/4-production/epic-tech-context/workflow.yaml +58 -0
  169. package/src/modules/bmgd/workflows/4-production/retrospective/instructions.md +1443 -0
  170. package/src/modules/bmgd/workflows/4-production/retrospective/workflow.yaml +57 -0
  171. package/src/modules/bmgd/workflows/4-production/sprint-planning/checklist.md +33 -0
  172. package/src/modules/bmgd/workflows/4-production/sprint-planning/instructions.md +234 -0
  173. package/src/modules/bmgd/workflows/4-production/sprint-planning/sprint-status-template.yaml +55 -0
  174. package/src/modules/bmgd/workflows/4-production/sprint-planning/workflow.yaml +51 -0
  175. package/src/modules/bmgd/workflows/4-production/story-context/checklist.md +16 -0
  176. package/src/modules/bmgd/workflows/4-production/story-context/context-template.xml +34 -0
  177. package/src/modules/bmgd/workflows/4-production/story-context/instructions.md +209 -0
  178. package/src/modules/bmgd/workflows/4-production/story-context/workflow.yaml +63 -0
  179. package/src/modules/bmgd/workflows/4-production/story-done/instructions.md +111 -0
  180. package/src/modules/bmgd/workflows/4-production/story-done/workflow.yaml +28 -0
  181. package/src/modules/bmgd/workflows/4-production/story-ready/instructions.md +117 -0
  182. package/src/modules/bmgd/workflows/4-production/story-ready/workflow.yaml +25 -0
  183. package/src/modules/bmm/README.md +128 -0
  184. package/src/modules/bmm/_module-installer/install-config.yaml +60 -0
  185. package/src/modules/bmm/_module-installer/installer.js +3 -3
  186. package/src/modules/bmm/_module-installer/platform-specifics/claude-code.js +1 -1
  187. package/src/modules/bmm/_module-installer/platform-specifics/windsurf.js +1 -1
  188. package/src/modules/bmm/agents/analyst.agent.yaml +49 -0
  189. package/src/modules/bmm/agents/architect.agent.yaml +42 -0
  190. package/src/modules/bmm/agents/dev.agent.yaml +40 -0
  191. package/src/modules/bmm/agents/frame-expert.agent.yaml +42 -0
  192. package/src/modules/bmm/agents/pm.agent.yaml +64 -0
  193. package/src/modules/bmm/agents/sm.agent.yaml +73 -0
  194. package/src/modules/bmm/agents/tea.agent.yaml +67 -0
  195. package/src/modules/bmm/agents/tech-writer.agent.yaml +68 -0
  196. package/src/modules/bmm/agents/ux-designer.agent.yaml +39 -0
  197. package/src/modules/bmm/docs/README.md +236 -0
  198. package/src/modules/bmm/docs/agents-guide.md +1058 -0
  199. package/src/modules/bmm/docs/brownfield-guide.md +762 -0
  200. package/src/modules/bmm/docs/enterprise-agentic-development.md +686 -0
  201. package/src/modules/bmm/docs/faq.md +588 -0
  202. package/src/modules/bmm/docs/glossary.md +320 -0
  203. package/src/modules/bmm/docs/party-mode.md +224 -0
  204. package/src/modules/bmm/docs/quick-spec-flow.md +652 -0
  205. package/src/modules/bmm/docs/quick-start.md +376 -0
  206. package/src/modules/bmm/docs/scale-adaptive-system.md +612 -0
  207. package/src/modules/bmm/docs/test-architecture.md +396 -0
  208. package/src/modules/bmm/docs/workflow-architecture-reference.md +366 -0
  209. package/src/modules/bmm/docs/workflow-document-project-reference.md +489 -0
  210. package/src/modules/bmm/docs/workflows-analysis.md +370 -0
  211. package/src/modules/bmm/docs/workflows-implementation.md +286 -0
  212. package/src/modules/bmm/docs/workflows-planning.md +612 -0
  213. package/src/modules/bmm/docs/workflows-solutioning.md +554 -0
  214. package/src/modules/bmm/teams/default-party.csv +20 -0
  215. package/src/modules/bmm/teams/team-fullstack.yaml +13 -0
  216. package/src/modules/bmm/testarch/knowledge/ci-burn-in.md +675 -0
  217. package/src/modules/bmm/testarch/knowledge/component-tdd.md +486 -0
  218. package/src/modules/bmm/testarch/knowledge/contract-testing.md +957 -0
  219. package/src/modules/bmm/testarch/knowledge/data-factories.md +500 -0
  220. package/src/modules/bmm/testarch/knowledge/email-auth.md +721 -0
  221. package/src/modules/bmm/testarch/knowledge/error-handling.md +725 -0
  222. package/src/modules/bmm/testarch/knowledge/feature-flags.md +750 -0
  223. package/src/modules/bmm/testarch/knowledge/fixture-architecture.md +401 -0
  224. package/src/modules/bmm/testarch/knowledge/network-first.md +486 -0
  225. package/src/modules/bmm/testarch/knowledge/nfr-criteria.md +670 -0
  226. package/src/modules/bmm/testarch/knowledge/playwright-config.md +730 -0
  227. package/src/modules/bmm/testarch/knowledge/probability-impact.md +601 -0
  228. package/src/modules/bmm/testarch/knowledge/risk-governance.md +615 -0
  229. package/src/modules/bmm/testarch/knowledge/selective-testing.md +732 -0
  230. package/src/modules/bmm/testarch/knowledge/selector-resilience.md +527 -0
  231. package/src/modules/bmm/testarch/knowledge/test-healing-patterns.md +644 -0
  232. package/src/modules/bmm/testarch/knowledge/test-levels-framework.md +473 -0
  233. package/src/modules/bmm/testarch/knowledge/test-priorities-matrix.md +373 -0
  234. package/src/modules/bmm/testarch/knowledge/test-quality.md +664 -0
  235. package/src/modules/bmm/testarch/knowledge/timing-debugging.md +372 -0
  236. package/src/modules/bmm/testarch/knowledge/visual-debugging.md +524 -0
  237. package/src/modules/bmm/testarch/tea-index.csv +22 -0
  238. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/instructions.md +82 -8
  239. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/project-context.md +4 -4
  240. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/workflow.yaml +23 -5
  241. package/src/modules/bmm/workflows/1-analysis/domain-research/instructions.md +425 -0
  242. package/src/modules/bmm/workflows/1-analysis/domain-research/template.md +180 -0
  243. package/src/modules/bmm/workflows/1-analysis/domain-research/workflow.yaml +56 -0
  244. package/src/modules/bmm/workflows/1-analysis/product-brief/checklist.md +2 -2
  245. package/src/modules/bmm/workflows/1-analysis/product-brief/instructions.md +418 -247
  246. package/src/modules/bmm/workflows/1-analysis/product-brief/template.md +93 -77
  247. package/src/modules/bmm/workflows/1-analysis/product-brief/workflow.yaml +42 -14
  248. package/src/modules/bmm/workflows/1-analysis/research/checklist-deep-prompt.md +144 -0
  249. package/src/modules/bmm/workflows/1-analysis/research/checklist-technical.md +249 -0
  250. package/src/modules/bmm/workflows/1-analysis/research/checklist.md +156 -59
  251. package/src/modules/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +115 -47
  252. package/src/modules/bmm/workflows/1-analysis/research/instructions-market.md +236 -114
  253. package/src/modules/bmm/workflows/1-analysis/research/instructions-router.md +109 -66
  254. package/src/modules/bmm/workflows/1-analysis/research/instructions-technical.md +147 -55
  255. package/src/modules/bmm/workflows/1-analysis/research/template-deep-prompt.md +1 -1
  256. package/src/modules/bmm/workflows/1-analysis/research/template-market.md +38 -2
  257. package/src/modules/bmm/workflows/1-analysis/research/template-technical.md +36 -1
  258. package/src/modules/bmm/workflows/1-analysis/research/workflow.yaml +36 -123
  259. package/src/modules/bmm/workflows/2-plan-workflows/create-epics-and-stories/epics-template.md +80 -0
  260. package/src/modules/bmm/workflows/2-plan-workflows/create-epics-and-stories/instructions.md +616 -0
  261. package/src/modules/bmm/workflows/2-plan-workflows/create-epics-and-stories/workflow.yaml +63 -0
  262. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/checklist.md +310 -0
  263. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +1308 -0
  264. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +145 -0
  265. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/workflow.yaml +93 -0
  266. package/src/modules/bmm/workflows/2-plan-workflows/prd/checklist.md +346 -0
  267. package/src/modules/bmm/workflows/2-plan-workflows/prd/domain-complexity.csv +13 -0
  268. package/src/modules/bmm/workflows/2-plan-workflows/prd/instructions.md +703 -0
  269. package/src/modules/bmm/workflows/2-plan-workflows/prd/prd-template.md +204 -0
  270. package/src/modules/bmm/workflows/2-plan-workflows/prd/project-types.csv +11 -0
  271. package/src/modules/bmm/workflows/2-plan-workflows/prd/workflow.yaml +78 -0
  272. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/checklist.md +217 -0
  273. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/epics-template.md +74 -0
  274. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-generate-stories.md +436 -0
  275. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +980 -0
  276. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/tech-spec-template.md +181 -0
  277. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/user-story-template.md +90 -0
  278. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/workflow.yaml +60 -0
  279. package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-patterns.yaml +321 -0
  280. package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-template.md +103 -0
  281. package/src/modules/bmm/workflows/3-solutioning/architecture/checklist.md +240 -0
  282. package/src/modules/bmm/workflows/3-solutioning/architecture/decision-catalog.yaml +222 -0
  283. package/src/modules/bmm/workflows/3-solutioning/architecture/instructions.md +768 -0
  284. package/src/modules/bmm/workflows/3-solutioning/architecture/pattern-categories.csv +13 -0
  285. package/src/modules/bmm/workflows/3-solutioning/architecture/workflow.yaml +100 -0
  286. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/checklist.md +169 -0
  287. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/instructions.md +332 -0
  288. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/template.md +146 -0
  289. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/workflow.yaml +64 -0
  290. package/src/modules/bmm/workflows/4-implementation/code-review/backlog_template.md +12 -0
  291. package/src/modules/bmm/workflows/4-implementation/code-review/checklist.md +22 -0
  292. package/src/modules/bmm/workflows/4-implementation/code-review/instructions.md +398 -0
  293. package/src/modules/bmm/workflows/4-implementation/code-review/workflow.yaml +61 -0
  294. package/src/modules/bmm/workflows/4-implementation/correct-course/checklist.md +6 -6
  295. package/src/modules/bmm/workflows/4-implementation/correct-course/instructions.md +70 -54
  296. package/src/modules/bmm/workflows/4-implementation/correct-course/workflow.yaml +44 -21
  297. package/src/modules/bmm/workflows/4-implementation/create-story/checklist.md +240 -39
  298. package/src/modules/bmm/workflows/4-implementation/create-story/instructions.md +203 -28
  299. package/src/modules/bmm/workflows/4-implementation/create-story/template.md +2 -8
  300. package/src/modules/bmm/workflows/4-implementation/create-story/workflow.yaml +43 -42
  301. package/src/modules/bmm/workflows/4-implementation/dev-story/checklist.md +1 -1
  302. package/src/modules/bmm/workflows/4-implementation/dev-story/instructions.md +220 -40
  303. package/src/modules/bmm/workflows/4-implementation/dev-story/workflow.yaml +43 -38
  304. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/checklist.md +17 -0
  305. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/instructions.md +164 -0
  306. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/template.md +76 -0
  307. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/workflow.yaml +58 -0
  308. package/src/modules/bmm/workflows/4-implementation/retrospective/instructions.md +1280 -228
  309. package/src/modules/bmm/workflows/4-implementation/retrospective/workflow.yaml +41 -25
  310. package/src/modules/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -0
  311. package/src/modules/bmm/workflows/4-implementation/sprint-planning/instructions.md +234 -0
  312. package/src/modules/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
  313. package/src/modules/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +51 -0
  314. package/src/modules/bmm/workflows/4-implementation/story-context/checklist.md +1 -1
  315. package/src/modules/bmm/workflows/4-implementation/story-context/context-template.xml +1 -1
  316. package/src/modules/bmm/workflows/4-implementation/story-context/instructions.md +155 -22
  317. package/src/modules/bmm/workflows/4-implementation/story-context/workflow.yaml +43 -36
  318. package/src/modules/bmm/workflows/4-implementation/story-done/instructions.md +111 -0
  319. package/src/modules/bmm/workflows/4-implementation/story-done/workflow.yaml +28 -0
  320. package/src/modules/bmm/workflows/4-implementation/story-ready/instructions.md +117 -0
  321. package/src/modules/bmm/workflows/4-implementation/story-ready/workflow.yaml +25 -0
  322. package/src/modules/bmm/workflows/document-project/checklist.md +245 -0
  323. package/src/modules/bmm/workflows/document-project/documentation-requirements.csv +12 -0
  324. package/src/modules/bmm/workflows/document-project/instructions.md +222 -0
  325. package/src/modules/bmm/workflows/document-project/templates/deep-dive-template.md +345 -0
  326. package/src/modules/bmm/workflows/document-project/templates/index-template.md +169 -0
  327. package/src/modules/bmm/workflows/document-project/templates/project-overview-template.md +103 -0
  328. package/src/modules/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
  329. package/src/modules/bmm/workflows/document-project/templates/source-tree-template.md +135 -0
  330. package/src/modules/bmm/workflows/document-project/workflow.yaml +31 -0
  331. package/src/modules/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
  332. package/src/modules/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
  333. package/src/modules/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
  334. package/src/modules/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
  335. package/src/modules/bmm/workflows/frame-expert/_shared/excalidraw-helpers.md +127 -0
  336. package/src/modules/bmm/workflows/frame-expert/_shared/excalidraw-library.json +90 -0
  337. package/src/modules/bmm/workflows/frame-expert/_shared/excalidraw-templates.yaml +127 -0
  338. package/src/modules/bmm/workflows/frame-expert/_shared/validate-json-instructions.md +79 -0
  339. package/src/modules/bmm/workflows/frame-expert/create-dataflow/checklist.md +39 -0
  340. package/src/modules/bmm/workflows/frame-expert/create-dataflow/instructions.md +131 -0
  341. package/src/modules/bmm/workflows/frame-expert/create-dataflow/workflow.yaml +24 -0
  342. package/src/modules/bmm/workflows/frame-expert/create-diagram/checklist.md +43 -0
  343. package/src/modules/bmm/workflows/frame-expert/create-diagram/instructions.md +142 -0
  344. package/src/modules/bmm/workflows/frame-expert/create-diagram/workflow.yaml +25 -0
  345. package/src/modules/bmm/workflows/frame-expert/create-flowchart/checklist.md +49 -0
  346. package/src/modules/bmm/workflows/frame-expert/create-flowchart/instructions.md +242 -0
  347. package/src/modules/bmm/workflows/frame-expert/create-flowchart/workflow.yaml +28 -0
  348. package/src/modules/bmm/workflows/frame-expert/create-wireframe/checklist.md +38 -0
  349. package/src/modules/bmm/workflows/frame-expert/create-wireframe/instructions.md +133 -0
  350. package/src/modules/bmm/workflows/frame-expert/create-wireframe/workflow.yaml +24 -0
  351. package/src/modules/bmm/workflows/techdoc/documentation-standards.md +262 -0
  352. package/src/modules/bmm/workflows/testarch/atdd/atdd-checklist-template.md +363 -0
  353. package/src/modules/bmm/workflows/testarch/atdd/checklist.md +373 -0
  354. package/src/modules/bmm/workflows/testarch/atdd/instructions.md +785 -0
  355. package/src/modules/bmm/workflows/testarch/atdd/workflow.yaml +47 -0
  356. package/src/modules/bmm/workflows/testarch/automate/checklist.md +580 -0
  357. package/src/modules/bmm/workflows/testarch/automate/instructions.md +1303 -0
  358. package/src/modules/bmm/workflows/testarch/automate/workflow.yaml +54 -0
  359. package/src/modules/bmm/workflows/testarch/ci/checklist.md +246 -0
  360. package/src/modules/bmm/workflows/testarch/ci/github-actions-template.yaml +165 -0
  361. package/src/modules/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +128 -0
  362. package/src/modules/bmm/workflows/testarch/ci/instructions.md +517 -0
  363. package/src/modules/bmm/workflows/testarch/ci/workflow.yaml +47 -0
  364. package/src/modules/bmm/workflows/testarch/framework/checklist.md +321 -0
  365. package/src/modules/bmm/workflows/testarch/framework/instructions.md +455 -0
  366. package/src/modules/bmm/workflows/testarch/framework/workflow.yaml +49 -0
  367. package/src/modules/bmm/workflows/testarch/nfr-assess/checklist.md +405 -0
  368. package/src/modules/bmm/workflows/testarch/nfr-assess/instructions.md +722 -0
  369. package/src/modules/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +443 -0
  370. package/src/modules/bmm/workflows/testarch/nfr-assess/workflow.yaml +49 -0
  371. package/src/modules/bmm/workflows/testarch/test-design/checklist.md +234 -0
  372. package/src/modules/bmm/workflows/testarch/test-design/instructions.md +782 -0
  373. package/src/modules/bmm/workflows/testarch/test-design/test-design-template.md +285 -0
  374. package/src/modules/bmm/workflows/testarch/test-design/workflow.yaml +50 -0
  375. package/src/modules/bmm/workflows/testarch/test-review/checklist.md +470 -0
  376. package/src/modules/bmm/workflows/testarch/test-review/instructions.md +608 -0
  377. package/src/modules/bmm/workflows/testarch/test-review/test-review-template.md +388 -0
  378. package/src/modules/bmm/workflows/testarch/test-review/workflow.yaml +48 -0
  379. package/src/modules/bmm/workflows/testarch/trace/checklist.md +654 -0
  380. package/src/modules/bmm/workflows/testarch/trace/instructions.md +1045 -0
  381. package/src/modules/bmm/workflows/testarch/trace/trace-template.md +673 -0
  382. package/src/modules/bmm/workflows/testarch/trace/workflow.yaml +57 -0
  383. package/src/modules/bmm/workflows/workflow-status/init/instructions.md +334 -0
  384. package/src/modules/bmm/workflows/workflow-status/init/workflow.yaml +29 -0
  385. package/src/modules/bmm/workflows/workflow-status/instructions.md +388 -0
  386. package/src/modules/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +138 -0
  387. package/src/modules/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +126 -0
  388. package/src/modules/bmm/workflows/workflow-status/paths/game-design.yaml +52 -0
  389. package/src/modules/bmm/workflows/workflow-status/paths/method-brownfield.yaml +122 -0
  390. package/src/modules/bmm/workflows/workflow-status/paths/method-greenfield.yaml +113 -0
  391. package/src/modules/bmm/workflows/workflow-status/paths/quick-flow-brownfield.yaml +58 -0
  392. package/src/modules/bmm/workflows/workflow-status/paths/quick-flow-greenfield.yaml +47 -0
  393. package/src/modules/bmm/workflows/workflow-status/project-levels.yaml +59 -0
  394. package/src/modules/bmm/workflows/workflow-status/workflow-status-template.yaml +24 -0
  395. package/src/modules/bmm/workflows/workflow-status/workflow.yaml +30 -0
  396. package/src/modules/cis/README.md +153 -0
  397. package/src/modules/cis/_module-installer/{install-menu-config.yaml → install-config.yaml} +6 -4
  398. package/src/modules/cis/_module-installer/installer.js +1 -1
  399. package/src/modules/cis/agents/README.md +1 -1
  400. package/src/modules/cis/agents/brainstorming-coach.agent.yaml +28 -0
  401. package/src/modules/cis/agents/creative-problem-solver.agent.yaml +28 -0
  402. package/src/modules/cis/agents/design-thinking-coach.agent.yaml +28 -0
  403. package/src/modules/cis/agents/innovation-strategist.agent.yaml +28 -0
  404. package/src/modules/cis/agents/storyteller.agent.yaml +28 -0
  405. package/src/modules/cis/teams/creative-squad.yaml +1 -0
  406. package/src/modules/cis/teams/default-party.csv +11 -0
  407. package/src/modules/cis/workflows/README.md +102 -30
  408. package/src/modules/cis/workflows/design-thinking/design-methods.csv +1 -1
  409. package/src/modules/cis/workflows/design-thinking/instructions.md +4 -2
  410. package/src/modules/cis/workflows/design-thinking/workflow.yaml +16 -7
  411. package/src/modules/cis/workflows/innovation-strategy/innovation-frameworks.csv +2 -2
  412. package/src/modules/cis/workflows/innovation-strategy/instructions.md +7 -5
  413. package/src/modules/cis/workflows/innovation-strategy/template.md +6 -6
  414. package/src/modules/cis/workflows/innovation-strategy/workflow.yaml +16 -7
  415. package/src/modules/cis/workflows/problem-solving/instructions.md +4 -2
  416. package/src/modules/cis/workflows/problem-solving/solving-methods.csv +6 -6
  417. package/src/modules/cis/workflows/problem-solving/template.md +3 -3
  418. package/src/modules/cis/workflows/problem-solving/workflow.yaml +16 -7
  419. package/src/modules/cis/workflows/storytelling/instructions.md +48 -30
  420. package/src/modules/cis/workflows/storytelling/template.md +2 -2
  421. package/src/modules/cis/workflows/storytelling/workflow.yaml +16 -7
  422. package/src/utility/models/action-command-header.md +0 -0
  423. package/src/utility/models/agent-activation-ide.xml +4 -4
  424. package/src/utility/models/agent-activation-web.xml +60 -0
  425. package/src/utility/models/agent-command-header.md +1 -0
  426. package/src/utility/models/agent-in-team-activation.xml +3 -0
  427. package/src/utility/models/fragments/activation-rules.xml +8 -0
  428. package/src/utility/models/fragments/activation-steps.xml +16 -0
  429. package/src/utility/models/fragments/handler-action.xml +4 -0
  430. package/src/utility/models/fragments/handler-data.xml +5 -0
  431. package/src/utility/models/fragments/handler-exec.xml +5 -0
  432. package/src/utility/models/fragments/handler-tmpl.xml +5 -0
  433. package/src/utility/models/fragments/handler-validate-workflow.xml +7 -0
  434. package/src/utility/models/fragments/handler-workflow.xml +9 -0
  435. package/src/utility/models/fragments/menu-handlers.xml +6 -0
  436. package/src/utility/models/fragments/web-bundle-activation-steps.xml +32 -0
  437. package/src/utility/templates/agent.customize.template.yaml +42 -0
  438. package/test/README.md +295 -0
  439. package/test/fixtures/agent-schema/invalid/critical-actions/actions-as-string.agent.yaml +26 -0
  440. package/test/fixtures/agent-schema/invalid/critical-actions/empty-string-in-actions.agent.yaml +29 -0
  441. package/test/fixtures/agent-schema/invalid/menu/empty-menu.agent.yaml +21 -0
  442. package/test/fixtures/agent-schema/invalid/menu/missing-menu.agent.yaml +19 -0
  443. package/test/fixtures/agent-schema/invalid/menu-commands/empty-command-target.agent.yaml +24 -0
  444. package/test/fixtures/agent-schema/invalid/menu-commands/no-command-target.agent.yaml +23 -0
  445. package/test/fixtures/agent-schema/invalid/menu-triggers/camel-case.agent.yaml +24 -0
  446. package/test/fixtures/agent-schema/invalid/menu-triggers/duplicate-triggers.agent.yaml +30 -0
  447. package/test/fixtures/agent-schema/invalid/menu-triggers/empty-trigger.agent.yaml +24 -0
  448. package/test/fixtures/agent-schema/invalid/menu-triggers/leading-asterisk.agent.yaml +24 -0
  449. package/test/fixtures/agent-schema/invalid/menu-triggers/snake-case.agent.yaml +24 -0
  450. package/test/fixtures/agent-schema/invalid/menu-triggers/trigger-with-spaces.agent.yaml +24 -0
  451. package/test/fixtures/agent-schema/invalid/metadata/core-agent-with-module.agent.yaml +26 -0
  452. package/test/fixtures/agent-schema/invalid/metadata/empty-module-string.agent.yaml +26 -0
  453. package/test/fixtures/agent-schema/invalid/metadata/empty-name.agent.yaml +24 -0
  454. package/test/fixtures/agent-schema/invalid/metadata/extra-metadata-fields.agent.yaml +26 -0
  455. package/test/fixtures/agent-schema/invalid/metadata/missing-id.agent.yaml +23 -0
  456. package/test/fixtures/agent-schema/invalid/metadata/module-agent-missing-module.agent.yaml +25 -0
  457. package/test/fixtures/agent-schema/invalid/metadata/wrong-module-value.agent.yaml +26 -0
  458. package/test/fixtures/agent-schema/invalid/persona/empty-principles-array.agent.yaml +23 -0
  459. package/test/fixtures/agent-schema/invalid/persona/empty-string-in-principles.agent.yaml +26 -0
  460. package/test/fixtures/agent-schema/invalid/persona/extra-persona-fields.agent.yaml +26 -0
  461. package/test/fixtures/agent-schema/invalid/persona/missing-role.agent.yaml +23 -0
  462. package/test/fixtures/agent-schema/invalid/prompts/empty-content.agent.yaml +28 -0
  463. package/test/fixtures/agent-schema/invalid/prompts/extra-prompt-fields.agent.yaml +30 -0
  464. package/test/fixtures/agent-schema/invalid/prompts/missing-content.agent.yaml +27 -0
  465. package/test/fixtures/agent-schema/invalid/prompts/missing-id.agent.yaml +27 -0
  466. package/test/fixtures/agent-schema/invalid/top-level/empty-file.agent.yaml +5 -0
  467. package/test/fixtures/agent-schema/invalid/top-level/extra-top-level-keys.agent.yaml +27 -0
  468. package/test/fixtures/agent-schema/invalid/top-level/missing-agent-key.agent.yaml +11 -0
  469. package/test/fixtures/agent-schema/invalid/yaml-errors/invalid-indentation.agent.yaml +19 -0
  470. package/test/fixtures/agent-schema/invalid/yaml-errors/malformed-yaml.agent.yaml +18 -0
  471. package/test/fixtures/agent-schema/valid/critical-actions/empty-critical-actions.agent.yaml +23 -0
  472. package/test/fixtures/agent-schema/valid/critical-actions/no-critical-actions.agent.yaml +21 -0
  473. package/test/fixtures/agent-schema/valid/critical-actions/valid-critical-actions.agent.yaml +26 -0
  474. package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +30 -0
  475. package/test/fixtures/agent-schema/valid/menu/single-menu-item.agent.yaml +21 -0
  476. package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +39 -0
  477. package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +23 -0
  478. package/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +33 -0
  479. package/test/fixtures/agent-schema/valid/metadata/empty-module-name-in-path.agent.yaml +23 -0
  480. package/test/fixtures/agent-schema/valid/metadata/malformed-path-treated-as-core.agent.yaml +23 -0
  481. package/test/fixtures/agent-schema/valid/metadata/module-agent-correct.agent.yaml +23 -0
  482. package/test/fixtures/agent-schema/valid/persona/complete-persona.agent.yaml +23 -0
  483. package/test/fixtures/agent-schema/valid/prompts/empty-prompts.agent.yaml +23 -0
  484. package/test/fixtures/agent-schema/valid/prompts/no-prompts.agent.yaml +21 -0
  485. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-minimal.agent.yaml +27 -0
  486. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-with-description.agent.yaml +29 -0
  487. package/test/fixtures/agent-schema/valid/top-level/minimal-core-agent.agent.yaml +23 -0
  488. package/test/test-agent-schema.js +387 -0
  489. package/test/test-cli-integration.sh +159 -0
  490. package/test/test-installation-components.js +214 -0
  491. package/test/unit-test-schema.js +133 -0
  492. package/tools/bmad-npx-wrapper.js +38 -0
  493. package/tools/cli/README.md +608 -0
  494. package/tools/cli/bmad-cli.js +0 -2
  495. package/tools/cli/bundlers/bundle-web.js +24 -2
  496. package/tools/cli/bundlers/test-bundler.js +1 -1
  497. package/tools/cli/bundlers/web-bundler.js +944 -49
  498. package/tools/cli/commands/build.js +458 -0
  499. package/tools/cli/commands/install.js +46 -8
  500. package/tools/cli/installers/lib/core/config-collector.js +490 -43
  501. package/tools/cli/installers/lib/core/dependency-resolver.js +5 -1
  502. package/tools/cli/installers/lib/core/detector.js +134 -13
  503. package/tools/cli/installers/lib/core/ide-config-manager.js +154 -0
  504. package/tools/cli/installers/lib/core/installer.js +1365 -167
  505. package/tools/cli/installers/lib/core/manifest-generator.js +388 -81
  506. package/tools/cli/installers/lib/core/manifest.js +100 -44
  507. package/tools/cli/installers/lib/ide/_base-ide.js +368 -23
  508. package/tools/cli/installers/lib/ide/auggie.js +100 -192
  509. package/tools/cli/installers/lib/ide/claude-code.js +167 -321
  510. package/tools/cli/installers/lib/ide/cline.js +146 -227
  511. package/tools/cli/installers/lib/ide/codex.js +138 -202
  512. package/tools/cli/installers/lib/ide/crush.js +108 -72
  513. package/tools/cli/installers/lib/ide/cursor.js +148 -20
  514. package/tools/cli/installers/lib/ide/gemini.js +109 -63
  515. package/tools/cli/installers/lib/ide/github-copilot.js +60 -47
  516. package/tools/cli/installers/lib/ide/iflow.js +13 -30
  517. package/tools/cli/installers/lib/ide/kilo.js +20 -16
  518. package/tools/cli/installers/lib/ide/manager.js +41 -35
  519. package/tools/cli/installers/lib/ide/opencode.js +212 -0
  520. package/tools/cli/installers/lib/ide/qwen.js +198 -68
  521. package/tools/cli/installers/lib/ide/roo.js +27 -62
  522. package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +90 -0
  523. package/tools/cli/installers/lib/ide/shared/bmad-artifacts.js +143 -0
  524. package/tools/cli/installers/lib/ide/shared/module-injections.js +133 -0
  525. package/tools/cli/installers/lib/ide/shared/task-tool-command-generator.js +119 -0
  526. package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +237 -0
  527. package/tools/cli/installers/lib/ide/templates/agent-command-template.md +14 -0
  528. package/tools/cli/installers/lib/ide/templates/gemini-agent-command.toml +14 -0
  529. package/tools/cli/installers/lib/ide/templates/gemini-task-command.toml +12 -0
  530. package/tools/cli/installers/lib/ide/{workflow-command-template.md → templates/workflow-command-template.md} +7 -5
  531. package/tools/cli/installers/lib/ide/trae.js +138 -54
  532. package/tools/cli/installers/lib/ide/windsurf.js +104 -42
  533. package/tools/cli/installers/lib/modules/manager.js +332 -10
  534. package/tools/cli/lib/activation-builder.js +168 -0
  535. package/tools/cli/lib/agent-analyzer.js +81 -0
  536. package/tools/cli/lib/agent-party-generator.js +3 -3
  537. package/tools/cli/lib/cli-utils.js +52 -50
  538. package/tools/cli/lib/config.js +3 -1
  539. package/tools/cli/lib/ui.js +106 -14
  540. package/tools/cli/lib/xml-handler.js +47 -1
  541. package/tools/cli/lib/yaml-format.js +2 -1
  542. package/tools/cli/lib/yaml-xml-builder.js +507 -0
  543. package/tools/cli/regenerate-manifests.js +1 -1
  544. package/tools/cli/test-yaml-builder.js +43 -0
  545. package/tools/format-workflow-md.js +263 -0
  546. package/tools/platform-codes.yaml +6 -0
  547. package/tools/schema/agent.js +240 -0
  548. package/tools/validate-agent-schema.js +110 -0
  549. package/v6-open-items.md +17 -0
  550. package/.github/workflows/format-check.yaml +0 -43
  551. package/docs/codebase-flattener.md +0 -19
  552. package/readme.md +0 -216
  553. package/src/core/_module-installer/install-menu-config.yaml +0 -24
  554. package/src/core/agents/bmad-master.md +0 -27
  555. package/src/core/agents/bmad-web-orchestrator.md +0 -71
  556. package/src/core/tasks/shard-doc.md +0 -57
  557. package/src/core/tasks/workflow.md +0 -141
  558. package/src/core/workflows/bmad-init/instructions.md +0 -79
  559. package/src/core/workflows/bmad-init/workflow.yaml +0 -24
  560. package/src/modules/bmb/_module-installer/install-menu-config.yaml +0 -16
  561. package/src/modules/bmb/agents/bmad-builder.md +0 -30
  562. package/src/modules/bmb/workflows/create-module/installer-templates/install-module-config.yaml +0 -132
  563. package/src/modules/bmm/_module-installer/install-menu-config.yaml +0 -49
  564. package/src/modules/bmm/agents/analyst.md +0 -26
  565. package/src/modules/bmm/agents/architect.md +0 -29
  566. package/src/modules/bmm/agents/dev.md +0 -61
  567. package/src/modules/bmm/agents/game-architect.md +0 -26
  568. package/src/modules/bmm/agents/game-designer.md +0 -27
  569. package/src/modules/bmm/agents/game-dev.md +0 -28
  570. package/src/modules/bmm/agents/pm.md +0 -26
  571. package/src/modules/bmm/agents/po.md +0 -25
  572. package/src/modules/bmm/agents/sm.md +0 -29
  573. package/src/modules/bmm/agents/tea.md +0 -32
  574. package/src/modules/bmm/agents/ux-expert.md +0 -24
  575. package/src/modules/bmm/sub-modules/claude-code/config.yaml +0 -5
  576. package/src/modules/bmm/sub-modules/claude-code/injections.yaml +0 -242
  577. package/src/modules/bmm/sub-modules/claude-code/readme.md +0 -87
  578. package/src/modules/bmm/sub-modules/claude-code/sub-agents/api-documenter.md +0 -85
  579. package/src/modules/bmm/sub-modules/claude-code/sub-agents/codebase-analyzer.md +0 -64
  580. package/src/modules/bmm/sub-modules/claude-code/sub-agents/data-analyst.md +0 -84
  581. package/src/modules/bmm/sub-modules/claude-code/sub-agents/dependency-mapper.md +0 -67
  582. package/src/modules/bmm/sub-modules/claude-code/sub-agents/document-reviewer.md +0 -85
  583. package/src/modules/bmm/sub-modules/claude-code/sub-agents/epic-optimizer.md +0 -66
  584. package/src/modules/bmm/sub-modules/claude-code/sub-agents/market-researcher.md +0 -34
  585. package/src/modules/bmm/sub-modules/claude-code/sub-agents/pattern-detector.md +0 -67
  586. package/src/modules/bmm/sub-modules/claude-code/sub-agents/requirements-analyst.md +0 -61
  587. package/src/modules/bmm/sub-modules/claude-code/sub-agents/tech-debt-auditor.md +0 -89
  588. package/src/modules/bmm/sub-modules/claude-code/sub-agents/technical-decisions-curator.md +0 -146
  589. package/src/modules/bmm/sub-modules/claude-code/sub-agents/technical-evaluator.md +0 -51
  590. package/src/modules/bmm/sub-modules/claude-code/sub-agents/test-coverage-analyzer.md +0 -91
  591. package/src/modules/bmm/sub-modules/claude-code/sub-agents/trend-spotter.md +0 -99
  592. package/src/modules/bmm/sub-modules/claude-code/sub-agents/user-journey-mapper.md +0 -101
  593. package/src/modules/bmm/sub-modules/claude-code/sub-agents/user-researcher.md +0 -56
  594. package/src/modules/bmm/tasks/daily-standup.md +0 -91
  595. package/src/modules/bmm/tasks/retrospective.md +0 -110
  596. package/src/modules/bmm/teams/team-all.yaml +0 -7
  597. package/src/modules/bmm/teams/team-dev.yaml +0 -14
  598. package/src/modules/bmm/teams/team-gamedev.yaml +0 -9
  599. package/src/modules/bmm/testarch/atdd.md +0 -40
  600. package/src/modules/bmm/testarch/automate.md +0 -38
  601. package/src/modules/bmm/testarch/ci.md +0 -39
  602. package/src/modules/bmm/testarch/framework.md +0 -41
  603. package/src/modules/bmm/testarch/nfr-assess.md +0 -38
  604. package/src/modules/bmm/testarch/risk-profile.md +0 -38
  605. package/src/modules/bmm/testarch/tea-commands.csv +0 -11
  606. package/src/modules/bmm/testarch/tea-gate.md +0 -38
  607. package/src/modules/bmm/testarch/tea-knowledge.md +0 -275
  608. package/src/modules/bmm/testarch/test-design.md +0 -39
  609. package/src/modules/bmm/testarch/test-levels-framework.md +0 -148
  610. package/src/modules/bmm/testarch/test-priorities-matrix.md +0 -174
  611. package/src/modules/bmm/testarch/trace-requirements.md +0 -38
  612. package/src/modules/bmm/workflows/1-analysis/brainstorm-game/instructions.md +0 -47
  613. package/src/modules/bmm/workflows/1-analysis/brainstorm-game/workflow.yaml +0 -22
  614. package/src/modules/bmm/workflows/1-analysis/game-brief/README.md +0 -221
  615. package/src/modules/bmm/workflows/1-analysis/game-brief/instructions.md +0 -517
  616. package/src/modules/bmm/workflows/1-analysis/game-brief/workflow.yaml +0 -34
  617. package/src/modules/bmm/workflows/1-analysis/product-brief/README.md +0 -180
  618. package/src/modules/bmm/workflows/1-analysis/research/README.md +0 -454
  619. package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-competitor-analyzer.md +0 -259
  620. package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-data-analyst.md +0 -190
  621. package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-market-researcher.md +0 -337
  622. package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-trend-spotter.md +0 -107
  623. package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-user-researcher.md +0 -329
  624. package/src/modules/bmm/workflows/2-plan/README.md +0 -203
  625. package/src/modules/bmm/workflows/2-plan/checklist.md +0 -369
  626. package/src/modules/bmm/workflows/2-plan/gdd/README.md +0 -222
  627. package/src/modules/bmm/workflows/2-plan/gdd/instructions-gdd.md +0 -480
  628. package/src/modules/bmm/workflows/2-plan/instructions-router.md +0 -222
  629. package/src/modules/bmm/workflows/2-plan/prd/analysis-template.md +0 -53
  630. package/src/modules/bmm/workflows/2-plan/prd/epics-template.md +0 -18
  631. package/src/modules/bmm/workflows/2-plan/prd/instructions-lg.md +0 -267
  632. package/src/modules/bmm/workflows/2-plan/prd/instructions-med.md +0 -251
  633. package/src/modules/bmm/workflows/2-plan/prd/prd-template.md +0 -73
  634. package/src/modules/bmm/workflows/2-plan/tech-spec/instructions-sm.md +0 -137
  635. package/src/modules/bmm/workflows/2-plan/tech-spec/tech-spec-template.md +0 -59
  636. package/src/modules/bmm/workflows/2-plan/ux/instructions-ux.md +0 -360
  637. package/src/modules/bmm/workflows/2-plan/ux/ux-spec-template.md +0 -162
  638. package/src/modules/bmm/workflows/2-plan/workflow.yaml +0 -60
  639. package/src/modules/bmm/workflows/3-solutioning/ADR-template.md +0 -74
  640. package/src/modules/bmm/workflows/3-solutioning/README.md +0 -565
  641. package/src/modules/bmm/workflows/3-solutioning/checklist.md +0 -170
  642. package/src/modules/bmm/workflows/3-solutioning/instructions.md +0 -661
  643. package/src/modules/bmm/workflows/3-solutioning/project-types/backend-questions.md +0 -490
  644. package/src/modules/bmm/workflows/3-solutioning/project-types/cli-questions.md +0 -337
  645. package/src/modules/bmm/workflows/3-solutioning/project-types/data-questions.md +0 -472
  646. package/src/modules/bmm/workflows/3-solutioning/project-types/desktop-questions.md +0 -299
  647. package/src/modules/bmm/workflows/3-solutioning/project-types/embedded-questions.md +0 -118
  648. package/src/modules/bmm/workflows/3-solutioning/project-types/extension-questions.md +0 -374
  649. package/src/modules/bmm/workflows/3-solutioning/project-types/game-questions.md +0 -133
  650. package/src/modules/bmm/workflows/3-solutioning/project-types/infra-questions.md +0 -484
  651. package/src/modules/bmm/workflows/3-solutioning/project-types/library-questions.md +0 -146
  652. package/src/modules/bmm/workflows/3-solutioning/project-types/mobile-questions.md +0 -110
  653. package/src/modules/bmm/workflows/3-solutioning/project-types/project-types.csv +0 -12
  654. package/src/modules/bmm/workflows/3-solutioning/project-types/web-questions.md +0 -136
  655. package/src/modules/bmm/workflows/3-solutioning/tech-spec/README.md +0 -195
  656. package/src/modules/bmm/workflows/3-solutioning/tech-spec/instructions.md +0 -73
  657. package/src/modules/bmm/workflows/3-solutioning/tech-spec/workflow.yaml +0 -51
  658. package/src/modules/bmm/workflows/3-solutioning/templates/backend-service-architecture.md +0 -66
  659. package/src/modules/bmm/workflows/3-solutioning/templates/cli-tool-architecture.md +0 -66
  660. package/src/modules/bmm/workflows/3-solutioning/templates/data-pipeline-architecture.md +0 -66
  661. package/src/modules/bmm/workflows/3-solutioning/templates/desktop-app-architecture.md +0 -66
  662. package/src/modules/bmm/workflows/3-solutioning/templates/embedded-firmware-architecture.md +0 -66
  663. package/src/modules/bmm/workflows/3-solutioning/templates/game-engine-architecture.md +0 -244
  664. package/src/modules/bmm/workflows/3-solutioning/templates/game-engine-godot-guide.md +0 -428
  665. package/src/modules/bmm/workflows/3-solutioning/templates/game-engine-unity-guide.md +0 -333
  666. package/src/modules/bmm/workflows/3-solutioning/templates/game-engine-web-guide.md +0 -528
  667. package/src/modules/bmm/workflows/3-solutioning/templates/infrastructure-architecture.md +0 -66
  668. package/src/modules/bmm/workflows/3-solutioning/templates/library-package-architecture.md +0 -66
  669. package/src/modules/bmm/workflows/3-solutioning/templates/mobile-app-architecture.md +0 -66
  670. package/src/modules/bmm/workflows/3-solutioning/templates/registry.csv +0 -172
  671. package/src/modules/bmm/workflows/3-solutioning/templates/web-api-architecture.md +0 -66
  672. package/src/modules/bmm/workflows/3-solutioning/templates/web-fullstack-architecture.md +0 -277
  673. package/src/modules/bmm/workflows/3-solutioning/workflow.yaml +0 -65
  674. package/src/modules/bmm/workflows/4-implementation/create-story/README.md +0 -42
  675. package/src/modules/bmm/workflows/4-implementation/dev-story/README.md +0 -84
  676. package/src/modules/bmm/workflows/4-implementation/review-story/README.md +0 -72
  677. package/src/modules/bmm/workflows/4-implementation/review-story/instructions.md +0 -176
  678. package/src/modules/bmm/workflows/4-implementation/review-story/workflow.yaml +0 -99
  679. package/src/modules/bmm/workflows/4-implementation/story-context/README.md +0 -234
  680. package/src/modules/cis/agents/brainstorming-coach.md +0 -24
  681. package/src/modules/cis/agents/creative-problem-solver.md +0 -24
  682. package/src/modules/cis/agents/design-thinking-coach.md +0 -24
  683. package/src/modules/cis/agents/innovation-strategist.md +0 -24
  684. package/src/modules/cis/agents/storyteller.md +0 -24
  685. package/src/modules/cis/readme.md +0 -86
  686. package/tools/cli/installers/lib/ide/workflow-command-generator.js +0 -162
  687. package/tools/test-agents/captain-kirk-commander.md +0 -110
  688. package/tools/test-agents/data-operations-android.md +0 -123
  689. package/tools/test-agents/geordi-chief-engineer.md +0 -135
  690. package/tools/test-agents/isabella-martinez-ethicist.md +0 -109
  691. package/tools/test-agents/marcus-thompson-security.md +0 -109
  692. package/tools/test-agents/maya-patel-pragmatist.md +0 -82
  693. package/tools/test-agents/picard-diplomat-captain.md +0 -134
  694. package/tools/test-agents/spock-science-officer.md +0 -124
  695. package/tools/test-agents/william-smithers-technocrat.md +0 -71
  696. package/tools/test-agents/zara-chen-designer.md +0 -94
  697. /package/src/{modules/cis → core}/workflows/brainstorming/brain-methods.csv +0 -0
  698. /package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/brainstorm-game/game-brain-methods.csv +0 -0
  699. /package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/metroidvania.md +0 -0
  700. /package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types/puzzle.md +0 -0
  701. /package/src/modules/{bmm/workflows/2-plan → bmgd/workflows/2-design}/gdd/game-types.csv +0 -0
  702. /package/src/modules/{bmm/workflows/4-implementation/review-story → bmgd/workflows/4-production/code-review}/backlog_template.md +0 -0
  703. /package/src/modules/{bmm/workflows/4-implementation/review-story → bmgd/workflows/4-production/code-review}/checklist.md +0 -0
  704. /package/src/modules/bmm/_module-installer/assets/{technical-decisions-template.md → technical-decisions.md} +0 -0
@@ -8,7 +8,7 @@ Create structured, repeatable workflows for human-AI collaboration in BMAD v6.
8
8
  2. [Core Concepts](#core-concepts)
9
9
  3. [Workflow Structure](#workflow-structure)
10
10
  4. [Writing Instructions](#writing-instructions)
11
- 5. [Templates & Variables](#templates--variables)
11
+ 5. [Templates and Variables](#templates--variables)
12
12
  6. [Flow Control](#flow-control)
13
13
  7. [Validation](#validation)
14
14
  8. [Examples](#examples)
@@ -25,10 +25,12 @@ Create a folder with these files:
25
25
  # workflow.yaml (REQUIRED)
26
26
  name: 'my-workflow'
27
27
  description: 'What this workflow does'
28
- installed_path: '{project-root}/bmad/module/workflows/my-workflow'
28
+ installed_path: '{project-root}/{bmad_folder}/module/workflows/my-workflow'
29
29
  template: '{installed_path}/template.md'
30
30
  instructions: '{installed_path}/instructions.md'
31
31
  default_output_file: '{output_folder}/output.md'
32
+
33
+ standalone: true
32
34
  ```
33
35
 
34
36
  ```markdown
@@ -42,30 +44,30 @@ default_output_file: '{output_folder}/output.md'
42
44
  ```markdown
43
45
  # instructions.md
44
46
 
45
- <critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.md</critical>
47
+ <critical>The workflow execution engine is governed by: {project_root}/{bmad_folder}/core/tasks/workflow.xml</critical>
46
48
  <critical>You MUST have already loaded and processed: workflow.yaml</critical>
47
49
 
48
50
  <workflow>
49
- <step n="1" goal="Generate content">
50
- Create the main content for this document.
51
- <template-output>main_content</template-output>
52
- </step>
51
+ <step n="1" goal="Generate content">
52
+ Create the main content for this document.
53
+ <template-output>main_content</template-output>
54
+ </step>
53
55
  </workflow>
54
56
  ```
55
57
 
56
- That's it! To execute, tell the BMAD agent: `workflow my-workflow`
58
+ That's it! To execute, tell the BMAD agent: `workflow path/to/my-workflow/`
57
59
 
58
60
  ## Core Concepts
59
61
 
60
62
  ### Tasks vs Workflows
61
63
 
62
- | Aspect | Task | Workflow |
63
- | -------------- | ------------------ | ----------------------- |
64
- | **Purpose** | Single operation | Multi-step process |
65
- | **Format** | XML in `.md` file | Folder with YAML config |
66
- | **Location** | `/src/core/tasks/` | `/bmad/*/workflows/` |
67
- | **User Input** | Minimal | Extensive |
68
- | **Output** | Variable | Usually documents |
64
+ | Aspect | Task | Workflow |
65
+ | -------------- | ------------------ | ----------------------------- |
66
+ | **Purpose** | Single operation | Multi-step process |
67
+ | **Format** | XML | Folder with YAML config |
68
+ | **Location** | `/src/core/tasks/` | `/{bmad_folder}/*/workflows/` |
69
+ | **User Input** | Minimal | Extensive |
70
+ | **Output** | Variable | Usually documents |
69
71
 
70
72
  ### Workflow Types
71
73
 
@@ -91,7 +93,7 @@ my-workflow/
91
93
  ├── template.md # Document structure
92
94
  ├── instructions.md # Step-by-step guide
93
95
  ├── checklist.md # Validation criteria
94
- └── [data files] # Supporting resources
96
+ └── [data files] # Supporting resources, xml, md, csv or others
95
97
  ```
96
98
 
97
99
  ### workflow.yaml Configuration
@@ -102,7 +104,7 @@ name: 'workflow-name'
102
104
  description: 'Clear purpose statement'
103
105
 
104
106
  # Paths
105
- installed_path: '{project-root}/bmad/module/workflows/name'
107
+ installed_path: '{project-root}/{bmad_folder}/module/workflows/name'
106
108
  template: '{installed_path}/template.md' # or false
107
109
  instructions: '{installed_path}/instructions.md' # or false
108
110
  validation: '{installed_path}/checklist.md' # optional
@@ -111,11 +113,121 @@ validation: '{installed_path}/checklist.md' # optional
111
113
  default_output_file: '{output_folder}/document.md'
112
114
 
113
115
  # Advanced options
114
- autonomous: true # Skip user checkpoints
115
116
  recommended_inputs: # Expected input docs
116
117
  - input_doc: 'path/to/doc.md'
118
+
119
+ # Invocation control
120
+ standalone: true # Can be invoked directly (default: true)
121
+ ```
122
+
123
+ ### Standalone Property: Invocation Control
124
+
125
+ **CRITICAL**: The `standalone` property controls whether a workflow, task, or tool can be invoked independently or must be called through an agent's menu.
126
+
127
+ #### For Workflows (workflow.yaml)
128
+
129
+ ```yaml
130
+ standalone: true # Can invoke directly: /workflow-name or via IDE command
131
+ standalone: false # Must be called from an agent menu or another workflow
132
+ ```
133
+
134
+ **When to use `standalone: true` (DEFAULT)**:
135
+
136
+ - ✅ User-facing workflows that should be directly accessible
137
+ - ✅ Workflows invoked via IDE commands or CLI
138
+ - ✅ Workflows that users will run independently
139
+ - ✅ Most document generation workflows (PRD, architecture, etc.)
140
+ - ✅ Action workflows users trigger directly (refactor, analyze, etc.)
141
+ - ✅ Entry-point workflows for a module
142
+
143
+ **When to use `standalone: false`**:
144
+
145
+ - ✅ Sub-workflows only called by other workflows (via `<invoke-workflow>`)
146
+ - ✅ Internal utility workflows not meant for direct user access
147
+ - ✅ Workflows that require specific context from parent workflow
148
+ - ✅ Helper workflows that don't make sense alone
149
+
150
+ **Examples**:
151
+
152
+ ```yaml
153
+ # Standalone: User invokes directly
154
+ name: 'plan-project'
155
+ description: 'Create PRD/GDD for any project'
156
+ standalone: true # Users run this directly
157
+
158
+ ---
159
+ # Non-standalone: Only called by parent workflow
160
+ name: 'validate-requirements'
161
+ description: 'Internal validation helper for PRD workflow'
162
+ standalone: false # Only invoked by plan-project workflow
163
+ ```
164
+
165
+ #### For Tasks and Tools (XML files)
166
+
167
+ Tasks and tools in `src/core/tasks/` and `src/core/tools/` also support the standalone attribute:
168
+
169
+ ```xml
170
+ <!-- Standalone task: Can be invoked directly -->
171
+ <task name="workflow" standalone="true">
172
+ <!-- Task definition -->
173
+ </task>
174
+
175
+ <!-- Non-standalone: Only called by workflows/agents -->
176
+ <tool name="internal-helper" standalone="false">
177
+ <!-- Tool definition -->
178
+ </tool>
179
+ ```
180
+
181
+ **Task/Tool Standalone Guidelines**:
182
+
183
+ - `standalone="true"`: Core tasks like workflow.xml, create-doc.xml that users/agents invoke directly
184
+ - `standalone="false"`: Internal helpers, utilities only called by other tasks/workflows
185
+
186
+ #### Default Behavior
187
+
188
+ **If standalone property is omitted**:
189
+
190
+ - Workflows: Default to `standalone: true` (accessible directly)
191
+ - Tasks/Tools: Default to `standalone: true` (accessible directly)
192
+
193
+ **Best Practice**: Explicitly set standalone even if using default to make intent clear.
194
+
195
+ #### Invocation Patterns
196
+
197
+ **Standalone workflows can be invoked**:
198
+
199
+ 1. Directly by users: `/workflow-name` or IDE command
200
+ 2. From agent menus: `workflow: "{path}/workflow.yaml"`
201
+ 3. From other workflows: `<invoke-workflow path="{path}/workflow.yaml">`
202
+
203
+ **Non-standalone workflows**:
204
+
205
+ 1. ❌ Cannot be invoked directly by users
206
+ 2. ❌ Cannot be called from IDE commands
207
+ 3. ✅ Can be invoked by other workflows via `<invoke-workflow>`
208
+ 4. ✅ Can be called from agent menu items
209
+
210
+ #### Module Design Implications
211
+
212
+ **Typical Module Pattern**:
213
+
214
+ ```yaml
215
+ # Entry-point workflows: standalone: true
216
+ bmm/workflows/plan-project/workflow.yaml → standalone: true
217
+ bmm/workflows/architecture/workflow.yaml → standalone: true
218
+
219
+ # Helper workflows: standalone: false
220
+ bmm/workflows/internal/validate-epic/workflow.yaml → standalone: false
221
+ bmm/workflows/internal/format-story/workflow.yaml → standalone: false
117
222
  ```
118
223
 
224
+ **Benefits of this pattern**:
225
+
226
+ - Clear separation between user-facing and internal workflows
227
+ - Prevents users from accidentally invoking incomplete/internal workflows
228
+ - Cleaner IDE command palette (only shows standalone workflows)
229
+ - Better encapsulation and maintainability
230
+
119
231
  ### Common Patterns
120
232
 
121
233
  **Full Document Workflow** (most common)
@@ -135,12 +247,401 @@ recommended_inputs: # Expected input docs
135
247
 
136
248
  ## Writing Instructions
137
249
 
250
+ ### Instruction Styles: Intent-Based vs Prescriptive
251
+
252
+ **CRITICAL DESIGN DECISION**: Choose your instruction style early - it fundamentally shapes the user experience.
253
+
254
+ #### Default Recommendation: Intent-Based (Adaptive)
255
+
256
+ **Intent-based workflows give the AI goals and principles, letting it adapt the conversation naturally to the user's context.** This is the BMAD v6 default for most workflows.
257
+
258
+ #### The Two Approaches
259
+
260
+ ##### 1. Intent-Based Instructions (RECOMMENDED)
261
+
262
+ **What it is**: Guide the AI with goals, principles, and context - let it determine the best way to interact with each user.
263
+
264
+ **Characteristics**:
265
+
266
+ - Uses `<action>` tags with guiding instructions
267
+ - Focuses on WHAT to accomplish and WHY it matters
268
+ - Lets AI adapt conversation to user needs
269
+ - More flexible and conversational
270
+ - Better for complex discovery and iterative refinement
271
+
272
+ **When to use**:
273
+
274
+ - Complex discovery processes (requirements gathering, architecture design)
275
+ - Creative brainstorming and ideation
276
+ - Iterative refinement workflows
277
+ - When user input quality matters more than consistency
278
+ - Workflows requiring adaptation to context
279
+ - Teaching/educational workflows
280
+ - When users have varying skill levels
281
+
282
+ **Example**:
283
+
284
+ ```xml
285
+ <step n="2" goal="Understand user's target audience">
286
+ <action>Engage in collaborative discovery to understand their target users:
287
+
288
+ Ask open-ended questions to explore:
289
+ - Who will use this product?
290
+ - What problems do they face?
291
+ - What are their goals and motivations?
292
+ - How tech-savvy are they?
293
+
294
+ Listen for clues about:
295
+ - Demographics and characteristics
296
+ - Pain points and needs
297
+ - Current solutions they use
298
+ - Unmet needs or frustrations
299
+
300
+ Adapt your depth and terminology to the user's responses.
301
+ If they give brief answers, dig deeper with follow-ups.
302
+ If they're uncertain, help them think through it with examples.
303
+ </action>
304
+
305
+ <template-output>target_audience</template-output>
306
+ </step>
307
+ ```
308
+
309
+ **Intent-based workflow adapts**:
310
+
311
+ - **Expert user** might get: "Tell me about your target users - demographics, pain points, and technical profile?"
312
+ - **Beginner user** might get: "Let's talk about who will use this. Imagine your ideal customer - what do they look like? What problem are they trying to solve?"
313
+
314
+ ##### 2. Prescriptive Instructions (Use Selectively)
315
+
316
+ **What it is**: Provide exact wording for questions and specific options for answers.
317
+
318
+ **Characteristics**:
319
+
320
+ - Uses `<ask>` tags with exact question text
321
+ - Provides specific options or formats
322
+ - More controlled and predictable
323
+ - Ensures consistency across runs
324
+ - Better for simple data collection or compliance needs
325
+
326
+ **When to use**:
327
+
328
+ - Simple data collection (platform choice, format selection)
329
+ - Compliance verification and standards adherence
330
+ - Configuration with finite, well-defined options
331
+ - When consistency is critical across all executions
332
+ - Quick setup wizards
333
+ - Binary decisions (yes/no, enable/disable)
334
+ - When gathering specific required fields
335
+
336
+ **Example**:
337
+
338
+ ```xml
339
+ <step n="3" goal="Select target platform">
340
+ <ask>What is your target platform?
341
+
342
+ 1. Web (browser-based application)
343
+ 2. Mobile (iOS/Android native apps)
344
+ 3. Desktop (Windows/Mac/Linux applications)
345
+ 4. CLI (command-line tool)
346
+ 5. API (backend service)
347
+
348
+ Enter the number (1-5):</ask>
349
+
350
+ <action>Store the platform choice as {{target_platform}}</action>
351
+ <template-output>target_platform</template-output>
352
+ </step>
353
+ ```
354
+
355
+ **Prescriptive workflow stays consistent** - every user gets the same 5 options in the same format.
356
+
357
+ #### Best Practice: Mix Both Styles
358
+
359
+ **Even predominantly intent-based workflows should use prescriptive moments** for simple choices. Even prescriptive workflows can have intent-based discovery.
360
+
361
+ **Example of effective mixing**:
362
+
363
+ ```xml
364
+ <!-- Intent-based: Complex discovery -->
365
+ <step n="1" goal="Understand user vision">
366
+ <action>Explore the user's vision through open conversation:
367
+
368
+ Help them articulate:
369
+ - The core problem they're solving
370
+ - Their unique approach or innovation
371
+ - The experience they want to create
372
+
373
+ Adapt your questions based on their expertise and communication style.
374
+ If they're visionary, explore the "why". If they're technical, explore the "how".
375
+ </action>
376
+ <template-output>vision</template-output>
377
+ </step>
378
+
379
+ <!-- Prescriptive: Simple data -->
380
+ <step n="2" goal="Capture basic metadata">
381
+ <ask>What is your target platform? Choose one:
382
+ - Web
383
+ - Mobile
384
+ - Desktop
385
+ - CLI
386
+ - API</ask>
387
+
388
+ <action>Store as {{platform}}</action>
389
+ </step>
390
+
391
+ <!-- Intent-based: Deep exploration -->
392
+ <step n="3" goal="Design user experience">
393
+ <action>Facilitate collaborative UX design:
394
+
395
+ Guide them to explore:
396
+ - User journey and key flows
397
+ - Interaction patterns and affordances
398
+ - Visual/aesthetic direction
399
+
400
+ Use their platform choice from step 2 to inform relevant patterns.
401
+ For web: discuss responsive design. For mobile: touch interactions. Etc.
402
+ </action>
403
+ <template-output>ux_design</template-output>
404
+ </step>
405
+ ```
406
+
407
+ #### Interactivity Levels
408
+
409
+ Beyond style (intent vs prescriptive), consider **how interactive** your workflow should be:
410
+
411
+ ##### High Interactivity (Collaborative)
412
+
413
+ - Constant back-and-forth with user
414
+ - Multiple asks per step
415
+ - Iterative refinement and review
416
+ - User guides the direction
417
+ - **Best for**: Creative work, complex decisions, learning
418
+
419
+ **Example**:
420
+
421
+ ```xml
422
+ <step n="4" goal="Design feature set" repeat="until-satisfied">
423
+ <action>Collaborate on feature definitions:
424
+
425
+ For each feature the user proposes:
426
+ - Help them articulate it clearly
427
+ - Explore edge cases together
428
+ - Consider implications and dependencies
429
+ - Refine the description iteratively
430
+
431
+ After each feature: "Want to refine this, add another, or move on?"
432
+ </action>
433
+ </step>
434
+ ```
435
+
436
+ ##### Medium Interactivity (Guided)
437
+
438
+ - Key decision points have interaction
439
+ - AI proposes, user confirms or refines
440
+ - Validation checkpoints
441
+ - **Best for**: Most document workflows, structured processes
442
+
443
+ **Example**:
444
+
445
+ ```xml
446
+ <step n="5" goal="Generate architecture decisions">
447
+ <action>Based on the PRD, identify 10-15 key architectural decisions needed</action>
448
+ <action>For each decision, research options and present recommendation</action>
449
+ <ask>Approve this decision or propose alternative?</ask>
450
+ <action>Record decision and rationale</action>
451
+ </step>
452
+ ```
453
+
454
+ ##### Low Interactivity (Autonomous)
455
+
456
+ - Minimal user input required
457
+ - AI works independently with guidelines
458
+ - User reviews final output
459
+ - **Best for**: Automated generation, batch processing
460
+
461
+ **Example**:
462
+
463
+ ```xml
464
+ <step n="6" goal="Generate user stories">
465
+ <action>For each epic in the PRD, generate 3-7 user stories following this pattern:
466
+ - As a [user type]
467
+ - I want to [action]
468
+ - So that [benefit]
469
+
470
+ Ensure stories are:
471
+ - Independently valuable
472
+ - Testable
473
+ - Sized appropriately (1-5 days of work)
474
+ </action>
475
+
476
+ <template-output>user_stories</template-output>
477
+ </step>
478
+
479
+ <step n="7" goal="Review generated stories">
480
+ <ask>Review the generated user stories. Want to refine any? (y/n)</ask>
481
+ <check if="yes">
482
+ <goto step="6">Regenerate with feedback</goto>
483
+ </check>
484
+ </step>
485
+ ```
486
+
487
+ #### Decision Framework
488
+
489
+ **Choose Intent-Based when**:
490
+
491
+ - ✅ User knowledge/skill level varies
492
+ - ✅ Context matters (one-size-fits-all won't work)
493
+ - ✅ Discovery and exploration are important
494
+ - ✅ Quality of input matters more than consistency
495
+ - ✅ Teaching/education is part of the goal
496
+ - ✅ Iteration and refinement expected
497
+
498
+ **Choose Prescriptive when**:
499
+
500
+ - ✅ Options are finite and well-defined
501
+ - ✅ Consistency across users is critical
502
+ - ✅ Compliance or standards matter
503
+ - ✅ Simple data collection
504
+ - ✅ Users just need to make a choice and move on
505
+ - ✅ Speed matters more than depth
506
+
507
+ **Choose High Interactivity when**:
508
+
509
+ - ✅ User expertise is essential
510
+ - ✅ Creative collaboration needed
511
+ - ✅ Decisions have major implications
512
+ - ✅ Learning and understanding matter
513
+ - ✅ Iteration is expected
514
+
515
+ **Choose Low Interactivity when**:
516
+
517
+ - ✅ Process is well-defined and repeatable
518
+ - ✅ AI can work autonomously with clear guidelines
519
+ - ✅ User time is constrained
520
+ - ✅ Batch processing or automation desired
521
+ - ✅ Review-and-refine model works
522
+
523
+ #### Implementation Guidelines
524
+
525
+ **For Intent-Based Workflows**:
526
+
527
+ 1. **Use `<action>` tags with guiding instructions**
528
+
529
+ ```xml
530
+ <action>Facilitate discovery of {{topic}}:
531
+
532
+ Ask open-ended questions to explore:
533
+ - {{aspect_1}}
534
+ - {{aspect_2}}
535
+
536
+ Listen for clues about {{patterns_to_notice}}.
537
+
538
+ Adapt your approach based on their {{context_factor}}.
539
+ </action>
540
+ ```
541
+
542
+ 2. **Provide principles, not scripts**
543
+
544
+ ```xml
545
+ <!-- ✅ Good: Principles -->
546
+ <action>Help user articulate their unique value proposition.
547
+ Focus on what makes them different, not just what they do.
548
+ If they struggle, offer examples from analogous domains.</action>
549
+
550
+ <!-- ❌ Avoid: Prescriptive script -->
551
+ <ask>What makes your product unique? Provide 2-3 bullet points.</ask>
552
+ ```
553
+
554
+ 3. **Guide with context and rationale**
555
+
556
+ ```xml
557
+ <action>Now that we understand their {{context_from_previous}},
558
+ explore how {{current_topic}} connects to their vision.
559
+
560
+ This matters because {{reason_it_matters}}.
561
+
562
+ If they seem uncertain about {{potential_challenge}}, help them think through {{approach}}.
563
+ </action>
564
+ ```
565
+
566
+ **For Prescriptive Workflows**:
567
+
568
+ 1. **Use `<ask>` tags with specific questions**
569
+
570
+ ```xml
571
+ <ask>Select your preferred database:
572
+ 1. PostgreSQL
573
+ 2. MySQL
574
+ 3. MongoDB
575
+ 4. SQLite
576
+
577
+ Enter number (1-4):</ask>
578
+ ```
579
+
580
+ 2. **Provide clear options and formats**
581
+
582
+ ```xml
583
+ <ask>Enable user authentication? (yes/no)</ask>
584
+ <ask>Enter project name (lowercase, no spaces):</ask>
585
+ ```
586
+
587
+ 3. **Keep it crisp and clear**
588
+
589
+ ```xml
590
+ <!-- ✅ Good: Clear and direct -->
591
+ <ask>Target platform? (web/mobile/desktop)</ask>
592
+
593
+ <!-- ❌ Avoid: Over-explaining -->
594
+ <ask>We need to know what platform you're building for. This will affect
595
+ the technology stack recommendations. Please choose: web, mobile, or desktop.</ask>
596
+ ```
597
+
598
+ #### Mixing Styles Within a Workflow
599
+
600
+ **Pattern: Intent-based discovery → Prescriptive capture → Intent-based refinement**
601
+
602
+ ```xml
603
+ <step n="1" goal="Explore user needs">
604
+ <!-- Intent-based discovery -->
605
+ <action>Engage in open conversation to understand user needs deeply...</action>
606
+ </step>
607
+
608
+ <step n="2" goal="Capture key metrics">
609
+ <!-- Prescriptive data collection -->
610
+ <ask>Expected daily active users? (number)</ask>
611
+ <ask>Data sensitivity level? (public/internal/sensitive/highly-sensitive)</ask>
612
+ </step>
613
+
614
+ <step n="3" goal="Design solution approach">
615
+ <!-- Intent-based design -->
616
+ <action>Collaborate on solution design, using the metrics from step 2 to inform scale and security decisions...</action>
617
+ </step>
618
+ ```
619
+
620
+ **Pattern: Prescriptive setup → Intent-based execution**
621
+
622
+ ```xml
623
+ <step n="1" goal="Quick setup">
624
+ <!-- Prescriptive configuration -->
625
+ <ask>Project type? (web-app/api/cli/library)</ask>
626
+ <ask>Language? (typescript/python/go/rust)</ask>
627
+ </step>
628
+
629
+ <step n="2" goal="Detailed design">
630
+ <!-- Intent-based design -->
631
+ <action>Now that we know it's a {{project_type}} in {{language}},
632
+ let's explore the architecture in detail.
633
+
634
+ Guide them through design decisions appropriate for a {{project_type}}...
635
+ </action>
636
+ </step>
637
+ ```
638
+
138
639
  ### Basic Structure
139
640
 
140
641
  ```markdown
141
642
  # instructions.md
142
643
 
143
- <critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.md</critical>
644
+ <critical>The workflow execution engine is governed by: {project_root}/{bmad_folder}/core/tasks/workflow.xml</critical>
144
645
  <critical>You MUST have already loaded and processed: workflow.yaml</critical>
145
646
 
146
647
  <workflow>
@@ -186,13 +687,14 @@ Write 1-3 bullet points about project success:
186
687
  ```xml
187
688
  <step n="2" goal="Validate input">
188
689
  <action>Load validation criteria</action>
189
- <check>If validation fails:</check>
190
- <goto step="1">Return to previous step</goto>
690
+ <check if="validation fails">
691
+ <goto step="1">Return to previous step</goto>
692
+ </check>
191
693
  <template-output>validated_data</template-output>
192
694
  </step>
193
695
  ```
194
696
 
195
- ## Templates & Variables
697
+ ## Templates and Variables
196
698
 
197
699
  ### Variable Syntax
198
700
 
@@ -257,26 +759,84 @@ _Generated on {{date}}_
257
759
  </step>
258
760
  ```
259
761
 
260
- ### Branching & Goto
762
+ ### Conditional Execution
763
+
764
+ **Single Action (use `action if=""`):**
765
+
766
+ ```xml
767
+ <step n="6" goal="Load context">
768
+ <action if="file exists">Load existing document</action>
769
+ <action if="new project">Initialize from template</action>
770
+ </step>
771
+ ```
772
+
773
+ **Multiple Actions (use `<check if="">...</check>`):**
261
774
 
262
775
  ```xml
263
776
  <step n="7" goal="Validate">
264
777
  <action>Check requirements</action>
265
- <check>If incomplete:</check>
266
- <goto step="2">Return to gathering</goto>
267
- <check>If complete:</check>
268
- <continue>Proceed</continue>
778
+ <check if="incomplete">
779
+ <action>Log validation errors</action>
780
+ <goto step="2">Return to gathering</goto>
781
+ </check>
782
+ <check if="complete">
783
+ <action>Mark as validated</action>
784
+ <continue>Proceed</continue>
785
+ </check>
269
786
  </step>
270
787
  ```
271
788
 
789
+ **When to use which:**
790
+
791
+ - **`<action if="">`** - Single conditional action (cleaner, more concise)
792
+ - **`<check if="">...</check>`** - Multiple items under same condition (explicit scope)
793
+
794
+ **❌ CRITICAL ANTIPATTERN - DO NOT USE:**
795
+
796
+ **Invalid self-closing check tags:**
797
+
798
+ ```xml
799
+ <!-- ❌ WRONG - Invalid XML structure -->
800
+ <check>If condition met:</check>
801
+ <action>Do something</action>
802
+
803
+ <!-- ❌ WRONG - Ambiguous nesting -->
804
+ <check>If validation fails:</check>
805
+ <action>Log error</action>
806
+ <goto step="1">Retry</goto>
807
+ ```
808
+
809
+ **Why this is wrong:**
810
+
811
+ - Creates invalid XML structure (check tag doesn't wrap anything)
812
+ - Ambiguous - unclear if actions are inside or outside the condition
813
+ - Breaks formatter and parser logic
814
+ - Not part of BMAD workflow spec
815
+
816
+ **✅ CORRECT alternatives:**
817
+
818
+ ```xml
819
+ <!-- ✅ Single action - use inline if -->
820
+ <action if="condition met">Do something</action>
821
+
822
+ <!-- ✅ Multiple actions - use proper wrapper block -->
823
+ <check if="validation fails">
824
+ <action>Log error</action>
825
+ <goto step="1">Retry</goto>
826
+ </check>
827
+ ```
828
+
829
+ **Rule:** If you have only ONE conditional action, use `<action if="">`. If you have MULTIPLE conditional actions, use `<check if="">...</check>` wrapper with a closing tag.
830
+
272
831
  ### Loops
273
832
 
274
833
  ```xml
275
834
  <step n="8" goal="Refine">
276
835
  <loop max="5">
277
836
  <action>Generate solution</action>
278
- <check>If criteria met:</check>
279
- <break>Exit loop</break>
837
+ <check if="criteria met">
838
+ <break>Exit loop</break>
839
+ </check>
280
840
  </loop>
281
841
  </step>
282
842
  ```
@@ -286,7 +846,8 @@ _Generated on {{date}}_
286
846
  **Execution:**
287
847
 
288
848
  - `<action>` - Required action
289
- - `<check>` - Conditional check
849
+ - `<action if="condition">` - Single conditional action (inline)
850
+ - `<check if="condition">...</check>` - Conditional block for multiple items (requires closing tag)
290
851
  - `<ask>` - User prompt
291
852
  - `<goto>` - Jump to step
292
853
  - `<invoke-workflow>` - Call another workflow
@@ -294,7 +855,6 @@ _Generated on {{date}}_
294
855
  **Output:**
295
856
 
296
857
  - `<template-output>` - Save checkpoint
297
- - `<elicit-required/>` - Trigger AI enhancement
298
858
  - `<critical>` - Important info
299
859
  - `<example>` - Show example
300
860
 
@@ -335,21 +895,20 @@ _Generated on {{date}}_
335
895
 
336
896
  ```xml
337
897
  <workflow>
338
- <step n="1" goal="Gather context">
339
- Load existing documents and understand project scope.
340
- <template-output>context</template-output>
341
- </step>
898
+ <step n="1" goal="Gather context">
899
+ Load existing documents and understand project scope.
900
+ <template-output>context</template-output>
901
+ </step>
342
902
 
343
- <step n="2" goal="Define requirements">
344
- Create functional and non-functional requirements.
345
- <template-output>requirements</template-output>
346
- <elicit-required/>
347
- </step>
903
+ <step n="2" goal="Define requirements">
904
+ Create functional and non-functional requirements.
905
+ <template-output>requirements</template-output>
906
+ </step>
348
907
 
349
- <step n="3" goal="Validate">
350
- Check requirements against goals.
351
- <template-output>validated_requirements</template-output>
352
- </step>
908
+ <step n="3" goal="Validate">
909
+ Check requirements against goals.
910
+ <template-output>validated_requirements</template-output>
911
+ </step>
353
912
  </workflow>
354
913
  ```
355
914
 
@@ -370,8 +929,9 @@ Check requirements against goals.
370
929
 
371
930
  <step n="3" goal="Verify">
372
931
  <action>Run tests</action>
373
- <check>If tests fail:</check>
374
- <goto step="2">Fix issues</goto>
932
+ <check if="tests fail">
933
+ <goto step="2">Fix issues</goto>
934
+ </check>
375
935
  </step>
376
936
  </workflow>
377
937
  ```
@@ -380,20 +940,20 @@ Check requirements against goals.
380
940
 
381
941
  ```xml
382
942
  <workflow name="greenfield-app">
383
- <step n="1" goal="Discovery">
384
- <invoke-workflow>product-brief</invoke-workflow>
385
- <template-output>brief</template-output>
386
- </step>
943
+ <step n="1" goal="Discovery">
944
+ <invoke-workflow>product-brief</invoke-workflow>
945
+ <template-output>brief</template-output>
946
+ </step>
387
947
 
388
- <step n="2" goal="Requirements">
389
- <invoke-workflow input="{{brief}}">prd</invoke-workflow>
390
- <template-output>prd</template-output>
391
- </step>
948
+ <step n="2" goal="Requirements">
949
+ <invoke-workflow input="{{brief}}">prd</invoke-workflow>
950
+ <template-output>prd</template-output>
951
+ </step>
392
952
 
393
- <step n="3" goal="Architecture">
394
- <invoke-workflow input="{{prd}}">architecture</invoke-workflow>
395
- <template-output>architecture</template-output>
396
- </step>
953
+ <step n="3" goal="Architecture">
954
+ <invoke-workflow input="{{prd}}">architecture</invoke-workflow>
955
+ <template-output>architecture</template-output>
956
+ </step>
397
957
  </workflow>
398
958
  ```
399
959
 
@@ -402,9 +962,9 @@ Check requirements against goals.
402
962
  ### Design Principles
403
963
 
404
964
  1. **Keep steps focused** - Single goal per step
405
- 2. **Limit scope** - 5-10 steps maximum
965
+ 2. **Limit scope** - 5-12 steps maximum
406
966
  3. **Build progressively** - Start simple, add detail
407
- 4. **Checkpoint often** - Save after major sections
967
+ 4. **Checkpoint often** - Save after major workflow sections and ensure documents are being drafted from the start
408
968
  5. **Make sections optional** - Let users skip when appropriate
409
969
 
410
970
  ### Instruction Guidelines
@@ -414,6 +974,61 @@ Check requirements against goals.
414
974
  3. **Set limits** - "3-5 items maximum"
415
975
  4. **Explain why** - Context helps AI make better decisions
416
976
 
977
+ ### Time Estimate Prohibition
978
+
979
+ **CRITICAL:** For all planning, analysis, and estimation workflows, include this prohibition:
980
+
981
+ ```xml
982
+ <critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
983
+ ```
984
+
985
+ **When to include this:**
986
+
987
+ - Planning workflows (PRDs, tech specs, architecture)
988
+ - Analysis workflows (research, brainstorming, product briefs)
989
+ - Retrospective workflows (reviews, post-mortems)
990
+ - Any workflow discussing project scope or complexity
991
+
992
+ **When NOT needed:**
993
+
994
+ - Pure implementation workflows (code generation, refactoring)
995
+ - Simple action workflows (file operations, status updates)
996
+ - Workflows that only process existing data
997
+
998
+ ### Conditional Execution Best Practices
999
+
1000
+ **✅ DO:**
1001
+
1002
+ - Use `<action if="">` for single conditional actions
1003
+ - Use `<check if="">...</check>` for blocks with multiple items
1004
+ - Always close `<check>` tags explicitly
1005
+ - Keep conditions simple and readable
1006
+
1007
+ **❌ DON'T:**
1008
+
1009
+ - Wrap single actions in `<check>` blocks (unnecessarily verbose)
1010
+ - Forget to close `<check>` tags
1011
+ - Nest too many levels (makes logic hard to follow)
1012
+
1013
+ **Examples:**
1014
+
1015
+ ```xml
1016
+ <!-- ✅ Good: Single action -->
1017
+ <action if="file exists">Load configuration</action>
1018
+
1019
+ <!-- ❌ Avoid: Unnecessary wrapper for single action -->
1020
+ <check if="file exists">
1021
+ <action>Load configuration</action>
1022
+ </check>
1023
+
1024
+ <!-- ✅ Good: Multiple actions in block -->
1025
+ <check if="validation fails">
1026
+ <action>Log error details</action>
1027
+ <action>Notify user</action>
1028
+ <goto step="1">Retry input</goto>
1029
+ </check>
1030
+ ```
1031
+
417
1032
  ### Common Pitfalls
418
1033
 
419
1034
  - **Missing critical headers** - Always include workflow engine references
@@ -421,6 +1036,267 @@ Check requirements against goals.
421
1036
  - **Too many steps** - Combine related actions
422
1037
  - **No checkpoints** - Add `<template-output>` tags
423
1038
  - **Vague instructions** - Be explicit about expectations
1039
+ - **Unclosed check tags** - Always close `<check if="">...</check>` blocks
1040
+ - **Wrong conditional pattern** - Use `<action if="">` for single items, `<check if="">` for blocks
1041
+
1042
+ ## Document Sharding Support
1043
+
1044
+ If your workflow loads large planning documents (PRDs, epics, architecture, etc.), implement sharding support for efficiency.
1045
+
1046
+ ### What is Document Sharding?
1047
+
1048
+ Document sharding splits large markdown files into smaller section-based files:
1049
+
1050
+ - `PRD.md` (50k tokens) → `prd/epic-1.md`, `prd/epic-2.md`, etc.
1051
+ - Enables selective loading (90%+ token savings)
1052
+ - All BMM workflows support both whole and sharded documents
1053
+
1054
+ ### When to Add Sharding Support
1055
+
1056
+ **Add sharding support if your workflow:**
1057
+
1058
+ - Loads planning documents (PRD, epics, architecture, UX specs)
1059
+ - May be used in large multi-epic projects
1060
+ - Processes documents that could exceed 20k tokens
1061
+ - Would benefit from selective section loading
1062
+
1063
+ **Skip sharding support if your workflow:**
1064
+
1065
+ - Only generates small documents
1066
+ - Doesn't load external documents
1067
+ - Works with code files (not planning docs)
1068
+
1069
+ ### Implementation Pattern
1070
+
1071
+ #### 1. Add input_file_patterns to workflow.yaml
1072
+
1073
+ ```yaml
1074
+ # Smart input file references - handles both whole docs and sharded docs
1075
+ # Priority: Whole document first, then sharded version
1076
+ input_file_patterns:
1077
+ prd:
1078
+ whole: '{output_folder}/*prd*.md'
1079
+ sharded: '{output_folder}/*prd*/index.md'
1080
+
1081
+ epics:
1082
+ whole: '{output_folder}/*epic*.md'
1083
+ sharded_index: '{output_folder}/*epic*/index.md'
1084
+ sharded_single: '{output_folder}/*epic*/epic-{{epic_num}}.md' # For selective load
1085
+
1086
+ architecture:
1087
+ whole: '{output_folder}/*architecture*.md'
1088
+ sharded: '{output_folder}/*architecture*/index.md'
1089
+
1090
+ document_project:
1091
+ sharded: '{output_folder}/index.md' # Brownfield always uses index
1092
+ ```
1093
+
1094
+ #### 2. Add Discovery Instructions to instructions.md
1095
+
1096
+ Place early in instructions (after critical declarations, before workflow steps):
1097
+
1098
+ ```markdown
1099
+ ## 📚 Document Discovery
1100
+
1101
+ This workflow requires: [list required documents]
1102
+
1103
+ **Discovery Process** (execute for each document):
1104
+
1105
+ 1. **Search for whole document first** - Use fuzzy file matching
1106
+ 2. **Check for sharded version** - If whole document not found, look for `{doc-name}/index.md`
1107
+ 3. **If sharded version found**:
1108
+ - Read `index.md` to understand the document structure
1109
+ - Read ALL section files listed in the index (or specific sections for selective load)
1110
+ - Treat the combined content as if it were a single document
1111
+ 4. **Brownfield projects**: The `document-project` workflow creates `{output_folder}/index.md`
1112
+
1113
+ **Priority**: If both whole and sharded versions exist, use the whole document.
1114
+
1115
+ **Fuzzy matching**: Be flexible with document names - users may use variations.
1116
+ ```
1117
+
1118
+ #### 3. Choose Loading Strategy
1119
+
1120
+ **Full Load Strategy** (most workflows):
1121
+
1122
+ ```xml
1123
+ <action>Search for document using fuzzy pattern: {output_folder}/*prd*.md</action>
1124
+ <action>If not found, check for sharded version: {output_folder}/*prd*/index.md</action>
1125
+ <action if="sharded found">Read index.md to understand structure</action>
1126
+ <action if="sharded found">Read ALL section files listed in index</action>
1127
+ <action if="sharded found">Combine content as single document</action>
1128
+ ```
1129
+
1130
+ **Selective Load Strategy** (advanced - for phase 4 type workflows):
1131
+
1132
+ ```xml
1133
+ <action>Determine section needed (e.g., epic_num from story key)</action>
1134
+ <action>Check for sharded version: {output_folder}/*epics*/index.md</action>
1135
+ <action if="sharded found">Read ONLY the specific section file: epics/epic-{{epic_num}}.md</action>
1136
+ <action if="sharded found">Skip all other section files (efficiency optimization)</action>
1137
+ <action if="whole document found">Load complete document and extract relevant section</action>
1138
+ ```
1139
+
1140
+ ### Pattern Examples
1141
+
1142
+ **Example 1: Simple Full Load**
1143
+
1144
+ ```yaml
1145
+ # workflow.yaml
1146
+ input_file_patterns:
1147
+ requirements:
1148
+ whole: '{output_folder}/*requirements*.md'
1149
+ sharded: '{output_folder}/*requirements*/index.md'
1150
+ ```
1151
+
1152
+ ```markdown
1153
+ <!-- instructions.md -->
1154
+
1155
+ ## Document Discovery
1156
+
1157
+ Load requirements document (whole or sharded).
1158
+
1159
+ 1. Try whole: _requirements_.md
1160
+ 2. If not found, try sharded: _requirements_/index.md
1161
+ 3. If sharded: Read index + ALL section files
1162
+ ```
1163
+
1164
+ **Example 2: Selective Load with Epic Number**
1165
+
1166
+ ```yaml
1167
+ # workflow.yaml
1168
+ input_file_patterns:
1169
+ epics:
1170
+ whole: '{output_folder}/*epic*.md'
1171
+ sharded_single: '{output_folder}/*epic*/epic-{{epic_num}}.md'
1172
+ ```
1173
+
1174
+ ```xml
1175
+ <!-- instructions.md step -->
1176
+ <step n="2" goal="Load Epic Content">
1177
+ <action>Extract epic number from story key (e.g., "3-2-feature" → epic_num = 3)</action>
1178
+ <action>Check for sharded epics: {output_folder}/*epic*/index.md</action>
1179
+ <action if="sharded found">Load ONLY epics/epic-{{epic_num}}.md (selective optimization)</action>
1180
+ <action if="whole document found">Load full epics.md and extract Epic {{epic_num}}</action>
1181
+ </step>
1182
+ ```
1183
+
1184
+ ### Testing Your Sharding Support
1185
+
1186
+ 1. **Test with whole document**: Verify workflow works with single `document.md`
1187
+ 2. **Test with sharded document**: Create sharded version and verify discovery
1188
+ 3. **Test with both present**: Ensure whole document takes priority
1189
+ 4. **Test selective loading**: Verify only needed sections are loaded (if applicable)
1190
+
1191
+ ### Complete Reference
1192
+
1193
+ **[→ Document Sharding Guide](../../../../docs/document-sharding-guide.md)** - Comprehensive guide with examples
1194
+
1195
+ **BMM Examples**:
1196
+
1197
+ - Full Load: `src/modules/bmm/workflows/2-plan-workflows/prd/`
1198
+ - Selective Load: `src/modules/bmm/workflows/4-implementation/epic-tech-context/`
1199
+
1200
+ ## Web Bundles
1201
+
1202
+ Web bundles allow workflows to be deployed as self-contained packages for web environments.
1203
+
1204
+ ### When to Use Web Bundles
1205
+
1206
+ - Deploying workflows to web-based AI platforms
1207
+ - Creating shareable workflow packages
1208
+ - Ensuring workflow portability without dependencies
1209
+ - Publishing workflows for public use
1210
+
1211
+ ### Web Bundle Requirements
1212
+
1213
+ 1. **Self-Contained**: No external dependencies
1214
+ 2. **No Config Variables**: Cannot use `{config_source}` references
1215
+ 3. **Complete File List**: Every referenced file must be listed
1216
+ 4. **Relative Paths**: Use `{bmad_folder}/` root paths (no `{project-root}`)
1217
+
1218
+ ### Creating a Web Bundle
1219
+
1220
+ Add this section to your workflow.yaml ensuring critically all dependant files or workflows are listed:
1221
+
1222
+ ```yaml
1223
+ web_bundle:
1224
+ name: 'workflow-name'
1225
+ description: 'Workflow description'
1226
+ author: 'Your Name'
1227
+
1228
+ # Core files ({bmad_folder}/-relative paths)
1229
+ instructions: '{bmad_folder}/module/workflows/workflow/instructions.md'
1230
+ validation: '{bmad_folder}/module/workflows/workflow/checklist.md'
1231
+ template: '{bmad_folder}/module/workflows/workflow/template.md'
1232
+
1233
+ # Data files (no config_source allowed)
1234
+ data_file: '{bmad_folder}/module/workflows/workflow/data.csv'
1235
+
1236
+ # Complete file list - CRITICAL!
1237
+ web_bundle_files:
1238
+ - '{bmad_folder}/module/workflows/workflow/instructions.md'
1239
+ - '{bmad_folder}/module/workflows/workflow/checklist.md'
1240
+ - '{bmad_folder}/module/workflows/workflow/template.md'
1241
+ - '{bmad_folder}/module/workflows/workflow/data.csv'
1242
+ # Include ALL referenced files
1243
+ ```
1244
+
1245
+ ### Converting Existing Workflows
1246
+
1247
+ 1. **Remove Config Dependencies**:
1248
+ - Replace `{config_source}:variable` with hardcoded values
1249
+ - Convert `{project-root}/{bmad_folder}/` to `{bmad_folder}/`
1250
+
1251
+ 2. **Inventory All Files**:
1252
+ - Scan instructions.md for file references
1253
+ - Check template.md for includes
1254
+ - List all data files
1255
+
1256
+ 3. **Test Completeness**:
1257
+ - Ensure no missing file references
1258
+ - Verify all paths are relative to {bmad_folder}/
1259
+
1260
+ ### Example: Complete Web Bundle
1261
+
1262
+ ```yaml
1263
+ web_bundle:
1264
+ name: 'analyze-requirements'
1265
+ description: 'Requirements analysis workflow'
1266
+ author: 'BMad Team'
1267
+
1268
+ instructions: '{bmad_folder}/bmm/workflows/analyze-requirements/instructions.md'
1269
+ validation: '{bmad_folder}/bmm/workflows/analyze-requirements/checklist.md'
1270
+ template: '{bmad_folder}/bmm/workflows/analyze-requirements/template.md'
1271
+
1272
+ # Data files
1273
+ techniques_data: '{bmad_folder}/bmm/workflows/analyze-requirements/techniques.csv'
1274
+ patterns_data: '{bmad_folder}/bmm/workflows/analyze-requirements/patterns.json'
1275
+
1276
+ # Sub-workflow reference
1277
+ validation_workflow: '{bmad_folder}/bmm/workflows/validate-requirements/workflow.yaml'
1278
+
1279
+ standalone: true
1280
+
1281
+ web_bundle_files:
1282
+ # Core workflow files
1283
+ - '{bmad_folder}/bmm/workflows/analyze-requirements/instructions.md'
1284
+ - '{bmad_folder}/bmm/workflows/analyze-requirements/checklist.md'
1285
+ - '{bmad_folder}/bmm/workflows/analyze-requirements/template.md'
1286
+
1287
+ # Data files
1288
+ - '{bmad_folder}/bmm/workflows/analyze-requirements/techniques.csv'
1289
+ - '{bmad_folder}/bmm/workflows/analyze-requirements/patterns.json'
1290
+
1291
+ # Sub-workflow and its files
1292
+ - '{bmad_folder}/bmm/workflows/validate-requirements/workflow.yaml'
1293
+ - '{bmad_folder}/bmm/workflows/validate-requirements/instructions.md'
1294
+ - '{bmad_folder}/bmm/workflows/validate-requirements/checklist.md'
1295
+
1296
+ # Shared templates referenced in instructions
1297
+ - '{bmad_folder}/bmm/templates/requirement-item.md'
1298
+ - '{bmad_folder}/bmm/templates/validation-criteria.md'
1299
+ ```
424
1300
 
425
1301
  ## Troubleshooting
426
1302
 
@@ -440,17 +1316,12 @@ Check requirements against goals.
440
1316
 
441
1317
  - Combine related steps
442
1318
  - Make sections optional
1319
+ - Create multiple focused workflows with a parent orchestration
443
1320
  - Reduce elicitation points
444
1321
 
445
- ### User Confusion
446
-
447
- - Add clearer step goals
448
- - Provide more examples
449
- - Explain section purpose
450
-
451
1322
  ---
452
1323
 
453
1324
  _For implementation details, see:_
454
1325
 
455
- - `/src/core/tasks/workflow.md` - Execution engine
456
- - `/bmad/bmm/workflows/` - Production examples
1326
+ - `/src/core/tasks/workflow.xml` - Execution engine
1327
+ - `/{bmad_folder}/bmm/workflows/` - Production examples