12 KiB
Create Expansion Pack Task
This task helps you create a comprehensive BMAD expansion pack that can include new agents, tasks, templates, and checklists for a specific domain.
Understanding Expansion Packs
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
- Create Planning Document First: Before any implementation, create a concise task list for user approval
- Verify All References: Any task, template, or data file referenced in an agent MUST exist in the pack
- Include Orchestrator: Every pack needs a custom BMAD-style orchestrator agent
- User Data Requirements: Clearly specify any files users must provide in their data folder
Process Overview
Phase 1: Discovery and Planning
1.1 Define the Domain
Ask the user:
- Pack Name: Short identifier (e.g.,
healthcare,fintech,gamedev) - Display Name: Full name (e.g., "Healthcare Compliance Pack")
- Description: What domain or industry does this serve?
- Key Problems: What specific challenges will this pack solve?
- Target Users: Who will benefit from this expansion?
1.2 Gather Examples
Request from the user:
- Sample Documents: Any existing documents in this domain
- 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:
# {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 Create Orchestrator 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 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.3 Design Specialized Tasks
For each task:
- Purpose: What specific action does it enable?
- Inputs: What information is needed?
- Process: Step-by-step instructions
- Outputs: What gets produced?
- Agent Usage: Which agents will use this task?
2.4 Create Document Templates
For each template:
- Document Type: What kind of document?
- Structure: Sections and organization
- Placeholders: Variable content areas
- Instructions: How to complete each section
- Standards: Any format requirements
2.5 Define Checklists
For each checklist:
- Purpose: What quality aspect does it verify?
- Scope: When should it be used?
- Items: Specific things to check
- Criteria: Pass/fail conditions
Phase 3: Implementation
Only proceed after plan.md is approved
3.1 Create Directory Structure
expansion-packs/
└── {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
├── templates/
│ └── {template-name}.md
├── checklists/
│ └── {checklist-name}.md
└── ide-agents/
├── {pack-name}-orchestrator.ide.md (REQUIRED)
└── {agent-id}.ide.md
3.2 Create Manifest
Create manifest.yml:
name: {pack-name}
version: 1.0.0
description: >-
{Detailed description of the expansion pack}
author: {Your name or organization}
bmad_version: "4.0.0"
# Files to create in the expansion pack
files:
agents:
- {pack-name}-orchestrator.yml
- {agent-name}.yml
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} expansion pack ready!
Required data files:
- {data-file}.{ext}: {description}
To use: npm run agent {pack-name}-orchestrator
Phase 4: Content Creation
Work through plan.md checklist systematically
4.1 Create Orchestrator First
- Create
personas/{pack-name}-orchestrator.mdwith BMAD-style commands - Create
agents/{pack-name}-orchestrator.ymlconfiguration - Create
ide-agents/{pack-name}-orchestrator.ide.md - Verify ALL referenced tasks exist
- Verify ALL referenced templates exist
- Document data file requirements
4.2 Agent Creation Order
For each additional agent:
- Create persona file with domain expertise
- Create agent configuration YAML
- Create IDE-optimized version
- STOP - Verify all referenced tasks/templates exist
- Create any missing tasks/templates immediately
- Mark agent as complete in plan.md
4.3 Task Creation Guidelines
Each task should:
- Have a clear, single purpose
- Include step-by-step instructions
- Provide examples when helpful
- Reference domain standards
- Be reusable across agents
4.4 Template Best Practices
Templates should:
- Include clear section headers
- Provide inline instructions
- Show example content
- Mark required vs optional sections
- Include domain-specific terminology
Phase 5: Verification and Documentation
5.1 Final Verification Checklist
Before declaring complete:
- All items in plan.md marked complete
- Orchestrator agent created and tested
- All agent references validated
- All required data files documented
- manifest.yml lists all components
- 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
- Integration with BMAD workflow
- Example scenarios
5.3 Data File Documentation
For each required data file:
## 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/
├── 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
│ └── patient-data-analysis.md
├── templates/
│ ├── clinical-trial-protocol.md
│ ├── hipaa-compliance-report.md
│ └── patient-outcome-report.md
└── 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
Initial Discovery
- "What domain or industry will this expansion pack serve?"
- "What are the main challenges or workflows in this domain?"
- "Do you have any example documents or outputs? (Please share)"
- "What specialized roles/experts exist in this domain?"
- "What reference data will users need to provide?"
Planning Phase
- "Here's the proposed plan. Please review and approve before we continue."
Orchestrator Design
- "What key commands should the {pack-name} orchestrator support?"
- "What's the typical workflow from start to finish?"
- "How should it integrate with core BMAD agents?"
Agent Planning
- "For agent '{name}', what is their specific expertise?"
- "What tasks will this agent reference? (I'll create them)"
- "What templates will this agent use? (I'll create them)"
- "What data files will this agent need? (You'll provide these)"
Task Design
- "Describe the '{task}' process step-by-step"
- "What information is needed to complete this task?"
- "What should the output look like?"
Template Creation
- "What sections should the '{template}' document have?"
- "Are there any required formats or standards?"
- "Can you provide an example of a completed document?"
Data Requirements
- "For {data-file}, what information should it contain?"
- "What format should this data be in?"
- "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
Tips for Success
- Plan Thoroughly: The plan.md prevents missing components
- Build Orchestrator First: It defines the overall workflow
- Verify As You Go: Check off items in plan.md
- Test References: Ensure no broken dependencies
- Document Data: Users need clear data file instructions
Common Mistakes to Avoid
- Missing Orchestrator: Every pack needs its own BMAD-style orchestrator
- Orphaned References: Agent references task that doesn't exist
- Unclear Data Needs: Not specifying required user data files
- Skipping Plan: Going straight to implementation
- 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