Модуль 1 · Codex без человека в цикле · урок 1 из 14
Когда Codex работает сам
До сих пор в треке за Codex сидел человек: ставил задачу, одобрял команды, читал дифф. В этом курсе человека в цикле нет. Codex запускается из GitLab CI, по расписанию или из вашего собственного сервиса, а результат забирает программа. Это другой режим работы, и у него свои правила.
Что меняется без человека
В интерактивной сессии страховкой служат одобрения (approvals): агент спрашивает, вы отвечаете. В автоматизации спрашивать некого, поэтому всё решается заранее:
- Права задаются до запуска. Песочница (sandbox) и политика одобрений фиксируются флагами или конфигом. Если что-то не разрешено заранее, оно просто не выполнится.
- Результат читает программа. Нужен стабильный формат: JSON по схеме, поток событий, файл с итоговым сообщением.
- Входные данные чужие. Текст merge request, коммиты, логи и описания задач пишут люди, иногда посторонние. Для агента это потенциальный канал prompt injection.
- Секреты рядом. В CI лежат ключи и токены. Агент работает в том же окружении, и это надо учитывать в архитектуре пайплайна.
Если вы не проходили уроки про песочницу, начните с «Песочницы и одобрений» и «Песочницы всерьёз» — дальше мы на них опираемся.
Карта инструментов
| Задача | Инструмент | Урок |
|---|---|---|
| Разовый запуск из скрипта или job | codex exec |
codex exec |
| Ответ для программы | --json, --output-schema |
Ответ по схеме |
| Многошаговый сценарий | codex exec resume / fork |
Сессии в скриптах |
| Пайплайн в GitLab | codex exec в job |
GitLab CI |
| Пайплайн в GitHub | openai/codex-action@v1 |
GitHub Action |
| Ревью MR | интеграция с GitLab (beta) или свой бот | Ревью merge request |
| Регулярная работа | scheduled tasks, расписание пайплайнов | Задачи по расписанию |
| Codex внутри своего сервиса | Codex SDK (TypeScript, Python) | Codex SDK |
| Свой клиент с интерфейсом | App Server | App Server |
| Долгие задачи в облаке | облачные окружения | Облачные окружения |
Правило выбора простое: начинайте с самого узкого инструмента. Большинство задач агентства — проверка MR, разбор упавших тестов, сводка изменений — закрываются одним вызовом codex exec в job. SDK нужен, когда Codex становится частью вашей программы. App Server — когда вы строите полноценный клиент с потоком событий и одобрениями.
Чем закончится курс
Вы соберёте рабочий .gitlab-ci.yml с Codex, настроите ревью merge request, сделаете автопочинку упавших тестов с обязательной проверкой человеком и разберётесь, где в такой схеме дыры в безопасности. Факты сверены с документацией Codex на октябрь 2026 года. Флаги меняются от версии к версии, поэтому перед внедрением сверяйтесь с codex exec --help.
Попробуйте сами
10–15 мин на рабочем месте- Выпишите три повторяющиеся задачи вашей команды, которые делаются по одному и тому же сценарию: проверка MR, сводка для клиента, разбор логов. Для каждой отметьте по таблице выше, каким инструментом её закрыть.
- Проверьте, что у вас стоит свежий Codex CLI:
codex --version. Запуститеcodex exec --helpи найдите флаги--sandbox,--jsonи--output-schema.
Коротко
- В автоматизации нет одобрений: права, формат вывода и границы доверия задаются заранее.
- Входные данные из MR, коммитов и задач — потенциальный канал prompt injection.
- Базовый инструмент —
codex exec. SDK и App Server нужны для встраивания в свои программы. - Начинайте с самого узкого инструмента и самых узких прав.