create-adrlisted
Install: claude install-skill NarekManukyan/flutter-mobx-kit
# Create an ADR
Format: [MADR 3.0](https://adr.github.io/madr/). Template: [`docs/adr/0000-template.md`](../../../docs/adr/0000-template.md). Index: [`docs/adr/README.md`](../../../docs/adr/README.md).
## Does this need an ADR?
An ADR is for a decision that **had real alternatives** and constrains future work.
| Write an ADR | Do not |
|---|---|
| Choosing MobX over Bloc | Adding one more `@readonly` field |
| Banning use-case → use-case dependencies | Documenting how to write a use case → that is a playbook |
| Moving from `integration_test` to Maestro | Adding a Maestro flow |
| Deprecating `lib/shared/` | Moving one file out of it |
If the answer is a *procedure*, it belongs in a playbook under `.claude/skills/`. If it is a *rule with a rejected alternative*, it is an ADR. If it is a one-line constraint everyone must always follow, it goes in `AGENTS.md` — usually pointing at an ADR.
## Numbering and status
Next free number, zero-padded, kebab slug: `0018-short-decision-title.md`. Numbers are never reused, and an ADR is never deleted.
- **Proposed** — under discussion. Do not enforce it yet.
- **Accepted** — describes how the codebase works now. This is the normal status here: an ADR is written when the rule is real, not aspirational.
- **Rejected** — considered and turned down. Keep the file so the same proposal is not argued again from scratch.
- **Deprecated** — no longer applies, nothing replaced it.
- **Superseded by ADR-NNNN** — replaced. Set the old ADR's st