bmad-method 6.0.0-alpha.8 → 6.0.1

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 (1313) hide show
  1. package/.augment/code_review_guidelines.yaml +271 -0
  2. package/.claude/skills/bmad-os-changelog-social/SKILL.md +178 -0
  3. package/.claude/skills/bmad-os-changelog-social/examples/discord-example.md +53 -0
  4. package/.claude/skills/bmad-os-changelog-social/examples/linkedin-example.md +49 -0
  5. package/.claude/skills/bmad-os-changelog-social/examples/twitter-example.md +55 -0
  6. package/.claude/skills/bmad-os-diataxis-style-fix/SKILL.md +7 -0
  7. package/.claude/skills/bmad-os-diataxis-style-fix/prompts/instructions.md +229 -0
  8. package/.claude/skills/bmad-os-draft-changelog/SKILL.md +7 -0
  9. package/.claude/skills/bmad-os-draft-changelog/prompts/instructions.md +82 -0
  10. package/.claude/skills/bmad-os-gh-triage/README.md +14 -0
  11. package/.claude/skills/bmad-os-gh-triage/SKILL.md +12 -0
  12. package/.claude/skills/bmad-os-gh-triage/prompts/agent-prompt.md +60 -0
  13. package/.claude/skills/bmad-os-gh-triage/prompts/instructions.md +74 -0
  14. package/.claude/skills/bmad-os-release-module/README.md +24 -0
  15. package/.claude/skills/bmad-os-release-module/SKILL.md +7 -0
  16. package/.claude/skills/bmad-os-release-module/prompts/instructions.md +53 -0
  17. package/.coderabbit.yaml +85 -0
  18. package/.github/CODE_OF_CONDUCT.md +128 -0
  19. package/.github/ISSUE_TEMPLATE/bug-report.yaml +124 -0
  20. package/.github/ISSUE_TEMPLATE/config.yaml +5 -2
  21. package/.github/ISSUE_TEMPLATE/documentation.yaml +55 -0
  22. package/.github/ISSUE_TEMPLATE/feature-request.md +22 -0
  23. package/.github/ISSUE_TEMPLATE/issue.md +32 -0
  24. package/.github/PULL_REQUEST_TEMPLATE.md +13 -0
  25. package/.github/scripts/discord-helpers.sh +34 -0
  26. package/.github/workflows/coderabbit-review.yaml +22 -0
  27. package/.github/workflows/discord.yaml +82 -8
  28. package/.github/workflows/docs.yaml +64 -0
  29. package/.github/workflows/quality.yaml +40 -2
  30. package/.husky/pre-commit +13 -0
  31. package/.markdownlint-cli2.yaml +41 -0
  32. package/.prettierignore +7 -0
  33. package/.vscode/settings.json +4 -3
  34. package/CHANGELOG.md +1220 -382
  35. package/CNAME +1 -0
  36. package/CONTRIBUTING.md +97 -189
  37. package/CONTRIBUTORS.md +32 -0
  38. package/LICENSE +7 -3
  39. package/README.md +51 -388
  40. package/SECURITY.md +85 -0
  41. package/TRADEMARK.md +55 -0
  42. package/Wordmark.png +0 -0
  43. package/banner-bmad-method.png +0 -0
  44. package/docs/404.md +9 -0
  45. package/docs/_STYLE_GUIDE.md +370 -0
  46. package/docs/explanation/advanced-elicitation.md +49 -0
  47. package/docs/explanation/adversarial-review.md +59 -0
  48. package/docs/explanation/brainstorming.md +33 -0
  49. package/docs/explanation/established-projects-faq.md +50 -0
  50. package/docs/explanation/party-mode.md +59 -0
  51. package/docs/explanation/preventing-agent-conflicts.md +112 -0
  52. package/docs/explanation/project-context.md +157 -0
  53. package/docs/explanation/quick-flow.md +73 -0
  54. package/docs/explanation/why-solutioning-matters.md +77 -0
  55. package/docs/how-to/customize-bmad.md +172 -0
  56. package/docs/how-to/established-projects.md +105 -0
  57. package/docs/how-to/get-answers-about-bmad.md +103 -0
  58. package/docs/how-to/install-bmad.md +88 -0
  59. package/docs/how-to/non-interactive-installation.md +171 -0
  60. package/docs/how-to/project-context.md +136 -0
  61. package/docs/how-to/quick-fixes.md +123 -0
  62. package/docs/how-to/shard-large-documents.md +78 -0
  63. package/docs/how-to/upgrade-to-v6.md +97 -0
  64. package/docs/index.md +33 -204
  65. package/docs/reference/agents.md +28 -0
  66. package/docs/reference/commands.md +131 -0
  67. package/docs/reference/modules.md +76 -0
  68. package/docs/reference/testing.md +106 -0
  69. package/docs/reference/workflow-map.md +122 -0
  70. package/docs/tutorials/getting-started.md +219 -0
  71. package/eslint.config.mjs +26 -16
  72. package/package.json +35 -28
  73. package/src/bmm/agents/analyst.agent.yaml +43 -0
  74. package/src/bmm/agents/architect.agent.yaml +29 -0
  75. package/src/bmm/agents/dev.agent.yaml +38 -0
  76. package/src/bmm/agents/pm.agent.yaml +44 -0
  77. package/src/bmm/agents/qa.agent.yaml +58 -0
  78. package/src/bmm/agents/quick-flow-solo-dev.agent.yaml +32 -0
  79. package/src/bmm/agents/sm.agent.yaml +37 -0
  80. package/src/bmm/agents/tech-writer/tech-writer-sidecar/documentation-standards.md +224 -0
  81. package/src/bmm/agents/tech-writer/tech-writer.agent.yaml +46 -0
  82. package/src/bmm/agents/ux-designer.agent.yaml +27 -0
  83. package/src/bmm/data/project-context-template.md +26 -0
  84. package/src/bmm/module-help.csv +31 -0
  85. package/src/bmm/module.yaml +50 -0
  86. package/src/bmm/teams/default-party.csv +20 -0
  87. package/src/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +10 -0
  88. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +177 -0
  89. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +161 -0
  90. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +199 -0
  91. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +202 -0
  92. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +205 -0
  93. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +219 -0
  94. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +162 -0
  95. package/src/bmm/workflows/1-analysis/create-product-brief/workflow.md +57 -0
  96. package/src/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +137 -0
  97. package/src/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +229 -0
  98. package/src/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +238 -0
  99. package/src/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +206 -0
  100. package/src/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +234 -0
  101. package/src/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +443 -0
  102. package/src/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +182 -0
  103. package/src/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -0
  104. package/src/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -0
  105. package/src/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -0
  106. package/src/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -0
  107. package/src/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +475 -0
  108. package/src/bmm/workflows/1-analysis/research/research.template.md +29 -0
  109. package/src/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +137 -0
  110. package/src/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +239 -0
  111. package/src/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +248 -0
  112. package/src/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +202 -0
  113. package/src/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +233 -0
  114. package/src/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +486 -0
  115. package/src/bmm/workflows/1-analysis/research/workflow-domain-research.md +54 -0
  116. package/src/bmm/workflows/1-analysis/research/workflow-market-research.md +54 -0
  117. package/src/bmm/workflows/1-analysis/research/workflow-technical-research.md +54 -0
  118. package/src/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv +15 -0
  119. package/src/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md +197 -0
  120. package/src/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv +11 -0
  121. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01-init.md +191 -0
  122. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01b-continue.md +153 -0
  123. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md +224 -0
  124. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02b-vision.md +154 -0
  125. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02c-executive-summary.md +170 -0
  126. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md +226 -0
  127. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md +213 -0
  128. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md +207 -0
  129. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md +226 -0
  130. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md +237 -0
  131. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md +228 -0
  132. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md +231 -0
  133. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md +242 -0
  134. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md +217 -0
  135. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md +124 -0
  136. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md +247 -0
  137. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01b-legacy-conversion.md +208 -0
  138. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md +249 -0
  139. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-03-edit.md +253 -0
  140. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-04-complete.md +168 -0
  141. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +226 -0
  142. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +191 -0
  143. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +209 -0
  144. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +174 -0
  145. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +214 -0
  146. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +228 -0
  147. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +217 -0
  148. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +205 -0
  149. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +243 -0
  150. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +263 -0
  151. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +209 -0
  152. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +264 -0
  153. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +242 -0
  154. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +231 -0
  155. package/src/bmm/workflows/2-plan-workflows/create-prd/templates/prd-template.md +10 -0
  156. package/src/bmm/workflows/2-plan-workflows/create-prd/workflow-create-prd.md +63 -0
  157. package/src/bmm/workflows/2-plan-workflows/create-prd/workflow-edit-prd.md +65 -0
  158. package/src/bmm/workflows/2-plan-workflows/create-prd/workflow-validate-prd.md +63 -0
  159. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +135 -0
  160. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +127 -0
  161. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +190 -0
  162. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +216 -0
  163. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +219 -0
  164. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +234 -0
  165. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +252 -0
  166. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +254 -0
  167. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +224 -0
  168. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +224 -0
  169. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +241 -0
  170. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +248 -0
  171. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +237 -0
  172. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +264 -0
  173. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +171 -0
  174. package/src/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +13 -0
  175. package/src/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +42 -0
  176. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +184 -0
  177. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +172 -0
  178. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +173 -0
  179. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +133 -0
  180. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +245 -0
  181. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +129 -0
  182. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +4 -0
  183. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +54 -0
  184. package/src/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +12 -0
  185. package/src/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +13 -0
  186. package/src/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +7 -0
  187. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +153 -0
  188. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +164 -0
  189. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +224 -0
  190. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +331 -0
  191. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +318 -0
  192. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +359 -0
  193. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +379 -0
  194. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +359 -0
  195. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +76 -0
  196. package/src/bmm/workflows/3-solutioning/create-architecture/workflow.md +49 -0
  197. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +259 -0
  198. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +233 -0
  199. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +272 -0
  200. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +149 -0
  201. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -0
  202. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +58 -0
  203. package/src/bmm/workflows/4-implementation/code-review/checklist.md +23 -0
  204. package/src/bmm/workflows/4-implementation/code-review/instructions.xml +227 -0
  205. package/src/bmm/workflows/4-implementation/code-review/workflow.yaml +44 -0
  206. package/src/bmm/workflows/4-implementation/correct-course/checklist.md +288 -0
  207. package/src/bmm/workflows/4-implementation/correct-course/instructions.md +207 -0
  208. package/src/bmm/workflows/4-implementation/correct-course/workflow.yaml +54 -0
  209. package/src/bmm/workflows/4-implementation/create-story/checklist.md +358 -0
  210. package/src/bmm/workflows/4-implementation/create-story/instructions.xml +346 -0
  211. package/src/bmm/workflows/4-implementation/create-story/template.md +49 -0
  212. package/src/bmm/workflows/4-implementation/create-story/workflow.yaml +53 -0
  213. package/src/bmm/workflows/4-implementation/dev-story/checklist.md +80 -0
  214. package/src/bmm/workflows/4-implementation/dev-story/instructions.xml +410 -0
  215. package/src/bmm/workflows/4-implementation/dev-story/workflow.yaml +21 -0
  216. package/src/bmm/workflows/4-implementation/retrospective/instructions.md +1444 -0
  217. package/src/bmm/workflows/4-implementation/retrospective/workflow.yaml +53 -0
  218. package/src/bmm/workflows/4-implementation/sprint-planning/instructions.md +226 -0
  219. package/src/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
  220. package/src/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +47 -0
  221. package/src/bmm/workflows/4-implementation/sprint-status/instructions.md +230 -0
  222. package/src/bmm/workflows/4-implementation/sprint-status/workflow.yaml +25 -0
  223. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +174 -0
  224. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +118 -0
  225. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +111 -0
  226. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +111 -0
  227. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +104 -0
  228. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +146 -0
  229. package/src/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +50 -0
  230. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +191 -0
  231. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +144 -0
  232. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +127 -0
  233. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +200 -0
  234. package/src/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +74 -0
  235. package/src/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +79 -0
  236. package/src/bmm/workflows/document-project/checklist.md +245 -0
  237. package/src/bmm/workflows/document-project/instructions.md +130 -0
  238. package/src/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
  239. package/src/bmm/workflows/document-project/workflow.yaml +22 -0
  240. package/src/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
  241. package/src/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
  242. package/src/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
  243. package/src/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
  244. package/src/bmm/workflows/generate-project-context/project-context-template.md +21 -0
  245. package/src/bmm/workflows/generate-project-context/steps/step-01-discover.md +184 -0
  246. package/src/bmm/workflows/generate-project-context/steps/step-02-generate.md +318 -0
  247. package/src/bmm/workflows/generate-project-context/steps/step-03-complete.md +278 -0
  248. package/src/bmm/workflows/generate-project-context/workflow.md +49 -0
  249. package/src/bmm/workflows/qa/automate/checklist.md +33 -0
  250. package/src/bmm/workflows/qa/automate/instructions.md +110 -0
  251. package/src/bmm/workflows/qa/automate/workflow.yaml +44 -0
  252. package/src/core/agents/bmad-master.agent.yaml +12 -21
  253. package/src/core/module-help.csv +9 -0
  254. package/src/core/module.yaml +25 -0
  255. package/src/core/tasks/editorial-review-prose.xml +102 -0
  256. package/src/core/tasks/editorial-review-structure.xml +209 -0
  257. package/src/core/tasks/help.md +85 -0
  258. package/src/core/tasks/index-docs.xml +2 -2
  259. package/src/core/tasks/review-adversarial-general.xml +48 -0
  260. package/src/core/tasks/shard-doc.xml +108 -0
  261. package/src/core/tasks/workflow.xml +126 -47
  262. package/src/core/workflows/advanced-elicitation/methods.csv +51 -0
  263. package/src/core/workflows/advanced-elicitation/workflow.xml +117 -0
  264. package/src/core/workflows/brainstorming/brain-methods.csv +62 -36
  265. package/src/core/workflows/brainstorming/steps/step-01-session-setup.md +197 -0
  266. package/src/core/workflows/brainstorming/steps/step-01b-continue.md +122 -0
  267. package/src/core/workflows/brainstorming/steps/step-02a-user-selected.md +225 -0
  268. package/src/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +237 -0
  269. package/src/core/workflows/brainstorming/steps/step-02c-random-selection.md +209 -0
  270. package/src/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +264 -0
  271. package/src/core/workflows/brainstorming/steps/step-03-technique-execution.md +399 -0
  272. package/src/core/workflows/brainstorming/steps/step-04-idea-organization.md +303 -0
  273. package/src/core/workflows/brainstorming/template.md +13 -100
  274. package/src/core/workflows/brainstorming/workflow.md +58 -0
  275. package/src/core/workflows/party-mode/steps/step-01-agent-loading.md +138 -0
  276. package/src/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +187 -0
  277. package/src/core/workflows/party-mode/steps/step-03-graceful-exit.md +168 -0
  278. package/src/core/workflows/party-mode/workflow.md +194 -0
  279. package/src/utility/agent-components/activation-rules.txt +6 -0
  280. package/src/utility/agent-components/activation-steps.txt +14 -0
  281. package/src/utility/agent-components/agent-command-header.md +1 -0
  282. package/src/utility/agent-components/agent.customize.template.yaml +41 -0
  283. package/src/utility/agent-components/handler-action.txt +4 -0
  284. package/src/utility/agent-components/handler-exec.txt +6 -0
  285. package/src/utility/agent-components/handler-multi.txt +14 -0
  286. package/src/utility/agent-components/handler-tmpl.txt +5 -0
  287. package/src/utility/agent-components/handler-validate-workflow.txt +7 -0
  288. package/src/utility/agent-components/handler-workflow.txt +10 -0
  289. package/src/utility/agent-components/menu-handlers.txt +6 -0
  290. package/test/README.md +4 -4
  291. package/test/adversarial-review-tests/README.md +56 -0
  292. package/test/adversarial-review-tests/sample-content.md +46 -0
  293. package/test/adversarial-review-tests/test-cases.yaml +103 -0
  294. package/test/fixtures/agent-schema/invalid/critical-actions/actions-as-string.agent.yaml +1 -0
  295. package/test/fixtures/agent-schema/invalid/critical-actions/empty-string-in-actions.agent.yaml +1 -0
  296. package/test/fixtures/agent-schema/invalid/menu/empty-menu.agent.yaml +1 -0
  297. package/test/fixtures/agent-schema/invalid/menu/missing-menu.agent.yaml +1 -0
  298. package/test/fixtures/agent-schema/invalid/menu-commands/empty-command-target.agent.yaml +1 -0
  299. package/test/fixtures/agent-schema/invalid/menu-commands/no-command-target.agent.yaml +1 -0
  300. package/test/fixtures/agent-schema/invalid/menu-triggers/camel-case.agent.yaml +1 -0
  301. package/test/fixtures/agent-schema/invalid/menu-triggers/compound-invalid-format.agent.yaml +25 -0
  302. package/test/fixtures/agent-schema/invalid/menu-triggers/compound-mismatched-kebab.agent.yaml +25 -0
  303. package/test/fixtures/agent-schema/invalid/menu-triggers/duplicate-triggers.agent.yaml +1 -0
  304. package/test/fixtures/agent-schema/invalid/menu-triggers/empty-trigger.agent.yaml +1 -0
  305. package/test/fixtures/agent-schema/invalid/menu-triggers/leading-asterisk.agent.yaml +1 -0
  306. package/test/fixtures/agent-schema/invalid/menu-triggers/snake-case.agent.yaml +1 -0
  307. package/test/fixtures/agent-schema/invalid/menu-triggers/trigger-with-spaces.agent.yaml +1 -0
  308. package/test/fixtures/agent-schema/invalid/metadata/empty-module-string.agent.yaml +1 -1
  309. package/test/fixtures/agent-schema/invalid/metadata/extra-metadata-fields.agent.yaml +1 -0
  310. package/test/fixtures/agent-schema/invalid/persona/empty-principles-array.agent.yaml +1 -0
  311. package/test/fixtures/agent-schema/invalid/persona/empty-string-in-principles.agent.yaml +1 -0
  312. package/test/fixtures/agent-schema/invalid/persona/extra-persona-fields.agent.yaml +1 -0
  313. package/test/fixtures/agent-schema/invalid/persona/missing-role.agent.yaml +1 -0
  314. package/test/fixtures/agent-schema/invalid/prompts/empty-content.agent.yaml +1 -0
  315. package/test/fixtures/agent-schema/invalid/prompts/extra-prompt-fields.agent.yaml +1 -0
  316. package/test/fixtures/agent-schema/invalid/prompts/missing-content.agent.yaml +1 -0
  317. package/test/fixtures/agent-schema/invalid/prompts/missing-id.agent.yaml +1 -0
  318. package/test/fixtures/agent-schema/invalid/top-level/extra-top-level-keys.agent.yaml +1 -0
  319. package/test/fixtures/agent-schema/valid/critical-actions/empty-critical-actions.agent.yaml +1 -0
  320. package/test/fixtures/agent-schema/valid/critical-actions/no-critical-actions.agent.yaml +1 -0
  321. package/test/fixtures/agent-schema/valid/critical-actions/valid-critical-actions.agent.yaml +1 -0
  322. package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +1 -0
  323. package/test/fixtures/agent-schema/valid/menu/single-menu-item.agent.yaml +1 -0
  324. package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +2 -3
  325. package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +1 -0
  326. package/test/fixtures/agent-schema/valid/menu-triggers/compound-triggers.agent.yaml +31 -0
  327. package/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +2 -1
  328. package/test/fixtures/agent-schema/valid/metadata/core-agent-with-module.agent.yaml +24 -0
  329. package/test/fixtures/agent-schema/valid/metadata/empty-module-name-in-path.agent.yaml +1 -0
  330. package/test/fixtures/agent-schema/valid/metadata/malformed-path-treated-as-core.agent.yaml +2 -1
  331. package/test/fixtures/agent-schema/valid/metadata/module-agent-correct.agent.yaml +2 -1
  332. package/test/fixtures/agent-schema/valid/metadata/module-agent-missing-module.agent.yaml +23 -0
  333. package/test/fixtures/agent-schema/valid/metadata/wrong-module-value.agent.yaml +24 -0
  334. package/test/fixtures/agent-schema/valid/persona/complete-persona.agent.yaml +1 -0
  335. package/test/fixtures/agent-schema/valid/prompts/empty-prompts.agent.yaml +1 -0
  336. package/test/fixtures/agent-schema/valid/prompts/no-prompts.agent.yaml +1 -0
  337. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-minimal.agent.yaml +1 -0
  338. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-with-description.agent.yaml +1 -0
  339. package/test/fixtures/agent-schema/valid/top-level/minimal-core-agent.agent.yaml +1 -0
  340. package/test/fixtures/file-refs-csv/invalid/all-empty-workflow.csv +3 -0
  341. package/test/fixtures/file-refs-csv/invalid/empty-data.csv +1 -0
  342. package/test/fixtures/file-refs-csv/invalid/no-workflow-column.csv +3 -0
  343. package/test/fixtures/file-refs-csv/invalid/unresolvable-vars.csv +3 -0
  344. package/test/fixtures/file-refs-csv/valid/bmm-style.csv +3 -0
  345. package/test/fixtures/file-refs-csv/valid/core-style.csv +3 -0
  346. package/test/fixtures/file-refs-csv/valid/minimal.csv +2 -0
  347. package/test/test-agent-schema.js +4 -4
  348. package/test/test-file-refs-csv.js +133 -0
  349. package/test/test-installation-components.js +10 -12
  350. package/test/test-rehype-plugins.mjs +1050 -0
  351. package/test/unit-test-schema.js +2 -2
  352. package/tools/build-docs.mjs +463 -0
  353. package/tools/cli/README.md +41 -571
  354. package/tools/cli/bmad-cli.js +67 -1
  355. package/tools/cli/commands/install.js +42 -34
  356. package/tools/cli/commands/status.js +44 -26
  357. package/tools/cli/commands/uninstall.js +146 -23
  358. package/tools/cli/external-official-modules.yaml +53 -0
  359. package/tools/cli/installers/install-messages.yaml +39 -0
  360. package/tools/cli/installers/lib/core/config-collector.js +589 -95
  361. package/tools/cli/installers/lib/core/custom-module-cache.js +260 -0
  362. package/tools/cli/installers/lib/core/dependency-resolver.js +57 -39
  363. package/tools/cli/installers/lib/core/detector.js +19 -125
  364. package/tools/cli/installers/lib/core/ide-config-manager.js +12 -9
  365. package/tools/cli/installers/lib/core/installer.js +2075 -1154
  366. package/tools/cli/installers/lib/core/manifest-generator.js +494 -103
  367. package/tools/cli/installers/lib/core/manifest.js +544 -46
  368. package/tools/cli/installers/lib/custom/handler.js +358 -0
  369. package/tools/cli/installers/lib/ide/_base-ide.js +83 -44
  370. package/tools/cli/installers/lib/ide/_config-driven.js +560 -0
  371. package/tools/cli/installers/lib/ide/codex.js +277 -54
  372. package/tools/cli/installers/lib/ide/github-copilot.js +607 -209
  373. package/tools/cli/installers/lib/ide/kilo.js +169 -75
  374. package/tools/cli/installers/lib/ide/manager.js +179 -48
  375. package/tools/cli/installers/lib/ide/platform-codes.js +100 -0
  376. package/tools/cli/installers/lib/ide/platform-codes.yaml +227 -0
  377. package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +95 -5
  378. package/tools/cli/installers/lib/ide/shared/bmad-artifacts.js +51 -20
  379. package/tools/cli/installers/lib/ide/shared/module-injections.js +6 -3
  380. package/tools/cli/installers/lib/ide/shared/path-utils.js +299 -0
  381. package/tools/cli/installers/lib/ide/shared/task-tool-command-generator.js +262 -14
  382. package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +108 -27
  383. package/tools/cli/installers/lib/ide/templates/agent-command-template.md +2 -1
  384. package/tools/cli/installers/lib/ide/templates/combined/antigravity.md +8 -0
  385. package/tools/cli/installers/lib/ide/templates/combined/default-agent.md +16 -0
  386. package/tools/cli/installers/lib/ide/templates/combined/default-task.md +10 -0
  387. package/tools/cli/installers/lib/ide/templates/combined/default-tool.md +10 -0
  388. package/tools/cli/installers/lib/ide/templates/combined/default-workflow-yaml.md +15 -0
  389. package/tools/cli/installers/lib/ide/templates/combined/default-workflow.md +7 -0
  390. package/tools/cli/installers/lib/ide/templates/combined/gemini-agent.toml +14 -0
  391. package/tools/cli/installers/lib/ide/templates/combined/gemini-task.toml +11 -0
  392. package/tools/cli/installers/lib/ide/templates/combined/gemini-tool.toml +11 -0
  393. package/tools/cli/installers/lib/ide/templates/combined/gemini-workflow-yaml.toml +16 -0
  394. package/tools/cli/installers/lib/ide/templates/combined/gemini-workflow.toml +14 -0
  395. package/tools/cli/installers/lib/ide/templates/combined/kiro-agent.md +16 -0
  396. package/tools/cli/installers/lib/ide/templates/combined/kiro-task.md +9 -0
  397. package/tools/cli/installers/lib/ide/templates/combined/kiro-tool.md +9 -0
  398. package/tools/cli/installers/lib/ide/templates/combined/kiro-workflow-yaml.md +15 -0
  399. package/tools/cli/installers/lib/ide/templates/combined/kiro-workflow.md +7 -0
  400. package/tools/cli/installers/lib/ide/templates/combined/opencode-agent.md +15 -0
  401. package/tools/cli/installers/lib/ide/templates/combined/opencode-task.md +14 -0
  402. package/tools/cli/installers/lib/ide/templates/combined/opencode-tool.md +14 -0
  403. package/tools/cli/installers/lib/ide/templates/combined/opencode-workflow-yaml.md +17 -0
  404. package/tools/cli/installers/lib/ide/templates/combined/opencode-workflow.md +17 -0
  405. package/tools/cli/installers/lib/ide/templates/combined/rovodev.md +9 -0
  406. package/tools/cli/installers/lib/ide/templates/combined/trae.md +9 -0
  407. package/tools/cli/installers/lib/ide/templates/combined/windsurf-workflow.md +10 -0
  408. package/tools/cli/installers/lib/ide/templates/workflow-command-template.md +2 -1
  409. package/tools/cli/installers/lib/ide/templates/workflow-commander.md +6 -0
  410. package/tools/cli/installers/lib/message-loader.js +83 -0
  411. package/tools/cli/installers/lib/modules/external-manager.js +136 -0
  412. package/tools/cli/installers/lib/modules/manager.js +931 -207
  413. package/tools/cli/lib/activation-builder.js +13 -16
  414. package/tools/cli/lib/agent/compiler.js +525 -0
  415. package/tools/cli/lib/agent/installer.js +680 -0
  416. package/tools/cli/lib/agent/template-engine.js +152 -0
  417. package/tools/cli/lib/agent-analyzer.js +48 -20
  418. package/tools/cli/lib/agent-party-generator.js +5 -17
  419. package/tools/cli/lib/cli-utils.js +76 -104
  420. package/tools/cli/lib/config.js +4 -3
  421. package/tools/cli/lib/platform-codes.js +2 -2
  422. package/tools/cli/lib/project-root.js +6 -0
  423. package/tools/cli/lib/prompts.js +809 -0
  424. package/tools/cli/lib/ui.js +1608 -270
  425. package/tools/cli/lib/xml-handler.js +4 -55
  426. package/tools/cli/lib/yaml-format.js +4 -6
  427. package/tools/cli/lib/yaml-xml-builder.js +203 -63
  428. package/tools/docs/_prompt-external-modules-page.md +59 -0
  429. package/tools/docs/fix-refs.md +91 -0
  430. package/tools/fix-doc-links.js +285 -0
  431. package/tools/lib/xml-utils.js +13 -0
  432. package/tools/maintainer/review-pr-README.md +55 -0
  433. package/tools/maintainer/review-pr.md +242 -0
  434. package/tools/migrate-custom-module-paths.js +124 -0
  435. package/tools/platform-codes.yaml +24 -0
  436. package/tools/schema/agent.js +306 -53
  437. package/tools/validate-agent-schema.js +3 -3
  438. package/tools/validate-doc-links.js +393 -0
  439. package/tools/validate-file-refs.js +554 -0
  440. package/tools/validate-svg-changes.sh +356 -0
  441. package/website/README.md +75 -0
  442. package/website/astro.config.mjs +135 -0
  443. package/website/public/favicon.ico +0 -0
  444. package/website/public/img/bmad-dark.png +0 -0
  445. package/website/public/img/bmad-light.png +0 -0
  446. package/website/public/workflow-map-diagram.html +361 -0
  447. package/website/src/components/Banner.astro +62 -0
  448. package/website/src/components/Header.astro +96 -0
  449. package/website/src/components/MobileMenuFooter.astro +33 -0
  450. package/website/src/content/config.ts +6 -0
  451. package/website/src/lib/site-url.mjs +25 -0
  452. package/website/src/pages/404.astro +11 -0
  453. package/website/src/pages/robots.txt.ts +48 -0
  454. package/website/src/rehype-base-paths.js +112 -0
  455. package/website/src/rehype-markdown-links.js +111 -0
  456. package/website/src/styles/custom.css +509 -0
  457. package/.bmad/_cfg/agent-manifest.csv +0 -11
  458. package/.bmad/_cfg/agents/bmb-bmad-builder.customize.yaml +0 -42
  459. package/.bmad/_cfg/agents/bmm-analyst.customize.yaml +0 -42
  460. package/.bmad/_cfg/agents/bmm-architect.customize.yaml +0 -42
  461. package/.bmad/_cfg/agents/bmm-dev.customize.yaml +0 -42
  462. package/.bmad/_cfg/agents/bmm-pm.customize.yaml +0 -42
  463. package/.bmad/_cfg/agents/bmm-sm.customize.yaml +0 -42
  464. package/.bmad/_cfg/agents/bmm-tea.customize.yaml +0 -42
  465. package/.bmad/_cfg/agents/bmm-tech-writer.customize.yaml +0 -42
  466. package/.bmad/_cfg/agents/bmm-ux-designer.customize.yaml +0 -42
  467. package/.bmad/_cfg/agents/core-bmad-master.customize.yaml +0 -42
  468. package/.bmad/_cfg/files-manifest.csv +0 -289
  469. package/.bmad/_cfg/ides/claude-code.yaml +0 -7
  470. package/.bmad/_cfg/manifest.yaml +0 -10
  471. package/.bmad/_cfg/task-manifest.csv +0 -6
  472. package/.bmad/_cfg/tool-manifest.csv +0 -2
  473. package/.bmad/_cfg/workflow-manifest.csv +0 -44
  474. package/.bmad/bmb/README.md +0 -194
  475. package/.bmad/bmb/agents/bmad-builder.md +0 -70
  476. package/.bmad/bmb/config.yaml +0 -16
  477. package/.bmad/bmb/workflows/audit-workflow/checklist.md +0 -143
  478. package/.bmad/bmb/workflows/audit-workflow/instructions.md +0 -341
  479. package/.bmad/bmb/workflows/audit-workflow/template.md +0 -118
  480. package/.bmad/bmb/workflows/audit-workflow/workflow.yaml +0 -23
  481. package/.bmad/bmb/workflows/convert-legacy/README.md +0 -262
  482. package/.bmad/bmb/workflows/convert-legacy/checklist.md +0 -205
  483. package/.bmad/bmb/workflows/convert-legacy/instructions.md +0 -377
  484. package/.bmad/bmb/workflows/convert-legacy/workflow.yaml +0 -32
  485. package/.bmad/bmb/workflows/create-agent/README.md +0 -203
  486. package/.bmad/bmb/workflows/create-agent/agent-architecture.md +0 -419
  487. package/.bmad/bmb/workflows/create-agent/agent-command-patterns.md +0 -759
  488. package/.bmad/bmb/workflows/create-agent/agent-types.md +0 -292
  489. package/.bmad/bmb/workflows/create-agent/brainstorm-context.md +0 -174
  490. package/.bmad/bmb/workflows/create-agent/checklist.md +0 -62
  491. package/.bmad/bmb/workflows/create-agent/communication-styles.md +0 -202
  492. package/.bmad/bmb/workflows/create-agent/instructions.md +0 -459
  493. package/.bmad/bmb/workflows/create-agent/workflow.yaml +0 -37
  494. package/.bmad/bmb/workflows/create-module/README.md +0 -229
  495. package/.bmad/bmb/workflows/create-module/brainstorm-context.md +0 -137
  496. package/.bmad/bmb/workflows/create-module/checklist.md +0 -244
  497. package/.bmad/bmb/workflows/create-module/installer-templates/install-config.yaml +0 -92
  498. package/.bmad/bmb/workflows/create-module/installer-templates/installer.js +0 -231
  499. package/.bmad/bmb/workflows/create-module/instructions.md +0 -581
  500. package/.bmad/bmb/workflows/create-module/module-structure.md +0 -400
  501. package/.bmad/bmb/workflows/create-module/workflow.yaml +0 -42
  502. package/.bmad/bmb/workflows/create-workflow/README.md +0 -277
  503. package/.bmad/bmb/workflows/create-workflow/brainstorm-context.md +0 -197
  504. package/.bmad/bmb/workflows/create-workflow/checklist.md +0 -94
  505. package/.bmad/bmb/workflows/create-workflow/instructions.md +0 -724
  506. package/.bmad/bmb/workflows/create-workflow/workflow-creation-guide.md +0 -1308
  507. package/.bmad/bmb/workflows/create-workflow/workflow-template/checklist.md +0 -24
  508. package/.bmad/bmb/workflows/create-workflow/workflow-template/instructions.md +0 -13
  509. package/.bmad/bmb/workflows/create-workflow/workflow-template/template.md +0 -9
  510. package/.bmad/bmb/workflows/create-workflow/workflow-template/workflow.yaml +0 -39
  511. package/.bmad/bmb/workflows/create-workflow/workflow.yaml +0 -40
  512. package/.bmad/bmb/workflows/edit-agent/README.md +0 -112
  513. package/.bmad/bmb/workflows/edit-agent/checklist.md +0 -112
  514. package/.bmad/bmb/workflows/edit-agent/instructions.md +0 -290
  515. package/.bmad/bmb/workflows/edit-agent/workflow.yaml +0 -33
  516. package/.bmad/bmb/workflows/edit-module/README.md +0 -187
  517. package/.bmad/bmb/workflows/edit-module/checklist.md +0 -165
  518. package/.bmad/bmb/workflows/edit-module/instructions.md +0 -339
  519. package/.bmad/bmb/workflows/edit-module/workflow.yaml +0 -34
  520. package/.bmad/bmb/workflows/edit-workflow/README.md +0 -119
  521. package/.bmad/bmb/workflows/edit-workflow/checklist.md +0 -70
  522. package/.bmad/bmb/workflows/edit-workflow/instructions.md +0 -342
  523. package/.bmad/bmb/workflows/edit-workflow/workflow.yaml +0 -27
  524. package/.bmad/bmb/workflows/module-brief/README.md +0 -264
  525. package/.bmad/bmb/workflows/module-brief/checklist.md +0 -116
  526. package/.bmad/bmb/workflows/module-brief/instructions.md +0 -267
  527. package/.bmad/bmb/workflows/module-brief/template.md +0 -275
  528. package/.bmad/bmb/workflows/module-brief/workflow.yaml +0 -29
  529. package/.bmad/bmb/workflows/redoc/README.md +0 -87
  530. package/.bmad/bmb/workflows/redoc/checklist.md +0 -99
  531. package/.bmad/bmb/workflows/redoc/instructions.md +0 -265
  532. package/.bmad/bmb/workflows/redoc/workflow.yaml +0 -32
  533. package/.bmad/bmm/README.md +0 -128
  534. package/.bmad/bmm/agents/analyst.md +0 -75
  535. package/.bmad/bmm/agents/architect.md +0 -80
  536. package/.bmad/bmm/agents/dev.md +0 -69
  537. package/.bmad/bmm/agents/pm.md +0 -84
  538. package/.bmad/bmm/agents/sm.md +0 -93
  539. package/.bmad/bmm/agents/tea.md +0 -80
  540. package/.bmad/bmm/agents/tech-writer.md +0 -90
  541. package/.bmad/bmm/agents/ux-designer.md +0 -79
  542. package/.bmad/bmm/config.yaml +0 -18
  543. package/.bmad/bmm/docs/README.md +0 -235
  544. package/.bmad/bmm/docs/agents-guide.md +0 -1056
  545. package/.bmad/bmm/docs/brownfield-guide.md +0 -754
  546. package/.bmad/bmm/docs/enterprise-agentic-development.md +0 -680
  547. package/.bmad/bmm/docs/faq.md +0 -587
  548. package/.bmad/bmm/docs/glossary.md +0 -320
  549. package/.bmad/bmm/docs/party-mode.md +0 -224
  550. package/.bmad/bmm/docs/quick-spec-flow.md +0 -652
  551. package/.bmad/bmm/docs/quick-start.md +0 -366
  552. package/.bmad/bmm/docs/scale-adaptive-system.md +0 -599
  553. package/.bmad/bmm/docs/test-architecture.md +0 -394
  554. package/.bmad/bmm/docs/workflow-architecture-reference.md +0 -371
  555. package/.bmad/bmm/docs/workflow-document-project-reference.md +0 -487
  556. package/.bmad/bmm/docs/workflows-analysis.md +0 -370
  557. package/.bmad/bmm/docs/workflows-implementation.md +0 -284
  558. package/.bmad/bmm/docs/workflows-planning.md +0 -601
  559. package/.bmad/bmm/docs/workflows-solutioning.md +0 -501
  560. package/.bmad/bmm/tasks/daily-standup.xml +0 -85
  561. package/.bmad/bmm/teams/default-party.csv +0 -19
  562. package/.bmad/bmm/testarch/knowledge/ci-burn-in.md +0 -675
  563. package/.bmad/bmm/testarch/knowledge/component-tdd.md +0 -486
  564. package/.bmad/bmm/testarch/knowledge/contract-testing.md +0 -957
  565. package/.bmad/bmm/testarch/knowledge/data-factories.md +0 -500
  566. package/.bmad/bmm/testarch/knowledge/email-auth.md +0 -721
  567. package/.bmad/bmm/testarch/knowledge/error-handling.md +0 -725
  568. package/.bmad/bmm/testarch/knowledge/feature-flags.md +0 -750
  569. package/.bmad/bmm/testarch/knowledge/fixture-architecture.md +0 -401
  570. package/.bmad/bmm/testarch/knowledge/network-first.md +0 -486
  571. package/.bmad/bmm/testarch/knowledge/nfr-criteria.md +0 -670
  572. package/.bmad/bmm/testarch/knowledge/playwright-config.md +0 -730
  573. package/.bmad/bmm/testarch/knowledge/probability-impact.md +0 -601
  574. package/.bmad/bmm/testarch/knowledge/risk-governance.md +0 -615
  575. package/.bmad/bmm/testarch/knowledge/selective-testing.md +0 -732
  576. package/.bmad/bmm/testarch/knowledge/selector-resilience.md +0 -527
  577. package/.bmad/bmm/testarch/knowledge/test-healing-patterns.md +0 -644
  578. package/.bmad/bmm/testarch/knowledge/test-levels-framework.md +0 -473
  579. package/.bmad/bmm/testarch/knowledge/test-priorities-matrix.md +0 -373
  580. package/.bmad/bmm/testarch/knowledge/test-quality.md +0 -664
  581. package/.bmad/bmm/testarch/knowledge/timing-debugging.md +0 -372
  582. package/.bmad/bmm/testarch/knowledge/visual-debugging.md +0 -524
  583. package/.bmad/bmm/testarch/tea-index.csv +0 -22
  584. package/.bmad/bmm/workflows/1-analysis/brainstorm-project/instructions.md +0 -110
  585. package/.bmad/bmm/workflows/1-analysis/brainstorm-project/project-context.md +0 -25
  586. package/.bmad/bmm/workflows/1-analysis/brainstorm-project/workflow.yaml +0 -26
  587. package/.bmad/bmm/workflows/1-analysis/domain-research/instructions.md +0 -423
  588. package/.bmad/bmm/workflows/1-analysis/domain-research/template.md +0 -180
  589. package/.bmad/bmm/workflows/1-analysis/domain-research/workflow.yaml +0 -40
  590. package/.bmad/bmm/workflows/1-analysis/product-brief/checklist.md +0 -115
  591. package/.bmad/bmm/workflows/1-analysis/product-brief/instructions.md +0 -524
  592. package/.bmad/bmm/workflows/1-analysis/product-brief/template.md +0 -181
  593. package/.bmad/bmm/workflows/1-analysis/product-brief/workflow.yaml +0 -45
  594. package/.bmad/bmm/workflows/1-analysis/research/checklist-deep-prompt.md +0 -144
  595. package/.bmad/bmm/workflows/1-analysis/research/checklist-technical.md +0 -249
  596. package/.bmad/bmm/workflows/1-analysis/research/checklist.md +0 -299
  597. package/.bmad/bmm/workflows/1-analysis/research/claude-code/injections.yaml +0 -114
  598. package/.bmad/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +0 -439
  599. package/.bmad/bmm/workflows/1-analysis/research/instructions-market.md +0 -679
  600. package/.bmad/bmm/workflows/1-analysis/research/instructions-router.md +0 -133
  601. package/.bmad/bmm/workflows/1-analysis/research/instructions-technical.md +0 -538
  602. package/.bmad/bmm/workflows/1-analysis/research/template-deep-prompt.md +0 -94
  603. package/.bmad/bmm/workflows/1-analysis/research/template-market.md +0 -347
  604. package/.bmad/bmm/workflows/1-analysis/research/template-technical.md +0 -245
  605. package/.bmad/bmm/workflows/1-analysis/research/workflow.yaml +0 -44
  606. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/checklist.md +0 -310
  607. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +0 -1301
  608. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +0 -145
  609. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.yaml +0 -60
  610. package/.bmad/bmm/workflows/2-plan-workflows/prd/checklist.md +0 -350
  611. package/.bmad/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/epics-template.md +0 -52
  612. package/.bmad/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/instructions.md +0 -169
  613. package/.bmad/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/workflow.yaml +0 -45
  614. package/.bmad/bmm/workflows/2-plan-workflows/prd/domain-complexity.csv +0 -13
  615. package/.bmad/bmm/workflows/2-plan-workflows/prd/instructions.md +0 -408
  616. package/.bmad/bmm/workflows/2-plan-workflows/prd/prd-template.md +0 -237
  617. package/.bmad/bmm/workflows/2-plan-workflows/prd/project-types.csv +0 -11
  618. package/.bmad/bmm/workflows/2-plan-workflows/prd/workflow.yaml +0 -46
  619. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/checklist.md +0 -214
  620. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/epics-template.md +0 -80
  621. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/instructions-level0-story.md +0 -200
  622. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/instructions-level1-stories.md +0 -451
  623. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +0 -1115
  624. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/tech-spec-template.md +0 -181
  625. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/user-story-template.md +0 -90
  626. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/workflow.yaml +0 -60
  627. package/.bmad/bmm/workflows/3-solutioning/architecture/architecture-patterns.yaml +0 -347
  628. package/.bmad/bmm/workflows/3-solutioning/architecture/architecture-template.md +0 -103
  629. package/.bmad/bmm/workflows/3-solutioning/architecture/checklist.md +0 -244
  630. package/.bmad/bmm/workflows/3-solutioning/architecture/decision-catalog.yaml +0 -222
  631. package/.bmad/bmm/workflows/3-solutioning/architecture/instructions.md +0 -704
  632. package/.bmad/bmm/workflows/3-solutioning/architecture/pattern-categories.csv +0 -13
  633. package/.bmad/bmm/workflows/3-solutioning/architecture/workflow.yaml +0 -68
  634. package/.bmad/bmm/workflows/3-solutioning/solutioning-gate-check/checklist.md +0 -175
  635. package/.bmad/bmm/workflows/3-solutioning/solutioning-gate-check/instructions.md +0 -305
  636. package/.bmad/bmm/workflows/3-solutioning/solutioning-gate-check/template.md +0 -146
  637. package/.bmad/bmm/workflows/3-solutioning/solutioning-gate-check/validation-criteria.yaml +0 -189
  638. package/.bmad/bmm/workflows/3-solutioning/solutioning-gate-check/workflow.yaml +0 -64
  639. package/.bmad/bmm/workflows/4-implementation/code-review/backlog_template.md +0 -12
  640. package/.bmad/bmm/workflows/4-implementation/code-review/checklist.md +0 -22
  641. package/.bmad/bmm/workflows/4-implementation/code-review/instructions.md +0 -420
  642. package/.bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +0 -65
  643. package/.bmad/bmm/workflows/4-implementation/correct-course/checklist.md +0 -279
  644. package/.bmad/bmm/workflows/4-implementation/correct-course/instructions.md +0 -201
  645. package/.bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +0 -43
  646. package/.bmad/bmm/workflows/4-implementation/create-story/checklist.md +0 -240
  647. package/.bmad/bmm/workflows/4-implementation/create-story/instructions.md +0 -283
  648. package/.bmad/bmm/workflows/4-implementation/create-story/template.md +0 -51
  649. package/.bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +0 -74
  650. package/.bmad/bmm/workflows/4-implementation/dev-story/AUDIT-REPORT.md +0 -367
  651. package/.bmad/bmm/workflows/4-implementation/dev-story/checklist.md +0 -38
  652. package/.bmad/bmm/workflows/4-implementation/dev-story/instructions.md +0 -262
  653. package/.bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +0 -26
  654. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/checklist.md +0 -17
  655. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/instructions.md +0 -189
  656. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/template.md +0 -76
  657. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/workflow.yaml +0 -58
  658. package/.bmad/bmm/workflows/4-implementation/retrospective/instructions.md +0 -1460
  659. package/.bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +0 -71
  660. package/.bmad/bmm/workflows/4-implementation/sprint-planning/instructions.md +0 -238
  661. package/.bmad/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +0 -55
  662. package/.bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +0 -47
  663. package/.bmad/bmm/workflows/4-implementation/story-context/checklist.md +0 -16
  664. package/.bmad/bmm/workflows/4-implementation/story-context/context-template.xml +0 -34
  665. package/.bmad/bmm/workflows/4-implementation/story-context/instructions.md +0 -234
  666. package/.bmad/bmm/workflows/4-implementation/story-context/workflow.yaml +0 -57
  667. package/.bmad/bmm/workflows/4-implementation/story-done/instructions.md +0 -111
  668. package/.bmad/bmm/workflows/4-implementation/story-done/workflow.yaml +0 -25
  669. package/.bmad/bmm/workflows/4-implementation/story-ready/instructions.md +0 -117
  670. package/.bmad/bmm/workflows/4-implementation/story-ready/workflow.yaml +0 -25
  671. package/.bmad/bmm/workflows/document-project/checklist.md +0 -245
  672. package/.bmad/bmm/workflows/document-project/instructions.md +0 -222
  673. package/.bmad/bmm/workflows/document-project/templates/project-scan-report-schema.json +0 -160
  674. package/.bmad/bmm/workflows/document-project/workflow.yaml +0 -34
  675. package/.bmad/bmm/workflows/document-project/workflows/deep-dive-instructions.md +0 -298
  676. package/.bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +0 -31
  677. package/.bmad/bmm/workflows/document-project/workflows/full-scan-instructions.md +0 -1106
  678. package/.bmad/bmm/workflows/document-project/workflows/full-scan.yaml +0 -31
  679. package/.bmad/bmm/workflows/techdoc/documentation-standards.md +0 -262
  680. package/.bmad/bmm/workflows/testarch/atdd/atdd-checklist-template.md +0 -363
  681. package/.bmad/bmm/workflows/testarch/atdd/checklist.md +0 -373
  682. package/.bmad/bmm/workflows/testarch/atdd/instructions.md +0 -785
  683. package/.bmad/bmm/workflows/testarch/atdd/workflow.yaml +0 -52
  684. package/.bmad/bmm/workflows/testarch/automate/checklist.md +0 -580
  685. package/.bmad/bmm/workflows/testarch/automate/instructions.md +0 -1303
  686. package/.bmad/bmm/workflows/testarch/automate/workflow.yaml +0 -61
  687. package/.bmad/bmm/workflows/testarch/ci/checklist.md +0 -246
  688. package/.bmad/bmm/workflows/testarch/ci/github-actions-template.yaml +0 -165
  689. package/.bmad/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +0 -128
  690. package/.bmad/bmm/workflows/testarch/ci/instructions.md +0 -517
  691. package/.bmad/bmm/workflows/testarch/ci/workflow.yaml +0 -53
  692. package/.bmad/bmm/workflows/testarch/framework/checklist.md +0 -321
  693. package/.bmad/bmm/workflows/testarch/framework/instructions.md +0 -455
  694. package/.bmad/bmm/workflows/testarch/framework/workflow.yaml +0 -53
  695. package/.bmad/bmm/workflows/testarch/nfr-assess/checklist.md +0 -405
  696. package/.bmad/bmm/workflows/testarch/nfr-assess/instructions.md +0 -722
  697. package/.bmad/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +0 -443
  698. package/.bmad/bmm/workflows/testarch/nfr-assess/workflow.yaml +0 -56
  699. package/.bmad/bmm/workflows/testarch/test-design/checklist.md +0 -234
  700. package/.bmad/bmm/workflows/testarch/test-design/instructions.md +0 -621
  701. package/.bmad/bmm/workflows/testarch/test-design/test-design-template.md +0 -285
  702. package/.bmad/bmm/workflows/testarch/test-design/workflow.yaml +0 -52
  703. package/.bmad/bmm/workflows/testarch/test-review/checklist.md +0 -470
  704. package/.bmad/bmm/workflows/testarch/test-review/instructions.md +0 -608
  705. package/.bmad/bmm/workflows/testarch/test-review/test-review-template.md +0 -388
  706. package/.bmad/bmm/workflows/testarch/test-review/workflow.yaml +0 -53
  707. package/.bmad/bmm/workflows/testarch/trace/checklist.md +0 -654
  708. package/.bmad/bmm/workflows/testarch/trace/instructions.md +0 -1045
  709. package/.bmad/bmm/workflows/testarch/trace/trace-template.md +0 -673
  710. package/.bmad/bmm/workflows/testarch/trace/workflow.yaml +0 -66
  711. package/.bmad/bmm/workflows/workflow-status/init/instructions.md +0 -822
  712. package/.bmad/bmm/workflows/workflow-status/init/workflow.yaml +0 -27
  713. package/.bmad/bmm/workflows/workflow-status/instructions.md +0 -387
  714. package/.bmad/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +0 -127
  715. package/.bmad/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +0 -115
  716. package/.bmad/bmm/workflows/workflow-status/paths/game-design.yaml +0 -52
  717. package/.bmad/bmm/workflows/workflow-status/paths/method-brownfield.yaml +0 -97
  718. package/.bmad/bmm/workflows/workflow-status/paths/method-greenfield.yaml +0 -88
  719. package/.bmad/bmm/workflows/workflow-status/paths/quick-flow-brownfield.yaml +0 -58
  720. package/.bmad/bmm/workflows/workflow-status/paths/quick-flow-greenfield.yaml +0 -47
  721. package/.bmad/bmm/workflows/workflow-status/project-levels.yaml +0 -59
  722. package/.bmad/bmm/workflows/workflow-status/sample-level-3-workflow.yaml +0 -49
  723. package/.bmad/bmm/workflows/workflow-status/workflow-status-template.yaml +0 -31
  724. package/.bmad/bmm/workflows/workflow-status/workflow.yaml +0 -28
  725. package/.bmad/core/agents/bmad-master.md +0 -71
  726. package/.bmad/core/agents/bmad-web-orchestrator.agent.xml +0 -113
  727. package/.bmad/core/config.yaml +0 -11
  728. package/.bmad/core/tasks/adv-elicit-methods.csv +0 -39
  729. package/.bmad/core/tasks/adv-elicit.xml +0 -106
  730. package/.bmad/core/tasks/index-docs.xml +0 -65
  731. package/.bmad/core/tasks/validate-workflow.xml +0 -89
  732. package/.bmad/core/tasks/workflow.xml +0 -156
  733. package/.bmad/core/tools/shard-doc.xml +0 -65
  734. package/.bmad/core/workflows/brainstorming/README.md +0 -271
  735. package/.bmad/core/workflows/brainstorming/brain-methods.csv +0 -36
  736. package/.bmad/core/workflows/brainstorming/instructions.md +0 -314
  737. package/.bmad/core/workflows/brainstorming/template.md +0 -102
  738. package/.bmad/core/workflows/brainstorming/workflow.yaml +0 -43
  739. package/.bmad/core/workflows/party-mode/instructions.md +0 -183
  740. package/.bmad/core/workflows/party-mode/workflow.yaml +0 -27
  741. package/.bmad/docs/claude-code-instructions.md +0 -25
  742. package/.claude/commands/bmad/bmb/agents/bmad-builder.md +0 -70
  743. package/.claude/commands/bmad/bmb/workflows/audit-workflow.md +0 -15
  744. package/.claude/commands/bmad/bmb/workflows/convert-legacy.md +0 -15
  745. package/.claude/commands/bmad/bmb/workflows/create-agent.md +0 -15
  746. package/.claude/commands/bmad/bmb/workflows/create-module.md +0 -15
  747. package/.claude/commands/bmad/bmb/workflows/create-workflow.md +0 -15
  748. package/.claude/commands/bmad/bmb/workflows/edit-agent.md +0 -15
  749. package/.claude/commands/bmad/bmb/workflows/edit-module.md +0 -15
  750. package/.claude/commands/bmad/bmb/workflows/edit-workflow.md +0 -15
  751. package/.claude/commands/bmad/bmb/workflows/module-brief.md +0 -15
  752. package/.claude/commands/bmad/bmb/workflows/redoc.md +0 -15
  753. package/.claude/commands/bmad/bmm/agents/analyst.md +0 -75
  754. package/.claude/commands/bmad/bmm/agents/architect.md +0 -80
  755. package/.claude/commands/bmad/bmm/agents/dev.md +0 -69
  756. package/.claude/commands/bmad/bmm/agents/pm.md +0 -84
  757. package/.claude/commands/bmad/bmm/agents/sm.md +0 -93
  758. package/.claude/commands/bmad/bmm/agents/tea.md +0 -80
  759. package/.claude/commands/bmad/bmm/agents/tech-writer.md +0 -90
  760. package/.claude/commands/bmad/bmm/agents/ux-designer.md +0 -79
  761. package/.claude/commands/bmad/bmm/workflows/architecture.md +0 -15
  762. package/.claude/commands/bmad/bmm/workflows/brainstorm-project.md +0 -15
  763. package/.claude/commands/bmad/bmm/workflows/code-review.md +0 -15
  764. package/.claude/commands/bmad/bmm/workflows/correct-course.md +0 -15
  765. package/.claude/commands/bmad/bmm/workflows/create-epics-and-stories.md +0 -15
  766. package/.claude/commands/bmad/bmm/workflows/create-story.md +0 -15
  767. package/.claude/commands/bmad/bmm/workflows/create-ux-design.md +0 -15
  768. package/.claude/commands/bmad/bmm/workflows/dev-story.md +0 -15
  769. package/.claude/commands/bmad/bmm/workflows/document-project.md +0 -15
  770. package/.claude/commands/bmad/bmm/workflows/domain-research.md +0 -15
  771. package/.claude/commands/bmad/bmm/workflows/epic-tech-context.md +0 -15
  772. package/.claude/commands/bmad/bmm/workflows/prd.md +0 -15
  773. package/.claude/commands/bmad/bmm/workflows/product-brief.md +0 -15
  774. package/.claude/commands/bmad/bmm/workflows/research.md +0 -15
  775. package/.claude/commands/bmad/bmm/workflows/retrospective.md +0 -15
  776. package/.claude/commands/bmad/bmm/workflows/solutioning-gate-check.md +0 -15
  777. package/.claude/commands/bmad/bmm/workflows/sprint-planning.md +0 -15
  778. package/.claude/commands/bmad/bmm/workflows/story-context.md +0 -15
  779. package/.claude/commands/bmad/bmm/workflows/story-done.md +0 -15
  780. package/.claude/commands/bmad/bmm/workflows/story-ready.md +0 -15
  781. package/.claude/commands/bmad/bmm/workflows/tech-spec.md +0 -15
  782. package/.claude/commands/bmad/bmm/workflows/workflow-init.md +0 -15
  783. package/.claude/commands/bmad/bmm/workflows/workflow-status.md +0 -15
  784. package/.claude/commands/bmad/core/agents/bmad-master.md +0 -71
  785. package/.claude/commands/bmad/core/tasks/adv-elicit.md +0 -9
  786. package/.claude/commands/bmad/core/tasks/index-docs.md +0 -9
  787. package/.claude/commands/bmad/core/tools/shard-doc.md +0 -9
  788. package/.claude/commands/bmad/core/workflows/brainstorming.md +0 -15
  789. package/.claude/commands/bmad/core/workflows/party-mode.md +0 -15
  790. package/.claude/settings.local.json +0 -16
  791. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -32
  792. package/.github/ISSUE_TEMPLATE/idea_submission.md +0 -109
  793. package/.github/workflows/manual-release.yaml +0 -173
  794. package/docs/document-sharding-guide.md +0 -447
  795. package/docs/ide-info/auggie.md +0 -31
  796. package/docs/ide-info/claude-code.md +0 -25
  797. package/docs/ide-info/cline.md +0 -31
  798. package/docs/ide-info/codex.md +0 -21
  799. package/docs/ide-info/crush.md +0 -30
  800. package/docs/ide-info/cursor.md +0 -25
  801. package/docs/ide-info/gemini.md +0 -25
  802. package/docs/ide-info/github-copilot.md +0 -26
  803. package/docs/ide-info/iflow.md +0 -33
  804. package/docs/ide-info/kilo.md +0 -24
  805. package/docs/ide-info/opencode.md +0 -24
  806. package/docs/ide-info/qwen.md +0 -25
  807. package/docs/ide-info/roo.md +0 -27
  808. package/docs/ide-info/trae.md +0 -25
  809. package/docs/ide-info/windsurf.md +0 -22
  810. package/docs/installers-bundlers/ide-injections.md +0 -186
  811. package/docs/installers-bundlers/installers-modules-platforms-reference.md +0 -388
  812. package/docs/installers-bundlers/web-bundler-usage.md +0 -54
  813. package/docs/v4-to-v6-upgrade.md +0 -227
  814. package/src/core/_module-installer/install-config.yaml +0 -34
  815. package/src/core/_module-installer/installer.js +0 -60
  816. package/src/core/agents/bmad-web-orchestrator.agent.xml +0 -113
  817. package/src/core/tasks/adv-elicit-methods.csv +0 -39
  818. package/src/core/tasks/adv-elicit.xml +0 -106
  819. package/src/core/tasks/validate-workflow.xml +0 -89
  820. package/src/core/tools/shard-doc.xml +0 -65
  821. package/src/core/workflows/brainstorming/README.md +0 -271
  822. package/src/core/workflows/brainstorming/instructions.md +0 -314
  823. package/src/core/workflows/brainstorming/workflow.yaml +0 -43
  824. package/src/core/workflows/party-mode/instructions.md +0 -183
  825. package/src/core/workflows/party-mode/workflow.yaml +0 -27
  826. package/src/modules/bmb/README.md +0 -194
  827. package/src/modules/bmb/_module-installer/install-config.yaml +0 -31
  828. package/src/modules/bmb/agents/bmad-builder.agent.yaml +0 -59
  829. package/src/modules/bmb/workflows/audit-workflow/checklist.md +0 -143
  830. package/src/modules/bmb/workflows/audit-workflow/instructions.md +0 -341
  831. package/src/modules/bmb/workflows/audit-workflow/template.md +0 -118
  832. package/src/modules/bmb/workflows/audit-workflow/workflow.yaml +0 -25
  833. package/src/modules/bmb/workflows/convert-legacy/README.md +0 -262
  834. package/src/modules/bmb/workflows/convert-legacy/checklist.md +0 -205
  835. package/src/modules/bmb/workflows/convert-legacy/instructions.md +0 -377
  836. package/src/modules/bmb/workflows/convert-legacy/workflow.yaml +0 -34
  837. package/src/modules/bmb/workflows/create-agent/README.md +0 -203
  838. package/src/modules/bmb/workflows/create-agent/agent-architecture.md +0 -419
  839. package/src/modules/bmb/workflows/create-agent/agent-command-patterns.md +0 -759
  840. package/src/modules/bmb/workflows/create-agent/agent-types.md +0 -292
  841. package/src/modules/bmb/workflows/create-agent/brainstorm-context.md +0 -174
  842. package/src/modules/bmb/workflows/create-agent/checklist.md +0 -62
  843. package/src/modules/bmb/workflows/create-agent/communication-styles.md +0 -202
  844. package/src/modules/bmb/workflows/create-agent/instructions.md +0 -459
  845. package/src/modules/bmb/workflows/create-agent/workflow.yaml +0 -49
  846. package/src/modules/bmb/workflows/create-module/README.md +0 -229
  847. package/src/modules/bmb/workflows/create-module/brainstorm-context.md +0 -137
  848. package/src/modules/bmb/workflows/create-module/checklist.md +0 -244
  849. package/src/modules/bmb/workflows/create-module/installer-templates/install-config.yaml +0 -92
  850. package/src/modules/bmb/workflows/create-module/installer-templates/installer.js +0 -231
  851. package/src/modules/bmb/workflows/create-module/instructions.md +0 -581
  852. package/src/modules/bmb/workflows/create-module/module-structure.md +0 -400
  853. package/src/modules/bmb/workflows/create-module/workflow.yaml +0 -44
  854. package/src/modules/bmb/workflows/create-workflow/README.md +0 -277
  855. package/src/modules/bmb/workflows/create-workflow/brainstorm-context.md +0 -197
  856. package/src/modules/bmb/workflows/create-workflow/checklist.md +0 -94
  857. package/src/modules/bmb/workflows/create-workflow/instructions.md +0 -724
  858. package/src/modules/bmb/workflows/create-workflow/workflow-creation-guide.md +0 -1308
  859. package/src/modules/bmb/workflows/create-workflow/workflow-template/checklist.md +0 -24
  860. package/src/modules/bmb/workflows/create-workflow/workflow-template/instructions.md +0 -13
  861. package/src/modules/bmb/workflows/create-workflow/workflow-template/template.md +0 -9
  862. package/src/modules/bmb/workflows/create-workflow/workflow-template/workflow.yaml +0 -65
  863. package/src/modules/bmb/workflows/create-workflow/workflow.yaml +0 -42
  864. package/src/modules/bmb/workflows/edit-agent/README.md +0 -112
  865. package/src/modules/bmb/workflows/edit-agent/checklist.md +0 -112
  866. package/src/modules/bmb/workflows/edit-agent/instructions.md +0 -290
  867. package/src/modules/bmb/workflows/edit-agent/workflow.yaml +0 -35
  868. package/src/modules/bmb/workflows/edit-module/README.md +0 -187
  869. package/src/modules/bmb/workflows/edit-module/checklist.md +0 -165
  870. package/src/modules/bmb/workflows/edit-module/instructions.md +0 -339
  871. package/src/modules/bmb/workflows/edit-module/workflow.yaml +0 -36
  872. package/src/modules/bmb/workflows/edit-workflow/README.md +0 -119
  873. package/src/modules/bmb/workflows/edit-workflow/checklist.md +0 -70
  874. package/src/modules/bmb/workflows/edit-workflow/instructions.md +0 -342
  875. package/src/modules/bmb/workflows/edit-workflow/workflow.yaml +0 -29
  876. package/src/modules/bmb/workflows/module-brief/README.md +0 -264
  877. package/src/modules/bmb/workflows/module-brief/checklist.md +0 -116
  878. package/src/modules/bmb/workflows/module-brief/instructions.md +0 -267
  879. package/src/modules/bmb/workflows/module-brief/template.md +0 -275
  880. package/src/modules/bmb/workflows/module-brief/workflow.yaml +0 -31
  881. package/src/modules/bmb/workflows/redoc/README.md +0 -87
  882. package/src/modules/bmb/workflows/redoc/checklist.md +0 -99
  883. package/src/modules/bmb/workflows/redoc/instructions.md +0 -265
  884. package/src/modules/bmb/workflows/redoc/workflow.yaml +0 -34
  885. package/src/modules/bmgd/README.md +0 -208
  886. package/src/modules/bmgd/_module-installer/install-config.yaml +0 -67
  887. package/src/modules/bmgd/agents/game-architect.agent.yaml +0 -33
  888. package/src/modules/bmgd/agents/game-designer.agent.yaml +0 -40
  889. package/src/modules/bmgd/agents/game-dev.agent.yaml +0 -40
  890. package/src/modules/bmgd/agents/game-scrum-master.agent.yaml +0 -75
  891. package/src/modules/bmgd/teams/default-party.csv +0 -10
  892. package/src/modules/bmgd/teams/team-gamedev.yaml +0 -18
  893. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/game-brain-methods.csv +0 -26
  894. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/game-context.md +0 -115
  895. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/instructions.md +0 -128
  896. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/workflow.yaml +0 -41
  897. package/src/modules/bmgd/workflows/1-preproduction/game-brief/checklist.md +0 -128
  898. package/src/modules/bmgd/workflows/1-preproduction/game-brief/instructions.md +0 -371
  899. package/src/modules/bmgd/workflows/1-preproduction/game-brief/template.md +0 -205
  900. package/src/modules/bmgd/workflows/1-preproduction/game-brief/workflow.yaml +0 -44
  901. package/src/modules/bmgd/workflows/2-design/gdd/checklist.md +0 -148
  902. package/src/modules/bmgd/workflows/2-design/gdd/game-types/action-platformer.md +0 -45
  903. package/src/modules/bmgd/workflows/2-design/gdd/game-types/adventure.md +0 -84
  904. package/src/modules/bmgd/workflows/2-design/gdd/game-types/card-game.md +0 -76
  905. package/src/modules/bmgd/workflows/2-design/gdd/game-types/fighting.md +0 -89
  906. package/src/modules/bmgd/workflows/2-design/gdd/game-types/horror.md +0 -86
  907. package/src/modules/bmgd/workflows/2-design/gdd/game-types/idle-incremental.md +0 -78
  908. package/src/modules/bmgd/workflows/2-design/gdd/game-types/metroidvania.md +0 -87
  909. package/src/modules/bmgd/workflows/2-design/gdd/game-types/moba.md +0 -74
  910. package/src/modules/bmgd/workflows/2-design/gdd/game-types/party-game.md +0 -79
  911. package/src/modules/bmgd/workflows/2-design/gdd/game-types/puzzle.md +0 -58
  912. package/src/modules/bmgd/workflows/2-design/gdd/game-types/racing.md +0 -88
  913. package/src/modules/bmgd/workflows/2-design/gdd/game-types/rhythm.md +0 -79
  914. package/src/modules/bmgd/workflows/2-design/gdd/game-types/roguelike.md +0 -69
  915. package/src/modules/bmgd/workflows/2-design/gdd/game-types/rpg.md +0 -70
  916. package/src/modules/bmgd/workflows/2-design/gdd/game-types/sandbox.md +0 -79
  917. package/src/modules/bmgd/workflows/2-design/gdd/game-types/shooter.md +0 -62
  918. package/src/modules/bmgd/workflows/2-design/gdd/game-types/simulation.md +0 -73
  919. package/src/modules/bmgd/workflows/2-design/gdd/game-types/sports.md +0 -75
  920. package/src/modules/bmgd/workflows/2-design/gdd/game-types/strategy.md +0 -71
  921. package/src/modules/bmgd/workflows/2-design/gdd/game-types/survival.md +0 -79
  922. package/src/modules/bmgd/workflows/2-design/gdd/game-types/text-based.md +0 -91
  923. package/src/modules/bmgd/workflows/2-design/gdd/game-types/tower-defense.md +0 -79
  924. package/src/modules/bmgd/workflows/2-design/gdd/game-types/turn-based-tactics.md +0 -88
  925. package/src/modules/bmgd/workflows/2-design/gdd/game-types/visual-novel.md +0 -89
  926. package/src/modules/bmgd/workflows/2-design/gdd/game-types.csv +0 -25
  927. package/src/modules/bmgd/workflows/2-design/gdd/gdd-template.md +0 -153
  928. package/src/modules/bmgd/workflows/2-design/gdd/instructions-gdd.md +0 -506
  929. package/src/modules/bmgd/workflows/2-design/gdd/workflow.yaml +0 -81
  930. package/src/modules/bmgd/workflows/2-design/narrative/checklist.md +0 -139
  931. package/src/modules/bmgd/workflows/2-design/narrative/instructions-narrative.md +0 -608
  932. package/src/modules/bmgd/workflows/2-design/narrative/narrative-template.md +0 -195
  933. package/src/modules/bmgd/workflows/2-design/narrative/workflow.yaml +0 -38
  934. package/src/modules/bmgd/workflows/3-technical/game-architecture/architecture-patterns.yaml +0 -347
  935. package/src/modules/bmgd/workflows/3-technical/game-architecture/architecture-template.md +0 -103
  936. package/src/modules/bmgd/workflows/3-technical/game-architecture/checklist.md +0 -244
  937. package/src/modules/bmgd/workflows/3-technical/game-architecture/decision-catalog.yaml +0 -222
  938. package/src/modules/bmgd/workflows/3-technical/game-architecture/instructions.md +0 -704
  939. package/src/modules/bmgd/workflows/3-technical/game-architecture/pattern-categories.csv +0 -13
  940. package/src/modules/bmgd/workflows/3-technical/game-architecture/workflow.yaml +0 -67
  941. package/src/modules/bmgd/workflows/4-production/code-review/backlog_template.md +0 -12
  942. package/src/modules/bmgd/workflows/4-production/code-review/checklist.md +0 -22
  943. package/src/modules/bmgd/workflows/4-production/code-review/instructions.md +0 -420
  944. package/src/modules/bmgd/workflows/4-production/code-review/workflow.yaml +0 -67
  945. package/src/modules/bmgd/workflows/4-production/correct-course/checklist.md +0 -279
  946. package/src/modules/bmgd/workflows/4-production/correct-course/instructions.md +0 -201
  947. package/src/modules/bmgd/workflows/4-production/correct-course/workflow.yaml +0 -45
  948. package/src/modules/bmgd/workflows/4-production/create-story/checklist.md +0 -240
  949. package/src/modules/bmgd/workflows/4-production/create-story/instructions.md +0 -283
  950. package/src/modules/bmgd/workflows/4-production/create-story/template.md +0 -51
  951. package/src/modules/bmgd/workflows/4-production/create-story/workflow.yaml +0 -76
  952. package/src/modules/bmgd/workflows/4-production/dev-story/AUDIT-REPORT.md +0 -367
  953. package/src/modules/bmgd/workflows/4-production/dev-story/checklist.md +0 -38
  954. package/src/modules/bmgd/workflows/4-production/dev-story/instructions.md +0 -262
  955. package/src/modules/bmgd/workflows/4-production/dev-story/workflow.yaml +0 -28
  956. package/src/modules/bmgd/workflows/4-production/epic-tech-context/checklist.md +0 -17
  957. package/src/modules/bmgd/workflows/4-production/epic-tech-context/instructions.md +0 -189
  958. package/src/modules/bmgd/workflows/4-production/epic-tech-context/template.md +0 -76
  959. package/src/modules/bmgd/workflows/4-production/epic-tech-context/workflow.yaml +0 -60
  960. package/src/modules/bmgd/workflows/4-production/retrospective/instructions.md +0 -1460
  961. package/src/modules/bmgd/workflows/4-production/retrospective/workflow.yaml +0 -73
  962. package/src/modules/bmgd/workflows/4-production/sprint-planning/checklist.md +0 -33
  963. package/src/modules/bmgd/workflows/4-production/sprint-planning/instructions.md +0 -238
  964. package/src/modules/bmgd/workflows/4-production/sprint-planning/sprint-status-template.yaml +0 -55
  965. package/src/modules/bmgd/workflows/4-production/sprint-planning/workflow.yaml +0 -49
  966. package/src/modules/bmgd/workflows/4-production/story-context/checklist.md +0 -16
  967. package/src/modules/bmgd/workflows/4-production/story-context/context-template.xml +0 -34
  968. package/src/modules/bmgd/workflows/4-production/story-context/instructions.md +0 -234
  969. package/src/modules/bmgd/workflows/4-production/story-context/workflow.yaml +0 -59
  970. package/src/modules/bmgd/workflows/4-production/story-done/instructions.md +0 -111
  971. package/src/modules/bmgd/workflows/4-production/story-done/workflow.yaml +0 -27
  972. package/src/modules/bmgd/workflows/4-production/story-ready/instructions.md +0 -117
  973. package/src/modules/bmgd/workflows/4-production/story-ready/workflow.yaml +0 -27
  974. package/src/modules/bmm/README.md +0 -128
  975. package/src/modules/bmm/_module-installer/assets/bmm-kb.md +0 -1
  976. package/src/modules/bmm/_module-installer/assets/technical-decisions.md +0 -30
  977. package/src/modules/bmm/_module-installer/install-config.yaml +0 -65
  978. package/src/modules/bmm/_module-installer/installer.js +0 -131
  979. package/src/modules/bmm/_module-installer/platform-specifics/claude-code.js +0 -35
  980. package/src/modules/bmm/_module-installer/platform-specifics/windsurf.js +0 -32
  981. package/src/modules/bmm/agents/analyst.agent.yaml +0 -48
  982. package/src/modules/bmm/agents/architect.agent.yaml +0 -42
  983. package/src/modules/bmm/agents/dev.agent.yaml +0 -40
  984. package/src/modules/bmm/agents/pm.agent.yaml +0 -61
  985. package/src/modules/bmm/agents/sm.agent.yaml +0 -72
  986. package/src/modules/bmm/agents/tea.agent.yaml +0 -65
  987. package/src/modules/bmm/agents/tech-writer.agent.yaml +0 -73
  988. package/src/modules/bmm/agents/ux-designer.agent.yaml +0 -38
  989. package/src/modules/bmm/docs/README.md +0 -235
  990. package/src/modules/bmm/docs/agents-guide.md +0 -1056
  991. package/src/modules/bmm/docs/brownfield-guide.md +0 -754
  992. package/src/modules/bmm/docs/enterprise-agentic-development.md +0 -680
  993. package/src/modules/bmm/docs/faq.md +0 -587
  994. package/src/modules/bmm/docs/glossary.md +0 -320
  995. package/src/modules/bmm/docs/party-mode.md +0 -224
  996. package/src/modules/bmm/docs/quick-spec-flow.md +0 -652
  997. package/src/modules/bmm/docs/quick-start.md +0 -366
  998. package/src/modules/bmm/docs/scale-adaptive-system.md +0 -599
  999. package/src/modules/bmm/docs/test-architecture.md +0 -394
  1000. package/src/modules/bmm/docs/workflow-architecture-reference.md +0 -371
  1001. package/src/modules/bmm/docs/workflow-document-project-reference.md +0 -487
  1002. package/src/modules/bmm/docs/workflows-analysis.md +0 -370
  1003. package/src/modules/bmm/docs/workflows-implementation.md +0 -284
  1004. package/src/modules/bmm/docs/workflows-planning.md +0 -601
  1005. package/src/modules/bmm/docs/workflows-solutioning.md +0 -501
  1006. package/src/modules/bmm/sub-modules/claude-code/README.md +0 -87
  1007. package/src/modules/bmm/sub-modules/claude-code/config.yaml +0 -5
  1008. package/src/modules/bmm/sub-modules/claude-code/injections.yaml +0 -242
  1009. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-analysis/api-documenter.md +0 -102
  1010. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-analysis/codebase-analyzer.md +0 -82
  1011. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-analysis/data-analyst.md +0 -101
  1012. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-analysis/pattern-detector.md +0 -84
  1013. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/dependency-mapper.md +0 -83
  1014. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/epic-optimizer.md +0 -81
  1015. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/requirements-analyst.md +0 -61
  1016. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/technical-decisions-curator.md +0 -168
  1017. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/trend-spotter.md +0 -115
  1018. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/user-journey-mapper.md +0 -123
  1019. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/user-researcher.md +0 -72
  1020. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-research/market-researcher.md +0 -51
  1021. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-research/tech-debt-auditor.md +0 -106
  1022. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-review/document-reviewer.md +0 -102
  1023. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-review/technical-evaluator.md +0 -68
  1024. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-review/test-coverage-analyzer.md +0 -108
  1025. package/src/modules/bmm/tasks/daily-standup.xml +0 -85
  1026. package/src/modules/bmm/teams/default-party.csv +0 -19
  1027. package/src/modules/bmm/teams/team-fullstack.yaml +0 -12
  1028. package/src/modules/bmm/testarch/knowledge/ci-burn-in.md +0 -675
  1029. package/src/modules/bmm/testarch/knowledge/component-tdd.md +0 -486
  1030. package/src/modules/bmm/testarch/knowledge/contract-testing.md +0 -957
  1031. package/src/modules/bmm/testarch/knowledge/data-factories.md +0 -500
  1032. package/src/modules/bmm/testarch/knowledge/email-auth.md +0 -721
  1033. package/src/modules/bmm/testarch/knowledge/error-handling.md +0 -725
  1034. package/src/modules/bmm/testarch/knowledge/feature-flags.md +0 -750
  1035. package/src/modules/bmm/testarch/knowledge/fixture-architecture.md +0 -401
  1036. package/src/modules/bmm/testarch/knowledge/network-first.md +0 -486
  1037. package/src/modules/bmm/testarch/knowledge/nfr-criteria.md +0 -670
  1038. package/src/modules/bmm/testarch/knowledge/playwright-config.md +0 -730
  1039. package/src/modules/bmm/testarch/knowledge/probability-impact.md +0 -601
  1040. package/src/modules/bmm/testarch/knowledge/risk-governance.md +0 -615
  1041. package/src/modules/bmm/testarch/knowledge/selective-testing.md +0 -732
  1042. package/src/modules/bmm/testarch/knowledge/selector-resilience.md +0 -527
  1043. package/src/modules/bmm/testarch/knowledge/test-healing-patterns.md +0 -644
  1044. package/src/modules/bmm/testarch/knowledge/test-levels-framework.md +0 -473
  1045. package/src/modules/bmm/testarch/knowledge/test-priorities-matrix.md +0 -373
  1046. package/src/modules/bmm/testarch/knowledge/test-quality.md +0 -664
  1047. package/src/modules/bmm/testarch/knowledge/timing-debugging.md +0 -372
  1048. package/src/modules/bmm/testarch/knowledge/visual-debugging.md +0 -524
  1049. package/src/modules/bmm/testarch/tea-index.csv +0 -22
  1050. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/instructions.md +0 -110
  1051. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/project-context.md +0 -25
  1052. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/workflow.yaml +0 -39
  1053. package/src/modules/bmm/workflows/1-analysis/domain-research/instructions.md +0 -423
  1054. package/src/modules/bmm/workflows/1-analysis/domain-research/template.md +0 -180
  1055. package/src/modules/bmm/workflows/1-analysis/domain-research/workflow.yaml +0 -69
  1056. package/src/modules/bmm/workflows/1-analysis/product-brief/checklist.md +0 -115
  1057. package/src/modules/bmm/workflows/1-analysis/product-brief/instructions.md +0 -524
  1058. package/src/modules/bmm/workflows/1-analysis/product-brief/template.md +0 -181
  1059. package/src/modules/bmm/workflows/1-analysis/product-brief/workflow.yaml +0 -61
  1060. package/src/modules/bmm/workflows/1-analysis/research/checklist-deep-prompt.md +0 -144
  1061. package/src/modules/bmm/workflows/1-analysis/research/checklist-technical.md +0 -249
  1062. package/src/modules/bmm/workflows/1-analysis/research/checklist.md +0 -299
  1063. package/src/modules/bmm/workflows/1-analysis/research/claude-code/injections.yaml +0 -114
  1064. package/src/modules/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +0 -439
  1065. package/src/modules/bmm/workflows/1-analysis/research/instructions-market.md +0 -679
  1066. package/src/modules/bmm/workflows/1-analysis/research/instructions-router.md +0 -133
  1067. package/src/modules/bmm/workflows/1-analysis/research/instructions-technical.md +0 -538
  1068. package/src/modules/bmm/workflows/1-analysis/research/template-deep-prompt.md +0 -94
  1069. package/src/modules/bmm/workflows/1-analysis/research/template-market.md +0 -347
  1070. package/src/modules/bmm/workflows/1-analysis/research/template-technical.md +0 -245
  1071. package/src/modules/bmm/workflows/1-analysis/research/workflow.yaml +0 -62
  1072. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/checklist.md +0 -310
  1073. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +0 -1301
  1074. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +0 -145
  1075. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/workflow.yaml +0 -93
  1076. package/src/modules/bmm/workflows/2-plan-workflows/prd/checklist.md +0 -350
  1077. package/src/modules/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/epics-template.md +0 -52
  1078. package/src/modules/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/instructions.md +0 -169
  1079. package/src/modules/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/workflow.yaml +0 -55
  1080. package/src/modules/bmm/workflows/2-plan-workflows/prd/domain-complexity.csv +0 -13
  1081. package/src/modules/bmm/workflows/2-plan-workflows/prd/instructions.md +0 -408
  1082. package/src/modules/bmm/workflows/2-plan-workflows/prd/prd-template.md +0 -237
  1083. package/src/modules/bmm/workflows/2-plan-workflows/prd/project-types.csv +0 -11
  1084. package/src/modules/bmm/workflows/2-plan-workflows/prd/workflow.yaml +0 -72
  1085. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/checklist.md +0 -214
  1086. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/epics-template.md +0 -80
  1087. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-level0-story.md +0 -200
  1088. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-level1-stories.md +0 -451
  1089. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +0 -1115
  1090. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/tech-spec-template.md +0 -181
  1091. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/user-story-template.md +0 -90
  1092. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/workflow.yaml +0 -79
  1093. package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-patterns.yaml +0 -347
  1094. package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-template.md +0 -103
  1095. package/src/modules/bmm/workflows/3-solutioning/architecture/checklist.md +0 -244
  1096. package/src/modules/bmm/workflows/3-solutioning/architecture/decision-catalog.yaml +0 -222
  1097. package/src/modules/bmm/workflows/3-solutioning/architecture/instructions.md +0 -704
  1098. package/src/modules/bmm/workflows/3-solutioning/architecture/pattern-categories.csv +0 -13
  1099. package/src/modules/bmm/workflows/3-solutioning/architecture/workflow.yaml +0 -114
  1100. package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/checklist.md +0 -175
  1101. package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/instructions.md +0 -305
  1102. package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/template.md +0 -146
  1103. package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/validation-criteria.yaml +0 -189
  1104. package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/workflow.yaml +0 -66
  1105. package/src/modules/bmm/workflows/4-implementation/code-review/backlog_template.md +0 -12
  1106. package/src/modules/bmm/workflows/4-implementation/code-review/checklist.md +0 -22
  1107. package/src/modules/bmm/workflows/4-implementation/code-review/instructions.md +0 -420
  1108. package/src/modules/bmm/workflows/4-implementation/code-review/workflow.yaml +0 -59
  1109. package/src/modules/bmm/workflows/4-implementation/correct-course/checklist.md +0 -279
  1110. package/src/modules/bmm/workflows/4-implementation/correct-course/instructions.md +0 -201
  1111. package/src/modules/bmm/workflows/4-implementation/correct-course/workflow.yaml +0 -45
  1112. package/src/modules/bmm/workflows/4-implementation/create-story/checklist.md +0 -240
  1113. package/src/modules/bmm/workflows/4-implementation/create-story/instructions.md +0 -281
  1114. package/src/modules/bmm/workflows/4-implementation/create-story/template.md +0 -51
  1115. package/src/modules/bmm/workflows/4-implementation/create-story/workflow.yaml +0 -63
  1116. package/src/modules/bmm/workflows/4-implementation/dev-story/AUDIT-REPORT.md +0 -367
  1117. package/src/modules/bmm/workflows/4-implementation/dev-story/checklist.md +0 -38
  1118. package/src/modules/bmm/workflows/4-implementation/dev-story/instructions.md +0 -262
  1119. package/src/modules/bmm/workflows/4-implementation/dev-story/workflow.yaml +0 -28
  1120. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/checklist.md +0 -17
  1121. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/instructions.md +0 -187
  1122. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/template.md +0 -76
  1123. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/workflow.yaml +0 -48
  1124. package/src/modules/bmm/workflows/4-implementation/retrospective/instructions.md +0 -1460
  1125. package/src/modules/bmm/workflows/4-implementation/retrospective/workflow.yaml +0 -70
  1126. package/src/modules/bmm/workflows/4-implementation/sprint-planning/checklist.md +0 -33
  1127. package/src/modules/bmm/workflows/4-implementation/sprint-planning/instructions.md +0 -229
  1128. package/src/modules/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +0 -55
  1129. package/src/modules/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +0 -50
  1130. package/src/modules/bmm/workflows/4-implementation/story-context/checklist.md +0 -16
  1131. package/src/modules/bmm/workflows/4-implementation/story-context/context-template.xml +0 -34
  1132. package/src/modules/bmm/workflows/4-implementation/story-context/instructions.md +0 -233
  1133. package/src/modules/bmm/workflows/4-implementation/story-context/workflow.yaml +0 -51
  1134. package/src/modules/bmm/workflows/4-implementation/story-done/instructions.md +0 -111
  1135. package/src/modules/bmm/workflows/4-implementation/story-done/workflow.yaml +0 -27
  1136. package/src/modules/bmm/workflows/4-implementation/story-ready/instructions.md +0 -117
  1137. package/src/modules/bmm/workflows/4-implementation/story-ready/workflow.yaml +0 -27
  1138. package/src/modules/bmm/workflows/document-project/checklist.md +0 -245
  1139. package/src/modules/bmm/workflows/document-project/documentation-requirements.csv +0 -12
  1140. package/src/modules/bmm/workflows/document-project/instructions.md +0 -222
  1141. package/src/modules/bmm/workflows/document-project/templates/deep-dive-template.md +0 -345
  1142. package/src/modules/bmm/workflows/document-project/templates/index-template.md +0 -169
  1143. package/src/modules/bmm/workflows/document-project/templates/project-overview-template.md +0 -103
  1144. package/src/modules/bmm/workflows/document-project/templates/project-scan-report-schema.json +0 -160
  1145. package/src/modules/bmm/workflows/document-project/templates/source-tree-template.md +0 -135
  1146. package/src/modules/bmm/workflows/document-project/workflow.yaml +0 -36
  1147. package/src/modules/bmm/workflows/document-project/workflows/deep-dive-instructions.md +0 -298
  1148. package/src/modules/bmm/workflows/document-project/workflows/deep-dive.yaml +0 -31
  1149. package/src/modules/bmm/workflows/document-project/workflows/full-scan-instructions.md +0 -1106
  1150. package/src/modules/bmm/workflows/document-project/workflows/full-scan.yaml +0 -31
  1151. package/src/modules/bmm/workflows/techdoc/documentation-standards.md +0 -262
  1152. package/src/modules/bmm/workflows/testarch/atdd/atdd-checklist-template.md +0 -363
  1153. package/src/modules/bmm/workflows/testarch/atdd/checklist.md +0 -373
  1154. package/src/modules/bmm/workflows/testarch/atdd/instructions.md +0 -785
  1155. package/src/modules/bmm/workflows/testarch/atdd/workflow.yaml +0 -54
  1156. package/src/modules/bmm/workflows/testarch/automate/checklist.md +0 -580
  1157. package/src/modules/bmm/workflows/testarch/automate/instructions.md +0 -1303
  1158. package/src/modules/bmm/workflows/testarch/automate/workflow.yaml +0 -63
  1159. package/src/modules/bmm/workflows/testarch/ci/checklist.md +0 -246
  1160. package/src/modules/bmm/workflows/testarch/ci/github-actions-template.yaml +0 -165
  1161. package/src/modules/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +0 -128
  1162. package/src/modules/bmm/workflows/testarch/ci/instructions.md +0 -517
  1163. package/src/modules/bmm/workflows/testarch/ci/workflow.yaml +0 -55
  1164. package/src/modules/bmm/workflows/testarch/framework/checklist.md +0 -321
  1165. package/src/modules/bmm/workflows/testarch/framework/instructions.md +0 -455
  1166. package/src/modules/bmm/workflows/testarch/framework/workflow.yaml +0 -55
  1167. package/src/modules/bmm/workflows/testarch/nfr-assess/checklist.md +0 -405
  1168. package/src/modules/bmm/workflows/testarch/nfr-assess/instructions.md +0 -722
  1169. package/src/modules/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +0 -443
  1170. package/src/modules/bmm/workflows/testarch/nfr-assess/workflow.yaml +0 -58
  1171. package/src/modules/bmm/workflows/testarch/test-design/checklist.md +0 -234
  1172. package/src/modules/bmm/workflows/testarch/test-design/instructions.md +0 -621
  1173. package/src/modules/bmm/workflows/testarch/test-design/test-design-template.md +0 -285
  1174. package/src/modules/bmm/workflows/testarch/test-design/workflow.yaml +0 -54
  1175. package/src/modules/bmm/workflows/testarch/test-review/checklist.md +0 -470
  1176. package/src/modules/bmm/workflows/testarch/test-review/instructions.md +0 -608
  1177. package/src/modules/bmm/workflows/testarch/test-review/test-review-template.md +0 -388
  1178. package/src/modules/bmm/workflows/testarch/test-review/workflow.yaml +0 -55
  1179. package/src/modules/bmm/workflows/testarch/trace/checklist.md +0 -654
  1180. package/src/modules/bmm/workflows/testarch/trace/instructions.md +0 -1045
  1181. package/src/modules/bmm/workflows/testarch/trace/trace-template.md +0 -673
  1182. package/src/modules/bmm/workflows/testarch/trace/workflow.yaml +0 -68
  1183. package/src/modules/bmm/workflows/workflow-status/init/instructions.md +0 -823
  1184. package/src/modules/bmm/workflows/workflow-status/init/workflow.yaml +0 -29
  1185. package/src/modules/bmm/workflows/workflow-status/instructions.md +0 -387
  1186. package/src/modules/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +0 -127
  1187. package/src/modules/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +0 -115
  1188. package/src/modules/bmm/workflows/workflow-status/paths/game-design.yaml +0 -52
  1189. package/src/modules/bmm/workflows/workflow-status/paths/method-brownfield.yaml +0 -97
  1190. package/src/modules/bmm/workflows/workflow-status/paths/method-greenfield.yaml +0 -88
  1191. package/src/modules/bmm/workflows/workflow-status/paths/quick-flow-brownfield.yaml +0 -58
  1192. package/src/modules/bmm/workflows/workflow-status/paths/quick-flow-greenfield.yaml +0 -47
  1193. package/src/modules/bmm/workflows/workflow-status/project-levels.yaml +0 -59
  1194. package/src/modules/bmm/workflows/workflow-status/sample-level-3-workflow.yaml +0 -49
  1195. package/src/modules/bmm/workflows/workflow-status/workflow-status-template.yaml +0 -31
  1196. package/src/modules/bmm/workflows/workflow-status/workflow.yaml +0 -30
  1197. package/src/modules/cis/README.md +0 -153
  1198. package/src/modules/cis/_module-installer/install-config.yaml +0 -16
  1199. package/src/modules/cis/_module-installer/installer.js +0 -92
  1200. package/src/modules/cis/agents/README.md +0 -104
  1201. package/src/modules/cis/agents/brainstorming-coach.agent.yaml +0 -28
  1202. package/src/modules/cis/agents/creative-problem-solver.agent.yaml +0 -28
  1203. package/src/modules/cis/agents/design-thinking-coach.agent.yaml +0 -28
  1204. package/src/modules/cis/agents/innovation-strategist.agent.yaml +0 -28
  1205. package/src/modules/cis/agents/storyteller.agent.yaml +0 -28
  1206. package/src/modules/cis/teams/creative-squad.yaml +0 -7
  1207. package/src/modules/cis/teams/default-party.csv +0 -11
  1208. package/src/modules/cis/workflows/README.md +0 -139
  1209. package/src/modules/cis/workflows/design-thinking/README.md +0 -56
  1210. package/src/modules/cis/workflows/design-thinking/design-methods.csv +0 -31
  1211. package/src/modules/cis/workflows/design-thinking/instructions.md +0 -200
  1212. package/src/modules/cis/workflows/design-thinking/template.md +0 -111
  1213. package/src/modules/cis/workflows/design-thinking/workflow.yaml +0 -43
  1214. package/src/modules/cis/workflows/innovation-strategy/README.md +0 -56
  1215. package/src/modules/cis/workflows/innovation-strategy/innovation-frameworks.csv +0 -31
  1216. package/src/modules/cis/workflows/innovation-strategy/instructions.md +0 -274
  1217. package/src/modules/cis/workflows/innovation-strategy/template.md +0 -189
  1218. package/src/modules/cis/workflows/innovation-strategy/workflow.yaml +0 -43
  1219. package/src/modules/cis/workflows/problem-solving/README.md +0 -56
  1220. package/src/modules/cis/workflows/problem-solving/instructions.md +0 -250
  1221. package/src/modules/cis/workflows/problem-solving/solving-methods.csv +0 -31
  1222. package/src/modules/cis/workflows/problem-solving/template.md +0 -165
  1223. package/src/modules/cis/workflows/problem-solving/workflow.yaml +0 -43
  1224. package/src/modules/cis/workflows/storytelling/README.md +0 -58
  1225. package/src/modules/cis/workflows/storytelling/instructions.md +0 -291
  1226. package/src/modules/cis/workflows/storytelling/story-types.csv +0 -26
  1227. package/src/modules/cis/workflows/storytelling/template.md +0 -113
  1228. package/src/modules/cis/workflows/storytelling/workflow.yaml +0 -43
  1229. package/src/utility/models/agent-activation-ide.xml +0 -51
  1230. package/src/utility/models/agent-activation-web.xml +0 -60
  1231. package/src/utility/models/agent-command-header.md +0 -1
  1232. package/src/utility/models/agent-config-template.md +0 -23
  1233. package/src/utility/models/agent-in-team-activation.xml +0 -3
  1234. package/src/utility/models/fragments/activation-rules.xml +0 -8
  1235. package/src/utility/models/fragments/activation-steps.xml +0 -16
  1236. package/src/utility/models/fragments/handler-action.xml +0 -4
  1237. package/src/utility/models/fragments/handler-exec.xml +0 -5
  1238. package/src/utility/models/fragments/handler-tmpl.xml +0 -5
  1239. package/src/utility/models/fragments/handler-validate-workflow.xml +0 -7
  1240. package/src/utility/models/fragments/handler-workflow.xml +0 -9
  1241. package/src/utility/models/fragments/menu-handlers.xml +0 -6
  1242. package/src/utility/models/fragments/web-bundle-activation-steps.xml +0 -32
  1243. package/src/utility/templates/agent.customize.template.yaml +0 -42
  1244. package/test/fixtures/agent-schema/invalid/metadata/core-agent-with-module.agent.yaml +0 -26
  1245. package/test/fixtures/agent-schema/invalid/metadata/module-agent-missing-module.agent.yaml +0 -25
  1246. package/test/fixtures/agent-schema/invalid/metadata/wrong-module-value.agent.yaml +0 -26
  1247. package/tools/cli/bundlers/bundle-web.js +0 -179
  1248. package/tools/cli/bundlers/test-analyst.js +0 -28
  1249. package/tools/cli/bundlers/test-bundler.js +0 -118
  1250. package/tools/cli/bundlers/web-bundler.js +0 -1667
  1251. package/tools/cli/commands/build.js +0 -458
  1252. package/tools/cli/commands/list.js +0 -28
  1253. package/tools/cli/commands/update.js +0 -28
  1254. package/tools/cli/installers/lib/ide/auggie.js +0 -179
  1255. package/tools/cli/installers/lib/ide/claude-code.js +0 -471
  1256. package/tools/cli/installers/lib/ide/cline.js +0 -220
  1257. package/tools/cli/installers/lib/ide/crush.js +0 -240
  1258. package/tools/cli/installers/lib/ide/cursor.js +0 -352
  1259. package/tools/cli/installers/lib/ide/gemini.js +0 -206
  1260. package/tools/cli/installers/lib/ide/iflow.js +0 -125
  1261. package/tools/cli/installers/lib/ide/opencode.js +0 -212
  1262. package/tools/cli/installers/lib/ide/qwen.js +0 -318
  1263. package/tools/cli/installers/lib/ide/roo.js +0 -253
  1264. package/tools/cli/installers/lib/ide/templates/gemini-agent-command.toml +0 -14
  1265. package/tools/cli/installers/lib/ide/templates/gemini-task-command.toml +0 -12
  1266. package/tools/cli/installers/lib/ide/trae.js +0 -266
  1267. package/tools/cli/installers/lib/ide/windsurf.js +0 -211
  1268. package/tools/cli/lib/replace-project-root.js +0 -239
  1269. package/tools/cli/regenerate-manifests.js +0 -28
  1270. package/tools/cli/test-yaml-builder.js +0 -43
  1271. package/tools/flattener/aggregate.js +0 -76
  1272. package/tools/flattener/binary.js +0 -80
  1273. package/tools/flattener/discovery.js +0 -71
  1274. package/tools/flattener/files.js +0 -35
  1275. package/tools/flattener/ignoreRules.js +0 -172
  1276. package/tools/flattener/main.js +0 -483
  1277. package/tools/flattener/projectRoot.js +0 -201
  1278. package/tools/flattener/prompts.js +0 -44
  1279. package/tools/flattener/stats.helpers.js +0 -368
  1280. package/tools/flattener/stats.js +0 -75
  1281. package/tools/flattener/test-matrix.js +0 -409
  1282. package/tools/flattener/xml.js +0 -88
  1283. package/tools/validate-bundles.js +0 -87
  1284. package/v6-open-items.md +0 -17
  1285. package/web-bundles/bmgd/agents/game-architect.xml +0 -664
  1286. package/web-bundles/bmgd/agents/game-designer.xml +0 -5489
  1287. package/web-bundles/bmgd/agents/game-dev.xml +0 -595
  1288. package/web-bundles/bmgd/agents/game-scrum-master.xml +0 -699
  1289. package/web-bundles/bmgd/teams/team-gamedev.xml +0 -6588
  1290. package/web-bundles/bmm/agents/analyst.xml +0 -5263
  1291. package/web-bundles/bmm/agents/architect.xml +0 -2378
  1292. package/web-bundles/bmm/agents/dev.xml +0 -248
  1293. package/web-bundles/bmm/agents/pm.xml +0 -4137
  1294. package/web-bundles/bmm/agents/sm.xml +0 -708
  1295. package/web-bundles/bmm/agents/tea.xml +0 -759
  1296. package/web-bundles/bmm/agents/tech-writer.xml +0 -624
  1297. package/web-bundles/bmm/agents/ux-designer.xml +0 -2492
  1298. package/web-bundles/bmm/teams/team-fullstack.xml +0 -12369
  1299. package/web-bundles/cis/agents/brainstorming-coach.xml +0 -1069
  1300. package/web-bundles/cis/agents/creative-problem-solver.xml +0 -1060
  1301. package/web-bundles/cis/agents/design-thinking-coach.xml +0 -955
  1302. package/web-bundles/cis/agents/innovation-strategist.xml +0 -1108
  1303. package/web-bundles/cis/agents/storyteller.xml +0 -598
  1304. package/web-bundles/cis/teams/creative-squad.xml +0 -3449
  1305. /package/{.bmad → src}/bmm/teams/team-fullstack.yaml +0 -0
  1306. /package/{.bmad → src}/bmm/workflows/4-implementation/sprint-planning/checklist.md +0 -0
  1307. /package/{.bmad → src}/bmm/workflows/document-project/documentation-requirements.csv +0 -0
  1308. /package/{.bmad → src}/bmm/workflows/document-project/templates/deep-dive-template.md +0 -0
  1309. /package/{.bmad → src}/bmm/workflows/document-project/templates/index-template.md +0 -0
  1310. /package/{.bmad → src}/bmm/workflows/document-project/templates/project-overview-template.md +0 -0
  1311. /package/{.bmad → src}/bmm/workflows/document-project/templates/source-tree-template.md +0 -0
  1312. /package/src/utility/{models/fragments/handler-data.xml → agent-components/handler-data.txt} +0 -0
  1313. /package/{src/utility/models/action-command-header.md → tools/cli/installers/lib/ide/templates/split/.gitkeep} +0 -0
@@ -1,8 +1,10 @@
1
1
  const path = require('node:path');
2
2
  const fs = require('fs-extra');
3
- const yaml = require('js-yaml');
3
+ const yaml = require('yaml');
4
4
  const crypto = require('node:crypto');
5
+ const csv = require('csv-parse/sync');
5
6
  const { getSourcePath, getModulePath } = require('../../../lib/project-root');
7
+ const prompts = require('../../../lib/prompts');
6
8
 
7
9
  // Load package.json for version info
8
10
  const packageJson = require('../../../../../package.json');
@@ -21,25 +23,49 @@ class ManifestGenerator {
21
23
  this.selectedIdes = [];
22
24
  }
23
25
 
26
+ /**
27
+ * Clean text for CSV output by normalizing whitespace and escaping quotes
28
+ * @param {string} text - Text to clean
29
+ * @returns {string} Cleaned text safe for CSV
30
+ */
31
+ cleanForCSV(text) {
32
+ if (!text) return '';
33
+ return text
34
+ .trim()
35
+ .replaceAll(/\s+/g, ' ') // Normalize all whitespace (including newlines) to single space
36
+ .replaceAll('"', '""'); // Escape quotes for CSV
37
+ }
38
+
24
39
  /**
25
40
  * Generate all manifests for the installation
26
- * @param {string} bmadDir - BMAD installation directory
41
+ * @param {string} bmadDir - _bmad
27
42
  * @param {Array} selectedModules - Selected modules for installation
28
43
  * @param {Array} installedFiles - All installed files (optional, for hash tracking)
29
44
  */
30
45
  async generateManifests(bmadDir, selectedModules, installedFiles = [], options = {}) {
31
- // Create _cfg directory if it doesn't exist
32
- const cfgDir = path.join(bmadDir, '_cfg');
46
+ // Create _config directory if it doesn't exist
47
+ const cfgDir = path.join(bmadDir, '_config');
33
48
  await fs.ensureDir(cfgDir);
34
49
 
35
50
  // Store modules list (all modules including preserved ones)
36
51
  const preservedModules = options.preservedModules || [];
37
- // Deduplicate modules list to prevent duplicates
38
- this.modules = [...new Set(['core', ...selectedModules, ...preservedModules])];
39
- this.updatedModules = [...new Set(['core', ...selectedModules])]; // Only these get rescanned
40
- this.preservedModules = preservedModules; // These stay as-is in CSVs
52
+
53
+ // Scan the bmad directory to find all actually installed modules
54
+ const installedModules = await this.scanInstalledModules(bmadDir);
55
+
56
+ // Since custom modules are now installed the same way as regular modules,
57
+ // we don't need to exclude them from manifest generation
58
+ const allModules = [...new Set(['core', ...selectedModules, ...preservedModules, ...installedModules])];
59
+
60
+ this.modules = allModules;
61
+ this.updatedModules = allModules; // Include ALL modules (including custom) for scanning
62
+
63
+ // For CSV manifests, we need to include ALL modules that are installed
64
+ // preservedModules controls which modules stay as-is in the CSV (don't get rescanned)
65
+ // But all modules should be included in the final manifest
66
+ this.preservedModules = allModules; // Include ALL modules (including custom)
41
67
  this.bmadDir = bmadDir;
42
- this.bmadFolderName = path.basename(bmadDir); // Get the actual folder name (e.g., '.bmad' or 'bmad')
68
+ this.bmadFolderName = path.basename(bmadDir); // Get the actual folder name (e.g., '_bmad' or 'bmad')
43
69
  this.allInstalledFiles = installedFiles;
44
70
 
45
71
  if (!Object.prototype.hasOwnProperty.call(options, 'ides')) {
@@ -57,14 +83,14 @@ class ManifestGenerator {
57
83
  // Collect workflow data
58
84
  await this.collectWorkflows(selectedModules);
59
85
 
60
- // Collect agent data
61
- await this.collectAgents(selectedModules);
86
+ // Collect agent data - use updatedModules which includes all installed modules
87
+ await this.collectAgents(this.updatedModules);
62
88
 
63
89
  // Collect task data
64
- await this.collectTasks(selectedModules);
90
+ await this.collectTasks(this.updatedModules);
65
91
 
66
92
  // Collect tool data
67
- await this.collectTools(selectedModules);
93
+ await this.collectTools(this.updatedModules);
68
94
 
69
95
  // Write manifest files and collect their paths
70
96
  const manifestFiles = [
@@ -105,13 +131,21 @@ class ManifestGenerator {
105
131
  }
106
132
 
107
133
  /**
108
- * Recursively find and parse workflow.yaml files
134
+ * Recursively find and parse workflow.yaml and workflow.md files
109
135
  */
110
136
  async getWorkflowsFromPath(basePath, moduleName) {
111
137
  const workflows = [];
112
138
  const workflowsPath = path.join(basePath, 'workflows');
139
+ const debug = process.env.BMAD_DEBUG_MANIFEST === 'true';
140
+
141
+ if (debug) {
142
+ console.log(`[DEBUG] Scanning workflows in: ${workflowsPath}`);
143
+ }
113
144
 
114
145
  if (!(await fs.pathExists(workflowsPath))) {
146
+ if (debug) {
147
+ console.log(`[DEBUG] Workflows path does not exist: ${workflowsPath}`);
148
+ }
115
149
  return workflows;
116
150
  }
117
151
 
@@ -126,14 +160,53 @@ class ManifestGenerator {
126
160
  // Recurse into subdirectories
127
161
  const newRelativePath = relativePath ? `${relativePath}/${entry.name}` : entry.name;
128
162
  await findWorkflows(fullPath, newRelativePath);
129
- } else if (entry.name === 'workflow.yaml') {
130
- // Parse workflow file
163
+ } else if (
164
+ entry.name === 'workflow.yaml' ||
165
+ entry.name === 'workflow.md' ||
166
+ (entry.name.startsWith('workflow-') && entry.name.endsWith('.md'))
167
+ ) {
168
+ // Parse workflow file (both YAML and MD formats)
169
+ if (debug) {
170
+ console.log(`[DEBUG] Found workflow file: ${fullPath}`);
171
+ }
131
172
  try {
132
- const content = await fs.readFile(fullPath, 'utf8');
133
- const workflow = yaml.load(content);
173
+ // Read and normalize line endings (fix Windows CRLF issues)
174
+ const rawContent = await fs.readFile(fullPath, 'utf8');
175
+ const content = rawContent.replaceAll('\r\n', '\n').replaceAll('\r', '\n');
176
+
177
+ let workflow;
178
+ if (entry.name === 'workflow.yaml') {
179
+ // Parse YAML workflow
180
+ workflow = yaml.parse(content);
181
+ } else {
182
+ // Parse MD workflow with YAML frontmatter
183
+ const frontmatterMatch = content.match(/^---\r?\n([\s\S]*?)\r?\n---/);
184
+ if (!frontmatterMatch) {
185
+ if (debug) {
186
+ console.log(`[DEBUG] Skipped (no frontmatter): ${fullPath}`);
187
+ }
188
+ continue; // Skip MD files without frontmatter
189
+ }
190
+ workflow = yaml.parse(frontmatterMatch[1]);
191
+ }
192
+
193
+ if (debug) {
194
+ console.log(`[DEBUG] Parsed: name="${workflow.name}", description=${workflow.description ? 'OK' : 'MISSING'}`);
195
+ }
134
196
 
135
197
  // Skip template workflows (those with placeholder values)
136
198
  if (workflow.name && workflow.name.includes('{') && workflow.name.includes('}')) {
199
+ if (debug) {
200
+ console.log(`[DEBUG] Skipped (template placeholder): ${workflow.name}`);
201
+ }
202
+ continue;
203
+ }
204
+
205
+ // Skip workflows marked as non-standalone (reference/example workflows)
206
+ if (workflow.standalone === false) {
207
+ if (debug) {
208
+ console.log(`[DEBUG] Skipped (standalone=false): ${workflow.name}`);
209
+ }
137
210
  continue;
138
211
  }
139
212
 
@@ -141,18 +214,15 @@ class ManifestGenerator {
141
214
  // Build relative path for installation
142
215
  const installPath =
143
216
  moduleName === 'core'
144
- ? `${this.bmadFolderName}/core/workflows/${relativePath}/workflow.yaml`
145
- : `${this.bmadFolderName}/${moduleName}/workflows/${relativePath}/workflow.yaml`;
146
-
147
- // Check for standalone property (default: false)
148
- const standalone = workflow.standalone === true;
217
+ ? `${this.bmadFolderName}/core/workflows/${relativePath}/${entry.name}`
218
+ : `${this.bmadFolderName}/${moduleName}/workflows/${relativePath}/${entry.name}`;
149
219
 
220
+ // Workflows with standalone: false are filtered out above
150
221
  workflows.push({
151
222
  name: workflow.name,
152
- description: workflow.description.replaceAll('"', '""'), // Escape quotes for CSV
223
+ description: this.cleanForCSV(workflow.description),
153
224
  module: moduleName,
154
225
  path: installPath,
155
- standalone: standalone,
156
226
  });
157
227
 
158
228
  // Add to files list
@@ -162,15 +232,28 @@ class ManifestGenerator {
162
232
  module: moduleName,
163
233
  path: installPath,
164
234
  });
235
+
236
+ if (debug) {
237
+ console.log(`[DEBUG] ✓ Added workflow: ${workflow.name} (${moduleName})`);
238
+ }
239
+ } else {
240
+ if (debug) {
241
+ console.log(`[DEBUG] Skipped (missing name or description): ${fullPath}`);
242
+ }
165
243
  }
166
244
  } catch (error) {
167
- console.warn(`Warning: Failed to parse workflow at ${fullPath}: ${error.message}`);
245
+ await prompts.log.warn(`Failed to parse workflow at ${fullPath}: ${error.message}`);
168
246
  }
169
247
  }
170
248
  }
171
249
  };
172
250
 
173
251
  await findWorkflows(workflowsPath);
252
+
253
+ if (debug) {
254
+ console.log(`[DEBUG] Total workflows found in ${moduleName}: ${workflows.length}`);
255
+ }
256
+
174
257
  return workflows;
175
258
  }
176
259
 
@@ -207,18 +290,23 @@ class ManifestGenerator {
207
290
  }
208
291
 
209
292
  /**
210
- * Get agents from a directory
293
+ * Get agents from a directory recursively
211
294
  * Only includes compiled .md files (not .agent.yaml source files)
212
295
  */
213
- async getAgentsFromDir(dirPath, moduleName) {
296
+ async getAgentsFromDir(dirPath, moduleName, relativePath = '') {
214
297
  const agents = [];
215
- const files = await fs.readdir(dirPath);
298
+ const entries = await fs.readdir(dirPath, { withFileTypes: true });
216
299
 
217
- for (const file of files) {
218
- // Only include .md files, skip .agent.yaml source files and README.md
219
- if (file.endsWith('.md') && !file.endsWith('.agent.yaml') && file.toLowerCase() !== 'readme.md') {
220
- const filePath = path.join(dirPath, file);
221
- const content = await fs.readFile(filePath, 'utf8');
300
+ for (const entry of entries) {
301
+ const fullPath = path.join(dirPath, entry.name);
302
+
303
+ if (entry.isDirectory()) {
304
+ // Recurse into subdirectories
305
+ const newRelativePath = relativePath ? `${relativePath}/${entry.name}` : entry.name;
306
+ const subDirAgents = await this.getAgentsFromDir(fullPath, moduleName, newRelativePath);
307
+ agents.push(...subDirAgents);
308
+ } else if (entry.name.endsWith('.md') && !entry.name.endsWith('.agent.yaml') && entry.name.toLowerCase() !== 'readme.md') {
309
+ const content = await fs.readFile(fullPath, 'utf8');
222
310
 
223
311
  // Skip files that don't contain <agent> tag (e.g., README files)
224
312
  if (!content.includes('<agent')) {
@@ -234,6 +322,7 @@ class ManifestGenerator {
234
322
  const nameMatch = content.match(/name="([^"]+)"/);
235
323
  const titleMatch = content.match(/title="([^"]+)"/);
236
324
  const iconMatch = content.match(/icon="([^"]+)"/);
325
+ const capabilitiesMatch = content.match(/capabilities="([^"]+)"/);
237
326
 
238
327
  // Extract persona fields
239
328
  const roleMatch = content.match(/<role>([^<]+)<\/role>/);
@@ -242,29 +331,24 @@ class ManifestGenerator {
242
331
  const principlesMatch = content.match(/<principles>([\s\S]*?)<\/principles>/);
243
332
 
244
333
  // Build relative path for installation
334
+ const fileRelativePath = relativePath ? `${relativePath}/${entry.name}` : entry.name;
245
335
  const installPath =
246
- moduleName === 'core' ? `${this.bmadFolderName}/core/agents/${file}` : `${this.bmadFolderName}/${moduleName}/agents/${file}`;
336
+ moduleName === 'core'
337
+ ? `${this.bmadFolderName}/core/agents/${fileRelativePath}`
338
+ : `${this.bmadFolderName}/${moduleName}/agents/${fileRelativePath}`;
247
339
 
248
- const agentName = file.replace('.md', '');
249
-
250
- // Helper function to clean and escape CSV content
251
- const cleanForCSV = (text) => {
252
- if (!text) return '';
253
- return text
254
- .trim()
255
- .replaceAll(/\s+/g, ' ') // Normalize whitespace
256
- .replaceAll('"', '""'); // Escape quotes for CSV
257
- };
340
+ const agentName = entry.name.replace('.md', '');
258
341
 
259
342
  agents.push({
260
343
  name: agentName,
261
344
  displayName: nameMatch ? nameMatch[1] : agentName,
262
345
  title: titleMatch ? titleMatch[1] : '',
263
346
  icon: iconMatch ? iconMatch[1] : '',
264
- role: roleMatch ? cleanForCSV(roleMatch[1]) : '',
265
- identity: identityMatch ? cleanForCSV(identityMatch[1]) : '',
266
- communicationStyle: styleMatch ? cleanForCSV(styleMatch[1]) : '',
267
- principles: principlesMatch ? cleanForCSV(principlesMatch[1]) : '',
347
+ capabilities: capabilitiesMatch ? this.cleanForCSV(capabilitiesMatch[1]) : '',
348
+ role: roleMatch ? this.cleanForCSV(roleMatch[1]) : '',
349
+ identity: identityMatch ? this.cleanForCSV(identityMatch[1]) : '',
350
+ communicationStyle: styleMatch ? this.cleanForCSV(styleMatch[1]) : '',
351
+ principles: principlesMatch ? this.cleanForCSV(principlesMatch[1]) : '',
268
352
  module: moduleName,
269
353
  path: installPath,
270
354
  });
@@ -313,27 +397,55 @@ class ManifestGenerator {
313
397
  const filePath = path.join(dirPath, file);
314
398
  const content = await fs.readFile(filePath, 'utf8');
315
399
 
316
- // Extract task metadata from content if possible
317
- const nameMatch = content.match(/name="([^"]+)"/);
400
+ // Skip internal/engine files (not user-facing tasks)
401
+ if (content.includes('internal="true"')) {
402
+ continue;
403
+ }
404
+
405
+ let name = file.replace(/\.(xml|md)$/, '');
406
+ let displayName = name;
407
+ let description = '';
408
+ let standalone = false;
409
+
410
+ if (file.endsWith('.md')) {
411
+ // Parse YAML frontmatter for .md tasks
412
+ const frontmatterMatch = content.match(/^---\r?\n([\s\S]*?)\r?\n---/);
413
+ if (frontmatterMatch) {
414
+ try {
415
+ const frontmatter = yaml.parse(frontmatterMatch[1]);
416
+ name = frontmatter.name || name;
417
+ displayName = frontmatter.displayName || frontmatter.name || name;
418
+ description = this.cleanForCSV(frontmatter.description || '');
419
+ // Tasks are standalone by default unless explicitly false (internal=true is already filtered above)
420
+ standalone = frontmatter.standalone !== false && frontmatter.standalone !== 'false';
421
+ } catch {
422
+ // If YAML parsing fails, use defaults
423
+ standalone = true; // Default to standalone
424
+ }
425
+ } else {
426
+ standalone = true; // No frontmatter means standalone
427
+ }
428
+ } else {
429
+ // For .xml tasks, extract from tag attributes
430
+ const nameMatch = content.match(/name="([^"]+)"/);
431
+ displayName = nameMatch ? nameMatch[1] : name;
318
432
 
319
- // Try description attribute first, fall back to <objective> element
320
- const descMatch = content.match(/description="([^"]+)"/);
321
- const objMatch = content.match(/<objective>([^<]+)<\/objective>/);
322
- const description = descMatch ? descMatch[1] : objMatch ? objMatch[1].trim() : '';
433
+ const descMatch = content.match(/description="([^"]+)"/);
434
+ const objMatch = content.match(/<objective>([^<]+)<\/objective>/);
435
+ description = this.cleanForCSV(descMatch ? descMatch[1] : objMatch ? objMatch[1].trim() : '');
323
436
 
324
- // Check for standalone attribute in <task> tag (default: false)
325
- const standaloneMatch = content.match(/<task[^>]+standalone="true"/);
326
- const standalone = !!standaloneMatch;
437
+ const standaloneFalseMatch = content.match(/<task[^>]+standalone="false"/);
438
+ standalone = !standaloneFalseMatch;
439
+ }
327
440
 
328
441
  // Build relative path for installation
329
442
  const installPath =
330
443
  moduleName === 'core' ? `${this.bmadFolderName}/core/tasks/${file}` : `${this.bmadFolderName}/${moduleName}/tasks/${file}`;
331
444
 
332
- const taskName = file.replace(/\.(xml|md)$/, '');
333
445
  tasks.push({
334
- name: taskName,
335
- displayName: nameMatch ? nameMatch[1] : taskName,
336
- description: description.replaceAll('"', '""'),
446
+ name: name,
447
+ displayName: displayName,
448
+ description: description,
337
449
  module: moduleName,
338
450
  path: installPath,
339
451
  standalone: standalone,
@@ -342,7 +454,7 @@ class ManifestGenerator {
342
454
  // Add to files list
343
455
  this.files.push({
344
456
  type: 'task',
345
- name: taskName,
457
+ name: name,
346
458
  module: moduleName,
347
459
  path: installPath,
348
460
  });
@@ -383,27 +495,55 @@ class ManifestGenerator {
383
495
  const filePath = path.join(dirPath, file);
384
496
  const content = await fs.readFile(filePath, 'utf8');
385
497
 
386
- // Extract tool metadata from content if possible
387
- const nameMatch = content.match(/name="([^"]+)"/);
498
+ // Skip internal tools (same as tasks)
499
+ if (content.includes('internal="true"')) {
500
+ continue;
501
+ }
502
+
503
+ let name = file.replace(/\.(xml|md)$/, '');
504
+ let displayName = name;
505
+ let description = '';
506
+ let standalone = false;
507
+
508
+ if (file.endsWith('.md')) {
509
+ // Parse YAML frontmatter for .md tools
510
+ const frontmatterMatch = content.match(/^---\r?\n([\s\S]*?)\r?\n---/);
511
+ if (frontmatterMatch) {
512
+ try {
513
+ const frontmatter = yaml.parse(frontmatterMatch[1]);
514
+ name = frontmatter.name || name;
515
+ displayName = frontmatter.displayName || frontmatter.name || name;
516
+ description = this.cleanForCSV(frontmatter.description || '');
517
+ // Tools are standalone by default unless explicitly false (internal=true is already filtered above)
518
+ standalone = frontmatter.standalone !== false && frontmatter.standalone !== 'false';
519
+ } catch {
520
+ // If YAML parsing fails, use defaults
521
+ standalone = true; // Default to standalone
522
+ }
523
+ } else {
524
+ standalone = true; // No frontmatter means standalone
525
+ }
526
+ } else {
527
+ // For .xml tools, extract from tag attributes
528
+ const nameMatch = content.match(/name="([^"]+)"/);
529
+ displayName = nameMatch ? nameMatch[1] : name;
388
530
 
389
- // Try description attribute first, fall back to <objective> element
390
- const descMatch = content.match(/description="([^"]+)"/);
391
- const objMatch = content.match(/<objective>([^<]+)<\/objective>/);
392
- const description = descMatch ? descMatch[1] : objMatch ? objMatch[1].trim() : '';
531
+ const descMatch = content.match(/description="([^"]+)"/);
532
+ const objMatch = content.match(/<objective>([^<]+)<\/objective>/);
533
+ description = this.cleanForCSV(descMatch ? descMatch[1] : objMatch ? objMatch[1].trim() : '');
393
534
 
394
- // Check for standalone attribute in <tool> tag (default: false)
395
- const standaloneMatch = content.match(/<tool[^>]+standalone="true"/);
396
- const standalone = !!standaloneMatch;
535
+ const standaloneFalseMatch = content.match(/<tool[^>]+standalone="false"/);
536
+ standalone = !standaloneFalseMatch;
537
+ }
397
538
 
398
539
  // Build relative path for installation
399
540
  const installPath =
400
541
  moduleName === 'core' ? `${this.bmadFolderName}/core/tools/${file}` : `${this.bmadFolderName}/${moduleName}/tools/${file}`;
401
542
 
402
- const toolName = file.replace(/\.(xml|md)$/, '');
403
543
  tools.push({
404
- name: toolName,
405
- displayName: nameMatch ? nameMatch[1] : toolName,
406
- description: description.replaceAll('"', '""'),
544
+ name: name,
545
+ displayName: displayName,
546
+ description: description,
407
547
  module: moduleName,
408
548
  path: installPath,
409
549
  standalone: standalone,
@@ -412,7 +552,7 @@ class ManifestGenerator {
412
552
  // Add to files list
413
553
  this.files.push({
414
554
  type: 'tool',
415
- name: toolName,
555
+ name: name,
416
556
  module: moduleName,
417
557
  path: installPath,
418
558
  });
@@ -424,25 +564,80 @@ class ManifestGenerator {
424
564
 
425
565
  /**
426
566
  * Write main manifest as YAML with installation info only
567
+ * Fetches fresh version info for all modules
427
568
  * @returns {string} Path to the manifest file
428
569
  */
429
570
  async writeMainManifest(cfgDir) {
430
571
  const manifestPath = path.join(cfgDir, 'manifest.yaml');
431
572
 
573
+ // Read existing manifest to preserve install date
574
+ let existingInstallDate = null;
575
+ const existingModulesMap = new Map();
576
+
577
+ if (await fs.pathExists(manifestPath)) {
578
+ try {
579
+ const existingContent = await fs.readFile(manifestPath, 'utf8');
580
+ const existingManifest = yaml.parse(existingContent);
581
+
582
+ // Preserve original install date
583
+ if (existingManifest.installation?.installDate) {
584
+ existingInstallDate = existingManifest.installation.installDate;
585
+ }
586
+
587
+ // Build map of existing modules for quick lookup
588
+ if (existingManifest.modules && Array.isArray(existingManifest.modules)) {
589
+ for (const m of existingManifest.modules) {
590
+ if (typeof m === 'object' && m.name) {
591
+ existingModulesMap.set(m.name, m);
592
+ } else if (typeof m === 'string') {
593
+ existingModulesMap.set(m, { installDate: existingInstallDate });
594
+ }
595
+ }
596
+ }
597
+ } catch {
598
+ // If we can't read existing manifest, continue with defaults
599
+ }
600
+ }
601
+
602
+ // Fetch fresh version info for all modules
603
+ const { Manifest } = require('./manifest');
604
+ const manifestObj = new Manifest();
605
+ const updatedModules = [];
606
+
607
+ for (const moduleName of this.modules) {
608
+ // Get fresh version info from source
609
+ const versionInfo = await manifestObj.getModuleVersionInfo(moduleName, this.bmadDir);
610
+
611
+ // Get existing install date if available
612
+ const existing = existingModulesMap.get(moduleName);
613
+
614
+ updatedModules.push({
615
+ name: moduleName,
616
+ version: versionInfo.version,
617
+ installDate: existing?.installDate || new Date().toISOString(),
618
+ lastUpdated: new Date().toISOString(),
619
+ source: versionInfo.source,
620
+ npmPackage: versionInfo.npmPackage,
621
+ repoUrl: versionInfo.repoUrl,
622
+ });
623
+ }
624
+
432
625
  const manifest = {
433
626
  installation: {
434
627
  version: packageJson.version,
435
- installDate: new Date().toISOString(),
628
+ installDate: existingInstallDate || new Date().toISOString(),
436
629
  lastUpdated: new Date().toISOString(),
437
630
  },
438
- modules: this.modules,
631
+ modules: updatedModules,
439
632
  ides: this.selectedIdes,
440
633
  };
441
634
 
442
- const yamlStr = yaml.dump(manifest, {
635
+ // Clean the manifest to remove any non-serializable values
636
+ const cleanManifest = structuredClone(manifest);
637
+
638
+ const yamlStr = yaml.stringify(cleanManifest, {
443
639
  indent: 2,
444
- lineWidth: -1,
445
- noRefs: true,
640
+ lineWidth: 0,
446
641
  sortKeys: false,
447
642
  });
448
643
 
@@ -499,7 +694,7 @@ class ManifestGenerator {
499
694
 
500
695
  return preservedRows;
501
696
  } catch (error) {
502
- console.warn(`Warning: Failed to read existing CSV ${csvPath}:`, error.message);
697
+ await prompts.log.warn(`Failed to read existing CSV ${csvPath}: ${error.message}`);
503
698
  return [];
504
699
  }
505
700
  }
@@ -540,13 +735,30 @@ class ManifestGenerator {
540
735
  */
541
736
  async writeWorkflowManifest(cfgDir) {
542
737
  const csvPath = path.join(cfgDir, 'workflow-manifest.csv');
738
+ const escapeCsv = (value) => `"${String(value ?? '').replaceAll('"', '""')}"`;
543
739
 
544
- // Create CSV header with standalone column
545
- let csv = 'name,description,module,path,standalone\n';
740
+ // Create CSV header - standalone column removed, everything is canonicalized to 4 columns
741
+ let csv = 'name,description,module,path\n';
742
+
743
+ // Build workflows map from discovered workflows only
744
+ // Old entries are NOT preserved - the manifest reflects what actually exists on disk
745
+ const allWorkflows = new Map();
546
746
 
547
- // Add all workflows
747
+ // Only add workflows that were actually discovered in this scan
548
748
  for (const workflow of this.workflows) {
549
- csv += `"${workflow.name}","${workflow.description}","${workflow.module}","${workflow.path}","${workflow.standalone}"\n`;
749
+ const key = `${workflow.module}:${workflow.name}`;
750
+ allWorkflows.set(key, {
751
+ name: workflow.name,
752
+ description: workflow.description,
753
+ module: workflow.module,
754
+ path: workflow.path,
755
+ });
756
+ }
757
+
758
+ // Write all workflows
759
+ for (const [, value] of allWorkflows) {
760
+ const row = [escapeCsv(value.name), escapeCsv(value.description), escapeCsv(value.module), escapeCsv(value.path)].join(',');
761
+ csv += row + '\n';
550
762
  }
551
763
 
552
764
  await fs.writeFile(csvPath, csv);
@@ -559,16 +771,69 @@ class ManifestGenerator {
559
771
  */
560
772
  async writeAgentManifest(cfgDir) {
561
773
  const csvPath = path.join(cfgDir, 'agent-manifest.csv');
774
+ const escapeCsv = (value) => `"${String(value ?? '').replaceAll('"', '""')}"`;
775
+
776
+ // Read existing manifest to preserve entries
777
+ const existingEntries = new Map();
778
+ if (await fs.pathExists(csvPath)) {
779
+ const content = await fs.readFile(csvPath, 'utf8');
780
+ const records = csv.parse(content, {
781
+ columns: true,
782
+ skip_empty_lines: true,
783
+ });
784
+ for (const record of records) {
785
+ existingEntries.set(`${record.module}:${record.name}`, record);
786
+ }
787
+ }
562
788
 
563
789
  // Create CSV header with persona fields
564
- let csv = 'name,displayName,title,icon,role,identity,communicationStyle,principles,module,path\n';
790
+ let csvContent = 'name,displayName,title,icon,capabilities,role,identity,communicationStyle,principles,module,path\n';
791
+
792
+ // Combine existing and new agents, preferring new data for duplicates
793
+ const allAgents = new Map();
794
+
795
+ // Add existing entries
796
+ for (const [key, value] of existingEntries) {
797
+ allAgents.set(key, value);
798
+ }
565
799
 
566
- // Add all agents
800
+ // Add/update new agents
567
801
  for (const agent of this.agents) {
568
- csv += `"${agent.name}","${agent.displayName}","${agent.title}","${agent.icon}","${agent.role}","${agent.identity}","${agent.communicationStyle}","${agent.principles}","${agent.module}","${agent.path}"\n`;
802
+ const key = `${agent.module}:${agent.name}`;
803
+ allAgents.set(key, {
804
+ name: agent.name,
805
+ displayName: agent.displayName,
806
+ title: agent.title,
807
+ icon: agent.icon,
808
+ capabilities: agent.capabilities,
809
+ role: agent.role,
810
+ identity: agent.identity,
811
+ communicationStyle: agent.communicationStyle,
812
+ principles: agent.principles,
813
+ module: agent.module,
814
+ path: agent.path,
815
+ });
569
816
  }
570
817
 
571
- await fs.writeFile(csvPath, csv);
818
+ // Write all agents
819
+ for (const [, record] of allAgents) {
820
+ const row = [
821
+ escapeCsv(record.name),
822
+ escapeCsv(record.displayName),
823
+ escapeCsv(record.title),
824
+ escapeCsv(record.icon),
825
+ escapeCsv(record.capabilities),
826
+ escapeCsv(record.role),
827
+ escapeCsv(record.identity),
828
+ escapeCsv(record.communicationStyle),
829
+ escapeCsv(record.principles),
830
+ escapeCsv(record.module),
831
+ escapeCsv(record.path),
832
+ ].join(',');
833
+ csvContent += row + '\n';
834
+ }
835
+
836
+ await fs.writeFile(csvPath, csvContent);
572
837
  return csvPath;
573
838
  }
574
839
 
@@ -578,16 +843,59 @@ class ManifestGenerator {
578
843
  */
579
844
  async writeTaskManifest(cfgDir) {
580
845
  const csvPath = path.join(cfgDir, 'task-manifest.csv');
846
+ const escapeCsv = (value) => `"${String(value ?? '').replaceAll('"', '""')}"`;
847
+
848
+ // Read existing manifest to preserve entries
849
+ const existingEntries = new Map();
850
+ if (await fs.pathExists(csvPath)) {
851
+ const content = await fs.readFile(csvPath, 'utf8');
852
+ const records = csv.parse(content, {
853
+ columns: true,
854
+ skip_empty_lines: true,
855
+ });
856
+ for (const record of records) {
857
+ existingEntries.set(`${record.module}:${record.name}`, record);
858
+ }
859
+ }
581
860
 
582
861
  // Create CSV header with standalone column
583
- let csv = 'name,displayName,description,module,path,standalone\n';
862
+ let csvContent = 'name,displayName,description,module,path,standalone\n';
863
+
864
+ // Combine existing and new tasks
865
+ const allTasks = new Map();
866
+
867
+ // Add existing entries
868
+ for (const [key, value] of existingEntries) {
869
+ allTasks.set(key, value);
870
+ }
584
871
 
585
- // Add all tasks
872
+ // Add/update new tasks
586
873
  for (const task of this.tasks) {
587
- csv += `"${task.name}","${task.displayName}","${task.description}","${task.module}","${task.path}","${task.standalone}"\n`;
874
+ const key = `${task.module}:${task.name}`;
875
+ allTasks.set(key, {
876
+ name: task.name,
877
+ displayName: task.displayName,
878
+ description: task.description,
879
+ module: task.module,
880
+ path: task.path,
881
+ standalone: task.standalone,
882
+ });
588
883
  }
589
884
 
590
- await fs.writeFile(csvPath, csv);
885
+ // Write all tasks
886
+ for (const [, record] of allTasks) {
887
+ const row = [
888
+ escapeCsv(record.name),
889
+ escapeCsv(record.displayName),
890
+ escapeCsv(record.description),
891
+ escapeCsv(record.module),
892
+ escapeCsv(record.path),
893
+ escapeCsv(record.standalone),
894
+ ].join(',');
895
+ csvContent += row + '\n';
896
+ }
897
+
898
+ await fs.writeFile(csvPath, csvContent);
591
899
  return csvPath;
592
900
  }
593
901
 
@@ -597,16 +905,59 @@ class ManifestGenerator {
597
905
  */
598
906
  async writeToolManifest(cfgDir) {
599
907
  const csvPath = path.join(cfgDir, 'tool-manifest.csv');
908
+ const escapeCsv = (value) => `"${String(value ?? '').replaceAll('"', '""')}"`;
909
+
910
+ // Read existing manifest to preserve entries
911
+ const existingEntries = new Map();
912
+ if (await fs.pathExists(csvPath)) {
913
+ const content = await fs.readFile(csvPath, 'utf8');
914
+ const records = csv.parse(content, {
915
+ columns: true,
916
+ skip_empty_lines: true,
917
+ });
918
+ for (const record of records) {
919
+ existingEntries.set(`${record.module}:${record.name}`, record);
920
+ }
921
+ }
600
922
 
601
923
  // Create CSV header with standalone column
602
- let csv = 'name,displayName,description,module,path,standalone\n';
924
+ let csvContent = 'name,displayName,description,module,path,standalone\n';
925
+
926
+ // Combine existing and new tools
927
+ const allTools = new Map();
928
+
929
+ // Add existing entries
930
+ for (const [key, value] of existingEntries) {
931
+ allTools.set(key, value);
932
+ }
603
933
 
604
- // Add all tools
934
+ // Add/update new tools
605
935
  for (const tool of this.tools) {
606
- csv += `"${tool.name}","${tool.displayName}","${tool.description}","${tool.module}","${tool.path}","${tool.standalone}"\n`;
936
+ const key = `${tool.module}:${tool.name}`;
937
+ allTools.set(key, {
938
+ name: tool.name,
939
+ displayName: tool.displayName,
940
+ description: tool.description,
941
+ module: tool.module,
942
+ path: tool.path,
943
+ standalone: tool.standalone,
944
+ });
607
945
  }
608
946
 
609
- await fs.writeFile(csvPath, csv);
947
+ // Write all tools
948
+ for (const [, record] of allTools) {
949
+ const row = [
950
+ escapeCsv(record.name),
951
+ escapeCsv(record.displayName),
952
+ escapeCsv(record.description),
953
+ escapeCsv(record.module),
954
+ escapeCsv(record.path),
955
+ escapeCsv(record.standalone),
956
+ ].join(',');
957
+ csvContent += row + '\n';
958
+ }
959
+
960
+ await fs.writeFile(csvPath, csvContent);
610
961
  return csvPath;
611
962
  }
612
963
 
@@ -641,13 +992,14 @@ class ManifestGenerator {
641
992
  if (this.allInstalledFiles && this.allInstalledFiles.length > 0) {
642
993
  // Process all installed files
643
994
  for (const filePath of this.allInstalledFiles) {
644
- const relativePath = 'bmad' + filePath.replace(this.bmadDir, '').replaceAll('\\', '/');
995
+ // Store paths relative to bmadDir (no folder prefix)
996
+ const relativePath = filePath.replace(this.bmadDir, '').replaceAll('\\', '/').replace(/^\//, '');
645
997
  const ext = path.extname(filePath).toLowerCase();
646
998
  const fileName = path.basename(filePath, ext);
647
999
 
648
- // Determine module from path
1000
+ // Determine module from path (first directory component)
649
1001
  const pathParts = relativePath.split('/');
650
- const module = pathParts.length > 1 ? pathParts[1] : 'unknown';
1002
+ const module = pathParts.length > 0 ? pathParts[0] : 'unknown';
651
1003
 
652
1004
  // Calculate hash
653
1005
  const hash = await this.calculateFileHash(filePath);
@@ -663,10 +1015,13 @@ class ManifestGenerator {
663
1015
  } else {
664
1016
  // Fallback: use the collected workflows/agents/tasks
665
1017
  for (const file of this.files) {
666
- const filePath = path.join(this.bmadDir, file.path.replace(this.bmadFolderName + '/', ''));
1018
+ // Strip the folder prefix if present (for consistency)
1019
+ const relPath = file.path.replace(this.bmadFolderName + '/', '');
1020
+ const filePath = path.join(this.bmadDir, relPath);
667
1021
  const hash = await this.calculateFileHash(filePath);
668
1022
  allFiles.push({
669
1023
  ...file,
1024
+ path: relPath,
670
1025
  hash: hash,
671
1026
  });
672
1027
  }
@@ -687,6 +1042,42 @@ class ManifestGenerator {
687
1042
  await fs.writeFile(csvPath, csv);
688
1043
  return csvPath;
689
1044
  }
1045
+
1046
+ /**
1047
+ * Scan the bmad directory to find all installed modules
1048
+ * @param {string} bmadDir - Path to bmad directory
1049
+ * @returns {Array} List of module names
1050
+ */
1051
+ async scanInstalledModules(bmadDir) {
1052
+ const modules = [];
1053
+
1054
+ try {
1055
+ const entries = await fs.readdir(bmadDir, { withFileTypes: true });
1056
+
1057
+ for (const entry of entries) {
1058
+ // Skip if not a directory or is a special directory
1059
+ if (!entry.isDirectory() || entry.name.startsWith('.') || entry.name === '_config') {
1060
+ continue;
1061
+ }
1062
+
1063
+ // Check if this looks like a module (has agents, workflows, or tasks directory)
1064
+ const modulePath = path.join(bmadDir, entry.name);
1065
+ const hasAgents = await fs.pathExists(path.join(modulePath, 'agents'));
1066
+ const hasWorkflows = await fs.pathExists(path.join(modulePath, 'workflows'));
1067
+ const hasTasks = await fs.pathExists(path.join(modulePath, 'tasks'));
1068
+ const hasTools = await fs.pathExists(path.join(modulePath, 'tools'));
1069
+
1070
+ // If it has any of these directories, it's likely a module
1071
+ if (hasAgents || hasWorkflows || hasTasks || hasTools) {
1072
+ modules.push(entry.name);
1073
+ }
1074
+ }
1075
+ } catch (error) {
1076
+ await prompts.log.warn(`Could not scan for installed modules: ${error.message}`);
1077
+ }
1078
+
1079
+ return modules;
1080
+ }
690
1081
  }
691
1082
 
692
1083
  module.exports = { ManifestGenerator };