Utilisez cette page comme référence pour rechercher des informations sur les fichiers de configuration de Codex. Pour comprendre les concepts et consulter des exemples, commencez par les pages Principes de configuration et Configuration avancée.
config.toml
La configuration utilisateur se trouve dans ~/.codex/config.toml. Vous pouvez également redéfinir certains paramètres pour un projet dans des fichiers .codex/config.toml. Codex ne charge les fichiers de configuration propres au projet que si vous faites confiance au projet.
La configuration propre au projet ne peut pas redéfinir les clés locales à la machine relatives au fournisseur, à l’authentification,
aux métadonnées de requêtes d’applications gérées par l’hôte, aux notifications, à la sélection du profil de configuration
ou au routage de la télémétrie. Codex ignore openai_base_url,
chatgpt_base_url, apps_mcp_product_sku, model_provider,
model_providers, notify, profile, profiles,
experimental_realtime_ws_base_url et otel lorsqu’elles figurent dans un fichier
.codex/config.toml propre au projet ; définissez plutôt les clés de fournisseur, de notification et de télémétrie
dans la configuration utilisateur. Les fichiers de profil de configuration se trouvent à côté de
config.toml sous la forme $CODEX_HOME/profile-name.config.toml ; sélectionnez-en un avec
--profile profile-name.
Pour les clés relatives au bac à sable et aux approbations (approval_policy, sandbox_mode et sandbox_workspace_write.*), consultez également Bac à sable et approbations, Chemins protégés dans les racines accessibles en écriture et Accès réseau. Pour les profils d’autorisations en version bêta, consultez Autorisations.
| Key | Type / Values | Details |
|---|---|---|
agents | table | Paramètres multi-agents et déclarations de rôles personnalisés. Les noms de paramètres scalaires sont réservés et ne peuvent pas servir de noms de rôles personnalisés. |
agents.<name>.config_file | string (path) | Chemin d’une couche de configuration TOML pour ce rôle ; les chemins relatifs sont résolus par rapport au fichier de configuration qui déclare le rôle. |
agents.<name>.description | string | Consignes relatives au rôle présentées à Codex lorsqu’il choisit et lance ce type d’agent. |
agents.default_subagent_model | string | Modèle par défaut des agents lancés. Un modèle spécifié explicitement au lancement est prioritaire. |
agents.default_subagent_reasoning_effort | string | Effort de raisonnement par défaut des agents lancés. Un effort spécifié explicitement au lancement est prioritaire. |
agents.enabled | boolean | Activez ou désactivez les outils multi-agents (valeur par défaut : true). |
agents.interrupt_message | boolean | Enregistrez un message visible par le modèle lorsqu’un tour d’agent est interrompu (valeur par défaut : true). |
agents.max_concurrent_threads_per_session | number | Nombre maximal de fils de discussion d’agents lancés pouvant être ouverts simultanément, sans compter le fil principal. Si ce paramètre n’est pas défini, Codex choisit la valeur par défaut. |
agents.max_threads | number | Ancien alias de agents.max_concurrent_threads_per_session. |
allow_login_shell | boolean | Autorisez les outils reposant sur un shell à utiliser la sémantique des shells de connexion. Valeur par défaut : true ; avec false, les requêtes login = true sont rejetées et, si login est omis, les shells utilisés par défaut ne sont pas des shells de connexion. |
analytics.enabled | boolean | Activez ou désactivez la collecte de données analytiques pour cette machine ou ce profil. Si ce paramètre n’est pas défini, la valeur par défaut du client s’applique. |
approval_policy | untrusted | on-request | never | { granular = { sandbox_approval = bool, rules = bool, mcp_elicitations = bool, request_permissions = bool, skill_approval = bool } } | Détermine quand Codex se met en pause pour demander une approbation avant d’exécuter des commandes. Vous pouvez également utiliser approval_policy = { granular = { ... } } pour autoriser l’affichage de certaines catégories de demandes ou les rejeter automatiquement, tout en gardant les autres demandes interactives. on-failure est obsolète ; utilisez on-request pour les exécutions interactives ou never pour les exécutions non interactives. |
approval_policy.granular.mcp_elicitations | boolean | Lorsque la valeur est true, les demandes d’élicitation MCP peuvent s’afficher au lieu d’être rejetées automatiquement. |
approval_policy.granular.request_permissions | boolean | Lorsque la valeur est true, les demandes de l’outil request_permissions peuvent s’afficher. |
approval_policy.granular.rules | boolean | Lorsque la valeur est true, les demandes d’approbation déclenchées par les règles prompt d’execpolicy peuvent s’afficher. |
approval_policy.granular.sandbox_approval | boolean | Lorsque la valeur est true, les demandes d’approbation liées à l’élévation des autorisations du bac à sable peuvent s’afficher. |
approval_policy.granular.skill_approval | boolean | Lorsque la valeur est true, les demandes d’approbation des scripts de skill peuvent s’afficher. |
approvals_reviewer | user | auto_review | Détermine qui examine les demandes d’approbation admissibles dans le cadre des stratégies on-request ou des stratégies d’approbation granulaires. Valeur par défaut : user ; auto_review utilise le sous-agent de révision. Ce paramètre ne modifie pas le fonctionnement du bac à sable et ne soumet pas à révision les actions qui y sont déjà autorisées. |
apps._default.approvals_reviewer | user | auto_review | Responsable par défaut de l’examen des demandes d’approbation des outils d’application, sauf si une autre valeur est définie pour l’application. Si ce paramètre est omis, les applications héritent de la valeur approvals_reviewer de premier niveau. |
apps._default.default_tools_approval_mode | auto | prompt | writes | approve | Comportement d’approbation par défaut des outils d’application en l’absence de valeurs de remplacement propres à l’application ou à l’outil. |
apps._default.destructive_enabled | boolean | Règle d’autorisation ou de refus appliquée par défaut aux outils d’application avec destructive_hint = true. |
apps._default.enabled | boolean | État d’activation par défaut de toutes les applications, sauf si une autre valeur est définie pour une application. |
apps._default.open_world_enabled | boolean | Règle d’autorisation ou de refus appliquée par défaut aux outils d’application avec open_world_hint = true. |
apps.<id>.approvals_reviewer | user | auto_review | Responsable de la révision des demandes d’approbation des outils de cette application. Remplace apps._default.approvals_reviewer. |
apps.<id>.default_tools_approval_mode | auto | prompt | writes | approve | Comportement d’approbation par défaut des outils de cette application, sauf si un outil dispose d’un paramètre spécifique. |
apps.<id>.default_tools_enabled | boolean | État d’activation par défaut des outils de cette application, sauf si un outil dispose d’un paramètre spécifique. |
apps.<id>.destructive_enabled | boolean | Autorisez ou bloquez les outils de cette application qui déclarent destructive_hint = true. |
apps.<id>.enabled | boolean | Activez ou désactivez une application ou un connecteur spécifique selon son identifiant (valeur par défaut : true). |
apps.<id>.open_world_enabled | boolean | Autorisez ou bloquez les outils de cette application qui déclarent open_world_hint = true. |
apps.<id>.tools.<tool>.approval_mode | auto | prompt | writes | approve | Comportement d’approbation spécifique à un outil de l’application. |
apps.<id>.tools.<tool>.enabled | boolean | Paramètre d’activation spécifique à un outil de l’application (par exemple repos/list). |
auto_review.policy | string | Instructions locales en Markdown définissant les règles de révision automatique. Le paramètre géré guardian_policy_config est prioritaire. Les valeurs vides sont ignorées. |
background_terminal_max_timeout | number | Durée maximale d’attente en millisecondes pour les appels à vide à write_stdin (interrogation du terminal en arrière-plan). Valeur par défaut : 300000 (5 minutes). Remplace l’ancienne clé background_terminal_timeout. |
browser_use.allow_history_access | boolean | Définissez la valeur sur false pour restreindre l’accès à l’historique de navigation. Les exigences gérées peuvent imposer cette restriction. |
browser_use.default_origin_policy | table | Restrictions par défaut pour les origines du navigateur. Prend en charge access, uploads, downloads et full_cdp_access, chacun défini sur allow ou deny. |
browser_use.origins.<origin> | table | Restrictions du navigateur par origine, avec les mêmes champs que browser_use.default_origin_policy. Incluez un schéma HTTP ou HTTPS et, éventuellement, un port ; omettez les chemins, les paramètres de requête et les fragments. Les valeurs locales ne peuvent pas assouplir les interdictions gérées. |
chatgpt_base_url | string | Remplacez l’URL de base utilisée lors de la connexion à ChatGPT. |
check_for_update_on_startup | boolean | Recherchez les mises à jour de Codex au démarrage (utilisez la valeur false uniquement si les mises à jour sont gérées de manière centralisée). |
cli_auth_credentials_store | file | keyring | auto | ephemeral | Définissez où la CLI stocke les identifiants mis en cache. |
compact_prompt | string | Prompt de remplacement pour le compactage de l’historique, défini directement dans la configuration. |
computer_use.default_app_access | allow | deny | Stratégie d’accès par défaut aux applications natives pour la fonctionnalité Utilisation de l’ordinateur. Les entrées propres à chaque application peuvent définir une stratégie ; la configuration locale ne peut pas assouplir les restrictions gérées. |
computer_use.macos.bundle_ids | map<string, allow | deny> | Accès aux applications natives macOS, avec l’identifiant de bundle comme clé. |
computer_use.windows.always_allowed_app_ids | array<string> | Identifiants des applications Windows que la fonctionnalité Utilisation de l’ordinateur peut ouvrir sans demander d’approbation. Les applications absentes de cette liste nécessitent une approbation ; supprimez les entrées enregistrées dans les paramètres de la fonctionnalité Utilisation de l’ordinateur de l’application de bureau ChatGPT. |
computer_use.windows.aumids | map<string, allow | deny> | Accès aux applications Windows empaquetées, avec l’Application User Model ID (AUMID) comme clé. |
computer_use.windows.exes | array<table> | Règles d’accès aux exécutables Windows. Chaque règle exige publisher_name, product_name et access (allow ou deny) ; binary_name est facultatif. |
default_permissions | string | Nom du profil d’autorisations par défaut à appliquer aux appels d’outils exécutés dans le bac à sable. Les profils intégrés sont :read-only, :workspace et :danger-full-access ; les noms de profils personnalisés nécessitent des tables [permissions.<name>] correspondantes. Ne combinez pas ce paramètre avec sandbox_mode ou [sandbox_workspace_write]. |
desktop.custom_file_handlers.<id> | table | Au niveau utilisateur uniquement. Définit une cible Ouvrir dans supplémentaire pour l’application de bureau ChatGPT. Consultez Ajouter des gestionnaires de fichiers personnalisés pour obtenir des exemples et connaître les contraintes relatives aux identifiants des gestionnaires. |
desktop.custom_file_handlers.<id>.args | array<string> | Arguments insérés entre la commande et le fichier fourni en entrée (par défaut : []). |
desktop.custom_file_handlers.<id>.command | string | Chemin de l’exécutable ou nom de la commande à détecter et à lancer. Obligatoire. |
desktop.custom_file_handlers.<id>.icon | string | Chemin d’une ressource intégrée, URL data:image/... encodée en Base64, URI de fichier ou chemin local absolu pour l’icône du gestionnaire. Obligatoire ; l’icône VS Code par défaut est utilisée si la source n’est pas prise en charge. |
desktop.custom_file_handlers.<id>.input | path | json_argument | json_stdin | Méthode utilisée par l’application pour transmettre le fichier au gestionnaire (par défaut : path). |
desktop.custom_file_handlers.<id>.label | string | Nom d’affichage indiqué dans les menus Ouvrir dans. Obligatoire. |
desktop.custom_file_handlers.<id>.supports_ssh | boolean | Proposez le gestionnaire pour les fichiers situés dans des espaces de travail SSH (par défaut : false). |
developer_instructions | string | Instructions de développeur supplémentaires injectées dans la session (facultatives). |
disable_paste_burst | boolean | Désactivez la détection des collages en rafale dans la TUI. |
experimental_compact_prompt_file | string (path) | Chargez le prompt de remplacement pour le compactage depuis un fichier (expérimental). |
experimental_use_unified_exec_tool | boolean | Ancien nom permettant d’activer l’exécution unifiée ; privilégiez [features].unified_exec ou codex --enable unified_exec. |
features.apps | boolean | Activez les intégrations d’applications (connecteurs) (stables ; activées par défaut). Le trafic des applications et des connecteurs n’est pas contrôlé par le proxy réseau des commandes exécutées dans le bac à sable ni par sa liste de domaines autorisés. |
features.code_mode.direct_only_tool_namespaces | array<string> | Espaces de noms d’outils que le mode code peut utiliser uniquement au moyen d’appels directs à ces outils. |
features.code_mode.enabled | boolean | Activez la configuration du mode code. Cette fonctionnalité est en cours de développement et désactivée par défaut. |
features.code_mode.excluded_tool_namespaces | array<string> | Espaces de noms d’outils que le mode code exclut des consignes relatives aux appels d’outils imbriqués et ne rend pas accessibles à l’exécuteur. |
features.context_management.experimental_mode | boolean | Activez la gestion expérimentale du contexte (désactivée par défaut). Au lieu de compresser à répétition le contexte en un seul résumé, elle utilise des notes et un historique consultable par recherche pour préserver les détails accumulés. Nécessite une connexion à ChatGPT avec un abonnement Plus, Pro ou Pro Lite. |
features.enable_request_compression | boolean | Compressez avec zstd les corps des requêtes en streaming lorsque cette compression est prise en charge (fonctionnalité stable ; activée par défaut). |
features.fast_mode | boolean | Activez dans la TUI la sélection d’une offre du catalogue de modèles, y compris les commandes de l’offre Rapide lorsque le modèle actif indique qu’il les prend en charge (fonctionnalité stable ; activée par défaut). |
features.goals | boolean | Activez la persistance des objectifs et la poursuite automatique (fonctionnalité stable ; activée par défaut). |
features.hooks | boolean | Activez les hooks de cycle de vie chargés depuis hooks.json ou configurés directement dans [hooks]. features.codex_hooks est un alias obsolète. |
features.memories | boolean | Activez les Mémoires (désactivées par défaut). |
features.multi_agent | boolean | Activez les outils de collaboration multi-agent ( spawn_agent, send_input, resume_agent, wait_agent et close_agent) (fonctionnalité stable ; activée par défaut). |
features.network_proxy | boolean | table | Démarrez le proxy réseau des commandes exécutées dans le bac à sable (fonctionnalité expérimentale ; désactivée par défaut). Cette option est nécessaire pour appliquer les règles de domaine des profils d’autorisations, sauf si des exigences experimental_network activées et gérées par un administrateur démarrent le proxy. Utilisez une table pour définir des options de stratégie propres à cette fonctionnalité, telles que domains. Ce proxy ne filtre pas la recherche web, les applications, MCP ni les autres outils hébergés. |
features.network_proxy.allow_local_binding | boolean | Autorisez un accès plus étendu aux réseaux locaux et privés. Valeur par défaut : false ; des règles d’autorisation ciblant exactement une adresse IP locale littérale ou localhost peuvent néanmoins autoriser des cibles locales précises. |
features.network_proxy.allow_upstream_proxy | boolean | Autorisez le chaînage avec un proxy en amont défini dans l’environnement. Valeur par défaut : true. |
features.network_proxy.dangerously_allow_all_unix_sockets | boolean | Autorisez n’importe quelle destination de socket Unix au lieu de limiter l’accès à la liste d’autorisation. Valeur par défaut : false ; utilisez cette option uniquement dans des environnements strictement contrôlés. |
features.network_proxy.dangerously_allow_non_loopback_proxy | boolean | Autorisez les adresses d’écoute autres que celles de la boucle locale. Valeur par défaut : false ; l’activation de cette option peut rendre les points d’écoute du proxy accessibles au-delà de localhost. |
features.network_proxy.domains | map<string, allow | deny> | Stratégie relative aux domaines pour l’accès réseau dans le bac à sable. Par défaut, aucune valeur n’est définie ; aucune destination externe n’est donc autorisée tant que vous n’ajoutez pas de règles allow. La stratégie accepte les noms d’hôte exacts, *.example.com uniquement pour les sous-domaines, **.example.com pour le domaine racine et ses sous-domaines, ainsi que les règles d’autorisation globales * ; privilégiez les règles ciblées, car * ouvre largement l’accès sortant au réseau public. Ajoutez des règles deny pour bloquer certaines destinations ; en cas de conflit, deny l’emporte. |
features.network_proxy.enable_socks5 | boolean | Activez la prise en charge de SOCKS5. Valeur par défaut : true. |
features.network_proxy.enable_socks5_udp | boolean | Autorisez UDP via SOCKS5. Valeur par défaut : true. |
features.network_proxy.enabled | boolean | Démarrez le proxy réseau des commandes exécutées dans le bac à sable lorsque leur accès réseau est activé. Valeur par défaut : false ; les règles de domaine des profils d’autorisations ne sont pas appliquées lorsque le proxy est désactivé. |
features.network_proxy.proxy_url | string | URL d’écoute HTTP pour l’accès réseau dans le bac à sable. Valeur par défaut : "http://127.0.0.1:3128". |
features.network_proxy.socks_url | string | URL d’écoute SOCKS5. Valeur par défaut : "http://127.0.0.1:8081". |
features.network_proxy.unix_sockets | map<string, allow | deny> | Stratégie relative aux sockets Unix pour l’accès réseau dans le bac à sable. Par défaut, aucune valeur n’est définie ; ajoutez des entrées allow pour les sockets autorisés. |
features.personality | boolean | Activez les options de sélection de la personnalité (fonctionnalité stable ; activée par défaut). |
features.prevent_idle_sleep | boolean | Empêchez la machine de se mettre en veille pendant l’exécution d’un tour (fonctionnalité expérimentale ; désactivée par défaut). |
features.remote_plugin | boolean | Activez le catalogue distant de plugins (fonctionnalité stable ; activée par défaut). |
features.rollout_budget.enabled | boolean | Activez le suivi du budget d’exécution. Cette fonctionnalité est en cours de développement et désactivée par défaut. Lorsqu’elle est activée, features.rollout_budget.limit_tokens est obligatoire. |
features.rollout_budget.limit_tokens | integer | Limite strictement positive de tokens pour le suivi du budget d’exécution. Obligatoire lorsque le budget d’exécution est activé. |
features.rollout_budget.prefill_token_weight | number | Multiplicateur fini, positif ou nul, appliqué aux tokens de préremplissage lors de la comptabilisation du budget d’exécution. Valeur par défaut : 1.0. |
features.rollout_budget.reminder_interval_tokens | integer | Intervalle strictement positif, exprimé en tokens, entre les rappels du budget d’exécution. Par défaut, il correspond à 10 % de limit_tokens, avec un minimum de 1 token. |
features.rollout_budget.sampling_token_weight | number | Multiplicateur fini, positif ou nul, appliqué aux tokens échantillonnés lors de la comptabilisation du budget d’exécution. Valeur par défaut : 1.0. |
features.shell_snapshot | boolean | Enregistrez un instantané de l’environnement du shell pour accélérer les commandes répétées (fonctionnalité stable ; activée par défaut). |
features.shell_tool | boolean | Activez l’outil shell fourni par défaut pour exécuter des commandes (fonctionnalité stable ; activée par défaut). |
features.skill_mcp_dependency_install | boolean | Autorisez Codex à proposer l’installation des dépendances MCP manquantes pour les Skills et à les installer (fonctionnalité stable ; activée par défaut). |
features.unified_exec | boolean | Utilisez l’outil exec unifié reposant sur un PTY (fonctionnalité stable ; activée par défaut sauf sur Windows). |
features.web_search | boolean | Ancienne option désormais obsolète ; préférez le paramètre de premier niveau web_search. |
features.web_search_cached | boolean | Ancienne option désormais obsolète. Lorsque web_search n’est pas défini, true équivaut à web_search = "cached". |
features.web_search_request | boolean | Ancienne option désormais obsolète. Lorsque web_search n’est pas défini, true équivaut à web_search = "live". |
feedback.enabled | boolean | Activez l’envoi de commentaires via /feedback dans tous les clients locaux (valeur par défaut : true). |
file_opener | vscode | vscode-insiders | windsurf | cursor | none | Schéma d’URI utilisé pour ouvrir les citations figurant dans la sortie de Codex (par défaut : vscode). |
forced_chatgpt_workspace_id | string (uuid) | Limitez les connexions à ChatGPT à un identifiant d’espace de travail spécifique. |
forced_login_method | chatgpt | api | Restreignez Codex à une méthode d’authentification spécifique. |
hide_agent_reasoning | boolean | Masquez les événements de raisonnement dans la TUI comme dans la sortie de codex exec. |
history.max_bytes | number | Si ce paramètre est défini, il plafonne la taille du fichier d’historique en octets en supprimant les entrées les plus anciennes. |
history.persistence | save-all | none | Indiquez si Codex enregistre les transcriptions des sessions dans history.jsonl. |
hooks | table | Hooks de cycle de vie configurés directement dans config.toml. Ils utilisent le même schéma d’événements que hooks.json ; consultez le guide Hooks pour voir des exemples et les événements pris en charge. |
hooks.<Event> | array<table> | Groupes de critères de correspondance pour les événements de hook tels que PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit, Stop ou Interrupt. |
hooks.<Event>[].hooks | array<table> | Gestionnaires de hooks pour un groupe de critères de correspondance. Les hooks de commande et d’outil MCP sont pris en charge, tandis que les gestionnaires de hooks de prompt et d’agent sont analysés, mais ne sont pas exécutés. |
hooks.<Event>[].hooks[].additionalContextLimit | integer | Seuil approximatif de tokens par gestionnaire au-delà duquel une valeur additionalContext trop volumineuse est enregistrée sur disque et un aperçu plus court est présenté au modèle. Valeur par défaut : 2500 ; 0 transmet directement le contexte complet au modèle. Consultez Sorties volumineuses des hooks. |
hooks.<Event>[].hooks[].async | boolean | Exécutez un hook de commande en arrière-plan sans retarder l’opération qui le déclenche. Valeur par défaut : false ; SessionEnd s’exécute toujours de façon synchrone. Consultez Exécutez les hooks en arrière-plan. |
hooks.<Event>[].hooks[].commandWindows | string | Commande de remplacement propre à Windows pour les hooks de commande. L’alias TOML command_windows est également accepté. |
instructions | string | Réservé à un usage futur ; utilisez plutôt model_instructions_file ou AGENTS.md. |
log_dir | string (path) | Répertoire dans lequel Codex écrit les fichiers journaux ; par défaut, $CODEX_HOME/log. Définir explicitement ce paramètre active également le journal TUI facultatif en texte brut codex-tui.log dans ce répertoire. |
mcp_oauth_callback_port | integer | Port fixe global facultatif pour le serveur HTTP local de rappel utilisé lors de la connexion OAuth MCP. Le paramètre oauth.callback_port propre à un serveur est prioritaire. Si aucun des deux n’est défini, Codex se lie à un port éphémère choisi par le système d’exploitation. |
mcp_oauth_callback_url | string | URL de base de rappel facultative pour la connexion OAuth MCP, par exemple l’URL d’entrée d’une devbox. Les clients préenregistrés nouvellement ajoutés utilisent cette URL telle quelle lorsque le serveur d’autorisation prend en charge l’identification de l’émetteur ; les clients existants sans URL de rappel enregistrée y ajoutent un identifiant de rappel propre au serveur. Sans prise en charge de l’identification de l’émetteur, tout serveur MCP préenregistré dont l’URL de rappel configurée ne contient pas l’identifiant requis utilise cette URL en y ajoutant l’identifiant. Les ports figurant dans les URL de rappel ne déterminent pas le port d’écoute. |
mcp_oauth_credentials_store | auto | file | keyring | Stockage privilégié pour les identifiants OAuth MCP. |
mcp_optional_startup_grace_ms | integer (milliseconds) | Délai d’attente commun aux serveurs MCP facultatifs lors de la constitution du catalogue initial d’outils. Valeur par défaut : 1000. Définissez-le sur 0 pour utiliser à la place le délai startup_timeout_sec de chaque serveur. |
mcp_servers.<id>.args | array<string> | Arguments transmis à la commande du serveur MCP stdio. |
mcp_servers.<id>.auth | oauth | chatgpt | Méthode d’authentification de secours pour un serveur MCP HTTP, utilisée après les tokens bearer et les en-têtes d’autorisation configurés. oauth (par défaut) utilise les identifiants OAuth MCP enregistrés lorsqu’ils sont disponibles. chatgpt utilise la session ChatGPT actuelle pour l’origine officielle de confiance de ChatGPT, puis se rabat sur les identifiants OAuth enregistrés. Les deux modes permettent de se connecter sans authentification si aucune source ne fournit d’identifiants. |
mcp_servers.<id>.bearer_token_env_var | string | Variable d’environnement qui fournit le token bearer d’un serveur MCP HTTP. |
mcp_servers.<id>.command | string | Commande de lancement d’un serveur MCP stdio. |
mcp_servers.<id>.cwd | string | Répertoire de travail du processus du serveur MCP stdio. |
mcp_servers.<id>.default_tools_approval_mode | auto | prompt | writes | approve | Comportement d’approbation par défaut des outils MCP de ce serveur, sauf si un outil dispose d’un paramètre spécifique. |
mcp_servers.<id>.disabled_tools | array<string> | Liste de refus appliquée après enabled_tools pour le serveur MCP. |
mcp_servers.<id>.enabled | boolean | Désactivez un serveur MCP sans supprimer sa configuration. |
mcp_servers.<id>.enabled_tools | array<string> | Liste d’autorisation des noms d’outils exposés par le serveur MCP. |
mcp_servers.<id>.env | map<string,string> | Variables d’environnement transmises au serveur MCP stdio. |
mcp_servers.<id>.env_http_headers | map<string,string> | En-têtes HTTP renseignés à partir de variables d’environnement pour un serveur MCP HTTP. |
mcp_servers.<id>.env_vars | array<string | { name = string, source = "local" | "remote" }> | Variables d’environnement supplémentaires à ajouter à la liste d’autorisation d’un serveur MCP stdio. Les entrées sous forme de chaîne utilisent par défaut source = "local" ; utilisez source = "remote" uniquement avec un serveur stdio distant géré par un exécuteur. |
mcp_servers.<id>.experimental_environment | local | remote | Emplacement d’exécution expérimental d’un serveur MCP. remote démarre les serveurs stdio via un environnement d’exécution distant ; le placement distant des serveurs utilisant le transport streamable HTTP n’est pas implémenté. |
mcp_servers.<id>.http_headers | map<string,string> | En-têtes HTTP statiques inclus dans chaque requête MCP HTTP. |
mcp_servers.<id>.http_headers_helper | string (command) | Commande locale qui affiche un objet JSON contenant les noms et les valeurs des en-têtes HTTP. Prise en charge uniquement pour les serveurs MCP HTTP connectés localement. Les tokens bearer explicites et les identifiants OAuth ont priorité sur les en-têtes Authorization fournis par la commande auxiliaire. |
mcp_servers.<id>.oauth_resource | string | Paramètre de ressource OAuth facultatif, défini par la RFC 8707, à inclure lors de la connexion MCP. |
mcp_servers.<id>.oauth.callback_port | integer | Port d’écoute fixe pour le rappel OAuth de ce serveur MCP. Remplace mcp_oauth_callback_port. Pour un rappel direct sur l’interface de bouclage dont l’URL contient un port explicite, configurez le même port d’écoute. |
mcp_servers.<id>.oauth.callback_url | string | URL de rappel OAuth propre au serveur. Les clients préenregistrés la réutilisent lorsque l’identification de l’émetteur est prise en charge ou que l’URL se termine déjà par l’identifiant de rappel propre au serveur. Sinon, Codex utilise l’URL de rappel globale ou par défaut en y ajoutant cet identifiant. Les clients sans identifiant préenregistré utilisent cette URL de rappel lors de leur enregistrement. |
mcp_servers.<id>.oauth.client_id | string | Identifiant client OAuth préenregistré utilisé pour l’autorisation et l’échange de tokens avec ce serveur MCP. |
mcp_servers.<id>.required | boolean | Lorsque la valeur est true, le démarrage ou la reprise échoue si ce serveur MCP activé ne parvient pas à s’initialiser. |
mcp_servers.<id>.scopes | array<string> | Portées OAuth à demander lors de l’authentification auprès de ce serveur MCP. |
mcp_servers.<id>.startup_timeout_ms | number | Alias de startup_timeout_sec exprimé en millisecondes. |
mcp_servers.<id>.startup_timeout_sec | number | Redéfinissez le délai d’expiration par défaut de 10 s au démarrage d’un serveur MCP. |
mcp_servers.<id>.tool_timeout_sec | number | Redéfinissez le délai d’expiration par défaut de 60 s applicable à chaque outil d’un serveur MCP. |
mcp_servers.<id>.tools.<tool>.approval_mode | auto | prompt | writes | approve | Comportement d’approbation spécifique à un outil MCP de ce serveur. |
mcp_servers.<id>.tools.<tool>.output_token_limit | integer (positive) | Budget de tokens pour la sortie d’un outil MCP, avant la marge standard de 20 % prévue pour la sérialisation. Remplace, pour cet outil, le budget de troncature des sorties défini par défaut pour le modèle. |
mcp_servers.<id>.url | string | Point de terminaison d’un serveur MCP utilisant le transport streamable HTTP. |
memories.consolidation_model | string | Modèle de remplacement facultatif pour la consolidation globale des mémoires. |
memories.disable_on_external_context | boolean | Lorsque cette option vaut true, les fils qui utilisent du contexte externe, comme des appels d’outils MCP, la recherche web ou la recherche d’outils, sont exclus de la génération de mémoires. Valeur par défaut : false. Ancien alias : memories.no_memories_if_mcp_or_web_search. |
memories.extract_model | string | Modèle de remplacement facultatif pour l’extraction des mémoires de chaque fil. |
memories.generate_memories | boolean | Lorsque la valeur est false, les fils de discussion nouvellement créés ne sont pas conservés comme données d’entrée pour la génération de mémoires. Valeur par défaut : true. |
memories.max_raw_memories_for_consolidation | number | Nombre maximal de mémoires brutes récentes conservées pour la consolidation globale. Valeur par défaut : 256, plafonnée à 4096. |
memories.max_rollout_age_days | number | Ancienneté maximale des fils pris en compte pour la génération de mémoires. Valeur par défaut : 30, bornée entre 0 et 90. |
memories.max_rollouts_per_startup | number | Nombre maximal de trajectoires candidates traitées à chaque passe de démarrage. Valeur par défaut : 16, plafonnée à 128. |
memories.max_unused_days | number | Nombre maximal de jours depuis la dernière utilisation d’une mémoire au-delà duquel elle n’est plus admissible à la consolidation. Valeur par défaut : 30, bornée entre 0 et 365. |
memories.min_rate_limit_remaining_percent | number | Pourcentage minimal de quota restant requis dans les fenêtres de limite de débit de Codex avant le démarrage de la génération de mémoires. Valeur par défaut : 25, bornée entre 0 et 100. |
memories.min_rollout_idle_hours | number | Durée minimale d’inactivité avant qu’un fil soit pris en compte pour la génération de mémoires. Valeur par défaut : 6, bornée entre 1 et 48. |
memories.use_memories | boolean | Lorsque la valeur est false, Codex n’injecte pas les mémoires existantes dans les sessions futures. Valeur par défaut : true. |
model | string | Modèle à utiliser (par exemple, gpt-5.5). |
model_auto_compact_token_limit | number | Seuil de tokens qui déclenche le compactage automatique de l’historique (s’il n’est pas défini, les valeurs par défaut du modèle sont utilisées). |
model_auto_compact_token_limit_scope | total | body_after_prefix | Détermine si le seuil de compactage automatique comptabilise tout le contexte actif ( total, valeur par défaut) ou uniquement l’augmentation du contexte après le préfixe conservé de la fenêtre de compactage (body_after_prefix). |
model_catalog_json | string (path) | Chemin facultatif vers un catalogue de modèles au format JSON chargé au démarrage. Le fichier de profil sélectionné $CODEX_HOME/profile-name.config.toml peut redéfinir cette valeur pour le profil concerné. |
model_context_window | number | Nombre de tokens disponibles dans la fenêtre de contexte du modèle actif. |
model_instructions_file | string (path) | Instructions qui remplacent les instructions intégrées, à utiliser à la place de AGENTS.md. |
model_provider | string | Identifiant du fournisseur défini dans model_providers (valeur par défaut : openai). |
model_providers.<id> | table | Définition d’un fournisseur personnalisé. Les identifiants des fournisseurs intégrés ( openai, ollama et lmstudio) sont réservés et ne peuvent pas être redéfinis. |
model_providers.<id>.auth | table | Configuration d’un token bearer fourni par une commande pour un fournisseur personnalisé. Ne la combinez pas avec env_key, experimental_bearer_token ou requires_openai_auth. |
model_providers.<id>.auth.args | array<string> | Arguments transmis à la commande de récupération du token. |
model_providers.<id>.auth.command | string | Commande à exécuter lorsque Codex a besoin d’un token bearer. La commande doit écrire le token sur stdout. |
model_providers.<id>.auth.cwd | string (path) | Répertoire de travail de la commande de récupération du token. |
model_providers.<id>.auth.refresh_interval_ms | number | Intervalle entre les actualisations proactives du token par Codex, en millisecondes (valeur par défaut : 300000). Définissez cette valeur sur 0 pour n’actualiser le token qu’après une nouvelle tentative d’authentification. |
model_providers.<id>.auth.timeout_ms | number | Durée d’exécution maximale de la commande de récupération du token, en millisecondes (valeur par défaut : 5000). |
model_providers.<id>.base_url | string | URL de base de l’API du fournisseur de modèles. |
model_providers.<id>.env_http_headers | map<string,string> | En-têtes HTTP renseignés à partir des variables d’environnement lorsqu’elles sont présentes. |
model_providers.<id>.env_key | string | Variable d’environnement fournissant la clé API du fournisseur. |
model_providers.<id>.env_key_instructions | string | Instructions facultatives pour configurer la clé API du fournisseur. |
model_providers.<id>.experimental_bearer_token | string | Token bearer du fournisseur défini directement (déconseillé ; utilisez env_key). |
model_providers.<id>.http_headers | map<string,string> | En-têtes HTTP statiques ajoutés aux requêtes envoyées au fournisseur. |
model_providers.<id>.name | string | Nom d’affichage d’un fournisseur de modèles personnalisé. |
model_providers.<id>.query_params | map<string,string> | Paramètres de requête supplémentaires ajoutés aux requêtes envoyées au fournisseur. |
model_providers.<id>.request_max_retries | number | Nombre de nouvelles tentatives pour les requêtes HTTP envoyées au fournisseur (valeur par défaut : 4). |
model_providers.<id>.requires_openai_auth | boolean | Le fournisseur utilise l’authentification OpenAI (valeur par défaut : false). |
model_providers.<id>.stream_idle_timeout_ms | number | Délai maximal d’inactivité des flux SSE en millisecondes (valeur par défaut : 300000). |
model_providers.<id>.stream_max_retries | number | Nombre de tentatives de reprise des flux SSE après une interruption (valeur par défaut : 5). |
model_providers.<id>.supports_standalone_web_search | boolean | Déclarez la prise en charge d’un point de terminaison compatible pour la recherche web autonome (valeur par défaut : false). La recherche autonome reste en cours de développement et désactivée par défaut ; la compatibilité du fournisseur ne suffit pas à l’activer. |
model_providers.<id>.supports_websockets | boolean | Indique si ce fournisseur prend en charge le transport WebSocket de la Responses API. |
model_providers.<id>.wire_api | responses | Protocole utilisé par le fournisseur. responses est la seule valeur prise en charge et constitue la valeur par défaut lorsque ce paramètre est omis. |
model_providers.amazon-bedrock.aws.profile | string | Nom du profil AWS utilisé par le fournisseur intégré amazon-bedrock. |
model_providers.amazon-bedrock.aws.region | string | Région AWS utilisée par le fournisseur intégré amazon-bedrock. |
model_reasoning_effort | minimal | low | medium | high | xhigh | Ajustez l’effort de raisonnement pour les modèles pris en charge (Responses API uniquement ; xhigh dépend du modèle). |
model_reasoning_summary | auto | concise | detailed | none | Sélectionnez le niveau de détail du résumé du raisonnement ou désactivez entièrement les résumés. |
model_supports_reasoning_summaries | boolean | Forcez Codex à envoyer ou à ne pas envoyer les métadonnées de raisonnement. |
model_verbosity | low | medium | high | Valeur de remplacement facultative du niveau de verbosité de la Responses API pour GPT-5 ; si elle n’est pas définie, la valeur par défaut du modèle ou du préréglage sélectionné est utilisée. |
notice.hide_full_access_warning | boolean | Enregistrez la confirmation du message d’avertissement relatif à l’accès complet. |
notice.hide_gpt-5.1-codex-max_migration_prompt | boolean | Enregistrez la confirmation du message de migration vers gpt-5.1-codex-max. |
notice.hide_gpt5_1_migration_prompt | boolean | Enregistrez la confirmation du message de migration vers GPT-5.1. |
notice.hide_rate_limit_model_nudge | boolean | Enregistrez la désactivation du rappel de changement de modèle lié à la limite de débit. |
notice.hide_world_writable_warning | boolean | Enregistrez la confirmation de l’avertissement concernant les répertoires accessibles en écriture à tous sous Windows. |
notice.model_migrations | map<string,string> | Enregistrez les migrations de modèles confirmées sous forme de correspondances ancien->nouveau. |
notify | array<string> | Commande exécutée pour les notifications ; elle reçoit une charge utile JSON de Codex. |
openai_base_url | string | URL de base personnalisée pour le fournisseur de modèles openai intégré. |
oss_provider | lmstudio | ollama | Fournisseur local par défaut utilisé lors de l’exécution avec --oss (s’il n’est pas défini, Codex vous demande de le choisir). |
otel.environment | string | Étiquette d’environnement appliquée aux événements OpenTelemetry émis (par défaut : dev). |
otel.exporter | none | otlp-http | otlp-grpc | Sélectionnez l’exportateur OpenTelemetry et fournissez les éventuelles métadonnées du point de terminaison. |
otel.exporter.<id>.endpoint | string | Point de terminaison de l’exportateur pour les journaux OTEL. |
otel.exporter.<id>.headers | map<string,string> | En-têtes statiques inclus dans les requêtes de l’exportateur OTEL. |
otel.exporter.<id>.protocol | binary | json | Protocole utilisé par l’exportateur OTLP/HTTP. |
otel.exporter.<id>.tls.ca-certificate | string | Chemin d’accès au certificat de l’autorité de certification (CA) pour la connexion TLS de l’exportateur OTEL. |
otel.exporter.<id>.tls.client-certificate | string | Chemin d’accès au certificat client pour la connexion TLS de l’exportateur OTEL. |
otel.exporter.<id>.tls.client-private-key | string | Chemin d’accès à la clé privée du client pour la connexion TLS de l’exportateur OTEL. |
otel.log_user_prompt | boolean | Activez l’exportation des prompts utilisateur bruts avec les journaux OpenTelemetry. |
otel.metrics_exporter | none | statsig | otlp-http | otlp-grpc | Sélectionnez l’exportateur de métriques OpenTelemetry (par défaut : statsig). |
otel.trace_exporter | none | otlp-http | otlp-grpc | Sélectionnez l’exportateur de traces OpenTelemetry et fournissez les éventuelles métadonnées du point de terminaison. |
otel.trace_exporter.<id>.endpoint | string | Point de terminaison de l’exportateur de traces pour les journaux OTEL. |
otel.trace_exporter.<id>.headers | map<string,string> | En-têtes statiques inclus dans les requêtes de l’exportateur de traces OTEL. |
otel.trace_exporter.<id>.protocol | binary | json | Protocole utilisé par l’exportateur de traces OTLP/HTTP. |
otel.trace_exporter.<id>.tls.ca-certificate | string | Chemin d’accès au certificat de l’autorité de certification (CA) pour la connexion TLS de l’exportateur de traces OTEL. |
otel.trace_exporter.<id>.tls.client-certificate | string | Chemin d’accès au certificat client pour la connexion TLS de l’exportateur de traces OTEL. |
otel.trace_exporter.<id>.tls.client-private-key | string | Chemin d’accès à la clé privée du client pour la connexion TLS de l’exportateur de traces OTEL. |
permissions.<name>.description | string | Description en langage naturel de ce profil nommé. Un profil n’hérite pas de la description de son parent via extends. |
permissions.<name>.extends | string | Profil parent facultatif appliqué avant ce profil nommé. Indiquez un autre profil nommé, :read-only ou :workspace ; :danger-full-access, les parents non définis et les cycles sont rejetés. |
permissions.<name>.filesystem | table | Profil d’autorisations nommé pour le système de fichiers. Chaque clé est un chemin absolu ou un token spécial tel que :minimal ou :workspace_roots. |
permissions.<name>.filesystem.":workspace_roots".<subpath-or-glob> | "read" | "write" | "deny" | Accès au système de fichiers dont la portée est définie par rapport à chaque racine effective de l’espace de travail. Utilisez "." pour la racine elle-même ; des sous-chemins avec motif glob tels que "**/*.env" peuvent interdire la lecture avec "deny". |
permissions.<name>.filesystem.<path-or-glob> | "read" | "write" | "deny" | table | Accordez un accès direct à un chemin, à un motif glob ou à un token spécial, ou définissez la portée des entrées imbriquées sous cette racine. Utilisez "deny" pour interdire la lecture des chemins correspondants. |
permissions.<name>.filesystem.glob_scan_max_depth | number | Profondeur maximale d’expansion des motifs glob d’interdiction de lecture sur les plateformes qui prennent un instantané des correspondances avant le démarrage du bac à sable. Si elle est définie, elle doit être au moins égale à 1. |
permissions.<name>.network.allow_local_binding | boolean | Autorisez, depuis le bac à sable, un accès plus étendu aux réseaux locaux ou privés. Même si cette option reste définie sur false, des règles d’autorisation visant une adresse IP locale littérale exacte ou localhost peuvent toujours autoriser des cibles locales précises. |
permissions.<name>.network.allow_upstream_proxy | boolean | Autorisez le trafic réseau du bac à sable à passer par un autre proxy en amont. |
permissions.<name>.network.dangerously_allow_all_unix_sockets | boolean | Autorisez des destinations de sockets Unix arbitraires au lieu de l’ensemble restreint par défaut. Utilisez cette option uniquement dans des environnements étroitement contrôlés. |
permissions.<name>.network.dangerously_allow_non_loopback_proxy | boolean | Autorisez les écouteurs réseau du bac à sable à utiliser des adresses autres que celles de bouclage. L’activation de cette option peut rendre les écouteurs accessibles au-delà de localhost. |
permissions.<name>.network.domains | table | Règles de domaine applicables aux commandes exécutées dans le bac à sable. Elles ne sont appliquées que lorsque features.network_proxy ou des exigences réseau actives gérées par un administrateur activent le proxy. Les noms d’hôtes exacts, *.example.com, **.example.com et les règles d’autorisation globales * sont pris en charge ; deny prévaut. Ces règles ne limitent ni la recherche web, ni les applications, ni les serveurs MCP. |
permissions.<name>.network.domains.<pattern> | allow | deny | Autorisez ou refusez un hôte par son nom exact ou par un motif à caractères génériques à portée définie, tel que *.example.com ou **.example.com. |
permissions.<name>.network.enable_socks5 | boolean | Activez la prise en charge de SOCKS5 lorsque ce profil d’autorisations active l’accès réseau dans le bac à sable. |
permissions.<name>.network.enable_socks5_udp | boolean | Autorisez le protocole UDP via l’écouteur SOCKS5 lorsque celui-ci est activé. |
permissions.<name>.network.enabled | boolean | Activez l’accès réseau pour les commandes de ce profil d’autorisations. Cela ne démarre pas le proxy réseau. Si features.network_proxy n’est pas activé et qu’aucune exigence réseau gérée par un administrateur n’est activée, l’accès réseau des commandes est direct et les règles de domaine du profil ne sont pas appliquées. |
permissions.<name>.network.mode | limited | full | Mode du proxy réseau utilisé pour le trafic des sous-processus. |
permissions.<name>.network.proxy_url | string | URL d’écoute HTTP utilisée lorsque ce profil d’autorisations active l’accès réseau dans le bac à sable. |
permissions.<name>.network.socks_url | string | Point de terminaison du proxy SOCKS5 utilisé par ce profil d’autorisations. |
permissions.<name>.network.unix_sockets | table | Règles de remplacement de la liste d’autorisation des sockets Unix pour l’accès réseau dans le bac à sable. Utilisez les chemins de socket comme clés ; allow ajoute un chemin et deny le refuse. |
permissions.<name>.network.unix_sockets.<path> | allow | deny | Ajoutez un chemin absolu de socket Unix à la liste d’autorisation effective avec allow, ou refusez-le avec deny. Les entrées refusées sont exclues de la liste d’autorisation effective. |
permissions.<name>.workspace_roots | table | Racines d’espace de travail définies par le profil, auxquelles s’appliquent les règles de système de fichiers :workspace_roots, au même titre que les racines d’espace de travail de la session définies à l’exécution. |
permissions.<name>.workspace_roots.<path> | boolean | Incluez un chemin dans l’ensemble des racines d’espace de travail du profil en définissant cette option sur true. Les entrées désactivées restent inactives. |
personality | none | friendly | pragmatic | Style de communication par défaut des modèles qui déclarent la capacité supportsPersonality ; peut être redéfini pour chaque fil de discussion ou tour, ou via /personality. |
plan_mode_reasoning_effort | none | minimal | low | medium | high | xhigh | Valeur de remplacement de l’effort de raisonnement propre au mode plan. En l’absence de valeur, le mode plan utilise la valeur par défaut de son préréglage intégré. |
plugins.<plugin>.mcp_servers.<server>.default_tools_approval_mode | auto | prompt | writes | approve | Comportement d’approbation par défaut pour les outils d’un serveur MCP fourni par un plugin. |
plugins.<plugin>.mcp_servers.<server>.disabled_tools | array<string> | Liste de refus appliquée après enabled_tools pour un serveur MCP fourni par un plugin. |
plugins.<plugin>.mcp_servers.<server>.enabled | boolean | Activez ou désactivez un serveur MCP fourni avec un plugin installé sans modifier le manifeste du plugin. |
plugins.<plugin>.mcp_servers.<server>.enabled_tools | array<string> | Liste d’autorisation des outils exposés par un serveur MCP fourni par un plugin. |
plugins.<plugin>.mcp_servers.<server>.tools.<tool>.approval_mode | auto | prompt | writes | approve | Comportement d’approbation de remplacement pour un outil MCP fourni par un plugin. |
project_doc_fallback_filenames | array<string> | Noms de fichiers supplémentaires à essayer lorsque AGENTS.md est absent. |
project_doc_max_bytes | number | Nombre maximal d’octets lus dans AGENTS.md lors de la préparation des instructions du projet. |
project_root_markers | array<string> | Liste des noms de fichiers servant à repérer la racine du projet lors de la recherche dans les répertoires parents. |
projects.<path>.trust_level | string | Définissez un projet ou un arbre de travail comme fiable ou non fiable ( "trusted" | "untrusted"). Pour les projets non fiables, les couches .codex/ propres au projet sont ignorées, notamment la configuration, les hooks et les règles du projet. |
review_model | string | Modèle de remplacement facultatif utilisé par /review (par défaut, le modèle de la session en cours). |
sandbox_mode | read-only | workspace-write | danger-full-access | Stratégie du bac à sable pour l’accès au système de fichiers et au réseau lors de l’exécution des commandes. |
sandbox_workspace_write.exclude_slash_tmp | boolean | Excluez /tmp des racines accessibles en écriture en mode workspace-write. |
sandbox_workspace_write.exclude_tmpdir_env_var | boolean | Excluez $TMPDIR des racines accessibles en écriture en mode workspace-write. |
sandbox_workspace_write.network_access | boolean | Autorisez l’accès réseau sortant dans le bac à sable workspace-write. |
sandbox_workspace_write.writable_roots | array<string> | Racines supplémentaires accessibles en écriture lorsque sandbox_mode = "workspace-write". |
service_tier | string | Offre privilégiée pour les nouveaux tours. Utilisez fast ou une autre offre déclarée par le modèle actif ; fast correspond à la valeur de requête priority. |
shell_environment_policy.exclude | array<string> | Anciens motifs d’exclusion de variables d’environnement. Utilisez shell_environment_policy.filters pour toute nouvelle configuration ; ne combinez pas les deux formes dans une même couche. |
shell_environment_policy.experimental_use_profile | boolean | Utilisez le profil shell de l’utilisateur lors du lancement de sous-processus. |
shell_environment_policy.filters | map<string, include | exclude> | Filtres canoniques par motifs de noms de variables d’environnement, insensibles à la casse. Les entrées d’inclusion créent une liste d’autorisation et ne peuvent pas rétablir les valeurs exclues. Les valeurs set explicites s’appliquent après les exclusions. Ne combinez pas ces filtres avec les anciens tableaux exclude ou include_only dans une même couche. |
shell_environment_policy.ignore_default_excludes | boolean | Conservez les variables dont le nom contient KEY, SECRET ou TOKEN avant l’application des autres filtres (par défaut : true). Définissez ce paramètre sur false pour appliquer les exclusions automatiques fondées sur les noms de secrets. |
shell_environment_policy.include_only | array<string> | Ancienne liste d’autorisation par motifs de noms de variables d’environnement. Utilisez shell_environment_policy.filters pour toute nouvelle configuration ; ne combinez pas les deux formes dans une même couche. |
shell_environment_policy.inherit | all | core | none | Règles de base pour l’héritage de l’environnement lors du lancement de sous-processus. |
shell_environment_policy.set | map<string,string> | Valeurs d’environnement explicites injectées après les exclusions ; les filtres d’inclusion peuvent encore les supprimer. |
show_raw_agent_reasoning | boolean | Affichez le contenu brut du raisonnement lorsque le modèle actif en produit. |
skills.config | array<object> | Paramètres d’activation redéfinis pour chaque skill, stockés dans config.toml. |
skills.config.<index>.enabled | boolean | Activez ou désactivez le skill référencé. |
skills.config.<index>.path | string (path) | Chemin vers un dossier de skill contenant SKILL.md. |
skills.max_context_tokens | integer (positive) | Budget de tokens pour le catalogue des skills disponibles. Par défaut, 2 % de la fenêtre de contexte du modèle. Les valeurs définies explicitement sont plafonnées à 10000 tokens. |
sqlite_home | string (path) | Répertoire dans lequel Codex stocke la base de données d’état SQLite utilisée pour les tâches d’agents et les autres états d’exécution permettant une reprise. |
suppress_unstable_features_warning | boolean | Masquez l’avertissement qui s’affiche lorsque des indicateurs de fonctionnalités en cours de développement sont activés. |
tool_output_token_limit | number | Budget de tokens pour stocker chaque sortie d’outil ou de fonction dans l’historique. |
tool_suggest.disabled_tools | array<table> | Désactivez les suggestions pour certains connecteurs ou plugins pouvant être découverts. Chaque entrée utilise type = "connector" ou "plugin" et un id. |
tool_suggest.discoverables | array<table> | Autorisez les suggestions d’outils pour des connecteurs ou plugins supplémentaires pouvant être découverts. Chaque entrée utilise type = "connector" ou "plugin" et un id. |
tools.view_image | boolean | Activez l’outil view_image permettant de joindre des images locales. |
tools.web_search | boolean | { context_size = "low|medium|high", allowed_domains = [string], location = { country, region, city, timezone } } | Configuration facultative de l’outil de recherche web. La forme objet permet de définir la taille du contexte de recherche, les domaines autorisés pour la recherche et la localisation approximative de l’utilisateur. Ces filtres de domaines de recherche sont distincts des règles de domaines réseau applicables aux commandes exécutées dans le bac à sable et ne limitent ni les connecteurs ni les serveurs MCP. |
tui | table | Options propres à la TUI, comme l’activation des notifications de bureau intégrées. |
tui.alternate_screen | auto | always | never | Contrôlez l’utilisation de l’écran alternatif par la TUI (par défaut : auto ; en mode auto, il n’est pas utilisé dans Zellij afin de préserver l’historique de défilement). |
tui.animations | boolean | Activez les animations du terminal (écran d’accueil, effet de scintillement et indicateur de chargement rotatif) (par défaut : true). |
tui.keymap.<context>.<action> | string | array<string> | Association d’un raccourci clavier à une action de la TUI. Les contextes pris en charge incluent global, chat, composer, editor, vim_normal, vim_operator, vim_text_object, pager, list et approval. Pour certaines actions de la zone de saisie, les associations correspondantes de tui.keymap.global s’appliquent à défaut ; les associations propres au contexte sont prioritaires lorsqu’elles sont prises en charge. |
tui.keymap.<context>.<action> = [] | empty array | Supprimez le raccourci associé à cette action dans ce contexte de mappage clavier. Les noms de touches utilisent des chaînes normalisées comme ctrl-a, shift-enter, page-down ou minus. |
tui.model_availability_nux.<model> | integer | État interne de l’info-bulle de démarrage, indexé par le slug du modèle. |
tui.notification_condition | unfocused | always | Indiquez si les notifications de la TUI se déclenchent uniquement lorsque le terminal n’a pas le focus ou indépendamment du focus. Valeur par défaut : unfocused. |
tui.notification_method | auto | osc9 | bel | Méthode utilisée pour les notifications du terminal (par défaut : auto). |
tui.notifications | boolean | array<string> | Activez les notifications de la TUI et, si nécessaire, limitez-les à certains types d’événements. |
tui.raw_output_mode | boolean | Démarrez la TUI en mode d’historique de défilement brut pour faciliter la sélection et la copie dans le terminal (par défaut : false). Vous pouvez activer ou désactiver ce mode avec /raw ou le raccourci clavier alt-r par défaut. |
tui.resume_cwd | current | session | Répertoire de travail à utiliser lorsque vous reprenez ou forkez une session. S’il n’est pas défini, Codex vous demande de choisir un répertoire si votre répertoire actuel diffère du répertoire enregistré pour la session. |
tui.show_tooltips | boolean | Affichez les info-bulles de prise en main sur l’écran d’accueil de la TUI (par défaut : true). |
tui.status_line | array<string> | null | Liste ordonnée des identifiants des éléments de la ligne d’état au bas de la TUI. null désactive la ligne d’état. |
tui.terminal_title | array<string> | null | Liste ordonnée des identifiants des éléments du titre de la fenêtre ou de l’onglet du terminal. Valeur par défaut : ["spinner", "project"] ; null désactive les mises à jour du titre. |
tui.theme | string | Thème de coloration syntaxique à utiliser en remplacement (nom du thème en kebab-case). |
tui.vim_mode_default | boolean | Démarrez la zone de saisie en mode normal de Vim plutôt qu’en mode insertion (par défaut : false). Vous pouvez toujours modifier ce réglage pour chaque session avec /vim. |
web_search | disabled | cached | indexed | live | Mode de recherche web (par défaut : "cached" ; le mode cached utilise un index maintenu par OpenAI sans accès au web externe ; le mode indexed permet un accès externe uniquement si l’index de recherche l’autorise ; si vous utilisez --yolo ou un autre paramètre de bac à sable accordant un accès complet, la valeur par défaut est "live"). Utilisez "live" pour récupérer du contenu en direct sans restriction, ou "disabled" pour supprimer l’outil. |
windows_wsl_setup_acknowledged | boolean | Enregistrez la confirmation du parcours de prise en main de Windows (Windows uniquement). |
windows.sandbox | unelevated | elevated | Mode de bac à sable natif réservé à Windows lorsque Codex s’exécute nativement sur Windows. |
windows.sandbox_private_desktop | boolean | Lors d’une exécution native sur Windows, exécutez par défaut le processus enfant final placé en bac à sable sur un bureau privé. Définissez la valeur sur false uniquement pour assurer la compatibilité avec l’ancien comportement Winsta0\\Default. |
agentstableagents.<name>.config_filestring (path)agents.<name>.descriptionstringagents.default_subagent_modelstringagents.default_subagent_reasoning_effortstringagents.enabledbooleanagents.interrupt_messagebooleanagents.max_concurrent_threads_per_sessionnumberagents.max_threadsnumberagents.max_concurrent_threads_per_session.allow_login_shellbooleantrue ; avec false, les requêtes login = true sont rejetées et, si login est omis, les shells utilisés par défaut ne sont pas des shells de connexion.analytics.enabledbooleanapproval_policyuntrusted | on-request | never | { granular = { sandbox_approval = bool, rules = bool, mcp_elicitations = bool, request_permissions = bool, skill_approval = bool } }approval_policy = { granular = { ... } } pour autoriser l’affichage de certaines catégories de demandes ou les rejeter automatiquement, tout en gardant les autres demandes interactives. on-failure est obsolète ; utilisez on-request pour les exécutions interactives ou never pour les exécutions non interactives.approval_policy.granular.mcp_elicitationsbooleantrue, les demandes d’élicitation MCP peuvent s’afficher au lieu d’être rejetées automatiquement.approval_policy.granular.request_permissionsbooleantrue, les demandes de l’outil request_permissions peuvent s’afficher.approval_policy.granular.rulesbooleantrue, les demandes d’approbation déclenchées par les règles prompt d’execpolicy peuvent s’afficher.approval_policy.granular.sandbox_approvalbooleantrue, les demandes d’approbation liées à l’élévation des autorisations du bac à sable peuvent s’afficher.approval_policy.granular.skill_approvalbooleantrue, les demandes d’approbation des scripts de skill peuvent s’afficher.approvals_revieweruser | auto_reviewon-request ou des stratégies d’approbation granulaires. Valeur par défaut : user ; auto_review utilise le sous-agent de révision. Ce paramètre ne modifie pas le fonctionnement du bac à sable et ne soumet pas à révision les actions qui y sont déjà autorisées.apps._default.approvals_revieweruser | auto_reviewapprovals_reviewer de premier niveau.apps._default.default_tools_approval_modeauto | prompt | writes | approveapps._default.destructive_enabledbooleandestructive_hint = true.apps._default.enabledbooleanapps._default.open_world_enabledbooleanopen_world_hint = true.apps.<id>.approvals_revieweruser | auto_reviewapps._default.approvals_reviewer.apps.<id>.default_tools_approval_modeauto | prompt | writes | approveapps.<id>.default_tools_enabledbooleanapps.<id>.destructive_enabledbooleandestructive_hint = true.apps.<id>.enabledbooleanapps.<id>.open_world_enabledbooleanopen_world_hint = true.apps.<id>.tools.<tool>.approval_modeauto | prompt | writes | approveapps.<id>.tools.<tool>.enabledbooleanrepos/list).auto_review.policystringguardian_policy_config est prioritaire. Les valeurs vides sont ignorées.background_terminal_max_timeoutnumberwrite_stdin (interrogation du terminal en arrière-plan). Valeur par défaut : 300000 (5 minutes). Remplace l’ancienne clé background_terminal_timeout.browser_use.allow_history_accessbooleanfalse pour restreindre l’accès à l’historique de navigation. Les exigences gérées peuvent imposer cette restriction.browser_use.default_origin_policytableaccess, uploads, downloads et full_cdp_access, chacun défini sur allow ou deny.browser_use.origins.<origin>tablebrowser_use.default_origin_policy. Incluez un schéma HTTP ou HTTPS et, éventuellement, un port ; omettez les chemins, les paramètres de requête et les fragments. Les valeurs locales ne peuvent pas assouplir les interdictions gérées.chatgpt_base_urlstringcheck_for_update_on_startupbooleancli_auth_credentials_storefile | keyring | auto | ephemeralcompact_promptstringcomputer_use.default_app_accessallow | denycomputer_use.macos.bundle_idsmap<string, allow | deny>computer_use.windows.always_allowed_app_idsarray<string>computer_use.windows.aumidsmap<string, allow | deny>computer_use.windows.exesarray<table>publisher_name, product_name et access (allow ou deny) ; binary_name est facultatif.default_permissionsstring:read-only, :workspace et :danger-full-access ; les noms de profils personnalisés nécessitent des tables [permissions.<name>] correspondantes. Ne combinez pas ce paramètre avec sandbox_mode ou [sandbox_workspace_write].desktop.custom_file_handlers.<id>tabledesktop.custom_file_handlers.<id>.argsarray<string>[]).desktop.custom_file_handlers.<id>.commandstringdesktop.custom_file_handlers.<id>.iconstringdata:image/... encodée en Base64, URI de fichier ou chemin local absolu pour l’icône du gestionnaire. Obligatoire ; l’icône VS Code par défaut est utilisée si la source n’est pas prise en charge.desktop.custom_file_handlers.<id>.inputpath | json_argument | json_stdinpath).desktop.custom_file_handlers.<id>.labelstringdesktop.custom_file_handlers.<id>.supports_sshbooleanfalse).developer_instructionsstringdisable_paste_burstbooleanexperimental_compact_prompt_filestring (path)experimental_use_unified_exec_toolboolean[features].unified_exec ou codex --enable unified_exec.features.appsbooleanfeatures.code_mode.direct_only_tool_namespacesarray<string>features.code_mode.enabledbooleanfeatures.code_mode.excluded_tool_namespacesarray<string>features.context_management.experimental_modebooleanfeatures.enable_request_compressionbooleanfeatures.fast_modebooleanfeatures.goalsbooleanfeatures.hooksbooleanhooks.json ou configurés directement dans [hooks]. features.codex_hooks est un alias obsolète.features.multi_agentbooleanspawn_agent, send_input, resume_agent, wait_agent et close_agent) (fonctionnalité stable ; activée par défaut).features.network_proxyboolean | tableexperimental_network activées et gérées par un administrateur démarrent le proxy. Utilisez une table pour définir des options de stratégie propres à cette fonctionnalité, telles que domains. Ce proxy ne filtre pas la recherche web, les applications, MCP ni les autres outils hébergés.features.network_proxy.allow_local_bindingbooleanfalse ; des règles d’autorisation ciblant exactement une adresse IP locale littérale ou localhost peuvent néanmoins autoriser des cibles locales précises.features.network_proxy.allow_upstream_proxybooleantrue.features.network_proxy.dangerously_allow_all_unix_socketsbooleanfalse ; utilisez cette option uniquement dans des environnements strictement contrôlés.features.network_proxy.dangerously_allow_non_loopback_proxybooleanfalse ; l’activation de cette option peut rendre les points d’écoute du proxy accessibles au-delà de localhost.features.network_proxy.domainsmap<string, allow | deny>allow. La stratégie accepte les noms d’hôte exacts, *.example.com uniquement pour les sous-domaines, **.example.com pour le domaine racine et ses sous-domaines, ainsi que les règles d’autorisation globales * ; privilégiez les règles ciblées, car * ouvre largement l’accès sortant au réseau public. Ajoutez des règles deny pour bloquer certaines destinations ; en cas de conflit, deny l’emporte.features.network_proxy.enable_socks5booleantrue.features.network_proxy.enable_socks5_udpbooleantrue.features.network_proxy.enabledbooleanfalse ; les règles de domaine des profils d’autorisations ne sont pas appliquées lorsque le proxy est désactivé.features.network_proxy.proxy_urlstring"http://127.0.0.1:3128".features.network_proxy.socks_urlstring"http://127.0.0.1:8081".features.network_proxy.unix_socketsmap<string, allow | deny>allow pour les sockets autorisés.features.personalitybooleanfeatures.prevent_idle_sleepbooleanfeatures.remote_pluginbooleanfeatures.rollout_budget.enabledbooleanfeatures.rollout_budget.limit_tokens est obligatoire.features.rollout_budget.limit_tokensintegerfeatures.rollout_budget.prefill_token_weightnumber1.0.features.rollout_budget.reminder_interval_tokensintegerlimit_tokens, avec un minimum de 1 token.features.rollout_budget.sampling_token_weightnumber1.0.features.shell_snapshotbooleanfeatures.shell_toolbooleanshell fourni par défaut pour exécuter des commandes (fonctionnalité stable ; activée par défaut).features.skill_mcp_dependency_installbooleanfeatures.unified_execbooleanfeatures.web_searchbooleanweb_search.features.web_search_cachedbooleanweb_search n’est pas défini, true équivaut à web_search = "cached".features.web_search_requestbooleanweb_search n’est pas défini, true équivaut à web_search = "live".feedback.enabledboolean/feedback dans tous les clients locaux (valeur par défaut : true).file_openervscode | vscode-insiders | windsurf | cursor | nonevscode).forced_chatgpt_workspace_idstring (uuid)forced_login_methodchatgpt | apihide_agent_reasoningbooleancodex exec.history.max_bytesnumberhistory.persistencesave-all | nonehookstableconfig.toml. Ils utilisent le même schéma d’événements que hooks.json ; consultez le guide Hooks pour voir des exemples et les événements pris en charge.hooks.<Event>array<table>PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit, Stop ou Interrupt.hooks.<Event>[].hooksarray<table>hooks.<Event>[].hooks[].additionalContextLimitintegeradditionalContext trop volumineuse est enregistrée sur disque et un aperçu plus court est présenté au modèle. Valeur par défaut : 2500 ; 0 transmet directement le contexte complet au modèle. Consultez Sorties volumineuses des hooks.hooks.<Event>[].hooks[].asyncbooleanfalse ; SessionEnd s’exécute toujours de façon synchrone. Consultez Exécutez les hooks en arrière-plan.hooks.<Event>[].hooks[].commandWindowsstringcommand_windows est également accepté.instructionsstringmodel_instructions_file ou AGENTS.md.log_dirstring (path)$CODEX_HOME/log. Définir explicitement ce paramètre active également le journal TUI facultatif en texte brut codex-tui.log dans ce répertoire.mcp_oauth_callback_portintegeroauth.callback_port propre à un serveur est prioritaire. Si aucun des deux n’est défini, Codex se lie à un port éphémère choisi par le système d’exploitation.mcp_oauth_callback_urlstringmcp_oauth_credentials_storeauto | file | keyringmcp_optional_startup_grace_msinteger (milliseconds)1000. Définissez-le sur 0 pour utiliser à la place le délai startup_timeout_sec de chaque serveur.mcp_servers.<id>.argsarray<string>mcp_servers.<id>.authoauth | chatgptoauth (par défaut) utilise les identifiants OAuth MCP enregistrés lorsqu’ils sont disponibles. chatgpt utilise la session ChatGPT actuelle pour l’origine officielle de confiance de ChatGPT, puis se rabat sur les identifiants OAuth enregistrés. Les deux modes permettent de se connecter sans authentification si aucune source ne fournit d’identifiants.mcp_servers.<id>.bearer_token_env_varstringmcp_servers.<id>.commandstringmcp_servers.<id>.cwdstringmcp_servers.<id>.default_tools_approval_modeauto | prompt | writes | approvemcp_servers.<id>.disabled_toolsarray<string>enabled_tools pour le serveur MCP.mcp_servers.<id>.enabledbooleanmcp_servers.<id>.enabled_toolsarray<string>mcp_servers.<id>.envmap<string,string>mcp_servers.<id>.env_http_headersmap<string,string>mcp_servers.<id>.env_varsarray<string | { name = string, source = "local" | "remote" }>source = "local" ; utilisez source = "remote" uniquement avec un serveur stdio distant géré par un exécuteur.mcp_servers.<id>.experimental_environmentlocal | remoteremote démarre les serveurs stdio via un environnement d’exécution distant ; le placement distant des serveurs utilisant le transport streamable HTTP n’est pas implémenté.mcp_servers.<id>.http_headersmap<string,string>mcp_servers.<id>.http_headers_helperstring (command)mcp_servers.<id>.oauth_resourcestringmcp_servers.<id>.oauth.callback_portintegermcp_oauth_callback_port. Pour un rappel direct sur l’interface de bouclage dont l’URL contient un port explicite, configurez le même port d’écoute.mcp_servers.<id>.oauth.callback_urlstringmcp_servers.<id>.oauth.client_idstringmcp_servers.<id>.requiredbooleanmcp_servers.<id>.scopesarray<string>mcp_servers.<id>.startup_timeout_msnumberstartup_timeout_sec exprimé en millisecondes.mcp_servers.<id>.startup_timeout_secnumbermcp_servers.<id>.tool_timeout_secnumbermcp_servers.<id>.tools.<tool>.approval_modeauto | prompt | writes | approvemcp_servers.<id>.tools.<tool>.output_token_limitinteger (positive)mcp_servers.<id>.urlstringmemories.consolidation_modelstringmemories.disable_on_external_contextbooleantrue, les fils qui utilisent du contexte externe, comme des appels d’outils MCP, la recherche web ou la recherche d’outils, sont exclus de la génération de mémoires. Valeur par défaut : false. Ancien alias : memories.no_memories_if_mcp_or_web_search.memories.extract_modelstringmemories.generate_memoriesbooleanfalse, les fils de discussion nouvellement créés ne sont pas conservés comme données d’entrée pour la génération de mémoires. Valeur par défaut : true.memories.max_raw_memories_for_consolidationnumber256, plafonnée à 4096.memories.max_rollout_age_daysnumber30, bornée entre 0 et 90.memories.max_rollouts_per_startupnumber16, plafonnée à 128.memories.max_unused_daysnumber30, bornée entre 0 et 365.memories.min_rate_limit_remaining_percentnumber25, bornée entre 0 et 100.memories.min_rollout_idle_hoursnumber6, bornée entre 1 et 48.memories.use_memoriesbooleanfalse, Codex n’injecte pas les mémoires existantes dans les sessions futures. Valeur par défaut : true.modelstringgpt-5.5).model_auto_compact_token_limitnumbermodel_auto_compact_token_limit_scopetotal | body_after_prefixtotal, valeur par défaut) ou uniquement l’augmentation du contexte après le préfixe conservé de la fenêtre de compactage (body_after_prefix).model_catalog_jsonstring (path)$CODEX_HOME/profile-name.config.toml peut redéfinir cette valeur pour le profil concerné.model_context_windownumbermodel_instructions_filestring (path)AGENTS.md.model_providerstringmodel_providers (valeur par défaut : openai).model_providers.<id>tableopenai, ollama et lmstudio) sont réservés et ne peuvent pas être redéfinis.model_providers.<id>.authtableenv_key, experimental_bearer_token ou requires_openai_auth.model_providers.<id>.auth.argsarray<string>model_providers.<id>.auth.commandstringmodel_providers.<id>.auth.cwdstring (path)model_providers.<id>.auth.refresh_interval_msnumber0 pour n’actualiser le token qu’après une nouvelle tentative d’authentification.model_providers.<id>.auth.timeout_msnumbermodel_providers.<id>.base_urlstringmodel_providers.<id>.env_http_headersmap<string,string>model_providers.<id>.env_keystringmodel_providers.<id>.env_key_instructionsstringmodel_providers.<id>.experimental_bearer_tokenstringenv_key).model_providers.<id>.http_headersmap<string,string>model_providers.<id>.namestringmodel_providers.<id>.query_paramsmap<string,string>model_providers.<id>.request_max_retriesnumbermodel_providers.<id>.requires_openai_authbooleanmodel_providers.<id>.stream_idle_timeout_msnumbermodel_providers.<id>.stream_max_retriesnumbermodel_providers.<id>.supports_standalone_web_searchbooleanmodel_providers.<id>.supports_websocketsbooleanmodel_providers.<id>.wire_apiresponsesresponses est la seule valeur prise en charge et constitue la valeur par défaut lorsque ce paramètre est omis.model_providers.amazon-bedrock.aws.profilestringamazon-bedrock.model_providers.amazon-bedrock.aws.regionstringamazon-bedrock.model_reasoning_effortminimal | low | medium | high | xhighxhigh dépend du modèle).model_reasoning_summaryauto | concise | detailed | nonemodel_supports_reasoning_summariesbooleanmodel_verbositylow | medium | highnotice.hide_full_access_warningbooleannotice.hide_gpt-5.1-codex-max_migration_promptbooleannotice.hide_gpt5_1_migration_promptbooleannotice.hide_rate_limit_model_nudgebooleannotice.hide_world_writable_warningbooleannotice.model_migrationsmap<string,string>notifyarray<string>openai_base_urlstringopenai intégré.oss_providerlmstudio | ollama--oss (s’il n’est pas défini, Codex vous demande de le choisir).otel.environmentstringdev).otel.exporternone | otlp-http | otlp-grpcotel.exporter.<id>.endpointstringotel.exporter.<id>.headersmap<string,string>otel.exporter.<id>.protocolbinary | jsonotel.exporter.<id>.tls.ca-certificatestringotel.exporter.<id>.tls.client-certificatestringotel.exporter.<id>.tls.client-private-keystringotel.log_user_promptbooleanotel.metrics_exporternone | statsig | otlp-http | otlp-grpcstatsig).otel.trace_exporternone | otlp-http | otlp-grpcotel.trace_exporter.<id>.endpointstringotel.trace_exporter.<id>.headersmap<string,string>otel.trace_exporter.<id>.protocolbinary | jsonotel.trace_exporter.<id>.tls.ca-certificatestringotel.trace_exporter.<id>.tls.client-certificatestringotel.trace_exporter.<id>.tls.client-private-keystringpermissions.<name>.descriptionstringextends.permissions.<name>.extendsstring:read-only ou :workspace ; :danger-full-access, les parents non définis et les cycles sont rejetés.permissions.<name>.filesystemtable:minimal ou :workspace_roots.permissions.<name>.filesystem.":workspace_roots".<subpath-or-glob>"read" | "write" | "deny""." pour la racine elle-même ; des sous-chemins avec motif glob tels que "**/*.env" peuvent interdire la lecture avec "deny".permissions.<name>.filesystem.<path-or-glob>"read" | "write" | "deny" | table"deny" pour interdire la lecture des chemins correspondants.permissions.<name>.filesystem.glob_scan_max_depthnumber1.permissions.<name>.network.allow_local_bindingbooleanfalse, des règles d’autorisation visant une adresse IP locale littérale exacte ou localhost peuvent toujours autoriser des cibles locales précises.permissions.<name>.network.allow_upstream_proxybooleanpermissions.<name>.network.dangerously_allow_all_unix_socketsbooleanpermissions.<name>.network.dangerously_allow_non_loopback_proxybooleanpermissions.<name>.network.domainstablefeatures.network_proxy ou des exigences réseau actives gérées par un administrateur activent le proxy. Les noms d’hôtes exacts, *.example.com, **.example.com et les règles d’autorisation globales * sont pris en charge ; deny prévaut. Ces règles ne limitent ni la recherche web, ni les applications, ni les serveurs MCP.permissions.<name>.network.domains.<pattern>allow | deny*.example.com ou **.example.com.permissions.<name>.network.enable_socks5booleanpermissions.<name>.network.enable_socks5_udpbooleanpermissions.<name>.network.enabledbooleanfeatures.network_proxy n’est pas activé et qu’aucune exigence réseau gérée par un administrateur n’est activée, l’accès réseau des commandes est direct et les règles de domaine du profil ne sont pas appliquées.permissions.<name>.network.modelimited | fullpermissions.<name>.network.proxy_urlstringpermissions.<name>.network.socks_urlstringpermissions.<name>.network.unix_socketstableallow ajoute un chemin et deny le refuse.permissions.<name>.network.unix_sockets.<path>allow | denyallow, ou refusez-le avec deny. Les entrées refusées sont exclues de la liste d’autorisation effective.permissions.<name>.workspace_rootstable:workspace_roots, au même titre que les racines d’espace de travail de la session définies à l’exécution.permissions.<name>.workspace_roots.<path>booleantrue. Les entrées désactivées restent inactives.personalitynone | friendly | pragmaticsupportsPersonality ; peut être redéfini pour chaque fil de discussion ou tour, ou via /personality.plan_mode_reasoning_effortnone | minimal | low | medium | high | xhighplugins.<plugin>.mcp_servers.<server>.default_tools_approval_modeauto | prompt | writes | approveplugins.<plugin>.mcp_servers.<server>.disabled_toolsarray<string>enabled_tools pour un serveur MCP fourni par un plugin.plugins.<plugin>.mcp_servers.<server>.enabledbooleanplugins.<plugin>.mcp_servers.<server>.enabled_toolsarray<string>plugins.<plugin>.mcp_servers.<server>.tools.<tool>.approval_modeauto | prompt | writes | approveproject_doc_fallback_filenamesarray<string>AGENTS.md est absent.project_doc_max_bytesnumberAGENTS.md lors de la préparation des instructions du projet.project_root_markersarray<string>projects.<path>.trust_levelstring"trusted" | "untrusted"). Pour les projets non fiables, les couches .codex/ propres au projet sont ignorées, notamment la configuration, les hooks et les règles du projet.review_modelstring/review (par défaut, le modèle de la session en cours).sandbox_moderead-only | workspace-write | danger-full-accesssandbox_workspace_write.exclude_slash_tmpboolean/tmp des racines accessibles en écriture en mode workspace-write.sandbox_workspace_write.exclude_tmpdir_env_varboolean$TMPDIR des racines accessibles en écriture en mode workspace-write.sandbox_workspace_write.network_accessbooleansandbox_workspace_write.writable_rootsarray<string>sandbox_mode = "workspace-write".service_tierstringfast ou une autre offre déclarée par le modèle actif ; fast correspond à la valeur de requête priority.shell_environment_policy.excludearray<string>shell_environment_policy.filters pour toute nouvelle configuration ; ne combinez pas les deux formes dans une même couche.shell_environment_policy.experimental_use_profilebooleanshell_environment_policy.filtersmap<string, include | exclude>set explicites s’appliquent après les exclusions. Ne combinez pas ces filtres avec les anciens tableaux exclude ou include_only dans une même couche.shell_environment_policy.ignore_default_excludesbooleanshell_environment_policy.include_onlyarray<string>shell_environment_policy.filters pour toute nouvelle configuration ; ne combinez pas les deux formes dans une même couche.shell_environment_policy.inheritall | core | noneshell_environment_policy.setmap<string,string>show_raw_agent_reasoningbooleanskills.configarray<object>skills.config.<index>.enabledbooleanskills.config.<index>.pathstring (path)SKILL.md.skills.max_context_tokensinteger (positive)10000 tokens.sqlite_homestring (path)suppress_unstable_features_warningbooleantool_output_token_limitnumbertool_suggest.disabled_toolsarray<table>type = "connector" ou "plugin" et un id.tool_suggest.discoverablesarray<table>type = "connector" ou "plugin" et un id.tools.view_imagebooleanview_image permettant de joindre des images locales.tools.web_searchboolean | { context_size = "low|medium|high", allowed_domains = [string], location = { country, region, city, timezone } }tuitabletui.alternate_screenauto | always | nevertui.animationsbooleantui.keymap.<context>.<action>string | array<string>global, chat, composer, editor, vim_normal, vim_operator, vim_text_object, pager, list et approval. Pour certaines actions de la zone de saisie, les associations correspondantes de tui.keymap.global s’appliquent à défaut ; les associations propres au contexte sont prioritaires lorsqu’elles sont prises en charge.tui.keymap.<context>.<action> = []empty arrayctrl-a, shift-enter, page-down ou minus.tui.model_availability_nux.<model>integertui.notification_conditionunfocused | alwaysunfocused.tui.notification_methodauto | osc9 | beltui.notificationsboolean | array<string>tui.raw_output_modeboolean/raw ou le raccourci clavier alt-r par défaut.tui.resume_cwdcurrent | sessiontui.show_tooltipsbooleantui.status_linearray<string> | nullnull désactive la ligne d’état.tui.terminal_titlearray<string> | null["spinner", "project"] ; null désactive les mises à jour du titre.tui.themestringtui.vim_mode_defaultboolean/vim.web_searchdisabled | cached | indexed | live"cached" ; le mode cached utilise un index maintenu par OpenAI sans accès au web externe ; le mode indexed permet un accès externe uniquement si l’index de recherche l’autorise ; si vous utilisez --yolo ou un autre paramètre de bac à sable accordant un accès complet, la valeur par défaut est "live"). Utilisez "live" pour récupérer du contenu en direct sans restriction, ou "disabled" pour supprimer l’outil.windows_wsl_setup_acknowledgedbooleanwindows.sandboxunelevated | elevatedwindows.sandbox_private_desktopbooleanfalse uniquement pour assurer la compatibilité avec l’ancien comportement Winsta0\\Default.Vous trouverez ici le dernier schéma JSON pour config.toml.
Pour bénéficier de l’autocomplétion et des diagnostics lorsque vous modifiez config.toml dans VS Code ou Cursor, vous pouvez installer l’extension Even Better TOML et ajouter cette ligne au début de votre fichier config.toml :
#:schema https://developers.openai.com/codex/config-schema.json
Remarque : renommez experimental_instructions_file en model_instructions_file. L’ancienne clé est obsolète dans Codex ; mettez à jour les configurations existantes pour utiliser le nouveau nom.
requirements.toml
requirements.toml est un fichier de configuration imposé par un administrateur qui limite les paramètres sensibles pour la sécurité, sans possibilité de dérogation pour les utilisateurs. Pour connaître les détails, les emplacements et les exemples, consultez Exigences imposées par un administrateur.
Pour les utilisateurs de ChatGPT Business et Enterprise, Codex peut également appliquer des exigences récupérées depuis le cloud. Consultez la page sur la sécurité pour connaître les règles de priorité.
Utilisez [features] dans requirements.toml pour fixer les indicateurs de fonctionnalités à l’exécution avec les mêmes
clés canoniques que dans config.toml. Les exigences peuvent aussi inclure des clés documentées
propres à l’application, qui n’ont pas leur place dans config.toml. Les clés omises restent
sans contrainte.
Certaines exigences gérées imposent une valeur de configuration exacte plutôt qu’une liste d’autorisation. Les utilisateurs ne peuvent pas modifier un chemin, une préférence de mise à jour, une politique de shell de connexion, un paramètre de retour d’expérience ou un paramètre de bureau privé Windows ainsi imposés.
Les listes d’autorisation gérées pour les profils d’autorisations nécessitent Codex 0.138.0 ou une version ultérieure. Codex
0.137.0 et les versions antérieures ignorent allowed_permission_profiles ainsi que le paramètre géré
default_permissions.
Utilisez allowed_sandbox_modes avec sandbox_mode. Pour les déploiements utilisant des profils d’autorisations,
utilisez allowed_permission_profiles avec le paramètre géré
default_permissions.
La table [models.new_thread] fournit des valeurs par défaut gérées, sans les imposer.
Les choix explicites au lancement, effectués via des options CLI dédiées ou des remplacements avec --config, sont
prioritaires. Un remplacement explicite du modèle ou de l’effort de raisonnement entraîne l’exclusion des deux champs gérés
relatifs au modèle ; service_tier est indépendant.
Les exigences relatives au navigateur couvrent trois interfaces distinctes. in_app_browser
contrôle le volet du navigateur qu’une personne ouvre et utilise directement. browser_use
contrôle le travail effectué par l’agent dans un navigateur. computer_use contrôle le travail effectué par l’agent
dans les applications de bureau natives.
Les valeurs de politique imbriquées des fonctionnalités Navigateur et Utilisation de l’ordinateur n’accordent pas d’accès à elles seules.
Une valeur allow propre à une origine ou à une application peut remplacer la valeur de repli
de la même source de politique, mais les vérifications habituelles des fonctionnalités, des approbations et des autres politiques
continuent de s’appliquer. Lorsque les exigences gérées et config.toml s’appliquent toutes deux, une valeur deny
provenant de l’une ou de l’autre l’emporte.
| Key | Type / Values | Details |
|---|---|---|
allow_appshots | boolean | Définissez ce paramètre sur false pour désactiver les Captures d’application pour les utilisateurs gérés par l’administrateur. S’il est omis, les exigences ne restreignent pas les Captures d’application, qui restent soumises aux conditions habituelles de disponibilité du produit. |
allow_browser_and_computer_use | boolean | Définissez ce paramètre sur false pour bloquer à la fois la fonctionnalité Navigateur pilotée par l’agent et l’Utilisation de l’ordinateur dans les applications natives. Le définir sur true ou l’omettre n’active aucune de ces fonctionnalités ; les autres vérifications relatives aux fonctionnalités, aux politiques et aux approbations restent applicables. |
allow_login_shell | boolean | Imposez si les outils shell peuvent ou non démarrer un shell de connexion. |
allow_managed_hooks_only | boolean | Lorsque ce paramètre vaut true, Codex ignore les hooks de l’utilisateur, du projet, de la session et des plugins, tout en autorisant les hooks gérés par l’administrateur provenant de requirements.toml et d’autres couches de configuration gérées. |
allow_remote_control | boolean | Définissez ce paramètre sur false pour désactiver le contrôle à distance des appareils pour les utilisateurs gérés par l’administrateur. S’il est omis, les exigences ne restreignent pas le contrôle à distance des appareils, qui reste soumis aux conditions habituelles de disponibilité du produit. |
allowed_approval_policies | array<string> | Valeurs autorisées pour approval_policy (par exemple untrusted, on-request, never et granular). |
allowed_approvals_reviewers | array<string> | Valeurs autorisées pour approvals_reviewer, comme user et auto_review. |
allowed_chatgpt_workspaces | array<string> | Restreignez la connexion à ChatGPT, y compris les jetons d’accès Codex, aux identifiants d’espace de travail répertoriés. Une liste vide désactive la connexion à ChatGPT ; l’authentification API reste disponible lorsqu’elle est autorisée. Définissez ce paramètre dans le fichier local d’exigences système ou via le MDM macOS ; les valeurs gérées dans le cloud sont ignorées. |
allowed_login_methods | array<string> | Autorisez chatgpt, api ou les deux. S’il est omis, ce paramètre ne restreint pas les méthodes de connexion. S’il est défini, la liste doit contenir au moins une méthode. api autorise l’authentification API, y compris Amazon Bedrock. Définissez ce paramètre dans le fichier local d’exigences système ou via le MDM macOS. Les valeurs gérées dans le cloud sont ignorées. |
allowed_permission_profiles | table<boolean> | Liste complète des profils d’autorisations autorisés. Les profils définis sur true sont autorisés. Les profils omis ou définis sur false sont interdits, y compris ceux ajoutés dans les versions futures. Lorsque plusieurs sources d’exigences sont combinées, les entrées sont rapprochées par nom de profil. |
allowed_permission_profiles.<name> | boolean | Autorisez ou interdisez un profil d’autorisations intégré ou personnalisé défini dans une source de configuration ou d’exigences chargée. Une source d’exigences ultérieure de priorité supérieure peut utiliser false pour désactiver un profil autorisé par une source antérieure de priorité inférieure. |
allowed_sandbox_modes | array<string> | Valeurs autorisées pour sandbox_mode. |
allowed_web_search_modes | array<string> | Valeurs autorisées pour web_search (disabled, cached, indexed, live). disabled est toujours autorisé ; une liste vide n’autorise donc que disabled. |
apps | table | Exigences gérées pour les applications, indexées par identifiant d’application. Elles peuvent désactiver une application ou restreindre le comportement d’approbation de chaque outil. |
apps.<id>.enabled | boolean | Définissez cette valeur sur false pour désactiver une application. Une exigence de désactivation conserve son effet restrictif lorsque plusieurs sources d’exigences sont fusionnées. |
apps.<id>.tools.<tool>.approval_mode | auto | prompt | writes | approve | Définissez le mode d’approbation géré pour un outil d’application. |
browser_use | table | Exigences définies par l’administrateur pour la fonctionnalité Navigateur pilotée par l’agent. |
browser_use.allow_global_persistent_approval | boolean | Définissez ce paramètre sur false pour empêcher la fonctionnalité Navigateur de créer ou de prendre en compte des approbations Always allow couvrant tous les sites, comme l’autorisation de télécharger depuis n’importe quel site. Les approbations déjà enregistrées sont ignorées, sans être supprimées. Le définir sur true ou l’omettre ne crée aucune approbation. |
browser_use.allow_history_access | boolean | Définissez ce paramètre sur false pour empêcher la fonctionnalité Navigateur de lire l’historique de navigation. Le définir sur true ou l’omettre conserve les paramètres d’historique et les vérifications de disponibilité habituels. |
browser_use.default_origin_policy | table | Valeur de repli pour chaque paramètre de la fonctionnalité Navigateur lorsqu’aucune entrée correspondante dans browser_use.origins ne le définit. Une règle d’origine correspondante remplace la valeur de repli pour cette source. Codex applique ensuite le résultat le plus restrictif entre les exigences définies par l’administrateur et la configuration utilisateur. |
browser_use.default_origin_policy.access | allow | deny | Utilisez deny pour bloquer la fonctionnalité Navigateur sur les origines qui utilisent la valeur de repli. Une origine interdite bloque également les envois, les téléchargements, l’accès complet au débogage du navigateur et la révision automatique sur cette origine. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique. |
browser_use.default_origin_policy.access_approval_lifetime | turn | thread | Définissez la durée d’une approbation non persistante d’accès à un site : turn la limite au tour en cours, et thread la conserve jusqu’à la fin du fil de discussion en cours. persistent_approval contrôle séparément la disponibilité de Always allow. La valeur par défaut du produit est thread. |
browser_use.default_origin_policy.auto_review | allow | deny | Utilisez deny pour ignorer la révision automatique sur les origines qui utilisent la valeur de repli et demander à la place l’approbation de l’utilisateur. allow laisse la révision automatique disponible lorsque les autres paramètres l’autorisent. |
browser_use.default_origin_policy.downloads | allow | deny | Utilisez deny pour bloquer les téléchargements de la fonctionnalité Navigateur sur les origines qui utilisent la valeur de repli. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique. |
browser_use.default_origin_policy.full_cdp_access | allow | deny | Utilisez deny pour bloquer l’accès complet au Chrome DevTools Protocol (CDP) sur les origines qui utilisent la valeur de repli. allow permet uniquement de poursuivre les vérifications habituelles d’activation volontaire et d’approbation. |
browser_use.default_origin_policy.persistent_approval | boolean | Définissez ce paramètre sur false pour empêcher la fonctionnalité Navigateur d’enregistrer ou de prendre en compte une approbation Always allow sur les origines qui utilisent la valeur de repli. Les approbations pour le tour ou le fil de discussion en cours peuvent toujours s’appliquer. true rend Always allow disponible lorsque les autres règles l’autorisent, mais ne crée aucune approbation. |
browser_use.default_origin_policy.uploads | allow | deny | Utilisez deny pour bloquer les envois de la fonctionnalité Navigateur sur les origines qui utilisent la valeur de repli. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique. |
browser_use.disable_auto_review | boolean | Définissez ce paramètre sur true pour ignorer la révision automatique de la fonctionnalité Navigateur et demander à la place l’approbation de l’utilisateur. Le définir sur false ou l’omettre laisse la révision automatique disponible lorsque les autres paramètres l’autorisent. |
browser_use.origins | map<string, table> | Politiques de la fonctionnalité Navigateur propres à chaque origine. Les clés utilisent <scheme>://<host-pattern>[:<port>] avec http ou https. Utilisez un hôte exact, *.example.com pour les sous-domaines uniquement, ou **.example.com pour le domaine de base et ses sous-domaines. Les autres caractères génériques * peuvent couvrir des points : region*.example.com correspond donc aussi à region.api.example.com ; un hôte défini sur * correspond à tous les hôtes pour ce schéma. Les schémas et les ports autres que ceux par défaut sont pris en compte ; les ports par défaut explicitement indiqués sont supprimés lors de la normalisation. Les chemins, les chaînes de requête, les noms d’utilisateur ou mots de passe intégrés, ainsi que les schémas ou ports contenant des caractères génériques sont invalides. Placez le motif entre guillemets en TOML, par exemple [browser_use.origins."https://**.example.com"]. |
browser_use.origins.<pattern> | table | Politique pour les origines correspondant à ce motif. Si plusieurs motifs correspondent, Codex utilise la valeur la plus restrictive pour chaque capacité : deny prévaut sur allow, false sur true et turn sur thread. |
browser_use.origins.<pattern>.access | allow | deny | Utilisez deny pour bloquer la fonctionnalité Navigateur sur les origines correspondantes. Le refus bloque également les envois, les téléchargements, l’accès complet au débogage du navigateur et la révision automatique sur ces origines. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique. |
browser_use.origins.<pattern>.access_approval_lifetime | turn | thread | Définissez la durée d’une approbation non persistante d’accès aux sites pour les origines correspondantes : turn la limite au tour en cours, tandis que thread la conserve jusqu’à la fin du fil de discussion en cours. persistent_approval contrôle séparément la disponibilité de Always allow. |
browser_use.origins.<pattern>.auto_review | allow | deny | Utilisez deny pour ignorer la révision automatique sur les origines correspondantes et demander l’approbation de l’utilisateur à la place. allow laisse la révision automatique disponible lorsque les autres paramètres l’autorisent. |
browser_use.origins.<pattern>.downloads | allow | deny | Utilisez deny pour bloquer les téléchargements de la fonctionnalité Navigateur sur les origines correspondantes. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique. |
browser_use.origins.<pattern>.full_cdp_access | allow | deny | Utilisez deny pour bloquer l’accès complet au Chrome DevTools Protocol (CDP) sur les origines correspondantes. allow permet uniquement de poursuivre les vérifications habituelles d’activation volontaire et d’approbation. |
browser_use.origins.<pattern>.persistent_approval | boolean | Définissez ce paramètre sur false pour empêcher la fonctionnalité Navigateur d’enregistrer ou de respecter une approbation Always allow sur les origines correspondantes. Les approbations pour le tour ou le fil de discussion en cours peuvent toujours s’appliquer. true rend Always allow disponible lorsque les autres règles le permettent, mais ne crée pas d’approbation. |
browser_use.origins.<pattern>.uploads | allow | deny | Utilisez deny pour bloquer les envois de la fonctionnalité Navigateur sur les origines correspondantes. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique. |
chatgpt_base_url | string | Imposez l’URL de base du service ChatGPT avant l’authentification et la récupération des politiques du cloud. Cela ne configure pas toutes les destinations réseau de Codex. Définissez ce paramètre dans le fichier local d’exigences système ou via le MDM macOS ; les valeurs gérées dans le cloud sont ignorées. |
check_for_update_on_startup | boolean | Imposez l’activation ou la désactivation de la recherche de mises à jour au démarrage de Codex. |
cli_auth_credentials_store | file | keyring | auto | ephemeral | Imposez le stockage des identifiants de la CLI avant le chargement de l’authentification. file utilise CODEX_HOME/auth.json ; keyring nécessite le stockage des identifiants du système d’exploitation ; auto utilise un fichier si ce stockage est indisponible ; ephemeral conserve les identifiants en mémoire pour le processus en cours. Définissez ce paramètre dans le fichier local d’exigences système ou via le MDM macOS ; les valeurs gérées dans le cloud sont ignorées. |
computer_use | table | Exigences gérées pour les actions effectuées par l’agent dans les applications de bureau natives. Les règles gérées relatives aux applications et celles de config.toml s’appliquent toutes deux ; chaque source de politique doit autoriser l’application. |
computer_use.allow_locked_computer_use | boolean | Définissez ce paramètre sur false pour empêcher les utilisateurs d’activer l’utilisation lorsque l’appareil est verrouillé sur un appareil macOS géré. Cette exigence supprime les commandes d’activation ; elle ne désactive pas cette fonctionnalité si elle est déjà activée. Si ce paramètre est omis, les conditions habituelles de disponibilité du produit s’appliquent. |
computer_use.allow_persistent_approval | boolean | Définissez ce paramètre sur false pour supprimer l’option permettant de conserver les approbations des applications d’une session à l’autre. Les approbations pour la session en cours restent disponibles. Définir ce paramètre sur true ou l’omettre n’approuve aucune application. |
computer_use.default_app_access | allow | deny | Règle d’accès de repli pour les applications natives qui ne correspondent à aucune règle propre à la plateforme. deny bloque l’accès. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique. La valeur par défaut du produit est allow. |
computer_use.macos | table | Règles de la fonctionnalité Utilisation de l’ordinateur pour les applications macOS. |
computer_use.macos.bundle_ids | map<string, allow | deny> | Associez les identifiants de bundle macOS exacts à allow ou deny. Une règle correspondante remplace computer_use.default_app_access au sein de la même source de politique. Un refus provenant des exigences gérées ou de la configuration utilisateur bloque toujours l’accès. |
computer_use.macos.bundle_ids.<bundle-id> | allow | deny | Utilisez deny pour bloquer l’identifiant de bundle exact. allow remplace uniquement la valeur par défaut de cette source de politique ; toutes les autres sources de politique et le processus habituel d’approbation doivent toujours autoriser l’application. |
computer_use.windows | table | Règles de la fonctionnalité Utilisation de l’ordinateur pour les applications Windows empaquetées et non empaquetées. |
computer_use.windows.aumids | map<string, allow | deny> | Associez les identifiants Application User Model ID (AUMID) exacts et enregistrés des applications empaquetées signées à allow ou deny. Une règle correspondante remplace computer_use.default_app_access au sein de la même source de politique. |
computer_use.windows.aumids.<aumid> | allow | deny | Utilisez deny pour bloquer l’identité exacte de l’application empaquetée. allow remplace uniquement la valeur par défaut de cette source de politique ; toutes les autres sources de politique et le processus habituel d’approbation doivent toujours autoriser l’application. |
computer_use.windows.exes | array<table> | Règles pour les exécutables Windows signés et non empaquetés. Les règles portent sur l’éditeur vérifié de l’exécutable et ses informations de version signées, et non sur son chemin ou son nom de fichier actuel. Un refus correspondant prévaut sur les autorisations correspondantes. Les exécutables non signés utilisent computer_use.default_app_access ; les exécutables dont l’identité signée ne peut pas être vérifiée sans ambiguïté sont bloqués. |
computer_use.windows.exes[].access | allow | deny | Décision d’accès obligatoire pour les exécutables correspondants. deny bloque l’accès. allow remplace uniquement la valeur par défaut de cette source de politique ; toutes les autres sources de politique et le processus habituel d’approbation doivent toujours autoriser l’application. |
computer_use.windows.exes[].binary_name | string | Valeur facultative de OriginalFilename figurant dans les informations de version signées de l’exécutable. La correspondance ne tient pas compte de la casse. Si une règle correspondant à l’éditeur et au produit exige cette valeur, mais que l’exécutable ne la fournit pas, la fonctionnalité Utilisation de l’ordinateur bloque l’exécutable. |
computer_use.windows.exes[].product_name | string | Valeur exacte de ProductName figurant dans les informations de version signées de l’exécutable. Obligatoire. |
computer_use.windows.exes[].publisher_name | string | Nom exact de l’éditeur figurant dans le certificat de signature de confiance de l’exécutable, au format d’un nom distinctif X.500 Windows. Obligatoire. |
default_permissions | string | Profil d’autorisations par défaut défini par l’administrateur. Ce profil doit être autorisé par allowed_permission_profiles. Définissez-le explicitement pour obtenir un comportement prévisible ; s’il est omis, Codex utilise :workspace par défaut uniquement lorsque :workspace et :read-only sont tous deux explicitement autorisés. |
enforce_residency | string | Exigez que le trafic des services Codex utilise une résidence des données prise en charge. Accepte actuellement us. |
experimental_network | table | Exigences réseau gérées par l’administrateur pour les commandes locales exécutées dans le bac à sable, appliquées à partir de requirements.toml. Lorsqu’elles sont activées, ces exigences peuvent démarrer le proxy réseau des commandes sans features.network_proxy. Les outils de navigation vérifient séparément les refus réseau gérés et les listes d’autorisation exclusives. Ces exigences ne font pas transiter le trafic du navigateur par le proxy et ne contrôlent ni la recherche web, ni les applications, ni les serveurs MCP, ni le trafic des applications natives, ni le réseau de Codex Cloud. |
experimental_network.allow_local_binding | boolean | Autorisez un accès plus large au réseau local ou privé pour le réseau du bac à sable. Les règles autorisant une adresse IP locale littérale exacte ou localhost peuvent toujours permettre l’accès à des cibles locales spécifiques lorsque ce paramètre reste sur false. |
experimental_network.allow_upstream_proxy | boolean | Autorisez le réseau du bac à sable à passer par un proxy en amont défini dans l’environnement. |
experimental_network.allowed_domains | array<string> | Règles d’autorisation définies par l’administrateur pour le réseau des commandes exécutées dans le bac à sable lorsque le proxy réseau géré est activé. Ces règles ne s’appliquent pas à la recherche web, aux applications ou aux serveurs MCP. Ne combinez pas ce paramètre avec experimental_network.domains. |
experimental_network.dangerously_allow_all_unix_sockets | boolean | Autorisez n’importe quelle destination de socket Unix au lieu de limiter l’accès à la liste d’autorisation. Utilisez ce paramètre uniquement dans des environnements strictement contrôlés. |
experimental_network.dangerously_allow_non_loopback_proxy | boolean | Autorisez les adresses d’écoute hors de l’interface de bouclage pour les exigences [experimental_network]. L’activation de ce paramètre peut exposer les services d’écoute au-delà de localhost. |
experimental_network.denied_domains | array<string> | Règles de refus définies par l’administrateur sous forme de liste pour le réseau du bac à sable. Ne combinez pas ce paramètre avec experimental_network.domains. |
experimental_network.domains | map<string, allow | deny> | Politique de domaines définie par l’administrateur sous forme de table pour le réseau du bac à sable. Prend en charge les hôtes exacts, *.example.com pour les sous-domaines uniquement, **.example.com pour le domaine racine et ses sous-domaines, ainsi que les règles d’autorisation globales * ; privilégiez les règles à portée limitée, car * ouvre largement l’accès sortant au réseau public. deny prévaut en cas de conflit. Ne combinez pas ce paramètre avec experimental_network.allowed_domains ou experimental_network.denied_domains. |
experimental_network.enabled | boolean | Activez les exigences réseau du bac à sable. Cela n’accorde pas d’accès réseau lorsque le bac à sable actif maintient le réseau désactivé pour les commandes. |
experimental_network.http_port | integer | Port d’écoute HTTP sur l’interface de bouclage à utiliser pour les exigences [experimental_network]. |
experimental_network.managed_allowed_domains_only | boolean | Lorsque ce paramètre vaut true, seules les règles d’autorisation gérées par l’administrateur restent applicables pendant que les exigences réseau du bac à sable sont actives ; les ajouts de l’utilisateur à la liste d’autorisation sont ignorés. En l’absence de règles d’autorisation gérées, les règles d’autorisation de domaines ajoutées par l’utilisateur ne restent pas applicables. |
experimental_network.socks_port | integer | Port d’écoute SOCKS5 sur l’interface de bouclage à utiliser pour les exigences [experimental_network]. |
experimental_network.unix_sockets | map<string, allow | deny> | Politique de sockets Unix gérée par l’administrateur pour le réseau du bac à sable. |
features | table | Valeurs imposées pour les fonctionnalités. Utilisez les noms canoniques de config.toml pour les fonctionnalités de l’environnement d’exécution ; les clés d’exigences documentées propres à l’application sont également prises en charge ici. |
features.<name> | boolean | Exigez qu’une fonctionnalité documentée de l’environnement d’exécution ou de l’application reste activée ou désactivée. |
features.apps | boolean | Imposez l’activation ou la désactivation de l’intégration Applications pour les utilisateurs gérés par l’administrateur. |
features.browser_use | boolean | Définissez ce paramètre sur false dans requirements.toml pour désactiver la fonctionnalité Navigateur pilotée par l’agent. |
features.browser_use_external | boolean | Définissez ce paramètre sur false dans requirements.toml pour empêcher Codex de contrôler les navigateurs pris en charge via l’extension de navigateur ChatGPT, y compris les onglets existants et les sessions connectées. |
features.browser_use_full_cdp_access | boolean | Définissez ce paramètre sur false dans requirements.toml pour désactiver l’accès complet au Chrome DevTools Protocol dans l’environnement d’exécution local, y compris le mode développeur du navigateur, et empêcher l’application de bureau ChatGPT d’activer le paramètre correspondant. S’il est omis, les conditions habituelles de disponibilité du produit s’appliquent. |
features.computer_use | boolean | Définissez ce paramètre sur false dans requirements.toml pour désactiver l’Utilisation de l’ordinateur, Enregistrer et rejouer, ainsi que les parcours d’installation ou d’activation associés. |
features.fast_mode | boolean | Imposez l’activation ou la désactivation de la fonctionnalité canonique fast_mode pour les utilisateurs gérés par l’administrateur. |
features.guardian_approval | boolean | Imposez l’activation ou la désactivation des approbations Guardian pour les utilisateurs gérés par l’administrateur. |
features.in_app_browser | boolean | Définissez ce paramètre sur false dans requirements.toml pour désactiver le volet du navigateur intégré que les utilisateurs ouvrent et contrôlent directement. |
features.in_app_updates | boolean | Définissez ce paramètre sur false dans requirements.toml pour désactiver les mises à jour dans l’application. Les mises à jour restent activées par défaut lorsque cette exigence est omise. |
features.memories | boolean | Imposez l’activation ou la désactivation des Mémoires pour les utilisateurs gérés par l’administrateur. |
features.multi_agent | boolean | Imposez l’activation ou la désactivation des fonctionnalités multi-agents pour les utilisateurs gérés par l’administrateur. |
features.plugin_sharing | boolean | Définissez ce paramètre sur false dans le fichier requirements.toml géré dans le cloud pour désactiver le partage dans l’espace de travail des plugins créés localement. |
features.plugins | boolean | Imposez l’activation ou la désactivation des plugins pour les utilisateurs gérés par l’administrateur. |
features.remote_plugin | boolean | Imposez l’activation ou la désactivation du catalogue de plugins distant pour les utilisateurs gérés par l’administrateur. |
features.workspace_dependencies | boolean | Imposez l’activation ou la désactivation de l’environnement d’exécution fourni pour les dépendances de l’espace de travail, pour les utilisateurs gérés par l’administrateur. |
feedback | table | Paramètres gérés de retour d’expérience. |
feedback.enabled | boolean | Imposez si les utilisateurs peuvent envoyer des commentaires dans les différents clients Codex. |
guardian_policy_config | string | Instructions de politique en Markdown définies par l’administrateur pour la révision automatique. Elles prévalent sur le paramètre local [auto_review].policy. Les valeurs vides sont ignorées. |
hooks | table | Hooks de cycle de vie gérés et imposés par l’administrateur. Nécessitent un répertoire de hooks gérés et utilisent le même schéma d’événements que la section [hooks] définie directement dans config.toml. |
hooks.<Event> | array<table> | Groupes de critères de correspondance pour un événement de hook tel que PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit ou Stop. |
hooks.<Event>[].hooks | array<table> | Gestionnaires de hooks pour un groupe de critères de correspondance. Les hooks de commande et d’outil MCP sont pris en charge, tandis que les gestionnaires de hooks de prompt et d’agent sont analysés, mais ne sont pas exécutés. |
hooks.<Event>[].hooks[].additionalContextLimit | integer | Seuil approximatif de tokens par gestionnaire au-delà duquel un additionalContext trop volumineux est enregistré sur disque et un aperçu plus court est présenté au modèle. La valeur par défaut est 2500 ; 0 transmet directement l’intégralité du contexte au modèle. Consultez Sorties de hooks volumineuses. |
hooks.<Event>[].hooks[].async | boolean | Exécutez un hook de commande en arrière-plan sans retarder l’opération qui le déclenche. La valeur par défaut est false ; SessionEnd s’exécute toujours de manière synchrone. Consultez Exécuter des hooks en arrière-plan. |
hooks.<Event>[].hooks[].commandWindows | string | Commande de remplacement propre à Windows pour les hooks de commande. L’alias TOML command_windows est également accepté. |
hooks.managed_dir | string (absolute path) | Répertoire contenant les scripts de hooks gérés sur macOS et Linux. Codex vérifie que son chemin est absolu et que le répertoire existe avant de charger les hooks gérés. |
hooks.windows_managed_dir | string (absolute path) | Répertoire contenant les scripts de hooks gérés sur Windows. Codex vérifie que son chemin est absolu et que le répertoire existe avant de charger les hooks gérés. |
in_app_browser | table | Exigences relatives au volet du navigateur intégré. Ces paramètres ne contrôlent pas la fonctionnalité Navigateur pilotée par l’agent. |
in_app_browser.allow_external_browser_settings_import | boolean | Définissez ce paramètre sur false pour empêcher les utilisateurs d’importer des paramètres ou des données de navigation d’un navigateur externe vers le navigateur intégré. Le définir sur true ou l’omettre laisse l’importation disponible lorsque les autres vérifications du produit l’autorisent. Ce paramètre est réservé à la gestion par l’administrateur et ne peut pas être remplacé dans config.toml. |
log_dir | string (path) | Imposez le répertoire dans lequel Codex écrit les fichiers journaux locaux. |
marketplaces | table | Exigences administrateur pour les sources de marketplaces de plugins. Les règles prennent effet lorsque restrict_to_allowed_sources vaut true. |
marketplaces.allowed_sources | table | Sources de marketplaces autorisées, indexées par un nom de règle choisi par l’administrateur. Les noms distincts s’accumulent au fil des couches d’exigences ; les champs regroupés sous un même nom suivent l’ordre de priorité habituel des couches. |
marketplaces.allowed_sources.<name> | table | Règle autorisant une source. La valeur finale de source après la fusion des exigences détermine les champs de même niveau que Codex interprète. |
marketplaces.allowed_sources.<name>.host_pattern | string | Expression régulière obligatoire lorsque source = "host_pattern". Codex l’applique au nom d’hôte en minuscules extrait d’une source Git au format HTTPS, SSH ou SCP. Utilisez ^ et $ pour exiger une correspondance sur l’intégralité du nom d’hôte. |
marketplaces.allowed_sources.<name>.path | string (absolute path) | Répertoire de la marketplace locale, obligatoire lorsque source = "local". Codex exige un chemin absolu et compare les chemins après normalisation. |
marketplaces.allowed_sources.<name>.ref | string | Référence Git exacte facultative pour une règle git. Si elle est omise, la règle autorise toute référence du dépôt correspondant. |
marketplaces.allowed_sources.<name>.source | git | host_pattern | local | Type de critère de correspondance pour la source de marketplace. Utilisez git pour un dépôt, host_pattern pour des hôtes Git sélectionnés par une expression régulière, ou local pour un répertoire. |
marketplaces.allowed_sources.<name>.url | string | URL du dépôt Git, obligatoire lorsque source = "git". Codex normalise les URL configurées et autorisées, puis exige une correspondance exacte du dépôt. |
marketplaces.restrict_to_allowed_sources | boolean | Lorsque cette valeur est true, les sources de marketplaces configurées par l’utilisateur doivent correspondre à allowed_sources lors de l’ajout d’une marketplace, de l’installation d’un plugin et de l’actualisation des marketplaces Git configurées. Les marketplaces OpenAI gérées par Codex restent autorisées lorsque leur source et leur nom réservés correspondent. Ce paramètre ne filtre pas les marketplaces déjà configurées par l’utilisateur lors de l’exécution. |
mcp_servers | table | Liste d’autorisation des serveurs MCP qui peuvent être activés. Le nom du serveur ( <id>) et son identité doivent tous deux correspondre pour que le serveur MCP puisse être activé. Tout serveur MCP configuré qui ne figure pas dans la liste d’autorisation, ou dont l’identité ne correspond pas, est désactivé. |
mcp_servers.<id>.identity | table | Règle d’identité pour un seul serveur MCP. Définissez soit command (stdio), soit url (HTTP streamable). |
mcp_servers.<id>.identity.command | string | table | Autorisez un serveur MCP stdio à l’aide d’une chaîne de commande exacte, ou utilisez une table de critères de correspondance pour exiger un exécutable exact et des critères ordonnés pour les arguments. La forme chaîne ne vérifie ni les arguments, ni cwd, ni env, ni env_vars. |
mcp_servers.<id>.identity.command.args | array<table> | Critères de correspondance ordonnés pour les arguments d’un serveur stdio. La liste d’arguments configurée doit avoir la même longueur, et chaque position doit correspondre. Les critères de correspondance de commande ne vérifient ni cwd, ni env, ni env_vars. |
mcp_servers.<id>.identity.command.args[].expression | string | Expression régulière utilisée par un critère de correspondance d’argument regex. L’expression doit être valide et correspondre à la valeur entière de l’argument. |
mcp_servers.<id>.identity.command.args[].match | exact | prefix | regex | Opération de correspondance pour cette position d’argument. |
mcp_servers.<id>.identity.command.args[].value | string | Valeur utilisée par un critère de correspondance d’argument exact ou prefix. |
mcp_servers.<id>.identity.command.executable | string | Exécutable auquel la valeur command configurée pour le serveur stdio doit correspondre exactement. |
mcp_servers.<id>.identity.url | string | table | Autorisez un serveur MCP HTTP streamable à l’aide d’une chaîne d’URL exacte, ou utilisez une table de critères de correspondance de valeur exact, prefix ou regex. |
mcp_servers.<id>.identity.url.expression | string | Expression régulière utilisée par un critère de correspondance d’URL regex. L’expression doit être valide et correspondre à l’URL entière. |
mcp_servers.<id>.identity.url.match | exact | prefix | regex | Opération de correspondance pour l’URL configurée du serveur MCP. |
mcp_servers.<id>.identity.url.value | string | Valeur utilisée par un critère de correspondance d’URL exact ou prefix. |
model_catalog_json | string (path) | Imposez le catalogue de modèles au format JSON que Codex utilise au démarrage. |
models | table | Paramètres de modèle par défaut définis par l’administrateur pour les nouveaux fils de discussion. Ces valeurs prévalent sur les valeurs par défaut de l’utilisateur et du projet, mais un choix explicite pour le nouveau fil peut les remplacer. |
models.new_thread | table | Valeurs par défaut à appliquer au démarrage d’un nouveau fil de discussion local. Chaque paramètre du modèle est facultatif. |
models.new_thread.model | string | Modèle par défaut pour les nouveaux fils de discussion. Une valeur explicitement définie avec --model ou avec --config pour le modèle ou le raisonnement est prioritaire. |
models.new_thread.model_reasoning_effort | string | Effort de raisonnement par défaut pour les nouveaux fils de discussion. Si le modèle ou l’effort de raisonnement est explicitement remplacé, les deux champs de modèle définis par l’administrateur sont ignorés. |
models.new_thread.service_tier | string | Offre par défaut pour les nouveaux fils de discussion. Une offre explicitement choisie est prioritaire, indépendamment des champs du modèle. |
permissions | table | Profils d’autorisations définis par l’administrateur, indexés par nom de profil. Utilisent les mêmes champs de profil que config.toml. |
permissions.<name> | table | Profil d’autorisations défini par l’administrateur. Son nom ne peut pas commencer par :, être le nom réservé filesystem, ni reprendre celui d’un profil d’une configuration chargée. Utilise les mêmes champs de profil que config.toml ; consultez le guide Autorisations pour connaître le schéma complet des profils. |
permissions.filesystem.deny_read | array<string> | Interdictions de lecture du système de fichiers imposées par l’administrateur. Les entrées peuvent être des chemins ou des motifs glob, et les utilisateurs ne peuvent pas les assouplir dans leur configuration locale. |
plugins | table | Listes d’autorisation de serveurs MCP propres à chaque plugin, avec l’identifiant du plugin comme clé. Lorsque cette table est présente, les serveurs intégrés aux plugins sont désactivés si aucune entrée ne correspond à la fois au plugin et au serveur. |
plugins.<plugin>.mcp_servers | table | Liste d’autorisation des serveurs MCP intégrés à un plugin. Les exigences relatives aux serveurs des plugins utilisent les mêmes formes d’identité exacte et de critères de correspondance que les exigences mcp_servers de premier niveau. |
plugins.<plugin>.mcp_servers.<server>.identity | table | Règle d’identité pour un serveur MCP intégré à un plugin. Définissez soit command (stdio), soit url (HTTP streamable). |
plugins.<plugin>.mcp_servers.<server>.identity.command | string | table | Autorisez le serveur MCP stdio d’un plugin à l’aide d’une chaîne de commande exacte, ou utilisez une table de critères de correspondance pour exiger un exécutable exact et des critères ordonnés pour les arguments. |
plugins.<plugin>.mcp_servers.<server>.identity.command.args | array<table> | Critères de correspondance ordonnés pour les arguments d’un serveur stdio intégré à un plugin. La liste d’arguments configurée doit avoir la même longueur, et chaque position doit correspondre. |
plugins.<plugin>.mcp_servers.<server>.identity.command.args[].expression | string | Expression régulière utilisée par un critère de correspondance d’argument regex. L’expression doit correspondre à la valeur entière de l’argument. |
plugins.<plugin>.mcp_servers.<server>.identity.command.args[].match | exact | prefix | regex | Opération de correspondance pour cette position d’argument. |
plugins.<plugin>.mcp_servers.<server>.identity.command.args[].value | string | Valeur utilisée par un critère de correspondance d’argument exact ou prefix. |
plugins.<plugin>.mcp_servers.<server>.identity.command.executable | string | Exécutable auquel la commande configurée pour le serveur stdio intégré au plugin doit correspondre exactement. |
plugins.<plugin>.mcp_servers.<server>.identity.url | string | table | Autorisez le serveur MCP HTTP streamable d’un plugin à l’aide d’une chaîne d’URL exacte, ou utilisez une table de critères de correspondance de valeur exact, prefix ou regex. |
plugins.<plugin>.mcp_servers.<server>.identity.url.expression | string | Expression régulière utilisée par un critère de correspondance d’URL regex. L’expression doit correspondre à la valeur complète de l’URL. |
plugins.<plugin>.mcp_servers.<server>.identity.url.match | exact | prefix | regex | Opération de correspondance pour l’URL du serveur MCP intégré au plugin. |
plugins.<plugin>.mcp_servers.<server>.identity.url.value | string | Valeur utilisée par un critère de correspondance d’URL exact ou prefix. |
remote_sandbox_config | array<table> | Exigences de bac à sable propres à l’hôte. La première entrée dont les hostname_patterns correspondent au nom d’hôte résolu remplace le paramètre allowed_sandbox_modes de premier niveau pour cette source d’exigences. Actuellement, les entrées propres à un hôte remplacent uniquement les modes de bac à sable. |
remote_sandbox_config[].allowed_sandbox_modes | array<string> | Modes de bac à sable autorisés à appliquer lorsque cette entrée propre à l’hôte correspond. |
remote_sandbox_config[].hostname_patterns | array<string> | Motifs de nom d’hôte insensibles à la casse. Prennent en charge * pour une séquence quelconque de caractères et ? pour un seul caractère. |
rules | table | Règles de commande imposées par l’administrateur et fusionnées avec les fichiers .rules. Les règles définies dans les exigences doivent être restrictives. |
rules.prefix_rules | array<table> | Liste des règles de préfixe imposées. Chaque règle doit inclure pattern et decision. |
rules.prefix_rules[].decision | prompt | forbidden | Obligatoire. Les règles définies dans les exigences peuvent uniquement demander une approbation ou interdire une action, jamais l’autoriser. |
rules.prefix_rules[].justification | string | Justification facultative, non vide, affichée dans les demandes d’approbation ou les messages de refus. |
rules.prefix_rules[].pattern | array<table> | Préfixe de commande exprimé sous forme de tokens de motif. Chaque token définit soit token, soit any_of. |
rules.prefix_rules[].pattern[].any_of | array<string> | Liste des tokens autorisés comme alternatives à cette position. |
rules.prefix_rules[].pattern[].token | string | Un seul token littéral à cette position. |
sqlite_home | string (path) | Imposez le répertoire où Codex stocke l’état d’exécution dans SQLite. |
windows | table | Exigences relatives au bac à sable natif Windows. |
windows.allowed_sandbox_implementations | array<string> | Implémentations du bac à sable natif Windows autorisées pour windows.sandbox (elevated et unelevated). La liste ne doit pas être vide. Lorsque les deux sont autorisées et qu’aucun mode n’est sélectionné, Codex privilégie elevated. |
windows.sandbox_private_desktop | boolean | Imposez si le bac à sable natif Windows démarre son processus enfant sur un bureau privé. |
allow_appshotsbooleanfalse pour désactiver les Captures d’application pour les utilisateurs gérés par l’administrateur. S’il est omis, les exigences ne restreignent pas les Captures d’application, qui restent soumises aux conditions habituelles de disponibilité du produit.allow_browser_and_computer_usebooleanfalse pour bloquer à la fois la fonctionnalité Navigateur pilotée par l’agent et l’Utilisation de l’ordinateur dans les applications natives. Le définir sur true ou l’omettre n’active aucune de ces fonctionnalités ; les autres vérifications relatives aux fonctionnalités, aux politiques et aux approbations restent applicables.allow_login_shellbooleanallow_managed_hooks_onlybooleantrue, Codex ignore les hooks de l’utilisateur, du projet, de la session et des plugins, tout en autorisant les hooks gérés par l’administrateur provenant de requirements.toml et d’autres couches de configuration gérées.allow_remote_controlbooleanfalse pour désactiver le contrôle à distance des appareils pour les utilisateurs gérés par l’administrateur. S’il est omis, les exigences ne restreignent pas le contrôle à distance des appareils, qui reste soumis aux conditions habituelles de disponibilité du produit.allowed_approval_policiesarray<string>approval_policy (par exemple untrusted, on-request, never et granular).allowed_approvals_reviewersarray<string>approvals_reviewer, comme user et auto_review.allowed_chatgpt_workspacesarray<string>allowed_login_methodsarray<string>chatgpt, api ou les deux. S’il est omis, ce paramètre ne restreint pas les méthodes de connexion. S’il est défini, la liste doit contenir au moins une méthode. api autorise l’authentification API, y compris Amazon Bedrock. Définissez ce paramètre dans le fichier local d’exigences système ou via le MDM macOS. Les valeurs gérées dans le cloud sont ignorées.allowed_permission_profilestable<boolean>true sont autorisés. Les profils omis ou définis sur false sont interdits, y compris ceux ajoutés dans les versions futures. Lorsque plusieurs sources d’exigences sont combinées, les entrées sont rapprochées par nom de profil.allowed_permission_profiles.<name>booleanfalse pour désactiver un profil autorisé par une source antérieure de priorité inférieure.allowed_sandbox_modesarray<string>sandbox_mode.allowed_web_search_modesarray<string>web_search (disabled, cached, indexed, live). disabled est toujours autorisé ; une liste vide n’autorise donc que disabled.appstableapps.<id>.enabledbooleanfalse pour désactiver une application. Une exigence de désactivation conserve son effet restrictif lorsque plusieurs sources d’exigences sont fusionnées.apps.<id>.tools.<tool>.approval_modeauto | prompt | writes | approvebrowser_usetablebrowser_use.allow_global_persistent_approvalbooleanfalse pour empêcher la fonctionnalité Navigateur de créer ou de prendre en compte des approbations Always allow couvrant tous les sites, comme l’autorisation de télécharger depuis n’importe quel site. Les approbations déjà enregistrées sont ignorées, sans être supprimées. Le définir sur true ou l’omettre ne crée aucune approbation.browser_use.allow_history_accessbooleanfalse pour empêcher la fonctionnalité Navigateur de lire l’historique de navigation. Le définir sur true ou l’omettre conserve les paramètres d’historique et les vérifications de disponibilité habituels.browser_use.default_origin_policytablebrowser_use.origins ne le définit. Une règle d’origine correspondante remplace la valeur de repli pour cette source. Codex applique ensuite le résultat le plus restrictif entre les exigences définies par l’administrateur et la configuration utilisateur.browser_use.default_origin_policy.accessallow | denydeny pour bloquer la fonctionnalité Navigateur sur les origines qui utilisent la valeur de repli. Une origine interdite bloque également les envois, les téléchargements, l’accès complet au débogage du navigateur et la révision automatique sur cette origine. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique.browser_use.default_origin_policy.access_approval_lifetimeturn | threadturn la limite au tour en cours, et thread la conserve jusqu’à la fin du fil de discussion en cours. persistent_approval contrôle séparément la disponibilité de Always allow. La valeur par défaut du produit est thread.browser_use.default_origin_policy.auto_reviewallow | denydeny pour ignorer la révision automatique sur les origines qui utilisent la valeur de repli et demander à la place l’approbation de l’utilisateur. allow laisse la révision automatique disponible lorsque les autres paramètres l’autorisent.browser_use.default_origin_policy.downloadsallow | denydeny pour bloquer les téléchargements de la fonctionnalité Navigateur sur les origines qui utilisent la valeur de repli. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique.browser_use.default_origin_policy.full_cdp_accessallow | denydeny pour bloquer l’accès complet au Chrome DevTools Protocol (CDP) sur les origines qui utilisent la valeur de repli. allow permet uniquement de poursuivre les vérifications habituelles d’activation volontaire et d’approbation.browser_use.default_origin_policy.persistent_approvalbooleanfalse pour empêcher la fonctionnalité Navigateur d’enregistrer ou de prendre en compte une approbation Always allow sur les origines qui utilisent la valeur de repli. Les approbations pour le tour ou le fil de discussion en cours peuvent toujours s’appliquer. true rend Always allow disponible lorsque les autres règles l’autorisent, mais ne crée aucune approbation.browser_use.default_origin_policy.uploadsallow | denydeny pour bloquer les envois de la fonctionnalité Navigateur sur les origines qui utilisent la valeur de repli. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique.browser_use.disable_auto_reviewbooleantrue pour ignorer la révision automatique de la fonctionnalité Navigateur et demander à la place l’approbation de l’utilisateur. Le définir sur false ou l’omettre laisse la révision automatique disponible lorsque les autres paramètres l’autorisent.browser_use.originsmap<string, table><scheme>://<host-pattern>[:<port>] avec http ou https. Utilisez un hôte exact, *.example.com pour les sous-domaines uniquement, ou **.example.com pour le domaine de base et ses sous-domaines. Les autres caractères génériques * peuvent couvrir des points : region*.example.com correspond donc aussi à region.api.example.com ; un hôte défini sur * correspond à tous les hôtes pour ce schéma. Les schémas et les ports autres que ceux par défaut sont pris en compte ; les ports par défaut explicitement indiqués sont supprimés lors de la normalisation. Les chemins, les chaînes de requête, les noms d’utilisateur ou mots de passe intégrés, ainsi que les schémas ou ports contenant des caractères génériques sont invalides. Placez le motif entre guillemets en TOML, par exemple [browser_use.origins."https://**.example.com"].browser_use.origins.<pattern>tabledeny prévaut sur allow, false sur true et turn sur thread.browser_use.origins.<pattern>.accessallow | denydeny pour bloquer la fonctionnalité Navigateur sur les origines correspondantes. Le refus bloque également les envois, les téléchargements, l’accès complet au débogage du navigateur et la révision automatique sur ces origines. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique.browser_use.origins.<pattern>.access_approval_lifetimeturn | threadturn la limite au tour en cours, tandis que thread la conserve jusqu’à la fin du fil de discussion en cours. persistent_approval contrôle séparément la disponibilité de Always allow.browser_use.origins.<pattern>.auto_reviewallow | denydeny pour ignorer la révision automatique sur les origines correspondantes et demander l’approbation de l’utilisateur à la place. allow laisse la révision automatique disponible lorsque les autres paramètres l’autorisent.browser_use.origins.<pattern>.downloadsallow | denydeny pour bloquer les téléchargements de la fonctionnalité Navigateur sur les origines correspondantes. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique.browser_use.origins.<pattern>.full_cdp_accessallow | denydeny pour bloquer l’accès complet au Chrome DevTools Protocol (CDP) sur les origines correspondantes. allow permet uniquement de poursuivre les vérifications habituelles d’activation volontaire et d’approbation.browser_use.origins.<pattern>.persistent_approvalbooleanfalse pour empêcher la fonctionnalité Navigateur d’enregistrer ou de respecter une approbation Always allow sur les origines correspondantes. Les approbations pour le tour ou le fil de discussion en cours peuvent toujours s’appliquer. true rend Always allow disponible lorsque les autres règles le permettent, mais ne crée pas d’approbation.browser_use.origins.<pattern>.uploadsallow | denydeny pour bloquer les envois de la fonctionnalité Navigateur sur les origines correspondantes. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique.chatgpt_base_urlstringcheck_for_update_on_startupbooleancli_auth_credentials_storefile | keyring | auto | ephemeralfile utilise CODEX_HOME/auth.json ; keyring nécessite le stockage des identifiants du système d’exploitation ; auto utilise un fichier si ce stockage est indisponible ; ephemeral conserve les identifiants en mémoire pour le processus en cours. Définissez ce paramètre dans le fichier local d’exigences système ou via le MDM macOS ; les valeurs gérées dans le cloud sont ignorées.computer_usetableconfig.toml s’appliquent toutes deux ; chaque source de politique doit autoriser l’application.computer_use.allow_locked_computer_usebooleanfalse pour empêcher les utilisateurs d’activer l’utilisation lorsque l’appareil est verrouillé sur un appareil macOS géré. Cette exigence supprime les commandes d’activation ; elle ne désactive pas cette fonctionnalité si elle est déjà activée. Si ce paramètre est omis, les conditions habituelles de disponibilité du produit s’appliquent.computer_use.allow_persistent_approvalbooleanfalse pour supprimer l’option permettant de conserver les approbations des applications d’une session à l’autre. Les approbations pour la session en cours restent disponibles. Définir ce paramètre sur true ou l’omettre n’approuve aucune application.computer_use.default_app_accessallow | denydeny bloque l’accès. allow permet uniquement de poursuivre les vérifications habituelles d’approbation et de politique. La valeur par défaut du produit est allow.computer_use.macostablecomputer_use.macos.bundle_idsmap<string, allow | deny>allow ou deny. Une règle correspondante remplace computer_use.default_app_access au sein de la même source de politique. Un refus provenant des exigences gérées ou de la configuration utilisateur bloque toujours l’accès.computer_use.macos.bundle_ids.<bundle-id>allow | denydeny pour bloquer l’identifiant de bundle exact. allow remplace uniquement la valeur par défaut de cette source de politique ; toutes les autres sources de politique et le processus habituel d’approbation doivent toujours autoriser l’application.computer_use.windowstablecomputer_use.windows.aumidsmap<string, allow | deny>allow ou deny. Une règle correspondante remplace computer_use.default_app_access au sein de la même source de politique.computer_use.windows.aumids.<aumid>allow | denydeny pour bloquer l’identité exacte de l’application empaquetée. allow remplace uniquement la valeur par défaut de cette source de politique ; toutes les autres sources de politique et le processus habituel d’approbation doivent toujours autoriser l’application.computer_use.windows.exesarray<table>computer_use.default_app_access ; les exécutables dont l’identité signée ne peut pas être vérifiée sans ambiguïté sont bloqués.computer_use.windows.exes[].accessallow | denydeny bloque l’accès. allow remplace uniquement la valeur par défaut de cette source de politique ; toutes les autres sources de politique et le processus habituel d’approbation doivent toujours autoriser l’application.computer_use.windows.exes[].binary_namestringOriginalFilename figurant dans les informations de version signées de l’exécutable. La correspondance ne tient pas compte de la casse. Si une règle correspondant à l’éditeur et au produit exige cette valeur, mais que l’exécutable ne la fournit pas, la fonctionnalité Utilisation de l’ordinateur bloque l’exécutable.computer_use.windows.exes[].product_namestringProductName figurant dans les informations de version signées de l’exécutable. Obligatoire.computer_use.windows.exes[].publisher_namestringdefault_permissionsstringallowed_permission_profiles. Définissez-le explicitement pour obtenir un comportement prévisible ; s’il est omis, Codex utilise :workspace par défaut uniquement lorsque :workspace et :read-only sont tous deux explicitement autorisés.enforce_residencystringus.experimental_networktablerequirements.toml. Lorsqu’elles sont activées, ces exigences peuvent démarrer le proxy réseau des commandes sans features.network_proxy. Les outils de navigation vérifient séparément les refus réseau gérés et les listes d’autorisation exclusives. Ces exigences ne font pas transiter le trafic du navigateur par le proxy et ne contrôlent ni la recherche web, ni les applications, ni les serveurs MCP, ni le trafic des applications natives, ni le réseau de Codex Cloud.experimental_network.allow_local_bindingbooleanlocalhost peuvent toujours permettre l’accès à des cibles locales spécifiques lorsque ce paramètre reste sur false.experimental_network.allow_upstream_proxybooleanexperimental_network.allowed_domainsarray<string>experimental_network.domains.experimental_network.dangerously_allow_all_unix_socketsbooleanexperimental_network.dangerously_allow_non_loopback_proxyboolean[experimental_network]. L’activation de ce paramètre peut exposer les services d’écoute au-delà de localhost.experimental_network.denied_domainsarray<string>experimental_network.domains.experimental_network.domainsmap<string, allow | deny>*.example.com pour les sous-domaines uniquement, **.example.com pour le domaine racine et ses sous-domaines, ainsi que les règles d’autorisation globales * ; privilégiez les règles à portée limitée, car * ouvre largement l’accès sortant au réseau public. deny prévaut en cas de conflit. Ne combinez pas ce paramètre avec experimental_network.allowed_domains ou experimental_network.denied_domains.experimental_network.enabledbooleanexperimental_network.http_portinteger[experimental_network].experimental_network.managed_allowed_domains_onlybooleantrue, seules les règles d’autorisation gérées par l’administrateur restent applicables pendant que les exigences réseau du bac à sable sont actives ; les ajouts de l’utilisateur à la liste d’autorisation sont ignorés. En l’absence de règles d’autorisation gérées, les règles d’autorisation de domaines ajoutées par l’utilisateur ne restent pas applicables.experimental_network.socks_portinteger[experimental_network].experimental_network.unix_socketsmap<string, allow | deny>featurestableconfig.toml pour les fonctionnalités de l’environnement d’exécution ; les clés d’exigences documentées propres à l’application sont également prises en charge ici.features.<name>booleanfeatures.appsbooleanfeatures.browser_usebooleanfalse dans requirements.toml pour désactiver la fonctionnalité Navigateur pilotée par l’agent.features.browser_use_externalbooleanfalse dans requirements.toml pour empêcher Codex de contrôler les navigateurs pris en charge via l’extension de navigateur ChatGPT, y compris les onglets existants et les sessions connectées.features.browser_use_full_cdp_accessbooleanfalse dans requirements.toml pour désactiver l’accès complet au Chrome DevTools Protocol dans l’environnement d’exécution local, y compris le mode développeur du navigateur, et empêcher l’application de bureau ChatGPT d’activer le paramètre correspondant. S’il est omis, les conditions habituelles de disponibilité du produit s’appliquent.features.computer_usebooleanfalse dans requirements.toml pour désactiver l’Utilisation de l’ordinateur, Enregistrer et rejouer, ainsi que les parcours d’installation ou d’activation associés.features.fast_modebooleanfast_mode pour les utilisateurs gérés par l’administrateur.features.guardian_approvalbooleanfeatures.in_app_browserbooleanfalse dans requirements.toml pour désactiver le volet du navigateur intégré que les utilisateurs ouvrent et contrôlent directement.features.in_app_updatesbooleanfalse dans requirements.toml pour désactiver les mises à jour dans l’application. Les mises à jour restent activées par défaut lorsque cette exigence est omise.features.memoriesbooleanfeatures.multi_agentbooleanfeatures.plugin_sharingbooleanfalse dans le fichier requirements.toml géré dans le cloud pour désactiver le partage dans l’espace de travail des plugins créés localement.features.pluginsbooleanfeatures.remote_pluginbooleanfeatures.workspace_dependenciesbooleanfeedbacktablefeedback.enabledbooleanguardian_policy_configstring[auto_review].policy. Les valeurs vides sont ignorées.hookstable[hooks] définie directement dans config.toml.hooks.<Event>array<table>PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit ou Stop.hooks.<Event>[].hooksarray<table>hooks.<Event>[].hooks[].additionalContextLimitintegeradditionalContext trop volumineux est enregistré sur disque et un aperçu plus court est présenté au modèle. La valeur par défaut est 2500 ; 0 transmet directement l’intégralité du contexte au modèle. Consultez Sorties de hooks volumineuses.hooks.<Event>[].hooks[].asyncbooleanfalse ; SessionEnd s’exécute toujours de manière synchrone. Consultez Exécuter des hooks en arrière-plan.hooks.<Event>[].hooks[].commandWindowsstringcommand_windows est également accepté.hooks.managed_dirstring (absolute path)hooks.windows_managed_dirstring (absolute path)in_app_browsertablein_app_browser.allow_external_browser_settings_importbooleanfalse pour empêcher les utilisateurs d’importer des paramètres ou des données de navigation d’un navigateur externe vers le navigateur intégré. Le définir sur true ou l’omettre laisse l’importation disponible lorsque les autres vérifications du produit l’autorisent. Ce paramètre est réservé à la gestion par l’administrateur et ne peut pas être remplacé dans config.toml.log_dirstring (path)marketplacestablerestrict_to_allowed_sources vaut true.marketplaces.allowed_sourcestablemarketplaces.allowed_sources.<name>tablesource après la fusion des exigences détermine les champs de même niveau que Codex interprète.marketplaces.allowed_sources.<name>.host_patternstringsource = "host_pattern". Codex l’applique au nom d’hôte en minuscules extrait d’une source Git au format HTTPS, SSH ou SCP. Utilisez ^ et $ pour exiger une correspondance sur l’intégralité du nom d’hôte.marketplaces.allowed_sources.<name>.pathstring (absolute path)source = "local". Codex exige un chemin absolu et compare les chemins après normalisation.marketplaces.allowed_sources.<name>.refstringgit. Si elle est omise, la règle autorise toute référence du dépôt correspondant.marketplaces.allowed_sources.<name>.sourcegit | host_pattern | localgit pour un dépôt, host_pattern pour des hôtes Git sélectionnés par une expression régulière, ou local pour un répertoire.marketplaces.allowed_sources.<name>.urlstringsource = "git". Codex normalise les URL configurées et autorisées, puis exige une correspondance exacte du dépôt.marketplaces.restrict_to_allowed_sourcesbooleantrue, les sources de marketplaces configurées par l’utilisateur doivent correspondre à allowed_sources lors de l’ajout d’une marketplace, de l’installation d’un plugin et de l’actualisation des marketplaces Git configurées. Les marketplaces OpenAI gérées par Codex restent autorisées lorsque leur source et leur nom réservés correspondent. Ce paramètre ne filtre pas les marketplaces déjà configurées par l’utilisateur lors de l’exécution.mcp_serverstable<id>) et son identité doivent tous deux correspondre pour que le serveur MCP puisse être activé. Tout serveur MCP configuré qui ne figure pas dans la liste d’autorisation, ou dont l’identité ne correspond pas, est désactivé.mcp_servers.<id>.identitytablecommand (stdio), soit url (HTTP streamable).mcp_servers.<id>.identity.commandstring | tablecwd, ni env, ni env_vars.mcp_servers.<id>.identity.command.argsarray<table>cwd, ni env, ni env_vars.mcp_servers.<id>.identity.command.args[].expressionstringregex. L’expression doit être valide et correspondre à la valeur entière de l’argument.mcp_servers.<id>.identity.command.args[].matchexact | prefix | regexmcp_servers.<id>.identity.command.args[].valuestringexact ou prefix.mcp_servers.<id>.identity.command.executablestringcommand configurée pour le serveur stdio doit correspondre exactement.mcp_servers.<id>.identity.urlstring | tableexact, prefix ou regex.mcp_servers.<id>.identity.url.expressionstringregex. L’expression doit être valide et correspondre à l’URL entière.mcp_servers.<id>.identity.url.matchexact | prefix | regexmcp_servers.<id>.identity.url.valuestringexact ou prefix.model_catalog_jsonstring (path)modelstablemodels.new_threadtablemodels.new_thread.modelstring--model ou avec --config pour le modèle ou le raisonnement est prioritaire.models.new_thread.model_reasoning_effortstringmodels.new_thread.service_tierstringpermissionstableconfig.toml.permissions.<name>table:, être le nom réservé filesystem, ni reprendre celui d’un profil d’une configuration chargée. Utilise les mêmes champs de profil que config.toml ; consultez le guide Autorisations pour connaître le schéma complet des profils.permissions.filesystem.deny_readarray<string>pluginstableplugins.<plugin>.mcp_serverstablemcp_servers de premier niveau.plugins.<plugin>.mcp_servers.<server>.identitytablecommand (stdio), soit url (HTTP streamable).plugins.<plugin>.mcp_servers.<server>.identity.commandstring | tableplugins.<plugin>.mcp_servers.<server>.identity.command.argsarray<table>plugins.<plugin>.mcp_servers.<server>.identity.command.args[].expressionstringregex. L’expression doit correspondre à la valeur entière de l’argument.plugins.<plugin>.mcp_servers.<server>.identity.command.args[].matchexact | prefix | regexplugins.<plugin>.mcp_servers.<server>.identity.command.args[].valuestringexact ou prefix.plugins.<plugin>.mcp_servers.<server>.identity.command.executablestringplugins.<plugin>.mcp_servers.<server>.identity.urlstring | tableexact, prefix ou regex.plugins.<plugin>.mcp_servers.<server>.identity.url.expressionstringregex. L’expression doit correspondre à la valeur complète de l’URL.plugins.<plugin>.mcp_servers.<server>.identity.url.matchexact | prefix | regexplugins.<plugin>.mcp_servers.<server>.identity.url.valuestringexact ou prefix.remote_sandbox_configarray<table>hostname_patterns correspondent au nom d’hôte résolu remplace le paramètre allowed_sandbox_modes de premier niveau pour cette source d’exigences. Actuellement, les entrées propres à un hôte remplacent uniquement les modes de bac à sable.remote_sandbox_config[].allowed_sandbox_modesarray<string>remote_sandbox_config[].hostname_patternsarray<string>* pour une séquence quelconque de caractères et ? pour un seul caractère.rulestable.rules. Les règles définies dans les exigences doivent être restrictives.rules.prefix_rulesarray<table>pattern et decision.rules.prefix_rules[].decisionprompt | forbiddenrules.prefix_rules[].justificationstringrules.prefix_rules[].patternarray<table>token, soit any_of.rules.prefix_rules[].pattern[].any_ofarray<string>rules.prefix_rules[].pattern[].tokenstringsqlite_homestring (path)windowstablewindows.allowed_sandbox_implementationsarray<string>windows.sandbox (elevated et unelevated). La liste ne doit pas être vide. Lorsque les deux sont autorisées et qu’aucun mode n’est sélectionné, Codex privilégie elevated.windows.sandbox_private_desktopboolean