claude-telemetry
Customizable multi-line status line for Claude Code.
"The status line you can trust" — accurate, lightweight, never breaks.
Installation
Via marketplace (recommended)
- Add marketplace:
/plugin marketplace add jeongph/claude-telemetry
- Install:
/plugin install claude-telemetry@jeongph-claude-telemetry
- Run interactive setup:
/claude-telemetry:setup
This downloads the Go binary, configures your preset, and sets up the status line.
Manual setup
- Download the binary for your platform from Releases:
mkdir -p ~/.claude/statusline/bin
curl -fsSL "https://github.com/jeongph/claude-telemetry/releases/latest/download/claude-telemetry-$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m | sed 's/x86_64/amd64/' | sed 's/aarch64/arm64/')" \
-o ~/.claude/statusline/bin/claude-telemetry
chmod +x ~/.claude/statusline/bin/claude-telemetry
- (Optional) Copy the example config:
cp claude-telemetry/config.example.json ~/.claude/statusline/config.json
- Add to
~/.claude/settings.json:
"statusLine": {
"type": "command",
"command": "bash /path/to/claude-telemetry/scripts/run.sh"
}
- Restart Claude Code
Features
- Remaining % display — all bars show remaining capacity (like a battery), not usage
- Preset modes — compact (1 line), normal (2 lines), detailed (3 lines)
- Auto user detection — OAuth users see rate limits, API key users see cost
- Git integration — folder:branch, ↑push/↓pull, changes (+/-), untracked (?N), stash (≡N), worktrees (⎇N)
- Effort level — live reasoning effort (low/medium/high/xhigh/max) shown beside the model name, reflects
/effort changes (Claude Code ≥ 2.1.141)
- PR badge — open PR number and review state for the current branch, no
gh CLI needed (Claude Code ≥ 2.1.145)
- Session name — session title shown as
[name], auto-truncated to 20 columns (off by default — Claude Code already shows the title in its UI; enable via sections or the detailed preset)
- Rate limit countdown — remaining time until reset with progress bar
- Dynamic color thresholds — green/yellow/red based on remaining %, customizable via config
- Graceful degradation — loading (···), partial failure (—), error messages instead of silent blank
- Progress bars — ▰▱ visualization, color-coded green → yellow → red
- Adaptive width — auto-drops lower priority sections on narrow terminals
- i18n — English, Korean, Japanese, Chinese (auto-detected)
- Auto binary sync — a SessionStart hook keeps the binary matched to the plugin version (pinned download + sha256 verification)
- Self-cleanup on uninstall — if you uninstall the plugin, the status line removes its own settings entry and files within a minute (setup-managed installs only)
- NO_COLOR support — respects
NO_COLOR environment variable
- Go binary — single binary, no runtime dependencies, sub-10ms rendering
- v1 fallback — existing jq-based users keep working until they upgrade
Sections
| Line | Section | Description |
|---|
| 1 | Session | [name] session title (max 20 cols, detailed preset or opt-in) |
| 1 | Model | Model name with effort level beside it (Fable 5 · xhigh), color-coded low→max (toggle via effort key) |
| 1 | Elapsed | Session duration (Nh Nm format) |
| 1 | Git | folder:branch ↑push ↓pull +add/-del ?untracked ≡stash ⎇worktrees |
| 1 | PR | Open PR number + review state ✓/●/✗/◌ (shown only when a PR is open) |
| 2 | Context | ◆ Remaining context window % with progress bar |
| 2 | Remaining | ◆ 5h / 7d remaining % with reset countdown (OAuth, auto-detected) |
| 2 | Cost | Session cost in USD (API key, auto-detected) |
| 2 | Lines | Session lines added/removed |
| 2 | API Duration | Time spent waiting for API responses |
| 2 | Tokens | Tokens currently in the context window (in/out) |
| 3 | Agent | Active agent name (shown only when active) |
| 3 | Vim | Vim mode indicator (shown only when active) |
| 3 | Thinking | ✦ extended thinking indicator (shown only when enabled) |
Line 3 appears only when agent, vim mode, or thinking indicator is active.
Note: Since Claude Code 2.1.132, token counts reflect what is currently in the context window, not cumulative session totals.
Git status symbols
The Git section renders as folder:branch followed by status markers. Each marker appears only when its count is non-zero, so a clean repo shows just folder:branch.