bmad-fh 6.0.0-alpha.23

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 (626) hide show
  1. package/.coderabbit.yaml +40 -0
  2. package/.githooks/post-checkout +129 -0
  3. package/.githooks/pre-commit +63 -0
  4. package/.githooks/pre-push +135 -0
  5. package/.github/CODE_OF_CONDUCT.md +128 -0
  6. package/.github/FUNDING.yaml +15 -0
  7. package/.github/ISSUE_TEMPLATE/config.yaml +8 -0
  8. package/.github/ISSUE_TEMPLATE/feature_request.md +22 -0
  9. package/.github/ISSUE_TEMPLATE/issue.md +32 -0
  10. package/.github/scripts/discord-helpers.sh +34 -0
  11. package/.github/workflows/bundle-latest.yaml +330 -0
  12. package/.github/workflows/discord.yaml +90 -0
  13. package/.github/workflows/docs.yaml +63 -0
  14. package/.github/workflows/manual-release.yaml +190 -0
  15. package/.github/workflows/publish-multi-artifact.yaml +50 -0
  16. package/.github/workflows/quality.yaml +115 -0
  17. package/.husky/pre-commit +20 -0
  18. package/.markdownlint-cli2.yaml +41 -0
  19. package/.nvmrc +1 -0
  20. package/.prettierignore +9 -0
  21. package/.vscode/settings.json +97 -0
  22. package/CHANGELOG.md +1394 -0
  23. package/CNAME +1 -0
  24. package/CONTRIBUTING.md +306 -0
  25. package/CONTRIBUTORS.md +32 -0
  26. package/LICENSE +30 -0
  27. package/README.md +126 -0
  28. package/SECURITY.md +85 -0
  29. package/TRADEMARK.md +55 -0
  30. package/Wordmark.png +0 -0
  31. package/banner-bmad-method.png +0 -0
  32. package/docs/404.md +9 -0
  33. package/docs/_README_WORKFLOW_DIAGRAMS.md +40 -0
  34. package/docs/_STYLE_GUIDE.md +367 -0
  35. package/docs/_archive/customize-workflows.md +30 -0
  36. package/docs/_archive/getting-started-bmadv4.md +247 -0
  37. package/docs/_archive/vendor-workflows.md +52 -0
  38. package/docs/downloads.md +72 -0
  39. package/docs/explanation/agents/barry-quick-flow.md +328 -0
  40. package/docs/explanation/agents/index.md +19 -0
  41. package/docs/explanation/architecture/four-phases.md +107 -0
  42. package/docs/explanation/architecture/preventing-agent-conflicts.md +111 -0
  43. package/docs/explanation/architecture/why-solutioning-matters.md +75 -0
  44. package/docs/explanation/bmm/index.md +131 -0
  45. package/docs/explanation/core/index.md +18 -0
  46. package/docs/explanation/core-concepts/agent-roles.md +179 -0
  47. package/docs/explanation/core-concepts/index.md +35 -0
  48. package/docs/explanation/core-concepts/what-are-agents.md +97 -0
  49. package/docs/explanation/core-concepts/what-are-modules.md +85 -0
  50. package/docs/explanation/core-concepts/what-are-workflows.md +204 -0
  51. package/docs/explanation/faq/brownfield-faq.md +73 -0
  52. package/docs/explanation/faq/getting-started-faq.md +67 -0
  53. package/docs/explanation/faq/implementation-faq.md +52 -0
  54. package/docs/explanation/faq/index.md +16 -0
  55. package/docs/explanation/faq/levels-and-tracks-faq.md +52 -0
  56. package/docs/explanation/faq/planning-faq.md +41 -0
  57. package/docs/explanation/faq/tools-faq.md +277 -0
  58. package/docs/explanation/faq/workflows-faq.md +61 -0
  59. package/docs/explanation/features/advanced-elicitation.md +95 -0
  60. package/docs/explanation/features/brainstorming-techniques.md +92 -0
  61. package/docs/explanation/features/party-mode.md +95 -0
  62. package/docs/explanation/features/quick-flow.md +149 -0
  63. package/docs/explanation/features/tea-overview.md +410 -0
  64. package/docs/explanation/features/web-bundles.md +34 -0
  65. package/docs/explanation/philosophy/facilitation-over-generation.md +333 -0
  66. package/docs/explanation/philosophy/testing-as-engineering.md +112 -0
  67. package/docs/explanation/tea/engagement-models.md +710 -0
  68. package/docs/explanation/tea/fixture-architecture.md +457 -0
  69. package/docs/explanation/tea/knowledge-base-system.md +554 -0
  70. package/docs/explanation/tea/network-first-patterns.md +853 -0
  71. package/docs/explanation/tea/risk-based-testing.md +586 -0
  72. package/docs/explanation/tea/test-quality-standards.md +907 -0
  73. package/docs/how-to/brownfield/add-feature-to-existing.md +74 -0
  74. package/docs/how-to/brownfield/document-existing-project.md +66 -0
  75. package/docs/how-to/brownfield/index.md +84 -0
  76. package/docs/how-to/brownfield/quick-fix-in-brownfield.md +77 -0
  77. package/docs/how-to/brownfield/use-tea-for-enterprise.md +526 -0
  78. package/docs/how-to/brownfield/use-tea-with-existing-tests.md +577 -0
  79. package/docs/how-to/customization/customize-agents.md +212 -0
  80. package/docs/how-to/customization/enable-tea-mcp-enhancements.md +424 -0
  81. package/docs/how-to/customization/index.md +23 -0
  82. package/docs/how-to/customization/integrate-playwright-utils.md +813 -0
  83. package/docs/how-to/customization/shard-large-documents.md +101 -0
  84. package/docs/how-to/get-answers-about-bmad.md +102 -0
  85. package/docs/how-to/installation/index.md +12 -0
  86. package/docs/how-to/installation/install-bmad.md +111 -0
  87. package/docs/how-to/installation/install-custom-modules.md +118 -0
  88. package/docs/how-to/installation/upgrade-to-v6.md +131 -0
  89. package/docs/how-to/workflows/bmgd-quick-flow.md +156 -0
  90. package/docs/how-to/workflows/conduct-research.md +97 -0
  91. package/docs/how-to/workflows/create-architecture.md +119 -0
  92. package/docs/how-to/workflows/create-epics-and-stories.md +109 -0
  93. package/docs/how-to/workflows/create-prd.md +91 -0
  94. package/docs/how-to/workflows/create-product-brief.md +94 -0
  95. package/docs/how-to/workflows/create-story.md +102 -0
  96. package/docs/how-to/workflows/create-ux-design.md +100 -0
  97. package/docs/how-to/workflows/implement-story.md +97 -0
  98. package/docs/how-to/workflows/quick-spec.md +122 -0
  99. package/docs/how-to/workflows/run-atdd.md +436 -0
  100. package/docs/how-to/workflows/run-automate.md +653 -0
  101. package/docs/how-to/workflows/run-brainstorming-session.md +73 -0
  102. package/docs/how-to/workflows/run-code-review.md +89 -0
  103. package/docs/how-to/workflows/run-implementation-readiness.md +125 -0
  104. package/docs/how-to/workflows/run-nfr-assess.md +679 -0
  105. package/docs/how-to/workflows/run-sprint-planning.md +94 -0
  106. package/docs/how-to/workflows/run-test-design.md +98 -0
  107. package/docs/how-to/workflows/run-test-review.md +605 -0
  108. package/docs/how-to/workflows/run-trace.md +883 -0
  109. package/docs/how-to/workflows/setup-ci.md +712 -0
  110. package/docs/how-to/workflows/setup-party-mode.md +89 -0
  111. package/docs/how-to/workflows/setup-test-framework.md +98 -0
  112. package/docs/index.md +63 -0
  113. package/docs/migration-guide.md +365 -0
  114. package/docs/multi-scope-guide.md +379 -0
  115. package/docs/plans/multi-scope-parallel-artifacts-plan.md +695 -0
  116. package/docs/reference/agents/index.md +109 -0
  117. package/docs/reference/configuration/core-tasks.md +67 -0
  118. package/docs/reference/configuration/global-config.md +28 -0
  119. package/docs/reference/glossary/index.md +159 -0
  120. package/docs/reference/tea/commands.md +254 -0
  121. package/docs/reference/tea/configuration.md +678 -0
  122. package/docs/reference/tea/knowledge-base.md +340 -0
  123. package/docs/reference/workflows/core-workflows.md +32 -0
  124. package/docs/reference/workflows/document-project.md +73 -0
  125. package/docs/reference/workflows/index.md +12 -0
  126. package/docs/tutorials/getting-started/getting-started-bmadv6.md +246 -0
  127. package/docs/tutorials/getting-started/images/workflow-method-greenfield.excalidraw +5034 -0
  128. package/docs/tutorials/getting-started/images/workflow-method-greenfield.svg +4 -0
  129. package/docs/tutorials/getting-started/images/workflow-overview.jpg +0 -0
  130. package/docs/tutorials/getting-started/tea-lite-quickstart.md +444 -0
  131. package/docs/tutorials/getting-started/workflow-overview.jpg +0 -0
  132. package/eslint.config.mjs +152 -0
  133. package/package.json +117 -0
  134. package/prettier.config.mjs +32 -0
  135. package/src/bmm/_module-installer/installer.js +48 -0
  136. package/src/bmm/_module-installer/platform-specifics/claude-code.js +35 -0
  137. package/src/bmm/_module-installer/platform-specifics/windsurf.js +32 -0
  138. package/src/bmm/agents/analyst.agent.yaml +41 -0
  139. package/src/bmm/agents/architect.agent.yaml +33 -0
  140. package/src/bmm/agents/dev.agent.yaml +38 -0
  141. package/src/bmm/agents/pm.agent.yaml +51 -0
  142. package/src/bmm/agents/quick-flow-solo-dev.agent.yaml +32 -0
  143. package/src/bmm/agents/sm.agent.yaml +47 -0
  144. package/src/bmm/agents/tea.agent.yaml +68 -0
  145. package/src/bmm/agents/tech-writer/tech-writer-sidecar/documentation-standards.md +224 -0
  146. package/src/bmm/agents/tech-writer/tech-writer.agent.yaml +49 -0
  147. package/src/bmm/agents/ux-designer.agent.yaml +30 -0
  148. package/src/bmm/data/README.md +29 -0
  149. package/src/bmm/data/project-context-template.md +40 -0
  150. package/src/bmm/module.yaml +64 -0
  151. package/src/bmm/sub-modules/claude-code/config.yaml +4 -0
  152. package/src/bmm/sub-modules/claude-code/injections.yaml +242 -0
  153. package/src/bmm/sub-modules/claude-code/readme.md +87 -0
  154. package/src/bmm/teams/default-party.csv +21 -0
  155. package/src/bmm/teams/team-fullstack.yaml +12 -0
  156. package/src/bmm/testarch/knowledge/api-request.md +442 -0
  157. package/src/bmm/testarch/knowledge/api-testing-patterns.md +843 -0
  158. package/src/bmm/testarch/knowledge/auth-session.md +552 -0
  159. package/src/bmm/testarch/knowledge/burn-in.md +273 -0
  160. package/src/bmm/testarch/knowledge/ci-burn-in.md +675 -0
  161. package/src/bmm/testarch/knowledge/component-tdd.md +486 -0
  162. package/src/bmm/testarch/knowledge/contract-testing.md +957 -0
  163. package/src/bmm/testarch/knowledge/data-factories.md +500 -0
  164. package/src/bmm/testarch/knowledge/email-auth.md +721 -0
  165. package/src/bmm/testarch/knowledge/error-handling.md +725 -0
  166. package/src/bmm/testarch/knowledge/feature-flags.md +750 -0
  167. package/src/bmm/testarch/knowledge/file-utils.md +463 -0
  168. package/src/bmm/testarch/knowledge/fixture-architecture.md +401 -0
  169. package/src/bmm/testarch/knowledge/fixtures-composition.md +382 -0
  170. package/src/bmm/testarch/knowledge/intercept-network-call.md +430 -0
  171. package/src/bmm/testarch/knowledge/log.md +429 -0
  172. package/src/bmm/testarch/knowledge/network-error-monitor.md +405 -0
  173. package/src/bmm/testarch/knowledge/network-first.md +486 -0
  174. package/src/bmm/testarch/knowledge/network-recorder.md +527 -0
  175. package/src/bmm/testarch/knowledge/nfr-criteria.md +670 -0
  176. package/src/bmm/testarch/knowledge/overview.md +286 -0
  177. package/src/bmm/testarch/knowledge/playwright-config.md +730 -0
  178. package/src/bmm/testarch/knowledge/probability-impact.md +601 -0
  179. package/src/bmm/testarch/knowledge/recurse.md +421 -0
  180. package/src/bmm/testarch/knowledge/risk-governance.md +615 -0
  181. package/src/bmm/testarch/knowledge/selective-testing.md +732 -0
  182. package/src/bmm/testarch/knowledge/selector-resilience.md +527 -0
  183. package/src/bmm/testarch/knowledge/test-healing-patterns.md +644 -0
  184. package/src/bmm/testarch/knowledge/test-levels-framework.md +473 -0
  185. package/src/bmm/testarch/knowledge/test-priorities-matrix.md +373 -0
  186. package/src/bmm/testarch/knowledge/test-quality.md +664 -0
  187. package/src/bmm/testarch/knowledge/timing-debugging.md +372 -0
  188. package/src/bmm/testarch/knowledge/visual-debugging.md +524 -0
  189. package/src/bmm/testarch/tea-index.csv +34 -0
  190. package/src/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +10 -0
  191. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +177 -0
  192. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +161 -0
  193. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +199 -0
  194. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +202 -0
  195. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +205 -0
  196. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +219 -0
  197. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +194 -0
  198. package/src/bmm/workflows/1-analysis/create-product-brief/workflow.md +58 -0
  199. package/src/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +137 -0
  200. package/src/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +229 -0
  201. package/src/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +238 -0
  202. package/src/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +206 -0
  203. package/src/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +234 -0
  204. package/src/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +443 -0
  205. package/src/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +182 -0
  206. package/src/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -0
  207. package/src/bmm/workflows/1-analysis/research/market-steps/step-02-customer-insights.md +200 -0
  208. package/src/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -0
  209. package/src/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -0
  210. package/src/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -0
  211. package/src/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +475 -0
  212. package/src/bmm/workflows/1-analysis/research/research.template.md +29 -0
  213. package/src/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +137 -0
  214. package/src/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +239 -0
  215. package/src/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +248 -0
  216. package/src/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +202 -0
  217. package/src/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +239 -0
  218. package/src/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +486 -0
  219. package/src/bmm/workflows/1-analysis/research/workflow.md +173 -0
  220. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +135 -0
  221. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +127 -0
  222. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +190 -0
  223. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +216 -0
  224. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +219 -0
  225. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +234 -0
  226. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +252 -0
  227. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +254 -0
  228. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +224 -0
  229. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +224 -0
  230. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +241 -0
  231. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +248 -0
  232. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +237 -0
  233. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +264 -0
  234. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +228 -0
  235. package/src/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +13 -0
  236. package/src/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +43 -0
  237. package/src/bmm/workflows/2-plan-workflows/prd/data/domain-complexity.csv +13 -0
  238. package/src/bmm/workflows/2-plan-workflows/prd/data/prd-purpose.md +197 -0
  239. package/src/bmm/workflows/2-plan-workflows/prd/data/project-types.csv +11 -0
  240. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-01-init.md +191 -0
  241. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-01b-continue.md +153 -0
  242. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-02-discovery.md +224 -0
  243. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-03-success.md +226 -0
  244. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-04-journeys.md +213 -0
  245. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-05-domain.md +207 -0
  246. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-06-innovation.md +226 -0
  247. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-07-project-type.md +237 -0
  248. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-08-scoping.md +228 -0
  249. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-09-functional.md +231 -0
  250. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-10-nonfunctional.md +242 -0
  251. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-11-polish.md +217 -0
  252. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-12-complete.md +180 -0
  253. package/src/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-01-discovery.md +247 -0
  254. package/src/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-01b-legacy-conversion.md +208 -0
  255. package/src/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-02-review.md +249 -0
  256. package/src/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-03-edit.md +253 -0
  257. package/src/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-04-complete.md +168 -0
  258. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-01-discovery.md +218 -0
  259. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-02-format-detection.md +191 -0
  260. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-02b-parity-check.md +209 -0
  261. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-03-density-validation.md +174 -0
  262. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-04-brief-coverage-validation.md +214 -0
  263. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-05-measurability-validation.md +228 -0
  264. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-06-traceability-validation.md +217 -0
  265. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-07-implementation-leakage-validation.md +205 -0
  266. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-08-domain-compliance-validation.md +243 -0
  267. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-09-project-type-validation.md +263 -0
  268. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-10-smart-validation.md +209 -0
  269. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-11-holistic-quality-validation.md +264 -0
  270. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-12-completeness-validation.md +242 -0
  271. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-13-report-complete.md +232 -0
  272. package/src/bmm/workflows/2-plan-workflows/prd/templates/prd-template.md +10 -0
  273. package/src/bmm/workflows/2-plan-workflows/prd/validation-report-prd-workflow.md +433 -0
  274. package/src/bmm/workflows/2-plan-workflows/prd/workflow.md +150 -0
  275. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +190 -0
  276. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +178 -0
  277. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +179 -0
  278. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +139 -0
  279. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +252 -0
  280. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +133 -0
  281. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +4 -0
  282. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +55 -0
  283. package/src/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +12 -0
  284. package/src/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +11 -0
  285. package/src/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +7 -0
  286. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +153 -0
  287. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +164 -0
  288. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +224 -0
  289. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +331 -0
  290. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +318 -0
  291. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +359 -0
  292. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +379 -0
  293. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +359 -0
  294. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +352 -0
  295. package/src/bmm/workflows/3-solutioning/create-architecture/workflow.md +50 -0
  296. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +259 -0
  297. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +233 -0
  298. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +272 -0
  299. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +145 -0
  300. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -0
  301. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +59 -0
  302. package/src/bmm/workflows/4-implementation/code-review/checklist.md +23 -0
  303. package/src/bmm/workflows/4-implementation/code-review/instructions.xml +227 -0
  304. package/src/bmm/workflows/4-implementation/code-review/workflow.yaml +51 -0
  305. package/src/bmm/workflows/4-implementation/correct-course/checklist.md +288 -0
  306. package/src/bmm/workflows/4-implementation/correct-course/instructions.md +206 -0
  307. package/src/bmm/workflows/4-implementation/correct-course/workflow.yaml +60 -0
  308. package/src/bmm/workflows/4-implementation/create-story/checklist.md +358 -0
  309. package/src/bmm/workflows/4-implementation/create-story/instructions.xml +345 -0
  310. package/src/bmm/workflows/4-implementation/create-story/template.md +49 -0
  311. package/src/bmm/workflows/4-implementation/create-story/workflow.yaml +61 -0
  312. package/src/bmm/workflows/4-implementation/dev-story/checklist.md +80 -0
  313. package/src/bmm/workflows/4-implementation/dev-story/instructions.xml +410 -0
  314. package/src/bmm/workflows/4-implementation/dev-story/workflow.yaml +27 -0
  315. package/src/bmm/workflows/4-implementation/retrospective/instructions.md +1443 -0
  316. package/src/bmm/workflows/4-implementation/retrospective/workflow.yaml +58 -0
  317. package/src/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -0
  318. package/src/bmm/workflows/4-implementation/sprint-planning/instructions.md +225 -0
  319. package/src/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
  320. package/src/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +54 -0
  321. package/src/bmm/workflows/4-implementation/sprint-status/instructions.md +229 -0
  322. package/src/bmm/workflows/4-implementation/sprint-status/workflow.yaml +36 -0
  323. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +156 -0
  324. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +120 -0
  325. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +113 -0
  326. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +113 -0
  327. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +106 -0
  328. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +140 -0
  329. package/src/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +52 -0
  330. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +189 -0
  331. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +144 -0
  332. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +128 -0
  333. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +191 -0
  334. package/src/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +74 -0
  335. package/src/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +79 -0
  336. package/src/bmm/workflows/document-project/checklist.md +245 -0
  337. package/src/bmm/workflows/document-project/documentation-requirements.csv +12 -0
  338. package/src/bmm/workflows/document-project/instructions.md +221 -0
  339. package/src/bmm/workflows/document-project/templates/deep-dive-template.md +345 -0
  340. package/src/bmm/workflows/document-project/templates/index-template.md +169 -0
  341. package/src/bmm/workflows/document-project/templates/project-overview-template.md +103 -0
  342. package/src/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
  343. package/src/bmm/workflows/document-project/templates/source-tree-template.md +135 -0
  344. package/src/bmm/workflows/document-project/workflow.yaml +30 -0
  345. package/src/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
  346. package/src/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
  347. package/src/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
  348. package/src/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
  349. package/src/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-library.json +90 -0
  350. package/src/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-templates.yaml +127 -0
  351. package/src/bmm/workflows/excalidraw-diagrams/create-dataflow/checklist.md +39 -0
  352. package/src/bmm/workflows/excalidraw-diagrams/create-dataflow/instructions.md +130 -0
  353. package/src/bmm/workflows/excalidraw-diagrams/create-dataflow/workflow.yaml +27 -0
  354. package/src/bmm/workflows/excalidraw-diagrams/create-diagram/checklist.md +43 -0
  355. package/src/bmm/workflows/excalidraw-diagrams/create-diagram/instructions.md +141 -0
  356. package/src/bmm/workflows/excalidraw-diagrams/create-diagram/workflow.yaml +27 -0
  357. package/src/bmm/workflows/excalidraw-diagrams/create-flowchart/checklist.md +49 -0
  358. package/src/bmm/workflows/excalidraw-diagrams/create-flowchart/instructions.md +241 -0
  359. package/src/bmm/workflows/excalidraw-diagrams/create-flowchart/workflow.yaml +27 -0
  360. package/src/bmm/workflows/excalidraw-diagrams/create-wireframe/checklist.md +38 -0
  361. package/src/bmm/workflows/excalidraw-diagrams/create-wireframe/instructions.md +133 -0
  362. package/src/bmm/workflows/excalidraw-diagrams/create-wireframe/workflow.yaml +27 -0
  363. package/src/bmm/workflows/generate-project-context/project-context-template.md +21 -0
  364. package/src/bmm/workflows/generate-project-context/steps/step-01-discover.md +184 -0
  365. package/src/bmm/workflows/generate-project-context/steps/step-02-generate.md +318 -0
  366. package/src/bmm/workflows/generate-project-context/steps/step-03-complete.md +278 -0
  367. package/src/bmm/workflows/generate-project-context/workflow.md +49 -0
  368. package/src/bmm/workflows/testarch/atdd/atdd-checklist-template.md +364 -0
  369. package/src/bmm/workflows/testarch/atdd/checklist.md +374 -0
  370. package/src/bmm/workflows/testarch/atdd/instructions.md +806 -0
  371. package/src/bmm/workflows/testarch/atdd/workflow.yaml +47 -0
  372. package/src/bmm/workflows/testarch/automate/checklist.md +582 -0
  373. package/src/bmm/workflows/testarch/automate/instructions.md +1324 -0
  374. package/src/bmm/workflows/testarch/automate/workflow.yaml +54 -0
  375. package/src/bmm/workflows/testarch/ci/checklist.md +248 -0
  376. package/src/bmm/workflows/testarch/ci/github-actions-template.yaml +198 -0
  377. package/src/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +149 -0
  378. package/src/bmm/workflows/testarch/ci/instructions.md +536 -0
  379. package/src/bmm/workflows/testarch/ci/workflow.yaml +47 -0
  380. package/src/bmm/workflows/testarch/framework/checklist.md +321 -0
  381. package/src/bmm/workflows/testarch/framework/instructions.md +481 -0
  382. package/src/bmm/workflows/testarch/framework/workflow.yaml +49 -0
  383. package/src/bmm/workflows/testarch/nfr-assess/checklist.md +407 -0
  384. package/src/bmm/workflows/testarch/nfr-assess/instructions.md +722 -0
  385. package/src/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +445 -0
  386. package/src/bmm/workflows/testarch/nfr-assess/workflow.yaml +49 -0
  387. package/src/bmm/workflows/testarch/test-design/checklist.md +235 -0
  388. package/src/bmm/workflows/testarch/test-design/instructions.md +788 -0
  389. package/src/bmm/workflows/testarch/test-design/test-design-template.md +294 -0
  390. package/src/bmm/workflows/testarch/test-design/workflow.yaml +56 -0
  391. package/src/bmm/workflows/testarch/test-review/checklist.md +472 -0
  392. package/src/bmm/workflows/testarch/test-review/instructions.md +628 -0
  393. package/src/bmm/workflows/testarch/test-review/test-review-template.md +390 -0
  394. package/src/bmm/workflows/testarch/test-review/workflow.yaml +48 -0
  395. package/src/bmm/workflows/testarch/trace/checklist.md +655 -0
  396. package/src/bmm/workflows/testarch/trace/instructions.md +1047 -0
  397. package/src/bmm/workflows/testarch/trace/trace-template.md +675 -0
  398. package/src/bmm/workflows/testarch/trace/workflow.yaml +57 -0
  399. package/src/bmm/workflows/workflow-status/init/instructions.md +346 -0
  400. package/src/bmm/workflows/workflow-status/init/workflow.yaml +30 -0
  401. package/src/bmm/workflows/workflow-status/instructions.md +397 -0
  402. package/src/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +103 -0
  403. package/src/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +100 -0
  404. package/src/bmm/workflows/workflow-status/paths/method-brownfield.yaml +103 -0
  405. package/src/bmm/workflows/workflow-status/paths/method-greenfield.yaml +100 -0
  406. package/src/bmm/workflows/workflow-status/project-levels.yaml +59 -0
  407. package/src/bmm/workflows/workflow-status/workflow-status-template.yaml +24 -0
  408. package/src/bmm/workflows/workflow-status/workflow.yaml +32 -0
  409. package/src/core/_module-installer/installer.js +60 -0
  410. package/src/core/agents/bmad-master.agent.yaml +30 -0
  411. package/src/core/lib/scope/artifact-resolver.js +298 -0
  412. package/src/core/lib/scope/event-logger.js +411 -0
  413. package/src/core/lib/scope/index.js +30 -0
  414. package/src/core/lib/scope/scope-context.js +307 -0
  415. package/src/core/lib/scope/scope-initializer.js +458 -0
  416. package/src/core/lib/scope/scope-manager.js +512 -0
  417. package/src/core/lib/scope/scope-migrator.js +442 -0
  418. package/src/core/lib/scope/scope-sync.js +489 -0
  419. package/src/core/lib/scope/scope-validator.js +299 -0
  420. package/src/core/lib/scope/state-lock.js +342 -0
  421. package/src/core/module.yaml +53 -0
  422. package/src/core/resources/excalidraw/README.md +160 -0
  423. package/src/core/resources/excalidraw/excalidraw-helpers.md +127 -0
  424. package/src/core/resources/excalidraw/library-loader.md +50 -0
  425. package/src/core/resources/excalidraw/validate-json-instructions.md +79 -0
  426. package/src/core/tasks/editorial-review-prose.xml +91 -0
  427. package/src/core/tasks/editorial-review-structure.xml +198 -0
  428. package/src/core/tasks/index-docs.xml +65 -0
  429. package/src/core/tasks/review-adversarial-general.xml +46 -0
  430. package/src/core/tasks/shard-doc.xml +109 -0
  431. package/src/core/tasks/workflow.xml +277 -0
  432. package/src/core/workflows/advanced-elicitation/methods.csv +51 -0
  433. package/src/core/workflows/advanced-elicitation/workflow.xml +117 -0
  434. package/src/core/workflows/brainstorming/brain-methods.csv +62 -0
  435. package/src/core/workflows/brainstorming/steps/step-01-session-setup.md +197 -0
  436. package/src/core/workflows/brainstorming/steps/step-01b-continue.md +122 -0
  437. package/src/core/workflows/brainstorming/steps/step-02a-user-selected.md +225 -0
  438. package/src/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +237 -0
  439. package/src/core/workflows/brainstorming/steps/step-02c-random-selection.md +209 -0
  440. package/src/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +264 -0
  441. package/src/core/workflows/brainstorming/steps/step-03-technique-execution.md +399 -0
  442. package/src/core/workflows/brainstorming/steps/step-04-idea-organization.md +303 -0
  443. package/src/core/workflows/brainstorming/template.md +15 -0
  444. package/src/core/workflows/brainstorming/workflow.md +58 -0
  445. package/src/core/workflows/party-mode/steps/step-01-agent-loading.md +138 -0
  446. package/src/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +187 -0
  447. package/src/core/workflows/party-mode/steps/step-03-graceful-exit.md +157 -0
  448. package/src/core/workflows/party-mode/workflow.md +194 -0
  449. package/src/utility/agent-components/activation-rules.txt +6 -0
  450. package/src/utility/agent-components/activation-steps.txt +28 -0
  451. package/src/utility/agent-components/agent-command-header.md +1 -0
  452. package/src/utility/agent-components/agent.customize.template.yaml +41 -0
  453. package/src/utility/agent-components/handler-action.txt +4 -0
  454. package/src/utility/agent-components/handler-data.txt +5 -0
  455. package/src/utility/agent-components/handler-exec.txt +19 -0
  456. package/src/utility/agent-components/handler-multi.txt +14 -0
  457. package/src/utility/agent-components/handler-tmpl.txt +5 -0
  458. package/src/utility/agent-components/handler-validate-workflow.txt +7 -0
  459. package/src/utility/agent-components/handler-workflow.txt +10 -0
  460. package/src/utility/agent-components/menu-handlers.txt +6 -0
  461. package/test/README.md +295 -0
  462. package/test/fixtures/agent-schema/invalid/critical-actions/actions-as-string.agent.yaml +27 -0
  463. package/test/fixtures/agent-schema/invalid/critical-actions/empty-string-in-actions.agent.yaml +30 -0
  464. package/test/fixtures/agent-schema/invalid/menu/empty-menu.agent.yaml +22 -0
  465. package/test/fixtures/agent-schema/invalid/menu/missing-menu.agent.yaml +20 -0
  466. package/test/fixtures/agent-schema/invalid/menu-commands/empty-command-target.agent.yaml +25 -0
  467. package/test/fixtures/agent-schema/invalid/menu-commands/no-command-target.agent.yaml +24 -0
  468. package/test/fixtures/agent-schema/invalid/menu-triggers/camel-case.agent.yaml +25 -0
  469. package/test/fixtures/agent-schema/invalid/menu-triggers/compound-invalid-format.agent.yaml +25 -0
  470. package/test/fixtures/agent-schema/invalid/menu-triggers/compound-mismatched-kebab.agent.yaml +25 -0
  471. package/test/fixtures/agent-schema/invalid/menu-triggers/duplicate-triggers.agent.yaml +31 -0
  472. package/test/fixtures/agent-schema/invalid/menu-triggers/empty-trigger.agent.yaml +25 -0
  473. package/test/fixtures/agent-schema/invalid/menu-triggers/leading-asterisk.agent.yaml +25 -0
  474. package/test/fixtures/agent-schema/invalid/menu-triggers/snake-case.agent.yaml +25 -0
  475. package/test/fixtures/agent-schema/invalid/menu-triggers/trigger-with-spaces.agent.yaml +25 -0
  476. package/test/fixtures/agent-schema/invalid/metadata/empty-module-string.agent.yaml +26 -0
  477. package/test/fixtures/agent-schema/invalid/metadata/empty-name.agent.yaml +24 -0
  478. package/test/fixtures/agent-schema/invalid/metadata/extra-metadata-fields.agent.yaml +27 -0
  479. package/test/fixtures/agent-schema/invalid/metadata/missing-id.agent.yaml +23 -0
  480. package/test/fixtures/agent-schema/invalid/persona/empty-principles-array.agent.yaml +24 -0
  481. package/test/fixtures/agent-schema/invalid/persona/empty-string-in-principles.agent.yaml +27 -0
  482. package/test/fixtures/agent-schema/invalid/persona/extra-persona-fields.agent.yaml +27 -0
  483. package/test/fixtures/agent-schema/invalid/persona/missing-role.agent.yaml +24 -0
  484. package/test/fixtures/agent-schema/invalid/prompts/empty-content.agent.yaml +29 -0
  485. package/test/fixtures/agent-schema/invalid/prompts/extra-prompt-fields.agent.yaml +31 -0
  486. package/test/fixtures/agent-schema/invalid/prompts/missing-content.agent.yaml +28 -0
  487. package/test/fixtures/agent-schema/invalid/prompts/missing-id.agent.yaml +28 -0
  488. package/test/fixtures/agent-schema/invalid/top-level/empty-file.agent.yaml +5 -0
  489. package/test/fixtures/agent-schema/invalid/top-level/extra-top-level-keys.agent.yaml +28 -0
  490. package/test/fixtures/agent-schema/invalid/top-level/missing-agent-key.agent.yaml +11 -0
  491. package/test/fixtures/agent-schema/invalid/yaml-errors/invalid-indentation.agent.yaml +19 -0
  492. package/test/fixtures/agent-schema/invalid/yaml-errors/malformed-yaml.agent.yaml +18 -0
  493. package/test/fixtures/agent-schema/valid/critical-actions/empty-critical-actions.agent.yaml +24 -0
  494. package/test/fixtures/agent-schema/valid/critical-actions/no-critical-actions.agent.yaml +22 -0
  495. package/test/fixtures/agent-schema/valid/critical-actions/valid-critical-actions.agent.yaml +27 -0
  496. package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +31 -0
  497. package/test/fixtures/agent-schema/valid/menu/single-menu-item.agent.yaml +22 -0
  498. package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +38 -0
  499. package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +24 -0
  500. package/test/fixtures/agent-schema/valid/menu-triggers/compound-triggers.agent.yaml +31 -0
  501. package/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +34 -0
  502. package/test/fixtures/agent-schema/valid/metadata/core-agent-with-module.agent.yaml +24 -0
  503. package/test/fixtures/agent-schema/valid/metadata/empty-module-name-in-path.agent.yaml +24 -0
  504. package/test/fixtures/agent-schema/valid/metadata/malformed-path-treated-as-core.agent.yaml +24 -0
  505. package/test/fixtures/agent-schema/valid/metadata/module-agent-correct.agent.yaml +24 -0
  506. package/test/fixtures/agent-schema/valid/metadata/module-agent-missing-module.agent.yaml +23 -0
  507. package/test/fixtures/agent-schema/valid/metadata/wrong-module-value.agent.yaml +24 -0
  508. package/test/fixtures/agent-schema/valid/persona/complete-persona.agent.yaml +24 -0
  509. package/test/fixtures/agent-schema/valid/prompts/empty-prompts.agent.yaml +24 -0
  510. package/test/fixtures/agent-schema/valid/prompts/no-prompts.agent.yaml +22 -0
  511. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-minimal.agent.yaml +28 -0
  512. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-with-description.agent.yaml +30 -0
  513. package/test/fixtures/agent-schema/valid/top-level/minimal-core-agent.agent.yaml +24 -0
  514. package/test/test-agent-schema.js +387 -0
  515. package/test/test-cli-integration.sh +159 -0
  516. package/test/test-installation-components.js +214 -0
  517. package/test/test-scope-e2e.js +450 -0
  518. package/test/test-scope-system.js +787 -0
  519. package/test/unit-test-schema.js +133 -0
  520. package/tools/bmad-npx-wrapper.js +38 -0
  521. package/tools/build-docs.js +577 -0
  522. package/tools/cli/README.md +7 -0
  523. package/tools/cli/bmad-cli.js +58 -0
  524. package/tools/cli/commands/install.js +87 -0
  525. package/tools/cli/commands/scope.js +474 -0
  526. package/tools/cli/external-official-modules.yaml +41 -0
  527. package/tools/cli/installers/install-messages.yaml +58 -0
  528. package/tools/cli/installers/lib/core/config-collector.js +1079 -0
  529. package/tools/cli/installers/lib/core/custom-module-cache.js +259 -0
  530. package/tools/cli/installers/lib/core/dependency-resolver.js +739 -0
  531. package/tools/cli/installers/lib/core/detector.js +223 -0
  532. package/tools/cli/installers/lib/core/ide-config-manager.js +156 -0
  533. package/tools/cli/installers/lib/core/installer.js +2585 -0
  534. package/tools/cli/installers/lib/core/manifest-generator.js +963 -0
  535. package/tools/cli/installers/lib/core/manifest.js +590 -0
  536. package/tools/cli/installers/lib/custom/handler.js +363 -0
  537. package/tools/cli/installers/lib/ide/_base-ide.js +654 -0
  538. package/tools/cli/installers/lib/ide/antigravity.js +486 -0
  539. package/tools/cli/installers/lib/ide/auggie.js +244 -0
  540. package/tools/cli/installers/lib/ide/claude-code.js +487 -0
  541. package/tools/cli/installers/lib/ide/cline.js +269 -0
  542. package/tools/cli/installers/lib/ide/codex.js +375 -0
  543. package/tools/cli/installers/lib/ide/crush.js +300 -0
  544. package/tools/cli/installers/lib/ide/cursor.js +169 -0
  545. package/tools/cli/installers/lib/ide/gemini.js +301 -0
  546. package/tools/cli/installers/lib/ide/github-copilot.js +383 -0
  547. package/tools/cli/installers/lib/ide/iflow.js +191 -0
  548. package/tools/cli/installers/lib/ide/kilo.js +250 -0
  549. package/tools/cli/installers/lib/ide/kiro-cli.js +326 -0
  550. package/tools/cli/installers/lib/ide/manager.js +244 -0
  551. package/tools/cli/installers/lib/ide/opencode.js +257 -0
  552. package/tools/cli/installers/lib/ide/qwen.js +372 -0
  553. package/tools/cli/installers/lib/ide/roo.js +270 -0
  554. package/tools/cli/installers/lib/ide/rovo-dev.js +290 -0
  555. package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +96 -0
  556. package/tools/cli/installers/lib/ide/shared/bmad-artifacts.js +158 -0
  557. package/tools/cli/installers/lib/ide/shared/module-injections.js +136 -0
  558. package/tools/cli/installers/lib/ide/shared/task-tool-command-generator.js +119 -0
  559. package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +242 -0
  560. package/tools/cli/installers/lib/ide/templates/agent-command-template.md +29 -0
  561. package/tools/cli/installers/lib/ide/templates/gemini-agent-command.toml +14 -0
  562. package/tools/cli/installers/lib/ide/templates/gemini-task-command.toml +12 -0
  563. package/tools/cli/installers/lib/ide/templates/workflow-command-template.md +30 -0
  564. package/tools/cli/installers/lib/ide/templates/workflow-commander.md +45 -0
  565. package/tools/cli/installers/lib/ide/trae.js +313 -0
  566. package/tools/cli/installers/lib/ide/windsurf.js +258 -0
  567. package/tools/cli/installers/lib/message-loader.js +85 -0
  568. package/tools/cli/installers/lib/modules/external-manager.js +133 -0
  569. package/tools/cli/installers/lib/modules/manager.js +1362 -0
  570. package/tools/cli/lib/activation-builder.js +163 -0
  571. package/tools/cli/lib/agent/compiler.js +522 -0
  572. package/tools/cli/lib/agent/installer.js +716 -0
  573. package/tools/cli/lib/agent/template-engine.js +152 -0
  574. package/tools/cli/lib/agent-analyzer.js +109 -0
  575. package/tools/cli/lib/agent-party-generator.js +194 -0
  576. package/tools/cli/lib/cli-utils.js +227 -0
  577. package/tools/cli/lib/config.js +213 -0
  578. package/tools/cli/lib/file-ops.js +204 -0
  579. package/tools/cli/lib/platform-codes.js +116 -0
  580. package/tools/cli/lib/project-root.js +77 -0
  581. package/tools/cli/lib/prompts.js +433 -0
  582. package/tools/cli/lib/ui.js +1591 -0
  583. package/tools/cli/lib/xml-handler.js +177 -0
  584. package/tools/cli/lib/xml-to-markdown.js +82 -0
  585. package/tools/cli/lib/yaml-format.js +245 -0
  586. package/tools/cli/lib/yaml-xml-builder.js +587 -0
  587. package/tools/cli/scripts/migrate-workflows.js +281 -0
  588. package/tools/docs/BUNDLE_DISTRIBUTION_SETUP.md +95 -0
  589. package/tools/docs/index.md +2 -0
  590. package/tools/fix-doc-links.js +288 -0
  591. package/tools/flattener/aggregate.js +76 -0
  592. package/tools/flattener/binary.js +80 -0
  593. package/tools/flattener/discovery.js +71 -0
  594. package/tools/flattener/files.js +35 -0
  595. package/tools/flattener/ignoreRules.js +172 -0
  596. package/tools/flattener/main.js +483 -0
  597. package/tools/flattener/projectRoot.js +201 -0
  598. package/tools/flattener/prompts.js +44 -0
  599. package/tools/flattener/stats.helpers.js +368 -0
  600. package/tools/flattener/stats.js +75 -0
  601. package/tools/flattener/test-matrix.js +409 -0
  602. package/tools/flattener/xml.js +82 -0
  603. package/tools/format-workflow-md.js +263 -0
  604. package/tools/lib/xml-utils.js +13 -0
  605. package/tools/maintainer/review-pr-README.md +55 -0
  606. package/tools/maintainer/review-pr.md +242 -0
  607. package/tools/migrate-custom-module-paths.js +124 -0
  608. package/tools/platform-codes.yaml +157 -0
  609. package/tools/schema/agent.js +493 -0
  610. package/tools/validate-agent-schema.js +110 -0
  611. package/tools/validate-doc-links.js +363 -0
  612. package/tools/validate-svg-changes.sh +356 -0
  613. package/website/README.md +76 -0
  614. package/website/astro.config.mjs +228 -0
  615. package/website/public/favicon.ico +0 -0
  616. package/website/public/img/bmad-dark.png +0 -0
  617. package/website/public/img/bmad-light.png +0 -0
  618. package/website/public/img/logo.svg +4 -0
  619. package/website/public/robots.txt +37 -0
  620. package/website/src/components/Banner.astro +59 -0
  621. package/website/src/components/Header.astro +121 -0
  622. package/website/src/components/MobileMenuFooter.astro +53 -0
  623. package/website/src/content/config.ts +6 -0
  624. package/website/src/lib/site-url.js +25 -0
  625. package/website/src/rehype-markdown-links.js +102 -0
  626. package/website/src/styles/custom.css +485 -0
@@ -0,0 +1,653 @@
1
+ ---
2
+ title: "How to Run Automate with TEA"
3
+ description: Expand test automation coverage after implementation using TEA's automate workflow
4
+ ---
5
+
6
+ # How to Run Automate with TEA
7
+
8
+ Use TEA's `*automate` workflow to generate comprehensive tests for existing features. Unlike `*atdd`, these tests pass immediately because the feature already exists.
9
+
10
+ ## When to Use This
11
+
12
+ - Feature already exists and works
13
+ - Want to add test coverage to existing code
14
+ - Need tests that pass immediately
15
+ - Expanding existing test suite
16
+ - Adding tests to legacy code
17
+
18
+ **Don't use this if:**
19
+ - Feature doesn't exist yet (use `*atdd` instead)
20
+ - Want failing tests to guide development (use `*atdd` for TDD)
21
+
22
+ ## Prerequisites
23
+
24
+ - BMad Method installed
25
+ - TEA agent available
26
+ - Test framework setup complete (run `*framework` if needed)
27
+ - Feature implemented and working
28
+
29
+ **Note:** This guide uses Playwright examples. If using Cypress, commands and syntax will differ.
30
+
31
+ ## Steps
32
+
33
+ ### 1. Load TEA Agent
34
+
35
+ Start a fresh chat and load TEA:
36
+
37
+ ```
38
+ *tea
39
+ ```
40
+
41
+ ### 2. Run the Automate Workflow
42
+
43
+ ```
44
+ *automate
45
+ ```
46
+
47
+ ### 3. Provide Context
48
+
49
+ TEA will ask for context about what you're testing.
50
+
51
+ #### Option A: BMad-Integrated Mode (Recommended)
52
+
53
+ If you have BMad artifacts (stories, test designs, PRDs):
54
+
55
+ **What are you testing?**
56
+ ```
57
+ I'm testing the user profile feature we just implemented.
58
+ Story: story-profile-management.md
59
+ Test Design: test-design-epic-1.md
60
+ ```
61
+
62
+ **Reference documents:**
63
+ - Story file with acceptance criteria
64
+ - Test design document (if available)
65
+ - PRD sections relevant to this feature
66
+ - Tech spec (if available)
67
+
68
+ **Existing tests:**
69
+ ```
70
+ We have basic tests in tests/e2e/profile-view.spec.ts
71
+ Avoid duplicating that coverage
72
+ ```
73
+
74
+ TEA will analyze your artifacts and generate comprehensive tests that:
75
+ - Cover acceptance criteria from the story
76
+ - Follow priorities from test design (P0 → P1 → P2)
77
+ - Avoid duplicating existing tests
78
+ - Include edge cases and error scenarios
79
+
80
+ #### Option B: Standalone Mode
81
+
82
+ If you're using TEA Solo or don't have BMad artifacts:
83
+
84
+ **What are you testing?**
85
+ ```
86
+ TodoMVC React application at https://todomvc.com/examples/react/dist/
87
+ Features: Create todos, mark as complete, filter by status, delete todos
88
+ ```
89
+
90
+ **Specific scenarios to cover:**
91
+ ```
92
+ - Creating todos (happy path)
93
+ - Marking todos as complete/incomplete
94
+ - Filtering (All, Active, Completed)
95
+ - Deleting todos
96
+ - Edge cases (empty input, long text)
97
+ ```
98
+
99
+ TEA will analyze the application and generate tests based on your description.
100
+
101
+ ### 4. Specify Test Levels
102
+
103
+ TEA will ask which test levels to generate:
104
+
105
+ **Options:**
106
+ - **E2E tests** - Full browser-based user workflows
107
+ - **API tests** - Backend endpoint testing (faster, more reliable)
108
+ - **Component tests** - UI component testing in isolation (framework-dependent)
109
+ - **Mix** - Combination of levels (recommended)
110
+
111
+ **Example response:**
112
+ ```
113
+ Generate:
114
+ - API tests for all CRUD operations
115
+ - E2E tests for critical user workflows (P0)
116
+ - Focus on P0 and P1 scenarios
117
+ - Skip P3 (low priority edge cases)
118
+ ```
119
+
120
+ ### 5. Review Generated Tests
121
+
122
+ TEA generates a comprehensive test suite with multiple test levels.
123
+
124
+ #### API Tests (`tests/api/profile.spec.ts`):
125
+
126
+ **Vanilla Playwright:**
127
+ ```typescript
128
+ import { test, expect } from '@playwright/test';
129
+
130
+ test.describe('Profile API', () => {
131
+ let authToken: string;
132
+
133
+ test.beforeAll(async ({ request }) => {
134
+ // Manual auth token fetch
135
+ const response = await request.post('/api/auth/login', {
136
+ data: { email: 'test@example.com', password: 'password123' }
137
+ });
138
+ const { token } = await response.json();
139
+ authToken = token;
140
+ });
141
+
142
+ test('should fetch user profile', async ({ request }) => {
143
+ const response = await request.get('/api/profile', {
144
+ headers: { Authorization: `Bearer ${authToken}` }
145
+ });
146
+
147
+ expect(response.ok()).toBeTruthy();
148
+ const profile = await response.json();
149
+ expect(profile).toMatchObject({
150
+ id: expect.any(String),
151
+ name: expect.any(String),
152
+ email: expect.any(String)
153
+ });
154
+ });
155
+
156
+ test('should update profile successfully', async ({ request }) => {
157
+ const response = await request.patch('/api/profile', {
158
+ headers: { Authorization: `Bearer ${authToken}` },
159
+ data: {
160
+ name: 'Updated Name',
161
+ bio: 'Test bio'
162
+ }
163
+ });
164
+
165
+ expect(response.ok()).toBeTruthy();
166
+ const updated = await response.json();
167
+ expect(updated.name).toBe('Updated Name');
168
+ expect(updated.bio).toBe('Test bio');
169
+ });
170
+
171
+ test('should validate email format', async ({ request }) => {
172
+ const response = await request.patch('/api/profile', {
173
+ headers: { Authorization: `Bearer ${authToken}` },
174
+ data: { email: 'invalid-email' }
175
+ });
176
+
177
+ expect(response.status()).toBe(400);
178
+ const error = await response.json();
179
+ expect(error.message).toContain('Invalid email');
180
+ });
181
+
182
+ test('should require authentication', async ({ request }) => {
183
+ const response = await request.get('/api/profile');
184
+ expect(response.status()).toBe(401);
185
+ });
186
+ });
187
+ ```
188
+
189
+ **With Playwright Utils:**
190
+ ```typescript
191
+ import { test as base, expect } from '@playwright/test';
192
+ import { test as apiRequestFixture } from '@seontechnologies/playwright-utils/api-request/fixtures';
193
+ import { createAuthFixtures } from '@seontechnologies/playwright-utils/auth-session';
194
+ import { mergeTests } from '@playwright/test';
195
+ import { z } from 'zod';
196
+
197
+ const ProfileSchema = z.object({
198
+ id: z.string(),
199
+ name: z.string(),
200
+ email: z.string().email()
201
+ });
202
+
203
+ // Merge API and auth fixtures
204
+ const authFixtureTest = base.extend(createAuthFixtures());
205
+ export const testWithAuth = mergeTests(apiRequestFixture, authFixtureTest);
206
+
207
+ testWithAuth.describe('Profile API', () => {
208
+ testWithAuth('should fetch user profile', async ({ apiRequest, authToken }) => {
209
+ const { status, body } = await apiRequest({
210
+ method: 'GET',
211
+ path: '/api/profile',
212
+ headers: { Authorization: `Bearer ${authToken}` }
213
+ }).validateSchema(ProfileSchema); // Chained validation
214
+
215
+ expect(status).toBe(200);
216
+ // Schema already validated, type-safe access
217
+ expect(body.name).toBeDefined();
218
+ });
219
+
220
+ testWithAuth('should update profile successfully', async ({ apiRequest, authToken }) => {
221
+ const { status, body } = await apiRequest({
222
+ method: 'PATCH',
223
+ path: '/api/profile',
224
+ body: { name: 'Updated Name', bio: 'Test bio' },
225
+ headers: { Authorization: `Bearer ${authToken}` }
226
+ }).validateSchema(ProfileSchema); // Chained validation
227
+
228
+ expect(status).toBe(200);
229
+ expect(body.name).toBe('Updated Name');
230
+ });
231
+
232
+ testWithAuth('should validate email format', async ({ apiRequest, authToken }) => {
233
+ const { status, body } = await apiRequest({
234
+ method: 'PATCH',
235
+ path: '/api/profile',
236
+ body: { email: 'invalid-email' },
237
+ headers: { Authorization: `Bearer ${authToken}` }
238
+ });
239
+
240
+ expect(status).toBe(400);
241
+ expect(body.message).toContain('Invalid email');
242
+ });
243
+ });
244
+ ```
245
+
246
+ **Key Differences:**
247
+ - `authToken` fixture (persisted, reused across tests)
248
+ - `apiRequest` returns `{ status, body }` (cleaner)
249
+ - Schema validation with Zod (type-safe)
250
+ - Automatic retry for 5xx errors
251
+ - Less boilerplate (no manual `await response.json()` everywhere)
252
+
253
+ #### E2E Tests (`tests/e2e/profile.spec.ts`):
254
+
255
+ ```typescript
256
+ import { test, expect } from '@playwright/test';
257
+
258
+ test('should edit profile', async ({ page }) => {
259
+ // Login
260
+ await page.goto('/login');
261
+ await page.getByLabel('Email').fill('test@example.com');
262
+ await page.getByLabel('Password').fill('password123');
263
+ await page.getByRole('button', { name: 'Sign in' }).click();
264
+
265
+ // Edit profile
266
+ await page.goto('/profile');
267
+ await page.getByRole('button', { name: 'Edit Profile' }).click();
268
+ await page.getByLabel('Name').fill('New Name');
269
+ await page.getByRole('button', { name: 'Save' }).click();
270
+
271
+ // Verify success
272
+ await expect(page.getByText('Profile updated')).toBeVisible();
273
+ });
274
+ ```
275
+
276
+ TEA generates additional tests for validation, edge cases, etc. based on priorities.
277
+
278
+ #### Fixtures (`tests/support/fixtures/profile.ts`):
279
+
280
+ **Vanilla Playwright:**
281
+ ```typescript
282
+ import { test as base, Page } from '@playwright/test';
283
+
284
+ type ProfileFixtures = {
285
+ authenticatedPage: Page;
286
+ testProfile: {
287
+ name: string;
288
+ email: string;
289
+ bio: string;
290
+ };
291
+ };
292
+
293
+ export const test = base.extend<ProfileFixtures>({
294
+ authenticatedPage: async ({ page }, use) => {
295
+ // Manual login flow
296
+ await page.goto('/login');
297
+ await page.getByLabel('Email').fill('test@example.com');
298
+ await page.getByLabel('Password').fill('password123');
299
+ await page.getByRole('button', { name: 'Sign in' }).click();
300
+ await page.waitForURL(/\/dashboard/);
301
+
302
+ await use(page);
303
+ },
304
+
305
+ testProfile: async ({ request }, use) => {
306
+ // Static test data
307
+ const profile = {
308
+ name: 'Test User',
309
+ email: 'test@example.com',
310
+ bio: 'Test bio'
311
+ };
312
+
313
+ await use(profile);
314
+ }
315
+ });
316
+ ```
317
+
318
+ **With Playwright Utils:**
319
+ ```typescript
320
+ import { test as base } from '@playwright/test';
321
+ import { createAuthFixtures } from '@seontechnologies/playwright-utils/auth-session';
322
+ import { mergeTests } from '@playwright/test';
323
+ import { faker } from '@faker-js/faker';
324
+
325
+ type ProfileFixtures = {
326
+ testProfile: {
327
+ name: string;
328
+ email: string;
329
+ bio: string;
330
+ };
331
+ };
332
+
333
+ // Merge auth fixtures with custom fixtures
334
+ const authTest = base.extend(createAuthFixtures());
335
+ const profileTest = base.extend<ProfileFixtures>({
336
+ testProfile: async ({}, use) => {
337
+ // Dynamic test data with faker
338
+ const profile = {
339
+ name: faker.person.fullName(),
340
+ email: faker.internet.email(),
341
+ bio: faker.person.bio()
342
+ };
343
+
344
+ await use(profile);
345
+ }
346
+ });
347
+
348
+ export const test = mergeTests(authTest, profileTest);
349
+ export { expect } from '@playwright/test';
350
+ ```
351
+
352
+ **Usage:**
353
+ ```typescript
354
+ import { test, expect } from '../support/fixtures/profile';
355
+
356
+ test('should update profile', async ({ page, authToken, testProfile }) => {
357
+ // authToken from auth-session (automatic, persisted)
358
+ // testProfile from custom fixture (dynamic data)
359
+
360
+ await page.goto('/profile');
361
+ // Test with dynamic, unique data
362
+ });
363
+ ```
364
+
365
+ **Key Benefits:**
366
+ - `authToken` fixture (persisted token, no manual login)
367
+ - Dynamic test data with faker (no conflicts)
368
+ - Fixture composition with mergeTests
369
+ - Reusable across test files
370
+
371
+ ### 6. Review Additional Artifacts
372
+
373
+ TEA also generates:
374
+
375
+ #### Updated README (`tests/README.md`):
376
+
377
+ ```markdown
378
+ # Test Suite
379
+
380
+ ## Running Tests
381
+
382
+ ### All Tests
383
+ npm test
384
+
385
+ ### Specific Levels
386
+ npm run test:api # API tests only
387
+ npm run test:e2e # E2E tests only
388
+ npm run test:smoke # Smoke tests (@smoke tag)
389
+
390
+ ### Single File
391
+ npx playwright test tests/api/profile.spec.ts
392
+
393
+ ## Test Structure
394
+
395
+ tests/
396
+ ├── api/ # API tests (fast, reliable)
397
+ ├── e2e/ # E2E tests (full workflows)
398
+ ├── fixtures/ # Shared test utilities
399
+ └── README.md
400
+
401
+ ## Writing Tests
402
+
403
+ Follow the patterns in existing tests:
404
+ - Use fixtures for authentication
405
+ - Network-first patterns (no hard waits)
406
+ - Explicit assertions
407
+ - Self-cleaning tests
408
+ ```
409
+
410
+ #### Definition of Done Summary:
411
+
412
+ ```markdown
413
+ ## Test Quality Checklist
414
+
415
+ ✅ All tests pass on first run
416
+ ✅ No hard waits (waitForTimeout)
417
+ ✅ No conditionals for flow control
418
+ ✅ Assertions are explicit
419
+ ✅ Tests clean up after themselves
420
+ ✅ Tests can run in parallel
421
+ ✅ Execution time < 1.5 minutes per test
422
+ ✅ Test files < 300 lines
423
+ ```
424
+
425
+ ### 7. Run the Tests
426
+
427
+ All tests should pass immediately since the feature exists:
428
+
429
+ **For Playwright:**
430
+ ```bash
431
+ npx playwright test
432
+ ```
433
+
434
+ **For Cypress:**
435
+ ```bash
436
+ npx cypress run
437
+ ```
438
+
439
+ Expected output:
440
+ ```
441
+ Running 15 tests using 4 workers
442
+
443
+ ✓ tests/api/profile.spec.ts (4 tests) - 2.1s
444
+ ✓ tests/e2e/profile-workflow.spec.ts (2 tests) - 5.3s
445
+
446
+ 15 passed (7.4s)
447
+ ```
448
+
449
+ **All green!** Tests pass because feature already exists.
450
+
451
+ ### 8. Review Test Coverage
452
+
453
+ Check which scenarios are covered:
454
+
455
+ ```bash
456
+ # View test report
457
+ npx playwright show-report
458
+
459
+ # Check coverage (if configured)
460
+ npm run test:coverage
461
+ ```
462
+
463
+ Compare against:
464
+ - Acceptance criteria from story
465
+ - Test priorities from test design
466
+ - Edge cases and error scenarios
467
+
468
+ ## What You Get
469
+
470
+ ### Comprehensive Test Suite
471
+ - **API tests** - Fast, reliable backend testing
472
+ - **E2E tests** - Critical user workflows
473
+ - **Component tests** - UI component testing (if requested)
474
+ - **Fixtures** - Shared utilities and setup
475
+
476
+ ### Component Testing by Framework
477
+
478
+ TEA supports component testing using framework-appropriate tools:
479
+
480
+ | Your Framework | Component Testing Tool | Tests Location |
481
+ | -------------- | ------------------------------ | ----------------------------------------- |
482
+ | **Cypress** | Cypress Component Testing | `tests/component/` |
483
+ | **Playwright** | Vitest + React Testing Library | `tests/component/` or `src/**/*.test.tsx` |
484
+
485
+ **Note:** Component tests use separate tooling from E2E tests:
486
+ - Cypress users: TEA generates Cypress Component Tests
487
+ - Playwright users: TEA generates Vitest + React Testing Library tests
488
+
489
+ ### Quality Features
490
+ - **Network-first patterns** - Wait for actual responses, not timeouts
491
+ - **Deterministic tests** - No flakiness, no conditionals
492
+ - **Self-cleaning** - Tests don't leave test data behind
493
+ - **Parallel-safe** - Can run all tests concurrently
494
+
495
+ ### Documentation
496
+ - **Updated README** - How to run tests
497
+ - **Test structure explanation** - Where tests live
498
+ - **Definition of Done** - Quality standards
499
+
500
+ ## Tips
501
+
502
+ ### Start with Test Design
503
+
504
+ Run `*test-design` before `*automate` for better results:
505
+
506
+ ```
507
+ *test-design # Risk assessment, priorities
508
+ *automate # Generate tests based on priorities
509
+ ```
510
+
511
+ TEA will focus on P0/P1 scenarios and skip low-value tests.
512
+
513
+ ### Prioritize Test Levels
514
+
515
+ Not everything needs E2E tests:
516
+
517
+ **Good strategy:**
518
+ ```
519
+ - P0 scenarios: API + E2E tests
520
+ - P1 scenarios: API tests only
521
+ - P2 scenarios: API tests (happy path)
522
+ - P3 scenarios: Skip or add later
523
+ ```
524
+
525
+ **Why?**
526
+ - API tests are 10x faster than E2E
527
+ - API tests are more reliable (no browser flakiness)
528
+ - E2E tests reserved for critical user journeys
529
+
530
+ ### Avoid Duplicate Coverage
531
+
532
+ Tell TEA about existing tests:
533
+
534
+ ```
535
+ We already have tests in:
536
+ - tests/e2e/profile-view.spec.ts (viewing profile)
537
+ - tests/api/auth.spec.ts (authentication)
538
+
539
+ Don't duplicate that coverage
540
+ ```
541
+
542
+ TEA will analyze existing tests and only generate new scenarios.
543
+
544
+ ### MCP Enhancements (Optional)
545
+
546
+ If you have MCP servers configured (`tea_use_mcp_enhancements: true`), TEA can use them during `*automate` for:
547
+
548
+ - **Healing mode:** Fix broken selectors, update assertions, enhance with trace analysis
549
+ - **Recording mode:** Verify selectors with live browser, capture network requests
550
+
551
+ No prompts - TEA uses MCPs automatically when available. See [Enable MCP Enhancements](/docs/how-to/customization/enable-tea-mcp-enhancements.md) for setup.
552
+
553
+ ### Generate Tests Incrementally
554
+
555
+ Don't generate all tests at once:
556
+
557
+ **Iteration 1:**
558
+ ```
559
+ Generate P0 tests only (critical path)
560
+ Run: *automate
561
+ ```
562
+
563
+ **Iteration 2:**
564
+ ```
565
+ Generate P1 tests (high value scenarios)
566
+ Run: *automate
567
+ Tell TEA to avoid P0 coverage
568
+ ```
569
+
570
+ **Iteration 3:**
571
+ ```
572
+ Generate P2 tests (if time permits)
573
+ Run: *automate
574
+ ```
575
+
576
+ This iterative approach:
577
+ - Provides fast feedback
578
+ - Allows validation before proceeding
579
+ - Keeps test generation focused
580
+
581
+ ## Common Issues
582
+
583
+ ### Tests Pass But Coverage Is Incomplete
584
+
585
+ **Problem:** Tests pass but don't cover all scenarios.
586
+
587
+ **Cause:** TEA wasn't given complete context.
588
+
589
+ **Solution:** Provide more details:
590
+ ```
591
+ Generate tests for:
592
+ - All acceptance criteria in story-profile.md
593
+ - Error scenarios (validation, authorization)
594
+ - Edge cases (empty fields, long inputs)
595
+ ```
596
+
597
+ ### Too Many Tests Generated
598
+
599
+ **Problem:** TEA generated 50 tests for a simple feature.
600
+
601
+ **Cause:** Didn't specify priorities or scope.
602
+
603
+ **Solution:** Be specific:
604
+ ```
605
+ Generate ONLY:
606
+ - P0 and P1 scenarios
607
+ - API tests for all scenarios
608
+ - E2E tests only for critical workflows
609
+ - Skip P2/P3 for now
610
+ ```
611
+
612
+ ### Tests Duplicate Existing Coverage
613
+
614
+ **Problem:** New tests cover the same scenarios as existing tests.
615
+
616
+ **Cause:** Didn't tell TEA about existing tests.
617
+
618
+ **Solution:** Specify existing coverage:
619
+ ```
620
+ We already have these tests:
621
+ - tests/api/profile.spec.ts (GET /api/profile)
622
+ - tests/e2e/profile-view.spec.ts (viewing profile)
623
+
624
+ Generate tests for scenarios NOT covered by those files
625
+ ```
626
+
627
+ ### MCP Enhancements for Better Selectors
628
+
629
+ If you have MCP servers configured, TEA verifies selectors against live browser. Otherwise, TEA generates accessible selectors (`getByRole`, `getByLabel`) by default.
630
+
631
+ Setup: Answer "Yes" to MCPs in BMad installer + configure MCP servers in your IDE. See [Enable MCP Enhancements](/docs/how-to/customization/enable-tea-mcp-enhancements.md).
632
+
633
+ ## Related Guides
634
+
635
+ - [How to Run Test Design](/docs/how-to/workflows/run-test-design.md) - Plan before generating
636
+ - [How to Run ATDD](/docs/how-to/workflows/run-atdd.md) - Failing tests before implementation
637
+ - [How to Run Test Review](/docs/how-to/workflows/run-test-review.md) - Audit generated quality
638
+
639
+ ## Understanding the Concepts
640
+
641
+ - [Testing as Engineering](/docs/explanation/philosophy/testing-as-engineering.md) - **Why TEA generates quality tests** (foundational)
642
+ - [Risk-Based Testing](/docs/explanation/tea/risk-based-testing.md) - Why prioritize P0 over P3
643
+ - [Test Quality Standards](/docs/explanation/tea/test-quality-standards.md) - What makes tests good
644
+ - [Fixture Architecture](/docs/explanation/tea/fixture-architecture.md) - Reusable test patterns
645
+
646
+ ## Reference
647
+
648
+ - [Command: *automate](/docs/reference/tea/commands.md#automate) - Full command reference
649
+ - [TEA Configuration](/docs/reference/tea/configuration.md) - MCP and Playwright Utils options
650
+
651
+ ---
652
+
653
+ Generated with [BMad Method](https://bmad-method.org) - TEA (Test Architect)
@@ -0,0 +1,73 @@
1
+ ---
2
+ title: "How to Run a Brainstorming Session"
3
+ description: How to run a brainstorming session using the BMad Method
4
+ ---
5
+
6
+ Use the `brainstorm-project` workflow to explore solution approaches through parallel ideation tracks.
7
+
8
+ ## When to Use This
9
+
10
+ - Very vague or seed kernel of an idea that needs exploration
11
+ - Consider alternatives or enhancements to an idea
12
+ - See your idea from different angles and viewpoints
13
+ - No idea what you want to build, but want to find some inspiration
14
+
15
+ :::note[Prerequisites]
16
+ - BMad Method installed
17
+ - Analyst agent available
18
+ :::
19
+
20
+ ## Steps
21
+
22
+ ### 1. Load the Analyst Agent
23
+
24
+ Start a fresh chat and load the Analyst agent.
25
+
26
+ ### 2. Run the Brainstorm Workflow
27
+
28
+ ```
29
+ *brainstorm-project
30
+ ```
31
+
32
+ ### 3. Describe Your Idea
33
+
34
+ Tell the agent about your project idea, even if it's vague:
35
+
36
+ - "I want to build something that helps developers manage their context"
37
+ - "I have a game idea about resource management"
38
+ - "I need a tool for my team but I'm not sure what exactly"
39
+
40
+ ### 4. Explore the Tracks
41
+
42
+ The workflow generates solution approaches through parallel ideation tracks:
43
+
44
+ - **Architecture track** — Technical approaches and patterns
45
+ - **UX track** — User experience possibilities
46
+ - **Integration track** — How it connects with other systems
47
+ - **Value track** — Business value and differentiation
48
+
49
+ ### 5. Evaluate Options
50
+
51
+ Review the generated options with rationale for each approach.
52
+
53
+ ## What You Get
54
+
55
+ - Multiple solution approaches with trade-offs
56
+ - Different architectural options
57
+ - UX and integration considerations
58
+ - Clear rationale for each direction
59
+
60
+ ## Tips
61
+
62
+ - **Don't worry about having a fully formed idea** — Vague is fine
63
+ - **Let the agent guide exploration** — Follow the prompts
64
+ - **Consider multiple tracks** — Don't settle on the first option
65
+ - **Use outputs as input for product-brief** — Build on brainstorming results
66
+
67
+ ## Next Steps
68
+
69
+ After brainstorming:
70
+
71
+ 1. **Research** — Validate ideas with market/technical research
72
+ 2. **Product Brief** — Capture strategic vision
73
+ 3. **PRD** — Move to formal planning