Executes the Agent Creation workflow as the Builder.
Workflow Overview#
Goal: Create a custom BMAD agent skill for specialized domains
Phase: Builder Module
Agent: Builder
Inputs: Agent role, responsibilities, workflows, integration points
Output: Custom SKILL.md file ready for installation
Duration: 20-40 minutes
Pre-Flight#
- Load context per
helpers.md#Combined-Config-Load -
Explain purpose:
"I'll help you create a custom agent skill. This extends BMAD with domain-specific capabilities while following BMAD patterns for token optimization."
Agent Creation Process#
Use TodoWrite to track: Gather Requirements â Design Agent â Define Workflows â Specify Integration â Generate Skill â Test â Install
Part 1: Gather Requirements#
Ask user:
Q1: Agent Role
"What role should this agent perform?"
Examples:
- QA Engineer (testing, quality assurance)
- DevOps Engineer (deployment, infrastructure)
- Security Analyst (security audits, pen testing)
- Data Scientist (data analysis, model training)
- Technical Writer (documentation, guides)
Store as: {{agent_role}}
Q2: Domain/Phase
"Which BMAD phase or domain does this agent work in?"
Options:
- Phase 1 - Analysis
- Phase 2 - Planning
- Phase 3 - Solutioning
- Phase 4 - Implementation
- Custom domain (specify)
Store as: {{agent_phase}}
Q3: Primary Responsibilities
"What are the 3-7 key responsibilities of this agent?"
Format as bulleted list. Be specific.
Store as: {{responsibilities_list}}
Part 2: Define Core Principles#
Explain:
"Agents follow core principles that guide their approach. Let's define 3-5 principles for your agent."
Ask:
"What principles should guide this agent?"
Examples for QA Engineer:
- Test Early - Find bugs before production
- Comprehensive Coverage - Test all critical paths
- Automate Everything - Manual testing doesn't scale
Examples for DevOps:
- Infrastructure as Code - Everything version controlled
- Automate Deployment - Humans don't deploy, systems do
- Monitor Everything - You can't improve what you don't measure
Format each:
**[Principle Name]** - [Description]
Store as: {{core_principles}}
Part 3: Define Workflows#
Ask:
"What workflows (commands) will this agent execute?"
List 1-5 commands this agent will handle.
Format: /command-name - Description
Example for QA Engineer:
- /create-test-plan - Create comprehensive test plan
- /execute-tests - Run test suite
- /bug-report - Generate bug report
- /test-coverage - Analyze test coverage
Store as: {{available_commands}}
Part 4: Specify Integration Points#
Ask:
"Which other BMAD agents or tools will this agent work with?"
Probe:
- Works after which agents? (receives input from)
- Works before which agents? (hands off to)
- Works alongside which tools? (collaborates with)
Example for QA Engineer:
**Works after:**
- Developer - Receives code for testing
- Product Manager - Receives acceptance criteria
**Works before:**
- Developer - Reports bugs for fixing
**Works with:**
- Test frameworks, CI/CD tools, bug trackers
Store as: {{integration_points}}
Part 5: Domain-Specific Guidance#
Ask:
"Any domain-specific guidance for LLMs executing this agent?"
Examples:
- Specific tools to use (pytest, Jest, Selenium)
- Frameworks to follow (BDD, TDD)
- Standards to apply (OWASP, PCI-DSS)
- Common patterns in this domain
Store as: {{domain_guidance}}
Part 6: Generate Skill File#
Determine file path:
Module: bmb (builder module for custom agents)
Role: { { agent_role } } (normalized: lowercase, hyphens)
Path: ~/.claude/skills/bmad/bmb/ { { role-name } } /SKILL.md
Generate SKILL.md using template:
---
skill_id: bmad-bmb- { { role-name } }
name: { { agent_role } }
description: { { one-line-description } }
version: 1.0.0
module: bmb
---
# { { agent_role } }
**Role:** { { agent_phase } } specialist
**Function:** { { summary-of-function } }
## Responsibilities
{ { responsibilities_list } }
## Core Principles
{ { core_principles } }
## Available Commands
{ { available_commands } }
## Workflow Execution
**All workflows follow helpers.md patterns:**
1. **Load Context** - See `helpers.md#Combined-Config-Load`
2. **Check Status** - See `helpers.md#Load-Workflow-Status`
3. **Execute Workflow** - Domain-specific process
4. **Generate Output** - See `helpers.md#Apply-Variables-to-Template`
5. **Update Status** - See `helpers.md#Update-Workflow-Status`
6. **Recommend Next** - See `helpers.md#Determine-Next-Workflow`
## Integration Points
{ { integration_points } }
## Critical Actions (On Load)
When activated:
1. Load project config per `helpers.md#Load-Project-Config`
2. Check workflow status per `helpers.md#Load-Workflow-Status`
3. { { domain-specific-setup } }
## { { Domain-Specific Section } }
{ { domain_guidance } }
## Notes for LLMs
- Use TodoWrite to track workflow tasks
- Reference helpers.md sections for all common operations
- { { domain-specific-llm-guidance } }
- Follow BMAD patterns (functional, token-optimized)
- Update workflow status after completion
## Example Interaction
User: /{{example-command}}
{{agent_role}}: {{example-interaction}}
**Remember:** { { key-reminder-for-agent } }
Part 7: Validate and Review#
Display generated skill to user:
Show the skill file content and ask:
"Here's your custom agent skill. Review:"
Agent: {{agent_role}} Responsibilities: {{count}} Commands: {{count}} Module: bmb
Does this look correct? Any changes needed?
If changes: Iterate and regenerate
Part 8: Save Skill File#
Save to project (for review):
./custom-agents/ { { role-name } } /SKILL.md
Instructions for installation:
â Custom Agent Created!
Agent: { { agent_role } }
File: ./custom-agents/ { { role-name } } /SKILL.md
## Installation:
1. **Copy to Claude skills directory:**
mkdir -p ~/.claude/skills/bmad/bmb/{{role-name}} cp ./custom-agents/{{role-name}}/SKILL.md ~/.claude/skills/bmad/bmb/{{role-name}}/
2. **Restart Claude Code**
New skills load on restart
3. **Test the agent**
Create a workflow command for this agent with /create-workflow
## Next Steps:
- Create workflow commands: /create-workflow
- Create templates: /create-template
- Update BMad Master to route to this agent (if needed)
Recommend Next Steps#
â Agent skill created!
Next: Create workflow commands
Run /create-workflow to create the commands this agent executes.
Recommended workflows for { { agent_role } } :
{ { suggested-workflows } }
Helper References#
- Load config:
helpers.md#Combined-Config-Load - Save document:
helpers.md#Save-Output-Document
Tips for Effective Custom Agents#
Keep it functional:
- Focus on what the agent DOES
- Avoid persona/character details
- Clear responsibilities
Follow BMAD patterns:
- Reference helpers.md
- Use TodoWrite for workflows
- Token-optimized (no redundancy)
- Integration points defined
Domain-specific but not siloed:
- Agents should work with existing BMAD workflows
- Hand off to other agents when appropriate
- Use standard BMAD status tracking
Token-conscious:
- Use helpers.md references instead of embedding instructions
- Keep skill files focused and minimal
- Leverage existing patterns
Notes for LLMs#
- Use TodoWrite to track 8 agent creation steps
- Follow BMAD skill template strictly
- Ensure integration points are clear
- Generate functional, non-persona-based skills
- Ask clarifying questions for domain details
- Test generated skill structure
- Provide clear installation instructions
- Suggest logical next steps (creating workflows/templates)
Remember: Custom agents extend BMAD's capabilities while maintaining its token-optimized, pattern-based architecture. They should feel native to BMAD, not like external plugins.