ccstatusline
🚀 Beautiful highly customizable statusline for Claude Code CLI with powerline support, themes, and more.
- 13.4k stars
- 594 forks
- 175 open issues
- Language: TypeScript
- License: MIT
- updated
Install
git clone https://github.com/sirmalloc/ccstatusline- Browse the curated list on GitHub or clone it locally.
- Star it to keep new additions on your radar.
Editor's note
ccstatusline is a TypeScript npm package that adds a configurable status line to the Claude Code CLI terminal interface, surfacing real-time session data directly in the terminal prompt area. It integrates with Claude Code through its hook and status line system, displaying widgets for active model name, token usage, context window size, git branch, staged and unstaged file counts, GitLab and GitHub pull request or merge request status, session compaction count, voice input state, and pay-as-you-go overage limits. The package ships with a terminal user interface for configuring widget layout, Powerline segment styling, and theme selection without manual config file editing. A persistent git cache stored under ~/.cache/ccstatusline reduces subprocess overhead by checking .git/HEAD and .git/index modification times. Developers working daily in the Claude Code CLI who want at-a-glance visibility into token consumption, usage bucket resets, and repository state without switching contexts are the primary audience.
Awesome Lists overview
_ _ _ _ _ _ | | __ | | _ _ _| () __ _ / __/ __/ __| __/ ` | _| | | / __| | | '_ \ / _ \ | (_| (__ \ || (| | || || _ \ | | | | | / ____|_/\__,|_|__,|__/||| ||___|
ccstatusline
🎨 A highly customizable status line formatter for Claude Code CLI Display model info, git branch, token usage, and other metrics in your terminal

📚 Table of Contents
🆕 Recent Updates
v2.2.32 - Safer imports, proxy handling, and rendering fixes
📥 Review imported commands - Config imports show new shell commands in full and require confirmation with Cancel selected by default; control characters are displayed as escaped text.
🔒 Private settings stay private - Saves preserve restrictive settings-file permissions, Claude settings backups inherit the source permissions, and installation stops rather than overwriting unreadable Claude settings.
🌐 Proxy exclusions and deadlines - Usage and Claude Status requests honor
NO_PROXYandno_proxyand have total five-second deadlines; JJ commands also time out after five seconds.⏳ Accurate cache timer state - Interrupts and local slash commands such as
/costno longer leave Cache Timer reportingHOT.⚡ Faster Git and text rendering - Git widgets skip unnecessary calls outside repositories and keep separate caches per working directory; text-width calculations reuse Unicode measurements, and Git file/URL parsing avoids quadratic slowdowns.
📏 Reliable styled-text truncation - Width limits remain correct when ANSI styling or hyperlinks split an emoji or another display cluster.
🛡️ Command and file handling - Update versions are validated before installation, fonts download into private temporary folders, branch/host names stay literal CLI arguments, and Skills logs reject unsafe session IDs.
🔄 Reliable usage backoff - Successful usage requests preserve rate-limit backoff written by concurrent renders.
v2.2.31 - Cost tracking, customization, and broad reliability improvements
Across the updates since the September 3 release, 64 PRs have been incorporated, plus additional security fixes and test isolation.
🩹 Miscellaneous bug fixes - 29 dedicated bug-fix PRs since September 3 cover usage/account caching, transcript reading, Git/JJ and directory displays, Unicode truncation, Powerline colors and layout, keyboard controls, settings recovery, hooks, and installation/update flows.
🔒 Security fixes - Three additional fixes restrict repository-controlled Git commands, resolve Windows helper executables from PATH, and filter terminal control sequences while preserving colors and hyperlinks.
💰 Session Cost Rate - Track session cost per hour of active API time or total session time, with a one-minute minimum before showing a rate.
📅 Extra Usage Daily Budget - Spread the remaining monthly spending limit over the remaining UTC days, with an option to skip future weekend days.
🏷️ Editable labels - Press
eto customize text labels.⚡ Faster rendering - Piped status lines skip loading the interactive TUI, reducing startup work on every repaint.
🧰 Maintenance - Shared widget and editor implementations, broader regression coverage, more reliable tests, dependency updates, and CI actions pinned to commit SHAs.
v2.2.29 - v2.2.30 - Faster rendering, command caching, and reliable usage
⚡ Faster terminal width detection - Linux can probe the terminal directly without subprocesses, portable fallbacks skip shell wrappers, and configurable caching reuses failed width probes across renders while detected widths refresh on the next render.
🔧 Custom command caching and timeouts - Opt into output caching for up to 60 seconds from Configure Status Line, and enforce command timeouts even when descendants retain output pipes.
🔣 More customizable Git/JJ symbols - Press
gto edit insertion/deletion signs, Git clean/dirty markers, and the JJ Revision prefix, including empty glyphs for compact layouts.🙈 Hide reset-timer placeholders - Block Reset Timer and Weekly Reset Timer can hide loading and error output through
h; useffor 12/24-hour format andofor weekly hours-only display.👤 Reliable usage account selection - macOS usage lookup respects the active config profile's Keychain credentials, and access-token refreshes preserve cached usage when the refresh token is unchanged.
📊 Unused model quotas show zero - Weekly model usage widgets recognize an explicit 0% quota even before the API supplies a reset timestamp.
↔️ Full-width layouts by default - New configurations and settings without an explicit flex mode now use Full width always.
⏱️ Bounded Git commands - Cached Git commands have a five-second timeout so a stalled Git invocation cannot block the status line indefinitely.
v2.2.28 - v2.2.29 - Service health, flexible formatting, and resilient rendering
🩺 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.🙈 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.🔢 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.
📜 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.
⚠️ 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.🩹 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.
🧹 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.
📊 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.2.27 - Portable configuration import and export
📦 Config import/export - Export the current TUI configuration to JSON, validate and preview imports, then replace all settings or merge only supplied fields while preserving local installation metadata and leaving the result unsaved for review.
v2.2.25 - v2.2.26 - Fable usage, migrated usage API support, compaction accuracy, and rendering reliability
🪄 Weekly Fable usage - Added a
Weekly Fable Usagewidget with percentage, progress-bar, remaining-mode, and time-cursor controls.📊 Reshaped usage API support - Session and all-model weekly usage can fall back to the newer
limits[]response, while Sonnet, Opus, and Fable weekly widgets read authoritativeweekly_scopedentries so migrated accounts do not show stale or frozen values.🧠 Correct post-compaction context - Context length and percentage widgets reset immediately from
compact_boundary.postTokensafter/compact, then switch to the first new turn instead of retaining the pre-compaction size.🧹 Reliable hidden-widget separators - Manual separators now look past widgets that render empty, preserve the intended visible boundary, and inherit colors from the actual preceding visible widget.
⚡ Non-blocking Git PR/CI refreshes - Git PR and CI widgets render from a versioned disk cache while stale data refreshes in the background, preventing slow
ghcalls from blocking the status line.
v2.2.22 - v2.2.24 - Powerline flex mode, cache/CI/sandbox visibility, layout controls, composable metrics, and safer config
What people ask about ccstatusline
What is sirmalloc/ccstatusline?
sirmalloc/ccstatusline is awesome lists for the Claude AI ecosystem. 🚀 Beautiful highly customizable statusline for Claude Code CLI with powerline support, themes, and more. It has 13.4k GitHub stars and its last recorded update is dated 2026-10-19.
How do I install ccstatusline?
You can install ccstatusline by cloning the repository (https://github.com/sirmalloc/ccstatusline) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is sirmalloc/ccstatusline safe to use?
Our security agent has analyzed sirmalloc/ccstatusline and assigned a Trust Score of 100/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains sirmalloc/ccstatusline?
sirmalloc/ccstatusline is maintained by sirmalloc. The last recorded GitHub activity is dated 2026-10-19, with 175 open issues.
Are there alternatives to ccstatusline?
Yes. On ClaudeWave you can browse similar awesome lists at /categories/awesome, sorted by popularity or recent activity.
Maintain this repo? Show its Trust Score in your README
The badge shows this repository's current Trust Score and verdict, and links back to this page. It follows the catalogue data: nobody can buy or edit the score it displays.
[](https://claudewave.com/en/repo/sirmalloc-ccstatusline)<a href="https://claudewave.com/en/repo/sirmalloc-ccstatusline"><img src="https://claudewave.com/api/badge/sirmalloc-ccstatusline" alt="ClaudeWave Trust Score for sirmalloc/ccstatusline" width="320" height="64"></a>