Чтобы пользоваться Codex CLI, установите его одной командой, запустите codex в папке проекта, войдите через аккаунт ChatGPT и опишите обычными словами, что нужно изменить. Codex читает код, правит файлы и запускает команды внутри проекта, а перед тем как выйти за пределы папки или в сеть, спрашивает вас.
Это основной цикл. Остальное — в этом руководстве: режимы подтверждений и sandbox, файл AGENTS.md, config.toml, MCP-серверы, команды на каждый день, возврат к сессиям и несколько привычек, с которыми Codex работает надёжнее. Всё здесь опирается на официальную документацию OpenAI по Codex по состоянию на октябрь 2026 года.
Что такое Codex CLI
Codex CLI — это агент для программирования от OpenAI, работающий в терминале. Он запускается локально, работает с папкой, из которой вы его открыли, и умеет запускать ваши тесты, линтеры и git. Тот же Codex есть в виде расширения для IDE, десктопного приложения и облачной версии, и вход у них общий. Если вы выбираете агента, подробные сравнения есть в статьях Claude Code или Codex и Codex или Gemini CLI. Коротко: Codex — это агент для программирования, а не автодополнение: вы ставите задачу, он планирует и выполняет её.
Шаг 1: установите Codex CLI
OpenAI предлагает скрипт установки для каждой платформы, а ещё CLI есть в npm и Homebrew.
| Платформа | Команда |
|---|---|
| macOS, Linux | curl -fsSL https://chatgpt.com/codex/install.sh | sh |
| Windows PowerShell | powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex" |
| Любая платформа с Node.js | npm install -g @openai/codex |
| macOS (Homebrew) | brew install --cask codex |
Для обновления снова запустите тот же скрипт, выполните codex update или воспользуйтесь пакетным менеджером (brew upgrade --cask codex). Проверьте, что всё установилось:
codex --version
Шаг 2: войдите
Перейдите в папку проекта и запустите Codex:
cd my-project
codex
При первом запуске Codex спросит, как вы хотите войти:
- Sign in with ChatGPT: используется ваш тариф ChatGPT, расход идёт в счёт его лимитов. Это обычный вариант и единственный, который открывает ещё и Codex cloud.
- API-ключ: используется OpenAI API-ключ с оплатой за токены. Удобно для CI или если вам нужна оплата по факту использования.
Всё это можно делать и из оболочки. codex login открывает вход в браузере, codex login --device-auth выдаёт код устройства для удалённой машины или машины без экрана, codex login status показывает, выполнен ли вход, а codex logout удаляет сохранённые данные. Чтобы войти по ключу, не вводя его вручную, передайте его через pipe: printenv OPENAI_API_KEY | codex login --with-api-key.
На момент написания Codex входит в ChatGPT Free, Go, Plus, Pro, Business, Edu и Enterprise. На старших тарифах лимиты выше; актуальные цифры смотрите на странице цен Codex от OpenAI. Узнать, сколько осталось, можно в любой момент через /status или /usage внутри сессии.
Шаг 3: первая задача
Начните с чего-то небольшого, но настоящего, чтобы посмотреть, как Codex работает:
Объясни, как устроена аутентификация в этом проекте, затем добавь тест
для сброса пароля. Когда закончишь, запусти тесты.
Codex прочитает нужные файлы, расскажет, что собирается сделать, изменит код и запустит тесты. Несколько вещей упрощают работу:
- Наберите
@, чтобы найти файл и прикрепить его к запросу. - Начните строку с
!, чтобы самому выполнить команду оболочки, например!git status. - Пока Codex работает, Enter добавляет указания к текущему ходу, а Tab ставит в очередь следующее сообщение на потом.
- Дважды нажмите Esc при пустом поле ввода, чтобы отредактировать предыдущее сообщение и продолжить с него.
/diffпоказывает, что изменилось, включая файлы, которые git ещё не отслеживает.
Скриншоты или макеты прикрепляйте через codex --image path/to/file.png или просто вставляйте в запрос.
Шаг 4: режимы подтверждений и sandbox
Эту часть стоит понять до того, как давать Codex крупные задачи. Codex сочетает две настройки: sandbox, который технически ограничивает, что могут сделать команды, и политику подтверждений, которая решает, когда Codex остановится и спросит вас.
| Режим | Флаги | Что может Codex |
|---|---|---|
| Auto (по умолчанию) | --sandbox workspace-write --ask-for-approval on-request | Читать, править и запускать команды внутри проекта; спрашивает перед выходом за его пределы или в сеть |
| Только чтение | --sandbox read-only --ask-for-approval on-request | Читать и отвечать; спрашивает перед любой правкой или командой, меняющей состояние |
| Неинтерактивно, только чтение | --sandbox read-only --ask-for-approval never | Никогда не спрашивает; для проверок в CI, которые ничего не должны менять |
| Полный доступ | --sandbox danger-full-access | Без sandbox; только на машине, которую не жалко потерять |
Внутри сессии /permissions переключает между Auto и Read Only. В sandbox workspace-write доступ к сети по умолчанию выключен; если он нужен вашим тестам, включите его в config.toml (см. ниже).
Если Codex должен писать во вторую папку, например в общую библиотеку рядом с проектом, используйте --add-dir, а не полный доступ. OpenAI прямо предупреждает: флаг --dangerously-bypass-approvals-and-sandbox (сокращённо --yolo) — только для отдельной изолированной виртуальной машины.
Sandbox — это настоящая изоляция на уровне ОС: Seatbelt в macOS, bubblewrap с seccomp в Linux и собственная песочница в Windows. Внутри WSL2 Codex использует линуксовую песочницу. О том, что вообще может пойти не так с агентами и как это ограничить, читайте в статье безопасность AI-агентов для программирования.
Шаг 5: напишите AGENTS.md
AGENTS.md — Markdown-файл с инструкциями, который Codex читает перед началом работы. Туда идёт всё, что иначе пришлось бы повторять в каждом запросе: как собирать и тестировать, стиль кода, какие папки не трогать.
Выполните /init в сессии, и Codex создаст первую версию. Хороший файл короткий и конкретный:
# AGENTS.md
## Команды
- Установка: pnpm install
- Тесты: pnpm test (запускать, прежде чем говорить, что задача готова)
- Линтер: pnpm lint
## Соглашения
- TypeScript в strict-режиме, без any.
- Новые API-маршруты кладём в src/routes, к ним нужен тест.
## Нельзя
- Не править файлы в src/generated.
- Не добавлять зависимости без спроса.
Codex ищет эти файлы в определённом порядке:
- Глобальный:
~/.codex/AGENTS.md(илиAGENTS.override.md, чтобы временно его заменить). Для ваших личных предпочтений. - Проектный: от корня git до текущей папки Codex берёт не больше одного файла на каталог, сначала проверяя
AGENTS.override.md, затемAGENTS.md.
Файлы склеиваются от корня вниз, поэтому инструкции из вложенной папки идут позже и перекрывают общие. Суммарный размер по умолчанию ограничен 32 КиБ (project_doc_max_bytes) — ещё один повод писать коротко. AGENTS.md — общий формат, его читают и другие агенты; как держать один набор правил для нескольких инструментов, объясняет статья CLAUDE.md и AGENTS.md.
Шаг 6: config.toml
Настройки Codex хранятся в TOML-файлах:
~/.codex/config.toml— ваши пользовательские настройки;.codex/config.tomlвнутри проекта — Codex загружает его, только когда вы отметили проект как доверенный.
Небольшой пример:
model_reasoning_effort = "medium"
web_search = "cached"
sandbox_mode = "workspace-write"
approval_policy = "on-request"
[sandbox_workspace_write]
network_access = true
model задаёт модель по умолчанию (выполните /model в сессии, чтобы увидеть, что доступно вашему аккаунту). model_reasoning_effort определяет, как долго модель думает. web_search может быть cached (по умолчанию), live или disabled; флаг --search включает живой поиск на один запуск.
Настройки применяются в таком порядке, от самого сильного: флаги командной строки и -c ключ=значение, конфиг проекта, именованный профиль, выбранный через --profile, пользовательский конфиг и в конце системный. Так что codex -c model_reasoning_effort="high" меняет effort на один запуск, не трогая файлы. Если непонятно, какое значение победило, /debug-config покажет все слои.
Шаг 7: подключите MCP-серверы
MCP позволяет Codex пользоваться внешними инструментами: поиском по документации, браузером, трекером задач, базой данных. Сервер добавляется одной командой:
codex mcp add context7 -- npx -y @upstash/context7-mcp
Всё после -- — это команда запуска сервера. Переменные окружения передаются через --env VAR=value. Для удалённого сервера используйте codex mcp add <имя> --url https://..., а если он требует OAuth, войдите через codex mcp login <имя>. codex mcp list покажет, что настроено.
Те же серверы можно прописать вручную в config.toml:
[mcp_servers.context7]
command = "npx"
args = ["-y", "@upstash/context7-mcp"]
Внутри сессии /mcp выводит активные серверы и их инструменты. Если тема для вас новая, начните со статьи что такое MCP-сервер. Держите список коротким: каждый сервер добавляет описания инструментов в контекстное окно.
Шаг 8: команды, которые стоит знать
Slash-команды работают внутри сессии:
| Команда | Что делает |
|---|---|
/init | Создаёт AGENTS.md для проекта |
/model | Выбор модели и reasoning effort |
/permissions | Переключение между Auto и Read Only |
/plan | Сначала план, потом реализация |
/status, /usage | Данные сессии и оставшиеся лимиты |
/compact | Сжимает разговор в краткое изложение, освобождая контекст |
/diff | Показывает текущий git diff |
/review | Просит Codex проверить рабочее дерево |
/mcp | Список MCP-серверов и инструментов |
/new, /clear | Начать новый разговор |
/resume, /fork | Продолжить прошлую сессию или ответвиться от неё |
/copy | Скопировать последний ответ |
И несколько подкоманд для оболочки:
| Команда | Что делает |
|---|---|
codex exec "..." | Выполняет задачу без интерактивного интерфейса, для скриптов и CI |
codex review --uncommitted | Проверяет незакоммиченные изменения (также --base <ветка> или --commit <sha>) |
codex resume | Выбрать недавнюю сессию и продолжить её |
codex fork --last | Ответвиться от последней сессии |
codex -C path/to/dir | Запуск в другой папке |
codex doctor | Проверка установки |
Для автоматизации главное — codex exec. Он выводит результат и завершается, принимает --json для машиночитаемого вывода и --output-last-message, чтобы сохранить финальный ответ в файл. В CI сочетайте его с sandbox, например codex exec --sandbox workspace-write "исправь ошибки линтера".
Шаг 9: возвращайтесь к сессиям и ветвите их
Codex хранит разговоры локально, так что закрытый терминал не означает потерянную работу:
codex resumeоткрывает список прошлых сессий.codex resume --lastсразу возвращает к последней сессии в текущей папке; добавьте--all, чтобы искать по всем папкам.codex fork(или/forkв сессии) копирует разговор в новый, и можно попробовать другой подход, не теряя исходный.- Для неинтерактивных запусков
codex exec resume --lastпродолжает последнюю сессиюexec.
Ветвление особенно полезно, когда Codex уже набрал хороший контекст по задаче, а вы хотите попробовать два решения из одной точки.
Советы для лучших результатов
- Коммитьте до и после. OpenAI сама советует делать контрольную точку в git перед задачей и после неё. Если изменение пошло не туда,
git restoreбыстрее, чем спорить с агентом. - Говорите, как проверить. «Запусти
pnpm testи исправь падения» работает лучше, чем «сделай, чтобы работало». - Планируйте крупные изменения. Для всего, что затрагивает больше пары файлов, используйте
/planи прочитайте план, прежде чем Codex начнёт править. - Одна задача — один разговор. Между несвязанными задачами начинайте заново через
/new: старый контекст стоит токенов и сбивает модель. - Сжимайте длинные сессии.
/compactоставляет главное и отбрасывает остальное. - Для параллельной работы — worktree. Два агента в одной папке перезапишут друг друга. Git worktree даёт каждому свою копию.
Когда одного терминала мало
Когда Codex станет частью рабочего дня, вам захочется больше одной сессии: одна чинит баг, другая пишет тесты, а может, нужен второй аккаунт, когда первый упрётся в лимит. Тут один терминал становится неудобным.
AgentVera — десктопное приложение для macOS, Windows и Linux, которое запускает Codex (и других CLI-агентов) в настоящих терминалах рядом друг с другом. Оно использует уже имеющийся у вас вход в Codex. Подробности — на странице Codex в AgentVera.
- Workspace: сетка агентов на проект, от 1×1 до 5×4. Модель и effort выбираются для каждого агента, список читается из Codex в реальном времени. После перезапуска агенты возвращаются к своим разговорам.
- Разрешения для каждого агента: вместо того чтобы помнить флаги, выберите Ask, Auto или Full access при создании агента.
- Worktrees: создайте worktree в панели Git и запустите в нём агента одним кликом.
- Переключение аккаунтов: у каждого аккаунта Codex своя домашняя папка, оставшиеся лимиты видны в строке состояния, а на Pro и Team цепочка аккаунтов переходит к следующему, когда кончается 5-часовой или недельный лимит.
- Менеджер MCP: настройте MCP-серверы один раз, и они подключаются к Codex при каждом запуске.
- Автоматическое код-ревью: пусть другой агент проверит изменения Codex перед слиянием.
Сетка, worktrees, код-ревью и MCP-менеджер доступны на бесплатном тарифе. Скачайте AgentVera и попробуйте на своём репозитории.
Подведём итог
Установите Codex, запустите codex, войдите через ChatGPT и начните с небольшой настоящей задачи. Оставьте режим Auto и переключайтесь на только чтение через /permissions, когда вам нужны лишь ответы. Правила проекта пишите в AGENTS.md, настройки по умолчанию — в config.toml, а MCP-серверы добавляйте, только когда они действительно нужны. Коммитьте до и после каждой задачи и возвращайтесь к работе через codex resume. Если хотите попробовать и агента Google, прочитайте как пользоваться Gemini CLI.