bmad-method 5.0.0 → 5.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 (329) hide show
  1. package/.github/FUNDING.yaml +15 -0
  2. package/.github/ISSUE_TEMPLATE/bug_report.md +32 -0
  3. package/.github/ISSUE_TEMPLATE/feature_request.md +22 -0
  4. package/.github/workflows/discord.yaml +25 -0
  5. package/.github/workflows/format-check.yaml +42 -0
  6. package/.github/workflows/manual-release.yaml +173 -0
  7. package/.husky/pre-commit +3 -2
  8. package/.vscode/settings.json +67 -74
  9. package/CHANGELOG.md +564 -19
  10. package/CONTRIBUTING.md +168 -5
  11. package/LICENSE +1 -1
  12. package/README.md +146 -218
  13. package/bmad-core/agent-teams/team-all.yaml +14 -0
  14. package/bmad-core/agent-teams/team-fullstack.yaml +18 -0
  15. package/bmad-core/agent-teams/team-ide-minimal.yaml +10 -0
  16. package/bmad-core/agent-teams/team-no-ui.yaml +13 -0
  17. package/bmad-core/agents/analyst.md +81 -0
  18. package/bmad-core/agents/architect.md +83 -0
  19. package/bmad-core/agents/bmad-master.md +107 -0
  20. package/bmad-core/agents/bmad-orchestrator.md +149 -0
  21. package/bmad-core/agents/dev.md +75 -0
  22. package/bmad-core/agents/pm.md +81 -0
  23. package/bmad-core/agents/po.md +76 -0
  24. package/bmad-core/agents/qa.md +88 -0
  25. package/bmad-core/agents/sm.md +62 -0
  26. package/bmad-core/agents/ux-expert.md +66 -0
  27. package/{.bmad-core → bmad-core}/checklists/architect-checklist.md +0 -5
  28. package/{.bmad-core → bmad-core}/checklists/change-checklist.md +2 -2
  29. package/{.bmad-core → bmad-core}/checklists/pm-checklist.md +0 -5
  30. package/{.bmad-core → bmad-core}/checklists/po-master-checklist.md +0 -9
  31. package/{.bmad-core → bmad-core}/checklists/story-dod-checklist.md +0 -7
  32. package/{.bmad-core → bmad-core}/checklists/story-draft-checklist.md +1 -4
  33. package/bmad-core/core-config.yaml +20 -0
  34. package/bmad-core/data/bmad-kb.md +806 -0
  35. package/bmad-core/data/brainstorming-techniques.md +36 -0
  36. package/bmad-core/data/elicitation-methods.md +154 -0
  37. package/bmad-core/data/test-levels-framework.md +146 -0
  38. package/bmad-core/data/test-priorities-matrix.md +172 -0
  39. package/bmad-core/tasks/advanced-elicitation.md +117 -0
  40. package/{.bmad-core → bmad-core}/tasks/correct-course.md +9 -12
  41. package/bmad-core/tasks/create-brownfield-story.md +312 -0
  42. package/{.bmad-core → bmad-core}/tasks/create-deep-research-prompt.md +4 -27
  43. package/bmad-core/tasks/create-next-story.md +112 -0
  44. package/bmad-core/tasks/document-project.md +343 -0
  45. package/bmad-core/tasks/facilitate-brainstorming-session.md +136 -0
  46. package/bmad-core/tasks/generate-ai-frontend-prompt.md +51 -0
  47. package/{.bmad-core → bmad-core}/tasks/index-docs.md +3 -13
  48. package/bmad-core/tasks/kb-mode-interaction.md +75 -0
  49. package/bmad-core/tasks/nfr-assess.md +343 -0
  50. package/bmad-core/tasks/qa-gate.md +159 -0
  51. package/bmad-core/tasks/review-story.md +314 -0
  52. package/bmad-core/tasks/risk-profile.md +353 -0
  53. package/{.bmad-core → bmad-core}/tasks/shard-doc.md +27 -15
  54. package/bmad-core/tasks/test-design.md +174 -0
  55. package/bmad-core/tasks/trace-requirements.md +264 -0
  56. package/bmad-core/tasks/validate-next-story.md +134 -0
  57. package/bmad-core/templates/architecture-tmpl.yaml +650 -0
  58. package/bmad-core/templates/brainstorming-output-tmpl.yaml +156 -0
  59. package/bmad-core/templates/brownfield-architecture-tmpl.yaml +476 -0
  60. package/bmad-core/templates/brownfield-prd-tmpl.yaml +280 -0
  61. package/bmad-core/templates/competitor-analysis-tmpl.yaml +306 -0
  62. package/bmad-core/templates/front-end-architecture-tmpl.yaml +218 -0
  63. package/bmad-core/templates/front-end-spec-tmpl.yaml +349 -0
  64. package/bmad-core/templates/fullstack-architecture-tmpl.yaml +823 -0
  65. package/bmad-core/templates/market-research-tmpl.yaml +252 -0
  66. package/bmad-core/templates/prd-tmpl.yaml +202 -0
  67. package/bmad-core/templates/project-brief-tmpl.yaml +221 -0
  68. package/bmad-core/templates/qa-gate-tmpl.yaml +102 -0
  69. package/bmad-core/templates/story-tmpl.yaml +137 -0
  70. package/bmad-core/workflows/brownfield-fullstack.yaml +297 -0
  71. package/bmad-core/workflows/brownfield-service.yaml +187 -0
  72. package/bmad-core/workflows/brownfield-ui.yaml +197 -0
  73. package/{.bmad-core/workflows/greenfield-fullstack.yml → bmad-core/workflows/greenfield-fullstack.yaml} +140 -77
  74. package/bmad-core/workflows/greenfield-service.yaml +206 -0
  75. package/bmad-core/workflows/greenfield-ui.yaml +235 -0
  76. package/common/tasks/create-doc.md +101 -0
  77. package/{.bmad-core → common}/tasks/execute-checklist.md +2 -13
  78. package/common/utils/bmad-doc-template.md +325 -0
  79. package/common/utils/workflow-management.md +69 -0
  80. package/dist/agents/analyst.txt +2889 -0
  81. package/dist/agents/architect.txt +3552 -0
  82. package/dist/agents/bmad-master.txt +8769 -0
  83. package/dist/agents/bmad-orchestrator.txt +1513 -0
  84. package/dist/agents/dev.txt +414 -0
  85. package/{.bmad-core/web-bundles → dist}/agents/pm.txt +668 -1119
  86. package/{.bmad-core/web-bundles → dist}/agents/po.txt +341 -484
  87. package/dist/agents/qa.txt +1987 -0
  88. package/dist/agents/sm.txt +658 -0
  89. package/dist/agents/ux-expert.txt +694 -0
  90. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +2371 -0
  91. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +1620 -0
  92. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +815 -0
  93. package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +10952 -0
  94. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +4012 -0
  95. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +3698 -0
  96. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +450 -0
  97. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +973 -0
  98. package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +15376 -0
  99. package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +2075 -0
  100. package/dist/teams/team-all.txt +12682 -0
  101. package/dist/teams/team-fullstack.txt +10421 -0
  102. package/dist/teams/team-ide-minimal.txt +5103 -0
  103. package/dist/teams/team-no-ui.txt +8980 -0
  104. package/docs/GUIDING-PRINCIPLES.md +91 -0
  105. package/docs/core-architecture.md +219 -0
  106. package/docs/enhanced-ide-development-workflow.md +248 -0
  107. package/docs/expansion-packs.md +280 -0
  108. package/docs/how-to-contribute-with-pull-requests.md +158 -0
  109. package/docs/user-guide.md +504 -0
  110. package/docs/versioning-and-releases.md +115 -53
  111. package/docs/versions.md +4 -5
  112. package/docs/working-in-the-brownfield.md +597 -0
  113. package/eslint.config.mjs +119 -0
  114. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/Complete AI Agent System - Flowchart.svg +102 -0
  115. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.1 Google Cloud Project Setup/1.1.1 - Initial Project Configuration - bash copy.txt +13 -0
  116. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.1 Google Cloud Project Setup/1.1.1 - Initial Project Configuration - bash.txt +13 -0
  117. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.2 Agent Development Kit Installation/1.2.2 - Basic Project Structure - txt.txt +25 -0
  118. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.3 Core Configuration Files/1.3.1 - settings.py +34 -0
  119. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.3 Core Configuration Files/1.3.2 - main.py - Base Application.py +70 -0
  120. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.4 Deployment Configuration/1.4.2 - cloudbuild.yaml +26 -0
  121. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/README.md +109 -0
  122. package/expansion-packs/README.md +2 -112
  123. package/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +13 -0
  124. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +71 -0
  125. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +78 -0
  126. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +64 -0
  127. package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +201 -0
  128. package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +160 -0
  129. package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +8 -0
  130. package/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +250 -0
  131. package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +647 -0
  132. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +110 -0
  133. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +216 -0
  134. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +290 -0
  135. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +613 -0
  136. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +356 -0
  137. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +343 -0
  138. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +253 -0
  139. package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +484 -0
  140. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +183 -0
  141. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +175 -0
  142. package/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +14 -0
  143. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +80 -0
  144. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +77 -0
  145. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +78 -0
  146. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +65 -0
  147. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +391 -0
  148. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +203 -0
  149. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +201 -0
  150. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +124 -0
  151. package/expansion-packs/bmad-2d-unity-game-dev/config.yaml +6 -0
  152. package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +769 -0
  153. package/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +586 -0
  154. package/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +110 -0
  155. package/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +141 -0
  156. package/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +184 -0
  157. package/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +290 -0
  158. package/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +200 -0
  159. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +1030 -0
  160. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +356 -0
  161. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +705 -0
  162. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +256 -0
  163. package/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +484 -0
  164. package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +183 -0
  165. package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +175 -0
  166. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/README.md +9 -9
  167. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/agents/infra-devops-platform.md +30 -18
  168. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/checklists/infrastructure-checklist.md +1 -1
  169. package/expansion-packs/bmad-infrastructure-devops/config.yaml +9 -0
  170. package/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +305 -0
  171. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/tasks/review-infrastructure.md +4 -5
  172. package/expansion-packs/{infrastructure-devops → bmad-infrastructure-devops}/tasks/validate-infrastructure.md +4 -5
  173. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +424 -0
  174. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +629 -0
  175. package/package.json +74 -42
  176. package/prettier.config.mjs +32 -0
  177. package/release_notes.md +30 -0
  178. package/tools/bmad-npx-wrapper.js +13 -15
  179. package/tools/builders/web-builder.js +544 -15
  180. package/tools/bump-all-versions.js +115 -0
  181. package/tools/bump-expansion-version.js +90 -0
  182. package/tools/cli.js +65 -32
  183. package/tools/flattener/aggregate.js +76 -0
  184. package/tools/flattener/binary.js +80 -0
  185. package/tools/flattener/discovery.js +71 -0
  186. package/tools/flattener/files.js +35 -0
  187. package/tools/flattener/ignoreRules.js +176 -0
  188. package/tools/flattener/main.js +573 -0
  189. package/tools/flattener/projectRoot.js +206 -0
  190. package/tools/flattener/prompts.js +44 -0
  191. package/tools/flattener/stats.helpers.js +395 -0
  192. package/tools/flattener/stats.js +80 -0
  193. package/tools/flattener/test-matrix.js +413 -0
  194. package/tools/flattener/xml.js +88 -0
  195. package/tools/installer/README.md +3 -53
  196. package/tools/installer/bin/bmad.js +475 -90
  197. package/tools/installer/config/ide-agent-config.yaml +58 -0
  198. package/tools/installer/config/install.config.yaml +123 -0
  199. package/tools/installer/lib/config-loader.js +208 -40
  200. package/tools/installer/lib/file-manager.js +258 -55
  201. package/tools/installer/lib/ide-base-setup.js +228 -0
  202. package/tools/installer/lib/ide-setup.js +1265 -253
  203. package/tools/installer/lib/installer.js +1651 -310
  204. package/tools/installer/lib/memory-profiler.js +225 -0
  205. package/tools/installer/lib/module-manager.js +114 -0
  206. package/tools/installer/lib/resource-locator.js +308 -0
  207. package/tools/installer/package.json +25 -24
  208. package/tools/lib/dependency-resolver.js +44 -48
  209. package/tools/lib/yaml-utils.js +29 -0
  210. package/tools/md-assets/web-agent-startup-instructions.md +39 -0
  211. package/tools/preview-release-notes.js +66 -0
  212. package/tools/shared/bannerArt.js +105 -0
  213. package/tools/sync-installer-version.js +7 -9
  214. package/tools/update-expansion-version.js +53 -0
  215. package/tools/upgraders/v3-to-v4-upgrader.js +221 -320
  216. package/tools/version-bump.js +42 -27
  217. package/tools/yaml-format.js +57 -44
  218. package/.bmad-core/agent-teams/team-all.yml +0 -16
  219. package/.bmad-core/agent-teams/team-fullstack.yml +0 -26
  220. package/.bmad-core/agent-teams/team-no-ui.yml +0 -15
  221. package/.bmad-core/agents/analyst.md +0 -59
  222. package/.bmad-core/agents/architect.md +0 -66
  223. package/.bmad-core/agents/bmad-master.md +0 -104
  224. package/.bmad-core/agents/bmad-orchestrator.md +0 -81
  225. package/.bmad-core/agents/dev.md +0 -70
  226. package/.bmad-core/agents/pm.md +0 -59
  227. package/.bmad-core/agents/po.md +0 -60
  228. package/.bmad-core/agents/qa.md +0 -52
  229. package/.bmad-core/agents/sm.md +0 -55
  230. package/.bmad-core/agents/ux-expert.md +0 -66
  231. package/.bmad-core/data/bmad-kb.md +0 -47
  232. package/.bmad-core/schemas/agent-team-schema.yml +0 -153
  233. package/.bmad-core/tasks/advanced-elicitation.md +0 -92
  234. package/.bmad-core/tasks/brainstorming-techniques.md +0 -238
  235. package/.bmad-core/tasks/core-dump.md +0 -74
  236. package/.bmad-core/tasks/create-agent.md +0 -202
  237. package/.bmad-core/tasks/create-doc.md +0 -74
  238. package/.bmad-core/tasks/create-expansion-pack.md +0 -425
  239. package/.bmad-core/tasks/create-next-story.md +0 -206
  240. package/.bmad-core/tasks/create-team.md +0 -229
  241. package/.bmad-core/tasks/doc-migration-task.md +0 -143
  242. package/.bmad-core/tasks/generate-ai-frontend-prompt.md +0 -58
  243. package/.bmad-core/templates/agent-tmpl.md +0 -58
  244. package/.bmad-core/templates/architecture-tmpl.md +0 -771
  245. package/.bmad-core/templates/brownfield-architecture-tmpl.md +0 -542
  246. package/.bmad-core/templates/brownfield-prd-tmpl.md +0 -240
  247. package/.bmad-core/templates/competitor-analysis-tmpl.md +0 -289
  248. package/.bmad-core/templates/expansion-pack-plan-tmpl.md +0 -91
  249. package/.bmad-core/templates/front-end-architecture-tmpl.md +0 -173
  250. package/.bmad-core/templates/front-end-spec-tmpl.md +0 -411
  251. package/.bmad-core/templates/fullstack-architecture-tmpl.md +0 -1016
  252. package/.bmad-core/templates/market-research-tmpl.md +0 -261
  253. package/.bmad-core/templates/prd-tmpl.md +0 -200
  254. package/.bmad-core/templates/project-brief-tmpl.md +0 -228
  255. package/.bmad-core/templates/simple-project-prd-tmpl.md +0 -461
  256. package/.bmad-core/templates/story-tmpl.md +0 -61
  257. package/.bmad-core/templates/web-agent-startup-instructions-template.md +0 -39
  258. package/.bmad-core/utils/agent-switcher.ide.md +0 -112
  259. package/.bmad-core/utils/template-format.md +0 -26
  260. package/.bmad-core/utils/workflow-management.md +0 -224
  261. package/.bmad-core/web-bundles/agents/analyst.txt +0 -1684
  262. package/.bmad-core/web-bundles/agents/architect.txt +0 -3584
  263. package/.bmad-core/web-bundles/agents/bmad-master.txt +0 -9491
  264. package/.bmad-core/web-bundles/agents/bmad-orchestrator.txt +0 -1466
  265. package/.bmad-core/web-bundles/agents/dev.txt +0 -316
  266. package/.bmad-core/web-bundles/agents/qa.txt +0 -129
  267. package/.bmad-core/web-bundles/agents/sm.txt +0 -658
  268. package/.bmad-core/web-bundles/agents/ux-expert.txt +0 -1099
  269. package/.bmad-core/web-bundles/teams/team-all.txt +0 -10757
  270. package/.bmad-core/web-bundles/teams/team-fullstack.txt +0 -10109
  271. package/.bmad-core/web-bundles/teams/team-no-ui.txt +0 -8950
  272. package/.bmad-core/workflows/brownfield-fullstack.yml +0 -116
  273. package/.bmad-core/workflows/brownfield-service.yml +0 -117
  274. package/.bmad-core/workflows/brownfield-ui.yml +0 -127
  275. package/.bmad-core/workflows/greenfield-service.yml +0 -143
  276. package/.bmad-core/workflows/greenfield-ui.yml +0 -172
  277. package/.claude/commands/analyst.md +0 -63
  278. package/.claude/commands/architect.md +0 -70
  279. package/.claude/commands/bmad-master.md +0 -108
  280. package/.claude/commands/bmad-orchestrator.md +0 -85
  281. package/.claude/commands/dev.md +0 -74
  282. package/.claude/commands/pm.md +0 -63
  283. package/.claude/commands/po.md +0 -64
  284. package/.claude/commands/qa.md +0 -56
  285. package/.claude/commands/sm.md +0 -59
  286. package/.claude/commands/ux-expert.md +0 -70
  287. package/.cursor/rules/analyst.mdc +0 -77
  288. package/.cursor/rules/architect.mdc +0 -84
  289. package/.cursor/rules/bmad-master.mdc +0 -122
  290. package/.cursor/rules/bmad-orchestrator.mdc +0 -99
  291. package/.cursor/rules/dev.mdc +0 -88
  292. package/.cursor/rules/pm.mdc +0 -77
  293. package/.cursor/rules/po.mdc +0 -78
  294. package/.cursor/rules/qa.mdc +0 -70
  295. package/.cursor/rules/sm.mdc +0 -73
  296. package/.cursor/rules/ux-expert.mdc +0 -84
  297. package/.github/workflows/release.yml +0 -59
  298. package/.releaserc.json +0 -18
  299. package/.roo/.roomodes +0 -95
  300. package/.roo/README.md +0 -38
  301. package/.vscode/extensions.json +0 -6
  302. package/.windsurf/rules/analyst.md +0 -71
  303. package/.windsurf/rules/architect.md +0 -78
  304. package/.windsurf/rules/bmad-master.md +0 -116
  305. package/.windsurf/rules/bmad-orchestrator.md +0 -93
  306. package/.windsurf/rules/dev.md +0 -82
  307. package/.windsurf/rules/pm.md +0 -71
  308. package/.windsurf/rules/po.md +0 -72
  309. package/.windsurf/rules/qa.md +0 -64
  310. package/.windsurf/rules/sm.md +0 -67
  311. package/.windsurf/rules/ux-expert.md +0 -78
  312. package/docs/bmad-workflow-guide.md +0 -161
  313. package/docs/claude-code-guide.md +0 -119
  314. package/docs/cursor-guide.md +0 -127
  315. package/docs/roo-code-guide.md +0 -140
  316. package/docs/sample-output/simple-fullstack-greenfield/prd.md +0 -42
  317. package/docs/windsurf-guide.md +0 -127
  318. package/expansion-packs/infrastructure-devops/manifest.yml +0 -38
  319. package/expansion-packs/infrastructure-devops/templates/infrastructure-architecture-tmpl.md +0 -415
  320. package/expansion-packs/infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.md +0 -0
  321. package/tools/installer/config/install.config.yml +0 -139
  322. package/tools/installer/package-lock.json +0 -906
  323. package/tools/installer/templates/claude-commands.md +0 -7
  324. package/tools/installer/templates/cursor-rules.md +0 -22
  325. package/tools/installer/templates/windsurf-rules.md +0 -22
  326. package/tools/semantic-release-sync-installer.js +0 -31
  327. /package/{.bmad-core → bmad-core}/data/technical-preferences.md +0 -0
  328. /package/{.bmad-core → bmad-core}/tasks/brownfield-create-epic.md +0 -0
  329. /package/{.bmad-core → bmad-core}/tasks/brownfield-create-story.md +0 -0
@@ -0,0 +1,343 @@
1
+ # nfr-assess
2
+
3
+ Quick NFR validation focused on the core four: security, performance, reliability, maintainability.
4
+
5
+ ## Inputs
6
+
7
+ ```yaml
8
+ required:
9
+ - story_id: '{epic}.{story}' # e.g., "1.3"
10
+ - story_path: 'docs/stories/{epic}.{story}.*.md'
11
+
12
+ optional:
13
+ - architecture_refs: 'docs/architecture/*.md'
14
+ - technical_preferences: 'docs/technical-preferences.md'
15
+ - acceptance_criteria: From story file
16
+ ```
17
+
18
+ ## Purpose
19
+
20
+ Assess non-functional requirements for a story and generate:
21
+
22
+ 1. YAML block for the gate file's `nfr_validation` section
23
+ 2. Brief markdown assessment saved to `docs/qa/assessments/{epic}.{story}-nfr-{YYYYMMDD}.md`
24
+
25
+ ## Process
26
+
27
+ ### 0. Fail-safe for Missing Inputs
28
+
29
+ If story_path or story file can't be found:
30
+
31
+ - Still create assessment file with note: "Source story not found"
32
+ - Set all selected NFRs to CONCERNS with notes: "Target unknown / evidence missing"
33
+ - Continue with assessment to provide value
34
+
35
+ ### 1. Elicit Scope
36
+
37
+ **Interactive mode:** Ask which NFRs to assess
38
+ **Non-interactive mode:** Default to core four (security, performance, reliability, maintainability)
39
+
40
+ ```text
41
+ Which NFRs should I assess? (Enter numbers or press Enter for default)
42
+ [1] Security (default)
43
+ [2] Performance (default)
44
+ [3] Reliability (default)
45
+ [4] Maintainability (default)
46
+ [5] Usability
47
+ [6] Compatibility
48
+ [7] Portability
49
+ [8] Functional Suitability
50
+
51
+ > [Enter for 1-4]
52
+ ```
53
+
54
+ ### 2. Check for Thresholds
55
+
56
+ Look for NFR requirements in:
57
+
58
+ - Story acceptance criteria
59
+ - `docs/architecture/*.md` files
60
+ - `docs/technical-preferences.md`
61
+
62
+ **Interactive mode:** Ask for missing thresholds
63
+ **Non-interactive mode:** Mark as CONCERNS with "Target unknown"
64
+
65
+ ```text
66
+ No performance requirements found. What's your target response time?
67
+ > 200ms for API calls
68
+
69
+ No security requirements found. Required auth method?
70
+ > JWT with refresh tokens
71
+ ```
72
+
73
+ **Unknown targets policy:** If a target is missing and not provided, mark status as CONCERNS with notes: "Target unknown"
74
+
75
+ ### 3. Quick Assessment
76
+
77
+ For each selected NFR, check:
78
+
79
+ - Is there evidence it's implemented?
80
+ - Can we validate it?
81
+ - Are there obvious gaps?
82
+
83
+ ### 4. Generate Outputs
84
+
85
+ ## Output 1: Gate YAML Block
86
+
87
+ Generate ONLY for NFRs actually assessed (no placeholders):
88
+
89
+ ```yaml
90
+ # Gate YAML (copy/paste):
91
+ nfr_validation:
92
+ _assessed: [security, performance, reliability, maintainability]
93
+ security:
94
+ status: CONCERNS
95
+ notes: 'No rate limiting on auth endpoints'
96
+ performance:
97
+ status: PASS
98
+ notes: 'Response times < 200ms verified'
99
+ reliability:
100
+ status: PASS
101
+ notes: 'Error handling and retries implemented'
102
+ maintainability:
103
+ status: CONCERNS
104
+ notes: 'Test coverage at 65%, target is 80%'
105
+ ```
106
+
107
+ ## Deterministic Status Rules
108
+
109
+ - **FAIL**: Any selected NFR has critical gap or target clearly not met
110
+ - **CONCERNS**: No FAILs, but any NFR is unknown/partial/missing evidence
111
+ - **PASS**: All selected NFRs meet targets with evidence
112
+
113
+ ## Quality Score Calculation
114
+
115
+ ```
116
+ quality_score = 100
117
+ - 20 for each FAIL attribute
118
+ - 10 for each CONCERNS attribute
119
+ Floor at 0, ceiling at 100
120
+ ```
121
+
122
+ If `technical-preferences.md` defines custom weights, use those instead.
123
+
124
+ ## Output 2: Brief Assessment Report
125
+
126
+ **ALWAYS save to:** `docs/qa/assessments/{epic}.{story}-nfr-{YYYYMMDD}.md`
127
+
128
+ ```markdown
129
+ # NFR Assessment: {epic}.{story}
130
+
131
+ Date: {date}
132
+ Reviewer: Quinn
133
+
134
+ <!-- Note: Source story not found (if applicable) -->
135
+
136
+ ## Summary
137
+
138
+ - Security: CONCERNS - Missing rate limiting
139
+ - Performance: PASS - Meets <200ms requirement
140
+ - Reliability: PASS - Proper error handling
141
+ - Maintainability: CONCERNS - Test coverage below target
142
+
143
+ ## Critical Issues
144
+
145
+ 1. **No rate limiting** (Security)
146
+ - Risk: Brute force attacks possible
147
+ - Fix: Add rate limiting middleware to auth endpoints
148
+
149
+ 2. **Test coverage 65%** (Maintainability)
150
+ - Risk: Untested code paths
151
+ - Fix: Add tests for uncovered branches
152
+
153
+ ## Quick Wins
154
+
155
+ - Add rate limiting: ~2 hours
156
+ - Increase test coverage: ~4 hours
157
+ - Add performance monitoring: ~1 hour
158
+ ```
159
+
160
+ ## Output 3: Story Update Line
161
+
162
+ **End with this line for the review task to quote:**
163
+
164
+ ```
165
+ NFR assessment: docs/qa/assessments/{epic}.{story}-nfr-{YYYYMMDD}.md
166
+ ```
167
+
168
+ ## Output 4: Gate Integration Line
169
+
170
+ **Always print at the end:**
171
+
172
+ ```
173
+ Gate NFR block ready → paste into docs/qa/gates/{epic}.{story}-{slug}.yml under nfr_validation
174
+ ```
175
+
176
+ ## Assessment Criteria
177
+
178
+ ### Security
179
+
180
+ **PASS if:**
181
+
182
+ - Authentication implemented
183
+ - Authorization enforced
184
+ - Input validation present
185
+ - No hardcoded secrets
186
+
187
+ **CONCERNS if:**
188
+
189
+ - Missing rate limiting
190
+ - Weak encryption
191
+ - Incomplete authorization
192
+
193
+ **FAIL if:**
194
+
195
+ - No authentication
196
+ - Hardcoded credentials
197
+ - SQL injection vulnerabilities
198
+
199
+ ### Performance
200
+
201
+ **PASS if:**
202
+
203
+ - Meets response time targets
204
+ - No obvious bottlenecks
205
+ - Reasonable resource usage
206
+
207
+ **CONCERNS if:**
208
+
209
+ - Close to limits
210
+ - Missing indexes
211
+ - No caching strategy
212
+
213
+ **FAIL if:**
214
+
215
+ - Exceeds response time limits
216
+ - Memory leaks
217
+ - Unoptimized queries
218
+
219
+ ### Reliability
220
+
221
+ **PASS if:**
222
+
223
+ - Error handling present
224
+ - Graceful degradation
225
+ - Retry logic where needed
226
+
227
+ **CONCERNS if:**
228
+
229
+ - Some error cases unhandled
230
+ - No circuit breakers
231
+ - Missing health checks
232
+
233
+ **FAIL if:**
234
+
235
+ - No error handling
236
+ - Crashes on errors
237
+ - No recovery mechanisms
238
+
239
+ ### Maintainability
240
+
241
+ **PASS if:**
242
+
243
+ - Test coverage meets target
244
+ - Code well-structured
245
+ - Documentation present
246
+
247
+ **CONCERNS if:**
248
+
249
+ - Test coverage below target
250
+ - Some code duplication
251
+ - Missing documentation
252
+
253
+ **FAIL if:**
254
+
255
+ - No tests
256
+ - Highly coupled code
257
+ - No documentation
258
+
259
+ ## Quick Reference
260
+
261
+ ### What to Check
262
+
263
+ ```yaml
264
+ security:
265
+ - Authentication mechanism
266
+ - Authorization checks
267
+ - Input validation
268
+ - Secret management
269
+ - Rate limiting
270
+
271
+ performance:
272
+ - Response times
273
+ - Database queries
274
+ - Caching usage
275
+ - Resource consumption
276
+
277
+ reliability:
278
+ - Error handling
279
+ - Retry logic
280
+ - Circuit breakers
281
+ - Health checks
282
+ - Logging
283
+
284
+ maintainability:
285
+ - Test coverage
286
+ - Code structure
287
+ - Documentation
288
+ - Dependencies
289
+ ```
290
+
291
+ ## Key Principles
292
+
293
+ - Focus on the core four NFRs by default
294
+ - Quick assessment, not deep analysis
295
+ - Gate-ready output format
296
+ - Brief, actionable findings
297
+ - Skip what doesn't apply
298
+ - Deterministic status rules for consistency
299
+ - Unknown targets → CONCERNS, not guesses
300
+
301
+ ---
302
+
303
+ ## Appendix: ISO 25010 Reference
304
+
305
+ <details>
306
+ <summary>Full ISO 25010 Quality Model (click to expand)</summary>
307
+
308
+ ### All 8 Quality Characteristics
309
+
310
+ 1. **Functional Suitability**: Completeness, correctness, appropriateness
311
+ 2. **Performance Efficiency**: Time behavior, resource use, capacity
312
+ 3. **Compatibility**: Co-existence, interoperability
313
+ 4. **Usability**: Learnability, operability, accessibility
314
+ 5. **Reliability**: Maturity, availability, fault tolerance
315
+ 6. **Security**: Confidentiality, integrity, authenticity
316
+ 7. **Maintainability**: Modularity, reusability, testability
317
+ 8. **Portability**: Adaptability, installability
318
+
319
+ Use these when assessing beyond the core four.
320
+
321
+ </details>
322
+
323
+ <details>
324
+ <summary>Example: Deep Performance Analysis (click to expand)</summary>
325
+
326
+ ```yaml
327
+ performance_deep_dive:
328
+ response_times:
329
+ p50: 45ms
330
+ p95: 180ms
331
+ p99: 350ms
332
+ database:
333
+ slow_queries: 2
334
+ missing_indexes: ['users.email', 'orders.user_id']
335
+ caching:
336
+ hit_rate: 0%
337
+ recommendation: 'Add Redis for session data'
338
+ load_test:
339
+ max_rps: 150
340
+ breaking_point: 200 rps
341
+ ```
342
+
343
+ </details>
@@ -0,0 +1,159 @@
1
+ # qa-gate
2
+
3
+ Create or update a quality gate decision file for a story based on review findings.
4
+
5
+ ## Purpose
6
+
7
+ Generate a standalone quality gate file that provides a clear pass/fail decision with actionable feedback. This gate serves as an advisory checkpoint for teams to understand quality status.
8
+
9
+ ## Prerequisites
10
+
11
+ - Story has been reviewed (manually or via review-story task)
12
+ - Review findings are available
13
+ - Understanding of story requirements and implementation
14
+
15
+ ## Gate File Location
16
+
17
+ **ALWAYS** create file at: `docs/qa/gates/{epic}.{story}-{slug}.yml`
18
+
19
+ Slug rules:
20
+
21
+ - Convert to lowercase
22
+ - Replace spaces with hyphens
23
+ - Strip punctuation
24
+ - Example: "User Auth - Login!" becomes "user-auth-login"
25
+
26
+ ## Minimal Required Schema
27
+
28
+ ```yaml
29
+ schema: 1
30
+ story: '{epic}.{story}'
31
+ gate: PASS|CONCERNS|FAIL|WAIVED
32
+ status_reason: '1-2 sentence explanation of gate decision'
33
+ reviewer: 'Quinn'
34
+ updated: '{ISO-8601 timestamp}'
35
+ top_issues: [] # Empty array if no issues
36
+ waiver: { active: false } # Only set active: true if WAIVED
37
+ ```
38
+
39
+ ## Schema with Issues
40
+
41
+ ```yaml
42
+ schema: 1
43
+ story: '1.3'
44
+ gate: CONCERNS
45
+ status_reason: 'Missing rate limiting on auth endpoints poses security risk.'
46
+ reviewer: 'Quinn'
47
+ updated: '2025-01-12T10:15:00Z'
48
+ top_issues:
49
+ - id: 'SEC-001'
50
+ severity: high # ONLY: low|medium|high
51
+ finding: 'No rate limiting on login endpoint'
52
+ suggested_action: 'Add rate limiting middleware before production'
53
+ - id: 'TEST-001'
54
+ severity: medium
55
+ finding: 'No integration tests for auth flow'
56
+ suggested_action: 'Add integration test coverage'
57
+ waiver: { active: false }
58
+ ```
59
+
60
+ ## Schema when Waived
61
+
62
+ ```yaml
63
+ schema: 1
64
+ story: '1.3'
65
+ gate: WAIVED
66
+ status_reason: 'Known issues accepted for MVP release.'
67
+ reviewer: 'Quinn'
68
+ updated: '2025-01-12T10:15:00Z'
69
+ top_issues:
70
+ - id: 'PERF-001'
71
+ severity: low
72
+ finding: 'Dashboard loads slowly with 1000+ items'
73
+ suggested_action: 'Implement pagination in next sprint'
74
+ waiver:
75
+ active: true
76
+ reason: 'MVP release - performance optimization deferred'
77
+ approved_by: 'Product Owner'
78
+ ```
79
+
80
+ ## Gate Decision Criteria
81
+
82
+ ### PASS
83
+
84
+ - All acceptance criteria met
85
+ - No high-severity issues
86
+ - Test coverage meets project standards
87
+
88
+ ### CONCERNS
89
+
90
+ - Non-blocking issues present
91
+ - Should be tracked and scheduled
92
+ - Can proceed with awareness
93
+
94
+ ### FAIL
95
+
96
+ - Acceptance criteria not met
97
+ - High-severity issues present
98
+ - Recommend return to InProgress
99
+
100
+ ### WAIVED
101
+
102
+ - Issues explicitly accepted
103
+ - Requires approval and reason
104
+ - Proceed despite known issues
105
+
106
+ ## Severity Scale
107
+
108
+ **FIXED VALUES - NO VARIATIONS:**
109
+
110
+ - `low`: Minor issues, cosmetic problems
111
+ - `medium`: Should fix soon, not blocking
112
+ - `high`: Critical issues, should block release
113
+
114
+ ## Issue ID Prefixes
115
+
116
+ - `SEC-`: Security issues
117
+ - `PERF-`: Performance issues
118
+ - `REL-`: Reliability issues
119
+ - `TEST-`: Testing gaps
120
+ - `MNT-`: Maintainability concerns
121
+ - `ARCH-`: Architecture issues
122
+ - `DOC-`: Documentation gaps
123
+ - `REQ-`: Requirements issues
124
+
125
+ ## Output Requirements
126
+
127
+ 1. **ALWAYS** create gate file at: `docs/qa/gates/{epic}.{story}-{slug}.yml`
128
+ 2. **ALWAYS** append this exact format to story's QA Results section:
129
+ ```
130
+ Gate: {STATUS} → docs/qa/gates/{epic}.{story}-{slug}.yml
131
+ ```
132
+ 3. Keep status_reason to 1-2 sentences maximum
133
+ 4. Use severity values exactly: `low`, `medium`, or `high`
134
+
135
+ ## Example Story Update
136
+
137
+ After creating gate file, append to story's QA Results section:
138
+
139
+ ```markdown
140
+ ## QA Results
141
+
142
+ ### Review Date: 2025-01-12
143
+
144
+ ### Reviewed By: Quinn (Test Architect)
145
+
146
+ [... existing review content ...]
147
+
148
+ ### Gate Status
149
+
150
+ Gate: CONCERNS → docs/qa/gates/1.3-user-auth-login.yml
151
+ ```
152
+
153
+ ## Key Principles
154
+
155
+ - Keep it minimal and predictable
156
+ - Fixed severity scale (low/medium/high)
157
+ - Always write to standard path
158
+ - Always update story with gate reference
159
+ - Clear, actionable findings