Evidence captured
Developer decisions by agent harness
defines which Claude Code decisions are explicit and which missing signals
produce pathless or no Facts.
Before you begin
Install the CLI and get a capture token with Configure local capture. Start Claude Code once so that~/.claude exists.
Install capture
-
Connect the CLI to the Sediment endpoint:
-
Install capture in the repository:
Replace
alicewith your developer identifier. The installer adds aPostToolUseentry to~/.claude/settings.json, installs the repository git hooks, and writes the telemetry environment from the saved login. -
End active Claude Code Sessions, then load the environment and start Claude
Code in the repository:
Configure Developer decisions
The environment thatsediment install writes turns on Claude Code’s
OpenTelemetry Protocol (OTLP) logs and sends them to Sediment. If mobile device
management (MDM) or a service owns the environment, set the variables in
Distribute decision telemetry
there instead.
A user’s approval or refusal has explicit=true. An approval from
configuration or a hook has explicit=false.
Configure inference-call capture
If your deployment routes Claude Code through a gateway, your operator sets the gateway URL and credential in Claude Code’s managed settings, as described in Distribute gateway routing. You don’t need a gateway credential, andsediment install doesn’t change the
route.
While the gateway credential is active, Claude Code doesn’t use your claude.ai
subscription. The Claude desktop app reads gateway routing from its own
configuration and ignores these managed settings.
Configure Edit observations
Transcript capture sends applied edit text and the file’s content at Session end, so it’s off until you opt in. Rerun the installer with--transcripts
added to your usual flags, and restart Claude Code:
SessionEnd extractor and a PreToolUse snapshot hook.
The extractor emits Edit observations for successful Edit and Write calls,
plus Rejected edits, Retry linkages, and external line counts.
Opt in to transcript capture
covers the --no-env case.
Verify capture
Remote checks need a separate operator login.-
Check the configuration, and note the current counts:
- Ask Claude Code to edit a file, and commit the change.
-
Read the commit’s Session note:
-
After telemetry flushes, run
sediment factsagain.developer_decisionsgrows. With transcript capture,edit_observationscan also grow after the Session ends.
sediment doctor --agent doesn’t support Claude Code, so compare counts
instead.
Limits and troubleshooting
- A Session that crashes or misses
SessionEndcan lack Edit observations without losing Developer decisions or commit Attribution. - Transcript capture omits raw conversations, prompts, Read results, tool results, and the environment. Inference-call capture includes model inputs and outputs.
- Transcript survival covers
EditandWrite.NotebookEditand legacyMultiEditfall back to commit Attribution. - External line counts require a complete snapshot and observation chain for the file.
- If a saved Session missed extraction, follow Recover transcript pairs.
- If
doctor --fetchreports a notes-ref failure, follow Repair a notes ref.