bmad-method 4.37.0-beta.5 → 4.37.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 (206) 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 +16 -0
  5. package/.github/workflows/release.yaml +60 -0
  6. package/.releaserc.json +21 -0
  7. package/.vscode/settings.json +44 -0
  8. package/CHANGELOG.md +707 -0
  9. package/CONTRIBUTING.md +209 -0
  10. package/LICENSE +21 -0
  11. package/README.md +214 -3
  12. package/bmad-core/agent-teams/team-all.yaml +14 -0
  13. package/bmad-core/agent-teams/team-fullstack.yaml +18 -0
  14. package/bmad-core/agent-teams/team-ide-minimal.yaml +10 -0
  15. package/bmad-core/agent-teams/team-no-ui.yaml +13 -0
  16. package/bmad-core/agents/analyst.md +81 -0
  17. package/bmad-core/agents/architect.md +83 -0
  18. package/bmad-core/agents/bmad-master.md +107 -0
  19. package/bmad-core/agents/bmad-orchestrator.md +149 -0
  20. package/bmad-core/agents/dev.md +75 -0
  21. package/bmad-core/agents/pm.md +81 -0
  22. package/bmad-core/agents/po.md +76 -0
  23. package/bmad-core/agents/qa.md +69 -0
  24. package/bmad-core/agents/sm.md +62 -0
  25. package/bmad-core/agents/ux-expert.md +66 -0
  26. package/bmad-core/checklists/architect-checklist.md +438 -0
  27. package/bmad-core/checklists/change-checklist.md +182 -0
  28. package/bmad-core/checklists/pm-checklist.md +370 -0
  29. package/bmad-core/checklists/po-master-checklist.md +432 -0
  30. package/bmad-core/checklists/story-dod-checklist.md +94 -0
  31. package/bmad-core/checklists/story-draft-checklist.md +153 -0
  32. package/bmad-core/core-config.yaml +20 -0
  33. package/bmad-core/data/bmad-kb.md +806 -0
  34. package/bmad-core/data/brainstorming-techniques.md +36 -0
  35. package/bmad-core/data/elicitation-methods.md +154 -0
  36. package/bmad-core/data/technical-preferences.md +3 -0
  37. package/bmad-core/tasks/advanced-elicitation.md +117 -0
  38. package/bmad-core/tasks/brownfield-create-epic.md +160 -0
  39. package/bmad-core/tasks/brownfield-create-story.md +147 -0
  40. package/bmad-core/tasks/correct-course.md +70 -0
  41. package/bmad-core/tasks/create-brownfield-story.md +312 -0
  42. package/bmad-core/tasks/create-deep-research-prompt.md +278 -0
  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/tasks/index-docs.md +173 -0
  48. package/bmad-core/tasks/kb-mode-interaction.md +75 -0
  49. package/bmad-core/tasks/review-story.md +154 -0
  50. package/bmad-core/tasks/shard-doc.md +185 -0
  51. package/bmad-core/tasks/validate-next-story.md +134 -0
  52. package/bmad-core/templates/architecture-tmpl.yaml +650 -0
  53. package/bmad-core/templates/brainstorming-output-tmpl.yaml +156 -0
  54. package/bmad-core/templates/brownfield-architecture-tmpl.yaml +476 -0
  55. package/bmad-core/templates/brownfield-prd-tmpl.yaml +280 -0
  56. package/bmad-core/templates/competitor-analysis-tmpl.yaml +293 -0
  57. package/bmad-core/templates/front-end-architecture-tmpl.yaml +206 -0
  58. package/bmad-core/templates/front-end-spec-tmpl.yaml +349 -0
  59. package/bmad-core/templates/fullstack-architecture-tmpl.yaml +805 -0
  60. package/bmad-core/templates/market-research-tmpl.yaml +252 -0
  61. package/bmad-core/templates/prd-tmpl.yaml +202 -0
  62. package/bmad-core/templates/project-brief-tmpl.yaml +221 -0
  63. package/bmad-core/templates/story-tmpl.yaml +137 -0
  64. package/bmad-core/workflows/brownfield-fullstack.yaml +297 -0
  65. package/bmad-core/workflows/brownfield-service.yaml +187 -0
  66. package/bmad-core/workflows/brownfield-ui.yaml +197 -0
  67. package/bmad-core/workflows/greenfield-fullstack.yaml +240 -0
  68. package/bmad-core/workflows/greenfield-service.yaml +206 -0
  69. package/bmad-core/workflows/greenfield-ui.yaml +235 -0
  70. package/common/tasks/create-doc.md +101 -0
  71. package/common/tasks/execute-checklist.md +86 -0
  72. package/common/utils/bmad-doc-template.md +325 -0
  73. package/common/utils/workflow-management.md +69 -0
  74. package/dist/agents/analyst.txt +2882 -0
  75. package/dist/agents/architect.txt +3543 -0
  76. package/dist/agents/bmad-master.txt +8756 -0
  77. package/dist/agents/bmad-orchestrator.txt +1490 -0
  78. package/dist/agents/dev.txt +428 -0
  79. package/dist/agents/pm.txt +2229 -0
  80. package/dist/agents/po.txt +1364 -0
  81. package/dist/agents/qa.txt +386 -0
  82. package/dist/agents/sm.txt +668 -0
  83. package/dist/agents/ux-expert.txt +701 -0
  84. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +2408 -0
  85. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +1631 -0
  86. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +822 -0
  87. package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +10989 -0
  88. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +4047 -0
  89. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +3744 -0
  90. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +465 -0
  91. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +990 -0
  92. package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +15467 -0
  93. package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +2077 -0
  94. package/dist/teams/team-all.txt +11062 -0
  95. package/dist/teams/team-fullstack.txt +10392 -0
  96. package/dist/teams/team-ide-minimal.txt +3507 -0
  97. package/dist/teams/team-no-ui.txt +8951 -0
  98. package/docs/GUIDING-PRINCIPLES.md +91 -0
  99. package/docs/core-architecture.md +219 -0
  100. package/docs/enhanced-ide-development-workflow.md +43 -0
  101. package/docs/expansion-packs.md +280 -0
  102. package/docs/how-to-contribute-with-pull-requests.md +158 -0
  103. package/docs/user-guide.md +251 -0
  104. package/docs/versioning-and-releases.md +77 -0
  105. package/docs/versions.md +48 -0
  106. package/docs/working-in-the-brownfield.md +364 -0
  107. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/Complete AI Agent System - Flowchart.svg +102 -0
  108. 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
  109. 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
  110. 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
  111. 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
  112. 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
  113. 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
  114. package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/README.md +109 -0
  115. package/expansion-packs/README.md +3 -0
  116. package/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +13 -0
  117. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +71 -0
  118. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +78 -0
  119. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +64 -0
  120. package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +201 -0
  121. package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +160 -0
  122. package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +8 -0
  123. package/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +250 -0
  124. package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +649 -0
  125. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +110 -0
  126. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +216 -0
  127. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +290 -0
  128. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +613 -0
  129. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +356 -0
  130. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +343 -0
  131. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +253 -0
  132. package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +484 -0
  133. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +183 -0
  134. package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +175 -0
  135. package/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +14 -0
  136. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +80 -0
  137. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +77 -0
  138. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +78 -0
  139. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +65 -0
  140. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +391 -0
  141. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +203 -0
  142. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +201 -0
  143. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +124 -0
  144. package/expansion-packs/bmad-2d-unity-game-dev/config.yaml +6 -0
  145. package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +769 -0
  146. package/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +586 -0
  147. package/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +110 -0
  148. package/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +141 -0
  149. package/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +184 -0
  150. package/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +290 -0
  151. package/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +200 -0
  152. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +1030 -0
  153. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +356 -0
  154. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +705 -0
  155. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +256 -0
  156. package/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +484 -0
  157. package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +183 -0
  158. package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +175 -0
  159. package/expansion-packs/bmad-infrastructure-devops/README.md +147 -0
  160. package/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.md +71 -0
  161. package/expansion-packs/bmad-infrastructure-devops/checklists/infrastructure-checklist.md +484 -0
  162. package/expansion-packs/bmad-infrastructure-devops/config.yaml +9 -0
  163. package/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +305 -0
  164. package/expansion-packs/bmad-infrastructure-devops/tasks/review-infrastructure.md +159 -0
  165. package/expansion-packs/bmad-infrastructure-devops/tasks/validate-infrastructure.md +153 -0
  166. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +424 -0
  167. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +629 -0
  168. package/package.json +62 -24
  169. package/tools/bmad-npx-wrapper.js +39 -0
  170. package/tools/builders/web-builder.js +681 -0
  171. package/tools/bump-all-versions.js +106 -0
  172. package/tools/bump-expansion-version.js +83 -0
  173. package/tools/cli.js +154 -0
  174. package/tools/flattener/aggregate.js +76 -0
  175. package/tools/flattener/binary.js +53 -0
  176. package/tools/flattener/discovery.js +70 -0
  177. package/tools/flattener/files.js +35 -0
  178. package/tools/flattener/ignoreRules.js +176 -0
  179. package/tools/flattener/main.js +217 -0
  180. package/tools/flattener/projectRoot.js +45 -0
  181. package/tools/flattener/prompts.js +44 -0
  182. package/tools/flattener/stats.js +30 -0
  183. package/tools/flattener/xml.js +86 -0
  184. package/tools/installer/README.md +8 -0
  185. package/tools/installer/package.json +44 -0
  186. package/tools/lib/dependency-resolver.js +179 -0
  187. package/tools/lib/yaml-utils.js +29 -0
  188. package/tools/md-assets/web-agent-startup-instructions.md +39 -0
  189. package/tools/semantic-release-sync-installer.js +30 -0
  190. package/tools/shared/bannerArt.js +105 -0
  191. package/tools/sync-installer-version.js +34 -0
  192. package/tools/update-expansion-version.js +54 -0
  193. package/tools/upgraders/v3-to-v4-upgrader.js +763 -0
  194. package/tools/version-bump.js +79 -0
  195. package/tools/yaml-format.js +240 -0
  196. /package/{bin → tools/installer/bin}/bmad.js +0 -0
  197. /package/{config → tools/installer/config}/ide-agent-config.yaml +0 -0
  198. /package/{config → tools/installer/config}/install.config.yaml +0 -0
  199. /package/{lib → tools/installer/lib}/config-loader.js +0 -0
  200. /package/{lib → tools/installer/lib}/file-manager.js +0 -0
  201. /package/{lib → tools/installer/lib}/ide-base-setup.js +0 -0
  202. /package/{lib → tools/installer/lib}/ide-setup.js +0 -0
  203. /package/{lib → tools/installer/lib}/installer.js +0 -0
  204. /package/{lib → tools/installer/lib}/memory-profiler.js +0 -0
  205. /package/{lib → tools/installer/lib}/module-manager.js +0 -0
  206. /package/{lib → tools/installer/lib}/resource-locator.js +0 -0
@@ -0,0 +1,209 @@
1
+ # Contributing to this project
2
+
3
+ Thank you for considering contributing to this project! This document outlines the process for contributing and some guidelines to follow.
4
+
5
+ 🆕 **New to GitHub or pull requests?** Check out our [beginner-friendly Pull Request Guide](docs/how-to-contribute-with-pull-requests.md) first!
6
+
7
+ 📋 **Before contributing**, please read our [Guiding Principles](docs/GUIDING-PRINCIPLES.md) to understand the BMad Method's core philosophy and architectural decisions.
8
+
9
+ Also note, we use the discussions feature in GitHub to have a community to discuss potential ideas, uses, additions and enhancements.
10
+
11
+ 💬 **Discord Community**: Join our [Discord server](https://discord.gg/gk8jAdXWmj) for real-time discussions:
12
+
13
+ - **#general-dev** - Technical discussions, feature ideas, and development questions
14
+ - **#bugs-issues** - Bug reports and issue discussions
15
+
16
+ ## Code of Conduct
17
+
18
+ By participating in this project, you agree to abide by our Code of Conduct. Please read it before participating.
19
+
20
+ ## How to Contribute
21
+
22
+ ### Reporting Bugs
23
+
24
+ 1. **Check existing issues** first to avoid duplicates
25
+ 2. **Use the bug report template** when creating a new issue - it will guide you through providing:
26
+ - Clear bug description
27
+ - Steps to reproduce
28
+ - Expected vs actual behavior
29
+ - Model/IDE/BMad version details
30
+ - Screenshots or links if applicable
31
+ 3. **Consider discussing in Discord** (#bugs-issues channel) for quick help
32
+ 4. **Indicate if you're working on a fix** to avoid duplicate efforts
33
+
34
+ ### Suggesting Features
35
+
36
+ 1. **Discuss first in Discord** (#general-dev channel) - the feature request template asks if you've done this
37
+ 2. **Check existing issues and discussions** to avoid duplicates
38
+ 3. **Use the feature request template** when creating an issue - it will guide you through:
39
+ - Confirming Discord discussion
40
+ - Describing the problem it solves
41
+ - Explaining your solution
42
+ - Listing alternatives considered
43
+ 4. **Be specific** about why this feature would benefit the BMad community
44
+
45
+ ### Pull Request Process
46
+
47
+ ⚠️ **Before starting work:**
48
+
49
+ 1. **For bugs**: Check if an issue exists (create one using the bug template if not)
50
+ 2. **For features**: Ensure you've discussed in Discord (#general-dev) AND created a feature request issue
51
+ 3. **For large changes**: Always open an issue first to discuss alignment
52
+
53
+ Please only propose small granular commits! If its large or significant, please discuss in the discussions tab and open up an issue first. I do not want you to waste your time on a potentially very large PR to have it rejected because it is not aligned or deviates from other planned changes. Communicate and lets work together to build and improve this great community project!
54
+
55
+ **Important**: All contributions must align with our [Guiding Principles](docs/GUIDING-PRINCIPLES.md). Key points:
56
+
57
+ - Keep dev agents lean - they need context for coding, not documentation
58
+ - Web/planning agents can be larger with more complex tasks
59
+ - Everything is natural language (markdown) - no code in core framework
60
+ - Use expansion packs for domain-specific features
61
+
62
+ #### Which Branch for Your PR?
63
+
64
+ **Submit to `next` branch** (most contributions):
65
+
66
+ - ✨ New features or agents
67
+ - 🎨 Enhancements to existing features
68
+ - 📚 Documentation updates
69
+ - ♻️ Code refactoring
70
+ - ⚡ Performance improvements
71
+ - 🧪 New tests
72
+ - 🎁 New expansion packs
73
+
74
+ **Submit to `main` branch** (critical only):
75
+
76
+ - 🚨 Critical bug fixes that break basic functionality
77
+ - 🔒 Security patches
78
+ - 📚 Fixing dangerously incorrect documentation
79
+ - 🐛 Bugs preventing installation or basic usage
80
+
81
+ **When in doubt, submit to `next`**. We'd rather test changes thoroughly before they hit stable.
82
+
83
+ #### PR Size Guidelines
84
+
85
+ - **Ideal PR size**: 200-400 lines of code changes
86
+ - **Maximum PR size**: 800 lines (excluding generated files)
87
+ - **One feature/fix per PR**: Each PR should address a single issue or add one feature
88
+ - **If your change is larger**: Break it into multiple smaller PRs that can be reviewed independently
89
+ - **Related changes**: Even related changes should be separate PRs if they deliver independent value
90
+
91
+ #### Breaking Down Large PRs
92
+
93
+ If your change exceeds 800 lines, use this checklist to split it:
94
+
95
+ - [ ] Can I separate the refactoring from the feature implementation?
96
+ - [ ] Can I introduce the new API/interface in one PR and implementation in another?
97
+ - [ ] Can I split by file or module?
98
+ - [ ] Can I create a base PR with shared utilities first?
99
+ - [ ] Can I separate test additions from implementation?
100
+ - [ ] Even if changes are related, can they deliver value independently?
101
+ - [ ] Can these changes be merged in any order without breaking things?
102
+
103
+ Example breakdown:
104
+
105
+ 1. PR #1: Add utility functions and types (100 lines)
106
+ 2. PR #2: Refactor existing code to use utilities (200 lines)
107
+ 3. PR #3: Implement new feature using refactored code (300 lines)
108
+ 4. PR #4: Add comprehensive tests (200 lines)
109
+
110
+ **Note**: PRs #1 and #4 could be submitted simultaneously since they deliver independent value and don't depend on each other's merge order.
111
+
112
+ #### Pull Request Steps
113
+
114
+ 1. Fork the repository
115
+ 2. Create a new branch (`git checkout -b feature/your-feature-name`)
116
+ 3. Make your changes
117
+ 4. Run any tests or linting to ensure quality
118
+ 5. Commit your changes with clear, descriptive messages following our commit message convention
119
+ 6. Push to your branch (`git push origin feature/your-feature-name`)
120
+ 7. Open a Pull Request against the main branch
121
+
122
+ ## Issue Templates
123
+
124
+ We use GitHub issue templates to ensure all necessary information is provided:
125
+
126
+ - **Bug Reports**: Automatically guides you through providing reproduction steps, environment details, and expected behavior
127
+ - **Feature Requests**: Requires Discord discussion confirmation and asks for problem/solution descriptions
128
+
129
+ Using these templates helps maintainers understand and address your contribution faster.
130
+
131
+ ## Pull Request Description Guidelines
132
+
133
+ Keep PR descriptions short and to the point following this template:
134
+
135
+ ### PR Description Template
136
+
137
+ Keep your PR description concise and focused. Use this template:
138
+
139
+ ```markdown
140
+ ## What
141
+
142
+ [1-2 sentences describing WHAT changed]
143
+
144
+ ## Why
145
+
146
+ [1-2 sentences explaining WHY this change is needed]
147
+ Fixes #[issue number] (if applicable)
148
+
149
+ ## How
150
+
151
+ [2-3 bullets listing HOW you implemented it]
152
+
153
+ -
154
+ -
155
+ -
156
+
157
+ ## Testing
158
+
159
+ [1-2 sentences on how you tested this]
160
+ ```
161
+
162
+ **Maximum PR description length: 200 words** (excluding code examples if needed)
163
+
164
+ ### Good vs Bad PR Descriptions
165
+
166
+ ❌ **Bad Example:**
167
+
168
+ > This revolutionary PR introduces a paradigm-shifting enhancement to the system's architecture by implementing a state-of-the-art solution that leverages cutting-edge methodologies to optimize performance metrics and deliver unprecedented value to stakeholders through innovative approaches...
169
+
170
+ ✅ **Good Example:**
171
+
172
+ > **What:** Added validation for agent dependency resolution
173
+ > **Why:** Build was failing silently when agents had circular dependencies
174
+ > **How:**
175
+ >
176
+ > - Added cycle detection in dependency-resolver.js
177
+ > - Throws clear error with dependency chain
178
+ > **Testing:** Tested with circular deps between 3 agents
179
+
180
+ ## Commit Message Convention
181
+
182
+ Use conventional commits format:
183
+
184
+ - `feat:` New feature
185
+ - `fix:` Bug fix
186
+ - `docs:` Documentation only
187
+ - `refactor:` Code change that neither fixes a bug nor adds a feature
188
+ - `test:` Adding missing tests
189
+ - `chore:` Changes to build process or auxiliary tools
190
+
191
+ Keep commit messages under 72 characters.
192
+
193
+ ### Atomic Commits
194
+
195
+ Each commit should represent one logical change:
196
+
197
+ - **Do:** One bug fix per commit
198
+ - **Do:** One feature addition per commit
199
+ - **Don't:** Mix refactoring with bug fixes
200
+ - **Don't:** Combine unrelated changes
201
+
202
+ ## Code Style
203
+
204
+ - Follow the existing code style and conventions
205
+ - Write clear comments for complex logic
206
+
207
+ ## License
208
+
209
+ By contributing to this project, you agree that your contributions will be licensed under the same license as the project.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Brian AKA BMad AKA BMad Code
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,8 +1,219 @@
1
- # BMad Method Installer
1
+ # BMad-Method: Universal AI Agent Framework
2
2
 
3
- ## Usage
3
+ [![Version](https://img.shields.io/npm/v/bmad-method?color=blue&label=version)](https://www.npmjs.com/package/bmad-method)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
5
+ [![Node.js Version](https://img.shields.io/badge/node-%3E%3D20.0.0-brightgreen)](https://nodejs.org)
6
+ [![Discord](https://img.shields.io/badge/Discord-Join%20Community-7289da?logo=discord&logoColor=white)](https://discord.gg/gk8jAdXWmj)
7
+
8
+ Foundations in Agentic Agile Driven Development, known as the Breakthrough Method of Agile AI-Driven Development, yet so much more. Transform any domain with specialized AI expertise: software development, entertainment, creative writing, business strategy to personal wellness just to name a few.
9
+
10
+ **[Subscribe to BMadCode on YouTube](https://www.youtube.com/@BMadCode?sub_confirmation=1)**
11
+
12
+ **[Join our Discord Community](https://discord.gg/gk8jAdXWmj)** - A growing community for AI enthusiasts! Get help, share ideas, explore AI agents & frameworks, collaborate on tech projects, enjoy hobbies, and help each other succeed. Whether you're stuck on BMad, building your own agents, or just want to chat about the latest in AI - we're here for you! **Some mobile and VPN may have issue joining the discord, this is a discord issue - if the invite does not work, try from your own internet or another network, or non-VPN.**
13
+
14
+ ⭐ **If you find this project helpful or useful, please give it a star in the upper right hand corner!** It helps others discover BMad-Method and you will be notified of updates!
15
+
16
+ ## Overview
17
+
18
+ **BMad Method's Two Key Innovations:**
19
+
20
+ **1. Agentic Planning:** Dedicated agents (Analyst, PM, Architect) collaborate with you to create detailed, consistent PRDs and Architecture documents. Through advanced prompt engineering and human-in-the-loop refinement, these planning agents produce comprehensive specifications that go far beyond generic AI task generation.
21
+
22
+ **2. Context-Engineered Development:** The Scrum Master agent then transforms these detailed plans into hyper-detailed development stories that contain everything the Dev agent needs - full context, implementation details, and architectural guidance embedded directly in story files.
23
+
24
+ This two-phase approach eliminates both **planning inconsistency** and **context loss** - the biggest problems in AI-assisted development. Your Dev agent opens a story file with complete understanding of what to build, how to build it, and why.
25
+
26
+ **📖 [See the complete workflow in the User Guide](docs/user-guide.md)** - Planning phase, development cycle, and all agent roles
27
+
28
+ ## Quick Navigation
29
+
30
+ ### Understanding the BMad Workflow
31
+
32
+ **Before diving in, review these critical workflow diagrams that explain how BMad works:**
33
+
34
+ 1. **[Planning Workflow (Web UI)](docs/user-guide.md#the-planning-workflow-web-ui)** - How to create PRD and Architecture documents
35
+ 2. **[Core Development Cycle (IDE)](docs/user-guide.md#the-core-development-cycle-ide)** - How SM, Dev, and QA agents collaborate through story files
36
+
37
+ > ⚠️ **These diagrams explain 90% of BMad Method Agentic Agile flow confusion** - Understanding the PRD+Architecture creation and the SM/Dev/QA workflow and how agents pass notes through story files is essential - and also explains why this is NOT taskmaster or just a simple task runner!
38
+
39
+ ### What would you like to do?
40
+
41
+ - **[Install and Build software with Full Stack Agile AI Team](#quick-start)** → Quick Start Instruction
42
+ - **[Learn how to use BMad](docs/user-guide.md)** → Complete user guide and walkthrough
43
+ - **[See available AI agents](/bmad-core/agents))** → Specialized roles for your team
44
+ - **[Explore non-technical uses](#-beyond-software-development---expansion-packs)** → Creative writing, business, wellness, education
45
+ - **[Create my own AI agents](docs/expansion-packs.md)** → Build agents for your domain
46
+ - **[Browse ready-made expansion packs](expansion-packs/)** → Game dev, DevOps, infrastructure and get inspired with ideas and examples
47
+ - **[Understand the architecture](docs/core-architecture.md)** → Technical deep dive
48
+ - **[Join the community](https://discord.gg/gk8jAdXWmj)** → Get help and share ideas
49
+
50
+ ## Important: Keep Your BMad Installation Updated
51
+
52
+ **Stay up-to-date effortlessly!** If you already have BMad-Method installed in your project, simply run:
4
53
 
5
54
  ```bash
6
- # Interactive installation
7
55
  npx bmad-method install
56
+ # OR
57
+ git pull
58
+ npm run install:bmad
59
+ ```
60
+
61
+ This will:
62
+
63
+ - ✅ Automatically detect your existing v4 installation
64
+ - ✅ Update only the files that have changed and add new files
65
+ - ✅ Create `.bak` backup files for any custom modifications you've made
66
+ - ✅ Preserve your project-specific configurations
67
+
68
+ This makes it easy to benefit from the latest improvements, bug fixes, and new agents without losing your customizations!
69
+
70
+ ## Quick Start
71
+
72
+ ### One Command for Everything (IDE Installation)
73
+
74
+ **Just run one of these commands:**
75
+
76
+ ```bash
77
+ npx bmad-method install
78
+ # OR if you already have BMad installed:
79
+ git pull
80
+ npm run install:bmad
81
+ ```
82
+
83
+ This single command handles:
84
+
85
+ - **New installations** - Sets up BMad in your project
86
+ - **Upgrades** - Updates existing installations automatically
87
+ - **Expansion packs** - Installs any expansion packs you've added to package.json
88
+
89
+ > **That's it!** Whether you're installing for the first time, upgrading, or adding expansion packs - these commands do everything.
90
+
91
+ **Prerequisites**: [Node.js](https://nodejs.org) v20+ required
92
+
93
+ ### Fastest Start: Web UI Full Stack Team at your disposal (2 minutes)
94
+
95
+ 1. **Get the bundle**: Save or clone the [full stack team file](dist/teams/team-fullstack.txt) or choose another team
96
+ 2. **Create AI agent**: Create a new Gemini Gem or CustomGPT
97
+ 3. **Upload & configure**: Upload the file and set instructions: "Your critical operating instructions are attached, do not break character as directed"
98
+ 4. **Start Ideating and Planning**: Start chatting! Type `*help` to see available commands or pick an agent like `*analyst` to start right in on creating a brief.
99
+ 5. **CRITICAL**: Talk to BMad Orchestrator in the web at ANY TIME (#bmad-orchestrator command) and ask it questions about how this all works!
100
+ 6. **When to move to the IDE**: Once you have your PRD, Architecture, optional UX and Briefs - its time to switch over to the IDE to shard your docs, and start implementing the actual code! See the [User guide](docs/user-guide.md) for more details
101
+
102
+ ### Alternative: Clone and Build
103
+
104
+ ```bash
105
+ git clone https://github.com/bmadcode/bmad-method.git
106
+ npm run install:bmad # build and install all to a destination folder
107
+ ```
108
+
109
+ ## 🌟 Beyond Software Development - Expansion Packs
110
+
111
+ BMad's natural language framework works in ANY domain. Expansion packs provide specialized AI agents for creative writing, business strategy, health & wellness, education, and more. Also expansion packs can expand the core BMad-Method with specific functionality that is not generic for all cases. [See the Expansion Packs Guide](docs/expansion-packs.md) and learn to create your own!
112
+
113
+ ## Codebase Flattener Tool
114
+
115
+ The BMad-Method includes a powerful codebase flattener tool designed to prepare your project files for AI model consumption. This tool aggregates your entire codebase into a single XML file, making it easy to share your project context with AI assistants for analysis, debugging, or development assistance.
116
+
117
+ ### Features
118
+
119
+ - **AI-Optimized Output**: Generates clean XML format specifically designed for AI model consumption
120
+ - **Smart Filtering**: Automatically respects `.gitignore` patterns to exclude unnecessary files
121
+ - **Binary File Detection**: Intelligently identifies and excludes binary files, focusing on source code
122
+ - **Progress Tracking**: Real-time progress indicators and comprehensive completion statistics
123
+ - **Flexible Output**: Customizable output file location and naming
124
+
125
+ ### Usage
126
+
127
+ ```bash
128
+ # Basic usage - creates flattened-codebase.xml in current directory
129
+ npx bmad-method flatten
130
+
131
+ # Specify custom input directory
132
+ npx bmad-method flatten --input /path/to/source/directory
133
+ npx bmad-method flatten -i /path/to/source/directory
134
+
135
+ # Specify custom output file
136
+ npx bmad-method flatten --output my-project.xml
137
+ npx bmad-method flatten -o /path/to/output/codebase.xml
138
+
139
+ # Combine input and output options
140
+ npx bmad-method flatten --input /path/to/source --output /path/to/output/codebase.xml
141
+ ```
142
+
143
+ ### Example Output
144
+
145
+ The tool will display progress and provide a comprehensive summary:
146
+
147
+ ```text
148
+ 📊 Completion Summary:
149
+ ✅ Successfully processed 156 files into flattened-codebase.xml
150
+ 📁 Output file: /path/to/your/project/flattened-codebase.xml
151
+ 📏 Total source size: 2.3 MB
152
+ 📄 Generated XML size: 2.1 MB
153
+ 📝 Total lines of code: 15,847
154
+ 🔢 Estimated tokens: 542,891
155
+ 📊 File breakdown: 142 text, 14 binary, 0 errors
8
156
  ```
157
+
158
+ The generated XML file contains your project's text-based source files in a structured format that AI models can easily parse and understand, making it perfect for code reviews, architecture discussions, or getting AI assistance with your BMad-Method projects.
159
+
160
+ #### Advanced Usage & Options
161
+
162
+ - CLI options
163
+ - `-i, --input <path>`: Directory to flatten. Default: current working directory or auto-detected project root when run interactively.
164
+ - `-o, --output <path>`: Output file path. Default: `flattened-codebase.xml` in the chosen directory.
165
+ - Interactive mode
166
+ - If you do not pass `--input` and `--output` and the terminal is interactive (TTY), the tool will attempt to detect your project root (by looking for markers like `.git`, `package.json`, etc.) and prompt you to confirm or override the paths.
167
+ - In non-interactive contexts (e.g., CI), it will prefer the detected root silently; otherwise it falls back to the current directory and default filename.
168
+ - File discovery and ignoring
169
+ - Uses `git ls-files` when inside a git repository for speed and correctness; otherwise falls back to a glob-based scan.
170
+ - Applies your `.gitignore` plus a curated set of default ignore patterns (e.g., `node_modules`, build outputs, caches, logs, IDE folders, lockfiles, large media/binaries, `.env*`, and previously generated XML outputs).
171
+ - Binary handling
172
+ - Binary files are detected and excluded from the XML content. They are counted in the final summary but not embedded in the output.
173
+ - XML format and safety
174
+ - UTF-8 encoded file with root element `<files>`.
175
+ - Each text file is emitted as a `<file path="relative/path">` element whose content is wrapped in `<![CDATA[ ... ]]>`.
176
+ - The tool safely handles occurrences of `]]>` inside content by splitting the CDATA to preserve correctness.
177
+ - File contents are preserved as-is and indented for readability inside the XML.
178
+ - Performance
179
+ - Concurrency is selected automatically based on your CPU and workload size. No configuration required.
180
+ - Running inside a git repo improves discovery performance.
181
+
182
+ #### Minimal XML example
183
+
184
+ ```xml
185
+ <?xml version="1.0" encoding="UTF-8"?>
186
+ <files>
187
+ <file path="src/index.js"><![CDATA[
188
+ // your source content
189
+ ]]></file>
190
+ </files>
191
+ ```
192
+
193
+ ## Documentation & Resources
194
+
195
+ ### Essential Guides
196
+
197
+ - 📖 **[User Guide](docs/user-guide.md)** - Complete walkthrough from project inception to completion
198
+ - 🏗️ **[Core Architecture](docs/core-architecture.md)** - Technical deep dive and system design
199
+ - 🚀 **[Expansion Packs Guide](docs/expansion-packs.md)** - Extend BMad to any domain beyond software development
200
+
201
+ ## Support
202
+
203
+ - 💬 [Discord Community](https://discord.gg/gk8jAdXWmj)
204
+ - 🐛 [Issue Tracker](https://github.com/bmadcode/bmad-method/issues)
205
+ - 💬 [Discussions](https://github.com/bmadcode/bmad-method/discussions)
206
+
207
+ ## Contributing
208
+
209
+ **We're excited about contributions and welcome your ideas, improvements, and expansion packs!** 🎉
210
+
211
+ 📋 **[Read CONTRIBUTING.md](CONTRIBUTING.md)** - Complete guide to contributing, including guidelines, process, and requirements
212
+
213
+ ## License
214
+
215
+ MIT License - see [LICENSE](LICENSE) for details.
216
+
217
+ [![Contributors](https://contrib.rocks/image?repo=bmadcode/bmad-method)](https://github.com/bmadcode/bmad-method/graphs/contributors)
218
+
219
+ <sub>Built with ❤️ for the AI-assisted development community</sub>
@@ -0,0 +1,14 @@
1
+ bundle:
2
+ name: Team All
3
+ icon: 👥
4
+ description: Includes every core system agent.
5
+ agents:
6
+ - bmad-orchestrator
7
+ - '*'
8
+ workflows:
9
+ - brownfield-fullstack.yaml
10
+ - brownfield-service.yaml
11
+ - brownfield-ui.yaml
12
+ - greenfield-fullstack.yaml
13
+ - greenfield-service.yaml
14
+ - greenfield-ui.yaml
@@ -0,0 +1,18 @@
1
+ bundle:
2
+ name: Team Fullstack
3
+ icon: 🚀
4
+ description: Team capable of full stack, front end only, or service development.
5
+ agents:
6
+ - bmad-orchestrator
7
+ - analyst
8
+ - pm
9
+ - ux-expert
10
+ - architect
11
+ - po
12
+ workflows:
13
+ - brownfield-fullstack.yaml
14
+ - brownfield-service.yaml
15
+ - brownfield-ui.yaml
16
+ - greenfield-fullstack.yaml
17
+ - greenfield-service.yaml
18
+ - greenfield-ui.yaml
@@ -0,0 +1,10 @@
1
+ bundle:
2
+ name: Team IDE Minimal
3
+ icon: ⚡
4
+ description: Only the bare minimum for the IDE PO SM dev qa cycle.
5
+ agents:
6
+ - po
7
+ - sm
8
+ - dev
9
+ - qa
10
+ workflows: null
@@ -0,0 +1,13 @@
1
+ bundle:
2
+ name: Team No UI
3
+ icon: 🔧
4
+ description: Team with no UX or UI Planning.
5
+ agents:
6
+ - bmad-orchestrator
7
+ - analyst
8
+ - pm
9
+ - architect
10
+ - po
11
+ workflows:
12
+ - greenfield-service.yaml
13
+ - brownfield-service.yaml
@@ -0,0 +1,81 @@
1
+ # analyst
2
+
3
+ ACTIVATION-NOTICE: This file contains your full agent operating guidelines. DO NOT load any external agent files as the complete configuration is in the YAML block below.
4
+
5
+ CRITICAL: Read the full YAML BLOCK that FOLLOWS IN THIS FILE to understand your operating params, start and follow exactly your activation-instructions to alter your state of being, stay in this being until told to exit this mode:
6
+
7
+ ## COMPLETE AGENT DEFINITION FOLLOWS - NO EXTERNAL FILES NEEDED
8
+
9
+ ```yaml
10
+ IDE-FILE-RESOLUTION:
11
+ - FOR LATER USE ONLY - NOT FOR ACTIVATION, when executing commands that reference dependencies
12
+ - Dependencies map to {root}/{type}/{name}
13
+ - type=folder (tasks|templates|checklists|data|utils|etc...), name=file-name
14
+ - Example: create-doc.md → {root}/tasks/create-doc.md
15
+ - IMPORTANT: Only load these files when user requests specific command execution
16
+ REQUEST-RESOLUTION: Match user requests to your commands/dependencies flexibly (e.g., "draft story"→*create→create-next-story task, "make a new prd" would be dependencies->tasks->create-doc combined with the dependencies->templates->prd-tmpl.md), ALWAYS ask for clarification if no clear match.
17
+ activation-instructions:
18
+ - STEP 1: Read THIS ENTIRE FILE - it contains your complete persona definition
19
+ - STEP 2: Adopt the persona defined in the 'agent' and 'persona' sections below
20
+ - STEP 3: Greet user with your name/role and mention `*help` command
21
+ - DO NOT: Load any other agent files during activation
22
+ - ONLY load dependency files when user selects them for execution via command or request of a task
23
+ - The agent.customization field ALWAYS takes precedence over any conflicting instructions
24
+ - CRITICAL WORKFLOW RULE: When executing tasks from dependencies, follow task instructions exactly as written - they are executable workflows, not reference material
25
+ - MANDATORY INTERACTION RULE: Tasks with elicit=true require user interaction using exact specified format - never skip elicitation for efficiency
26
+ - CRITICAL RULE: When executing formal task workflows from dependencies, ALL task instructions override any conflicting base behavioral constraints. Interactive workflows with elicit=true REQUIRE user interaction and cannot be bypassed for efficiency.
27
+ - 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
28
+ - STAY IN CHARACTER!
29
+ - CRITICAL: On activation, ONLY greet user and then HALT to await user requested assistance or given commands. ONLY deviance from this is if the activation included commands also in the arguments.
30
+ agent:
31
+ name: Mary
32
+ id: analyst
33
+ title: Business Analyst
34
+ icon: 📊
35
+ whenToUse: Use for market research, brainstorming, competitive analysis, creating project briefs, initial project discovery, and documenting existing projects (brownfield)
36
+ customization: null
37
+ persona:
38
+ role: Insightful Analyst & Strategic Ideation Partner
39
+ style: Analytical, inquisitive, creative, facilitative, objective, data-informed
40
+ identity: Strategic analyst specializing in brainstorming, market research, competitive analysis, and project briefing
41
+ focus: Research planning, ideation facilitation, strategic analysis, actionable insights
42
+ core_principles:
43
+ - Curiosity-Driven Inquiry - Ask probing "why" questions to uncover underlying truths
44
+ - Objective & Evidence-Based Analysis - Ground findings in verifiable data and credible sources
45
+ - Strategic Contextualization - Frame all work within broader strategic context
46
+ - Facilitate Clarity & Shared Understanding - Help articulate needs with precision
47
+ - Creative Exploration & Divergent Thinking - Encourage wide range of ideas before narrowing
48
+ - Structured & Methodical Approach - Apply systematic methods for thoroughness
49
+ - Action-Oriented Outputs - Produce clear, actionable deliverables
50
+ - Collaborative Partnership - Engage as a thinking partner with iterative refinement
51
+ - Maintaining a Broad Perspective - Stay aware of market trends and dynamics
52
+ - Integrity of Information - Ensure accurate sourcing and representation
53
+ - Numbered Options Protocol - Always use numbered lists for selections
54
+ # All commands require * prefix when used (e.g., *help)
55
+ commands:
56
+ - help: Show numbered list of the following commands to allow selection
57
+ - create-project-brief: use task create-doc with project-brief-tmpl.yaml
58
+ - perform-market-research: use task create-doc with market-research-tmpl.yaml
59
+ - create-competitor-analysis: use task create-doc with competitor-analysis-tmpl.yaml
60
+ - yolo: Toggle Yolo Mode
61
+ - doc-out: Output full document in progress to current destination file
62
+ - research-prompt {topic}: execute task create-deep-research-prompt.md
63
+ - brainstorm {topic}: Facilitate structured brainstorming session (run task facilitate-brainstorming-session.md with template brainstorming-output-tmpl.yaml)
64
+ - elicit: run the task advanced-elicitation
65
+ - exit: Say goodbye as the Business Analyst, and then abandon inhabiting this persona
66
+ dependencies:
67
+ tasks:
68
+ - facilitate-brainstorming-session.md
69
+ - create-deep-research-prompt.md
70
+ - create-doc.md
71
+ - advanced-elicitation.md
72
+ - document-project.md
73
+ templates:
74
+ - project-brief-tmpl.yaml
75
+ - market-research-tmpl.yaml
76
+ - competitor-analysis-tmpl.yaml
77
+ - brainstorming-output-tmpl.yaml
78
+ data:
79
+ - bmad-kb.md
80
+ - brainstorming-techniques.md
81
+ ```