Skip to content
CLI works todayPre-alpha · decision memory in git

Decisions that reach the code.

adrkit turns architecture decisions into typed, locatable records — so the constraints your team accepted remain visible where the next change is made.

The schema, resolver, and CLI are implemented. CI comments, the evaluator, and the MCP server are clearly marked as planned.

Works today

Schema, corpus validation, graphing, migration, and path explanation.

Planned

Pull-request comments, deterministic evaluation, and MCP retrieval.

Pre-alpha

Run from source today. Registry packages have not shipped.

A decision should not disappear after the meeting.

Six months later, the same choice gets debated again. The code has drifted. The people — and now the agents — proposing the next change cannot see what was already accepted or rejected.

Most ADR tools preserve prose. adrkit preserves consequence.

Proof in the repository, not the pitch.

The current CLI reads typed frontmatter, validates the corpus, resolves what a record governs, and keeps migration additive.

  • adr lintWorks today

    Validate the corpus

    Check every record against the schema, enforce unique ids, catch dangling links, and flag accepted records that declare conflicts.

  • adr explainWorks today

    Locate governing decisions

    Give adrkit a path. It returns every decision that governs it and the matcher that fired — as readable output or JSON.

  • adr graphWorks today

    Inspect the decision graph

    Render supersession and relationships as Graphviz DOT or structured JSON instead of leaving the links trapped in individual files.

  • adr migrate –from madrWorks today

    Adopt without a rewrite

    Add adrkit fields to an existing MADR corpus in place. The migration is additive and preserves current tooling and prose.

One field makes a decision locatable.

affects declares what a record governs. That turns an ADR from passive documentation into data a tool can resolve.

  1. Declare the reach

    A record names the paths, packages, APIs, resources, or data it governs.

  2. Resolve the match

    A pure function compares a changed target with the corpus and explains every match.

  3. Surface the constraint

    Today, adr explain prints it. The planned CI and MCP surfaces will put it directly in review and agent context.

Built next, stated plainly.

These are committed directions, not shipping claims. Each remains planned until the repository proves otherwise.

  • Planned

    Pull-request context

    Comment with the accepted decisions governing touched files.

  • Planned

    Agent retrieval

    Expose accepted and rejected decisions through MCP before a new plan repeats an old argument.

  • Planned

    Deterministic evaluation

    Check published rules first, then route the conditions that need human judgment.

It never approves anything. It routes, and humans decide.

adrkit governs itself. The repository’s first commit is its own decision corpus, including the trade-offs and rejected alternatives behind the project.

Read the decisions that built adrkit