홈으로 돌아가기

Codex 프로필을 위한 Bash CLI: 사용량 및 프록시

Bash 스크립트 codex-auth는 여러 Codex 계정 작업을 간소화합니다: 프로필 저장/전환, API를 통한 사용량 모니터링, 캐시 및 프록시. base64/stat/sha256 폴백 포함 크로스플랫폼 지원. 제한사항: auth.json 구조에 의존.

Codex 프로필 관리: 사용량 포함 bash 스크립트
Advertisement 728x90

Codex 프로필 전환을 위한 Bash CLI 도구

여러 Codex 계정(직장용, 개인용, 백업용 등)을 오가다 보면 기본 ~/.codex/auth.json 파일이 큰 걸림돌이 됩니다. 수동으로 auth 파일을 복사하면 어떤 프로필이 활성화됐는지, 쿼터가 얼마나 남았는지 헷갈리고 중요한 데이터가 덮어써질 위험이 큽니다. codex-auth라는 간단한 bash 스크립트가 이를 해결해줍니다. 프로필 저장, 전환, API를 통한 사용량 모니터링 명령어를 추가한 도구죠.

이 스크립트는 프로필을 별도로 저장하고, 사용량 데이터를 캐싱하며, 프록시를 지원하고 지문(fingerprint)으로 중복 계정을 감지합니다.

auth.json 위치와 플랫폼별 주의사항

주요 인증 파일:

Google AdInline article slot
  • Linux/macOS: ~/.codex/auth.json
  • Windows: %USERPROFILE%\.codex\auth.json

access_token, id_token, account_id를 포함합니다. 구조가 변경될 수 있어 jq와 대체 방식을 사용해 파싱합니다.

수동 cp의 문제점:

  • 활성 프로필 표시 없음
  • 데이터 손실 위험
  • 쿼터나 리셋 시간 정보 없음

스크립트 명령어

깔끔한 CLI 인터페이스를 제공합니다:

Google AdInline article slot
  • codex-auth — 사용량과 함께 프로필 목록
  • codex-auth usage — 현재 auth.json의 쿼터
  • codex-auth save <name> — 현재 프로필 저장
  • codex-auth use <name> — 프로필 전환 (또는 codex-auth <name>)
  • codex-auth list-fast — API 호출 없이 로컬 목록
  • codex-auth backup — 현재 프로필 백업

프록시 지원:

  • codex-auth proxy set <url>
  • codex-auth proxy show
  • codex-auth proxy unset

캐싱:

  • codex-auth cache-time [seconds] (기본 15초, 0으로 캐시 비활성)

사용 예시

  • 직장 계정 로그인: codex-auth save work
  • 개인 계정 로그인: codex-auth save personal
  • 전환: codex-auth work 또는 codex-auth personal
  • 출력 예:
📊 5h: 100% ⏱5h   7️⃣ 15% ⏱4d 9h      work      <[email protected]>     
📊 5h: 100% ⏱5h   7️⃣ 84% ⏱3d 18h    *personal  <[email protected]>

API를 통한 사용량 모니터링

https://chatgpt.com/backend-api/wham/usageAuthorization: Bearer $tokenaccount_id 헤더로 쿼리:

Google AdInline article slot
curl -s \
  -H "Authorization: Bearer $token" \
  -H "Accept: application/json" \
  -H "User-Agent: CodexCLI" \
  "https://chatgpt.com/backend-api/wham/usage" | jq

파싱 결과:

  • 계정 이메일
  • 플랜 유형
  • 남은 쿼터 (5시간, 주간)
  • 리셋 시간
  • 코드 리뷰 제한

속도를 위한 캐싱

~/.codex-auth-profiles/.usage-cache에 토큰 + account_id + 프록시로 키링. TTL 설정으로 불필요한 API 호출 피함. TTL=0이면 매번 최신 데이터 가져옴.

프록시 지원

기업 네트워크나 방화벽용:

codex-auth proxy set http://127.0.0.1:8888

curl은 모든 요청에 --proxy 사용. ~/.codex-auth-profiles/proxy에 저장.

중복 감지

프로필 지문:

  • account_id
  • id_tokensub
  • 이메일
  • 전체 파일의 SHA256

다른 이름으로 중복 저장 방지하고 활성 auth.json과 일치 확인.

플랫폼 간 적응

  • base64: Linux base64 -d, macOS base64 -D
  • stat: Linux stat -c %Y, macOS stat -f %m
  • SHA256: Linux sha256sum, macOS shasum -a 256

mktemp + mv로 원자적 쓰기.

프로필은 ~/.codex-auth-profiles에 JSON 파일로 저장: 프로필, 현재 선택, 설정, 캐시.

제한사항

  • auth.json 구조 의존
  • 백엔드 API 변경 가능
  • Bash 한정, 복잡 로직 미지원

의존성: bash, jq, curl, awk, sort, base64, stat.

주요 장점

  • auth.json 덮어쓰기 위험 없이 프로필 전환
  • 시각적 쿼터와 리셋으로 사용량 모니터링
  • TTL 캐싱으로 속도 향상, 네트워크용 프록시 지원
  • 지문으로 중복 방지
  • 원자적 쓰기, 완전 크로스플랫폼

— Editorial Team

Advertisement 728x90

다음 읽기