Claude Code вызывает Codex как инструмент — 5 MCP-серверов, которые превращают два агента в одну команду
Claude Code вызывает Codex как инструмент — 5 MCP-серверов, которые превращают два агента в одну команду
На Reddit тред "Anyone else using Claude Code + Codex together?" начинается с вопроса: «Я вручную копирую контекст между двумя агентами как human middleware — есть же способ лучше?» Есть. Claude Code может вызывать Codex CLI напрямую — как инструмент — через MCP-протокол.
TL;DR: Codex CLI подключается к Claude Code как MCP-сервер одной командой. Claude получает тулы
spawn_agentиspawn_agents_parallel, сам запускает Codex для ревью, генерации кода и параллельных задач. Никакого ручного copy-paste — агенты общаются через протокол.
Зачем это нужно: Claude Code силён в планировании, оркестрации и мульти-файловых рефакторингах. Codex CLI — в методичной реализации, ловле edge cases и code review. По замечанию Calvin French-Owen, который работал и над Codex, и с Claude Code: «Codex пишет код с заметно меньшим количеством багов — меньше dangling references, off-by-one ошибок и забытых регистраций компонентов. Но Claude лучше в делегировании через субагенты и оркестрации». Логичный шаг — пусть Claude управляет, а Codex исполняет.
Как это работает: MCP-протокол
Model Context Protocol (MCP) — открытый стандарт от Anthropic для подключения AI-агентов к внешним инструментам. Claude Code поддерживает MCP нативно: подключаешь сервер — и Claude получает новые тулы, которые может вызывать сам. Codex CLI имеет non-interactive режим codex exec, который принимает промпт и возвращает результат в stdout. MCP-серверы оборачивают эту команду в протокол, и Claude Code получает возможность запускать Codex как свой инструмент.
Схема выглядит так:
Claude Code (оркестратор)
│
├── собственные тулы (Read, Edit, Bash, Grep...)
│
└── MCP: codex-сервер
├── spawn_agent("Review src/auth/")
└── spawn_agents_parallel([
{"prompt": "Write tests for api/"},
{"prompt": "Fix lint errors in utils/"}
])
│
└── codex exec --sandbox read-only "..."
1. codex-as-mcp — самый простой вход
codex-as-mcp (146 звёзд) — минималистичный MCP-сервер на Python. Два инструмента, одна команда для установки.
Установка:
claude mcp add codex-subagent -- uvx codex-as-mcp@latest
Всё. Проверить — /mcp в Claude Code. Если Codex CLI установлен и аутентифицирован, готово.
Что Claude получает:
spawn_agent(prompt)— запускает один Codex-агент с промптом в текущей директорииspawn_agents_parallel(agents)— запускает несколько агентов параллельно
Под капотом каждый вызов выполняет:
codex exec --cd <рабочая директория> \ --skip-git-repo-check \ --dangerously-bypass-approvals-and-sandbox \ "<prompt>"
Пример использования: просто пишешь в Claude Code естественным языком:
Используй codex для параллельного ревью: первый агент проверяет src/auth/ на уязвимости, второй — src/api/ на breaking changes
Claude сам вызовет spawn_agents_parallel с двумя промптами, дождётся результатов и синтезирует отчёт.
Конфигурация через .mcp.json (если нужен контроль):
{ "mcpServers": { "codex-subagent": { "type": "stdio", "command": "uvx", "args": ["codex-as-mcp@latest"] } } }
2. Claude-Codex MCP — Claude как мозг, Codex как руки
Claude-Codex MCP Server идёт дальше. Вместо «отправь задачу в чёрный ящик» он даёт Claude гранулярный контроль на каждом шаге — чтение файлов, запуск тестов, линтинг, git-операции, и Codex только для генерации кода.
Архитектура:
Claude Code (стратегический оркестратор) ↓ Claude-Codex MCP Server (Python) ├── repo_read / repo_search / repo_write ├── codex_exec (генерация кода через Codex CLI) ├── quality_lint / quality_test ├── git_status / git_diff / git_commit └── security (сканирование секретов, валидация путей)
12 инструментов вместо двух. Claude может:
- Найти TODO-комментарии через
repo_search - Прочитать контекст через
repo_read - Отправить задачу в Codex через
codex_exec - Проверить diff через
codex_get_diff - Прогнать линтер через
quality_lint - Запустить тесты через
quality_test - Закоммитить только если всё зелёное
Ключевое отличие от codex-as-mcp: Claude видит каждый промежуточный результат и принимает решения между шагами. Codex не делает ничего, что Claude не одобрил.
Безопасность встроена: сканирование секретов (AWS ключи, GitHub токены, JWT, Stripe), валидация путей (блокирует ~/.ssh, /etc, .env), аудит-лог в logs/bridge.jsonl.
Установка:
git clone https://github.com/daviiidle/Codex-MCP.git cd claude-codex-mcp pip install -e . cp .env.example .env
Добавить в конфиг Claude Code:
{ "mcpServers": { "claude-codex-mcp": { "command": "python", "args": ["-m", "src.server"], "cwd": "/path/to/claude-codex-mcp", "env": {"REPO_ROOT": "/path/to/your/project"} } } }
3. @cexll/codex-mcp-server — npm-пакет с выбором модели
@cexll/codex-mcp-server — ещё один вариант, на этот раз через npm. Его фишка — выбор модели и structured change mode.
Установка одной командой:
claude mcp add codex-cli -- npx -y @cexll/codex-mcp-server
Выбор модели прямо из промпта:
use codex with model o3 to analyze complex algorithm in src/algo.py
use codex with model gpt-5 to refactor database layer
use codex with model o4-mini to add comments to utils.js
Кроссплатформенный (Windows, macOS, Linux с v1.2.4+), поддерживает @ для ссылок на файлы (explain the architecture of @src/), и structured change mode — Codex возвращает патчи в формате OLD/NEW, которые Claude может автоматически применить.
4. claude-octopus — мульти-AI оркестратор
claude-octopus — это уже не просто «Codex как тул», а полноценный оркестратор нескольких AI-провайдеров. Claude координирует, Codex реализует, Gemini ревьюит — и всё через один интерфейс.
Установка:
claude plugin marketplace add https://github.com/nyldn/claude-octopus.git claude plugin install octo@nyldn-plugins /octo:setup
Setup автоматически находит установленные CLI (codex, gemini) и настраивает OAuth.
Ключевые команды:
/octo:embrace— полный lifecycle: discover → define → develop → deliver/octo:parallel— параллельные задачи в изолированных git worktrees/octo:debate— структурированный «спор» между моделями/octo:factory— автономный пайплайн от спецификации до деплоя
Quality gate на 75% консенсусе: если три модели не согласны на 75% — работа не шипится. Codex отвечает за паттерны реализации, Gemini — за безопасность и альтернативы, Claude — за синтез и финальное решение.
32 специализированных персоны (security-auditor, backend-architect, ui-ux-designer), 50 скиллов, reaction engine, который мониторит CI-фейлы и автоматически эскалирует.
5. ai-cli-mcp — фоновые процессы для всех CLI
ai-cli-mcp (бывший claude-code-mcp) — MCP-сервер, который запускает любой AI CLI (Claude, Codex, Gemini) как фоновый процесс.
npm install -g ai-cli-mcp
Инструменты:
run(model, prompt, cwd)— запускает агент, возвращает PID мгновенноwait(pid)— ждёт завершенияlist_processes()— показывает запущенные и завершённые операцииget_result(pid)— забирает результатkill_process(pid)— убивает процесс
Отличие от других: асинхронность. Claude Code не блокируется на ожидании Codex — запускает задачу, получает PID, продолжает свою работу, потом забирает результат. Это важно, потому что Codex на xhigh reasoning может работать 10-15 минут.
Headless codex exec — если MCP не нужен
Если не хочется ставить MCP-сервер, Claude Code может вызывать Codex напрямую через Bash:
codex exec \ -c model="gpt-5.3-codex" \ -c model_reasoning_effort="xhigh" \ --sandbox read-only \ --ephemeral \ "Review src/auth/ for security vulnerabilities"
Аман Митталl создал Claude Code skill /run-codex именно на этом подходе — скилл спрашивает модель, уровень reasoning, тип задачи и запускает codex exec.
Для машиночитаемого вывода:
codex exec --json -o /tmp/review.json \ --sandbox read-only \ "Analyze api/ for breaking changes"
Этот вариант проще, но у него нет параллельных агентов и автоматического роутинга задач.
AGENTS.md + CLAUDE.md — общие инструкции
Оба агента должны знать правила проекта. Рекомендованный подход:
AGENTS.md — единый источник правды. Codex CLI, Cursor, Copilot, Gemini CLI читают его нативно. Claude Code тоже читает AGENTS.md как fallback, если нет CLAUDE.md.
CLAUDE.md — ссылается на AGENTS.md + добавляет Claude-специфику:
# Project See @AGENTS.md for build commands and conventions. # Claude Code-Specific - Delegate routine code reviews to Codex via MCP - Use subagents for codebase exploration - Run /self-review before PRs
Совет из shakacode docs: держи AGENTS.md до 150 строк — длинные файлы хоронят сигнал.
Подводные камни
Таймаут 60 секунд. Дефолтный таймаут MCP-вызова в Claude Code — 60 секунд. Codex на xhigh reasoning работает 5-15 минут. Если не увеличить таймаут — вызов оборвётся. В codex-as-mcp это решается через tool_timeout_sec = 600 в конфиге, но не все MCP-серверы об этом предупреждают.
--dangerously-bypass-approvals-and-sandbox. Большинство MCP-серверов используют этот флаг, чтобы Codex работал без интерактивных подтверждений. Название говорит само за себя — sandbox отключается на уровне ОС. Используйте только в репозиториях, которым доверяете. Claude-Codex MCP от daviiidle — единственный из пяти, который добавляет свои security gates поверх этого.
Двойной расход токенов. Каждый вызов Codex через MCP тратит токены на вашем OpenAI-аккаунте, а Claude Code тратит токены на Anthropic-аккаунте. По данным сообщества, комбинация Claude Max ($100/мес) + ChatGPT Plus ($20/мес) — минимальная рабочая конфигурация. Codex включён в ChatGPT Plus, так что дополнительных расходов нет, если вы уже платите за ChatGPT.
Контекст не шарится автоматически. Claude Code и Codex работают в отдельных контекстных окнах. MCP-вызов передаёт только промпт — Codex не знает, что Claude обсуждал с вами до этого. Решение: передавайте в промпте всё необходимое, или используйте файлы как промежуточный слой (Claude пишет план в plan.md, Codex читает его).
MCP-серверы — untrusted код. Praetorian продемонстрировали атаки на MCP-серверы: supply chain через npm/PyPI, перехват данных через chaining. Относитесь к каждому MCP-серверу как к непроверенной зависимости — аудитируйте код перед установкой.
Вердикт
Из пяти подходов самый практичный для старта — codex-as-mcp: одна команда на установку, два инструмента, параллельные агенты. Если нужен гранулярный контроль и security gates — Claude-Codex MCP от daviiidle. Если работаете с тремя+ провайдерами — claude-octopus, но это уже investment в настройку.
Headless codex exec через Bash — рабочий fallback без зависимостей, но без параллельности и роутинга. ai-cli-mcp полезен, если нужна асинхронность — запустил задачу и не ждёшь.
Реалистичный эффект: на сложных задачах (рефакторинг + ревью + тесты) связка сокращает цикл в 1.5-2 раза — не потому что агенты быстрее, а потому что исчезает ручное копирование контекста и переключение между терминалами.
Как попробовать
- Установите Codex CLI, если ещё нет:
npm install -g @openai/codex codex login
- Подключите простейший MCP-сервер:
claude mcp add codex-subagent -- uvx codex-as-mcp@latest
-
Проверьте подключение — в Claude Code наберите
/mcp, убедитесь чтоcodex-subagentактивен. -
Попробуйте первый вызов:
Используй codex чтобы проверить текущий проект на потенциальные баги
- Для параллельных задач:
Запусти два codex-агента параллельно: один пусть напишет тесты для src/api/, другой проверит src/utils/ на дублирование кода
Документация по MCP в Claude Code: code.claude.com/docs/en/mcp. Документация по codex exec: developers.openai.com/codex/cli/reference.