Skip to content
PluginStats

@promptctl/cc-candybar weekly downloads statistics

By promptctl · npm · Claude Code

Statusline renderer for Claude Code — a JSON5-configurable DSL with daemon-cached data sources, byte-clean palette-aware composition, and OSC8 click verbs.

View on npm Fresh · Oct 18, 2026

@promptctl/cc-candybar has 3,990 recorded weekly downloads on npm, an increase of 10.2% over the past 30 days, ranking #1189 of 2,322 tracked listings.

Weekly downloads
3,990
Official API · Oct 18, 2026
7-day growth
+248%
+2.8K weekly downloads
30-day growth
+10.2%
+370 weekly downloads
90-day growth
+5220%
+3.9K weekly downloads
Rank
#1189
Among tracked npm listings

About @promptctl/cc-candybar

<div align="center">

CCCandybar

Powerline statusline for Claude Code — daemon-backed, config-driven, zero-config-file required.

License:MIT npm version Dependencies

<img src="images/demo-tui.gif" alt="CCCandybar TUI Mode Demo" width="600"/> </div>

Try the live bar in your browser → The real daemon, compiled for the page, replays a few turns of a Claude Code session; every click in the bar is real.

What it is

CCCandybar is a statusline renderer for Claude Code. It shows session cost, context usage, git status, model info, rate-limit utilization, and more, configured through a JSON5 DSL with hot-reloading.

A background daemon caches git state, usage data, and per-session values across concurrent Claude Code sessions. The renderer connects to the daemon over a Unix socket, so every invocation is fast (~50ms budget) and stateful.

Quick start

pnpm dlx @promptctl/cc-candybar@latest install

npm is the only install channel: the GitHub releases are tags plus a changelog with no downloadable assets, and installing from a GitHub tag does not work (the built dist/ is not committed).

pnpm 11 delays freshly published packages (minimumReleaseAge), so on or near a release day @latest can silently resolve to an older version. install compares what it staged against the registry and warns when it is behind; to get a specific release immediately, name it: pnpm dlx @promptctl/cc-candybar@<version> install.

That single command (re-run it any time to update to the latest release):

  1. Stages the runtime at a stable path independent of any package-manager cache — ~/Library/Application Support/CCCandybar/ on macOS, $XDG_DATA_HOME/cc-candybar/ on Linux — as bin/cc-candybar (the prebuilt native render binary for your platform, or a node entry where none exists) beside dist/index.mjs (the daemon + CLI bundle).
  2. On macOS, builds ~/Applications/CCCandybarURLHandler.app and registers the cc-candybar:// URL scheme with Launch Services.
  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).

Restart Claude Code. The statusline appears with the bundled default layout — an identity row (host, directory, gitaculous) over a status row (model, context, ceiling, 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).

Customization

Drop a .cc-candybar.json5 (or .cc-candybar.json — both extensions are accepted) at any of these locations:

  1. $CC_CANDYBAR_CONFIG in the statusline command's environment (~ is expanded, and a relative path is relative to the directory Claude Code runs the statusline in). It is read by the client on every render and carried to the daemon, so it can differ per session. A path that names no file renders the bundled default under a Config file not found warning, and one the daemon cannot stat (behind an unsearchable directory, say) under Config file could not be read with the error — either way the bar stays live and loads the file once it can.
  2. <project>/.cc-candybar.json5 (then .json at the same location)
  3. <cwd>/.cc-candybar.json5 (then .json)
  4. $XDG_CONFIG_HOME/cc-candybar/config.json5 (then .json; defaults to ~/.config/cc-candybar/config.json5)

Without $CC_CANDYBAR_CONFIG, every file found is a layer: your user file merges over the bundled default, the cwd's over that, and the project's on top. So a project file declares only what that project adds or changes — a segment placed in a row, a plugin listed — and keeps the rest of your own config. $CC_CANDYBAR_CONFIG names the one file the session loads, and the others are not read. A change made from the bar (a theme picked and saved, a segment added in edit mode) is written to your user file, never to a project's; when a project file sets the same value, the click is refused and names that file.

JSON is a strict subset of JSON5, so the same parser handles both — .json5 is the documented format (supports inline comments, trailing commas, unquoted keys), .json is the legacy/compat extension. When both exist at the same location, .json5 wins and the bar shows a persistent warning so you can remove the shadowed duplicate.

The file merges onto the bundled default, so it declares only what differs. globals merge per field; the named sections (variables, segments, actions, helpers, …) merge by name, your entry winning; root merges per named row (identity and status in the bundled default; a whole tree at root replaces every row). The bundled default is src/config/default-dsl-config.ts, and fuller starting points live under examples/. Run cc-candybar check <path> to load a file exactly as the daemon will: exit 0 means it renders, exit 1 prints the error with the path and line to fix. Add --render and it prints the bar it rendered, so you can read a config's result without installing it.

<!-- The check:pass fence below is loaded by test/doc-snippets.test.ts through `cc-candybar check` — edit it and run that test, so the README example cannot drift from the loader. -->…

Description from the npm listing.

  • claude
  • powerline
  • statusline
  • typescript
  • claude-code

README badge

Show your rank in a README or on your website. The badge updates automatically.

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

@promptctl/cc-candybar weekly downloads on npm, last 90 days: 3,990 weekly downloads as of Oct 18, 2026, +5220% over 90 days.@promptctl/cc-candybarWeekly downloads on npm · Last 90 days3,990downloads / week+5220% over 90 days02K4K6K8K10KJul 20Aug 4Aug 19Sep 3Sep 18Oct 3Oct 18downloads / weekobservedarchived (Internet Archive)no observationsJul 22, 2026 – Oct 18, 2026 · 89 observations · Updated Oc…pluginstats.com
@promptctl/cc-candybar weekly downloads on npm, last 90 days: 3,990 weekly downloads as of Oct 18, 2026, +5220% over 90 days.

7/30/90-day growth

@promptctl/cc-candybar weekly downloads growth on npm: +248% over 7 days, +10.2% over 30 days, +5220% over 90 days.@promptctl/cc-candybarWeekly downloads growth on npm3,990downloads / week now7-day growth+2,843 weekly downloads+248%30-day growth+370 weekly downloads+10.2%90-day growth+3,915 weekly downloads+5220%Growth vs. nearest observation to each baseline date · Updated Oct 18, 2026pluginstats.com
@promptctl/cc-candybar weekly downloads growth on npm: +248% over 7 days, +10.2% over 30 days, +5220% over 90 days.

Ranking history

@promptctl/cc-candybar npm ranking history: currently #1189 (by weekly downloads).@promptctl/cc-candybarnpm ranking · by weekly downloads · Last 90 days#1189current rank#500#600#700#800#900#1000#1100#1200Jul 22Aug 6Aug 21Sep 5Sep 20Oct 5Oct 20rankOct 17, 2026 – Oct 20, 2026 · 4 observations · Updated Oct 18, 2026pluginstats.com
@promptctl/cc-candybar npm ranking history: currently #1189 (by weekly downloads).

Listing placement

All npm2,320 listings · 116 pages · 1,162 shown · page 60, #12 (overall #1,192)
All npm: every listing in weekly downloads order

Listing placement

Claude Code255 listings · 13 pages · page 5, #3 (overall #83)
Claude Code: every listing in weekly downloads order

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

Recent observations

Full history (544)
Recent weekly downloads observations for @promptctl/cc-candybar
Date (UTC)Weekly downloadsChange vs. previous
3,990+608
3,382-79
3,461+2.4K
1,107-372
1,479-148
1,6270
1,627+480
1,147-3.1K
4,234-1.3K
5,525-353
5,878+174
5,704-971
6,675-3.2K
9,906—

Similar npm Claude Code plugins

All 20 @promptctl/cc-candybar alternatives

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/@promptctl/cc-candybar. First seen Oct 16, 2026; last successful collection Oct 20, 2026. See the methodology.