计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
planning-and-task-breakdown【效率与协作】Turn clear requirements into ordered tasks, dependencies, and acceptance checks; preserve unfinished work when revising an existing plan.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Decompose work into small, verifiable tasks with explicit acceptance criteria. Good task breakdown is the difference between an agent that completes work reliably and one that produces a tangled mess. Every task should be small enough to implement, test, and verify in a single focused session.
When NOT to use: Single-file changes with obvious scope, or when the spec already contains well-defined tasks.
Start by reading the relevant context:
For a plan-only request, deliver the plan document and task list without implementation. When implementation is already authorized, continue once material decisions are resolved; this skill does not require switching host modes.
Map what depends on what:
Database schema
│
├── API models/types
│ │
│ ├── API endpoints
│ │ │
│ │ └── Frontend API client
│ │ │
│ │ └── UI components
│ │
│ └── Validation logic
│
└── Seed data / migrations
Implementation order follows the dependency graph bottom-up: build foundations first.
Instead of building all the database, then all the API, then all the UI — build one complete feature path at a time:
Bad (horizontal slicing):
Task 1: Build entire database schema
Task 2: Build all API endpoints
Task 3: Build all UI components
Task 4: Connect everything
Good (vertical slicing):
Task 1: User can create an account (schema + API + UI for registration)
Task 2: User can log in (auth schema + API + UI for login)
Task 3: User can create a task (task schema + API + UI for creation)
Task 4: User can view task list (query + API + UI for list view)
Each vertical slice delivers working, testable functionality.
Each task follows this structure, whether it lands in the markdown task list or as an item in an external tracker (see Output Files):
## Task [N]: [Short descriptive title]
**Description:** One paragraph explaining what this task accomplishes.
**Acceptance criteria:**
- [ ] [Specific, testable condition]
- [ ] [Specific, testable condition]
**Verification:**
- [ ] Tests pass: [the repository's focused-test command]
- [ ] Build succeeds: [the repository's build command]
- [ ] Manual check: [description of what to verify]
**Dependencies:** [Task numbers this depends on, or "None"]
**Files likely touched:**
- `src/path/to/file.ts`
- `tests/path/to/test.ts`
**Estimated scope:** [Small: 1-2 files | Medium: 3-5 files | Large: 5+ files]
Arrange tasks so that:
Add explicit checkpoints to the task list target:
## Checkpoint: After Tasks 1-3
- [ ] All tests pass
- [ ] Application builds without errors
- [ ] Core user flow works end-to-end
- [ ] Resolve any material open decision before dependent work
| Size | Files | Scope | Example |
|---|---|---|---|
| XS | 1 | Single function or config change | Add a validation rule |
| S | 1-2 | One component or endpoint | Add a new API endpoint |
| M | 3-5 | One feature slice | User registration flow |
| L | 5-8 | Multi-component feature | Search with filtering and pagination |
| XL | 8+ | Too large — break it down further | — |
If a task is L or larger, it should be broken into smaller tasks. An agent performs best on S and M tasks.
When to break a task down further:
tasks/plan.md. This is always a markdown file — design decisions, risks, and open questions don't map cleanly onto individual tracker issues.Create the tasks/ directory if it does not exist.
Preserve incomplete plans. Before writing tasks/plan.md or tasks/todo.md,
check for existing unchecked tasks. If this is the same work and the user asked
to revise it, update the existing plan. For different work, stop and ask which
plan should own the target; do not overwrite, rename, or delete the earlier plan.
The same boundary applies to external trackers: never bulk-close another plan's
open items to make room for a new task.
The task list target is where tasks and checkpoints are recorded. It is defined once, here; every other reference in this skill defers to it.
tasks/todo.md. This is the convention the /build command and other downstream tooling expect. Use it unless the project says otherwise.CLAUDE.md, AGENTS.md, etc.) or the user designate an issue tracker (e.g. GitHub Issues, Jira, Linear, bd/beads), create one tracker item per task instead of writing tasks/todo.md. Map the Step 4 structure onto the tracker's fields: acceptance criteria and verification steps in the item body, dependencies via the tracker's linking mechanism (bd dep add, "blocked by", etc.). Record Step 5 checkpoints as tracker items too, or as a checklist in the plan document if the tracker has no natural equivalent.When using an external tracker, note it in tasks/plan.md (e.g. "Tasks tracked in Linear project FOO") so downstream steps and future sessions know where to look, and keep the plan document's Task List section as an ordered index of tracker item IDs or links rather than a duplicate checklist.
# Implementation Plan: [Feature/Project Name]
## Overview
[One paragraph summary of what we're building]
## Architecture Decisions
- [Key decision 1 and rationale]
- [Key decision 2 and rationale]
## Task List
### Phase 1: Foundation
- [ ] Task 1: ...
- [ ] Task 2: ...
### Checkpoint: Foundation
- [ ] Tests pass, builds clean
### Phase 2: Core Features
- [ ] Task 3: ...
- [ ] Task 4: ...
### Checkpoint: Core Features
- [ ] End-to-end flow works
### Phase 3: Polish
- [ ] Task 5: ...
- [ ] Task 6: ...
### Checkpoint: Complete
- [ ] All acceptance criteria met
- [ ] Ready for review
## Risks and Mitigations
| Risk | Impact | Mitigation |
|------|--------|------------|
| [Risk] | [High/Med/Low] | [Strategy] |
## Open Questions
- [Question needing human input]
When tasks live in an external tracker, keep the Task List section above as an ordered index of tracker item IDs or links instead of a duplicate checklist.
When multiple agents or sessions are available:
| Rationalization | Reality |
|---|---|
| "I'll figure it out as I go" | That's how you end up with a tangled mess and rework. 10 minutes of planning saves hours. |
| "The tasks are obvious" | Skip this skill when scope is already clear; record only dependencies or acceptance gaps. |
| "Planning is overhead" | Scale the plan to the uncertainty and coordination the work actually needs. |
| "I can hold it all in my head" | Context windows are finite. Written plans survive session boundaries and compaction. |
tasks/todo.md when the project has designated an external tracker (or scattering tasks across both)Before starting implementation, confirm:
tasks/todo.md)Acceptance criteria are per-task and answer "did we build the right thing?". They sit on top of the project-wide Definition of Done, the standing bar every task clears before it counts as done. See references/definition-of-done.md.