This repository was archived by the owner on Mar 5, 2026. It is now read-only.
Releases: sasha-computer/claude-code-usage
Releases · sasha-computer/claude-code-usage
Release list
v1.5.0
What's new
- Multi-account support -- monitor usage across multiple Claude Code accounts via pi-multi-claude-code. The menu bar shows a badge with the active account initial, and a segmented picker in the popover lets you switch between accounts.
- MCC settings section -- enable/disable multi-account mode and see token status for each account in Settings.
- Account badge in menu bar -- filled circle with the active account initial, natively aligned using the status button image.
Fixes
- Settings window now opens reliably -- worked around a macOS limitation where
showSettingsWindow:silently fails in LSUIElement (menu bar only) apps. Settings window is now managed directly.
v1.4.0
What's new
- Auth-expired popup -- when your Claude Code login token expires and automatic refresh fails, a native macOS alert now appears with a "Re-authenticate" button that launches
claude loginin your browser. No more silently broken state -- the app tells you what happened and fixes it in one click. - Alert is throttled to once per 4 hours so it won't nag you on every refresh cycle.
v1.3.2
Fixes
- Multi-layer token recovery -- the app now fights to stay authenticated instead of giving up when the OAuth refresh token dies. Refreshes tokens early (12 min before expiry), re-reads the keychain to pick up tokens that Claude Code CLI already refreshed, and retries after a short wait in case Claude Code is mid-refresh. Should eliminate the daily "Token expired" error.
Internal
- 12 new tests covering token refresh recovery, pre-emptive refresh boundaries, and keychain re-read detection
v1.3.1
What's new
- Version number in popover -- header now shows "Claude Code Usage v1.3.1" so you always know which version you're running
- Full app name -- header updated from "Claude Code" to "Claude Code Usage"
v1.3.0
What's new
- In-app self-update -- clicking "Install Update" now downloads and installs the update automatically. No more browser DMG downloads or drag-to-Applications. Falls back to manual download if anything goes wrong.
v1.2.1
Fixes
- Fixed "Not logged in" every morning -- the token refresh was using a delete-then-add pattern to update the Keychain. If the add failed (e.g., Keychain locked after sleep), credentials were permanently lost. Now uses an atomic upsert that never deletes the existing entry.
- Added in-memory credential cache -- if a Keychain write fails, the app keeps working with cached credentials until restart instead of immediately showing "Not logged in".
- Handles missing Keychain entries -- if credentials were previously lost, the app can now rebuild the entry from a successful token refresh instead of silently failing.
v1.2.0
What's new
- Automatic update checking -- the app checks GitHub for new versions on launch and daily. When an update is found, a standard macOS alert appears with Install Update / Remind Me Later / Skip This Version.
- Update banner in menu bar popover -- a blue indicator shows when a new version is available, with one-click download.
- Check for Updates menu item -- right-click the menu bar icon and hit Check for Updates (Cmd+U), or use the Check Now button in Settings.
- Update preferences -- toggle automatic checking on/off in Settings, with last-checked timestamp.
- Homebrew cask support -- install with
brew install --cask sasha-computer/tap/claude-code-usage. - Landing page -- frontend with screenshots, brew install command, and feature overview.
- Light and dark mode screenshots added to README and frontend.
v1.1.0
What's New
Keyboard shortcuts -- Cmd+R to refresh, Cmd+Q to quit, Cmd+W/Esc to close popover, Cmd+, to open Settings. Right-click the menu bar item for a context menu.
Fixed 0% on launch -- the menu bar now updates reactively via Combine instead of polling, so it shows correct values the moment data arrives.
New app icon -- the coral blob from the hero image, cropped tight to fill the icon canvas.
DMG installer -- drag-to-Applications disk image replaces the old zip.
Homebrew support -- brew install --cask sasha-computer/tap/claude-code-usage
Performance
- Reactive Combine pipeline with debounce + dedup (no redundant redraws)
- Cached font allocation
- 10s timer tolerance for energy-efficient CPU wakeups
- XCTest performance benchmarks for all hot paths
UI polish
- Exact HH:mm refresh timestamp instead of "just now"
- Popover spacing normalized to 8pt grid
- Refresh button now has a text label for discoverability
Install
brew install --cask sasha-computer/tap/claude-code-usage
Or download ClaudeCodeUsage.dmg below.
v1.0.0
Initial release
- Menu bar usage display -- shows 5-hour and weekly Claude Code rate limit percentages directly in the macOS menu bar, side by side.
- Color-coded status -- green (normal), orange (70%+), red (90%+) so you can tell at a glance.
- Click for details -- popover with exact percentages, progress bars, and reset countdown timers.
- Auto-refresh -- polls the Anthropic usage API every 30 seconds.
- Keychain auth -- reads your Claude Code OAuth credentials from the macOS Keychain. No manual config needed.
- Token refresh -- automatically refreshes expired tokens and writes them back to the Keychain so Claude Code stays logged in.
- Error reporting -- specific messages for not logged in, expired token, network failure, and parse errors.
- Settings window -- current usage summary and app info via Cmd+,.
- Unit tests -- formatters, status thresholds, and API response parsing covered.
- Install script -- one-liner curl install, or download the DMG.