Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Structure and facilitate sprint planning sessions. Use when asked to plan a sprint, organise backlog items, assign story points, create sprint goals, or prepare sprint planning agendas. Produces a sprint goal, velocity-calibrated backlog, capacity plan, risk flags, and a structured sprint planning meeting agenda.
.claude/skills/mohitagw15856-sprint-planning/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 82% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 134% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 55% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 113% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 46% | 0% |
Transform raw backlog items into a structured, achievable sprint with clear goals, velocity-calibrated scope, and team-ready output.
If a professional-brain (brain/) exists, ground in it instead of re-asking for what you already know:
decisions/ (what the team agreed matters), feature entities/, and open hypotheses/ the sprint might test. Run python3 ../professional-brain/scripts/brain_query.py ./brain "<sprint goal>" and carry each fact's provenance tag through.decisions/ record, provenance-tagged. Show it, get a yes, then write with ../professional-brain/scripts/brain_write.py … --commit (append-only, dry-run by default).Once the sprint is agreed, hand it to action-runner: it previews (dry-run, risk-rated), runs only what you approve via the connected action MCP, and records what was done back to the brain. Typical: create a ticket per committed backlog item and set the sprint milestone (🟡). This skill proposes; action-runner gates and runs — never silently.
Ask for (if not already provided):
Use this structure: > "This sprint we will deliver X outcome] so that user/business benefit], measured by success indicator]."
Never write sprint goals as task lists. Always outcome-first.
| Complexity | Points | Description | |---|---|---| | Trivial | 1 | Clearly understood, no unknowns | | Small | 2 | Straightforward, minor effort | | Medium | 3 | Some complexity, clear path | | Large | 5 | Complex, needs design or research | | Very Large | 8 | High uncertainty, may need splitting | | Epic | 13+ | Too large — must be split before sprint |
Flag any item estimated at 8+ and recommend splitting.
Available capacity = (Team size × Sprint days × Focus hours/day) × Availability factor
Focus hours/day: 6 (accounting for meetings, Slack, admin)
Availability factor: 0.7–0.85 depending on holidays/events
Story points to commit = Historical velocity × Availability factorThis skill ships with a stdlib-only Python script that computes capacity instead of estimating it by hand. Use it whenever the team's numbers are known — it applies the availability and 80% commit-ratio rules consistently.
bash# Quick estimate from flags python3 scripts/capacity_calculator.py --team 5 --days 10 --velocity 30 --availability 0.8 --carryover 5 # Detailed estimate from per-member availability (JSON via stdin or --input file.json) echo '{"sprint_days":10,"historical_velocity":40,"carryover_points":8, "members":[{"name":"Ada","available_days":10},{"name":"Linus","available_days":7}]}' \ | python3 scripts/capacity_calculator.py --input -
The script returns available focus hours, a velocity figure adjusted for real availability, the recommended commitment (capped at 80% of velocity), and the remaining capacity for new work after carry-overs. Run it first, then build the sprint backlog to fit the recommended number. Add --json to pipe the result into other tooling.
Sprint Goal: > Goal statement]
Team Capacity: X] story points available (based on Y] team members, Z]% availability)
Sprint Backlog:
| Priority | Story | Points | Owner | Acceptance Criteria | |---|---|---|---|---| | 1 | Story title] | N] | Team member] | When X then Y] |
Carry-Overs from Previous Sprint:
Risks & Dependencies:
Sprint Planning Agenda:
This skill ships with support files — use them when they are available:
references/capacity-honesty.md — Capacity Honesty — the numbers teams lie to themselves about. Apply it while producing the output; it carries the calibration and judgment calls the method summary above compresses.templates/planning-worksheet.md — a fill-in version of the deliverable with the quality gates inline. Offer it when the user wants to work the document themselves rather than have it generated.Score any output of this skill before handing it over; 32+ is ship-quality.
| Dimension | 0 | 5 | 10 | |---|---|---|---| | Sprint goal quality | Goal is a task list ("do stories 1–8") or missing entirely | Outcome-flavoured but vague — not scoreable pass/fail at sprint end | Single outcome sentence with user/business benefit and a success indicator, unambiguously scoreable at sprint end | | Capacity honesty | Commitment assumes 100% of theoretical capacity; carry-overs ignored | Availability adjusted, but the 80% commit ratio is skipped or carry-over points not subtracted before pulling new work | Real availability (holidays, meetings, focus hours), carry-overs deducted first, and commitment capped at 80% of adjusted velocity | | Story readiness | Stories lack acceptance criteria, estimates, or owners | Most stories estimated and owned, but 8+ pointers are unsplit or acceptance criteria are untestable | Every story has one owner, calibrated points, and testable acceptance criteria; every 8+ pointer is flagged for splitting | | Risk & dependency surfacing | No risks or dependencies listed | Generic risks ("might slip") with no mitigations or owners | Specific blockers and cross-team dependencies, each with a concrete mitigation and a named owner |
For tool-using or computer-use agents that can reach the team's tracker (Jira, Linear, GitHub Projects). Runtimes without tool access ignore this section and deliver the document. See SKILLSPEC.md §5 for the rules this block follows.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-12 | fail→fail | 18,172 | 12,726 | -30% | 1 | 1 | 0% | 1,885 | 4,099 | +117% | 0 | 0 | — |
case-01 | fail→pass | 25,111 | 28,021 | +12% | 1 | 1 | 0% | 3,661 | 6,658 | +82% | 0 | 0 | — |
case-02 | fail→pass | 22,677 | 32,262 | +42% | 1 | 1 | 0% | 3,447 | 8,080 | +134% | 0 | 0 | — |
case-03 | fail→pass | 24,665 | 35,955 | +46% | 1 | 1 | 0% | 3,571 | 5,545 | +55% | 0 | 0 | — |
case-04 | fail→fail | 22,737 | 20,397 | -10% | 1 | 1 | 0% | 2,890 | 4,844 | +68% | 0 | 0 | — |
case-05 | pass→fail | 13,897 | 23,743 | +71% | 1 | 1 | 0% | 1,648 | 5,595 | +240% | 0 | 0 | — |
case-06 | pass→fail | 54,045 | 33,027 | -39% | 1 | 1 | 0% | 8,234 | 7,324 | -11% | 0 | 0 | — |
case-07 | fail→pass | 20,690 | 23,139 | +12% | 1 | 1 | 0% | 2,297 | 4,887 | +113% | 0 | 0 | — |
case-08 | fail→pass | 11,145 | 9,217 | -17% | 1 | 1 | 0% | 2,052 | 3,001 | +46% | 0 | 0 | — |
case-09 | fail→pass | 27,315 | 11,921 | -56% | 1 | 1 | 0% | 865 | 3,020 | +249% | 0 | 0 | — |
case-10 | pass→pass | 20,062 | 16,427 | -18% | 1 | 1 | 0% | 2,455 | 3,848 | +57% | 0 | 0 | — |
case-11 | pass→pass | 14,814 | 21,741 | +47% | 1 | 1 | 0% | 2,165 | 4,490 | +107% | 0 | 0 | — |
case-13 | pass→pass | 17,826 | 18,632 | +5% | 1 | 1 | 0% | 1,756 | 3,992 | +127% | 0 | 0 | — |
case-14 | pass→pass | 12,356 | 14,955 | +21% | 1 | 1 | 0% | 1,676 | 4,019 | +140% | 0 | 0 | — |
case-15 | pass→pass | 11,102 | 9,251 | -17% | 1 | 1 | 0% | 1,706 | 3,707 | +117% | 0 | 0 | — |
case-16 | fail→pass | 19,386 | 9,515 | -51% | 1 | 1 | 0% | 2,084 | 3,943 | +89% | 0 | 0 | — |
case-17 | fail→pass | 12,629 | 3,824 | -70% | 1 | 1 | 0% | 536 | 2,927 | +446% | 0 | 0 | — |
case-18 | fail→pass | 14,528 | 5,773 | -60% | 1 | 1 | 0% | 2,241 | 3,301 | +47% | 0 | 0 | — |
case-19 | fail→pass | 17,356 | 7,329 | -58% | 1 | 1 | 0% | 1,787 | 3,341 | +87% | 0 | 0 | — |
case-20 | fail→pass | 18,660 | 10,819 | -42% | 1 | 1 | 0% | 1,804 | 3,963 | +120% | 0 | 0 | — |
case-21 | pass→pass | 18,621 | 8,926 | -52% | 1 | 1 | 0% | 2,323 | 3,825 | +65% | 0 | 0 | — |
case-22 | fail→pass | 13,940 | 3,922 | -72% | 1 | 1 | 0% | 2,058 | 2,772 | +35% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 20 counted toward the lift figure. The other 2 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +45 percentage points is the difference between those two pass rates over the 20 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.