Руководство по использованию
Как устроен цикл агента Codex: опыт Datadog и 28-дневного релиза Sora для Android
Как работает внутренний цикл Codex CLI, чем именно пользуются производственные команды Datadog и OpenAI и как та же архитектура переносится на агентов генерации медиа на hiapi.
Codex помог четырём инженерам выпустить Android-приложение Sora за 28 дней. В Datadog сегодня более тысячи инженеров полагаются на него, чтобы ловить системные дефекты, которые раньше часто пропускали люди-ревьюеры. Обе истории выросли из одной и той же архитектуры: на вид простой управляющий цикл, обёрнутый вокруг языковой модели, набора инструментов и песочницы.
Если вы строите AI-ассистента для программирования, конвейер генерации медиа или любого агента, который должен действовать в мире, цикл агента Codex — самый чистый референс, который можно изучить прямо сейчас. В этой статье мы полностью разберём, как он работает, что реально делают с ним производственные команды и как тот же архитектурный паттерн переносится на агентов генерации медиа, которых вы можете строить на hiapi.
Статья основана на публичных инженерных материалах OpenAI: «Разбираем цикл агента Codex» (январь 2026), кейс-стади Datadog и обзор доставки Sora для Android. Цены платформы Hiapi, упомянутые ниже, актуальны на 2026-06.
Что такое цикл агента на самом деле
Цикл агента — это поток управления между вами, языковой моделью и инструментами, которые модели разрешено вызывать. С точки зрения пользователя один «ход» выглядит как одно сообщение в чате на входе и одно сообщение в чате на выходе. Но под капотом один ход может содержать множество обменов между моделью и внешними инструментами.
Как устроен один ход:
- Подготовка промпта. Агент собирает системный промпт, проектные инструкции (в Codex это файлы
AGENTS.md), историю диалога и новое сообщение пользователя. - Рассуждение. Модель возвращает либо финальное сообщение ассистента, либо вызов инструмента.
- Если это вызов инструмента, агент исполняет его в песочнице, захватывает результат, дописывает его в диалог и возвращается к шагу 2.
- Если это финальное сообщение ассистента — что-то вроде «Я добавил architecture.md, как вы просили», — ход завершается, и управление возвращается пользователю.
Ключевая особенность в том, что «вывод» — это не только сообщение ассистента, которое вы видите в терминале. Большая часть реального вывода — это побочные эффекты вызовов инструментов: записанные файлы, запущенные тесты, установленные пакеты. Сообщение ассистента — лишь сигнал завершения.
Именно поэтому цикл агента — это не просто «чат с лишними шагами». В чате на каждый ход приходится один обмен. А цикл агента может за один ход выполнить десятки циклов «рассуждение → инструмент → рассуждение», и пользователь увидит только завершающее сообщение.
Три свойства, которые ускоряют цикл
Наивная реализация описанного цикла работает, но через несколько ходов становится медленной и дорогой. Дизайн Codex решает эту проблему тремя идеями, достойными заимствования.
1. Кэширование префикса в Responses API. Каждый раз, когда агент разговаривает с моделью, промпт начинается с одного и того же длинного префикса: сначала системный промпт, затем AGENTS.md, затем ранний диалог. Первый запрос вычисляет и кэширует внутреннее ключ-значение состояние модели для этого префикса. Последующие запросы в той же сессии пропускают пересчёт для любого общего префикса.
Одно практическое следствие: не редактируйте AGENTS.md посреди сессии. Системный промпт обычно самый крупный единый кэшируемый блок, и его изменение инвалидирует кэш для остатка сессии. Собственные инженеры Codex называют это самой частой «самодельной» причиной замедления.
2. Результаты вызовов инструментов остаются внутри цикла, а не наслаиваются поверх него. Каждый вывод инструмента дописывается в тот же диалог. Это звучит очевидно, но означает, что модель полностью помнит каждую команду, которую запускала, каждую ошибку, которую видела, каждый файл, который проверяла — вам не нужно вручную ничего суммировать. Цена — контекстное окно растёт быстро; Codex справляется с этим автосжатием, когда диалог становится слишком длинным.
3. Завершение определяется по форме вывода модели, а не по счёту ходов. У агента нет страховки в виде максимального числа итераций. Пока модель продолжает发出 вызовы инструментов, он будет зацикливаться; как только модель выдаёт обычное сообщение ассистента, он немедленно останавливается. Это решение передано модели, что позволяет держать код оркестрации компактным.

Кейс первый: Datadog использует цикл для системного код-ревью
Кейс Datadog особенно полезен тем, что показывает, в чём цикл агента силён в производстве, а в чём нет.
Команда AI developer experience в Datadog хотела агента для код-ревью, который ловит тот тип дефектов, что пропускают люди-ревьюеры — не линт, не стиль, а межсервисные регрессии, обрывы производительности и изменения, которые воспроизводят реальные инциденты. Они отмечали, что большинство прежних инструментов вели себя как «продвинутый линтер». Они помечали поверхностные паттерны внутри одного диффа. У них не было модели окружающей системы.
Чтобы проверить агента перед раскаткой, команда построила тестовый стенд воспроизведения инцидентов: они восстановили pull request'ы, которые в прошлом приводили к инцидентам, скормили каждый Codex так, будто он только что пришёл на ревью, и спросили дежурных инженеров, изменил бы результат комментарий Codex.
Опубликованный результат: Codex дал полезную новую обратную связь примерно по 22% исторических инцидентов — больше, чем любой другой инструмент, который команда оценивала. Поскольку каждый pull request на тот момент уже прошёл человеческое ревью, этот тест по сути измерял «то, что ревьюеры тогда пропустили».
Сегодня более 1 000 инженеров Datadog используют его на каждом PR. Инженеры отвечают на комментарии 👍/👎 и либо правят код, либо пропускают предложение с обоснованием. Интересный дизайнерский выбор: Datadog измеряет влияние через обходной канал — посты инженеров в Slack об полезных находках — а не через формальные внутренние метрики инструмента. Команда рассматривает агента как усиление, а не как контролёра; он выдаёт сигналы, решение по-прежнему принимает человек.
Паттерн, который стоит перенять: цикл агента лучше всего проявляет себя в рассуждении в масштабе всей системы (зависимости, тесты, связанные сервисы), а не только по текущему диффу. Для этого ему нужны подходящие инструменты и подходящие права на чтение. Цикл агента — это шасси; поверхность инструментов и проектный контекст решают, сможет ли он выявить реальный риск.

Кейс второй: Sora для Android за 28 дней
История Sora для Android — более радикальная точка доказательства. С 8 октября по 5 ноября 2025 года команда из четырёх инженеров использовала Codex, чтобы продвинуть Sora из состояния «только iOS» до публичного релиза для Android — цикл в 28 дней, внутренняя сборка для сотрудников на 18-й день, публичный релиз десять дней спустя. Приложение возглавило Google Play; пользователи создали более миллиона видео за первые 24 часа. Доля крашей на релизе: 99,9% без крашей.
Команда откровенно рассказала, что сработало, а что — и это полезнее — не сработало.
Что не сработало — это очевидный промпт: «Собери Android-приложение Sora на основе кода iOS. Начинай.» Они попробовали и быстро прекратили. Результат был технически рабочим, но продуктовая ценность — низкой. По их словам, Codex «пока плохо выводит то, о чём ему не сказали» и без руководства с трудом принимает «глубокие архитектурные решения».
Что сработало — это использование Codex как семантического переводчика между платформами и построение вокруг него крепких лесов:
- Сначала они зафиксировали архитектурные паттерны проекта — навигацию, внедрение зависимостей, сеть — и вручную написали несколько примерных фич. Они задали стандарт для остальной кодовой базы.
- Они закодировали командные соглашения в файлах
AGENTS.md, чтобы вывод Codex оставался согласованным. - Они часто просили Codex обращаться к iOS-коду на Swift и существующему бэкенду и генерировать семантически эквивалентный Kotlin. Их вывод: «Будущее кросс-платформы — это Codex».
- Они относились к Codex как к «только что нанятому старшему инженеру» — люди отвечают за архитектуру, системный дизайн и пользовательский опыт; Codex берёт тяжёлую работу в чётко очерченных границах.
По сообщениям, на код, сгенерированный Codex, пришлось около 85%, а за четыре недели было израсходовано примерно 5 миллиардов токенов.
Здесь два урока, которые легко недооценить. Во-первых, качество агента ограничено качеством построенных вами лесов: примеры, AGENTS.md, чёткие границы. Во-вторых, для greenfield-проектов «маленькая команда плюс способный агент» побеждает «расширение инженерного штата» — наблюдение Фреда Брукса наконец получило контрпример в подходящих руках.

Переносимые паттерны
Если отбросить конкретику код-ревью и доставки Android, остаются четыре паттерна, которые стоит скопировать любой команде, строящей агента.
Сначала зафиксируйте паттерны, потом масштабируйте. Будь то паттерны навигации (Sora) или определение того, что считается «рискованным изменением» (Datadog), человеческая работа происходит на раннем этапе. Примерные фичи и стабильный AGENTS.md — это способ передать эти паттерны в каждый последующий ход, и именно их вознаграждает кэширование префикса.
Дайте агенту подходящую поверхность инструментов, а не самую большую. Ревьюеру Datadog нужно читать межсервисные данные. Переводчик Sora должен читать исходники iOS и бэкенд. Обе команды тщательно курировали поверхность чтения. Больший список инструментов не значит лучший.
Пусть люди отвечают за архитектуру, а агент — за реализацию. Оба кейса сходятся к этому разделению труда. Люди принимают структурные решения; агент заполняет в чётко очерченных границах. Перевёрнутое разделение — именно там, где команды теряют время.
Измеряйте по результатам, а не по метрикам инструмента. Datadog намеренно смотрит на реакции в Slack и исходы инцидентов, а не на собственную пропускную способность агента. Это держит цель оптимизации честной. Инструмент код-ревью, который оставляет много комментариев, но не меняет поведение при инцидентах, — не полезный инструмент.
Применение цикла к агентам генерации медиа
Архитектура цикла агента не эксклюзивна для кода. Тот же поток управления подходит всюду, где нужно, чтобы модель действовала, наблюдала и итерировала.
Платформа hiapi открывает все модели генерации медиа через единую асинхронную точку входа — POST /v1/tasks создаёт задачу генерации, GET /v1/tasks/:id забирает результат — поэтому шаг «действие» в цикле становится функцией из двух вызовов, которую вы пишете один раз и переиспользуете для всех моделей. Конкретно, вы можете построить агента видеопроизводства, чей цикл выглядит так:
- Агент получает бриф: «Создай шестисекундный продуктовый кадр, часы лежат на мраморе».
- Он собирает промпт и создаёт задачу
seedance-2-0черезPOST /v1/tasks, затем опрашивает ID задачи до завершения (на 2026-06 на платформе hiapi 480P стоит $0.15 за секунду видео, 720P — с коэффициентом 2.2× — указанный шестисекундный клип в 480P обойдётся в $0.90). - Он скачивает сгенерированное видео, прогоняет быстрый шаг ревью — «Действительно ли виден циферблат? Совпадает ли освещение с брифом?» — и затем либо принимает вывод, либо правит промпт.
- Если ревью проваливается N раз подряд, агент эскалирует пользователю, приложив лучший на данный момент результат и описание проблемы.
Та же форма подходит агенту генерации изображений: бриф → вызов text-to-image (например, gpt-image-2 по $0.03 за изображение в 1K или Nano-Banana-2 по $0.085 в 1K) → визуальная проверка → правка → повтор. Паттерн Codex «кэшируемый стабильный системный промпт и накопление выводов инструментов в диалоге» применим напрямую: поместите определение роли и бренд-гайд в системный промпт, и пусть цикл накапливает каждую попытку генерации и ревью как ходы в одном и том же потоке.
Несколько практических переносов опыта Codex на медиа-агентов:
AGENTS.mdпревращается в файл бренд-гайда. Стабильный, загружается один раз, никогда не редактируется посреди сессии. Именно это вознаграждает кэширование префикса.- Примерные фичи превращаются в референсные результаты. Вручную отобранные изображения «как выглядит хороший результат», с которыми сравнивает шаг ревью.
- Песочница превращается в лимиты скорости и расходов. Медиа-агент, не научившийся вовремя останавливаться, может накопить массу генераций. Как Codex по умолчанию ограничивает запись в файловую систему, так и вы устанавливайте лимит расходов на ход.
- Сигнал завершения точно такой же. Цикл заканчивается, когда шаг ревью возвращает «принять», а не очередной запрос на генерацию.
Если вы хотите сначала попробовать базовые модели, лежащие в основе таких циклов, пока не пишете логику оркестрации, страница цен hiapi перечисляет текущие цены за изображение и за секунду видео, а на страницах отдельных моделей есть Playground, где можно прогнать промпт, прежде чем решать, что подключать к агенту.
FAQ
Что такое цикл агента Codex?
Это поток управления внутри Codex CLI, который оркестрирует обмен между вами, моделью и инструментами, которые модели разрешено вызывать. Каждый «ход» может внутренне содержать несколько циклов «рассуждение модели → вызов инструмента» и заканчивается, когда модель выдаёт обычное сообщение ассистента, а не очередной вызов инструмента.
Почему кэширование префикса так важно для агентов?
Потому что каждый ход заново отправляет длинный префикс: системный промпт, проектные инструкции, историю диалога. Без кэша модель заново кодирует всё это на каждом запросе — медленно и дорого. С кэшем общий префикс вычисляется один раз и переиспользуется в последующих ходах той же сессии. Практическое следствие: не редактируйте проектные инструкции (например, AGENTS.md) посреди сессии, так как это инвалидирует кэш для остатка сессии.
Сколько инженеров нужно, чтобы выпустить что-то вроде Sora для Android?
Опубликованная OpenAI цифра — четыре инженера и 28 дней, по сообщениям Codex сгенерировал почти 85% кодовой базы, а весь проект израсходовал около 5 миллиардов токенов. Команда сознательно оставалась маленькой — ссылаясь на бруксовское «добавление людей к уже опоздавшему проекту делает его ещё более поздним» — и опиралась на агента в реализации.
Что именно Codex выявлял в оценке Datadog?
В методе «воспроизведения инцидентов» команда прогоняла через Codex PR, исторически приводившие к инцидентам, и спрашивала дежурных инженеров, изменила бы результат обратная связь. Codex дал действенную обратную связь примерно по 22% инцидентов — например, по таким проблемам, как межсервисные регрессии и изменения производительности, которые люди-ревьюеры пропустили, когда PR изначально попадал в код.
Могу ли я использовать тот же паттерн цикла агента для генерации изображений или видео?
Да. Этот архитектурный паттерн — подготовка промпта, вызов модели, исполнение инструмента, дописывание результата, повтор до завершения — не зависит от модели. Вы можете подключить его к точкам генерации медиа hiapi (модели изображений вроде gpt-image-2 или nano-banana-2, модели видео вроде seedance-2-0) и следовать тем же урокам: стабильный системный промпт для кэширования префикса, примеры для качества, лимиты расходов песочницы для безопасности и шаг ревью для определения завершения.
Что стоит класть в AGENTS.md?
Конкретно для Codex: проектные соглашения, команды сборки/тестов/линта, правила стиля кода и любые границы «не трогать». Опубликованные команды Sora и Datadog относились к нему как к вводному документу для агента — то, что вы рассказали бы старшему инженеру в первый день. Держите его стабильным в течение сессии, чтобы он оставался в кэше префикса.
Ключевые выводы
- Цикл агента Codex — это простой поток управления: подготовка промпта → рассуждение модели → необязательный вызов инструмента → дописывание результата → повтор, пока модель не выдаст обычное сообщение ассистента.
- Три детали реализации выводят его на производственный уровень: кэширование префикса, результаты вызовов инструментов, остающиеся в диалоге, и определение завершения по форме вывода модели.
- Datadog использует этот цикл для системного код-ревью более чем у 1 000 инженеров; его тестовый стенд воспроизведения инцидентов показал, что Codex уловил около 22% проблем, связанных с историческими инцидентами, которые пропустили люди-ревьюеры.
- OpenAI выпустил приложение Sora для Android силами четырёх инженеров за 28 дней, около 85% кода сгенерировал Codex, доля крашей на релизе — 99,9% без крашей — за счёт масштабных лесов из примеров и
AGENTS.md, а не промпта «иди и построй это». - Та же архитектура цикла агента чисто переносится на конвейеры генерации медиа, которые вы можете строить на hiapi: каждая модель text-to-image и text-to-video использует одну и ту же асинхронную форму
/v1/tasks, а подходы Codex к кэшированию префикса, песочнице и примерам один к одному переносятся на агентов для изображений и видео.
Похожие статьи
Все статьи →-
Руководство по использованию
Руководство по началу работы с seedream-5.0-pro/image-to-image: возможности, цены и ключевые моменты интеграции
Границы возможностей модели редактирования изображений ByteDance, принципы тарификации и практика инженерной интеграции
-
Руководство по использованию
Руководство по использованию seedream-5.0-pro text-to-image: границы возможностей, интеграция API и контроль затрат
Практический взгляд для разработчиков: от ключевых параметров до оценки стоимости $0.05 за изображение
-
Руководство по использованию
Руководство по началу работы с Hailuo 2.3 Fast для генерации видео из изображений: границы возможностей, цены и практика интеграции
Ключевые моменты выбора и интеграции модели MiniMax для генерации видео из изображений для разработчиков