FAQ

The honest answers.

Eleven questions, none dodged. If yours isn't here, open a GitHub issue — that inbox is read.

01What’s the catch? Why free?

No catch. It started as a $19 product; partway through I dropped that model and shipped it MIT instead. If it’s useful, star the repo and report the weird session files it chokes on.

02Does anything leave my machine?

Your sessions don’t. The server is loopback-only and token-gated, with no telemetry, no analytics, and no accounts. One honest exception: at launch the CLI asks the npm registry whether a newer version exists — set TURNLOG_NO_UPDATE_CHECK=1 (or "checkUpdates": false) to switch it off, and the lsof one-liner on the privacy page shows every listener either way.

03Can I try it before I have any sessions?

Yes — npx turnlog demo runs the real app against bundled sample sessions in a scratch index. Your own history is never read: the demo redirects its data directory to a temp tree and rebuilds it fresh each run, with an undismissable banner saying so. Every screenshot and the video on this site comes from it.

04What does “agent memory” actually mean?

turnlog mcp is a local MCP server over your session index — read-only, over stdio, six tools (search, list sessions, get session, get messages, get context, file history). Register it with claude mcp add turnlog -- npx turnlog mcp and Claude Code queries your own history mid-task instead of asking you to re-explain it.

05How accurate are the cost numbers?

Labeled estimates, priced from a table shipped inside the package, counted once per API response — an early version overcounted by roughly 2.5–3× and fixing that is why the numbers are trustworthy now. Resumed conversations count each message once, on the day it actually ran. Codex token counts are exact (read per-response from the rollouts); GPT pricing isn’t bundled, so Codex costs appear once you add rates via modelPricing in settings.json.

06How is this different from ccusage?

ccusage is the standard for usage stats and Turnlog doesn’t replace it. Turnlog is search and replay — the one cost view it adds is cost filtered by a content search, which needs the index.

07Claude Code changes its log format. Will this break?

Eventually, briefly, yes — the format is undocumented. Parsing sits behind a version-sniffing adapter; unknown records are kept raw and rendered collapsed instead of crashing, and fixes ship same-day via npm. The index health panel shows you the unrecognized count, so drift is a number on screen instead of silent data loss.

08Can I share a session?

Export any session — or just a turn range — as markdown, one self-contained styled HTML page, or JSON for scripts. The share panel spells out exactly what --redact scrubs (API-key-shaped tokens, JWTs, key=value secrets, emails, home paths) before anything leaves your machine.

09Only Claude Code?

Claude Code, OpenAI Codex CLI, and Cursor (both the CLI and the IDE) today. Sessions from all of them land in one index — Codex and Cursor work on a repo join your Claude Code work on that repo as one project timeline, searchable together. Gemini CLI and OpenCode are next; see the roadmap for the order — and for what Turnlog will never do.

10Can I use it on a work machine?

It’s MIT, local-only, and reads only your agents’ own session logs — ~/.claude/projects/, ~/.codex/sessions/, and Cursor’s transcripts (its IDE state is read from a copy). Whether those sessions are sensitive is between you and your employer — Turnlog adds no new exposure.

11Windows?

Yes — macOS, Linux, Windows on Node 22+. If better-sqlite3 prebuilds fail on your setup, that’s the bug report I want most.