Bmad Sprint Planning logo

Bmad Sprint Planning

Community
aj-geddes
bmad-sprint-planning

Orchestration handoff bridge: emits and maintains sprint-status.yaml as the project's sequencing system-of-record. Orders stories by epic then dependency, assigns parallel-set (wave) membership, and drives the status lifecycle (backlog → ready-for-dev → in-progress → review → done) as a view — never as a metric. Use when the user says "sequence the stories", "build the sprint status", "plan the waves", "create sprint-status.yaml", "assign parallel sets", "order stories by dependency", "what can run in parallel", "set up story sequencing", "initialize sprint tracking", "ready the backlog", or "prepare for dev handoff". Also triggers on "sprint planning" when the project already has epics defined. SCOPE: SEQUENCING AND ORCHESTRATION ONLY. No velocity, no burndown, no committed points, no coverage metrics. Capacity is expressed as wave width (concurrent story count), not points. The final artifact is a ready-for-dev handoff manifest; implementation is delegated to external dev tools.

Overview

Publisheraj-geddes
Repositoryclaude-code-bmad-skills
Skill namebmad-sprint-planning
Stars
492
Forks
77
Bundled files
3
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 3 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by aj-geddes on GitHub. Read the source before you install it.

Installation

Install the Bmad Sprint Planning AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/aj-geddes/claude-code-bmad-skills/tree/main/bmad-planning-orchestrator/skills/bmad-sprint-planning
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/aj-geddes/claude-code-bmad-skills.git /tmp/claude-code-bmad-skills
mkdir -p .claude/skills
cp -r /tmp/claude-code-bmad-skills/bmad-planning-orchestrator/skills/bmad-sprint-planning .claude/skills/bmad-sprint-planning
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Bmad Sprint Planning in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Bmad Sprint Planning on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Bmad Sprint Planning is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

BMAD Sprint Planning

Role: Sequencing & Handoff Bridge — Phase 4 orchestration
System-of-record: bmad-output/sprint-status.yaml


What This Skill Does

  1. Reads planning artifacts (PRD, architecture, epics, stories) from bmad-output/.
  2. Derives a dependency graph across all stories.
  3. Assigns each story a parallel_set (wave) — stories in the same wave have no mutual dependencies and can run concurrently.
  4. Emits bmad-output/sprint-status.yaml using the canonical template.
  5. Marks the first wave of stories ready-for-dev; all others remain backlog.
  6. Optionally re-sequences on demand as stories are completed or new ones are added.

This skill does not write application code, run tests, lint, build, or review diffs.


Three-Intent Operation

IntentTrigger phraseAction
Create"initialize sprint status", "first time"Scaffold fresh sprint-status.yaml from template
Update"re-sequence", "story X is done", "add story", "update wave"Mutate existing sprint-status.yaml in-place
Validate"check sequencing", "are dependencies correct", "show wave plan"Read and report without writing

Workflow — Create

  1. Load planning artifacts

    Glob: bmad-output/**/*.md, bmad-output/**/*.yaml

    Priority order: epics.md → prd.md → architecture.md → individual story files.

  2. Extract epics and stories

    • Parse all story IDs: format {epic}.{story}.{slug}.story.md (e.g., 2.1.stripe-integration.story.md)
    • Derive epic ordering from the epic list in epics.md or prd.md
  3. Build dependency graph

    • Read dependencies[] from each story's frontmatter or Dev Notes section
    • Topological sort: stories with no unmet dependencies → wave 1; stories unblocked after wave 1 → wave 2; etc.
  4. Initialize sprint-status.yaml

    bash
    bash ${CLAUDE_PLUGIN_ROOT}/skills/bmad-sprint-planning/scripts/init-sprint-status.sh

    Then populate with sequenced data (see template).

  5. Sequence stories

    bash
    bash ${CLAUDE_PLUGIN_ROOT}/skills/bmad-sprint-planning/scripts/sequence-stories.sh
  6. Set initial statuses

    • Wave 1 stories: status: ready-for-dev
    • All other stories: status: backlog
    • Epics: status: in-progress if any child story is ready-for-dev; else backlog
  7. Emit handoff summary — list wave 1 stories by owned_scope for conflict-free parallel dispatch


Workflow — Update

When a story moves to done:

  1. Remove it from any dependencies[] lists where it appears
  2. Identify newly unblocked stories (dependencies now fully satisfied)
  3. Promote them to ready-for-dev
  4. Re-evaluate parent epic status
  5. Write updated sprint-status.yaml

Parallel Set Assignment

Wave width (how many stories can run at once) is not a fixed number — it is the size of the dependency-free frontier at each topological level. There is no points budget or velocity ceiling.

Wave 1: all stories with no dependencies
Wave 2: all stories whose only dependencies are in wave 1
Wave N: all stories whose dependencies are fully in waves 1…(N-1)

Stories within a wave MUST have non-overlapping owned_scope to be safe for parallel dispatch. If two stories in the same wave share a file, split them into separate waves or document the conflict.


Status Lifecycle (view, not metric)

backlog → ready-for-dev → in-progress → review → done
  • This is a view of sequencing state, not a tracking instrument.
  • Transitions are triggered by external signals (dev tool reports, user command).
  • This skill never computes velocity, burndown, or completion rates from these statuses.

Scale-Adaptive Track Guidance

TrackStory countSprint-status behavior
Quick Flow1–15Single wave pass; minimal epic structure
BMAD Method10–50+Full wave assignment; epic grouping
Enterprise30+Multi-phase wave planning; dependency map documented in REFERENCE

Track is confirmed with the user before generating the status file.


Subagent Strategy

Pattern: Parallel dependency analysis
Use when: 15+ stories across 3+ epics

AgentTaskOutput
Agent 1Parse all story files, extract dependency declarationsbmad-output/context/dependency-raw.yaml
Agent 2Parse epic ordering from PRD/epics.mdbmad-output/context/epic-order.yaml
Agent 3Identify owned_scope conflicts within candidate wavesbmad-output/context/scope-conflicts.md

Main context: merge outputs, run topological sort, write sprint-status.yaml.

Example subagent prompt

Task: Extract dependencies from all story files
Context: Read all *.story.md files under bmad-output/stories/
Objective: For each story, output its id and its dependencies[] list
Output: Write YAML list to bmad-output/context/dependency-raw.yaml

Format:
- id: "2.1.stripe-integration"
  dependencies: ["1.3.user-auth"]
- id: "2.2.payment-webhook"
  dependencies: ["2.1.stripe-integration"]

Scripts

init-sprint-status.sh

Scaffolds bmad-output/sprint-status.yaml from the template if it does not exist.

bash
bash ${CLAUDE_PLUGIN_ROOT}/skills/bmad-sprint-planning/scripts/init-sprint-status.sh \
  [project-name] [output-dir]

sequence-stories.sh

Orders stories: epics first (by epic number), then stories within each epic by dependency (topological), then assigns parallel_set integers.

bash
bash ${CLAUDE_PLUGIN_ROOT}/skills/bmad-sprint-planning/scripts/sequence-stories.sh \
  [sprint-status-file]

Template

${CLAUDE_PLUGIN_ROOT}/skills/bmad-sprint-planning/templates/sprint-status.template.yaml

Fields: epics[], stories[] (with id, title, status, dependencies, parallel_set, owned_scope). The template contains no velocity, burndown, or points fields.


Key Guidelines

  1. Load context first — always read existing sprint-status.yaml before writing
  2. Use TodoWrite to track multi-step sequencing workflows
  3. Respect owned_scope — flag conflicts before assigning same-wave membership
  4. No metrics — if a field resembles velocity, points, or burndown, remove it
  5. Handoff clearly — conclude every Create/Update with the list of ready-for-dev stories and their owned_scope
  6. Decision log — append sequencing decisions to bmad-output/decision-log.md


Part of the BMAD Planning & Orchestrator plugin — a Claude Code harness for the BMAD Method by the BMAD Code Organization (https://github.com/bmad-code-org/BMAD-METHOD). Implements the spirit of bmad-sprint-planning. All methodology credit belongs to the BMAD Code Organization.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Bmad Sprint Planning AI skill do?

Orchestration handoff bridge: emits and maintains sprint-status.yaml as the project's sequencing system-of-record. Orders stories by epic then dependency, assigns parallel-set (wave) membership, and drives the status lifecycle (backlog → ready-for-dev → in-progress → review → done) as a view — never as a metric. Use when the user says "sequence the stories", "build the sprint status", "plan the waves", "create sprint-status.yaml", "assign parallel sets", "order stories by dependency", "what can run in parallel", "set up story sequencing", "initialize sprint tracking", "ready the backlog", o...

Why use Bmad Sprint Planning on TypingMind?

Because you install it once and use it with any model. Bmad Sprint Planning is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Bmad Sprint Planning in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/aj-geddes/claude-code-bmad-skills/tree/main/bmad-planning-orchestrator/skills/bmad-sprint-planning. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Bmad Sprint Planning?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Bmad Sprint Planning?

As many as you like. As long as a model supports skills, you can use Bmad Sprint Planning with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Bmad Sprint Planning AI skill free?

It is published on GitHub by aj-geddes. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇