com um clique
slice
// Turn a feature into well-defined, independently shippable slices — whether it's an epic that needs breaking apart or a single story that needs sharpening into a job story
// Turn a feature into well-defined, independently shippable slices — whether it's an epic that needs breaking apart or a single story that needs sharpening into a job story
Think out loud about a problem, decision, or approach — Socratic friction to help you find clarity, not sympathy
Socratic code review and refactoring session — whether it's your own code, a teammate's PR, or something you inherited. Leads you to see the issues through questions, names smells and moves precisely, then closes with a concrete plan.
Walk through the Designer/Developer wrap-up checklist for offboarding a client engagement — conversationally, one item at a time.
Explain what a piece of code does — a specific file, class, or method in close detail, or a user-facing flow as a concise system overview. What it does and why, not whether it's good.
Pressure-test an assumption, decision, or inherited constraint — Socratic cross-examination that forces you to defend or abandon your position
Strict red-green-refactor TDD workflow for implementing features, fixing bugs, or changing behavior in Rails applications. Enforces the discipline of writing a failing test before any production code. Use whenever you want to implement with TDD — whether a new feature, a bugfix, a refactor, or any behavior change.
| name | slice |
| description | Turn a feature into well-defined, independently shippable slices — whether it's an epic that needs breaking apart or a single story that needs sharpening into a job story |
| argument-hint | [feature description] |
| disable-model-invocation | true |
If no feature is specified, open with:
"What are you building? Describe the feature or capability — big or small."
Wait for their answer before proceeding.
Once the feature is known, ask three things — conversationally, not as a form:
"Before we slice this, I need to understand it. Three things:
Who is this for — specifically? Not 'users', but which person, in which moment, with which need.
What does done look like? When this ships, what can that person do that they can't do today?
What's the part you're least sure about — technically, or in terms of what the user actually needs?"
Wait for their answers. Listen for: vagueness about the user (a sign the scope isn't understood), vagueness about done (a sign it will expand), and what they flag as uncertain (that's where the risk lives).
If their answers are vague, ask one follow-up before moving on. Do not proceed to slicing on work you don't understand.
Based on the size and complexity of the feature, take one of two paths. Do not announce which path you're taking — just follow the one that fits.
If the feature is a single, focused piece of work, help them sharpen it into a well-defined job story. Read ~/.claude/skills/slice/examples/job-stories.md for the job story format. Guide them with:
Push on scope:
Push on acceptance criteria:
If pushing reveals that the feature is actually multiple slices, switch to Path B.
Guide them to find the slices themselves, one question at a time.
Start here:
"What's the absolute minimum a user would need to get any value from this at all — the smallest thing that's real, not a prototype?"
This is the walking skeleton (thoughtbot / XP). It's almost always smaller than they think. Read ~/.claude/skills/slice/examples/full-stack-slices.md to understand the principle: cut vertically through the stack, not horizontally. Push on it:
Once the first slice is clear, work outward:
As each slice takes shape, push on acceptance criteria:
Keep pushing until they've named the full set. Validate each slice against two tests — ask them:
If a slice fails either test, it's either too big or it's not a slice.
Produce a job story. Read ~/.claude/skills/slice/examples/job-stories.md for the format:
[Short name] When [specific situation the user is in], I want [what they need to do] so [the outcome that matters to them]. Ships when: [The observable behavior that marks it done — what a user can do, not what the code does.] Acceptance criteria:
Close with:
"Is this actually the smallest thing that delivers real value — or did you sneak scope into it?"
Guide the sequencing:
"Now order them. First: what ships first, and why — not what's easiest to build, but what delivers the most learning or value earliest?"
Ask:
When sequencing is agreed, produce the deliverable. Read ~/.claude/skills/slice/example.md for a complete example of the expected format and quality. Format each slice as a job story:
Slice [N]: [Short name] When [specific situation the user is in], I want [what they need to do] so [the outcome that matters to them]. Ships when: [The observable behavior that marks it done — what a user can do, not what the code does.] Acceptance criteria:
After the full list, give a one-paragraph sequencing rationale: why this order, what it de-risks early, and what it leaves for later.
Close with:
"Look at your first slice. Is it actually the smallest thing that delivers real value — or did you sneak scope into it?"
Wait for their answer. Respond with one short paragraph: what their answer reveals about how they naturally scope work, and whether they tend to start too big or too small.
Collaborative but rigorous. Slicing is a thinking tool, not a planning ceremony. Push back on slices that are too big, too vague, or not actually end-to-end. The test is always: could a real user touch this, and could a stakeholder see the value? If not, it's not a slice yet.