sprint-planner
Sprint Planner converts incoming tickets and team capacity into a structured sprint plan with committed work, stretch goals, and explicit non-goals. Use it at sprint kickoff, after mid-cycle reprioritization, or when intake exceeds capacity and requires a defendable allocation strategy. The tool allocates work to approximately 85% of available team capacity, identifies dependencies and blockers, and surfaces risks that could cause spillover.
git clone --depth 1 https://github.com/oxbshw/LLM-Agents-Ecosystem-Handbook /tmp/sprint-planner && cp -r /tmp/sprint-planner/skills/catalog/sprint-planner ~/.claude/skills/sprint-plannerSKILL.md
# Sprint Planner ## When to use - Start of a sprint cycle - After a re-prioritization mid-cycle - When intake outpaces capacity and you need a defendable plan ## When NOT to use - Daily standup (different cadence) - Annual planning (different scope; use `roadmap-synthesizer`) ## Inputs | Name | Type | Required | Notes | |---|---|---|---| | `tickets` | list / path | yes | candidate work items with priority + estimates | | `capacity` | object | yes | per-engineer days available | | `previous_carry` | list | no | items rolling over from last sprint | | `commitments` | list | no | OKR / stakeholder commitments that must land | ## Outputs `sprint-plan.md` with: Sprint goal, Committed, Stretch, Non-goals, Risks. ## Workflow 1. Compute total capacity (days × team) 2. Sort candidates: committed → carry → stretch 3. Pack to ~85% of capacity (leave room for support / interrupts) 4. Identify dependencies between items; surface blockers 5. Surface **explicit non-goals** — what we are *not* doing this sprint and why 6. Risks: anything that would cause spillover ## References - [`references/sprint-plan-template.md`](references/sprint-plan-template.md) ## Success criteria - Committed work ≤ 85% of capacity - Every committed item has an owner and an estimate - Non-goals section is non-empty - Risks include at least one "what could derail us" ## Failure modes - Capacity unknown → ask, don't guess - Tickets without estimates → flag and exclude from "committed"
Use when capturing an architecture decision so it survives turnover — produces an ADR-NNNN.md from context, options considered, and the chosen path.
Use when reviewing a proposed REST or GraphQL API change before merge — checks contract clarity, backwards compatibility, errors, pagination, auth, and naming.
Use when first encountering a new dataset — produces a structured profile (schema, missingness, distributions, outliers, gotchas) before any analysis.
Use after an incident is resolved — drafts a blameless postmortem from timeline notes, alerts, and chat threads.
Use when opening a PR — produces a clean PR description (what / why / how to verify / risks) from a branch diff against base.
Use after a session to promote useful episodic notes from logs/episodic/ into distilled, dated entries in MEMORY.md and memory/semantic/.
Use before connecting a new MCP server to your agent — produces a structured security review covering source, permissions, tools, network, and approvals.