plan-sprint
关于
The `plan-sprint` skill automates sprint planning by refining backlog items, defining a goal, calculating team capacity, and decomposing selected items into tasks. It outputs a structured `SPRINT-PLAN.md` file with the goal, selected items, task breakdown, and capacity allocation. Use it when starting a new Scrum sprint, re-planning after scope changes, or transitioning from ad-hoc work to a structured sprint cadence.
快速安装
Claude Code
推荐npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/plan-sprint在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
Plan a Sprint
Plan a time-boxed sprint by selecting refined backlog items up to team capacity, defining a clear sprint goal, and decomposing selected items into actionable tasks. This skill produces a complete sprint plan that guides team work for the duration of the sprint iteration.
When to Use
- Starting a new sprint in a Scrum or agile project
- Re-planning a sprint after significant scope change
- Transitioning from ad-hoc work to structured sprint cadence
- After backlog grooming when items are ready for sprint inclusion
- Planning the first sprint after project charter approval
Inputs
- Required: Product backlog (prioritized, with estimates)
- Required: Sprint duration (typically 1-2 weeks)
- Required: Team members and their availability
- Optional: Previous sprint velocity (story points or items completed)
- Optional: Sprint number and date range
- Optional: Carry-over items from previous sprint
Procedure
Step 1: Review and Refine Backlog Items
Read the current BACKLOG.md. For each candidate item near the top of the backlog, verify it has:
- Clear title and description
- Acceptance criteria (testable conditions)
- Estimate (story points or T-shirt size)
- No unresolved blockers
Refine any items missing these elements. Split items estimated larger than half the sprint capacity into smaller, more manageable pieces.
Got: Top 10-15 backlog items are "sprint-ready" with acceptance criteria and estimates.
If fail: If items lack acceptance criteria, write them now. If items can't be estimated, schedule a refinement conversation and select only ready items.
Step 2: Define Sprint Goal
Write a single clear sprint goal — one sentence stating what the sprint will achieve. The goal should be:
- Achievable within the sprint duration
- Valuable to stakeholders
- Testable (you can verify it was met at sprint end)
**Sprint Goal**: [One sentence describing the objective]
Example: "Enable users to reset their password through email verification with two-factor authentication."
Got: Sprint goal articulated as one clear, testable sentence.
If fail: If no coherent goal emerges, the backlog priorities may be scattered — consult the product owner to focus on a single valuable outcome.
Step 3: Calculate Team Capacity
Calculate available person-days for each team member:
## Team Capacity
| Team Member | Available Days | Overhead (%) | Net Capacity |
|-------------|---------------|-------------|--------------|
| [Name] | [Sprint days - PTO] | 20% | [Available × 0.8] |
| [Name] | [Sprint days - PTO] | 20% | [Available × 0.8] |
| **Total** | | | **[Sum] person-days** |
Overhead accounts for meetings, reviews, ad-hoc requests (typically 15-25%).
If using story points: use previous sprint velocity as capacity. If first sprint, use 60-70% of theoretical maximum.
Got: Capacity calculated in person-days or story points with documented assumptions.
If fail: If no historical velocity exists, be conservative — plan to 60% capacity and adjust after the sprint. Better to under-commit and deliver than over-commit and fail.
Step 4: Select Items and Compose Sprint Backlog
Select items from the top of the product backlog until capacity is reached. Decompose each selected item into tasks (2-8 hours each):
# Sprint Plan: Sprint [N]
## Document ID: SP-[PROJECT]-S[NNN]
### Sprint Details
- **Sprint Goal**: [From Step 2]
- **Duration**: [Start date] to [End date]
- **Capacity**: [From Step 3] person-days / [N] story points
- **Team**: [List team members]
### Sprint Backlog
| ID | Item | Points | Tasks | Assignee | Status |
|----|------|--------|-------|----------|--------|
| B-001 | [Item title] | 5 | 4 | [Name] | To Do |
| B-002 | [Item title] | 3 | 3 | [Name] | To Do |
| B-003 | [Item title] | 8 | 6 | [Name] | To Do |
| **Total** | | **16** | **13** | | |
### Task Breakdown
#### B-001: [Item title]
**Acceptance Criteria**: [From backlog item]
- [ ] Task 1: [Description] (4h, [Assignee])
- [ ] Task 2: [Description] (2h, [Assignee])
- [ ] Task 3: [Description] (4h, [Assignee])
- [ ] Task 4: [Description] (2h, [Assignee])
#### B-002: [Item title]
**Acceptance Criteria**: [From backlog item]
- [ ] Task 1: [Description] (3h, [Assignee])
- [ ] Task 2: [Description] (4h, [Assignee])
- [ ] Task 3: [Description] (2h, [Assignee])
#### B-003: [Item title]
**Acceptance Criteria**: [From backlog item]
- [ ] Task 1: [Description] (3h, [Assignee])
- [ ] Task 2: [Description] (4h, [Assignee])
- [ ] Task 3: [Description] (2h, [Assignee])
- [ ] Task 4: [Description] (3h, [Assignee])
- [ ] Task 5: [Description] (4h, [Assignee])
- [ ] Task 6: [Description] (2h, [Assignee])
### Risks and Dependencies
| Risk | Impact | Mitigation |
|------|--------|-----------|
| [Risk 1] | [Impact] | [Mitigation] |
| [Risk 2] | [Impact] | [Mitigation] |
### Carry-Over from Previous Sprint
| ID | Item | Reason | Remaining Effort |
|----|------|--------|-----------------|
| B-XXX | [Item] | [Reason] | [Hours/points] |
Got: Sprint backlog with items selected up to capacity, each decomposed into tasks with time estimates.
If fail: If total points exceed capacity, remove the lowest-priority item. Never exceed capacity by more than 10%. If dependencies block sequencing, re-order or defer items.
Step 5: Document Commitments and Save
Write the sprint plan to SPRINT-PLAN.md (or SPRINT-PLAN-S[NNN].md for archival). Confirm:
- Sprint goal is achievable with selected items
- No team member is overallocated (>100% capacity)
- Dependencies between items are sequenced correctly
- Carry-over items are accounted for in capacity
- All acceptance criteria copied from backlog items
Run a final validation:
# Check that total task hours align with capacity
grep -A 100 "Task Breakdown" SPRINT-PLAN.md | grep -o '([0-9]*h' | sed 's/[^0-9]//g' | awk '{sum+=$1} END {print "Total hours:", sum}'
Got: SPRINT-PLAN.md created with complete sprint backlog and task breakdown. Total hours should be ≤80% of available person-days × 8 hours.
If fail: If commitments don't align with goal, revisit item selection in Step 4. If task hours exceed capacity, remove the last item or decompose tasks more granularly.
Validation
- Sprint goal is one clear, testable sentence
- Team capacity calculated with documented assumptions (overhead %, PTO accounted)
- Selected items do not exceed capacity (points or person-days)
- Every selected item has acceptance criteria copied into task breakdown
- Every selected item is decomposed into tasks (2-8 hours each)
- No team member overallocated beyond 100% capacity
- Carry-over items from previous sprint documented with remaining effort
- Dependencies between items sequenced correctly
- Risks and mitigations documented
- SPRINT-PLAN.md file created and saved
Pitfalls
- No sprint goal: Without a goal, the sprint is just a bag of tasks. The goal provides focus and a basis for scope decisions mid-sprint.
- Over-commitment: Planning to 100% capacity ignores interruptions, bugs, and overhead. Plan to 70-80% to leave buffer for the unexpected.
- Tasks too large: Tasks over 8 hours hide complexity and make progress tracking difficult. Decompose until tasks are 2-8 hours.
- Ignoring carry-over: Unfinished items from the last sprint consume capacity this sprint. Account for them explicitly in capacity calculations.
- Sprint goal as item list: "Complete B-001, B-002, B-003" is not a goal. A goal describes the outcome: "Users can reset their password through email verification."
- No task ownership: Every task should have an assignee at planning time to surface capacity conflicts early.
- Skipping acceptance criteria: Tasks without acceptance criteria can't be tested. Copy acceptance criteria from backlog items into the task breakdown section.
Related Skills
manage-backlog— maintain and prioritize the product backlog that feeds sprint planningdraft-project-charter— provides project context and initial scope for the first sprintgenerate-status-report— report sprint progress and velocity to stakeholdersconduct-retrospective— review sprint execution and improve the planning processcreate-work-breakdown-structure— WBS work packages can feed the backlog in hybrid agile-waterfall approaches
GitHub 仓库
相关推荐技能
executing-plans
设计该Skill用于当开发者提供完整实施计划时,以受控批次方式执行代码实现。它会先审阅计划并提出疑问,然后分批次执行任务(默认每批3个任务),并在批次间暂停等待审查。关键特性包括分批次执行、内置检查点和架构师审查机制,确保复杂系统实现的可控性。
requesting-code-review
设计该Skill可在完成任务、实现主要功能或合并代码前自动调度代码审查子代理,确保实现符合需求和计划。它支持通过指定git SHA范围进行精准的代码变更审查,帮助开发者在关键节点及时发现潜在问题。核心原则是"早审查、勤审查",适用于开发流程的各个关键阶段。
connect-mcp-server
设计这个Skill指导开发者如何将MCP服务器连接到Claude Code,支持HTTP、stdio和SSE三种传输协议。它涵盖了从安装配置到认证安全的完整流程,适用于集成GitHub、Notion、数据库等外部服务。当开发者需要添加集成、配置外部工具或提及MCP相关功能时,这个Skill能提供实用的操作指南。
web-cli-teleport
设计该Skill帮助开发者根据任务特性选择Claude Code的Web或CLI界面,并指导如何在两种环境间无缝迁移会话。它能分析任务复杂度、迭代需求等要素,推荐最优工作界面和工作流。关键特性包括会话状态管理、环境切换指导和上下文优化建议。
