init
Initialize a new ADR repository.
Usage
adrs init [OPTIONS] [DIRECTORY]
Arguments
| Argument | Description |
|---|---|
[DIRECTORY] | ADR directory path (default: doc/adr) |
Options
| Option | Description |
|---|---|
--ng | Use NextGen mode (YAML frontmatter) |
-C, --cwd <DIR> | Working directory |
-h, --help | Print help |
Description
The init command creates:
- A
.adr-dirfile in the current directory containing the ADR directory path - The ADR directory (creates parent directories if needed)
- An initial ADR:
0001-record-architecture-decisions.md
Examples
Basic Initialization
adrs init
Creates:
.adr-dir # Contains "doc/adr"
doc/
adr/
0001-record-architecture-decisions.md
Custom Directory
adrs init decisions
Creates:
.adr-dir # Contains "decisions"
decisions/
0001-record-architecture-decisions.md
Nested Directory
adrs init docs/architecture/decisions
Creates the full directory path.
NextGen Mode
adrs init --ng
Creates the initial ADR with YAML frontmatter:
---
status: accepted
date: 2024-01-15
---
# Record Architecture Decisions
...
Error Handling
If the repository is already initialized (.adr-dir exists), the command will fail:
Error: ADR repository already initialized
To reinitialize, remove the .adr-dir file first.