From Aktagon

Your ADRs are AI context. Lint them like code.

ctxgrd is a CLI linter for the structured markdown your team and your AI both depend on. ADRs, PRDs, runbooks — every .md file with frontmatter and an ID. Same input, same output, same exit code.

Lint your context. · Markdown only. On purpose.

ctxgrd

Lint at compile-time

A CLI linter for ADRs, PRDs, runbooks. Markdown only. On purpose. First-touch is silent — quiet on unclaimed files in any tree.

Linting 1,200 ADRs and PRDs across a Hugo monorepo.

ctxgrd0.18s
markdownlint2.4s
lychee4.7s
remark-lint7.1s
custom CI script19.8s
asking Claude26.4s

Synthetic. Numbers TBD by real benchmark run.

"Our ADRs were rotting faster than we could review PRs. ctxgrd in CI catches the drift before it ships."

Placeholder Name

Staff Engineer, Mid-Market Co.

"Dropped it into a Hugo monorepo expecting a thousand false positives. Found the seventeen real ones and stopped."

Placeholder Name

Principal Engineer, Healthcare

"The AI context determinism argument is real. Our Claude Code sessions stopped hallucinating ADR numbers the week we wired ctxgrd into pre-commit."

Placeholder Name

VP Engineering, FinTech

built in the open

Open source, MIT-licensed. The whole binary is one Rust executable; nothing to deploy, nothing to run as a service. Inspect the source, run it locally, drop it into CI.

May 2026 · aktagon.com

Cargo check for prose: making LLMs deterministic with structured pointers

Why your ADRs and PRDs are now production artifacts, and what it takes to keep them coherent enough that an LLM can read them back.

April 2026 · Release notes

ctxgrd v0.4.0: intent-based classification, external sources, JIRA support

A walkthrough of the intent-claim mechanism (id-claim or path-claim), and how external source scripts let ctxgrd lint documents from anywhere.