skills/skill-work-slicing/SKILL.md
Break a plan or spec into vertical slices that each declare what blocks them — use when work is agreed but not yet cut into fileable pieces
npx skillsauth add nyldn/claude-octopus skill-work-slicingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Host: Codex CLI — This skill was designed for Claude Code and adapted for Codex. Cross-reference commands use installed skill names in Codex rather than
/octo:*slash commands. Use the active Codex shell and subagent tools. Do not claim a provider, model, or host subagent is available until the current session exposes it. For host tool equivalents, seeskills/blocks/codex-host-adapter.md.
Turn a plan, spec, or the conversation so far into a set of tickets. Each one is a vertical slice — a narrow but complete path through every layer — and each declares the tickets that block it.
This is the step between "we know what we are building" and "someone can pick up
a piece of it". It does not decide anything: if decisions are still open, run
skill-pressure-test first.
Before slicing, map unresolved decision records and their dependencies. Each record names its question, required evidence, owner, resolution, and unblocked implementation. A dependency cycle withholds ready status until it is recut. Invalidated decisions reopen affected work rather than leaving stale completion.
Adapted from to-tickets in
mattpocock/skills (MIT), retargeted at
this repo's trackers.
skill-pressure-test./octo:parallel, which decomposes into work packages it then
runs. This produces tracker state for humans and future sessions.The plan, spec, or conversation. Optionally a parent epic id to hang the slices under.
Each slice cuts a narrow but complete path through every layer it touches — schema, API, UI, tests. It is not a horizontal slice of one layer.
The first slice through a new area is the tracer bullet: thin, complete, and proves the path exists before anything is built out along it.
For every slice, name the slices that must close first. Only real ordering constraints — not preference, not tidiness. Two slices that merely touch the same file are not blocked on each other; two where one cannot be verified until the other exists are.
Cycles mean the slicing is wrong, not that the tracker needs a workaround. Recut.
This repo has two trackers and they are not interchangeable:
bd (beads) is the system of record for work. bd create --parent=<id>
makes a child; bd dep add <issue> <depends-on> makes a blocking edge;
bd ready lists what is takeable — open, unblocked, and not in progress.gh. Use them when the work is
externally visible or a contributor needs to see it.Put the detail in the ticket body, not in the parent. The parent indexes; the ticket holds.
Use the tracker's atomic claim operation and read ownership back before editing a slice. If the tracker cannot claim atomically, use one integrator and do not treat an assignee read followed by a write as a lock. Never overwrite another owner's claim.
bd is periodically write-blocked by pending Dolt schema migrations, and the
repository rule is explicit: do not run the migration unless you are the
single designated migrator, because migrating a second clone forks the schema
irrecoverably.
When writes are blocked, do not pretend the work was filed and do not silently drop it. Instead:
bd create and bd dep add commands, complete and
in dependency order, so they can be run unmodified once writes return.docs/roadmaps/, which is
the practice this repo already follows.tools
Prototype one risky assumption within a fixed budget, then keep or discard the result
testing
Interrogate a plan, decision, or design one question at a time until it holds — use to stress-test your own thinking before committing to it
business
Move incoming issues and pull requests through triage states until each is actionable or closed — use when the queue has piled up or a report arrives unsorted
tools
Principles for writing skills that behave the same way every run — use when adding, editing, or reviewing a skill in this plugin