agentleFS
ZunoSmartLabsZunoSmartLabs/zsl-superpowers/skills/engineering/decision-mapping/SKILL.md

decision-mapping

Skill2 starsChanged 52 days agoMITView on GitHub

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.

9 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use design-an-interface, loop-me and 8 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • simo97Skill

    design-an-interface

    Generate multiple radically different interface designs for a module using parallel sub-agents. Use when user wants to design an API, explore interface options, compare module shapes, or mentions "design it twice".

    Also in 5 projects that use this

  • RoentekSkill

    loop-me

    Grill me about specs for the workflows I want to build, within this workspace.

    Also in 4 projects that use this

  • simo97Skill

    obsidian-vault

    Also in 4 projects that use this

  • LesaniSkill

    writing-beats

    Shape an article as a journey of beats, choose-your-own-adventure style. The user picks a starting beat from the raw material, you write only that beat, then offer options for where to pivot next, beat by beat, until the article reaches a natural end. Use when the user has raw material and wants to assemble it as a narrative rather than an argument.

    Also in 4 projects that use this

  • LesaniSkill

    writing-shape

    Take a markdown file of raw material and shape it into an article through a conversational session — drafting candidate openings, growing the piece paragraph by paragraph, arguing about format (lists, tables, callouts, quotes) at each step. Use when the user has a pile of notes, fragments, or a rough draft and wants help turning it into something publishable.

    Also in 4 projects that use this

  • kennethkeimSkill

    ubiquitous-language

    Extract a DDD-style ubiquitous language glossary from the current conversation, flagging ambiguities and proposing canonical terms. Saves to UBIQUITOUS_LANGUAGE.md. Use when user wants to define domain terms, build a glossary, harden terminology, create a ubiquitous language, or mentions "domain model" or "DDD".

    Also in 3 projects that use this

  • +2 more from simo97
  • +1 more from Lesani

The file

We split this skill into the rules it gives an agent

2 rules. 0 are common, 1 is distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 9 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    When the map is mature — decisions settled enough, slices sequenced — hand off to

    line 35
  2. Very specific:

    Write the map to .scratch/decision-maps/<slug>.md, matching this repo's state convention (the same .scratch/ tree the issue tracker uses).

    line 47

“Common” is measured: kept by at least 6 in 10 of the 9 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Decision Mapping

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 the CONTEXT.md and ADR formats and the DDD reasoning here. (Don't author CONTEXT.md from 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 for grilling itself.

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:<option> — <one-line why>`) and its dependencies on other decisions.
  • Slices — the ticket-sized pieces the settled decisions imply, in dependency order (the rough wave plan /to-issues will later formalise).
  • Open questions — what still needs a prototype, a spike, or a conversation.

Explicit non-goals

  • Not AFK-wired. Decision mapping is a local, interactive skill. It is not part of the /afk-fanout → /afk-worker overnight loop, and wiring its maps into that remote pipeline is an explicit non-goal — maturing a fuzzy idea needs a human in the loop, not an unattended remote session. (If a future investigation changes that, it's a separate piece of work.)
  • Not a PRD. The map is pre-PRD scaffolding. It stays in .scratch/decision-maps/ and is never itself published to the tracker — /to-prd produces the tracked PRD.
  • Not a CONTEXT.md author. It reaches for domain-modeling to reason about domain terms, but it doesn't commit CONTEXT.md entries from a half-formed idea.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.