ai-wrapped
v1.8.1
Published
Your year in AI — a Spotify Wrapped-style dashboard for AI coding agents
Maintainers
Readme
A visual summary across multiple agents.
Built on Electrobun — a TypeScript-first desktop framework using Bun + native webviews.
Built on top of agent-sessions session format discovery — reads JSONL/JSON session logs that AI coding agents write to disk.
Supported Agents
- Claude Code —
~/.claude/projects/JSONL sessions + subagent logs - OpenAI Codex — Codex CLI session files
- Google Gemini CLI — Gemini session logs
- OpenCode — OpenCode session data
- Droid — Droid session files
- GitHub Copilot — Copilot session logs
What It Shows
- Total sessions, messages, tool calls, tokens, and estimated cost
- Daily activity timeline with per-agent and per-model breakdown
- Cost breakdown by model (Claude Opus, Sonnet, GPT-4o, Gemini Pro, etc.)
- Agent usage distribution (pie chart)
- Time spent — total hours, average session duration, longest session, current streak, active day coverage ring
- Top repositories with sessions, tokens, cost, and duration
- Coding hours — 24-hour activity breakdown by agent
- Shareable dashboard links via ai-wrapped.com/share
- System tray with today's stats at a glance
Quick start
npx ai-wrapped@latest
# or
bunx ai-wrapped@latestFlags: --version, --rebuild, --uninstall
Stack
- Runtime: Bun
- Desktop: Electrobun (native webview, no Chromium bundling on macOS)
- Frontend: React + Tailwind CSS + Recharts
- Build: Vite (frontend) + Electrobun CLI (app bundle)
- Storage: JSON files in
~/.ai-wrapped/
Getting Started
bun installDevelopment
bun run devOr with HMR for the frontend:
bun run dev:hmrProduction Build
bun run build:prodHow It Works
- On launch (and every 5 minutes by default), the app scans known session directories for each agent
- New or changed session files are parsed into a normalized format with token counts, tool calls, and cost estimates
- Aggregated daily stats are written to
~/.ai-wrapped/daily.json - The frontend fetches summaries over RPC and renders the Wrapped-style dashboard
