Releases: Gnonymous/CodingBar
Release list
CodingBar v1.1.2
- The spend sparkline now draws as a smooth curve instead of a jagged polyline.
- When auto-check is on and a new version is available, an "Update" button now
appears directly in the panel header — one click to install, no need to open
Settings first. - Fixed the weekly quota forecast. It used to regress across quota resets, which
flattened the trend, projected depletion days out, and rendered it as a bare
weekday that read as a day already past. It now fits only the live window,
suppresses any projection that lands after the window resets, and always
spells the day out (today / tomorrow / weekday).
Full Changelog: v1.1.1...v1.1.2
CodingBar v1.1.1
- In-app auto-update via Sparkle. Off by default
— open Settings and flip on "Auto-check for updates" to get a daily check and
a one-click "Update now" button. - Every update is verified against an EdDSA public key baked into the app
before install, so a tampered feed or zip is silently rejected. - After this manual upgrade, future versions install themselves — Gatekeeper
only prompts on the very first manual install.
Full Changelog: v1.1.0...v1.1.1
CodingBar v1.1.0
Highlights
CodingBar v1.1.0 borrows the two best ideas from Claude Code's /usage and
Claude Desktop's Overview — while keeping everything 100% local.
Insights tab — all-time Profile
- 2×4 stat grid: sessions, messages, total tokens, active days,
current & longest streak, peak hour, favorite model. - GitHub-style 13-week contribution calendar showing where the work
actually happened. - Fun-fact line tying lifetime tokens to a familiar yardstick
(≈N× Harry Potter and the Philosopher's Stone). - The older weekday × hour heatmap is retired — the calendar carries the
same signal with more time depth.
Cost tab — usage attribution
Two new sections, both range-aware (follow the today / 7d / 30d pill) and
metric-aware (follow the cost / tokens toggle):
- By context size: spend split by prompt size at each turn
(≤50k / 50–150k / >150k). When the >150k band gets heavy you get an
actionable callout:/compactmid-task,/clearbetween tasks. - Skills / Subagents / Plugins / MCP servers tables: read straight from
Claude's ownattribution*tags on each request, so percentages are an
exact group-and-sum — not a heuristic. You finally see where the spend
goes — typical example here:workflow-subagent14.2%,playwrightMCP
10.7%,orchestrationskill 4.8%.
Claude-only — Codex logs don't carry attribution tags, so these sections
degrade gracefully on a Codex-only setup.
Performance — boot peak RSS ↓ ~94%
Measured on a ~700 MB / 50k-record corpus:
| before | after | |
|---|---|---|
Boot peak RSS (.app) |
~1.3 GB | ~75 MB |
Steady-state RSS (.app) |
~190 MB | ~50 MB |
| On-disk cache | 18 MB JSON | 6.9 MB binary plist |
Three orthogonal fixes:
- Per-line
autoreleasepoolin the log scanners — drains
JSONSerialization's intermediate NSDictionary tree immediately
instead of piling up across files. - Shared
Scannerfor Claude + Codex — cache is decoded once per
refresh, not twice. - Cache format JSON → binary property list — smaller on disk, decodes
without the intermediate object tree.
Privacy boundary unchanged
Every new piece of data is derived locally from already-scanned logs.
No new network paths, no telemetry. The only network reads remain the
same two read-only GETs from v1.0:
- Claude / Codex usage endpoints (the user's own OAuth token, 5-min TTL cached).
- A user-initiated GitHub releases check (only when you tap "Check for updates").
Install
Download CodingBar-v1.1.0.dmg below, open it, drag CodingBar to
/Applications.
macOS Gatekeeper may flag it as "from an unidentified developer" — there's
no Apple Developer ID yet, the build is ad-hoc signed. Right-click → Open
the first time to bypass.
Full Changelog: v1.0.1...v1.1.0
CodingBar v1.0.1
Full Changelog: v1.0.0...v1.0.1
CodingBar v1.0.0
Full Changelog: https://github.com/Gnonymous/CodingBar/commits/v1.0.0