Skip to content
Back to skills

Adr Generator

ASecurity

Generate an Architecture Decision Record (ADR) from a context-decision-consequences brief. Supports the two common formats — MADR (Markdown Any Decision Records) and Michael Nygard's original ADR template. Use whenever the user wants to capture an architectural decision, write an ADR, or document a "we decided X because Y" moment.

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 19, 2026
ai-agentsgodatabase

Security analysis

A100/100

Pro scans all 6 files and shows the line behind each finding

Scanned October 2, 2026

npx -y skills add sananthanarayan/skilldrop --skill adr-generator --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Adr Generator?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Adr Generator
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/sananthanarayan-adr-generator/badge)](https://www.skillsdirectory.com/skills/sananthanarayan-adr-generator)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: adr-generator
description: Generate an Architecture Decision Record (ADR) from a context-decision-consequences brief. Supports the two common formats — MADR (Markdown Any Decision Records) and Michael Nygard's original ADR template. Use whenever the user wants to capture an architectural decision, write an ADR, or document a "we decided X because Y" moment.
---

# adr-generator

You help the user produce a clean, properly-numbered Architecture Decision Record.

## How to respond

1. **Pick the format.** Default to **MADR** (richer, has decision drivers + pros/cons per option). Use **Nygard** when the user explicitly asks for the "classic" or "simple" ADR, or when the decision is small enough that MADR feels heavyweight.

2. **Gather the essentials.** Before drafting, make sure you know:
   - **The decision being made** (one sentence — what changed)
   - **The context / forces** (why was a decision needed?)
   - **The options that were considered** (at least 2 — if only one option exists, this isn't really a decision)
   - **Why the chosen option won** (the trade-off)

   Ask at most 2 clarifying questions if essentials are missing. Don't fish for nice-to-haves like "decision drivers" — infer reasonable ones from the context.

3. **Number it correctly.** ADRs are numbered sequentially starting at `0001`. Ask the user where their ADRs live (commonly `docs/adr/` or `doc/architecture/decisions/`) and find the next number by listing the existing files. If no ADRs exist yet, start at `0001`.

4. **Pick the filename.** Use the slug form: `NNNN-short-title-in-kebab-case.md`. Examples:
   - `0001-record-architecture-decisions.md`
   - `0007-use-postgres-as-primary-datastore.md`
   - `0014-adopt-event-driven-checkout.md`

5. **Output.** Write the file using the appropriate template, then summarize the decision in 2–3 sentences for the chat.

## Templates

- [`templates/madr.md`](templates/madr.md) — MADR 3.0 format (recommended)
- [`templates/nygard.md`](templates/nygard.md) — Nygard's original (simpler, 4 sections)

## Quality bar

- **Status** must be one of: `Proposed`, `Accepted`, `Deprecated`, `Superseded by ADR-NNNN`. Default to `Proposed` unless the user says it's already been agreed. "We decided", "we chose" and "we're going with" all say it was agreed: write `Accepted`.
- **Title is a noun phrase**, not a verb phrase. ✅ "Postgres as the primary datastore" — ❌ "Decide what database to use".
- **Consequences must include trade-offs, not just upsides.** If you can't list a downside, the decision wasn't real.
- **Reference previous ADRs by number**, not by URL, so the cross-references survive folder restructures.
- **Don't editorialize.** An ADR records what was decided, not what you (the AI) think was wisest.

## Anti-patterns to avoid

- ❌ Writing an ADR for a non-decision ("use industry best practices"). If the title could appear in a textbook, it's not a decision record.
- ❌ Listing 6 options when only 2 were seriously considered. Cut the noise.
- ❌ "Pros: it's better" with no "Cons:" line.
- ❌ Filling in deciders, dates, drivers or history the user didn't give. Leave the field out or mark it `[not supplied]`; an invented fact in a decision record gets cited later as the reason.
- ❌ Embedding implementation detail (code snippets, table schemas) — ADRs are about *why*, not *how*.

Files in this skill

  • SKILL.md3 KB
  • evals/eval_queries.json850 B
  • evals/evals.json888 B
  • manifest.json726 B
  • templates/madr.md1.4 KB
  • templates/nygard.md640 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.