Каждый день в Telegram-канале - что нового в вайб-кодинге: инструменты, истории, ошибки. Подпишись, чтобы быть в курсе.
Что такое loop engineering и зачем это тебе
Addy Osmani, директор Google Cloud по направлению ИИ (14 лет до этого - в команде Chrome), сформулировал принцип в посте от 7 июня 2026:
Loop engineering - это замена себя как человека, который промптит агента. Вместо этого ты проектируешь систему, которая делает это за тебя.
В том же посте он цитирует виральный твит Peter Steinberger (8 июня 2026):
Промптить агентов кодинга больше не надо. Надо проектировать циклы, которые промптят агентов за тебя.
Boris Cherny - человек, который собрал Claude Code в Anthropic с нуля, - на конференции Fortune Brainstorm Tech 8-11 июня 2026 в интервью сказал две фразы, которые ИИ-индустрия обсуждала неделю:
Я уже месяцев восемь не написал ни строчки кода руками.
Восемь месяцев без ручного кода. Весь Claude Code, в котором ты сейчас сидишь, написан самим Claude Code - в циклах, которые собрал Cherny.
И вторая фраза - которая объясняет масштаб:
Сегодня утром я управлял парой сотен агентов. В другие дни их тысячи или десятки тысяч.
За этими фразами стоит новая инженерная позиция: ты архитектор петель, не оператор клавиатуры.
Я к этому пришёл сам со своей стороны - через метод, который называю «доведение до результата». Главная мысль звучит так:
Мы вайб-кодим не для того, чтобы вайб-кодить - это пустая трата времени. Мы вайб-кодим для того, чтобы это работало на тебя каждый день, и шла накопительная система.
Сегодня сделал один раз - каждый день растут заявки, автоматически публикуются статьи, бот ведёт переписку, отчёт с метриками падает тебе на стол к 9 утра. Сделал - и оно работает каждый день без тебя.
Если ты до сих пор открываешь Claude Code, пишешь промпт, ждёшь, читаешь, опять пишешь промпт - ты пропускаешь главный сдвиг 2026 года. Модели стали достаточно сильные, чтобы работать в циклах без надзирателя.
Чем Ralph Loop отличается от обычного запроса в Claude Code
Технику назвали в честь Ральфа Виггама из «Симпсонов» - персонаж, известный весёлым упорством несмотря на ошибки. Придумал Geoffrey Huntley 14 июля 2025 года как простую bash-петлю вокруг агента:
Ralph - это всего лишь bash-петля.
Оригинальный код, который запустил всю волну:
while :; do cat PROMPT.md | claude-code ; doneОдин промпт в файле, бесконечный цикл вокруг него. И самый честный комментарий автора:
В этом и красота Ralph - техника тупо детерминирована в недетерминированном мире.
Anthropic упаковал ту же логику в плагин ralph-loop и в команды /loop, /goal, /batch в Claude Code - они доступны прямо из терминала без скриптов. Сам факт того, что Anthropic выпустила плагин для бесконечного re-prompting, вызвал спор в GitHub Issue #23084 - корректно ли это по отношению к модели. Спор открытый, плагин работает.
Три встроенные команды Claude Code: /loop, /goal, /batch
| Команда | Когда | Версия | Лимит |
|---|---|---|---|
/loop 30m <prompt> | Повтор на интервал (мониторинг, polling) | v2.1.72+ | 7 дней, 50 задач/сессия |
/goal <condition> | Работать до достижения цели (verifier-pattern) | v2.1.139+ | До 4000 символов условие |
/batch <change> | Параллельный механический рефакторинг | v2.1.63+ | Каждый юнит - свой git worktree |
/goal - самая близкая к Ralph Loop команда. Под капотом - evaluator-модель (по умолчанию Haiku) на каждом ходу смотрит: цель достигнута или нет. Если нет - следующая итерация с подсказкой, что именно поправить. Если да - остановка. Подробный разбор /goal я делал в гайде про автономный режим Claude Code на ночь через /goal - там готовые сценарии для 14-часовой работы.
/batch - редкая, но мощная команда. Когда нужно сделать одно и то же изменение в 100+ файлах (миграция API, замена компонента, переименование), /batch рассылает каждый файл отдельному субагенту в своём git worktree. Изменения не конфликтуют - каждый агент в изолированной копии. Подробнее про субагенты - в гайде про вложенные субагенты.
В моей лексике это всё называется просто:
Автоматизация, рутина, крон - это всё названия, по сути, одной функции, которая в определённое время запускается.
Жёсткие лимиты на /loop и /goal:
- Задача живёт, пока Claude Code открыт. Закрыл терминал - петля умерла. Для серьёзного ночного цикла - удалённый сервер или собственная shell-обёртка.
- Максимальное время жизни recurring-задачи - 7 дней (после авто-удаление как защита от забытых петель).
- В одной сессии до 50 одновременных задач.
Хочешь собрать связку, которая делает Claude стабильным? Ralph Loop - всего одна нога. На практикуме за 3 эфира собираешь все три: ИИ-клон + Второй мозг + Контекст-инжиниринг - именно эта связка превращает Claude из «помощника с галлюцинациями» в инструмент, которому даёшь задачу - и идёшь по своим делам.
Как запустить свой первый автономный цикл за 5 минут
5 шагов:
Открыть проект в Claude Code
Зайти в корень проекта в терминале, запустить
claude. Дождаться, пока Claude прочитаетCLAUDE.mdи проиндексирует репозиторий.Сформулировать цель и stop-условие
Цель - что должно быть сделано. Stop-условие - как Claude поймёт, что закончил. Лучше всего - команда, которая возвращает 0 или 1. Пример: «Цель - все 23 теста в
tests/api/*.test.tsпроходят. Stop -pnpm testвозвращает exit 0.»Запустить /goal
Команда:
/goal Все тесты в tests/api/*.test.ts должны быть зелёные. Запускай pnpm test, читай ошибки, чини, прогоняй снова. Останавливайся, когда exit code = 0. Максимум 20 итераций.Claude начинает цикл: запустил тесты - увидел падение - открыл файл - починил - снова запустил.
Поставить budget cap
В фоновой вкладке -
/usageдля контроля. Поставить лимит токенов или денег на день, чтобы не сжечь весь баланс на одной петле. Подробнее - в гайде как не сжечь лимиты Claude Code.Идти по своим делам
Через 30 минут вернуться. Если задача простая - уже «ГОТОВО, все тесты зелёные». Если сложнее - читать отчёт «остановился на 20-й итерации, причина X». Поправить руками то, что петля не смогла, перезапустить.
Boris Cherny рассказывал в том же интервью на Brainstorm Tech про утра после ночных циклов:
Часто я просыпаюсь утром, а Claude уже сделал пул-реквесты - сам придумал, сам проверил end-to-end, даже скриншоты приложил.
Под капотом - правильно собранная петля с verifier-pattern внутри.
Verifier-pattern: как Claude сам себя проверяет в цикле
Verifier бывают трёх типов:
1. Технические (exit code) - самый надёжный. pnpm test, npm run lint, tsc --noEmit, playwright test. Возвращают 0 или 1, никакой интерпретации. /goal тоже работает на этом - под капотом он использует evaluator-модель Haiku, которая на каждом ходу проверяет, выполнено ли condition (до 4000 символов).
2. Evaluator-модель - вторая модель смотрит на результат первой и оценивает по rubric'у. Хорошо для задач, где формальной проверки нет («стиль текста хороший?», «дизайн совпадает с брендом?»). В Anthropic это называется Claude Code Review - режим, в котором отдельный агент-ревьюер ищет логические ошибки, edge cases, security-проблемы в работе основного агента. По внутренним данным Anthropic, на больших PR находит 84% issues (раньше было 16% с baseline-подходом).
3. Custom-проверка - shell-скрипт, который ты пишешь сам. «Если в логах нет слова ERROR - готово.» «Если файл output.json существует и parseable - готово.» «Если страница /pricing возвращает 200 - готово.»
У меня в скиллах есть отдельный adversarial-проход, который я даю Claude после каждой фазы. Промпт-шаблон, который кладу в CLAUDE.md или в команду:
Найди 10 причин, по которым этот проект мог обосраться.
Поставь себя в позицию, что что-то пошло не так.
Я могу прогнать очень много раз эту историю -
прежде, чем выкачу в паблик.После каждой фазы - security review. Каждый раз, когда вы заканчиваете код, вы обязательно говорите security review.
Самая частая ошибка новичков - запустить цикл без verifier. Агент работает в холостую: пишет код, не проверяет, считает что готово, переходит к следующей итерации, переписывает уже сделанное. Через 3 часа - месиво и счёт на $200.
Лучшее правило, которое я вынес: сначала пишешь verifier, потом запускаешь цикл. Если не можешь сформулировать stop-условие в одну строку - значит, задача не созрела для автономии.
Как не сжечь $6 500 за ночь: budget cap и stop-conditions
3 обязательных тормоза для любого ночного цикла:
1. Лимит итераций. --max-iterations 20. Цикл не может крутить больше N раз - даже если verifier не сработал. Если за 20 итераций не дошёл до stop - значит, задача застряла, нужно человеческое вмешательство.
2. Лимит токенов или денег. /usage limit 50 - не больше $50 в сутки. Когда подходит к лимиту, петля сама останавливается, шлёт алерт. Это страховка от runaway-сценария вроде истории DN42 на $6 531.
3. Stagnation detector. Простая проверка: если за 3 итерации подряд код не изменился (git diff пустой) или verifier даёт ту же ошибку - петля зависла, останавливаемся.
Готовый wrapper-скрипт с этими тремя предохранителями:
#!/bin/bash
PROMPT="$1"
MAX_ITER=20
MAX_COST_USD=50
COMPLETION="ГОТОВО"
PREV_HASH=""
STAGNATION=0
for i in $(seq 1 $MAX_ITER); do
# Лимит денег
CURRENT_COST=$(claude usage --json | jq '.cost_usd')
if (( $(echo "$CURRENT_COST > $MAX_COST_USD" | bc -l) )); then
echo "STOP: budget cap $MAX_COST_USD достигнут"
break
fi
# Прогон
OUTPUT=$(claude code -p "$PROMPT" --auto-accept)
# Проверка завершения
if echo "$OUTPUT" | grep -q "$COMPLETION"; then
echo "STOP: completion signal"
break
fi
# Детектор застоя
CURRENT_HASH=$(git rev-parse HEAD 2>/dev/null)
if [ "$CURRENT_HASH" = "$PREV_HASH" ]; then
STAGNATION=$((STAGNATION + 1))
if [ "$STAGNATION" -ge 3 ]; then
echo "STOP: stagnation 3 итерации"
break
fi
else
STAGNATION=0
fi
PREV_HASH="$CURRENT_HASH"
doneЭтот скелет - стартовый. Дальше можно докрутить: Slack-алерт при остановке, автоматический Telegram-отчёт по утрам, push-уведомление если бюджет на 80%. Принцип один - у петли должны быть тормоза, не только акселератор.
5 готовых сценариев цикла на ночь
Сценарий 1: Тесты, которые красные - сделать зелёные
/goal В директории tests/ есть 47 падающих тестов. Цель - все зелёные.
Запускай pnpm test, читай stderr, открывай файл с ошибкой, чини, снова pnpm test.
Stop когда exit 0. Max 30 итераций.Сценарий 2: Большой рефакторинг по 200 файлам
/batch Заменить старый API-клиент apiV1 на новый apiV2 во всех файлах src/**/*.ts.
Каждый файл - в своём worktree. После замены прогнать tsc --noEmit, если ошибки - починить.
Слить worktrees в финале.Сценарий 3: Ночной мониторинг прода
/loop 30m Каждые 30 минут проверять https://your-app.example.com/api/health.
Если возвращает не 200 - читать логи, искать причину, чинить, развернуть заново.
Логировать каждую итерацию в /tmp/night-monitor.log.Сценарий 4: Импорт большого датасета с дедупликацией
/goal Импортировать csv-файл /tmp/import.csv (12 000 строк) в таблицу clients.
Для каждой строки - проверить дубль по email, если нет - вставить, если есть - обновить.
Логировать конфликты в /tmp/conflicts.log. Stop когда обработана последняя строка.Сценарий 5: Конвейер статей (типовая схема)
Для онлайн-сервиса или агентства, где регулярно нужны SEO-статьи, сценарий выглядит так:
/loop 8h Каждые 8 часов: открыть файл backlog тем со статусом 'queued'.
Если есть свободная тема - запустить skill для написания гайда.
Опубликовать в dev. Сменить статус на 'review'. Уведомить ответственного в Telegram.Поставил цель - и он работает сутками для цели. Это супер другая производительность. Это вообще абсолютно другой уровень результата.
Сценарий 5 - то, что Cherny делает в Anthropic, только для статей. У него ночью крутятся тысячи агентов, каждый - в своей петле. У меня - десятки. Принцип один:
У тебя есть Claude Code, но у него есть субагенты - другие Claude. Пользователь больше не промптит Claude. Промптит другой Claude.
Что подавать в каждой итерации: CLAUDE.md и Второй мозг как state
Три слоя «памяти» проекта, которые превращают одиночный промпт в управляемый цикл:
1. CLAUDE.md - конституция проекта. Что за продукт, какой стек, какие правила, чего никогда не делать. Claude читает этот файл при старте каждой сессии и каждой итерации цикла. Без него ему приходится «переоткрывать» проект каждый раз - тратится контекст, увеличивается риск галлюцинаций. Готовый шаблон и 6 правил - в гайде про CLAUDE.md.
Boris Cherny делает это так:
Каждый раз, когда мы видим, что Claude делает что-то неправильно, мы добавляем это в CLAUDE.md - чтобы Claude в следующий раз так не делал.
2. Второй мозг - папка с бизнес-знаниями: продукт, аудитория, цели, экономика, маркетинг. Не код - смыслы. Когда петля пишет статью или ищет ответ для саппорта, она читает Второй мозг и говорит из контекста проекта, не из вакуума.
Второй мозг - это база знаний, перелинкованных викилинками. Искусственный интеллект бегает для контекста, жрёт только то, что ему нужно для решения конкретной задачи.
3. Контекст-инжиниринг - что именно ты подаёшь Claude в каждой итерации. Не всю папку Второго мозга, не весь репозиторий - а только релевантное. Plan Mode помогает: Claude сам определяет, какие файлы нужны для задачи, и читает только их. Подробнее - в гайде про Plan Mode.
Главный операционный принцип, который пришлось вколотить через ошибки:
Одна задача - один чат. Это ключевой принцип работы. Когда у вас ИИ начинает жрать немыслимое количество токенов - это говорит о том, что вы всё в одном чате пытаетесь делать.
Три слоя складываются в 3 кита методологии: ИИ-клон (ты передал Claude свой стиль и правила через skills и CLAUDE.md), Второй мозг (бизнес-смыслы в файлах), Контекст-инжиниринг (что подаёшь в каждом запросе). Без всех трёх петля превращается в бесконечный цикл с растущим счётом.
Что Boris Cherny делает по ночам: 5 терминалов, 10-15 сессий, тысячи агентов
Что в каждой сессии? Разные задачи: одна петля чинит баги, другая - пишет новые features, третья - ревьюит PR'ы команды, четвёртая - оптимизирует производительность, пятая - готовит документацию. Не один большой агент-универсал. Десятки специализированных - в каждый засунут свой skill, своя цель, свой verifier.
Главный фрейм-разворот:
Мы начинаем подходить к моменту, когда у него есть свои идеи. Он смотрит в GitHub, смотрит в X, и решает: что мне построить дальше.
Если читателю нужен полный разбор сетапа Cherny с готовыми командами, я сделал отдельный гайд: как Boris Cherny делегирует кодинг тысячам ИИ-агентов.
Для предпринимателя без программистов это значит конкретную вещь. У тебя один Claude-аккаунт за $200/месяц и обычный ноутбук. Ты можешь запустить 5 петель параллельно - саппорт, статьи, метрики, тестирование нового продукта, мониторинг конкурентов. Каждая в своей вкладке Claude Code. Утром - читаешь сводку. Это уже норма работы летом 2026.
Четыре типичных провала автономного цикла
Провал 1: «Бесконечный цикл по галлюцинации»
Агент решил, что закрыл задачу, хотя verifier не сработал. Или verifier нет вообще. Через 3 часа Claude пишет: «всё готово!» - а на самом деле тесты валятся, страница не открывается, ничего не работает. Уже потрачено $80 на бессмысленные итерации.
Фикс: жёсткий verifier (exit code от команды), не словесная проверка.
Провал 2: «Сжёг бюджет за ночь»
История с DN42 - агент пытался просканировать любительскую сеть, цикл шёл всю ночь, утром оператор увидел счёт $6 531 в AWS. Без budget cap петля становится гранатой без чеки.
Фикс: /usage limit или внешний скрипт с claude usage --json, останавливающий цикл при достижении порога. Пост на Hacker News попал в топ 12 июня и стал жанром-победителем недели - «как агент стоил больше, чем твой джун».
Провал 3: «Цикл потерял контекст между итерациями»
Claude в итерации 1 принял архитектурное решение. В итерации 7 - забыл, принял противоположное. Через 15 итераций - код-помойка.
Фикс: state-слой через CLAUDE.md + папку Второго мозга. Любое архитектурное решение цикла - записывает в файл, который читает в следующей итерации.
Провал 4: «Stop-условие неточное - петля крутится бесконечно»
/goal "Сделать страницу красивой" - что значит «красивой»? Нет однозначной метрики - петля никогда не остановится. Будет крутиться, пока не упрётся в лимит итераций или бюджет.
Фикс: stop-условие - всегда измеримое. Не «красиво», а «Lighthouse Performance ≥ 90, Accessibility ≥ 95». Не «работает», а «тесты в tests/pricing.test.ts зелёные».
Когда loop engineering не нужен
Не подходят для автономного цикла:
- Разовая креативная задача. Один сайт для нового продукта, один логотип, одна стратегическая записка. Тут петля - перебор, проще написать один промпт и доработать руками.
- Задача без verifier. Если не можешь сформулировать stop-условие как exit code или однозначный сигнал - не запускай цикл, иначе это бесконечный костёр.
- Задача с субъективной оценкой. «Сделай чтобы лучше звучало», «доработай UX чтобы было приятнее» - тут нужен ты, а не петля.
- Новый незнакомый домен. Если ты сам не понимаешь, как должно выглядеть «готово», - не запускай Claude в цикл. Сначала разберись, потом автоматизируй.
И главное правило, которое я выработал через ошибки:
Если ты не управляешь контекстом, если ты не формируешь умные, понятные скиллы, которые дают итоговый результат - то рутину запускай, не запускай, всё будет ерунда.
Главный вопрос перед запуском цикла: могу ли я в одну строку описать, как пойму, что Claude закончил? Если да - петля поможет. Если нет - сначала формулируй проверяемое условие, потом запускай.
Источники
- Loop Engineering - Addy Osmani - инженер Google формулирует принципы (7 июня 2026)
- The Anthropic leader who built Claude Code says he ditched prompting - The New Stack - разбор смены парадигмы
- Cherny didn't write code by hand for 8 months - Fortune - интервью на Brainstorm Tech (Nick Lichtenberg, 11 июня 2026)
- Cherny управляет десятками тысяч агентов - Fortune - тысячи агентов утром (8 июня 2026)
- Создатель Claude Code запускает тысячи ИИ-агентов каждую ночь - 3DNews - русский пересказ ранней цитаты Boris Cherny из Business Insider (13.05.2026)
- Ralph Wiggum as a software engineer - Geoffrey Huntley - первоисточник техники (14 июля 2025)
- Ralph Loop Claude Plugin - Anthropic - официальный плагин
- Ralph Wiggum plugin on GitHub - Anthropic - исходники
- How Boris uses Claude Code - setup создателя Claude Code
- ИИ-агент обанкротил оператора, сканируя DN42 - Hacker News top - $6531 за ночь (12 июня 2026)
- Что приходится подчищать за ИИ-разработчиками - Hacker News - манифест против вайб-кодинга без присмотра
- Claude Code Review - Anthropic blog - multi-agent PR review research preview, 84% finding rate
- Documentation /goal - Claude Code Docs - официальная документация команды
- Documentation /loop scheduled tasks - Claude Code Docs - официальная документация
- Ralph Wiggum простыми словами - Habr - русский разбор техники
Loop engineering - это слой над всем, что ты уже знаешь про Claude Code. Сначала нужны три кита: ИИ-клон + Второй мозг + Контекст-инжиниринг. Без них петля деградирует к 5-й итерации. Полную связку показываю на практикуме за 3 вечера.
Новые материалы - дайджестом, без спама
Гайды выходят регулярно. Подпишись, чтобы не пропускать: пришлю подборку в Telegram или на email. Раз в неделю или каждый день - выбираешь сам.

