What it shows you
- Context you can feel. A gauge, the token count and the percentage — so you know you are getting close before Claude tells you.
- Both rate-limit windows. The 5-hour and the 7-day, each with the time until it resets.
- Cost as you go. The session’s spend, and on a seat billed against a monthly budget rather than the rolling windows, that budget beside it.
- Your subagents. A second panel, a row per subagent, with its name, model, what it is working on, tokens, elapsed time and a status glyph.
- Git, from the filesystem. Branch, worktree and dirty markers, resolved by reading the repository rather than shelling out for everything.
It is one Rust binary. No runtime, no Node, nothing to keep up to date — Claude
Code invokes it directly, and it starts in about a millisecond. Most of a render
is spent asking git about your working tree, so inside a repository the whole
thing costs tens of milliseconds rather than a couple; outside one it is barely
more than the process starting.
It can also stop a session running past the line
A PostToolUse hook watches your usage and, when you cross a cap, tells Claude
to wrap up and hand off rather than letting the session run on. The shipped caps
are 65% of the context window, 90% of the 5-hour window, 80% of the 7-day one
and 90% of a monthly budget — all four are yours to change, and a repository you
cloned cannot raise them past what you set. See Configure.
Getting it
Apple Silicon macOS, with Homebrew:
brew trust --formula virajp/tap/claude-status
brew install --formula virajp/tap/claude-status
claude-status --configure
Or with mise:
mise use --global "github:virajp/claude-status@latest"
claude-status --configure
brew trust is not optional — Homebrew 6 will not load a third-party formula it
has not been told to trust, so the install fails without it. You do it once.
--configure is the real last step, not a formality: it is what wires Claude
Code to the binary. Install covers both routes in full.
Where to go next
| Page | For |
|---|---|
| Install | getting the binary, and wiring Claude Code to it |
| Configure | the three config layers, and what you can change |
| Per-repo | naming one repository in the bar — the only per-repo setting |
| Segments | every segment, what it draws, and when it sits out |
| Diagnosing | --debug, and the questions it answers |
Implementing against it, or wondering why something behaves the way it does? The behaviour contract is the source of truth, written for implementers rather than users. These pages are the user-facing documentation and do not restate it.