
В одном абзаце: инжиниринг циклов означает, что вы перестаёте быть человеком, который пишет промпты агенту, и начинаете строить систему, которая пишет их за вас.
Она запускается по триггеру, выполняет работу в изолированном пространстве, использует второго агента для отклонения плохого результата, записывает произошедшее на диск и завтра продолжает с места остановки.
В этом руководстве разобрано, откуда появилась идея, какие четыре типа циклов есть в Claude Code, как по порядку построить первый цикл и какие четыре счёта циклы выставляют вам, пока вы спите.
Версия за 60 секунд
Отправной факт
Март 2026 года. Андрей Карпаты отправляет в GitHub три файла — суммарно около 630 строк.
В одном была модель. Второй оценивал её. Третий сообщал агенту, какой файл ему разрешено менять. Затем Карпаты закрыл ноутбук.

Через два дня эта конструкция провела примерно 700 экспериментов и нашла 20 улучшений для модели, которую он вручную настраивал два десятилетия.
Одним из них оказался отсутствующий скаляр в тракте внимания. Линтер такое не находит. Внимательный инженер мог бы заметить, но за двадцать лет никто не заметил.
Промпт внутри был обычным. Всё важное находилось в трёх окружающих файлах: выбрать следующий эксперимент, запустить его, оценить, сохранить изменение или откатить, повторить.
Генеральный директор Shopify запустил похожую ночную конструкцию на внутренней модели и проснулся с приростом качества на 19% — при этом модель была вдвое меньше.
Людям становится скучно примерно на двенадцатом эксперименте. Циклу не бывает скучно.
Три человека, одна неделя, никакой координации между ними. Обычно это означает, что почва уже сдвинулась, а все просто стояли на ней.
Тем временем ваша подписка, вероятно, используется на десять процентов мощности: одно окно, одна задача, один человек сидит и ждёт окончания ответа.
1. Где находится инжиниринг циклов
Каждые несколько месяцев появляется очередной «X-инжиниринг», и все закатывают глаза. Этот термин заслуживает места, потому что четыре понятия складываются друг на друга, а не заменяют друг друга.
С каждым этажом единица становится крупнее: одно предложение, одно окно, один запуск, затем система, продолжающая работать без человека, который отбивает время.
Первые три уровня предполагают, что вы сидите за клавиатурой и направляете агента. Четвёртый снимает это предположение.
Разделять уровни важно по практической причине: каждый ломается на своём временном масштабе. Плохой промпт проявляется за секунды. Плохой контекст — в ответе. Плохая обвязка сжигает один запуск. Плохой цикл меняет код в три часа ночи, передаёт ошибку в следующий запуск, и никто не замечает её неделю.
Чем выше этаж, тем дальше вы от места событий и тем дольше ошибки накапливаются, прежде чем кто-нибудь их обнаружит.

2. Из чего построен цикл
Промпт — это выборка. Цикл — контроллер.
Если убрать терминологию, у каждого рабочего цикла есть одни и те же пять частей:
- Триггер — то, что запускает проход: ваше сообщение, часы, событие, вебхук. Без него часами всё ещё остаетесь вы.
- Работа — агент собирает контекст, действует и читает полученный результат.
- Шлюз — нечто без вкусовых предпочтений, способное отклонить результат: набор тестов, сборка, проверка типов, код выхода линтера. Без него агент в каждом цикле проверяет сам себя — с огромной теплотой.
- Состояние — файл вне диалога, где записано, что сделано и что будет дальше. Без него завтра начинается с нуля.
- Остановка — условие завершения запуска плюс жёсткий предел на случай, когда условие никогда не наступит. Без него система тратит деньги, пока это не заметит человек.
Один оборот настоящего цикла по порядку:
- Обнаружить — определить, что должен сделать текущий запуск.
- Передать — отдать задачу агенту в его собственном изолированном рабочем пространстве.
- Проверить — второй агент с другими инструкциями пытается сломать результат.
- Сохранить — итог попадает на диск, а не остаётся в чате.
- Запланировать — назначить следующий запуск и перенести туда сегодняшние остатки.
Уберите любой из этих элементов — и конструкция либо остановится, либо будет крутиться на месте, пока счётчик расходов продолжает работать.

3. Четыре типа циклов в Claude Code
Команда Claude Code классифицирует циклы по двум вопросам: что запускает проход и что его завершает. Ответы подсказывают, к какой команде обратиться.
По ходам: улучшите проверку
Обычный агентный цикл, который вы уже запускаете ежедневно. Он становится лучше, если записать проверку в SKILL.md: тогда Claude оценивает результат как ревьюер, а не останавливается после успешного редактирования.
---
name: verify-frontend-change
description: Полностью проверять любое изменение UI перед завершением.
---
1. запустить dev-сервер и открыть изменённую страницу
2. нажать новый элемент управления, подтвердить изменение состояния,
сделать скриншоты до и после
3. консоль браузера: ноль новых ошибок и предупреждений
4. записать профиль производительности и проверить Core Web Vitals
если любой шаг не пройден, исправить и повторить с шага 1
Чем измеримее эти шаги, тем меньше у Claude возможностей убедить себя закончить раньше времени.

По цели: /goal
/goal поднять оценку Lighthouse главной страницы до 90 или выше,
остановиться после 5 попыток
Работоспособность создаёт тот, кто принимает решение. После каждого хода небольшая быстрая модель читает транскрипт, отвечает «да» или «нет» и возвращает однострочную причину, которая становится ориентиром для следующего хода.
Поэтому условие «все тесты в test/auth проходят, а шаг линтера чист» выдерживает двадцать ходов. Условие «код выглядит чистым» рушится на первом.
По времени: /loop и /schedule
/loop 5m проверить мой PR, обработать комментарии ревью
и исправить падающий CI
/loop живёт на вашем компьютере. /schedule переносит ту же форму в облако как рутину, которая продолжает работать с закрытой крышкой ноутбука.
Проактивный: все уровни вместе
/schedule каждый час:
проверять канал project-feedback на новые сообщения об ошибках
/goal:
не останавливаться, пока каждый найденный в этом запуске отчёт
не будет классифицирован, обработан и снабжён ответом.
при исправлении ошибки исследовать три решения в параллельных worktree
и передать их судье для состязательного ревью.
Одна команда, четыре примитива: облачный триггер, сформулированная линия финиша, изолированные параллельные рабочие пространства и ревьюер, приходящий со свежим контекстом.
⚠️ Две команды постоянно путают. /loop перезапускает задачу по таймеру. /goal работает, пока не выполнится условие. Планирование и остановка — разные задачи, и большинство сломанных циклов смешивают их.
4. Оценщик: часть, которую пропускают все
Построить нечто, что запускается, — лёгкая половина. Трудная половина — поместить внутрь нечто, способное сказать «нет».
Инженер Anthropic Притхви Раджасекаран столкнулся с этим при создании долгоживущих приложений: попросите агента оценить собственную работу — и он уверенно её похвалит, даже когда человеку видно, что качество посредственное.
Внутри цикла проблема накапливается. Каждый круг, в котором автор решает «достаточно хорошо», — это очередной круг согласия с самим собой.
Сначала Раджасекаран попробовал очевидное решение: заставить генератор строже относиться к собственному результату. Получилось плохо, а полезным оказался вывод: настроить отдельного скептика гораздо проще, чем сделать автора самокритичным. Форму он взял у GAN: одна сеть создаёт, другая ищет изъяны.
Именно поэтому Раджасекаран подключил оценщик к Playwright MCP. Вердикт меняется с «JSX выглядит нормально» на «я нажал вход, переход состоялся, вот скриншот».
/goal поставляет эту идею как продуктовый примитив: завершение определяет свежая модель, которая не участвовала в создании работы. Банки десятилетиями живут по тому же правилу: человек, вводящий крупный перевод, и человек, утверждающий его, не могут быть одним лицом.
Генератор задаёт то, что способен произвести ваш цикл. Оценщик задаёт то, что цикл отказывается производить.

5. Фильтр: подходит ли задача для цикла
Одновременно должны выполняться четыре условия. Нарушьте одно — и цикл отнимет больше, чем отдаст.
- Задача повторяется не реже раза в неделю. Смотрите в календарь, а не на намерения.
- Плохой результат можно отклонить автоматически. Назовите команду, которая завершится неудачей:
npm test,tsc, сборка. - Бюджет токенов переживёт потери. Циклы повторяют попытки, перечитывают и блуждают, поэтому закладывайте запуски, которые ничего не выпустят.
- У агента есть инструменты старшего инженера. Журналы, среда воспроизведения, способность запустить написанное и увидеть поломку.
Быстрее всего окупаются негламурные циклы: разбор падений CI, PR с обновлением зависимостей, проходы «линтер и исправление», воспроизведение нестабильных тестов, черновики «задача → PR» там, где есть реальное покрытие.
Одна строка, которую стоит приклеить к монитору: если пропускная способность ревью уже была вашим потолком, цикл удлинит очередь, а не сократит её.
6. Как по порядку построить первый цикл
Здесь последовательность важнее инструментов. Прыжки вперёд приводят к тому, что циклы взрываются, пока все спят.
- Сделайте один ручной запуск надёжным. Выполняйте задачу вручную вместе с Claude, пока результат не станет повторяемым и скучным. Нельзя автоматизировать то, что нельзя повторить.
- Запишите запуск как навык. Соглашения, шаги сборки, обходной путь для того самого нестабильного раннера. Пусть расписание запускает именованный навык, а не стену вставленных инструкций: инструкции внутри cron-задачи никто и никогда не обновляет.
- Добавьте файл состояния.
STATE.mdв корне репозитория. Под контролем версий, с читаемым diff, скучный. - Окружите его шлюзом и пределом. Объективная проверка плюс ограничение ходов. На этом шаге цикл приобретает способность завершаться неудачей.
- Затем назначьте расписание.
/loop, пока вы ещё наблюдаете./schedule, когда уже доверяете работе без присмотра. - Подключите субагента-проверяющего. Второй агент в
.claude/agents/, со своими инструкциями и, в идеале, другой моделью.
# Состояние цикла · ci-triage
## Последний запуск
2026-07-28 03:30 UTC · 7 сбоев классифицировано,
3 исправления подготовлено, 4 эскалировано
## В работе
- claude/fix-auth-token-refresh
- тесты проходят локально, ожидается CI
## Эскалировано людям
- src/billing/refund.ts
- ломается тремя способами, первопричина неясна
## Усвоенные уроки — писать здесь, а не в чате
- 2026-07-27: tests/e2e/checkout требует секрет Stripe webhook.
пропустить, если его нет
Память заканчивается вместе с сессией. Файл в репозитории переживает её. Контекст — то, что агент видит в этом круге; память — то, что переживает очистку окна. И только одно из двух остаётся у вас.
Для длинных запусков объедините файл состояния с постоянным VISION.md. STATE.md хранит позицию, VISION.md — пункт назначения. Второй файл не даёт цели уплыть примерно к 47-му ходу.
Дайте параллельным агентам изоляцию: worktree, чтобы двое никогда не записывали один файл. Два агента, редактирующие один файл, создают тот же беспорядок, что два инженера, которые без разговора отправляют изменения в одни строки. Пусть строитель работает на быстрой дешёвой модели, а ревьюер получает более медленную и строгую.

7. Где цикл действительно работает
Фразу «работает, пока вы спите» используют слишком свободно. Локальный цикл умирает в момент закрытия крышки ноутбука.
Читайте задачу с конца. Наблюдать за локальным dev-сервером каждую минуту можно только через /loop. Сканировать открытые задачи в три часа ночи и создавать PR должна облачная рутина или запланированный GitHub Action, потому что ноутбуки уносят из дома.
Локальное расписание означает: «выполнить ещё несколько кругов, пока я здесь». Облачное: «работать, пока меня нет». Из-за смешения этих вещей половина циклов, которыми хвастаются люди, останавливается, как только они отходят от стола.
Под этим уровнем находится обычный cron: пять полей, точность до минуты, а CLAUDE_CODE_DISABLE_CRON=1 полностью всё отключает.

8. Два уже работающих цикла
Ничто в этой цепочке не требует его рук, но система всё равно останавливается перед человеком ровно там, где начинается суждение.
Одна компания, 1300 PR в неделю. Stripe использует внутреннюю систему Minions, которую публично описал инженер Стив Калиски. Еженедельно сливается более 1300 PR, хотя код никто не набирает руками. Запуск происходит через упоминание бота в Slack или эмодзи под сообщением — после этого о задаче можно забыть.
Самое интересное происходит до пробуждения модели. Сначала детерминированный оркестратор собирает контекст: сканирует ссылки в сообщении, подтягивает Jira, находит документы, ищет релевантный код через Sourcegraph и MCP.
Только после этого агент начинает писать, имея всё перед собой. Когда он заканчивает, жёстко заданный конвейер запускает линтер, и агент не может его обойти.
Из этого стоит забрать три вещи:
- Всё, что способно решить правило, никогда не передаётся вероятностной модели. Поиск материалов — детерминированная работа, поэтому её выполняет детерминированный код.
- Надёжность появилась благодаря ограничениям, а не размеру модели. Minions — ответвление открытого инструмента Goose, а не секретная передовая модель.
- Люди не исчезли. Эти 1300 PR по-прежнему проверяют инженеры. Они просто пересели с места автора на место ревьюера.

9. Четыре счёта
Ни один из них не отправляет предупреждение во время работы цикла.
Долг проверки — место, где живёт цикл Ральфа Виггама, названный Джеффри Хантли: агент посылает сигнал завершения на наполовину выполненной задаче, и запуск довольно заканчивается. Лечение — шлюз без мнения, нечто, что либо компилируется, либо падает, возвращает ноль или ненулевой код. Ревьюер с мнением рано или поздно уговорит себя одобрить результат.
- Гниение понимания не издаёт звука до появления ошибки, которую цикл не может исправить, спрятанной в файле, который вы никогда не открывали. В то утро вы узнаёте, что стали гостем в собственном проекте.
- Когнитивная капитуляция — склон под обоими явлениями. Чем стабильнее работает цикл, тем больше вы ему доверяете, тем меньше смотрите и тем хуже способны судить. Необязательно часто его переопределять. Но необходимо сохранять способность сказать: «Это неправильно».
- Взрыв токенов — единственное, что отражается в счёте. Вы написали логику, но платите за число запусков, умноженное на цену единицы. Одна ошибка, крутившаяся всю ночь, превращается в счёт вместо исправления.
Под всеми четырьмя находится вкладка безопасности. Сгенерированный код сливается быстрее, чем кто-либо его читает, поэтому поместите SAST, аудит зависимостей и сканирование секретов внутрь шлюза.
Автоматически установленные навыки сообщества приносят с собой всё, что находится в их описаниях. Один аудит 17 022 навыков обнаружил утечку учётных данных в 520 из них. Подробное журналирование длинного запуска разбрасывает секреты по логам, которые никто не читает. А разрешение на запись, добавленное «только один раз», больше никогда не пересматривается, если вы не поставили проверку в календарь.
Самая привлекательная сторона подхода — один человек может выполнить работу команды. Риск находится там же: команда спорит сама с собой, а один человек со стеком циклов превращается в комнату, где все согласны.
10. Одна метрика
Стоимость одного принятого изменения.
Расход токенов, число PR и количество запланированных циклов похожи на прогресс, но ничего из этого его не измеряет. Если меньше половины изменений цикла переживает ревью, вы выполняете работу проверки, которую цикл должен был убрать.
Claude Code предоставляет исходные данные: /usage разбивает недавние расходы по навыкам, субагентам и MCP; /goal без аргумента показывает ходы и токены активной цели; /workflows показывает использование каждого агента и позволяет остановить любого из них посреди запуска.

11. Сколько это стоит в деньгах
- Контракт на настройку. Небольшие команды платят $3–8 тыс., чтобы кто-то настроил разбор CI, автоматизацию зависимостей и ночной цикл ревью. Внутри компании это хотят все, но ни у кого нет свободной недели на сборку.
- Ретейнер сверху. $500–1500 в месяц на поддержание и настройку работающих циклов.
- Ваши собственные часы. Утренний разбор, занимавший восемь часов в неделю, сокращается до двух-трёх часов чтения diff. Каждый месяц возвращается полный рабочий день — по цене вашего дня.
- Должность. Разработчик за $95 тыс. и AI-архитектор за $300 тыс. нередко один и тот же человек с разницей в восемнадцать месяцев, работающий на другом стеке.
- Цена входа. Первый цикл работает на подписке за $20. Тяжёлая ночная проверка требует настоящего бюджета, разбор CI — нет.
О чём молчат продавцы этого подхода: на пользовательском тарифе при тяжёлой проверке серьёзной работы расходы проявляются на несколько недель раньше окупаемости.
Генерацию циклы делают почти бесплатной. Код, планы, PR и исправления производятся массово почти с нулевой стоимостью — именно поэтому ничто из этого больше не является дефицитом.
Дефицитом остаётся суждение: знание, какой план правильный, какое изменение нужно остановить, какой результат работает идеально, но ошибочен в своей основе.
Цикл может создать сотню вариантов и даже выбрать один, но основанием выбора будет «выглядит разумно», а не «является правильным». Весь смысл существования профессии находится в этом разрыве.

12. С чего начать сегодня вечером
Возьмите задачу, которую каждое утро открываете по привычке. Ту, которую новому сотруднику описали бы словами: «На неё просто нужно смотреть каждый день».
Затем определите, какую одну часть можно передать первой.
- Можете записать, как проверяется работа? Это навык.
- Можете точно сформулировать, как выглядит завершение? Это
/goal. - Работа приходит по часам, а не от вас? Это
/loop, а позднее/schedule. - Пока ничего из перечисленного? Тогда ответ — один надёжный ручной запуск.
Постройте его. Посмотрите, где он останавливается и где заходит слишком далеко. Ужесточите. Затем постройте второй.
Два человека могут построить одинаковый цикл и через шесть месяцев оказаться в противоположных местах. Первый использовал его, чтобы быстрее выполнять уже понятную работу, поэтому цикл умножил его суждение.
Второй использовал цикл, чтобы больше ничего не понимать, поэтому цикл умножил именно это. Система не выбирает любимчиков. Она — знак умножения, а число — вы.
Карпаты передал клавиатуру экспериментальному циклу и за два дня вернул двадцать лет пропущенных улучшений. Борис Черни, создавший Claude Code, говорит, что теперь его работа — писать циклы. Оба по-прежнему лично принимают каждое решение, которое имеет вес.
Постройте цикл. Стройте его как человек, который намерен остаться инженером, а не превратиться в того, кто нажимает «Пуск».
Всё содержание в одной таблице

Стек:
📁 Руководство по циклам Claude Code
↳ claude.com/docs/en/scheduled-tasks
📁 Документация /goal
↳ claude.com/docs/en/goal
📁 Claude
↳ claude.ai
И если материал оказался полезен
- Подпишитесь на @polydao, чтобы получать еженедельные подробные разборы архитектуры ИИ и экономики агентов.
- Присоединяйтесь к Telegram-каналу Buzzoni Notes — там автор делится сырыми промптами, собственными навыками и находками, для которых ещё слишком рано выходить в X.