bmad-method 4.27.6 → 5.0.0

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 (274) hide show
  1. package/.bmad-core/agent-teams/team-all.yml +16 -0
  2. package/.bmad-core/agent-teams/team-fullstack.yml +26 -0
  3. package/.bmad-core/agent-teams/team-no-ui.yml +15 -0
  4. package/{bmad-core → .bmad-core}/agents/analyst.md +23 -29
  5. package/.bmad-core/agents/architect.md +66 -0
  6. package/.bmad-core/agents/bmad-master.md +104 -0
  7. package/.bmad-core/agents/bmad-orchestrator.md +81 -0
  8. package/.bmad-core/agents/dev.md +70 -0
  9. package/{bmad-core → .bmad-core}/agents/pm.md +24 -24
  10. package/{bmad-core → .bmad-core}/agents/po.md +24 -27
  11. package/.bmad-core/agents/qa.md +52 -0
  12. package/.bmad-core/agents/sm.md +55 -0
  13. package/.bmad-core/agents/ux-expert.md +66 -0
  14. package/{bmad-core → .bmad-core}/checklists/change-checklist.md +2 -2
  15. package/{bmad-core → .bmad-core}/checklists/story-draft-checklist.md +1 -1
  16. package/.bmad-core/data/bmad-kb.md +47 -0
  17. package/.bmad-core/schemas/agent-team-schema.yml +153 -0
  18. package/.bmad-core/tasks/advanced-elicitation.md +92 -0
  19. package/.bmad-core/tasks/brainstorming-techniques.md +238 -0
  20. package/.bmad-core/tasks/core-dump.md +74 -0
  21. package/{expansion-packs/bmad-creator-tools → .bmad-core}/tasks/create-agent.md +11 -9
  22. package/.bmad-core/tasks/create-doc.md +74 -0
  23. package/.bmad-core/tasks/create-expansion-pack.md +425 -0
  24. package/.bmad-core/tasks/create-next-story.md +206 -0
  25. package/.bmad-core/tasks/create-team.md +229 -0
  26. package/{bmad-core → .bmad-core}/tasks/doc-migration-task.md +9 -9
  27. package/{common → .bmad-core}/tasks/execute-checklist.md +6 -2
  28. package/.bmad-core/tasks/generate-ai-frontend-prompt.md +58 -0
  29. package/{bmad-core → .bmad-core}/tasks/index-docs.md +7 -3
  30. package/{bmad-core → .bmad-core}/tasks/shard-doc.md +7 -25
  31. package/.bmad-core/templates/agent-tmpl.md +58 -0
  32. package/.bmad-core/templates/architecture-tmpl.md +771 -0
  33. package/.bmad-core/templates/brownfield-architecture-tmpl.md +542 -0
  34. package/.bmad-core/templates/brownfield-prd-tmpl.md +240 -0
  35. package/.bmad-core/templates/competitor-analysis-tmpl.md +289 -0
  36. package/.bmad-core/templates/expansion-pack-plan-tmpl.md +91 -0
  37. package/.bmad-core/templates/front-end-architecture-tmpl.md +173 -0
  38. package/.bmad-core/templates/front-end-spec-tmpl.md +411 -0
  39. package/.bmad-core/templates/fullstack-architecture-tmpl.md +1016 -0
  40. package/.bmad-core/templates/market-research-tmpl.md +261 -0
  41. package/.bmad-core/templates/prd-tmpl.md +200 -0
  42. package/.bmad-core/templates/project-brief-tmpl.md +228 -0
  43. package/.bmad-core/templates/simple-project-prd-tmpl.md +461 -0
  44. package/.bmad-core/templates/story-tmpl.md +61 -0
  45. package/.bmad-core/templates/web-agent-startup-instructions-template.md +39 -0
  46. package/.bmad-core/utils/agent-switcher.ide.md +112 -0
  47. package/.bmad-core/utils/template-format.md +26 -0
  48. package/.bmad-core/utils/workflow-management.md +224 -0
  49. package/.bmad-core/web-bundles/agents/analyst.txt +1684 -0
  50. package/.bmad-core/web-bundles/agents/architect.txt +3584 -0
  51. package/.bmad-core/web-bundles/agents/bmad-master.txt +9491 -0
  52. package/.bmad-core/web-bundles/agents/bmad-orchestrator.txt +1466 -0
  53. package/{dist → .bmad-core/web-bundles}/agents/dev.txt +71 -179
  54. package/{dist → .bmad-core/web-bundles}/agents/pm.txt +1058 -624
  55. package/{dist → .bmad-core/web-bundles}/agents/po.txt +138 -337
  56. package/.bmad-core/web-bundles/agents/qa.txt +129 -0
  57. package/.bmad-core/web-bundles/agents/sm.txt +658 -0
  58. package/.bmad-core/web-bundles/agents/ux-expert.txt +1099 -0
  59. package/.bmad-core/web-bundles/teams/team-all.txt +10757 -0
  60. package/.bmad-core/web-bundles/teams/team-fullstack.txt +10109 -0
  61. package/.bmad-core/web-bundles/teams/team-no-ui.txt +8950 -0
  62. package/.bmad-core/workflows/brownfield-fullstack.yml +116 -0
  63. package/.bmad-core/workflows/brownfield-service.yml +117 -0
  64. package/.bmad-core/workflows/brownfield-ui.yml +127 -0
  65. package/.bmad-core/workflows/greenfield-fullstack.yml +177 -0
  66. package/.bmad-core/workflows/greenfield-service.yml +143 -0
  67. package/.bmad-core/workflows/greenfield-ui.yml +172 -0
  68. package/.claude/commands/analyst.md +63 -0
  69. package/.claude/commands/architect.md +70 -0
  70. package/.claude/commands/bmad-master.md +108 -0
  71. package/.claude/commands/bmad-orchestrator.md +85 -0
  72. package/.claude/commands/dev.md +74 -0
  73. package/.claude/commands/pm.md +63 -0
  74. package/.claude/commands/po.md +64 -0
  75. package/.claude/commands/qa.md +56 -0
  76. package/.claude/commands/sm.md +59 -0
  77. package/.claude/commands/ux-expert.md +70 -0
  78. package/.cursor/rules/analyst.mdc +77 -0
  79. package/.cursor/rules/architect.mdc +84 -0
  80. package/.cursor/rules/bmad-master.mdc +122 -0
  81. package/.cursor/rules/bmad-orchestrator.mdc +99 -0
  82. package/.cursor/rules/dev.mdc +88 -0
  83. package/.cursor/rules/pm.mdc +77 -0
  84. package/.cursor/rules/po.mdc +78 -0
  85. package/.cursor/rules/qa.mdc +70 -0
  86. package/.cursor/rules/sm.mdc +73 -0
  87. package/.cursor/rules/ux-expert.mdc +84 -0
  88. package/.roo/.roomodes +95 -0
  89. package/.roo/README.md +38 -0
  90. package/.vscode/extensions.json +6 -0
  91. package/.vscode/settings.json +75 -49
  92. package/.windsurf/rules/analyst.md +71 -0
  93. package/.windsurf/rules/architect.md +78 -0
  94. package/.windsurf/rules/bmad-master.md +116 -0
  95. package/.windsurf/rules/bmad-orchestrator.md +93 -0
  96. package/.windsurf/rules/dev.md +82 -0
  97. package/.windsurf/rules/pm.md +71 -0
  98. package/.windsurf/rules/po.md +72 -0
  99. package/.windsurf/rules/qa.md +64 -0
  100. package/.windsurf/rules/sm.md +67 -0
  101. package/.windsurf/rules/ux-expert.md +78 -0
  102. package/CHANGELOG.md +16 -459
  103. package/CONTRIBUTING.md +5 -168
  104. package/LICENSE +1 -1
  105. package/README.md +230 -77
  106. package/docs/bmad-workflow-guide.md +15 -19
  107. package/docs/claude-code-guide.md +119 -0
  108. package/docs/cursor-guide.md +127 -0
  109. package/docs/roo-code-guide.md +140 -0
  110. package/docs/sample-output/simple-fullstack-greenfield/prd.md +42 -0
  111. package/docs/versioning-and-releases.md +16 -8
  112. package/docs/versions.md +5 -4
  113. package/docs/windsurf-guide.md +127 -0
  114. package/expansion-packs/README.md +112 -2
  115. package/expansion-packs/{bmad-infrastructure-devops → infrastructure-devops}/README.md +9 -9
  116. package/expansion-packs/{bmad-infrastructure-devops → infrastructure-devops}/agents/infra-devops-platform.md +15 -14
  117. package/expansion-packs/{bmad-infrastructure-devops → infrastructure-devops}/checklists/infrastructure-checklist.md +1 -1
  118. package/expansion-packs/infrastructure-devops/manifest.yml +38 -0
  119. package/expansion-packs/{bmad-infrastructure-devops → infrastructure-devops}/tasks/review-infrastructure.md +4 -4
  120. package/expansion-packs/{bmad-infrastructure-devops → infrastructure-devops}/tasks/validate-infrastructure.md +4 -4
  121. package/expansion-packs/infrastructure-devops/templates/infrastructure-architecture-tmpl.md +415 -0
  122. package/expansion-packs/infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.md +0 -0
  123. package/package.json +11 -19
  124. package/tools/bmad-npx-wrapper.js +1 -1
  125. package/tools/builders/web-builder.js +28 -563
  126. package/tools/cli.js +22 -55
  127. package/tools/installer/README.md +53 -3
  128. package/tools/installer/bin/bmad.js +56 -294
  129. package/tools/installer/config/install.config.yml +139 -0
  130. package/tools/installer/lib/config-loader.js +34 -198
  131. package/tools/installer/lib/file-manager.js +7 -200
  132. package/tools/installer/lib/ide-setup.js +189 -545
  133. package/tools/installer/lib/installer.js +61 -1171
  134. package/tools/installer/package-lock.json +3 -3
  135. package/tools/installer/package.json +4 -4
  136. package/tools/installer/templates/claude-commands.md +7 -0
  137. package/tools/installer/templates/cursor-rules.md +22 -0
  138. package/tools/installer/templates/windsurf-rules.md +22 -0
  139. package/tools/lib/dependency-resolver.js +22 -22
  140. package/tools/upgraders/v3-to-v4-upgrader.js +43 -35
  141. package/tools/version-bump.js +1 -1
  142. package/tools/yaml-format.js +2 -2
  143. package/.github/FUNDING.yaml +0 -15
  144. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -32
  145. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -22
  146. package/.prettierignore +0 -21
  147. package/.prettierrc +0 -23
  148. package/bmad-core/agent-teams/team-all.yaml +0 -14
  149. package/bmad-core/agent-teams/team-fullstack.yaml +0 -18
  150. package/bmad-core/agent-teams/team-ide-minimal.yaml +0 -10
  151. package/bmad-core/agent-teams/team-no-ui.yaml +0 -13
  152. package/bmad-core/agents/architect.md +0 -62
  153. package/bmad-core/agents/bmad-master.md +0 -88
  154. package/bmad-core/agents/bmad-orchestrator.md +0 -135
  155. package/bmad-core/agents/dev.md +0 -56
  156. package/bmad-core/agents/qa.md +0 -54
  157. package/bmad-core/agents/sm.md +0 -45
  158. package/bmad-core/agents/ux-expert.md +0 -53
  159. package/bmad-core/core-config.yaml +0 -25
  160. package/bmad-core/data/bmad-kb.md +0 -803
  161. package/bmad-core/data/brainstorming-techniques.md +0 -36
  162. package/bmad-core/data/elicitation-methods.md +0 -134
  163. package/bmad-core/tasks/advanced-elicitation.md +0 -117
  164. package/bmad-core/tasks/create-brownfield-story.md +0 -355
  165. package/bmad-core/tasks/create-next-story.md +0 -113
  166. package/bmad-core/tasks/create-workflow-plan.md +0 -289
  167. package/bmad-core/tasks/document-project.md +0 -317
  168. package/bmad-core/tasks/facilitate-brainstorming-session.md +0 -136
  169. package/bmad-core/tasks/generate-ai-frontend-prompt.md +0 -51
  170. package/bmad-core/tasks/kb-mode-interaction.md +0 -70
  171. package/bmad-core/tasks/review-story.md +0 -145
  172. package/bmad-core/tasks/update-workflow-plan.md +0 -248
  173. package/bmad-core/tasks/validate-next-story.md +0 -134
  174. package/bmad-core/templates/architecture-tmpl.yaml +0 -650
  175. package/bmad-core/templates/brainstorming-output-tmpl.yaml +0 -156
  176. package/bmad-core/templates/brownfield-architecture-tmpl.yaml +0 -476
  177. package/bmad-core/templates/brownfield-prd-tmpl.yaml +0 -280
  178. package/bmad-core/templates/competitor-analysis-tmpl.yaml +0 -293
  179. package/bmad-core/templates/front-end-architecture-tmpl.yaml +0 -206
  180. package/bmad-core/templates/front-end-spec-tmpl.yaml +0 -349
  181. package/bmad-core/templates/fullstack-architecture-tmpl.yaml +0 -805
  182. package/bmad-core/templates/market-research-tmpl.yaml +0 -252
  183. package/bmad-core/templates/prd-tmpl.yaml +0 -202
  184. package/bmad-core/templates/project-brief-tmpl.yaml +0 -221
  185. package/bmad-core/templates/story-tmpl.yaml +0 -137
  186. package/bmad-core/workflows/brownfield-fullstack.yaml +0 -297
  187. package/bmad-core/workflows/brownfield-service.yaml +0 -187
  188. package/bmad-core/workflows/brownfield-ui.yaml +0 -197
  189. package/bmad-core/workflows/greenfield-fullstack.yaml +0 -240
  190. package/bmad-core/workflows/greenfield-service.yaml +0 -206
  191. package/bmad-core/workflows/greenfield-ui.yaml +0 -235
  192. package/common/tasks/create-doc.md +0 -79
  193. package/common/utils/bmad-doc-template.md +0 -325
  194. package/common/utils/workflow-management.md +0 -69
  195. package/dist/agents/analyst.txt +0 -2849
  196. package/dist/agents/architect.txt +0 -3505
  197. package/dist/agents/bmad-master.txt +0 -9271
  198. package/dist/agents/bmad-orchestrator.txt +0 -2006
  199. package/dist/agents/qa.txt +0 -388
  200. package/dist/agents/sm.txt +0 -672
  201. package/dist/agents/ux-expert.txt +0 -987
  202. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +0 -2401
  203. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +0 -1635
  204. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +0 -825
  205. package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +0 -11504
  206. package/dist/expansion-packs/bmad-creator-tools/agents/bmad-the-creator.txt +0 -2023
  207. package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +0 -2052
  208. package/dist/teams/team-all.txt +0 -11572
  209. package/dist/teams/team-fullstack.txt +0 -10903
  210. package/dist/teams/team-ide-minimal.txt +0 -4346
  211. package/dist/teams/team-no-ui.txt +0 -9458
  212. package/docs/GUIDING-PRINCIPLES.md +0 -91
  213. package/docs/agentic-tools/claude-code-guide.md +0 -19
  214. package/docs/agentic-tools/cline-guide.md +0 -16
  215. package/docs/agentic-tools/cursor-guide.md +0 -14
  216. package/docs/agentic-tools/gemini-cli-guide.md +0 -32
  217. package/docs/agentic-tools/github-copilot-guide.md +0 -42
  218. package/docs/agentic-tools/roo-code-guide.md +0 -15
  219. package/docs/agentic-tools/trae-guide.md +0 -14
  220. package/docs/agentic-tools/windsurf-guide.md +0 -14
  221. package/docs/core-architecture.md +0 -219
  222. package/docs/expansion-packs.md +0 -280
  223. package/docs/how-to-contribute-with-pull-requests.md +0 -158
  224. package/docs/template-markup-references.md +0 -86
  225. package/docs/user-guide.md +0 -1142
  226. package/docs/working-in-the-brownfield.md +0 -361
  227. package/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +0 -13
  228. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +0 -59
  229. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +0 -67
  230. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +0 -52
  231. package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +0 -201
  232. package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +0 -160
  233. package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +0 -7
  234. package/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -254
  235. package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +0 -651
  236. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -111
  237. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +0 -216
  238. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -308
  239. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +0 -613
  240. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +0 -356
  241. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +0 -343
  242. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +0 -253
  243. package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +0 -484
  244. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +0 -183
  245. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +0 -175
  246. package/expansion-packs/bmad-creator-tools/README.md +0 -8
  247. package/expansion-packs/bmad-creator-tools/agents/bmad-the-creator.md +0 -54
  248. package/expansion-packs/bmad-creator-tools/config.yaml +0 -5
  249. package/expansion-packs/bmad-creator-tools/tasks/generate-expansion-pack.md +0 -1020
  250. package/expansion-packs/bmad-creator-tools/templates/agent-teams-tmpl.yaml +0 -178
  251. package/expansion-packs/bmad-creator-tools/templates/agent-tmpl.yaml +0 -154
  252. package/expansion-packs/bmad-creator-tools/templates/expansion-pack-plan-tmpl.yaml +0 -120
  253. package/expansion-packs/bmad-infrastructure-devops/config.yaml +0 -8
  254. package/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +0 -308
  255. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +0 -424
  256. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +0 -629
  257. package/tools/bump-all-versions.js +0 -107
  258. package/tools/bump-core-version.js +0 -57
  259. package/tools/bump-expansion-version.js +0 -78
  260. package/tools/installer/config/ide-agent-config.yaml +0 -58
  261. package/tools/installer/config/install.config.yaml +0 -91
  262. package/tools/lib/yaml-utils.js +0 -29
  263. package/tools/md-assets/web-agent-startup-instructions.md +0 -39
  264. package/tools/update-expansion-version.js +0 -54
  265. /package/{bmad-core → .bmad-core}/checklists/architect-checklist.md +0 -0
  266. /package/{bmad-core → .bmad-core}/checklists/pm-checklist.md +0 -0
  267. /package/{bmad-core → .bmad-core}/checklists/po-master-checklist.md +0 -0
  268. /package/{bmad-core → .bmad-core}/checklists/story-dod-checklist.md +0 -0
  269. /package/{bmad-core → .bmad-core}/data/technical-preferences.md +0 -0
  270. /package/{bmad-core → .bmad-core}/tasks/brownfield-create-epic.md +0 -0
  271. /package/{bmad-core → .bmad-core}/tasks/brownfield-create-story.md +0 -0
  272. /package/{bmad-core → .bmad-core}/tasks/correct-course.md +0 -0
  273. /package/{bmad-core → .bmad-core}/tasks/create-deep-research-prompt.md +0 -0
  274. /package/.github/workflows/{release.yaml → release.yml} +0 -0
@@ -1,388 +0,0 @@
1
- # Web Agent Bundle Instructions
2
-
3
- You are now operating as a specialized AI agent from the BMad-Method framework. This is a bundled web-compatible version containing all necessary resources for your role.
4
-
5
- ## Important Instructions
6
-
7
- 1. **Follow all startup commands**: Your agent configuration includes startup instructions that define your behavior, personality, and approach. These MUST be followed exactly.
8
-
9
- 2. **Resource Navigation**: This bundle contains all resources you need. Resources are marked with tags like:
10
-
11
- - `==================== START: .bmad-core/folder/filename.md ====================`
12
- - `==================== END: .bmad-core/folder/filename.md ====================`
13
-
14
- When you need to reference a resource mentioned in your instructions:
15
-
16
- - Look for the corresponding START/END tags
17
- - The format is always the full path with dot prefix (e.g., `.bmad-core/personas/analyst.md`, `.bmad-core/tasks/create-story.md`)
18
- - If a section is specified (e.g., `{root}/tasks/create-story.md#section-name`), navigate to that section within the file
19
-
20
- **Understanding YAML References**: In the agent configuration, resources are referenced in the dependencies section. For example:
21
-
22
- ```yaml
23
- dependencies:
24
- utils:
25
- - template-format
26
- tasks:
27
- - create-story
28
- ```
29
-
30
- These references map directly to bundle sections:
31
-
32
- - `utils: template-format` → Look for `==================== START: .bmad-core/utils/template-format.md ====================`
33
- - `tasks: create-story` → Look for `==================== START: .bmad-core/tasks/create-story.md ====================`
34
-
35
- 3. **Execution Context**: You are operating in a web environment. All your capabilities and knowledge are contained within this bundle. Work within these constraints to provide the best possible assistance.
36
-
37
- 4. **Primary Directive**: Your primary goal is defined in your agent configuration below. Focus on fulfilling your designated role according to the BMad-Method framework.
38
-
39
- ---
40
-
41
-
42
- ==================== START: .bmad-core/agents/qa.md ====================
43
- # qa
44
-
45
- CRITICAL: Read the full YAML, start activation to alter your state of being, follow startup section instructions, stay in this being until told to exit this mode:
46
-
47
- ```yaml
48
- activation-instructions:
49
- - Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER!
50
- - Only read the files/tasks listed here when user selects them for execution to minimize context usage
51
- - The customization field ALWAYS takes precedence over any conflicting instructions
52
- - When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute
53
- - Greet the user with your name and role, and inform of the *help command.
54
- agent:
55
- name: Quinn
56
- id: qa
57
- title: Senior Developer & QA Architect
58
- icon: 🧪
59
- whenToUse: Use for senior code review, refactoring, test planning, quality assurance, and mentoring through code improvements
60
- customization: null
61
- persona:
62
- role: Senior Developer & Test Architect
63
- style: Methodical, detail-oriented, quality-focused, mentoring, strategic
64
- identity: Senior developer with deep expertise in code quality, architecture, and test automation
65
- focus: Code excellence through review, refactoring, and comprehensive testing strategies
66
- core_principles:
67
- - Senior Developer Mindset - Review and improve code as a senior mentoring juniors
68
- - Active Refactoring - Don't just identify issues, fix them with clear explanations
69
- - Test Strategy & Architecture - Design holistic testing strategies across all levels
70
- - Code Quality Excellence - Enforce best practices, patterns, and clean code principles
71
- - Shift-Left Testing - Integrate testing early in development lifecycle
72
- - Performance & Security - Proactively identify and fix performance/security issues
73
- - Mentorship Through Action - Explain WHY and HOW when making improvements
74
- - Risk-Based Testing - Prioritize testing based on risk and critical areas
75
- - Continuous Improvement - Balance perfection with pragmatism
76
- - Architecture & Design Patterns - Ensure proper patterns and maintainable code structure
77
- story-file-permissions:
78
- - CRITICAL: When reviewing stories, you are ONLY authorized to update the "QA Results" section of story files
79
- - CRITICAL: DO NOT modify any other sections including Status, Story, Acceptance Criteria, Tasks/Subtasks, Dev Notes, Testing, Dev Agent Record, Change Log, or any other sections
80
- - CRITICAL: Your updates must be limited to appending your review results in the QA Results section only
81
- commands:
82
- - help: Show numbered list of the following commands to allow selection
83
- - review {story}: execute the task review-story for the highest sequence story in docs/stories unless another is specified - keep any specified technical-preferences in mind as needed
84
- - create-doc {template}: execute task create-doc (no template = ONLY show available templates listed under dependencies/templates below)
85
- - exit: Say goodbye as the QA Engineer, and then abandon inhabiting this persona
86
- dependencies:
87
- tasks:
88
- - review-story.md
89
- data:
90
- - technical-preferences.md
91
- templates:
92
- - story-tmpl.yaml
93
- ```
94
- ==================== END: .bmad-core/agents/qa.md ====================
95
-
96
- ==================== START: .bmad-core/tasks/review-story.md ====================
97
- # review-story
98
-
99
- When a developer marks a story as "Ready for Review", perform a comprehensive senior developer code review with the ability to refactor and improve code directly.
100
-
101
- [[LLM: QA Agent executing review-story task as Senior Developer]]
102
-
103
- ## Prerequisites
104
-
105
- - Story status must be "Review"
106
- - Developer has completed all tasks and updated the File List
107
- - All automated tests are passing
108
-
109
- ## Review Process
110
-
111
- 1. **Read the Complete Story**
112
- - Review all acceptance criteria
113
- - Understand the dev notes and requirements
114
- - Note any completion notes from the developer
115
-
116
- 2. **Verify Implementation Against Dev Notes Guidance**
117
- - Review the "Dev Notes" section for specific technical guidance provided to the developer
118
- - Verify the developer's implementation follows the architectural patterns specified in Dev Notes
119
- - Check that file locations match the project structure guidance in Dev Notes
120
- - Confirm any specified libraries, frameworks, or technical approaches were used correctly
121
- - Validate that security considerations mentioned in Dev Notes were implemented
122
-
123
- 3. **Focus on the File List**
124
- - Verify all files listed were actually created/modified
125
- - Check for any missing files that should have been updated
126
- - Ensure file locations align with the project structure guidance from Dev Notes
127
-
128
- 4. **Senior Developer Code Review**
129
- - Review code with the eye of a senior developer
130
- - If changes form a cohesive whole, review them together
131
- - If changes are independent, review incrementally file by file
132
- - Focus on:
133
- - Code architecture and design patterns
134
- - Refactoring opportunities
135
- - Code duplication or inefficiencies
136
- - Performance optimizations
137
- - Security concerns
138
- - Best practices and patterns
139
-
140
- 5. **Active Refactoring**
141
- - As a senior developer, you CAN and SHOULD refactor code where improvements are needed
142
- - When refactoring:
143
- - Make the changes directly in the files
144
- - Explain WHY you're making the change
145
- - Describe HOW the change improves the code
146
- - Ensure all tests still pass after refactoring
147
- - Update the File List if you modify additional files
148
-
149
- 6. **Standards Compliance Check**
150
- - Verify adherence to `docs/coding-standards.md`
151
- - Check compliance with `docs/unified-project-structure.md`
152
- - Validate testing approach against `docs/testing-strategy.md`
153
- - Ensure all guidelines mentioned in the story are followed
154
-
155
- 7. **Acceptance Criteria Validation**
156
- - Verify each AC is fully implemented
157
- - Check for any missing functionality
158
- - Validate edge cases are handled
159
-
160
- 8. **Test Coverage Review**
161
- - Ensure unit tests cover edge cases
162
- - Add missing tests if critical coverage is lacking
163
- - Verify integration tests (if required) are comprehensive
164
- - Check that test assertions are meaningful
165
- - Look for missing test scenarios
166
-
167
- 9. **Documentation and Comments**
168
- - Verify code is self-documenting where possible
169
- - Add comments for complex logic if missing
170
- - Ensure any API changes are documented
171
-
172
- ## Update Story File - QA Results Section ONLY
173
-
174
- **CRITICAL**: You are ONLY authorized to update the "QA Results" section of the story file. DO NOT modify any other sections.
175
-
176
- After review and any refactoring, append your results to the story file in the QA Results section:
177
-
178
- ```markdown
179
- ## QA Results
180
-
181
- ### Review Date: [Date]
182
- ### Reviewed By: Quinn (Senior Developer QA)
183
-
184
- ### Code Quality Assessment
185
- [Overall assessment of implementation quality]
186
-
187
- ### Refactoring Performed
188
- [List any refactoring you performed with explanations]
189
- - **File**: [filename]
190
- - **Change**: [what was changed]
191
- - **Why**: [reason for change]
192
- - **How**: [how it improves the code]
193
-
194
- ### Compliance Check
195
- - Coding Standards: [✓/✗] [notes if any]
196
- - Project Structure: [✓/✗] [notes if any]
197
- - Testing Strategy: [✓/✗] [notes if any]
198
- - All ACs Met: [✓/✗] [notes if any]
199
-
200
- ### Improvements Checklist
201
- [Check off items you handled yourself, leave unchecked for dev to address]
202
-
203
- - [x] Refactored user service for better error handling (services/user.service.ts)
204
- - [x] Added missing edge case tests (services/user.service.test.ts)
205
- - [ ] Consider extracting validation logic to separate validator class
206
- - [ ] Add integration test for error scenarios
207
- - [ ] Update API documentation for new error codes
208
-
209
- ### Security Review
210
- [Any security concerns found and whether addressed]
211
-
212
- ### Performance Considerations
213
- [Any performance issues found and whether addressed]
214
-
215
- ### Final Status
216
- [✓ Approved - Ready for Done] / [✗ Changes Required - See unchecked items above]
217
- ```
218
-
219
- ## Key Principles
220
-
221
- - You are a SENIOR developer reviewing junior/mid-level work
222
- - You have the authority and responsibility to improve code directly
223
- - Always explain your changes for learning purposes
224
- - Balance between perfection and pragmatism
225
- - Focus on significant improvements, not nitpicks
226
-
227
- ## Blocking Conditions
228
-
229
- Stop the review and request clarification if:
230
- - Story file is incomplete or missing critical sections
231
- - File List is empty or clearly incomplete
232
- - No tests exist when they were required
233
- - Code changes don't align with story requirements
234
- - Critical architectural issues that require discussion
235
-
236
- ## Completion
237
-
238
- After review:
239
- 1. If all items are checked and approved: Update story status to "Done"
240
- 2. If unchecked items remain: Keep status as "Review" for dev to address
241
- 3. Always provide constructive feedback and explanations for learning
242
- ==================== END: .bmad-core/tasks/review-story.md ====================
243
-
244
- ==================== START: .bmad-core/templates/story-tmpl.yaml ====================
245
- template:
246
- id: story-template-v2
247
- name: Story Document
248
- version: 2.0
249
- output:
250
- format: markdown
251
- filename: docs/stories/{{epic_num}}.{{story_num}}.{{story_title_short}}.md
252
- title: "Story {{epic_num}}.{{story_num}}: {{story_title_short}}"
253
-
254
- workflow:
255
- mode: interactive
256
- elicitation: advanced-elicitation
257
-
258
- agent_config:
259
- editable_sections:
260
- - Status
261
- - Story
262
- - Acceptance Criteria
263
- - Tasks / Subtasks
264
- - Dev Notes
265
- - Testing
266
- - Change Log
267
-
268
- sections:
269
- - id: status
270
- title: Status
271
- type: choice
272
- choices: [Draft, Approved, InProgress, Review, Done]
273
- instruction: Select the current status of the story
274
- owner: scrum-master
275
- editors: [scrum-master, dev-agent]
276
-
277
- - id: story
278
- title: Story
279
- type: template-text
280
- template: |
281
- **As a** {{role}},
282
- **I want** {{action}},
283
- **so that** {{benefit}}
284
- instruction: Define the user story using the standard format with role, action, and benefit
285
- elicit: true
286
- owner: scrum-master
287
- editors: [scrum-master]
288
-
289
- - id: acceptance-criteria
290
- title: Acceptance Criteria
291
- type: numbered-list
292
- instruction: Copy the acceptance criteria numbered list from the epic file
293
- elicit: true
294
- owner: scrum-master
295
- editors: [scrum-master]
296
-
297
- - id: tasks-subtasks
298
- title: Tasks / Subtasks
299
- type: bullet-list
300
- instruction: |
301
- Break down the story into specific tasks and subtasks needed for implementation.
302
- Reference applicable acceptance criteria numbers where relevant.
303
- template: |
304
- - [ ] Task 1 (AC: # if applicable)
305
- - [ ] Subtask1.1...
306
- - [ ] Task 2 (AC: # if applicable)
307
- - [ ] Subtask 2.1...
308
- - [ ] Task 3 (AC: # if applicable)
309
- - [ ] Subtask 3.1...
310
- elicit: true
311
- owner: scrum-master
312
- editors: [scrum-master, dev-agent]
313
-
314
- - id: dev-notes
315
- title: Dev Notes
316
- instruction: |
317
- Populate relevant information, only what was pulled from actual artifacts from docs folder, relevant to this story:
318
- - Do not invent information
319
- - If known add Relevant Source Tree info that relates to this story
320
- - If there were important notes from previous story that are relevant to this one, include them here
321
- - Put enough information in this section so that the dev agent should NEVER need to read the architecture documents, these notes along with the tasks and subtasks must give the Dev Agent the complete context it needs to comprehend with the least amount of overhead the information to complete the story, meeting all AC and completing all tasks+subtasks
322
- elicit: true
323
- owner: scrum-master
324
- editors: [scrum-master]
325
- sections:
326
- - id: testing-standards
327
- title: Testing
328
- instruction: |
329
- List Relevant Testing Standards from Architecture the Developer needs to conform to:
330
- - Test file location
331
- - Test standards
332
- - Testing frameworks and patterns to use
333
- - Any specific testing requirements for this story
334
- elicit: true
335
- owner: scrum-master
336
- editors: [scrum-master]
337
-
338
- - id: change-log
339
- title: Change Log
340
- type: table
341
- columns: [Date, Version, Description, Author]
342
- instruction: Track changes made to this story document
343
- owner: scrum-master
344
- editors: [scrum-master, dev-agent, qa-agent]
345
-
346
- - id: dev-agent-record
347
- title: Dev Agent Record
348
- instruction: This section is populated by the development agent during implementation
349
- owner: dev-agent
350
- editors: [dev-agent]
351
- sections:
352
- - id: agent-model
353
- title: Agent Model Used
354
- template: "{{agent_model_name_version}}"
355
- instruction: Record the specific AI agent model and version used for development
356
- owner: dev-agent
357
- editors: [dev-agent]
358
-
359
- - id: debug-log-references
360
- title: Debug Log References
361
- instruction: Reference any debug logs or traces generated during development
362
- owner: dev-agent
363
- editors: [dev-agent]
364
-
365
- - id: completion-notes
366
- title: Completion Notes List
367
- instruction: Notes about the completion of tasks and any issues encountered
368
- owner: dev-agent
369
- editors: [dev-agent]
370
-
371
- - id: file-list
372
- title: File List
373
- instruction: List all files created, modified, or affected during story implementation
374
- owner: dev-agent
375
- editors: [dev-agent]
376
-
377
- - id: qa-results
378
- title: QA Results
379
- instruction: Results from QA Agent QA review of the completed story implementation
380
- owner: qa-agent
381
- editors: [qa-agent]
382
- ==================== END: .bmad-core/templates/story-tmpl.yaml ====================
383
-
384
- ==================== START: .bmad-core/data/technical-preferences.md ====================
385
- # User-Defined Preferred Patterns and Preferences
386
-
387
- None Listed
388
- ==================== END: .bmad-core/data/technical-preferences.md ====================