ccaa is a small Go CLI that switches Codex between saved base_url + OPENAI_API_KEY profiles.
It stores its own state in one file:
~/.ccaa/config.toml
It patches these Codex files directly:
~/.codex/config.toml~/.codex/auth.json
go build ./...
./ccaa install./ccaa init
./ccaa add -n main -p vendor-a -u https://example.com/v1 -k sk-xxx -d "monthly route"
./ccaa list
./ccaa use main
./ccaa current
./ccaa help add
./ccaa installversion = 1
current_profile = "main"
[codex]
config_path = "~/.codex/config.toml"
auth_path = "~/.codex/auth.json"
[[profiles]]
name = "main"
provider = "vendor-a"
description = "monthly route"
base_url = "https://example.com/v1"
api_key = "sk-xxx"useonly updates thebase_urlunder the activemodel_providersection inside Codex'sconfig.tomluseonly updatesOPENAI_API_KEYinside Codex'sauth.jsoninstallcopies the current binary into a PATH location appropriate for the current OS- before writing,
ccaacreates timestamped backups next to both Codex files