steipete/CodexBarPublic

Show usage stats for OpenAI Codex and Claude Code, without having to login.

AI summary: A macOS menu bar utility that tracks API usage and context limits across 65+ AI coding providers.

Stars
19.7K
+66 today
Forks
1.7K
Watchers
48
Open issues
83
Open PRs
63
Contributors
~321
Commits
4.5K
Branches
198

SwiftMITCreated Nov 16, 2025Last push 1d agoLatest release v0.46.0+395 stars this week+395 this month

Star history

since Nov 16, 2025
05K10K15KNov 2025Feb 2026May 2026Aug 2026
19.7K stars as of Aug 6, 2026, tracked back to Nov 16, 2025. Historical curve reconstructed from public GitHub event archives, calibrated to the current total.

Contribution activity

commits per day, last 52 weeks
AugSepOctNovDecJanFebMarAprMayJunJulMonWedFri2025-08-02: 0 commits2025-08-03: 0 commits2025-08-04: 0 commits2025-08-05: 0 commits2025-08-06: 0 commits2025-08-07: 0 commits2025-08-08: 0 commits2025-08-09: 0 commits2025-08-10: 0 commits2025-08-11: 0 commits2025-08-12: 0 commits2025-08-13: 0 commits2025-08-14: 0 commits2025-08-15: 0 commits2025-08-16: 0 commits2025-08-17: 0 commits2025-08-18: 0 commits2025-08-19: 0 commits2025-08-20: 0 commits2025-08-21: 0 commits2025-08-22: 0 commits2025-08-23: 0 commits2025-08-24: 0 commits2025-08-25: 0 commits2025-08-26: 0 commits2025-08-27: 0 commits2025-08-28: 0 commits2025-08-29: 0 commits2025-08-30: 0 commits2025-08-31: 0 commits2025-09-01: 0 commits2025-09-02: 0 commits2025-09-03: 0 commits2025-09-04: 0 commits2025-09-05: 0 commits2025-09-06: 0 commits2025-09-07: 0 commits2025-09-08: 0 commits2025-09-09: 0 commits2025-09-10: 0 commits2025-09-11: 0 commits2025-09-12: 0 commits2025-09-13: 0 commits2025-09-14: 0 commits2025-09-15: 0 commits2025-09-16: 0 commits2025-09-17: 0 commits2025-09-18: 0 commits2025-09-19: 0 commits2025-09-20: 0 commits2025-09-21: 0 commits2025-09-22: 0 commits2025-09-23: 0 commits2025-09-24: 0 commits2025-09-25: 0 commits2025-09-26: 0 commits2025-09-27: 0 commits2025-09-28: 0 commits2025-09-29: 0 commits2025-09-30: 0 commits2025-10-01: 0 commits2025-10-02: 0 commits2025-10-03: 0 commits2025-10-04: 0 commits2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 0 commits2025-10-10: 0 commits2025-10-11: 0 commits2025-10-12: 0 commits2025-10-13: 0 commits2025-10-14: 0 commits2025-10-15: 0 commits2025-10-16: 0 commits2025-10-17: 0 commits2025-10-18: 0 commits2025-10-19: 0 commits2025-10-20: 0 commits2025-10-21: 0 commits2025-10-22: 0 commits2025-10-23: 0 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 0 commits2025-10-28: 0 commits2025-10-29: 0 commits2025-10-30: 0 commits2025-10-31: 0 commits2025-11-01: 0 commits2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 57 commits2025-11-17: 27 commits2025-11-18: 27 commits2025-11-19: 63 commits2025-11-20: 34 commits2025-11-21: 70 commits2025-11-22: 73 commits2025-11-23: 1 commit2025-11-24: 3 commits2025-11-25: 28 commits2025-11-26: 6 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 1 commit2025-12-03: 0 commits2025-12-04: 3 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 13 commits2025-12-08: 9 commits2025-12-09: 11 commits2025-12-10: 1 commit2025-12-11: 1 commit2025-12-12: 1 commit2025-12-13: 13 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 30 commits2025-12-18: 32 commits2025-12-19: 41 commits2025-12-20: 41 commits2025-12-21: 29 commits2025-12-22: 36 commits2025-12-23: 46 commits2025-12-24: 38 commits2025-12-25: 72 commits2025-12-26: 62 commits2025-12-27: 64 commits2025-12-28: 75 commits2025-12-29: 39 commits2025-12-30: 10 commits2025-12-31: 17 commits2026-01-01: 42 commits2026-01-02: 17 commits2026-01-03: 4 commits2026-01-04: 18 commits2026-01-05: 16 commits2026-01-06: 4 commits2026-01-07: 7 commits2026-01-08: 9 commits2026-01-09: 5 commits2026-01-10: 9 commits2026-01-11: 5 commits2026-01-12: 2 commits2026-01-13: 1 commit2026-01-14: 0 commits2026-01-15: 7 commits2026-01-16: 38 commits2026-01-17: 32 commits2026-01-18: 29 commits2026-01-19: 12 commits2026-01-20: 21 commits2026-01-21: 5 commits2026-01-22: 6 commits2026-01-23: 1 commit2026-01-24: 1 commit2026-01-25: 2 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 0 commits2026-01-30: 0 commits2026-01-31: 4 commits2026-02-01: 3 commits2026-02-02: 13 commits2026-02-03: 4 commits2026-02-04: 5 commits2026-02-05: 6 commits2026-02-06: 7 commits2026-02-07: 13 commits2026-02-08: 2 commits2026-02-09: 4 commits2026-02-10: 11 commits2026-02-11: 10 commits2026-02-12: 10 commits2026-02-13: 14 commits2026-02-14: 2 commits2026-02-15: 11 commits2026-02-16: 21 commits2026-02-17: 16 commits2026-02-18: 12 commits2026-02-19: 3 commits2026-02-20: 7 commits2026-02-21: 5 commits2026-02-22: 7 commits2026-02-23: 7 commits2026-02-24: 4 commits2026-02-25: 6 commits2026-02-26: 8 commits2026-02-27: 5 commits2026-02-28: 4 commits2026-03-01: 3 commits2026-03-02: 6 commits2026-03-03: 1 commit2026-03-04: 0 commits2026-03-05: 4 commits2026-03-06: 2 commits2026-03-07: 6 commits2026-03-08: 9 commits2026-03-09: 0 commits2026-03-10: 3 commits2026-03-11: 0 commits2026-03-12: 1 commit2026-03-13: 2 commits2026-03-14: 3 commits2026-03-15: 9 commits2026-03-16: 5 commits2026-03-17: 2 commits2026-03-18: 1 commit2026-03-19: 4 commits2026-03-20: 2 commits2026-03-21: 2 commits2026-03-22: 9 commits2026-03-23: 11 commits2026-03-24: 1 commit2026-03-25: 0 commits2026-03-26: 0 commits2026-03-27: 1 commit2026-03-28: 0 commits2026-03-29: 0 commits2026-03-30: 16 commits2026-03-31: 2 commits2026-04-01: 13 commits2026-04-02: 1 commit2026-04-03: 12 commits2026-04-04: 6 commits2026-04-05: 5 commits2026-04-06: 2 commits2026-04-07: 3 commits2026-04-08: 23 commits2026-04-09: 5 commits2026-04-10: 3 commits2026-04-11: 2 commits2026-04-12: 8 commits2026-04-13: 9 commits2026-04-14: 2 commits2026-04-15: 2 commits2026-04-16: 4 commits2026-04-17: 3 commits2026-04-18: 24 commits2026-04-19: 0 commits2026-04-20: 2 commits2026-04-21: 10 commits2026-04-22: 3 commits2026-04-23: 4 commits2026-04-24: 6 commits2026-04-25: 4 commits2026-04-26: 4 commits2026-04-27: 0 commits2026-04-28: 6 commits2026-04-29: 6 commits2026-04-30: 3 commits2026-05-01: 3 commits2026-05-02: 4 commits2026-05-03: 1 commit2026-05-04: 19 commits2026-05-05: 20 commits2026-05-06: 17 commits2026-05-07: 4 commits2026-05-08: 6 commits2026-05-09: 7 commits2026-05-10: 60 commits2026-05-11: 25 commits2026-05-12: 1 commit2026-05-13: 6 commits2026-05-14: 33 commits2026-05-15: 37 commits2026-05-16: 26 commits2026-05-17: 28 commits2026-05-18: 18 commits2026-05-19: 0 commits2026-05-20: 23 commits2026-05-21: 13 commits2026-05-22: 40 commits2026-05-23: 9 commits2026-05-24: 2 commits2026-05-25: 5 commits2026-05-26: 13 commits2026-05-27: 26 commits2026-05-28: 23 commits2026-05-29: 5 commits2026-05-30: 12 commits2026-05-31: 20 commits2026-06-01: 19 commits2026-06-02: 16 commits2026-06-03: 1 commit2026-06-04: 7 commits2026-06-05: 16 commits2026-06-06: 8 commits2026-06-07: 41 commits2026-06-08: 14 commits2026-06-09: 5 commits2026-06-10: 24 commits2026-06-11: 40 commits2026-06-12: 60 commits2026-06-13: 23 commits2026-06-14: 43 commits2026-06-15: 27 commits2026-06-16: 22 commits2026-06-17: 5 commits2026-06-18: 28 commits2026-06-19: 42 commits2026-06-20: 15 commits2026-06-21: 12 commits2026-06-22: 15 commits2026-06-23: 12 commits2026-06-24: 22 commits2026-06-25: 1 commit2026-06-26: 8 commits2026-06-27: 9 commits2026-06-28: 27 commits2026-06-29: 6 commits2026-06-30: 31 commits2026-07-01: 62 commits2026-07-02: 14 commits2026-07-03: 29 commits2026-07-04: 47 commits2026-07-05: 24 commits2026-07-06: 28 commits2026-07-07: 31 commits2026-07-08: 11 commits2026-07-09: 47 commits2026-07-10: 27 commits2026-07-11: 37 commits2026-07-12: 37 commits2026-07-13: 28 commits2026-07-14: 40 commits2026-07-15: 32 commits2026-07-16: 127 commits2026-07-17: 114 commits2026-07-18: 81 commits2026-07-19: 25 commits2026-07-20: 7 commits2026-07-21: 9 commits2026-07-22: 11 commits2026-07-23: 28 commits2026-07-24: 22 commits2026-07-25: 4 commits2026-07-26: 11 commits2026-07-27: 18 commits2026-07-28: 34 commits2026-07-29: 20 commits2026-07-30: 0 commits2026-07-31: 0 commits2026-08-01: 0 commits
3,981 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Widely adopted

    19,697 stars

  • Very active

    3,981 commits in 52 weeks

  • Community-driven

    ~321 contributors

  • Permissive license

    MIT

  • Continuous integration

    Automated checks passing

What CodexBar does

CodexBar is a native macOS application that sits in the menu bar to monitor token limits, session context, and billing cycles for various AI coding tools. It queries usage endpoints across more than 65 providers—including OpenAI, Anthropic, Cursor, and Gemini—and displays real-time progress bars for each. The app eliminates the need to constantly log into web dashboards to check when a rate limit will reset. It operates silently in the background, updating dynamically and even offering a combined view for users who juggle multiple APIs.

Aimed at developers, data scientists, and power users on macOS who rely heavily on various AI APIs and coding assistants. It requires macOS 14+ and active accounts with the tracked providers.

  • Multi-provider monitoring: Tracks usage metrics and API limits for over 65 distinct AI providers in one unified interface.
  • Dynamic menu bar icons: Updates the status bar visually to indicate approaching limits or active billing cycles.
  • Countdown to reset: Calculates and displays exactly when your token bucket or rate limit will refresh based on the provider's rules.
  • No-login tracking: Connects directly via local app state or API keys without requiring you to constantly authenticate through web portals.
  • Merge icons mode: Consolidates multiple provider statuses into a single, clean menu bar item to save screen real estate.

Where teams use it

Managing multi-LLM workflows

Developers who route tasks between Claude and GPT-4 use the app to balance their requests and avoid hitting rate limits on a single provider.

Cost control for API usage

Freelancers track their daily token burn across different models to ensure they stay within budget constraints.

Anticipating rate limit resets

Engineers running heavy automated code generation pause their scripts right before hitting a limit, knowing exactly when the bucket refills.

Monitoring enterprise quotas

Teams using shared organization API keys keep an eye on collective usage directly from their local macOS environments.

Getting started: Download the application from codexbar.app and drag it to your Applications folder.

README

main branch

CodexBar 🎚️ — May your tokens never run out.

Every AI coding limit, in your menu bar.

Latest release macOS 14+ Homebrew AUR License: MIT Site

CodexBar — every AI coding limit in your menu bar. 65 providers.

Tiny macOS 14+ menu bar app that keeps AI coding-provider limits visible and shows when each window resets. Codex, OpenAI, Claude, Cursor, Gemini, Copilot, Grok, GroqCloud, ElevenLabs, Deepgram, z.ai, MiniMax, Kiro, Zed, Vertex AI, Augment, OpenRouter, LiteLLM, LLM Proxy, Codebuff, Command Code, ClinePass, AWS Bedrock, and many newer coding providers. One status item per provider, or Merge Icons mode with a provider switcher. No Dock icon, minimal UI, dynamic bar icons.

CodexBar menu popover with provider tiles, usage bars, and reset countdowns

Why

  • Plan around resets. Per-provider session, weekly, and monthly windows with countdowns to the next reset — stop guessing whether to start that long task.
  • Credits, spend, and cost scans. Credit balances, Admin API spend dashboards, provider billing summaries, and local cost scans where the source exposes enough detail.
  • Live status. Provider status polling surfaces incident badges in the menu and an indicator overlay on the bar icon.
  • Privacy-first. Reuses existing provider sessions — OAuth, device flow, API keys, browser cookies, local files — so no passwords are stored.

Install

Requirements

  • macOS 14+ (Sonoma)

GitHub Releases

Download: https://github.com/steipete/CodexBar/releases

Homebrew

brew install --cask codexbar

CLI Tarballs (macOS/Linux)

Homebrew formula (Linux today):

brew install steipete/tap/codexbar

Arch Linux AUR package:

yay -S codexbar-cli

Or download release tarballs from GitHub Releases:

  • macOS: CodexBarCLI-v<tag>-macos-arm64.tar.gz, CodexBarCLI-v<tag>-macos-x86_64.tar.gz
  • Linux (glibc): CodexBarCLI-v<tag>-linux-aarch64.tar.gz, CodexBarCLI-v<tag>-linux-x86_64.tar.gz
  • Linux (static musl): CodexBarCLI-v<tag>-linux-musl-aarch64.tar.gz, CodexBarCLI-v<tag>-linux-musl-x86_64.tar.gz

First run

  • Open Settings → Providers and enable what you use.
  • Install/sign in to the provider sources you rely on: CLIs, browser sessions, OAuth/device flow, API keys, local app files, or provider apps depending on the provider.
  • Optional: Settings → Providers → Codex → OpenAI cookies (Automatic or Manual) to add dashboard extras.

Set API keys from the CLI

Provider toggles and API keys live in the resolved CodexBar config file. New installs use ~/.config/codexbar/config.json; existing ~/.codexbar/config.json installs still load from the legacy path. You can script the same provider list that Settings → Providers uses:

codexbar config providers
codexbar config enable --provider grok
codexbar config disable --provider cursor

For API-key providers, store a key without opening Settings:

printf '%s' "$ELEVENLABS_API_KEY" | codexbar config set-api-key --provider elevenlabs --stdin

set-api-key trims the piped value, stores it with restrictive config-file permissions, and enables the provider by default. Use --no-enable to only save the key, or --api-key <key> for one-off local scripts where shell history is not a concern. See CLI configuration for the full flow.

Providers

  • Codex — OAuth API or local Codex CLI, plus optional OpenAI web dashboard extras.
  • OpenAI — Admin API key usage/cost graphs with legacy credit-balance fallback.
  • Azure OpenAI — API key, endpoint, and deployment validation probe.
  • Claude — OAuth API, browser cookies, or CLI PTY fallback; session and weekly usage where available.
  • Cursor — Browser session cookies for plan + usage + billing resets.
  • OpenCode — Browser cookies for workspace subscription usage.
  • OpenCode Go — Browser or local SQLite data for Go usage windows.
  • Alibaba Coding Plan — Web cookies or API key for coding-plan quotas.
  • Alibaba Token Plan — Bailian browser/manual cookies for token-plan credits.
  • Qwen Cloud — 5-hour and weekly individual Token Plan usage via browser/manual cookies.
  • Gemini — OAuth-backed quota API using Gemini CLI credentials (no browser cookies).
  • Antigravity — Local language server probe (experimental); no external auth.
  • Droid — Browser cookies + WorkOS token flows for Factory usage + billing.
  • Copilot — GitHub device flow + Copilot internal usage API.
  • Devin — Chrome localStorage session or manual Bearer token for daily and weekly quotas.
  • z.ai — API token for personal/team quota, MCP, 5-hour, and hourly usage windows.
  • Manus — Browser session_id auth for credit balance, monthly credits, and daily refresh tracking.
  • MiniMax — API token, cookie header, or browser cookies for coding-plan usage.
  • T3 Chat — Browser cookies capture for Base and Overage usage buckets.
  • ZoomMate — Chrome cookie auto-import or manual cURL capture for credits usage.
  • Kimi — Auth token (JWT from kimi-auth cookie) for weekly quota + 5‑hour rate limit.
  • Kilo — API token with CLI-auth fallback for Kilo Pass usage.
  • Kiro — CLI-based usage; monthly credits + bonus credits.
  • Vertex AI — Google Cloud gcloud OAuth with token cost tracking from local Claude logs.
  • Augment — Augment CLI or browser cookies for credits tracking and usage monitoring.
  • Amp — Browser cookie-based authentication with Amp Free usage tracking.
  • Ollama — API key access plus browser cookies for Ollama Cloud usage windows.
  • Synthetic — API key quota endpoint for rolling five-hour, weekly token, and search-hourly usage.
  • JetBrains AI — Local XML-based quota from JetBrains IDE configuration; monthly credits tracking.
  • Warp — API token for GraphQL request limits and monthly credits.
  • ElevenLabs — API key for character credits and voice slot usage.
  • OpenRouter — API token for credit-based usage tracking across multiple AI providers.
  • Windsurf — Browser localStorage session import or local SQLite cache for plan usage.
  • Zed — Zed editor Keychain session for plan, edit-prediction quota, billing cycle, and overdue invoices.
  • Perplexity — Account usage credits from Perplexity usage data.
  • Xiaomi MiMo — Browser cookies for balance and token-plan usage.
  • Doubao — API key for Volcengine Ark request-limit probes.
  • Sakana AI — Manual Cookie header for 5-hour and weekly quota windows.
  • Abacus AI — Browser cookie auth for ChatLLM/RouteLLM compute credit tracking.
  • Mistral — Browser cookies for API spend, credit balance, and monthly-plan usage.
  • DeepSeek — API key for credit balance tracking (paid vs. granted breakdown).
  • DeepInfra — API key for prepaid balance, current-month spend, and spending-limit tracking.
  • Moonshot / Kimi API — API key for Moonshot/Kimi API account balance tracking.
  • Venice — API key for DIEM or USD balance tracking.
  • Codebuff — API token (or ~/.config/manicode/credentials.json) for credit balance + weekly rate limit.
  • Crof — API key for dollar credit balance and request quota tracking.
  • Command Code — Browser or manual cookies for monthly USD credits from Command Code billing.
  • Qoder — Browser or manual cookies for Qoder big model credit usage.
  • StepFun — Username + password login for Step Plan rate limits (5‑hour + weekly windows) and subscription plan name.
  • AWS Bedrock — AWS access keys or a named AWS profile (SSO/assume-role via the AWS CLI) for Cost Explorer spend, monthly budgets, and optional CloudWatch Claude activity.
  • Grok — Grok CLI billing RPC plus grok.com browser-session fallback.
  • GroqCloud — API key for Enterprise Prometheus request/token/cache-hit metrics.
  • LLM Proxy — API key + base URL for aggregate proxy quota stats and provider breakdowns.
  • ClawRouter — API key for monthly budget, spend, requests, tokens, and routed-provider usage.
  • sub2api — Self-hosted gateway key quota, subscription limits, wallet balance, and per-key usage.
  • Wayfinder — Local router gateway polling for health, per-route breakdown, savings, and decision latency.
  • LiteLLM — Virtual key + proxy URL for personal and team budget/spend tracking.
  • Deepgram — API key usage summaries across speech, agent, token, and TTS metrics.
  • Poe — API key for current point balance and recent points history.
  • Chutes — API key for subscription usage, rolling and monthly quota windows, and pay-as-you-go quotas.
  • Neuralwatt — API key for subscription kWh usage and prepaid credit balance.
  • ZenMux — Management API key for rolling five-hour and seven-day quota windows plus PAYG balance.
  • Open to new providers: provider authoring guide.

Icon & Screenshot

The menu bar icon is a tiny usage meter. Bar meaning is provider-specific, and errors/stale data can dim the icon or show an incident indicator.

Features

  • Multi-provider menu bar with per-provider toggles (Settings → Providers).
  • Provider-specific usage meters with reset countdowns.
  • Optional Codex web dashboard enrichments (code review remaining, usage breakdown, credits history).
  • Inline spend and usage charts for API-backed providers such as OpenAI, Claude Admin API, OpenRouter, LiteLLM, z.ai, MiniMax, Mistral, and AWS Bedrock.
  • Configurable cost-usage scans for Codex + Claude, plus reused chart UI for supported provider histories.
  • A persistent Settings → Usage & Spend view for local 7/30-day estimates, grouped by native currency and limited to providers that expose cost history.
  • Provider status polling with incident badges in the menu and icon overlay.
  • Merge Icons mode to combine providers into one status item + switcher.
  • Display controls for provider icons, labels, bars, reset-time style, and highest-usage auto-selection.
  • Fresh installs default to Adaptive refresh. Existing users keep every valid stored choice, while legacy unset or invalid preferences resolve to 5 minutes. Manual and fixed 1m, 2m, 5m, 15m, and 30m alternatives remain available.
  • Bundled CLI (codexbar) for scripts and CI (including codexbar cost --provider codex, claude, or both for local cost usage); macOS and Linux CLI builds available.
  • WidgetKit widgets for supported providers.
  • Localized app and website with a shared 21-language catalog, automatic website detection, persistent pickers, and RTL support.
  • Optional session quota notifications and weekly-reset confetti.
  • Privacy-first: on-device parsing by default; browser cookies are opt-in and reused (no passwords stored).

Privacy note

Wondering if CodexBar scans your disk? It doesn’t crawl your filesystem; it reads a small set of known locations (browser cookies/local storage, provider config files, local JSONL logs) when the related features are enabled. Plain Adaptive refresh never inspects local agent activity. The separate Adaptive (agent-aware) option asks before inspecting the running-process list (including command lines) to identify Codex/Claude and reading bounded known-session metadata. Declining returns to plain Adaptive. When allowed with Agent Sessions hidden, CodexBar retains only the latest activity time and discards session paths and identities. Provider tokens and token-account settings live in the CodexBar config file with restrictive file permissions. See the discussion and audit notes in issue #12.

macOS permissions (why they’re needed)

  • Full Disk Access (optional): only required to read Safari cookies/local storage for web-based providers. If you don’t grant it, use another supported browser, manual cookies/API keys, OAuth, or CLI/local sources where that provider supports them.
  • Keychain access (prompted by macOS):
    • Chromium cookie import needs the browser “Safe Storage” key to decrypt cookies.
    • Claude OAuth bootstrap may read the Claude CLI Keychain item when CodexBar has no usable cached credentials.
    • CodexBar may use Keychain for browser cookie decryption, cached cookie headers, and OAuth/device-flow credentials where those sources require it.
    • How do I prevent those keychain alerts?
      • Open Keychain Access.app → login keychain → search the prompted item (for Claude OAuth, usually “Claude Code-credentials”).
      • Open the item → Access Control → add CodexBar.app under “Always allow access by these applications”.
      • Prefer adding just CodexBar (avoid “Allow all applications” unless you want it wide open).
      • Relaunch CodexBar after saving.
      • Reference screenshot: Keychain access control
    • How to do the same for the browser?
      • Find the browser’s “Safe Storage” key (e.g., “Chrome Safe Storage”, “Brave Safe Storage”, “Microsoft Edge Safe Storage”).
      • Open the item → Access Control → add CodexBar.app under “Always allow access by these applications”.
      • This removes the prompt when CodexBar decrypts cookies for that browser.
    • Last resort — stop all Keychain reads entirely: if "Always Allow" doesn't stick (e.g., macOS resets the ACL after a Chromium update or a partition_id reset), open CodexBar → Settings → Advanced → Keychain access and enable Disable Keychain access. CodexBar will no longer touch the Keychain. Browser-cookie-based providers will be skipped, but Claude/Codex OAuth via the CLI still works (it reads ~/.codex / ~/.claude config files, not the Keychain).
    • Prompt after uninstall? Deleting the app prevents a new launch from that bundle, but an already-running CodexBar process can keep requesting Keychain access until it quits. Check for that process, a Login Item, another installed copy, or a prompt that names a different requesting binary/path. See Keychain prompt troubleshooting for safe checks and what to include in a support report without sharing secrets.
  • Files & Folders prompts (folder/volume access): CodexBar launches provider CLIs and local probes for some providers. If those helpers read a project directory or external drive, macOS may ask CodexBar for that folder/volume (e.g., Desktop or an external volume). This is driven by the helper’s working directory, not background disk scanning.
  • What we do not request in the background: no Screen Recording or Accessibility permissions; user-triggered helper actions may ask macOS for Automation permission to open Terminal. No passwords are stored (browser cookies are reused when you opt in).

Docs

Getting started (dev)

  • Clone the repo and open it in Xcode or run the scripts directly.
  • Launch once, then toggle providers in Settings → Providers.
  • Install/sign in to provider sources you rely on (CLIs, browser cookies, OAuth/device flow, API keys, or local app/config files).
  • Optional: set OpenAI cookies (Automatic or Manual) for Codex dashboard extras.

Build from source

Requires macOS 14+ and Swift 6.2+.

./Scripts/package_app.sh        # builds CodexBar.app in-place with ad-hoc signing
open CodexBar.app

Dev loop:

./Scripts/compile_and_run.sh
./Scripts/compile_and_run.sh --test  # also run the sharded test suite before packaging/relaunching
make check                           # SwiftFormat + SwiftLint
make docs-list                       # list docs with frontmatter summaries

CLI install:

# after installing CodexBar.app in /Applications
./bin/install-codexbar-cli.sh

Related

  • ✂️ Trimmy — “Paste once, run once.” Flatten multi-line shell snippets so they paste and run.
  • 🧳 MCPorter — TypeScript toolkit + CLI for Model Context Protocol servers.
  • 🧿 oracle — Ask the oracle when you're stuck. Invoke GPT-5 Pro with a custom context and files.

Looking for a Windows version?

Linux desktop integration?

  • codexbar-waybar — Waybar custom module + GTK4 popover for Hyprland / Sway / other Wayland compositors, built on top of the bundled Linux CLI.
  • Codexbar GNOME — GNOME Shell extension that brings CodexBar usage into the desktop panel.
  • codexbar-cinnamon-applet — Linux Mint Cinnamon panel applet powered by CodexBar's JSON output.
  • noctalia-codex-usage — Noctalia/Quickshell plugin that shows Codex 5-hour and weekly usage limits, built on top of the bundled Linux CLI.
  • KodexBar — KDE Plasma widget that shows CodexBar usage in the Plasma panel, built on top of the bundled Linux CLI.
  • codexbar-plasmoid — KDE Plasma 6 widget for CodexBar's meter icon, provider switcher, quota windows, pace, credits, local cost, and status, powered by the bundled Linux CLI.

Status bar & terminal integration

  • showy-quota — always-on AI plan quota strips for SketchyBar, tmux, and Zellij (standalone WASM plugin), built on codexbar serve / the bundled CLI.

Credits

Inspired by ccusage (MIT), specifically the cost usage tracking.

License

MIT • Peter Steinberger (steipete)

View on GitHub

Recent activity

commits and pull requests

Recent open issues

view all

Releases and announcements

92 total
  1. CodexBar 0.46.0v0.46.0Jul 29, 20265.1K downloads

    ### Added - Qwen Cloud: new provider for Individual Token Plans with 5-hour and weekly rolling windows (#2361). Thanks @umutkeltek, and @Yach0 for the API investigation! - ZoomMate: new provider with credits, session history, and pacing, using host-scoped cookie routing (#2344). Thanks @weddle! - Alibaba: Personal/Solo Token Plan variants for mainland (Bailian) and international (Model Studio) accounts (#2487). Thanks @LeoLin990405 and @halilertekin for the investigations! - Claude: show prepaid credit balance in cost surfaces, using only cached or manually configured web sessions (#2443). Thanks @Zihao-Qi! - Claude: setting to hide the Daily Routines row (#2358, fixes #2353). Thanks @Zihao-Qi and @tavlean! - Codex: local Workspaces indexing foundation for per-workspace usage attribution (#2456). Thanks @AmrMohamad! - Menu: fractional session quota estimates with a condensed weekly forecast row (#2357). Thanks @Zihao-Qi! ### Changed - CLI: `config dump` now redacts stored credentials by default; `--show-secrets` restores raw output (#2410, fixes #2400). Thanks @Yuxin-Qiao! ### Fixed - Keychain: disabling Keychain access no longer breaks Cursor and Claude refresh — cookie caches fal

  2. CodexBar 0.45.2v0.45.2Jul 19, 202680.9K downloads

    ### Fixed - Refresh: prevent macOS 14 launch crashes caused by TaskLocal task-allocation corruption (#2341, fixes #2319 and #2326). Thanks @lzylzylzy130 and @jorgesancha! - Menu bar: render custom-layout provider icons at the native size and tint them for light and dark menu bars (#2334). Thanks @elpinguinofrio! - Menu: fix switcher “Weekly progress” to prefer weekly quota windows, with provider-specific fallback when unavailable (#2327). Thanks @Anneo22! - Command Code: improve progress-bar contrast in dark mode (#2333). Thanks @Baksalyar! - Widgets: keep cost rows on one line with large token counts (#2337). Thanks @zhulijin1991! - OpenCode/OpenCode Go: preserve computed sub-1% usage percentages instead of rescaling them as direct fractions (#2331). Thanks @OfficialAbhinavSingh! - OpenCode Go: prefer local usage for unscoped Auto refreshes while keeping account- and workspace-scoped requests web-first (#2316). Thanks @kiranmagic7!

  3. CodexBar 0.45.1v0.45.1Jul 19, 20266.4K downloads

    ### Added - Claude: show per-model weekly claude-swap usage windows from schema-v1 account listings (#2310). Thanks @AlexGodard! - Claude: allow an opt-in claude-swap card when only one account is available (#2280). Thanks @possibilities! - OpenCode Go: add daily local cost and plan-usage history (#2296). Thanks @kentoku24! - Overview: raise the merged provider limit from three to six (#2314). Thanks @BobbyWang0120! ### Changed - Menu bar: remove status-item hover tooltips to match macOS menu extras, keeping VoiceOver titles (#2315). Thanks @BobbyWang0120! - Codex: simplify cost labels to "Cost" and move the reported-versus-estimated explanation into Cost settings, keeping a short per-value estimate note (#2313). Thanks @Zihao-Qi! ### Fixed - StepFun: fix password login web ID derivation so the header and cookie match the anonymous token (#2312). Thanks @Zihao-Qi! - Menu bar: refresh custom cost tokens when token-cost data changes (#2305). Thanks @Zihao-Qi! - Menu bar: refresh custom reset tokens at their displayed time boundaries (#2303). Thanks @Zihao-Qi! - Usage: normalize session-equivalent forecasts against aligned partial-session samples so extrapolated weekly burn is not ove

  4. CodexBar 0.45.0v0.45.0Jul 18, 20268.8K downloads

    ### Added - Menu bar: add drag-and-drop layouts with customizable identity, usage, reset, cost, spacing, and stacked-line tokens (#2275). - Usage: estimate weekly quota in full 5-hour windows and show whether it can run out before reset (#2261). Thanks @hdsheena! - CLI: add quota-aware codexbar guard automation gates with stable exit codes, explicit windows, JSON output, and bounded fetches (#2237). Thanks @OfficialAbhinavSingh! - CLI: add a gated browser-cookie refresh command for cookie-backed providers (#2262). Thanks @PINKIIILQWQ! - OpenCode: add safe cookie re-import actions to OpenCode and OpenCode Go settings, preserving cached sessions until refreshed cookies validate (#2264). Thanks @PINKIIILQWQ! - Refresh: add an opt-in agent-aware Adaptive mode with consent-gated, bounded local activity detection (#2111). Thanks @hhh2210! - Codex: add opt-in local session cost estimates for organization API-key users (#2172). Thanks @wicolian! - Cursor: add dashboard token-cost reports with per-model API-rate estimates and Cursor-metered totals (#1745). Thanks @EClinick! - Cost usage: include OMP session logs alongside pi-compatible sessions without double-counting shared assistant entri

  5. CodexBar 0.44.0v0.44.0Jul 17, 202617.1K downloads

    ### Added - ZenMux: add Management API usage with five-hour and weekly quotas, subscription expiry, and USD PAYG balance. Thanks @kays0x! - Settings: add a local Usage & Spend view with honest 7/30-day coverage, native-currency grouping, and exact-home Codex account scans (#2116). Thanks @Chipagosfinest! - Settings: add a private local share card for Usage & Spend, with native-currency totals and sanitized plan/model labels (#2112). Thanks @Chipagosfinest! - Hooks: add opt-in external commands for quota and provider state changes with shell-free execution and refresh-storm protection (#2001). Thanks @jychp! - CLI: add token-gated dashboard snapshots to codexbar serve, keep sensitive responses uncached, and require explicit plain-HTTP opt-in for LAN binds (#2227). Thanks @jethac! - CLI: show opt-in claude-swap accounts as full and brief usage cards while preserving explicit account and source overrides (#2188). Thanks @possibilities! - ClinePass: add API-key usage tracking for five-hour, weekly, and monthly quota windows (#2219). Thanks @joeVenner and @derekszen! - LongCat: add disabled-by-default quota and fuel-pack tracking with manual or browser cookie authentication (#1697). Tha

Commits per week

last 52 weeks
4590Week of 2025-08-02: 0 commitsWeek of 2025-08-09: 0 commitsWeek of 2025-08-16: 0 commitsWeek of 2025-08-23: 0 commitsWeek of 2025-08-30: 0 commitsWeek of 2025-09-06: 0 commitsWeek of 2025-09-13: 0 commitsWeek of 2025-09-20: 0 commitsWeek of 2025-09-27: 0 commitsWeek of 2025-10-04: 0 commitsWeek of 2025-10-11: 0 commitsWeek of 2025-10-18: 0 commitsWeek of 2025-10-25: 0 commitsWeek of 2025-11-01: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 351 commitsWeek of 2025-11-23: 38 commitsWeek of 2025-11-30: 4 commitsWeek of 2025-12-07: 49 commitsWeek of 2025-12-14: 144 commitsWeek of 2025-12-21: 347 commitsWeek of 2025-12-28: 204 commitsWeek of 2026-01-04: 68 commitsWeek of 2026-01-11: 85 commitsWeek of 2026-01-18: 75 commitsWeek of 2026-01-25: 6 commitsWeek of 2026-02-01: 51 commitsWeek of 2026-02-08: 53 commitsWeek of 2026-02-15: 75 commitsWeek of 2026-02-22: 41 commitsWeek of 2026-03-01: 22 commitsWeek of 2026-03-08: 18 commitsWeek of 2026-03-15: 25 commitsWeek of 2026-03-22: 22 commitsWeek of 2026-03-29: 50 commitsWeek of 2026-04-05: 43 commitsWeek of 2026-04-12: 52 commitsWeek of 2026-04-19: 29 commitsWeek of 2026-04-26: 26 commitsWeek of 2026-05-03: 74 commitsWeek of 2026-05-10: 188 commitsWeek of 2026-05-17: 131 commitsWeek of 2026-05-24: 86 commitsWeek of 2026-05-31: 87 commitsWeek of 2026-06-07: 207 commitsWeek of 2026-06-14: 182 commitsWeek of 2026-06-21: 79 commitsWeek of 2026-06-28: 216 commitsWeek of 2026-07-05: 205 commitsWeek of 2026-07-12: 459 commitsWeek of 2026-07-19: 106 commitsWeek of 2026-07-26: 83 commitsAug 2, 2025Jul 26, 2026
4K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 39 commitsSun 1:00 — 38 commitsSun 2:00 — 31 commitsSun 3:00 — 18 commitsSun 4:00 — 16 commitsSun 5:00 — 31 commitsSun 6:00 — 12 commitsSun 7:00 — 24 commitsSun 8:00 — 17 commitsSun 9:00 — 15 commitsSun 10:00 — 20 commitsSun 11:00 — 23 commitsSun 12:00 — 27 commitsSun 13:00 — 23 commitsSun 14:00 — 24 commitsSun 15:00 — 23 commitsSun 16:00 — 24 commitsSun 17:00 — 30 commitsSun 18:00 — 37 commitsSun 19:00 — 44 commitsSun 20:00 — 33 commitsSun 21:00 — 14 commitsSun 22:00 — 38 commitsSun 23:00 — 29 commitsMon 0:00 — 20 commitsMon 1:00 — 24 commitsMon 2:00 — 19 commitsMon 3:00 — 13 commitsMon 4:00 — 31 commitsMon 5:00 — 2 commitsMon 6:00 — 12 commitsMon 7:00 — 11 commitsMon 8:00 — 13 commitsMon 9:00 — 19 commitsMon 10:00 — 22 commitsMon 11:00 — 16 commitsMon 12:00 — 11 commitsMon 13:00 — 16 commitsMon 14:00 — 20 commitsMon 15:00 — 18 commitsMon 16:00 — 13 commitsMon 17:00 — 29 commitsMon 18:00 — 28 commitsMon 19:00 — 19 commitsMon 20:00 — 32 commitsMon 21:00 — 23 commitsMon 22:00 — 27 commitsMon 23:00 — 32 commitsTue 0:00 — 27 commitsTue 1:00 — 24 commitsTue 2:00 — 33 commitsTue 3:00 — 23 commitsTue 4:00 — 23 commitsTue 5:00 — 17 commitsTue 6:00 — 19 commitsTue 7:00 — 8 commitsTue 8:00 — 6 commitsTue 9:00 — 9 commitsTue 10:00 — 11 commitsTue 11:00 — 31 commitsTue 12:00 — 26 commitsTue 13:00 — 25 commitsTue 14:00 — 26 commitsTue 15:00 — 17 commitsTue 16:00 — 17 commitsTue 17:00 — 29 commitsTue 18:00 — 14 commitsTue 19:00 — 14 commitsTue 20:00 — 15 commitsTue 21:00 — 6 commitsTue 22:00 — 14 commitsTue 23:00 — 15 commitsWed 0:00 — 16 commitsWed 1:00 — 36 commitsWed 2:00 — 29 commitsWed 3:00 — 12 commitsWed 4:00 — 19 commitsWed 5:00 — 6 commitsWed 6:00 — 21 commitsWed 7:00 — 18 commitsWed 8:00 — 10 commitsWed 9:00 — 21 commitsWed 10:00 — 20 commitsWed 11:00 — 18 commitsWed 12:00 — 17 commitsWed 13:00 — 12 commitsWed 14:00 — 25 commitsWed 15:00 — 14 commitsWed 16:00 — 26 commitsWed 17:00 — 22 commitsWed 18:00 — 22 commitsWed 19:00 — 28 commitsWed 20:00 — 24 commitsWed 21:00 — 33 commitsWed 22:00 — 35 commitsWed 23:00 — 24 commitsThu 0:00 — 17 commitsThu 1:00 — 27 commitsThu 2:00 — 15 commitsThu 3:00 — 21 commitsThu 4:00 — 16 commitsThu 5:00 — 19 commitsThu 6:00 — 25 commitsThu 7:00 — 32 commitsThu 8:00 — 27 commitsThu 9:00 — 12 commitsThu 10:00 — 14 commitsThu 11:00 — 12 commitsThu 12:00 — 13 commitsThu 13:00 — 24 commitsThu 14:00 — 33 commitsThu 15:00 — 40 commitsThu 16:00 — 37 commitsThu 17:00 — 36 commitsThu 18:00 — 42 commitsThu 19:00 — 27 commitsThu 20:00 — 30 commitsThu 21:00 — 26 commitsThu 22:00 — 33 commitsThu 23:00 — 47 commitsFri 0:00 — 28 commitsFri 1:00 — 37 commitsFri 2:00 — 37 commitsFri 3:00 — 28 commitsFri 4:00 — 37 commitsFri 5:00 — 38 commitsFri 6:00 — 24 commitsFri 7:00 — 26 commitsFri 8:00 — 16 commitsFri 9:00 — 38 commitsFri 10:00 — 20 commitsFri 11:00 — 18 commitsFri 12:00 — 37 commitsFri 13:00 — 24 commitsFri 14:00 — 26 commitsFri 15:00 — 31 commitsFri 16:00 — 39 commitsFri 17:00 — 26 commitsFri 18:00 — 30 commitsFri 19:00 — 39 commitsFri 20:00 — 23 commitsFri 21:00 — 19 commitsFri 22:00 — 36 commitsFri 23:00 — 31 commitsSat 0:00 — 36 commitsSat 1:00 — 49 commitsSat 2:00 — 40 commitsSat 3:00 — 39 commitsSat 4:00 — 23 commitsSat 5:00 — 16 commitsSat 6:00 — 11 commitsSat 7:00 — 9 commitsSat 8:00 — 5 commitsSat 9:00 — 7 commitsSat 10:00 — 22 commitsSat 11:00 — 22 commitsSat 12:00 — 19 commitsSat 13:00 — 31 commitsSat 14:00 — 20 commitsSat 15:00 — 20 commitsSat 16:00 — 20 commitsSat 17:00 — 20 commitsSat 18:00 — 21 commitsSat 19:00 — 36 commitsSat 20:00 — 29 commitsSat 21:00 — 27 commitsSat 22:00 — 36 commitsSat 23:00 — 39 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.

Who is committing

last 52 weeks
Maintainer commits2,830 (64%)
Community commits1,618 (36%)

4,448 commits in total over the last year.

DateListRankStars gained
Feb 1, 2026daily#25+118
  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    385.5K stars · TypeScript

  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    384.4K stars · TypeScript

  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    384.4K stars · TypeScript

  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    384.4K stars · TypeScript

  • obra/superpowers

    An agentic skills framework & software development methodology that works.

    268.6K stars · Shell

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    238.5K stars · JavaScript