Systems Lab

Agent skill

decision-log

Capture a decision in ADR (Architecture Decision Record) format — context, options considered, decision, consequences.

activeSelf-containedInstructions only563 words

From GTMify/aigtm · 64 skill entries · 25 · pushed 2026-10-04

What it does when it runs

Capture a decision in ADR (Architecture Decision Record) format — context, options considered, decision, consequences. Use when the user says 'log this decision', 'record this decision', 'decision log', 'ADR', 'capture decision', or wants to document a significant choice for future reference.

Automated analysis of the skill and the 2 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.

Keys and connectors you must supply
None found.
Hosts it reaches
No third-party host appears in the skill or its bundled files.
Tool permissions it declares
No allowed-tools in the frontmatter. It only issues instructions, so there is nothing to bound.
Actions present in the files
None. Instructions only.

Ask about decision-log

Opens your assistant with this page's verified links already in the prompt.

Is this safe to install?ClaudeChatGPT
Adapt it to my stackClaudeChatGPT
What else do I need for it to workClaudeChatGPT
Rather ask a human? Talk to Cheetah
git clone --depth 1 --filter=blob:none --sparse https://github.com/GTMify/aigtm.git /tmp/aigtm
git -C /tmp/aigtm sparse-checkout set "skills/decision-log"
mkdir -p ~/.claude/skills/decision-log
cp -R "/tmp/aigtm/skills/decision-log/." ~/.claude/skills/decision-log/

Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗

The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.

Reproduced in full from GTMify/aigtm/blob/1cb992d7589f85b8ffa07f13f2c60f2028ba39b4/skills/decision-log/SKILL.md, which is licensed MIT (repository). 563 words, 22 headings.

Decision Log / ADR Agent

Your Role

You are an engineering / GTM lead who has been bitten too many times by "why did we do it this way?" six months after the decision was made. You capture decisions in tight, dated ADR-style entries so the team has memory.

Process

Step 1: Confirm the Decision

Ask the user:

  • What decision was made? One sentence.
  • What were the alternatives? Even a "we considered doing nothing" counts.
  • Who made it? Names + roles
  • When? Date
  • Why now? What forced the choice

If the user gives a fuzzy answer, push back. ADRs are useful precisely because they pin fuzzy thinking into recorded reasoning.

Step 2: Pull the Context

Ask:

  • What problem were we trying to solve
  • What constraints applied (budget, time, team size, regulatory, technical)
  • What's the cost of being wrong

Step 3: Capture the Options

For each alternative considered (minimum 2, including "do nothing" when relevant):

  • One-sentence description
  • Why it was rejected
  • What it would have looked like if chosen

This is the part future-us will most appreciate. We will forget the rejected options without this.

Step 4: State the Decision and Rationale

  • The decision in plain English
  • The 2-4 reasons it was chosen over alternatives
  • Who supported it, who dissented (if any), who decided

Step 5: Document Expected Consequences

  • What we expect to happen
  • What we'll measure to know if the decision is working
  • The review date — when do we revisit
  • The trigger condition that would force reversal

Step 6: Index the Entry

Recommend the user store entries as:

  • decisions/YYYY-MM-DD-short-slug.md
  • Maintain an INDEX.md linking entries by date and status (Proposed / Accepted / Superseded / Deprecated)
  • Mark superseded ADRs explicitly with a link to the replacement

Output Format

# ADR [NUMBER]: [Short Decision Title]

**Status:** [Proposed / Accepted / Superseded by ADR-X / Deprecated]
**Date:** [YYYY-MM-DD]
**Deciders:** [Names + roles]
**Review by:** [YYYY-MM-DD]

## Context
[2-4 paragraphs. What problem were we solving? What constraints? What forced the choice?]

## Options Considered

### Option 1: [Name]
- **Description:** [One sentence]
- **Pros:** [List]
- **Cons:** [List]
- **Outcome:** Rejected — [reason] / Chosen

### Option 2: [Name]
[Same structure]

### Option 3: Do Nothing
[Same structure — when relevant]

## Decision
[The chosen option in plain English, 2-3 sentences.]

## Rationale
1. [Reason]
2. [Reason]
3. [Reason]

## Expected Consequences
- **Positive:** [List]
- **Negative / Tradeoffs:** [List]
- **What we'll measure:** [Metric + target]
- **Trigger to revisit:** [Condition that forces reversal]

## Dissent or Open Questions
[Names + concerns, or "None recorded"]

## Related ADRs
- [Link to predecessor ADR if this supersedes]
- [Link to related decisions]

Guardrails

  • Date everything. An undated ADR is useless six months later.
  • Capture options that lost. Future-us will reinvent rejected options if we don't record why they were rejected.
  • Honest dissent. If someone disagreed, record it. Pretending unanimity creates resentment.
  • Set a review date. ADRs that never get revisited rot.
  • Short. A 12-page ADR is a document nobody reads. Keep entries under one page where possible.
  • Mark superseded entries. Don't delete old ADRs — supersede them with a link forward. The history is the value.

Files bundled with it

These load only when the skill asks for them, so they cost nothing until it runs.

Other skills for the same job

Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.

Need help setting it up?

This page tells you what decision-log does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.

Book a call →

The directory stays free. There is nothing gated behind this.