carve
Skill1 starsChanged 6 months agoMITView on GitHub
Turn a PRD into a multi-phase implementation plan using tracer-bullet vertical slices, saved as a local Markdown file in ./plans/. Use when user wants to break down a PRD, create an implementation plan, plan phases from a PRD, or mentions "tracer bullets".
In this repository13 other files it gives its agents.
- agent-cliSkill
- askSkill
- blueprintSkill
- brainstormSkill
- dispatchSkill
- handoffSkill
- improve-claude-mdSkill
- leanSkill
- llm-councilSkill
- orientSkill
- react-auditSkill
- shipSkill
- tddSkill
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 3 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 22
Before slicing, identify high-level decisions that are unlikely to change throughout implementation:
- Distinctive: line 38
Follow the rules in vertical-slice-rules.md.
- Distinctive: line 60
Should any phases be merged or split further?
- Very specific: line 66
Create ./plans/ if it doesn't exist.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Carve — PRD to Plan
Break a PRD into a phased implementation plan using vertical slices (tracer bullets). Output is a Markdown file in ./plans/.
CLI tools — special case. If the PRD describes a command-line tool, suggest running
/agent-cliin design mode before slicing. Locking flags, output formats, and error model up front prevents rework once vertical slices start landing.
Process
1. Confirm the PRD is in context
The PRD should already be in the conversation. If it isn't, ask the user to paste it or point you to the file.
2. Identify durable architectural decisions
Reasoning approach: Mentally trace 2-3 likely implementation paths through the PRD end-to-end. A "durable" decision is one all paths share. Reason through alternatives before listing — surface hidden assumptions, then prune. Recommended for this step: opus-4.7 with extended thinking (high effort).
Before slicing, identify high-level decisions that are unlikely to change throughout implementation:
- System architecture style
- Data model shape and key entities
- Authentication / authorization approach
- Third-party service boundaries
- Key constraints (compliance, performance, budget)
These go in the plan header so every phase can reference them.
3. Draft vertical slices
Reasoning approach: Hold the full PRD in mind while slicing. Each slice must cut through ALL integration layers — verify mentally before writing. Avoid horizontal-by-default thinking; if a phase only touches one layer, it's the wrong shape.
Break the PRD into tracer bullet phases. Each phase is a thin vertical slice that cuts through ALL integration layers end-to-end, NOT a horizontal slice of one layer.
Follow the rules in vertical-slice-rules.md.
Push back on slice creep. Every slice must trace to an explicit user story in the PRD. If a draft slice includes functionality not in the PRD ("while we're in there, let's also add X"), cut X — propose it as a follow-up phase or send it back to /blueprint. Phases that drift past the PRD turn /tdd into an open-ended design exercise.
Acceptance criteria must be verifiable. For each phase, every AC must be one of:
- (a) automated test — a test exists or can be written that asserts the behavior,
- (b) observable artifact — a row in a table, a file on disk, a log line, a metric, or
- (c) runnable command —
make X,curl Y,psql -c "…"that returns a known result.
"It works" or "feature complete" do not qualify. If an AC can't be reduced to one of these three, sharpen it before the phase ships to /dispatch or /tdd.
4. Quiz the user
Present the proposed breakdown as a numbered list. For each phase show:
- Title: short descriptive name
- User stories covered: which user stories from the PRD this addresses
Ask the user:
- Does the granularity feel right? (too coarse / too fine)
- Should any phases be merged or split further?
Iterate until the user approves the breakdown.
5. Write the plan file
Create ./plans/ if it doesn't exist. Write the plan as a Markdown file named after the feature (e.g. ./plans/user-onboarding.md). Use the template in plan-template.md.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

