slice: split a Feature into small stories
A Feature is too big to build, check, and ship in one go, and big pieces hide their risk. slice splits it into
stories sized XS to L, each with promises a person can check, the layers it touches, and
the order to build them in.
| Field | Value |
|---|---|
| In plain words | Splits a Feature into small stories, each with checkable promises, the parts of the code it touches, and its order. |
| Journey stage | Break it down |
| Accountable seat | Product Strategist (Arjun) |
| Does the work | Arjun, the Accountable seat's twin, in the plan model lane, with the seat's paired human when it has one |
| Consulted | Code Architect (Vishwa), Engineering Manager (Drona) |
| Informed | AI Native Engineer (Nakul) |
| Layers it can touch | every layer |
| Who reasons | your agent's own model, inside the skill |
| Writes as | the bot identity (a GitHub App); without one, your identity, tagged as human fallback |
| Where it runs | the aayu command, a skill in your agent, an MCP tool (read-only unless [mcp] expose_writes is on) |
| The skill your agent reads | skills/slice/SKILL.md |
When to use it
- A Feature is filed and you need stories you could each build in a day.
- A story turned out to be XL: it cannot pass Ready, so slice it into stories of L or smaller.
- You have a request in words and no issue yet: the skill unpacks it into a Feature first, then slices it.
Only one change, already small? Write it as a story with grill. Planning how to build a story is
plan.
Run it
Ask your agent with the Feature's number. It reads the Feature, drafts the stories, has aayu check the draft, and
creates them once every problem is fixed.
Use the slice skill to split Feature 42 into stories, and show me the draft before you create them.
aayu slice <feature>
| Input | Required | What it does |
|---|---|---|
<feature> |
yes | Feature (or XL story) to slice. |
--draft |
no | JSON file with the stories the host's model sliced (evals/schemas/slice.json); without it slice reports the footprint to slice within. |
--create |
no | Create the validated stories under the Feature (through the actions log) and close an XL story as split; without it slice only validates. |
The final step is aayu slice 42 --draft slice.json --create.
What you get back
New story issues under the Feature, created in dependency order. Each has an effort: label, a Completion Goal of
numbered criteria, one layer:Lxx label per layer it touches, and a link to each story it depends on. An XL story
you sliced is closed as split. Questions the Feature does not answer come back as open questions, not as criteria.
You should see the new stories listed under the Feature, each with its layer: labels. Without --create,
nothing is written: slice only checks the draft.
Gates
It checks these before it acts, and stops when one fails:
- validator: The work item passes stage validation for its type.
- halt: The repository is not halted (aayu halt).
Every story is held to the Feature's scope: a criterion with no words in the Feature behind it becomes an open question, so nothing is added or restricted that nobody asked for.
What only a person does
The registry reserves no step of this verb for a person.
You agree the split: does each story deliver something you could show someone, and is anything missing? A person comes in again when each story is made Ready.
What's next
- Plan each story one layer at a time:
plan. - See a Feature become five stories in the story: the plan.
- Every skill.