skip to content
Kushalgouda Patil

claudescope

claudescope desktop app showing a history view of Claude Code bash commands, including git status, git log, ls, and find, each with their output
Code

Claude Code logs every session as a JSONL file under ~/.claude/projects/<encoded-project-path>/<session-id>.jsonl. claudescope reads those files, pairs up each Bash tool call with its result, and shows you:

Failed commands (is_error: true) are highlighted in red. Each command and its output has a copy button.

Built with Tauri v2 — a Rust backend, a plain HTML/CSS/JS frontend, no bundler, no Node.js required to build or run it. The Rust backend exposes five commands to the frontend: list_projects, list_sessions, read_session_bash_commands, start_watching, and stop_watching. JSONL parsing pairs each tool_use (a Bash call) with its later tool_result by id. The live feed uses the notify crate to watch the active session file; on each write it reads only the newly appended bytes and emits any newly-completed commands to the frontend over Tauri’s event system.