Claude Code · Pi Agent · Codex CLI · opencode

Never lose an AI session again

Automatically save every Claude Code, Pi agent, Codex CLI, and opencode conversation to a local database. Browse, search, score, and replay your sessions through a beautiful web UI.

Get Started View on GitHub
# Auto-imports on exit — just browse:
$ llp serve
Logs Locally Plugin web server running at http://127.0.0.1:8484
Open your browser and start browsing your session logs!

# Auto-imports Claude, Pi, Codex & opencode sessions on exit:
$ llp import
Imported: 960a0652-c62c-4ece-b42e-c047ddfbbe7e.jsonl
Imported pi session: 20250527_183324.jsonl
Imported codex session: rollout-2026-05-28T13-27-14-019e6d0d.jsonl
Imported opencode session: ses_3ce2fc6d1ffedSqjPGQ5QbR2vC.json

# Bulk import all history for a project:
$ llp import-all ~/my-project
Done. Imported 151 new session(s).

# Re-score after version upgrade:
$ llp rescore
Rescoring 84 session(s)...
Done. Scored: 72, Trivial (N/A): 12.
01 · Features

What you get

Every session is automatically saved and indexed — ready to search, browse, and analyze.

Zero-effort capture

Just install and the Stop hook saves each session on exit. Supports Claude Code, Pi agent, Codex CLI, and opencode sessions.

🔍

Full-text search

Search across all your sessions by keyword, filter by model, source (Claude/Pi/Codex/opencode), or narrow by time range.

📈

Token & usage stats

Track token consumption per session and per model. See which models you use most — and which score best.

🎯

Session scoring

Every session is auto-scored on 7 quality dimensions (security, effectivity, planning, etc.) with letter grades S/A/B/C/D/F.

👁

Readable transcripts

View full conversation threads with collapsible thinking blocks and tool call details.

🚀

Live auto-refresh

The web UI automatically updates when new sessions are imported — no page reload needed.

💻

Local & private

Everything stays on your machine. Sensitive data (API keys, tokens, credentials) is scrubbed before storage.

02 · Demo

See it in action

A live terminal walkthrough: install, import sessions, serve the UI, and browse your history.

03 · Install

Install in seconds

Works with Claude Code, Pi agent, Codex CLI, and opencode. Choose your path.

Install the binary

cargo install --git https://github.com/Laotree/logs-locally-plugin

Or build from source: cargo build --release && cp target/release/llp ~/.local/bin/llp

Enable the auto-import hook

The plugin registers a Stop hook. If you installed via marketplace:

/plugin enable logs-locally-plugin@claude-community

Manual setup — add to ~/.claude/settings.json:

{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          { "type": "command", "command": "llp import" }
        ]
      }
    ]
  }
}

Start browsing

llp serve

Open http://127.0.0.1:8484 in your browser.

04 · Usage

Web UI preview

A dark-themed log browser for browsing your agent sessions.

Logs Locally — 127.0.0.1:8484

Commands

llp import

Import the latest Claude Code, Pi, Codex, and opencode session for the current project. Idempotent — safe to run on every exit.

🌐

llp serve

Start the web log browser with scoring, stats, and source filters. Default: http://127.0.0.1:8484.

📂

llp import-all

Bulk import all past sessions (Claude + Pi + Codex + opencode) for a project. Useful for initial setup.

🔄

llp rescore

Re-evaluate session quality scores after upgrading. Trivial sessions are marked N/A.