Spec planning
Skill byerlikaya/claude-starter-kit/claude-starter/skills/spec-planning
Spec-first planning: task breakdown, measurable acceptance criteria, dependency order, risk priority. planner-csk applies it; the plan goes to docs/PLAN.md. Trigger phrases: "plan", "spec", "task breakdown", "acceptance criteria", "roadmap", "how do we split this"From its SKILL.md
npx -y skills add byerlikaya/claude-starter-kit --skill spec-planningAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 22 stars22 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.9 KB, 622 tokens by cl100k_base, as published. Nobody here has run it
Spec-First Planning
Before writing code: what will be done, how it counts as "done", and in what order to proceed become clear.
Steps
- Purpose & scope: the problem being solved in a single sentence; also write the out-of-scope explicitly (prevent scope creep).
- Split into vertical slices: the smallest end-to-end working pieces (not horizontal layers). Each slice delivers value on its own.
- A contract for every task: input · output · measurable acceptance criterion (testable) · estimated risk.
- Dependency graph: which task waits on what; no cycles. Bring the riskiest/most-unknown to the front (fail-fast).
- Uncertainties: assumption list + open questions; do not fill ambiguous spots with a guess, ask with explicit options.
Output (docs/PLAN.md)
# <Feature> — Plan
## Acceptance criteria
- [ ] <measurable outcome>
## Tasks (order)
1. <task> — criterion: <...> — dependency: <none/#n> — risk: <low/medium/high>
## Assumptions / Open questions
- ...
Mark what you do not know — do not fill it in
Where a requirement admits more than one reading, write the marker [NEEDS CLARIFICATION: <the question>] at
that exact spot in the plan. Do not resolve it with the likeliest interpretation and move on.
This is the difference between a discipline and a hope. "Stop and ask when unsure" (§1) depends on noticing the uncertainty in the moment; a marker survives into the artifact, where the user, a reviewer and a later session can all see it. A plausible assumption silently written into a spec is indistinguishable from a decision, and that is exactly how the wrong feature gets built correctly.
Rules that keep it honest:
- The marker carries the question, not the label.
[NEEDS CLARIFICATION: does an expired invite count as used, or can it be re-sent?]is actionable;[NEEDS CLARIFICATION: invites]is noise. - A plan may ship with markers — that is the point. It may not ship with a marker inside an acceptance criterion: a criterion nobody can evaluate is not a criterion.
- Resolve by asking, never by choosing. When the user answers, replace the marker with the answer and record which reading was rejected — the alternative is what a future reader needs.
- Zero markers on a genuinely ambiguous brief is a smell, not a win.
DoD (this skill's contribution)
- Every task's "done" is testable; ordering and dependencies are visible; the riskiest work has been brought to the front.
- Every unresolved ambiguity carries a
[NEEDS CLARIFICATION: …]marker; no acceptance criterion contains one.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.