5 циклов агентского воркфлоу Claude Code: как включить каждый у себя

Это разбор того, как на самом деле работает агент внутри Claude Code, разложенный на 5 повторяющихся циклов. Каждый цикл это конкретное поведение, которое ты сам включаешь у себя парой строк в файле CLAUDE.md или готовым промпт-паттерном. По каждому из пяти: что это, почему даёт результат на деле, и КАК внедрить прямо сейчас, с точной формулировкой правила и живым примером. Пять циклов такие: сначала план потом действие (Plan to Act), самокоррекция по своим ошибкам (Self-Correction), работа с инструментами и чтение их реального ответа (Tool-Use), распределение по субагентам (Fan-Out) и условия остановки, чтобы не палить бюджет впустую (Stop Conditions). Прочитал только эту страницу, вставил правила в свой CLAUDE.md, и агент начинает вести себя как инженер, а не как болталка. Кодить, чтобы это включить, не нужно, всё делается текстом.

Читается за 11 минут. Внутри разбор 5 циклов агентского воркфлоу Claude Code с готовыми правилами под вставку в CLAUDE.md, промпт-паттернами и живыми примерами по каждому. Плюс собранный блок правил целиком для копирования и промпт-навигатор, который подскажет, какой цикл чинит твою конкретную проблему.

Не пытайся внедрить все пять сразу. Открой свой файл CLAUDE.md в корне проекта (если его нет, создай пустой) и добавляй по одному правилу из циклов ниже, проверяя на реальной задаче. Начни с первого цикла (Plan to Act) и второго (Self-Correction), они дают самый заметный прирост качества. Копируемый блок в конце это все пять правил разом, вставляешь его в CLAUDE.md и агент подхватывает поведение в новом чате. Промпт-навигатор держи под рукой: описываешь, что бесит в поведении агента, он говорит, какой цикл это лечит и что дописать.

Что такое агентский цикл и при чём тут CLAUDE.md

Агент работает петлёй: он думает, делает шаг, смотрит на результат, решает следующий шаг. Внутри Claude Code таких петель пять, они работают поверх любой твоей задачи. Ты влияешь на них обычным текстом в файле CLAUDE.md, который лежит в корне проекта и читается автоматически в начале каждого чата. Кодить для этого ничего не надо. Это как устав для агента: правила оттуда действуют по умолчанию, без напоминаний в каждом сообщении.

Где лежит файл

CLAUDE.md в корне проекта, рядом с твоим кодом. Claude Code читает его сам при старте сессии. Есть ещё глобальный на уровне всей системы (~/.claude/CLAUDE.md) для правил, общих для всех проектов. Проектный дополняет глобальный. Нет файла, создай пустой текстовый CLAUDE.md, этого достаточно, чтобы начать.

Почему правило в файле сильнее просьбы в чате

Просьбу в сообщении агент выполнит один раз и забудет к следующей задаче. Правило в CLAUDE.md действует всегда и в каждом новом чате, его не надо повторять. Пять циклов ниже это ровно набор таких постоянных правил: один раз вписал, дальше поведение держится само.

Как проверить, что правило подхватилось

После правки CLAUDE.md начни новую задачу и смотри на поведение: агент сначала пишет план? ловит свою ошибку сам? останавливается вовремя? Если ведёт себя по-старому, правило сформулировано слишком мягко. Делай его жёстче и конкретнее, командой, а не пожеланием. Ниже у каждого цикла точная формулировка, которая работает.

Цикл 1. Сначала план, потом действие (Plan to Act)

Агент сначала проектирует задачу вслух: разбивает на шаги, называет, какие файлы тронет, сверяется с целью, и только потом берётся за дело. Это первый цикл, потому что он режет самый дорогой класс ошибок: когда агент бросился писать код не туда и переделывает всё заново.

Что это

Перед любым нетривиальным действием агент выдаёт короткий план: что делаю, в каком порядке, какой ожидаемый результат. Ты видишь план до того, как он тронул файлы, и можешь поправить курс на словах, пока это бесплатно. Внутри Claude Code это и есть режим планирования: сначала маршрут, потом движение.

Зачем даёт результат

Ошибка в плане стоит одну строку правки. Та же ошибка в готовом коде стоит переписывания. Агент, который сначала показал план, дал тебе точку контроля в самом дешёвом месте. На больших задачах это разница между одним заходом и тремя переделками.

Как внедрить у себя

Впиши в CLAUDE.md жёсткое правило (формулировка ниже в копи-блоке). Смысл: для любой задачи из трёх и более шагов или где меняется несколько файлов, сначала выдать план и дождаться подтверждения, только потом писать код. Для однострочной правки план не нужен, чтобы не тормозить мелочь.

Промпт
## Планирование - Перед любой задачей из 3+ шагов или где затрагивается несколько файлов: сначала выдай план (список шагов, какие файлы тронешь, ожидаемый результат) и дождись моего «ок», только потом пиши код. - Если по ходу план перестал сходиться с целью, остановись и предложи новый план, не продолжай по старому. - Для однострочных правок и очевидных мелочей план не нужен, делай сразу.
Пример на деле. Просишь «добавь авторизацию в приложение». Без правила агент сразу лезет писать в случайный файл. С правилом он сначала отвечает: «План: 1) добавлю модель пользователя в models.py, 2) роут логина в auth.py, 3) middleware проверки в app.py, 4) тест на вход. Ок?». Ты видишь, что модель у тебя уже в другом месте, поправляешь одной фразой, и агент идёт правильным маршрутом с первого раза.

Цикл 2. Самокоррекция (Self-Correction)

Агент ловит собственные ошибки: запустил, получил красный тест или ошибку в логе, прочитал её, нашёл причину, поправил и перезапустил. И не говорит «готово», пока тесты не зелёные. Это второй по важности цикл, он превращает «вроде сделал» в «проверил, что работает».

Что это

После изменения агент сам прогоняет проверку (тест, сборку, запуск) и читает результат. Ошибка запускает петлю починки: прочитать текст ошибки, найти причину, внести правку, прогнать снова. Цикл крутится, пока проверка не пройдёт. Слово «готово» появляется только после зелёного результата.

Зачем даёт результат

Главный обман слабого агента это «я всё сделал» на неработающем коде. Самокоррекция закрывает эту дыру: агент обязан показать доказательство, что оно работает, а не заявить это. Ты перестаёшь ловить за ним поломки руками, он ловит их сам до того, как отдал тебе.

Как внедрить у себя

Правило в CLAUDE.md: после каждого изменения запусти проверку, при ошибке войди в цикл починки (прочитать лог, найти причину, поправить, перезапустить), «готово» говори только с доказательством. Плюс укажи агенту твою команду проверки (например npm test или pytest), чтобы он знал, чем именно проверять.

Промпт
## Самокоррекция и проверка - После каждого изменения кода сам запусти проверку: тесты, сборку или запуск нужного куска. Команда проверки в этом проекте: [впиши свою, например `pytest` или `npm test`]. - Если проверка упала: прочитай полный текст ошибки, найди причину, внеси правку, перезапусти. Повторяй цикл, пока не станет зелёным. Не переходи к следующей задаче с красной проверкой. - Не пиши «готово» или «работает» без доказательства: покажи вывод теста, лог запуска или результат. Слово без пруфа не считается.
Пример на деле. Агент поправил функцию, прогнал pytest, получил три красных теста. Без правила он бы отдал тебе код со словами «внёс правку». С правилом он читает трейсбек, видит, что сломал импорт, чинит, гоняет снова, получает зелёное и только тогда пишет: «Готово, тесты проходят, вот вывод». Ты получаешь рабочий код, а не домашку на проверку.

Цикл 3. Работа с инструментами (Tool-Use)

Вместо ответа из головы агент вызывает инструмент: поиск по коду, запуск команды, чтение файла, обращение к внешнему коннектору. Дальше читает реальный ответ системы и на его основе решает следующий шаг. Это цикл, который заземляет агента на факты вместо догадок.

Что это

Вместо «наверное, в коде так» агент запускает поиск, открывает файл, гоняет команду и смотрит, что реально вернула система. Инструмент дал факт, агент строит следующий шаг на факте. Петля: вызвал инструмент, прочитал ответ, решил, что дальше, при нужде вызвал ещё один.

Зачем даёт результат

Догадка это источник тихих ошибок: агент уверенно пишет про функцию, которой в твоём проекте нет. Работа с инструментами убирает это: перед тем как что-то утверждать о твоём коде, агент идёт и смотрит. Ответы становятся привязаны к реальности твоего проекта, а не к усреднённой памяти модели.

Как внедрить у себя

Правило в CLAUDE.md: прежде чем утверждать что-то о коде или данных, проверь инструментом (поиск, чтение файла, запуск), не полагайся на память. Плюс дай агенту знать про твои инструменты и коннекторы (какие MCP-серверы, какие команды доступны), чтобы он ими пользовался, а не угадывал.

Промпт
## Работа с инструментами - Прежде чем утверждать что-либо про этот проект (где лежит функция, как устроен модуль, что в конфиге), сначала проверь: найди поиском, открой файл, запусти команду. Память это гипотеза, инструмент это факт. - Читай реальный ответ инструмента целиком и следующий шаг строй на нём, а не на том, что ожидал увидеть. - Доступные инструменты и команды в проекте: [перечисли свои, например поиск по репозиторию, запуск линтера, доступ к базе через коннектор]. Пользуйся ими вместо догадок.
Пример на деле. Просишь «поправь функцию расчёта скидки». Без правила агент пишет правку по воображаемой сигнатуре и промахивается. С правилом он сначала ищет функцию по проекту, открывает файл, видит реальные аргументы и типы, и только потом правит по факту. Одна вставка вместо трёх итераций «нет, у меня не так».

Цикл 4. Распределение по субагентам (Fan-Out)

Когда задача распадается на несколько независимых кусков, агент раскидывает их по субагентам вместо работы по очереди в одной голове: каждый берёт свой кусок параллельно, потом главный собирает результаты в один ответ. Это цикл про скорость и чистоту контекста на больших задачах.

Что это

Главный агент видит, что задача состоит из независимых частей (проверить пять файлов, разобрать три источника, собрать данные из разных мест), и запускает под каждую отдельного субагента. Они работают параллельно, каждый в своём чистом контексте, потом главный сводит их выводы в единый ответ.

Зачем даёт результат

Два выигрыша. Скорость: пять задач идут разом, а не в очередь. Чистота контекста: каждый субагент занят одним куском и не тонет в деталях остальных, поэтому реже ошибается и не забивает главный контекст мусором. На большом ресёрче или обходе кодовой базы это разница в разы.

Как внедрить у себя

Правило в CLAUDE.md: если задача распадается на независимые части, раздели её на субагентов и запусти параллельно, потом собери. Плюс сам проси об этом в промпте, когда задача явно параллельная: «раздели на подзадачи и пусти параллельно». Оговорка: параллель только для независимых кусков, зависимые шаги оставляй последовательными.

Промпт
## Распределение по субагентам - Если задача распадается на независимые части (несколько файлов, несколько источников, несколько проверок), раздели её на подзадачи и запусти их параллельно субагентами, потом собери результаты в один ответ. - Параллель только для независимых кусков. Если шаг Б зависит от результата шага А, делай их по порядку, не параллель. - Каждому субагенту давай узкую задачу и проси вернуть только вывод, а не весь ход работы, чтобы не забивать общий контекст.
Промпт-паттерн под параллель. «Проверь эти 5 модулей на утечки памяти. Раздели на подзадачи по одному модулю на субагента, пусти параллельно, каждый пусть вернёт только найденные проблемы и файл-строку. В конце собери общий список по приоритету». Так пять проверок идут разом, и главный контекст остаётся чистым, в нём только сводка.

Цикл 5. Условия остановки (Stop Conditions)

Агент знает, когда пора остановиться: задача закрыта, дальше идёт трата токенов впустую. Он не крутит бесконечную петлю «а вдруг ещё улучшить» и не сжигает бюджет на переделку того, что уже работает. Это цикл про деньги и про то, чтобы агент не залипал.

Что это

У задачи есть чёткий признак завершения, и агент останавливается, как только его достиг: тесты зелёные, результат отдан, цель выполнена. Без этого агент склонен зациклиться: полировать бесконечно, гоняться за идеалом, ходить по кругу на нерешаемой части, тратя токены на каждый лишний виток.

Зачем даёт результат

Токены это твой бюджет. Агент без условия остановки жжёт его на пустые витки и переусложняет то, что уже готово. Явный критерий «сделано» экономит деньги напрямую и держит результат простым: агент отдаёт рабочее решение, а не раздутое. Плюс правило остановки при тупике спасает от бесконечного долбления в стену.

Как внедрить у себя

Правило в CLAUDE.md: у каждой задачи проговори признак завершения и остановись по нему, не улучшай без запроса, при трёх неудачных попытках подряд остановись и доложи, что пробовал. Плюс в промпте задавай границу явно: «сделай ровно это, не больше», чтобы агент не уходил в позолоту.

Промпт
## Условия остановки - Для задачи определи признак «сделано» (тесты зелёные, файл создан, вопрос отвечён) и остановись, как только он достигнут. Не улучшай и не расширяй сверх задачи без моей просьбы. - Если одно и то же не выходит после 3 попыток подряд, остановись и доложи: что пробовал, что увидел, где затык. Не долби в стену бесконечно. - Делай ровно поставленную задачу, без лишних фич и переусложнения. Простое рабочее решение лучше раздутого.
Пример на деле. Просишь починить один баг. Без правила агент чинит баг, потом от себя рефакторит полфайла, переименовывает переменные и трогает соседние функции, сжигая токены и принося новые риски. С правилом он чинит ровно баг, прогоняет тест, видит зелёное и останавливается: «Готово, баг закрыт, тест проходит». Бюджет цел, лишних изменений нет.

Все пять правил разом: вставь в CLAUDE.md

Собранный блок из пяти циклов для копирования одним куском. Вставь в свой CLAUDE.md в корне проекта, подставь свои команды проверки и список инструментов в квадратных скобках, начни новую задачу. Агент подхватит все пять поведений сразу.

Промпт
# Как работает этот агент ## 1. Сначала план, потом действие - Для задачи из 3+ шагов или где затрагивается несколько файлов: сначала выдай план (шаги, какие файлы тронешь, ожидаемый результат), дождись «ок», потом пиши код. - Если план перестал сходиться с целью, остановись и предложи новый. - Однострочные правки делай сразу, без плана. ## 2. Самокоррекция и проверка - После каждого изменения сам запусти проверку. Команда проверки: [впиши свою, например `pytest` / `npm test`]. - Упала проверка: прочитай ошибку, найди причину, поправь, перезапусти. Крути цикл до зелёного. - «Готово» только с доказательством: вывод теста, лог, результат. Слово без пруфа не считается. ## 3. Работа с инструментами - Прежде чем утверждать что-то про проект, проверь инструментом: поиск, чтение файла, запуск команды. Память это гипотеза, инструмент это факт. - Читай реальный ответ инструмента и следующий шаг строй на нём. - Доступные инструменты в проекте: [перечисли свои]. ## 4. Распределение по субагентам - Задача распадается на независимые части: раздели на подзадачи, запусти параллельно субагентами, собери результат. - Параллель только для независимых кусков. Зависимые шаги по порядку. - Каждому субагенту узкая задача, в ответ только вывод. ## 5. Условия остановки - Определи признак «сделано» и остановись по нему. Не улучшай сверх задачи без просьбы. - Не выходит после 3 попыток: остановись, доложи что пробовал и где затык. - Делай ровно задачу, без лишних фич. Простое рабочее решение лучше раздутого.

Промпт-навигатор: какой цикл чинит твою проблему

Если не знаешь, с чего начать, опиши, что именно бесит в поведении агента, и этот промпт скажет, какой из пяти циклов это лечит и что дописать в CLAUDE.md. Вставь в Claude или ChatGPT, впиши свою жалобу.

Промпт
Действуй как наставник по настройке агента Claude Code. Есть 5 циклов агентского воркфлоу, каждый включается правилом в файле CLAUDE.md: 1. Сначала план потом действие (Plan to Act): агент проектирует задачу до того, как писать код. 2. Самокоррекция (Self-Correction): агент сам гоняет проверку, чинит по ошибке, не говорит «готово» без доказательства. 3. Работа с инструментами (Tool-Use): агент проверяет факты инструментами вместо догадок. 4. Распределение по субагентам (Fan-Out): агент параллелит независимые куски задачи. 5. Условия остановки (Stop Conditions): агент знает, когда закончить, и бережёт бюджет. Моя жалоба на поведение агента: [опиши, что именно не так, например: бросается писать код не туда / говорит готово на неработающем коде / выдумывает про мой код / делает всё медленно по очереди / жжёт токены и переусложняет] Сделай строго по формату: 1. КАКОЙ ЦИКЛ ПРОСЕДАЕТ. Определи, какой из пяти циклов лечит мою проблему. Если несколько, назови главный и второй. 2. ПОЧЕМУ ИМЕННО ОН. Одна-две строки, как этот цикл убирает мою жалобу. 3. ЧТО ВПИСАТЬ В CLAUDE.MD. Дай готовую формулировку правила под мой случай, жёстко, командой, не пожеланием. Учти, что правило действует в каждом чате по умолчанию. 4. КАК ПРОВЕРИТЬ, ЧТО ЗАРАБОТАЛО. Один конкретный тест: какую задачу дать и по какому признаку понять, что поведение поменялось. Если моя жалоба размытая, задай не больше двух уточняющих вопросов, потом выдавай ответ.
Следующий шаг
Хочешь так же, но под свой блог и продукт?

Я собрал систему, по которой обычный человек запускает блог с нуля и набирает аудиторию без съёмок, монтажа и команды. Внутри разбор, с которого стартовал сам.

Открыть разбор: с чего начать