Основы конфигурации

Изучите основы настройки локального клиента Codex

Codex считывает параметры конфигурации из нескольких расположений. Ваши личные настройки по умолчанию хранятся в ~/.codex/config.toml, а переопределения для проектов можно добавлять с помощью файлов .codex/config.toml. В целях безопасности Codex загружает проектные слои .codex/ только для проектов, которым вы доверяете.

Файл конфигурации Codex

Codex хранит пользовательскую конфигурацию в ~/.codex/config.toml. Чтобы ограничить область действия настроек определённым проектом или вложенной папкой, добавьте файл .codex/config.toml в свой репозиторий.

Чтобы открыть файл конфигурации из расширения Codex для IDE, выберите значок шестерёнки в правом верхнем углу, затем выберите Codex Settings > Open config.toml.

CLI и расширение для IDE используют одни и те же слои конфигурации. С их помощью можно:

Приоритет конфигурации

Требования ограничивают поведение, а значения конфигурации задают настройки по умолчанию. Доступ к локальному компьютеру через Work Cloud подчиняется следующим требованиям:

  • Между политиками: Политика с более высоким приоритетом имеет преимущество перед политикой с более низким приоритетом, даже если последняя более конкретна.
  • В рамках одной политики: Переопределения окружения для конкретной ОС имеют приоритет над переопределениями для всех ОС, а те, в свою очередь, — над настройками Global.
  • При локальном выполнении: Требования MDM и устаревшие требования для управляемых устройств имеют приоритет над Agent Security. Системный файл требований устройства имеет более низкий приоритет, чем Agent Security.
  • Для Work Cloud: В облачных контейнерах Work сохраняются существующие политики Work Cloud. Для Work с локальным доступом и dots поддерживаемая политика Global регулирует работу общего облачного оркестратора, если включена управляемая политика; применимые требования к локальному выполнению регулируют работу подключённого компьютера.

Для некоторых требований действуют правила объединения, зависящие от поля. Сведения об области действия политик и ограничениях среды выполнения см. в разделе Управляемая конфигурация, а о совместимости с Work — в справочнике по конфигурации.

Codex определяет значения в следующем порядке (от наивысшего приоритета к наименьшему):

  1. Флаги CLI и переопределения --config
  2. Файлы конфигурации проекта: .codex/config.toml, в порядке от корня проекта до текущего рабочего каталога (приоритет у ближайшего; только для доверенных проектов)
  3. Файлы профилей, выбранные с помощью --profile profile-name (~/.codex/profile-name.config.toml)
  4. Пользовательская конфигурация: ~/.codex/config.toml
  5. Управляемые из облака значения по умолчанию config.toml, если они предоставлены для рабочего пространства, в которое выполнен вход
  6. Системная конфигурация (при наличии): /etc/codex/config.toml в Unix
  7. Встроенные значения по умолчанию

Используйте этот порядок приоритетов, чтобы задать общие настройки по умолчанию в config.toml, а в файлах профилей оставить только различающиеся значения.

Облачная и системная конфигурации позволяют задавать каталоги плагинов и указывать, включены ли плагины по умолчанию. Эти настройки не связаны с принудительно применяемыми requirements.toml политиками. См. раздел Настройка каталогов плагинов и значений по умолчанию.

Если вы пометите проект как недоверенный, Codex пропустит проектные слои .codex/, включая локальную конфигурацию, хуки и правила проекта. Пользовательская и системная конфигурации продолжат загружаться, включая пользовательские и глобальные хуки и правила.

Сведения об однократных переопределениях через -c/--config (включая правила заключения строк TOML в кавычки) см. в разделе Расширенная конфигурация.

Распространённые параметры конфигурации

Ниже приведены некоторые параметры, которые изменяют чаще всего:

Модель по умолчанию

Выберите модель, которую Codex по умолчанию использует в CLI и IDE.

model = "gpt-6.1-sol"

Запросы на одобрение

Укажите, когда Codex должен приостанавливать работу и запрашивать разрешение перед выполнением созданных команд.

approval_policy = "on-request"

О различиях в поведении между on-request и never см. разделы Запуск без запросов одобрения и Типичные сочетания настроек песочницы и одобрений. Если в существующей конфигурации используется approval_policy = "untrusted", см. раздел Переход с упразднённой политики одобрения untrusted.

Уровень песочницы

Настройте объём доступа Codex к файловой системе и сети при выполнении команд.

sandbox_mode = "workspace-write"

Поведение каждого режима (включая защищённые пути .git, .agents, .codex и .aws, а также настройки сети по умолчанию) описано в разделах Песочница и разрешения, Защищённые пути в корневых каталогах с доступом на запись и Доступ к сети.

Профили разрешений

Codex также поддерживает именованные профили разрешений для многократного использования политик файловой системы и сети. Встроенные профили: :read-only, :workspace и :danger-full-access. Пользовательские профили используют таблицы [permissions.<name>] и соответствующее значение default_permissions. См. раздел Разрешения.

Режим песочницы Windows

В Windows отдавайте предпочтение MXC, если устройство и политика поддерживают этот вариант. Укажите прежнюю реализацию в качестве резервной:

[windows]
sandbox = "elevated" # Legacy fallback

[features]
prefer_mxc = true

Используйте unelevated только в том случае, если настройка с повышенными привилегиями недоступна и политика вашей организации это допускает. Ограничения совместимости и средства управления развёртыванием описаны в руководстве по песочнице Windows.

Режим веб-поиска

Codex по умолчанию включает веб-поиск для локальных чатов и выдаёт результаты из кеша веб-поиска. Этот кеш представляет собой индекс веб-результатов, поддерживаемый OpenAI, поэтому в режиме кеширования возвращаются заранее проиндексированные результаты без загрузки страниц в реальном времени. Это снижает риск внедрения инструкций через произвольный контент из сети. Считайте веб-результаты недоверенными данными. Если вы используете --yolo или другую настройку песочницы с полным доступом, веб-поиск по умолчанию получает результаты в реальном времени. Выберите режим с помощью web_search:

  • "cached" (по умолчанию) предоставляет результаты из кеша веб-поиска.
  • "indexed" разрешает внешний веб-доступ, только когда запрос допущен индексом поиска.
  • "live" получает из интернета самые свежие данные (аналогично --search).
  • "disabled" отключает инструмент веб-поиска.
web_search = "cached"  # default; serves results from the web search cache
# web_search = "indexed" # gate external web access through the search index
# web_search = "live"  # fetch the most recent data from the web (same as --search)
# web_search = "disabled"

Интенсивность рассуждений

Настройте интенсивность рассуждений модели, если она поддерживает такую возможность.

model_reasoning_effort = "medium"

Стиль общения

Чтобы исключить встроенные инструкции о стиле общения, задайте:

personality = "none"

Это удаляет раздел Personality из встроенных инструкций модели. Явно заданные пользовательские базовые инструкции не меняются. Прежние значения friendly и pragmatic больше не задают стиль. Codex больше не поддерживает команду /personality.

Раскладка клавиш TUI

Настройте сочетания клавиш терминала в разделе tui.keymap. Для выбранных действий редактора сообщений используются соответствующие привязки tui.keymap.global, если отдельные привязки отсутствуют; при наличии приоритет имеют контекстные привязки. Пустой список отменяет привязку действия.

[tui.keymap.global]
open_transcript = "ctrl-t"

[tui.keymap.composer]
submit = ["enter", "ctrl-m"]

[tui.keymap.chat]
interrupt_turn = "f12"

Среда команд

Управляйте переменными среды, которые Codex передаёт запускаемым командам. Используйте фильтры по ключам, чтобы сохранить только необходимые переменные:

[shell_environment_policy]
ignore_default_excludes = false

[shell_environment_policy.filters]
"PATH" = "include"
"HOME" = "include"

По умолчанию ignore_default_excludes имеет значение true, поэтому автоматическая фильтрация имён переменных, содержащих KEY, SECRET или TOKEN, не выполняется. Задайте значение false, если нужна такая автоматическая фильтрация. Правила исключения, порядок приоритетов и устаревшая конфигурация описаны в разделе Политика среды оболочки.

Каталог журналов

Переопределите каталог, в который Codex записывает локальные файлы журналов. Явная настройка log_dir также включает необязательный текстовый журнал TUI codex-tui.log в этом каталоге.

log_dir = "/absolute/path/to/codex-logs"

Для однократных запусков его также можно задать из CLI:

codex -c log_dir=./.codex-log

Флаги функций

Используйте таблицу [features] в config.toml, чтобы включать и отключать необязательные и экспериментальные возможности.

Распространённые флаги функций

Ключ По умолчанию Зрелость Описание
apps true Стабильная Включает интеграции приложений (коннекторов)
goals true Стабильная Включает сохраняемые цели и автоматическое продолжение
hooks true Стабильная Включает хуки жизненного цикла из hooks.json или встроенного [hooks]. См. раздел Хуки.
fast_mode true Стабильная Включает выбор режима Fast и путь service_tier = "fast"
memories false Экспериментальная Включает воспоминания
multi_agent true Стабильная Включает инструменты совместной работы субагентов
remote_plugin true Стабильная Включает удалённый каталог плагинов
shell_snapshot true Стабильная Создаёт снимок среды оболочки для ускорения повторных команд
shell_tool true Стабильная Включить инструменты выполнения команд
unified_exec true Стабильная Включить возобновляемое выполнение команд; отключить его можно только через управляемые требования
web_search true Устаревшая Устаревший переключатель; используйте параметр верхнего уровня web_search
web_search_cached false Устаревшая Устаревший переключатель, который при отсутствии значения сопоставляется с web_search = "cached"
web_search_request false Устаревшая Устаревший переключатель, который при отсутствии значения сопоставляется с web_search = "live"

Сведения о настройке хуков жизненного цикла см. в разделе Хуки.

Включение функций

  • В config.toml добавьте feature_name = true в разделе [features].
  • В CLI выполните codex --enable feature_name.
  • Чтобы включить несколько функций, выполните codex --enable feature_a --enable feature_b.
  • Чтобы отключить функцию, задайте для ключа значение false в config.toml.