← ALL SKILLS
── SKILL
decision-logOperator System & Context · no setup

Stop re-litigating decisions you already made.

A running log where each entry captures the decision, the context, the options, the why, and when to revisit.

Inside: The five-field entry, searchable records, and revisit triggers.

HOW TO USE THIS SKILL
1
In Claude Code (one command)
Copy the install line, paste it into your terminal, and restart Claude Code. The skill installs itself to ~/.claude/skills/ and runs automatically when it is relevant.
2
In Claude, ChatGPT, or a Project (no terminal)
Open the file, then upload it to your chat or paste its contents in. A skill is just a markdown file of instructions, so any capable AI can follow it.
New to skills? A skill is a plain-text file that teaches your AI a workflow. Point any capable assistant at it and it follows the steps, on your data.

Runs today on what you paste. Connect any of these and it pulls live, cross-references, and goes deeper, no code required. See how to connect in Claude or ChatGPT.

Runs in your AI
ClaudeChatGPTGeminiCopilot
Docs, repo & knowledge
NotionGoogle DriveConfluenceGitHub

Decision Log

What this does

Captures a decision the moment it is made, in a form future-you can search and trust. Each entry names the decision, the context that made it necessary, the options on the table, the reason one won, and the condition that should make you revisit it. Six months from now, when someone asks "why is it built this way," the answer is one grep away instead of a debate. It writes one entry at a time and never touches the log without your go-ahead.

What you'll need

You do not need to connect anything to get value today. Describe the decision and the skill drafts the entry. Connect the tools below and it appends to your real log and keeps the numbering straight.

  • Works today with: the decision and the thinking behind it, described or pasted. It produces a clean, structured entry.
  • More powerful connected to a repo: it appends entries as numbered markdown files you can grep, diff, and review.
  • Sharper with a notes or wiki tool: the log lives where the rest of the project context lives.
  • Sharper with a context pack or handoff: decisions logged here feed straight into orientation for the next session.

How this runs at your connection level

This skill is never reliant on a connector. It drafts the entry from what you tell it and gets more useful as you connect somewhere to keep it. It never writes to the log without approval.

  • Bring your data: describe the call you made. The skill drafts the full entry today, in standard structure. No connection required.
  • Connect your tools: it appends the entry to your log, assigns the next number, and keeps the format consistent, once you approve.
  • Just exploring: no decision to log yet? Get the entry template and a worked example, so the format is ready when the call comes.

Every run ends with the one open question the decision leaves behind, so the next entry has a head start.

Customize this for yourself

This was built for an operator who makes real calls and hates re-arguing them. Set these to your setup:

Set this What it is Default / Example
LOG_HOME where entries live a git repo, /decisions; a notes tool
ENTRY_FORMAT one file per entry, or one running doc numbered markdown files
ID_SCHEME how entries are numbered 0001, 0002, ... (zero-padded)
STATUS_SET the states an entry can hold proposed, accepted, superseded
REVISIT_DEFAULT default revisit trigger "revisit if the constraint changes"
SUPERSEDE_LINK how a reversal points back new entry links the one it replaces

The five fields are fixed. Where the log lives and how entries are numbered are yours.

The method

The five-field entry (fixed)

Every entry carries exactly these, in order.

  1. Decision what was decided, in one sentence, stated as done.
  2. Context the situation and constraint that forced a choice.
  3. Options considered the real alternatives, including the one you rejected and why.
  4. Why the reason this option won over the others.
  5. Revisit when the condition that should reopen this, a date, a threshold, an event.

One entry at a time

Each call gets its own entry. The skill does not batch a week of decisions into one blob. One decision, one greppable record, one number.

Greppable by design

Plain markdown, consistent headings, a stable ID. So grep routing across the log finds every decision that ever touched routing, in seconds, forever.

Supersede, never erase

When a decision is reversed, you do not delete the old entry. You write a new one that links back and marks the old one superseded. The trail of why-we-changed-our-mind is as valuable as the decisions themselves.

Revisit triggers

Every entry ends with a condition to revisit, not a vague "someday." "Revisit when volume passes 10k/day" is a trigger. "Revisit later" is not.

Quality gates

  • Nothing is written to the log without your explicit approval. The skill drafts the entry and shows it; you decide if it lands.
  • No entry ships without all five fields. An entry with no "options considered" is not a decision record, it is a note.
  • A superseded decision is linked, never deleted. History stays intact.
  • The revisit condition is concrete, an event or a threshold, not "later."

Output (example)

DECISION 0007 · Route onboarding by company size · status: accepted

DECISION
  New signups are routed to an owner by company-size band, not by persona.

CONTEXT
  Persona routing mis-assigned ~1 in 3 signups. The team lost trust in the
  queue and started hand-sorting, which defeated the automation.

OPTIONS CONSIDERED
  - Persona match (rejected: too noisy, data was sparse on new signups).
  - Company-size band (chosen).
  - Round-robin (rejected: ignores fit entirely).

WHY
  Size band is reliably present on a fresh signup; persona is not. Fewer
  inputs, fewer ways to be wrong.

REVISIT WHEN
  Persona data coverage on new signups passes ~80%, or volume passes 10k/day.

(draft, not saved. approve to append as 0007 in the log)

Where the inputs come from

ID_SCHEME and STATUS_SET are defaults, not laws. Some teams like proposed/accepted/deprecated; some like a plain running doc with dates. The five fields are the standard because each one is a question future-you will ask. Change the packaging. Keep the fields.

Make it yours

Fork it. Add a "consequences" field, a "who was in the room" field, tags for the area of the system it touches. Cut what you never read back. The point is that no real decision is ever silently lost or re-argued from scratch. Built by an operator. Customize it, break it, make it better.

── GET NEW SKILLS IN YOUR INBOX

One operator-built skill a week. Free.