You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
`cs --setup` now writes `cs render` + refreshInterval=1 by default and
auto-starts the daemon, so the out-of-box experience is the daemon path
(~3-5ms/tick, <1% CPU) instead of inline (~30ms/tick, ~3% CPU at 1Hz).
Most users never opted into --fast manually; the inline default was
costing them CPU for no reason.
Bug fixed along the way: `cs --setup --inline` previously didn't downgrade
existing fast-mode users because ensure_statusline_configured used a
binary fast=True/False where False meant 'preserve existing'. Switched to
tri-state: None=preserve (auto-repair), True=force fast, False=force
inline. Daily auto-repair still preserves the user's choice; explicit
user requests are now respected.
Also folds in the py3.9 compat fixes (bf31092, b428037) and the CI/CoC/
hero/launch-kit work shipped in 650a575..4b86169 since 3.5.1.
Copy file name to clipboardExpand all lines: .claude-plugin/plugin.json
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
{
2
2
"name": "claude-statusbar",
3
-
"description": "Lightweight Claude Code status-line monitor with switchable styles, themes, and slash commands. v3.4 adds per-segment color management (each metric colors itself by its own severity), classic theme adoption, two new themes (catppuccin-mocha, tokyo-night), and per-severity color overrides via `cs config set color_ok|warn|hot`. v3.2 daemon fast-mode (`cs --setup --fast`) still ships for ~5× lower CPU at refreshInterval=1. Requires the `cs` CLI from PyPI (`pip install claude-statusbar` or `uv tool install claude-statusbar`).",
4
-
"version": "3.5.1",
3
+
"description": "Lightweight Claude Code status-line monitor with switchable styles, themes, and slash commands. v3.6.0 makes daemon (fast) mode the default for `cs --setup` — under 1% CPU continuously instead of ~3% inline at refreshInterval=1; pass `--inline` to opt back. v3.4 added per-segment color management, classic theme adoption, two new themes (catppuccin-mocha, tokyo-night), per-severity color overrides via `cs config set color_ok|warn|hot`. Requires the `cs` CLI from PyPI (`pip install claude-statusbar` or `uv tool install claude-statusbar`).",
Copy file name to clipboardExpand all lines: README.md
+14-12Lines changed: 14 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -37,13 +37,15 @@ Lightweight Claude Code status-line monitor. Shows your 5h / 7d rate-limit usage
37
37
38
38
## Latest release
39
39
40
-
**v3.5.1** (2026-05-08) — `npx skills add` install path, `show_cache_age` on by default.
40
+
**v3.6.0** (2026-05-08) — **`cs --setup` now defaults to daemon (fast) mode**: under 1% CPU continuously instead of ~3% inline. Pass `--inline` to opt back. Also: py3.9 compat fixes, GitHub Actions CI, animated hero GIF.
41
+
42
+
**v3.5.1** — `npx skills add` install path, `show_cache_age` on by default.
41
43
42
44
**v3.5.0** — consolidated `claude-statusbar` skill: say *"switch theme to nord"* / *"余量颜色改成 #4ec85b"* and Claude Code routes it to the right `cs` command.
43
45
44
46
**v3.4** — per-segment color management (each metric colors itself by its own severity), classic style finally respects themes, two new themes (`catppuccin-mocha`, `tokyo-night`), per-severity color overrides via `cs config set color_ok|warn|hot`.
45
47
46
-
**v3.2** — daemon fast-mode for ~5× lower CPU at `refreshInterval=1`.
48
+
**v3.2** — daemon fast-mode (now the default in v3.6.0) for ~5× lower CPU at `refreshInterval=1`.
47
49
48
50
Full release notes in [CHANGELOG.md](CHANGELOG.md).
49
51
@@ -90,13 +92,13 @@ Then add to `~/.claude/settings.json`:
90
92
{
91
93
"statusLine": {
92
94
"type": "command",
93
-
"command": "cs",
95
+
"command": "cs render",
94
96
"refreshInterval": 1
95
97
}
96
98
}
97
99
```
98
100
99
-
`cs --setup` writes `refreshInterval: 1` by default so the cache-age countdown ticks visibly. At 1Hz, the inline `cs` command runs ~30ms per render (~3% CPU continuously); if that's a concern, run `cs --setup --fast` instead — daemon mode brings it under 1%. To go quieter, set `refreshInterval` to a higher value (`30`, `60`) — `cs --setup`will preserve any explicit value you've already chosen.
101
+
`cs --setup`(since v3.6.0) writes `cs render` + `refreshInterval: 1` by default — daemon mode, under 1% CPU continuously, smooth per-second ticks for the cache-age countdown. The daemon is auto-started by `cs --setup` and lazy-respawns on `cs render` if it ever dies, so you never see a frozen bar. To opt out and use the legacy inline path, run `cs --setup --inline` (writes plain `cs`, ~3% CPU at 1Hz). To go quieter regardless of mode, set `refreshInterval` to a higher value (`30`, `60`) — `cs --setup`preserves any explicit value you've already chosen.
100
102
101
103
### Skill-only install (already have `cs`)
102
104
@@ -215,21 +217,20 @@ Set via `cs config set <key> <value>`. Wipe everything back to defaults with `cs
215
217
216
218
Override per-invocation via `--style` / `--theme` flags or `CLAUDE_STATUSBAR_STYLE` / `CLAUDE_STATUSBAR_THEME` env vars.
217
219
218
-
## Fast mode — for `refreshInterval: 1`
220
+
## Fast mode (daemon) — default since v3.6.0
219
221
220
-
If you've set `"refreshInterval": 1` in `settings.json` (so the cache-age widget ticks every second), the default `cs` command runs ~45ms per render = ~4% CPU continuously. Fast mode brings that down to ~3-5ms per render = under 1% CPU by keeping a long-lived `cs daemon`that pre-renders into `~/.cache/claude-statusbar/rendered.ansi`. The statusLine command becomes `cs render` — a thin reader that just `cat`s the file.
222
+
`cs --setup` writes `cs render` + `refreshInterval: 1`by default. A long-lived `cs daemon` pre-renders into `~/.cache/claude-statusbar/rendered.ansi`; the statusLine command (`cs render`) is a thin reader that just `cat`s the file. Each tick is ~3-5ms, so total CPU stays under 1% continuously. The legacy inline path (~30ms/tick, ~3% CPU at 1Hz) is still available via `cs --setup --inline`.
221
223
222
224
```bash
223
-
cs --setup --fast # writes settings.json + spins up the daemon
224
-
cs daemon status # check it's alive
225
+
cs --setup # default: daemon mode, auto-starts the daemon
226
+
cs --setup --inline # opt out, use legacy inline path
227
+
cs daemon status # check the daemon is alive
225
228
cs daemon stop # stop the daemon (statusLine falls back to inline)
226
229
cs daemon start # start it again
227
230
```
228
231
229
232
Crash safety: if the daemon dies or freezes, `cs render` notices `rendered.meta.json` is older than 5s and falls back to inline render — and lazily re-spawns the daemon in the background. You never see a frozen status line.
230
233
231
-
To revert: `cs --setup` (no `--fast`) restores the bare-`cs` legacy command.
232
-
233
234
### Optional: auto-start on login (launchd / systemd)
234
235
235
236
Lazy-spawn (above) covers most cases — the daemon comes up on first `cs render`. If you want stronger guarantees (auto-start at login, OS restarts the daemon on crash, survives reboots without `cs render` needing to fire first):
@@ -297,8 +298,9 @@ cs preview # render every style × theme with YOUR real dat
297
298
cs preview --theme nord # filter to one theme
298
299
cs preview --style hairline --theme dracula # one specific combo
0 commit comments