Local-first · Claude Code · MIT

See how your coding agent actually reasoned.

Local-first observability for Claude Code. Zero instrumentation, never phones home — cLens reconstructs any session from the JSONL Claude Code already writes.

$ npm i -g @silou/clens && clens init

The package is @silou/clens; the command it installs is clens.

clens — session detail
cLens session detail — agent timeline with backtracks, decision points, and reasoning trace.

What it is

MIT 100% LOCAL ZERO NETWORK ~2ms / EVENT 20+ EXTRACTORS CLI · TUI · DASHBOARD

cLens reads the JSONL Claude Code already writes via native hooks, stores everything in a local .clens/ folder in your repo, and distills it offline. Nothing is uploaded, ever.

Why cLens

How, not just how much

decision trace

Other tools meter cost and tokens. cLens reconstructs the decision trace — backtracks, decision points, edit-chains, and plan-drift.

100% local

~2ms / event

No SDK to wire up, no collector, no server, no account. Native hooks append events to flat JSONL. Your traces never leave your machine.

Honest by design

estimated, labeled

Cost is labeled estimated, decisions are labeled structural, outcomes by completion + files touched. cLens never invents precision it doesn't have.

The transcript tells you what your agent typed. Not why.

When a Claude Code agent runs 40 minutes, edits a dozen files, backtracks twice and spawns sub-agents, the chat log is a wall of text. You can't see where it changed its mind, which reasoning produced which edit, or where it drifted from the plan. Production LLM-observability tools don't help — they're built to meter tokens in deployed apps, not to reconstruct a coding session. So you scroll, and guess.

What it surfaces

Decision trace

See where it changed course.

Backtracks and structural decision points laid out on a timeline, traced to the reasoning text behind them. cLens surfaces where the run pivoted — it doesn't judge it.

cLens dashboard session list — local Claude Code sessions with duration, tool counts, and estimated cost.

Edit chains · plan drift

Connect thinking to code.

Each file change linked back to the thinking block that produced it — including edits the agent later abandoned. Point it at your spec and it diffs intended vs. actual.

cLens session detail — edit chains binding reasoning blocks to the file edits they produced.

Multi-agent · cross-session

Map the team, across every run.

Communication graph and per-agent metrics when a session spawns sub-agents, plus cross-session analytics over your whole history. Cost shown is labeled estimated. (Multi-agent collaboration is a Team-tier feature.)

cLens insights — cross-session analytics including plan-drift scatter.

Your code never leaves your machine.

cLens has no server, no cloud, no account, no telemetry. A compiled hook binary appends events to flat JSONL in your repo at ~2ms per event. Full tool-call payloads are written locally, so you own the data — and nothing is ever transmitted. MIT licensed: read the capture path yourself.

Get started in two commands

01

npm i -g @silou/clens

Install the CLI.

02

clens init

Register the Claude Code hooks — one time, per repo.

03

clens web

Open the local dashboard, or run clens distill --last / clens what --last in the terminal.

$ npm i -g @silou/clens
$ clens init
# use Claude Code normally, then…
$ clens distill --last && clens what --last

The package is @silou/clens; the command it installs is clens.

Pricing

Free

$0

forever · MIT

Try it; capture sessions and read the raw timeline.

  • Capture (hooks, JSONL, ~2ms)
  • Local raw viewer / clens what
  • Full distill (20+ extractors)
  • Web dashboard + analytics
  • Multi-agent + cloud sync
Get the binary

Team

$24 / seat / mo

$240 / seat / yr · 3-seat min

Teams running multi-agent workflows together.

  • Everything in Individual
  • Multi-agent comm-graph + team metrics
  • Cloud sync + shared sessions
  • Collaboration (future)
Notify me

Open-core: capture + raw viewing are free and MIT forever. Individual is a license key unlocking the full local suite (zero backend). Team adds the cloud-sync/collab backend — that's what the ~2× seat premium funds. Annual ≈ 17% off. Pricing is per seat, never per trace.

FAQ

Does cLens send my code anywhere?

No. Zero network; everything stays in a local .clens/ folder in your repo.

How is this different from ccusage?

ccusage meters cost and tokens from the same local JSONL. cLens adds the decision analysis — backtracks, edit-chains, plan-drift — what it did, not just what it cost.

How is this different from Langfuse / Phoenix / LangSmith?

Those instrument production LLM apps and ship traces to a server. cLens is zero-setup, local, and Claude-Code-specific.

Are the cost numbers exact?

No — they're estimated (cache reads dominate token accounting). We label them as such throughout the UI.

Is it really free / open source?

Yes, MIT. Capture and raw viewing are free forever; paid tiers unlock the full analysis suite and team/cloud features.

Do you support OpenAI / other agents?

Today: Claude Code. OpenTelemetry GenAI export lets you interoperate with other tooling.

See how your agent actually reasoned.

Local-first, open source, two commands to start.

$ npm i -g @silou/clens && clens init