expansion update
This commit is contained in:
@@ -4,7 +4,14 @@ This task helps you create a comprehensive BMAD expansion pack that can include
|
||||
|
||||
## Understanding Expansion Packs
|
||||
|
||||
Expansion packs extend BMAD with domain-specific capabilities. They are self-contained packages that can be installed into any BMAD project.
|
||||
Expansion packs extend BMAD with domain-specific capabilities. They are self-contained packages that can be installed into any BMAD project. Every expansion pack MUST include a custom BMAD orchestrator agent that manages the domain-specific workflow.
|
||||
|
||||
## CRITICAL REQUIREMENTS
|
||||
|
||||
1. **Create Planning Document First**: Before any implementation, create a concise task list for user approval
|
||||
2. **Verify All References**: Any task, template, or data file referenced in an agent MUST exist in the pack
|
||||
3. **Include Orchestrator**: Every pack needs a custom BMAD-style orchestrator agent
|
||||
4. **User Data Requirements**: Clearly specify any files users must provide in their data folder
|
||||
|
||||
## Process Overview
|
||||
|
||||
@@ -28,19 +35,83 @@ Request from the user:
|
||||
- **Workflow Examples**: How work currently flows in this domain
|
||||
- **Compliance Needs**: Any regulatory or standards requirements
|
||||
- **Output Examples**: What final deliverables look like
|
||||
- **Data Requirements**: What reference data files users will need to provide
|
||||
|
||||
#### 1.3 Create Planning Document
|
||||
|
||||
**STOP HERE AND CREATE PLAN FIRST**
|
||||
|
||||
Create `expansion-packs/{pack-name}/plan.md` with:
|
||||
|
||||
```markdown
|
||||
# {Pack Name} Expansion Pack Plan
|
||||
|
||||
## Overview
|
||||
|
||||
- Pack Name: {name}
|
||||
- Description: {description}
|
||||
- Target Domain: {domain}
|
||||
|
||||
## Components to Create
|
||||
|
||||
### Agents
|
||||
|
||||
- [ ] {pack-name}-orchestrator (REQUIRED: Custom BMAD orchestrator)
|
||||
- [ ] {agent-1-name}
|
||||
- [ ] {agent-2-name}
|
||||
|
||||
### Tasks
|
||||
|
||||
- [ ] {task-1} (referenced by: {agent})
|
||||
- [ ] {task-2} (referenced by: {agent})
|
||||
|
||||
### Templates
|
||||
|
||||
- [ ] {template-1} (used by: {agent/task})
|
||||
- [ ] {template-2} (used by: {agent/task})
|
||||
|
||||
### Checklists
|
||||
|
||||
- [ ] {checklist-1}
|
||||
- [ ] {checklist-2}
|
||||
|
||||
### Data Files Required from User
|
||||
|
||||
- [ ] {filename}.{ext} - {description of content needed}
|
||||
- [ ] {filename2}.{ext} - {description of content needed}
|
||||
|
||||
## Approval
|
||||
|
||||
User approval received: [ ] Yes
|
||||
```
|
||||
|
||||
**Wait for user approval before proceeding to Phase 2**
|
||||
|
||||
### Phase 2: Component Design
|
||||
|
||||
#### 2.1 Identify Required Agents
|
||||
#### 2.1 Create Orchestrator Agent
|
||||
|
||||
For each proposed agent:
|
||||
**FIRST PRIORITY**: Design the custom BMAD orchestrator:
|
||||
|
||||
- **Name**: `{pack-name}-orchestrator`
|
||||
- **Purpose**: Master coordinator for domain-specific workflow
|
||||
- **Key Commands**: Domain-specific orchestration commands
|
||||
- **Integration**: How it leverages other pack agents
|
||||
- **Workflow**: The complete process it manages
|
||||
|
||||
#### 2.2 Identify Specialist Agents
|
||||
|
||||
For each additional agent:
|
||||
|
||||
- **Role**: What specialist is needed?
|
||||
- **Expertise**: Domain-specific knowledge required
|
||||
- **Interactions**: How they work with existing BMAD agents
|
||||
- **Interactions**: How they work with orchestrator and BMAD agents
|
||||
- **Unique Value**: What can't existing agents handle?
|
||||
- **Required Tasks**: List ALL tasks this agent references
|
||||
- **Required Templates**: List ALL templates this agent uses
|
||||
- **Required Data**: List ALL data files this agent needs
|
||||
|
||||
#### 2.2 Design Specialized Tasks
|
||||
#### 2.3 Design Specialized Tasks
|
||||
|
||||
For each task:
|
||||
|
||||
@@ -50,7 +121,7 @@ For each task:
|
||||
- **Outputs**: What gets produced?
|
||||
- **Agent Usage**: Which agents will use this task?
|
||||
|
||||
#### 2.3 Create Document Templates
|
||||
#### 2.4 Create Document Templates
|
||||
|
||||
For each template:
|
||||
|
||||
@@ -60,7 +131,7 @@ For each template:
|
||||
- **Instructions**: How to complete each section
|
||||
- **Standards**: Any format requirements
|
||||
|
||||
#### 2.4 Define Checklists
|
||||
#### 2.5 Define Checklists
|
||||
|
||||
For each checklist:
|
||||
|
||||
@@ -71,18 +142,21 @@ For each checklist:
|
||||
|
||||
### Phase 3: Implementation
|
||||
|
||||
**Only proceed after plan.md is approved**
|
||||
|
||||
#### 3.1 Create Directory Structure
|
||||
|
||||
**IMPORTANT**: User-created expansion packs should start with a period (.) to ensure they are gitignored and don't conflict with repo updates.
|
||||
|
||||
```
|
||||
```text
|
||||
expansion-packs/
|
||||
└── .{pack-name}/
|
||||
└── {pack-name}/
|
||||
├── plan.md (ALREADY CREATED)
|
||||
├── manifest.yml
|
||||
├── README.md
|
||||
├── agents/
|
||||
│ ├── {pack-name}-orchestrator.yml (REQUIRED)
|
||||
│ └── {agent-id}.yml
|
||||
├── personas/
|
||||
│ ├── {pack-name}-orchestrator.md (REQUIRED)
|
||||
│ └── {agent-id}.md
|
||||
├── tasks/
|
||||
│ └── {task-name}.md
|
||||
@@ -91,6 +165,7 @@ expansion-packs/
|
||||
├── checklists/
|
||||
│ └── {checklist-name}.md
|
||||
└── ide-agents/
|
||||
├── {pack-name}-orchestrator.ide.md (REQUIRED)
|
||||
└── {agent-id}.ide.md
|
||||
```
|
||||
|
||||
@@ -99,58 +174,82 @@ expansion-packs/
|
||||
Create `manifest.yml`:
|
||||
|
||||
```yaml
|
||||
name: { Pack Name }
|
||||
name: {pack-name}
|
||||
version: 1.0.0
|
||||
description: >-
|
||||
{Detailed description of the expansion pack}
|
||||
author: { Your name or organization }
|
||||
author: {Your name or organization}
|
||||
bmad_version: "4.0.0"
|
||||
|
||||
# Files to install (with . prefix for gitignore)
|
||||
# Files to create in the expansion pack
|
||||
files:
|
||||
- source: agents/{agent-id}.yml
|
||||
destination: agents/.{agent-id}.yml
|
||||
- source: personas/{agent-id}.md
|
||||
destination: bmad-core/personas/.{agent-id}.md
|
||||
- source: tasks/{task-name}.md
|
||||
destination: bmad-core/tasks/.{task-name}.md
|
||||
- source: templates/{template-name}.md
|
||||
destination: bmad-core/templates/.{template-name}.md
|
||||
- source: checklists/{checklist-name}.md
|
||||
destination: bmad-core/checklists/.{checklist-name}.md
|
||||
- source: ide-agents/{agent-id}.ide.md
|
||||
destination: bmad-core/ide-agents/.{agent-id}.ide.md
|
||||
# ... more files
|
||||
agents:
|
||||
- {pack-name}-orchestrator.yml
|
||||
- {agent-name}.yml
|
||||
|
||||
# Optional: Update existing teams
|
||||
team_updates:
|
||||
- team: team-technical.yml
|
||||
add_agent: { new-agent-id }
|
||||
personas:
|
||||
- {pack-name}-orchestrator.md
|
||||
- {agent-name}.md
|
||||
|
||||
ide-agents:
|
||||
- {pack-name}-orchestrator.ide.md
|
||||
- {agent-name}.ide.md
|
||||
|
||||
tasks:
|
||||
- {task-name}.md
|
||||
|
||||
templates:
|
||||
- {template-name}.md
|
||||
|
||||
checklists:
|
||||
- {checklist-name}.md
|
||||
|
||||
# Data files users must provide
|
||||
required_data:
|
||||
- filename: {data-file}.{ext}
|
||||
description: {What this file should contain}
|
||||
location: bmad-core/data/
|
||||
|
||||
# Dependencies on core BMAD components
|
||||
dependencies:
|
||||
- {core-agent-name}
|
||||
- {core-task-name}
|
||||
|
||||
# Post-install message
|
||||
post_install_message: >-
|
||||
{Pack Name} installed successfully!
|
||||
post_install_message: |
|
||||
{Pack Name} expansion pack ready!
|
||||
|
||||
New agents available: {list agents}
|
||||
New tasks available: {list tasks}
|
||||
Required data files:
|
||||
- {data-file}.{ext}: {description}
|
||||
|
||||
Run 'npm run build' to generate bundles.
|
||||
To use: npm run agent {pack-name}-orchestrator
|
||||
```
|
||||
|
||||
### Phase 4: Content Creation
|
||||
|
||||
#### 4.1 Agent Creation Checklist
|
||||
**Work through plan.md checklist systematically**
|
||||
|
||||
For each new agent:
|
||||
#### 4.1 Create Orchestrator First
|
||||
|
||||
1. Create `personas/{pack-name}-orchestrator.md` with BMAD-style commands
|
||||
2. Create `agents/{pack-name}-orchestrator.yml` configuration
|
||||
3. Create `ide-agents/{pack-name}-orchestrator.ide.md`
|
||||
4. Verify ALL referenced tasks exist
|
||||
5. Verify ALL referenced templates exist
|
||||
6. Document data file requirements
|
||||
|
||||
#### 4.2 Agent Creation Order
|
||||
|
||||
For each additional agent:
|
||||
|
||||
1. Create persona file with domain expertise
|
||||
2. Create agent configuration YAML
|
||||
3. Create IDE-optimized version (optional)
|
||||
4. List all task dependencies
|
||||
5. Define template usage
|
||||
6. Add to relevant teams
|
||||
3. Create IDE-optimized version
|
||||
4. **STOP** - Verify all referenced tasks/templates exist
|
||||
5. Create any missing tasks/templates immediately
|
||||
6. Mark agent as complete in plan.md
|
||||
|
||||
#### 4.2 Task Creation Guidelines
|
||||
#### 4.3 Task Creation Guidelines
|
||||
|
||||
Each task should:
|
||||
|
||||
@@ -160,7 +259,7 @@ Each task should:
|
||||
4. Reference domain standards
|
||||
5. Be reusable across agents
|
||||
|
||||
#### 4.3 Template Best Practices
|
||||
#### 4.4 Template Best Practices
|
||||
|
||||
Templates should:
|
||||
|
||||
@@ -170,37 +269,70 @@ Templates should:
|
||||
4. Mark required vs optional sections
|
||||
5. Include domain-specific terminology
|
||||
|
||||
### Phase 5: Testing and Documentation
|
||||
### Phase 5: Verification and Documentation
|
||||
|
||||
#### 5.1 Create README
|
||||
#### 5.1 Final Verification Checklist
|
||||
|
||||
Before declaring complete:
|
||||
|
||||
1. [ ] All items in plan.md marked complete
|
||||
2. [ ] Orchestrator agent created and tested
|
||||
3. [ ] All agent references validated
|
||||
4. [ ] All required data files documented
|
||||
5. [ ] manifest.yml lists all components
|
||||
6. [ ] No orphaned tasks or templates
|
||||
|
||||
#### 5.2 Create README
|
||||
|
||||
Include:
|
||||
|
||||
- Overview of the pack's purpose
|
||||
- **Orchestrator usage instructions**
|
||||
- Required data files and formats
|
||||
- List of all components
|
||||
- Installation instructions
|
||||
- Usage examples
|
||||
- Integration notes
|
||||
- Integration with BMAD workflow
|
||||
- Example scenarios
|
||||
|
||||
#### 5.2 Test Installation
|
||||
#### 5.3 Data File Documentation
|
||||
|
||||
1. Run `node tools/install-expansion-pack.js .{pack-name}`
|
||||
2. Verify all files copied correctly (should have . prefix)
|
||||
3. Build agents to test configurations
|
||||
4. Run sample scenarios
|
||||
For each required data file:
|
||||
|
||||
```markdown
|
||||
## Required Data Files
|
||||
|
||||
### {filename}.{ext}
|
||||
|
||||
- **Purpose**: {why this file is needed}
|
||||
- **Format**: {file format and structure}
|
||||
- **Location**: Place in `bmad-core/data/`
|
||||
- **Example**:
|
||||
```
|
||||
|
||||
{sample content}
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
## Example: Healthcare Expansion Pack
|
||||
|
||||
```
|
||||
.healthcare/
|
||||
```text
|
||||
healthcare/
|
||||
├── plan.md (Created first for approval)
|
||||
├── manifest.yml
|
||||
├── README.md
|
||||
├── agents/
|
||||
│ ├── healthcare-orchestrator.yml (REQUIRED)
|
||||
│ ├── clinical-analyst.yml
|
||||
│ └── compliance-officer.yml
|
||||
├── personas/
|
||||
│ ├── healthcare-orchestrator.md (REQUIRED)
|
||||
│ ├── clinical-analyst.md
|
||||
│ └── compliance-officer.md
|
||||
├── ide-agents/
|
||||
│ ├── healthcare-orchestrator.ide.md (REQUIRED)
|
||||
│ ├── clinical-analyst.ide.md
|
||||
│ └── compliance-officer.ide.md
|
||||
├── tasks/
|
||||
│ ├── hipaa-assessment.md
|
||||
│ ├── clinical-protocol-review.md
|
||||
@@ -212,6 +344,10 @@ Include:
|
||||
└── checklists/
|
||||
├── hipaa-checklist.md
|
||||
└── clinical-data-quality.md
|
||||
|
||||
Required user data files:
|
||||
- bmad-core/data/medical-terminology.md
|
||||
- bmad-core/data/hipaa-requirements.md
|
||||
```
|
||||
|
||||
## Interactive Questions Flow
|
||||
@@ -222,43 +358,74 @@ Include:
|
||||
2. "What are the main challenges or workflows in this domain?"
|
||||
3. "Do you have any example documents or outputs? (Please share)"
|
||||
4. "What specialized roles/experts exist in this domain?"
|
||||
5. "What reference data will users need to provide?"
|
||||
|
||||
### Planning Phase
|
||||
|
||||
6. "Here's the proposed plan. Please review and approve before we continue."
|
||||
|
||||
### Orchestrator Design
|
||||
|
||||
7. "What key commands should the {pack-name} orchestrator support?"
|
||||
8. "What's the typical workflow from start to finish?"
|
||||
9. "How should it integrate with core BMAD agents?"
|
||||
|
||||
### Agent Planning
|
||||
|
||||
5. "For agent '{name}', what is their specific expertise?"
|
||||
6. "What unique tasks would this agent perform?"
|
||||
7. "How would they interact with existing BMAD agents?"
|
||||
10. "For agent '{name}', what is their specific expertise?"
|
||||
11. "What tasks will this agent reference? (I'll create them)"
|
||||
12. "What templates will this agent use? (I'll create them)"
|
||||
13. "What data files will this agent need? (You'll provide these)"
|
||||
|
||||
### Task Design
|
||||
|
||||
8. "Describe the '{task}' process step-by-step"
|
||||
9. "What information is needed to complete this task?"
|
||||
10. "What should the output look like?"
|
||||
14. "Describe the '{task}' process step-by-step"
|
||||
15. "What information is needed to complete this task?"
|
||||
16. "What should the output look like?"
|
||||
|
||||
### Template Creation
|
||||
|
||||
11. "What sections should the '{template}' document have?"
|
||||
12. "Are there any required formats or standards?"
|
||||
13. "Can you provide an example of a completed document?"
|
||||
17. "What sections should the '{template}' document have?"
|
||||
18. "Are there any required formats or standards?"
|
||||
19. "Can you provide an example of a completed document?"
|
||||
|
||||
### Integration
|
||||
### Data Requirements
|
||||
|
||||
14. "Which existing teams should include these new agents?"
|
||||
15. "Are there any dependencies between components?"
|
||||
20. "For {data-file}, what information should it contain?"
|
||||
21. "What format should this data be in?"
|
||||
22. "Can you provide a sample?"
|
||||
|
||||
## Important Considerations
|
||||
|
||||
- **Plan First**: ALWAYS create and get approval for plan.md before implementing
|
||||
- **Orchestrator Required**: Every pack MUST have a custom BMAD orchestrator
|
||||
- **Verify References**: ALL referenced tasks/templates MUST exist
|
||||
- **Document Data Needs**: Clearly specify what users must provide
|
||||
- **Domain Expertise**: Ensure accuracy in specialized fields
|
||||
- **Compliance**: Include necessary regulatory requirements
|
||||
- **Compatibility**: Test with existing BMAD agents
|
||||
- **Documentation**: Provide clear usage instructions
|
||||
- **Examples**: Include real-world scenarios
|
||||
- **Maintenance**: Plan for updates as domain evolves
|
||||
|
||||
## Tips for Success
|
||||
|
||||
1. **Start Small**: Begin with 1-2 agents and expand
|
||||
2. **Get Examples**: Real documents make better templates
|
||||
3. **Test Thoroughly**: Run complete workflows
|
||||
4. **Document Well**: Others will need to understand the domain
|
||||
5. **Iterate**: Refine based on usage feedback
|
||||
1. **Plan Thoroughly**: The plan.md prevents missing components
|
||||
2. **Build Orchestrator First**: It defines the overall workflow
|
||||
3. **Verify As You Go**: Check off items in plan.md
|
||||
4. **Test References**: Ensure no broken dependencies
|
||||
5. **Document Data**: Users need clear data file instructions
|
||||
|
||||
## Common Mistakes to Avoid
|
||||
|
||||
1. **Missing Orchestrator**: Every pack needs its own BMAD-style orchestrator
|
||||
2. **Orphaned References**: Agent references task that doesn't exist
|
||||
3. **Unclear Data Needs**: Not specifying required user data files
|
||||
4. **Skipping Plan**: Going straight to implementation
|
||||
5. **Generic Orchestrator**: Not making it domain-specific
|
||||
|
||||
## Completion Checklist
|
||||
|
||||
- [ ] plan.md created and approved
|
||||
- [ ] All plan.md items checked off
|
||||
- [ ] Orchestrator agent created
|
||||
- [ ] All agent references verified
|
||||
- [ ] Data requirements documented or added
|
||||
- [ ] README includes all setup instructions
|
||||
- [ ] manifest.yml reflects actual files
|
||||
|
||||
91
bmad-core/templates/expansion-pack-plan-tmpl.md
Normal file
91
bmad-core/templates/expansion-pack-plan-tmpl.md
Normal file
@@ -0,0 +1,91 @@
|
||||
# {Pack Name} Expansion Pack Plan
|
||||
|
||||
## Overview
|
||||
|
||||
- **Pack Name**: {pack-identifier}
|
||||
- **Display Name**: {Full Expansion Pack Name}
|
||||
- **Description**: {Brief description of what this pack does}
|
||||
- **Target Domain**: {Industry/domain this serves}
|
||||
- **Author**: {Your name/organization}
|
||||
|
||||
## Problem Statement
|
||||
|
||||
{What specific challenges does this expansion pack solve?}
|
||||
|
||||
## Target Users
|
||||
|
||||
{Who will benefit from this expansion pack?}
|
||||
|
||||
## Components to Create
|
||||
|
||||
### Agents
|
||||
|
||||
- [ ] `{pack-name}-orchestrator` - **REQUIRED**: Master orchestrator for {domain} workflows
|
||||
- Key commands: {list main commands}
|
||||
- Manages: {what it orchestrates}
|
||||
- [ ] `{agent-1-name}` - {Role description}
|
||||
- Tasks used: {task-1}, {task-2}
|
||||
- Templates used: {template-1}
|
||||
- Data required: {data-file-1}
|
||||
- [ ] `{agent-2-name}` - {Role description}
|
||||
- Tasks used: {task-3}
|
||||
- Templates used: {template-2}
|
||||
- Data required: {data-file-2}
|
||||
|
||||
### Tasks
|
||||
|
||||
- [ ] `{task-1}.md` - {Purpose} (used by: {agent})
|
||||
- [ ] `{task-2}.md` - {Purpose} (used by: {agent})
|
||||
- [ ] `{task-3}.md` - {Purpose} (used by: {agent})
|
||||
|
||||
### Templates
|
||||
|
||||
- [ ] `{template-1}-tmpl.md` - {Document type} (used by: {agent/task})
|
||||
- [ ] `{template-2}-tmpl.md` - {Document type} (used by: {agent/task})
|
||||
|
||||
### Checklists
|
||||
|
||||
- [ ] `{checklist-1}-checklist.md` - {What it validates}
|
||||
- [ ] `{checklist-2}-checklist.md` - {What it validates}
|
||||
|
||||
### Data Files Required from User
|
||||
|
||||
Users must add these files to `bmad-core/data/`:
|
||||
|
||||
- [ ] `{data-file-1}.{ext}` - {Description of required content}
|
||||
- Format: {file format}
|
||||
- Purpose: {why needed}
|
||||
- Example: {brief example}
|
||||
- [ ] `{data-file-2}.{ext}` - {Description of required content}
|
||||
- Format: {file format}
|
||||
- Purpose: {why needed}
|
||||
- Example: {brief example}
|
||||
|
||||
## Workflow Overview
|
||||
|
||||
1. {Step 1 - typically starts with orchestrator}
|
||||
2. {Step 2}
|
||||
3. {Step 3}
|
||||
4. {Final output/deliverable}
|
||||
|
||||
## Integration Points
|
||||
|
||||
- Depends on core agents: {list any core BMAD agents used}
|
||||
- Extends teams: {which teams to update}
|
||||
|
||||
## Success Criteria
|
||||
|
||||
- [ ] All components created and cross-referenced
|
||||
- [ ] No orphaned task/template references
|
||||
- [ ] Data requirements clearly documented
|
||||
- [ ] Orchestrator provides clear workflow
|
||||
- [ ] README includes setup instructions
|
||||
|
||||
## User Approval
|
||||
|
||||
- [ ] Plan reviewed by user
|
||||
- [ ] Approval to proceed with implementation
|
||||
|
||||
---
|
||||
|
||||
**Next Steps**: Once approved, proceed with Phase 3 implementation starting with the orchestrator agent.
|
||||
Reference in New Issue
Block a user