Runtime reference
Cline#
Cline records more than any other runtime ClawMetry reads: a SQLite session index with pid, status and exit code, dollars on disk, the per-message token split, real schedules with per-run cost, and — uniquely — the tool calls the model emitted that Cline itself rejected.
| Runtime id | cline |
| Category | Agentic coding CLI and extension |
| Vendor | Cline |
| Tier | Paid tier (Starter and up) |
| Upstream | github.com/cline/cline |
Where the data comes from#
ClawMetry reads these locations, in order, and never writes to any of them.
<data-dir>/db/sessions.db— session index<data-dir>/sessions/<sid>/<sid>.json— per-session sidecar<data-dir>/sessions/<sid>/<sid>.messages.json— the transcript
Format. SQLite index plus one JSON transcript per session; content blocks are Anthropic-shaped whichever provider actually ran.
Environment variables#
| Variable | Effect |
|---|---|
CLINE_DATA_DIR | Cline's own data-dir env |
CLINE_DIR | older spelling, also honoured |
CLAWMETRY_CLINE_DATA_DIR | ClawMetry-side override |
See Environment variables for the variables that apply to every runtime.
Tokens and cost#
Tokens. Real, per message, including cache reads and writes.
Cost. Real dollars on disk at metadata.usage.totalCost.
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#
Full lineage in the index: parent_session_id, agent_id and is_subagent columns.
Things worth knowing#
- The default data dir is
~/.cline/**data**.~/.clineitself holdshooks/andworktrees/— pointing at it finds nothing. - Per-message
metricsand the sidecartotalCostare both authoritative and must not be added together. metadata.invalidToolCallsrecords calls Cline rejected. It is a direct signal of a model that cannot drive its tools, and nothing else in the matrix admits its own failures.
Verify it is being read#
# Is this runtime detected, and would this install unlock it?
clawmetry runtimes --json | jq '.runtimes[] | select(.id=="cline")'
# Why is it locked, if it is?
clawmetry runtimes --why cline
# 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.