Skip to main content

Prepare the local installation

Complete the Fact0 quickstart, create a local API key, and set the destination explicitly in the shell where you run Claude Code:
The core captures and inspects activity. It does not enforce policy or require OTLP. Claude Code continues to use your existing model account.

Prepare and install the collector

From the repository root, prepare the published 0.3.0 collector before the first session:
The wrapper downloads the versioned binary and verifies its checksum. No Go installation is required; preparation uses curl and either sha256sum or shasum. The supported binaries are macOS/Linux on arm64 and amd64. Downloads happen during preparation, not a timed Claude hook. Once installed, the collector itself needs only access to your Fact0 API. Install the published plugin in Claude Code:
For a local checkout, start Claude with its plugin directory:
Use a synthetic prompt first, perform a tool call and end the session. Open Coding Agents in your local dashboard to inspect prompts, supported assistant text, tool inputs/results, failures and linked execution spans.

Optional: build a modified or unreleased collector

Install the Go version declared in claude-code-plugin/collector/go.mod, then run:
The launcher prefers the fact0-cc-dev binary produced by this command. You can also select a separately built binary with FACT0_CC_BIN=/absolute/path/to/fact0-cc.

Capture modes

Raw capture may store prompts, source code, file paths, tool results and errors. Access is protected by your instance authentication, database permissions and local spool permissions. Preview truncation in the inspector does not truncate the stored full value; use the expanded view or download. Full capture does not mean every Claude interaction is observable. Missing, malformed, unsupported or oversized transcript content produces partial/unavailable status with a reason. Costs and token counts are estimates when their source data is available.

Delivery and recovery

Hooks first journal locally, then a background worker delivers to the API. Capture errors are reported without becoming policy decisions or blocking Claude actions. Run claude-code-plugin/bin/fact0-cc status to inspect configuration/delivery state and claude-code-plugin/bin/fact0-cc flush to retry pending work after restoring API connectivity. Requests are limited to 4 MiB. Batches split to fit; a single oversized record is reported as incomplete without silent truncation. Pending records use an owner-readable local spool capped at 256 MiB by default. Pending work is not silently evicted to admit new records. A full or unwritable spool reports failure; content cannot be promised retained in that situation. Increase the configured limit or resolve retained failures before retrying permanent size rejection. Verification uses the same authenticated Fact0 audit API. It checks recorded chain consistency, not complete Claude capture. See verification limits.