CClawMetryDocs

Runtime reference

NanoClaw#

NanoClaw gives each session its own pair of SQLite files — one the host writes and one the container writes — and reconstructs a transcript by merging them. Token data arrives indirectly, through the Claude Code state the host bind-mounts into the container.

Runtime idnanoclaw
CategoryContainerised agent runtime
VendorNanoco
TierPaid tier (Starter and up)
Upstreamgithub.com/nanocoai/nanoclaw

Where the data comes from#

ClawMetry reads these locations, in order, and never writes to any of them.

  • <checkout>/data/v2-sessions/<group>/<session>/inbound.db — host writes
  • <checkout>/data/v2-sessions/<group>/<session>/outbound.db — container writes
  • <data>/v2-sessions/<group>/.claude-shared/projects/… — mounted Claude state

Format. Two SQLite files per session; seq is unique across both tables (host writes even numbers, container odd), so a transcript is a merge sort on seq.

Environment variables#

VariableEffect
CLAWMETRY_NANOCLAW_DIRpoint at a v2-sessions dir or a checkout root

See Environment variables for the variables that apply to every runtime.

Tokens and cost#

Tokens. Not in the message tables. Real counts come from the bind-mounted Claude Code transcripts when the install is new enough to have them.

Cost. Derived from the mounted Claude transcripts. Installs older than the bind-mount degrade to a message-only view with no cost.

Why this section exists

Runtimes differ enormously in what they persist. Rather than showing a plausible number everywhere, ClawMetry reports what the store actually contains and marks the rest unknown. A cost of $0.00 and a cost of unknown mean different things, and the dashboard keeps them different.

Sub-agents and delegation#

Through the mounted Claude state.

Things worth knowing#

  • There is no NANOCLAW_HOME, no DATA_DIR and no ~/.nanoclaw. The data dir is resolved relative to the install CWD, so the real path is <checkout>/data/v2-sessions. ClawMetry discovers it from a bounded set of common checkout locations.
  • The runtime actively owns these files, so ClawMetry always opens them read-only and immutable.

Verify it is being read#

bash
# Is this runtime detected, and would this install unlock it?
clawmetry runtimes --json | jq '.runtimes[] | select(.id=="nanoclaw")'

# Why is it locked, if it is?
clawmetry runtimes --why nanoclaw

# Any sessions ingested yet?
curl -s 'http://localhost:8900/api/local/sessions?limit=5' \
  | jq '.rows[] | {session_id, agent_id, events, cost_usd}'

If detection succeeds but no sessions appear, work through Troubleshooting — the usual causes are a relocated data directory (set the override above), a session limit that is hiding older runs, or a runtime that simply has not written anything yet.

Cookie preferences