mirror of
https://github.com/bmadcode/BMAD-METHOD.git
synced 2025-12-29 16:14:59 +00:00
files moved and converted to tasks
This commit is contained in:
@@ -1,137 +0,0 @@
|
||||
# Create Agent Utility
|
||||
|
||||
This utility helps you create a new BMAD agent for web platforms (Gemini, ChatGPT, etc.).
|
||||
|
||||
**Note for User-Created Agents**: If you're creating a custom agent for your own use (not part of the core BMAD system), prefix the agent ID with a period (e.g., `.data-analyst`) to ensure it's gitignored and won't conflict with repository updates.
|
||||
|
||||
## Process
|
||||
|
||||
Follow these steps to create a new agent:
|
||||
|
||||
### 1. Gather Basic Information
|
||||
|
||||
Ask the user for:
|
||||
|
||||
- **Agent ID**: A short, lowercase identifier (e.g., `data-analyst`, `security-expert`)
|
||||
- **Agent Name**: The character name (e.g., "Elena", "Marcus")
|
||||
- **Title**: Professional title (e.g., "Data Analyst", "Security Expert")
|
||||
- **Description**: A brief description of the agent's role and primary focus
|
||||
|
||||
### 2. Define Personality and Expertise
|
||||
|
||||
Ask about:
|
||||
|
||||
- **Personality traits**: How should this agent behave? (professional, friendly, detail-oriented, etc.)
|
||||
- **Communication style**: How do they speak? (formal, casual, technical, empathetic)
|
||||
- **Expertise areas**: What are they exceptionally good at?
|
||||
- **Years of experience**: How senior are they in their role?
|
||||
- **Motivations**: What drives them to excel?
|
||||
|
||||
### 3. Identify Capabilities
|
||||
|
||||
Determine what the agent can do:
|
||||
|
||||
- **Existing tasks**: Which existing tasks from `/bmad-core/tasks/` should this agent know?
|
||||
- **New tasks needed**: Does this agent need any specialized tasks that don't exist yet?
|
||||
- **Templates used**: Which document templates will this agent work with?
|
||||
- **Checklists**: Which quality checklists apply to this agent's work?
|
||||
|
||||
### 4. Create the Persona File
|
||||
|
||||
Create `/bmad-core/personas/{agent-id}.md` with this structure:
|
||||
(For user-created agents, use `/bmad-core/personas/.{agent-id}.md`)
|
||||
|
||||
```markdown
|
||||
# {Agent Name} - {Title}
|
||||
|
||||
## Character Profile
|
||||
|
||||
**Name:** {Agent Name}
|
||||
**Title:** {Title}
|
||||
**Experience:** {Years} years in {field}
|
||||
|
||||
## Personality
|
||||
|
||||
{Describe personality traits, communication style, and approach to work}
|
||||
|
||||
## Core Expertise
|
||||
|
||||
{List main areas of expertise and specialization}
|
||||
|
||||
## Responsibilities
|
||||
|
||||
{List key responsibilities in bullet points}
|
||||
|
||||
## Working Style
|
||||
|
||||
{Describe how they approach problems, collaborate, and deliver results}
|
||||
|
||||
## Motivations
|
||||
|
||||
{What drives them to excel in their role}
|
||||
|
||||
## Catchphrases
|
||||
|
||||
{Optional: Any signature phrases or ways of speaking}
|
||||
```
|
||||
|
||||
### 5. Create the Agent Configuration
|
||||
|
||||
Create `/agents/{agent-id}.yml` with this structure:
|
||||
(For user-created agents, use `/agents/.{agent-id}.yml`)
|
||||
|
||||
```yaml
|
||||
agent:
|
||||
id: {agent-id}
|
||||
name: {Agent Name}
|
||||
title: {Title}
|
||||
description: >-
|
||||
{Full description of the agent's role and value}
|
||||
persona: {agent-id}
|
||||
customize: >-
|
||||
{Any specific behavioral customizations}
|
||||
|
||||
dependencies:
|
||||
tasks:
|
||||
- {list of task IDs}
|
||||
templates:
|
||||
- {list of template IDs}
|
||||
checklists:
|
||||
- {list of checklist IDs}
|
||||
data:
|
||||
- {list of data file IDs}
|
||||
utils:
|
||||
- template-format
|
||||
```
|
||||
|
||||
### 6. Create Any New Tasks
|
||||
|
||||
If new tasks were identified, create them in `/bmad-core/tasks/{task-name}.md`
|
||||
(For user-created tasks, use `/bmad-core/tasks/.{task-name}.md`)
|
||||
|
||||
### 7. Test and Validate
|
||||
|
||||
1. Run `npm run validate` to check configuration
|
||||
2. Run `npm run build:agent -a {agent-id}` to build the agent
|
||||
3. Review the generated output in `/dist/agents/{agent-id}.txt`
|
||||
|
||||
## Example Questions to Ask
|
||||
|
||||
1. "What will this agent be called? (ID like 'data-analyst')"
|
||||
2. "What's their character name? (like 'Elena')"
|
||||
3. "What's their professional title?"
|
||||
4. "Describe their main role in 2-3 sentences."
|
||||
5. "What personality traits should they have?"
|
||||
6. "How many years of experience do they have?"
|
||||
7. "What existing tasks should they know? (e.g., create-doc-from-template, execute-checklist)"
|
||||
8. "Do they need any specialized tasks that don't exist yet?"
|
||||
9. "Which document templates will they use?"
|
||||
10. "What motivates them in their work?"
|
||||
|
||||
## Important Notes
|
||||
|
||||
- Keep personas engaging but professional
|
||||
- Ensure all referenced tasks, templates, and checklists exist
|
||||
- Web agents can be more detailed than IDE agents (no size constraints)
|
||||
- Consider how this agent will collaborate with existing team members
|
||||
- Run validation after creating to catch any issues
|
||||
@@ -1,259 +0,0 @@
|
||||
# Create Expansion Pack Utility
|
||||
|
||||
This utility 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.
|
||||
|
||||
## 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
|
||||
|
||||
### Phase 2: Component Design
|
||||
|
||||
#### 2.1 Identify Required Agents
|
||||
|
||||
For each proposed agent:
|
||||
|
||||
- **Role**: What specialist is needed?
|
||||
- **Expertise**: Domain-specific knowledge required
|
||||
- **Interactions**: How they work with existing BMAD agents
|
||||
- **Unique Value**: What can't existing agents handle?
|
||||
|
||||
#### 2.2 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.3 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.4 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
|
||||
|
||||
#### 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.
|
||||
|
||||
```
|
||||
expansion-packs/
|
||||
└── .{pack-name}/
|
||||
├── manifest.yml
|
||||
├── README.md
|
||||
├── agents/
|
||||
│ └── {agent-id}.yml
|
||||
├── personas/
|
||||
│ └── {agent-id}.md
|
||||
├── tasks/
|
||||
│ └── {task-name}.md
|
||||
├── templates/
|
||||
│ └── {template-name}.md
|
||||
├── checklists/
|
||||
│ └── {checklist-name}.md
|
||||
└── ide-agents/
|
||||
└── {agent-id}.ide.md
|
||||
```
|
||||
|
||||
#### 3.2 Create Manifest
|
||||
|
||||
Create `manifest.yml`:
|
||||
|
||||
```yaml
|
||||
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 install (with . prefix for gitignore)
|
||||
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
|
||||
|
||||
# Optional: Update existing teams
|
||||
team_updates:
|
||||
- team: team-technical.yml
|
||||
add_agent: {new-agent-id}
|
||||
|
||||
# Post-install message
|
||||
post_install_message: >-
|
||||
{Pack Name} installed successfully!
|
||||
|
||||
New agents available: {list agents}
|
||||
New tasks available: {list tasks}
|
||||
|
||||
Run 'npm run build' to generate bundles.
|
||||
```
|
||||
|
||||
### Phase 4: Content Creation
|
||||
|
||||
#### 4.1 Agent Creation Checklist
|
||||
|
||||
For each new 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
|
||||
|
||||
#### 4.2 Task Creation Guidelines
|
||||
|
||||
Each task should:
|
||||
|
||||
1. Have a clear, single purpose
|
||||
2. Include step-by-step instructions
|
||||
3. Provide examples when helpful
|
||||
4. Reference domain standards
|
||||
5. Be reusable across agents
|
||||
|
||||
#### 4.3 Template Best Practices
|
||||
|
||||
Templates should:
|
||||
|
||||
1. Include clear section headers
|
||||
2. Provide inline instructions
|
||||
3. Show example content
|
||||
4. Mark required vs optional sections
|
||||
5. Include domain-specific terminology
|
||||
|
||||
### Phase 5: Testing and Documentation
|
||||
|
||||
#### 5.1 Create README
|
||||
|
||||
Include:
|
||||
|
||||
- Overview of the pack's purpose
|
||||
- List of all components
|
||||
- Installation instructions
|
||||
- Usage examples
|
||||
- Integration notes
|
||||
|
||||
#### 5.2 Test Installation
|
||||
|
||||
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
|
||||
|
||||
## Example: Healthcare Expansion Pack
|
||||
|
||||
```
|
||||
.healthcare/
|
||||
├── manifest.yml
|
||||
├── README.md
|
||||
├── agents/
|
||||
│ ├── clinical-analyst.yml
|
||||
│ └── compliance-officer.yml
|
||||
├── personas/
|
||||
│ ├── clinical-analyst.md
|
||||
│ └── compliance-officer.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
|
||||
```
|
||||
|
||||
## Interactive Questions Flow
|
||||
|
||||
### Initial Discovery
|
||||
1. "What domain or industry will this expansion pack serve?"
|
||||
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?"
|
||||
|
||||
### 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?"
|
||||
|
||||
### 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?"
|
||||
|
||||
### 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?"
|
||||
|
||||
### Integration
|
||||
14. "Which existing teams should include these new agents?"
|
||||
15. "Are there any dependencies between components?"
|
||||
|
||||
## Important Considerations
|
||||
|
||||
- **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,142 +0,0 @@
|
||||
# Create IDE Agent Utility
|
||||
|
||||
This utility helps you create a new BMAD agent optimized for IDE environments (Cursor, Windsurf, etc.).
|
||||
|
||||
**Note for User-Created IDE Agents**: If you're creating a custom IDE agent for your own use (not part of the core BMAD system), prefix the agent ID with a period (e.g., `.api-expert`) to ensure it's gitignored and won't conflict with repository updates.
|
||||
|
||||
## Important Constraints
|
||||
|
||||
IDE agents must be **compact and efficient** (target: under 2000 characters) to work well as slash commands.
|
||||
|
||||
## Process
|
||||
|
||||
### 1. Gather Essential Information
|
||||
|
||||
Ask the user for:
|
||||
|
||||
- **Agent ID**: Short, lowercase identifier (e.g., `api-expert`, `test-engineer`)
|
||||
- **Slash command**: The command to activate (e.g., `/api`, `/test`)
|
||||
- **Core purpose**: ONE primary function (IDE agents should be focused)
|
||||
|
||||
### 2. Define Minimal Personality
|
||||
|
||||
Keep it brief:
|
||||
|
||||
- **One-line personality**: A single trait or approach (e.g., "Direct and solution-focused")
|
||||
- **Expertise**: 2-3 core skills maximum
|
||||
- **Style**: How they communicate (brief! e.g., "Concise, code-first responses")
|
||||
|
||||
### 3. Identify Essential Capabilities
|
||||
|
||||
Be selective - IDE agents should be specialized:
|
||||
|
||||
- **1-2 primary tasks**: Only the most essential tasks
|
||||
- **1 template maximum**: Only if absolutely necessary
|
||||
- **Skip checklists**: Usually too large for IDE agents
|
||||
- **Reuse existing tasks**: Creating new tasks for IDE agents is rare
|
||||
|
||||
### 4. Create the Compact IDE Agent
|
||||
|
||||
Create `/bmad-core/ide-agents/{agent-id}.ide.md` with this structure:
|
||||
(For user-created agents, use `/bmad-core/ide-agents/.{agent-id}.ide.md`)
|
||||
|
||||
```markdown
|
||||
# {Slash Command}
|
||||
|
||||
You are {Agent Name}, a {title/role}.
|
||||
|
||||
## Expertise
|
||||
- {Skill 1}
|
||||
- {Skill 2}
|
||||
- {Skill 3 if essential}
|
||||
|
||||
## Approach
|
||||
{One sentence about how you work}
|
||||
|
||||
## Focus
|
||||
{One sentence about what you prioritize}
|
||||
|
||||
---
|
||||
|
||||
When activated with {slash command}, immediately focus on {primary purpose}.
|
||||
```
|
||||
|
||||
### 5. Size Optimization Techniques
|
||||
|
||||
To keep agents small:
|
||||
|
||||
1. **Remove fluff**: No backstory, minimal personality
|
||||
2. **Use references**: Reference tasks rather than inline instructions
|
||||
3. **Be specific**: One job done well is better than many done poorly
|
||||
4. **Trim lists**: Maximum 3-5 bullet points for any list
|
||||
5. **Avoid examples**: Let referenced tasks handle examples
|
||||
|
||||
### 6. Test the Agent
|
||||
|
||||
1. Check character count: `wc -c {agent-file}`
|
||||
2. Ensure it's under 2000 characters
|
||||
3. Test in your IDE with the slash command
|
||||
4. Verify it can access referenced tasks
|
||||
|
||||
## Example Questions (Keep it Simple!)
|
||||
|
||||
1. "What's the slash command? (e.g., /api)"
|
||||
2. "What's the ONE thing this agent does best?"
|
||||
3. "In 5 words or less, describe their personality"
|
||||
4. "What 1-2 existing tasks do they need?"
|
||||
5. "Any special focus or constraints?"
|
||||
|
||||
## Example: Minimal API Expert
|
||||
|
||||
```markdown
|
||||
# /api
|
||||
|
||||
You are Alex, an API design expert.
|
||||
|
||||
## Expertise
|
||||
- RESTful API design
|
||||
- OpenAPI/Swagger specs
|
||||
- API security patterns
|
||||
|
||||
## Approach
|
||||
I provide immediate, practical API solutions with example code.
|
||||
|
||||
## Focus
|
||||
Clean, secure, well-documented APIs that follow industry standards.
|
||||
|
||||
---
|
||||
|
||||
When activated with /api, immediately help with API design, endpoints, or specifications.
|
||||
```
|
||||
|
||||
## Size Comparison
|
||||
|
||||
❌ **Too Large** (persona-style):
|
||||
|
||||
```markdown
|
||||
Alex is a seasoned API architect with over 10 years of experience
|
||||
building scalable systems. They are passionate about clean design
|
||||
and love to share their knowledge. Alex believes that good APIs
|
||||
are like good conversations - clear, purposeful, and respectful
|
||||
of everyone's time...
|
||||
```
|
||||
|
||||
(Too much personality, not focused)
|
||||
|
||||
✅ **Just Right** (IDE-style):
|
||||
|
||||
```markdown
|
||||
You are Alex, an API design expert.
|
||||
Focus: RESTful design, OpenAPI specs, security patterns.
|
||||
Style: Direct solutions with example code.
|
||||
```
|
||||
|
||||
(Minimal, focused, actionable)
|
||||
|
||||
## Important Notes
|
||||
|
||||
- **One agent, one job** - Don't try to do everything
|
||||
- **Reference, don't repeat** - Use task dependencies
|
||||
- **Test the size** - Must be under 2000 characters
|
||||
- **Skip the story** - No background needed for IDE agents
|
||||
- **Focus on action** - What they DO, not who they ARE
|
||||
@@ -1,177 +0,0 @@
|
||||
# Create Team Utility
|
||||
|
||||
This utility helps you create a NEW BMAD team bundle by combining existing agents from the BMAD-METHOD repository.
|
||||
|
||||
**Important**: This utility is for CREATING new teams, not for listing what agents are available in the current bundle. To see agents in the current bundle, use `/agent-list`.
|
||||
|
||||
**Note for User-Created Teams**: If you're creating a custom team for your own use (not part of the core BMAD system), prefix the team ID with a period (e.g., `.team-frontend`) to ensure it's gitignored and won't conflict with repository updates.
|
||||
|
||||
## Process
|
||||
|
||||
### 1. Define Team Basics
|
||||
|
||||
Ask the user for:
|
||||
|
||||
- **Team ID**: Filename without extension (e.g., `team-frontend`, `team-planning`)
|
||||
- **Team Name**: Display name (e.g., "Frontend Development Team")
|
||||
- **Team Description**: What this team is designed to accomplish
|
||||
- **Target Environment**: Usually "web" for team bundles
|
||||
|
||||
### 2. List Available Agents for Team Creation
|
||||
|
||||
When creating a new team, you can choose from these agents in the BMAD-METHOD repository:
|
||||
|
||||
```
|
||||
Agents available for team creation:
|
||||
- analyst (Mary) - Project Analyst and Brainstorming Coach
|
||||
- architect (Fred) - System Architecture Expert
|
||||
- bmad (BMad) - BMAD Method Orchestrator
|
||||
- ui-architect (Jane) - UI/UX Architecture Expert
|
||||
- dev (James) - Full Stack Developer
|
||||
- devops (Alex) - Platform Engineer
|
||||
- fullstack-architect (Winston) - Holistic System Designer
|
||||
- pm (John) - Product Manager
|
||||
- po (Sarah) - Product Owner
|
||||
- qa (Quinn) - Test Architect
|
||||
- sm (Bob) - Scrum Master
|
||||
- ux-expert (Sally) - UX Design Expert
|
||||
```
|
||||
|
||||
**Note**: This list is for selecting agents when creating a NEW team configuration file. It does not reflect what agents are in your current bundle.
|
||||
|
||||
### 3. Select Team Members
|
||||
|
||||
For each agent the user wants to include:
|
||||
|
||||
1. Confirm the agent ID
|
||||
2. Ask if they want to customize the persona for this team context
|
||||
3. Note any special team dynamics or relationships
|
||||
|
||||
### 4. Optimize Team Composition
|
||||
|
||||
Consider:
|
||||
|
||||
- **Role coverage**: Does the team have all necessary skills?
|
||||
- **Team size**: 3-7 agents is usually optimal
|
||||
- **Collaboration**: How will these agents work together?
|
||||
- **Use cases**: What problems will this team solve?
|
||||
|
||||
### 5. Create Team Configuration
|
||||
|
||||
Create `/agent-teams/{team-id}.yml`:
|
||||
(For user-created teams, use `/agent-teams/.{team-id}.yml`)
|
||||
|
||||
```yaml
|
||||
bundle:
|
||||
name: {Team Name}
|
||||
description: >-
|
||||
{Detailed description of the team's purpose and capabilities}
|
||||
|
||||
agents:
|
||||
- {agent-id-1}
|
||||
- {agent-id-2}
|
||||
- {agent-id-3}
|
||||
# ... more agents
|
||||
```
|
||||
|
||||
#### Using Wildcards
|
||||
|
||||
You can use `"*"` (quoted) to include all available agents:
|
||||
|
||||
```yaml
|
||||
agents:
|
||||
- bmad # Always include bmad first
|
||||
- "*" # Include all other agents
|
||||
```
|
||||
|
||||
Or mix specific agents with wildcard:
|
||||
|
||||
```yaml
|
||||
agents:
|
||||
- pm # Product Manager first
|
||||
- architect # Then Architect
|
||||
- "*" # Then all remaining agents
|
||||
```
|
||||
|
||||
### 6. Validate and Build
|
||||
|
||||
1. Run `npm run validate` to check configuration
|
||||
2. Run `npm run build` to generate the team bundle
|
||||
3. Review output in `/dist/teams/{team-filename}.txt`
|
||||
|
||||
## Example Teams
|
||||
|
||||
### Development Team
|
||||
```yaml
|
||||
bundle:
|
||||
name: Development Team Bundle
|
||||
description: >-
|
||||
Core development team for building features from story to deployment
|
||||
|
||||
agents:
|
||||
- sm # Sprint coordination
|
||||
- dev # Implementation
|
||||
- qa # Quality assurance
|
||||
- devops # Deployment
|
||||
```
|
||||
|
||||
### Planning Team
|
||||
```yaml
|
||||
bundle:
|
||||
name: Planning Team Bundle
|
||||
description: >-
|
||||
Strategic planning team for project inception and architecture
|
||||
|
||||
agents:
|
||||
- analyst # Requirements gathering
|
||||
- pm # Product planning
|
||||
- architect # System design
|
||||
- po # Validation
|
||||
```
|
||||
|
||||
### Full-Stack Team
|
||||
```yaml
|
||||
bundle:
|
||||
name: Full-Stack Team Bundle
|
||||
description: >-
|
||||
Complete team for full-stack application development
|
||||
|
||||
agents:
|
||||
- fullstack-architect # Holistic design
|
||||
- design-architect # Frontend architecture
|
||||
- dev # Implementation
|
||||
- qa # Testing
|
||||
- devops # Infrastructure
|
||||
```
|
||||
|
||||
## Questions to Ask
|
||||
|
||||
1. "What should this team be called? (e.g., 'team-mobile')"
|
||||
2. "What's the team's display name?"
|
||||
3. "Describe the team's primary purpose"
|
||||
4. "Which agents should be on this team? (list agent IDs)"
|
||||
5. "Any special dynamics between team members?"
|
||||
6. "What types of projects will this team handle?"
|
||||
|
||||
## Tips for Good Teams
|
||||
|
||||
- **Start small**: Begin with 3-4 core agents
|
||||
- **Clear purpose**: Each team should have a specific focus
|
||||
- **Complementary skills**: Agents should cover different aspects
|
||||
- **Avoid redundancy**: Don't include agents with overlapping roles
|
||||
- **Consider workflow**: Order agents by typical workflow sequence
|
||||
|
||||
## Common Team Patterns
|
||||
|
||||
1. **Scrum Team**: sm, dev, qa, po
|
||||
2. **Planning Team**: analyst, pm, architect, po
|
||||
3. **Design Team**: ux-expert, ui-architect, dev
|
||||
4. **Full Organization**: All agents (for complex projects)
|
||||
5. **Technical Team**: architect, dev, devops, qa
|
||||
|
||||
## Important Notes
|
||||
|
||||
- Teams reference existing agents - create agents first
|
||||
- Keep team descriptions clear and purpose-driven
|
||||
- Consider creating multiple focused teams rather than one large team
|
||||
- Test team dynamics by running sample scenarios
|
||||
@@ -7,10 +7,11 @@ This utility enables the BMAD orchestrator to manage and execute team workflows.
|
||||
The BMAD orchestrator MUST read the available workflows from the current team configuration's `workflows` field. Do not use hardcoded workflow lists. Each team bundle defines its own set of supported workflows based on the agents it includes.
|
||||
|
||||
**Critical Distinction**:
|
||||
|
||||
- When asked "what workflows are available?", show ONLY the workflows defined in the current team bundle's configuration
|
||||
- The create-* utilities (create-agent, create-team, etc.) are for CREATING new configurations, not for listing what's available in the current session
|
||||
- Use `/agent-list` to show agents in the current bundle, NOT the create-agent utility
|
||||
- Use `/workflows` to show workflows in the current bundle, NOT any creation utilities
|
||||
- The create-\* tasks (create-agent, create-team, etc.) are for CREATING new configurations, not for listing what's available in the current session
|
||||
- Use `/agent-list` to show agents in the current bundle, NOT the create-agent task
|
||||
- Use `/workflows` to show workflows in the current bundle, NOT any creation tasks
|
||||
|
||||
### Workflow Descriptions
|
||||
|
||||
@@ -26,7 +27,9 @@ When displaying workflows, use these descriptions based on the workflow ID:
|
||||
## Workflow Commands
|
||||
|
||||
### /workflows
|
||||
|
||||
Lists all available workflows for the current team. The available workflows are determined by the team configuration and may include workflows such as:
|
||||
|
||||
- greenfield-fullstack
|
||||
- brownfield-fullstack
|
||||
- greenfield-service
|
||||
@@ -37,6 +40,7 @@ Lists all available workflows for the current team. The available workflows are
|
||||
The actual list depends on which team bundle is loaded. When responding to this command, display the workflows that are configured in the current team's `workflows` field.
|
||||
|
||||
Example response format:
|
||||
|
||||
```
|
||||
Available workflows for [Team Name]:
|
||||
1. [workflow-id] - [Brief description based on workflow type]
|
||||
@@ -47,43 +51,49 @@ Use /workflow-start {number or id} to begin a workflow.
|
||||
```
|
||||
|
||||
### /workflow-start {workflow-id}
|
||||
|
||||
Starts a specific workflow and transitions to the first agent.
|
||||
|
||||
Example: `/workflow-start greenfield-fullstack`
|
||||
|
||||
### /workflow-status
|
||||
|
||||
Shows current workflow progress, completed artifacts, and next steps.
|
||||
|
||||
Example response:
|
||||
|
||||
```
|
||||
Current Workflow: Greenfield Full-Stack Development
|
||||
Stage: Product Planning (2 of 6)
|
||||
Completed:
|
||||
✓ Discovery & Requirements
|
||||
- project-brief (completed by Mary)
|
||||
|
||||
|
||||
In Progress:
|
||||
⚡ Product Planning
|
||||
- Create PRD (John) - awaiting input
|
||||
|
||||
|
||||
Next: Technical Architecture
|
||||
```
|
||||
|
||||
### /workflow-resume
|
||||
|
||||
Resumes a workflow from where it left off, useful when starting a new chat.
|
||||
|
||||
User can provide completed artifacts:
|
||||
|
||||
```
|
||||
User: /workflow-resume greenfield-fullstack
|
||||
I have completed: project-brief, PRD
|
||||
BMad: I see you've completed Discovery and part of Product Planning.
|
||||
BMad: I see you've completed Discovery and part of Product Planning.
|
||||
Based on the greenfield-fullstack workflow, the next step is:
|
||||
- UX Strategy with Sally (ux-expert)
|
||||
|
||||
|
||||
Would you like me to load Sally to continue?
|
||||
```
|
||||
|
||||
### /workflow-next
|
||||
|
||||
Shows the next recommended agent and action in the current workflow.
|
||||
|
||||
## Workflow Execution Flow
|
||||
@@ -91,6 +101,7 @@ Shows the next recommended agent and action in the current workflow.
|
||||
### 1. Starting a Workflow
|
||||
|
||||
When a workflow is started:
|
||||
|
||||
1. Load the workflow definition
|
||||
2. Identify the first stage and step
|
||||
3. Transition to the required agent
|
||||
@@ -100,6 +111,7 @@ When a workflow is started:
|
||||
### 2. Stage Transitions
|
||||
|
||||
After each artifact is completed:
|
||||
|
||||
1. Mark the step as complete
|
||||
2. Check transition conditions
|
||||
3. If stage is complete, move to next stage
|
||||
@@ -109,6 +121,7 @@ After each artifact is completed:
|
||||
### 3. Artifact Tracking
|
||||
|
||||
Track all created artifacts:
|
||||
|
||||
```yaml
|
||||
workflow_state:
|
||||
current_workflow: greenfield-fullstack
|
||||
@@ -128,6 +141,7 @@ workflow_state:
|
||||
### 4. Workflow Interruption Handling
|
||||
|
||||
When user returns after interruption:
|
||||
|
||||
1. Ask if continuing previous workflow
|
||||
2. Request any completed artifacts
|
||||
3. Analyze provided artifacts
|
||||
@@ -135,38 +149,41 @@ When user returns after interruption:
|
||||
5. Suggest next appropriate step
|
||||
|
||||
Example:
|
||||
|
||||
```
|
||||
User: I'm working on a new app. Here's my PRD and architecture doc.
|
||||
BMad: I see you have a PRD and architecture document. Based on these artifacts,
|
||||
BMad: I see you have a PRD and architecture document. Based on these artifacts,
|
||||
it looks like you're following the greenfield-fullstack workflow and have completed
|
||||
stages 1-3. The next recommended step would be:
|
||||
|
||||
|
||||
Stage 4: Validation & Refinement
|
||||
- Load Sarah (Product Owner) to validate all artifacts
|
||||
|
||||
|
||||
Would you like to continue with this workflow?
|
||||
```
|
||||
|
||||
## Workflow Context Passing
|
||||
|
||||
When transitioning between agents, pass:
|
||||
|
||||
1. Previous artifacts created
|
||||
2. Current workflow stage
|
||||
3. Expected outputs
|
||||
4. Any decisions or constraints identified
|
||||
|
||||
Example transition:
|
||||
|
||||
```
|
||||
BMad: Great! John has completed the PRD. According to the greenfield-fullstack workflow,
|
||||
the next step is UX Strategy with Sally.
|
||||
|
||||
|
||||
/ux-expert
|
||||
|
||||
|
||||
Sally: I see we're in the Product Planning stage of the greenfield-fullstack workflow.
|
||||
I have access to:
|
||||
- Project Brief from Mary
|
||||
- PRD from John
|
||||
|
||||
|
||||
Let's create the UX strategy and UI specifications. First, let me review
|
||||
the PRD to understand the features we're designing for...
|
||||
```
|
||||
@@ -174,6 +191,7 @@ Sally: I see we're in the Product Planning stage of the greenfield-fullstack wor
|
||||
## Multi-Path Workflows
|
||||
|
||||
Some workflows may have multiple paths:
|
||||
|
||||
```yaml
|
||||
conditional_paths:
|
||||
- condition: "project_type == 'mobile'"
|
||||
@@ -196,10 +214,11 @@ Handle these by asking clarifying questions when needed.
|
||||
## Integration with Agents
|
||||
|
||||
Each agent should be workflow-aware:
|
||||
|
||||
- Know which workflow is active
|
||||
- Understand their role in the workflow
|
||||
- Access previous artifacts
|
||||
- Know expected outputs
|
||||
- Guide toward workflow goals
|
||||
|
||||
This creates a seamless experience where the entire team works together toward the workflow's objectives.
|
||||
This creates a seamless experience where the entire team works together toward the workflow's objectives.
|
||||
|
||||
Reference in New Issue
Block a user