Compare commits
13 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fb0be544ad | ||
|
|
913dbeced6 | ||
|
|
00a9891793 | ||
|
|
47c33d6482 | ||
|
|
febe7e149d | ||
|
|
730d51eb95 | ||
|
|
45110ffffe | ||
|
|
c19772498a | ||
|
|
540578b39d | ||
|
|
5c8485d09f | ||
|
|
cd058ee7ed | ||
|
|
835075e992 | ||
|
|
2cf3ba1ab8 |
1
.vscode/settings.json
vendored
1
.vscode/settings.json
vendored
@@ -24,6 +24,7 @@
|
||||
"Immer",
|
||||
"implementability",
|
||||
"Inclusivity",
|
||||
"kayvan",
|
||||
"Luxon",
|
||||
"MERN",
|
||||
"mgmt",
|
||||
|
||||
33
CHANGELOG.md
33
CHANGELOG.md
@@ -1,3 +1,36 @@
|
||||
# [4.13.0](https://github.com/bmadcode/BMAD-METHOD/compare/v4.12.0...v4.13.0) (2025-06-24)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **ide-setup:** add support for Cline IDE and configuration rules ([#262](https://github.com/bmadcode/BMAD-METHOD/issues/262)) ([913dbec](https://github.com/bmadcode/BMAD-METHOD/commit/913dbeced60ad65086df6233086d83a51ead81a9))
|
||||
|
||||
# [4.12.0](https://github.com/bmadcode/BMAD-METHOD/compare/v4.11.0...v4.12.0) (2025-06-23)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **dev-agent:** add quality gates to prevent task completion with failing validations ([#261](https://github.com/bmadcode/BMAD-METHOD/issues/261)) ([45110ff](https://github.com/bmadcode/BMAD-METHOD/commit/45110ffffe6d29cc08e227e22a901892185dfbd2))
|
||||
|
||||
# [4.11.0](https://github.com/bmadcode/BMAD-METHOD/compare/v4.10.3...v4.11.0) (2025-06-21)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* resolve web bundles directory path when using relative paths in NPX installer ([5c8485d](https://github.com/bmadcode/BMAD-METHOD/commit/5c8485d09ffec60ad4965ced62f4595890cb7535))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* add markdown-tree integration for document sharding ([540578b](https://github.com/bmadcode/BMAD-METHOD/commit/540578b39d1815e41e11f0e87545de3f09ee54e1))
|
||||
|
||||
## [4.10.3](https://github.com/bmadcode/BMAD-METHOD/compare/v4.10.2...v4.10.3) (2025-06-20)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* bundle update ([2cf3ba1](https://github.com/bmadcode/BMAD-METHOD/commit/2cf3ba1ab8dd7e52584bef16a96e65e7d2513c4f))
|
||||
|
||||
## [4.10.2](https://github.com/bmadcode/BMAD-METHOD/compare/v4.10.1...v4.10.2) (2025-06-20)
|
||||
|
||||
|
||||
|
||||
129
CONTRIBUTING.md
129
CONTRIBUTING.md
@@ -4,6 +4,8 @@ Thank you for considering contributing to this project! This document outlines t
|
||||
|
||||
🆕 **New to GitHub or pull requests?** Check out our [beginner-friendly Pull Request Guide](docs/how-to-contribute-with-pull-requests.md) first!
|
||||
|
||||
📋 **Before contributing**, please read our [Guiding Principles](GUIDING-PRINCIPLES.md) to understand the BMAD Method's core philosophy and architectural decisions.
|
||||
|
||||
Also note, we use the discussions feature in GitHub to have a community to discuss potential ideas, uses, additions and enhancements.
|
||||
|
||||
## Code of Conduct
|
||||
@@ -26,6 +28,65 @@ By participating in this project, you agree to abide by our Code of Conduct. Ple
|
||||
|
||||
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!
|
||||
|
||||
**Important**: All contributions must align with our [Guiding Principles](GUIDING-PRINCIPLES.md). Key points:
|
||||
|
||||
- Keep dev agents lean - they need context for coding, not documentation
|
||||
- Web/planning agents can be larger with more complex tasks
|
||||
- Everything is natural language (markdown) - no code in core framework
|
||||
- Use expansion packs for domain-specific features
|
||||
|
||||
#### Which Branch for Your PR?
|
||||
|
||||
**Submit to `next` branch** (most contributions):
|
||||
|
||||
- ✨ New features or agents
|
||||
- 🎨 Enhancements to existing features
|
||||
- 📚 Documentation updates
|
||||
- ♻️ Code refactoring
|
||||
- ⚡ Performance improvements
|
||||
- 🧪 New tests
|
||||
- 🎁 New expansion packs
|
||||
|
||||
**Submit to `main` branch** (critical only):
|
||||
|
||||
- 🚨 Critical bug fixes that break basic functionality
|
||||
- 🔒 Security patches
|
||||
- 📚 Fixing dangerously incorrect documentation
|
||||
- 🐛 Bugs preventing installation or basic usage
|
||||
|
||||
**When in doubt, submit to `next`**. We'd rather test changes thoroughly before they hit stable.
|
||||
|
||||
#### PR Size Guidelines
|
||||
|
||||
- **Ideal PR size**: 200-400 lines of code changes
|
||||
- **Maximum PR size**: 800 lines (excluding generated files)
|
||||
- **One feature/fix per PR**: Each PR should address a single issue or add one feature
|
||||
- **If your change is larger**: Break it into multiple smaller PRs that can be reviewed independently
|
||||
- **Related changes**: Even related changes should be separate PRs if they deliver independent value
|
||||
|
||||
#### Breaking Down Large PRs
|
||||
|
||||
If your change exceeds 800 lines, use this checklist to split it:
|
||||
|
||||
- [ ] Can I separate the refactoring from the feature implementation?
|
||||
- [ ] Can I introduce the new API/interface in one PR and implementation in another?
|
||||
- [ ] Can I split by file or module?
|
||||
- [ ] Can I create a base PR with shared utilities first?
|
||||
- [ ] Can I separate test additions from implementation?
|
||||
- [ ] Even if changes are related, can they deliver value independently?
|
||||
- [ ] Can these changes be merged in any order without breaking things?
|
||||
|
||||
Example breakdown:
|
||||
|
||||
1. PR #1: Add utility functions and types (100 lines)
|
||||
2. PR #2: Refactor existing code to use utilities (200 lines)
|
||||
3. PR #3: Implement new feature using refactored code (300 lines)
|
||||
4. PR #4: Add comprehensive tests (200 lines)
|
||||
|
||||
**Note**: PRs #1 and #4 could be submitted simultaneously since they deliver independent value and don't depend on each other's merge order.
|
||||
|
||||
#### Pull Request Steps
|
||||
|
||||
1. Fork the repository
|
||||
2. Create a new branch (`git checkout -b feature/your-feature-name`)
|
||||
3. Make your changes
|
||||
@@ -34,9 +95,75 @@ Please only propose small granular commits! If its large or significant, please
|
||||
6. Push to your branch (`git push origin feature/your-feature-name`)
|
||||
7. Open a Pull Request against the main branch
|
||||
|
||||
## Pull Request Description Guidelines
|
||||
|
||||
Keep PR descriptions short and to the point following this template:
|
||||
|
||||
### PR Description Template
|
||||
|
||||
Keep your PR description concise and focused. Use this template:
|
||||
|
||||
```markdown
|
||||
## What
|
||||
|
||||
[1-2 sentences describing WHAT changed]
|
||||
|
||||
## Why
|
||||
|
||||
[1-2 sentences explaining WHY this change is needed]
|
||||
|
||||
## How
|
||||
|
||||
[2-3 bullets listing HOW you implemented it]
|
||||
|
||||
-
|
||||
-
|
||||
-
|
||||
|
||||
## Testing
|
||||
|
||||
[1-2 sentences on how you tested this]
|
||||
```
|
||||
|
||||
**Maximum PR description length: 200 words** (excluding code examples if needed)
|
||||
|
||||
### Good vs Bad PR Descriptions
|
||||
|
||||
❌ **Bad Example:**
|
||||
|
||||
> 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...
|
||||
|
||||
✅ **Good Example:**
|
||||
|
||||
> **What:** Added validation for agent dependency resolution
|
||||
> **Why:** Build was failing silently when agents had circular dependencies
|
||||
> **How:**
|
||||
>
|
||||
> - Added cycle detection in dependency-resolver.js
|
||||
> - Throws clear error with dependency chain
|
||||
> **Testing:** Tested with circular deps between 3 agents
|
||||
|
||||
## Commit Message Convention
|
||||
|
||||
PRs with a wall of AI Generated marketing hype that is unclear in what is being proposed will be closed and rejected. Your best change to contribute is with a small clear PR description explaining, what is the issue being solved or gap in the system being filled. Also explain how it leads to the core guiding principles of the project.
|
||||
Use conventional commits format:
|
||||
|
||||
- `feat:` New feature
|
||||
- `fix:` Bug fix
|
||||
- `docs:` Documentation only
|
||||
- `refactor:` Code change that neither fixes a bug nor adds a feature
|
||||
- `test:` Adding missing tests
|
||||
- `chore:` Changes to build process or auxiliary tools
|
||||
|
||||
Keep commit messages under 72 characters.
|
||||
|
||||
### Atomic Commits
|
||||
|
||||
Each commit should represent one logical change:
|
||||
|
||||
- **Do:** One bug fix per commit
|
||||
- **Do:** One feature addition per commit
|
||||
- **Don't:** Mix refactoring with bug fixes
|
||||
- **Don't:** Combine unrelated changes
|
||||
|
||||
## Code Style
|
||||
|
||||
|
||||
118
GUIDING-PRINCIPLES.md
Normal file
118
GUIDING-PRINCIPLES.md
Normal file
@@ -0,0 +1,118 @@
|
||||
# BMAD Method Guiding Principles
|
||||
|
||||
The BMAD Method is a natural language framework for AI-assisted software development. These principles ensure contributions maintain the method's effectiveness.
|
||||
|
||||
## Core Principles
|
||||
|
||||
### 1. Dev Agents Must Be Lean
|
||||
|
||||
- **Minimize dev agent dependencies**: Development agents that work in IDEs must have minimal context overhead
|
||||
- **Save context for code**: Every line counts - dev agents should focus on coding, not documentation
|
||||
- **Web agents can be larger**: Planning agents (PRD Writer, Architect) used in web UI can have more complex tasks and dependencies
|
||||
- **Small files, loaded on demand**: Multiple small, focused files are better than large files with many branches
|
||||
|
||||
### 2. Natural Language First
|
||||
|
||||
- **Everything is markdown**: Agents, tasks, templates - all written in plain English
|
||||
- **No code in core**: The framework itself contains no programming code, only natural language instructions
|
||||
- **Self-contained templates**: Templates include their own generation instructions using `[[LLM: ...]]` markup
|
||||
|
||||
### 3. Agent and Task Design
|
||||
|
||||
- **Agents define roles**: Each agent is a persona with specific expertise (e.g., Frontend Developer, API Developer)
|
||||
- **Tasks are procedures**: Step-by-step instructions an agent follows to complete work
|
||||
- **Templates are outputs**: Structured documents with embedded instructions for generation
|
||||
- **Dependencies matter**: Explicitly declare only what's needed
|
||||
|
||||
## Practical Guidelines
|
||||
|
||||
### When to Add to Core
|
||||
|
||||
- Universal software development needs only
|
||||
- Doesn't bloat dev agent contexts
|
||||
- Follows existing agent/task/template patterns
|
||||
|
||||
### When to Create Expansion Packs
|
||||
|
||||
- Domain-specific needs beyond software development
|
||||
- Non-technical domains (business, wellness, education, creative)
|
||||
- Specialized technical domains (games, infrastructure, mobile)
|
||||
- Heavy documentation or knowledge bases
|
||||
- Anything that would bloat core agents
|
||||
|
||||
See [Expansion Packs Guide](../docs/expansion-packs.md) for detailed examples and ideas.
|
||||
|
||||
### Agent Design Rules
|
||||
|
||||
1. **Web/Planning Agents**: Can have richer context, multiple tasks, extensive templates
|
||||
2. **Dev Agents**: Minimal dependencies, focused on code generation, lean task sets
|
||||
3. **All Agents**: Clear persona, specific expertise, well-defined capabilities
|
||||
|
||||
### Task Writing Rules
|
||||
|
||||
1. Write clear step-by-step procedures
|
||||
2. Use markdown formatting for readability
|
||||
3. Keep dev agent tasks focused and concise
|
||||
4. Planning tasks can be more elaborate
|
||||
5. **Prefer multiple small tasks over one large branching task**
|
||||
- Instead of one task with many conditional paths
|
||||
- Create multiple focused tasks the agent can choose from
|
||||
- This keeps context overhead minimal
|
||||
6. **Reuse common tasks** - Don't create new document creation tasks
|
||||
- Use the existing `create-doc` task
|
||||
- Pass the appropriate template with embedded LLM instructions
|
||||
- This maintains consistency and reduces duplication
|
||||
|
||||
### Template Rules
|
||||
|
||||
1. Include generation instructions with `[[LLM: ...]]` markup
|
||||
2. Provide clear structure for output
|
||||
3. Make templates reusable across agents
|
||||
4. Use standardized markup elements:
|
||||
- `{{placeholders}}` for variables to be replaced
|
||||
- `[[LLM: instructions]]` for AI-only processing (never shown to users)
|
||||
- `REPEAT` sections for repeatable content blocks
|
||||
- `^^CONDITION^^` blocks for conditional content
|
||||
- `@{examples}` for guidance examples (never output to users)
|
||||
5. NEVER display template markup or LLM instructions to users
|
||||
6. Focus on clean output - all processing instructions stay internal
|
||||
|
||||
## Examples
|
||||
|
||||
### Good Dev Agent
|
||||
|
||||
```yaml
|
||||
name: API Developer
|
||||
role: Creates REST APIs
|
||||
dependencies:
|
||||
templates:
|
||||
- api-endpoint-tmpl
|
||||
tasks:
|
||||
- implement-endpoint
|
||||
```
|
||||
|
||||
### Good Planning Agent (Web)
|
||||
|
||||
```yaml
|
||||
name: PRD Writer
|
||||
role: Creates comprehensive PRDs
|
||||
dependencies:
|
||||
templates:
|
||||
- prd-tmpl
|
||||
- epic-tmpl
|
||||
- story-tmpl
|
||||
tasks:
|
||||
- elicit-requirements
|
||||
- analyze-market
|
||||
- define-features
|
||||
data:
|
||||
- prd-best-practices
|
||||
- market-analysis-guide
|
||||
```
|
||||
|
||||
## Remember
|
||||
|
||||
- The power is in natural language orchestration, not code
|
||||
- Dev agents code, planning agents plan
|
||||
- Keep dev agents lean for maximum coding efficiency
|
||||
- Expansion packs handle specialized domains
|
||||
57
README.md
57
README.md
@@ -241,7 +241,7 @@ tools/
|
||||
├── installer/ # NPX installer
|
||||
└── lib/ # Build utilities
|
||||
|
||||
expansion-packs/ # Optional add-ons (DevOps, Mobile, etc.)
|
||||
expansion-packs/ # Domain-specific add-ons (Technical & Non-Technical)
|
||||
|
||||
dist/ # 📦 PRE-BUILT BUNDLES (Ready to use!)
|
||||
├── agents/ # Individual agent bundles (.txt files)
|
||||
@@ -289,12 +289,60 @@ Rich templates for all document types:
|
||||
|
||||
Ask the agent you are using for help with /help (in the web) or \*help in the ide to see what commands are available!
|
||||
|
||||
## Expansion Packs - Beyond Software Development
|
||||
|
||||
BMAD Method's natural language framework isn't limited to software development. Create specialized agents for ANY domain:
|
||||
|
||||
### Technical Expansion Packs
|
||||
|
||||
- 🎮 **Game Development** - Game designers, level creators, narrative writers
|
||||
- 🏗️ **Infrastructure/DevOps** - Cloud architects, security specialists, SRE agents
|
||||
- 📱 **Mobile Development** - iOS/Android specialists, UX designers
|
||||
- 🔗 **Blockchain/Web3** - Smart contract developers, DeFi architects
|
||||
|
||||
### Non-Technical Expansion Packs
|
||||
|
||||
- 💼 **Business Strategy** - Strategic planners, market analysts, business coaches
|
||||
- 💪 **Health & Wellness** - Fitness coaches, nutrition advisors, meditation guides
|
||||
- 🎨 **Creative Arts** - Story writers, world builders, character developers
|
||||
- 📚 **Education** - Curriculum designers, tutors, learning coaches
|
||||
- 🧠 **Personal Development** - Life coaches, goal setters, habit builders
|
||||
- 🏢 **Professional Services** - Legal advisors, medical protocols, research assistants
|
||||
|
||||
### Creating Your Own Expansion Pack
|
||||
|
||||
The BMAD framework can support any domain where structured AI assistance is valuable:
|
||||
|
||||
1. Define specialized agents with domain expertise
|
||||
2. Create task procedures for common workflows
|
||||
3. Build templates for domain-specific outputs
|
||||
4. Package as an expansion pack for others to use
|
||||
|
||||
📖 **[Read the full Expansion Packs Guide](docs/expansion-packs.md)** for detailed examples and inspiration!
|
||||
|
||||
🛠️ **[Use the Expansion Pack Creator](expansion-packs/expansion-creator/README.md)** to build your own!
|
||||
|
||||
## Contributing
|
||||
|
||||
We welcome contributions!
|
||||
**We're excited about contributions and welcome your ideas, improvements, and expansion packs!** 🎉
|
||||
|
||||
- 🆕 **New to GitHub?** Start with our [Pull Request Guide](docs/how-to-contribute-with-pull-requests.md)
|
||||
- See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines
|
||||
### Before Contributing - MUST READ
|
||||
|
||||
To ensure your contribution aligns with the BMAD Method and gets merged smoothly:
|
||||
|
||||
1. 📋 **Read [CONTRIBUTING.md](CONTRIBUTING.md)** - Our contribution guidelines, PR requirements, and process
|
||||
2. 🎯 **Read [GUIDING-PRINCIPLES.md](GUIDING-PRINCIPLES.md)** - Core principles that keep BMAD powerful through simplicity
|
||||
3. 🆕 **New to GitHub?** Start with our [Pull Request Guide](docs/how-to-contribute-with-pull-requests.md)
|
||||
|
||||
### Key Points to Remember
|
||||
|
||||
- Keep dev agents lean (save context for coding!)
|
||||
- Use small, focused files over large branching ones
|
||||
- Reuse existing tasks (like `create-doc`) instead of creating duplicates
|
||||
- Consider expansion packs for domain-specific features
|
||||
- All contributions must follow our natural language, markdown-based approach
|
||||
|
||||
We're building something amazing together - let's keep it simple, powerful, and focused! 💪
|
||||
|
||||
### Development Setup
|
||||
|
||||
@@ -310,6 +358,7 @@ npm install
|
||||
|
||||
- 🏗️ [Core Architecture](docs/core-architecture.md) - Complete technical architecture and system design
|
||||
- 📖 [User Guide](docs/user-guide.md) - Comprehensive guide to using BMAD-METHOD effectively
|
||||
- 🚀 [Expansion Packs Guide](docs/expansion-packs.md) - Extend BMAD to any domain beyond software development
|
||||
|
||||
### Workflow Guides
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@ core_principles:
|
||||
- CRITICAL: Dev Record Only - ONLY update story file Dev Agent Record sections (checkboxes/Debug Log/Completion Notes/Change Log)
|
||||
- Strive for Sequential Task Execution - Complete tasks 1-by-1 and mark [x] as completed
|
||||
- Test-Driven Quality - Write tests alongside code. Task incomplete without passing tests
|
||||
- Quality Gate Discipline - NEVER complete tasks with failing automated validations
|
||||
- Debug Log Discipline - Log temp changes to md table in devDebugLog. Revert after fix.
|
||||
- Block Only When Critical - HALT for: missing approval/ambiguous reqs/3 failures/missing config
|
||||
- Code Excellence - Clean, secure, maintainable code per loaded standards
|
||||
@@ -45,15 +46,15 @@ commands: # All commands require * prefix when used (e.g., *help)
|
||||
- exit: Say goodbye as the Developer, and then abandon inhabiting this persona
|
||||
|
||||
task-execution:
|
||||
flow: "Read task→Implement→Write tests→Pass tests→Update [x]→Next task"
|
||||
flow: "Read task→Implement→Write tests→Execute validations→Only if ALL pass→Update [x]→Next task"
|
||||
updates-ONLY:
|
||||
- "Checkboxes: [ ] not started | [-] in progress | [x] complete"
|
||||
- "Debug Log: | Task | File | Change | Reverted? |"
|
||||
- "Completion Notes: Deviations only, <50 words"
|
||||
- "Change Log: Requirement changes only"
|
||||
blocking: "Unapproved deps | Ambiguous after story check | 3 failures | Missing config"
|
||||
done: "Code matches reqs + Tests pass + Follows standards + No lint errors"
|
||||
completion: "All [x]→Lint→Tests(100%)→Integration(if noted)→Coverage(80%+)→E2E(if noted)→DoD→Summary→HALT"
|
||||
blocking: "Unapproved deps | Ambiguous after story check | 3 failures | Missing config | Failing validations"
|
||||
done: "Code matches reqs + All validations pass + Follows standards"
|
||||
completion: "All [x]→Validations pass→Integration(if noted)→E2E(if noted)→DoD→Summary→HALT"
|
||||
|
||||
dependencies:
|
||||
tasks:
|
||||
|
||||
@@ -1,26 +1,20 @@
|
||||
core-project-information:
|
||||
dev-story-location: docs/stories # alternate could be .ai/stories if preferred for example
|
||||
prd:
|
||||
prd-file: docs/prd.md
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs/prd
|
||||
epicFilePattern: epic-{n}*.md
|
||||
architecture:
|
||||
architecture-file: docs/architecture.md
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
# if you have a front-end architecture document, uncomment the following and validate the file path
|
||||
# front-end-architecture:
|
||||
# front-end-architecture-file: docs/front-end-architecture.md
|
||||
# architectureVersion: v4
|
||||
# architectureSharded: true
|
||||
# architectureShardedLocation: docs/architecture
|
||||
customTechnicalDocuments: null # list other documents only if you want the SM to read them when creating stories
|
||||
devLoadAlwaysFiles:
|
||||
- docs/architecture/coding-standards.md
|
||||
- docs/architecture/tech-stack.md
|
||||
- docs/architecture/project-structure.md
|
||||
devDebugLog: .ai/debug-log.md
|
||||
agentCoreDump: .ai/core-dump{n}.md
|
||||
markdownExploder: true
|
||||
prd:
|
||||
prdFile: docs/prd.md
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs/prd
|
||||
epicFilePattern: epic-{n}*.md
|
||||
architecture:
|
||||
architectureFile: docs/architecture.md
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
customTechnicalDocuments: null
|
||||
devLoadAlwaysFiles:
|
||||
- docs/architecture/coding-standards.md
|
||||
- docs/architecture/tech-stack.md
|
||||
- docs/architecture/source-tree.md
|
||||
devDebugLog: .ai/debug-log.md
|
||||
devStoryLocation: docs/stories
|
||||
agentCoreDump: .ai/core-dump{n}.md
|
||||
|
||||
@@ -17,14 +17,14 @@ To identify the next logical story based on project progress and epic definition
|
||||
2. Run the BMAD installer against your project to upgrade and add the file automatically
|
||||
Please add and configure core-config.yml before proceeding."
|
||||
- Extract the following key configurations:
|
||||
- `dev-story-location`: Where to save story files
|
||||
- `devStoryLocation`: Where to save story files
|
||||
- `prd.prdSharded`: Whether PRD is sharded or monolithic
|
||||
- `prd.prd-file`: Location of monolithic PRD (if not sharded)
|
||||
- `prd.prdFile`: Location of monolithic PRD (if not sharded)
|
||||
- `prd.prdShardedLocation`: Location of sharded epic files
|
||||
- `prd.epicFilePattern`: Pattern for epic files (e.g., `epic-{n}*.md`)
|
||||
- `architecture.architectureVersion`: Architecture document version
|
||||
- `architecture.architectureSharded`: Whether architecture is sharded
|
||||
- `architecture.architecture-file`: Location of monolithic architecture
|
||||
- `architecture.architectureFile`: Location of monolithic architecture
|
||||
- `architecture.architectureShardedLocation`: Location of sharded architecture files
|
||||
|
||||
### 1. Identify Next Story for Preparation
|
||||
@@ -33,11 +33,11 @@ To identify the next logical story based on project progress and epic definition
|
||||
|
||||
- Based on `prdSharded` from config:
|
||||
- **If `prdSharded: true`**: Look for epic files in `prdShardedLocation` using `epicFilePattern`
|
||||
- **If `prdSharded: false`**: Load the full PRD from `prd-file` and extract epics from section headings (## Epic N or ### Epic N)
|
||||
- **If `prdSharded: false`**: Load the full PRD from `prdFile` and extract epics from section headings (## Epic N or ### Epic N)
|
||||
|
||||
#### 1.2 Review Existing Stories
|
||||
|
||||
- Check `dev-story-location` from config (e.g., `docs/stories/`) for existing story files
|
||||
- Check `devStoryLocation` from config (e.g., `docs/stories/`) for existing story files
|
||||
- If the directory exists and has at least 1 file, find the highest-numbered story file.
|
||||
- **If a highest story file exists (`{lastEpicNum}.{lastStoryNum}.story.md`):**
|
||||
- Verify its `Status` is 'Done' (or equivalent).
|
||||
@@ -126,13 +126,13 @@ Based on configuration loaded in Step 0:
|
||||
- Follow the structured reading order in section 4.2 below
|
||||
|
||||
- **If `architectureVersion: v4` and `architectureSharded: false`**:
|
||||
- Load the monolithic architecture from `architecture-file`
|
||||
- Load the monolithic architecture from `architectureFile`
|
||||
- Extract relevant sections based on v4 structure (tech stack, project structure, etc.)
|
||||
|
||||
- **If `architectureVersion` is NOT v4**:
|
||||
- Inform user: "Architecture document is not v4 format. Will use best judgment to find relevant information."
|
||||
- If `architectureSharded: true`: Search sharded files by filename relevance
|
||||
- If `architectureSharded: false`: Search within monolithic `architecture-file` for relevant sections
|
||||
- If `architectureSharded: false`: Search within monolithic `architectureFile` for relevant sections
|
||||
|
||||
#### 4.2 Recommended Reading Order Based on Story Type (v4 Sharded Only)
|
||||
|
||||
@@ -189,7 +189,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
|
||||
|
||||
### 6. Populate Story Template with Full Context
|
||||
|
||||
- Create a new story file: `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config).
|
||||
- Create a new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config).
|
||||
- Use the Story Template to structure the file.
|
||||
- Fill in:
|
||||
- Story `{EpicNum}.{StoryNum}: {Short Title Copied from Epic File}`
|
||||
@@ -236,7 +236,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
|
||||
- Verify all source references are included for technical details
|
||||
- Ensure tasks align with both epic requirements and architecture constraints
|
||||
- Update status to "Draft"
|
||||
- Save the story file to `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config)
|
||||
- Save the story file to `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config)
|
||||
|
||||
### 9. Report Completion
|
||||
|
||||
|
||||
@@ -6,9 +6,27 @@
|
||||
- Create a folder structure to organize the sharded documents
|
||||
- Maintain all content integrity including code blocks, diagrams, and markdown formatting
|
||||
|
||||
## Recommended Method: @kayvan/markdown-tree-parser
|
||||
## Primary Method: Automatic with markdown-tree
|
||||
|
||||
[[LLM: First, suggest the user install and use the @kayvan/markdown-tree-parser tool if the md-tree command is unavailable so we can have the best performance and reliable document sharding. Let the user know this will save cost of having the LLM to the expensive sharding operation. Give instructions for MPV NPX and PNPM global installs.]]
|
||||
[[LLM: First, check if markdownExploder is set to true in bmad-core/core-config.yml. If it is, attempt to run the command: `md-tree explode {input file} {output path}`.
|
||||
|
||||
If the command succeeds, inform the user that the document has been sharded successfully and STOP - do not proceed further.
|
||||
|
||||
If the command fails (especially with an error indicating the command is not found or not available), inform the user: "The markdownExploder setting is enabled but the md-tree command is not available. Please either:
|
||||
|
||||
1. Install @kayvan/markdown-tree-parser globally with: `npm install -g @kayvan/markdown-tree-parser`
|
||||
2. Or set markdownExploder to false in bmad-core/core-config.yml
|
||||
|
||||
**IMPORTANT: STOP HERE - do not proceed with manual sharding until one of the above actions is taken.**"
|
||||
|
||||
If markdownExploder is set to false, inform the user: "The markdownExploder setting is currently false. For better performance and reliability, you should:
|
||||
|
||||
1. Set markdownExploder to true in bmad-core/core-config.yml
|
||||
2. Install @kayvan/markdown-tree-parser globally with: `npm install -g @kayvan/markdown-tree-parser`
|
||||
|
||||
I will now proceed with the manual sharding process."
|
||||
|
||||
Then proceed with the manual method below ONLY if markdownExploder is false.]]
|
||||
|
||||
### Installation and Usage
|
||||
|
||||
@@ -41,19 +59,19 @@ If the user has @kayvan/markdown-tree-parser installed, use it and skip the manu
|
||||
|
||||
---
|
||||
|
||||
## Manual Method (if @kayvan/markdown-tree-parser is not available)
|
||||
## Manual Method (if @kayvan/markdown-tree-parser is not available or user indicated manual method)
|
||||
|
||||
[[LLM: Only proceed with the manual instructions below if the user cannot or does not want to use @kayvan/markdown-tree-parser.]]
|
||||
|
||||
### Task Instructions
|
||||
|
||||
### 1. Identify Document and Target Location
|
||||
1. Identify Document and Target Location
|
||||
|
||||
- Determine which document to shard (user-provided path)
|
||||
- Create a new folder under `docs/` with the same name as the document (without extension)
|
||||
- Example: `docs/prd.md` → create folder `docs/prd/`
|
||||
|
||||
### 2. Parse and Extract Sections
|
||||
2. Parse and Extract Sections
|
||||
|
||||
[[LLM: When sharding the document:
|
||||
|
||||
@@ -63,7 +81,7 @@ If the user has @kayvan/markdown-tree-parser installed, use it and skip the manu
|
||||
- Extract the section heading and ALL content until the next level 2 section
|
||||
- Include all subsections, code blocks, diagrams, lists, tables, etc.
|
||||
- Be extremely careful with:
|
||||
- Fenced code blocks (```) - ensure you capture the full block including closing backticks
|
||||
- Fenced code blocks (```) - ensure you capture the full block including closing backticks and account for potential misleading level 2's that are actually part of a fenced section example
|
||||
- Mermaid diagrams - preserve the complete diagram syntax
|
||||
- Nested markdown elements
|
||||
- Multi-line content that might contain ## inside code blocks
|
||||
@@ -82,7 +100,7 @@ For each extracted section:
|
||||
|
||||
2. **Adjust heading levels**:
|
||||
|
||||
- The level 2 heading becomes level 1 (# instead of ##)
|
||||
- The level 2 heading becomes level 1 (# instead of ##) in the sharded new document
|
||||
- All subsection levels decrease by 1:
|
||||
|
||||
```txt
|
||||
|
||||
58
dist/agents/analyst.txt
vendored
58
dist/agents/analyst.txt
vendored
@@ -1679,6 +1679,64 @@ npx bmad-method install
|
||||
|
||||
**Cost-Saving Tip**: Create large documents (PRDs, architecture) in web UI, then copy to `docs/prd.md` and `docs/architecture.md` in your project before switching to IDE for development.
|
||||
|
||||
## Core Configuration (core-config.yml)
|
||||
|
||||
**New in V4**: The `bmad-core/core-config.yml` file is a critical innovation that enables BMAD to work seamlessly with any project structure, providing maximum flexibility and backwards compatibility.
|
||||
|
||||
### What is core-config.yml?
|
||||
|
||||
This configuration file acts as a map for BMAD agents, telling them exactly where to find your project documents and how they're structured. It enables:
|
||||
|
||||
- **Version Flexibility**: Work with V3, V4, or custom document structures
|
||||
- **Custom Locations**: Define where your documents and shards live
|
||||
- **Developer Context**: Specify which files the dev agent should always load
|
||||
- **Debug Support**: Built-in logging for troubleshooting
|
||||
|
||||
### Key Configuration Areas
|
||||
|
||||
#### PRD Configuration
|
||||
- **prdVersion**: Tells agents if PRD follows v3 or v4 conventions
|
||||
- **prdSharded**: Whether epics are embedded (false) or in separate files (true)
|
||||
- **prdShardedLocation**: Where to find sharded epic files
|
||||
- **epicFilePattern**: Pattern for epic filenames (e.g., `epic-{n}*.md`)
|
||||
|
||||
#### Architecture Configuration
|
||||
- **architectureVersion**: v3 (monolithic) or v4 (sharded)
|
||||
- **architectureSharded**: Whether architecture is split into components
|
||||
- **architectureShardedLocation**: Where sharded architecture files live
|
||||
|
||||
#### Developer Files
|
||||
- **devLoadAlwaysFiles**: List of files the dev agent loads for every task
|
||||
- **devDebugLog**: Where dev agent logs repeated failures
|
||||
- **agentCoreDump**: Export location for chat conversations
|
||||
|
||||
### Why It Matters
|
||||
|
||||
1. **No Forced Migrations**: Keep your existing document structure
|
||||
2. **Gradual Adoption**: Start with V3 and migrate to V4 at your pace
|
||||
3. **Custom Workflows**: Configure BMAD to match your team's process
|
||||
4. **Intelligent Agents**: Agents automatically adapt to your configuration
|
||||
|
||||
### Common Configurations
|
||||
|
||||
**Legacy V3 Project**:
|
||||
```yaml
|
||||
prdVersion: v3
|
||||
prdSharded: false
|
||||
architectureVersion: v3
|
||||
architectureSharded: false
|
||||
```
|
||||
|
||||
**V4 Optimized Project**:
|
||||
```yaml
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs/prd
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
```
|
||||
|
||||
## Core Philosophy
|
||||
|
||||
### Vibe CEO'ing
|
||||
|
||||
112
dist/agents/bmad-master.txt
vendored
112
dist/agents/bmad-master.txt
vendored
@@ -1734,14 +1734,14 @@ To identify the next logical story based on project progress and epic definition
|
||||
2. Run the BMAD installer against your project to upgrade and add the file automatically
|
||||
Please add and configure core-config.yml before proceeding."
|
||||
- Extract the following key configurations:
|
||||
- `dev-story-location`: Where to save story files
|
||||
- `devStoryLocation`: Where to save story files
|
||||
- `prd.prdSharded`: Whether PRD is sharded or monolithic
|
||||
- `prd.prd-file`: Location of monolithic PRD (if not sharded)
|
||||
- `prd.prdFile`: Location of monolithic PRD (if not sharded)
|
||||
- `prd.prdShardedLocation`: Location of sharded epic files
|
||||
- `prd.epicFilePattern`: Pattern for epic files (e.g., `epic-{n}*.md`)
|
||||
- `architecture.architectureVersion`: Architecture document version
|
||||
- `architecture.architectureSharded`: Whether architecture is sharded
|
||||
- `architecture.architecture-file`: Location of monolithic architecture
|
||||
- `architecture.architectureFile`: Location of monolithic architecture
|
||||
- `architecture.architectureShardedLocation`: Location of sharded architecture files
|
||||
|
||||
### 1. Identify Next Story for Preparation
|
||||
@@ -1750,11 +1750,11 @@ To identify the next logical story based on project progress and epic definition
|
||||
|
||||
- Based on `prdSharded` from config:
|
||||
- **If `prdSharded: true`**: Look for epic files in `prdShardedLocation` using `epicFilePattern`
|
||||
- **If `prdSharded: false`**: Load the full PRD from `prd-file` and extract epics from section headings (## Epic N or ### Epic N)
|
||||
- **If `prdSharded: false`**: Load the full PRD from `prdFile` and extract epics from section headings (## Epic N or ### Epic N)
|
||||
|
||||
#### 1.2 Review Existing Stories
|
||||
|
||||
- Check `dev-story-location` from config (e.g., `docs/stories/`) for existing story files
|
||||
- Check `devStoryLocation` from config (e.g., `docs/stories/`) for existing story files
|
||||
- If the directory exists and has at least 1 file, find the highest-numbered story file.
|
||||
- **If a highest story file exists (`{lastEpicNum}.{lastStoryNum}.story.md`):**
|
||||
- Verify its `Status` is 'Done' (or equivalent).
|
||||
@@ -1774,12 +1774,40 @@ To identify the next logical story based on project progress and epic definition
|
||||
```
|
||||
|
||||
- Proceed only if user selects option 3 (Override) or if the last story was 'Done'.
|
||||
- If proceeding: Look for the Epic File for `{lastEpicNum}` (e.g., `epic-{lastEpicNum}*.md`) and check for a story numbered `{lastStoryNum + 1}`. If it exists and its prerequisites (per Epic File) are met, this is the next story.
|
||||
- Else (story not found or prerequisites not met): The next story is the first story in the next Epic File (e.g., look for `epic-{lastEpicNum + 1}*.md`, then `epic-{lastEpicNum + 2}*.md`, etc.) whose prerequisites are met.
|
||||
- If proceeding: Look for the Epic File for `{lastEpicNum}` (e.g., `epic-{lastEpicNum}*.md`) and parse it to find ALL stories in that epic. **ALWAYS select the next sequential story** (e.g., if last was 2.2, next MUST be 2.3).
|
||||
- If the next sequential story has unmet prerequisites, present this to the user:
|
||||
|
||||
```plaintext
|
||||
ALERT: Next story has unmet prerequisites:
|
||||
Story: {epicNum}.{storyNum} - {Story Title}
|
||||
Prerequisites not met: [list specific prerequisites]
|
||||
|
||||
Would you like to:
|
||||
1. Create the story anyway (mark prerequisites as pending)
|
||||
2. Skip to a different story (requires your specific instruction)
|
||||
3. Cancel story creation
|
||||
|
||||
Please choose an option (1/2/3):
|
||||
```
|
||||
|
||||
- If there are no more stories in the current epic (e.g., 2.9 was done and there is no 2.10):
|
||||
|
||||
```plaintext
|
||||
Epic {epicNum} Complete: All stories in Epic {epicNum} have been completed.
|
||||
|
||||
Would you like to:
|
||||
1. Begin Epic {epicNum + 1} with story {epicNum + 1}.1
|
||||
2. Select a specific story to work on
|
||||
3. Cancel story creation
|
||||
|
||||
Please choose an option (1/2/3):
|
||||
```
|
||||
|
||||
- **CRITICAL**: NEVER automatically skip to another epic or non-sequential story. The user MUST explicitly instruct which story to create if skipping the sequential order.
|
||||
|
||||
- **If no story files exist in `docs/stories/`:**
|
||||
- The next story is the first story in the first epic file (look for `epic-1-*.md`, then `epic-2-*.md`, etc.) whose prerequisites are met.
|
||||
- If no suitable story with met prerequisites is found, report to the user that story creation is blocked, specifying what prerequisites are pending. HALT task.
|
||||
- The next story is ALWAYS 1.1 (the first story of the first epic).
|
||||
- If story 1.1 has unmet prerequisites, follow the same alert process as above.
|
||||
- Announce the identified story to the user: "Identified next story for preparation: {epicNum}.{storyNum} - {Story Title}".
|
||||
|
||||
### 2. Gather Core Story Requirements (from Epic)
|
||||
@@ -1815,13 +1843,13 @@ Based on configuration loaded in Step 0:
|
||||
- Follow the structured reading order in section 4.2 below
|
||||
|
||||
- **If `architectureVersion: v4` and `architectureSharded: false`**:
|
||||
- Load the monolithic architecture from `architecture-file`
|
||||
- Load the monolithic architecture from `architectureFile`
|
||||
- Extract relevant sections based on v4 structure (tech stack, project structure, etc.)
|
||||
|
||||
- **If `architectureVersion` is NOT v4**:
|
||||
- Inform user: "Architecture document is not v4 format. Will use best judgment to find relevant information."
|
||||
- If `architectureSharded: true`: Search sharded files by filename relevance
|
||||
- If `architectureSharded: false`: Search within monolithic `architecture-file` for relevant sections
|
||||
- If `architectureSharded: false`: Search within monolithic `architectureFile` for relevant sections
|
||||
|
||||
#### 4.2 Recommended Reading Order Based on Story Type (v4 Sharded Only)
|
||||
|
||||
@@ -1878,7 +1906,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
|
||||
|
||||
### 6. Populate Story Template with Full Context
|
||||
|
||||
- Create a new story file: `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config).
|
||||
- Create a new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config).
|
||||
- Use the Story Template to structure the file.
|
||||
- Fill in:
|
||||
- Story `{EpicNum}.{StoryNum}: {Short Title Copied from Epic File}`
|
||||
@@ -1925,7 +1953,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
|
||||
- Verify all source references are included for technical details
|
||||
- Ensure tasks align with both epic requirements and architecture constraints
|
||||
- Update status to "Draft"
|
||||
- Save the story file to `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config)
|
||||
- Save the story file to `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config)
|
||||
|
||||
### 9. Report Completion
|
||||
|
||||
@@ -8486,6 +8514,64 @@ npx bmad-method install
|
||||
|
||||
**Cost-Saving Tip**: Create large documents (PRDs, architecture) in web UI, then copy to `docs/prd.md` and `docs/architecture.md` in your project before switching to IDE for development.
|
||||
|
||||
## Core Configuration (core-config.yml)
|
||||
|
||||
**New in V4**: The `bmad-core/core-config.yml` file is a critical innovation that enables BMAD to work seamlessly with any project structure, providing maximum flexibility and backwards compatibility.
|
||||
|
||||
### What is core-config.yml?
|
||||
|
||||
This configuration file acts as a map for BMAD agents, telling them exactly where to find your project documents and how they're structured. It enables:
|
||||
|
||||
- **Version Flexibility**: Work with V3, V4, or custom document structures
|
||||
- **Custom Locations**: Define where your documents and shards live
|
||||
- **Developer Context**: Specify which files the dev agent should always load
|
||||
- **Debug Support**: Built-in logging for troubleshooting
|
||||
|
||||
### Key Configuration Areas
|
||||
|
||||
#### PRD Configuration
|
||||
- **prdVersion**: Tells agents if PRD follows v3 or v4 conventions
|
||||
- **prdSharded**: Whether epics are embedded (false) or in separate files (true)
|
||||
- **prdShardedLocation**: Where to find sharded epic files
|
||||
- **epicFilePattern**: Pattern for epic filenames (e.g., `epic-{n}*.md`)
|
||||
|
||||
#### Architecture Configuration
|
||||
- **architectureVersion**: v3 (monolithic) or v4 (sharded)
|
||||
- **architectureSharded**: Whether architecture is split into components
|
||||
- **architectureShardedLocation**: Where sharded architecture files live
|
||||
|
||||
#### Developer Files
|
||||
- **devLoadAlwaysFiles**: List of files the dev agent loads for every task
|
||||
- **devDebugLog**: Where dev agent logs repeated failures
|
||||
- **agentCoreDump**: Export location for chat conversations
|
||||
|
||||
### Why It Matters
|
||||
|
||||
1. **No Forced Migrations**: Keep your existing document structure
|
||||
2. **Gradual Adoption**: Start with V3 and migrate to V4 at your pace
|
||||
3. **Custom Workflows**: Configure BMAD to match your team's process
|
||||
4. **Intelligent Agents**: Agents automatically adapt to your configuration
|
||||
|
||||
### Common Configurations
|
||||
|
||||
**Legacy V3 Project**:
|
||||
```yaml
|
||||
prdVersion: v3
|
||||
prdSharded: false
|
||||
architectureVersion: v3
|
||||
architectureSharded: false
|
||||
```
|
||||
|
||||
**V4 Optimized Project**:
|
||||
```yaml
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs/prd
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
```
|
||||
|
||||
## Core Philosophy
|
||||
|
||||
### Vibe CEO'ing
|
||||
|
||||
137
dist/agents/bmad-orchestrator.txt
vendored
137
dist/agents/bmad-orchestrator.txt
vendored
@@ -136,6 +136,11 @@ loading:
|
||||
- Agents: Only when transforming
|
||||
- Templates/Tasks: Only when executing
|
||||
- Always indicate loading
|
||||
kb-mode-behavior:
|
||||
- When *kb-mode is invoked, use kb-mode-interaction task
|
||||
- Don't dump all KB content immediately
|
||||
- Present topic areas and wait for user selection
|
||||
- Provide focused, contextual responses
|
||||
workflow-guidance:
|
||||
- Discover available workflows in the bundle at runtime
|
||||
- Understand each workflow's purpose, options, and decision points
|
||||
@@ -149,6 +154,7 @@ dependencies:
|
||||
tasks:
|
||||
- advanced-elicitation
|
||||
- create-doc
|
||||
- kb-mode-interaction
|
||||
data:
|
||||
- bmad-kb
|
||||
utils:
|
||||
@@ -329,6 +335,79 @@ If template specifies a checklist:
|
||||
- Template markup is for AI processing only - never expose to users
|
||||
==================== END: tasks#create-doc ====================
|
||||
|
||||
==================== START: tasks#kb-mode-interaction ====================
|
||||
# KB Mode Interaction Task
|
||||
|
||||
## Purpose
|
||||
Provide a user-friendly interface to the BMAD knowledge base without overwhelming users with information upfront.
|
||||
|
||||
## Instructions
|
||||
|
||||
When entering KB mode (*kb-mode), follow these steps:
|
||||
|
||||
### 1. Welcome and Guide
|
||||
Announce entering KB mode with a brief, friendly introduction:
|
||||
|
||||
"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."
|
||||
|
||||
### 2. Present Topic Areas
|
||||
Offer a concise list of main topic areas the user might want to explore:
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
### 3. Respond Contextually
|
||||
- Wait for user's specific question or topic selection
|
||||
- Provide focused, relevant information from the knowledge base
|
||||
- Offer to dive deeper or explore related topics
|
||||
- Keep responses concise unless user asks for detailed explanations
|
||||
|
||||
### 4. Interactive Exploration
|
||||
- After answering, suggest related topics they might find helpful
|
||||
- Maintain conversational flow rather than data dumping
|
||||
- Use examples when appropriate
|
||||
- Reference specific documentation sections when relevant
|
||||
|
||||
### 5. Exit Gracefully
|
||||
When user is done or wants to exit KB mode:
|
||||
- Summarize key points discussed if helpful
|
||||
- Remind them they can return to KB mode anytime with *kb-mode
|
||||
- Suggest next steps based on what was discussed
|
||||
|
||||
## Example Interaction
|
||||
|
||||
**User**: *kb-mode
|
||||
|
||||
**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.
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
**User**: Tell me about workflows
|
||||
|
||||
**Assistant**: [Provides focused information about workflows from the KB, then offers to explore specific workflow types or related topics]
|
||||
==================== END: tasks#kb-mode-interaction ====================
|
||||
|
||||
==================== START: data#bmad-kb ====================
|
||||
# BMAD Knowledge Base
|
||||
|
||||
@@ -398,6 +477,64 @@ npx bmad-method install
|
||||
|
||||
**Cost-Saving Tip**: Create large documents (PRDs, architecture) in web UI, then copy to `docs/prd.md` and `docs/architecture.md` in your project before switching to IDE for development.
|
||||
|
||||
## Core Configuration (core-config.yml)
|
||||
|
||||
**New in V4**: The `bmad-core/core-config.yml` file is a critical innovation that enables BMAD to work seamlessly with any project structure, providing maximum flexibility and backwards compatibility.
|
||||
|
||||
### What is core-config.yml?
|
||||
|
||||
This configuration file acts as a map for BMAD agents, telling them exactly where to find your project documents and how they're structured. It enables:
|
||||
|
||||
- **Version Flexibility**: Work with V3, V4, or custom document structures
|
||||
- **Custom Locations**: Define where your documents and shards live
|
||||
- **Developer Context**: Specify which files the dev agent should always load
|
||||
- **Debug Support**: Built-in logging for troubleshooting
|
||||
|
||||
### Key Configuration Areas
|
||||
|
||||
#### PRD Configuration
|
||||
- **prdVersion**: Tells agents if PRD follows v3 or v4 conventions
|
||||
- **prdSharded**: Whether epics are embedded (false) or in separate files (true)
|
||||
- **prdShardedLocation**: Where to find sharded epic files
|
||||
- **epicFilePattern**: Pattern for epic filenames (e.g., `epic-{n}*.md`)
|
||||
|
||||
#### Architecture Configuration
|
||||
- **architectureVersion**: v3 (monolithic) or v4 (sharded)
|
||||
- **architectureSharded**: Whether architecture is split into components
|
||||
- **architectureShardedLocation**: Where sharded architecture files live
|
||||
|
||||
#### Developer Files
|
||||
- **devLoadAlwaysFiles**: List of files the dev agent loads for every task
|
||||
- **devDebugLog**: Where dev agent logs repeated failures
|
||||
- **agentCoreDump**: Export location for chat conversations
|
||||
|
||||
### Why It Matters
|
||||
|
||||
1. **No Forced Migrations**: Keep your existing document structure
|
||||
2. **Gradual Adoption**: Start with V3 and migrate to V4 at your pace
|
||||
3. **Custom Workflows**: Configure BMAD to match your team's process
|
||||
4. **Intelligent Agents**: Agents automatically adapt to your configuration
|
||||
|
||||
### Common Configurations
|
||||
|
||||
**Legacy V3 Project**:
|
||||
```yaml
|
||||
prdVersion: v3
|
||||
prdSharded: false
|
||||
architectureVersion: v3
|
||||
architectureSharded: false
|
||||
```
|
||||
|
||||
**V4 Optimized Project**:
|
||||
```yaml
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs/prd
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
```
|
||||
|
||||
## Core Philosophy
|
||||
|
||||
### Vibe CEO'ing
|
||||
|
||||
54
dist/agents/sm.txt
vendored
54
dist/agents/sm.txt
vendored
@@ -109,14 +109,14 @@ To identify the next logical story based on project progress and epic definition
|
||||
2. Run the BMAD installer against your project to upgrade and add the file automatically
|
||||
Please add and configure core-config.yml before proceeding."
|
||||
- Extract the following key configurations:
|
||||
- `dev-story-location`: Where to save story files
|
||||
- `devStoryLocation`: Where to save story files
|
||||
- `prd.prdSharded`: Whether PRD is sharded or monolithic
|
||||
- `prd.prd-file`: Location of monolithic PRD (if not sharded)
|
||||
- `prd.prdFile`: Location of monolithic PRD (if not sharded)
|
||||
- `prd.prdShardedLocation`: Location of sharded epic files
|
||||
- `prd.epicFilePattern`: Pattern for epic files (e.g., `epic-{n}*.md`)
|
||||
- `architecture.architectureVersion`: Architecture document version
|
||||
- `architecture.architectureSharded`: Whether architecture is sharded
|
||||
- `architecture.architecture-file`: Location of monolithic architecture
|
||||
- `architecture.architectureFile`: Location of monolithic architecture
|
||||
- `architecture.architectureShardedLocation`: Location of sharded architecture files
|
||||
|
||||
### 1. Identify Next Story for Preparation
|
||||
@@ -125,11 +125,11 @@ To identify the next logical story based on project progress and epic definition
|
||||
|
||||
- Based on `prdSharded` from config:
|
||||
- **If `prdSharded: true`**: Look for epic files in `prdShardedLocation` using `epicFilePattern`
|
||||
- **If `prdSharded: false`**: Load the full PRD from `prd-file` and extract epics from section headings (## Epic N or ### Epic N)
|
||||
- **If `prdSharded: false`**: Load the full PRD from `prdFile` and extract epics from section headings (## Epic N or ### Epic N)
|
||||
|
||||
#### 1.2 Review Existing Stories
|
||||
|
||||
- Check `dev-story-location` from config (e.g., `docs/stories/`) for existing story files
|
||||
- Check `devStoryLocation` from config (e.g., `docs/stories/`) for existing story files
|
||||
- If the directory exists and has at least 1 file, find the highest-numbered story file.
|
||||
- **If a highest story file exists (`{lastEpicNum}.{lastStoryNum}.story.md`):**
|
||||
- Verify its `Status` is 'Done' (or equivalent).
|
||||
@@ -149,12 +149,40 @@ To identify the next logical story based on project progress and epic definition
|
||||
```
|
||||
|
||||
- Proceed only if user selects option 3 (Override) or if the last story was 'Done'.
|
||||
- If proceeding: Look for the Epic File for `{lastEpicNum}` (e.g., `epic-{lastEpicNum}*.md`) and check for a story numbered `{lastStoryNum + 1}`. If it exists and its prerequisites (per Epic File) are met, this is the next story.
|
||||
- Else (story not found or prerequisites not met): The next story is the first story in the next Epic File (e.g., look for `epic-{lastEpicNum + 1}*.md`, then `epic-{lastEpicNum + 2}*.md`, etc.) whose prerequisites are met.
|
||||
- If proceeding: Look for the Epic File for `{lastEpicNum}` (e.g., `epic-{lastEpicNum}*.md`) and parse it to find ALL stories in that epic. **ALWAYS select the next sequential story** (e.g., if last was 2.2, next MUST be 2.3).
|
||||
- If the next sequential story has unmet prerequisites, present this to the user:
|
||||
|
||||
```plaintext
|
||||
ALERT: Next story has unmet prerequisites:
|
||||
Story: {epicNum}.{storyNum} - {Story Title}
|
||||
Prerequisites not met: [list specific prerequisites]
|
||||
|
||||
Would you like to:
|
||||
1. Create the story anyway (mark prerequisites as pending)
|
||||
2. Skip to a different story (requires your specific instruction)
|
||||
3. Cancel story creation
|
||||
|
||||
Please choose an option (1/2/3):
|
||||
```
|
||||
|
||||
- If there are no more stories in the current epic (e.g., 2.9 was done and there is no 2.10):
|
||||
|
||||
```plaintext
|
||||
Epic {epicNum} Complete: All stories in Epic {epicNum} have been completed.
|
||||
|
||||
Would you like to:
|
||||
1. Begin Epic {epicNum + 1} with story {epicNum + 1}.1
|
||||
2. Select a specific story to work on
|
||||
3. Cancel story creation
|
||||
|
||||
Please choose an option (1/2/3):
|
||||
```
|
||||
|
||||
- **CRITICAL**: NEVER automatically skip to another epic or non-sequential story. The user MUST explicitly instruct which story to create if skipping the sequential order.
|
||||
|
||||
- **If no story files exist in `docs/stories/`:**
|
||||
- The next story is the first story in the first epic file (look for `epic-1-*.md`, then `epic-2-*.md`, etc.) whose prerequisites are met.
|
||||
- If no suitable story with met prerequisites is found, report to the user that story creation is blocked, specifying what prerequisites are pending. HALT task.
|
||||
- The next story is ALWAYS 1.1 (the first story of the first epic).
|
||||
- If story 1.1 has unmet prerequisites, follow the same alert process as above.
|
||||
- Announce the identified story to the user: "Identified next story for preparation: {epicNum}.{storyNum} - {Story Title}".
|
||||
|
||||
### 2. Gather Core Story Requirements (from Epic)
|
||||
@@ -190,13 +218,13 @@ Based on configuration loaded in Step 0:
|
||||
- Follow the structured reading order in section 4.2 below
|
||||
|
||||
- **If `architectureVersion: v4` and `architectureSharded: false`**:
|
||||
- Load the monolithic architecture from `architecture-file`
|
||||
- Load the monolithic architecture from `architectureFile`
|
||||
- Extract relevant sections based on v4 structure (tech stack, project structure, etc.)
|
||||
|
||||
- **If `architectureVersion` is NOT v4**:
|
||||
- Inform user: "Architecture document is not v4 format. Will use best judgment to find relevant information."
|
||||
- If `architectureSharded: true`: Search sharded files by filename relevance
|
||||
- If `architectureSharded: false`: Search within monolithic `architecture-file` for relevant sections
|
||||
- If `architectureSharded: false`: Search within monolithic `architectureFile` for relevant sections
|
||||
|
||||
#### 4.2 Recommended Reading Order Based on Story Type (v4 Sharded Only)
|
||||
|
||||
@@ -253,7 +281,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
|
||||
|
||||
### 6. Populate Story Template with Full Context
|
||||
|
||||
- Create a new story file: `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config).
|
||||
- Create a new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config).
|
||||
- Use the Story Template to structure the file.
|
||||
- Fill in:
|
||||
- Story `{EpicNum}.{StoryNum}: {Short Title Copied from Epic File}`
|
||||
@@ -300,7 +328,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
|
||||
- Verify all source references are included for technical details
|
||||
- Ensure tasks align with both epic requirements and architecture constraints
|
||||
- Update status to "Draft"
|
||||
- Save the story file to `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config)
|
||||
- Save the story file to `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config)
|
||||
|
||||
### 9. Report Completion
|
||||
|
||||
|
||||
@@ -214,6 +214,11 @@ loading:
|
||||
- Agents: Only when transforming
|
||||
- Templates/Tasks: Only when executing
|
||||
- Always indicate loading
|
||||
kb-mode-behavior:
|
||||
- When *kb-mode is invoked, use kb-mode-interaction task
|
||||
- Don't dump all KB content immediately
|
||||
- Present topic areas and wait for user selection
|
||||
- Provide focused, contextual responses
|
||||
workflow-guidance:
|
||||
- Discover available workflows in the bundle at runtime
|
||||
- Understand each workflow's purpose, options, and decision points
|
||||
@@ -227,6 +232,7 @@ dependencies:
|
||||
tasks:
|
||||
- advanced-elicitation
|
||||
- create-doc
|
||||
- kb-mode-interaction
|
||||
data:
|
||||
- bmad-kb
|
||||
utils:
|
||||
@@ -2234,6 +2240,79 @@ Templates in the BMAD method use standardized markup for AI processing. These co
|
||||
- All template-specific instructions are embedded within templates
|
||||
==================== END: utils#template-format ====================
|
||||
|
||||
==================== START: tasks#kb-mode-interaction ====================
|
||||
# KB Mode Interaction Task
|
||||
|
||||
## Purpose
|
||||
Provide a user-friendly interface to the BMAD knowledge base without overwhelming users with information upfront.
|
||||
|
||||
## Instructions
|
||||
|
||||
When entering KB mode (*kb-mode), follow these steps:
|
||||
|
||||
### 1. Welcome and Guide
|
||||
Announce entering KB mode with a brief, friendly introduction:
|
||||
|
||||
"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."
|
||||
|
||||
### 2. Present Topic Areas
|
||||
Offer a concise list of main topic areas the user might want to explore:
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
### 3. Respond Contextually
|
||||
- Wait for user's specific question or topic selection
|
||||
- Provide focused, relevant information from the knowledge base
|
||||
- Offer to dive deeper or explore related topics
|
||||
- Keep responses concise unless user asks for detailed explanations
|
||||
|
||||
### 4. Interactive Exploration
|
||||
- After answering, suggest related topics they might find helpful
|
||||
- Maintain conversational flow rather than data dumping
|
||||
- Use examples when appropriate
|
||||
- Reference specific documentation sections when relevant
|
||||
|
||||
### 5. Exit Gracefully
|
||||
When user is done or wants to exit KB mode:
|
||||
- Summarize key points discussed if helpful
|
||||
- Remind them they can return to KB mode anytime with *kb-mode
|
||||
- Suggest next steps based on what was discussed
|
||||
|
||||
## Example Interaction
|
||||
|
||||
**User**: *kb-mode
|
||||
|
||||
**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.
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
**User**: Tell me about workflows
|
||||
|
||||
**Assistant**: [Provides focused information about workflows from the KB, then offers to explore specific workflow types or related topics]
|
||||
==================== END: tasks#kb-mode-interaction ====================
|
||||
|
||||
==================== START: utils#workflow-management ====================
|
||||
# Workflow Management
|
||||
|
||||
|
||||
193
dist/teams/team-all.txt
vendored
193
dist/teams/team-all.txt
vendored
@@ -153,6 +153,11 @@ loading:
|
||||
- Agents: Only when transforming
|
||||
- Templates/Tasks: Only when executing
|
||||
- Always indicate loading
|
||||
kb-mode-behavior:
|
||||
- When *kb-mode is invoked, use kb-mode-interaction task
|
||||
- Don't dump all KB content immediately
|
||||
- Present topic areas and wait for user selection
|
||||
- Provide focused, contextual responses
|
||||
workflow-guidance:
|
||||
- Discover available workflows in the bundle at runtime
|
||||
- Understand each workflow's purpose, options, and decision points
|
||||
@@ -166,6 +171,7 @@ dependencies:
|
||||
tasks:
|
||||
- advanced-elicitation
|
||||
- create-doc
|
||||
- kb-mode-interaction
|
||||
data:
|
||||
- bmad-kb
|
||||
utils:
|
||||
@@ -816,6 +822,79 @@ If template specifies a checklist:
|
||||
- Template markup is for AI processing only - never expose to users
|
||||
==================== END: tasks#create-doc ====================
|
||||
|
||||
==================== START: tasks#kb-mode-interaction ====================
|
||||
# KB Mode Interaction Task
|
||||
|
||||
## Purpose
|
||||
Provide a user-friendly interface to the BMAD knowledge base without overwhelming users with information upfront.
|
||||
|
||||
## Instructions
|
||||
|
||||
When entering KB mode (*kb-mode), follow these steps:
|
||||
|
||||
### 1. Welcome and Guide
|
||||
Announce entering KB mode with a brief, friendly introduction:
|
||||
|
||||
"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."
|
||||
|
||||
### 2. Present Topic Areas
|
||||
Offer a concise list of main topic areas the user might want to explore:
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
### 3. Respond Contextually
|
||||
- Wait for user's specific question or topic selection
|
||||
- Provide focused, relevant information from the knowledge base
|
||||
- Offer to dive deeper or explore related topics
|
||||
- Keep responses concise unless user asks for detailed explanations
|
||||
|
||||
### 4. Interactive Exploration
|
||||
- After answering, suggest related topics they might find helpful
|
||||
- Maintain conversational flow rather than data dumping
|
||||
- Use examples when appropriate
|
||||
- Reference specific documentation sections when relevant
|
||||
|
||||
### 5. Exit Gracefully
|
||||
When user is done or wants to exit KB mode:
|
||||
- Summarize key points discussed if helpful
|
||||
- Remind them they can return to KB mode anytime with *kb-mode
|
||||
- Suggest next steps based on what was discussed
|
||||
|
||||
## Example Interaction
|
||||
|
||||
**User**: *kb-mode
|
||||
|
||||
**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.
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
**User**: Tell me about workflows
|
||||
|
||||
**Assistant**: [Provides focused information about workflows from the KB, then offers to explore specific workflow types or related topics]
|
||||
==================== END: tasks#kb-mode-interaction ====================
|
||||
|
||||
==================== START: data#bmad-kb ====================
|
||||
# BMAD Knowledge Base
|
||||
|
||||
@@ -885,6 +964,64 @@ npx bmad-method install
|
||||
|
||||
**Cost-Saving Tip**: Create large documents (PRDs, architecture) in web UI, then copy to `docs/prd.md` and `docs/architecture.md` in your project before switching to IDE for development.
|
||||
|
||||
## Core Configuration (core-config.yml)
|
||||
|
||||
**New in V4**: The `bmad-core/core-config.yml` file is a critical innovation that enables BMAD to work seamlessly with any project structure, providing maximum flexibility and backwards compatibility.
|
||||
|
||||
### What is core-config.yml?
|
||||
|
||||
This configuration file acts as a map for BMAD agents, telling them exactly where to find your project documents and how they're structured. It enables:
|
||||
|
||||
- **Version Flexibility**: Work with V3, V4, or custom document structures
|
||||
- **Custom Locations**: Define where your documents and shards live
|
||||
- **Developer Context**: Specify which files the dev agent should always load
|
||||
- **Debug Support**: Built-in logging for troubleshooting
|
||||
|
||||
### Key Configuration Areas
|
||||
|
||||
#### PRD Configuration
|
||||
- **prdVersion**: Tells agents if PRD follows v3 or v4 conventions
|
||||
- **prdSharded**: Whether epics are embedded (false) or in separate files (true)
|
||||
- **prdShardedLocation**: Where to find sharded epic files
|
||||
- **epicFilePattern**: Pattern for epic filenames (e.g., `epic-{n}*.md`)
|
||||
|
||||
#### Architecture Configuration
|
||||
- **architectureVersion**: v3 (monolithic) or v4 (sharded)
|
||||
- **architectureSharded**: Whether architecture is split into components
|
||||
- **architectureShardedLocation**: Where sharded architecture files live
|
||||
|
||||
#### Developer Files
|
||||
- **devLoadAlwaysFiles**: List of files the dev agent loads for every task
|
||||
- **devDebugLog**: Where dev agent logs repeated failures
|
||||
- **agentCoreDump**: Export location for chat conversations
|
||||
|
||||
### Why It Matters
|
||||
|
||||
1. **No Forced Migrations**: Keep your existing document structure
|
||||
2. **Gradual Adoption**: Start with V3 and migrate to V4 at your pace
|
||||
3. **Custom Workflows**: Configure BMAD to match your team's process
|
||||
4. **Intelligent Agents**: Agents automatically adapt to your configuration
|
||||
|
||||
### Common Configurations
|
||||
|
||||
**Legacy V3 Project**:
|
||||
```yaml
|
||||
prdVersion: v3
|
||||
prdSharded: false
|
||||
architectureVersion: v3
|
||||
architectureSharded: false
|
||||
```
|
||||
|
||||
**V4 Optimized Project**:
|
||||
```yaml
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs/prd
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
```
|
||||
|
||||
## Core Philosophy
|
||||
|
||||
### Vibe CEO'ing
|
||||
@@ -8519,14 +8656,14 @@ To identify the next logical story based on project progress and epic definition
|
||||
2. Run the BMAD installer against your project to upgrade and add the file automatically
|
||||
Please add and configure core-config.yml before proceeding."
|
||||
- Extract the following key configurations:
|
||||
- `dev-story-location`: Where to save story files
|
||||
- `devStoryLocation`: Where to save story files
|
||||
- `prd.prdSharded`: Whether PRD is sharded or monolithic
|
||||
- `prd.prd-file`: Location of monolithic PRD (if not sharded)
|
||||
- `prd.prdFile`: Location of monolithic PRD (if not sharded)
|
||||
- `prd.prdShardedLocation`: Location of sharded epic files
|
||||
- `prd.epicFilePattern`: Pattern for epic files (e.g., `epic-{n}*.md`)
|
||||
- `architecture.architectureVersion`: Architecture document version
|
||||
- `architecture.architectureSharded`: Whether architecture is sharded
|
||||
- `architecture.architecture-file`: Location of monolithic architecture
|
||||
- `architecture.architectureFile`: Location of monolithic architecture
|
||||
- `architecture.architectureShardedLocation`: Location of sharded architecture files
|
||||
|
||||
### 1. Identify Next Story for Preparation
|
||||
@@ -8535,11 +8672,11 @@ To identify the next logical story based on project progress and epic definition
|
||||
|
||||
- Based on `prdSharded` from config:
|
||||
- **If `prdSharded: true`**: Look for epic files in `prdShardedLocation` using `epicFilePattern`
|
||||
- **If `prdSharded: false`**: Load the full PRD from `prd-file` and extract epics from section headings (## Epic N or ### Epic N)
|
||||
- **If `prdSharded: false`**: Load the full PRD from `prdFile` and extract epics from section headings (## Epic N or ### Epic N)
|
||||
|
||||
#### 1.2 Review Existing Stories
|
||||
|
||||
- Check `dev-story-location` from config (e.g., `docs/stories/`) for existing story files
|
||||
- Check `devStoryLocation` from config (e.g., `docs/stories/`) for existing story files
|
||||
- If the directory exists and has at least 1 file, find the highest-numbered story file.
|
||||
- **If a highest story file exists (`{lastEpicNum}.{lastStoryNum}.story.md`):**
|
||||
- Verify its `Status` is 'Done' (or equivalent).
|
||||
@@ -8559,12 +8696,40 @@ To identify the next logical story based on project progress and epic definition
|
||||
```
|
||||
|
||||
- Proceed only if user selects option 3 (Override) or if the last story was 'Done'.
|
||||
- If proceeding: Look for the Epic File for `{lastEpicNum}` (e.g., `epic-{lastEpicNum}*.md`) and check for a story numbered `{lastStoryNum + 1}`. If it exists and its prerequisites (per Epic File) are met, this is the next story.
|
||||
- Else (story not found or prerequisites not met): The next story is the first story in the next Epic File (e.g., look for `epic-{lastEpicNum + 1}*.md`, then `epic-{lastEpicNum + 2}*.md`, etc.) whose prerequisites are met.
|
||||
- If proceeding: Look for the Epic File for `{lastEpicNum}` (e.g., `epic-{lastEpicNum}*.md`) and parse it to find ALL stories in that epic. **ALWAYS select the next sequential story** (e.g., if last was 2.2, next MUST be 2.3).
|
||||
- If the next sequential story has unmet prerequisites, present this to the user:
|
||||
|
||||
```plaintext
|
||||
ALERT: Next story has unmet prerequisites:
|
||||
Story: {epicNum}.{storyNum} - {Story Title}
|
||||
Prerequisites not met: [list specific prerequisites]
|
||||
|
||||
Would you like to:
|
||||
1. Create the story anyway (mark prerequisites as pending)
|
||||
2. Skip to a different story (requires your specific instruction)
|
||||
3. Cancel story creation
|
||||
|
||||
Please choose an option (1/2/3):
|
||||
```
|
||||
|
||||
- If there are no more stories in the current epic (e.g., 2.9 was done and there is no 2.10):
|
||||
|
||||
```plaintext
|
||||
Epic {epicNum} Complete: All stories in Epic {epicNum} have been completed.
|
||||
|
||||
Would you like to:
|
||||
1. Begin Epic {epicNum + 1} with story {epicNum + 1}.1
|
||||
2. Select a specific story to work on
|
||||
3. Cancel story creation
|
||||
|
||||
Please choose an option (1/2/3):
|
||||
```
|
||||
|
||||
- **CRITICAL**: NEVER automatically skip to another epic or non-sequential story. The user MUST explicitly instruct which story to create if skipping the sequential order.
|
||||
|
||||
- **If no story files exist in `docs/stories/`:**
|
||||
- The next story is the first story in the first epic file (look for `epic-1-*.md`, then `epic-2-*.md`, etc.) whose prerequisites are met.
|
||||
- If no suitable story with met prerequisites is found, report to the user that story creation is blocked, specifying what prerequisites are pending. HALT task.
|
||||
- The next story is ALWAYS 1.1 (the first story of the first epic).
|
||||
- If story 1.1 has unmet prerequisites, follow the same alert process as above.
|
||||
- Announce the identified story to the user: "Identified next story for preparation: {epicNum}.{storyNum} - {Story Title}".
|
||||
|
||||
### 2. Gather Core Story Requirements (from Epic)
|
||||
@@ -8600,13 +8765,13 @@ Based on configuration loaded in Step 0:
|
||||
- Follow the structured reading order in section 4.2 below
|
||||
|
||||
- **If `architectureVersion: v4` and `architectureSharded: false`**:
|
||||
- Load the monolithic architecture from `architecture-file`
|
||||
- Load the monolithic architecture from `architectureFile`
|
||||
- Extract relevant sections based on v4 structure (tech stack, project structure, etc.)
|
||||
|
||||
- **If `architectureVersion` is NOT v4**:
|
||||
- Inform user: "Architecture document is not v4 format. Will use best judgment to find relevant information."
|
||||
- If `architectureSharded: true`: Search sharded files by filename relevance
|
||||
- If `architectureSharded: false`: Search within monolithic `architecture-file` for relevant sections
|
||||
- If `architectureSharded: false`: Search within monolithic `architectureFile` for relevant sections
|
||||
|
||||
#### 4.2 Recommended Reading Order Based on Story Type (v4 Sharded Only)
|
||||
|
||||
@@ -8663,7 +8828,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
|
||||
|
||||
### 6. Populate Story Template with Full Context
|
||||
|
||||
- Create a new story file: `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config).
|
||||
- Create a new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config).
|
||||
- Use the Story Template to structure the file.
|
||||
- Fill in:
|
||||
- Story `{EpicNum}.{StoryNum}: {Short Title Copied from Epic File}`
|
||||
@@ -8710,7 +8875,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
|
||||
- Verify all source references are included for technical details
|
||||
- Ensure tasks align with both epic requirements and architecture constraints
|
||||
- Update status to "Draft"
|
||||
- Save the story file to `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config)
|
||||
- Save the story file to `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config)
|
||||
|
||||
### 9. Report Completion
|
||||
|
||||
@@ -9452,7 +9617,7 @@ workflow:
|
||||
|
||||
sequence:
|
||||
- step: service_analysis
|
||||
agent: architect
|
||||
agent: architect
|
||||
action: analyze existing project and use task document-project
|
||||
creates: multiple documents per the document-project template
|
||||
notes: "Review existing service documentation, codebase, performance metrics, and identify integration dependencies."
|
||||
|
||||
139
dist/teams/team-fullstack.txt
vendored
139
dist/teams/team-fullstack.txt
vendored
@@ -157,6 +157,11 @@ loading:
|
||||
- Agents: Only when transforming
|
||||
- Templates/Tasks: Only when executing
|
||||
- Always indicate loading
|
||||
kb-mode-behavior:
|
||||
- When *kb-mode is invoked, use kb-mode-interaction task
|
||||
- Don't dump all KB content immediately
|
||||
- Present topic areas and wait for user selection
|
||||
- Provide focused, contextual responses
|
||||
workflow-guidance:
|
||||
- Discover available workflows in the bundle at runtime
|
||||
- Understand each workflow's purpose, options, and decision points
|
||||
@@ -170,6 +175,7 @@ dependencies:
|
||||
tasks:
|
||||
- advanced-elicitation
|
||||
- create-doc
|
||||
- kb-mode-interaction
|
||||
data:
|
||||
- bmad-kb
|
||||
utils:
|
||||
@@ -663,6 +669,79 @@ If template specifies a checklist:
|
||||
- Template markup is for AI processing only - never expose to users
|
||||
==================== END: tasks#create-doc ====================
|
||||
|
||||
==================== START: tasks#kb-mode-interaction ====================
|
||||
# KB Mode Interaction Task
|
||||
|
||||
## Purpose
|
||||
Provide a user-friendly interface to the BMAD knowledge base without overwhelming users with information upfront.
|
||||
|
||||
## Instructions
|
||||
|
||||
When entering KB mode (*kb-mode), follow these steps:
|
||||
|
||||
### 1. Welcome and Guide
|
||||
Announce entering KB mode with a brief, friendly introduction:
|
||||
|
||||
"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."
|
||||
|
||||
### 2. Present Topic Areas
|
||||
Offer a concise list of main topic areas the user might want to explore:
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
### 3. Respond Contextually
|
||||
- Wait for user's specific question or topic selection
|
||||
- Provide focused, relevant information from the knowledge base
|
||||
- Offer to dive deeper or explore related topics
|
||||
- Keep responses concise unless user asks for detailed explanations
|
||||
|
||||
### 4. Interactive Exploration
|
||||
- After answering, suggest related topics they might find helpful
|
||||
- Maintain conversational flow rather than data dumping
|
||||
- Use examples when appropriate
|
||||
- Reference specific documentation sections when relevant
|
||||
|
||||
### 5. Exit Gracefully
|
||||
When user is done or wants to exit KB mode:
|
||||
- Summarize key points discussed if helpful
|
||||
- Remind them they can return to KB mode anytime with *kb-mode
|
||||
- Suggest next steps based on what was discussed
|
||||
|
||||
## Example Interaction
|
||||
|
||||
**User**: *kb-mode
|
||||
|
||||
**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.
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
**User**: Tell me about workflows
|
||||
|
||||
**Assistant**: [Provides focused information about workflows from the KB, then offers to explore specific workflow types or related topics]
|
||||
==================== END: tasks#kb-mode-interaction ====================
|
||||
|
||||
==================== START: data#bmad-kb ====================
|
||||
# BMAD Knowledge Base
|
||||
|
||||
@@ -732,6 +811,64 @@ npx bmad-method install
|
||||
|
||||
**Cost-Saving Tip**: Create large documents (PRDs, architecture) in web UI, then copy to `docs/prd.md` and `docs/architecture.md` in your project before switching to IDE for development.
|
||||
|
||||
## Core Configuration (core-config.yml)
|
||||
|
||||
**New in V4**: The `bmad-core/core-config.yml` file is a critical innovation that enables BMAD to work seamlessly with any project structure, providing maximum flexibility and backwards compatibility.
|
||||
|
||||
### What is core-config.yml?
|
||||
|
||||
This configuration file acts as a map for BMAD agents, telling them exactly where to find your project documents and how they're structured. It enables:
|
||||
|
||||
- **Version Flexibility**: Work with V3, V4, or custom document structures
|
||||
- **Custom Locations**: Define where your documents and shards live
|
||||
- **Developer Context**: Specify which files the dev agent should always load
|
||||
- **Debug Support**: Built-in logging for troubleshooting
|
||||
|
||||
### Key Configuration Areas
|
||||
|
||||
#### PRD Configuration
|
||||
- **prdVersion**: Tells agents if PRD follows v3 or v4 conventions
|
||||
- **prdSharded**: Whether epics are embedded (false) or in separate files (true)
|
||||
- **prdShardedLocation**: Where to find sharded epic files
|
||||
- **epicFilePattern**: Pattern for epic filenames (e.g., `epic-{n}*.md`)
|
||||
|
||||
#### Architecture Configuration
|
||||
- **architectureVersion**: v3 (monolithic) or v4 (sharded)
|
||||
- **architectureSharded**: Whether architecture is split into components
|
||||
- **architectureShardedLocation**: Where sharded architecture files live
|
||||
|
||||
#### Developer Files
|
||||
- **devLoadAlwaysFiles**: List of files the dev agent loads for every task
|
||||
- **devDebugLog**: Where dev agent logs repeated failures
|
||||
- **agentCoreDump**: Export location for chat conversations
|
||||
|
||||
### Why It Matters
|
||||
|
||||
1. **No Forced Migrations**: Keep your existing document structure
|
||||
2. **Gradual Adoption**: Start with V3 and migrate to V4 at your pace
|
||||
3. **Custom Workflows**: Configure BMAD to match your team's process
|
||||
4. **Intelligent Agents**: Agents automatically adapt to your configuration
|
||||
|
||||
### Common Configurations
|
||||
|
||||
**Legacy V3 Project**:
|
||||
```yaml
|
||||
prdVersion: v3
|
||||
prdSharded: false
|
||||
architectureVersion: v3
|
||||
architectureSharded: false
|
||||
```
|
||||
|
||||
**V4 Optimized Project**:
|
||||
```yaml
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs/prd
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
```
|
||||
|
||||
## Core Philosophy
|
||||
|
||||
### Vibe CEO'ing
|
||||
@@ -8809,7 +8946,7 @@ workflow:
|
||||
|
||||
sequence:
|
||||
- step: service_analysis
|
||||
agent: architect
|
||||
agent: architect
|
||||
action: analyze existing project and use task document-project
|
||||
creates: multiple documents per the document-project template
|
||||
notes: "Review existing service documentation, codebase, performance metrics, and identify integration dependencies."
|
||||
|
||||
191
dist/teams/team-ide-minimal.txt
vendored
191
dist/teams/team-ide-minimal.txt
vendored
@@ -149,6 +149,11 @@ loading:
|
||||
- Agents: Only when transforming
|
||||
- Templates/Tasks: Only when executing
|
||||
- Always indicate loading
|
||||
kb-mode-behavior:
|
||||
- When *kb-mode is invoked, use kb-mode-interaction task
|
||||
- Don't dump all KB content immediately
|
||||
- Present topic areas and wait for user selection
|
||||
- Provide focused, contextual responses
|
||||
workflow-guidance:
|
||||
- Discover available workflows in the bundle at runtime
|
||||
- Understand each workflow's purpose, options, and decision points
|
||||
@@ -162,6 +167,7 @@ dependencies:
|
||||
tasks:
|
||||
- advanced-elicitation
|
||||
- create-doc
|
||||
- kb-mode-interaction
|
||||
data:
|
||||
- bmad-kb
|
||||
utils:
|
||||
@@ -562,6 +568,79 @@ If template specifies a checklist:
|
||||
- Template markup is for AI processing only - never expose to users
|
||||
==================== END: tasks#create-doc ====================
|
||||
|
||||
==================== START: tasks#kb-mode-interaction ====================
|
||||
# KB Mode Interaction Task
|
||||
|
||||
## Purpose
|
||||
Provide a user-friendly interface to the BMAD knowledge base without overwhelming users with information upfront.
|
||||
|
||||
## Instructions
|
||||
|
||||
When entering KB mode (*kb-mode), follow these steps:
|
||||
|
||||
### 1. Welcome and Guide
|
||||
Announce entering KB mode with a brief, friendly introduction:
|
||||
|
||||
"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."
|
||||
|
||||
### 2. Present Topic Areas
|
||||
Offer a concise list of main topic areas the user might want to explore:
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
### 3. Respond Contextually
|
||||
- Wait for user's specific question or topic selection
|
||||
- Provide focused, relevant information from the knowledge base
|
||||
- Offer to dive deeper or explore related topics
|
||||
- Keep responses concise unless user asks for detailed explanations
|
||||
|
||||
### 4. Interactive Exploration
|
||||
- After answering, suggest related topics they might find helpful
|
||||
- Maintain conversational flow rather than data dumping
|
||||
- Use examples when appropriate
|
||||
- Reference specific documentation sections when relevant
|
||||
|
||||
### 5. Exit Gracefully
|
||||
When user is done or wants to exit KB mode:
|
||||
- Summarize key points discussed if helpful
|
||||
- Remind them they can return to KB mode anytime with *kb-mode
|
||||
- Suggest next steps based on what was discussed
|
||||
|
||||
## Example Interaction
|
||||
|
||||
**User**: *kb-mode
|
||||
|
||||
**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.
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
**User**: Tell me about workflows
|
||||
|
||||
**Assistant**: [Provides focused information about workflows from the KB, then offers to explore specific workflow types or related topics]
|
||||
==================== END: tasks#kb-mode-interaction ====================
|
||||
|
||||
==================== START: data#bmad-kb ====================
|
||||
# BMAD Knowledge Base
|
||||
|
||||
@@ -631,6 +710,64 @@ npx bmad-method install
|
||||
|
||||
**Cost-Saving Tip**: Create large documents (PRDs, architecture) in web UI, then copy to `docs/prd.md` and `docs/architecture.md` in your project before switching to IDE for development.
|
||||
|
||||
## Core Configuration (core-config.yml)
|
||||
|
||||
**New in V4**: The `bmad-core/core-config.yml` file is a critical innovation that enables BMAD to work seamlessly with any project structure, providing maximum flexibility and backwards compatibility.
|
||||
|
||||
### What is core-config.yml?
|
||||
|
||||
This configuration file acts as a map for BMAD agents, telling them exactly where to find your project documents and how they're structured. It enables:
|
||||
|
||||
- **Version Flexibility**: Work with V3, V4, or custom document structures
|
||||
- **Custom Locations**: Define where your documents and shards live
|
||||
- **Developer Context**: Specify which files the dev agent should always load
|
||||
- **Debug Support**: Built-in logging for troubleshooting
|
||||
|
||||
### Key Configuration Areas
|
||||
|
||||
#### PRD Configuration
|
||||
- **prdVersion**: Tells agents if PRD follows v3 or v4 conventions
|
||||
- **prdSharded**: Whether epics are embedded (false) or in separate files (true)
|
||||
- **prdShardedLocation**: Where to find sharded epic files
|
||||
- **epicFilePattern**: Pattern for epic filenames (e.g., `epic-{n}*.md`)
|
||||
|
||||
#### Architecture Configuration
|
||||
- **architectureVersion**: v3 (monolithic) or v4 (sharded)
|
||||
- **architectureSharded**: Whether architecture is split into components
|
||||
- **architectureShardedLocation**: Where sharded architecture files live
|
||||
|
||||
#### Developer Files
|
||||
- **devLoadAlwaysFiles**: List of files the dev agent loads for every task
|
||||
- **devDebugLog**: Where dev agent logs repeated failures
|
||||
- **agentCoreDump**: Export location for chat conversations
|
||||
|
||||
### Why It Matters
|
||||
|
||||
1. **No Forced Migrations**: Keep your existing document structure
|
||||
2. **Gradual Adoption**: Start with V3 and migrate to V4 at your pace
|
||||
3. **Custom Workflows**: Configure BMAD to match your team's process
|
||||
4. **Intelligent Agents**: Agents automatically adapt to your configuration
|
||||
|
||||
### Common Configurations
|
||||
|
||||
**Legacy V3 Project**:
|
||||
```yaml
|
||||
prdVersion: v3
|
||||
prdSharded: false
|
||||
architectureVersion: v3
|
||||
architectureSharded: false
|
||||
```
|
||||
|
||||
**V4 Optimized Project**:
|
||||
```yaml
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs/prd
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
```
|
||||
|
||||
## Core Philosophy
|
||||
|
||||
### Vibe CEO'ing
|
||||
@@ -2626,14 +2763,14 @@ To identify the next logical story based on project progress and epic definition
|
||||
2. Run the BMAD installer against your project to upgrade and add the file automatically
|
||||
Please add and configure core-config.yml before proceeding."
|
||||
- Extract the following key configurations:
|
||||
- `dev-story-location`: Where to save story files
|
||||
- `devStoryLocation`: Where to save story files
|
||||
- `prd.prdSharded`: Whether PRD is sharded or monolithic
|
||||
- `prd.prd-file`: Location of monolithic PRD (if not sharded)
|
||||
- `prd.prdFile`: Location of monolithic PRD (if not sharded)
|
||||
- `prd.prdShardedLocation`: Location of sharded epic files
|
||||
- `prd.epicFilePattern`: Pattern for epic files (e.g., `epic-{n}*.md`)
|
||||
- `architecture.architectureVersion`: Architecture document version
|
||||
- `architecture.architectureSharded`: Whether architecture is sharded
|
||||
- `architecture.architecture-file`: Location of monolithic architecture
|
||||
- `architecture.architectureFile`: Location of monolithic architecture
|
||||
- `architecture.architectureShardedLocation`: Location of sharded architecture files
|
||||
|
||||
### 1. Identify Next Story for Preparation
|
||||
@@ -2642,11 +2779,11 @@ To identify the next logical story based on project progress and epic definition
|
||||
|
||||
- Based on `prdSharded` from config:
|
||||
- **If `prdSharded: true`**: Look for epic files in `prdShardedLocation` using `epicFilePattern`
|
||||
- **If `prdSharded: false`**: Load the full PRD from `prd-file` and extract epics from section headings (## Epic N or ### Epic N)
|
||||
- **If `prdSharded: false`**: Load the full PRD from `prdFile` and extract epics from section headings (## Epic N or ### Epic N)
|
||||
|
||||
#### 1.2 Review Existing Stories
|
||||
|
||||
- Check `dev-story-location` from config (e.g., `docs/stories/`) for existing story files
|
||||
- Check `devStoryLocation` from config (e.g., `docs/stories/`) for existing story files
|
||||
- If the directory exists and has at least 1 file, find the highest-numbered story file.
|
||||
- **If a highest story file exists (`{lastEpicNum}.{lastStoryNum}.story.md`):**
|
||||
- Verify its `Status` is 'Done' (or equivalent).
|
||||
@@ -2666,12 +2803,40 @@ To identify the next logical story based on project progress and epic definition
|
||||
```
|
||||
|
||||
- Proceed only if user selects option 3 (Override) or if the last story was 'Done'.
|
||||
- If proceeding: Look for the Epic File for `{lastEpicNum}` (e.g., `epic-{lastEpicNum}*.md`) and check for a story numbered `{lastStoryNum + 1}`. If it exists and its prerequisites (per Epic File) are met, this is the next story.
|
||||
- Else (story not found or prerequisites not met): The next story is the first story in the next Epic File (e.g., look for `epic-{lastEpicNum + 1}*.md`, then `epic-{lastEpicNum + 2}*.md`, etc.) whose prerequisites are met.
|
||||
- If proceeding: Look for the Epic File for `{lastEpicNum}` (e.g., `epic-{lastEpicNum}*.md`) and parse it to find ALL stories in that epic. **ALWAYS select the next sequential story** (e.g., if last was 2.2, next MUST be 2.3).
|
||||
- If the next sequential story has unmet prerequisites, present this to the user:
|
||||
|
||||
```plaintext
|
||||
ALERT: Next story has unmet prerequisites:
|
||||
Story: {epicNum}.{storyNum} - {Story Title}
|
||||
Prerequisites not met: [list specific prerequisites]
|
||||
|
||||
Would you like to:
|
||||
1. Create the story anyway (mark prerequisites as pending)
|
||||
2. Skip to a different story (requires your specific instruction)
|
||||
3. Cancel story creation
|
||||
|
||||
Please choose an option (1/2/3):
|
||||
```
|
||||
|
||||
- If there are no more stories in the current epic (e.g., 2.9 was done and there is no 2.10):
|
||||
|
||||
```plaintext
|
||||
Epic {epicNum} Complete: All stories in Epic {epicNum} have been completed.
|
||||
|
||||
Would you like to:
|
||||
1. Begin Epic {epicNum + 1} with story {epicNum + 1}.1
|
||||
2. Select a specific story to work on
|
||||
3. Cancel story creation
|
||||
|
||||
Please choose an option (1/2/3):
|
||||
```
|
||||
|
||||
- **CRITICAL**: NEVER automatically skip to another epic or non-sequential story. The user MUST explicitly instruct which story to create if skipping the sequential order.
|
||||
|
||||
- **If no story files exist in `docs/stories/`:**
|
||||
- The next story is the first story in the first epic file (look for `epic-1-*.md`, then `epic-2-*.md`, etc.) whose prerequisites are met.
|
||||
- If no suitable story with met prerequisites is found, report to the user that story creation is blocked, specifying what prerequisites are pending. HALT task.
|
||||
- The next story is ALWAYS 1.1 (the first story of the first epic).
|
||||
- If story 1.1 has unmet prerequisites, follow the same alert process as above.
|
||||
- Announce the identified story to the user: "Identified next story for preparation: {epicNum}.{storyNum} - {Story Title}".
|
||||
|
||||
### 2. Gather Core Story Requirements (from Epic)
|
||||
@@ -2707,13 +2872,13 @@ Based on configuration loaded in Step 0:
|
||||
- Follow the structured reading order in section 4.2 below
|
||||
|
||||
- **If `architectureVersion: v4` and `architectureSharded: false`**:
|
||||
- Load the monolithic architecture from `architecture-file`
|
||||
- Load the monolithic architecture from `architectureFile`
|
||||
- Extract relevant sections based on v4 structure (tech stack, project structure, etc.)
|
||||
|
||||
- **If `architectureVersion` is NOT v4**:
|
||||
- Inform user: "Architecture document is not v4 format. Will use best judgment to find relevant information."
|
||||
- If `architectureSharded: true`: Search sharded files by filename relevance
|
||||
- If `architectureSharded: false`: Search within monolithic `architecture-file` for relevant sections
|
||||
- If `architectureSharded: false`: Search within monolithic `architectureFile` for relevant sections
|
||||
|
||||
#### 4.2 Recommended Reading Order Based on Story Type (v4 Sharded Only)
|
||||
|
||||
@@ -2770,7 +2935,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
|
||||
|
||||
### 6. Populate Story Template with Full Context
|
||||
|
||||
- Create a new story file: `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config).
|
||||
- Create a new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config).
|
||||
- Use the Story Template to structure the file.
|
||||
- Fill in:
|
||||
- Story `{EpicNum}.{StoryNum}: {Short Title Copied from Epic File}`
|
||||
@@ -2817,7 +2982,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
|
||||
- Verify all source references are included for technical details
|
||||
- Ensure tasks align with both epic requirements and architecture constraints
|
||||
- Update status to "Draft"
|
||||
- Save the story file to `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config)
|
||||
- Save the story file to `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config)
|
||||
|
||||
### 9. Report Completion
|
||||
|
||||
|
||||
139
dist/teams/team-no-ui.txt
vendored
139
dist/teams/team-no-ui.txt
vendored
@@ -152,6 +152,11 @@ loading:
|
||||
- Agents: Only when transforming
|
||||
- Templates/Tasks: Only when executing
|
||||
- Always indicate loading
|
||||
kb-mode-behavior:
|
||||
- When *kb-mode is invoked, use kb-mode-interaction task
|
||||
- Don't dump all KB content immediately
|
||||
- Present topic areas and wait for user selection
|
||||
- Provide focused, contextual responses
|
||||
workflow-guidance:
|
||||
- Discover available workflows in the bundle at runtime
|
||||
- Understand each workflow's purpose, options, and decision points
|
||||
@@ -165,6 +170,7 @@ dependencies:
|
||||
tasks:
|
||||
- advanced-elicitation
|
||||
- create-doc
|
||||
- kb-mode-interaction
|
||||
data:
|
||||
- bmad-kb
|
||||
utils:
|
||||
@@ -595,6 +601,79 @@ If template specifies a checklist:
|
||||
- Template markup is for AI processing only - never expose to users
|
||||
==================== END: tasks#create-doc ====================
|
||||
|
||||
==================== START: tasks#kb-mode-interaction ====================
|
||||
# KB Mode Interaction Task
|
||||
|
||||
## Purpose
|
||||
Provide a user-friendly interface to the BMAD knowledge base without overwhelming users with information upfront.
|
||||
|
||||
## Instructions
|
||||
|
||||
When entering KB mode (*kb-mode), follow these steps:
|
||||
|
||||
### 1. Welcome and Guide
|
||||
Announce entering KB mode with a brief, friendly introduction:
|
||||
|
||||
"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."
|
||||
|
||||
### 2. Present Topic Areas
|
||||
Offer a concise list of main topic areas the user might want to explore:
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
### 3. Respond Contextually
|
||||
- Wait for user's specific question or topic selection
|
||||
- Provide focused, relevant information from the knowledge base
|
||||
- Offer to dive deeper or explore related topics
|
||||
- Keep responses concise unless user asks for detailed explanations
|
||||
|
||||
### 4. Interactive Exploration
|
||||
- After answering, suggest related topics they might find helpful
|
||||
- Maintain conversational flow rather than data dumping
|
||||
- Use examples when appropriate
|
||||
- Reference specific documentation sections when relevant
|
||||
|
||||
### 5. Exit Gracefully
|
||||
When user is done or wants to exit KB mode:
|
||||
- Summarize key points discussed if helpful
|
||||
- Remind them they can return to KB mode anytime with *kb-mode
|
||||
- Suggest next steps based on what was discussed
|
||||
|
||||
## Example Interaction
|
||||
|
||||
**User**: *kb-mode
|
||||
|
||||
**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.
|
||||
|
||||
**What would you like to know more about?**
|
||||
|
||||
1. **Setup & Installation** - Getting started with BMAD
|
||||
2. **Workflows** - Choosing the right workflow for your project
|
||||
3. **Web vs IDE** - When to use each environment
|
||||
4. **Agents** - Understanding specialized agents and their roles
|
||||
5. **Documents** - PRDs, Architecture, Stories, and more
|
||||
6. **Agile Process** - How BMAD implements Agile methodologies
|
||||
7. **Configuration** - Customizing BMAD for your needs
|
||||
8. **Best Practices** - Tips for effective BMAD usage
|
||||
|
||||
Or ask me about anything else related to BMAD-METHOD!
|
||||
|
||||
**User**: Tell me about workflows
|
||||
|
||||
**Assistant**: [Provides focused information about workflows from the KB, then offers to explore specific workflow types or related topics]
|
||||
==================== END: tasks#kb-mode-interaction ====================
|
||||
|
||||
==================== START: data#bmad-kb ====================
|
||||
# BMAD Knowledge Base
|
||||
|
||||
@@ -664,6 +743,64 @@ npx bmad-method install
|
||||
|
||||
**Cost-Saving Tip**: Create large documents (PRDs, architecture) in web UI, then copy to `docs/prd.md` and `docs/architecture.md` in your project before switching to IDE for development.
|
||||
|
||||
## Core Configuration (core-config.yml)
|
||||
|
||||
**New in V4**: The `bmad-core/core-config.yml` file is a critical innovation that enables BMAD to work seamlessly with any project structure, providing maximum flexibility and backwards compatibility.
|
||||
|
||||
### What is core-config.yml?
|
||||
|
||||
This configuration file acts as a map for BMAD agents, telling them exactly where to find your project documents and how they're structured. It enables:
|
||||
|
||||
- **Version Flexibility**: Work with V3, V4, or custom document structures
|
||||
- **Custom Locations**: Define where your documents and shards live
|
||||
- **Developer Context**: Specify which files the dev agent should always load
|
||||
- **Debug Support**: Built-in logging for troubleshooting
|
||||
|
||||
### Key Configuration Areas
|
||||
|
||||
#### PRD Configuration
|
||||
- **prdVersion**: Tells agents if PRD follows v3 or v4 conventions
|
||||
- **prdSharded**: Whether epics are embedded (false) or in separate files (true)
|
||||
- **prdShardedLocation**: Where to find sharded epic files
|
||||
- **epicFilePattern**: Pattern for epic filenames (e.g., `epic-{n}*.md`)
|
||||
|
||||
#### Architecture Configuration
|
||||
- **architectureVersion**: v3 (monolithic) or v4 (sharded)
|
||||
- **architectureSharded**: Whether architecture is split into components
|
||||
- **architectureShardedLocation**: Where sharded architecture files live
|
||||
|
||||
#### Developer Files
|
||||
- **devLoadAlwaysFiles**: List of files the dev agent loads for every task
|
||||
- **devDebugLog**: Where dev agent logs repeated failures
|
||||
- **agentCoreDump**: Export location for chat conversations
|
||||
|
||||
### Why It Matters
|
||||
|
||||
1. **No Forced Migrations**: Keep your existing document structure
|
||||
2. **Gradual Adoption**: Start with V3 and migrate to V4 at your pace
|
||||
3. **Custom Workflows**: Configure BMAD to match your team's process
|
||||
4. **Intelligent Agents**: Agents automatically adapt to your configuration
|
||||
|
||||
### Common Configurations
|
||||
|
||||
**Legacy V3 Project**:
|
||||
```yaml
|
||||
prdVersion: v3
|
||||
prdSharded: false
|
||||
architectureVersion: v3
|
||||
architectureSharded: false
|
||||
```
|
||||
|
||||
**V4 Optimized Project**:
|
||||
```yaml
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs/prd
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
```
|
||||
|
||||
## Core Philosophy
|
||||
|
||||
### Vibe CEO'ing
|
||||
@@ -8291,7 +8428,7 @@ workflow:
|
||||
|
||||
sequence:
|
||||
- step: service_analysis
|
||||
agent: architect
|
||||
agent: architect
|
||||
action: analyze existing project and use task document-project
|
||||
creates: multiple documents per the document-project template
|
||||
notes: "Review existing service documentation, codebase, performance metrics, and identify integration dependencies."
|
||||
|
||||
121
docs/expansion-pack-ideas.md
Normal file
121
docs/expansion-pack-ideas.md
Normal file
@@ -0,0 +1,121 @@
|
||||
# Expansion Pack Ideas
|
||||
|
||||
The BMAD Method's natural language framework can be applied to any domain. Here are ideas to inspire your own expansion packs:
|
||||
|
||||
## Health & Wellness Pack
|
||||
|
||||
### Agents
|
||||
|
||||
- **Fitness Coach** - Creates personalized workout plans
|
||||
- **Nutrition Advisor** - Designs meal plans and tracks nutrition
|
||||
- **Meditation Guide** - Leads mindfulness sessions
|
||||
- **Sleep Optimizer** - Improves sleep habits
|
||||
|
||||
### Tasks
|
||||
|
||||
- `create-workout-plan` - Generates weekly exercise routines
|
||||
- `analyze-nutrition` - Reviews dietary habits
|
||||
- `design-meditation` - Creates guided meditation scripts
|
||||
|
||||
### Templates
|
||||
|
||||
- `workout-plan-tmpl` - Structured exercise program
|
||||
- `meal-plan-tmpl` - Weekly nutrition guide
|
||||
- `wellness-journal-tmpl` - Progress tracking
|
||||
|
||||
## Creative Writing Pack
|
||||
|
||||
### Agents
|
||||
|
||||
- **Story Architect** - Plots narratives and story structures
|
||||
- **Character Developer** - Creates deep, complex characters
|
||||
- **World Builder** - Designs fictional universes
|
||||
- **Dialog Master** - Crafts authentic conversations
|
||||
|
||||
### Tasks
|
||||
|
||||
- `develop-plot` - Creates story outlines
|
||||
- `build-character` - Develops character profiles
|
||||
- `create-world` - Designs settings and cultures
|
||||
|
||||
### Templates
|
||||
|
||||
- `story-outline-tmpl` - Three-act structure
|
||||
- `character-sheet-tmpl` - Detailed character profile
|
||||
- `world-bible-tmpl` - Universe documentation
|
||||
|
||||
## Business Strategy Pack
|
||||
|
||||
### Agents
|
||||
|
||||
- **Strategy Consultant** - Develops business strategies
|
||||
- **Market Analyst** - Researches market opportunities
|
||||
- **Financial Advisor** - Creates financial projections
|
||||
- **Operations Expert** - Optimizes business processes
|
||||
|
||||
### Tasks
|
||||
|
||||
- `swot-analysis` - Conducts SWOT analysis
|
||||
- `market-research` - Analyzes market conditions
|
||||
- `financial-forecast` - Projects revenue/costs
|
||||
|
||||
### Templates
|
||||
|
||||
- `business-plan-tmpl` - Complete business plan
|
||||
- `market-analysis-tmpl` - Market research report
|
||||
- `pitch-deck-tmpl` - Investor presentation
|
||||
|
||||
## Education Pack
|
||||
|
||||
### Agents
|
||||
|
||||
- **Curriculum Designer** - Creates learning pathways
|
||||
- **Lesson Planner** - Develops engaging lessons
|
||||
- **Assessment Creator** - Designs fair evaluations
|
||||
- **Learning Coach** - Provides personalized guidance
|
||||
|
||||
### Tasks
|
||||
|
||||
- `design-curriculum` - Creates course structure
|
||||
- `plan-lesson` - Develops lesson content
|
||||
- `create-assessment` - Builds tests/quizzes
|
||||
|
||||
### Templates
|
||||
|
||||
- `course-outline-tmpl` - Semester plan
|
||||
- `lesson-plan-tmpl` - Daily lesson structure
|
||||
- `rubric-tmpl` - Assessment criteria
|
||||
|
||||
## Personal Development Pack
|
||||
|
||||
### Agents
|
||||
|
||||
- **Life Coach** - Guides personal growth
|
||||
- **Goal Strategist** - Helps achieve objectives
|
||||
- **Habit Builder** - Creates lasting habits
|
||||
- **Mindset Mentor** - Develops positive thinking
|
||||
|
||||
### Tasks
|
||||
|
||||
- `goal-setting` - Defines SMART goals
|
||||
- `habit-tracking` - Monitors habit formation
|
||||
- `reflection-exercise` - Facilitates self-reflection
|
||||
|
||||
### Templates
|
||||
|
||||
- `goal-plan-tmpl` - Goal achievement roadmap
|
||||
- `habit-tracker-tmpl` - Daily habit log
|
||||
- `journal-prompts-tmpl` - Reflection questions
|
||||
|
||||
## Creating Your Own
|
||||
|
||||
To create an expansion pack:
|
||||
|
||||
1. **Identify the domain** - What area of expertise?
|
||||
2. **Define agent roles** - Who are the experts?
|
||||
3. **Create tasks** - What procedures do they follow?
|
||||
4. **Design templates** - What outputs do they produce?
|
||||
5. **Test with users** - Does it provide value?
|
||||
6. **Share with community** - Help others benefit!
|
||||
|
||||
Remember: The BMAD Method works anywhere natural language instructions can guide AI assistance!
|
||||
265
docs/expansion-packs.md
Normal file
265
docs/expansion-packs.md
Normal file
@@ -0,0 +1,265 @@
|
||||
# The Power of BMAD Expansion Packs
|
||||
|
||||
## Overview
|
||||
|
||||
BMAD Method's expansion packs unlock the framework's true potential by extending its natural language AI orchestration to ANY domain. While the core framework focuses on software development, expansion packs transform BMAD into a universal AI agent system.
|
||||
|
||||
## Why Expansion Packs?
|
||||
|
||||
### Keep Core Lean
|
||||
|
||||
The core BMAD framework maintains its focus on software development, ensuring dev agents have maximum context for coding. Expansion packs handle everything else.
|
||||
|
||||
### Domain Expertise
|
||||
|
||||
Each expansion pack provides deep, specialized knowledge without bloating the core system. Install only what you need.
|
||||
|
||||
### Community Innovation
|
||||
|
||||
Anyone can create and share expansion packs, fostering a ecosystem of AI-powered solutions across all industries and interests.
|
||||
|
||||
## Technical Expansion Packs
|
||||
|
||||
### Game Development Pack
|
||||
|
||||
Transform your AI into a complete game development studio:
|
||||
|
||||
- **Game Designer**: Mechanics, balance, progression systems
|
||||
- **Level Designer**: Map layouts, puzzle design, difficulty curves
|
||||
- **Narrative Designer**: Story arcs, dialog trees, lore creation
|
||||
- **Art Director**: Visual style guides, asset specifications
|
||||
- **Sound Designer**: Audio direction, music themes, SFX planning
|
||||
|
||||
### Mobile Development Pack
|
||||
|
||||
Specialized agents for mobile app creation:
|
||||
|
||||
- **iOS Specialist**: Swift/SwiftUI patterns, Apple guidelines
|
||||
- **Android Expert**: Kotlin best practices, Material Design
|
||||
- **Mobile UX Designer**: Touch interfaces, gesture patterns
|
||||
- **App Store Optimizer**: ASO strategies, listing optimization
|
||||
- **Performance Tuner**: Battery optimization, network efficiency
|
||||
|
||||
### DevOps/Infrastructure Pack
|
||||
|
||||
Complete infrastructure automation team:
|
||||
|
||||
- **Cloud Architect**: AWS/Azure/GCP design patterns
|
||||
- **Security Specialist**: Zero-trust implementation, compliance
|
||||
- **SRE Expert**: Monitoring, alerting, incident response
|
||||
- **Container Orchestrator**: Kubernetes, Docker optimization
|
||||
- **Cost Optimizer**: Cloud spend analysis, resource right-sizing
|
||||
|
||||
### Data Science Pack
|
||||
|
||||
AI-powered data analysis team:
|
||||
|
||||
- **Data Scientist**: Statistical analysis, ML model selection
|
||||
- **Data Engineer**: Pipeline design, ETL processes
|
||||
- **ML Engineer**: Model deployment, A/B testing
|
||||
- **Visualization Expert**: Dashboard design, insight communication
|
||||
- **Ethics Advisor**: Bias detection, fairness assessment
|
||||
|
||||
## Non-Technical Expansion Packs
|
||||
|
||||
### Business Strategy Pack
|
||||
|
||||
Complete business advisory team:
|
||||
|
||||
- **Strategy Consultant**: Market positioning, competitive analysis
|
||||
- **Financial Analyst**: Projections, unit economics, funding strategies
|
||||
- **Operations Manager**: Process optimization, efficiency improvements
|
||||
- **Marketing Strategist**: Go-to-market plans, growth hacking
|
||||
- **HR Advisor**: Talent strategies, culture building
|
||||
|
||||
### Creative Writing Pack
|
||||
|
||||
Your personal writing team:
|
||||
|
||||
- **Plot Architect**: Three-act structure, story beats, pacing
|
||||
- **Character Psychologist**: Deep motivations, authentic dialog
|
||||
- **World Builder**: Consistent universes, cultural systems
|
||||
- **Editor**: Style consistency, grammar, flow
|
||||
- **Beta Reader**: Feedback simulation, plot hole detection
|
||||
|
||||
### Health & Wellness Pack
|
||||
|
||||
Personal wellness coaching system:
|
||||
|
||||
- **Fitness Trainer**: Progressive overload, form correction
|
||||
- **Nutritionist**: Macro planning, supplement guidance
|
||||
- **Sleep Coach**: Circadian optimization, sleep hygiene
|
||||
- **Stress Manager**: Coping strategies, work-life balance
|
||||
- **Habit Engineer**: Behavior change, accountability systems
|
||||
|
||||
### Education Pack
|
||||
|
||||
Complete learning design system:
|
||||
|
||||
- **Curriculum Architect**: Learning objectives, scope & sequence
|
||||
- **Instructional Designer**: Engagement strategies, multimedia learning
|
||||
- **Assessment Specialist**: Rubrics, formative/summative evaluation
|
||||
- **Differentiation Expert**: Adaptive learning, special needs
|
||||
- **EdTech Integrator**: Tool selection, digital pedagogy
|
||||
|
||||
### Mental Health Support Pack
|
||||
|
||||
Therapeutic support system:
|
||||
|
||||
- **CBT Guide**: Cognitive restructuring, thought challenging
|
||||
- **Mindfulness Teacher**: Meditation scripts, awareness exercises
|
||||
- **Journal Therapist**: Reflective prompts, emotional processing
|
||||
- **Crisis Support**: Coping strategies, safety planning
|
||||
- **Habit Tracker**: Mood monitoring, trigger identification
|
||||
|
||||
### Legal Assistant Pack
|
||||
|
||||
Legal document and research support:
|
||||
|
||||
- **Contract Analyst**: Term review, risk assessment
|
||||
- **Legal Researcher**: Case law, precedent analysis
|
||||
- **Document Drafter**: Template customization, clause libraries
|
||||
- **Compliance Checker**: Regulatory alignment, audit prep
|
||||
- **IP Advisor**: Patent strategies, trademark guidance
|
||||
|
||||
### Real Estate Pack
|
||||
|
||||
Property investment and management:
|
||||
|
||||
- **Market Analyst**: Comparable analysis, trend prediction
|
||||
- **Investment Calculator**: ROI modeling, cash flow analysis
|
||||
- **Property Manager**: Tenant screening, maintenance scheduling
|
||||
- **Flip Strategist**: Renovation ROI, project planning
|
||||
- **Agent Assistant**: Listing optimization, showing prep
|
||||
|
||||
## Unique & Innovative Packs
|
||||
|
||||
### Role-Playing Game Master Pack
|
||||
|
||||
AI-powered tabletop RPG assistance:
|
||||
|
||||
- **World Master**: Dynamic world generation, NPC creation
|
||||
- **Combat Referee**: Initiative tracking, rule clarification
|
||||
- **Story Weaver**: Plot hooks, side quests, consequences
|
||||
- **Character Builder**: Backstory generation, stat optimization
|
||||
- **Loot Master**: Treasure generation, magic item creation
|
||||
|
||||
### Life Event Planning Pack
|
||||
|
||||
Major life event coordination:
|
||||
|
||||
- **Wedding Planner**: Vendor coordination, timeline creation
|
||||
- **Event Designer**: Theme development, decoration plans
|
||||
- **Budget Manager**: Cost tracking, vendor negotiation
|
||||
- **Guest Coordinator**: RSVP tracking, seating arrangements
|
||||
- **Timeline Keeper**: Day-of scheduling, contingency planning
|
||||
|
||||
### Hobby Mastery Pack
|
||||
|
||||
Deep dive into specific hobbies:
|
||||
|
||||
- **Garden Designer**: Plant selection, seasonal planning
|
||||
- **Brew Master**: Recipe formulation, process optimization
|
||||
- **Maker Assistant**: 3D printing, woodworking, crafts
|
||||
- **Collection Curator**: Organization, valuation, trading
|
||||
- **Photography Coach**: Composition, lighting, post-processing
|
||||
|
||||
### Scientific Research Pack
|
||||
|
||||
Research acceleration tools:
|
||||
|
||||
- **Literature Reviewer**: Paper summarization, gap analysis
|
||||
- **Hypothesis Generator**: Research question formulation
|
||||
- **Methodology Designer**: Experiment planning, control design
|
||||
- **Statistical Advisor**: Test selection, power analysis
|
||||
- **Grant Writer**: Proposal structure, impact statements
|
||||
|
||||
## Creating Your Own Expansion Pack
|
||||
|
||||
### Step 1: Define Your Domain
|
||||
|
||||
What expertise are you capturing? What problems will it solve?
|
||||
|
||||
### Step 2: Design Your Agents
|
||||
|
||||
Each agent should have:
|
||||
|
||||
- Clear expertise area
|
||||
- Specific personality traits
|
||||
- Defined capabilities
|
||||
- Knowledge boundaries
|
||||
|
||||
### Step 3: Create Tasks
|
||||
|
||||
Tasks should be:
|
||||
|
||||
- Step-by-step procedures
|
||||
- Reusable across scenarios
|
||||
- Clear and actionable
|
||||
- Domain-specific
|
||||
|
||||
### Step 4: Build Templates
|
||||
|
||||
Templates need:
|
||||
|
||||
- Structured output format
|
||||
- Embedded LLM instructions
|
||||
- Placeholders for customization
|
||||
- Professional formatting
|
||||
|
||||
### Step 5: Test & Iterate
|
||||
|
||||
- Use with real scenarios
|
||||
- Gather user feedback
|
||||
- Refine agent responses
|
||||
- Improve task clarity
|
||||
|
||||
### Step 6: Package & Share
|
||||
|
||||
- Create clear documentation
|
||||
- Include usage examples
|
||||
- Add to expansion-packs directory
|
||||
- Share with community
|
||||
|
||||
## The Future of Expansion Packs
|
||||
|
||||
### Marketplace Potential
|
||||
|
||||
Imagine a future where:
|
||||
|
||||
- Professional expansion packs are sold
|
||||
- Certified packs for regulated industries
|
||||
- Community ratings and reviews
|
||||
- Automatic updates and improvements
|
||||
|
||||
### AI Agent Ecosystems
|
||||
|
||||
Expansion packs could enable:
|
||||
|
||||
- Cross-pack agent collaboration
|
||||
- Industry-standard agent protocols
|
||||
- Interoperable AI workflows
|
||||
- Universal agent languages
|
||||
|
||||
### Democratizing Expertise
|
||||
|
||||
Every expansion pack:
|
||||
|
||||
- Makes expert knowledge accessible
|
||||
- Reduces barriers to entry
|
||||
- Enables solo entrepreneurs
|
||||
- Empowers small teams
|
||||
|
||||
## Getting Started
|
||||
|
||||
1. **Browse existing packs**: Check `expansion-packs/` directory
|
||||
2. **Install what you need**: Use the installer's expansion pack option
|
||||
3. **Create your own**: Use the expansion-creator pack
|
||||
4. **Share with others**: Submit PRs with new packs
|
||||
5. **Build the future**: Help shape AI-assisted work
|
||||
|
||||
## Remember
|
||||
|
||||
The BMAD Method is more than a development framework - it's a platform for structuring human expertise into AI-accessible formats. Every expansion pack you create makes specialized knowledge more accessible to everyone.
|
||||
|
||||
**What expertise will you share with the world?**
|
||||
@@ -895,18 +895,18 @@ This configuration file acts as a map for BMAD agents, telling them exactly wher
|
||||
#### Configuration Structure
|
||||
|
||||
```yaml
|
||||
core-project-information:
|
||||
dev-story-location: docs/stories # Where completed stories are saved
|
||||
coreProjectLocation:
|
||||
devStoryLocation: docs/stories # Where completed stories are saved
|
||||
|
||||
prd:
|
||||
prd-file: docs/prd.md
|
||||
prdFile: docs/prd.md
|
||||
prdVersion: v4 # v3 or v4
|
||||
prdSharded: true # false if epics are embedded in PRD
|
||||
prdShardedLocation: docs/prd # Where sharded epics live
|
||||
epicFilePattern: epic-{n}*.md # Pattern for epic files
|
||||
|
||||
architecture:
|
||||
architecture-file: docs/architecture.md
|
||||
architectureFile: docs/architecture.md
|
||||
architectureVersion: v4 # v3 or v4
|
||||
architectureSharded: true # false if monolithic
|
||||
architectureShardedLocation: docs/architecture
|
||||
@@ -932,7 +932,7 @@ The Scrum Master agent uses these settings to locate epics:
|
||||
|
||||
```yaml
|
||||
prd:
|
||||
prd-file: docs/prd.md
|
||||
prdFile: docs/prd.md
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs/prd
|
||||
@@ -943,7 +943,7 @@ prd:
|
||||
|
||||
```yaml
|
||||
prd:
|
||||
prd-file: docs/prd.md
|
||||
prdFile: docs/prd.md
|
||||
prdVersion: v3
|
||||
prdSharded: false # Epics are inside PRD
|
||||
```
|
||||
@@ -952,7 +952,7 @@ prd:
|
||||
|
||||
```yaml
|
||||
prd:
|
||||
prd-file: docs/product-requirements.md
|
||||
prdFile: docs/product-requirements.md
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: docs # Epics in docs/ not docs/prd/
|
||||
@@ -967,7 +967,7 @@ Similar flexibility for architecture documents:
|
||||
|
||||
```yaml
|
||||
architecture:
|
||||
architecture-file: docs/architecture.md
|
||||
architectureFile: docs/architecture.md
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
@@ -977,7 +977,7 @@ architecture:
|
||||
|
||||
```yaml
|
||||
architecture:
|
||||
architecture-file: docs/technical-architecture.md
|
||||
architectureFile: docs/technical-architecture.md
|
||||
architectureVersion: v3
|
||||
architectureSharded: false # All in one file
|
||||
```
|
||||
@@ -1021,14 +1021,14 @@ Export entire chat conversations for preservation or analysis. The `{n}` is repl
|
||||
##### Legacy V3 Project
|
||||
|
||||
```yaml
|
||||
core-project-information:
|
||||
dev-story-location: docs/stories
|
||||
coreProjectLocation:
|
||||
devStoryLocation: docs/stories
|
||||
prd:
|
||||
prd-file: docs/prd.md
|
||||
prdFile: docs/prd.md
|
||||
prdVersion: v3
|
||||
prdSharded: false
|
||||
architecture:
|
||||
architecture-file: docs/architecture.md
|
||||
architectureFile: docs/architecture.md
|
||||
architectureVersion: v3
|
||||
architectureSharded: false
|
||||
devLoadAlwaysFiles: []
|
||||
@@ -1037,14 +1037,14 @@ core-project-information:
|
||||
##### Hybrid Project (V3 PRD, V4 Architecture)
|
||||
|
||||
```yaml
|
||||
core-project-information:
|
||||
dev-story-location: .ai/stories
|
||||
coreProjectLocation:
|
||||
devStoryLocation: .ai/stories
|
||||
prd:
|
||||
prd-file: docs/product-requirements.md
|
||||
prdFile: docs/product-requirements.md
|
||||
prdVersion: v3
|
||||
prdSharded: false
|
||||
architecture:
|
||||
architecture-file: docs/architecture.md
|
||||
architectureFile: docs/architecture.md
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: docs/architecture
|
||||
@@ -1055,16 +1055,16 @@ core-project-information:
|
||||
##### Custom Organization
|
||||
|
||||
```yaml
|
||||
core-project-information:
|
||||
dev-story-location: development/completed-stories
|
||||
coreProjectLocation:
|
||||
devStoryLocation: development/completed-stories
|
||||
prd:
|
||||
prd-file: planning/requirements.md
|
||||
prdFile: planning/requirements.md
|
||||
prdVersion: v4
|
||||
prdSharded: true
|
||||
prdShardedLocation: planning/epics
|
||||
epicFilePattern: requirement-{n}.md
|
||||
architecture:
|
||||
architecture-file: technical/system-design.md
|
||||
architectureFile: technical/system-design.md
|
||||
architectureVersion: v4
|
||||
architectureSharded: true
|
||||
architectureShardedLocation: technical/components
|
||||
@@ -1122,7 +1122,7 @@ customTechnicalDocuments:
|
||||
|
||||
**Architecture Not Loading:**
|
||||
|
||||
- Verify `architecture-file` path
|
||||
- Verify `architectureFile` path
|
||||
- Check `architectureVersion` setting
|
||||
- Confirm sharding configuration matches reality
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ This task guides you through creating a new BMAD agent following the standard te
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Agent template: `.bmad-core/templates/agent-tmpl.md`
|
||||
- Agent template: `../templates/agent-tmpl.md`
|
||||
- Target directory: `.bmad-core/agents/`
|
||||
|
||||
## Steps
|
||||
|
||||
@@ -18,7 +18,7 @@ Every expansion pack MUST include a custom BMAD orchestrator agent with sophisti
|
||||
|
||||
1. **Create Planning Document First**: Before any implementation, create a comprehensive plan for user approval
|
||||
2. **Agent Architecture Standards**: Use YAML-in-Markdown structure with activation instructions, personas, and command systems
|
||||
3. **Character Consistency**: Every agent must have a persistent persona with name, communication style, and numbered options protocol
|
||||
3. **Character Consistency**: Every agent must have a persistent persona with name, communication style, and numbered options protocol similar to `expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md`
|
||||
4. **Custom Themed Orchestrator**: The orchestrator should embody the domain theme (e.g., Office Manager for medical, Project Lead for tech) for better user experience
|
||||
5. **Core Utilities Required**: ALWAYS include these core files in every expansion pack:
|
||||
- `tasks/create-doc.md` - Document creation from templates
|
||||
@@ -26,8 +26,8 @@ Every expansion pack MUST include a custom BMAD orchestrator agent with sophisti
|
||||
- `utils/template-format.md` - Template markup conventions
|
||||
- `utils/workflow-management.md` - Workflow orchestration
|
||||
6. **Team and Workflow Requirements**: If pack has >1 agent, MUST include:
|
||||
- At least one team configuration in `agent-teams/`
|
||||
- At least one workflow in `workflows/`
|
||||
- At least one team configuration in `expansion-packs/{new-expansion}/agent-teams/`
|
||||
- At least one workflow in `expansion-packs/{new-expansion}workflows/`
|
||||
7. **Template Sophistication**: Implement LLM instruction embedding with `[[LLM: guidance]]`, conditional content, and variable systems
|
||||
8. **Workflow Orchestration**: Include decision trees, handoff protocols, and validation loops
|
||||
9. **Quality Assurance Integration**: Multi-level checklists with star ratings and ready/not-ready frameworks
|
||||
@@ -1018,11 +1018,3 @@ Embedded knowledge (automatic):
|
||||
- [ ] Template conditional content tested with different scenarios
|
||||
- [ ] Workflow decision trees validated with sample use cases
|
||||
- [ ] Character interactions tested for consistency and professional authenticity
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
4
package-lock.json
generated
4
package-lock.json
generated
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "bmad-method",
|
||||
"version": "4.10.2",
|
||||
"version": "4.13.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "bmad-method",
|
||||
"version": "4.10.2",
|
||||
"version": "4.13.0",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@kayvan/markdown-tree-parser": "^1.5.0",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "bmad-method",
|
||||
"version": "4.10.2",
|
||||
"version": "4.13.0",
|
||||
"description": "Breakthrough Method of Agile AI-driven Development",
|
||||
"main": "tools/cli.js",
|
||||
"bin": {
|
||||
|
||||
@@ -50,7 +50,7 @@ program
|
||||
.option('-t, --team <team>', 'Install specific team with required agents and dependencies')
|
||||
.option('-x, --expansion-only', 'Install only expansion packs (no bmad-core)')
|
||||
.option('-d, --directory <path>', 'Installation directory (default: .bmad-core)')
|
||||
.option('-i, --ide <ide...>', 'Configure for specific IDE(s) - can specify multiple (cursor, claude-code, windsurf, roo, other)')
|
||||
.option('-i, --ide <ide...>', 'Configure for specific IDE(s) - can specify multiple (cursor, claude-code, windsurf, roo, cline, other)')
|
||||
.option('-e, --expansion-packs <packs...>', 'Install specific expansion packs (can specify multiple)')
|
||||
.action(async (options) => {
|
||||
try {
|
||||
@@ -67,7 +67,7 @@ program
|
||||
if (options.agent) installType = 'single-agent';
|
||||
else if (options.team) installType = 'team';
|
||||
else if (options.expansionOnly) installType = 'expansion-only';
|
||||
|
||||
|
||||
const config = {
|
||||
installType,
|
||||
agent: options.agent,
|
||||
@@ -164,13 +164,13 @@ async function promptInstallation() {
|
||||
// Check if this is an existing v4 installation
|
||||
const installDir = path.resolve(answers.directory);
|
||||
const state = await installer.detectInstallationState(installDir);
|
||||
|
||||
|
||||
if (state.type === 'v4_existing') {
|
||||
console.log(chalk.yellow('\n🔍 Found existing BMAD v4 installation'));
|
||||
console.log(` Directory: ${installDir}`);
|
||||
console.log(` Version: ${state.manifest?.version || 'Unknown'}`);
|
||||
console.log(` Installed: ${state.manifest?.installed_at ? new Date(state.manifest.installed_at).toLocaleDateString() : 'Unknown'}`);
|
||||
|
||||
|
||||
const { shouldUpdate } = await inquirer.prompt([
|
||||
{
|
||||
type: 'confirm',
|
||||
@@ -179,7 +179,7 @@ async function promptInstallation() {
|
||||
default: true
|
||||
}
|
||||
]);
|
||||
|
||||
|
||||
if (shouldUpdate) {
|
||||
// Skip other prompts and go directly to update
|
||||
answers.installType = 'update';
|
||||
@@ -256,11 +256,11 @@ async function promptInstallation() {
|
||||
if (installType === 'full' || installType === 'team' || installType === 'expansion-only') {
|
||||
try {
|
||||
const availableExpansionPacks = await installer.getAvailableExpansionPacks();
|
||||
|
||||
|
||||
if (availableExpansionPacks.length > 0) {
|
||||
let choices;
|
||||
let message;
|
||||
|
||||
|
||||
if (installType === 'expansion-only') {
|
||||
message = 'Select expansion packs to install (required):'
|
||||
choices = availableExpansionPacks.map(pack => ({
|
||||
@@ -274,7 +274,7 @@ async function promptInstallation() {
|
||||
value: pack.id
|
||||
}));
|
||||
}
|
||||
|
||||
|
||||
const { expansionPacks } = await inquirer.prompt([
|
||||
{
|
||||
type: 'checkbox',
|
||||
@@ -289,7 +289,7 @@ async function promptInstallation() {
|
||||
} : undefined
|
||||
}
|
||||
]);
|
||||
|
||||
|
||||
// Use selected expansion packs directly
|
||||
answers.expansionPacks = expansionPacks;
|
||||
} else {
|
||||
@@ -313,11 +313,12 @@ async function promptInstallation() {
|
||||
{ name: 'Cursor', value: 'cursor' },
|
||||
{ name: 'Claude Code', value: 'claude-code' },
|
||||
{ name: 'Windsurf', value: 'windsurf' },
|
||||
{ name: 'Roo Code', value: 'roo' }
|
||||
{ name: 'Roo Code', value: 'roo' },
|
||||
{ name: 'Cline', value: 'cline' }
|
||||
]
|
||||
}
|
||||
]);
|
||||
|
||||
|
||||
// Use selected IDEs directly
|
||||
answers.ides = ides;
|
||||
|
||||
|
||||
@@ -92,10 +92,15 @@ ide-configurations:
|
||||
# 3. The AI will adopt that agent's full personality and capabilities
|
||||
cline:
|
||||
name: Cline
|
||||
format: unknown
|
||||
rule-dir: .clinerules/
|
||||
format: multi-file
|
||||
command-suffix: .md
|
||||
instructions: |
|
||||
# Cline configuration coming soon
|
||||
# Manual setup: Copy IDE agent files to your Cline configuration
|
||||
# To use BMAD agents in Cline:
|
||||
# 1. Open the Cline chat panel in VS Code
|
||||
# 2. Type @agent-name (e.g., "@dev", "@pm", "@architect")
|
||||
# 3. The agent will adopt that persona for the conversation
|
||||
# 4. Rules are stored in .clinerules/ directory in your project
|
||||
available-agents:
|
||||
- id: analyst
|
||||
name: Business Analyst
|
||||
|
||||
@@ -31,6 +31,8 @@ class IdeSetup {
|
||||
return this.setupWindsurf(installDir, selectedAgent);
|
||||
case "roo":
|
||||
return this.setupRoo(installDir, selectedAgent);
|
||||
case "cline":
|
||||
return this.setupCline(installDir, selectedAgent);
|
||||
default:
|
||||
console.log(chalk.yellow(`\nIDE ${ide} not yet supported`));
|
||||
return false;
|
||||
@@ -340,6 +342,75 @@ class IdeSetup {
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
async setupCline(installDir, selectedAgent) {
|
||||
const clineRulesDir = path.join(installDir, ".clinerules");
|
||||
const agents = selectedAgent ? [selectedAgent] : await this.getAllAgentIds(installDir);
|
||||
|
||||
await fileManager.ensureDirectory(clineRulesDir);
|
||||
|
||||
// Define agent order for numeric prefixes
|
||||
const agentOrder = {
|
||||
'bmad-master': 1,
|
||||
'bmad-orchestrator': 2,
|
||||
'pm': 3,
|
||||
'analyst': 4,
|
||||
'architect': 5,
|
||||
'po': 6,
|
||||
'sm': 7,
|
||||
'dev': 8,
|
||||
'qa': 9,
|
||||
'ux-expert': 10
|
||||
};
|
||||
|
||||
for (const agentId of agents) {
|
||||
// Check if .bmad-core is a subdirectory (full install) or if agents are in root (single agent install)
|
||||
let agentPath = path.join(installDir, ".bmad-core", "agents", `${agentId}.md`);
|
||||
if (!(await fileManager.pathExists(agentPath))) {
|
||||
agentPath = path.join(installDir, "agents", `${agentId}.md`);
|
||||
}
|
||||
|
||||
if (await fileManager.pathExists(agentPath)) {
|
||||
const agentContent = await fileManager.readFile(agentPath);
|
||||
|
||||
// Get numeric prefix for ordering
|
||||
const order = agentOrder[agentId] || 99;
|
||||
const prefix = order.toString().padStart(2, '0');
|
||||
const mdPath = path.join(clineRulesDir, `${prefix}-${agentId}.md`);
|
||||
|
||||
// Create MD content for Cline (focused on project standards and role)
|
||||
let mdContent = `# ${this.getAgentTitle(agentId)} Agent\n\n`;
|
||||
mdContent += `This rule defines the ${this.getAgentTitle(agentId)} persona and project standards.\n\n`;
|
||||
mdContent += "## Role Definition\n\n";
|
||||
mdContent +=
|
||||
"When the user types `@" + agentId + "`, adopt this persona and follow these guidelines:\n\n";
|
||||
mdContent += "```yml\n";
|
||||
// Extract just the YAML content from the agent file
|
||||
const yamlMatch = agentContent.match(/```ya?ml\n([\s\S]*?)```/);
|
||||
if (yamlMatch) {
|
||||
mdContent += yamlMatch[1].trim();
|
||||
} else {
|
||||
// If no YAML found, include the whole content minus the header
|
||||
mdContent += agentContent.replace(/^#.*$/m, "").trim();
|
||||
}
|
||||
mdContent += "\n```\n\n";
|
||||
mdContent += "## Project Standards\n\n";
|
||||
mdContent += `- Always maintain consistency with project documentation in .bmad-core/\n`;
|
||||
mdContent += `- Follow the agent's specific guidelines and constraints\n`;
|
||||
mdContent += `- Update relevant project files when making changes\n`;
|
||||
mdContent += `- Reference the complete agent definition in [.bmad-core/agents/${agentId}.md](.bmad-core/agents/${agentId}.md)\n\n`;
|
||||
mdContent += "## Usage\n\n";
|
||||
mdContent += `Type \`@${agentId}\` to activate this ${this.getAgentTitle(agentId)} persona.\n`;
|
||||
|
||||
await fileManager.writeFile(mdPath, mdContent);
|
||||
console.log(chalk.green(`✓ Created rule: ${prefix}-${agentId}.md`));
|
||||
}
|
||||
}
|
||||
|
||||
console.log(chalk.green(`\n✓ Created Cline rules in ${clineRulesDir}`));
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = new IdeSetup();
|
||||
|
||||
@@ -350,7 +350,12 @@ class Installer {
|
||||
// Install web bundles if requested
|
||||
if (config.includeWebBundles && config.webBundlesDirectory) {
|
||||
spinner.text = "Installing web bundles...";
|
||||
await this.installWebBundles(config.webBundlesDirectory, config, spinner);
|
||||
// Resolve web bundles directory using the same logic as the main installation directory
|
||||
const originalCwd = process.env.INIT_CWD || process.env.PWD || process.cwd();
|
||||
let resolvedWebBundlesDir = path.isAbsolute(config.webBundlesDirectory)
|
||||
? config.webBundlesDirectory
|
||||
: path.resolve(originalCwd, config.webBundlesDirectory);
|
||||
await this.installWebBundles(resolvedWebBundlesDir, config, spinner);
|
||||
}
|
||||
|
||||
// Set up IDE integration if requested
|
||||
@@ -608,7 +613,12 @@ class Installer {
|
||||
|
||||
if (config.includeWebBundles && config.webBundlesDirectory) {
|
||||
const bundleInfo = this.getWebBundleInfo(config);
|
||||
console.log(chalk.green(`✓ Web bundles (${bundleInfo}) installed to: ${config.webBundlesDirectory}`));
|
||||
// Resolve the web bundles directory for display
|
||||
const originalCwd = process.env.INIT_CWD || process.env.PWD || process.cwd();
|
||||
const resolvedWebBundlesDir = path.isAbsolute(config.webBundlesDirectory)
|
||||
? config.webBundlesDirectory
|
||||
: path.resolve(originalCwd, config.webBundlesDirectory);
|
||||
console.log(chalk.green(`✓ Web bundles (${bundleInfo}) installed to: ${resolvedWebBundlesDir}`));
|
||||
}
|
||||
|
||||
if (ides.length > 0) {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "bmad-method",
|
||||
"version": "4.10.2",
|
||||
"version": "4.13.0",
|
||||
"description": "BMAD Method installer - AI-powered Agile development framework",
|
||||
"main": "lib/installer.js",
|
||||
"bin": {
|
||||
|
||||
@@ -561,6 +561,7 @@ class V3ToV4Upgrader {
|
||||
"claude-code": "Commands created in .claude/commands/",
|
||||
windsurf: "Rules created in .windsurf/rules/",
|
||||
roo: "Custom modes created in .roomodes",
|
||||
cline: "Rules created in .clinerules/",
|
||||
};
|
||||
|
||||
// Setup each selected IDE
|
||||
|
||||
Reference in New Issue
Block a user