Decision Mapping¶
Bucket: Engineering ·
Slash command: /zsl:decision-mapping ·
Source: skills/engineering/decision-mapping/SKILL.md
User-invocable only
This skill is marked disable-model-invocation: true — Claude won't auto-trigger it, so you must invoke it explicitly with the slash command above.
What it does¶
Turn a loose, multi-session idea into a sequenced map of the decisions and tickets it implies, so it matures before becoming a PRD. Use at the front of the loop when an idea is still fuzzy, spans several sessions, or you want to see the decision dependencies and a rough build order before committing to a PRD.
The front-of-loop skill for an idea that isn't a PRD yet. You have a loose, possibly multi-session idea; before committing to a PRD you want to see the shape of it — the decisions it forces, how they depend on each other, and a rough sequence of the work it implies. Decision mapping produces that map: a living document of decisions (open, leaning, settled) and the ticket-sized slices that fall out of them, in dependency order.
This is user-invoked only (disable-model-invocation: true) — it's a
deliberate planning act, not something to auto-fire.
What it composes¶
Decision mapping is thin glue over the shared model-invoked primitives — it doesn't reimplement them:
grilling— drives the interview that surfaces each decision. Walk the decision tree one branch at a time, recording what's open, what you're leaning toward, and what's settled.domain-modeling— when the idea introduces domain terms or bounded-context questions, reach for theCONTEXT.mdand ADR formats and the DDD reasoning here. (Don't authorCONTEXT.mdfrom a half-formed idea — note the term and let it firm up.)/prototype— when a decision hinges on something you can only learn by building (a data-model shape, a state machine, a UI feel), spin a throwaway prototype to settle it, then fold the answer back into the map.
When the map is mature — decisions settled enough, slices sequenced — hand off to
/to-prd to synthesise it into a PRD on the tracker. Decision mapping matures
the idea; to-prd packages it; /to-issues then slices the PRD.
Taxonomy note. Decision mapping composes the model-invoked primitives (
grilling,domain-modeling) directly and never invokes another user-invoked skill — that's the repo's invocation rule. The grilling engine (grilling) is shared and composable; the user-invoked doc-writing grilling orchestrator is not, so decision mapping reaches forgrillingitself.
Where the map lives¶
Write the map to .scratch/decision-maps/<slug>.md, matching this repo's
state convention (the same .scratch/ tree the issue tracker uses). A map is a
working artefact that survives across sessions: you can leave it half-resolved,
come back, and pick up where the decision tree left off. One file per idea; name it
after the idea's slug.
A map typically holds:
- The idea in a sentence or two — what you're trying to do and why.
- Decisions — each with a status (
open/leaning: <option>/ `settled: