@promptctl/cc-candybar 1.156.4 → 1.157.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -4
- package/dist/index.mjs +128 -138
- package/package.json +6 -9
- package/schema/cc-candybar.schema.json +101 -109
package/README.md
CHANGED
|
@@ -36,7 +36,7 @@ That single command (re-run it any time to update to the latest release):
|
|
|
36
36
|
2. On macOS, builds `~/Applications/CCCandybarURLHandler.app` and registers the `cc-candybar://` URL scheme with Launch Services.
|
|
37
37
|
3. Writes the staged `bin/cc-candybar` path as the statusline command into `~/.claude/settings.json` (skipped with a notice if you've customized the command; `--force` overwrites).
|
|
38
38
|
|
|
39
|
-
Restart Claude Code. The statusline appears with the bundled default layout — an identity row (host, directory, gitaculous) over a status row (model, context,
|
|
39
|
+
Restart Claude Code. The statusline appears with the bundled default layout — an identity row (host, directory, gitaculous) over a status row (model, context, autocompact, cacheTimer, block, weekly, activity). On macOS, Cmd-clicking clickable cells fires `cc-candybar://` URL verbs that the daemon dispatches (via the URL handler registered in step 2).
|
|
40
40
|
|
|
41
41
|
## Customization
|
|
42
42
|
|
|
@@ -87,7 +87,7 @@ Saving the file triggers a hot-reload of every active session.
|
|
|
87
87
|
└──────────────────┘
|
|
88
88
|
```
|
|
89
89
|
|
|
90
|
-
- **Daemon** (`src/daemon/`) — long-lived background process. One per user. Caches git state via filesystem watchers, usage data, and per-session key/value state. Runs until it exits on a memory backstop — on what the platform charges the process: `phys_footprint` on macOS, RSS on Linux (default
|
|
90
|
+
- **Daemon** (`src/daemon/`) — long-lived background process. One per user. Caches git state via filesystem watchers, usage data, and per-session key/value state. Runs until it exits on a memory backstop — on what the platform charges the process: `phys_footprint` on macOS, RSS on Linux (default 1024 MB via `CC_CANDYBAR_RSS_LIMIT_MB`; the V8 heap cap the spawner passes is twice that, a margin wide enough that the graceful backstop fires first under any growth its 60 s poll can see) or the host restarts; there is no idle or age timeout.
|
|
91
91
|
- **Client** (`rust-client/src/main.rs`) — the Rust binary installed as `bin/cc-candybar`, and the only thing on the per-render path: it connects to the daemon, sends the hook JSON, and prints the ANSI response. On a daemon miss it spawns one detached and prints an empty line, so the next refresh finds a warm daemon. Every subcommand (`install`, `daemon`, `check`, `doctor`, …) execs the Node bundle at `dist/index.mjs`, which carries a socket relay of its own (`src/daemon/client.ts`) as the fallback when no native binary is staged.
|
|
92
92
|
- **Renderer** (`src/dsl/render.ts`) — `renderDsl` is the single render path; the daemon, the demo and the tests all call it. It walks the config's layout tree, evaluates each segment's templates against the daemon's payload, and hands the styled cells to `src/render/` (strip and joiner selection, pickers and menus, the diagnostic strip). The payload's data comes from the providers in `src/segments/` — git, session, context, metrics, tmux, pricing.
|
|
93
93
|
- **Themes** (`src/themes/`) — palette construction plus name policy (which theme, style, variation, endcaps and colour depth names resolve to what). The colour arithmetic itself — blending, contrast, OKLCH transposition — lives in the separate `rich-js` package; this repo does none of it.
|
|
@@ -118,8 +118,7 @@ These are the segment names `DEFAULT_DSL_CONFIG` declares, each available to a u
|
|
|
118
118
|
| `tokenSparkline` | `⚡` a sparkline over the last 24 speed samples | once speed samples exist |
|
|
119
119
|
| `cacheTimer` | `◴` minutes until the prompt cache expires, or `cold` | while a cache expiry is known |
|
|
120
120
|
| `context` | `◔` context tokens used and the percentage left | when context tokens are known |
|
|
121
|
-
| `
|
|
122
|
-
| `autocompact` | `⇲` Claude Code's auto-compact window — `auto`, or the tokens `/autocompact` last set; `−`/`+` move it by 100K up to the model's context window, `↺` returns it to `auto`. Each click types `/autocompact` into the session, so the controls show only inside tmux. Placed beside `ceiling` | always |
|
|
121
|
+
| `autocompact` | `⇲` Claude Code's auto-compact window — `auto`, or the tokens `/autocompact` last set; `−`/`+` move it by 100K up to the model's context window, `↺` returns it to `auto`. Each click types `/autocompact` into the session, so the controls show only inside tmux. Placed beside `context` | always |
|
|
123
122
|
| `metrics` | `Δ` last response time, `⧖` response time, `⧗` session duration, `◆` message count, lines changed | when any of those exist |
|
|
124
123
|
| `activity` | `⌘` the slash command that opened the turn, `☐` the in-progress todo with its position, `⟳` tools in flight and `✓` tools finished this turn | while the session is doing something |
|
|
125
124
|
|