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

26 хв. читання
BINANCE SIMPLE EARN
Крипта лежить?
Simple Earn: відсоток нараховується щодня
Відкрити Earn

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

Стисло, якщо читати лише це:

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

Далі — критерії по одному, з цифрами та застереженнями, а в кінці коротке дерево рішення на чотири питання.

Що змінюється, коли завдання йде з термінала в хмару

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

BINANCE COPY TRADINGКопітрейдинг на BinanceВідкрита статистика трейдерів, старт з $10, вимкнення одним кліком.Обрати трейдера

Локально 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-скрипта
Потрібен швидкий зворотний зв’язок і втручанняПрофільний випадок: видно кожен крок, можна перебитиВи від’єднані від завдання за замовчуваннямХмару розраховано на асинхронну роботу

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

Незакомічений код: хмара бачить лише те, що є в репозиторії

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

BINANCE COPY TRADINGКопітрейдинг на BinanceВідкрита статистика трейдерів, старт з $10, вимкнення одним кліком.Обрати трейдера

Перевірка перед відправленням займає пів хвилини:

  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 до адреси. Це найшвидший спосіб звірити ліміти й таблицю моделей на день, коли ви це читаєте.

Часті запитання

Чи працює 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: команди, контекст, відкат

BINANCE SIMPLE EARN
Крипта лежить?
Simple Earn: відсоток нараховується щодня
Відкрити Earn
Поділитися
Зв'язатися:
Крипто- та data-аналітик, інженер-програміст (факультет комп'ютерних наук ХНУРЕ). В IT з 2008 року: адміністрував корпоративний моніторинг у «Vodafone Україна», сім років розробляв і просував веб-проєкти, п'ять років керував маркетингом на метриках — конверсія, CTR, ROI, LTV.Криптовалютними ринками займаюся з 2021 року: ончейн-метрики, токеноміка, макроекономічні індикатори. Розробив власну data-driven модель аналізу ринку на 30+ метрик. Стек — Python (pandas, NumPy, SciPy, matplotlib), математична статистика та EDA; збір і звірку даних автоматизую AI-агентами.Принцип — «Don't trust, verify»: кожна цифра перевірена за першоджерелом, ключові — щонайменше за двома незалежними; прогнози — лише сценарії з умовами. Теза без даних не публікується.