Overview
ClaudeChecker sits quietly in your menubar and tracks your Claude API quota usage across both the 5-hour and 7-day windows — so you always know how much runway you have left before hitting a rate limit.
No API key required. It reads directly from your claude.ai session using a built-in browser login — the same data the Claude web app uses.
Screenshots
![]() Main window |
![]() Settings |
![]() Update available |
![]() Release notes |
![]() Update notification |
![]() Limit reset |
![]() 80% limit warning |
![]() 95% limit warning |
Features
📊 Usage Monitoring
- Real-time quota tracking for both 5-hour and 7-day windows
- Circular gauge with percentage, time remaining, and reset time for each window
- Extra usage credits display (monthly limit vs used, with colour-coded progress bar)
- Usage level badge — Low / Med / High — at a glance
🖥 Menubar Display
- Compact percentage display directly in the menubar:
◔ 22% 35% - Toggle between percentage view and icon-only in Settings
- Auto-updates after every refresh cycle
🔄 Auto Refresh
- Configurable refresh interval: 1 / 2 / 3 / 4 / 5 / 10 minutes
- Update check runs alongside every data refresh
- Persists your chosen interval across restarts
🔐 Authentication
- Built-in login via
WKWebView— sign into claude.ai once, session persists - No API key, no credentials stored beyond the macOS WKWebsiteDataStore
- Re-authenticate any time from Settings → Sign in again
🔔 Notifications
- Limit warnings — floating panel appears near the menubar icon when a window hits 80% (orange) or 95% (red)
- Limit reset — notified when a quota window resets and usage drops back to low
- Update available — notified when a new version is detected
- Post-update confirmation — compact toast confirms the new version on first launch
- All notifications auto-dismiss after 8 seconds, or can be closed manually
🔄 Auto Update
- Automatic update detection — checks for new versions on launch and on each refresh cycle
- One-click install: downloads, unpacks, replaces, and relaunches automatically
- Beta channel — opt in to early access builds via Settings toggle
📋 Session Diary
- Sparkline chart showing quota burn history over the session
- Average burn rate calculated from the 5-hour window
⚙️ Settings
- Authentication management
- Menubar display toggle
- Refresh interval picker
- Beta channel toggle
- About section with version, build info, and update check
🖱 Right-Click Menu
- Right-click the menubar icon for quick Show and Quit options
- ✕ button hides the panel (app stays running in menubar)
- Full quit via right-click → Quit
Requirements
- macOS 13 Ventura or later
- A claude.ai account
Installation
Homebrew (easiest)
brew tap superdooper86/tap
brew install --cask claudechecker
Download
- Go to Releases
- Download
ClaudeChecker.zipfrom the latest release - Unzip and drag
ClaudeChecker.appto/Applications - Open from Applications — it will appear in your menubar
macOS security prompt? If macOS blocks the app on first launch, run this in Terminal:
xattr -cr /Applications/ClaudeChecker.appThis is not needed when installing via Homebrew.
First Run
- Click the menubar icon (gauge symbol)
- If prompted — click Sign In and log into claude.ai in the built-in browser
- Your usage data will appear within a few seconds
Data Sources
ClaudeChecker reads from the following claude.ai API endpoints (authenticated via your session):
| Endpoint | Used for |
|---|---|
/api/bootstrap |
Organisation UUID and account email |
/api/organizations/{id}/usage |
5-hour and 7-day quota windows |
/api/organizations/{id}/overage_spend_limit |
Extra usage spent and monthly limit |
/api/organizations/{id}/prepaid/credits |
Current credit balance |
Privacy
- No data leaves your machine except to
claude.ai(your own session) andgit.jamesbone.net(version check) - Session stored in macOS
WKWebsiteDataStore.default()— same as Safari - No analytics, no tracking, no ads
Built by
superdooper86 & claude
Building and releasing
The canonical repository is https://git.jamesbone.net/coder/claudechecker.
Both macOS and Windows source live on main; the original Windows feature
branch and all historical tags/releases are retained.
Gitea Build validates every push to main on two shared account-scoped host runners (one service and one job slot per host):
mac-mini (label claudechecker-macos-arm64, Xcode) and jamespc (label claudechecker-windows-x64)
(Windows host, .NET 8, Inno Setup). Each run uploads its app/installer artifact.
Use Release macOS or Release Windows Beta, select main, and supply a version
(and macOS channel). Stable versions use X.Y.Z; beta versions use X.Y.Z-beta.N.
The workflow builds that main revision, creates the release and uploads the asset
before advancing the corresponding version*.json feed on main. Releases are
never overwritten. macOS builds retain the existing ad-hoc signing model; this
project does not currently perform Developer ID signing or notarization.
Existing installs still check the old GitHub version*.json URLs. Those files
are kept as a migration bridge advertising the first Gitea-hosted update. Keep
the GitHub repository accessible for those clients; subsequent updates use Gitea.
GitHub workflows were removed after the Gitea builds passed. Windows releases
remain prereleases, so /releases/download/latest/ClaudeChecker.zip always serves
the stable macOS release. The Homebrew tap downloads that Gitea URL and enables
app-managed updates; it no longer needs a tap commit for every release.
Local build commands are bash scripts/build-macos.sh and, on Windows,
./scripts/build-windows.ps1 with INNO_SETUP_COMPILER pointing to ISCC.exe.







