github steipete/CodexBar v0.55.0
CodexBar 0.55.0

5 hours ago

Highlights

  • Codex inside ChatGPT.app detected: Adaptive (agent-aware) refresh recognizes the ChatGPT-bundled Codex and holds the 5-minute active cadence while it works (#3160, #3163).
  • Antigravity without the desktop app: menu-bar quota refresh reuses an already signed-in agy CLI, and logged-out states show sign-in guidance instead of "Launch Antigravity" (#3146, #3161).
  • Faster OpenCodex spend: pricing each usage entry once drops the spend refresh from ~12 s to ~3 s on a 35k-entry log (#3136).
  • Gemini shutdown guidance: Google's consumer-tier shutdown response surfaces the Antigravity migration path again instead of a bare HTTP 403 (#3139).
  • Codex token parity with tokscale: local token counts now match tokscale on cached usage, out-of-order events, and bare usage rows (#3120).

Fixed

  • Gemini: recognize Google's live consumer-tier shutdown — an HTTP 200 loadCodeAssist body whose ineligibleTiers carries UNSUPPORTED_CLIENT — instead of surfacing the follow-up quota call as a bare HTTP 403, so the Antigravity migration guidance and the Enable Antigravity provider action appear; the login action also stops deleting ~/.gemini/oauth_creds.json to launch a sign-in Google rejects (#3139). Thanks @betive37!
  • Merged Warp icons keep a present-but-unused bonus lane visible and an exhausted bonus in the missing-secondary layout, matching direct Warp rendering; the visible-zero sentinel now survives the renderer's tenth-percent cache quantization (#3165, #3166). Thanks @akshayprabhu200!
  • Fixed single-quota menu-bar icons understating remaining usage: a provider's only meaningful quota now renders as one prominent meter instead of half an icon next to a reserved empty lane, including when it arrives in the secondary slot (#3154, #3155). Thanks @akshayprabhu200!
  • Codex: tokscale parity for local token counts — cached usage derives from the larger of cached_input_tokens/cache_read_input_tokens, out-of-order token_count events are detected field-level before watermark latching, and bare usage rows in non-event rollout lines parse (#3120). Thanks @Yuxin-Qiao!
  • Fixed the Codex cost card blanking Today and recent days when priority processing is in use: row-ownership evidence now accepts the trace database's tier classification instead of discarding whole (day, model) groups (#3150). Thanks @olddonkey!
  • Stopped re-merging the Codex plan-utilization history with itself on every refresh and menu open — the legacy-bucket migration now runs only when a non-canonical bucket actually exists (#3141). Thanks @olddonkey!
  • Claude: web-cookie refresh works in ad-hoc development builds by routing cookie cache entries to process memory, keeping persistent Keychain storage for signed builds and OAuth credentials; cookie imports prefer Chrome and evaluate other browsers lazily (#3162). Thanks @Zihao-Qi!
  • Grok: report period-only CLI-proxy responses as unknown usage instead of 0% when Grok Build has hit its free limit, keeping identity and reset metadata (#3157, #3159). Thanks @anupamchugh!
  • OpenRouter: request the latest completed UTC day from the Activity API instead of the current date, fixing the HTTP 400 that suppressed spend history (#3133, #3138). Thanks @kiranmagic7!
  • CLI install: report success even when unrelated PATH directories are non-writable, while still listing genuine codexbar conflicts from earlier PATH entries (#3153). Thanks @yicone!

Performance

  • OpenCodex: price each usage.jsonl entry once with a pre-resolved models.dev catalog and custom-pricing overlay, memoize day/hour buckets per calendar interval, and read the models.dev cache metadata with a plain stat instead of an extended-attribute read — the OpenCodex spend refresh drops from ~12 s to ~3 s on a 35k-entry log with identical output; existing cost caches are adopted on upgrade, not rebuilt (#3136). Thanks @olddonkey!

Providers

  • Codex: Adaptive (agent-aware) refresh detects ongoing Codex activity from the unified ChatGPT.app — the ChatGPT-bundled Codex is recognized at approved locations (signing-validated), recent rollout writes hold the 5-minute active cadence, and an idle open app is not treated as coding activity (#3160, #3163).
  • Antigravity: menu-bar quota refresh reuses an already signed-in agy CLI without requiring the desktop app, and logged-out/keyring-timeout states report CLI sign-in guidance instead of asking users to launch an unavailable app (#3146, #3161).
  • Antigravity: map retired Flash wire IDs to their current tier, and count local conversations as an offline fallback when the desktop app is unavailable (#3119). Thanks @Yuxin-Qiao!
  • Qwen Cloud: restored Brave browser support in cookie import (#3148). Thanks @umutkeltek!

Usage & Spend

  • Spend dashboard: silently refresh independent providers (Claude/Cursor) when their token publications update, bucket the activity heatmap with the configured IANA timezone, and stop coalescing display-affecting ownership and revision changes (#3106). Thanks @Yuxin-Qiao!
  • Spend: add tokscale-compatible local readers for Cursor and Antigravity local history (#3113). Thanks @Yuxin-Qiao!
  • Added CHF (Swiss Franc) to the display currency options (#3149).

Don't miss a new CodexBar release

NewReleases is sending notifications on new releases.