CLI nástroj pro přepínání profilů Codex v bash
Při práci s více účty Codex — pracovními, osobními, záložními — se standardní soubor ~/.codex/auth.json stává úzkým místem. Ruční kopírování auth souborů vede ke zmatkům: není jasné, který profil je aktivní, kolik limitu zbývá, a hrozí přepsání důležitých dat. Jednoduchý bash skript codex-auth to řeší přidáním příkazů pro ukládání, přepínání profilů a monitorování využití přes API.
Skript ukládá profily odděleně, cacheuje využití, podporuje proxy a identifikuje duplicitní účty podle fingerprint.
Umístění auth.json a křížové platformní nuance
Hlavní autorizační soubor:
- Linux/macOS:
~/.codex/auth.json - Windows:
%USERPROFILE%\.codex\auth.json
Uvnitř — access_token, id_token, account_id. Struktura se může změnit, proto je parsování přes jq s fallbacky.
Problémy s cp:
- Žádná indikace aktivního profilu
- Riziko ztráty dat
- Chybí informace o limitech a reset-time
Příkazy skriptu
Skript poskytuje CLI rozhraní:
codex-auth— seznam profilů s využitímcodex-auth usage— limity aktuálního auth.jsoncodex-auth save <název>— uložit aktuální profilcodex-auth use <název>— přepnout (nebo zkráceněcodex-auth <název>)codex-auth list-fast— lokální seznam bez APIcodex-auth backup— záloha aktuálního
Proxy:
codex-auth proxy set <url>codex-auth proxy showcodex-auth proxy unset
Cache:
codex-auth cache-time [sekundy](výchozí 15s, 0 — bez cache)
Příklad použití
- Přihlášení pod pracovním účtem:
codex-auth save work - Opětovné přihlášení pod osobním:
codex-auth save personal - Přepnutí:
codex-auth worknebocodex-auth personal - Výstup:
📊 5h: 100% ⏱5h 7️⃣ 15% ⏱4d 9h work <[email protected]>
📊 5h: 100% ⏱5h 7️⃣ 84% ⏱3d 18h *personal <[email protected]>
Monitorování využití přes API
Požadavek na https://chatgpt.com/backend-api/wham/usage s Authorization: Bearer $token a account_id v hlavičkách:
curl -s \
-H "Authorization: Bearer $token" \
-H "Accept: application/json" \
-H "User-Agent: CodexCLI" \
"https://chatgpt.com/backend-api/wham/usage" | jq
Parsování zobrazí:
- Email účtu
- Typ plánu
- Zbývající množství v okně (5h, týdenně)
- Reset-time
- Limit pro code review
Cacheování pro rychlost
Cache v ~/.codex-auth-profiles/.usage-cache, klíč z token + account_id + proxy. TTL lze nastavit, zabraňuje zbytečným API voláním. Bez cache (TTL=0) — čerstvá data pokaždé.
Podpora proxy
Pro korporátní sítě nebo firewally:
codex-auth proxy set http://127.0.0.1:8888
curl obdrží --proxy, aplikuje se na všechny požadavky. Ukládá se v ~/.codex-auth-profiles/proxy.
Identifikace duplicit
Fingerprint profilu:
account_idsubzid_token- SHA256 celého souboru
Zabraňuje duplicitám pod různými jmény, kontroluje shodu s aktivním auth.json.
Křížové platformní adaptace
- base64: Linux
base64 -d, macOSbase64 -D - stat: Linux
stat -c %Y, macOSstat -f %m - SHA256: Linux
sha256sum, macOSshasum -a 256
Atomický zápis: mktemp + mv.
Profily v ~/.codex-auth-profiles: JSON soubory, aktuální profil, nastavení, cache.
Omezení
- Závisí na struktuře auth.json
- Backend API se může změnit
- Pouze bash, ne pro složitou logiku
Závislosti: bash, jq, curl, awk, sort, base64, stat.
Co je důležité
- Přepínání profilů bez rizika ztráty auth.json
- Využití s vizualizací limitů a resetu
- Cache TTL pro rychlost, proxy pro sítě
- Fingerprint proti duplicitám
- Atomický zápis, křížová platforma
— Editorial Team
Zatím žádné komentáře.