bmad-method 4.27.5 → 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 -30
  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 -25
  10. package/{bmad-core → .bmad-core}/agents/po.md +24 -28
  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.yaml → .bmad-core/workflows/greenfield-fullstack.yml} +77 -140
  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 -452
  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 -15
  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 +5 -123
  132. package/tools/installer/lib/ide-setup.js +189 -545
  133. package/tools/installer/lib/installer.js +55 -1136
  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 -63
  153. package/bmad-core/agents/bmad-master.md +0 -110
  154. package/bmad-core/agents/bmad-orchestrator.md +0 -140
  155. package/bmad-core/agents/dev.md +0 -57
  156. package/bmad-core/agents/qa.md +0 -55
  157. package/bmad-core/agents/sm.md +0 -46
  158. package/bmad-core/agents/ux-expert.md +0 -54
  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 -114
  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/utils/plan-management.md +0 -219
  187. package/bmad-core/workflows/brownfield-fullstack.yaml +0 -297
  188. package/bmad-core/workflows/brownfield-service.yaml +0 -187
  189. package/bmad-core/workflows/brownfield-ui.yaml +0 -197
  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 -9588
  198. package/dist/agents/bmad-orchestrator.txt +0 -2232
  199. package/dist/agents/qa.txt +0 -388
  200. package/dist/agents/sm.txt +0 -673
  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 -11730
  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 -11799
  209. package/dist/teams/team-fullstack.txt +0 -11129
  210. package/dist/teams/team-ide-minimal.txt +0 -4573
  211. package/dist/teams/team-no-ui.txt +0 -9684
  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 -60
  229. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +0 -68
  230. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +0 -53
  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 -55
  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,317 +0,0 @@
1
- # Document an Existing Project
2
-
3
- ## Purpose
4
-
5
- Generate comprehensive documentation for existing projects optimized for AI development agents. This task creates structured reference materials that enable AI agents to understand project context, conventions, and patterns for effective contribution to any codebase.
6
-
7
- ## Task Instructions
8
-
9
- ### 1. Initial Project Analysis
10
-
11
- [[LLM: First, check if a PRD or requirements document exists in context. If yes, use it to focus your documentation efforts on relevant areas only.
12
-
13
- **IF PRD EXISTS**:
14
-
15
- - Review the PRD to understand what enhancement/feature is planned
16
- - Identify which modules, services, or areas will be affected
17
- - Focus documentation ONLY on these relevant areas
18
- - Skip unrelated parts of the codebase to keep docs lean
19
-
20
- **IF NO PRD EXISTS**:
21
- Ask the user:
22
-
23
- "I notice you haven't provided a PRD or requirements document. To create more focused and useful documentation, I recommend one of these options:
24
-
25
- 1. **Create a PRD first** - Would you like me to help create a brownfield PRD before documenting? This helps focus documentation on relevant areas.
26
-
27
- 2. **Provide existing requirements** - Do you have a requirements document, epic, or feature description you can share?
28
-
29
- 3. **Describe the focus** - Can you briefly describe what enhancement or feature you're planning? For example:
30
- - 'Adding payment processing to the user service'
31
- - 'Refactoring the authentication module'
32
- - 'Integrating with a new third-party API'
33
-
34
- 4. **Document everything** - Or should I proceed with comprehensive documentation of the entire codebase? (Note: This may create excessive documentation for large projects)
35
-
36
- Please let me know your preference, or I can proceed with full documentation if you prefer."
37
-
38
- Based on their response:
39
-
40
- - If they choose option 1-3: Use that context to focus documentation
41
- - If they choose option 4 or decline: Proceed with comprehensive analysis below
42
-
43
- Begin by conducting analysis of the existing project. Use available tools to:
44
-
45
- 1. **Project Structure Discovery**: Examine the root directory structure, identify main folders, and understand the overall organization
46
- 2. **Technology Stack Identification**: Look for package.json, requirements.txt, Cargo.toml, pom.xml, etc. to identify languages, frameworks, and dependencies
47
- 3. **Build System Analysis**: Find build scripts, CI/CD configurations, and development commands
48
- 4. **Existing Documentation Review**: Check for README files, docs folders, and any existing documentation
49
- 5. **Code Pattern Analysis**: Sample key files to understand coding patterns, naming conventions, and architectural approaches
50
-
51
- Ask the user these elicitation questions to better understand their needs:
52
-
53
- - What is the primary purpose of this project?
54
- - Are there any specific areas of the codebase that are particularly complex or important for agents to understand?
55
- - What types of tasks do you expect AI agents to perform on this project? (e.g., bug fixes, feature additions, refactoring, testing)
56
- - Are there any existing documentation standards or formats you prefer?
57
- - What level of technical detail should the documentation target? (junior developers, senior developers, mixed team)
58
- - Is there a specific feature or enhancement you're planning? (This helps focus documentation)
59
- ]]
60
-
61
- ### 2. Deep Codebase Analysis
62
-
63
- [[LLM: Before generating documentation, conduct extensive analysis of the existing codebase:
64
-
65
- 1. **Explore Key Areas**:
66
- - Entry points (main files, index files, app initializers)
67
- - Configuration files and environment setup
68
- - Package dependencies and versions
69
- - Build and deployment configurations
70
- - Test suites and coverage
71
-
72
- 2. **Ask Clarifying Questions**:
73
- - "I see you're using [technology X]. Are there any custom patterns or conventions I should document?"
74
- - "What are the most critical/complex parts of this system that developers struggle with?"
75
- - "Are there any undocumented 'tribal knowledge' areas I should capture?"
76
- - "What technical debt or known issues should I document?"
77
- - "Which parts of the codebase change most frequently?"
78
-
79
- 3. **Map the Reality**:
80
- - Identify ACTUAL patterns used (not theoretical best practices)
81
- - Find where key business logic lives
82
- - Locate integration points and external dependencies
83
- - Document workarounds and technical debt
84
- - Note areas that differ from standard patterns
85
-
86
- **IF PRD PROVIDED**: Also analyze what would need to change for the enhancement]]
87
-
88
- ### 3. Core Documentation Generation
89
-
90
- [[LLM: Generate a comprehensive BROWNFIELD architecture document that reflects the ACTUAL state of the codebase.
91
-
92
- **CRITICAL**: This is NOT an aspirational architecture document. Document what EXISTS, including:
93
- - Technical debt and workarounds
94
- - Inconsistent patterns between different parts
95
- - Legacy code that can't be changed
96
- - Integration constraints
97
- - Performance bottlenecks
98
-
99
- **Document Structure**:
100
-
101
- # [Project Name] Brownfield Architecture Document
102
-
103
- ## Introduction
104
- This document captures the CURRENT STATE of the [Project Name] codebase, including technical debt, workarounds, and real-world patterns. It serves as a reference for AI agents working on enhancements.
105
-
106
- ### Document Scope
107
- [If PRD provided: "Focused on areas relevant to: {enhancement description}"]
108
- [If no PRD: "Comprehensive documentation of entire system"]
109
-
110
- ### Change Log
111
- | Date | Version | Description | Author |
112
- |------|---------|-------------|--------|
113
- | [Date] | 1.0 | Initial brownfield analysis | [Analyst] |
114
-
115
- ## Quick Reference - Key Files and Entry Points
116
-
117
- ### Critical Files for Understanding the System
118
- - **Main Entry**: `src/index.js` (or actual entry point)
119
- - **Configuration**: `config/app.config.js`, `.env.example`
120
- - **Core Business Logic**: `src/services/`, `src/domain/`
121
- - **API Definitions**: `src/routes/` or link to OpenAPI spec
122
- - **Database Models**: `src/models/` or link to schema files
123
- - **Key Algorithms**: [List specific files with complex logic]
124
-
125
- ### If PRD Provided - Enhancement Impact Areas
126
- [Highlight which files/modules will be affected by the planned enhancement]
127
-
128
- ## High Level Architecture
129
-
130
- ### Technical Summary
131
- [Real assessment of architecture - mention if it's well-structured or has issues]
132
-
133
- ### Actual Tech Stack (from package.json/requirements.txt)
134
- | Category | Technology | Version | Notes |
135
- |----------|------------|---------|--------|
136
- | Runtime | Node.js | 16.x | [Any constraints] |
137
- | Framework | Express | 4.18.2 | [Custom middleware?] |
138
- | Database | PostgreSQL | 13 | [Connection pooling setup] |
139
- | [etc...] |
140
-
141
- ### Repository Structure Reality Check
142
- - Type: [Monorepo/Polyrepo/Hybrid]
143
- - Package Manager: [npm/yarn/pnpm]
144
- - Notable: [Any unusual structure decisions]
145
-
146
- ## Source Tree and Module Organization
147
-
148
- ### Project Structure (Actual)
149
- ```
150
- project-root/
151
- ├── src/
152
- │ ├── controllers/ # HTTP request handlers
153
- │ ├── services/ # Business logic (NOTE: inconsistent patterns between user and payment services)
154
- │ ├── models/ # Database models (Sequelize)
155
- │ ├── utils/ # Mixed bag - needs refactoring
156
- │ └── legacy/ # DO NOT MODIFY - old payment system still in use
157
- ├── tests/ # Jest tests (60% coverage)
158
- ├── scripts/ # Build and deployment scripts
159
- └── config/ # Environment configs
160
- ```
161
-
162
- ### Key Modules and Their Purpose
163
- - **User Management**: `src/services/userService.js` - Handles all user operations
164
- - **Authentication**: `src/middleware/auth.js` - JWT-based, custom implementation
165
- - **Payment Processing**: `src/legacy/payment.js` - CRITICAL: Do not refactor, tightly coupled
166
- - **[List other key modules with their actual files]**
167
-
168
- ## Data Models and APIs
169
-
170
- ### Data Models
171
- Instead of duplicating, reference actual model files:
172
- - **User Model**: See `src/models/User.js`
173
- - **Order Model**: See `src/models/Order.js`
174
- - **Related Types**: TypeScript definitions in `src/types/`
175
-
176
- ### API Specifications
177
- - **OpenAPI Spec**: `docs/api/openapi.yaml` (if exists)
178
- - **Postman Collection**: `docs/api/postman-collection.json`
179
- - **Manual Endpoints**: [List any undocumented endpoints discovered]
180
-
181
- ## Technical Debt and Known Issues
182
-
183
- ### Critical Technical Debt
184
- 1. **Payment Service**: Legacy code in `src/legacy/payment.js` - tightly coupled, no tests
185
- 2. **User Service**: Different pattern than other services, uses callbacks instead of promises
186
- 3. **Database Migrations**: Manually tracked, no proper migration tool
187
- 4. **[Other significant debt]**
188
-
189
- ### Workarounds and Gotchas
190
- - **Environment Variables**: Must set `NODE_ENV=production` even for staging (historical reason)
191
- - **Database Connections**: Connection pool hardcoded to 10, changing breaks payment service
192
- - **[Other workarounds developers need to know]**
193
-
194
- ## Integration Points and External Dependencies
195
-
196
- ### External Services
197
- | Service | Purpose | Integration Type | Key Files |
198
- |---------|---------|------------------|-----------|
199
- | Stripe | Payments | REST API | `src/integrations/stripe/` |
200
- | SendGrid | Emails | SDK | `src/services/emailService.js` |
201
- | [etc...] |
202
-
203
- ### Internal Integration Points
204
- - **Frontend Communication**: REST API on port 3000, expects specific headers
205
- - **Background Jobs**: Redis queue, see `src/workers/`
206
- - **[Other integrations]**
207
-
208
- ## Development and Deployment
209
-
210
- ### Local Development Setup
211
- 1. Actual steps that work (not ideal steps)
212
- 2. Known issues with setup
213
- 3. Required environment variables (see `.env.example`)
214
-
215
- ### Build and Deployment Process
216
- - **Build Command**: `npm run build` (webpack config in `webpack.config.js`)
217
- - **Deployment**: Manual deployment via `scripts/deploy.sh`
218
- - **Environments**: Dev, Staging, Prod (see `config/environments/`)
219
-
220
- ## Testing Reality
221
-
222
- ### Current Test Coverage
223
- - Unit Tests: 60% coverage (Jest)
224
- - Integration Tests: Minimal, in `tests/integration/`
225
- - E2E Tests: None
226
- - Manual Testing: Primary QA method
227
-
228
- ### Running Tests
229
- ```bash
230
- npm test # Runs unit tests
231
- npm run test:integration # Runs integration tests (requires local DB)
232
- ```
233
-
234
- ## If Enhancement PRD Provided - Impact Analysis
235
-
236
- ### Files That Will Need Modification
237
- Based on the enhancement requirements, these files will be affected:
238
- - `src/services/userService.js` - Add new user fields
239
- - `src/models/User.js` - Update schema
240
- - `src/routes/userRoutes.js` - New endpoints
241
- - [etc...]
242
-
243
- ### New Files/Modules Needed
244
- - `src/services/newFeatureService.js` - New business logic
245
- - `src/models/NewFeature.js` - New data model
246
- - [etc...]
247
-
248
- ### Integration Considerations
249
- - Will need to integrate with existing auth middleware
250
- - Must follow existing response format in `src/utils/responseFormatter.js`
251
- - [Other integration points]
252
-
253
- ## Appendix - Useful Commands and Scripts
254
-
255
- ### Frequently Used Commands
256
- ```bash
257
- npm run dev # Start development server
258
- npm run build # Production build
259
- npm run migrate # Run database migrations
260
- npm run seed # Seed test data
261
- ```
262
-
263
- ### Debugging and Troubleshooting
264
- - **Logs**: Check `logs/app.log` for application logs
265
- - **Debug Mode**: Set `DEBUG=app:*` for verbose logging
266
- - **Common Issues**: See `docs/troubleshooting.md`]]
267
-
268
- ### 4. Document Delivery
269
-
270
- [[LLM: After generating the complete architecture document:
271
-
272
- 1. **In Web UI (Gemini, ChatGPT, Claude)**:
273
- - Present the entire document in one response (or multiple if too long)
274
- - Tell user to copy and save as `docs/brownfield-architecture.md` or `docs/project-architecture.md`
275
- - Mention it can be sharded later in IDE if needed
276
-
277
- 2. **In IDE Environment**:
278
- - Create the document as `docs/brownfield-architecture.md`
279
- - Inform user this single document contains all architectural information
280
- - Can be sharded later using PO agent if desired
281
-
282
- The document should be comprehensive enough that future agents can understand:
283
- - The actual state of the system (not idealized)
284
- - Where to find key files and logic
285
- - What technical debt exists
286
- - What constraints must be respected
287
- - If PRD provided: What needs to change for the enhancement]]
288
-
289
- ### 5. Quality Assurance
290
-
291
- [[LLM: Before finalizing the document:
292
-
293
- 1. **Accuracy Check**: Verify all technical details match the actual codebase
294
- 2. **Completeness Review**: Ensure all major system components are documented
295
- 3. **Focus Validation**: If user provided scope, verify relevant areas are emphasized
296
- 4. **Clarity Assessment**: Check that explanations are clear for AI agents
297
- 5. **Navigation**: Ensure document has clear section structure for easy reference
298
-
299
- Apply the advanced elicitation task after major sections to refine based on user feedback.]]
300
-
301
- ## Success Criteria
302
-
303
- - Single comprehensive brownfield architecture document created
304
- - Document reflects REALITY including technical debt and workarounds
305
- - Key files and modules are referenced with actual paths
306
- - Models/APIs reference source files rather than duplicating content
307
- - If PRD provided: Clear impact analysis showing what needs to change
308
- - Document enables AI agents to navigate and understand the actual codebase
309
- - Technical constraints and "gotchas" are clearly documented
310
-
311
- ## Notes
312
-
313
- - This task creates ONE document that captures the TRUE state of the system
314
- - References actual files rather than duplicating content when possible
315
- - Documents technical debt, workarounds, and constraints honestly
316
- - For brownfield projects with PRD: Provides clear enhancement impact analysis
317
- - The goal is PRACTICAL documentation for AI agents doing real work
@@ -1,136 +0,0 @@
1
- ---
2
- docOutputLocation: docs/brainstorming-session-results.md
3
- template: brainstorming-output-tmpl
4
- ---
5
-
6
- # Facilitate Brainstorming Session Task
7
-
8
- Facilitate interactive brainstorming sessions with users. Be creative and adaptive in applying techniques.
9
-
10
- ## Process
11
-
12
- ### Step 1: Session Setup
13
-
14
- Ask 4 context questions (don't preview what happens next):
15
-
16
- 1. What are we brainstorming about?
17
- 2. Any constraints or parameters?
18
- 3. Goal: broad exploration or focused ideation?
19
- 4. Do you want a structured document output to reference later? (Y/N)
20
-
21
- ### Step 2: Present Approach Options
22
-
23
- After getting answers to Step 1, present 4 approach options (numbered):
24
-
25
- 1. User selects specific techniques
26
- 2. Analyst recommends techniques based on context
27
- 3. Random technique selection for creative variety
28
- 4. Progressive technique flow (start broad, narrow down)
29
-
30
- ### Step 3: Execute Techniques Interactively
31
-
32
- **KEY PRINCIPLES:**
33
-
34
- - **FACILITATOR ROLE**: Guide user to generate their own ideas through questions, prompts, and examples
35
- - **CONTINUOUS ENGAGEMENT**: Keep user engaged with chosen technique until they want to switch or are satisfied
36
- - **CAPTURE OUTPUT**: If document output requested, capture all ideas generated in each technique section
37
-
38
- **Technique Selection:**
39
- If user selects Option 1, present numbered list of techniques from the brainstorming-techniques data file. User can select by number (e.g., "7" for Mind Mapping).
40
-
41
- **Technique Execution:**
42
-
43
- 1. Apply selected technique according to data file description
44
- 2. Keep engaging with technique until user indicates they want to:
45
- - Choose a different technique
46
- - Apply current ideas to a new technique
47
- - Move to convergent phase
48
- - End session
49
-
50
- **Output Capture (if requested):**
51
- For each technique used, capture:
52
-
53
- - Technique name and duration
54
- - Key ideas generated by user
55
- - Insights and patterns identified
56
- - User's reflections on the process
57
-
58
- ### Step 4: Session Flow
59
-
60
- 1. **Warm-up** (5-10 min) - Build creative confidence
61
- 2. **Divergent** (20-30 min) - Generate quantity over quality
62
- 3. **Convergent** (15-20 min) - Group and categorize ideas
63
- 4. **Synthesis** (10-15 min) - Refine and develop concepts
64
-
65
- ### Step 5: Document Output (if requested)
66
-
67
- Generate structured document with these sections:
68
-
69
- **Executive Summary**
70
-
71
- - Session topic and goals
72
- - Techniques used and duration
73
- - Total ideas generated
74
- - Key themes and patterns identified
75
-
76
- **Technique Sections** (for each technique used)
77
-
78
- - Technique name and description
79
- - Ideas generated (user's own words)
80
- - Insights discovered
81
- - Notable connections or patterns
82
-
83
- **Idea Categorization**
84
-
85
- - **Immediate Opportunities** - Ready to implement now
86
- - **Future Innovations** - Requires development/research
87
- - **Moonshots** - Ambitious, transformative concepts
88
- - **Insights & Learnings** - Key realizations from session
89
-
90
- **Action Planning**
91
-
92
- - Top 3 priority ideas with rationale
93
- - Next steps for each priority
94
- - Resources/research needed
95
- - Timeline considerations
96
-
97
- **Reflection & Follow-up**
98
-
99
- - What worked well in this session
100
- - Areas for further exploration
101
- - Recommended follow-up techniques
102
- - Questions that emerged for future sessions
103
-
104
- ## Key Principles
105
-
106
- - **YOU ARE A FACILITATOR**: Guide the user to brainstorm, don't brainstorm for them
107
- - **INTERACTIVE DIALOGUE**: Ask questions, wait for responses, build on their ideas
108
- - **ONE TECHNIQUE AT A TIME**: Don't mix multiple techniques in one response
109
- - **CONTINUOUS ENGAGEMENT**: Stay with one technique until user wants to switch
110
- - **DRAW IDEAS OUT**: Use prompts and examples to help them generate their own ideas
111
- - **REAL-TIME ADAPTATION**: Monitor engagement and adjust approach as needed
112
- - Maintain energy and momentum
113
- - Defer judgment during generation
114
- - Quantity leads to quality (aim for 100 ideas in 60 minutes)
115
- - Build on ideas collaboratively
116
- - Document everything if output requested
117
-
118
- ## Advanced Engagement Strategies
119
-
120
- **Energy Management**
121
-
122
- - Check engagement levels: "How are you feeling about this direction?"
123
- - Offer breaks or technique switches if energy flags
124
- - Use encouraging language and celebrate idea generation
125
-
126
- **Depth vs. Breadth**
127
-
128
- - Ask follow-up questions to deepen ideas: "Tell me more about that..."
129
- - Use "Yes, and..." to build on their ideas
130
- - Help them make connections: "How does this relate to your earlier idea about...?"
131
-
132
- **Transition Management**
133
-
134
- - Always ask before switching techniques: "Ready to try a different approach?"
135
- - Offer options: "Should we explore this idea deeper or generate more alternatives?"
136
- - Respect their process and timing
@@ -1,51 +0,0 @@
1
- # Create AI Frontend Prompt Task
2
-
3
- ## Purpose
4
-
5
- To generate a masterful, comprehensive, and optimized prompt that can be used with any AI-driven frontend development tool (e.g., Vercel v0, Lovable.ai, or similar) to scaffold or generate significant portions of a frontend application.
6
-
7
- ## Inputs
8
-
9
- - Completed UI/UX Specification (`front-end-spec`)
10
- - Completed Frontend Architecture Document (`front-end-architecture`) or a full stack combined architecture such as `architecture.md`
11
- - Main System Architecture Document (`architecture` - for API contracts and tech stack to give further context)
12
-
13
- ## Key Activities & Instructions
14
-
15
- ### 1. Core Prompting Principles
16
-
17
- Before generating the prompt, you must understand these core principles for interacting with a generative AI for code.
18
-
19
- - **Be Explicit and Detailed**: The AI cannot read your mind. Provide as much detail and context as possible. Vague requests lead to generic or incorrect outputs.
20
- - **Iterate, Don't Expect Perfection**: Generating an entire complex application in one go is rare. The most effective method is to prompt for one component or one section at a time, then build upon the results.
21
- - **Provide Context First**: Always start by providing the AI with the necessary context, such as the tech stack, existing code snippets, and overall project goals.
22
- - **Mobile-First Approach**: Frame all UI generation requests with a mobile-first design mindset. Describe the mobile layout first, then provide separate instructions for how it should adapt for tablet and desktop.
23
-
24
- ### 2. The Structured Prompting Framework
25
-
26
- To ensure the highest quality output, you MUST structure every prompt using the following four-part framework.
27
-
28
- 1. **High-Level Goal**: Start with a clear, concise summary of the overall objective. This orients the AI on the primary task.
29
- - _Example: "Create a responsive user registration form with client-side validation and API integration."_
30
- 2. **Detailed, Step-by-Step Instructions**: Provide a granular, numbered list of actions the AI should take. Break down complex tasks into smaller, sequential steps. This is the most critical part of the prompt.
31
- - _Example: "1. Create a new file named `RegistrationForm.js`. 2. Use React hooks for state management. 3. Add styled input fields for 'Name', 'Email', and 'Password'. 4. For the email field, ensure it is a valid email format. 5. On submission, call the API endpoint defined below."_
32
- 3. **Code Examples, Data Structures & Constraints**: Include any relevant snippets of existing code, data structures, or API contracts. This gives the AI concrete examples to work with. Crucially, you must also state what _not_ to do.
33
- - _Example: "Use this API endpoint: `POST /api/register`. The expected JSON payload is `{ "name": "string", "email": "string", "password": "string" }`. Do NOT include a 'confirm password' field. Use Tailwind CSS for all styling."_
34
- 4. **Define a Strict Scope**: Explicitly define the boundaries of the task. Tell the AI which files it can modify and, more importantly, which files to leave untouched to prevent unintended changes across the codebase.
35
- - _Example: "You should only create the `RegistrationForm.js` component and add it to the `pages/register.js` file. Do NOT alter the `Navbar.js` component or any other existing page or component."_
36
-
37
- ### 3. Assembling the Master Prompt
38
-
39
- You will now synthesize the inputs and the above principles into a final, comprehensive prompt.
40
-
41
- 1. **Gather Foundational Context**:
42
- - Start the prompt with a preamble describing the overall project purpose, the full tech stack (e.g., Next.js, TypeScript, Tailwind CSS), and the primary UI component library being used.
43
- 2. **Describe the Visuals**:
44
- - If the user has design files (Figma, etc.), instruct them to provide links or screenshots.
45
- - If not, describe the visual style: color palette, typography, spacing, and overall aesthetic (e.g., "minimalist", "corporate", "playful").
46
- 3. **Build the Prompt using the Structured Framework**:
47
- - Follow the four-part framework from Section 2 to build out the core request, whether it's for a single component or a full page.
48
- 4. **Present and Refine**:
49
- - Output the complete, generated prompt in a clear, copy-pasteable format (e.g., a large code block).
50
- - Explain the structure of the prompt and why certain information was included, referencing the principles above.
51
- - <important_note>Conclude by reminding the user that all AI-generated code will require careful human review, testing, and refinement to be considered production-ready.</important_note>
@@ -1,70 +0,0 @@
1
- # KB Mode Interaction Task
2
-
3
- ## Purpose
4
- Provide a user-friendly interface to the BMad knowledge base without overwhelming users with information upfront.
5
-
6
- ## Instructions
7
-
8
- When entering KB mode (*kb-mode), follow these steps:
9
-
10
- ### 1. Welcome and Guide
11
- Announce entering KB mode with a brief, friendly introduction:
12
-
13
- "I've entered KB mode and have access to the full BMad knowledge base. I can help you with detailed information about any aspect of BMad-Method."
14
-
15
- ### 2. Present Topic Areas
16
- Offer a concise list of main topic areas the user might want to explore:
17
-
18
- **What would you like to know more about?**
19
-
20
- 1. **Setup & Installation** - Getting started with BMad
21
- 2. **Workflows** - Choosing the right workflow for your project
22
- 3. **Web vs IDE** - When to use each environment
23
- 4. **Agents** - Understanding specialized agents and their roles
24
- 5. **Documents** - PRDs, Architecture, Stories, and more
25
- 6. **Agile Process** - How BMad implements Agile methodologies
26
- 7. **Configuration** - Customizing BMad for your needs
27
- 8. **Best Practices** - Tips for effective BMad usage
28
-
29
- Or ask me about anything else related to BMad-Method!
30
-
31
- ### 3. Respond Contextually
32
- - Wait for user's specific question or topic selection
33
- - Provide focused, relevant information from the knowledge base
34
- - Offer to dive deeper or explore related topics
35
- - Keep responses concise unless user asks for detailed explanations
36
-
37
- ### 4. Interactive Exploration
38
- - After answering, suggest related topics they might find helpful
39
- - Maintain conversational flow rather than data dumping
40
- - Use examples when appropriate
41
- - Reference specific documentation sections when relevant
42
-
43
- ### 5. Exit Gracefully
44
- When user is done or wants to exit KB mode:
45
- - Summarize key points discussed if helpful
46
- - Remind them they can return to KB mode anytime with *kb-mode
47
- - Suggest next steps based on what was discussed
48
-
49
- ## Example Interaction
50
-
51
- **User**: *kb-mode
52
-
53
- **Assistant**: I've entered KB mode and have access to the full BMad knowledge base. I can help you with detailed information about any aspect of BMad-Method.
54
-
55
- **What would you like to know more about?**
56
-
57
- 1. **Setup & Installation** - Getting started with BMad
58
- 2. **Workflows** - Choosing the right workflow for your project
59
- 3. **Web vs IDE** - When to use each environment
60
- 4. **Agents** - Understanding specialized agents and their roles
61
- 5. **Documents** - PRDs, Architecture, Stories, and more
62
- 6. **Agile Process** - How BMad implements Agile methodologies
63
- 7. **Configuration** - Customizing BMad for your needs
64
- 8. **Best Practices** - Tips for effective BMad usage
65
-
66
- Or ask me about anything else related to BMad-Method!
67
-
68
- **User**: Tell me about workflows
69
-
70
- **Assistant**: [Provides focused information about workflows from the KB, then offers to explore specific workflow types or related topics]