Problem
BMAD workflows have very different needs. Analyst, PM and Architect benefit from a
strong reasoning model with high effort, while story implementation, small fixes or
sprint planning run fine (and much cheaper/faster) on a smaller model with low effort.
Claude Code already supports this natively: a skill's SKILL.md frontmatter accepts
model (e.g. opus, sonnet, haiku, or a full model ID) and effort
(low | medium | high | xhigh | max). With context: fork, model also sets
the subagent's model.
Today there is no way to set these through BMAD:
- The TOML overrides in
_bmad/custom/ cover persona, menu, facts and workflow
behavior, but not model or effort.
- Editing the generated
SKILL.md files in .claude/skills/ works, but every
npx bmad-method install / update regenerates them and the changes are lost.
- Wrapper skills are a workaround, but they duplicate the command surface.
Proposal
Add optional model and effort keys to the customization surface, e.g.:
# _bmad/custom/bmad-agent-architect.toml
[agent.runtime]
model = "opus"
effort = "high"
# _bmad/custom/config.toml (team defaults per phase)
[runtime.defaults]
planning = { model = "opus", effort = "high" }
build = { model = "sonnet", effort = "medium" }
review = { model = "sonnet", effort = "high" }
When installing for Claude Code, the installer writes these into the frontmatter of
the generated SKILL.md. Tools without such frontmatter support ignore the keys.
Precedence could follow the existing resolver: shipped → team → user.
Why this helps
- Lower cost and latency for routine Phase 4 work
- Stronger results where it matters (architecture, PRD, adversarial review)
- Settings survive updates and can be committed for the whole team
Related
Problem
BMAD workflows have very different needs. Analyst, PM and Architect benefit from a
strong reasoning model with high effort, while story implementation, small fixes or
sprint planning run fine (and much cheaper/faster) on a smaller model with low effort.
Claude Code already supports this natively: a skill's
SKILL.mdfrontmatter acceptsmodel(e.g.opus,sonnet,haiku, or a full model ID) andeffort(
low|medium|high|xhigh|max). Withcontext: fork,modelalso setsthe subagent's model.
Today there is no way to set these through BMAD:
_bmad/custom/cover persona, menu, facts and workflowbehavior, but not model or effort.
SKILL.mdfiles in.claude/skills/works, but everynpx bmad-method install/ update regenerates them and the changes are lost.Proposal
Add optional
modelandeffortkeys to the customization surface, e.g.:When installing for Claude Code, the installer writes these into the frontmatter of
the generated
SKILL.md. Tools without such frontmatter support ignore the keys.Precedence could follow the existing resolver: shipped → team → user.
Why this helps
Related