Your team already
decided this.
Twice a quarter somebody reopens a question that was settled in a pull request eight months ago, because the reasoning was in a review thread and the person who wrote it has left. Clearly writes the decision down while the context is still warm, and answers when the question comes back.
Every documentation tool describes what. Almost none keep why.
This is the distinction that decides whether a tool is worth adding, and it is worth being precise about because most comparisons blur it.
Code documentation
Explains how the system works and tracks the code as it changes. Genuinely useful, and it answers a different question — a new engineer can read it and still not know why the retry is exponential rather than fixed.
Published docs
Written for people outside the team — APIs, guides, reference. Deliberately hides the internal argument, which is exactly the part your own engineers need and the part that gets lost.
Decision records
What was chosen, what was rejected, and who argued which way. The knowledge that walks out of the building when a person does — and the only kind that stops a team re-litigating a settled question.
Three steps, one command
The work already happened across commits, a review argument and an incident channel. Nothing here asks anybody to fill in a template.
It reads the work
One pass across the commits, pull requests, issues and channels you connect — diffs and discussion, not your whole Slack. Every source is one you named and can revoke.
It writes the decision
What was chosen, the reasoning, the options turned down and who argued against them. Each claim links back to the commit or message it came from, and anything unsourced is left blank rather than guessed.
It files and links the note
Markdown in your repo, with a stable filename, linked to every note it touches. The archive gets denser rather than longer, so the tenth note makes the first nine easier to find.
Where a decision record earns its place
Two of these rows favour a wiki, and they are real. A hand-written page can carry judgement and long-form argument that nothing automated will match.
| What you need | Wiki page | Written decision record |
|---|---|---|
| Exists without anyone remembering to write it | — | ✓ |
| Records the option you rejected | — | ✓ |
| Names who argued the other way | — | ✓ |
| Every claim traceable to a commit or message | — | ✓ |
| Lives in the repo, versioned with the code | — | ✓ |
| Readable by your coding agent | — | ✓ |
| Long-form architecture narrative | ✓ | — |
| Non-engineers can edit it comfortably | ✓ | — |
The honest split is that both belong. Keep the wiki for the narrative a person should sit down and write. Let the decision record carry the hundred small, expensive choices nobody will ever schedule an hour for.
Nothing here is a place you have to migrate to
Notes are files in your repo
Plain markdown, committed with your code. No database, no export, no migration if you stop. Remove the tool and the archive is untouched — you had the only copy that mattered the whole time.
It never writes code
Read access to the work you point it at, write access to one documentation directory. It cannot open a pull request, push a branch or touch a file outside the folder you name.
Sources stay yours
It reads only what you connect, and every connection can be revoked. It reads diffs and the discussion around them — not an entire workspace on the chance something useful is in there.
The rest of the case
Free ADR generator
Paste a pull request or describe the decision and get a formatted architecture decision record back. No account, nothing to install.
ADR vs wiki
Two formats that fail in opposite ways, and how to tell which failure you currently have.
Why agents need the why
A coding agent that cannot see the reason for a constraint will refactor it away. Decision records are how you stop that.
The questions we always get
01How is this different from asking an AI to summarise a pull request?+
02We already have Confluence. Why would we add anything?+
03Where do the notes actually live?+
04Can it write code or open pull requests?+
05What stops it inventing a rationale that nobody actually had?+
06Does this replace architecture decision records?+
Stop paying twice for the same decision
Once when you make it, and again every time somebody has to reconstruct it. Try the generator on a pull request you already merged.