A unified launcher for Claude Code and Codex that manages multiple named profiles — useful when you have several API accounts, providers, or subscription plans.
- Multiple profiles — switch between different API keys, base URLs, and models with a named shortcut
- Common settings — share a
common.jsonbase config across all Claude profiles, with per-profile overrides - Quota dashboard —
boom statusfetches live usage from Claude (official + MiniMax), Codex, and shows quota windows - Token usage —
boom usagescans local session files for Claude, Codex, and Gemini token counts - Safe defaults — automatically adds
--dangerously-skip-permissions/--dangerously-bypass-approvals-and-sandbox; pass--safeto disable
- bash 3.2+
- node (any recent version; used for JSON merging and status display)
- jq (only for
boom claude show) - Claude Code CLI and/or Codex CLI installed separately
git clone https://github.com/doublnt/boom.git
cd boom
bash install.shBy default the script is installed to ~/.local/bin/boom. Override with:
BOOM_INSTALL_DIR=/usr/local/bin bash install.shOr just copy the boom file somewhere on your PATH and chmod +x it.
# Add a Claude profile (third-party provider via OpenAI-compatible endpoint)
boom claude add myplan
# Set it as the default
boom claude default myplan
# Launch Claude with the default profile
boom claude
# Launch with a specific profile
boom claude myplan
# Check quota across all accounts
boom status
# Show token usage breakdown
boom usageboom stores everything under ~/.boom/ (override with $BOOM_HOME):
~/.boom/
claude/
common.json # merged into every Claude profile
default # name of the default profile
profiles/
myplan.json # per-profile settings (env vars, model, etc.)
codex/
default
profiles/
myaccount/ # per-profile Codex home directory
config.toml
auth.json
shared/
sessions/ # shared across all Codex profiles
history.jsonl
Each file in claude/profiles/ is a Claude Code settings JSON. The env block sets environment variables before launching Claude:
{
"env": {
"ANTHROPIC_BASE_URL": "https://your-provider/v1",
"ANTHROPIC_AUTH_TOKEN": "sk-...",
"ANTHROPIC_MODEL": "claude-sonnet-4-5",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-5",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-sonnet-4-5",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-sonnet-4-5",
"CLAUDE_CODE_SUBAGENT_MODEL": "claude-sonnet-4-5",
"API_TIMEOUT_MS": "600000",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
}
}common.json is deep-merged first; profile keys override common ones.
Profiles that point to the official Anthropic API (no custom ANTHROPIC_BASE_URL) are launched via a temporary ~/.claude/settings.json swap instead of --settings, so Claude's own auth flow works normally.
Each directory in codex/profiles/ is an isolated CODEX_HOME. Sessions and history are symlinked to a shared location so /resume works across profiles.
boom claude [name] [--safe] [--no-profile] [-- <claude args>]
boom c [name] [...]
boom codex [name] [--safe] [--no-profile] [-- <codex args>]
boom x [name] [...]
| Command | Description |
|---|---|
boom claude add <name> |
Create a new profile (interactive) |
boom claude edit [name] |
Edit an existing profile |
boom claude show [name] |
Print merged settings JSON |
boom claude list |
List all profiles |
boom claude default <name> |
Set the default profile |
boom claude remove <name> |
Delete a profile |
boom claude doctor |
Check installation health |
| Command | Description |
|---|---|
boom codex add <name> |
Create profile and run codex login |
boom codex edit [name] |
Rename or re-login |
boom codex list |
List all profiles |
boom codex default <name> |
Set the default profile |
boom codex remove <name> |
Delete a profile |
boom codex doctor |
Check installation health |
| Command | Description |
|---|---|
boom status |
Fetch live quota from Claude / Codex APIs |
boom usage |
Aggregate token usage from local session files |
| Variable | Default | Description |
|---|---|---|
BOOM_HOME |
~/.boom |
Root directory for all boom data |
BOOM_REAL_CLAUDE |
auto-detected | Path to the real claude binary |
BOOM_REAL_CODEX |
/opt/homebrew/bin/codex |
Path to the real codex binary |
MIT