cstat 0.3.0

minimal statusline for claude code
cstat-0.3.0 is not a library.

cstat

status line for claude code. parses claude's streaming json output and renders a compact status bar with session info, usage, active tools, agents, and task progress.

install

from crates.io

cargo install cstat

from source

cargo install --git https://github.com/basuev/cstat

binary download

grab a binary from releases:

curl -L -o cstat https://github.com/basuev/cstat/releases/latest/download/cstat-darwin-arm64
chmod +x cstat
mv cstat /usr/local/bin/

available binaries: cstat-darwin-arm64, cstat-darwin-amd64, cstat-linux-amd64, cstat-linux-arm64.

usage

as claude code status line

add to ~/.claude/settings.json:

{
  "statusLine": {
    "type": "command",
    "command": "cstat"
  }
}

claude code will invoke cstat as a subprocess, piping session data to stdin. the status line updates automatically every ~300ms.

standalone

pipe claude code's json stream into cstat directly:

claude --output-format stream-json | cstat

what it shows

line 1 (model + rate limits):

Opus  hourly 25% (1h30m reset)  weekly 60%

line 2 (project + context + activity):

my-project  main*  context 45%  Edit auth.ts  Grep x3  explore[haiku] 2m15s  tasks 3/7

includes: model name, rate limits with reset timer, project directory, git branch, context window usage, active tools, subagents, and task progress.

configuration

create ~/.config/cstat/config.toml:

[colors]
enabled = true

[format]
separator = " | "