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

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 (608) hide show
  1. package/.github/ISSUE_TEMPLATE/idea_submission.md +1 -1
  2. package/.github/scripts/discord-helpers.sh +15 -0
  3. package/.github/workflows/bundle-latest.yaml +79 -27
  4. package/.github/workflows/discord.yaml +278 -8
  5. package/.github/workflows/quality.yaml +19 -0
  6. package/.markdownlint-cli2.yaml +42 -0
  7. package/.prettierignore +3 -0
  8. package/CHANGELOG.md +254 -1
  9. package/CODE_OF_CONDUCT.md +128 -0
  10. package/README.md +3 -1
  11. package/bmad-method-6.0.0-alpha.14.tgz +0 -0
  12. package/docs/agent-customization-guide.md +2 -2
  13. package/docs/custom-agent-installation.md +58 -90
  14. package/docs/document-sharding-guide.md +1 -1
  15. package/docs/ide-info/rovo-dev.md +388 -0
  16. package/docs/index.md +6 -81
  17. package/docs/installers-bundlers/installers-modules-platforms-reference.md +1 -1
  18. package/eslint.config.mjs +14 -0
  19. package/example-custom-content/README.md +4 -0
  20. package/example-custom-content/agents/commit-poet/commit-poet.agent.yaml +129 -0
  21. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/instructions.md +70 -0
  22. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/bundlers.md +111 -0
  23. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/deploy.md +70 -0
  24. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/docs.md +114 -0
  25. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/installers.md +134 -0
  26. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/modules.md +161 -0
  27. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/knowledge/tests.md +103 -0
  28. package/example-custom-content/agents/toolsmith/toolsmith-sidecar/memories.md +17 -0
  29. package/example-custom-content/agents/toolsmith/toolsmith.agent.yaml +109 -0
  30. package/example-custom-content/custom.yaml +3 -0
  31. package/example-custom-content/workflows/quiz-master/steps/step-01-init.md +168 -0
  32. package/example-custom-content/workflows/quiz-master/steps/step-02-q1.md +155 -0
  33. package/example-custom-content/workflows/quiz-master/steps/step-03-q2.md +89 -0
  34. package/example-custom-content/workflows/quiz-master/steps/step-04-q3.md +36 -0
  35. package/example-custom-content/workflows/quiz-master/steps/step-05-q4.md +36 -0
  36. package/example-custom-content/workflows/quiz-master/steps/step-06-q5.md +36 -0
  37. package/example-custom-content/workflows/quiz-master/steps/step-07-q6.md +36 -0
  38. package/example-custom-content/workflows/quiz-master/steps/step-08-q7.md +36 -0
  39. package/example-custom-content/workflows/quiz-master/steps/step-09-q8.md +36 -0
  40. package/example-custom-content/workflows/quiz-master/steps/step-10-q9.md +36 -0
  41. package/example-custom-content/workflows/quiz-master/steps/step-11-q10.md +36 -0
  42. package/example-custom-content/workflows/quiz-master/steps/step-12-results.md +150 -0
  43. package/example-custom-content/workflows/quiz-master/templates/csv-headers.template +1 -0
  44. package/example-custom-content/workflows/quiz-master/workflow-plan-quiz-master.md +269 -0
  45. package/example-custom-content/workflows/quiz-master/workflow.md +54 -0
  46. package/example-custom-content/workflows/wassup/workflow.md +26 -0
  47. package/example-custom-module/mwm/README.md +4 -0
  48. package/example-custom-module/mwm/_module-installer/install-config.yaml +27 -0
  49. package/example-custom-module/mwm/agents/cbt-coach/cbt-coach-sidecar/cognitive-distortions.md +47 -0
  50. package/example-custom-module/mwm/agents/cbt-coach/cbt-coach-sidecar/thought-records.md +17 -0
  51. package/example-custom-module/mwm/agents/cbt-coach/cbt-coach.agent.yaml +150 -0
  52. package/example-custom-module/mwm/agents/crisis-navigator.agent.yaml +137 -0
  53. package/example-custom-module/mwm/agents/meditation-guide.agent.yaml +137 -0
  54. package/example-custom-module/mwm/agents/wellness-companion/wellness-companion-sidecar/insights.md +13 -0
  55. package/example-custom-module/mwm/agents/wellness-companion/wellness-companion-sidecar/instructions.md +30 -0
  56. package/example-custom-module/mwm/agents/wellness-companion/wellness-companion-sidecar/memories.md +13 -0
  57. package/example-custom-module/mwm/agents/wellness-companion/wellness-companion-sidecar/patterns.md +17 -0
  58. package/example-custom-module/mwm/agents/wellness-companion/wellness-companion.agent.yaml +124 -0
  59. package/example-custom-module/mwm/workflows/cbt-thought-record/README.md +31 -0
  60. package/example-custom-module/mwm/workflows/cbt-thought-record/workflow.md +45 -0
  61. package/example-custom-module/mwm/workflows/crisis-support/README.md +31 -0
  62. package/example-custom-module/mwm/workflows/crisis-support/workflow.md +45 -0
  63. package/example-custom-module/mwm/workflows/daily-checkin/README.md +32 -0
  64. package/example-custom-module/mwm/workflows/daily-checkin/workflow.md +45 -0
  65. package/example-custom-module/mwm/workflows/guided-meditation/README.md +31 -0
  66. package/example-custom-module/mwm/workflows/guided-meditation/workflow.md +45 -0
  67. package/example-custom-module/mwm/workflows/wellness-journal/README.md +31 -0
  68. package/example-custom-module/mwm/workflows/wellness-journal/workflow.md +45 -0
  69. package/package.json +9 -4
  70. package/src/core/_module-installer/install-config.yaml +5 -1
  71. package/src/core/agents/bmad-master.agent.yaml +1 -1
  72. package/src/core/agents/bmad-web-orchestrator.agent.xml +1 -1
  73. package/src/core/resources/excalidraw/library-loader.md +2 -2
  74. package/src/core/tasks/advanced-elicitation-methods.csv +51 -21
  75. package/src/core/tasks/advanced-elicitation.xml +18 -8
  76. package/src/core/tasks/workflow.xml +36 -71
  77. package/src/core/workflows/brainstorming/brain-methods.csv +62 -36
  78. package/src/core/workflows/brainstorming/steps/step-01-session-setup.md +196 -0
  79. package/src/core/workflows/brainstorming/steps/step-01b-continue.md +121 -0
  80. package/src/core/workflows/brainstorming/steps/step-02a-user-selected.md +224 -0
  81. package/src/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +236 -0
  82. package/src/core/workflows/brainstorming/steps/step-02c-random-selection.md +208 -0
  83. package/src/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +263 -0
  84. package/src/core/workflows/brainstorming/steps/step-03-technique-execution.md +339 -0
  85. package/src/core/workflows/brainstorming/steps/step-04-idea-organization.md +302 -0
  86. package/src/core/workflows/brainstorming/template.md +13 -104
  87. package/src/core/workflows/brainstorming/workflow.md +51 -0
  88. package/src/core/workflows/party-mode/steps/step-01-agent-loading.md +138 -0
  89. package/src/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +203 -0
  90. package/src/core/workflows/party-mode/steps/step-03-graceful-exit.md +158 -0
  91. package/src/core/workflows/party-mode/workflow.md +206 -0
  92. package/src/modules/bmb/README.md +153 -86
  93. package/src/modules/bmb/_module-installer/install-config.yaml +4 -9
  94. package/src/modules/bmb/_module-installer/installer.js +76 -0
  95. package/src/modules/bmb/agents/bmad-builder.agent.yaml +75 -38
  96. package/src/modules/bmb/docs/{agent-menu-patterns.md → agents/agent-menu-patterns.md} +6 -6
  97. package/src/modules/bmb/docs/{expert-agent-architecture.md → agents/expert-agent-architecture.md} +20 -20
  98. package/src/modules/bmb/docs/agents/kb.csv +0 -0
  99. package/src/modules/bmb/docs/{module-agent-architecture.md → agents/module-agent-architecture.md} +46 -46
  100. package/src/modules/bmb/docs/{simple-agent-architecture.md → agents/simple-agent-architecture.md} +7 -3
  101. package/src/modules/bmb/docs/workflows/architecture.md +220 -0
  102. package/src/modules/bmb/docs/workflows/common-workflow-tools.csv +19 -0
  103. package/src/modules/bmb/docs/workflows/csv-data-file-standards.md +206 -0
  104. package/src/modules/bmb/docs/workflows/index.md +45 -0
  105. package/src/modules/bmb/docs/workflows/intent-vs-prescriptive-spectrum.md +220 -0
  106. package/src/modules/bmb/docs/workflows/kb.csv +0 -0
  107. package/src/modules/bmb/docs/workflows/templates/step-01-init-continuable-template.md +241 -0
  108. package/src/modules/bmb/docs/workflows/templates/step-1b-template.md +223 -0
  109. package/src/modules/bmb/docs/workflows/templates/step-file.md +139 -0
  110. package/src/modules/bmb/docs/workflows/templates/step-template.md +290 -0
  111. package/src/modules/bmb/docs/workflows/templates/workflow-template.md +104 -0
  112. package/src/modules/bmb/docs/workflows/templates/workflow.md +58 -0
  113. package/src/modules/bmb/docs/workflows/terms.md +97 -0
  114. package/src/modules/bmb/reference/agents/expert-examples/journal-keeper/README.md +4 -4
  115. package/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml +8 -8
  116. package/src/modules/bmb/reference/agents/module-examples/README.md +1 -1
  117. package/src/modules/bmb/reference/agents/module-examples/security-engineer.agent.yaml +7 -7
  118. package/src/modules/bmb/reference/agents/module-examples/trend-analyst.agent.yaml +7 -7
  119. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/data/dietary-restrictions.csv +18 -0
  120. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/data/macro-calculator.csv +16 -0
  121. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/data/recipe-database.csv +28 -0
  122. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-01-init.md +176 -0
  123. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-01b-continue.md +120 -0
  124. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-02-profile.md +164 -0
  125. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-03-assessment.md +153 -0
  126. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-04-strategy.md +182 -0
  127. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-05-shopping.md +167 -0
  128. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/steps/step-06-prep-schedule.md +194 -0
  129. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/templates/assessment-section.md +25 -0
  130. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/templates/nutrition-plan.md +68 -0
  131. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/templates/prep-schedule-section.md +29 -0
  132. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/templates/profile-section.md +47 -0
  133. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/templates/shopping-section.md +37 -0
  134. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/templates/strategy-section.md +18 -0
  135. package/src/modules/bmb/reference/workflows/meal-prep-nutrition/workflow.md +58 -0
  136. package/src/modules/bmb/workflows/create-agent/data/info-and-installation-guide.md +29 -0
  137. package/src/modules/bmb/workflows/create-agent/data/reference/README.md +3 -0
  138. package/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/README.md +242 -0
  139. package/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/journal-keeper-sidecar/breakthroughs.md +24 -0
  140. package/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/journal-keeper-sidecar/instructions.md +108 -0
  141. package/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/journal-keeper-sidecar/memories.md +46 -0
  142. package/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/journal-keeper-sidecar/mood-patterns.md +39 -0
  143. package/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml +152 -0
  144. package/src/modules/bmb/workflows/create-agent/data/reference/agents/module-examples/README.md +50 -0
  145. package/src/modules/bmb/workflows/create-agent/data/reference/agents/module-examples/security-engineer.agent.yaml +53 -0
  146. package/src/modules/bmb/workflows/create-agent/data/reference/agents/module-examples/trend-analyst.agent.yaml +57 -0
  147. package/src/modules/bmb/workflows/create-agent/data/reference/agents/simple-examples/README.md +223 -0
  148. package/src/modules/bmb/workflows/create-agent/data/reference/agents/simple-examples/commit-poet.agent.yaml +126 -0
  149. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/data/dietary-restrictions.csv +18 -0
  150. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/data/macro-calculator.csv +16 -0
  151. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/data/recipe-database.csv +28 -0
  152. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-01-init.md +177 -0
  153. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-01b-continue.md +150 -0
  154. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-02-profile.md +164 -0
  155. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-03-assessment.md +152 -0
  156. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-04-strategy.md +182 -0
  157. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-05-shopping.md +167 -0
  158. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/steps/step-06-prep-schedule.md +194 -0
  159. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/templates/assessment-section.md +25 -0
  160. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/templates/nutrition-plan.md +68 -0
  161. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/templates/prep-schedule-section.md +29 -0
  162. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/templates/profile-section.md +47 -0
  163. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/templates/shopping-section.md +37 -0
  164. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/templates/strategy-section.md +18 -0
  165. package/src/modules/bmb/workflows/create-agent/data/reference/workflows/meal-prep-nutrition/workflow.md +58 -0
  166. package/src/modules/bmb/workflows/create-agent/data/validation-complete.md +305 -0
  167. package/src/modules/bmb/workflows/create-agent/steps/step-01-brainstorm.md +145 -0
  168. package/src/modules/bmb/workflows/create-agent/steps/step-02-discover.md +210 -0
  169. package/src/modules/bmb/workflows/create-agent/steps/step-03-persona.md +260 -0
  170. package/src/modules/bmb/workflows/create-agent/steps/step-04-commands.md +237 -0
  171. package/src/modules/bmb/workflows/create-agent/steps/step-05-name.md +231 -0
  172. package/src/modules/bmb/workflows/create-agent/steps/step-06-build.md +224 -0
  173. package/src/modules/bmb/workflows/create-agent/steps/step-07-validate.md +234 -0
  174. package/src/modules/bmb/workflows/create-agent/steps/step-08-setup.md +179 -0
  175. package/src/modules/bmb/workflows/create-agent/steps/step-09-customize.md +197 -0
  176. package/src/modules/bmb/workflows/create-agent/steps/step-10-build-tools.md +180 -0
  177. package/src/modules/bmb/workflows/create-agent/steps/step-11-celebrate.md +222 -0
  178. package/src/modules/bmb/workflows/create-agent/templates/agent_commands.md +21 -0
  179. package/src/modules/bmb/workflows/create-agent/templates/agent_persona.md +25 -0
  180. package/src/modules/bmb/workflows/create-agent/templates/agent_purpose_and_type.md +23 -0
  181. package/src/modules/bmb/workflows/create-agent/workflow.md +91 -0
  182. package/src/modules/bmb/workflows/create-module/steps/step-01-init.md +155 -0
  183. package/src/modules/bmb/workflows/create-module/steps/step-01b-continue.md +169 -0
  184. package/src/modules/bmb/workflows/create-module/steps/step-02-concept.md +217 -0
  185. package/src/modules/bmb/workflows/create-module/steps/step-03-components.md +267 -0
  186. package/src/modules/bmb/workflows/create-module/steps/step-04-structure.md +228 -0
  187. package/src/modules/bmb/workflows/create-module/steps/step-05-config.md +233 -0
  188. package/src/modules/bmb/workflows/create-module/steps/step-06-agents.md +296 -0
  189. package/src/modules/bmb/workflows/create-module/steps/step-07-workflows.md +228 -0
  190. package/src/modules/bmb/workflows/create-module/steps/step-08-installer.md +186 -0
  191. package/src/modules/bmb/workflows/create-module/steps/step-09-documentation.md +308 -0
  192. package/src/modules/bmb/workflows/create-module/steps/step-10-roadmap.md +336 -0
  193. package/src/modules/bmb/workflows/create-module/steps/step-11-validate.md +335 -0
  194. package/src/modules/bmb/workflows/create-module/templates/agent.template.md +317 -0
  195. package/src/modules/bmb/workflows/create-module/templates/install-config.template.yaml +53 -0
  196. package/src/modules/bmb/workflows/create-module/templates/installer.template.js +47 -0
  197. package/src/modules/bmb/workflows/create-module/templates/module-plan.template.md +5 -0
  198. package/src/modules/bmb/workflows/create-module/templates/workflow-plan-template.md +23 -0
  199. package/src/modules/bmb/workflows/create-module/validation.md +126 -0
  200. package/src/modules/bmb/workflows/create-module/workflow.md +55 -0
  201. package/src/modules/bmb/workflows/create-workflow/steps/step-01-init.md +157 -0
  202. package/src/modules/bmb/workflows/create-workflow/steps/step-02-gather.md +211 -0
  203. package/src/modules/bmb/workflows/create-workflow/steps/step-03-tools-configuration.md +250 -0
  204. package/src/modules/bmb/workflows/create-workflow/steps/step-04-plan-review.md +216 -0
  205. package/src/modules/bmb/workflows/create-workflow/steps/step-05-output-format-design.md +289 -0
  206. package/src/modules/bmb/workflows/create-workflow/steps/step-06-design.md +271 -0
  207. package/src/modules/bmb/workflows/create-workflow/steps/step-07-build.md +308 -0
  208. package/src/modules/bmb/workflows/create-workflow/steps/step-08-review.md +284 -0
  209. package/src/modules/bmb/workflows/create-workflow/steps/step-09-complete.md +187 -0
  210. package/src/modules/bmb/workflows/create-workflow/workflow.md +58 -0
  211. package/src/modules/bmb/workflows/edit-agent/steps/step-01-discover-intent.md +134 -0
  212. package/src/modules/bmb/workflows/edit-agent/steps/step-02-analyze-agent.md +202 -0
  213. package/src/modules/bmb/workflows/edit-agent/steps/step-03-propose-changes.md +157 -0
  214. package/src/modules/bmb/workflows/edit-agent/steps/step-04-apply-changes.md +150 -0
  215. package/src/modules/bmb/workflows/edit-agent/steps/step-05-validate.md +150 -0
  216. package/src/modules/bmb/workflows/edit-agent/workflow.md +58 -0
  217. package/src/modules/bmb/workflows/edit-workflow/steps/step-01-analyze.md +217 -0
  218. package/src/modules/bmb/workflows/edit-workflow/steps/step-02-discover.md +253 -0
  219. package/src/modules/bmb/workflows/edit-workflow/steps/step-03-improve.md +217 -0
  220. package/src/modules/bmb/workflows/edit-workflow/steps/step-04-validate.md +193 -0
  221. package/src/modules/bmb/workflows/edit-workflow/steps/step-05-compliance-check.md +245 -0
  222. package/src/modules/bmb/workflows/edit-workflow/templates/completion-summary.md +75 -0
  223. package/src/modules/bmb/workflows/edit-workflow/templates/improvement-goals.md +68 -0
  224. package/src/modules/bmb/workflows/edit-workflow/templates/improvement-log.md +40 -0
  225. package/src/modules/bmb/workflows/edit-workflow/templates/validation-results.md +51 -0
  226. package/src/modules/bmb/workflows/edit-workflow/templates/workflow-analysis.md +56 -0
  227. package/src/modules/bmb/workflows/edit-workflow/workflow.md +58 -0
  228. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-01-validate-goal.md +152 -0
  229. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-02-workflow-validation.md +243 -0
  230. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-03-step-validation.md +274 -0
  231. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-04-file-validation.md +295 -0
  232. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-05-intent-spectrum-validation.md +264 -0
  233. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-06-web-subprocess-validation.md +360 -0
  234. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-07-holistic-analysis.md +258 -0
  235. package/src/modules/bmb/workflows/workflow-compliance-check/steps/step-08-generate-report.md +301 -0
  236. package/src/modules/bmb/workflows/workflow-compliance-check/templates/compliance-report.md +140 -0
  237. package/src/modules/bmb/workflows/workflow-compliance-check/workflow.md +58 -0
  238. package/src/modules/bmb/{workflows → workflows-legacy}/edit-module/checklist.md +0 -1
  239. package/src/modules/bmgd/agents/game-architect.agent.yaml +1 -1
  240. package/src/modules/bmgd/agents/game-designer.agent.yaml +1 -1
  241. package/src/modules/bmgd/agents/game-dev.agent.yaml +1 -1
  242. package/src/modules/bmgd/agents/game-scrum-master.agent.yaml +1 -1
  243. package/src/modules/bmgd/workflows/3-technical/game-architecture/instructions.md +8 -8
  244. package/src/modules/bmm/_module-installer/install-config.yaml +10 -16
  245. package/src/modules/bmm/agents/analyst.agent.yaml +25 -22
  246. package/src/modules/bmm/agents/architect.agent.yaml +12 -14
  247. package/src/modules/bmm/agents/dev.agent.yaml +20 -16
  248. package/src/modules/bmm/agents/pm.agent.yaml +14 -32
  249. package/src/modules/bmm/agents/quick-flow-solo-dev.agent.yaml +36 -0
  250. package/src/modules/bmm/agents/sm.agent.yaml +13 -31
  251. package/src/modules/bmm/agents/tea.agent.yaml +10 -7
  252. package/src/modules/bmm/agents/tech-writer.agent.yaml +7 -20
  253. package/src/modules/bmm/agents/ux-designer.agent.yaml +12 -10
  254. package/src/modules/bmm/data/README.md +29 -0
  255. package/src/modules/bmm/data/project-context-template.md +40 -0
  256. package/src/modules/bmm/docs/README.md +44 -10
  257. package/src/modules/bmm/docs/agents-guide.md +80 -53
  258. package/src/modules/bmm/docs/bmad-quick-flow.md +528 -0
  259. package/src/modules/bmm/docs/brownfield-guide.md +25 -39
  260. package/src/modules/bmm/docs/enterprise-agentic-development.md +3 -3
  261. package/src/modules/bmm/docs/faq.md +6 -39
  262. package/src/modules/bmm/docs/glossary.md +12 -25
  263. package/src/modules/bmm/docs/images/README.md +37 -0
  264. package/src/modules/bmm/docs/images/workflow-method-greenfield.excalidraw +960 -1845
  265. package/src/modules/bmm/docs/images/workflow-method-greenfield.svg +4 -2
  266. package/src/modules/bmm/docs/quick-flow-solo-dev.md +337 -0
  267. package/src/modules/bmm/docs/quick-spec-flow.md +5 -5
  268. package/src/modules/bmm/docs/quick-start.md +9 -25
  269. package/src/modules/bmm/docs/scale-adaptive-system.md +5 -5
  270. package/src/modules/bmm/docs/test-architecture.md +90 -24
  271. package/src/modules/bmm/docs/troubleshooting.md +680 -0
  272. package/src/modules/bmm/docs/workflow-document-project-reference.md +1 -1
  273. package/src/modules/bmm/docs/workflows-analysis.md +36 -140
  274. package/src/modules/bmm/docs/workflows-implementation.md +175 -160
  275. package/src/modules/bmm/docs/workflows-planning.md +51 -212
  276. package/src/modules/bmm/docs/workflows-solutioning.md +26 -71
  277. package/src/modules/bmm/tasks/daily-standup.xml +85 -0
  278. package/src/modules/bmm/teams/default-party.csv +15 -14
  279. package/src/modules/bmm/teams/team-fullstack.yaml +0 -1
  280. package/src/modules/bmm/testarch/knowledge/api-request.md +303 -0
  281. package/src/modules/bmm/testarch/knowledge/auth-session.md +356 -0
  282. package/src/modules/bmm/testarch/knowledge/burn-in.md +273 -0
  283. package/src/modules/bmm/testarch/knowledge/ci-burn-in.md +1 -1
  284. package/src/modules/bmm/testarch/knowledge/file-utils.md +260 -0
  285. package/src/modules/bmm/testarch/knowledge/fixtures-composition.md +382 -0
  286. package/src/modules/bmm/testarch/knowledge/intercept-network-call.md +280 -0
  287. package/src/modules/bmm/testarch/knowledge/log.md +294 -0
  288. package/src/modules/bmm/testarch/knowledge/network-error-monitor.md +272 -0
  289. package/src/modules/bmm/testarch/knowledge/network-recorder.md +265 -0
  290. package/src/modules/bmm/testarch/knowledge/overview.md +284 -0
  291. package/src/modules/bmm/testarch/knowledge/recurse.md +296 -0
  292. package/src/modules/bmm/testarch/tea-index.csv +11 -0
  293. package/src/modules/bmm/workflows/1-analysis/product-brief/product-brief.template.md +8 -0
  294. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01-init.md +192 -0
  295. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01b-continue.md +167 -0
  296. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-02-vision.md +203 -0
  297. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-03-users.md +206 -0
  298. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-04-metrics.md +209 -0
  299. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-05-scope.md +223 -0
  300. package/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-06-complete.md +199 -0
  301. package/src/modules/bmm/workflows/1-analysis/product-brief/workflow.md +58 -0
  302. package/src/modules/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +136 -0
  303. package/src/modules/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +228 -0
  304. package/src/modules/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +237 -0
  305. package/src/modules/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +205 -0
  306. package/src/modules/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +233 -0
  307. package/src/modules/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +442 -0
  308. package/src/modules/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +181 -0
  309. package/src/modules/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +236 -0
  310. package/src/modules/bmm/workflows/1-analysis/research/market-steps/step-02-customer-insights.md +199 -0
  311. package/src/modules/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +248 -0
  312. package/src/modules/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +258 -0
  313. package/src/modules/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +176 -0
  314. package/src/modules/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +474 -0
  315. package/src/modules/bmm/workflows/1-analysis/research/research.template.md +15 -0
  316. package/src/modules/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +136 -0
  317. package/src/modules/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +238 -0
  318. package/src/modules/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +247 -0
  319. package/src/modules/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +201 -0
  320. package/src/modules/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +238 -0
  321. package/src/modules/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +485 -0
  322. package/src/modules/bmm/workflows/1-analysis/research/workflow.md +204 -0
  323. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +159 -0
  324. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +126 -0
  325. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +209 -0
  326. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +215 -0
  327. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +218 -0
  328. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +233 -0
  329. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +251 -0
  330. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +253 -0
  331. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +223 -0
  332. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +223 -0
  333. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +240 -0
  334. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +247 -0
  335. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +236 -0
  336. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +263 -0
  337. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +226 -0
  338. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +6 -138
  339. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +59 -0
  340. package/src/modules/bmm/workflows/2-plan-workflows/prd/prd-template.md +12 -200
  341. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-01-init.md +243 -0
  342. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-01b-continue.md +165 -0
  343. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-02-discovery.md +420 -0
  344. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-03-success.md +289 -0
  345. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-04-journeys.md +290 -0
  346. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-05-domain.md +270 -0
  347. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md +261 -0
  348. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-07-project-type.md +257 -0
  349. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-08-scoping.md +298 -0
  350. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-09-functional.md +269 -0
  351. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-10-nonfunctional.md +293 -0
  352. package/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-11-complete.md +223 -0
  353. package/src/modules/bmm/workflows/2-plan-workflows/prd/workflow.md +61 -0
  354. package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-decision-template.md +13 -0
  355. package/src/modules/bmm/workflows/3-solutioning/architecture/data/domain-complexity.csv +11 -0
  356. package/src/modules/bmm/workflows/3-solutioning/architecture/data/project-types.csv +7 -0
  357. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-01-init.md +194 -0
  358. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-01b-continue.md +163 -0
  359. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-02-context.md +223 -0
  360. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-03-starter.md +330 -0
  361. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-04-decisions.md +317 -0
  362. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-05-patterns.md +358 -0
  363. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-06-structure.md +378 -0
  364. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-07-validation.md +358 -0
  365. package/src/modules/bmm/workflows/3-solutioning/architecture/steps/step-08-complete.md +351 -0
  366. package/src/modules/bmm/workflows/3-solutioning/architecture/workflow.md +49 -0
  367. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +258 -0
  368. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +232 -0
  369. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +271 -0
  370. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +144 -0
  371. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -0
  372. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +58 -0
  373. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-01-document-discovery.md +189 -0
  374. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-02-prd-analysis.md +177 -0
  375. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-03-epic-coverage-validation.md +178 -0
  376. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-04-ux-alignment.md +138 -0
  377. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-05-epic-quality-review.md +251 -0
  378. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/steps/step-06-final-assessment.md +132 -0
  379. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/templates/readiness-report-template.md +4 -0
  380. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/workflow.md +54 -0
  381. package/src/modules/bmm/workflows/4-implementation/code-review/checklist.md +2 -1
  382. package/src/modules/bmm/workflows/4-implementation/code-review/instructions.xml +224 -0
  383. package/src/modules/bmm/workflows/4-implementation/code-review/workflow.yaml +4 -11
  384. package/src/modules/bmm/workflows/4-implementation/create-story/checklist.md +332 -214
  385. package/src/modules/bmm/workflows/4-implementation/create-story/instructions.xml +354 -0
  386. package/src/modules/bmm/workflows/4-implementation/create-story/workflow.yaml +21 -34
  387. package/src/modules/bmm/workflows/4-implementation/dev-story/checklist.md +65 -23
  388. package/src/modules/bmm/workflows/4-implementation/dev-story/instructions.xml +406 -0
  389. package/src/modules/bmm/workflows/4-implementation/dev-story/workflow.yaml +6 -37
  390. package/src/modules/bmm/workflows/4-implementation/retrospective/instructions.md +3 -3
  391. package/src/modules/bmm/workflows/4-implementation/sprint-planning/instructions.md +19 -21
  392. package/src/modules/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +11 -10
  393. package/src/modules/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +2 -0
  394. package/src/modules/bmm/workflows/4-implementation/sprint-status/instructions.md +174 -0
  395. package/src/modules/bmm/workflows/4-implementation/sprint-status/workflow.yaml +35 -0
  396. package/src/modules/bmm/workflows/bmad-quick-flow/create-tech-spec/instructions.md +115 -0
  397. package/src/modules/bmm/workflows/bmad-quick-flow/create-tech-spec/workflow.yaml +26 -0
  398. package/src/modules/bmm/workflows/bmad-quick-flow/quick-dev/checklist.md +25 -0
  399. package/src/modules/bmm/workflows/bmad-quick-flow/quick-dev/instructions.md +202 -0
  400. package/src/modules/bmm/workflows/bmad-quick-flow/quick-dev/workflow.yaml +33 -0
  401. package/src/modules/bmm/workflows/document-project/instructions.md +1 -1
  402. package/src/modules/bmm/workflows/document-project/workflows/deep-dive-instructions.md +2 -2
  403. package/src/modules/bmm/workflows/generate-project-context/project-context-template.md +20 -0
  404. package/src/modules/bmm/workflows/generate-project-context/steps/step-01-discover.md +193 -0
  405. package/src/modules/bmm/workflows/generate-project-context/steps/step-02-generate.md +317 -0
  406. package/src/modules/bmm/workflows/generate-project-context/steps/step-03-complete.md +277 -0
  407. package/src/modules/bmm/workflows/generate-project-context/workflow.md +48 -0
  408. package/src/modules/bmm/workflows/testarch/atdd/atdd-checklist-template.md +1 -1
  409. package/src/modules/bmm/workflows/testarch/atdd/instructions.md +23 -3
  410. package/src/modules/bmm/workflows/testarch/automate/instructions.md +23 -2
  411. package/src/modules/bmm/workflows/testarch/ci/checklist.md +1 -1
  412. package/src/modules/bmm/workflows/testarch/ci/github-actions-template.yaml +36 -3
  413. package/src/modules/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +25 -4
  414. package/src/modules/bmm/workflows/testarch/ci/instructions.md +20 -3
  415. package/src/modules/bmm/workflows/testarch/framework/instructions.md +27 -1
  416. package/src/modules/bmm/workflows/testarch/test-design/instructions.md +8 -2
  417. package/src/modules/bmm/workflows/testarch/test-review/instructions.md +29 -9
  418. package/src/modules/bmm/workflows/workflow-status/init/instructions.md +66 -54
  419. package/src/modules/bmm/workflows/workflow-status/instructions.md +11 -4
  420. package/src/modules/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +4 -8
  421. package/src/modules/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +4 -8
  422. package/src/modules/bmm/workflows/workflow-status/paths/method-brownfield.yaml +4 -8
  423. package/src/modules/bmm/workflows/workflow-status/paths/method-greenfield.yaml +4 -9
  424. package/src/modules/cis/agents/README.md +1 -1
  425. package/src/modules/cis/agents/brainstorming-coach.agent.yaml +3 -2
  426. package/src/modules/cis/agents/creative-problem-solver.agent.yaml +2 -1
  427. package/src/modules/cis/agents/design-thinking-coach.agent.yaml +2 -1
  428. package/src/modules/cis/agents/innovation-strategist.agent.yaml +2 -1
  429. package/src/modules/cis/agents/presentation-master.agent.yaml +3 -2
  430. package/src/modules/cis/agents/storyteller.agent.yaml +2 -1
  431. package/src/modules/cis/teams/default-party.csv +6 -5
  432. package/src/utility/models/agent-activation-ide.xml +4 -4
  433. package/src/utility/models/agent-activation-web.xml +1 -11
  434. package/src/utility/models/fragments/activation-rules.xml +5 -6
  435. package/src/utility/models/fragments/handler-exec.xml +6 -5
  436. package/src/utility/models/fragments/handler-multi.xml +14 -0
  437. package/test/README.md +1 -1
  438. package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +1 -3
  439. package/tools/cli/README.md +4 -3
  440. package/tools/cli/bundlers/web-bundler.js +3 -14
  441. package/tools/cli/commands/build.js +9 -184
  442. package/tools/cli/commands/install.js +42 -2
  443. package/tools/cli/installers/lib/core/config-collector.js +94 -10
  444. package/tools/cli/installers/lib/core/installer.js +389 -55
  445. package/tools/cli/installers/lib/core/manifest-generator.js +91 -30
  446. package/tools/cli/installers/lib/core/post-install-sidecar-replacement.js +79 -0
  447. package/tools/cli/installers/lib/custom/handler.js +266 -0
  448. package/tools/cli/installers/lib/ide/_base-ide.js +10 -0
  449. package/tools/cli/installers/lib/ide/antigravity.js +51 -7
  450. package/tools/cli/installers/lib/ide/auggie.js +72 -7
  451. package/tools/cli/installers/lib/ide/claude-code.js +1 -6
  452. package/tools/cli/installers/lib/ide/cline.js +49 -0
  453. package/tools/cli/installers/lib/ide/codex.js +2 -2
  454. package/tools/cli/installers/lib/ide/crush.js +66 -6
  455. package/tools/cli/installers/lib/ide/cursor.js +29 -13
  456. package/tools/cli/installers/lib/ide/gemini.js +96 -1
  457. package/tools/cli/installers/lib/ide/github-copilot.js +59 -48
  458. package/tools/cli/installers/lib/ide/iflow.js +67 -1
  459. package/tools/cli/installers/lib/ide/kilo.js +74 -0
  460. package/tools/cli/installers/lib/ide/kiro-cli.js +327 -0
  461. package/tools/cli/installers/lib/ide/opencode.js +3 -3
  462. package/tools/cli/installers/lib/ide/qwen.js +54 -0
  463. package/tools/cli/installers/lib/ide/roo.js +145 -138
  464. package/tools/cli/installers/lib/ide/rovo-dev.js +290 -0
  465. package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +8 -2
  466. package/tools/cli/installers/lib/ide/shared/bmad-artifacts.js +34 -19
  467. package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +18 -14
  468. package/tools/cli/installers/lib/ide/templates/agent-command-template.md +1 -1
  469. package/tools/cli/installers/lib/ide/templates/workflow-commander.md +5 -0
  470. package/tools/cli/installers/lib/ide/trae.js +47 -0
  471. package/tools/cli/installers/lib/modules/manager.js +486 -53
  472. package/tools/cli/lib/agent/compiler.js +210 -27
  473. package/tools/cli/lib/agent/installer.js +140 -30
  474. package/tools/cli/lib/agent-analyzer.js +46 -18
  475. package/tools/cli/lib/config.js +2 -1
  476. package/tools/cli/lib/ui.js +269 -13
  477. package/tools/cli/lib/yaml-xml-builder.js +123 -39
  478. package/tools/platform-codes.yaml +12 -0
  479. package/tools/schema/agent.js +229 -20
  480. package/tools/validate-svg-changes.sh +356 -0
  481. package/src/core/tasks/adv-elicit-methods.csv +0 -39
  482. package/src/core/workflows/brainstorming/README.md +0 -261
  483. package/src/core/workflows/brainstorming/instructions.md +0 -315
  484. package/src/core/workflows/brainstorming/workflow.yaml +0 -38
  485. package/src/core/workflows/party-mode/instructions.md +0 -183
  486. package/src/core/workflows/party-mode/workflow.yaml +0 -28
  487. package/src/modules/bmb/workflows/audit-workflow/checklist.md +0 -142
  488. package/src/modules/bmb/workflows/audit-workflow/instructions.md +0 -341
  489. package/src/modules/bmb/workflows/audit-workflow/template.md +0 -118
  490. package/src/modules/bmb/workflows/audit-workflow/workflow.yaml +0 -25
  491. package/src/modules/bmb/workflows/convert-legacy/README.md +0 -262
  492. package/src/modules/bmb/workflows/convert-legacy/checklist.md +0 -205
  493. package/src/modules/bmb/workflows/convert-legacy/instructions.md +0 -377
  494. package/src/modules/bmb/workflows/convert-legacy/workflow.yaml +0 -30
  495. package/src/modules/bmb/workflows/create-agent/instructions.md +0 -519
  496. package/src/modules/bmb/workflows/create-agent/workflow.yaml +0 -55
  497. package/src/modules/bmb/workflows/create-module/README.md +0 -229
  498. package/src/modules/bmb/workflows/create-module/brainstorm-context.md +0 -137
  499. package/src/modules/bmb/workflows/create-module/checklist.md +0 -235
  500. package/src/modules/bmb/workflows/create-module/installer-templates/install-config.yaml +0 -92
  501. package/src/modules/bmb/workflows/create-module/installer-templates/installer.js +0 -231
  502. package/src/modules/bmb/workflows/create-module/instructions.md +0 -577
  503. package/src/modules/bmb/workflows/create-module/module-structure.md +0 -400
  504. package/src/modules/bmb/workflows/create-module/workflow.yaml +0 -52
  505. package/src/modules/bmb/workflows/create-workflow/README.md +0 -277
  506. package/src/modules/bmb/workflows/create-workflow/brainstorm-context.md +0 -197
  507. package/src/modules/bmb/workflows/create-workflow/checklist.md +0 -94
  508. package/src/modules/bmb/workflows/create-workflow/instructions.md +0 -725
  509. package/src/modules/bmb/workflows/create-workflow/workflow-creation-guide.md +0 -1327
  510. package/src/modules/bmb/workflows/create-workflow/workflow-template/checklist.md +0 -24
  511. package/src/modules/bmb/workflows/create-workflow/workflow-template/instructions.md +0 -15
  512. package/src/modules/bmb/workflows/create-workflow/workflow-template/template.md +0 -9
  513. package/src/modules/bmb/workflows/create-workflow/workflow-template/workflow.yaml +0 -61
  514. package/src/modules/bmb/workflows/create-workflow/workflow.yaml +0 -41
  515. package/src/modules/bmb/workflows/edit-agent/README.md +0 -239
  516. package/src/modules/bmb/workflows/edit-agent/instructions.md +0 -654
  517. package/src/modules/bmb/workflows/edit-agent/workflow.yaml +0 -49
  518. package/src/modules/bmb/workflows/edit-workflow/README.md +0 -119
  519. package/src/modules/bmb/workflows/edit-workflow/checklist.md +0 -70
  520. package/src/modules/bmb/workflows/edit-workflow/instructions.md +0 -342
  521. package/src/modules/bmb/workflows/edit-workflow/workflow.yaml +0 -27
  522. package/src/modules/bmgd/workflows/4-production/code-review/checklist.md +0 -22
  523. package/src/modules/bmm/_module-installer/assets/bmm-kb.md +0 -1
  524. package/src/modules/bmm/_module-installer/assets/technical-decisions.md +0 -30
  525. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/instructions.md +0 -112
  526. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/project-context.md +0 -25
  527. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/workflow.yaml +0 -39
  528. package/src/modules/bmm/workflows/1-analysis/domain-research/instructions.md +0 -425
  529. package/src/modules/bmm/workflows/1-analysis/domain-research/template.md +0 -180
  530. package/src/modules/bmm/workflows/1-analysis/domain-research/workflow.yaml +0 -56
  531. package/src/modules/bmm/workflows/1-analysis/product-brief/checklist.md +0 -115
  532. package/src/modules/bmm/workflows/1-analysis/product-brief/instructions.md +0 -524
  533. package/src/modules/bmm/workflows/1-analysis/product-brief/template.md +0 -181
  534. package/src/modules/bmm/workflows/1-analysis/product-brief/workflow.yaml +0 -61
  535. package/src/modules/bmm/workflows/1-analysis/research/checklist-deep-prompt.md +0 -144
  536. package/src/modules/bmm/workflows/1-analysis/research/checklist-technical.md +0 -249
  537. package/src/modules/bmm/workflows/1-analysis/research/checklist.md +0 -299
  538. package/src/modules/bmm/workflows/1-analysis/research/claude-code/injections.yaml +0 -114
  539. package/src/modules/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +0 -438
  540. package/src/modules/bmm/workflows/1-analysis/research/instructions-market.md +0 -675
  541. package/src/modules/bmm/workflows/1-analysis/research/instructions-router.md +0 -134
  542. package/src/modules/bmm/workflows/1-analysis/research/instructions-technical.md +0 -534
  543. package/src/modules/bmm/workflows/1-analysis/research/template-deep-prompt.md +0 -94
  544. package/src/modules/bmm/workflows/1-analysis/research/template-market.md +0 -347
  545. package/src/modules/bmm/workflows/1-analysis/research/template-technical.md +0 -245
  546. package/src/modules/bmm/workflows/1-analysis/research/workflow.yaml +0 -62
  547. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/checklist.md +0 -310
  548. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +0 -1308
  549. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/workflow.yaml +0 -93
  550. package/src/modules/bmm/workflows/2-plan-workflows/prd/checklist.md +0 -346
  551. package/src/modules/bmm/workflows/2-plan-workflows/prd/instructions.md +0 -703
  552. package/src/modules/bmm/workflows/2-plan-workflows/prd/workflow.yaml +0 -78
  553. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/checklist.md +0 -217
  554. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/epics-template.md +0 -74
  555. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-generate-stories.md +0 -436
  556. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +0 -980
  557. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/tech-spec-template.md +0 -181
  558. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/user-story-template.md +0 -90
  559. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/workflow.yaml +0 -60
  560. package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-patterns.yaml +0 -321
  561. package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-template.md +0 -103
  562. package/src/modules/bmm/workflows/3-solutioning/architecture/checklist.md +0 -240
  563. package/src/modules/bmm/workflows/3-solutioning/architecture/decision-catalog.yaml +0 -222
  564. package/src/modules/bmm/workflows/3-solutioning/architecture/instructions.md +0 -768
  565. package/src/modules/bmm/workflows/3-solutioning/architecture/pattern-categories.csv +0 -13
  566. package/src/modules/bmm/workflows/3-solutioning/architecture/workflow.yaml +0 -100
  567. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/epics-template.md +0 -80
  568. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/instructions.md +0 -616
  569. package/src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.yaml +0 -63
  570. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/checklist.md +0 -169
  571. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/instructions.md +0 -332
  572. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/template.md +0 -146
  573. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/workflow.yaml +0 -64
  574. package/src/modules/bmm/workflows/4-implementation/code-review/backlog_template.md +0 -12
  575. package/src/modules/bmm/workflows/4-implementation/code-review/instructions.md +0 -398
  576. package/src/modules/bmm/workflows/4-implementation/create-story/instructions.md +0 -256
  577. package/src/modules/bmm/workflows/4-implementation/dev-story/instructions.md +0 -267
  578. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/checklist.md +0 -17
  579. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/instructions.md +0 -164
  580. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/template.md +0 -76
  581. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/workflow.yaml +0 -58
  582. package/src/modules/bmm/workflows/4-implementation/story-context/checklist.md +0 -16
  583. package/src/modules/bmm/workflows/4-implementation/story-context/context-template.xml +0 -34
  584. package/src/modules/bmm/workflows/4-implementation/story-context/instructions.md +0 -209
  585. package/src/modules/bmm/workflows/4-implementation/story-context/workflow.yaml +0 -63
  586. package/src/modules/bmm/workflows/4-implementation/story-done/instructions.md +0 -111
  587. package/src/modules/bmm/workflows/4-implementation/story-done/workflow.yaml +0 -28
  588. package/src/modules/bmm/workflows/4-implementation/story-ready/instructions.md +0 -117
  589. package/src/modules/bmm/workflows/4-implementation/story-ready/workflow.yaml +0 -25
  590. package/src/modules/bmm/workflows/workflow-status/paths/quick-flow-brownfield.yaml +0 -58
  591. package/src/modules/bmm/workflows/workflow-status/paths/quick-flow-greenfield.yaml +0 -47
  592. package/tools/cli/commands/agent-install.js +0 -409
  593. /package/src/modules/bmb/docs/{agent-compilation.md → agents/agent-compilation.md} +0 -0
  594. /package/src/modules/bmb/docs/{index.md → agents/index.md} +0 -0
  595. /package/src/modules/bmb/docs/{understanding-agent-types.md → agents/understanding-agent-types.md} +0 -0
  596. /package/src/modules/bmb/reference/{readme.md → README.md} +0 -0
  597. /package/src/modules/bmb/workflows/create-agent/{agent-validation-checklist.md → data/agent-validation-checklist.md} +0 -0
  598. /package/src/modules/bmb/workflows/create-agent/{brainstorm-context.md → data/brainstorm-context.md} +0 -0
  599. /package/src/modules/bmb/workflows/create-agent/{communication-presets.csv → data/communication-presets.csv} +0 -0
  600. /package/src/modules/bmb/{workflows → workflows-legacy}/edit-module/README.md +0 -0
  601. /package/src/modules/bmb/{workflows → workflows-legacy}/edit-module/instructions.md +0 -0
  602. /package/src/modules/bmb/{workflows → workflows-legacy}/edit-module/workflow.yaml +0 -0
  603. /package/src/modules/bmb/{workflows → workflows-legacy}/module-brief/README.md +0 -0
  604. /package/src/modules/bmb/{workflows → workflows-legacy}/module-brief/checklist.md +0 -0
  605. /package/src/modules/bmb/{workflows → workflows-legacy}/module-brief/instructions.md +0 -0
  606. /package/src/modules/bmb/{workflows → workflows-legacy}/module-brief/template.md +0 -0
  607. /package/src/modules/bmb/{workflows → workflows-legacy}/module-brief/workflow.yaml +0 -0
  608. /package/src/modules/bmm/{workflows/techdoc → data}/documentation-standards.md +0 -0
@@ -1,4 +1,5 @@
1
1
  const path = require('node:path');
2
+ const fs = require('fs-extra');
2
3
  const { BaseIdeSetup } = require('./_base-ide');
3
4
  const chalk = require('chalk');
4
5
  const { getProjectRoot, getSourcePath, getModulePath } = require('../../../lib/project-root');
@@ -20,7 +21,7 @@ const { getAgentsFromBmad, getAgentsFromDir } = require('./shared/bmad-artifacts
20
21
  */
21
22
  class AntigravitySetup extends BaseIdeSetup {
22
23
  constructor() {
23
- super('antigravity', 'Google Antigravity', false);
24
+ super('antigravity', 'Google Antigravity', true);
24
25
  this.configDir = '.agent';
25
26
  this.workflowsDir = 'workflows';
26
27
  }
@@ -44,7 +45,6 @@ class AntigravitySetup extends BaseIdeSetup {
44
45
  const injectionConfigPath = path.join(sourceModulesPath, moduleName, 'sub-modules', 'antigravity', 'injections.yaml');
45
46
 
46
47
  if (await this.exists(injectionConfigPath)) {
47
- const fs = require('fs-extra');
48
48
  const yaml = require('js-yaml');
49
49
 
50
50
  try {
@@ -88,7 +88,6 @@ class AntigravitySetup extends BaseIdeSetup {
88
88
  * @param {string} projectDir - Project directory
89
89
  */
90
90
  async cleanup(projectDir) {
91
- const fs = require('fs-extra');
92
91
  const bmadWorkflowsDir = path.join(projectDir, this.configDir, this.workflowsDir, 'bmad');
93
92
 
94
93
  if (await fs.pathExists(bmadWorkflowsDir)) {
@@ -191,7 +190,6 @@ class AntigravitySetup extends BaseIdeSetup {
191
190
  * Read and process file content
192
191
  */
193
192
  async readAndProcess(filePath, metadata) {
194
- const fs = require('fs-extra');
195
193
  const content = await fs.readFile(filePath, 'utf8');
196
194
  return this.processContent(content, metadata);
197
195
  }
@@ -208,7 +206,6 @@ class AntigravitySetup extends BaseIdeSetup {
208
206
  * Get agents from source modules (not installed location)
209
207
  */
210
208
  async getAgentsFromSource(sourceDir, selectedModules) {
211
- const fs = require('fs-extra');
212
209
  const agents = [];
213
210
 
214
211
  // Add core agents
@@ -387,7 +384,6 @@ class AntigravitySetup extends BaseIdeSetup {
387
384
  * Inject content at specified point in file
388
385
  */
389
386
  async injectContent(projectDir, injection, subagentChoices = null) {
390
- const fs = require('fs-extra');
391
387
  const targetPath = path.join(projectDir, injection.file);
392
388
 
393
389
  if (await this.exists(targetPath)) {
@@ -413,7 +409,6 @@ class AntigravitySetup extends BaseIdeSetup {
413
409
  * Copy selected subagents to appropriate Antigravity agents directory
414
410
  */
415
411
  async copySelectedSubagents(projectDir, handlerBaseDir, subagentConfig, choices, location) {
416
- const fs = require('fs-extra');
417
412
  const os = require('node:os');
418
413
 
419
414
  // Determine target directory based on user choice
@@ -458,6 +453,55 @@ class AntigravitySetup extends BaseIdeSetup {
458
453
  console.log(chalk.dim(` Total subagents installed: ${copiedCount}`));
459
454
  }
460
455
  }
456
+
457
+ /**
458
+ * Install a custom agent launcher for Antigravity
459
+ * @param {string} projectDir - Project directory
460
+ * @param {string} agentName - Agent name (e.g., "fred-commit-poet")
461
+ * @param {string} agentPath - Path to compiled agent (relative to project root)
462
+ * @param {Object} metadata - Agent metadata
463
+ * @returns {Object} Installation result
464
+ */
465
+ async installCustomAgentLauncher(projectDir, agentName, agentPath, metadata) {
466
+ // Create .agent/workflows/bmad directory structure (same as regular agents)
467
+ const agentDir = path.join(projectDir, this.configDir);
468
+ const workflowsDir = path.join(agentDir, this.workflowsDir);
469
+ const bmadWorkflowsDir = path.join(workflowsDir, 'bmad');
470
+
471
+ await fs.ensureDir(bmadWorkflowsDir);
472
+
473
+ // Create custom agent launcher with same pattern as regular agents
474
+ const launcherContent = `name: '${agentName}'
475
+ description: '${agentName} agent'
476
+ usage: |
477
+ Custom BMAD agent: ${agentName}
478
+
479
+ Launch with: /${agentName}
480
+
481
+ You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command.
482
+ <agent-activation CRITICAL="TRUE">
483
+ 1. LOAD the FULL agent file from @${agentPath}
484
+ 2. READ its entire contents - this contains the complete agent persona, menu, and instructions
485
+ 3. EXECUTE as ${agentName} with full persona adoption
486
+ </agent-activation>
487
+
488
+ ---
489
+
490
+ ⚠️ **IMPORTANT**: Run @${agentPath} to load the complete agent before using this launcher!`;
491
+
492
+ const fileName = `bmad-custom-agents-${agentName}.md`;
493
+ const launcherPath = path.join(bmadWorkflowsDir, fileName);
494
+
495
+ // Write the launcher file
496
+ await fs.writeFile(launcherPath, launcherContent, 'utf8');
497
+
498
+ return {
499
+ ide: 'antigravity',
500
+ path: path.relative(projectDir, launcherPath),
501
+ command: `/${agentName}`,
502
+ type: 'custom-agent-launcher',
503
+ };
504
+ }
461
505
  }
462
506
 
463
507
  module.exports = { AntigravitySetup };
@@ -1,7 +1,9 @@
1
1
  const path = require('node:path');
2
+ const fs = require('fs-extra');
2
3
  const { BaseIdeSetup } = require('./_base-ide');
3
4
  const chalk = require('chalk');
4
5
  const { AgentCommandGenerator } = require('./shared/agent-command-generator');
6
+ const { WorkflowCommandGenerator } = require('./shared/workflow-command-generator');
5
7
 
6
8
  /**
7
9
  * Auggie CLI setup handler
@@ -32,10 +34,23 @@ class AuggieSetup extends BaseIdeSetup {
32
34
  const agentGen = new AgentCommandGenerator(this.bmadFolderName);
33
35
  const { artifacts: agentArtifacts } = await agentGen.collectAgentArtifacts(bmadDir, options.selectedModules || []);
34
36
 
35
- // Get tasks, tools, and workflows (standalone only)
37
+ // Get tasks, tools, and workflows (ALL workflows now generate commands)
36
38
  const tasks = await this.getTasks(bmadDir, true);
37
39
  const tools = await this.getTools(bmadDir, true);
38
- const workflows = await this.getWorkflows(bmadDir, true);
40
+
41
+ // Get ALL workflows using the new workflow command generator
42
+ const workflowGenerator = new WorkflowCommandGenerator(this.bmadFolderName);
43
+ const { artifacts: workflowArtifacts, counts: workflowCounts } = await workflowGenerator.collectWorkflowArtifacts(bmadDir);
44
+
45
+ // Convert workflow artifacts to expected format
46
+ const workflows = workflowArtifacts
47
+ .filter((artifact) => artifact.type === 'workflow-command')
48
+ .map((artifact) => ({
49
+ module: artifact.module,
50
+ name: path.basename(artifact.relativePath, '.md'),
51
+ path: artifact.sourcePath,
52
+ content: artifact.content,
53
+ }));
39
54
 
40
55
  const bmadCommandsDir = path.join(location, 'bmad');
41
56
  const agentsDir = path.join(bmadCommandsDir, 'agents');
@@ -72,13 +87,11 @@ class AuggieSetup extends BaseIdeSetup {
72
87
  await this.writeFile(targetPath, commandContent);
73
88
  }
74
89
 
75
- // Install workflows
90
+ // Install workflows (already generated commands)
76
91
  for (const workflow of workflows) {
77
- const content = await this.readFile(workflow.path);
78
- const commandContent = this.createWorkflowCommand(workflow, content);
79
-
92
+ // Use the pre-generated workflow command content
80
93
  const targetPath = path.join(workflowsDir, `${workflow.module}-${workflow.name}.md`);
81
- await this.writeFile(targetPath, commandContent);
94
+ await this.writeFile(targetPath, workflow.content);
82
95
  }
83
96
 
84
97
  const totalInstalled = agentArtifacts.length + tasks.length + tools.length + workflows.length;
@@ -174,6 +187,58 @@ BMAD ${workflow.module.toUpperCase()} module
174
187
  console.log(chalk.dim(` Removed old BMAD commands`));
175
188
  }
176
189
  }
190
+
191
+ /**
192
+ * Install a custom agent launcher for Auggie
193
+ * @param {string} projectDir - Project directory
194
+ * @param {string} agentName - Agent name (e.g., "fred-commit-poet")
195
+ * @param {string} agentPath - Path to compiled agent (relative to project root)
196
+ * @param {Object} metadata - Agent metadata
197
+ * @returns {Object} Installation result
198
+ */
199
+ async installCustomAgentLauncher(projectDir, agentName, agentPath, metadata) {
200
+ // Auggie uses .augment/commands directory
201
+ const location = path.join(projectDir, '.augment', 'commands');
202
+ const bmadCommandsDir = path.join(location, 'bmad');
203
+ const agentsDir = path.join(bmadCommandsDir, 'agents');
204
+
205
+ // Create .augment/commands/bmad/agents directory if it doesn't exist
206
+ await fs.ensureDir(agentsDir);
207
+
208
+ // Create custom agent launcher
209
+ const launcherContent = `---
210
+ description: "Use the ${agentName} custom agent"
211
+ ---
212
+
213
+ # ${agentName} Custom Agent
214
+
215
+ **⚠️ IMPORTANT**: Run @${agentPath} first to load the complete agent!
216
+
217
+ This is a launcher for the custom BMAD agent "${agentName}".
218
+
219
+ ## Usage
220
+ 1. First run: \`${agentPath}\` to load the complete agent
221
+ 2. Then use this command to activate ${agentName}
222
+
223
+ The agent will follow the persona and instructions from the main agent file.
224
+
225
+ ## Module
226
+ BMAD Custom agent
227
+ `;
228
+
229
+ const fileName = `custom-${agentName.toLowerCase()}.md`;
230
+ const launcherPath = path.join(agentsDir, fileName);
231
+
232
+ // Write the launcher file
233
+ await fs.writeFile(launcherPath, launcherContent, 'utf8');
234
+
235
+ return {
236
+ ide: 'auggie',
237
+ path: path.relative(projectDir, launcherPath),
238
+ command: agentName,
239
+ type: 'custom-agent-launcher',
240
+ };
241
+ }
177
242
  }
178
243
 
179
244
  module.exports = { AuggieSetup };
@@ -1,4 +1,5 @@
1
1
  const path = require('node:path');
2
+ const fs = require('fs-extra');
2
3
  const { BaseIdeSetup } = require('./_base-ide');
3
4
  const chalk = require('chalk');
4
5
  const { getProjectRoot, getSourcePath, getModulePath } = require('../../../lib/project-root');
@@ -43,7 +44,6 @@ class ClaudeCodeSetup extends BaseIdeSetup {
43
44
  const injectionConfigPath = path.join(sourceModulesPath, moduleName, 'sub-modules', 'claude-code', 'injections.yaml');
44
45
 
45
46
  if (await this.exists(injectionConfigPath)) {
46
- const fs = require('fs-extra');
47
47
  const yaml = require('js-yaml');
48
48
 
49
49
  try {
@@ -87,7 +87,6 @@ class ClaudeCodeSetup extends BaseIdeSetup {
87
87
  * @param {string} projectDir - Project directory
88
88
  */
89
89
  async cleanup(projectDir) {
90
- const fs = require('fs-extra');
91
90
  const bmadCommandsDir = path.join(projectDir, this.configDir, this.commandsDir, 'bmad');
92
91
 
93
92
  if (await fs.pathExists(bmadCommandsDir)) {
@@ -199,7 +198,6 @@ class ClaudeCodeSetup extends BaseIdeSetup {
199
198
  * Read and process file content
200
199
  */
201
200
  async readAndProcess(filePath, metadata) {
202
- const fs = require('fs-extra');
203
201
  const content = await fs.readFile(filePath, 'utf8');
204
202
  return this.processContent(content, metadata);
205
203
  }
@@ -216,7 +214,6 @@ class ClaudeCodeSetup extends BaseIdeSetup {
216
214
  * Get agents from source modules (not installed location)
217
215
  */
218
216
  async getAgentsFromSource(sourceDir, selectedModules) {
219
- const fs = require('fs-extra');
220
217
  const agents = [];
221
218
 
222
219
  // Add core agents
@@ -395,7 +392,6 @@ class ClaudeCodeSetup extends BaseIdeSetup {
395
392
  * Inject content at specified point in file
396
393
  */
397
394
  async injectContent(projectDir, injection, subagentChoices = null) {
398
- const fs = require('fs-extra');
399
395
  const targetPath = path.join(projectDir, injection.file);
400
396
 
401
397
  if (await this.exists(targetPath)) {
@@ -421,7 +417,6 @@ class ClaudeCodeSetup extends BaseIdeSetup {
421
417
  * Copy selected subagents to appropriate Claude agents directory
422
418
  */
423
419
  async copySelectedSubagents(projectDir, handlerBaseDir, subagentConfig, choices, location) {
424
- const fs = require('fs-extra');
425
420
  const os = require('node:os');
426
421
 
427
422
  // Determine target directory based on user choice
@@ -209,6 +209,55 @@ class ClineSetup extends BaseIdeSetup {
209
209
  console.log(chalk.dim(`Removed ${this.name} BMAD configuration`));
210
210
  }
211
211
 
212
+ /**
213
+ * Install a custom agent launcher for Cline
214
+ * @param {string} projectDir - Project directory
215
+ * @param {string} agentName - Agent name (e.g., "fred-commit-poet")
216
+ * @param {string} agentPath - Path to compiled agent (relative to project root)
217
+ * @param {Object} metadata - Agent metadata
218
+ * @returns {Object} Installation result
219
+ */
220
+ async installCustomAgentLauncher(projectDir, agentName, agentPath, metadata) {
221
+ const clineDir = path.join(projectDir, this.configDir);
222
+ const workflowsDir = path.join(clineDir, this.workflowsDir);
223
+
224
+ // Create .clinerules/workflows directory if it doesn't exist
225
+ await fs.ensureDir(workflowsDir);
226
+
227
+ // Create custom agent launcher workflow
228
+ const launcherContent = `name: ${agentName}
229
+ description: Custom BMAD agent: ${agentName}
230
+
231
+ # ${agentName} Custom Agent
232
+
233
+ **⚠️ IMPORTANT**: Run @${agentPath} first to load the complete agent!
234
+
235
+ This is a launcher for the custom BMAD agent "${agentName}".
236
+
237
+ ## Usage
238
+ 1. First run: \`${agentPath}\` to load the complete agent
239
+ 2. Then use this workflow as ${agentName}
240
+
241
+ The agent will follow the persona and instructions from the main agent file.
242
+
243
+ ---
244
+
245
+ *Generated by BMAD Method*`;
246
+
247
+ const fileName = `bmad-custom-${agentName.toLowerCase()}.md`;
248
+ const launcherPath = path.join(workflowsDir, fileName);
249
+
250
+ // Write the launcher file
251
+ await fs.writeFile(launcherPath, launcherContent, 'utf8');
252
+
253
+ return {
254
+ ide: 'cline',
255
+ path: path.relative(projectDir, launcherPath),
256
+ command: agentName,
257
+ type: 'custom-agent-launcher',
258
+ };
259
+ }
260
+
212
261
  /**
213
262
  * Utility: Ensure directory exists
214
263
  */
@@ -354,7 +354,7 @@ class CodexSetup extends BaseIdeSetup {
354
354
  * @returns {Object|null} Info about created command
355
355
  */
356
356
  async installCustomAgentLauncher(projectDir, agentName, agentPath, metadata) {
357
- const destDir = this.getCodexPromptDir();
357
+ const destDir = this.getCodexPromptDir(projectDir, 'project');
358
358
  await fs.ensureDir(destDir);
359
359
 
360
360
  const launcherContent = `---
@@ -379,7 +379,7 @@ You must fully embody this agent's persona and follow all activation instruction
379
379
  await fs.writeFile(launcherPath, launcherContent, 'utf8');
380
380
 
381
381
  return {
382
- path: launcherPath,
382
+ path: path.relative(projectDir, launcherPath),
383
383
  command: `/${fileName.replace('.md', '')}`,
384
384
  };
385
385
  }
@@ -1,7 +1,9 @@
1
1
  const path = require('node:path');
2
+ const fs = require('fs-extra');
2
3
  const { BaseIdeSetup } = require('./_base-ide');
3
4
  const chalk = require('chalk');
4
5
  const { AgentCommandGenerator } = require('./shared/agent-command-generator');
6
+ const { WorkflowCommandGenerator } = require('./shared/workflow-command-generator');
5
7
 
6
8
  /**
7
9
  * Crush IDE setup handler
@@ -33,10 +35,23 @@ class CrushSetup extends BaseIdeSetup {
33
35
  const agentGen = new AgentCommandGenerator(this.bmadFolderName);
34
36
  const { artifacts: agentArtifacts } = await agentGen.collectAgentArtifacts(bmadDir, options.selectedModules || []);
35
37
 
36
- // Get tasks, tools, and workflows (standalone only)
38
+ // Get tasks, tools, and workflows (ALL workflows now generate commands)
37
39
  const tasks = await this.getTasks(bmadDir, true);
38
40
  const tools = await this.getTools(bmadDir, true);
39
- const workflows = await this.getWorkflows(bmadDir, true);
41
+
42
+ // Get ALL workflows using the new workflow command generator
43
+ const workflowGenerator = new WorkflowCommandGenerator(this.bmadFolderName);
44
+ const { artifacts: workflowArtifacts, counts: workflowCounts } = await workflowGenerator.collectWorkflowArtifacts(bmadDir);
45
+
46
+ // Convert workflow artifacts to expected format for organizeByModule
47
+ const workflows = workflowArtifacts
48
+ .filter((artifact) => artifact.type === 'workflow-command')
49
+ .map((artifact) => ({
50
+ module: artifact.module,
51
+ name: path.basename(artifact.relativePath, '.md'),
52
+ path: artifact.sourcePath,
53
+ content: artifact.content,
54
+ }));
40
55
 
41
56
  // Organize by module
42
57
  const agentCount = await this.organizeByModule(commandsDir, agentArtifacts, tasks, tools, workflows, projectDir);
@@ -112,13 +127,12 @@ class CrushSetup extends BaseIdeSetup {
112
127
  toolCount++;
113
128
  }
114
129
 
115
- // Copy module-specific workflows
130
+ // Copy module-specific workflow commands (already generated)
116
131
  const moduleWorkflows = workflows.filter((w) => w.module === module);
117
132
  for (const workflow of moduleWorkflows) {
118
- const content = await this.readFile(workflow.path);
119
- const commandContent = this.createWorkflowCommand(workflow, content);
133
+ // Use the pre-generated workflow command content
120
134
  const targetPath = path.join(moduleWorkflowsDir, `${workflow.name}.md`);
121
- await this.writeFile(targetPath, commandContent);
135
+ await this.writeFile(targetPath, workflow.content);
122
136
  workflowCount++;
123
137
  }
124
138
  }
@@ -235,6 +249,52 @@ Part of the BMAD ${workflow.module.toUpperCase()} module.
235
249
  console.log(chalk.dim(`Removed BMAD commands from Crush`));
236
250
  }
237
251
  }
252
+
253
+ /**
254
+ * Install a custom agent launcher for Crush
255
+ * @param {string} projectDir - Project directory
256
+ * @param {string} agentName - Agent name (e.g., "fred-commit-poet")
257
+ * @param {string} agentPath - Path to compiled agent (relative to project root)
258
+ * @param {Object} metadata - Agent metadata
259
+ * @returns {Object} Installation result
260
+ */
261
+ async installCustomAgentLauncher(projectDir, agentName, agentPath, metadata) {
262
+ const crushDir = path.join(projectDir, this.configDir);
263
+ const bmadCommandsDir = path.join(crushDir, this.commandsDir, 'bmad');
264
+
265
+ // Create .crush/commands/bmad directory if it doesn't exist
266
+ await fs.ensureDir(bmadCommandsDir);
267
+
268
+ // Create custom agent launcher
269
+ const launcherContent = `# ${agentName} Custom Agent
270
+
271
+ **⚠️ IMPORTANT**: Run @${agentPath} first to load the complete agent!
272
+
273
+ This is a launcher for the custom BMAD agent "${agentName}".
274
+
275
+ ## Usage
276
+ 1. First run: \`${agentPath}\` to load the complete agent
277
+ 2. Then use this command to activate ${agentName}
278
+
279
+ The agent will follow the persona and instructions from the main agent file.
280
+
281
+ ---
282
+
283
+ *Generated by BMAD Method*`;
284
+
285
+ const fileName = `custom-${agentName.toLowerCase()}.md`;
286
+ const launcherPath = path.join(bmadCommandsDir, fileName);
287
+
288
+ // Write the launcher file
289
+ await fs.writeFile(launcherPath, launcherContent, 'utf8');
290
+
291
+ return {
292
+ ide: 'crush',
293
+ path: path.relative(projectDir, launcherPath),
294
+ command: agentName,
295
+ type: 'custom-agent-launcher',
296
+ };
297
+ }
238
298
  }
239
299
 
240
300
  module.exports = { CrushSetup };
@@ -2,6 +2,7 @@ const path = require('node:path');
2
2
  const { BaseIdeSetup } = require('./_base-ide');
3
3
  const chalk = require('chalk');
4
4
  const { AgentCommandGenerator } = require('./shared/agent-command-generator');
5
+ const { WorkflowCommandGenerator } = require('./shared/workflow-command-generator');
5
6
 
6
7
  /**
7
8
  * Cursor IDE setup handler
@@ -53,10 +54,22 @@ class CursorSetup extends BaseIdeSetup {
53
54
  // Convert artifacts to agent format for index creation
54
55
  const agents = agentArtifacts.map((a) => ({ module: a.module, name: a.name }));
55
56
 
56
- // Get tasks, tools, and workflows (standalone only)
57
+ // Get tasks, tools, and workflows (ALL workflows now generate commands)
57
58
  const tasks = await this.getTasks(bmadDir, true);
58
59
  const tools = await this.getTools(bmadDir, true);
59
- const workflows = await this.getWorkflows(bmadDir, true);
60
+
61
+ // Get ALL workflows using the new workflow command generator
62
+ const workflowGenerator = new WorkflowCommandGenerator(this.bmadFolderName);
63
+ const { artifacts: workflowArtifacts, counts: workflowCounts } = await workflowGenerator.collectWorkflowArtifacts(bmadDir);
64
+
65
+ // Convert artifacts to workflow objects for directory creation
66
+ const workflows = workflowArtifacts
67
+ .filter((artifact) => artifact.type === 'workflow-command')
68
+ .map((artifact) => ({
69
+ module: artifact.module,
70
+ name: path.basename(artifact.relativePath, '.md'),
71
+ path: artifact.sourcePath,
72
+ }));
60
73
 
61
74
  // Create directories for each module
62
75
  const modules = new Set();
@@ -113,18 +126,21 @@ class CursorSetup extends BaseIdeSetup {
113
126
  toolCount++;
114
127
  }
115
128
 
116
- // Process and copy workflows
129
+ // Process and copy workflow commands (generated, not raw workflows)
117
130
  let workflowCount = 0;
118
- for (const workflow of workflows) {
119
- const content = await this.readAndProcess(workflow.path, {
120
- module: workflow.module,
121
- name: workflow.name,
122
- });
123
-
124
- const targetPath = path.join(bmadRulesDir, workflow.module, 'workflows', `${workflow.name}.mdc`);
125
-
126
- await this.writeFile(targetPath, content);
127
- workflowCount++;
131
+ for (const artifact of workflowArtifacts) {
132
+ if (artifact.type === 'workflow-command') {
133
+ // Add MDC metadata header to workflow command
134
+ const content = this.wrapLauncherWithMDC(artifact.content, {
135
+ module: artifact.module,
136
+ name: path.basename(artifact.relativePath, '.md'),
137
+ });
138
+
139
+ const targetPath = path.join(bmadRulesDir, artifact.module, 'workflows', `${path.basename(artifact.relativePath, '.md')}.mdc`);
140
+
141
+ await this.writeFile(targetPath, content);
142
+ workflowCount++;
143
+ }
128
144
  }
129
145
 
130
146
  // Create BMAD index file (but NOT .cursorrules - user manages that)
@@ -4,6 +4,7 @@ const yaml = require('js-yaml');
4
4
  const { BaseIdeSetup } = require('./_base-ide');
5
5
  const chalk = require('chalk');
6
6
  const { AgentCommandGenerator } = require('./shared/agent-command-generator');
7
+ const { WorkflowCommandGenerator } = require('./shared/workflow-command-generator');
7
8
 
8
9
  /**
9
10
  * Gemini CLI setup handler
@@ -68,9 +69,13 @@ class GeminiSetup extends BaseIdeSetup {
68
69
  const agentGen = new AgentCommandGenerator(this.bmadFolderName);
69
70
  const { artifacts: agentArtifacts } = await agentGen.collectAgentArtifacts(bmadDir, options.selectedModules || []);
70
71
 
71
- // Get tasks
72
+ // Get tasks and workflows (ALL workflows now generate commands)
72
73
  const tasks = await this.getTasks(bmadDir);
73
74
 
75
+ // Get ALL workflows using the new workflow command generator
76
+ const workflowGenerator = new WorkflowCommandGenerator(this.bmadFolderName);
77
+ const { artifacts: workflowArtifacts, counts: workflowCounts } = await workflowGenerator.collectWorkflowArtifacts(bmadDir);
78
+
74
79
  // Install agents as TOML files with bmad- prefix (flat structure)
75
80
  let agentCount = 0;
76
81
  for (const artifact of agentArtifacts) {
@@ -98,17 +103,37 @@ class GeminiSetup extends BaseIdeSetup {
98
103
  console.log(chalk.green(` ✓ Added task: /bmad:tasks:${task.module}:${task.name}`));
99
104
  }
100
105
 
106
+ // Install workflows as TOML files with bmad- prefix (flat structure)
107
+ let workflowCount = 0;
108
+ for (const artifact of workflowArtifacts) {
109
+ if (artifact.type === 'workflow-command') {
110
+ // Create TOML wrapper around workflow command content
111
+ const tomlContent = await this.createWorkflowToml(artifact);
112
+
113
+ // Flat structure: bmad-workflow-{module}-{name}.toml
114
+ const workflowName = path.basename(artifact.relativePath, '.md');
115
+ const tomlPath = path.join(commandsDir, `bmad-workflow-${artifact.module}-${workflowName}.toml`);
116
+ await this.writeFile(tomlPath, tomlContent);
117
+ workflowCount++;
118
+
119
+ console.log(chalk.green(` ✓ Added workflow: /bmad:workflows:${artifact.module}:${workflowName}`));
120
+ }
121
+ }
122
+
101
123
  console.log(chalk.green(`✓ ${this.name} configured:`));
102
124
  console.log(chalk.dim(` - ${agentCount} agents configured`));
103
125
  console.log(chalk.dim(` - ${taskCount} tasks configured`));
126
+ console.log(chalk.dim(` - ${workflowCount} workflows configured`));
104
127
  console.log(chalk.dim(` - Commands directory: ${path.relative(projectDir, commandsDir)}`));
105
128
  console.log(chalk.dim(` - Agent activation: /bmad:agents:{agent-name}`));
106
129
  console.log(chalk.dim(` - Task activation: /bmad:tasks:{task-name}`));
130
+ console.log(chalk.dim(` - Workflow activation: /bmad:workflows:{workflow-name}`));
107
131
 
108
132
  return {
109
133
  success: true,
110
134
  agents: agentCount,
111
135
  tasks: taskCount,
136
+ workflows: workflowCount,
112
137
  };
113
138
  }
114
139
 
@@ -149,6 +174,7 @@ ${contentWithoutFrontmatter}
149
174
  // Note: {user_name} and other {config_values} are left as-is for runtime substitution by Gemini
150
175
  const tomlContent = template
151
176
  .replaceAll('{{title}}', title)
177
+ .replaceAll('{{*bmad_folder*}}', '{bmad_folder}')
152
178
  .replaceAll('{{bmad_folder}}', this.bmadFolderName)
153
179
  .replaceAll('{{module}}', agent.module)
154
180
  .replaceAll('{{name}}', agent.name);
@@ -170,6 +196,7 @@ ${contentWithoutFrontmatter}
170
196
  // Replace template variables
171
197
  const tomlContent = template
172
198
  .replaceAll('{{taskName}}', taskName)
199
+ .replaceAll('{{*bmad_folder*}}', '{bmad_folder}')
173
200
  .replaceAll('{{bmad_folder}}', this.bmadFolderName)
174
201
  .replaceAll('{{module}}', task.module)
175
202
  .replaceAll('{{filename}}', task.filename);
@@ -177,6 +204,27 @@ ${contentWithoutFrontmatter}
177
204
  return tomlContent;
178
205
  }
179
206
 
207
+ /**
208
+ * Create workflow TOML content from artifact
209
+ */
210
+ async createWorkflowToml(artifact) {
211
+ // Extract description from artifact content
212
+ const descriptionMatch = artifact.content.match(/description:\s*"([^"]+)"/);
213
+ const description = descriptionMatch
214
+ ? descriptionMatch[1]
215
+ : `BMAD ${artifact.module.toUpperCase()} Workflow: ${path.basename(artifact.relativePath, '.md')}`;
216
+
217
+ // Strip frontmatter from command content
218
+ const frontmatterRegex = /^---\s*\n[\s\S]*?\n---\s*\n/;
219
+ const contentWithoutFrontmatter = artifact.content.replace(frontmatterRegex, '').trim();
220
+
221
+ return `description = "${description}"
222
+ prompt = """
223
+ ${contentWithoutFrontmatter}
224
+ """
225
+ `;
226
+ }
227
+
180
228
  /**
181
229
  * Cleanup Gemini configuration - surgically remove only BMAD files
182
230
  */
@@ -201,6 +249,53 @@ ${contentWithoutFrontmatter}
201
249
  }
202
250
  }
203
251
  }
252
+
253
+ /**
254
+ * Install a custom agent launcher for Gemini
255
+ * @param {string} projectDir - Project directory
256
+ * @param {string} agentName - Agent name (e.g., "fred-commit-poet")
257
+ * @param {string} agentPath - Path to compiled agent (relative to project root)
258
+ * @param {Object} metadata - Agent metadata
259
+ * @returns {Object} Installation result
260
+ */
261
+ async installCustomAgentLauncher(projectDir, agentName, agentPath, metadata) {
262
+ const geminiDir = path.join(projectDir, this.configDir);
263
+ const commandsDir = path.join(geminiDir, this.commandsDir);
264
+
265
+ // Create .gemini/commands directory if it doesn't exist
266
+ await fs.ensureDir(commandsDir);
267
+
268
+ // Create custom agent launcher in TOML format
269
+ const launcherContent = `description = "Custom BMAD Agent: ${agentName}"
270
+ prompt = """
271
+ **⚠️ IMPORTANT**: Run @${agentPath} first to load the complete agent!
272
+
273
+ This is a launcher for the custom BMAD agent "${agentName}".
274
+
275
+ ## Usage
276
+ 1. First run: \`${agentPath}\` to load the complete agent
277
+ 2. Then use this command to activate ${agentName}
278
+
279
+ The agent will follow the persona and instructions from the main agent file.
280
+
281
+ ---
282
+
283
+ *Generated by BMAD Method*
284
+ """`;
285
+
286
+ const fileName = `bmad-custom-${agentName.toLowerCase()}.toml`;
287
+ const launcherPath = path.join(commandsDir, fileName);
288
+
289
+ // Write the launcher file
290
+ await fs.writeFile(launcherPath, launcherContent, 'utf8');
291
+
292
+ return {
293
+ ide: 'gemini',
294
+ path: path.relative(projectDir, launcherPath),
295
+ command: agentName,
296
+ type: 'custom-agent-launcher',
297
+ };
298
+ }
204
299
  }
205
300
 
206
301
  module.exports = { GeminiSetup };