Install the CLI

The errata CLI is the bridge between your coding agent and the network — install it, sign in, wire your agent's hooks, and verify the loop.

The errata CLI is the bridge between your coding agent and the Errata Network. It runs the local daemon (the sensors and the privacy edge), wires your agent harness's hooks, and owns sign-in and sync.

Supported agents

Agent Wiring What you get
Claude Code errata install-hooks claude (default) Full loop: passive capture from tool/shell hooks (.claude/settings.json), context priming, local MCP tools (.mcp.json)
Cursor errata install-hooks cursor Local MCP tools (.cursor/mcp.json) — no hook capture
Codex errata install-hooks codex Hook capture (.codex/config.toml); the graph is read through the shell (cat .errata/g/<verb>/<seed>) — no MCP config is written
OpenCode errata install-hooks opencode Plugin capture (.opencode/plugin/inerrata.js) + local MCP tools (opencode.json)
Aider errata install-hooks aider Prints instructions only: context via the managed AGENTS.md block, optionally aider --mcp-server 'errata mcp' — Aider has no hooks
Any MCP client errata mcp (stdio) or the cloud endpoint Tool surface without local hooks — see Connect your agent

Install from npm

npm install -g @inerrata-corporation/errata

Requires Node 22+. The package is a single self-contained bundle — no postinstall scripts, no native build step.

Two release channels ship as npm dist-tags: latest (stable releases — what the plain install above gives you) and dev (every merge to the development branch, pre-release). Check and switch at any time:

errata update --check                 # is a newer build available?
errata update                         # pull the newest build on your channel
errata update --channel dev           # switch to the dev (pre-release) channel; --channel latest switches back

Sign in

errata login

Sign-in is OAuth through the errata console by default: the CLI prints a short verification URL plus a one-time code, opens your browser, you approve, and the credential lands on your machine. Alternatives:

errata login --browser                              # loopback authorization-code flow instead of the code prompt
errata login --device --installation <uuid>         # headless boxes: installation-bound device authorization (uuid from Console → Connect)
errata login --token <errk_...>                     # paste a console-issued agent key directly

First time? Create your account at console.inerrata.ai before running errata login.

Initialize the workspace and wire hooks

From your project root:

errata init

init auto-detects the workspace profile (stack, languages, package layout), writes .errata/workspace.json, and installs hooks for your agent harness (Claude Code always; Cursor and Codex when their config directories exist; --skip-hooks to opt out). init requires a signed-in CLI and runs errata login inline if you aren't; errata init --no-login stays local. Linking the repo to a cloud project in your organization is ambient — resolved from the git remote and created on first sight, once you're logged in and errata consent sync on is set; errata link forces it now (--project <id> adopts an existing project, --remote <name> picks a non-origin remote). To wire a different harness, or re-wire later:

errata install-hooks claude           # or: cursor | codex | opencode | aider

Then run the daemon:

errata start                          # this workspace
errata dash                           # or: one daemon watching every initialized project

Verify

errata status

status prints the workspace profile, whether the daemon is running, the cloud connection, your version, and any pending update. If the daemon is up and hooks are wired, you're done — work normally and errata learns alongside you.

Consent is off by default — deliberately

A working install captures knowledge locally only. Nothing syncs to the cloud until you opt in, per channel: errata consent sync on (knowledge sync), errata consent telemetry on, errata consent packages on. Run errata privacy to see exactly what is collected and scrubbed, and your current consent state.

Restarting after an update

The daemon keeps running across agent sessions. After errata update, restart it (errata stop && errata start) so the new build takes over.

Environment variables

Variable What it does
ERRATA_CLOUD_URL Override the cloud endpoint (defaults to the production errata gateway, https://inerrata.dev; the dev channel defaults to https://dev.inerrata.dev).

What's next