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 Code | Codex | Описание связи | Отличия |
|---|---|---|---|
Правила проекта CLAUDE.md | AGENTS.md | Свод инструкций проекта | Изменена логика наследования и переопределения (раздел 03) |
Конфигурация ~/.claude/settings.json (JSON) | ~/.codex/config.toml (TOML) | Глобальный файл настроек | Смена формата с JSON на TOML, другие имена ключей (раздел 04) |
Права доступа (allow/ask/deny) | Sandbox (sandbox) + Approval (approval) | Политика безопасности | Переход от белых списков команд к изоляции папок (раздел 05) |
Неинтерактивный режим claude -p | CLI codex exec | Запуск в скриптах | Аналогичное назначение: запуск без TUI с выводом отчета |
Наследование CLAUDE.md | Наследование AGENTS.md | Глобальные и локальные правила | Добавлен файл переопределения AGENTS.override.md |
| Протокол интеграции MCP | MCP | Подключение внешних баз | Совместимость по протоколу, различия в синтаксисе настроек |
| Под-агенты (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.md → AGENTS.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.json → config.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):
{
"model": "claude-sonnet-4"
}Аналогичная настройка в Codex (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
mkdir migrate-demo && cd migrate-demo
git initСоздайте в папке файл CLAUDE.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 считает эту информацию из кода, а история создания не влияет на написание новых методов):
# 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
Запустите команду в терминале:
codex --ask-for-approval never "Summarize the current instructions."Параметр --ask-for-approval never используется для подавления окон подтверждения при выводе отчета.
Ожидаемый результат: Codex выведет список правил из файла AGENTS.md (стек, команды тестов, требования к кавычкам и типам данных). Это подтверждает, что файл правил успешно прочитан и применен к текущей сессии.
Шаг 4 (дополнительно): Поддержка старых файлов
Если вы хотите, чтобы Codex считывал старые файлы CLAUDE.md в переходный период, пропишите параметр в ~/.codex/config.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.md | AGENTS.md |
| Локальные правила | CLAUDE.local.md | AGENTS.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 и пути обхода типичных ошибок совместимости путей файлов.