bmad-method 4.35.1 → 4.35.3
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.
- package/CHANGELOG.md +14 -2
- package/README.md +6 -6
- package/dist/agents/dev.txt +9 -9
- package/dist/teams/team-all.txt +9 -9
- package/dist/teams/team-ide-minimal.txt +9 -9
- package/package.json +1 -1
- package/tools/installer/lib/installer.js +65 -3
- package/tools/installer/package.json +1 -1
- /package/{bmad-core → docs}/enhanced-ide-development-workflow.md +0 -0
- /package/{bmad-core → docs}/user-guide.md +0 -0
- /package/{bmad-core → docs}/working-in-the-brownfield.md +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,9 +1,21 @@
|
|
|
1
|
-
## [4.35.
|
|
1
|
+
## [4.35.3](https://github.com/bmadcode/BMAD-METHOD/compare/v4.35.2...v4.35.3) (2025-08-06)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* doc location improvement ([1676f51](https://github.com/bmadcode/BMAD-METHOD/commit/1676f5189ed057fa2d7facbd6a771fe67cdb6372))
|
|
2
7
|
|
|
8
|
+
## [4.35.2](https://github.com/bmadcode/BMAD-METHOD/compare/v4.35.1...v4.35.2) (2025-08-06)
|
|
9
|
+
|
|
10
|
+
### Bug Fixes
|
|
11
|
+
|
|
12
|
+
- npx status check ([f7c2a4f](https://github.com/bmadcode/BMAD-METHOD/commit/f7c2a4fb6c454b17d250b85537129b01ffee6b85))
|
|
13
|
+
|
|
14
|
+
## [4.35.1](https://github.com/bmadcode/BMAD-METHOD/compare/v4.35.0...v4.35.1) (2025-08-06)
|
|
3
15
|
|
|
4
16
|
### Bug Fixes
|
|
5
17
|
|
|
6
|
-
|
|
18
|
+
- npx hanging commands ([2cf322e](https://github.com/bmadcode/BMAD-METHOD/commit/2cf322ee0d9b563a4998c72b2c5eab259594739b))
|
|
7
19
|
|
|
8
20
|
# [4.35.0](https://github.com/bmadcode/BMAD-METHOD/compare/v4.34.0...v4.35.0) (2025-08-04)
|
|
9
21
|
|
package/README.md
CHANGED
|
@@ -23,7 +23,7 @@ Foundations in Agentic Agile Driven Development, known as the Breakthrough Metho
|
|
|
23
23
|
|
|
24
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
25
|
|
|
26
|
-
**📖 [See the complete workflow in the User Guide](
|
|
26
|
+
**📖 [See the complete workflow in the User Guide](docs/user-guide.md)** - Planning phase, development cycle, and all agent roles
|
|
27
27
|
|
|
28
28
|
## Quick Navigation
|
|
29
29
|
|
|
@@ -31,15 +31,15 @@ This two-phase approach eliminates both **planning inconsistency** and **context
|
|
|
31
31
|
|
|
32
32
|
**Before diving in, review these critical workflow diagrams that explain how BMad works:**
|
|
33
33
|
|
|
34
|
-
1. **[Planning Workflow (Web UI)](
|
|
35
|
-
2. **[Core Development Cycle (IDE)](
|
|
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
36
|
|
|
37
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
38
|
|
|
39
39
|
### What would you like to do?
|
|
40
40
|
|
|
41
41
|
- **[Install and Build software with Full Stack Agile AI Team](#quick-start)** → Quick Start Instruction
|
|
42
|
-
- **[Learn how to use BMad](
|
|
42
|
+
- **[Learn how to use BMad](docs/user-guide.md)** → Complete user guide and walkthrough
|
|
43
43
|
- **[See available AI agents](/bmad-core/agents))** → Specialized roles for your team
|
|
44
44
|
- **[Explore non-technical uses](#-beyond-software-development---expansion-packs)** → Creative writing, business, wellness, education
|
|
45
45
|
- **[Create my own AI agents](#creating-your-own-expansion-pack)** → Build agents for your domain
|
|
@@ -97,7 +97,7 @@ This single command handles:
|
|
|
97
97
|
3. **Upload & configure**: Upload the file and set instructions: "Your critical operating instructions are attached, do not break character as directed"
|
|
98
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
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](
|
|
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
101
|
|
|
102
102
|
### Alternative: Clone and Build
|
|
103
103
|
|
|
@@ -161,7 +161,7 @@ The generated XML file contains all your project's source code in a structured f
|
|
|
161
161
|
|
|
162
162
|
### Essential Guides
|
|
163
163
|
|
|
164
|
-
- 📖 **[User Guide](
|
|
164
|
+
- 📖 **[User Guide](docs/user-guide.md)** - Complete walkthrough from project inception to completion
|
|
165
165
|
- 🏗️ **[Core Architecture](docs/core-architecture.md)** - Technical deep dive and system design
|
|
166
166
|
- 🚀 **[Expansion Packs Guide](docs/expansion-packs.md)** - Extend BMad to any domain beyond software development
|
|
167
167
|
|
package/dist/agents/dev.txt
CHANGED
|
@@ -72,15 +72,15 @@ commands:
|
|
|
72
72
|
- run-tests: Execute linting and tests
|
|
73
73
|
- explain: teach me what and why you did whatever you just did in detail so I can learn. Explain to me as if you were training a junior engineer.
|
|
74
74
|
- exit: Say goodbye as the Developer, and then abandon inhabiting this persona
|
|
75
|
-
develop-story:
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
75
|
+
- develop-story:
|
|
76
|
+
- order-of-execution: Read (first or next) task→Implement Task and its subtasks→Write tests→Execute validations→Only if ALL pass, then update the task checkbox with [x]→Update story section File List to ensure it lists and new or modified or deleted source file→repeat order-of-execution until complete
|
|
77
|
+
- story-file-updates-ONLY:
|
|
78
|
+
- CRITICAL: ONLY UPDATE THE STORY FILE WITH UPDATES TO SECTIONS INDICATED BELOW. DO NOT MODIFY ANY OTHER SECTIONS.
|
|
79
|
+
- CRITICAL: You are ONLY authorized to edit these specific sections of story files - Tasks / Subtasks Checkboxes, Dev Agent Record section and all its subsections, Agent Model Used, Debug Log References, Completion Notes List, File List, Change Log, Status
|
|
80
|
+
- CRITICAL: DO NOT modify Status, Story, Acceptance Criteria, Dev Notes, Testing sections, or any other sections not listed above
|
|
81
|
+
- blocking: 'HALT for: Unapproved deps needed, confirm with user | Ambiguous after story check | 3 failures attempting to implement or fix something repeatedly | Missing config | Failing regression'
|
|
82
|
+
- ready-for-review: Code matches requirements + All validations pass + Follows standards + File List complete
|
|
83
|
+
- completion: 'All Tasks and Subtasks marked [x] and have tests→Validations and full regression passes (DON''T BE LAZY, EXECUTE ALL TESTS and CONFIRM)→Ensure File List is Complete→run the task execute-checklist for the checklist story-dod-checklist→set story status: ''Ready for Review''→HALT'
|
|
84
84
|
dependencies:
|
|
85
85
|
tasks:
|
|
86
86
|
- execute-checklist.md
|
package/dist/teams/team-all.txt
CHANGED
|
@@ -352,15 +352,15 @@ commands:
|
|
|
352
352
|
- run-tests: Execute linting and tests
|
|
353
353
|
- explain: teach me what and why you did whatever you just did in detail so I can learn. Explain to me as if you were training a junior engineer.
|
|
354
354
|
- exit: Say goodbye as the Developer, and then abandon inhabiting this persona
|
|
355
|
-
develop-story:
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
355
|
+
- develop-story:
|
|
356
|
+
- order-of-execution: Read (first or next) task→Implement Task and its subtasks→Write tests→Execute validations→Only if ALL pass, then update the task checkbox with [x]→Update story section File List to ensure it lists and new or modified or deleted source file→repeat order-of-execution until complete
|
|
357
|
+
- story-file-updates-ONLY:
|
|
358
|
+
- CRITICAL: ONLY UPDATE THE STORY FILE WITH UPDATES TO SECTIONS INDICATED BELOW. DO NOT MODIFY ANY OTHER SECTIONS.
|
|
359
|
+
- CRITICAL: You are ONLY authorized to edit these specific sections of story files - Tasks / Subtasks Checkboxes, Dev Agent Record section and all its subsections, Agent Model Used, Debug Log References, Completion Notes List, File List, Change Log, Status
|
|
360
|
+
- CRITICAL: DO NOT modify Status, Story, Acceptance Criteria, Dev Notes, Testing sections, or any other sections not listed above
|
|
361
|
+
- blocking: 'HALT for: Unapproved deps needed, confirm with user | Ambiguous after story check | 3 failures attempting to implement or fix something repeatedly | Missing config | Failing regression'
|
|
362
|
+
- ready-for-review: Code matches requirements + All validations pass + Follows standards + File List complete
|
|
363
|
+
- completion: 'All Tasks and Subtasks marked [x] and have tests→Validations and full regression passes (DON''T BE LAZY, EXECUTE ALL TESTS and CONFIRM)→Ensure File List is Complete→run the task execute-checklist for the checklist story-dod-checklist→set story status: ''Ready for Review''→HALT'
|
|
364
364
|
dependencies:
|
|
365
365
|
tasks:
|
|
366
366
|
- execute-checklist.md
|
|
@@ -322,15 +322,15 @@ commands:
|
|
|
322
322
|
- run-tests: Execute linting and tests
|
|
323
323
|
- explain: teach me what and why you did whatever you just did in detail so I can learn. Explain to me as if you were training a junior engineer.
|
|
324
324
|
- exit: Say goodbye as the Developer, and then abandon inhabiting this persona
|
|
325
|
-
develop-story:
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
325
|
+
- develop-story:
|
|
326
|
+
- order-of-execution: Read (first or next) task→Implement Task and its subtasks→Write tests→Execute validations→Only if ALL pass, then update the task checkbox with [x]→Update story section File List to ensure it lists and new or modified or deleted source file→repeat order-of-execution until complete
|
|
327
|
+
- story-file-updates-ONLY:
|
|
328
|
+
- CRITICAL: ONLY UPDATE THE STORY FILE WITH UPDATES TO SECTIONS INDICATED BELOW. DO NOT MODIFY ANY OTHER SECTIONS.
|
|
329
|
+
- CRITICAL: You are ONLY authorized to edit these specific sections of story files - Tasks / Subtasks Checkboxes, Dev Agent Record section and all its subsections, Agent Model Used, Debug Log References, Completion Notes List, File List, Change Log, Status
|
|
330
|
+
- CRITICAL: DO NOT modify Status, Story, Acceptance Criteria, Dev Notes, Testing sections, or any other sections not listed above
|
|
331
|
+
- blocking: 'HALT for: Unapproved deps needed, confirm with user | Ambiguous after story check | 3 failures attempting to implement or fix something repeatedly | Missing config | Failing regression'
|
|
332
|
+
- ready-for-review: Code matches requirements + All validations pass + Follows standards + File List complete
|
|
333
|
+
- completion: 'All Tasks and Subtasks marked [x] and have tests→Validations and full regression passes (DON''T BE LAZY, EXECUTE ALL TESTS and CONFIRM)→Ensure File List is Complete→run the task execute-checklist for the checklist story-dod-checklist→set story status: ''Ready for Review''→HALT'
|
|
334
334
|
dependencies:
|
|
335
335
|
tasks:
|
|
336
336
|
- execute-checklist.md
|
package/package.json
CHANGED
|
@@ -237,6 +237,10 @@ class Installer {
|
|
|
237
237
|
// Copy common/ items to .bmad-core
|
|
238
238
|
spinner.text = "Copying common utilities...";
|
|
239
239
|
await this.copyCommonItems(installDir, ".bmad-core", spinner);
|
|
240
|
+
|
|
241
|
+
// Copy documentation files from docs/ to .bmad-core
|
|
242
|
+
spinner.text = "Copying documentation files...";
|
|
243
|
+
await this.copyDocsItems(installDir, ".bmad-core", spinner);
|
|
240
244
|
|
|
241
245
|
// Get list of all files for manifest
|
|
242
246
|
const foundFiles = await resourceLocator.findFiles("**/*", {
|
|
@@ -308,6 +312,11 @@ class Installer {
|
|
|
308
312
|
spinner.text = "Copying common utilities...";
|
|
309
313
|
const commonFiles = await this.copyCommonItems(installDir, ".bmad-core", spinner);
|
|
310
314
|
files.push(...commonFiles);
|
|
315
|
+
|
|
316
|
+
// Copy documentation files from docs/ to .bmad-core
|
|
317
|
+
spinner.text = "Copying documentation files...";
|
|
318
|
+
const docFiles = await this.copyDocsItems(installDir, ".bmad-core", spinner);
|
|
319
|
+
files.push(...docFiles);
|
|
311
320
|
} else if (config.installType === "team") {
|
|
312
321
|
// Team installation
|
|
313
322
|
spinner.text = `Installing ${config.team} team...`;
|
|
@@ -353,6 +362,11 @@ class Installer {
|
|
|
353
362
|
spinner.text = "Copying common utilities...";
|
|
354
363
|
const commonFiles = await this.copyCommonItems(installDir, ".bmad-core", spinner);
|
|
355
364
|
files.push(...commonFiles);
|
|
365
|
+
|
|
366
|
+
// Copy documentation files from docs/ to .bmad-core
|
|
367
|
+
spinner.text = "Copying documentation files...";
|
|
368
|
+
const docFiles = await this.copyDocsItems(installDir, ".bmad-core", spinner);
|
|
369
|
+
files.push(...docFiles);
|
|
356
370
|
} else if (config.installType === "expansion-only") {
|
|
357
371
|
// Expansion-only installation - DO NOT create .bmad-core
|
|
358
372
|
// Only install expansion packs
|
|
@@ -896,7 +910,7 @@ class Installer {
|
|
|
896
910
|
}
|
|
897
911
|
|
|
898
912
|
// Important notice to read the user guide
|
|
899
|
-
console.log(chalk.red.bold("\n📖 IMPORTANT: Please read the user guide installed at .bmad-core/user-guide.md"));
|
|
913
|
+
console.log(chalk.red.bold("\n📖 IMPORTANT: Please read the user guide at docs/user-guide.md (also installed at .bmad-core/user-guide.md)"));
|
|
900
914
|
console.log(chalk.red("This guide contains essential information about the BMad workflow and how to use the agents effectively."));
|
|
901
915
|
}
|
|
902
916
|
|
|
@@ -1557,6 +1571,54 @@ class Installer {
|
|
|
1557
1571
|
return copiedFiles;
|
|
1558
1572
|
}
|
|
1559
1573
|
|
|
1574
|
+
async copyDocsItems(installDir, targetSubdir, spinner) {
|
|
1575
|
+
const fs = require('fs').promises;
|
|
1576
|
+
const sourceBase = path.dirname(path.dirname(path.dirname(path.dirname(__filename)))); // Go up to project root
|
|
1577
|
+
const docsPath = path.join(sourceBase, 'docs');
|
|
1578
|
+
const targetPath = path.join(installDir, targetSubdir);
|
|
1579
|
+
const copiedFiles = [];
|
|
1580
|
+
|
|
1581
|
+
// Specific documentation files to copy
|
|
1582
|
+
const docFiles = [
|
|
1583
|
+
'enhanced-ide-development-workflow.md',
|
|
1584
|
+
'user-guide.md',
|
|
1585
|
+
'working-in-the-brownfield.md'
|
|
1586
|
+
];
|
|
1587
|
+
|
|
1588
|
+
// Check if docs/ exists
|
|
1589
|
+
if (!(await fileManager.pathExists(docsPath))) {
|
|
1590
|
+
console.warn('Warning: docs/ folder not found');
|
|
1591
|
+
return copiedFiles;
|
|
1592
|
+
}
|
|
1593
|
+
|
|
1594
|
+
// Copy specific documentation files from docs/ to target
|
|
1595
|
+
for (const docFile of docFiles) {
|
|
1596
|
+
const sourcePath = path.join(docsPath, docFile);
|
|
1597
|
+
const destPath = path.join(targetPath, docFile);
|
|
1598
|
+
|
|
1599
|
+
// Check if the source file exists
|
|
1600
|
+
if (await fileManager.pathExists(sourcePath)) {
|
|
1601
|
+
// Read the file content
|
|
1602
|
+
const content = await fs.readFile(sourcePath, 'utf8');
|
|
1603
|
+
|
|
1604
|
+
// Replace {root} with the target subdirectory
|
|
1605
|
+
const updatedContent = content.replace(/\{root\}/g, targetSubdir);
|
|
1606
|
+
|
|
1607
|
+
// Ensure directory exists
|
|
1608
|
+
await fileManager.ensureDirectory(path.dirname(destPath));
|
|
1609
|
+
|
|
1610
|
+
// Write the updated content
|
|
1611
|
+
await fs.writeFile(destPath, updatedContent, 'utf8');
|
|
1612
|
+
copiedFiles.push(path.join(targetSubdir, docFile));
|
|
1613
|
+
}
|
|
1614
|
+
}
|
|
1615
|
+
|
|
1616
|
+
if (copiedFiles.length > 0) {
|
|
1617
|
+
console.log(chalk.dim(` Added ${copiedFiles.length} documentation files`));
|
|
1618
|
+
}
|
|
1619
|
+
return copiedFiles;
|
|
1620
|
+
}
|
|
1621
|
+
|
|
1560
1622
|
async detectExpansionPacks(installDir) {
|
|
1561
1623
|
const expansionPacks = {};
|
|
1562
1624
|
const glob = require("glob");
|
|
@@ -1729,7 +1791,7 @@ class Installer {
|
|
|
1729
1791
|
const manifestPath = path.join(bmadDir, "install-manifest.yaml");
|
|
1730
1792
|
|
|
1731
1793
|
if (await fileManager.pathExists(manifestPath)) {
|
|
1732
|
-
return
|
|
1794
|
+
return currentDir; // Return parent directory, not .bmad-core itself
|
|
1733
1795
|
}
|
|
1734
1796
|
|
|
1735
1797
|
currentDir = path.dirname(currentDir);
|
|
@@ -1739,7 +1801,7 @@ class Installer {
|
|
|
1739
1801
|
if (path.basename(process.cwd()) === ".bmad-core") {
|
|
1740
1802
|
const manifestPath = path.join(process.cwd(), "install-manifest.yaml");
|
|
1741
1803
|
if (await fileManager.pathExists(manifestPath)) {
|
|
1742
|
-
return process.cwd();
|
|
1804
|
+
return path.dirname(process.cwd()); // Return parent directory
|
|
1743
1805
|
}
|
|
1744
1806
|
}
|
|
1745
1807
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|