Skip to content

Migrating from Claude Code

📚 Навигация по серии: Предыдущая статья 〔31 Продвинутые техники и оптимизация скорости〕 описала приемы ускорения и оптимизации процессов разработки. В этой главе мы обратимся к пользователям, переходящим с Claude Code на Codex: вы узнаете, какие привычные подходы сохраняют силу, какие термины изменили названия, а какие функции уникальны для Codex. В следующей статье 〔33 Особенности работы на Windows〕 мы разберем специфику настройки окружения на этой операционной системе.

Короткий диалог, иллюстрирующий основные вопросы при переходе с Claude Code на Codex.

Знакомый разработчик, долгое время использовавший Claude Code, установил Codex и сразу засыпал меня вопросами: — Куда мне положить файл CLAUDE.md? Почему Codex в корневой папке его не видит? — Codex не использует имя CLAUDE.md. Этот файл здесь называется AGENTS.md, его содержимое ты можешь перенести почти без изменений. — А куда перенести правила разрешений allow / deny из settings.json? — Конфигурация в Codex настраивается в файле ~/.codex/config.toml в формате TOML. Логика прав доступа строится на концепциях «песочницы и подтверждений» (sandbox & approval), а не на allowedTools. — Что насчет неинтерактивного запуска скриптов вроде claude -p? И остались ли команды вроде /compact и /clear? — Команде claude -p соответствует codex exec. Большинство команд со слэшем совпадают по именам. Твои привычки работы сохранятся на 90%.

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

Прочитав эту статью, вы получите:

  • Понимание того, что 90% логики работы с Claude Code применимы к Codex, что снижает затраты на миграцию
  • Таблицу соответствия терминов Claude Code и Codex с комментариями к ключевым различиям
  • Описание трех ключевых расхождений: в файлах правил проектов, структуре конфигурации и модели разграничения прав доступа
  • Список уникальных возможностей Codex, отсутствующих в Claude Code
  • Практическое руководство по переносу инструкций из CLAUDE.md в AGENTS.md

⚠️ Параметры, имена команд и поведение систем в этой статье основаны на официальной документации Codex. Названия моделей и версии утилит могут меняться со временем, проверяйте их в выводе справки codex --help.


01 Привычные концепции сохраняют силу

Для начала снимем напряжение: переход с Claude Code на Codex — это не изучение новой технологии, а перенос существующей логики в другое оформление.

Оба инструмента представляют собой интерфейс командной строки (CLI) для ИИ-программирования, реализуют модель «цикла агента» (agentic loop) и имеют прямой доступ к локальной файловой системе проекта. Эти базовые принципы одинаковы для обеих систем.

Аналогия: переход со смартфона Android одного производителя на устройство другого бренда. Это не смена Android на iOS с полной перестройкой интерфейса. Все привычные жесты (звонки, сообщения, установка приложений) остаются прежними. Меняется расположение иконок в настройках, названия фирменных утилит и структура меню. Вам не нужно учиться пользоваться телефоном заново, достаточно потратить десять минут на изучение расположения основных элементов. Отношения между Codex и Claude Code устроены точно так же.

Какие привычки сохранятся при переходе:

  • Цикл «Думать → Делать → Проверить» — ИИ принимает задачу, строит план, вносит изменения и оценивает результат по той же схеме.
  • Аудит перед выполнением — привычка просить ИИ сначала прочитать код, составить план изменений и получить ваше одобрение работает и здесь.
  • Правила проекта в отдельном файле — концепция хранения специфических для репозитория инструкций в текстовом файле поддерживается обеими системами (различаются лишь имена файлов).
  • Команды со слэшем для контроля сессии — смена моделей, очистка контекста и проверка логов вызываются через символ /.

При моем первом переносе проекта на FastAPI с Claude Code на Codex 80% операций сработали на уровне мышечной памяти (вызов /status, переключение /model, планирование). Оставшиеся 20% касались имен конфигурационных файлов и параметров песочницы, которые я настроил за десять минут по документации.

💡 Резюме в одном предложении: Codex и Claude Code относятся к одному классу утилит. Вы можете использовать 90% накопленного опыта работы с ИИ, изменив лишь имена конфигурационных файлов и синтаксис настроек.


02 Справочная таблица соответствия терминов

Ниже приведена таблица сопоставления ключевых концепций Claude Code с терминами Codex.

Claude CodeCodexОписание связиОтличия
Правила проекта CLAUDE.mdAGENTS.mdСвод инструкций проектаИзменена логика наследования и переопределения (раздел 03)
Конфигурация ~/.claude/settings.json (JSON)~/.codex/config.toml (TOML)Глобальный файл настроекСмена формата с JSON на TOML, другие имена ключей (раздел 04)
Права доступа (allow/ask/deny)Sandbox (sandbox) + Approval (approval)Политика безопасностиПереход от белых списков команд к изоляции папок (раздел 05)
Неинтерактивный режим claude -pCLI codex execЗапуск в скриптахАналогичное назначение: запуск без TUI с выводом отчета
Наследование CLAUDE.mdНаследование AGENTS.mdГлобальные и локальные правилаДобавлен файл переопределения AGENTS.override.md
Протокол интеграции MCPMCPПодключение внешних базСовместимость по протоколу, различия в синтаксисе настроек
Под-агенты (Subagents)Под-агенты (Subagents)Делегирование задачСхожая логика, разные файлы конфигурации
Навыки (Skills)Навыки (Skills)Пакетные сценарииРазличия в структуре каталогов и инициализации
Команды чата (/model, /compact)Команды чата (/model, /compact)Управление сессиейИмена команд совпадают, за исключением управления правами (раздел 06)
Автоматическая память (Memory)Memories / ChronicleНакопление контекстаВ Codex память отключена по умолчанию и имеет региональные ограничения
Модели (Opus / Sonnet / Haiku)Семейство GPT-5.xВычислительное ядроФлагман gpt-5.5, легкая модель gpt-5.4-mini

Главная закономерность:

Все архитектурные концепции (MCP, под-агенты, навыки, правила проектов) перенесены в Codex. Основная задача при миграции — обновить названия файлов, синтаксис конфигураций и перестроить心智-модель безопасности.

Логика выбора моделей остается прежней: сложные задачи перенаправляйте на флагман gpt-5.5 (аналог Opus), а рутинные операции отдавайте gpt-5.4-mini (аналог Haiku). Подробнее о моделях читайте в 30-й статье.

💡 Резюме в одном предложении: Большинство инструментов перенесены в Codex без изменений логики. Различия касаются названий файлов правил (AGENTS.md), формата настроек (TOML) и модели управления песочницей.


03 Перенос инструкций: CLAUDE.mdAGENTS.md

Первое практическое различие — Codex не считывает файл CLAUDE.md. Файл инструкций проекта в Codex должен называться AGENTS.md.

Хорошая новость: вы можете перенести текстовое содержимое правил проекта без изменений. Описание стека, команды запуска тестов, правила форматирования кода и ограничения переносятся один к одному. Требование держать инструкции краткими и удалять то, что ИИ может считать из кода самостоятельно, сохраняет силу и для AGENTS.md (подробнее в 11-й статье).

Сравнение правил наследования и форматов:

КритерийClaude Code (CLAUDE.md)Codex (AGENTS.md)
Глобальные правила~/.claude/CLAUDE.md~/.codex/AGENTS.md
Правила репозиторияВ корне проектаВ корне проекта (AGENTS.md)
Правила вложенных папокСчитываются при переходе в папкуОбъединяются по цепочке от корня Git к текущей папке
Локальное переопределениеCLAUDE.local.md (вне Git)AGENTS.override.md (блокирует чтение AGENTS.md в папке)
Ограничение размераРекомендуется до 200 строкДо 32 КиБ на сборку (параметр project_doc_max_bytes)

Важные особенности миграции:

1. Изменен механизм локального переопределения правил. В Claude Code файл CLAUDE.local.md использовался для дополнения основных правил личными настройками разработчика. В Codex файл AGENTS.override.md полностью переопределяет правила текущей папки, блокируя чтение стандартного AGENTS.md.

2. Контроль размера файлов. Claude Code измеряет объем правил строками, а Codex — байтами. Суммарный объем прочитанных файлов по цепочке наследования не должен превышать 32 КиБ, иначе часть инструкций будет отсечена. Перед переносом удалите из правил исторические справки по проекту и другую информацию, не влияющую на написание кода.

3. Логика объединения правил. Правила в Codex склеиваются по иерархии папок, при этом инструкции вложенных папок имеют более высокий приоритет в случае конфликтов.

💡 Резюме в одном предложении: Содержимое CLAUDE.md переносится в AGENTS.md без изменения текста. Обратите внимание на смену механизма локальных файлов (AGENTS.override.md) и ограничение суммарного размера правил в 32 КиБ.


04 Настройки: settings.jsonconfig.toml

Второе различие — перенос глобальных конфигураций. Вы не можете скопировать настройки из settings.json напрямую, так как Codex использует другой формат файлов.

  • В Claude Code конфигурация хранится в ~/.claude/settings.json в формате JSON.
  • В Codex настройки прописываются в ~/.codex/config.toml в формате TOML.

Различия в формате:

НастройкаClaude Code (settings.json, JSON)Codex (config.toml, TOML)
Модель по умолчанию"model": "claude-..."model = "gpt-5.5"
Безопасность"permissions": { "deny": [...] }sandbox_mode = "..." + approval_policy = "..."
Структура разделовФигурные скобки { } и запятыеИмена секций [section] и знаки равенства
Кавычки для строкОбязательные двойные кавычкиДвойные кавычки

Пример настройки модели по умолчанию в Claude Code (JSON):

json
{
  "model": "claude-sonnet-4"
}

Аналогичная настройка в Codex (TOML):

toml
# ~/.codex/config.toml
model = "gpt-5.5"
model_reasoning_effort = "medium"

При написании TOML-файлов помните: значения присваиваются через знак равенства =, запятые в конце строк не ставятся, а вложенность задается секциями в квадратных скобках [section]. Ошибки синтаксиса в TOML-файле заблокируют запуск Codex.

Подробное описание параметров файла config.toml приведено в 18-й статье. Перенесите только те настройки, которые вы действительно переопределяли в Claude Code.

💡 Резюме в одном предложении: Перенос настроек из settings.json (JSON) в config.toml (TOML) требует ручного переписывания параметров в соответствии с синтаксисом TOML (использование =, секций и отказ от запятых в конце строк).


05 Модель безопасности: Списки разрешений vs Песочница и Подтверждения

Это самое важное ментальное различие между системами. Логика защиты в Codex построена иначе.

Безопасность в Claude Code опирается на два механизма:

  • Режимы разрешений (permission modes): от полного контроля default до полного доверия bypassPermissions с переключением через Shift+Tab.
  • Белые списки команд: перечисление разрешенных утилит в settings.json (например, блокировка rm).

В Codex разработчики отказались от белых списков утилит в пользу разделения контроля на два независимых параметра:

  • Песочница (sandbox) — определяет границы доступа к файловой системе и сети (read-only / workspace-write / danger-full-access).
  • Подтверждения (approval) — определяет частоту прерывания работы ИИ для одобрения операций пользователем (untrusted / on-request / never).

Аналогия: контроль расходов сотрудника. В Claude Code вы утверждаете каждую статью расходов отдельно (разрешен ли покупка этого товара). В Codex вы выделяете сотруднику лимит по карте (песочницу) и просите отчитываться только в случае превышения лимита (подтверждения). Это упрощает настройку и снижает количество рутинных прерываний работы ИИ.

Таблица сопоставления настроек безопасности:

Ожидаемый уровень защитыНастройка в Claude CodeНастройка в Codex
Только чтение (безопасный режим)Режим defaultПесочница read-only
Работа в проекте с запросом правРежим acceptEditsПесочница workspace-write + Подтверждения on-request
Полное доверие (без вопросов)Режим bypassPermissionsПесочница danger-full-access + Подтверждения never (или флаг --yolo без ограничений)
Блокировка конкретной утилитыБлок permissions.denyИспользование экспериментальных правил Starlark (метод prefix_rule)
Изменение настроек в сессииСочетание Shift+TabКоманда /permissions

Важные детали:

  • Отключение подтверждений (never) в Codex не расширяет права доступа песочницы. Вы можете настроить режим «работать только в папке проекта без подтверждений» (workspace-write + never).
  • Codex автоматически понижает права доступа до read-only при запуске в папках, не находящихся под управлением Git.
  • В режиме workspace-write доступ к сети по умолчанию заблокирован.

Подробно о безопасности и настройках песочницы читайте в 15-й статье.

💡 Резюме в одном предложении: Вместо списков разрешений для команд Claude Code, в Codex безопасность настраивается через независимые параметры уровня песочницы (границы доступа) и политики подтверждений (частота запросов к пользователю).


06 Команды в чате

Для управления ходом сессии в Codex используются те же команды со слэшем, что и в Claude Code.

ЗадачаКоманда в Claude CodeКоманда в CodexСтатус
Смена модели/model/modelСовпадает
Сжатие истории/compact/compactСовпадает
Очистить чат/clear/clearСовпадает
Проверка настроек/status/statusСовпадает
Создать файл правил/init (создает CLAUDE.md)/init (создает AGENTS.md)Совпадает
Показать diff/diff/diffСовпадает
Ревью изменений/review/reviewСовпадает
Настройка правКлавиша Shift+TabКоманда /permissionsРазличается

Ключевое отличие: для смены уровней разрешений в Codex введите команду /permissions в чате, вместо использования горячих клавиш Shift+Tab. Подробный разбор команд приведен в 12-й статье.

💡 Резюме в одном предложении: Команды чата со слэшем практически идентичны в обеих системах, за исключением смены уровней доступа, которая в Codex вызывается командой /permissions вместо нажатия Shift+Tab.


07 Уникальные возможности Codex

При переходе обратите внимание на функции, которых не было в Claude Code:

1. Файлы переопределения AGENTS.override.md. Позволяют временно отключать действие основного AGENTS.md в конкретных ветках разработки или локальных папках (подробнее в 11-й статье).

2. Функция Chronicle. Инструмент анализа содержимого экрана пользователя для формирования долгосрочной памяти. Находится в статусе research preview и имеет региональные ограничения (подробнее в 19-й статье).

3. Интеллектуальный выбор прав. Автоматическое определение уровня безопасности песочницы при старте в зависимости от наличия Git в папке проекта.

Обратите внимание: функция автопамяти (Memories) в Codex по умолчанию выключена, в отличие от Claude Code. Все критически важные правила фиксируйте в AGENTS.md, не полагаясь на оперативную память ИИ.

Сравнение особенностей систем:

❌ Чего нет в Codex (или настроено иначе)✅ Уникальные возможности Codex
Чтение файла с именем CLAUDE.md по умолчаниюФайл переопределения правил AGENTS.override.md
Постоянно включенная автопамятьФункция захвата контекста Chronicle
Настройка прав через списки утилит в JSONАвтоматический выбор уровня песочницы на базе Git

💡 Резюме в одном предложении: Codex предлагает функции AGENTS.override.md для переопределения правил, Chronicle для анализа экрана и автоматический выбор прав по статусу Git, но при этом требует явного включения автопамяти (Memories) в настройках.


08 Практика: перенос CLAUDE.md в AGENTS.md

Выполним ручной перенос правил проекта из формата Claude Code в формат Codex с проверкой чтения инструкций.

Требуется установленный Codex CLI.

Шаг 1: Создание тестового окружения с файлом CLAUDE.md

bash
mkdir migrate-demo && cd migrate-demo
git init

Создайте в папке файл CLAUDE.md со следующим типичным содержанием:

md
# migrate-demo Project Info

This is a FastAPI-based order management service. Established in 2023.
Originally built with Flask, then migrated to FastAPI for performance.

## Tech Stack
- Python 3.11 / PostgreSQL / pytest

## Build Commands
- `pytest` — run tests
- `ruff check .` — run lint

## Code Style
- All functions must have type hints.
- Use double quotes for strings.

## Rules
- Do not edit files in migrations/ directory.
- Ask before adding dependencies.

Шаг 2: Создание файла AGENTS.md с оптимизацией контента

Создайте файл AGENTS.md и перенесите туда полезные правила, опустив историческую справку о создании проекта (FastAPI считает эту информацию из кода, а история создания не влияет на написание новых методов):

md
# migrate-demo — FastAPI Order Service

## Tech Stack
- Python 3.11 / PostgreSQL / pytest

## Build Commands
- `pytest` — run tests
- `ruff check .` — run lint

## Code Style
- All functions must have type hints.
- Use double quotes for strings.

## Rules
- Do not edit files in migrations/ directory.
- Ask before adding dependencies.

Мы удалили описание истории создания проекта, сэкономив объем контекста для ИИ.

Шаг 3: Проверка чтения правил в Codex

Запустите команду в терминале:

bash
codex --ask-for-approval never "Summarize the current instructions."

Параметр --ask-for-approval never используется для подавления окон подтверждения при выводе отчета.

Ожидаемый результат: Codex выведет список правил из файла AGENTS.md (стек, команды тестов, требования к кавычкам и типам данных). Это подтверждает, что файл правил успешно прочитан и применен к текущей сессии.

Шаг 4 (дополнительно): Поддержка старых файлов

Если вы хотите, чтобы Codex считывал старые файлы CLAUDE.md в переходный период, пропишите параметр в ~/.codex/config.toml:

toml
# ~/.codex/config.toml
project_doc_fallback_filenames = ["CLAUDE.md"]

После перезапуска сессии Codex начнет распознавать файлы CLAUDE.md при отсутствии AGENTS.md.

💡 Резюме в одном предложении: Практический перенос включает шаги: создание тестового проекта → подготовка CLAUDE.md → перенос полезных правил в AGENTS.md без исторического контекста → проверка чтения правил ИИ → настройка fallback-файлов в config.toml при необходимости.


Итоги

Мы разобрали принципы миграции проектов и привычек разработки с Claude Code на платформу Codex.

Сводная таблица соответствия концепций:

КонцепцияВ Claude CodeВ Codex
Файл правил проектаCLAUDE.mdAGENTS.md
Локальные правилаCLAUDE.local.mdAGENTS.override.md
Глобальные настройки~/.claude/settings.json (JSON)~/.codex/config.toml (TOML)
Модель безопасностиУровни разрешений и белые спискиПараметры Sandbox и Approval
Команды в чатеГорячие клавиши Shift+Tab для правSlash-команда /permissions
Автопамять (Memory)Включена по умолчаниюВыключена по умолчанию (Memories)

Теперь вы умеете:

  • Переносить конфигурации из JSON в TOML-файлы настроек Codex.
  • Конвертировать файлы правил проектов из CLAUDE.md в AGENTS.md с оптимизацией их объема.
  • Работать с моделью безопасности Codex на базе песочниц и подтверждений.
  • Использовать команды со слэшем для контроля сессии и переключения прав доступа.
  • Настраивать обратную совместимость со старыми файлами правил в конфигурационном файле.

Накопленный опыт работы с Claude Code позволит вам быстро освоить возможности Codex и повысить эффективность разработки.


В следующей статье 33 · Особенности работы на Windows мы поговорим о развертывании Codex на операционной системе Windows. Мы разберем специфику настройки терминалов (PowerShell, Git Bash, WSL), особенности работы песочницы в среде Windows и пути обхода типичных ошибок совместимости путей файлов.


Рекомендуемое чтение