OpenCanon

Agent-ready. Human-readable. Runtime-enforced.

Install

Install OpenCanon once, then set up each repository with Project Canon that is agent-ready, human-readable, and runtime-enforced.

Prerequisites

  • Node >=24.12.0 for the installed CLI and local service.
  • A Git repository (Git-backed discovery is the default).
  • Optional agent host: Claude Code, OpenCode, Codex, or any MCP-capable tool.
  • No repository dependency install is required just to use OpenCanon.

Install the runtime

The installer fetches the signed runtime release for the current platform and makes the opencanon command available locally.

install
sh
curl -fsSL https://github.com/nick-vi/opencanon/releases/latest/download/opencanon-install.mjs -o opencanon-install.mjs
node opencanon-install.mjs
rm opencanon-install.mjs

Agent skills and entry files are guidance only. The installed runtime owns the CLI, local service, updater, project runtimes, engine, and local API.

Optional agent skill

Agent hosts that support skills can install the OpenCanon skill for progressive workflow instructions. The skill points back to the live CLI instead of shipping its own implementation.

agent skill
sh
npx skills add nick-vi/opencanon --skill opencanon -a codex -y

Initialize a repository

Run setup in the repository root. It creates source definitions, generated docs, fixtures, cache ignores, optional hooks, and an agent setup packet.

Commit generated docs, Project Canon definitions under opencanon/, fixtures, hook config, managed agent guidance, and package script. Generated state under .opencanon/ stays ignored.

setup
sh
opencanon setup --yes --hooks codex

Start the service

The global service starts project runtimes lazily. Repo state lives under .opencanon/ and is ignored by Git; the service registry lives under the OpenCanon home directory.

service
sh
opencanon service start
opencanon service status
opencanon project status
opencanon project open

Runtime manifest

Release installs use a manifest. Setup detects the current platform, selects the matching asset, verifies SHA-256, and writes runtime files atomically.

manifest
sh
opencanon update check --manifest https://github.com/nick-vi/opencanon/releases/latest/download/opencanon-runtime-manifest.json

Release producer flow

Maintainers publish through one script so versions, release checks, tags, GitHub workflow watching, and asset verification stay coherent. The release workflow builds engine assets for every supported target and uploads the manifest, runtime archive, channel files, and checksums.

publish release
sh
npm run release:publish -- <version>

Next

Continue with the Quickstart to load context, run Proof, and produce findings.