Amiga
Оглавление курса · урок 3 из 16

Модуль 1 · Конфигурация · урок 3 из 16

Профили: настройки под разные задачи

Одна и та же конфигурация редко подходит для всего. Для глубокого ревью нужна модель посильнее и больше рассуждений, для переименования полей — быстрая модель, для скрипта в CI — только чтение и никаких вопросов. Профиль — это именованный набор отличий от вашего обычного конфига, который включается одним флагом.

Как устроен профиль сейчас

С версии Codex 0.134.0 профиль — это отдельный файл рядом с личным конфигом: ~/.codex/<имя>.config.toml (точнее, $CODEX_HOME/<имя>.config.toml). Внутри — обычные ключи верхнего уровня, без обёртки в таблицу. Имя может состоять из латинских букв, цифр, дефисов и подчёркиваний.

toml · ~/.codex/deep-review.config.toml
model = "gpt-6.1-sol"
model_reasoning_effort = "high"
approval_policy = "on-request"
sandbox_mode = "read-only"

Запуск:

bash
codex --profile deep-review
codex -p deep-review
codex exec --profile deep-review "Проверь изменения в ветке относительно main"

Codex загружает ~/.codex/config.toml, а сверху накладывает файл профиля. Поэтому в профиле достаточно записать только то, что отличается: всё остальное — MCP-серверы, настройки окружения, интерфейс — придёт из основного конфига.

Где профиль в иерархии слоёв

Вспомним порядок из урока про config.toml: флаги CLI → проектные .codex/config.toml → профиль → личный конфиг → облачные и системные настройки. Отсюда два практических следствия.

Проект сильнее профиля. Если в репозитории .codex/config.toml задаёт model, профиль её не поменяет. Когда профиль «не работает», первым делом откройте /debug-config и посмотрите, какой слой задал значение.

Флаг сильнее всего. codex -p deep-review -m gpt-6-luna возьмёт всё из профиля, но модель — из флага. Удобно для разовых экспериментов, не трогая файл.

Выбрать профиль можно только флагом --profile. Ключ profile = "..." в конфиге больше не поддерживается, а в проектном конфиге он вдобавок игнорируется из соображений безопасности: репозиторий не должен переключать ваши профили. Подкоманда codex features флаг --profile не принимает.

Набор профилей для агентства

Четыре профиля закрывают большую часть повседневной работы.

Ревью перед MR — сильнее модель, больше рассуждений, только чтение. Пример выше.

Рутина — быстрая модель для массовых простых правок: переименовать поле в моделях OctoberCMS, обновить переводы, поправить импорт.

toml · ~/.codex/quick.config.toml
model = "gpt-6-luna"
model_reasoning_effort = "medium"
model_verbosity = "low"

CI и скрипты — без интерактивных одобрений, только чтение, без лишнего вывода. Такой профиль удобен для codex exec в пайплайне GitLab.

toml · ~/.codex/ci.config.toml
approval_policy = "never"
sandbox_mode = "read-only"
model_reasoning_summary = "none"
web_search = "disabled"

[history]
persistence = "none"

Локальная модель — для экспериментов без отправки кода в облако (подробности в уроке про провайдеры).

toml · ~/.codex/local.config.toml
oss_provider = "ollama"            # или 1
model = "ваша-модель"              # имя из 3
web_search = "disabled"

Запускается вместе с флагом локального режима: codex --oss -p local.

Чтобы не набирать флаги, заведите псевдонимы оболочки:

bash · ~/.zshrc
alias cxr='codex -p deep-review'
alias cxq='codex -p quick'

Профиль конфигурации и профиль прав — разные вещи

В документации Codex 2026 года есть два «профиля», и их легко перепутать.

Профиль конфигурации Профиль прав (permission profile)
Что это Файл ~/.codex/<имя>.config.toml с любыми ключами Таблица [permissions.<имя>] с правилами файлов и сети
Как включить --profile <имя> default_permissions = "<имя>" или /permissions
Статус Стабильно Beta

Профиль конфигурации может, среди прочего, выбрать профиль прав через default_permissions. Но учтите: если в профиле конфигурации записан sandbox_mode, Codex использует старую схему песочницы и игнорирует профили прав. Подробно — в уроке про песочницу.

Когда профиля мало: отдельный CODEX_HOME

Профиль наследует ваш личный конфиг целиком, включая MCP-серверы с токенами и глобальный ~/.codex/AGENTS.md. Для служебного пользователя автоматизации иногда нужна полная изоляция — тогда меняют сам домашний каталог Codex:

bash
CODEX_HOME="$PWD/.codex-bot" codex exec "Составь список устаревших зависимостей"

В таком каталоге свой config.toml, свои учётные данные, своя история и свои профили. Для codex exec есть и флаг --ignore-user-config, который пропускает личный конфиг на один запуск. Автоматизацию подробно разбираем в курсе «Codex в автоматизации».

Если у вас старые профили

До 0.134.0 профили жили внутри config.toml:

toml
# Так больше не работает
profile = "deep-review"

[profiles.deep-review]
model = "gpt-5.5"
model_reasoning_effort = "high"

Новые версии такие таблицы просто не читают, и настройки из них перестают действовать. Миграция занимает минуту:

  1. Создайте ~/.codex/deep-review.config.toml.
  2. Перенесите туда ключи из [profiles.deep-review] без заголовка таблицы.
  3. Удалите таблицу и строку profile = ... из config.toml.
  4. Проверьте названия моделей: многие модели 2025 года и первой половины 2026-го выведены из Codex для входа через ChatGPT, в том числе GPT-5.5 — с 14 октября 2026.

Попробуйте сами

10–15 мин на рабочем месте
  1. Создайте ~/.codex/deep-review.config.toml по примеру выше и запустите codex -p deep-review в рабочем проекте. В /status убедитесь, что модель и песочница взялись из профиля.
  2. Запустите тот же профиль с -m другой модели и снова посмотрите /status: флаг должен перебить профиль.
  3. Если в вашем config.toml остались таблицы [profiles.*], перенесите их в файлы и проверьте каждый профиль с --strict-config.

Коротко

  • Профиль — файл ~/.codex/<имя>.config.toml с ключами верхнего уровня, выбирается флагом --profile / -p.
  • Профиль накладывается поверх личного конфига, но уступает проектному конфигу и флагам.
  • Таблицы [profiles.x] и ключ profile не работают с версии 0.134.0.
  • Профиль конфигурации и профиль прав — разные механизмы; sandbox_mode в профиле отключает профили прав.
  • Для полной изоляции автоматизации используйте отдельный CODEX_HOME.
Отметка хранится только в вашем браузере
Хотите связаться с владельцем
компании напрямую?
Дмитрий Тарасов
Дмитрий Тарасов
СЕО

НАПИСАТЬ

Написать в MAX