[⊙] claude lens
Build retrospective · July 2026

One engineer + an agent pipeline

A full product. Live.

Claude Code observability, rebuilt and shipped in three weeks.

12production surfaces
54merged V2 pull requests
DAY 18live on npm

Scope: Jul 3–24 · excludes pre-V2 PR #2 (+3) · 127,117 V2 additions

[⊙] claude lens
12 shipped surfaces

One product · twelve questions

From fleet signal to one turn.

01Dashboardspend + burn
02Sessionsfleet index
03Session Detailfull trace
04Turn Inspectorcausal evidence
05Projectsportfolio
06Modelsmix + price
07Cache Labreuse economics
08Trendscalendar + budget
09Report Cardquality gates
10Explorepivot builder
11Data Healthcoverage + trust
12Settingscontrol plane
[⊙] claude lens
Architecture

Built like a system, not a demo

Fast because it reads only what changed.

A local data plane from raw transcript to live interface.

INPUTClaude transcripts~/.claude/**/*.jsonl + optional cost capture
TAILIncremental ingestbyte offsets · dedupe · warm-start cache
COREMetrics enginecalls · turns · sessions · dimensions
EDGEFastify API + WebSocketone process · invalidations only
VIEWReact product12 pages · filters · charts · exports
[⊙] claude lens
The plan

Evidence first · product second

The build order removed guesswork.

Every V2 pull request traced to a numbered plan task.

54 scoped V2 PRs · pre-V2 PR #2 excluded

Jul 5Specs#5 · gates + phased plan
Jul 10ToolchainTS · CI · Biome · Storybook
Jul 11Engineingest · metrics · API · WS
Jul 14Shellrouting · filters · charts
Jul 1612 pagesE2E · lanes · product blitz
Jul 19Hardenload fixes · capture · bench
[⊙] claude lens
Safe parallelism

Then the build went wide

Isolated to build. Integrated at merge.

62,865additions · 12 PRs · one weekend
.worktrees/89Dashboardisolated ✓
.worktrees/93Sessionsisolated ✓
.worktrees/92Session Detailisolated ✓
.worktrees/91Cache Labisolated ✓

ISOLATE → build → verify → serialized merge → verify again

[⊙] claude lens
Merge history · additions per day
49%

of the entire V2 build landed in one weekend.

Jul 18–19 · 12 merged PRs

[⊙] claude lens
Quality · built in

The gates changed outcomes

Review wasn't theater.

Three receipts from the merge history.

strict TSBiomeVitestCypressa11yStorybook
#68 · REVERT
Wrong archive convention

The spec rule won; the rename did not survive review.

#95 · FIX
Concurrent-load flicker

Real multi-session pressure exposed an integration defect.

#114 · FIX
Sub-agent session routing

Child transcripts were reassigned to their parent sessions.

[⊙] claude lens
Production

Published before the build stopped

Live on npm by day 18.

Ship. Measure. Harden.

npx @foyzulkarim/claude-lens@latest
npm release · Jul 21 DAY 18

v1.0.0 and v1.0.1 shipped while final Phase 5 pull requests were still landing.

235 downloads in the first ~48 hours

[⊙] claude lens
The takeaway

The model typed fast · the system shipped

The pipeline made the 21 days.

Specssettle
Gatesdecide
Lanesmultiply