with one click
bmad-sprint-status
// Summarize sprint status and surface risks. Use when the user says "check sprint status" or "show sprint status"
// Summarize sprint status and surface risks. Use when the user says "check sprint status" or "show sprint status"
| name | bmad-sprint-status |
| description | Summarize sprint status and surface risks. Use when the user says "check sprint status" or "show sprint status" |
Goal: Summarize sprint status, surface risks, and recommend the next workflow action.
Your Role: You are a Developer providing clear, actionable sprint visibility. No time estimates — focus on status, risks, and next steps.
checklist.md) resolve from the skill root.{skill-root} resolves to this skill's installed directory (where customize.toml lives).{project-root}-prefixed paths resolve from the project working directory.{skill-name} resolves to the skill directory's basename.Run: python3 {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --key workflow
If the script fails, resolve the workflow block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
{skill-root}/customize.toml — defaults{project-root}/_bmad/custom/{skill-name}.toml — team overrides{project-root}/_bmad/custom/{skill-name}.user.toml — personal overridesAny missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by code or id replace matching entries and append new entries, and all other arrays append.
Execute each entry in {workflow.activation_steps_prepend} in order before proceeding.
Treat every entry in {workflow.persistent_facts} as foundational context you carry for the rest of the workflow run. Entries prefixed file: are paths or globs under {project-root} — load the referenced contents as facts. All other entries are facts verbatim.
Load config from {project-root}/_bmad/bmm/config.yaml and resolve:
project_name, user_namecommunication_language, document_output_languageimplementation_artifactsdate as system-generated current datetime{communication_language}Greet {user_name}, speaking in {communication_language}.
Execute each entry in {workflow.activation_steps_append} in order.
Activation is complete. Begin the workflow below.
sprint_status_file = {implementation_artifacts}/sprint-status.yaml| Input | Path | Load Strategy |
|---|---|---|
| Sprint status | {sprint_status_file} | FULL_LOAD |
Validate all statuses against known values:
Valid story statuses: backlog, ready-for-dev, in-progress, review, done, drafted (legacy)
Valid epic statuses: backlog, in-progress, done, contexted (legacy)
Valid retrospective statuses: optional, done
Unknown status detected: {{#each invalid_entries}}
{{key}}: "{{status}}" (not recognized)
{{/each}}Valid statuses:
Enter corrections (e.g., "1=in-progress, 2=backlog") or "skip" to continue without fixing: Update sprint-status.yaml with corrected values Re-parse the file with corrected statuses
Detect risks:
/bmad:bmm:workflows:code-review/bmad:bmm:workflows:create-storylast_updated timestamp is more than 7 days old (or last_updated is missing, fall back to generated): warn "sprint-status.yaml may be stale"Stories: backlog {{count_backlog}}, ready-for-dev {{count_ready}}, in-progress {{count_in_progress}}, review {{count_review}}, done {{count_done}}
Epics: backlog {{epic_backlog}}, in-progress {{epic_in_progress}}, done {{epic_done}}
Next Recommendation: /bmad:bmm:workflows:{{next_workflow_id}} ({{next_story_id}})
{{#if risks}} Risks: {{#each risks}}
{{this}} {{/each}} {{/if}}
Read and parse {sprint_status_file}
Validate required metadata fields exist: generated, project, project_key, tracking_system, story_location (last_updated is optional for backward compatibility) is_valid = false error = "Missing required field(s): {{missing_fields}}" suggestion = "Re-run sprint-planning or add missing fields manually" Return
Verify development_status section exists with at least one entry is_valid = false error = "development_status missing or empty" suggestion = "Re-run sprint-planning or repair the file manually" Return
Validate all status values against known valid statuses:
is_valid = true
message = "sprint-status.yaml valid: metadata complete, all statuses recognized"
Run: python3 {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete — if the resolved value is non-empty, follow it as the final terminal instruction before exiting.
Create, update, or validate a product brief. Use when the user wants help producing, editing, or validating a brief.
UX designer and UI specialist. Use when the user asks to talk to Sally or requests the UX designer.
Create, update, or validate a PRD. Use when the user wants help producing, editing, or validating a PRD.
Plan UX patterns and design specifications. Use when the user says "lets create UX design" or "create UX specifications" or "help me plan the UX"
Product manager for PRD creation and requirements discovery. Use when the user asks to talk to John or requests the product manager.
DEPRECATED — consolidated into bmad-prd create intent - this skill will be removed in v7 in favor of `bmad-prd`.