What Agent Logbook reads and writes

It's worth being explicit, because a couple of these would look alarming if you found them rather than read them here.

On this page

    The short version

    • Your chats are read from files on your laptop and are never uploaded.
    • There's no account, no server of its own, and no analytics or telemetry.
    • It makes one request on its own: your plan usage from Anthropic, the same request Claude Code makes.
    • It writes its own cache and settings under ~/.claude. It changes your chat files only when you rename one.

    What it reads

    WhatWhereWhy
    Claude Code transcripts~/.claude/projectsThe chat list, reading a chat, search, cost
    Claude sub-agent transcriptsNext to each chat, in subagents/Agent cards and threads; their tokens count toward the chat's cost
    Codex sessions~/.codex/sessionsCodex chats and Codex quota, which is recorded inside each session
    Memory notes and instructions~/.claude/**/memory, ~/.codex/memories, ~/.claude/CLAUDE.md, ~/.codex/AGENTS.mdThe Memory tab
    Which chats are runningThe Claude CLI's own list (claude agents --json) and the process listLive dots, the live board, memory and CPU per chat
    Your Claude login tokenThe macOS Keychain, or ~/.claude/.credentials.json on Linux and WindowsOnly to ask for your plan usage (next section)

    The one network request

    To draw the quota bars, Agent Logbook asks Anthropic (api.anthropic.com) for your current plan usage. It's the same request Claude Code makes, with the token Claude Code already stored. The token isn't copied, saved or sent anywhere else.

    The answer is cached in ~/.claude/.chistory-usage.json and fetched at most once a minute, less often after an error.

    Codex quota needs no request: Codex records it in its own session files.

    What it writes

    FileWhen
    ~/.claude/.chistory-cache.jsonA summary of each chat, so a growing chat isn't re-read from the start
    ~/.claude/.chistory-search.jsonThe search index
    ~/.claude/.chistory-state.jsonYour pins, archive, groups and Codex chat titles
    ~/.claude/.chistory-usage.jsonThe last plan-usage answer
    ~/.claude/chistory-archive/When you archive a chat: a copy, so it survives if Claude Code cleans up the original
    ~/.claude/trashed-sessions/When you delete a chat: the file is moved here, never wiped
    ~/.claude/chistory-briefs/When you use Branch with a brief: the brief, left for you to read or edit
    Your export folderWhen you export a chat to Markdown, if you've set one in Settings
    Your system's temp folderBriefly, when you copy the usage card or open an image from a chat

    Changes to your chat files

    Renaming a Claude chat adds one custom-title line to the end of its transcript. That's how Claude Code reads the new name back, so the rename shows up there too. Renaming a Codex chat writes nothing to its transcript.

    Nothing else in your transcripts is changed.

    Branch with a brief

    This is the one feature that runs Claude for you. It writes a short summary of the old chat, then runs claude -p to turn it into a handover brief for the new chat. That uses your own Claude plan, and it only happens when you click it.

    What it never does

    • Send your chats, file paths, prompts or code anywhere
    • Collect analytics, crash reports or usage events
    • Ask you to sign in to anything
    • Delete a chat file outright

    Questions

    Open an issue on GitHub or email ragulsundaram15@gmail.com.