Real-time dashboard for Claude Code — live status, reasoning, token usage, git diff, agent tracking. Everything that's normally invisible, made visible.
No cloud services, no daemons, no accounts. A shell script and a local server.
Claude Code calls monitor-hook.sh before and after every tool call
The hook writes .claude/status.json with current state and context
Claude Insights watches those files and pushes updates via Server-Sent Events
Dashboard updates in real time — no refresh, no polling from the client
Current state in real time — working, waiting, compacting, idle. Shows the exact tool name as it executes.
Claude's internal thinking streamed live word by word. Full history of all reasoning blocks across the session.
Three-segment breakdown: fixed rules, conversation, and tool results — with token cost per file.
Input, output, and cache reads. Tracks the 5-hour renewal window so you always know when it resets.
Side-by-side IntelliJ-style diff for every uncommitted file. Shows the reasoning that caused each change.
Every tool call logged with path, duration, and success or failure. See exactly what Claude touched.
Sub-agents tracked separately with duration, status, and parent session. Parallel work stays visible.
Auto-discovers every directory with a .claude/ folder. Switch projects instantly — zero configuration.
Browse past sessions — reasoning, tool calls, context — while a live session runs in parallel.
Aggregate token spend, session count, and top tools over 7 days. Understand your usage patterns.
Works on any screen. Open the dashboard on your phone while Claude works on your desktop.
All data stays on your machine. No cloud, no accounts, no analytics. Local by design.
The status bar tells you exactly what Claude is doing at this instant. Not "working" — working — reading static/insights.html. The LIVE badge confirms real-time monitoring is active. When Claude Code is idle, it switches to HISTORY mode automatically.
Claude's internal reasoning is normally invisible. Every thought block streams to you in real time — you see the plan before the tool call happens. Catch wrong assumptions before they cost ten minutes.
All reasoning blocks are saved and browsable across the entire session. Word count, block number, timestamp — nothing gets lost.
Review every uncommitted change side-by-side, with syntax highlighting — without leaving the browser. Below every diff, a Change Summary tells you which tool caused it, how many times, and the reasoning Claude was following when it happened.
Three segments: fixed rules loaded at session start, the growing conversation, and accumulated tool results. Token cost shown per file. You'll see compaction coming before Claude hits the wall.
Claude Insights auto-discovers every directory that has a .claude/ folder under your root. No config files, no manual registration. Switch between projects in one click — the dashboard reloads instantly.
The Commands panel logs every tool call with name, file, duration, and success or failure. Sub-agents get their own panel — tracked separately so parallel work doesn't get lost in the main timeline.
When Claude Code isn't running, the dashboard switches to HISTORY mode automatically. Every session — tool calls, reasoning, context — is still browsable. The Activity panel shows aggregate stats over 7 days.
Claude Code resets token limits every 5 hours. Claude Insights shows how many tokens you've used, how many sessions are active, and how much time is left. Plan your work around the reset — not the surprise.
Open localhost:4000 on any device on your local network. The dashboard reflows to a single-column layout — all panels readable and functional on a 390px screen. Monitor a long-running session from anywhere.
Choose your install method. All of them install the same tool.
brew tap infowhere-ai/claude-insights && brew install claude-insights
pipx install claude-insights
curl -fsSL https://raw.githubusercontent.com/infowhere-ai/claude-insights/main/install.sh | bash
Sets up the hook script and registers it for 5 Claude Code events. Existing hooks are never overwritten.
Required for the hooks to activate in any open sessions.
Opens at localhost:4000