Vertical Slice Splitter
Decompose a destination doc or spec into independently grabbable vertical-slice issue cards.
Process
- Read input document from
$ARGUMENTS(destination doc or spec). - Explore codebase: file structure, layers, modules, existing test boundaries.
- Identify layers the work crosses (DB, service, API, UI, infra, etc.).
- Decompose into vertical slices — each slice crosses all relevant layers for its scope.
- Reject horizontal-only slices. Enforce tracer-bullet: slice 000 must produce something visible and testable end-to-end.
- For each slice determine:
- Title, description (2-5 sentences), acceptance criteria (testable)
- Dependencies:
blocksandblocked-by(referencing other slice IDs) - Label:
afk|human-review|pair
- Build DAG, validate acyclic, identify parallel groups.
- Check
issues/directory. If it has existing content, ask user: archive or append. - Write files:
issues/DAG.md— mermaid graph + summary table + parallel group annotationsissues/000-[slug].mdthroughissues/NNN-[slug].md
Issue File Format
# [Title]
**Label:** afk | human-review | pair
**Blocks:** 001, 003
**Blocked by:** none
## Description
[2-5 sentences]
## Acceptance Criteria
- [ ] ...
## Notes
[Optional implementation hints]
Constraints
- Every slice independently grabbable (one agent or session)
- No slice larger than one focused session
- First slice (000) is always the tracer bullet
- DAG must be acyclic
afkslices must have unambiguous acceptance criteria (no taste judgment required)
Alignment Page
When this skill produces durable deliverables (research, specs, plans, reports, prototypes, or any document output), build a full-depth HTML alignment page following ALIGNMENT-PAGE.md in this skill's directory. Output: alignment/vertical-slice-splitter-{topic}.html.
Default Shipping Contract
Follow the shared shipping contract convention in CLAUDE.md.