BMad: Intent-to-Delivery Control-Plane Protocol
BMad is a software-delivery method built on one idea: human intent should be
progressively clarified, recorded, reviewed, and handed to agents as durable context
rather than improvised in chat. This skill turns that method into a protocol any
agent harness can follow — no official BMad installer required.
The loop: classify the request → compress intent into a contract → route
to the smallest safe path → implement one bounded unit → review as triage →
route failure to the layer where ambiguity entered → gate autonomy on
observable acceptance → learn from completed work.
When to use this skill
Load when a change request, feature, bug report, delegated build, or multi-agent epic
needs:
- intent capture before implementation — a contract, not a vibe;
- a decision about how much ceremony the work deserves;
- durable artifacts so work is resumable across sessions or agents;
- review that triages findings instead of enumerating noise;
- autonomy that stops safely when the boundary is unsafe.
Work classification (smallest safe path)
| Class |
Shape |
Process |
| Direct |
clear goal, local change, established patterns, small blast radius |
implement immediately after minimal clarification |
| Bounded |
coherent change needing a short contract and plan |
intent contract → plan → implement → review |
| Initiative |
cross-component, multi-story, high-risk, or strategically uncertain |
analysis → planning → solutioning → implementation → learning |
Load references/classification.md for the decision
table, the one-question rule, and stop conditions.
The intent contract (five fields)
For bounded or initiative work, establish a contract before implementation:
- Why — the outcome and why it matters.
- Capabilities — what the system must be able to do.
- Constraints — technical, operational, legal, security, privacy, time, cost, organizational boundaries.
- Non-goals — what is explicitly out of scope.
- Success signal — how we will know the result works and is acceptable.
If a field is materially ambiguous, ask one high-leverage question, propose a
recommended answer, and wait for the decision. For trivial changes the contract can be
five bullets in conversation; for larger work it becomes a versioned spec file.
Load references/spec.md for SPEC authoring and the status
vocabulary. Templates: templates/SPEC.md and
templates/INTENT.md.
The canonical loop
- Inspect the repository and available context before asking anything.
- Classify the work; state the proposed route.
- Establish or resume the intent contract; ask at most one material question.
- Present a plan for non-trivial work; wait at the approval checkpoint.
- Implement the smallest coherent change; run focused tests first, then broader checks.
- Review for correctness, scope, security, regressions, maintainability.
- Repair findings that belong to this change; defer unrelated findings explicitly.
- Report intent, behavior, files, risk, verification, findings disposition, and an accept / rework / investigate choice.
Spec status vocabulary
Machine-readable status for resumable work:
| Status |
Meaning |
draft |
Spec exists but is not ready |
ready-for-dev |
Passed readiness; ready to implement |
in-progress |
Implementation underway |
in-review |
Review or triage underway |
done |
Workflow completed successfully |
blocked |
Cannot safely continue unattended |
blocked is a routing signal, not failure: a higher-level orchestrator, another
workflow, or a human takes over. Validate a spec deterministically with
scripts/check-spec.py.
Failure routing
When something is wrong, diagnose the layer where the failure entered:
| Failure |
Route |
| Wrong outcome or wrong problem |
intent / analysis |
| Missing or contradictory requirement |
contract / planning |
| Conflicting technical approach |
architecture |
| Incorrect local code |
implementation |
| Insufficient test or evaluation |
verification |
| Unrelated pre-existing issue |
defer explicitly |
| Unsafe ambiguity |
block and ask |
Do not keep patching code when the specification is the real problem.
Autonomy gate
Autonomous execution is allowed only when all of these hold: intent contract coherent,
acceptance observable, boundary explicit, repository safe to modify, tests or
evaluations runnable, durable status writable, escalation defined. During autonomous
work: one coherent change at a time; never expand scope on unrelated improvements;
never merge, deploy, or change external systems without authorization; stop on intent
gaps, missing capability, destructive ambiguity, failed verification, or
non-convergent repair.
Reference files
| Reference |
Load when |
| references/protocol.md |
You need the full paste-ready operating protocol for an agent |
| references/classification.md |
Classifying a request or choosing ceremony depth |
| references/spec.md |
Writing or resuming a SPEC / intent contract |
| references/lifecycle.md |
Running an initiative through all four phases |
| references/project-context.md |
Setting up or auditing repository rules (AGENTS.md) |
| references/review-and-failure-routing.md |
Running a review or diagnosing a failure |
| references/autonomy.md |
Configuring or running autonomous (Build Auto) work |
| references/party-mode.md |
Deliberation, trade-offs, design debates, post-mortems |
| references/adoption.md |
Adopting the protocol incrementally or mapping to a dark factory |
Templates
| Template |
Purpose |
| templates/SPEC.md |
Versioned machine contract for bounded/initiative work |
| templates/INTENT.md |
Lightweight five-field contract for bounded work |
| templates/STORY.md |
One bounded, dispatchable work unit |
| templates/REVIEW.md |
Final human checkpoint: intent → behavior → risk → verification |
Scripts
| Script |
When to run |
| scripts/check-spec.py |
After writing or editing a spec: validate five fields + status vocabulary (stdlib only, --json output) |
Routing to adjacent skills
- Upstream (before BMad):
product-discovery validates whether a problem is real;
product-shaping sets an appetite and produces a pitch; product-strategy and
product-roadmapping-and-portfolio frame strategic context.
- Downstream (during BMad):
spec-driven-development for formal spec/gate
pipelines; implementation-planning for a dependency-aware delivery plan;
adr-authoring for architecture decisions; software-architecture-analysis for
reverse-engineering an existing codebase.
- Execution and gates:
neckbeard for the issue-to-PR delivery flow;
verification-methodology for acceptance evidence; qa-methodology for test
strategy; agent-evals-and-observability for independent evaluators; agent-council
for Party-Mode-style multi-agent deliberation; release-engineering for deployment
gates; kanban-guru for backlog and dispatch policy.
When not to use
- The problem itself is unvalidated →
product-discovery. BMad compresses intent;
it does not establish whether the problem is real.
- No decision yet on how much the work is worth →
product-shaping first (appetite,
pitch, bet). BMad starts from a placed intent.
- You need a formal spec format plus phase gates as the factory pipeline →
spec-driven-development owns SPEC format and gate mechanics; BMad provides the
control-plane protocol around them.
- You are executing an issue-to-PR delivery flow with its own gates →
neckbeard.
BMad complements it; do not run two competing delivery lifecycles.
- You need independent review → role-play is not independence. Use
agent-council,
separate evaluators, or agent-evals-and-observability; never claim persona
separation as independent review.
- Operating the official BMad installer/tooling → this skill emulates the method;
it does not install or operate bmad-method npm packages.
Version drift and attribution
BMad is actively evolving (official repository: bmadcode/bmad-method; BMAD™ and
BMAD-METHOD™ are trademarks of BMad Code, LLC). Older articles differ on name
expansion, agents, file names, and commands. When installing the official tooling,
treat the official docs and installed source as authoritative. This skill is an
original distillation of the method as a harness-agnostic protocol; it does not
reproduce official installer content.
1---2name: bmad3description: Use this skill to run BMad (Breakthrough Method of Agile AI-Driven Development) as a harness-agnostic control-plane protocol that turns human intent into bounded, inspectable, resumable agent work. Compress intent into a five-field contract (Why, Capabilities, Constraints, Non-goals, Success signal); classify work as direct/bounded/initiative and route to the smallest safe path; carry decisions in durable artifacts; review as triage; route failure to the layer where ambiguity entered; and gate autonomy on observable acceptance with machine-readable status (draft/ready-for-dev/in-progress/in-review/done/blocked). Use when a change request, feature, delegated build, or multi-agent epic needs intent capture, bounded implementation, review, and resumability in any agent harness. Do not use for validating whether a problem is real (product-discovery), shaping bets before planning (product-shaping), formal spec/gate pipelines (spec-driven-development), or the issue-to-PR delivery flow (neckbeard).4license: MIT5---67# BMad: Intent-to-Delivery Control-Plane Protocol89BMad is a software-delivery method built on one idea: human intent should be10progressively clarified, recorded, reviewed, and handed to agents as durable context11rather than improvised in chat. This skill turns that method into a protocol any12agent harness can follow — no official BMad installer required.1314The loop: **classify** the request → **compress** intent into a contract → **route**15to the smallest safe path → **implement** one bounded unit → **review** as triage →16**route failure** to the layer where ambiguity entered → **gate autonomy** on17observable acceptance → **learn** from completed work.1819## When to use this skill2021Load when a change request, feature, bug report, delegated build, or multi-agent epic22needs:2324- intent capture before implementation — a contract, not a vibe;25- a decision about how much ceremony the work deserves;26- durable artifacts so work is resumable across sessions or agents;27- review that triages findings instead of enumerating noise;28- autonomy that stops safely when the boundary is unsafe.2930## Work classification (smallest safe path)3132| Class | Shape | Process |33|---|---|---|34| Direct | clear goal, local change, established patterns, small blast radius | implement immediately after minimal clarification |35| Bounded | coherent change needing a short contract and plan | intent contract → plan → implement → review |36| Initiative | cross-component, multi-story, high-risk, or strategically uncertain | analysis → planning → solutioning → implementation → learning |3738Load [references/classification.md](references/classification.md) for the decision39table, the one-question rule, and stop conditions.4041## The intent contract (five fields)4243For bounded or initiative work, establish a contract before implementation:44451. **Why** — the outcome and why it matters.462. **Capabilities** — what the system must be able to do.473. **Constraints** — technical, operational, legal, security, privacy, time, cost, organizational boundaries.484. **Non-goals** — what is explicitly out of scope.495. **Success signal** — how we will know the result works and is acceptable.5051If a field is materially ambiguous, ask **one** high-leverage question, propose a52recommended answer, and wait for the decision. For trivial changes the contract can be53five bullets in conversation; for larger work it becomes a versioned spec file.5455Load [references/spec.md](references/spec.md) for SPEC authoring and the status56vocabulary. Templates: [templates/SPEC.md](templates/SPEC.md) and57[templates/INTENT.md](templates/INTENT.md).5859## The canonical loop60611. Inspect the repository and available context before asking anything.622. Classify the work; state the proposed route.633. Establish or resume the intent contract; ask at most one material question.644. Present a plan for non-trivial work; wait at the approval checkpoint.655. Implement the smallest coherent change; run focused tests first, then broader checks.666. Review for correctness, scope, security, regressions, maintainability.677. Repair findings that belong to this change; defer unrelated findings explicitly.688. Report intent, behavior, files, risk, verification, findings disposition, and an accept / rework / investigate choice.6970## Spec status vocabulary7172Machine-readable status for resumable work:7374| Status | Meaning |75|---|---|76| `draft` | Spec exists but is not ready |77| `ready-for-dev` | Passed readiness; ready to implement |78| `in-progress` | Implementation underway |79| `in-review` | Review or triage underway |80| `done` | Workflow completed successfully |81| `blocked` | Cannot safely continue unattended |8283`blocked` is a routing signal, not failure: a higher-level orchestrator, another84workflow, or a human takes over. Validate a spec deterministically with85[scripts/check-spec.py](scripts/check-spec.py).8687## Failure routing8889When something is wrong, diagnose the layer where the failure entered:9091| Failure | Route |92|---|---|93| Wrong outcome or wrong problem | intent / analysis |94| Missing or contradictory requirement | contract / planning |95| Conflicting technical approach | architecture |96| Incorrect local code | implementation |97| Insufficient test or evaluation | verification |98| Unrelated pre-existing issue | defer explicitly |99| Unsafe ambiguity | block and ask |100101Do not keep patching code when the specification is the real problem.102103## Autonomy gate104105Autonomous execution is allowed only when all of these hold: intent contract coherent,106acceptance observable, boundary explicit, repository safe to modify, tests or107evaluations runnable, durable status writable, escalation defined. During autonomous108work: one coherent change at a time; never expand scope on unrelated improvements;109never merge, deploy, or change external systems without authorization; stop on intent110gaps, missing capability, destructive ambiguity, failed verification, or111non-convergent repair.112113## Reference files114115| Reference | Load when |116|---|---|117| [references/protocol.md](references/protocol.md) | You need the full paste-ready operating protocol for an agent |118| [references/classification.md](references/classification.md) | Classifying a request or choosing ceremony depth |119| [references/spec.md](references/spec.md) | Writing or resuming a SPEC / intent contract |120| [references/lifecycle.md](references/lifecycle.md) | Running an initiative through all four phases |121| [references/project-context.md](references/project-context.md) | Setting up or auditing repository rules (AGENTS.md) |122| [references/review-and-failure-routing.md](references/review-and-failure-routing.md) | Running a review or diagnosing a failure |123| [references/autonomy.md](references/autonomy.md) | Configuring or running autonomous (Build Auto) work |124| [references/party-mode.md](references/party-mode.md) | Deliberation, trade-offs, design debates, post-mortems |125| [references/adoption.md](references/adoption.md) | Adopting the protocol incrementally or mapping to a dark factory |126127## Templates128129| Template | Purpose |130|---|---|131| [templates/SPEC.md](templates/SPEC.md) | Versioned machine contract for bounded/initiative work |132| [templates/INTENT.md](templates/INTENT.md) | Lightweight five-field contract for bounded work |133| [templates/STORY.md](templates/STORY.md) | One bounded, dispatchable work unit |134| [templates/REVIEW.md](templates/REVIEW.md) | Final human checkpoint: intent → behavior → risk → verification |135136## Scripts137138| Script | When to run |139|---|---|140| [scripts/check-spec.py](scripts/check-spec.py) | After writing or editing a spec: validate five fields + status vocabulary (stdlib only, `--json` output) |141142## Routing to adjacent skills143144- **Upstream (before BMad):** `product-discovery` validates whether a problem is real;145 `product-shaping` sets an appetite and produces a pitch; `product-strategy` and146 `product-roadmapping-and-portfolio` frame strategic context.147- **Downstream (during BMad):** `spec-driven-development` for formal spec/gate148 pipelines; `implementation-planning` for a dependency-aware delivery plan;149 `adr-authoring` for architecture decisions; `software-architecture-analysis` for150 reverse-engineering an existing codebase.151- **Execution and gates:** `neckbeard` for the issue-to-PR delivery flow;152 `verification-methodology` for acceptance evidence; `qa-methodology` for test153 strategy; `agent-evals-and-observability` for independent evaluators; `agent-council`154 for Party-Mode-style multi-agent deliberation; `release-engineering` for deployment155 gates; `kanban-guru` for backlog and dispatch policy.156157## When not to use158159- **The problem itself is unvalidated** → `product-discovery`. BMad compresses intent;160 it does not establish whether the problem is real.161- **No decision yet on how much the work is worth** → `product-shaping` first (appetite,162 pitch, bet). BMad starts from a placed intent.163- **You need a formal spec format plus phase gates as the factory pipeline** →164 `spec-driven-development` owns SPEC format and gate mechanics; BMad provides the165 control-plane protocol around them.166- **You are executing an issue-to-PR delivery flow with its own gates** → `neckbeard`.167 BMad complements it; do not run two competing delivery lifecycles.168- **You need independent review** → role-play is not independence. Use `agent-council`,169 separate evaluators, or `agent-evals-and-observability`; never claim persona170 separation as independent review.171- **Operating the official BMad installer/tooling** → this skill emulates the method;172 it does not install or operate bmad-method npm packages.173174## Version drift and attribution175176BMad is actively evolving (official repository: bmadcode/bmad-method; BMAD™ and177BMAD-METHOD™ are trademarks of BMad Code, LLC). Older articles differ on name178expansion, agents, file names, and commands. When installing the official tooling,179treat the official docs and installed source as authoritative. This skill is an180original distillation of the method as a harness-agnostic protocol; it does not181reproduce official installer content.