ccstatusline-usage
v2.5.5
Published
A customizable status line formatter for Claude Code CLI
Maintainers
Readme
ccstatusline-usage
🎨 A highly customizable status line formatter for Claude Code CLI Display model info, git branch, token usage, API usage, and other metrics in your terminal
Fork of sirmalloc/ccstatusline with added API usage widgets (session/weekly utilization bars, reset timer, context bar).
Fork Enhancements
This fork adds API-based usage widgets beyond the upstream:
- Session/Weekly Usage - Real utilization from Anthropic API with progress bars
- Weekly Fable Usage - Compact progress bar for weekly Fable API usage
- Reset Timer - Time until weekly reset (when at 100% / on a charged model); otherwise time until 5-hour session window resets
- Chat Ref - The name other Claude Code sessions use to address this one, resolved from the local session registry
- Context Window Display - Visual bar showing context usage
- Cache Minutes - Minutes left on the prompt cache (
Cache: 42 min,C: 42m), TTL auto-detected from the transcript, red near expiry - Weekly Pace - Pendulum bar showing if you're ahead or behind expected usage pace (optional Off Hours window subtracts sleep time from the expected % calc)
- Off Peak - Optional widget showing peak/off-peak status with countdown timer
- Two-line Layout - Session info on line 1, context on line 2
- Multi-provider routing - Usage widgets dispatch per model: Anthropic models hit the usage API; opencode/local models (GLM, Kimi, MiniMax, Qwen, Ollama) skip the fetch and gracefully hide usage bars while keeping the real-time context bar.
✨ Features
- 📈 API Usage Tracking - Real-time 5-hour session and weekly utilization from Anthropic API with progress bars
- ⏱️ Reset Timer - Countdown to when your 5-hour session window resets
- 💬 Chat Ref - Shows the address other sessions use to message this one, so you can hand it out without looking it up
- 📊 Real-time Metrics - Display model name, git branch, token usage, per-model weekly usage, extra usage limits, voice input state, session duration, compaction count, block timer, and more
- 📐 Multi-line Support - Configure multiple independent status lines
- 🎨 Fully Customizable - Choose what to display and customize colors for each element
- ⚡ Powerline Support - Beautiful Powerline-style rendering with arrow separators, caps, and custom fonts
- 🖥️ Interactive TUI - Built-in configuration interface using React/Ink
- 🔎 Fast Widget Picker - Add/change widgets by category with search and ranked matching
- ⚙️ Global Options - Apply consistent formatting across all widgets (padding, separators, bold, minimalist mode, and color overrides)
- 📦 Portable Configurations - Export settings to JSON and preview replace-or-merge imports for backups and sharing
- 🚀 Cross-platform - Works seamlessly with both Bun and Node.js
- 🔧 Flexible Configuration - Supports custom Claude Code config directory via
CLAUDE_CONFIG_DIRenvironment variable - 📏 Smart Width Detection - Automatically adapts to terminal width with flex separators
- ⚡ Zero Config - Sensible defaults that work out of the box
Enhanced Status Line Preview
The default layout, out of the box. On a narrow terminal the labels shorten automatically (Session ID: becomes S:, Chat ref: becomes R:, Cache: becomes C:):
Session: [████░░░░░░░░░░░] 27.0% | Weekly: [████░░░░░░░░░░░] 34.0% | Fable: [███░░░░░░░] 22.0% | 2:03 hr | B: 72% | Model: Opus 4.7 | Session ID: 0109b99d... | Chat ref: my-project-a1
Context: [██████░░░░░░░░░] 389k/1M (39%) | Pace: [░░░░░░█|░░░░░░░] D4/7 -8% | Cache: 42 min
📚 Table of Contents
- Recent Updates
- Features
- Localizations
- Quick Start
- Windows Support
- Usage
- Development
- Contributing
- Uninstall
- License
- Related Projects
🆕 Recent Updates
v2.5.5 - Cache Timer no longer freezes at the full TTL
- pcvelz/ccstatusline-usage: Cache Timer decay - a session whose transcript ends in an unanswered user row (Stop-hook feedback, a task notification, a restored session) no longer shows a frozen
C: 60m; the countdown decays from the first unanswered row and reachesCOLD. Glyph mode keepsHOTwhile the cache is warm and showsCOLDonce it expires.
v2.5.4 - Update checker targets the fork's package
- pcvelz/ccstatusline-usage: Fork package name - the update checker, global install version lookup and global uninstall now use
ccstatusline-usageinstead of upstream'sccstatusline.
v2.5.3 - Weekly decimal, one usage fetcher, upstream sync
- pcvelz/ccstatusline-usage: Weekly decimal - Weekly shows an estimated decimal after the API's whole percent (
W: 9.2%), extrapolated from five-hour usage; the whole digit is always the API value. - pcvelz/ccstatusline-usage: Lag-tolerant rate fit - each weekly step is stored as a range of session usage and one rate is fitted with a lag allowance, so step-to-step jitter no longer swings the decimal; the fit lives in
~/.cache/ccstatusline/weekly-calibration.jsonand adapts to limit changes within ~40 weekly points. - pcvelz/ccstatusline-usage: No stale Weekly - the usage sampler refreshes the status line's usage cache and honours its rate-limit lock, so they no longer race into 429s.
- pcvelz/ccstatusline-usage: Cache Timer emoji toggle - moved from
etoo;enow edits a widget's label everywhere. - sirmalloc/ccstatusline: Upstream sync - 69 commits: editable labels (
e), Session Cost Rate and Extra Usage Daily Budget widgets, NO_PROXY support, terminal-output sanitizing, Git hardening.
v2.5.2 - One usage fetcher, no stale Weekly
Consolidated into v2.5.3.
- pcvelz/ccstatusline-usage: No stale Weekly - the usage sampler now refreshes the status line's own usage cache and honours its rate-limit lock, so the two no longer race each other into 429s and the status line stops showing an old value (
W: 5%while the API said 6%).
v2.5.1 - Weekly decimal with a self-calibrating rate
Consolidated into v2.5.3.
- pcvelz/ccstatusline-usage: Weekly decimal - Weekly shows an estimated decimal after the API's whole percent (
W: 5.6%), interpolated from five-hour session usage. The whole digit is always the API value; the decimal never rounds it up. Toggle with theweeklyEstimatesetting. - pcvelz/ccstatusline-usage: Self-calibrating -
scripts/usage-sampler.ts(launchd, every 2 min) records each weekly step to~/.cache/ccstatusline/weekly-calibration.json. The rate carries across weeks and re-bases itself when Anthropic changes the limits (rebasedAtin that file). Seedocs/weekly-calibration.md. - pcvelz/ccstatusline-usage: Weekly from the API - the weekly % comes from the usage API instead of the status-line payload, whose
seven_dayvalue lagged behind.
v2.5.0 - Cache minutes, Fable beside Weekly, quieter Chat ref
- pcvelz/ccstatusline-usage: Cache minutes - Cache Timer now shows just the minutes left (
Cache: 42 min,C: 42m), no emoji or HOT, on line 2 by default; red at 5 min left on a 1h cache, 2 min on a 5m cache (wto change,efor upstream's emoji countdown). - pcvelz/ccstatusline-usage: Exact cache expiry - Cache Timer counts down from Claude Code's own
prompt_cache.expires_at, falling back to the 1h/5m tier read from the transcript. - pcvelz/ccstatusline-usage: Quieter Chat ref - hidden when it equals the session title (
session_name), which the prompt border already shows. - pcvelz/ccstatusline-usage: Weekly Pace per model -
spicks the bucket Pace measures (weekly, Sonnet, Opus, Fable), and a Sonnet/Opus bucket the account never reports no longer leaves[Timeout]stuck. Thanks to @alexbartok (#10). - pcvelz/ccstatusline-usage: Default layout - Fable moves next to Weekly on line 1;
config/default-settings.jsonmirrors the defaults so a config can symlink to it. - pcvelz/ccstatusline-usage: Locale/timezone editor fix - Enter now picks from what you just typed, even when it arrives before the screen redraws.
v2.4.18 - Session-state contract + narrow-layout fixes
- pcvelz/ccstatusline-usage: Session-state contract - the llama-swap widgets read
GET /api/sessions(llama-swap.sessions/v1), so phase, context and rate are computed once server-side. Slot Status shows priority (P10), Slot Throughput the rate kind. - pcvelz/ccstatusline-usage: Cache-aware fallback - without
/api/sessionsthe widgets fall back to/api/events+/api/slots, now counting the reused KV-cache prefix (a resumed retry no longer reads6k/102k). - pcvelz/ccstatusline-usage: Uniform bar widths - Fable, Opus, Sonnet, Extra Usage and the timer bars follow the same 4/8/16 narrow/medium/full widths as Session and Weekly.
- pcvelz/ccstatusline-usage: No more cut-off lines - in tmux the width comes from the session's own pane, and a line that doesn't fit wraps at widget boundaries instead of ending in
....
v2.4.17 - llama-swap slot widgets + prefill progress bar
- pcvelz/ccstatusline-usage: Prefill progress bar - on a llama-swap backend the Context Bar reads
Prefill: [█████▶░░] 60k/95k (63%)(P:narrow) while the slot is prefilling:▶is the prefill front, numbers are prefilled / chat context. Reverts toContext:when decoding starts. - pcvelz/ccstatusline-usage: Slot Status + Slot Throughput widgets -
State: PREFILLandRate: 256.4 t/sfor the session's own lane, from llama-swap's/api/eventsjoined to/api/slots, same rules as the llama-swap menu bar. Needs"refreshInterval": 2in the Claude CodestatusLinesettings to update mid-turn. - pcvelz/ccstatusline-usage: Harness -
scripts/harness.sh <tmux-session>prints pane-vs-backendMATCH/MISMATCHrows per tick. - pcvelz/ccstatusline-usage: Upstream sync - 4 commits (dev-dependency bumps). Upstream's Related Projects addition was not taken.
v2.4.16 - Short labels for per-model weekly usage
- pcvelz/ccstatusline-usage: Compact per-model labels - Weekly Fable, Weekly Sonnet and Weekly Opus usage now shorten to
F:,WS:andWO:on narrow terminals (below 134 columns), matching theS:/W:Session and Weekly bars. Raw value mode is unchanged.
v2.4.15 - Upstream sync: service health, flexible formatting, resilient rendering
- pcvelz/ccstatusline-usage: Upstream sync — merged upstream v2.2.28 - v2.2.29 (16 commits). All fork widgets (API usage bars, Reset Timer, Context Bar, Fable, Chat Ref, compact mode) keep working; the Fable widget's error text now follows the shared no-data hide state.
- sirmalloc/ccstatusline: 🩺 Claude service health - Added a
Claude Statuswidget with live severity, a cached 48-hour incident-history strip, stale-data fallback, and graceful?output when status data is unavailable. - sirmalloc/ccstatusline: 🙈 Unified conditional hiding - Numeric, Git, JJ, usage, cache, and other widgets now share an
hchecklist for supported hide conditions, with automatic migration of existing settings and optional merge-target hiding for decorative text or symbols. - sirmalloc/ccstatusline: 🔢 Configurable number formatting - Numeric widgets can use precise, compact, or whole-number styles per widget or globally by token, speed, percent, memory, and cost type, while advanced configs can set decimal precision explicitly.
- sirmalloc/ccstatusline: 📜 Faster, reliable large-session rendering - Transcript-backed token, duration, speed, compaction, effort, and session-name metrics now stream JSONL records through one shared scan instead of loading an entire transcript into a single string, while no-active-block results are briefly cached to avoid repeated full-history scans.
- sirmalloc/ccstatusline: ⚠️ Git conflict display controls - Git Conflicts can hide when the count is zero or show either
⚠0or a customizable clean glyph when the tree is conflict-free. - sirmalloc/ccstatusline: 🩹 Self-healing usage locks - Usage widgets ignore impossible fetch-lock deadlines more than 24 hours ahead, allowing poisoned locks caused by clock jumps or old test artifacts to recover on the next render.
- sirmalloc/ccstatusline: 🧹 Bounded Git cache cleanup - Failed persistent Git-cache writes clean up their temporary file and reuse one stable fallback name, preventing Windows file locks from leaking thousands of orphaned temp files.
- sirmalloc/ccstatusline: 📊 Consistent timer bars - Block Timer, Block Reset Timer, and Weekly Reset Timer now round progress-bar fill to the nearest cell, matching the other progress widgets.
v2.4.14 - Chat Ref widget
- pcvelz/ccstatusline-usage: Chat Ref widget — new
agent-addresswidget showing the name other Claude Code sessions use to address this one (Chat ref: my-project-a1, shortening toR:on narrow terminals). Resolved from the local session registry by matching the payload'ssession_id, with a parent-pid fast path and a directory scan fallback. Added to the default layout on line 1, after Session ID. - pcvelz/ccstatusline-usage: README restructure — removed a duplicated multi-provider routing example, moved Features and the status line preview directly under Fork Enhancements, and corrected the preview block, which previously omitted the Battery widget and placed the Fable bar on the wrong line.
v2.4.13 - Upstream sync + CI gates
- sirmalloc/ccstatusline: Upstream sync — merged the Nerd Font toggle refactor (#544): VimMode, SandboxStatus, RemoteControlStatus, VoiceStatus and CompactionCounter now share
isNerdFontEnabled/setNerdFontFormat/toggleNerdFontfromwidgets/shared/metadata.tsinstead of each carrying its own copy. No behaviour change. - pcvelz/ccstatusline-usage: Pre-push gate —
.githooks/pre-pushnow runs the full CI criteria (lint, test, build) before a push lands. - pcvelz/ccstatusline-usage: Test inventory gate —
scripts/test-inventory-gate.shblocks silent test loss; intentional removals are recorded in docs/test-retirements.md. - pcvelz/ccstatusline-usage: Flaky Ink test fix — the
flushInk()helper was a fixed 25ms sleep duplicated across 12 test files, which raced Ink's render loop under parallel load and produced failures that moved between files. Replaced by a sharedsrc/tui/components/__tests__/ink-test-utils.tswith condition-pollingwaitFor/waitForOutput. Full suite is now 2123/2123 across repeated runs.
v2.4.12 - Fix 200k context echo on 1M models
- pcvelz/ccstatusline-usage: Context bar 200k echo fix — when Claude Code reports
context_window_size: 200000(its built-in default) for a model the mapping knows is 1M (Fable 5, Opus), the bar no longer shows impossible readings like381k/200k (191%); the mapping corrects the echo to 1M. Gated[1m]models without a mapping entry keep the live 200k.
v2.4.11 - Upstream sync + community fixes
- sirmalloc/ccstatusline: Upstream sync — 71 commits merged through 2.2.27: config import/export, migrated
limits[]usage API support, transcript-based compaction stats, symlink-safe atomic settings writes, Powerline start caps,CCSTATUSLINE_CONTEXT_SIZE_FALLBACK, and more. - pcvelz/ccstatusline-usage: Network fix — disabled Node family autoselection on usage API requests, preventing a silent stale-cache freeze on hosts with broken IPv6. Thanks to @zzyyfff (#9).
- pcvelz/ccstatusline-usage: TUI fix — Reset Timer
(p)/(s)keys no longer soft-lock the items editor. Thanks to @zzyyfff (#8). - pcvelz/ccstatusline-usage: Fable widget fix — accounts that never used Fable now show
0.0%instead of forcing all usage widgets into an error state. Thanks to @BenIsLegit (#7). - pcvelz/ccstatusline-usage: Model widget — compact-mode shorthand for the
k3model id.
v2.4.10 - Live payload context window precedence
- pcvelz/ccstatusline-usage: Live
context_window_sizeprecedence — the context bar now uses the real-timecontext_window_sizevalue from Claude Code's status payload as its primary source, falling back to the static model-context mapping only when the payload omits it. This keeps context percentages accurate for all model backends, including local and opencode-routed models. - pcvelz/ccstatusline-usage: Pre-commit test gate — added
.githooks/pre-commitso the full test suite runs automatically before each commit (repositorycore.hooksPathis already configured to.githooks).
v2.4.9 - Fix Fable widget error state
- pcvelz/ccstatusline-usage: Fable context window detection — fixed the Weekly Fable widget forcing all usage widgets into an error state by improving 1M-context inference from model display names and ids, including labels like
Fable 5,(1M context),(1M), and[1M].
v2.4.8 - Fable usage bar replaces Off-peak default
- pcvelz/ccstatusline-usage: Fable usage bar — new
progress-minidisplay mode renders a compact 10-character bar (Fable: [█░░░░░░░] 12.0%) for weekly Fable usage. - pcvelz/ccstatusline-usage: Default layout swap — the default Off-peak widget is replaced by
weekly-fable-usageon the second line, so new installs show Fable usage out of the box.
v2.4.7 - Fix stale context windows for local models
- pcvelz/ccstatusline-usage: Local model context windows — the live
context_window_sizefrom Claude Code is the primary source for local / llama-swap models, with cleaned-upmodel-context.jsonfamily-pattern fallbacks used when no live size is present. - pcvelz/ccstatusline-usage: Removed stale
[1m]extra-usage charging — the Reset Timer widget no longer treats Sonnet[1m]as a charged model; no[1m]model is billed as extra usage anymore. Extra-usage display now triggers purely on weekly usage reaching 100%.
v2.4.6 - Fable 5 model support
- pcvelz/ccstatusline-usage: Fable 5 usage provider routing —
fablemodel ids now route to the Anthropic usage provider, so the Session, Weekly, and Reset Timer widgets render real usage data instead of hiding when a Fable model is active. The[1m]suffix already maps the Context Bar to a 1M window. - pcvelz/ccstatusline-usage: Compact names for single-version model ids — mobile/compact mode now renders
claude-fable-5[1m]asM: f5[1m]; previously the id failed to compact and the[1m]suffix was duplicated.
v2.4.5 - Upstream sync (both widget sets working) + context-bar zero fallback
- sirmalloc/ccstatusline: Upstream sync — 18 commits merged through 2.2.19: Windows npm shim fix, Remote Control status widget, weekly-reset weekday display mode,
CCSTATUSLINE_WIDTHoverride, git lock avoidance (--no-optional-locks) + persistent git cache, older-git compatibility, and npm provenance attestations. - pcvelz/ccstatusline-usage: Hybrid usage retrieval — both widget sets work — Adopted upstream's declarative usage-prefetch pipeline (
getMissingFetchFields/mergeUsageData) while keeping the fork'sresolveProvider()fetch seam. Upstream's new Extra Usage Utilization / Extra Usage Remaining widgets now populate generically, and all existing fork widgets (Session, Weekly, Reset Timer, Context Bar, Weekly Pace, per-model Sonnet/Opus) keep working. The fork's usage-prefetch shrank from a parallel implementation to a single provider seam. - pcvelz/ccstatusline-usage: Context bar zero-usage fallback — When Claude Code reports all-zero token usage mid-turn (common with local models before token accounting flushes), the Context Bar now falls back to transcript-based metrics instead of flashing
0k/200k. Applied in bothgetContextWindowMetricsandContextBarWidget. Default bar width nudged 15 → 16.
v2.4.4 - Session extra usage dollar amount fix
- pcvelz/ccstatusline-usage: Session widget shows extra usage amounts — When session hits 100% and extra usage is active (weekly still below 100%), the split bar now renders the actual dollar amount (
$0.97/$419.00) instead of falling back to100.0%. TheSessionUsageWidgetwas already drawing the split bar but wasn't passingextraUsed/extraLimittoformatSplitUsageBar; this fix completes the conditional chain so the amount always appears alongside the overdraft indicator.
v2.4.3 - Off Hours for Weekly Pace
- pcvelz/ccstatusline-usage: Off Hours configuration for Weekly Pace — Optional recurring window (e.g.
22:00 → 07:00) that Weekly Pace subtracts from both sides of its expected-% calculation, so the delta doesn't drift negative while you sleep. Wall-clockdayOfWeekstill tracks calendar (D4/7 = Wednesday regardless of off-hours state). New TUI menu:(e)toggle,(s)/(n)edit start/end,(r)reset. Off by default — existing configs parse unchanged. Thanks to @BenIsLegit (#4).
v2.4.2 - Upstream sync + Reset Timer editor + JSON model config + provider gate
- sirmalloc/ccstatusline: Upstream sync — 34 commits merged, including Jujutsu VCS widgets (
jj-branch,jj-changes,jj-conflicts,jj-description), Voice Status widget, separate Weekly Sonnet and Weekly Opus usage widgets, short bar mode for timer widgets, pinned global install support, context percentage label fixes, and separator collapse improvements. - pcvelz/ccstatusline-usage: Off-peak widget provider gate — Hides the Anthropic-only peak-hours indicator for non-Anthropic models (Kimi, GLM, Qwen, MiniMax, …). Introduces optional
getSupportedProviders()on the Widget interface, with the gate enforced once inrenderer.preRenderAllWidgets()— declarative per-widget routing that stays clean as new providers are added. - pcvelz/ccstatusline-usage: Reset Timer editor actions —
ttoggles date mode,htoggles hour format,ledits locale,zedits timezone directly in the TUI item editor. - pcvelz/ccstatusline-usage: JSON-driven model context — Third-party model context window sizes (Kimi, GLM, MiniMax, Qwen, Devstral, etc.) moved from hardcoded TypeScript to
src/utils/model-context.jsonfor easier updates and community contributions.
v2.4.1 - Weekly Pace: showPercent toggle + decimal precision
- pcvelz/ccstatusline-usage:
%keybind — always show delta onOn Pace— PreviouslyOn Pacewas the only pace band that hid its delta. ToggleshowPercentin the editor to renderD4/7: On Pace +3%(or-2%, or+0%) so you can see how close to a band edge you are. - pcvelz/ccstatusline-usage:
.keybind — decimal precision — Cycles 0 → 1 → 2 → 3 → 0 decimal places for all deltas (Warm/Cool/Overcooking/Underusing,On PacewhenshowPercentis on, and the pendulum bar). ReplacesMath.round()withtoFixed(decimals)in a sharedformatDeltahelper. - Both toggles are metadata-gated and orthogonal — omitted keys behave identically to before.
- Thanks to @BenIsLegit (#3).
v2.4.0 - Multi-provider router for usage widgets
- pcvelz/ccstatusline-usage: Provider pattern end-to-end — Usage widgets now dispatch through
resolveProvider(modelId)insrc/utils/usage/resolver.ts. Anthropic models (opus/sonnet/haiku) fetch from the usage API; opencode/local models (glm,kimi,minimax,mm-,qwen,owen,mimo) skip the fetch entirely so heavy local-model sessions no longer trigger needless Anthropic API calls or rate-limiting. - pcvelz/ccstatusline-usage: The prefetch layer (
usage-prefetch.ts) now readsdata.model.idfrom the payload and dispatches viaprovider.fetchUsage()instead of the hardcoded Anthropic path.opencodeProvider/nullProviderreturn emptyUsageData, so Session/Weekly/Reset widgets hide themselves naturally. - pcvelz/ccstatusline-usage: Context Bar stays backend-agnostic — renders whenever
context_windowis present in the payload, regardless of which provider handled the turn. - See the new Multi-Provider Routing section under Fork Enhancements for example config.
v2.3.17 - Local model fallback for API usage widgets
- pcvelz/ccstatusline-usage: Local model fallback — When the active model is not Opus/Sonnet/Haiku (e.g. a local Ollama model like
qwen3-coder:30b), the Session, Weekly, and Context widgets now render empty-bar placeholders ([░░░░░░░░░░░░░░░] -.0%) and the Reset Timer shows-:00 hrinstead of misleading Claude API values. - pcvelz/ccstatusline-usage: Qwen models keep showing real context usage when
context_windowis present in the payload.
v2.3.16 - Reset Timer fix + model ref updates + upstream sync
- pcvelz/ccstatusline-usage: Reset Timer fix — When session hits 100% but weekly is still below 100%, the Reset Timer now correctly shows the session reset countdown (5-hour window) instead of the weekly reset time. Previously it jumped to the weekly timer as soon as session filled up.
- pcvelz/ccstatusline-usage: Updated all Opus 4.6 references to Opus 4.7 throughout docs, examples, and test data.
- Upstream sync (5 commits): refreshInterval configuration for Claude Code status line (#297), xhigh thinking effort level (#314), dev-dependency bumps.
v2.3.15 - Move extra amounts into Weekly bar, Reset Timer shows weekly reset time
- pcvelz/ccstatusline-usage: Extra amounts in Weekly bar — When at 100% / on a charged model, the split bar now shows
€spent/€limitafter the bar instead of100.0%. Mobile shows the spent amount only. - pcvelz/ccstatusline-usage: Reset Timer shows weekly reset time — When extra usage is active the timer now counts down to the weekly reset instead of showing the
Extra: €X/€Yspending (which moved to the Weekly bar). Falls back to session timer if no weekly reset data is available.
v2.3.14 - Drop extraUsageBalance setting
- pcvelz/ccstatusline-usage: Removed the
extraUsageBalancesetting introduced in v2.3.12.Extra: €X/€Ynow uses the API's monthly limit directly — stable, no config, no drift.
v2.3.13 - Fix timer color regression from v2.3.12
- pcvelz/ccstatusline-usage: Fix timer color — In v2.3.12, the Reset Timer widget color setting was applied to both the
Extra: €X/€Youtput and the countdown timer (e.g.4:28 hr), causing the timer to appear red. The dark red is now applied inline only to theExtra:path; the countdown timer respects the widget's configured color as before.
v2.3.12 - Split bar for extra usage, stable effective-total, 100% clamp
- pcvelz/ccstatusline-usage: Split bar at 100% — Session and Weekly usage bars switch to a split display when the limit is reached and extra usage is active: left half (full) shows the base usage, right half (dark red) shows how much of the extra budget has been spent.
- pcvelz/ccstatusline-usage: Stable effective-total — Set
extraUsageBalance(cents) in~/.config/ccstatusline/settings.jsonto your spending ceiling (spent + account_balanceat config time, e.g. €153.23 + €56.06 →20929). The denominator stays fixed as spending continues, capped at the API monthly limit. Without this setting, the monthly limit is used directly. - pcvelz/ccstatusline-usage: Extra usage color via config — The
Extra: €X/€YReset Timer output color is now driven by the widget's color setting (configurable in TUI or settings.json) instead of being hardcoded. - pcvelz/ccstatusline-usage: Usage clamped to 100% — Session and Weekly bars and percentage labels cap at 100% even if the API returns values above 100.
v2.3.11 - Fix dual-cache drift between Weekly Usage and Weekly Pace
- pcvelz/ccstatusline-usage: Unified usage data source — Session Usage, Weekly Usage, and Reset Timer widgets now read from the shared
context.usageDatapipeline instead of maintaining a separate API cache. Previously, around the weekly reset boundary the two caches could drift and show contradictory data (e.g.Weekly: 99%alongsidePace: D1/7 +2%). Deleted ~330 lines of duplicate fetching/caching infrastructure fromApiUsage.tsx(556 → 227 lines). Upstream merge: #278 (JSONL token overcounting fix), #283 (model display name parenthetical strip — integrated into fork's existing[1m]-aware display logic).
v2.3.10 - Extra usage on session limit, fix empty separator for null widgets
- pcvelz/ccstatusline-usage: Extra usage on session limit — Reset Timer now shows extra usage spending when session limit reaches 100% (not just weekly limit or charged 1M model).
- pcvelz/ccstatusline-usage: Fix empty separator for null widgets — Separators adjacent to widgets that return null (e.g. Battery when charging) are now suppressed correctly. Previously showed a visible
| |gap.
v2.3.9 - Medium display size for mid-width terminals
- pcvelz/ccstatusline-usage: Three-tier display sizing — New medium display size for terminals between 134–177 chars wide. Progress bars render at 8 chars (between mobile's 4 and full's 15). Model and Session ID use compact format in medium mode. Weekly Pace pendulum bar scales to halfWidth=4 in medium.
v2.3.8 - Fix off-peak countdown + Windows EEXIST fix
- pcvelz/ccstatusline-usage: Off-peak countdown fix — Friday evening now correctly counts to Monday peak instead of Saturday noon. Added test coverage for the off-peak time calculation logic.
- pcvelz/ccstatusline-usage: Windows EEXIST fix — Handle
mkdirthrowing EEXIST on Windows junction points/symlinks when saving config (#2, thanks @BenIsLegit)
v2.3.7 - Weekly Pace as default layout
- pcvelz/ccstatusline-usage: Default layout update — Weekly Pace widget (pendulum mode) is now included in the default status line layout on line 2, between the context bar and off-peak indicator. Model widget color changed to magenta.
v2.3.6 - Remove expired 2x promo code
- pcvelz/ccstatusline-usage: Off-Peak cleanup — Removed expired March 2026 promo (2x) code path, leaving only the permanent peak/off-peak indicator
v2.3.5 - Upstream sync + permanent peak/off-peak widget
- sirmalloc/ccstatusline: Major upstream sync — 180 commits merged, including Weekly Reset Timer widget, new test infrastructure, Windows support, and various improvements
- pcvelz/ccstatusline-usage: Permanent Off-Peak widget — Widget no longer disappears after the March 28 promo ends; shows peak/off-peak status permanently with countdown timer (Anthropic confirmed peak hours continue to drain sessions faster)
- pcvelz/ccstatusline-usage: README fork branding fix — Fixed upstream package name references in Windows install commands, WSL section, and dev setup
v2.3.4 - Upstream sync + extra usage fix
- sirmalloc/ccstatusline: Native rate_limits support — Upstream now uses Claude Code 2.1.80's native
rate_limitsfield for usage data - pcvelz/ccstatusline-usage: Extra usage regression fix — Reset timer widget now supplements native
rate_limitsdata with API fetch for extra usage fields that upstream's pipeline omits
v2.3.3 - CI pipeline fix
- pcvelz/ccstatusline-usage: CI pipeline fix — Fixed TypeScript errors (model union type narrowing, missing
extraUsageBalancesetting), disabled brokenimport/orderESLint rule (incompatible with ESLint 10), resolved all remaining lint errors in fork-specific files - pcvelz/ccstatusline-usage: Release workflow — Added mandatory CI pipeline check before tagging/releasing
v2.3.2 - Off Peak widget + WeeklyPace compact fix
- pcvelz/ccstatusline-usage: Off Peak widget — New widget showing
Off peak: Off-peak 2xorOff peak: Peakduring the Anthropic March 2026 Spring Break promotion (off-peak = weekdays outside 8 AM–2 PM ET, weekends all day). Widget automatically hides after March 28, 2026 23:59 PT. - pcvelz/ccstatusline-usage: WeeklyPace compact fix — Pendulum bar now falls back to text mode (
D6/7: -18%) on narrow terminals (< 80 chars) - pcvelz/ccstatusline-usage: Sonnet [1m] extra usage fix — Extra usage spending now shown when a charged
[1m]model (e.g. Sonnet) is active, regardless of weekly limit status
v2.3.1 - Weekly Pace widget
- pcvelz/ccstatusline-usage: Weekly Pace widget — New widget showing if weekly usage pace is on track, with pendulum bar or text display mode (PR #1 by @BenIsLegit)
v2.3.0 - Upstream sync + Vim Mode widget
- pcvelz/ccstatusline-usage: Upstream sync — Merged 14 upstream commits: Vim Mode widget, hyperlink support for GitBranch/GitRootDir, ESLint 10 upgrade, timer day display fix (≥24h), macOS keychain token fallback, ink-gradient 4.0.0
- pcvelz/ccstatusline-usage: Version scheme — Switched to staying one minor version ahead of upstream (upstream 2.2.x → fork 2.3.x)
v2.1.17 - Upstream sync + 1M context display
- pcvelz/ccstatusline-usage: Upstream sync — Merged 46 upstream commits: new widgets (Skills, ThinkingEffort, InputSpeed, OutputSpeed, TotalSpeed, Link, GitInsertions, GitDeletions, WeeklyResetTimer), CI pipeline, Dependabot, --config flag, --hook mode, usage API proxy support, 429 backoff, CoercedNumberSchema
- pcvelz/ccstatusline-usage: 1M context display — Context bar now shows
68k/1Minstead of68k/1000kfor 1M context models - pcvelz/ccstatusline-usage: Keychain file fallback — On macOS, usage widget falls back to
~/.claude/.credentials.jsonwhen Keychain is unavailable (tmux/SSH sessions)
v2.1.16 - Show [1m] suffix on model widget for 1M context models
- pcvelz/ccstatusline-usage: 1M context indicator — Model widget now appends
[1m]when a 1M context model is active, both in full (Model: claude-sonnet-4-6 [1m]) and compact (M: s4.6[1m]) display modes - pcvelz/ccstatusline-usage: Revert extra usage on 1M — Removed the v2.1.15 trigger that showed extra usage spending on 1M models. 1M context is not included in Max without extra usage — the
[1m]suffix on the Model widget now makes this visible, so the Reset Timer no longer needs to duplicate that awareness
v2.1.15 - Show extra usage Kelp on 1M context models
- pcvelz/ccstatusline-usage: Extra usage on 1M models — Reset Timer widget now shows extra usage spending (
Extra: €X.XX/€Y.YY) whenever a 1M context model is active (Opus/Sonnet with 1M context window), in addition to the existing trigger when weekly limit reaches 100%. Reverted in v2.1.16.
v2.1.14 - Reduce API polling frequency to prevent rate limiting
- pcvelz/ccstatusline-usage: Reduced polling — API cache extended from 3 to 10 minutes (~6 calls/hr instead of ~20), verified over 6 hours with zero 429 rate limit errors
- pcvelz/ccstatusline-usage: Always serve stale cache — When API is unavailable, stale data is served indefinitely instead of showing
[Timeout]— old usage percentages are more useful than an error
v2.1.13 - Fix stale API cache causing stuck usage display
- pcvelz/ccstatusline-usage: Stale cache expiry — API usage data older than 10 minutes is now discarded instead of served indefinitely, preventing frozen percentage displays
- pcvelz/ccstatusline-usage: 429 rate limit handling — Properly detects HTTP 429 responses and backs off for 120s instead of hammering the API every 30s
- pcvelz/ccstatusline-usage: Token cache invalidation — Automatically re-reads OAuth token from Keychain/disk when stale cache expires, recovering from expired tokens
v2.1.12 - Remove thinking effort bars from model widget
- pcvelz/ccstatusline-usage: Remove thinking effort bars — Claude Code now shows thinking intensity natively in its own UI, so the
▌▌▌bars after the model name have been removed from the Model widget
v2.1.11 - Configurable extra usage Kelp
- pcvelz/ccstatusline-usage: Configurable extra usage Kelp — Add
extraUsageBalancesetting (in cents) to~/.config/ccstatusline/settings.jsonto override the API's monthly limit with your actual prepaid Kelp (e.g.,"extraUsageBalance": 5000showsExtra: €0.00/€50.00)
v2.1.8 - Windows support for API usage widgets
- pcvelz/ccstatusline-usage: Windows compatibility — API usage widgets now work on Windows by using
os.homedir()instead ofprocess.env.HOMEfor credential and cache file paths
v2.1.7 - Battery widget, extra usage fix & upstream sync
- pcvelz/ccstatusline-usage: Battery widget — shows
B: xx%on macOS and Linux when on battery power (hidden when charging) - pcvelz/ccstatusline-usage: Extra usage conditional display — Extra spending widget now only appears when the weekly budget is fully used (100%), instead of always when extra usage is enabled
- pcvelz/ccstatusline-usage: Upstream sync — Memory Usage widget (v2.0.29)
v2.1.6 - Upstream sync
- pcvelz/ccstatusline-usage: Upstream sync — merged 9 upstream commits: Session Name widget, Git Root Dir widget, CWD home abbreviation, block timer caching, git widget refactor, Windows UTF-8 fix, widget picker UX, TUI editor input fix
v2.2.0 - v2.2.6 - Speed, widgets, links, and reliability updates
- 🚀 New Token Speed widgets - Added three widgets: Input Speed, Output Speed, and Total Speed.
- Each speed widget supports a configurable window of
0-120seconds in the widget editor (wkey). 0disables window mode and uses a full-session average speed.1-120calculates recent speed over the selected rolling window.
- Each speed widget supports a configurable window of
- 🧩 New Skills widget controls (v2.2.1) - Added configurable Skills modes (last/count/list), optional hide-when-empty behavior, and list-size limiting with most-recent-first ordering.
- 🌐 Usage API proxy support (v2.2.2) - Usage widgets honor the uppercase
HTTPS_PROXYenvironment variable for their direct API call to Anthropic. - 🧠 New Thinking Effort widget (v2.2.4) - Added a widget that shows the current Claude Code thinking effort level.
- 🍎 Better macOS usage lookup reliability (v2.2.5) - Improved reliability when loading usage API tokens on macOS.
- ⌨️ New Vim Mode widget (v2.2.5) - Added a widget that shows the current vim mode, with ASCII and optional Nerd Font icon display.
- 🔗 Git widget link modes (v2.2.6) -
Git Branchcan render clickable GitHub branch links, andGit Root Dircan render clickable IDE links for VS Code and Cursor. - 🤝 Better subagent-aware speed reporting - Token speed calculations continue to include referenced subagent activity so displayed speeds better reflect actual concurrent work.
v2.2.9 - v2.2.12 - GitLab support, reset timers, context, compaction, and git widgets
- 🦊 GitLab PR/MR support -
Git BranchandGit PR/MRnow support GitHub, GitLab, and compatible self-hosted remotes, usingghorglabas appropriate. - 🔄 Status line refresh interval - Installed configs can set Claude Code's
statusLine.refreshIntervalfrom the TUI when Claude Code >=2.1.97 supports it. - 🧭 Wrap-around TUI navigation - Menu/list navigation and move/reorder modes now wrap at the first and last items.
- 📋 Clone widget shortcut - Press
kin the item editor to duplicate the selected widget, with fresh Powerline background color for cloned Powerline items. - 📊 Short bar display modes - Context percentage, Context Bar, Session Usage, Weekly Usage, Block Timer, and reset timer widgets can use compact bar variants.
- ⏱️ Usage time cursor - Session Usage and Weekly Usage progress bars can show the elapsed time position within the current usage window.
- 🕒 Reset timer timestamps - Block and Weekly Reset Timer widgets can show exact reset timestamps with compact formatting, 12/24-hour display, IANA time zones, and locale selection.
- 🪟 Context Window widget - Added a
Context Windowwidget for total model window size, keepingContext Lengthfocused on current context usage. - 🔁 Compaction Counter widget - Added a
Compaction Counterwidget that tracks session context compactions, with icon/text/number formats, optional Nerd Font icon, and hide-when-zero behavior. - 🧮 Git file status widgets - Added
Git Staged Files,Git Unstaged Files,Git Untracked Files, andGit Clean Statusfor file counts and clean/dirty state. - 🏷️ Clear context percentage labels -
Context %andContext % (usable)now label rendered values as used or left when toggling used/remaining mode. - ⚡ More Powerline caps - The Powerline separator editor now supports more than three start/end caps.
- 🧠 Thinking Effort updates - Added
xhigh, showdefaultwhen no effort is set, mark unknown future effort levels with?, and track live status JSON plus/effortcommand changes. Claude Code reports Ultracode asxhighin status line data. - 🧮 More accurate token counts - Streaming duplicate JSONL entries are deduped so token widgets do not overcount live Claude Code output.
- 🏷️ Cleaner model display - The Model widget strips trailing context suffixes like
(1M context); useContext Windowwhen you want the total window size shown. - 🧹 Cleaner empty-widget separators - Manual separators now collapse around widgets that render empty, avoiding dangling separators when hide-when-empty widgets disappear.
- 🧱 More resilient Git helpers - Git widgets handle missing or unusual git command output more defensively.
v2.2.8 - Git widgets, smarter picker search, and minimalist mode
- 🔀 New Git PR widget - Added a
Git PRwidget with clickable PR links plus optional status and title display for the current branch. - 🧰 Major Git widget expansion - Added
Git Status,Git Staged,Git Unstaged,Git Untracked,Git Ahead/Behind,Git Conflicts,Git SHA,Git Origin Owner,Git Origin Repo,Git Origin Owner/Repo,Git Upstream Owner,Git Upstream Repo,Git Upstream Owner/Repo,Git Is Fork,Git Worktree Mode,Git Worktree Name,Git Worktree Branch,Git Worktree Original Branch, andCustom Symbol. - 👤 Claude Account Email widget - Added a session widget that reads the signed-in Claude account email from
~/.claude.jsonwhile respectingCLAUDE_CONFIG_DIR. - 🧼 Global Minimalist Mode - Added a global toggle in
Global Overridesthat forces widgets into raw-value mode for a cleaner, label-free status line. - 🔎 Smarter widget picker search - The add/change widget picker now supports substring, initialism, and fuzzy matching, with ranked results and live match highlighting.
- 📏 Better terminal width detection - Flex separators and right-alignment now work more reliably when ccstatusline is launched through wrapper processes or nested PTYs.
- 🎨 Powerline theme continuity - Built-in Powerline themes can now continue colors cleanly across multiple status lines instead of restarting each line.
v2.2.0 - v2.2.6 - Speed, widgets, links, and reliability updates
- 🚀 New Token Speed widgets - Added three widgets: Input Speed, Output Speed, and Total Speed.
- Each speed widget supports a configurable window of
0-120seconds in the widget editor (wkey). 0disables window mode and uses a full-session average speed.1-120calculates recent speed over the selected rolling window.
- Each speed widget supports a configurable window of
- 🧩 New Skills widget controls (v2.2.1) - Added configurable Skills modes (last/count/list), optional hide-when-empty behavior, and list-size limiting with most-recent-first ordering.
- 🌐 Usage API proxy support (v2.2.2) - Usage widgets honor the uppercase
HTTPS_PROXYenvironment variable for their direct API call to Anthropic. - 🧠 New Thinking Effort widget (v2.2.4) - Added a widget that shows the current Claude Code thinking effort level.
- 🍎 Better macOS usage lookup reliability (v2.2.5) - Improved reliability when loading usage API tokens on macOS.
- ⌨️ New Vim Mode widget (v2.2.5) - Added a widget that shows the current vim mode, with ASCII and optional Nerd Font icon display.
- 🔗 Git widget link modes (v2.2.6) -
Git Branchcan render clickable GitHub branch links, andGit Root Dircan render clickable IDE links for VS Code and Cursor. - 🤝 Better subagent-aware speed reporting - Token speed calculations continue to include referenced subagent activity so displayed speeds better reflect actual concurrent work.
v2.1.0 - v2.1.10 - Usage widgets, links, new git insertions / deletions widgets, and reliability fixes
- 🧩 New Usage widgets (v2.1.0) - Added Session Usage, Weekly Usage, Block Reset Timer, and Context Bar widgets.
- 📊 More accurate counts (v2.1.0) - Usage/context widgets now use new statusline JSON metrics when available for more accurate token and context counts.
- 🪟 Windows empty file bug fix (v2.1.1) - Fixed a Windows issue that could create an empty
c:\dev\nullfile. - 🔗 New Link widget (v2.1.3) - Added a new Link widget with clickable OSC8 rendering, preview parity, and raw mode support.
- ➕ New Git Insertions widget (v2.1.4) - Added a dedicated Git widget that shows only uncommitted insertions (e.g.,
+42). - ➖ New Git Deletions widget (v2.1.4) - Added a dedicated Git widget that shows only uncommitted deletions (e.g.,
-10). - 🧠 Context format fallback fix (v2.1.6) - When
context_window_sizeis missing, context widgets now infer 1M models from long-context labels such as[1m]and1M contextin model identifiers. - ⏳ Weekly reset timer split (v2.1.7) - Added a separate
Weekly Reset Timerwidget. - ⚙️ Custom config file flag (v2.1.8) - Added
--config <path>support so ccstatusline can load/save settings from a custom file location. - 🔣 Unicode separator hex input upgrade (v2.1.9) - Powerline separator hex input now supports 4-6 digits (full Unicode code points up to
U+10FFFF). - 🌳 Bare repo worktree detection fix (v2.1.10) -
Git Worktreenow correctly detects linked worktrees created from bare repositories.
v2.0.26 - v2.0.29 - Performance, git internals, and workflow improvements
- 🧠 Memory Usage widget (v2.0.29) - Added a new widget that shows current system memory usage (
Mem: used/total). - ⚡ Block timer cache (v2.0.28) - Cache block timer metrics to reduce JSONL parsing on every render, with per-config hashed cache files and automatic 5-hour block invalidation.
- 🧱 Git widget command refactor (v2.0.28) - Refactored git widgets to use shared git command helpers and expanded coverage for failure and edge-case tests.
- 🪟 Windows UTF-8 piped output fix (v2.0.28) - Sets the Windows UTF-8 code page for piped status line rendering.
- 📁 Git Root Dir widget (v2.0.27) - Added a new Git widget that shows the repository root directory name.
- 🏷️ Session Name widget (v2.0.26) - Added a new widget that shows the current Claude Code session name from
/rename. - 🏠 Current Working Directory home abbreviation (v2.0.26) - Added a
~abbreviation option for CWD display in both preview and live rendering. - 🧠 Context model suffix fix (v2.0.26) - Context widgets now recognize the
[1m]suffix across models, not just a single model path. - 🧭 Widget picker UX updates (v2.0.26) - Improved widget discovery/navigation and added clearer, safer clear-line behavior.
- ⌨️ TUI editor input fix (v2.0.26) - Prevented shortcut/input leakage into widget editor flows.
- 📄 Repo docs update (v2.0.26) - Migrated guidance from
CLAUDE.mdtoAGENTS.md(with symlink compatibility).
v2.0.16 - Add fish style path abbreviation toggle to Current Working Directory widget
v2.0.15 - Block Timer calculation fixes
- Fix miscalculation in the block timer
v2.0.14 - Add remaining mode toggle to Context Percentage widgets
- Remaining Mode - You can now toggle the Context Percentage widgets between usage percentage and remaining percentage when configuring them in the TUI by pressing the 'u' key.
v2.0.12 - Custom Text widget now supports emojis
- 👾 Emoji Support - You can now paste emoji into the custom text widget. You can also turn on the merge option to get emoji labels for your widgets like this:

v2.0.11 - Unlimited Status Lines
- 🚀 No Line Limit - Configure as many status lines as you need - the 3-line limitation has been removed
v2.0.10 - Git Updates
- 🌳 Git Worktree widget - Shows the active worktree name when working with git worktrees
- 👻 Hide 'no git' message toggle - Git widgets now support hiding the 'no git' message when not in a repository (toggle with 'h' key while editing the widget)
v2.0.8 - Powerline Auto-Alignment

- 🎯 Widget Alignment - Auto-align widgets across multiple status lines in Powerline mode for a clean, columnar layout (toggle with 'a' in Powerline Setup)
v2.0.7 - Current Working Directory & Session Cost

- 📁 Current Working Directory - Display the current working directory with configurable segment display
- Set the number of path segments to show (e.g., show only last 2 segments:
.../Personal/ccstatusline) - Supports raw value mode for compact display
- Automatically truncates long paths with ellipsis
- Set the number of path segments to show (e.g., show only last 2 segments:
- 💰 Session Cost Widget - Track your Claude Code session costs (requires Claude Code 1.0.85+)
- Displays total session cost in USD
- Supports raw value mode (shows just
$X.YZvsCost: $X.YZ) - Real-time cost tracking from Claude Code session data
- Note: Cost may not update properly when using
/resume(Claude Code limitation)
- 🐛 Bug Fixes
- Fixed Block Timer calculations for accurate time tracking across block boundaries
- Improved widget editor stability with proper Ctrl+S handling
- Enhanced cursor display in numeric input fields
v2.0.2 - Block Timer Widget

- ⏱️ Block Timer - Track your progress through 5-hour Claude Code blocks
- Displays time elapsed in current block as hours/minutes (e.g., "3hr 45m")
- Progress bar mode shows visual completion percentage
- Two progress bar styles: full width (32 chars) or compact (16 chars)
- Automatically detects block boundaries from transcript timestamps
v2.0.0 - Powerline Support & Enhanced Themes
- ⚡ Powerline Mode - Beautiful Powerline-style status lines with arrow separators and customizable caps
- 🎨 Built-in Themes - Multiple pre-configured themes that you can copy and customize
- 🌈 Advanced Color Support - Basic (16), 256-color (with custom ANSI codes), and truecolor (with hex codes) modes, plus multi-stop gradients (per-widget or spanning the whole line)
- 🔗 Widget Merging - Merge multiple widgets together with or without padding for seamless designs
- 📦 Easy Installation - Install directly with
npxorbunx- no global package needed - 🔤 Custom Separators - Add multiple Powerline separators with custom hex codes for font support
- 🚀 Auto Font Install - Automatic Powerline font installation with user consent
🌐 Localizations
The localizations in this section are third-party forks maintained outside this repository. They are not maintained, reviewed, or endorsed by this repository, so review their code and releases before using them.
- 🌏 中文版 (Chinese): ccstatusline-zh
🚀 Quick Start
No installation needed! Use directly with npx or bunx:
# Run the configuration TUI with npm
npx -y ccstatusline-usage@latest
# Or with Bun (faster)
bunx -y ccstatusline-usage@latestBoth commands launch the same TUI. During the initial setup flow, choose Pinned global install if you want Claude Code to stay on the ccstatusline version you are running instead of following @latest; the TUI will install that version globally with npm or Bun and write the pinned ccstatusline command to Claude Code settings. After a pinned install, you can run ccstatusline directly to launch the TUI in the future.
The interactive configuration tool provides a terminal UI where you can:
- Configure multiple separate status lines
- Add/remove/reorder status line widgets
- Customize colors for each widget
- Configure flex separator behavior
- Configure Claude Code status line refresh interval when supported
- Edit custom text widgets
- Export JSON backups and preview imported configs before replacing or merging settings
- Install/uninstall to Claude Code settings
- Preview your status line in real-time
💡 Tip: Your settings are automatically saved to
~/.config/ccstatusline/settings.json
🔧 Custom Claude Config: If your Claude Code configuration is in a non-standard location, set the
CLAUDE_CONFIG_DIRenvironment variable:# Linux/macOS export CLAUDE_CONFIG_DIR=/custom/path/to/.claude
🌐 HTTPS proxy: Usage and Claude Status requests honor uppercase
HTTPS_PROXY, with exclusions from bothNO_PROXYandno_proxy(comma- or space-separated;*, a host such asapi.anthropic.com, or a domain such as.anthropic.com, optionally with:443). Each request has a five-second total deadline.
🪟 Windows Support: PowerShell examples, installation notes, fonts, troubleshooting, WSL, and Windows Terminal configuration are in the Windows Support section below.
🫥 Status line empty in one folder? Claude Code only runs the status line command in trusted workspaces, and nested git repositories stopped inheriting trust in Claude Code 2.1.232. Check the project's
hasTrustDialogAcceptedin~/.claude.jsonunderprojects; set it totrue(or accept the trust dialog) and start a new session.
