Codex conserve ses paramètres persistants dans config.toml. Utilisez les variables d’environnement pour remplacer un paramètre dans le shell courant, fournir des secrets aux automatisations, modifier le comportement du programme d’installation ou configurer les diagnostics.
Cette page répertorie les variables d’environnement publiques et stables que Codex lit directement. Elle exclut les variables internes de développement, les variables de test et les noms de variables que vous choisissez vous-même avec env_key pour les secrets propres à chaque fournisseur.
Répertoires principaux
| Variable | Utilisation | Valeur par défaut | Description |
|---|---|---|---|
CODEX_HOME |
CLI, extension pour IDE, app-server, programmes d’installation | ~/.codex |
Définit le répertoire racine où Codex conserve son état, notamment la configuration, les données d’authentification, les journaux, les sessions, les Skills et les métadonnées des paquets autonomes. Si vous définissez cette variable, le répertoire doit déjà exister. |
CODEX_SQLITE_HOME |
État de la CLI et d’app-server | CODEX_HOME |
Définit le répertoire où Codex stocke ses données d’état SQLite. L’option de configuration sqlite_home est prioritaire. Les chemins relatifs sont interprétés à partir du répertoire de travail courant. |
Pour en savoir plus sur les fichiers stockés dans CODEX_HOME, consultez Emplacements de la configuration et des données d’état.
Si plusieurs hôtes Linux ouvrent les mêmes bases de données, consultez Exécuter Codex avec un répertoire personnel sur NFS.
Variables du programme d’installation
Ces variables s’appliquent aux scripts d’installation autonomes disponibles aux adresses https://chatgpt.com/codex/install.sh et https://chatgpt.com/codex/install.ps1.
| Variable | Valeur par défaut | Description |
|---|---|---|
CODEX_NON_INTERACTIVE |
false |
Définissez cette variable sur 1, true ou yes pour que le programme d’installation ne pose aucune question. Il utilise alors les réponses par défaut. Réservez ce mode aux installations et aux mises à jour par script et évitez-le pour la configuration au premier lancement. |
CODEX_INSTALL_DIR |
~/.local/bin sur macOS et Linux, %LOCALAPPDATA%\Programs\OpenAI\Codex\bin sur Windows |
Modifie le répertoire d’installation de la commande codex accessible à l’utilisateur. Le cache des paquets autonomes reste dans CODEX_HOME/packages/standalone. |
Pour une installation sans intervention, définissez CODEX_NON_INTERACTIVE=1 dans le shell qui exécute le script d’installation téléchargé :
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
Authentification et réseau
| Variable | Utilisation | Description |
|---|---|---|
CODEX_API_KEY |
Exécution, revue de code, SDK TypeScript, exec-server distant | Fournit une clé API à un processus Codex non interactif. Lorsque vous exécutez du code contrôlé par le dépôt, définissez la variable directement sur la ligne de commande pour limiter sa portée à cette commande plutôt qu’à la tâche entière. |
CODEX_ACCESS_TOKEN |
CLI, app-server, automatisations de confiance | Fournit un jeton d’accès ChatGPT ou Codex aux automatisations de confiance. Pour conserver la connexion, transmettez le jeton à codex login --with-access-token via un pipe. |
OPENAI_FEDERATION_RULE_ID |
Identité de la charge de travail | Sélectionne la règle de fédération configurée pour la charge de travail. |
OPENAI_IDENTITY_TOKEN_FILE |
Identité de la charge de travail | Indique le chemin absolu du fichier contenant le jeton OIDC ou le JWT-SVID SPIFFE actuel. |
OPENAI_WORKLOAD_IDENTITY_CONTEXT |
Identité de la charge de travail | Permet de fournir des identifiants JSON de taille limitée pour attribuer les événements d’audit selon les informations déclarées par le client. Cette variable n’a aucun effet sur l’authentification ni sur les autorisations. |
CODEX_CA_CERTIFICATE |
Clients HTTPS, d’authentification et WebSocket | Indique le chemin d’un fichier de certificats d’autorités de certification au format PEM pour les environnements qui utilisent l’interception TLS en entreprise ou des certificats racines privés. Cette variable est prioritaire sur SSL_CERT_FILE. |
SSL_CERT_FILE |
Clients HTTPS, d’authentification et WebSocket | Indique le chemin du fichier de certificats d’autorités de certification au format PEM à utiliser lorsque CODEX_CA_CERTIFICATE n’est pas définie. |
Pour les clés API des fournisseurs, définissez env_key dans la configuration du fournisseur de modèles. Codex lit la variable dont vous indiquez le nom dans cette configuration. Ce nom ne fait donc pas partie des noms de variables d’environnement prédéfinis de Codex.
Pour savoir comment gérer les secrets des automatisations, consultez Utiliser l’authentification par clé API. Pour configurer les jetons d’accès, consultez Jetons d’accès.
Diagnostics
| Variable | Utilisation | Description |
|---|---|---|
RUST_LOG |
CLI et app-server | Contrôle le filtrage et le niveau de détail des journaux Rust. Par défaut, codex exec affiche uniquement les messages de niveau error, sauf si vous choisissez un niveau plus détaillé. |
RUST_LOG accepte des valeurs telles que error, warn, info, debug et trace. Cette variable accepte également des filtres de journalisation Rust plus ciblés, comme codex_core=debug,codex_tui=debug.
Par défaut, la CLI interactive enregistre les diagnostics localement dans des espaces de stockage de taille limitée. L’écriture dans le fichier texte codex-tui.log nécessite une activation explicite. Si vous avez besoin d’un journal en texte brut pour résoudre un problème, définissez explicitement log_dir :
RUST_LOG=debug codex -c log_dir=./.codex-log
tail -F ./.codex-log/codex-tui.log
En mode non interactif, codex exec affiche directement les messages dans le terminal au lieu de les écrire dans un fichier journal distinct pour l’interface TUI.