New to Claude Skills? Learn how to install them →

anthropics on GitHub

Session Report

OfficialFree

Generate detailed HTML reports of Claude Code sessions.

Get this skill

Free · Opens the source repo

What Session Report does

The Session Report skill allows users to create comprehensive HTML reports based on their Claude Code session usage. This skill is particularly useful for developers and designers who want to analyze their interactions with Claude Code over a specified time frame, such as the last week or even all-time usage. By utilizing the bundled analyzer script, users can extract key metrics, including token usage, cache performance, and subagent activity, which are essential for optimizing workflows and resource allocation.

To generate a report, users run the analyze-sessions.mjs script, which compiles session data into a JSON format. The skill then processes this data and populates a pre-defined HTML template with relevant insights. This includes an overview of session performance, breakdowns by project and subagent type, and highlights of any anomalies or optimization opportunities. The final report is saved in the current working directory, providing an easily accessible format for further analysis or sharing.

This skill is designed for users who regularly interact with Claude Code and want to track their usage patterns. It serves as a valuable tool for identifying inefficiencies, understanding token consumption, and making data-driven decisions to enhance productivity. By providing a visual representation of session data, the Session Report skill helps users to quickly grasp their performance metrics and identify areas for improvement.

Overall, the Session Report skill is an essential addition for those looking to leverage their session data effectively, ensuring that they can maximize the benefits of using Claude Code and streamline their development processes.

When to use it

Use this skill when you want to analyze your Claude Code usage over a specific period and identify performance trends.

When not to use it

This skill may not be suitable for users who do not require detailed session analysis or those who prefer real-time monitoring.

What you can build with it

Weekly Usage Review

Generate a report at the end of each week to review your Claude Code usage and identify any inefficiencies.

Performance Optimization

Analyze session data to find opportunities for optimizing token usage and improving overall performance.

Project-Specific Analysis

Create reports for specific projects to understand how different subagents and skills are performing.

How to install Session Report

View source

1. Install with the skills CLI

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

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by anthropics

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:

    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:

    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:
      <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).

Frequently asked questions about Session Report

Similar skills