mirror of
https://github.com/bmad-code-org/BMAD-METHOD.git
synced 2026-01-30 04:32:02 +00:00
* feat: add link auditor tools and fix broken docs links - Add audit-doc-links.js to scan docs for broken links with auto-resolution - Add fix-doc-links.js to apply suggested fixes (dry-run by default) - Remove stale "Back to Core Concepts" breadcrumb links - Update BMad acronym to "Breakthrough Method of Agile AI Driven Development" - Update README links to docs.bmad-method.org - Simplify upgrade callout in getting-started tutorial Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * docs: reorganize docs structure and archive v4 tutorial - Remove unused section index files (tutorials, how-to, explanation, reference) - Move getting-started-bmadv4.md to _archive - Update quick-start-bmgd.md to remove archived file reference - Update upgrade-to-v6.md - Update astro.config.mjs for new structure Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix: ignore underscore directories in link checker Update check-doc-links.js to skip _archive, _planning, and other underscore-prefixed directories when validating links. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * docs: add v4 users section to README Add links to v4 documentation archive and upgrade guide for users migrating from previous versions. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * feat: convert docs to site-relative links and add validation tools - Convert all relative links (./ ../) to site-relative paths (/path/) - Strip .md extensions and use trailing slashes for Astro/Starlight - Add fix-doc-links.js to convert relative links to site-relative - Add validate-doc-links.js to check links point to existing files - Remove old audit-doc-links.js and check-doc-links.js - Update build-docs.js to use new validation script - Add npm scripts: docs:fix-links, docs:validate-links - Update style guide with validation steps Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * docs: standardize acronym to BMad across documentation Replace incorrect "BMAD" with correct "BMad" in text and frontmatter while preserving "BMAD-METHOD" in GitHub URLs. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * docs: fix BMad acronym and remove draft README - Correct acronym to "Breakthrough Method of Agile AI Driven Development" - Remove unused README-draft.md Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * docs: standardize BMad acronym in README Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * docs: standardize FAQ format across all FAQ pages - Add TOC with jump links under "## Questions" - Use ### headers for questions (no Q: prefix) - Direct answers without **A:** prefix - Remove horizontal rules and "Related Documentation" sections - End each FAQ with issue/Discord CTA - Update style guide with new FAQ guidelines - Delete redundant faq/index.md (sidebar handles navigation) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix: use repo-relative links with .md for GitHub compatibility Convert all documentation links to repo-relative format (/docs/path/file.md) so they work when browsing on GitHub. The rehype plugin strips /docs/ prefix and converts .md to trailing slash at build time for Astro/Starlight. - Update rehype-markdown-links.js to strip /docs/ prefix from absolute paths - Update fix-doc-links.js to generate /docs/ prefixed paths with .md extension - Convert 217 links across 64 files to new format Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix: handle /docs/ prefix in link validator Update resolveLink to strip /docs/ prefix from repo-relative links before checking if files exist. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * docs: restore FAQ index page Re-add the FAQ index page that was accidentally deleted, with updated repo-relative link format. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> Co-authored-by: Alex Verkhovsky <alexey.verkhovsky@gmail.com>
209 lines
5.1 KiB
Markdown
209 lines
5.1 KiB
Markdown
---
|
|
title: "Agent Customization Guide"
|
|
---
|
|
|
|
|
|
Customize BMad agents without modifying core files. All customizations persist through updates.
|
|
|
|
## 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:
|
|
|
|
```bash
|
|
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:
|
|
|
|
```yaml
|
|
agent:
|
|
metadata:
|
|
name: 'Spongebob' # Default: "Amelia"
|
|
```
|
|
|
|
### Persona
|
|
|
|
Replace the agent's personality, role, and communication style:
|
|
|
|
```yaml
|
|
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:
|
|
|
|
```yaml
|
|
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:
|
|
|
|
```yaml
|
|
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:
|
|
|
|
```yaml
|
|
critical_actions:
|
|
- 'Always check git status before making changes'
|
|
- 'Use conventional commit messages'
|
|
```
|
|
|
|
### Custom Prompts
|
|
|
|
Define reusable prompts for `action="#id"` menu handlers:
|
|
|
|
```yaml
|
|
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**
|
|
|
|
```yaml
|
|
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**
|
|
|
|
```yaml
|
|
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**
|
|
|
|
```yaml
|
|
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
|
|
|
|
- **[Learn about Agents](/docs/explanation/core-concepts/what-are-agents.md)** - Understand Simple vs Expert agents
|
|
- **[Agent Creation Guide](/docs/tutorials/advanced/create-custom-agent.md)** - Build completely custom agents
|
|
- **[BMM Complete Documentation](/docs/explanation/bmm/index.md)** - Full BMad Method reference
|
|
|
|
[← Back to Customization](/docs/how-to/customization/index.md)
|