Codex는 계속 유지할 설정을 config.toml에 저장합니다. 특정 셸에서만 설정을 재정의하거나 자동화에 필요한 비밀 값을 전달할 때, 설치 프로그램의 동작을 조정하거나 진단 정보를 수집할 때는 환경 변수를 사용하세요.
이 페이지에서는 Codex가 직접 읽는 안정적인 공개 환경 변수를 설명합니다. 내부 개발용 변수, 테스트용 변수, env_key로 이름을 직접 지정하는 공급자별 비밀 변수는 제외합니다.
주요 저장 위치
| 변수 | 사용처 | 기본값 | 설명 |
|---|---|---|---|
CODEX_HOME |
CLI, IDE 확장 프로그램, app-server, 설치 프로그램 | ~/.codex |
설정, 인증 정보, 로그, 세션, 스킬, 독립 실행형 패키지 메타데이터 등 Codex 상태를 저장할 루트 디렉터리를 지정합니다. 이 변수를 설정하려면 해당 디렉터리가 이미 있어야 합니다. |
CODEX_SQLITE_HOME |
CLI 및 app-server의 상태 저장 | CODEX_HOME |
SQLite 기반 상태 데이터의 저장 위치를 지정합니다. sqlite_home 설정 옵션이 우선합니다. 상대 경로는 현재 작업 디렉터리를 기준으로 해석합니다. |
CODEX_HOME 아래에 저장되는 파일에 대한 자세한 내용은 설정 및 상태 데이터 저장 위치를 참고하세요.
여러 Linux 호스트에서 같은 데이터베이스를 여는 경우 NFS 홈 디렉터리에서 Codex 실행을 참고하세요.
설치 프로그램 환경 변수
다음 변수는 https://chatgpt.com/codex/install.sh와 https://chatgpt.com/codex/install.ps1에서 제공하는 독립 실행형 설치 스크립트에 적용됩니다.
| 변수 | 기본값 | 설명 |
|---|---|---|
CODEX_NON_INTERACTIVE |
false |
1, true 또는 yes로 설정하면 설치 프로그램이 사용자에게 묻지 않고 기본 응답을 사용합니다. 최초 실행 시 설정에는 사용하지 말고, 스크립트로 설치하거나 업데이트할 때 사용하세요. |
CODEX_INSTALL_DIR |
macOS/Linux에서는 ~/.local/bin, Windows에서는 %LOCALAPPDATA%\Programs\OpenAI\Codex\bin |
사용자가 호출하는 codex 명령어의 설치 위치를 변경합니다. 독립 실행형 패키지 캐시는 계속 CODEX_HOME/packages/standalone 아래에 저장됩니다. |
사용자 입력 없이 설치하려면 다운로드한 설치 프로그램을 실행하는 셸에서 CODEX_NON_INTERACTIVE=1을 설정하세요.
curl -fsSL https://chatgpt.com/codex/install.sh | CODEX_NON_INTERACTIVE=1 sh
$env:CODEX_NON_INTERACTIVE=1; irm https://chatgpt.com/codex/install.ps1 | iex
인증 및 네트워크
| 변수 | 사용처 | 설명 |
|---|---|---|
CODEX_API_KEY |
exec, review, TypeScript SDK, 원격 exec-server | 비대화형 Codex 프로세스에 API 키를 제공합니다. 리포지터리에서 관리하는 코드를 실행할 때는 작업 전체에 키를 설정하지 말고 해당 명령어에만 인라인으로 설정하세요. |
CODEX_ACCESS_TOKEN |
CLI, app-server, 신뢰할 수 있는 자동화 | 신뢰할 수 있는 자동화에 ChatGPT 또는 Codex 액세스 토큰을 제공합니다. 로그인 상태를 유지하려면 파이프를 통해 토큰을 codex login --with-access-token에 전달하세요. |
OPENAI_FEDERATION_RULE_ID |
워크로드 ID | 워크로드에 구성된 페더레이션 규칙을 선택합니다. |
OPENAI_IDENTITY_TOKEN_FILE |
워크로드 ID | 현재 OIDC 토큰 또는 SPIFFE JWT-SVID가 들어 있는 파일의 절대 경로를 지정합니다. |
OPENAI_WORKLOAD_IDENTITY_CONTEXT |
워크로드 ID | 클라이언트가 보고한 정보를 바탕으로 감사 기록에서 작업 주체를 식별할 수 있도록 크기가 제한된 JSON 식별자를 선택적으로 제공합니다. 인증이나 권한 부여에는 영향을 주지 않습니다. |
CODEX_CA_CERTIFICATE |
HTTPS, 로그인 및 WebSocket 클라이언트 | 기업 네트워크에서 TLS 트래픽을 가로채거나 사설 루트 인증서를 사용하는 환경에 맞는 PEM CA 번들 경로를 지정합니다. SSL_CERT_FILE보다 우선합니다. |
SSL_CERT_FILE |
HTTPS, 로그인 및 WebSocket 클라이언트 | CODEX_CA_CERTIFICATE가 설정되지 않았을 때 사용할 PEM CA 번들 경로를 지정합니다. |
공급자의 API 키를 사용하려면 모델 공급자 설정에서 env_key를 설정하세요. Codex는 이 설정에 지정된 이름의 환경 변수를 읽으므로 변수 이름은 고정되어 있지 않습니다.
자동화에서 비밀 값을 처리하는 방법은 API 키 인증 사용을 참고하세요. 액세스 토큰 설정 방법은 액세스 토큰을 참고하세요.
진단
| 변수 | 사용처 | 설명 |
|---|---|---|
RUST_LOG |
CLI 및 app-server | Rust 로그의 필터와 출력 상세도를 제어합니다. codex exec는 더 상세한 로그 수준을 지정하지 않으면 기본적으로 error 수준의 로그만 출력합니다. |
RUST_LOG에는 error, warn, info, debug, trace 등의 값을 지정할 수 있습니다. codex_core=debug,codex_tui=debug처럼 특정 모듈의 로그 수준을 지정하는 Rust 로그 필터도 사용할 수 있습니다.
대화형 CLI는 기본적으로 용량이 제한된 로컬 저장소에 진단 정보를 기록합니다. 일반 텍스트 형식의 codex-tui.log 파일은 별도로 설정해야 생성됩니다. 문제 해결에 일반 텍스트 로그가 필요하면 log_dir을 명시적으로 설정하세요.
RUST_LOG=debug codex -c log_dir=./.codex-log
tail -F ./.codex-log/codex-tui.log
비대화형 모드에서 codex exec는 메시지를 별도의 TUI 로그 파일에 기록하는 대신 명령어 출력에 바로 표시합니다.