Files
BMAD-METHOD/docs/_basement/how-to/customization/customize-agents.md
Alex Verkhovsky 91f6c41be1 docs: radical reduction of documentation scope for v6 beta (#1406)
* docs: radical reduction of documentation scope for v6 beta

Archive and basement unreviewed content to ship a focused, minimal doc set.

Changes:
- Archive stale how-to workflow guides (will rewrite for v6)
- Archive outdated explanation and reference content
- Move unreviewed content to basement for later review
- Reorganize TEA docs into dedicated /tea/ section
- Add workflow-map visual reference page
- Simplify getting-started tutorial and sidebar navigation
- Add explanation pages: brainstorming, adversarial-review, party-mode,
  quick-flow, advanced-elicitation
- Fix base URL handling for subdirectory deployments (GitHub Pages forks)

The goal is a minimal, accurate doc set for beta rather than
comprehensive but potentially misleading content.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor: restructure BMM and agents documentation by consolidating and flattening index files.

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 14:00:26 -06:00

5.3 KiB

title
title
Agent Customization Guide

Use .customize.yaml files to customize BMad agents without modifying core files. All customizations persist through updates.

When to Use This

  • Change agent names or personas
  • Add project-specific memories or context
  • Add custom menu items and workflows
  • Define critical actions for consistent behavior

Quick Start

1. Locate Customization Files

After installation, find agent customization files in:

_bmad/_config/agents/
├── core-bmad-master.customize.yaml
├── bmm-dev.customize.yaml
├── bmm-pm.customize.yaml
└── ... (one file per installed agent)

2. Edit Any Agent

Open the .customize.yaml file for the agent you want to modify. All sections are optional - customize only what you need.

3. Rebuild the Agent

After editing, IT IS CRITICAL to rebuild the agent to apply changes:

npx bmad-method@alpha install # and then select option to compile all agents
npx bmad-method@alpha build <agent-name>

npx bmad-method@alpha build bmm-dev
npx bmad-method@alpha build core-bmad-master
npx bmad-method@alpha build bmm-pm

What You Can Customize

Agent Name

Change how the agent introduces itself:

agent:
  metadata:
    name: 'Spongebob' # Default: "Amelia"

Persona

Replace the agent's personality, role, and communication style:

persona:
  role: 'Senior Full-Stack Engineer'
  identity: 'Lives in a pineapple (under the sea)'
  communication_style: 'Spongebob'
  principles:
    - 'Never Nester, Spongebob Devs hate nesting more than 2 levels deep'
    - 'Favor composition over inheritance'

Note: The persona section replaces the entire default persona (not merged).

Memories

Add persistent context the agent will always remember:

memories:
  - 'Works at Krusty Krab'
  - 'Favorite Celebrity: David Hasslehoff'
  - 'Learned in Epic 1 that its not cool to just pretend that tests have passed'

Custom Menu Items

Add your own workflows to the agent's menu:

menu:
  - trigger: my-workflow
    workflow: '{project-root}/my-custom/workflows/my-workflow.yaml'
    description: My custom workflow
  - trigger: deploy
    action: '#deploy-prompt'
    description: Deploy to production

Don't include: * prefix or help/exit items - these are auto-injected.

Critical Actions

Add instructions that execute before the agent starts:

critical_actions:
  - 'Always check git status before making changes'
  - 'Use conventional commit messages'

Custom Prompts

Define reusable prompts for action="#id" menu handlers:

prompts:
  - id: deploy-prompt
    content: |
      Deploy the current branch to production:
      1. Run all tests
      2. Build the project
      3. Execute deployment script

Real-World Examples

Example 1: Customize Developer Agent for TDD

agent:
  metadata:
    name: 'TDD Developer'

memories:
  - 'Always write tests before implementation'
  - 'Project uses Jest and React Testing Library'

critical_actions:
  - 'Review test coverage before committing'

Example 2: Add Custom Deployment Workflow

menu:
  - trigger: deploy-staging
    workflow: '{project-root}/_bmad/deploy-staging.yaml'
    description: Deploy to staging environment
  - trigger: deploy-prod
    workflow: '{project-root}/_bmad/deploy-prod.yaml'
    description: Deploy to production (with approval)

Example 3: Multilingual Product Manager

persona:
  role: 'Bilingual Product Manager'
  identity: 'Expert in US and LATAM markets'
  communication_style: 'Clear, strategic, with cultural awareness'
  principles:
    - 'Consider localization from day one'
    - 'Balance business goals with user needs'

memories:
  - 'User speaks English and Spanish'
  - 'Target markets: US and Latin America'

Tips

  • Start Small: Customize one section at a time and rebuild to test
  • Backup: Copy customization files before major changes
  • Update-Safe: Your customizations in _config/ survive all BMad updates
  • Per-Project: Customization files are per-project, not global
  • Version Control: Consider committing _config/ to share customizations with your team

Module vs. Global Config

Module-Level (Recommended):

  • Customize agents per-project in _bmad/_config/agents/
  • Different projects can have different agent behaviors

Global Config (Coming Soon):

  • Set defaults that apply across all projects
  • Override with project-specific customizations

Troubleshooting

Changes not appearing?

  • Make sure you ran npx bmad-method build <agent-name> after editing
  • Check YAML syntax is valid (indentation matters!)
  • Verify the agent name matches the file name pattern

Agent not loading?

  • Check for YAML syntax errors
  • Ensure required fields aren't left empty if you uncommented them
  • Try reverting to the template and rebuilding

Need to reset?

  • Delete the .customize.yaml file
  • Run npx bmad-method build <agent-name> to regenerate defaults

Next Steps