AI-native documentation platform
Canon indexes every markdown file in your repos, analyzes every PR against your docs, and verifies that your code actually implements what was specified. When reality changes, docs update automatically.
Install a GitHub App. Write specs in structured markdown. The AI agent handles PR reviews, ticket sync, doc-update PRs, and code-aware verification—across your entire org.
See it in action
The Spec Explorer dashboard gives you real-time visibility into documentation health across every repo.
The problem
The moment a PR merges, some document somewhere becomes inaccurate. Nobody notices until a new hire reads it, a customer hits a bug, or an audit fails.
The feedback loop
Canon creates a continuous loop between specs, code, and documentation. Every PR makes the system smarter. Every merge keeps docs accurate.
Define requirements, acceptance criteria, owners, and teams in markdown. Specs live in your repo—version controlled, reviewable, and always the source of intent.
On every push, Canon indexes specs, READMEs, ADRs, architecture docs, and guides. Every doc becomes searchable and available as context for AI analysis.
Each spec section generates a ticket in Jira, Linear, or GitHub Issues. Links are embedded as hidden comments. Engineers work tickets as normal.
The agent analyzes the diff against all indexed docs—not just specs. It evaluates whether acceptance criteria are realized in code, flags conflicts with existing docs, and identifies undocumented behavior.
The agent generates doc-update PRs for any affected markdown—specs, READMEs, guides, architecture docs. Spec sections auto-transition to "done" when the code verifies all acceptance criteria.
A scheduled scan compares doc freshness against code changes. If code changed but related docs didn't, the agent opens an issue with links to the relevant PRs and suggests updates.
Updated docs feed back into the knowledge base — richer context for the next PR analysis.
Capabilities
Canon installs as a GitHub App and works across your entire organization. Write specs, push code, and let the agent handle the rest.
Every markdown file in your repos is indexed and searchable—specs, READMEs, ADRs, architecture docs, runbooks, changelogs. One search surface for your entire org's documentation, powered by hybrid semantic + keyword search.
The agent doesn't just check if a ticket is closed—it reads the code to verify that acceptance criteria are actually implemented. Each spec section shows realization status with links to the PRs and files that fulfill it.
When a PR opens, the Claude agent analyzes the diff against all relevant docs. It identifies which spec sections are addressed, flags discrepancies, and catches when READMEs or architecture docs are affected by the change.
Spec sections generate tickets in Jira, Linear, or GitHub Issues. Tickets sync bidirectionally—close a ticket and the spec updates; mark a section done in a PR and the ticket closes. No manual status juggling.
When a PR merges, the agent generates a follow-up PR with suggested updates to any affected markdown—specs, READMEs, guides. Review and merge the doc PR, or dismiss it. The agent learns from your feedback.
Track completion across sections and acceptance criteria for every spec. The Spec Explorer dashboard shows org-wide coverage broken down by repo, team, and status. Know exactly what's shipped and what's still planned.
Developer experience
Canon meets developers in their existing tools. No context switching, no new workflow to learn.
Setup
Canon runs on your infrastructure. No SaaS vendor, no data leaving your environment. Deploy with Helm or Docker Compose and connect your GitHub org.
One click installs Canon across your org. It subscribes to pushes, PRs, and issues. Select all repos or choose specific ones.
Use the Helm chart for Kubernetes or docker compose for local development. See the self-hosting guide for full details.
Add structured markdown to docs/specs/ in any repo. Optionally add CANON.yaml for per-repo config. Every push indexes your docs, every PR gets AI analysis against all relevant documentation.
Integrations
Canon plugs into the tools your team already uses. No migration, no rip-and-replace.
Install the Canon GitHub App on your organization. Self-hosted, open source, and free to start. Your documentation will never go stale again.
This PR implements retry logic for the payments service. It addresses 2 of 3 acceptance criteria in payments-overhaul.md §3.2 and introduces a new error type not yet documented.
src/payments/retry.ts:42README.md§Error Handling — missing PaymentTimeoutErrordocs/architecture.md§Retry Strategy — references "3 retries," now stale