A macOS menu bar app that displays Claude subscription usage.
- macOS 14 (Sonoma) or newer
- Xcode 15+ (build) — the Xcode command-line tools alone are not enough; the asset compiler and SwiftUI previews ship with full Xcode
- Claude desktop installed and signed in. claude-meter reads Claude desktop's cached OAuth token from the macOS Keychain — it does not run its own auth flow. The desktop app does not have to be running; it just has to have signed in at least once. Once that's done, claude-meter tracks all activity on your account, including everything you do in Claude Code or other CLI tools — Claude desktop is only used as the auth source.
If you don't have it: https://claude.ai/download.
git clone https://github.com/<your-fork>/claude-meter.git
cd claude-meter
./build.shFirst launch: macOS shows two Keychain dialogs in sequence so claude-meter can read Claude desktop's cached OAuth token. Each one asks for your login password. This is the cost of reading another app's keychain item — the two prompts correspond to two separate ACL authorizations on the underlying entry. Click Always Allow on both and you'll never see them again; even Allow works thanks to the persistent cache claude-meter writes after the first successful read.
Subsequent launches are silent.
No Dock icon appears — look for the vessel icon in the menu bar (top-right of the screen). Click it for the popover; ⌘, opens the settings panel.
build.sh runs xcodebuild (Release configuration, output pinned to ./build/ so it isn't lost in Xcode's hashed DerivedData) and then opens the app. Safe to re-run — incremental rebuilds are fast.
There's a OpenAI Codex focused fork codex-meter. codex-meter ships a different bundle ID and a visually distinct AppIcon so the two can coexist in the menu bar. If you use both Claude and Codex, install both — each tracks its own subscription.
If you'd rather build interactively:
open ClaudeMeter/ClaudeMeter.xcodeprojThen hit ⌘R.
xcodebuild -project ClaudeMeter/ClaudeMeter.xcodeproj \
-scheme ClaudeMeter \
-destination 'platform=macOS' testClaudeMeter/— Xcode project and app sourcedocs/— architecture, metrics, UI, brand, API, auth, backlogassets/— brand assets (canonical icon SVG) andscreenshots/for README imagestools/render-icon.swift— re-renders the AppIcon set from the SVG spectools/reset-keychain-cache.sh— wipes the persistent Safe Storage cache to re-test the first-launch flow


