CodexBar
SkillAI & modelsLets your agent check AI subscription usage, remaining credits, and reset times for providers like Claude and OpenAI.
Then ask your AI: use the CodexBar skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add it as a step in a pipeline you build on Ahel, or connect Ahel to Claude, ChatGPT, Cursor, Claude Code or Codex and ask your AI to use it.
About this skill
AI service usage/quota via CodexBar CLI: Codex/OpenAI, Claude, Kimi and other provider limits, credits, reset times.
What this skill tells your AI
The instructions your AI receives, as published by steipete/agent-scripts in skills/codexbar/SKILL.md and read by Ahel’s review.
Use this when asked about AI subscription usage, rate limits, remaining credits, or "how much Codex/Claude/Kimi do I have left".
CLI
- Binary:
codexbar(Homebrew) - Default invocation honors the in-app provider toggles:
codexbar usage
codexbar usage --format json
- Specific provider (
--provideraccepts codex, claude, kimi, gemini, copilot, cursor, openrouter, and many more — seecodexbar --help):
codexbar usage --provider codex --json
codexbar usage --provider claude --json
- Multiple accounts:
--account <label>,--account-index <n>, or--all-accounts(single provider only).
Auth model
Provider fetches ride existing sessions — OAuth caches, CLI credentials, or browser cookies. No secrets are passed on the command line.
- Codex: OpenAI web dashboard via oauth; falls back to Codex CLI.
- Claude: claude.ai API via browser session cookie; falls back to Claude CLI. "No Claude session key found in browser cookies" means log in to claude.ai in a supported browser (or rely on the CLI fallback).
- Token-based providers read the CodexBar config file.
Dashboard endpoints
The menu bar app serves its dashboard on loopback. The page pulls
/dashboard/v1/snapshot and /cost; there is no /api/* namespace, so those
paths 404 rather than telling you that you guessed. The snapshot endpoint
requires auth, so when the CLI is unavailable the quickest honest check is to
open the dashboard in a browser.
usage --all-accounts polls every account serially and takes well over ninety
seconds. If it produces zero bytes on both stdout and stderr, it is not slow,
it is blocked: the CLI is a helper inside CodexBar.app, and a pending macOS
Gatekeeper prompt stops it dead with no output. Screenshot the screen before
debugging the command.
Interpreting output
- Errors for providers that were never configured are noise, not failures — only report providers the user actually uses.
- Report percentage left, pace vs. expected, and reset time; the pace line ("in deficit"/"in reserve") is the actionable bit.
- Claude rows read
claude-swapstored backups, which produces two confusing readings. The currently active slot shows as having no stored credentials, because the live login is anactive profileand its backup only materialises when you switch away. Andclaude-swapkeeps alast seenpercentage that keeps rendering for accounts whose credentials are gone, so a dead account can read as healthy for days. A plausible percentage is not proof of a working credential; onlyrefresh token yesinclaude-swap list --token-statusis.
Signals
- GitHub stars
- 7k
- Forks
- 635
- Last commit
- Oct 2026
Advanced
- Item type
- skill
- Key
codexbar- Source
- github.com/steipete/agent-scripts
github.com/steipete/agent-scripts