Skill Locker
All skills
v1.3.03 loop iterations

Decision Log

Three months later, someone asks 'why did we go with Stripe instead of Paddle?' and nobody remembers. The Decision Log captures the what, the alternatives, and — most importantly — the why, so settled questions stay settled and reasoning survives the people who left.

What this skill does

Decisions made in Slack threads, on calls, and in Claude chats evaporate. Three months later, "why did we go with Stripe?" gets four different answers and no source of truth. Worse — the same decision gets reopened repeatedly because nobody remembers it was already settled. A decision log creates the institutional memory most small teams and solo operators lack. This skill builds and maintains one.

Not every choice deserves an entry. The log is for decisions where reversing them would cost time or money, where multiple people need to know, where alternatives were genuinely debated, where future-you will forget the reasoning, or where the decision constrains future ones. Choosing React means not choosing Vue — that constraint is exactly the kind of fact that disappears unless written down.

Every entry has five components in a fixed structure. The Decision (one clear sentence — no ambiguity, two readers should reach the same interpretation). The Context (what triggered it). The Alternatives Considered (at least one, with the reason for rejection — one line each, not a full analysis). The Rationale (the two or three strongest reasons, plus any data that supported them). The Consequences (what this enables, what it constrains, what follow-up decisions it triggers). Plus a Revisit If condition — the specific trigger that should reopen the question.

Quick-log mode exists for fast capture. If the user provides enough detail upfront, the skill skips the interview and generates the entry directly, only asking follow-ups for genuinely missing critical fields. The point is to make logging frictionless enough that it actually happens — a log nobody updates is worse than no log at all.

The skill also runs staleness reviews. On request, it scans for decisions older than six months without revisit, decisions whose revisit conditions may now be met, decisions still marked Active on paused or completed projects, and contradictory entries that conflict. Decisions are superseded rather than deleted — the history matters, and a reversed decision tells you something about the trajectory of the project that a clean log doesn't.

The rationale field ages the best. "What" becomes obvious in hindsight; "why" is what stays useful for years. Writing for strangers — the version of you who's forgotten, the new hire who wasn't in the room, the cofounder who joined later — is the discipline that turns a private notebook into shared institutional memory.

When this triggers

  • ·You're making a decision you know you'll forget the reasoning behind in six months
  • ·Your team keeps reopening the same debates because nothing was ever written down
  • ·A new hire is asking why the codebase is structured the way it is and the answer is in someone's head
  • ·You want to track which decisions have a built-in revisit condition before they go stale
  • ·You're handing off a project and want the next person to inherit the reasoning, not just the result

Example

Trigger

User: 'Just decided to use Postgres over MySQL for the new product. Want to log this properly so the next time someone asks I have something to point at.'

Output

## DEC-2026-05-21-postgres **Decision:** Use Postgres as the primary database for [Product] **Date:** 2026-05-21 **Decided by:** James + Tech lead **Status:** Active **Tags:** #tech #infrastructure **Context:** Greenfield rebuild starting June. Needed to lock the database before infra setup begins next week. **Alternatives considered:** - MySQL: Rejected — team has more Postgres experience and the JSONB support matters for our event-data table. - SQLite: Rejected — single-writer limit doesn't suit our planned concurrency. **Rationale:** - JSONB columns for the event-data table avoid a separate document store. - Three of four engineers have shipped production Postgres; only one has prior MySQL. - Supabase compatibility for future managed hosting option. **Consequences:** - Enables: Use of JSONB, full-text search built in, RLS later if we move to Supabase. - Constrains: Team needs to standardise on Postgres tooling (pgAdmin, migrations via Prisma). - Triggers: Hosting decision (managed vs self-hosted) — log separately. **Revisit if:** We hit 10K+ events/sec sustained, or the team composition changes to majority MySQL-experienced engineers. --- Appended to decision log. Index updated.

Get this skill + 4 more

Get the full AI Memory pillar (5 skills) or the complete library.

Get the full stack — $299

What you get

  • 153-line SKILL.md, ready to drop into ~/.claude/skills/
  • Tested through 3 Karpathy-loop iterations (versions v1.0.0 → v1.3.0)
  • Triggers automatically when relevant — no command to remember
  • Lifetime updates as the skill is refined further

More from AI Memory

Browse the full library

297 skills across 31 categories. One purchase, lifetime updates.

See all bundles