A macOS menu bar app that displays Codex subscription usage.
A fork of claude-meter targeting OpenAI's Codex CLI. Same battery-indicator UX, different backend.
- 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
- Codex CLI installed and signed in. codex-meter reads the bearer token Codex CLI caches at
~/.codex/auth.json. Codex CLI does not need to be running; it just has to have completedcodex loginat least once. After that, codex-meter polls the samewham/usageendpoint Codex CLI itself uses for/status.
If you don't have Codex CLI: https://developers.openai.com/codex.
git clone https://github.com/<your-fork>/codex-meter.git
cd codex-meter
./build.shFirst launch: macOS may prompt for the usual unidentified-developer warning.
No Dock icon — 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/) and then opens the app. Safe to re-run — incremental rebuilds are fast.
There are no Keychain dialogs. Codex CLI stores its tokens in plaintext at ~/.codex/auth.json, so codex-meter just reads the file. macOS may prompt for the usual notarization / unidentified-developer warning.
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 CodexMeter/CodexMeter.xcodeprojThen hit ⌘R.
xcodebuild -project CodexMeter/CodexMeter.xcodeproj \
-scheme CodexMeter \
-destination 'platform=macOS' testCodexMeter/— Xcode project and app sourcedocs/— architecture, metrics, UI, brand, API, auth, backlogassets/— brand assets (canonical icon SVG),fixtures/for parser test data,screenshots/for README imagestools/render-icon.swift— re-renders the AppIcon set from the SVG specutils/extract-codex-token.sh— prints the cached Codex CLI bearer token (for theprobe-codex-usage-api.shhelper)utils/probe-codex-usage-api.sh— fetches the livewham/usageendpoint and saves a fresh fixture
