session-summary

April 24, 2026 ยท View on GitHub

Session analytics dashboard for Claude Code. Displays a comprehensive summary with 15 configurable sections when your session ends.

What It Shows

SectionDefaultDescription
MetaonSession ID, name, git branch
DurationonWall time, active time, turns, exit reason
ModelsonRequests per model, tokens in/out
CacheonCache hit rate (read vs created tokens)
CostonEstimated cost (via ccusage or pricing table fallback)
ToolsonTool calls breakdown with success/error rates
ErrorsonError details (tool name + truncated message)
FilesonFiles read/edited/created, top edited files
LOConLines of code written (via Edit/Write tools)
FeaturesonMCP servers, agents, skills, teams, plan mode
GitonDiff summary (+/- lines, files changed)
RTKautoRTK token savings delta (if RTK installed)
RatioonInteractive vs auto turns, avg time/turn
ThinkingoffThinking blocks count
ContextoffContext window usage estimate

Installation

# Add the marketplace
claude plugin marketplace add FlorianBruniaux/claude-code-plugins

# Install
claude plugin install session-summary@florian-claude-tools

Done. Hooks are auto-wired for SessionStart (RTK baseline) and SessionEnd (summary display).

Manual Installation

See the Ultimate Guide hooks section for manual setup instructions.

Configuration

Via Environment Variables

All settings use the SESSION_SUMMARY_ prefix:

# Disable a section
export SESSION_SUMMARY_GIT=0

# Enable an off-by-default section
export SESSION_SUMMARY_THINKING=1

# Skip summary entirely
export SESSION_SUMMARY_SKIP=1

# Custom log directory
export SESSION_SUMMARY_LOG_DIR=~/my-logs

# RTK: auto (default), 1 (force on), 0 (force off)
export SESSION_SUMMARY_RTK=auto

Via Config CLI

The session-summary-config.sh script provides a CLI for persistent configuration:

# From the plugin scripts directory:
./session-summary-config.sh show              # Show current config
./session-summary-config.sh set git=0         # Disable git section
./session-summary-config.sh set thinking=1    # Enable thinking section
./session-summary-config.sh reset             # Reset to defaults
./session-summary-config.sh sections          # Show section order
./session-summary-config.sh sections "meta,duration,tools,cost"  # Minimal output
./session-summary-config.sh preview           # Demo output
./session-summary-config.sh log 10            # Last 10 session summaries

Config file location: ~/.config/session-summary/config.sh

Configuration Priority

env vars > config file > defaults

Dependencies

DependencyRequiredPurpose
jqYesJSON parsing (session transcript)
bcNoPrecise arithmetic for cost calculation
ccusageNoAccurate cost calculation (falls back to pricing table)
rtkNoToken savings tracking
gitNoGit diff summary section

Session Logs

Summaries are logged as JSONL at ~/.claude/logs/session-summaries.jsonl for historical analysis.

View recent summaries:

./session-summary-config.sh log 5