Usa esta página como referencia para buscar información sobre los archivos de configuración de Codex. Para obtener orientación conceptual y ejemplos, comienza por Configuración básica y Configuración avanzada.
config.toml
La configuración a nivel de usuario se encuentra en ~/.codex/config.toml. También puedes sobrescribir valores para un proyecto mediante archivos .codex/config.toml. Codex solo carga los archivos de configuración específicos del proyecto si confías en el proyecto.
La configuración específica del proyecto no puede sobrescribir las claves locales del equipo relativas al proveedor, la autenticación,
los metadatos de solicitudes de Apps controlados por el host, las notificaciones, la selección del perfil de configuración
o el enrutamiento de telemetría. Codex ignora openai_base_url,
chatgpt_base_url, apps_mcp_product_sku, model_provider,
model_providers, notify, profile, profiles,
experimental_realtime_ws_base_url y otel cuando aparecen en un archivo
.codex/config.toml local del proyecto; coloca las claves de proveedor, notificación y telemetría
en la configuración a nivel de usuario. Los archivos de perfil de configuración se encuentran junto a
config.toml con el formato $CODEX_HOME/profile-name.config.toml; selecciona uno con
--profile profile-name.
Para las claves de sandbox y aprobación (approval_policy, sandbox_mode y sandbox_workspace_write.*), complementa esta referencia con Sandbox y aprobaciones, Rutas protegidas en raíces con permiso de escritura y Acceso a la red. Para los perfiles de permisos en beta, consulta Permisos.
| Key | Type / Values | Details |
|---|---|---|
agents | table | Configuración multiagente y declaraciones de roles personalizados. Los nombres de las opciones de configuración escalares están reservados y no pueden usarse como nombres de roles personalizados. |
agents.<name>.config_file | string (path) | Ruta a una capa de configuración TOML para ese rol; las rutas relativas se resuelven a partir del archivo de configuración que declara el rol. |
agents.<name>.description | string | Indicaciones sobre el rol que se muestran a Codex al elegir y crear ese tipo de agente. |
agents.default_subagent_model | string | Modelo predeterminado para los agentes creados. Un modelo especificado explícitamente al crear el agente tiene prioridad. |
agents.default_subagent_reasoning_effort | string | Esfuerzo de razonamiento predeterminado para los agentes creados. Un esfuerzo especificado explícitamente al crear el agente tiene prioridad. |
agents.enabled | boolean | Habilita o deshabilita las herramientas multiagente (valor predeterminado: true). |
agents.interrupt_message | boolean | Registra un mensaje visible para el modelo cuando se interrumpe el turno de un agente (valor predeterminado: true). |
agents.max_concurrent_threads_per_session | number | Cantidad máxima de hilos de agentes creados que pueden estar abiertos al mismo tiempo, sin contar el hilo principal. Si no se establece, Codex elige el valor predeterminado. |
agents.max_threads | number | Alias heredado de agents.max_concurrent_threads_per_session. |
allow_login_shell | boolean | Permite que las herramientas basadas en shell usen la semántica de un shell de inicio de sesión. El valor predeterminado es true; cuando es false, se rechazan las solicitudes login = true y, si se omite login, se usan shells sin inicio de sesión de forma predeterminada. |
analytics.enabled | boolean | Habilita o deshabilita la analítica para este equipo o perfil. Si no se establece, se aplica el valor predeterminado del cliente. |
approval_policy | untrusted | on-request | never | { granular = { sandbox_approval = bool, rules = bool, mcp_elicitations = bool, request_permissions = bool, skill_approval = bool } } | Controla cuándo Codex se detiene para solicitar aprobación antes de ejecutar comandos. También puedes usar approval_policy = { granular = { ... } } para permitir categorías específicas de prompts o rechazarlas automáticamente mientras los demás prompts siguen siendo interactivos. on-failure está obsoleto; usa on-request para ejecuciones interactivas o never para ejecuciones no interactivas. |
approval_policy.granular.mcp_elicitations | boolean | Cuando es true, se permite mostrar las solicitudes de información de MCP en lugar de rechazarlas automáticamente. |
approval_policy.granular.request_permissions | boolean | Cuando es true, se permite mostrar los prompts de la herramienta request_permissions. |
approval_policy.granular.rules | boolean | Cuando es true, se permite mostrar las solicitudes de aprobación activadas por reglas prompt de execpolicy. |
approval_policy.granular.sandbox_approval | boolean | Cuando es true, se permite mostrar los prompts de aprobación para elevar los permisos del sandbox. |
approval_policy.granular.skill_approval | boolean | Cuando es true, se permite mostrar los prompts de aprobación de scripts de habilidades. |
approvals_reviewer | user | auto_review | Determina quién revisa los prompts de aprobación que cumplen los requisitos según las políticas de aprobación on-request o granulares. El valor predeterminado es user; auto_review usa el subagente revisor. Esta configuración no modifica el entorno aislado ni revisa las acciones que ya están permitidas dentro del sandbox. |
apps._default.approvals_reviewer | user | auto_review | Revisor predeterminado de los prompts de aprobación de herramientas de Apps, salvo que se configure otro para una App específica. Si se omite, las Apps heredan el valor approvals_reviewer de nivel superior. |
apps._default.default_tools_approval_mode | auto | prompt | writes | approve | Comportamiento de aprobación predeterminado para las herramientas de Apps sin valores específicos por App o herramienta. |
apps._default.destructive_enabled | boolean | Valor predeterminado para permitir o denegar herramientas de Apps con destructive_hint = true. |
apps._default.enabled | boolean | Estado de habilitación predeterminado para todas las Apps, salvo que se establezca otro para una App específica. |
apps._default.open_world_enabled | boolean | Valor predeterminado para permitir o denegar herramientas de Apps con open_world_hint = true. |
apps.<id>.approvals_reviewer | user | auto_review | Revisor de los prompts de aprobación de herramientas de esta App. Sobrescribe apps._default.approvals_reviewer. |
apps.<id>.default_tools_approval_mode | auto | prompt | writes | approve | Comportamiento de aprobación predeterminado para las herramientas de esta App, salvo que se defina otro para una herramienta específica. |
apps.<id>.default_tools_enabled | boolean | Estado de habilitación predeterminado para las herramientas de esta App, salvo que se establezca otro para una herramienta específica. |
apps.<id>.destructive_enabled | boolean | Permite o bloquea las herramientas de esta App que declaran destructive_hint = true. |
apps.<id>.enabled | boolean | Habilita o deshabilita una App o un conector específico por su ID (valor predeterminado: true). |
apps.<id>.open_world_enabled | boolean | Permite o bloquea las herramientas de esta App que declaran open_world_hint = true. |
apps.<id>.tools.<tool>.approval_mode | auto | prompt | writes | approve | Valor específico que sobrescribe el comportamiento de aprobación de una herramienta de una App. |
apps.<id>.tools.<tool>.enabled | boolean | Valor específico que sobrescribe el estado de habilitación de una herramienta de una App (por ejemplo, repos/list). |
auto_review.policy | string | Instrucciones locales de política en Markdown para la revisión automática. La configuración administrada guardian_policy_config tiene prioridad. Se ignoran los valores en blanco. |
background_terminal_max_timeout | number | Duración máxima, en milisegundos, de los sondeos de write_stdin sin entrada (sondeo de la terminal en segundo plano). Valor predeterminado: 300000 (5 minutos). Reemplaza la antigua clave background_terminal_timeout. |
chatgpt_base_url | string | Sustituye la URL base utilizada durante el flujo de inicio de sesión de ChatGPT. |
check_for_update_on_startup | boolean | Comprueba si hay actualizaciones de Codex al iniciar (configúralo como false solo cuando las actualizaciones se administren de manera centralizada). |
cli_auth_credentials_store | file | keyring | auto | Controla dónde almacena la CLI las credenciales en caché (en el archivo auth.json o en el llavero del sistema operativo). |
compact_prompt | string | Reemplazo del prompt de compactación del historial definido directamente en la configuración. |
computer_use.windows.always_allowed_app_ids | array<string> | Identificadores de las Apps de Windows que Uso de la computadora puede abrir sin solicitar aprobación. Las Apps que no están en la lista requieren aprobación; elimina las entradas guardadas desde la configuración de Uso de la computadora de la aplicación de escritorio de ChatGPT. |
default_permissions | string | Nombre del perfil de permisos predeterminado que se aplicará a las llamadas a herramientas en el sandbox. Los perfiles integrados son :read-only, :workspace y :danger-full-access; los nombres de perfiles personalizados requieren tablas [permissions.<name>] correspondientes. No lo combines con sandbox_mode ni con [sandbox_workspace_write]. |
desktop.custom_file_handlers.<id> | table | Solo a nivel de usuario. Define un destino adicional en Abrir en para la aplicación de escritorio de ChatGPT. Consulta Agregar controladores de archivos personalizados para ver ejemplos y las restricciones de los ID de los controladores. |
desktop.custom_file_handlers.<id>.args | array<string> | Argumentos que se insertan entre el comando y la entrada de archivo (valor predeterminado: []). |
desktop.custom_file_handlers.<id>.command | string | Ruta del ejecutable o nombre del comando que se debe detectar y ejecutar. Obligatorio. |
desktop.custom_file_handlers.<id>.icon | string | Ruta de un recurso incluido en el paquete, URL data:image/... codificada en Base64, URI de archivo o ruta local absoluta para el ícono del controlador. Obligatorio; las fuentes no compatibles usan el ícono predeterminado de VS Code. |
desktop.custom_file_handlers.<id>.input | path | json_argument | json_stdin | Forma en que la aplicación pasa el archivo al controlador (valor predeterminado: path). |
desktop.custom_file_handlers.<id>.label | string | Nombre para mostrar que aparece en los menús Abrir en. Obligatorio. |
desktop.custom_file_handlers.<id>.supports_ssh | boolean | Muestra el controlador como opción para los archivos de espacios de trabajo SSH (valor predeterminado: false). |
developer_instructions | string | Instrucciones adicionales del desarrollador que se agregan a la sesión (opcionales). |
disable_paste_burst | boolean | Deshabilita la detección de pegado en ráfaga en la TUI. |
experimental_compact_prompt_file | string (path) | Carga desde un archivo el prompt alternativo de compactación (experimental). |
experimental_use_unified_exec_tool | boolean | Nombre heredado para habilitar la ejecución unificada; usa preferentemente [features].unified_exec o codex --enable unified_exec. |
features.apps | boolean | Habilita las integraciones de Apps (conectores) (función estable; habilitada de forma predeterminada). El tráfico de Apps y conectores no está controlado por el proxy de red de los comandos ejecutados en el sandbox ni por su lista de dominios permitidos. |
features.code_mode.direct_only_tool_namespaces | array<string> | Espacios de nombres de herramientas que el modo de código solo puede usar mediante llamadas directas a herramientas. |
features.code_mode.enabled | boolean | Habilita la configuración del modo de código. Esta función está en desarrollo y deshabilitada de forma predeterminada. |
features.code_mode.excluded_tool_namespaces | array<string> | Espacios de nombres de herramientas que el modo de código excluye de las instrucciones sobre herramientas del modo de código anidado y no expone al ejecutor. |
features.enable_request_compression | boolean | Comprime con zstd los cuerpos de las solicitudes de streaming cuando se admita esta compresión (estable; se activa de forma predeterminada). |
features.fast_mode | boolean | Habilita la selección del nivel de servicio del catálogo de modelos en la TUI, incluidos los comandos del nivel rápido cuando el modelo activo indique que los admite (estable; se activa de forma predeterminada). |
features.goals | boolean | Habilita la persistencia de objetivos y la continuación automática (estable; se activa de forma predeterminada). |
features.hooks | boolean | Habilita los hooks del ciclo de vida cargados desde hooks.json o definidos directamente en la configuración [hooks]. features.codex_hooks es un alias obsoleto. |
features.memories | boolean | Habilita Memorias (deshabilitadas de forma predeterminada). |
features.multi_agent | boolean | Habilita las herramientas de colaboración multiagente ( spawn_agent, send_input, resume_agent, wait_agent y close_agent) (estable; habilitadas de forma predeterminada). |
features.network_proxy | boolean | table | Inicia el proxy de red para los comandos ejecutados en el sandbox (experimental; desactivado de forma predeterminada). Es necesario para aplicar las reglas de dominios del perfil de permisos, a menos que los requisitos experimental_network habilitados y gestionados por administradores inicien el proxy. Usa una tabla cuando configures opciones de política a nivel de la función, como domains. No filtra la búsqueda web, las apps, MCP ni otras herramientas alojadas. |
features.network_proxy.allow_local_binding | boolean | Permite un acceso más amplio a redes locales o privadas. El valor predeterminado es false; las reglas de permiso para una dirección IP local literal exacta o para localhost aún pueden permitir destinos locales específicos. |
features.network_proxy.allow_upstream_proxy | boolean | Permite encadenar la conexión a través de un proxy ascendente definido en el entorno. El valor predeterminado es true. |
features.network_proxy.dangerously_allow_all_unix_sockets | boolean | Permite destinos arbitrarios de sockets Unix en lugar de limitar el acceso a una lista de permitidos. El valor predeterminado es false; usa esta opción solo en entornos estrictamente controlados. |
features.network_proxy.dangerously_allow_non_loopback_proxy | boolean | Permite usar direcciones de escucha distintas de loopback. El valor predeterminado es false; habilitar esta opción puede exponer los puntos de escucha del proxy fuera de localhost. |
features.network_proxy.domains | map<string, allow | deny> | Política de dominios para el acceso a la red en el sandbox. No está definida de forma predeterminada, por lo que no se permite ningún destino externo hasta que agregues reglas allow. Admite hosts exactos, *.example.com solo para subdominios, **.example.com para el dominio raíz y sus subdominios, y reglas globales de permiso con *; prioriza las reglas con alcance limitado, ya que * habilita ampliamente el acceso saliente a redes públicas. Agrega reglas deny para los destinos bloqueados; deny prevalece en caso de conflicto. |
features.network_proxy.enable_socks5 | boolean | Habilita la compatibilidad con SOCKS5. El valor predeterminado es true. |
features.network_proxy.enable_socks5_udp | boolean | Permite UDP mediante SOCKS5. El valor predeterminado es true. |
features.network_proxy.enabled | boolean | Inicia el proxy de red para los comandos ejecutados en el sandbox cuando el acceso de los comandos a la red está habilitado. El valor predeterminado es false; las reglas de dominios del perfil de permisos no se aplican mientras el proxy está desactivado. |
features.network_proxy.proxy_url | string | URL de escucha HTTP para el acceso a la red en el sandbox. El valor predeterminado es "http://127.0.0.1:3128". |
features.network_proxy.socks_url | string | URL de escucha de SOCKS5. El valor predeterminado es "http://127.0.0.1:8081". |
features.network_proxy.unix_sockets | map<string, allow | deny> | Política de sockets Unix para el acceso a la red en el sandbox. No está definida de forma predeterminada; agrega entradas allow para los sockets permitidos. |
features.personality | boolean | Habilita los controles de selección de personalidad (estable; se activa de forma predeterminada). |
features.prevent_idle_sleep | boolean | Impide que la computadora entre en suspensión mientras haya un turno en ejecución (experimental; desactivada de forma predeterminada). |
features.remote_plugin | boolean | Habilita el catálogo remoto de complementos (estable; se activa de forma predeterminada). |
features.rollout_budget.enabled | boolean | Habilita el seguimiento del presupuesto de ejecución. Esta función está en desarrollo y deshabilitada de forma predeterminada. Cuando está habilitada, se requiere features.rollout_budget.limit_tokens. |
features.rollout_budget.limit_tokens | integer | Límite de tokens mayor que cero para el seguimiento del presupuesto de ejecución. Es obligatorio cuando el presupuesto de ejecución está habilitado. |
features.rollout_budget.prefill_token_weight | number | Multiplicador finito y no negativo para los tokens de precarga en la contabilización del presupuesto de ejecución. El valor predeterminado es 1.0. |
features.rollout_budget.reminder_interval_tokens | integer | Intervalo de tokens mayor que cero entre los recordatorios del presupuesto de ejecución. De forma predeterminada, equivale al 10 % de limit_tokens, con un mínimo de 1 token. |
features.rollout_budget.sampling_token_weight | number | Multiplicador finito y no negativo para los tokens muestreados en la contabilización del presupuesto de ejecución. El valor predeterminado es 1.0. |
features.shell_snapshot | boolean | Crea una instantánea del entorno de shell para acelerar la ejecución de comandos repetidos (estable; habilitada de forma predeterminada). |
features.shell_tool | boolean | Habilita la herramienta shell predeterminada para ejecutar comandos (estable; se activa de forma predeterminada). |
features.skill_mcp_dependency_install | boolean | Permite solicitar la instalación de las dependencias de MCP que faltan para las habilidades e instalarlas (estable; se activa de forma predeterminada). |
features.unified_exec | boolean | Usa la herramienta exec unificada basada en PTY (estable; habilitada de forma predeterminada, excepto en Windows). |
features.web_search | boolean | Opción heredada obsoleta; usa preferentemente la configuración web_search de nivel superior. |
features.web_search_cached | boolean | Opción heredada obsoleta. Si web_search no está definido, true equivale a web_search = "cached". |
features.web_search_request | boolean | Opción heredada obsoleta. Si web_search no está definido, true equivale a web_search = "live". |
feedback.enabled | boolean | Habilita el envío de comentarios mediante /feedback en los clientes locales (valor predeterminado: true). |
file_opener | vscode | vscode-insiders | windsurf | cursor | none | Esquema de URI que se usa para abrir citas de la salida de Codex (valor predeterminado: vscode). |
forced_chatgpt_workspace_id | string (uuid) | Limita los inicios de sesión en ChatGPT a un identificador de espacio de trabajo específico. |
forced_login_method | chatgpt | api | Restringe Codex a un método de autenticación específico. |
hide_agent_reasoning | boolean | Suprime los eventos de razonamiento tanto en la TUI como en la salida de codex exec. |
history.max_bytes | number | Si se configura, limita el tamaño del archivo de historial en bytes eliminando las entradas más antiguas. |
history.persistence | save-all | none | Controla si Codex guarda las transcripciones de las sesiones en history.jsonl. |
hooks | table | Hooks del ciclo de vida configurados directamente en config.toml. Usan el mismo esquema de eventos que hooks.json; consulta la guía de Hooks para ver ejemplos y eventos compatibles. |
hooks.<Event> | array<table> | Grupos de criterios de coincidencia para eventos de hooks como PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit o Stop. |
hooks.<Event>[].hooks | array<table> | Controladores de hooks para un grupo de criterios de coincidencia. Se admiten los hooks de comando y de herramientas MCP; los controladores de hooks de prompt y de agente se analizan sintácticamente, pero se omiten. |
hooks.<Event>[].hooks[].additionalContextLimit | integer | Umbral aproximado de tokens por controlador para guardar en disco valores de additionalContext demasiado grandes y mostrarle al modelo una vista previa más breve. El valor predeterminado es 2500; 0 pasa el contexto completo directamente al modelo. Consulta Resultados extensos de hooks. |
hooks.<Event>[].hooks[].async | boolean | Ejecuta un hook de comando en segundo plano sin retrasar la operación que lo activa. El valor predeterminado es false; SessionEnd siempre se ejecuta de forma síncrona. Consulta Ejecutar hooks en segundo plano. |
hooks.<Event>[].hooks[].commandWindows | string | Comando de reemplazo exclusivo de Windows para hooks de comando. También se acepta el alias de TOML command_windows. |
instructions | string | Reservado para uso futuro; es preferible usar model_instructions_file o AGENTS.md. |
log_dir | string (path) | Directorio donde Codex escribe los archivos de registro; el valor predeterminado es $CODEX_HOME/log. Al establecer este valor explícitamente, también se habilita en ese directorio el registro opcional de la TUI en texto sin formato, codex-tui.log. |
mcp_oauth_callback_port | integer | Puerto fijo global opcional para el servidor HTTP local de devolución de llamada que se usa durante el inicio de sesión OAuth de MCP. El valor oauth.callback_port específico del servidor tiene prioridad. Cuando no se configura ninguno de los dos, Codex escucha en un puerto efímero elegido por el sistema operativo. |
mcp_oauth_callback_url | string | URL base opcional de devolución de llamada para el inicio de sesión OAuth de MCP, como una URL de entrada de un devbox. Los clientes registrados previamente que se acaban de agregar usan esta URL sin cambios cuando el servidor de autorización admite la identificación del emisor; los clientes existentes que no tienen una devolución de llamada guardada agregan un ID de devolución de llamada específico del servidor. Si no se admite la identificación del emisor, cualquier servidor MCP registrado previamente cuya devolución de llamada configurada carezca del ID requerido usa como alternativa esta URL con el ID agregado. Los puertos de las URL de devolución de llamada no determinan el puerto de escucha. |
mcp_oauth_credentials_store | auto | file | keyring | Almacén preferido para las credenciales OAuth de MCP. |
mcp_servers.<id>.args | array<string> | Argumentos que se pasan al comando del servidor MCP stdio. |
mcp_servers.<id>.auth | oauth | chatgpt | Método alternativo de autenticación para un servidor MCP HTTP, después de los tokens de portador y los encabezados de autorización configurados. oauth (valor predeterminado) usa las credenciales OAuth de MCP almacenadas cuando están disponibles. chatgpt usa la sesión actual de ChatGPT para el origen propio y de confianza de ChatGPT y, después, recurre a las credenciales OAuth almacenadas. Ambos modos pueden conectarse sin autenticación si ninguna fuente proporciona credenciales. |
mcp_servers.<id>.bearer_token_env_var | string | Variable de entorno de la que se obtiene el token de portador para un servidor MCP HTTP. |
mcp_servers.<id>.command | string | Comando para iniciar un servidor MCP stdio. |
mcp_servers.<id>.cwd | string | Directorio de trabajo del proceso del servidor MCP stdio. |
mcp_servers.<id>.default_tools_approval_mode | auto | prompt | writes | approve | Comportamiento de aprobación predeterminado para las herramientas MCP de este servidor, salvo que exista una configuración específica por herramienta que lo reemplace. |
mcp_servers.<id>.disabled_tools | array<string> | Lista de herramientas denegadas que se aplica después de enabled_tools para el servidor MCP. |
mcp_servers.<id>.enabled | boolean | Deshabilita un servidor MCP sin quitar su configuración. |
mcp_servers.<id>.enabled_tools | array<string> | Lista de nombres de herramientas permitidas que expone el servidor MCP. |
mcp_servers.<id>.env | map<string,string> | Variables de entorno que se reenvían al servidor MCP stdio. |
mcp_servers.<id>.env_http_headers | map<string,string> | Encabezados HTTP cuyos valores se obtienen de variables de entorno para un servidor MCP HTTP. |
mcp_servers.<id>.env_vars | array<string | { name = string, source = "local" | "remote" }> | Variables de entorno adicionales que se incluirán en la lista de permitidas para un servidor MCP stdio. Las entradas de tipo cadena usan source = "local" de forma predeterminada; usa source = "remote" solo con stdio remoto que use un ejecutor. |
mcp_servers.<id>.experimental_environment | local | remote | Ubicación experimental para un servidor MCP. remote inicia servidores stdio mediante un entorno con un ejecutor remoto; la ubicación remota para HTTP con streaming no está implementada. |
mcp_servers.<id>.http_headers | map<string,string> | Encabezados HTTP estáticos incluidos en cada solicitud HTTP de MCP. |
mcp_servers.<id>.oauth_resource | string | Parámetro opcional de recurso OAuth de RFC 8707 que se incluirá durante el inicio de sesión de MCP. |
mcp_servers.<id>.oauth.callback_port | integer | Puerto de escucha fijo para el callback de OAuth de este servidor MCP. Reemplaza mcp_oauth_callback_port. Para un callback directo de loopback con un puerto explícito en la URL, configura el mismo puerto de escucha. |
mcp_servers.<id>.oauth.callback_url | string | Callback de OAuth específico del servidor. Los clientes registrados previamente lo reutilizan cuando se admite la identificación del emisor o la URL ya termina con el ID de callback específico del servidor. De lo contrario, Codex usa el callback global o predeterminado con ese ID agregado al final. Los clientes sin un ID registrado previamente usan este callback durante el registro del cliente. |
mcp_servers.<id>.oauth.client_id | string | ID de cliente OAuth registrado previamente que se usa para la autorización y el intercambio de tokens con este servidor MCP. |
mcp_servers.<id>.required | boolean | Cuando el valor es true, el inicio o la reanudación fallan si este servidor MCP habilitado no puede inicializarse. |
mcp_servers.<id>.scopes | array<string> | Alcances de OAuth que se solicitarán al autenticarse en ese servidor MCP. |
mcp_servers.<id>.startup_timeout_ms | number | Alias de startup_timeout_sec expresado en milisegundos. |
mcp_servers.<id>.startup_timeout_sec | number | Reemplaza el tiempo de espera de inicio predeterminado de 10 s para un servidor MCP. |
mcp_servers.<id>.tool_timeout_sec | number | Reemplaza el tiempo de espera predeterminado de 60 s por herramienta para un servidor MCP. |
mcp_servers.<id>.tools.<tool>.approval_mode | auto | prompt | writes | approve | Configuración que reemplaza el comportamiento de aprobación para una herramienta MCP específica de este servidor. |
mcp_servers.<id>.url | string | Punto de acceso de un servidor MCP HTTP con streaming. |
memories.consolidation_model | string | Reemplazo opcional del modelo para la consolidación global de memorias. |
memories.disable_on_external_context | boolean | Cuando el valor es true, los hilos que usan contexto externo, como llamadas a herramientas MCP, búsqueda web o búsqueda de herramientas, se excluyen de la generación de memorias. El valor predeterminado es false. Alias heredado: memories.no_memories_if_mcp_or_web_search. |
memories.extract_model | string | Reemplazo opcional del modelo para extraer memorias de cada hilo. |
memories.generate_memories | boolean | Cuando el valor es false, los hilos recién creados no se almacenan como entradas para la generación de memorias. El valor predeterminado es true. |
memories.max_raw_memories_for_consolidation | number | Cantidad máxima de memorias recientes sin procesar que se conservan para la consolidación global. El valor predeterminado es 256 y el límite máximo es 4096. |
memories.max_rollout_age_days | number | Antigüedad máxima de los hilos que se tienen en cuenta para generar memorias. El valor predeterminado es 30 y se limita al intervalo 0-90. |
memories.max_rollouts_per_startup | number | Cantidad máxima de ejecuciones candidatas procesadas en cada pasada de inicio. El valor predeterminado es 16 y el límite máximo es 128. |
memories.max_unused_days | number | Cantidad máxima de días que pueden transcurrir desde la última vez que se usó una memoria antes de que deje de ser apta para la consolidación. El valor predeterminado es 30 y se limita al intervalo 0-365. |
memories.min_rate_limit_remaining_percent | number | Porcentaje mínimo restante requerido en las ventanas de los límites de solicitudes de Codex antes de iniciar la generación de memorias. El valor predeterminado es 25 y se limita al intervalo 0-100. |
memories.min_rollout_idle_hours | number | Tiempo mínimo de inactividad antes de que un hilo se tenga en cuenta para generar memorias. El valor predeterminado es 6 y se limita al intervalo 1-48. |
memories.use_memories | boolean | Cuando el valor es false, Codex no incorpora las memorias existentes en sesiones futuras. El valor predeterminado es true. |
model | string | Modelo que se usará (p. ej., gpt-5.5). |
model_auto_compact_token_limit | number | Umbral de tokens que activa la compactación automática del historial (si no se establece, se usan los valores predeterminados del modelo). |
model_auto_compact_token_limit_scope | total | body_after_prefix | Controla si el umbral de compactación automática cuenta todo el contexto activo ( total, el valor predeterminado) o solo el crecimiento posterior al prefijo conservado de la ventana de compactación (body_after_prefix). |
model_catalog_json | string (path) | Ruta opcional a un catálogo de modelos en JSON que se carga al iniciar. El archivo de perfil $CODEX_HOME/profile-name.config.toml seleccionado puede sobrescribir este valor para ese perfil. |
model_context_window | number | Tokens disponibles en la ventana de contexto del modelo activo. |
model_instructions_file | string (path) | Reemplazo de las instrucciones integradas que se usa en lugar de AGENTS.md. |
model_provider | string | ID del proveedor de model_providers (valor predeterminado: openai). |
model_providers.<id> | table | Definición de un proveedor personalizado. Los identificadores de proveedores integrados ( openai, ollama y lmstudio) están reservados y no se pueden reemplazar. |
model_providers.<id>.auth | table | Configuración de un token de portador obtenido mediante un comando para un proveedor personalizado. No la combines con env_key, experimental_bearer_token ni requires_openai_auth. |
model_providers.<id>.auth.args | array<string> | Argumentos que se pasan al comando de obtención del token. |
model_providers.<id>.auth.command | string | Comando que se ejecuta cuando Codex necesita un token de portador. El comando debe imprimir el token en stdout. |
model_providers.<id>.auth.cwd | string (path) | Directorio de trabajo del comando de obtención del token. |
model_providers.<id>.auth.refresh_interval_ms | number | Intervalo de actualización proactiva del token por parte de Codex, en milisegundos (valor predeterminado: 300 000). Establécelo en 0 para actualizar el token solo después de un reintento de autenticación. |
model_providers.<id>.auth.timeout_ms | number | Tiempo máximo de ejecución del comando de obtención del token en milisegundos (valor predeterminado: 5000). |
model_providers.<id>.base_url | string | URL base de la API del proveedor de modelos. |
model_providers.<id>.env_http_headers | map<string,string> | Encabezados HTTP que se completan a partir de variables de entorno cuando estas están disponibles. |
model_providers.<id>.env_key | string | Variable de entorno que proporciona la clave de API del proveedor. |
model_providers.<id>.env_key_instructions | string | Instrucciones opcionales para configurar la clave de API del proveedor. |
model_providers.<id>.experimental_bearer_token | string | Token de portador directo para el proveedor (no se recomienda; usa env_key). |
model_providers.<id>.http_headers | map<string,string> | Encabezados HTTP estáticos que se agregan a las solicitudes al proveedor. |
model_providers.<id>.name | string | Nombre para mostrar de un proveedor de modelos personalizado. |
model_providers.<id>.query_params | map<string,string> | Parámetros de consulta adicionales que se agregan a las solicitudes al proveedor. |
model_providers.<id>.request_max_retries | number | Cantidad de reintentos de las solicitudes HTTP al proveedor (valor predeterminado: 4). |
model_providers.<id>.requires_openai_auth | boolean | El proveedor usa la autenticación de OpenAI (el valor predeterminado es false). |
model_providers.<id>.stream_idle_timeout_ms | number | Tiempo de espera por inactividad para los flujos SSE, en milisegundos (valor predeterminado: 300 000). |
model_providers.<id>.stream_max_retries | number | Cantidad de reintentos ante interrupciones del streaming SSE (valor predeterminado: 5). |
model_providers.<id>.supports_standalone_web_search | boolean | Declara que admite un punto de acceso compatible para la búsqueda web independiente (valor predeterminado: false). La búsqueda independiente sigue en desarrollo y desactivada de forma predeterminada; que el proveedor sea compatible no basta para habilitarla. |
model_providers.<id>.supports_websockets | boolean | Indica si ese proveedor admite el transporte WebSocket de la Responses API. |
model_providers.<id>.wire_api | responses | Protocolo que usa el proveedor. responses es el único valor admitido y se usa de forma predeterminada cuando se omite. |
model_providers.amazon-bedrock.aws.profile | string | Nombre del perfil de AWS que usa el proveedor integrado amazon-bedrock. |
model_providers.amazon-bedrock.aws.region | string | Región de AWS que usa el proveedor integrado amazon-bedrock. |
model_reasoning_effort | minimal | low | medium | high | xhigh | Ajusta el esfuerzo de razonamiento para los modelos compatibles (solo para la Responses API; xhigh depende del modelo). |
model_reasoning_summary | auto | concise | detailed | none | Selecciona el nivel de detalle de los resúmenes del razonamiento o desactívalos por completo. |
model_supports_reasoning_summaries | boolean | Fuerza a Codex a enviar los metadatos de razonamiento o a no enviarlos. |
model_verbosity | low | medium | high | Ajuste opcional de la verbosidad de la Responses API para GPT-5; si no se define, se usa el valor predeterminado del modelo o ajuste preestablecido seleccionado. |
notice.hide_full_access_warning | boolean | Registra la confirmación del prompt de advertencia sobre el acceso completo. |
notice.hide_gpt-5.1-codex-max_migration_prompt | boolean | Registra la confirmación del prompt de migración a gpt-5.1-codex-max. |
notice.hide_gpt5_1_migration_prompt | boolean | Registra la confirmación del prompt de migración a GPT-5.1. |
notice.hide_rate_limit_model_nudge | boolean | Registra la decisión de no recibir el recordatorio para cambiar de modelo por el límite de solicitudes. |
notice.hide_world_writable_warning | boolean | Registra la confirmación de la advertencia sobre los directorios de Windows con permisos de escritura para todos. |
notice.model_migrations | map<string,string> | Registra las migraciones de modelos confirmadas como correspondencias del modelo anterior al nuevo. |
notify | array<string> | Comando que se invoca para las notificaciones; recibe una carga útil JSON de Codex. |
openai_base_url | string | URL base alternativa para el proveedor de modelos openai integrado. |
oss_provider | lmstudio | ollama | Proveedor local predeterminado que se usa en ejecuciones con --oss (si no se establece, se solicita al usuario que elija uno). |
otel.environment | string | Etiqueta de entorno aplicada a los eventos de OpenTelemetry emitidos (valor predeterminado: dev). |
otel.exporter | none | otlp-http | otlp-grpc | Selecciona el exportador de OpenTelemetry y proporciona los metadatos del punto de acceso que correspondan. |
otel.exporter.<id>.endpoint | string | Punto de acceso del exportador para los registros de OTEL. |
otel.exporter.<id>.headers | map<string,string> | Encabezados estáticos incluidos en las solicitudes del exportador de OTEL. |
otel.exporter.<id>.protocol | binary | json | Protocolo que usa el exportador OTLP/HTTP. |
otel.exporter.<id>.tls.ca-certificate | string | Ruta del certificado de CA para TLS del exportador de OTEL. |
otel.exporter.<id>.tls.client-certificate | string | Ruta del certificado del cliente para TLS del exportador de OTEL. |
otel.exporter.<id>.tls.client-private-key | string | Ruta de la clave privada del cliente para TLS del exportador de OTEL. |
otel.log_user_prompt | boolean | Habilita la exportación de los prompts sin procesar de los usuarios junto con los registros de OpenTelemetry. |
otel.metrics_exporter | none | statsig | otlp-http | otlp-grpc | Selecciona el exportador de métricas de OpenTelemetry (el valor predeterminado es statsig). |
otel.trace_exporter | none | otlp-http | otlp-grpc | Selecciona el exportador de trazas de OpenTelemetry y proporciona los metadatos del punto de acceso que correspondan. |
otel.trace_exporter.<id>.endpoint | string | Punto de acceso del exportador de trazas para los registros de OTEL. |
otel.trace_exporter.<id>.headers | map<string,string> | Encabezados estáticos incluidos en las solicitudes del exportador de trazas de OTEL. |
otel.trace_exporter.<id>.protocol | binary | json | Protocolo que usa el exportador de trazas OTLP/HTTP. |
otel.trace_exporter.<id>.tls.ca-certificate | string | Ruta del certificado de CA para TLS del exportador de trazas de OTEL. |
otel.trace_exporter.<id>.tls.client-certificate | string | Ruta del certificado del cliente para TLS del exportador de trazas de OTEL. |
otel.trace_exporter.<id>.tls.client-private-key | string | Ruta de la clave privada del cliente para TLS del exportador de trazas de OTEL. |
permissions.<name>.description | string | Descripción legible para este perfil con nombre. Un perfil no hereda la descripción de su perfil base mediante extends. |
permissions.<name>.extends | string | Perfil padre opcional que se aplica antes de este perfil con nombre. Establécelo en otro perfil con nombre, :read-only o :workspace; se rechazan :danger-full-access, los perfiles padre sin definir y los ciclos. |
permissions.<name>.filesystem | table | Perfil de permisos con nombre para el sistema de archivos. Cada clave es una ruta absoluta o un token especial, como :minimal o :workspace_roots. |
permissions.<name>.filesystem.":workspace_roots".<subpath-or-glob> | "read" | "write" | "deny" | Acceso al sistema de archivos con alcance definido respecto de cada raíz efectiva del espacio de trabajo. Usa "." para la raíz en sí; las subrutas glob, como "**/*.env", pueden denegar la lectura con "deny". |
permissions.<name>.filesystem.<path-or-glob> | "read" | "write" | "deny" | table | Otorga acceso directo a una ruta, un patrón glob o un token especial, o limita a esa raíz el alcance de las entradas anidadas. Usa "deny" para denegar la lectura de las rutas coincidentes. |
permissions.<name>.filesystem.glob_scan_max_depth | number | Profundidad máxima para expandir patrones glob que deniegan la lectura en plataformas que toman una instantánea de las coincidencias antes de iniciar el sandbox. Si se establece, debe ser al menos 1. |
permissions.<name>.network.allow_local_binding | boolean | Permite un acceso más amplio a la red local o privada mediante las conexiones de red en el sandbox. Las reglas que permiten una dirección IP local literal exacta o localhost pueden seguir permitiendo destinos locales específicos cuando esta opción permanece en false. |
permissions.<name>.network.allow_upstream_proxy | boolean | Permite encadenar las conexiones de red en el sandbox a través de otro proxy ascendente. |
permissions.<name>.network.dangerously_allow_all_unix_sockets | boolean | Permite destinos arbitrarios de sockets Unix en lugar del conjunto restringido predeterminado. Usa esta opción solo en entornos estrictamente controlados. |
permissions.<name>.network.dangerously_allow_non_loopback_proxy | boolean | Permite direcciones de enlace distintas de loopback para los servicios de escucha de red del sandbox. Habilitar esta opción puede exponerlos más allá de localhost. |
permissions.<name>.network.domains | table | Reglas de dominio para comandos ejecutados en el sandbox. Solo se aplican cuando features.network_proxy o los requisitos de red habilitados y gestionados por el administrador activan el proxy. Admiten hosts exactos, *.example.com, **.example.com y reglas globales de permiso con *; deny tiene prioridad. No restringen la búsqueda web, las apps ni los servidores MCP. |
permissions.<name>.network.domains.<pattern> | allow | deny | Permite o deniega un host exacto o un patrón comodín con alcance definido, como *.example.com o **.example.com. |
permissions.<name>.network.enable_socks5 | boolean | Habilita la compatibilidad con SOCKS5 cuando este perfil de permisos habilita las conexiones de red en el sandbox. |
permissions.<name>.network.enable_socks5_udp | boolean | Permite UDP a través del servicio de escucha SOCKS5 cuando está habilitado. |
permissions.<name>.network.enabled | boolean | Habilita el acceso a la red para los comandos de este perfil de permisos. Esto no inicia el proxy de red. Si no están habilitados features.network_proxy ni los requisitos de red administrados por el administrador, el acceso a la red de los comandos es directo y las reglas de dominio del perfil no se aplican. |
permissions.<name>.network.mode | limited | full | Modo de proxy de red que se usa para el tráfico de los subprocesos. |
permissions.<name>.network.proxy_url | string | URL del servicio de escucha HTTP que se usa cuando este perfil de permisos habilita las conexiones de red en el sandbox. |
permissions.<name>.network.socks_url | string | Punto de acceso del proxy SOCKS5 que usa este perfil de permisos. |
permissions.<name>.network.unix_sockets | table | Modificaciones de la lista de sockets Unix permitidos para las conexiones de red en el sandbox. Usa las rutas de sockets como claves; allow agrega una ruta y deny la rechaza. |
permissions.<name>.network.unix_sockets.<path> | allow | deny | Agrega una ruta absoluta de socket Unix a la lista efectiva de permitidos con allow, o recházala con deny. Las entradas denegadas se omiten de la lista efectiva de permitidos. |
permissions.<name>.workspace_roots | table | Raíces del espacio de trabajo definidas por el perfil a las que se aplican las reglas del sistema de archivos de :workspace_roots, junto con las raíces del espacio de trabajo de la sesión en tiempo de ejecución. |
permissions.<name>.workspace_roots.<path> | boolean | Incluye una ruta en el conjunto de raíces del espacio de trabajo del perfil cuando es true. Las entradas deshabilitadas permanecen inactivas. |
personality | none | friendly | pragmatic | Estilo de comunicación predeterminado para los modelos que declaran supportsPersonality; puede sobrescribirse por hilo o turno, o mediante /personality. |
plan_mode_reasoning_effort | none | minimal | low | medium | high | xhigh | Ajuste de razonamiento específico del Modo plan. Si no se define, el Modo plan usa el valor predeterminado de su ajuste preestablecido integrado. |
plugins.<plugin>.mcp_servers.<server>.default_tools_approval_mode | auto | prompt | writes | approve | Comportamiento de aprobación predeterminado para las herramientas de un servidor MCP proporcionado por un complemento. |
plugins.<plugin>.mcp_servers.<server>.disabled_tools | array<string> | Lista de herramientas denegadas que se aplica después de enabled_tools para un servidor MCP proporcionado por un complemento. |
plugins.<plugin>.mcp_servers.<server>.enabled | boolean | Habilita o deshabilita un servidor MCP incluido en un complemento instalado sin cambiar el archivo de manifiesto del complemento. |
plugins.<plugin>.mcp_servers.<server>.enabled_tools | array<string> | Lista de herramientas permitidas que expone un servidor MCP proporcionado por un complemento. |
plugins.<plugin>.mcp_servers.<server>.tools.<tool>.approval_mode | auto | prompt | writes | approve | Comportamiento de aprobación específico que sustituye el predeterminado para una herramienta MCP proporcionada por un complemento. |
project_doc_fallback_filenames | array<string> | Nombres de archivo adicionales que se prueban si falta AGENTS.md. |
project_doc_max_bytes | number | Cantidad máxima de bytes que se leen de AGENTS.md al generar las instrucciones del proyecto. |
project_root_markers | array<string> | Lista de nombres de archivos que sirven como marcadores de la raíz del proyecto; se usa al buscar la raíz del proyecto en los directorios superiores. |
projects.<path>.trust_level | string | Marca un proyecto o Worktree como confiable o no confiable ( "trusted" | "untrusted"). Los proyectos no confiables omiten las capas .codex/ específicas del proyecto, incluidas la configuración local del proyecto, los hooks y las reglas. |
review_model | string | Modelo alternativo opcional que usa /review (el valor predeterminado es el modelo de la sesión actual). |
sandbox_mode | read-only | workspace-write | danger-full-access | Política del sandbox para el acceso al sistema de archivos y a la red durante la ejecución de comandos. |
sandbox_workspace_write.exclude_slash_tmp | boolean | Excluye /tmp de las raíces con permiso de escritura en el modo workspace-write. |
sandbox_workspace_write.exclude_tmpdir_env_var | boolean | Excluye $TMPDIR de las raíces con permiso de escritura en el modo workspace-write. |
sandbox_workspace_write.network_access | boolean | Permite el acceso saliente a la red dentro del sandbox workspace-write. |
sandbox_workspace_write.writable_roots | array<string> | Raíces adicionales con permiso de escritura cuando sandbox_mode = "workspace-write". |
service_tier | string | Nivel de servicio preferido para turnos nuevos. Usa fast u otro nivel que ofrezca el modelo activo; fast se asigna al valor de solicitud priority. |
shell_environment_policy.exclude | array<string> | Patrones heredados de exclusión de variables de entorno. Usa shell_environment_policy.filters para las configuraciones nuevas; no combines ambas formas en la misma capa. |
shell_environment_policy.experimental_use_profile | boolean | Usa el perfil del shell del usuario al crear subprocesos. |
shell_environment_policy.filters | map<string, include | exclude> | Filtros canónicos basados en patrones de variables de entorno, sin distinción entre mayúsculas y minúsculas. Las entradas de inclusión crean una lista de permitidos y no pueden restaurar los valores excluidos. Los valores explícitos de set se aplican después de las exclusiones. No combines los filtros con los arreglos heredados exclude o include_only en la misma capa. |
shell_environment_policy.ignore_default_excludes | boolean | Conserva las variables cuyos nombres contienen KEY, SECRET o TOKEN antes de aplicar los demás filtros (valor predeterminado: true). Establece el valor en false para aplicar exclusiones automáticas basadas en nombres de secretos. |
shell_environment_policy.include_only | array<string> | Lista heredada de patrones permitidos para variables de entorno. Usa shell_environment_policy.filters para las configuraciones nuevas; no combines ambas formas en la misma capa. |
shell_environment_policy.inherit | all | core | none | Configuración base para la herencia del entorno al crear subprocesos. |
shell_environment_policy.set | map<string,string> | Valores de entorno explícitos que se insertan después de las exclusiones; los filtros de inclusión aún pueden eliminarlos. |
show_raw_agent_reasoning | boolean | Muestra el contenido de razonamiento sin procesar cuando el modelo activo lo emite. |
skills.config | array<object> | Valores de habilitación específicos por habilidad almacenados en config.toml. |
skills.config.<index>.enabled | boolean | Habilita o deshabilita la habilidad indicada. |
skills.config.<index>.path | string (path) | Ruta a la carpeta de una habilidad que contiene SKILL.md. |
sqlite_home | string (path) | Directorio donde Codex almacena la base de datos de estado basada en SQLite para las tareas de los agentes y otros estados reanudables del entorno de ejecución. |
suppress_unstable_features_warning | boolean | Oculta la advertencia que aparece cuando se habilitan flags de funciones en desarrollo. |
tool_output_token_limit | number | Presupuesto de tokens para almacenar en el historial la salida de cada herramienta o función. |
tool_suggest.disabled_tools | array<table> | Deshabilita las sugerencias de conectores o complementos específicos que se puedan detectar. Cada entrada usa type = "connector" o "plugin" y un id. |
tool_suggest.discoverables | array<table> | Permite sugerencias de herramientas para conectores o complementos adicionales que se puedan detectar. Cada entrada usa type = "connector" o "plugin" y un id. |
tools.view_image | boolean | Habilita la herramienta view_image para adjuntar imágenes locales. |
tools.web_search | boolean | { context_size = "low|medium|high", allowed_domains = [string], location = { country, region, city, timezone } } | Configuración opcional de la herramienta de búsqueda web. El formato de objeto permite configurar el tamaño del contexto de búsqueda, los dominios de búsqueda permitidos y la ubicación aproximada del usuario. Estos filtros de dominios de búsqueda son independientes de las reglas de dominios de red para comandos ejecutados en el sandbox y no restringen los conectores ni los servidores MCP. |
tui | table | Opciones específicas de la TUI, como habilitar las notificaciones de escritorio integradas. |
tui.alternate_screen | auto | always | never | Controla el uso de la pantalla alternativa de la TUI (valor predeterminado: auto; auto la omite en Zellij para conservar el historial de desplazamiento). |
tui.animations | boolean | Habilita las animaciones de la terminal (pantalla de bienvenida, efecto de brillo e indicador giratorio) (valor predeterminado: true). |
tui.keymap.<context>.<action> | string | array<string> | Asignación de un atajo de teclado a una acción de la TUI. Los contextos compatibles incluyen global, chat, composer, editor, vim_normal, vim_operator, vim_text_object, pager, list y approval. Ciertas acciones del editor usan como alternativa las asignaciones coincidentes de tui.keymap.global; las asignaciones específicas del contexto tienen prioridad cuando se admiten. |
tui.keymap.<context>.<action> = [] | empty array | Quita la asignación de la acción en ese contexto del mapa de teclas. Los nombres de las teclas usan cadenas normalizadas como ctrl-a, shift-enter, page-down o minus. |
tui.model_availability_nux.<model> | integer | Estado interno de las sugerencias de inicio, indexado por el slug del modelo. |
tui.notification_condition | unfocused | always | Controla si las notificaciones de la TUI se activan solo cuando la terminal no tiene el foco o independientemente del foco. El valor predeterminado es unfocused. |
tui.notification_method | auto | osc9 | bel | Método usado para las notificaciones de la terminal (valor predeterminado: auto). |
tui.notifications | boolean | array<string> | Habilita las notificaciones de la TUI; opcionalmente, restríngelas a tipos específicos de eventos. |
tui.raw_output_mode | boolean | Inicia la TUI en el modo de historial de desplazamiento sin procesar para facilitar la selección y copia de texto de la terminal (valor predeterminado: false). Puedes activarlo o desactivarlo con /raw o con la combinación de teclas predeterminada alt-r. |
tui.resume_cwd | current | session | Directorio de trabajo que se usa al reanudar una sesión o crear un fork de ella. Si no se configura, Codex te pide que elijas uno si el directorio actual difiere del directorio guardado para la sesión. |
tui.show_tooltips | boolean | Muestra sugerencias de introducción en la pantalla de bienvenida de la TUI (valor predeterminado: true). |
tui.status_line | array<string> | null | Lista ordenada de identificadores de los elementos de la línea de estado al pie de la TUI. null deshabilita la línea de estado. |
tui.terminal_title | array<string> | null | Lista ordenada de identificadores de elementos del título de la ventana o pestaña de la terminal. El valor predeterminado es ["spinner", "project"]; null deshabilita las actualizaciones del título. |
tui.theme | string | Sustitución del tema de resaltado de sintaxis (nombre del tema en kebab-case). |
tui.vim_mode_default | boolean | Inicia el editor en el modo normal de Vim en lugar del modo de inserción (valor predeterminado: false). Puedes seguir cambiando esta opción en cada sesión con /vim. |
web_search | disabled | cached | indexed | live | Modo de búsqueda web (valor predeterminado: "cached"; cached usa un índice mantenido por OpenAI sin acceso externo a la web; indexed permite el acceso externo solo cuando el índice de búsqueda lo autoriza; si usas --yolo u otra configuración de sandbox con acceso completo, el valor predeterminado es "live"). Usa "live" para recuperar contenido en vivo sin restricciones o "disabled" para quitar la herramienta. |
windows_wsl_setup_acknowledged | boolean | Registra la confirmación de la configuración inicial en Windows (solo en Windows). |
windows.sandbox | unelevated | elevated | Modo de sandbox nativo exclusivo de Windows que se usa al ejecutar Codex de forma nativa en Windows. |
windows.sandbox_private_desktop | boolean | En Windows nativo, ejecuta de forma predeterminada el proceso secundario final dentro del sandbox en un escritorio privado. Establece false solo para mantener la compatibilidad con el comportamiento anterior de 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; cuando es false, se rechazan las solicitudes login = true y, si se omite login, se usan shells sin inicio de sesión de forma predeterminada.analytics.enabledbooleanapproval_policyuntrusted | on-request | never | { granular = { sandbox_approval = bool, rules = bool, mcp_elicitations = bool, request_permissions = bool, skill_approval = bool } }approval_policy = { granular = { ... } } para permitir categorías específicas de prompts o rechazarlas automáticamente mientras los demás prompts siguen siendo interactivos. on-failure está obsoleto; usa on-request para ejecuciones interactivas o never para ejecuciones no interactivas.approval_policy.granular.mcp_elicitationsbooleantrue, se permite mostrar las solicitudes de información de MCP en lugar de rechazarlas automáticamente.approval_policy.granular.request_permissionsbooleantrue, se permite mostrar los prompts de la herramienta request_permissions.approval_policy.granular.rulesbooleantrue, se permite mostrar las solicitudes de aprobación activadas por reglas prompt de execpolicy.approval_policy.granular.sandbox_approvalbooleantrue, se permite mostrar los prompts de aprobación para elevar los permisos del sandbox.approval_policy.granular.skill_approvalbooleantrue, se permite mostrar los prompts de aprobación de scripts de habilidades.approvals_revieweruser | auto_reviewon-request o granulares. El valor predeterminado es user; auto_review usa el subagente revisor. Esta configuración no modifica el entorno aislado ni revisa las acciones que ya están permitidas dentro del sandbox.apps._default.approvals_revieweruser | auto_reviewapprovals_reviewer de nivel superior.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 tiene prioridad. Se ignoran los valores en blanco.background_terminal_max_timeoutnumberwrite_stdin sin entrada (sondeo de la terminal en segundo plano). Valor predeterminado: 300000 (5 minutos). Reemplaza la antigua clave background_terminal_timeout.chatgpt_base_urlstringcheck_for_update_on_startupbooleancli_auth_credentials_storefile | keyring | autocompact_promptstringcomputer_use.windows.always_allowed_app_idsarray<string>default_permissionsstring:read-only, :workspace y :danger-full-access; los nombres de perfiles personalizados requieren tablas [permissions.<name>] correspondientes. No lo combines con sandbox_mode ni con [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/... codificada en Base64, URI de archivo o ruta local absoluta para el ícono del controlador. Obligatorio; las fuentes no compatibles usan el ícono predeterminado de VS Code.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 o codex --enable unified_exec.features.appsbooleanfeatures.code_mode.direct_only_tool_namespacesarray<string>features.code_mode.enabledbooleanfeatures.code_mode.excluded_tool_namespacesarray<string>features.enable_request_compressionbooleanfeatures.fast_modebooleanfeatures.goalsbooleanfeatures.hooksbooleanhooks.json o definidos directamente en la configuración [hooks]. features.codex_hooks es un alias obsoleto.features.memoriesbooleanfeatures.multi_agentbooleanspawn_agent, send_input, resume_agent, wait_agent y close_agent) (estable; habilitadas de forma predeterminada).features.network_proxyboolean | tableexperimental_network habilitados y gestionados por administradores inicien el proxy. Usa una tabla cuando configures opciones de política a nivel de la función, como domains. No filtra la búsqueda web, las apps, MCP ni otras herramientas alojadas.features.network_proxy.allow_local_bindingbooleanfalse; las reglas de permiso para una dirección IP local literal exacta o para localhost aún pueden permitir destinos locales específicos.features.network_proxy.allow_upstream_proxybooleantrue.features.network_proxy.dangerously_allow_all_unix_socketsbooleanfalse; usa esta opción solo en entornos estrictamente controlados.features.network_proxy.dangerously_allow_non_loopback_proxybooleanfalse; habilitar esta opción puede exponer los puntos de escucha del proxy fuera de localhost.features.network_proxy.domainsmap<string, allow | deny>allow. Admite hosts exactos, *.example.com solo para subdominios, **.example.com para el dominio raíz y sus subdominios, y reglas globales de permiso con *; prioriza las reglas con alcance limitado, ya que * habilita ampliamente el acceso saliente a redes públicas. Agrega reglas deny para los destinos bloqueados; deny prevalece en caso de conflicto.features.network_proxy.enable_socks5booleantrue.features.network_proxy.enable_socks5_udpbooleantrue.features.network_proxy.enabledbooleanfalse; las reglas de dominios del perfil de permisos no se aplican mientras el proxy está desactivado.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 para los sockets permitidos.features.personalitybooleanfeatures.prevent_idle_sleepbooleanfeatures.remote_pluginbooleanfeatures.rollout_budget.enabledbooleanfeatures.rollout_budget.limit_tokens.features.rollout_budget.limit_tokensintegerfeatures.rollout_budget.prefill_token_weightnumber1.0.features.rollout_budget.reminder_interval_tokensintegerlimit_tokens, con un mínimo de 1 token.features.rollout_budget.sampling_token_weightnumber1.0.features.shell_snapshotbooleanfeatures.shell_toolbooleanshell predeterminada para ejecutar comandos (estable; se activa de forma predeterminada).features.skill_mcp_dependency_installbooleanfeatures.unified_execbooleanfeatures.web_searchbooleanweb_search de nivel superior.features.web_search_cachedbooleanweb_search no está definido, true equivale a web_search = "cached".features.web_search_requestbooleanweb_search no está definido, true equivale a web_search = "live".feedback.enabledboolean/feedback en los clientes locales (valor predeterminado: 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. Usan el mismo esquema de eventos que hooks.json; consulta la guía de Hooks para ver ejemplos y eventos compatibles.hooks.<Event>array<table>PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit o Stop.hooks.<Event>[].hooksarray<table>hooks.<Event>[].hooks[].additionalContextLimitintegeradditionalContext demasiado grandes y mostrarle al modelo una vista previa más breve. El valor predeterminado es 2500; 0 pasa el contexto completo directamente al modelo. Consulta Resultados extensos de hooks.hooks.<Event>[].hooks[].asyncbooleanfalse; SessionEnd siempre se ejecuta de forma síncrona. Consulta Ejecutar hooks en segundo plano.hooks.<Event>[].hooks[].commandWindowsstringcommand_windows.instructionsstringmodel_instructions_file o AGENTS.md.log_dirstring (path)$CODEX_HOME/log. Al establecer este valor explícitamente, también se habilita en ese directorio el registro opcional de la TUI en texto sin formato, codex-tui.log.mcp_oauth_callback_portintegeroauth.callback_port específico del servidor tiene prioridad. Cuando no se configura ninguno de los dos, Codex escucha en un puerto efímero elegido por el sistema operativo.mcp_oauth_callback_urlstringmcp_oauth_credentials_storeauto | file | keyringmcp_servers.<id>.argsarray<string>mcp_servers.<id>.authoauth | chatgptoauth (valor predeterminado) usa las credenciales OAuth de MCP almacenadas cuando están disponibles. chatgpt usa la sesión actual de ChatGPT para el origen propio y de confianza de ChatGPT y, después, recurre a las credenciales OAuth almacenadas. Ambos modos pueden conectarse sin autenticación si ninguna fuente proporciona credenciales.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 para el servidor 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" de forma predeterminada; usa source = "remote" solo con stdio remoto que use un ejecutor.mcp_servers.<id>.experimental_environmentlocal | remoteremote inicia servidores stdio mediante un entorno con un ejecutor remoto; la ubicación remota para HTTP con streaming no está implementada.mcp_servers.<id>.http_headersmap<string,string>mcp_servers.<id>.oauth_resourcestringmcp_servers.<id>.oauth.callback_portintegermcp_oauth_callback_port. Para un callback directo de loopback con un puerto explícito en la URL, configura el mismo puerto de escucha.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 expresado en milisegundos.mcp_servers.<id>.startup_timeout_secnumbermcp_servers.<id>.tool_timeout_secnumbermcp_servers.<id>.tools.<tool>.approval_modeauto | prompt | writes | approvemcp_servers.<id>.urlstringmemories.consolidation_modelstringmemories.disable_on_external_contextbooleantrue, los hilos que usan contexto externo, como llamadas a herramientas MCP, búsqueda web o búsqueda de herramientas, se excluyen de la generación de memorias. El valor predeterminado es false. Alias heredado: memories.no_memories_if_mcp_or_web_search.memories.extract_modelstringmemories.generate_memoriesbooleanfalse, los hilos recién creados no se almacenan como entradas para la generación de memorias. El valor predeterminado es true.memories.max_raw_memories_for_consolidationnumber256 y el límite máximo es 4096.memories.max_rollout_age_daysnumber30 y se limita al intervalo 0-90.memories.max_rollouts_per_startupnumber16 y el límite máximo es 128.memories.max_unused_daysnumber30 y se limita al intervalo 0-365.memories.min_rate_limit_remaining_percentnumber25 y se limita al intervalo 0-100.memories.min_rollout_idle_hoursnumber6 y se limita al intervalo 1-48.memories.use_memoriesbooleanfalse, Codex no incorpora las memorias existentes en sesiones futuras. El valor predeterminado es true.modelstringgpt-5.5).model_auto_compact_token_limitnumbermodel_auto_compact_token_limit_scopetotal | body_after_prefixtotal, el valor predeterminado) o solo el crecimiento posterior al prefijo conservado de la ventana de compactación (body_after_prefix).model_catalog_jsonstring (path)$CODEX_HOME/profile-name.config.toml seleccionado puede sobrescribir este valor para ese perfil.model_context_windownumbermodel_instructions_filestring (path)AGENTS.md.model_providerstringmodel_providers (valor predeterminado: openai).model_providers.<id>tableopenai, ollama y lmstudio) están reservados y no se pueden reemplazar.model_providers.<id>.authtableenv_key, experimental_bearer_token ni 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 para actualizar el token solo después de un reintento de autenticación.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 es el único valor admitido y se usa de forma predeterminada cuando se omite.model_providers.amazon-bedrock.aws.profilestringamazon-bedrock.model_providers.amazon-bedrock.aws.regionstringamazon-bedrock.model_reasoning_effortminimal | low | medium | high | xhighxhigh depende del modelo).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 integrado.oss_providerlmstudio | ollama--oss (si no se establece, se solicita al usuario que elija uno).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 o :workspace; se rechazan :danger-full-access, los perfiles padre sin definir y los ciclos.permissions.<name>.filesystemtable:minimal o :workspace_roots.permissions.<name>.filesystem.":workspace_roots".<subpath-or-glob>"read" | "write" | "deny""." para la raíz en sí; las subrutas glob, como "**/*.env", pueden denegar la lectura con "deny".permissions.<name>.filesystem.<path-or-glob>"read" | "write" | "deny" | table"deny" para denegar la lectura de las rutas coincidentes.permissions.<name>.filesystem.glob_scan_max_depthnumber1.permissions.<name>.network.allow_local_bindingbooleanlocalhost pueden seguir permitiendo destinos locales específicos cuando esta opción permanece en false.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 o los requisitos de red habilitados y gestionados por el administrador activan el proxy. Admiten hosts exactos, *.example.com, **.example.com y reglas globales de permiso con *; deny tiene prioridad. No restringen la búsqueda web, las apps ni los servidores MCP.permissions.<name>.network.domains.<pattern>allow | deny*.example.com o **.example.com.permissions.<name>.network.enable_socks5booleanpermissions.<name>.network.enable_socks5_udpbooleanpermissions.<name>.network.enabledbooleanfeatures.network_proxy ni los requisitos de red administrados por el administrador, el acceso a la red de los comandos es directo y las reglas de dominio del perfil no se aplican.permissions.<name>.network.modelimited | fullpermissions.<name>.network.proxy_urlstringpermissions.<name>.network.socks_urlstringpermissions.<name>.network.unix_socketstableallow agrega una ruta y deny la rechaza.permissions.<name>.network.unix_sockets.<path>allow | denyallow, o recházala con deny. Las entradas denegadas se omiten de la lista efectiva de permitidos.permissions.<name>.workspace_rootstable:workspace_roots, junto con las raíces del espacio de trabajo de la sesión en tiempo de ejecución.permissions.<name>.workspace_roots.<path>booleantrue. Las entradas deshabilitadas permanecen inactivas.personalitynone | friendly | pragmaticsupportsPersonality; puede sobrescribirse por hilo o turno, o mediante /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 para un servidor MCP proporcionado por un complemento.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.project_doc_max_bytesnumberAGENTS.md al generar las instrucciones del proyecto.project_root_markersarray<string>projects.<path>.trust_levelstring"trusted" | "untrusted"). Los proyectos no confiables omiten las capas .codex/ específicas del proyecto, incluidas la configuración local del proyecto, los hooks y las reglas.review_modelstring/review (el valor predeterminado es el modelo de la sesión actual).sandbox_moderead-only | workspace-write | danger-full-accesssandbox_workspace_write.exclude_slash_tmpboolean/tmp de las raíces con permiso de escritura en el modo workspace-write.sandbox_workspace_write.exclude_tmpdir_env_varboolean$TMPDIR de las raíces con permiso de escritura en el modo workspace-write.sandbox_workspace_write.network_accessbooleansandbox_workspace_write.writable_rootsarray<string>sandbox_mode = "workspace-write".service_tierstringfast u otro nivel que ofrezca el modelo activo; fast se asigna al valor de solicitud priority.shell_environment_policy.excludearray<string>shell_environment_policy.filters para las configuraciones nuevas; no combines ambas formas en la misma capa.shell_environment_policy.experimental_use_profilebooleanshell_environment_policy.filtersmap<string, include | exclude>set se aplican después de las exclusiones. No combines los filtros con los arreglos heredados exclude o include_only en la misma capa.shell_environment_policy.ignore_default_excludesbooleanshell_environment_policy.include_onlyarray<string>shell_environment_policy.filters para las configuraciones nuevas; no combines ambas formas en la misma capa.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.sqlite_homestring (path)suppress_unstable_features_warningbooleantool_output_token_limitnumbertool_suggest.disabled_toolsarray<table>type = "connector" o "plugin" y un id.tool_suggest.discoverablesarray<table>type = "connector" o "plugin" y un id.tools.view_imagebooleanview_image para adjuntar imágenes 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 y approval. Ciertas acciones del editor usan como alternativa las asignaciones coincidentes de tui.keymap.global; las asignaciones específicas del contexto tienen prioridad cuando se admiten.tui.keymap.<context>.<action> = []empty arrayctrl-a, shift-enter, page-down o minus.tui.model_availability_nux.<model>integertui.notification_conditionunfocused | alwaysunfocused.tui.notification_methodauto | osc9 | beltui.notificationsboolean | array<string>tui.raw_output_modeboolean/raw o con la combinación de teclas predeterminada alt-r.tui.resume_cwdcurrent | sessiontui.show_tooltipsbooleantui.status_linearray<string> | nullnull deshabilita la línea de estado.tui.terminal_titlearray<string> | null["spinner", "project"]; null deshabilita las actualizaciones del título.tui.themestringtui.vim_mode_defaultboolean/vim.web_searchdisabled | cached | indexed | live"cached"; cached usa un índice mantenido por OpenAI sin acceso externo a la web; indexed permite el acceso externo solo cuando el índice de búsqueda lo autoriza; si usas --yolo u otra configuración de sandbox con acceso completo, el valor predeterminado es "live"). Usa "live" para recuperar contenido en vivo sin restricciones o "disabled" para quitar la herramienta.windows_wsl_setup_acknowledgedbooleanwindows.sandboxunelevated | elevatedwindows.sandbox_private_desktopbooleanfalse solo para mantener la compatibilidad con el comportamiento anterior de Winsta0\\Default.Puedes encontrar el esquema JSON más reciente de config.toml aquí.
Para obtener autocompletado y diagnósticos al editar config.toml en VS Code o Cursor, puedes instalar la extensión Even Better TOML y agregar esta línea al principio de tu config.toml:
#:schema https://developers.openai.com/codex/config-schema.json
Nota: cambia el nombre de experimental_instructions_file a model_instructions_file. Codex marca la clave anterior como obsoleta; actualiza las configuraciones existentes para usar el nombre nuevo.
requirements.toml
requirements.toml es un archivo de configuración impuesto por el administrador que restringe ajustes sensibles para la seguridad que los usuarios no pueden reemplazar. Para obtener detalles, ubicaciones y ejemplos, consulta Requisitos impuestos por el administrador.
Para los usuarios de ChatGPT Business y ChatGPT Enterprise, Codex también puede aplicar requisitos obtenidos de la nube. Consulta la página de seguridad para conocer los detalles sobre la precedencia.
Usa [features] en requirements.toml para fijar los indicadores de funciones del entorno de ejecución mediante las mismas
claves canónicas que usa config.toml. Los requisitos también pueden incluir claves documentadas
exclusivas de la App que no pertenecen a config.toml. Las claves omitidas quedan
sin restricciones.
Algunos requisitos administrados imponen un valor de configuración exacto en lugar de una lista de permitidos. Los usuarios no pueden reemplazar valores impuestos para una ruta, una preferencia de actualización, una política de shell de inicio de sesión, una configuración de comentarios o una configuración del escritorio privado de Windows.
Las listas administradas de perfiles de permisos permitidos requieren Codex 0.138.0 o posterior. Codex
0.137.0 y las versiones anteriores ignoran allowed_permission_profiles y la clave administrada
default_permissions.
Usa allowed_sandbox_modes con sandbox_mode. Para las implementaciones con perfiles de permisos,
usa allowed_permission_profiles con la clave administrada
default_permissions.
La tabla [models.new_thread] proporciona valores predeterminados administrados, pero no los impone.
Las selecciones explícitas al iniciar Codex mediante flags específicos de la CLI o valores de reemplazo con --config tienen
prioridad. Si se reemplaza explícitamente el modelo o el esfuerzo de razonamiento, se omiten ambos campos administrados
del modelo; service_tier es independiente.
| Key | Type / Values | Details |
|---|---|---|
allow_appshots | boolean | Establece el valor en false para deshabilitar Capturas de la aplicación para los usuarios administrados. Si se omite, los requisitos no restringen Capturas de la aplicación y se aplica la disponibilidad normal del producto. |
allow_login_shell | boolean | Establece obligatoriamente si las herramientas de shell pueden iniciar un shell de inicio de sesión. |
allow_managed_hooks_only | boolean | Cuando el valor es true, Codex omite los hooks del usuario, del proyecto, de la sesión y de los complementos, pero sigue permitiendo los hooks administrados de requirements.toml y de otras capas de configuración administrada. |
allow_remote_control | boolean | Establece el valor en false para deshabilitar el control remoto del dispositivo para los usuarios administrados. Si se omite, los requisitos no imponen restricciones al control remoto del dispositivo y se aplica la disponibilidad normal del producto. |
allowed_approval_policies | array<string> | Valores permitidos para approval_policy (por ejemplo, untrusted, on-request, never y granular). |
allowed_approvals_reviewers | array<string> | Valores permitidos para approvals_reviewer, como user y auto_review. |
allowed_permission_profiles | table<boolean> | Lista completa de perfiles de permisos permitidos. Se permiten los perfiles establecidos en true. Se deniegan los perfiles omitidos o establecidos en false, incluidos los que se agreguen en versiones futuras. Cuando se combinan fuentes de requisitos, las entradas se asocian por el nombre del perfil. |
allowed_permission_profiles.<name> | boolean | Permite o deniega un perfil de permisos integrado o personalizado definido en una configuración cargada o una fuente de requisitos. Una fuente de requisitos posterior y con mayor precedencia puede usar false para desactivar un perfil permitido por una fuente anterior con menor precedencia. |
allowed_sandbox_modes | array<string> | Valores permitidos para sandbox_mode. |
allowed_web_search_modes | array<string> | Valores permitidos para web_search (disabled, cached, indexed, live). disabled siempre está permitido; una lista vacía, en la práctica, solo permite disabled. |
apps | table | Requisitos administrados para apps, con el identificador de app como clave. Los requisitos pueden deshabilitar una app o restringir el comportamiento de aprobación de herramientas individuales. |
apps.<id>.enabled | boolean | Establécelo en false para deshabilitar una app. Un requisito que deshabilita una app mantiene su efecto restrictivo cuando se combinan varias fuentes de requisitos. |
apps.<id>.tools.<tool>.approval_mode | auto | prompt | writes | approve | Establece el modo de aprobación administrado para una herramienta de una app. |
check_for_update_on_startup | boolean | Establece obligatoriamente si Codex busca actualizaciones al iniciarse. |
computer_use | table | Requisitos de Uso de la computadora impuestos desde requirements.toml. |
computer_use.allow_locked_computer_use | boolean | Establece el valor en false para impedir que Uso de la computadora siga funcionando después de que se bloquee un dispositivo macOS administrado. Si se omite, los requisitos no imponen restricciones al uso con el dispositivo bloqueado. |
default_permissions | string | Perfil de permisos predeterminado administrado. El perfil debe estar permitido por allowed_permission_profiles. Establécelo de forma explícita para obtener un comportamiento predecible; si se omite, Codex usa :workspace de manera predeterminada solo cuando tanto :workspace como :read-only están permitidos explícitamente. |
enforce_residency | string | Exige que el tráfico del servicio de Codex use una residencia de datos admitida. Actualmente acepta us. |
experimental_network | table | Requisitos de red gestionados por el administrador para los comandos locales ejecutados en el sandbox, impuestos desde requirements.toml. Cuando están habilitados, estos requisitos pueden iniciar el proxy de red de los comandos sin features.network_proxy. No controlan la búsqueda web, las apps, los servidores MCP, los navegadores ni las conexiones de red de Codex Cloud. |
experimental_network.allow_local_binding | boolean | Permite un acceso más amplio a redes locales o privadas para las conexiones de red en el sandbox. Las reglas de permiso que especifiquen una dirección IP local literal exacta o localhost aún pueden permitir destinos locales específicos mientras el valor siga siendo false. |
experimental_network.allow_upstream_proxy | boolean | Permite encadenar las conexiones de red en el sandbox a través de un proxy ascendente del entorno. |
experimental_network.allowed_domains | array<string> | Reglas de permiso del administrador para el acceso a la red de los comandos ejecutados en el sandbox mientras el proxy de red administrado está habilitado. Estas reglas no se aplican a la búsqueda web, las apps ni los servidores MCP. No combines esta opción con experimental_network.domains. |
experimental_network.dangerously_allow_all_unix_sockets | boolean | Permite destinos arbitrarios de sockets Unix en lugar de limitar el acceso a una lista de permitidos. Usa esta opción solo en entornos estrictamente controlados. |
experimental_network.dangerously_allow_non_loopback_proxy | boolean | Permite direcciones de escucha que no sean de loopback para los requisitos de [experimental_network]. Habilitar esta opción puede exponer los servicios de escucha fuera de localhost. |
experimental_network.denied_domains | array<string> | Reglas de denegación del administrador en formato de lista para las conexiones de red en el sandbox. No combines esta opción con experimental_network.domains. |
experimental_network.domains | map<string, allow | deny> | Política de dominios del administrador en formato de mapa para las conexiones de red en el sandbox. Admite hosts exactos, *.example.com solo para subdominios, **.example.com para el dominio raíz y sus subdominios, y reglas globales de permiso con *; usa preferentemente reglas de alcance limitado, porque * habilita de forma general el acceso saliente a la red pública. deny prevalece en caso de conflicto. No combines esta opción con experimental_network.allowed_domains ni con experimental_network.denied_domains. |
experimental_network.enabled | boolean | Habilita los requisitos de red en el sandbox. Esto no concede acceso a la red cuando el sandbox activo mantiene deshabilitado el acceso de los comandos a la red. |
experimental_network.http_port | integer | Puerto de escucha HTTP de loopback que se usará con los requisitos de [experimental_network]. |
experimental_network.managed_allowed_domains_only | boolean | Cuando el valor es true, solo siguen vigentes las reglas de permiso gestionadas por el administrador mientras los requisitos de red en el sandbox están activos; se ignoran las incorporaciones del usuario a la lista de permitidos. Si no hay reglas de permiso administradas, las reglas de permiso de dominios agregadas por el usuario tampoco siguen vigentes. |
experimental_network.socks_port | integer | Puerto de escucha SOCKS5 de loopback que se usará con los requisitos de [experimental_network]. |
experimental_network.unix_sockets | map<string, allow | deny> | Política de sockets Unix gestionada por el administrador para las conexiones de red en el sandbox. |
features | table | Valores fijados para las funciones. Usa los nombres canónicos de config.toml para las funciones del entorno de ejecución; aquí también se admiten las claves documentadas de requisitos exclusivas de la aplicación. |
features.<name> | boolean | Exige que una función documentada del entorno de ejecución o de la aplicación permanezca habilitada o deshabilitada. |
features.apps | boolean | Fija si la integración con Apps está disponible o no para los usuarios administrados. |
features.browser_use | boolean | En requirements.toml, establece el valor en false para deshabilitar Uso de la computadora en los navegadores y la disponibilidad del agente del navegador. |
features.browser_use_external | boolean | En requirements.toml, establece el valor en false para deshabilitar Uso de la computadora en navegadores externos. |
features.browser_use_full_cdp_access | boolean | En requirements.toml, establece el valor en false para deshabilitar el acceso completo a Chrome DevTools Protocol en el entorno de ejecución local, incluido el modo de desarrollador del navegador, e impedir que la aplicación de escritorio de ChatGPT habilite la opción correspondiente. Si se omite, se aplica la disponibilidad normal del producto. |
features.computer_use | boolean | En requirements.toml, establece el valor en false para deshabilitar Uso de la computadora, Grabar y reproducir y los flujos relacionados de instalación o habilitación. |
features.fast_mode | boolean | Fija la función canónica fast_mode como habilitada o deshabilitada para los usuarios administrados. |
features.guardian_approval | boolean | Fija si la aprobación de Guardian está disponible o no para los usuarios administrados. |
features.in_app_browser | boolean | En requirements.toml, establece el valor en false para deshabilitar el panel del navegador integrado. |
features.in_app_updates | boolean | En requirements.toml, establece el valor en false para deshabilitar las actualizaciones en la aplicación. Si se omite este requisito, las actualizaciones permanecen habilitadas de forma predeterminada. |
features.memories | boolean | Fija si la función Memorias está disponible o no para los usuarios administrados. |
features.multi_agent | boolean | Fija si la funcionalidad multiagente está disponible o no para los usuarios administrados. |
features.plugin_sharing | boolean | En un requirements.toml administrado desde la nube, establece el valor en false para impedir que los complementos creados localmente se compartan en el espacio de trabajo. |
features.plugins | boolean | Fija si los complementos están disponibles o no para los usuarios administrados. |
features.remote_plugin | boolean | Fija si el catálogo remoto de complementos está disponible o no para los usuarios administrados. |
features.workspace_dependencies | boolean | Fija si el entorno de ejecución incluido para las dependencias del espacio de trabajo está disponible o no para los usuarios administrados. |
feedback | table | Configuración administrada del envío de comentarios. |
feedback.enabled | boolean | Establece obligatoriamente si los usuarios pueden enviar comentarios a través de los clientes de Codex. |
guardian_policy_config | string | Instrucciones de política administradas en formato Markdown para la revisión automática. Tienen prioridad sobre la política local [auto_review].policy. Se ignoran los valores en blanco. |
hooks | table | Hooks administrados del ciclo de vida impuestos por el administrador. Requieren un directorio de hooks administrados y usan el mismo esquema de eventos que la configuración [hooks] definida en línea en config.toml. |
hooks.<Event> | array<table> | Grupos de comparadores para un evento de hook, como PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit o Stop. |
hooks.<Event>[].hooks | array<table> | Controladores de hooks para un grupo de comparadores. Se admiten hooks de comandos y de herramientas MCP; los controladores de hooks de prompts y de agentes se analizan, pero se omiten. |
hooks.<Event>[].hooks[].additionalContextLimit | integer | Umbral aproximado de tokens por controlador para guardar en disco un valor de additionalContext demasiado grande y mostrar al modelo una vista previa más breve. El valor predeterminado es 2500; con 0, se pasa el contexto completo directamente al modelo. Consulta Salida de gran tamaño de los hooks. |
hooks.<Event>[].hooks[].async | boolean | Ejecuta un hook de comando en segundo plano sin retrasar la operación que lo activa. El valor predeterminado es false; SessionEnd siempre se ejecuta de forma síncrona. Consulta Ejecutar hooks en segundo plano. |
hooks.<Event>[].hooks[].commandWindows | string | Comando de reemplazo exclusivo de Windows para los hooks de comandos. También se acepta el alias de TOML command_windows. |
hooks.managed_dir | string (absolute path) | Directorio que contiene scripts de hooks administrados en macOS y Linux. Codex comprueba que la ruta sea absoluta y que el directorio exista antes de cargar los hooks administrados. |
hooks.windows_managed_dir | string (absolute path) | Directorio que contiene scripts de hooks administrados en Windows. Codex comprueba que la ruta sea absoluta y que el directorio exista antes de cargar los hooks administrados. |
log_dir | string (path) | Impone el directorio donde Codex escribe los archivos de registro locales. |
marketplaces | table | Requisitos del administrador para las fuentes de Marketplace de complementos. Las reglas entran en vigor cuando restrict_to_allowed_sources es true. |
marketplaces.allowed_sources | table | Fuentes de Marketplace permitidas cuyas claves son nombres de reglas elegidos por el administrador. Los nombres distintos se acumulan entre las capas de requisitos; los campos asociados al mismo nombre siguen la precedencia normal de las capas. |
marketplaces.allowed_sources.<name> | table | Una regla para una fuente permitida. El valor final de source tras combinar los requisitos determina qué campos del mismo nivel interpreta Codex. |
marketplaces.allowed_sources.<name>.host_pattern | string | Expresión regular obligatoria cuando source = "host_pattern". Codex la compara con el nombre de host en minúsculas extraído de una fuente de Git con formato HTTPS, SSH o de tipo SCP. Usa ^ y $ para exigir una coincidencia con el nombre de host completo. |
marketplaces.allowed_sources.<name>.path | string (absolute path) | Directorio local de Marketplace obligatorio cuando source = "local". Codex exige una ruta absoluta y compara las rutas después de normalizarlas. |
marketplaces.allowed_sources.<name>.ref | string | Referencia exacta de Git opcional para una regla git. Si se omite, la regla permite cualquier referencia para el repositorio que coincida. |
marketplaces.allowed_sources.<name>.source | git | host_pattern | local | Tipo de comparador para fuentes de Marketplace. Usa git para un repositorio, host_pattern para hosts de Git que coincidan con una expresión regular o local para un directorio. |
marketplaces.allowed_sources.<name>.url | string | URL del repositorio de Git obligatoria cuando source = "git". Codex normaliza la URL configurada y la permitida antes de exigir que el repositorio coincida exactamente. |
marketplaces.restrict_to_allowed_sources | boolean | Cuando es true, exige que las fuentes de Marketplace configuradas por el usuario coincidan con allowed_sources en las operaciones para agregar un Marketplace, instalar complementos y actualizar los Marketplace configurados que usan Git. Los Marketplace de OpenAI administrados por Codex siguen estando permitidos cuando su fuente y su nombre coinciden con los valores reservados. Esto no filtra en tiempo de ejecución los Marketplace ya configurados por el usuario. |
mcp_servers | table | Lista de servidores MCP que se permite habilitar. Para habilitar un servidor MCP, deben coincidir tanto su nombre ( <id>) como su identidad. Se deshabilita cualquier servidor MCP configurado que no esté en la lista de permitidos o cuya identidad no coincida. |
mcp_servers.<id>.identity | table | Regla de identidad para un único servidor MCP. Establece command (stdio) o url (HTTP con streaming). |
mcp_servers.<id>.identity.command | string | table | Permite un servidor MCP stdio mediante una cadena de comando exacta, o usa una tabla de comparadores para exigir un ejecutable exacto y comparadores de argumentos ordenados. El formato de cadena no examina los argumentos, cwd, env ni env_vars. |
mcp_servers.<id>.identity.command.args | array<table> | Comparadores ordenados de argumentos para un servidor stdio. La lista de argumentos configurada debe tener la misma longitud y cada posición debe coincidir. Los comparadores de comandos no examinan cwd, env ni env_vars. |
mcp_servers.<id>.identity.command.args[].expression | string | Expresión regular que usa un comparador de argumentos regex. La expresión debe ser válida y coincidir con el valor completo del argumento. |
mcp_servers.<id>.identity.command.args[].match | exact | prefix | regex | Operación de comparación para el argumento en esta posición. |
mcp_servers.<id>.identity.command.args[].value | string | Valor que usa un comparador de argumentos exact o prefix. |
mcp_servers.<id>.identity.command.executable | string | Ejecutable con el que debe coincidir exactamente el valor de command configurado para el servidor stdio. |
mcp_servers.<id>.identity.url | string | table | Permite un servidor MCP de HTTP con streaming mediante una cadena de URL exacta, o usa una tabla de comparación de valores de tipo exact, prefix o regex. |
mcp_servers.<id>.identity.url.expression | string | Expresión regular que usa un comparador de URL regex. La expresión debe ser válida y coincidir con el valor completo de la URL. |
mcp_servers.<id>.identity.url.match | exact | prefix | regex | Operación de comparación para la URL configurada del servidor MCP. |
mcp_servers.<id>.identity.url.value | string | Valor que usa un comparador de URL exact o prefix. |
model_catalog_json | string (path) | Impone el catálogo JSON de modelos que Codex usa al iniciarse. |
models | table | Valores predeterminados administrados del modelo para hilos nuevos. Estos valores tienen prioridad sobre los valores predeterminados del usuario y del proyecto, pero una selección explícita para el hilo nuevo puede reemplazarlos. |
models.new_thread | table | Valores predeterminados que se aplican al iniciar un nuevo hilo local. Cada ajuste del modelo es opcional. |
models.new_thread.model | string | Modelo predeterminado para hilos nuevos. Una selección explícita mediante --model o un ajuste explícito del modelo o del razonamiento mediante --config tiene prioridad. |
models.new_thread.model_reasoning_effort | string | Esfuerzo de razonamiento predeterminado para hilos nuevos. Si se reemplaza explícitamente el modelo o el esfuerzo de razonamiento, se omiten ambos campos administrados del modelo. |
models.new_thread.service_tier | string | Nivel de servicio predeterminado para hilos nuevos. Un nivel de servicio definido explícitamente tiene prioridad, independientemente de los campos del modelo. |
permissions | table | Perfiles de permisos definidos por el administrador, con el nombre del perfil como clave. Usan los mismos campos de perfil que config.toml. |
permissions.<name> | table | Perfil de permisos definido por el administrador. El nombre no puede comenzar con :, ser el nombre reservado filesystem ni coincidir con el de un perfil de una configuración cargada. Usa los mismos campos de perfil que config.toml; consulta la guía de Permisos para conocer el esquema completo del perfil. |
permissions.filesystem.deny_read | array<string> | Denegaciones de lectura del sistema de archivos impuestas por el administrador. Las entradas pueden ser rutas o patrones glob, y los usuarios no pueden hacerlas menos restrictivas mediante la configuración local. |
plugins | table | Listas de servidores MCP permitidos específicas de cada complemento, cuyas claves son los identificadores de los complementos. Cuando esta tabla está presente, se deshabilitan los servidores incluidos en complementos que no tengan una entrada coincidente para el complemento y el servidor. |
plugins.<plugin>.mcp_servers | table | Lista de servidores MCP permitidos incluidos en un complemento. Los requisitos para los servidores de complementos usan los mismos formatos de identidad exacta y de comparación que los requisitos mcp_servers de nivel superior. |
plugins.<plugin>.mcp_servers.<server>.identity | table | Regla de identidad para un servidor MCP incluido en un complemento. Establece command (stdio) o url (HTTP con streaming). |
plugins.<plugin>.mcp_servers.<server>.identity.command | string | table | Permite un servidor MCP stdio de un complemento mediante una cadena de comando exacta, o usa una tabla de comparación para exigir un ejecutable exacto y comparadores de argumentos ordenados. |
plugins.<plugin>.mcp_servers.<server>.identity.command.args | array<table> | Comparadores de argumentos ordenados para un servidor stdio incluido en un complemento. La lista de argumentos configurada debe tener la misma longitud y cada argumento debe coincidir en su posición. |
plugins.<plugin>.mcp_servers.<server>.identity.command.args[].expression | string | Expresión regular utilizada por un comparador de argumentos regex. La expresión debe coincidir con el valor completo del argumento. |
plugins.<plugin>.mcp_servers.<server>.identity.command.args[].match | exact | prefix | regex | Operación de comparación para el argumento en esta posición. |
plugins.<plugin>.mcp_servers.<server>.identity.command.args[].value | string | Valor utilizado por un comparador de argumentos exact o prefix. |
plugins.<plugin>.mcp_servers.<server>.identity.command.executable | string | Ejecutable con el que debe coincidir exactamente el comando configurado del servidor stdio incluido en el complemento. |
plugins.<plugin>.mcp_servers.<server>.identity.url | string | table | Permite un servidor MCP de un complemento que usa HTTP con streaming mediante una cadena de URL exacta, o usa una tabla de comparación de valores con exact, prefix o regex. |
plugins.<plugin>.mcp_servers.<server>.identity.url.expression | string | Expresión regular utilizada por un comparador de URL regex. La expresión debe coincidir con el valor completo de la URL. |
plugins.<plugin>.mcp_servers.<server>.identity.url.match | exact | prefix | regex | Operación de comparación para la URL del servidor MCP incluido en el complemento. |
plugins.<plugin>.mcp_servers.<server>.identity.url.value | string | Valor utilizado por un comparador de URL exact o prefix. |
remote_sandbox_config | array<table> | Requisitos de sandbox específicos del host. La primera entrada cuyos hostname_patterns coincidan con el nombre de host resuelto reemplaza el valor de allowed_sandbox_modes de nivel superior para esa fuente de requisitos. Actualmente, las entradas específicas del host solo reemplazan los modos de sandbox. |
remote_sandbox_config[].allowed_sandbox_modes | array<string> | Modos de sandbox permitidos que se aplicarán cuando coincida esta entrada específica del host. |
remote_sandbox_config[].hostname_patterns | array<string> | Patrones de nombres de host que no distinguen entre mayúsculas y minúsculas. Admiten * para cualquier secuencia de caracteres y ? para un solo carácter. |
rules | table | Reglas de comandos impuestas por el administrador que se combinan con los archivos .rules. Las reglas definidas en los requisitos deben ser restrictivas. |
rules.prefix_rules | array<table> | Lista de reglas de prefijo impuestas. Cada regla debe incluir pattern y decision. |
rules.prefix_rules[].decision | prompt | forbidden | Obligatorio. Las reglas definidas en los requisitos solo pueden solicitar aprobación o prohibir (no permitir). |
rules.prefix_rules[].justification | string | Justificación opcional que no debe estar vacía y se muestra en los prompts de aprobación o en los mensajes de rechazo. |
rules.prefix_rules[].pattern | array<table> | Prefijo del comando expresado como tokens de patrón. Cada token establece token o any_of. |
rules.prefix_rules[].pattern[].any_of | array<string> | Una lista de tokens alternativos permitidos en esta posición. |
rules.prefix_rules[].pattern[].token | string | Un único token literal en esta posición. |
sqlite_home | string (path) | Impone el directorio que Codex usa para almacenar el estado de ejecución en SQLite. |
windows | table | Requisitos del sandbox nativo de Windows. |
windows.allowed_sandbox_implementations | array<string> | Implementaciones permitidas del sandbox nativo de Windows para windows.sandbox (elevated y unelevated). La lista no debe estar vacía. Cuando ambas están permitidas y no se selecciona ningún modo, Codex prefiere elevated. |
windows.sandbox_private_desktop | boolean | Fija si el sandbox nativo de Windows inicia su proceso secundario en un escritorio privado. |
allow_appshotsbooleanfalse para deshabilitar Capturas de la aplicación para los usuarios administrados. Si se omite, los requisitos no restringen Capturas de la aplicación y se aplica la disponibilidad normal del producto.allow_login_shellbooleanallow_managed_hooks_onlybooleantrue, Codex omite los hooks del usuario, del proyecto, de la sesión y de los complementos, pero sigue permitiendo los hooks administrados de requirements.toml y de otras capas de configuración administrada.allow_remote_controlbooleanfalse para deshabilitar el control remoto del dispositivo para los usuarios administrados. Si se omite, los requisitos no imponen restricciones al control remoto del dispositivo y se aplica la disponibilidad normal del producto.allowed_approval_policiesarray<string>approval_policy (por ejemplo, untrusted, on-request, never y granular).allowed_approvals_reviewersarray<string>approvals_reviewer, como user y auto_review.allowed_permission_profilestable<boolean>true. Se deniegan los perfiles omitidos o establecidos en false, incluidos los que se agreguen en versiones futuras. Cuando se combinan fuentes de requisitos, las entradas se asocian por el nombre del perfil.allowed_permission_profiles.<name>booleanfalse para desactivar un perfil permitido por una fuente anterior con menor precedencia.allowed_sandbox_modesarray<string>sandbox_mode.allowed_web_search_modesarray<string>web_search (disabled, cached, indexed, live). disabled siempre está permitido; una lista vacía, en la práctica, solo permite disabled.appstableapps.<id>.enabledbooleanfalse para deshabilitar una app. Un requisito que deshabilita una app mantiene su efecto restrictivo cuando se combinan varias fuentes de requisitos.apps.<id>.tools.<tool>.approval_modeauto | prompt | writes | approvecheck_for_update_on_startupbooleancomputer_usetablerequirements.toml.computer_use.allow_locked_computer_usebooleanfalse para impedir que Uso de la computadora siga funcionando después de que se bloquee un dispositivo macOS administrado. Si se omite, los requisitos no imponen restricciones al uso con el dispositivo bloqueado.default_permissionsstringallowed_permission_profiles. Establécelo de forma explícita para obtener un comportamiento predecible; si se omite, Codex usa :workspace de manera predeterminada solo cuando tanto :workspace como :read-only están permitidos explícitamente.enforce_residencystringus.experimental_networktablerequirements.toml. Cuando están habilitados, estos requisitos pueden iniciar el proxy de red de los comandos sin features.network_proxy. No controlan la búsqueda web, las apps, los servidores MCP, los navegadores ni las conexiones de red de Codex Cloud.experimental_network.allow_local_bindingbooleanlocalhost aún pueden permitir destinos locales específicos mientras el valor siga siendo 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]. Habilitar esta opción puede exponer los servicios de escucha fuera de localhost.experimental_network.denied_domainsarray<string>experimental_network.domains.experimental_network.domainsmap<string, allow | deny>*.example.com solo para subdominios, **.example.com para el dominio raíz y sus subdominios, y reglas globales de permiso con *; usa preferentemente reglas de alcance limitado, porque * habilita de forma general el acceso saliente a la red pública. deny prevalece en caso de conflicto. No combines esta opción con experimental_network.allowed_domains ni con experimental_network.denied_domains.experimental_network.enabledbooleanexperimental_network.http_portinteger[experimental_network].experimental_network.managed_allowed_domains_onlybooleantrue, solo siguen vigentes las reglas de permiso gestionadas por el administrador mientras los requisitos de red en el sandbox están activos; se ignoran las incorporaciones del usuario a la lista de permitidos. Si no hay reglas de permiso administradas, las reglas de permiso de dominios agregadas por el usuario tampoco siguen vigentes.experimental_network.socks_portinteger[experimental_network].experimental_network.unix_socketsmap<string, allow | deny>featurestableconfig.toml para las funciones del entorno de ejecución; aquí también se admiten las claves documentadas de requisitos exclusivas de la aplicación.features.<name>booleanfeatures.appsbooleanfeatures.browser_usebooleanrequirements.toml, establece el valor en false para deshabilitar Uso de la computadora en los navegadores y la disponibilidad del agente del navegador.features.browser_use_externalbooleanrequirements.toml, establece el valor en false para deshabilitar Uso de la computadora en navegadores externos.features.browser_use_full_cdp_accessbooleanrequirements.toml, establece el valor en false para deshabilitar el acceso completo a Chrome DevTools Protocol en el entorno de ejecución local, incluido el modo de desarrollador del navegador, e impedir que la aplicación de escritorio de ChatGPT habilite la opción correspondiente. Si se omite, se aplica la disponibilidad normal del producto.features.computer_usebooleanrequirements.toml, establece el valor en false para deshabilitar Uso de la computadora, Grabar y reproducir y los flujos relacionados de instalación o habilitación.features.fast_modebooleanfast_mode como habilitada o deshabilitada para los usuarios administrados.features.guardian_approvalbooleanfeatures.in_app_browserbooleanrequirements.toml, establece el valor en false para deshabilitar el panel del navegador integrado.features.in_app_updatesbooleanrequirements.toml, establece el valor en false para deshabilitar las actualizaciones en la aplicación. Si se omite este requisito, las actualizaciones permanecen habilitadas de forma predeterminada.features.memoriesbooleanfeatures.multi_agentbooleanfeatures.plugin_sharingbooleanrequirements.toml administrado desde la nube, establece el valor en false para impedir que los complementos creados localmente se compartan en el espacio de trabajo.features.pluginsbooleanfeatures.remote_pluginbooleanfeatures.workspace_dependenciesbooleanfeedbacktablefeedback.enabledbooleanguardian_policy_configstring[auto_review].policy. Se ignoran los valores en blanco.hookstable[hooks] definida en línea en config.toml.hooks.<Event>array<table>PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit o Stop.hooks.<Event>[].hooksarray<table>hooks.<Event>[].hooks[].additionalContextLimitintegeradditionalContext demasiado grande y mostrar al modelo una vista previa más breve. El valor predeterminado es 2500; con 0, se pasa el contexto completo directamente al modelo. Consulta Salida de gran tamaño de los hooks.hooks.<Event>[].hooks[].asyncbooleanfalse; SessionEnd siempre se ejecuta de forma síncrona. Consulta Ejecutar hooks en segundo plano.hooks.<Event>[].hooks[].commandWindowsstringcommand_windows.hooks.managed_dirstring (absolute path)hooks.windows_managed_dirstring (absolute path)log_dirstring (path)marketplacestablerestrict_to_allowed_sources es true.marketplaces.allowed_sourcestablemarketplaces.allowed_sources.<name>tablesource tras combinar los requisitos determina qué campos del mismo nivel interpreta Codex.marketplaces.allowed_sources.<name>.host_patternstringsource = "host_pattern". Codex la compara con el nombre de host en minúsculas extraído de una fuente de Git con formato HTTPS, SSH o de tipo SCP. Usa ^ y $ para exigir una coincidencia con el nombre de host completo.marketplaces.allowed_sources.<name>.pathstring (absolute path)source = "local". Codex exige una ruta absoluta y compara las rutas después de normalizarlas.marketplaces.allowed_sources.<name>.refstringgit. Si se omite, la regla permite cualquier referencia para el repositorio que coincida.marketplaces.allowed_sources.<name>.sourcegit | host_pattern | localgit para un repositorio, host_pattern para hosts de Git que coincidan con una expresión regular o local para un directorio.marketplaces.allowed_sources.<name>.urlstringsource = "git". Codex normaliza la URL configurada y la permitida antes de exigir que el repositorio coincida exactamente.marketplaces.restrict_to_allowed_sourcesbooleantrue, exige que las fuentes de Marketplace configuradas por el usuario coincidan con allowed_sources en las operaciones para agregar un Marketplace, instalar complementos y actualizar los Marketplace configurados que usan Git. Los Marketplace de OpenAI administrados por Codex siguen estando permitidos cuando su fuente y su nombre coinciden con los valores reservados. Esto no filtra en tiempo de ejecución los Marketplace ya configurados por el usuario.mcp_serverstable<id>) como su identidad. Se deshabilita cualquier servidor MCP configurado que no esté en la lista de permitidos o cuya identidad no coincida.mcp_servers.<id>.identitytablecommand (stdio) o url (HTTP con streaming).mcp_servers.<id>.identity.commandstring | tablecwd, env ni env_vars.mcp_servers.<id>.identity.command.argsarray<table>cwd, env ni env_vars.mcp_servers.<id>.identity.command.args[].expressionstringregex. La expresión debe ser válida y coincidir con el valor completo del argumento.mcp_servers.<id>.identity.command.args[].matchexact | prefix | regexmcp_servers.<id>.identity.command.args[].valuestringexact o prefix.mcp_servers.<id>.identity.command.executablestringcommand configurado para el servidor stdio.mcp_servers.<id>.identity.urlstring | tableexact, prefix o regex.mcp_servers.<id>.identity.url.expressionstringregex. La expresión debe ser válida y coincidir con el valor completo de la URL.mcp_servers.<id>.identity.url.matchexact | prefix | regexmcp_servers.<id>.identity.url.valuestringexact o prefix.model_catalog_jsonstring (path)modelstablemodels.new_threadtablemodels.new_thread.modelstring--model o un ajuste explícito del modelo o del razonamiento mediante --config tiene prioridad.models.new_thread.model_reasoning_effortstringmodels.new_thread.service_tierstringpermissionstableconfig.toml.permissions.<name>table:, ser el nombre reservado filesystem ni coincidir con el de un perfil de una configuración cargada. Usa los mismos campos de perfil que config.toml; consulta la guía de Permisos para conocer el esquema completo del perfil.permissions.filesystem.deny_readarray<string>pluginstableplugins.<plugin>.mcp_serverstablemcp_servers de nivel superior.plugins.<plugin>.mcp_servers.<server>.identitytablecommand (stdio) o url (HTTP con streaming).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. La expresión debe coincidir con el valor completo del argumento.plugins.<plugin>.mcp_servers.<server>.identity.command.args[].matchexact | prefix | regexplugins.<plugin>.mcp_servers.<server>.identity.command.args[].valuestringexact o prefix.plugins.<plugin>.mcp_servers.<server>.identity.command.executablestringplugins.<plugin>.mcp_servers.<server>.identity.urlstring | tableexact, prefix o regex.plugins.<plugin>.mcp_servers.<server>.identity.url.expressionstringregex. La expresión debe coincidir con el valor completo de la URL.plugins.<plugin>.mcp_servers.<server>.identity.url.matchexact | prefix | regexplugins.<plugin>.mcp_servers.<server>.identity.url.valuestringexact o prefix.remote_sandbox_configarray<table>hostname_patterns coincidan con el nombre de host resuelto reemplaza el valor de allowed_sandbox_modes de nivel superior para esa fuente de requisitos. Actualmente, las entradas específicas del host solo reemplazan los modos de sandbox.remote_sandbox_config[].allowed_sandbox_modesarray<string>remote_sandbox_config[].hostname_patternsarray<string>* para cualquier secuencia de caracteres y ? para un solo carácter.rulestable.rules. Las reglas definidas en los requisitos deben ser restrictivas.rules.prefix_rulesarray<table>pattern y decision.rules.prefix_rules[].decisionprompt | forbiddenrules.prefix_rules[].justificationstringrules.prefix_rules[].patternarray<table>token o any_of.rules.prefix_rules[].pattern[].any_ofarray<string>rules.prefix_rules[].pattern[].tokenstringsqlite_homestring (path)windowstablewindows.allowed_sandbox_implementationsarray<string>windows.sandbox (elevated y unelevated). La lista no debe estar vacía. Cuando ambas están permitidas y no se selecciona ningún modo, Codex prefiere elevated.windows.sandbox_private_desktopboolean