macOS
brew install adr-toolslocal Homebrew formula metadata
brew
CLI tool for working with Architecture Decision Records. Version 3.0.0 via Homebrew; verified 2026-05-26.
install
brew install adr-toolslocal Homebrew formula metadata
sudo apt install adr-toolsDebian stable package indexes · adr-tools · source: deb.debian.org
nix profile install nixpkgs#adr-toolsnixpkgs package indexes · pkgs/by-name/ad/adr-tools/package.nix · source: api.github.com
overview
CLI tool for working with Architecture Decision Records
history
ADR Tools is Nat Pryce's shell-based command-line toolkit for creating and maintaining Architecture Decision Records in a source tree. It became one of the reference implementations for teams that wanted ADRs as simple numbered Markdown files rather than a hosted documentation system.
The project records its own first ADR on 2016-02-12, deciding to use Architecture Decision Records for its architecture decisions. Its README positions the tool around a log of ADRs, with Markdown records stored under a project subdirectory, defaulting to `doc/adr`.
ADR Tools deliberately uses Unix shell scripts. The project ADR directory includes decisions such as implementing the tool as shell scripts, using a single command with subcommands, storing records in Markdown, invoking `adr-config` for installation-specific configuration, and using ISO-8601 dates.
The 2018 release series added repository upgrades, ISO-8601 date format support, arbitrary links between ADRs, graph visualisation output, generated tables of contents, bash completion, better help text, Git Bash support on Windows, and parent-directory search for ADR directories.
ADR Tools adopted the same source-control-native posture as ADRs themselves: its install documentation recommends Homebrew on macOS, release archives or Git on Linux/macOS, Git Bash or WSL on Windows, and shell autocomplete installation where supported.
The provided package metadata shows distribution through Homebrew, Debian, Ubuntu, and Nix. The GitHub repository's large star and fork counts also reflect broad recognition among architecture-documentation users, but its day-to-day adoption is usually invisible because the generated ADR files live inside other projects' repositories.
The common workflow is `adr init` to create an ADR directory, `adr new` to create a numbered Markdown record, and `adr help` for subcommands. The README says new records are opened in the user's editor through `VISUAL` or `EDITOR`.
Teams use it to keep architectural decisions close to code, review them like any other text change, and link or supersede older decisions as architecture changes. Generated graphs and tables of contents make it useful beyond the first few records.
ADR Tools is package-nerd significant because it is a tiny shell distribution that turns an architectural practice into a Unix command. Its behavior is easy to audit, easy to vendor, and easy for package managers to ship without a runtime stack beyond POSIX-ish shell tooling.
It also shaped conventions that other tools follow, especially the default `doc/adr` directory and numbered Markdown filenames. That convention is visible in adr-viewer, which defaults to the same path because ADR Tools generates it.
security posture
broad file, network, media, or database tool signal.
blue risk · medium confidence · tool
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
_adr_add_link | cli | global executable | |
_adr_autocomplete | cli | global executable | |
_adr_commands | cli | global executable | |
_adr_dir | cli | global executable | |
_adr_file | cli | global executable | |
_adr_generate_graph | cli | global executable | |
_adr_generate_toc | cli | global executable | |
_adr_help | cli | global executable | |
_adr_help_new | cli | global executable | |
_adr_links | cli | global executable | |
_adr_remove_status | cli | global executable | |
_adr_status | cli | global executable | |
_adr_title | cli | global executable | |
adr | cli | global executable | |
adr-config | cli | global executable | |
adr-generate | cli | global executable | |
adr-help | cli | global executable | |
adr-init | cli | global executable | |
adr-link | cli | global executable | |
adr-list | cli | global executable | |
adr-new | cli | global executable | |
adr-upgrade-repository | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/npryce/adr-tools
install metadata
| Package key | brew:adr-tools |
|---|---|
| Version | 3.0.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/adr-tools |
| Homepage | https://github.com/npryce/adr-tools |
| Repository | https://github.com/npryce/adr-tools |
| Upstream docs | https://github.com/npryce/adr-tools#readme |
| License | CC-BY-4.0 |
| Source archive | https://github.com/npryce/adr-tools/archive/refs/tags/3.0.0.tar.gz |
| Last updated | 2026-05-26T23:37:49-04:00 |
| Pulse | updated |
| Bottle | available (on all) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | adr-tools |
| Version Scheme | 0 |
| Revision | 0 |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
adr-tools 3.0.0-2
tools for working with a log of Architecture Decision Records
https://github.com/npryce/adr-tools
sudo apt install adr-toolsadr-tools
nix profile install nixpkgs#adr-toolsadr-tools 3.0.0-2
tools for working with a log of Architecture Decision Records
https://github.com/npryce/adr-tools
sudo apt install adr-toolssource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.