MCPInstall

bmad-sprint-planning

Check that planning is complete enough to implement, then generate the sprint status file from the epics. Can also summarize sprint progress and validate or repair the tracking file. Use when the user says "run sprint planning", "generate sprint plan", "check implementation readiness", "show sprint status", "validate sprint status", or "fix sprint status"

Installs
3.2K
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/bmad-code-org/bmad-method --skill bmad-sprint-planning
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads bmad-sprint-planning automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Overview

You are a senior developer about to commit to this plan. Two moves, in order: first scrutinize the planning the way a skeptic reads a handoff — gaps found now are cheap, gaps found mid-build are not. Then hand the mechanical work to the script: parsing epics, deriving keys, merging statuses, and writing sprint-status.yaml are deterministic jobs, not judgment calls. Your judgment goes where the script can't: deciding which files are epics, weighing readiness, and reconciling anything the script flags.

On Activation

  1. Resolve customization: uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key workflow.

    • Script not found: BMad is not set up here. Offer to run the bmad skill's setup, installing bmad first if you do not have it (npx skills add bmad-code-org/BMAD-METHOD --skill bmad), then run the command again.
    • Any other failure: read {skill-root}/customize.toml directly and use defaults.
  2. Execute each entry in {workflow.activation_steps_prepend} in order.

  3. Treat every entry in {workflow.persistent_facts} as foundational context for the rest of the run. Entries prefixed file: are paths or globs under {project-root} — load the referenced contents as facts. All other entries are facts verbatim.

  4. Resolve config: uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core.project_name --key modules.bmm.planning_artifacts --key modules.bmm.implementation_artifacts --key modules.bmm.project_knowledge. {date} is the current system datetime.

  5. Greet the user, detect intent, and load only what that intent needs:

    • readiness — check implementation readiness only: load references/readiness-gate.md, run the gate, report, stop
    • sprint-planning — the full flow (also the refresh path for an existing sprint-status.yaml): load references/readiness-gate.md, then on PASS references/generate-tracking.md
    • status — "show sprint status", "where are we": skip the gate, load references/status-view.md
    • validate — check the tracking file's format: load references/validate.md
    • fix — repair or rebuild a broken sprint-status.yaml: load references/fix-sprint-status.md

    If interactive and unclear, ask; for headless behavior see ## Headless Mode.

Execute each entry in {workflow.activation_steps_append} in order.

Activation is complete. If activation_steps_prepend or activation_steps_append were non-empty, confirm every entry was executed in order before proceeding.

If the Script Fails

This rule covers every intent: when sprint_plan.py errors or the file is in a state it cannot handle, do not stop at the error and do not guess silently. Read the files yourself, deliver the same outcome by best judgment, tell the user the deterministic path failed and why, and offer the fix flow (references/fix-sprint-status.md) to restore a file the script can work with.

On Completion

Whatever the intent, close out per the loaded reference, then run {workflow.on_complete} if non-empty; treat a string scalar as one instruction and an array as a sequence.

Headless Mode

When invoked headless, do not ask. Run the gate and, unless intent was readiness-only, generate tracking. Ambiguity the interactive flow would resolve by asking (duplicate epic versions, unreconciled orphans, an unconfirmed fix) halts with a blocked status instead of guessing. End with a JSON response:

{
  "status": "complete",
  "intent": "sprint-planning",
  "gate": "PASS",
  "status_file": "{implementation_artifacts}/sprint-status.yaml",
  "findings": [],
  "warnings": []
}

gate is PASS, CONCERNS, or FAIL; on FAIL include findings and the saved findings path if written, and omit status_file. intent is "readiness", "sprint-planning", "status", "validate", or "fix" — for status and validate intents, omit gate and pass the script's JSON through under a report key (not status, which names the run state).

References

  • scripts/sprint_plan.py — the deterministic parser/generator/merger; subcommands generate, status, validate. Its JSON output is the contract this skill reads; argparse errors are JSON too
  • references/readiness-gate.md — the PASS/CONCERNS/FAIL gate: artifact inventory and the implementability question
  • references/generate-tracking.md — epic discovery, the generate command, and acting on its JSON report
  • references/status-view.md — the status view: counts, risks, open action items, next recommended action
  • references/fix-sprint-status.md — rebuild a broken tracking file: evidence-gathering subagents, user confirmation, pristine regeneration
  • references/validate.md — format validation of an existing sprint-status.yaml
  • sprint-status-template.yaml — the documented file format and status vocabulary; the script embeds the same block and the test suite pins the two copies together

FAQ

What does the bmad-sprint-planning skill do?

Check that planning is complete enough to implement, then generate the sprint status file from the epics. Can also summarize sprint progress and validate or repair the tracking file. Use when the user says "run sprint planning", "generate sprint plan", "check implementation readiness", "show sprint status", "validate sprint status", or "fix sprint status"

How do I install bmad-sprint-planning?

Run npx skills add https://github.com/bmad-code-org/bmad-method --skill bmad-sprint-planning in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/bmad-sprint-planning/ (personal) or .claude/skills/bmad-sprint-planning/ (project).

Which AI agents can use bmad-sprint-planning?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is bmad-sprint-planning safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains bmad-sprint-planning?

It is published by bmad-code-org in bmad-code-org/bmad-method. It has 3,156 recorded installs.

More from bmad-code-org/bmad-method

View all →

bmad

bmad-code-org/bmad-method

Answers BMad questions and recommends the next skill from what is installed. Use when the user asks bmad for help, what to do next or where to start; to set up, update, repair, doctor, migrate or check the status of the installation, or add modules; or to see or change the active initiative.

13.6K installs

bmad-build

bmad-code-org/bmad-method

Turns implementation work into working code, reviewed and verified. Use when the user delegates a feature, story, bug fix, or meaningful change; a bare story or issue link counts. Skip obvious, low-risk mechanical maintenance such as small ignore-file, typo-only, formatting-only, or configuration-hygiene edits. Explicit BMAD requests always qualify. Do not volunteer for user-directed interactive edits or version-control operations that only record existing work.

bmad-code-review

bmad-code-org/bmad-method

Review code changes with several independent reviewers in parallel, then triage and present the findings. Use when the user says "run code review" or "review this code"

bmad-brainstorming

bmad-code-org/bmad-method

Facilitate a brainstorming session using diverse creative techniques. Use when the user says 'help me brainstorm' or 'help me ideate'

bmad-agent-architect

bmad-code-org/bmad-method

System architect and technical design leader. Use when the user asks to talk to Winston or requests the architect

12.3K installs

bmad-architecture

bmad-code-org/bmad-method

Work out and record the architecture decisions that keep separately built parts of a system consistent, in a short architecture document. Creates, updates, or validates one; works from a ticket file, with an existing codebase or architecture document beside it. Use when the user says "create the architecture", "create technical architecture", "architecture spine", or "create a solution design"

Popular code quality & workflow skills

View category →

grill-me

mattpocock/skills

A relentless interview to sharpen a plan or design.

Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.

handoff

mattpocock/skills

Compact the current conversation into a handoff document for another agent to pick up.

domain-modeling

mattpocock/skills

Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.

codebase-design

mattpocock/skills

Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.

diagnosing-bugs

mattpocock/skills

Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.