new-adrlisted
Install: claude install-skill pjlangley/ff
# new-adr
Create a new architectural decision record in `fragments/adrs/` and update the README index in one step.
## When to use
Invoke when the user asks to create / draft / write / record an architectural decision. If the decision is already
described in the conversation, draft from that context. Otherwise ask one consolidated question for: title, the chosen
option, and a brief context — then proceed.
## Procedure
1. **Compute the next number.** List `fragments/adrs/`, find the highest existing `NNN_*.md`, add one, zero-pad to three
digits. Numbers are never reused — even if a previous ADR was rejected or deleted, do not fill its slot.
2. **Derive the filename.** `NNN_title_with_underscores.md` — snake_case, ASCII only, drop punctuation.
3. **Default the metadata.** `Status: Accepted` and `Date:` = today's actual date (`YYYY-MM-DD`) unless the user says
otherwise. Other valid statuses: `Proposed`, `Rejected`, `Deprecated`, `Superseded by [NNN](NNN_title.md)`.
4. **Write the file** at `fragments/adrs/NNN_title_with_underscores.md` using the canonical structure below. Include
`### Consequences` and `## More Information` unless the user explicitly asks to omit them — both are optional but
usually present.
5. **Update the README index.** Append a new row to the `| ADR | Date | Status |` table under `## Decision records` in
the **repo-root** `README.md` (i.e. `./README.md`), linking to the new file.
6. **Format.** Run `deno fmt fragments/adrs/<new-file>.md .