Codex CLI против Codex Cloud: десять критериев выбора под задачу

26 мин. чтения
BYBIT EARN
Крипта лежит?
Bybit Earn: процент капает каждый день
Открыть Earn

Задача сформулирована, проект открыт, палец над Enter. Дальше вопрос, который в документации нигде не задан прямо: набрать codex в терминале своего проекта или открыть Codex Cloud и отдать работу в облако. Ошибка тут не косметическая: одни задачи в облаке физически не поедут, потому что их данных там нет, а другие зря сожгут лимит тарифа на самой тяжёлой модели.

Коротко, если читать только это:

  • Граница проходит по git, а не по сложности задачи. Облако начинает работу с клона репозитория и переключения на ветку, поэтому незакоммиченные правки, локальный конфиг и файлы вне репозитория для него не существуют.
  • Секретов у облачного агента нет по конструкции: они доступны только setup-скрипту и удаляются до старта агента. Задача, которой нужен живой ключ в рантайме, остаётся локальной.
  • Интернета у облачного агента по умолчанию тоже нет — его включают списком разрешённых доменов, и это отдельное решение с отдельными рисками.
  • Модель в облаке выбрать нельзя. По официальной таблице доступности на 11 августа 2026 в Codex Cloud работает единственная модель — GPT-5.6 Sol; Terra, Luna и остальные доступны только локально.
  • Отдельного бюджета у облака нет: локальные сообщения и облачные чаты делят одно пятичасовое окно тарифа. «Отправлю в облако, чтобы не тратить лимит» — не работает.
  • Передача работы официально двусторонняя: codex cloud exec отправляет задачу из терминала, codex apply забирает готовый дифф обратно.

Дальше — критерии по одному, с цифрами и оговорками, а в конце короткое дерево решения на четыре вопроса.

Что меняется при переносе задачи из терминала в облако

Локальный запуск и облачная задача выглядят одинаково — вы описываете результат словами. Различие в том, из чего агент собирает картину мира.

BYBIT EARNЗаставь крипту работатьПроценты на USDT и BTC без блокировки — деньги остаются под рукой.Разместить

Локально Codex работает против вашей рабочей копии: те же файлы, та же ветка, те же установленные инструменты. Команды при этом идут не «с полным доступом к машине», а внутри песочницы операционной системы — OpenAI описывает это как ограниченное окружение вместо доступа по умолчанию, и отдельно подчёркивает, что песочница (технические границы) и одобрения (когда агент обязан спросить) — два разных слоя. Как именно эти слои настраиваются, разобрано в уроке про режимы одобрения и песочницу Codex; здесь важно одно: локально агент видит ваш реальный проект целиком.

Облачная задача устроена иначе. Codex клонирует репозиторий, переключается на нужную ветку и работает в изолированном контейнере на стороне OpenAI. Предусловия жёсткие: подключённый GitHub, выбранные репозитории и созданное окружение — только после этого появляется первая задача. Что происходит внутри и как из этого получается готовый pull request, подробно разобрано в уроке как Codex Cloud выполняет задачу и открывает pull request.

Практический вывод из этой пары: в облако уезжает не ваш компьютер, а состояние репозитория. Всё, что живёт вне репозитория — незакоммиченная правка, локальный .env, поднятая база, приватная утилита из /usr/local/bin — остаётся на месте. Отсюда и растут все десять критериев ниже.

Если вы ещё не выбирали между поверхностями вообще, начните с карты: три способа запустить Codex объясняет, что CLI, облако и Codex в ChatGPT — один продукт с разными входами.

Десять критериев выбора: таблица решения локально или облако

Таблица построена по свойствам задачи, а не по вкусам. В последней колонке — то ограничение, из которого следует вердикт, чтобы можно было проверить логику, а не верить на слово. Все проверки — по официальной документации Codex на 11 августа 2026.

Свойство задачиЛокально (CLI, IDE, приложение)Codex CloudЧем это задано
Нужен доступ к незакоммиченному кодуДа, работает с рабочей копией как естьНет: в контейнере только клон репозитория и веткаОблако клонирует репозиторий и делает checkout ветки чата
Нужны приватные секреты в момент работыДа, агент работает в вашем окруженииНет: секреты живут только в setup-скрипте и удаляются до старта агента«Secrets are removed before the agent phase starts»
Нужен интернет и внешний сервис под агентомДа, зависит от выбранного режима песочницыПо умолчанию нет; включается списком разрешённых доменов и методовИнтернет-доступ агента выключен по умолчанию
Задача длинная и должна идти без васДержит терминал и требует, чтобы машина не спалаПрофильный случай: задача идёт в фоне, вы возвращаетесь к результату«Delegate a longer task and return when it is ready»
На выходе нужен готовый pull requestВетку и PR делаете самиПрофильный случай: обзор диффа и PR из интерфейсаШаг 5 официального сценария облака
Нужно несколько попыток или задач параллельноОграничено вашей машиной; изоляция через worktreeПрофильный случай: параллельные окружения«Run tasks in parallel without tying up your local machine»
Важен расход лимита тарифаМожно взять дешёвую модель под поток мелких задачМодель фиксирована, окно лимита общееОбщее пятичасовое окно + модель облака не выбирается
Нужна работа офлайнТолько в режиме локальных моделей (--oss), иначе нетНетOSS-режим существует лишь у локальных клиентов
Репозиторий большой, окружение долго готовитсяИнструменты уже стоят на машинеРазово дорого, дальше выручает кеш контейнера до 12 часовКеш живёт до 12 часов и сбрасывается при правке setup-скрипта
Нужна быстрая обратная связь и вмешательствоПрофильный случай: видно каждый шаг, можно перебитьВы отключены от задачи по умолчаниюОблако рассчитано на асинхронную работу

Читать таблицу удобнее не сверху вниз, а по первому «нет»: если хотя бы одна строка запрещает облако, дальше сравнивать нечего. Ниже — четыре критерия, которые чаще всего решают спор, и они же чаще всего ломают ожидания.

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

Самый частый сценарий провала выглядит так: разработчик правит файлы час, потом отправляет задачу в облако — и получает работу поверх кода, которого у него уже нет. Причина не в агенте: облачное окружение стартует с клона репозитория и переключается на ветку чата. Ваша рабочая копия туда не попадает.

BYBIT EARNЗаставь крипту работатьПроценты на USDT и BTC без блокировки — деньги остаются под рукой.Разместить

Проверка перед отправкой занимает полминуты:

  1. git status — рабочее дерево чистое? Незакоммиченное в облако не уедет.
  2. git push — ветка есть на стороне GitHub? Облако берёт код оттуда, а не с диска.
  3. Файлы, которых нет в репозитории (локальный конфиг, дампы, сертификаты), задаче нужны? Если да, облако отпадает.
  4. Задача трогает то, что в .gitignore? Значит, работа локальная.

Если изоляция нужна, а уходить с машины нельзя, есть промежуточный вариант: worktree. В Codex в десктопном приложении ChatGPT для локальных окружений есть setup-скрипты, которые запускаются автоматически при создании нового worktree — именно потому, что новая директория ещё не настроена и в ней может не быть зависимостей. Это «локально, но в отдельной песочнице ветки», и по свойствам это ближе к локальному запуску, чем к облаку.

Секреты и ключи: почему облачный агент их не увидит принципиально

В облачном окружении секреты и переменные окружения разведены по фазам, и это не настройка, а архитектура. Секреты доступны только setup-скриптам: документация формулирует прямо — «for security reasons, secrets are removed before the agent phase starts». Переменные окружения, наоборот, живут весь чат, включая фазу агента.

Отсюда рабочее правило: секреты в облаке годятся, чтобы что-то поставить, и не годятся, чтобы чем-то пользоваться. Скачать приватный пакет из закрытого реестра на этапе подготовки — законный сценарий. Дать агенту ключ, которым он будет в процессе работы дёргать платёжный API или продовую базу, — нет, ключа у него в этот момент уже не будет.

Логика такого разделения понятна: агент читает содержимое репозитория и тексты из интернета, и всё это — потенциальный канал внушения (инъекции в промпт). Чем меньше у него на руках, тем меньше можно унести. Для вас это означает простое: задача с секретом в рантайме остаётся в локальном рабочем цикле Codex CLI в терминале, где ключи лежат там, где вы их и держите.

Интернет облачной задачи выключен по умолчанию: что от этого ломается

Второе ожидание, которое стоит поправить: «в облаке же есть интернет». У setup-фазы — да. У самой работы агента интернет выключен по умолчанию, и включается он не тумблером, а политикой.

Что доступно в настройке доступа (проверено 11 августа 2026):

НастройкаЧто означаетКогда осмысленно
Off (по умолчанию)Сети у агента нетЗадача целиком делается по коду репозитория
On, пресет «None»Пустой список, домены добавляете рукамиНужен один конкретный внешний адрес
On, пресет «Common dependencies»Куратор популярных доменов для разработкиЗадача доустанавливает зависимости уже под агентом
On, пресет «All (unrestricted)»Ограничений по доменам нетКрайний случай, максимальный риск
Ограничение методовОставить только GET, HEAD, OPTIONSАгенту нужно читать, но не отправлять данные

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

Отдельная деталь для тех, кто ставит зависимости: setup-скрипты, как формулирует документация, «всё равно выполняются с доступом в интернет, чтобы вы могли поставить зависимости». То есть «поставить всё заранее, работать без сети» — это не костыль, а штатный дизайн облачных окружений. У пресета «Common dependencies» и список известен заранее: там npmjs.com, pypi.org, crates.io, maven.org, docker.io, github.com и ещё около семидесяти доменов пакетных менеджеров и репозиториев.

Модель в облаке не выбирается: доступна только GPT-5.6 Sol

Это тот критерий, который в разборах «local vs cloud» не встречается вообще, а стоит он дороже всех остальных.

Официальная страница моделей говорит прямо: «Currently, you can’t change the default model for Codex cloud chats». Локально модель задаётся в config.toml строкой model (один и тот же файл у CLI, IDE-расширения и приложения). А в таблице доступности моделей по поверхностям на 11 августа 2026 картина такая:

МодельЛокально (CLI, IDE, приложение)Codex Cloud
GPT-5.6 Solдада
GPT-5.6 Terraданет
GPT-5.6 Lunaданет
GPT-5.3-Codex-Sparkданет
GPT-5.5данет
GPT-5.4данет
GPT-5.4 miniданет

Семь моделей локально — и одна в облаке. Что из этого следует: в облаке нельзя удешевить задачу выбором модели. Поток однотипной мелкой работы, для которого локально берут быструю Luna, в облаке пойдёт на самой тяжёлой модели семейства. Какая модель под какую работу — разбор в уроке какая модель Codex под какую задачу.

Здесь же — предупреждение о свежести: две модели, GPT-5.4 и GPT-5.4 mini, уходят из Codex при входе через ChatGPT 31 августа 2026; замена от OpenAI — gpt-5.6-terra и gpt-5.6-luna соответственно, а вход по собственному API-ключу это не затрагивает. Если в вашем config.toml или в сохранённых агентах прописан gpt-5.4, эта строка перестанет работать через считанные недели.

Одно окно лимитов на локаль и облако: сколько задач влезает

Популярное заблуждение: облако — это «другой счётчик». Официальная страница тарифов повторяет одну и ту же сноску под таблицей каждого плана: лимиты локальных сообщений и облачных чатов делят одно пятичасовое окно, и сверху могут действовать недельные лимиты.

Нормы за пятичасовое окно OpenAI публикует диапазонами — расход зависит от модели, размера и сложности задачи (на 11 августа 2026):

МодельPlus, локальных сообщений за 5 чPro 5x, локальных сообщений за 5 ч
GPT-5.6 Sol10–10050–500
GPT-5.6 Terra25–200125–1000
GPT-5.6 Luna250–20001250–10000
GPT-5.515–8075–400
GPT-5.4 (до 31.08.2026)20–100100–500
GPT-5.4 mini (до 31.08.2026)60–350300–1750

Отдельная оговорка про эту таблицу: колонка «Cloud chats» у всех перечисленных моделей стоит как «недоступно», то есть отдельных норм по облачным чатам OpenAI не публикует — документированы только общее окно и то, что в облаке работает модель по умолчанию. Дальше идёт уже наш вывод, а не цифра из документации: если в облаке доступна одна модель, самая тяжёлая в семействе, то расход облачной задачи логично сопоставлять с её нормой. На Plus это 10–100 сообщений за пять часов, тогда как та же работа, разбитая локально на быстрой Luna, живёт в бюджете 250–2000 — разница в один-два порядка. Отсюда стратегия: облако имеет смысл там, где одна задача заменяет много обращений, а не там, где обращений много.

Как растянуть само окно и что делать при его исчерпании — отдельная тема урока лимиты Codex и как их растянуть.

Про деньги стоит добавить оговорку. По интернету разошлась оценка «облачная задача ≈ 34 кредита против ≈ 7 локально, то есть переплата примерно в пять раз»; её приводит автор Codex Knowledge Base, и её повторяют другие блоги. Считать её прайсом нельзя по двум причинам: стоимости задачи в кредитах OpenAI на своих страницах не публикует вовсе (там нормы сообщений), а сам замер сделан на GPT-5.4 — модели, которая в облаке недоступна и уходит из Codex 31 августа 2026. Как порядок величины «облако дороже локали» ориентир годный, как цифра для расчёта — нет.

И ещё один критерий доступа, который надо проверить до всех сравнений: при входе по собственному API-ключу облачной половины выбора не существует. В карточке этого способа входа у OpenAI записано «Codex in the CLI, SDK, or IDE extension» и прямо указано «No cloud-based features (GitHub code review, Slack, etc.)». Кому какой способ входа и тариф подходит — в уроке про тарифы и доступ к Codex. На платном командном плане, наоборот, у облака появляется бонус: в описании Business заявлены «Larger virtual machines to run cloud chats faster», то есть скорость облачной задачи зависит и от тарифа.

Пять живых сценариев: где остаться локально, а где отдать в облако

ЗадачаКудаПочему именно так
Падает тест на текущей ветке, правки уже в рабочей копииЛокальноНезакоммиченного кода в облаке нет; воспроизведение требует вашего окружения
Миграция базы, надо прогнать её на локальной БД и посмотреть данныеЛокальноЖивой сервис и данные не уезжают в контейнер; секрет подключения агенту нужен в рантайме
Переименование сущности по всему репозиторию, границы понятны, тесты в CIОблакоЗадача полностью воспроизводится из состояния репозитория, на выходе нужна ветка и дифф
Задача из трекера, вы не за рабочим компьютеромОблакоРабота стартует из веба или интеграции и идёт без вашей машины
Обновить зависимости и проверить, что сборка живётОблако с оговоркойУстановка идёт в setup-фазе, где интернет есть; агенту сеть открывать не нужно

Шестой сценарий выбивается из пары «локально или облако», и о нём полезно знать: если вы не за компьютером, но задача обязана идти именно на вашей машине, есть Codex Remote — телефон управляет задачей, а выполняется она на подключённом Mac или PC, который должен быть включён и в сети. Одобрения команд при этом приходят на телефон. Как выглядит делегирование задач с телефона, разобрано в уроке Codex в ChatGPT и на телефоне.

Передача задачи в обе стороны: codex cloud exec и codex apply

Выбор поверхности — не приговор на всю задачу. Официальный справочник команд CLI описывает обе стороны перехода.

Локально → в облако. Команда codex cloud работает с облачными чатами прямо из терминала: без аргументов открывает интерактивный выбор, codex cloud exec отправляет задачу в настроенное окружение, codex cloud list отдаёт список последних чатов (в том числе в JSON — там есть id, url, title, status, updated_at, environment_id, environment_label, summary, is_review, attempt_total). Аутентификация та же, что у основного CLI; при неудачной отправке команда выходит с ненулевым кодом.

Порядок передачи, если работа уже начата у вас:

  1. Довести локальную часть до состояния, которое можно закоммитить, и запушить ветку — иначе облако не увидит сделанного.
  2. Сформулировать задачу как самостоятельную: у облачного агента не будет ни вашей истории терминала, ни ключей.
  3. Отправить codex cloud exec с нужным окружением и продолжать работать дальше.

Из облака → к себе. Команда codex apply применяет последний дифф облачного чата к локальному репозиторию: нужны аутентификация и доступ к чату, Codex печатает пропатченные файлы и выходит с ненулевым кодом, если git apply не прошёл — например, из-за конфликта. Это честное поведение, и на нём стоит выстроить привычку: перед codex apply сделать локальный коммит или отдельную ветку, чтобы конфликт разрешался осознанно, а не поверх незафиксированной работы.

Слабые места перехода между локальным Codex и облаком: три ловушки

Механика перехода описана, но стык остаётся самым сырым местом продукта. Три вещи, которые стоит знать до того, как вы на них наткнётесь:

  • Продолжить облачную задачу в облаке из десктопного приложения нельзя. В открытом баг-репорте #29694 (создан 23 июня 2026, по состоянию GitHub на 11 августа 2026 всё ещё открыт) описано: приложение видит облачную задачу, но в выборе места продолжения доступен только Local, а композер предлагает «create a new local task that references this cloud task». Обходной путь по словам автора репорта — веб-интерфейс: там то же облачное окружение видно и работает.
  • Конфликт с параллельной работой никто не разрешит за вас. Пока облачная задача шла, вы могли править те же файлы; codex apply в этом случае просто честно упадёт. Практика простая: либо не трогать локально то, что отдали в облако, либо принимать дифф в отдельную ветку.
  • Комбинация «облако плюс локальные правки» исторически была хрупкой. Баг #3028 (открыт 1 сентября 2025, закрыт 22 ноября 2025) описывал ситуацию, когда в расширении для VS Code при detached HEAD облачная задача не запускалась вовсе и падала с ошибкой в баннере. Проблема закрыта, но она хорошо показывает, где у этой связки тонко: нестандартное состояние git.

Отдельно про параллельные облачные задачи: сама возможность запускать их пачкой — это и есть профильное преимущество облака, и оно разбирается отдельно, вне этого урока.

Дерево решения за 30 секунд: четыре вопроса перед запуском

Если не хочется держать в голове таблицу, достаточно четырёх вопросов по порядку. Первое «стоп» и есть ответ.

  1. Как вы вошли в Codex? По API-ключу — облака нет, дальше вопросы не нужны.
  2. Всё нужное для задачи закоммичено и запушено? Нет и коммитить рано — работаем локально.
  3. Нужны ли задаче секреты или живой внешний сервис в момент работы? Да — локально (или заранее готовим всё в setup-фазе и оставляем агента без сети).
  4. Нужно ли уйти и получить готовую ветку с диффом, при этом задача воспроизводится из репозитория? Да — облако; нет — локально, там дешевле модель и быстрее обратная связь.

Что устареет первым в этом тексте: состав моделей и их доступность по поверхностям (уже назначен уход GPT-5.4 на 31 августа 2026), нормы сообщений в тарифах и состояние багов стыка. Версия Codex CLI на 11 августа 2026 — 0.147.0 (релиз от 7 августа 2026), а сама документация Codex переехала: адреса developers.openai.com/codex/* отдают постоянный редирект на learn.chatgpt.com/docs/*, и у любой страницы есть markdown-версия — достаточно добавить .md к адресу. Это самый быстрый способ сверить лимиты и таблицу моделей на день, когда вы это читаете.

FAQ

Codex работает локально без интернета?

Полностью офлайн — только в режиме локальных моделей. У локальных клиентов Codex есть OSS-режим: флаг --oss подключает провайдер Ollama или LM Studio, дефолт задаётся ключом oss_provider в config.toml, разовый выбор — флагом --local-provider. В обычном режиме код остаётся на машине, но сама модель работает на стороне OpenAI, поэтому сеть нужна. У облачных задач офлайн-варианта нет по определению.

Увидит ли облачная задача мои незакоммиченные изменения?

Нет. Облачное окружение клонирует репозиторий и переключается на ветку чата, поэтому в контейнер попадает только то, что есть в репозитории на стороне GitHub. Незакоммиченные правки, локальные конфиги и файлы из .gitignore останутся у вас. Перед отправкой стоит проверить git status и запушить ветку, иначе агент будет работать по устаревшему коду.

Можно ли выбрать модель для облачной задачи?

Нет. Документация Codex прямо говорит, что модель по умолчанию для облачных чатов изменить нельзя, а в таблице доступности на 11 августа 2026 у Codex Cloud отмечена единственная модель — GPT-5.6 Sol. Локально выбор есть: модель задаётся строкой model в config.toml для CLI, IDE-расширения и приложения, и туда попадают все семь моделей списка.

Тратит ли облачная задача тот же лимит, что локальная?

Да. Под тарифными таблицами OpenAI стоит сноска: лимиты локальных сообщений и облачных чатов делят одно пятичасовое окно, плюс могут действовать недельные ограничения. Отдельного облачного бюджета не существует. С учётом того, что в облаке работает только самая тяжёлая модель, окно там расходуется быстрее, чем при локальной работе на быстрой модели.

Что делать, если я вошёл в Codex по API-ключу, а нужна облачная задача?

Придётся входить через ChatGPT: в описании входа по API-ключу указаны только CLI, SDK и IDE-расширение, а облачные возможности (включая ревью в GitHub и интеграцию со Slack) для него прямо помечены как недоступные. Оплата по токенам API при этом остаётся отдельной моделью расходов и на пятичасовые окна тарифов ChatGPT не влияет.

Можно ли перенести незаконченную облачную задачу к себе на машину?

Забрать результат — да: codex apply применяет последний дифф облачного чата к локальному репозиторию и выходит с ненулевым кодом, если git apply не сработал. Продолжить саму облачную задачу из десктопного приложения на 11 августа 2026 нельзя — открытый баг #29694 описывает, что доступен только вариант Local; для продолжения в облаке используйте веб-интерфейс.

Курс «OpenAI Codex: агентный кодинг» · модуль «Метод работы». Полная программа и два маршрута обучения — на странице курса.

Предыдущий урок: Режимы одобрения и песочница · Следующий урок: Сессия Codex CLI: команды, контекст, откат

BYBIT COPY TRADING
Копируй профи
Bybit повторит сделки трейдера за тебя
Начать
Поделиться
Связаться:
Крипто- и data-аналитик, инженер-программист (факультет компьютерных наук ХНУРЭ). В IT с 2008 года: администрировал корпоративный мониторинг в «Vodafone Украина», семь лет разрабатывал и продвигал веб-проекты, пять лет руководил маркетингом на метриках — конверсия, CTR, ROI, LTV.Криптовалютными рынками занимаюсь с 2021 года: ончейн-метрики, токеномика, макроэкономические индикаторы. Разработал собственную data-driven модель анализа рынка на 30+ метрик. Стек — Python (pandas, NumPy, SciPy, matplotlib), математическая статистика и EDA; сбор и сверку данных автоматизирую AI-агентами.Принцип — «Don't trust, verify»: каждая цифра проверена по первоисточнику, ключевые — минимум по двум независимым; прогнозы — только сценарии с условиями. Тезис без данных не публикуется.