Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Search, analyze, and manage Claude Code session history. Use when the user wants to find past sessions, check token usage, review tool breakdowns, resume previous work, or manage tasks across sessions. Provides 11 skills and a web dashboard.
.claude/skills/davila7-claude-code-sessions/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | -28% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -23% | 0% |
| case-06 | ✗→✓ | ▲ Improved | -29% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -42% | 0% |
| case-08 | ✗→✓ | ▲ Improved | -34% | 0% |
Session intelligence plugin for Claude Code. Reads the JSONL session files that Claude Code writes to ~/.claude/projects/ and makes them searchable and analyzable.
Claude Code records every session as a JSONL file — messages, tool calls, token counts, diffs, tasks. This plugin reads those files and provides two interfaces. Most operations are read-only; delete and cleanup skills can remove session files when explicitly invoked.
11 skills usable directly in Claude Code:
| Skill | Purpose | |-------|---------| | /session-search "query" | Full-text search across every session | | /session-stats | Token usage, model distribution, tool breakdown | | /session-list | List sessions sorted by recency, size, or duration | | /session-detail | Deep dive into a specific session | | /session-diff | Compare two sessions — files, tools, topics | | /session-timeline | Chronological view of sessions on a project | | /session-resume | Generate a context recovery prompt from any session | | /session-tasks | Find pending and orphaned tasks across sessions | | /session-export | Export a session as clean markdown | | /session-cleanup | Find empty, tiny, or stale sessions | | /session-delete | Delete sessions and their associated tasks |
Web dashboard at localhost:3000 with four views: Dashboard (summary stats), Sessions (sortable table with bulk operations), Search (full-text with context snippets), Tasks (grouped by status with orphan detection).
bash/plugin marketplace add apappascs/claude-code-sessions /plugin install claude-code-sessions@claude-code-sessions
No API keys. No config. No runtime dependencies. It reads what's already on disk.
For the dashboard:
bashbun run ui # → http://localhost:3000
Same TypeScript modules power skills, dashboard, and CLI:
lib/formatters.ts — pure utilities, no I/O
lib/session-parser.ts — parses one JSONL file into structured data
lib/session-store.ts — scans all sessions, aggregates, searches
ui/server.ts — HTTP endpoints + static file servingEach lib file doubles as a standalone CLI:
bashbun run lib/session-store.ts list --sort recency --limit 10 bun run lib/session-store.ts search "database migration" --since 2025-01-01 bun run lib/session-parser.ts stats path/to/session.jsonl
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 5,920 | 7,111 | +20% | 1 | 1 | 0% | 959 | 961 | +0% | 0 | 0 | — |
case-02 | fail→fail | 12,125 | 7,407 | -39% | 1 | 1 | 0% | 2,336 | 1,049 | -55% | 0 | 0 | — |
case-03 | fail→fail | 11,536 | 5,249 | -54% | 1 | 1 | 0% | 1,974 | 957 | -52% | 0 | 0 | — |
case-04 | fail→pass | 9,590 | 3,239 | -66% | 1 | 1 | 0% | 1,714 | 1,234 | -28% | 0 | 0 | — |
case-05 | fail→pass | 7,262 | 1,448 | -80% | 1 | 1 | 0% | 1,195 | 920 | -23% | 0 | 0 | — |
case-06 | fail→pass | 12,403 | 3,969 | -68% | 1 | 1 | 0% | 1,905 | 1,361 | -29% | 0 | 0 | — |
case-07 | fail→pass | 17,314 | 5,575 | -68% | 1 | 1 | 0% | 2,866 | 1,676 | -42% | 0 | 0 | — |
case-08 | fail→pass | 10,648 | 2,925 | -73% | 1 | 1 | 0% | 1,681 | 1,117 | -34% | 0 | 0 | — |
case-09 | fail→pass | 11,794 | 3,811 | -68% | 1 | 1 | 0% | 2,128 | 1,383 | -35% | 0 | 0 | — |
case-10 | fail→pass | 9,445 | 24,553 | +160% | 1 | 1 | 0% | 1,508 | 1,118 | -26% | 0 | 0 | — |
case-11 | fail→pass | 14,733 | 2,010 | -86% | 1 | 1 | 0% | 2,602 | 1,007 | -61% | 0 | 0 | — |
case-12 | fail→pass | 14,733 | 2,686 | -82% | 1 | 1 | 0% | 2,837 | 1,055 | -63% | 0 | 0 | — |
case-13 | fail→pass | 18,838 | 2,570 | -86% | 1 | 1 | 0% | 3,030 | 1,084 | -64% | 0 | 0 | — |
case-14 | pass→pass | 7,651 | 2,381 | -69% | 1 | 1 | 0% | 1,213 | 1,012 | -17% | 0 | 0 | — |
case-15 | fail→pass | 7,572 | 1,830 | -76% | 1 | 1 | 0% | 1,250 | 1,040 | -17% | 0 | 0 | — |
case-16 | fail→pass | 7,407 | 2,657 | -64% | 1 | 1 | 0% | 1,304 | 1,053 | -19% | 0 | 0 | — |
case-17 | fail→pass | 11,925 | 1,439 | -88% | 1 | 1 | 0% | 1,863 | 882 | -53% | 0 | 0 | — |
case-18 | pass→pass | 7,542 | 3,639 | -52% | 1 | 1 | 0% | 1,168 | 1,339 | +15% | 0 | 0 | — |
case-19 | pass→pass | 6,048 | 4,208 | -30% | 1 | 1 | 0% | 861 | 1,294 | +50% | 0 | 0 | — |
case-20 | pass→pass | 8,648 | 4,443 | -49% | 1 | 1 | 0% | 1,463 | 1,499 | +2% | 0 | 0 | — |
case-21 | pass→pass | 10,804 | 7,079 | -34% | 1 | 1 | 0% | 2,040 | 2,125 | +4% | 0 | 0 | — |
case-22 | fail→pass | 6,210 | 1,421 | -77% | 1 | 1 | 0% | 1,070 | 906 | -15% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 20 counted toward the lift figure. The other 2 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +64 percentage points is the difference between those two pass rates over the 20 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.