claude-code-statusline-summary
v0.1.1
Published
AI-powered statusline for Claude Code with session summaries, context tracking, and git diff stats
Downloads
35
Maintainers
Readme
claude-code-statusline-summary
AI-powered statusline for Claude Code with session summaries, context tracking, and git diff stats.
What it does
Adds a custom statusline to Claude Code that shows configurable segments:
- AI session summary - Uses Claude to generate a 10-15 word description of what you're working on
- Context usage - Percentage of context window consumed
- Session cost - Running cost in USD
- Git diff stats - Lines added/removed since last commit
- Model name - Which Claude model is active (Opus, Sonnet, etc.)
- Session duration - Elapsed time since session start
Example output:
Refactoring auth module to use JWT tokens | Sonnet | 42% ctx | $0.15 | 12m34s | +87/-23Install
npx claude-code-statusline-summaryThe interactive installer will:
- Check dependencies (
jq,claudeCLI) - Ask where to install (user-level or project-level)
- Let you pick which segments to show via multi-select
- Optionally configure advanced summary settings (model, refresh frequency, etc.)
- Install the script and update your Claude Code settings
Uninstall
npx claude-code-statusline-summary --uninstallRequirements
- Node.js >= 18
- jq - JSON processor (required)
- macOS:
brew install jq - Linux:
apt install jq
- macOS:
- Claude CLI - For AI summaries (optional)
npm install -g @anthropic-ai/claude-code
Configurable Segments
Choose which segments to display during installation. Re-run the installer to change your selection.
| Segment | Default | Description | |---------|---------|-------------| | AI Summary | On | Session summary generated by Claude | | Context % | On | Context window usage percentage | | Cost | On | Session cost in USD | | Git Diff | On | Lines added/removed vs HEAD | | Model Name | Off | Active model (Opus, Sonnet, Haiku) | | Duration | Off | Elapsed session time |
AI Summary Settings
When AI summary is enabled, you can configure:
| Setting | Default | Description | |---------|---------|-------------| | Model | Sonnet | Model for generation (sonnet/haiku/opus) | | Max Length | 100 chars | Maximum summary length | | Early Refresh | 3 | Refresh every message for first N messages | | Refresh Interval | 7 | After early phase, refresh every N messages | | Cache Max Age | 7 days | Auto-cleanup of cached summaries |
How it works
The statusline script receives session data as JSON via stdin from Claude Code. It displays the selected segments using data from the JSON input. For the AI summary, it reads the session transcript, extracts user messages, and calls claude -p to generate a concise label. Summaries are cached per session and refreshed based on your configured frequency.
Install locations
- User level:
~/.claude/statusline-command.sh+~/.claude/settings.json - Project level:
.claude/statusline-command.sh+.claude/settings.json
License
MIT
