Iteration Planner Skill
Automate the transition between sprint iterations by performing a structured stocktake of open work and facilitating a "Bias for Action" planning session.
Purpose
Manage the lifecycle of GitHub Project iterations:
- Sprint Stocktake: Identify non-completed items (Todo, In Progress, Blocked).
- Roadmap Discovery: Identify empty or upcoming iterations via GraphQL.
- Interactive Planning: Present a Markdown-based "Planning Sheet" for user review.
- Bulk Updates: Automatically transition items to the next iteration or backlog.
Capabilities
- Iteration Discovery: Fetch full roadmap (Completed, Current, Upcoming).
- Carryover Analysis: Group non-completed items by Status, Priority, and Size.
- Retrospective Insights: Calculate completion rates and identify carryover root causes (Stalled, Underestimated, De-prioritized).
- Capacity Forecasting: Warn if carryover work exceeds historical team velocity.
- Planning Sheet Generation: Create an interactive Markdown sheet in the temp directory.
- Rescheduling: Execute bulk updates confirmed by the user.
Technical Guides
For command references, GraphQL mutations, and delivery metrics, refer to:
references/planning-commands.guide.md: Core commands for discovery and updates.references/iteration-crud.guide.md: Instructions for creating/deleting iterations.references/delivery-metrics.guide.md: Logic for Retro analysis and capacity forecasting.references/roadmap-view-troubleshooting.guide.md: Why an "Epic" issue doesn't show up in a Roadmap-layout view (hint: it almost always needs a real sub-issue), plus the Project/Start date/Target date hygiene checklist for epics.
Orchestration Flow
- Phase 1: Knowledge Gathering & Retrospective
- Use GraphQL to fetch full iteration config (IDs, Dates) — including
completedIterations. - Always use
--limit 200ongh project item-listto avoid silent truncation. - Load the "Working Set" for the current iteration.
- Perform Retro: Calculate Completion % and identify stalled items (Refer to
delivery-metrics.guide.md).
- Use GraphQL to fetch full iteration config (IDs, Dates) — including
- Phase 2: Planning Sheet Generation
- Create
/tmp/meeting-notes/planning-sheet-YYYY-MM-DD.md. - Include Retrospective Summary and Capacity Warnings.
- Propose moves (e.g.,
Todo-> Next Iteration).
- Create
- Phase 3: User Review & Edit
- Prompt user to edit the sheet and save.
- Phase 4: Synthesis & Execution
- Before any
updateProjectV2Fieldmutation: snapshot all item→iteration assignments. - Include ALL past iterations in the mutation payload (see
iteration-crud.guide.md). - After mutation: re-fetch new iteration IDs, then re-assign all items.
- Verify with
gh project item-list --limit 200that assignments are correct.
- Before any
Maintained by: contributors | Version: 1.3 | Last Updated: 2026-07-08
Changelog
- 1.3 (2026-07-08): Added
roadmap-view-troubleshooting.guide.md— empirically confirmed that Roadmap-layout "Epics" views require the epic issue to have at least one real GitHub sub-issue (viaaddSubIssue, not a text reference) to render;issueType,Parent issue, dates, and the saved view filter were all ruled out as gating factors. Also codified the best practice of always setting the correct Project membership plusStart date/Target dateon epics, even though those dates don't gate visibility — they matter for timeline accuracy regardless. - 1.2 (2026-04-21): Added lessons from live session —
--limit 200requirement for stocktake,completedIterationsmust be preserved to keep@currentviews working, ID regeneration side-effect on every mutation, GraphQL item assignment pattern. Seeiteration-crud.guide.md.