A full-stack application for tracking and visualizing AI agent usage across Claude, Gemini, and Codex with GitHub-style heatmap charts.
Agent Insights scans your local agent directories and provides beautiful visualizations of your usage patterns over time. See when you're most active with each AI agent, track file generation, and monitor storage usage.
Agent Insights is fully local-first:
- All data is scanned from your local filesystem
- No network requests, telemetry, or analytics
- No data is uploaded or shared
- You can safely run it completely offline
Your agent usage data never leaves your machine.
- Multi-Agent Support: Claude, Gemini, and Codex
- GitHub-Style Heatmaps: Year-long activity visualization per agent
- Local-First & Offline: No internet connection required
- Fast Local Scanning: Efficient filesystem traversal in Rust
- Usage Analytics: File count, activity frequency, and storage usage
- Modern UI: React + Tailwind CSS v4 + shadcn/ui
- High-Performance Backend: Rust + Axum
Download the latest binary from GitHub Releases:
https://github.com/milisp/agent-insights/releases
chmod +x ./agent-insights
./agent-insightsThe server starts at:
- Backend API: http://127.0.0.1:3001
Open your browser and visit: http://127.0.0.1:3001
git clone https://github.com/milisp/agent-insights
cd agent-insights- Rust 1.91 or newer
- Bun (for frontend)
cd apps/backend
cargo runServer starts on http://127.0.0.1:3001
cd apps/frontend
bun install
bun devUI opens at http://localhost:5173
- Scans known local directories for supported AI agents
- Parses JSON / JSONL session and file metadata
- Aggregates activity by date and agent
- Exposes a local HTTP API
- Renders GitHub-style heatmaps in the frontend
Returns all agent heatmaps
Response:
{
"Claude": {
"agent": "Claude",
"data": [
{"date": "2025-12-02", "count": 20, "size": 5096527}
],
"max_count": 82,
"total_files": 666,
"total_size": 123456789
},
"Gemini": {...},
"Codex": {...}
}Returns heatmap for specific agent (claude, gemini, codex)
curl http://127.0.0.1:3001/api/heatmaps
curl http://127.0.0.1:3001/api/heatmap/claude- Location:
~/.claude/projects/ - Format: JSONL (newline-delimited JSON)
- Features: Token usage tracking, session IDs
- Location:
~/.gemini/tmp/{hash}/chats/ - Format: JSON
- Features: Aggregated sessions, chat history
- Location:
~/.codex/sessions/ - Format: JSON/JSONL
- Features: File metadata
- Understand when and how often you use different AI agents
- Track long-term usage trends over months
- Compare activity across Claude, Gemini, and Codex
- Audit local agent-generated files and storage growth
Typical scan results:
- 666 Claude files (20 days)
- 558 Gemini files (65 days)
- 493 Codex files (68 days)
- Total: 1,717 files scanned in ~1.3 seconds
Use just to start both backend and frontend, or run them separately:
cd apps/backend
cargo watch -x runcd apps/frontend
bun dev# Backend
cd apps/backend
cargo build --release
# Frontend
cd apps/frontend
bun run buildContributions are welcome!
- Bug reports and feature requests via GitHub Issues
- Pull requests for fixes, improvements, or new agent support
- Documentation improvements are highly appreciated
Please keep code comments in English and follow existing project structure.
See LICENSE file for details.
