Skip to main content
skill Claude Code official · Anthropic

session-report — Claude Code skill: what it does, how to install

Generates an interactive HTML report on token usage, cache performance, subagents, and heavy prompts from Claude Code transcripts.

Install into Claude Code · Plugin marketplace All methods and platforms ↓
/plugin install session-report@claude-plugins-official
Open on GitHub

What session-report does

The skill runs analyze-sessions.mjs against session transcripts stored in ~/.claude/projects. It scans the last 7 days by default, though you can specify ranges like 24h, 30d, or all. The script outputs a JSON payload covering project stats, subagent types, skills, cache breaks, and top prompts.

Next, it copies the bundled template.html into your current working directory and embeds the JSON. The agent automatically writes 3–5 one-line anomaly notes expressing token percentages, followed by targeted optimization callouts at the bottom. The resulting HTML is self-contained, using client-side JavaScript for sorting and bar charts.

Running the analyzer requires Node.js. It is worth installing if you run heavy multi-session workflows and need to spot runaway subagents or failing cache hits.

What it helps with

  • extract token metrics across projects from ~/.claude/projects
  • identify expensive prompts and heavy subagent types
  • inspect cache break clusters and cache-hit drops
  • generate a self-contained HTML usage dashboard

Example prompts for the agent

  • Generate a session-report for the last 30d
  • Run session-report for all time
  • Create a session report for the last 24h

How to install session-report

1Plugin marketplace

/plugin install session-report@claude-plugins-official

This installs the whole session-report plugin with all its skills

2Skills CLI (Vercel)

npx skills add anthropics/claude-plugins-official --skill session-report -a claude-code

3Manually: put the files in place

~/.claude/skills/session-report/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/session-report/

From the same set37

The whole set →
code-reviewer official Anthropic Reviews code changes against CLAUDE.md project rules and flags material defects. Run it before a commit or pull request. Claude Code 31,050installs code-reviewer official Anthropic This subagent checks code changes for bugs, security issues, and project-rule violations. Use it when a review should focus on findings that matter. Claude Code 31,050installs claude-md-improver official Anthropic This skill audits CLAUDE.md files, produces a quality report, and suggests focused edits. Use it when project instructions need a careful review. Claude Code 12,558installs security-auditor official Anthropic This subagent searches code for security flaws and gives engineers concrete fixes. Use it to review a project before hardening or modernization work. Claude Code 10,718installs test-engineer official Anthropic This subagent captures legacy behavior in tests and compares it with a rewritten implementation. Use it before changing existing modules. Claude Code 9,715installs claude-automation-recommender official Anthropic Analyzes a codebase and recommends Claude Code hooks, subagents, skills, plugins, and MCP servers. Useful when setting up a project or refining an existing workflow. Claude Code 9,057installs playground official Anthropic Builds interactive HTML playgrounds with controls, a live preview, and a generated prompt. Use it when a topic is easier to explore visually than through plain text. Claude Code 7,967installs agent-development official Anthropic This skill guides you through creating agents for Claude Code plugins, from trigger conditions to system prompts and tool access. Use it when adding a subagent to a plugin. Claude Code 7,353installs

Similar

first-ask official github Clarifies a task with you before work begins, then presents a plan. Use it when the scope or expected result still needs discussion. GitHub Copilot 8,800installs create-tldr-page official github Builds a tldr page from command documentation and usage examples. Use it when a long manual needs to become a short command reference. GitHub Copilot 8,800installs structured-autonomy-generate official github Turns a PR plan.md into implementation instructions with code, file paths, checks, and commit pauses. GitHub Copilot 8,700installs mentoring-juniors official github This skill mentors junior developers through questions instead of ready-made answers. Use it for learning code, debugging, and getting started with Copilot. GitHub Copilot 6,900installs noob-mode official github This skill translates Copilot CLI approval prompts, errors, and technical output into plain English. It is aimed at people using the CLI without a software engineering background. GitHub Copilot 6,400installs find-skills vercel-labs Discovers and installs agent skills from skills.sh directly inside your coding assistant. Handy when you need domain-specific workflows for a project. Claude Code CX Codex Cursor +1 4,000,000installs grill-me Matt Pocock grill-me interviews you about a plan or design to expose gaps and sharpen decisions. Use it before implementation starts. Claude Code 1,424,476installs grill-with-docs Matt Pocock This skill interviews you about a plan or design and creates ADRs and a glossary along the way. Use it when decisions need sharper definition. Claude Code 1,219,756installs

Questions about session-report

How to install session-report in Claude Code?

Run /plugin install session-report@claude-plugins-official in Claude Code, or use npx skills add anthropics/claude-plugins-official --skill session-report -a claude-code.

What does session-report do?

It parses Claude Code session transcripts, analyzes token usage, cache performance, and subagent calls, then writes a stand-alone HTML report.

Where does session-report read data from?

The bundled analyze-sessions.mjs script inspects session transcript files located in ~/.claude/projects.

Source text

SKILL.md · Apache-2.0
---
name: session-report
description: Generate an explorable HTML report of Claude Code session usage (tokens, cache, subagents, skills, expensive prompts) from ~/.claude/projects transcripts.
---

# Session Report

Produce a self-contained HTML report of Claude Code usage and save it to the current working directory.

## Steps

1. **Get data.** Run the bundled analyzer (default window: last 7 days; honor a different range if the user passed one, e.g. `24h`, `30d`, or `all`). The script `analyze-sessions.mjs` lives in the same directory as this SKILL.md — use its absolute path:
   ```sh
   node <skill-dir>/analyze-sessions.mjs --json --since 7d > /tmp/session-report.json
   ```
   For all-time, omit `--since`.

2. **Read** `/tmp/session-report.json`. Skim `overall`, `by_project`, `by_subagent_type`, `by_skill`, `cache_breaks`, `top_prompts`.

3. **Copy the template** (also bundled alongside this SKILL.md) to the output path in the current working directory:
   ```sh
   cp <skill-dir>/template.html ./session-report-$(date +%Y%m%d-%H%M).html
   ```

4. **Edit the output file** (use Edit, not Write — preserve the template's JS/CSS):
   - Replace the contents of `<script id="report-data" type="application/json">` with the full JSON from step 1. The page's JS renders the hero total, all tables, bars, and drill-downs from this blob automatically.
   - Fill the `<!-- AGENT: anomalies -->` block with **3–5 one-line findings**. Express figures as a **% of total tokens** wherever possible (total = `overall.input_tokens.total + overall.output_tokens`). One line per finding, exact markup:
     ```html
     <div class="take bad"><div class="fig">41.2%</div><div class="txt"><b>cc-monitor</b> consumed 41% of the week across just 3 sessions</div></div>
     ```
     Classes: `.take bad` for waste/anomalies (red), `.take good` for healthy signals (green), `.take info` for neutral facts (blue). The `.fig` is one short number (a %, a count, or a multiplier like `12×`). The `.txt` is one plain-English sentence naming the project/skill/prompt; wrap the subject in `<b>`. Look for: a project or skill eating a disproportionate share, cache-hit <85%, a single prompt >2% of total, subagent types averaging >1M tokens/call, cache breaks clustering.
   - Fill the `<!-- AGENT: optimizations -->` block (at the **bottom** of the page) with 1–4 `<div class="callout">` suggestions tied to specific rows (e.g. "`/weekly-status` spawned 7 subagents for 8.1% of total — scope it to fewer parallel agents").
   - Do not restructure existing sections.

5. **Report** the saved file path to the user. Do not open it or render it.

## Notes

- The template is the source of interactivity (sorting, expand/collapse, block-char bars). Your job is data + narrative, not markup.
- Keep commentary terse and specific — reference actual project names, numbers, timestamps from the JSON.
- `top_prompts` already includes subagent tokens and rolls task-notification continuations into the originating prompt.
- If the JSON is >2MB, trim `top_prompts` to 100 entries and `cache_breaks` to 100 before embedding (they should already be capped).

© Anthropic · Apache-2.0 · anthropics/claude-plugins-official

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor