ChatLens · recovery desk

Find the lost thread. Keep the uncertainty.

Search local Codex, Claude Code, and Hermes sessions. Keep transcript claims separate from current evidence when you build a recovery card or bundle.

fictional browser datalocal only
ChatLens recovery flowCodex, Claude, and Hermes stores flow into a searchable index, a bounded card, and a verified bundle. CODEXCLAUDEHERMESINDEXcoverage + freshnessWORK CARDclaims / inputsBUNDLEmatch / mismatch
NEXT MOVES

Follow the trail.

Search, bound the claim, then verify the source.

01 / source-aware search

Search with limits visible.

● SYNTHETIC INDEX
Showing 3 illustrative sessions.
codex
Find the parser and explain the release workflow.codex:demo-release-01
coverage completefixture age 2m
claude
Recover the redaction boundary for the trace handoff.claude:demo-trace-02
coverage partialfixture age 11m
hermes
Check the handoff gate before continuing the task.hermes:demo-handoff-03 · inventory unavailable
source absentfixture age unknown
Why are coverage and freshness separate?

A cached index can be complete for the last refresh and still be stale now. ChatLens keeps source availability, parse completeness, and refresh timing visible so a missing result is not mistaken for complete coverage.

02 / bounded work card

Carry context without calling it proof.

● INPUT STATUS PARTIAL

Recover the next useful move

Source: claude:demo-trace-02 · mode: brief · bounded text

CLAIM

The transcript says the redaction pass completed. Not verified.

CLAIM

A tool call mentions a timeout investigation.

Verification boundary

Current repository, owner, and runtime state still need a fresh check.

STATUS

No verified outcome attached to this historical card.

INPUT

Partial source coverage; missing native reasoning stays missing.

What does this page prove?

Only that the UI keeps historical transcript claims separate from verified outcomes. Every row above is fictional browser data; the page never reads a private session store or calls the ChatLens CLI.

03 / optional bundle readback

Pack a snapshot. Stop on source drift.

● SYNTHETIC PREVIEW

Preview a fictional bundle match or the stop-on-drift path.

snapshot_sha256a91f…20e4
source_statematched · continue with caution
raw transcriptnot copied
chatlens bundle codex:SESSION_ID --out recovery.json --json chatlens verify-bundle recovery.json --json

Real install: Python 3.11+ · v0.4.0 · no sibling repo.Back to README
04 / run locally

Run the real CLI.

The guide is illustrative; these are the independent install and tagged demo paths.

python3 -m venv .venv . .venv/bin/activate python3 -m pip install 'git+https://github.com/jonah-ux/chatlens.git@v0.4.0' chatlens --version
git clone --branch v0.4.0 https://github.com/jonah-ux/chatlens.git cd chatlens python3 -m venv .venv . .venv/bin/activate python3 -m pip install . python3 demos/demo.py

Demo scope is synthetic fixture data only; no private home directories or sibling repos are required.GitHub repository