Harness под любую задачу: Dynamic Workflow в Claude Code. claude code.. claude code. llm.. claude code. llm. автоматизация.. claude code. llm. автоматизация. агентика.. claude code. llm. автоматизация. агентика. Будущее здесь.. claude code. llm. автоматизация. агентика. Будущее здесь. воркфлоу.. claude code. llm. автоматизация. агентика. Будущее здесь. воркфлоу. динамические воркфлоу.. claude code. llm. автоматизация. агентика. Будущее здесь. воркфлоу. динамические воркфлоу. искусственный интеллект.. claude code. llm. автоматизация. агентика. Будущее здесь. воркфлоу. динамические воркфлоу. искусственный интеллект. контекстное окно.. claude code. llm. автоматизация. агентика. Будущее здесь. воркфлоу. динамические воркфлоу. искусственный интеллект. контекстное окно. мультиагентные системы.. claude code. llm. автоматизация. агентика. Будущее здесь. воркфлоу. динамические воркфлоу. искусственный интеллект. контекстное окно. мультиагентные системы. оркестрация агентов.. claude code. llm. автоматизация. агентика. Будущее здесь. воркфлоу. динамические воркфлоу. искусственный интеллект. контекстное окно. мультиагентные системы. оркестрация агентов. Программирование.. claude code. llm. автоматизация. агентика. Будущее здесь. воркфлоу. динамические воркфлоу. искусственный интеллект. контекстное окно. мультиагентные системы. оркестрация агентов. Программирование. субагенты.. claude code. llm. автоматизация. агентика. Будущее здесь. воркфлоу. динамические воркфлоу. искусственный интеллект. контекстное окно. мультиагентные системы. оркестрация агентов. Программирование. субагенты. Текстовые редакторы и IDE.

На прошлой неделе мы выпустили динамические воркфлоу в Claude Code. Теперь Claude может на лету писать собственную обвязку (harness) под конкретную задачу.

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

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

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

Примеры промптов

Прежде чем перейти к техническим деталям, хочу начать с нескольких примеров промптов, которые помогут почувствовать возможности воркфлоу:

«Этот тест падает примерно раз в 50 прогонов. Создай воркфлоу для воспроизведения. Выдвигай конкурирующие теории о гонке и не останавливайся, пока одна из теорий не выживет под давлением доказательств.»

«Используя воркфлоу, просмотри мои последние 50 сессий, найди повторяющиеся правки и преврати регулярные из них в правила CLAUDE.md

«С помощью воркфлоу прокопай #incidents в Slack за последние полгода и найди повторяющиеся первопричины, на которые никто не завёл тикет.»

«Возьми мой бизнес-план и запусти воркфлоу, в котором разные агенты разбирают его с позиций инвестора, клиента и конкурента.»

«Вот папка с 80 резюме — с помощью воркфлоу отранжируй их по соответствию роли бэкенд-разработчика и перепроверь топ-10. Возьми у меня интервью через AskUserQuestion для составления рубрики.»

«Мне нужно название для этого CLI-инструмента. Используй воркфлоу: сгенерируй кучу вариантов и проведи турнир для выбора топ-3.»

«Используй воркфлоу, чтобы переименовать нашу модель User в Account везде.»

«Пройдись по черновику моей статьи и с помощью воркфлоу проверь каждое техническое утверждение по кодовой базе — не хочу выпустить ничего ошибочного.»

Как работают динамические воркфлоу

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

Harness под любую задачу: Dynamic Workflow в Claude Code - 1

В динамические воркфлоу также входят стандартные JavaScript-функции — JSON, Math, Array — для обработки данных.

Особенно важно знать, что динамические воркфлоу могут указывать, какую модель использует агент, и запускать субагентов в собственных worktree, позволяя Claude выбирать уровень интеллекта и степень изоляции под задачу.

Если воркфлоу прерывается — например, по действию пользователя или при закрытии терминала — возобновление сессии позволяет продолжить с того места, где оно остановилось.

Если статья понравится — приглашаю в канал AI for Devs. Каждый день публикую похожие материалы: модели, агенты, практические кейсы и новости из мира AI.

Почему динамические воркфлоу

Когда стандартная обвязка Claude Code получает задачу, ей нужно планировать и исполнять в одном контекстном окне. Для многих задач по написанию кода это высокоэффективно, но может ломаться на длинных, высокопараллельных, строго структурированных и/или состязательных задачах.

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

  • Агентская лень — когда Claude прекращает работу до завершения особенно сложной многоэтапной задачи и объявляет её сделанной после частичного прогресса: например, разбирает 35 из 50 пунктов в ревью безопасности.

  • Предвзятость к собственным результатам — склонность Claude предпочитать свои же результаты или находки, особенно когда его просят верифицировать или оценить их по рубрике.

  • Смещение цели — постепенная потеря верности исходной задаче на протяжении многих итераций, особенно после компакции. Каждый шаг суммаризации теряет детали, и такие вещи, как граничные требования или ограничения «не делай X», могут исчезнуть.

Создание воркфлоу помогает бороться с этим, оркестрируя отдельных субагентов Claude с собственными контекстными окнами и сфокусированными изолированными целями.

Динамические vs статические воркфлоу

Ранее вы могли создавать статические воркфлоу через Claude Agent SDK или claude -p для координации нескольких экземпляров Claude Code.

Но поскольку статические воркфлоу должны покрывать все граничные случаи, они обычно более обобщённые. С Claude Opus 4.8 и динамическими воркфлоу Claude теперь достаточно умён, чтобы написать кастомную обвязку, заточенную именно под ваш сценарий использования.

Harness под любую задачу: Dynamic Workflow в Claude Code - 2

Полезные паттерны при работе с динамическими воркфлоу

Начать использовать динамические воркфлоу можно, просто попросив Claude создать один — или используя триггерное слово ultracode, чтобы гарантировать, что Claude Code создаст воркфлоу.

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

Вот несколько распространённых паттернов, которые Claude может использовать и комбинировать при построении воркфлоу:

Harness под любую задачу: Dynamic Workflow в Claude Code - 3
  1. Classify-and-act. Агент-классификатор определяет тип задачи, после чего маршрутизирует к разным агентам или поведению в зависимости от неё. Или классификатор применяется в конце для оценки результата.

  2. Fan-out-and-synthesize. Задача разбивается на множество мелких шагов, агент запускается на каждом шаге, затем результаты синтезируются. Особенно полезно, когда шагов много или каждый выигрывает от собственного чистого контекстного окна, чтобы они не мешали и не перекрёстно загрязняли друг друга. Шаг синтеза является барьером — он ждёт всех агентов ветвления, затем объединяет их структурированные выходы в один результат.

  3. Adversarial verification. Для каждого запущенного агента запускается отдельный агент, который состязательно верифицирует его вывод по рубрике или критерию.

  4. Generate-and-filter. Генерируется набор идей по теме, затем они фильтруются по рубрике или верификации, дедуплицируются, и возвращаются только самые качественные проверенные идеи.

  5. Tournament. Вместо деления работы агенты соревнуются за неё. N агентов пытаются решить одну задачу, используя разные подходы. Промпты или модели затем оценивают результаты попарно через агента-судью, пока не определится победитель.

  6. Loop until done. Для задач с неизвестным объёмом работы — цикл запуска агентов до выполнения условия остановки (нет новых находок или нет ошибок в логах) вместо фиксированного числа проходов.

Сценарии использования

Думайте творчески о том, когда и как просить Claude Code создавать динамические воркфлоу. Я обнаружил, что воркфлоу иногда ещё более полезны для нетехнической работы.

1. Миграции и рефакторинг

Bun был переписан с Zig на Rust с помощью воркфлоу. Подробности о том, как это было сделано, можно прочитать в треде Jarred на X.

Ключ — разбить задачу на серию шагов, которые нужно обработать: точки вызова, упавшие тесты, модули и т.д. Под каждое исправление запускается субагент в worktree, второй агент проверяет состязательно, после чего результаты мержатся. Стоит запрещать ресурсоёмкие команды, чтобы максимизировать параллельность без исчерпания ресурсов машины.

2. Deep research

Внутри Claude Code мы опубликовали скилл deep research (/deep-research), использующий динамические воркфлоу. Конкретно — он делает ветвление веб-поисков, забирает источники, состязательно верифицирует их утверждения и синтезирует цитируемый отчёт.

Но такое исследование может выходить за рамки веб-поисков. Например, попросить Claude составить сводку по контексту из Slack или исследовать, как работает фича, детально изучая кодовую базу.

3. Deep verification

Harness под любую задачу: Dynamic Workflow в Claude Code - 4

Если у вас есть отчёт и вы хотите проверить и подтвердить каждое фактическое утверждение, на которое он ссылается, можно сгенерировать воркфлоу, в котором один агент выявляет все фактические утверждения, а затем под каждое запускается субагент для детальной проверки. Также можно добавить агента-верификатора, который проверяет качество источника субагента.

4. Сортировка

Harness под любую задачу: Dynamic Workflow в Claude Code - 5

Возможно, у вас есть список элементов, которые нужно отсортировать по некоему качественному критерию, который Claude Code хорошо умеет оценивать: например, тикеты поддержки по серьёзности бага. Но попытка отсортировать 1000+ строк в одном промпте деградирует по качеству и не влезет в контекст. Вместо этого — проводите турнир, пайплайн агентов попарного сравнения (сравнительное суждение надёжнее абсолютного), или ведёрное ранжирование параллельно с последующим мержем. Каждое сравнение — отдельный агент, детерминированный цикл держит скобку, и в контексте хранится только текущий порядок.

5. Соблюдение правил

Harness под любую задачу: Dynamic Workflow в Claude Code - 6

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

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

6. Расследование первопричин

Отладка работает лучше, когда вы выдвигаете несколько независимых гипотез и проверяете их, но при использовании одного контекстного окна Claude может столкнуться с предвзятостью к собственным результатам.

Воркфлоу может структурно предотвратить это, запустив агентов для генерации гипотез из непересекающихся источников: например, отдельные агенты для логов, файлов и данных. Каждая гипотеза затем проходит через панель верификаторов и опровергателей.

Это применимо не только к коду. Воркфлоу можно использовать для продаж (почему продажи упали в марте?), дата-инжиниринга (почему упал этот пайплайн?) или любых постмортемов.

7. Триаж в масштабе

Harness под любую задачу: Dynamic Workflow в Claude Code - 7

У каждой команды есть очередь поддержки, баг-репорты или какой-то другой беклог, который люди не в состоянии полностью обработать.

Воркфлоу триажа классифицирует каждый элемент, дедуплицирует его против уже отслеживаемого и предпринимает действие — например, пытается исправить или эскалирует к человеку.

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

Пара воркфлоу триажа с /loop позволяет Claude делать это непрерывно.

8. Исследование и вкус

Воркфлоу полезны при исследовании разных подходов к решению, особенно когда выбор субъективен — как в дизайне или неймниге — и выигрывает от рубрики.

Попробуйте попросить Claude исследовать кучу решений и дать агенту-рецензенту рубрику того, как выглядит хорошее решение. Задача завершается, когда рецензент считает, что критерии выполнены. Решения также можно упорядочить или отобрать через турнир по рубрике.

9. Эвалы

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

10. Роутинг по модели и интеллекту

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

Например, лучшая модель для задачи «объясни, как работает auth-модуль» зависит от количества файлов в нём и структуры кодовой базы. Агент-классификатор может провести это исследование и затем маршрутизировать к Sonnet или Opus в зависимости от ожидаемой сложности задачи.

Когда не использовать динамические воркфлоу?

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

Лучше использовать воркфлоу творчески, чтобы двигать Claude Code туда, куда вы раньше не могли зайти. Для обычных задач по написанию кода попробуйте спросить себя: действительно ли здесь нужно больше вычислений? Например, большинству традиционных задач написания кода не нужен выбор из 5 возможных решений.

Советы по созданию динамических воркфлоу

1. Промптинг

Детальные промпты с использованием конкретных техник, описанных выше, дают наилучшие результаты с динамическими воркфлоу.

Воркфлоу подходят не только для больших задач. Можно попросить модель использовать «быстрый воркфлоу» — например, создать быструю состязательную проверку предположения.

2. Комбинация с /goal и /loop

Для воркфлоу, которые можно повторять — триаж, исследование, верификация — комбинируйте их с /loop для регулярного запуска и /goal для жёсткого условия завершения.

3. Бюджет токенов

Для динамических воркфлоу можно задавать явные бюджеты токенов, ограничивающие расход токенов на задачу. Промптите с бюджетом: «используй 10k токенов».

Сохранение и публикация динамических воркфлоу

Воркфлоу можно сохранять, нажав «s» в меню воркфлоу. Их можно зачекинить в ~/.claude/workflows или распространять через скилл.

Harness под любую задачу: Dynamic Workflow в Claude Code - 8

Для публикации через скилл помещайте JavaScript-файлы воркфлоу в папку скилла и ссылайтесь на них в SKILL.MD. Для большей гибкости можно попросить Claude воспринимать воркфлоу в скилле как шаблон, а не скрипт для буквального выполнения.

Harness под любую задачу: Dynamic Workflow в Claude Code - 9

Новая отправная точка для открытий

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

Русскоязычное сообщество про AI в разработке

Harness под любую задачу: Dynamic Workflow в Claude Code - 10

Друзья! Перевод этой статьи подготовила команда ТГК «AI for Devs» — канала, где мы рассказываем про AI‑агентов, плагины для IDE, делимся практическими кейсами и свежими новостями из мира ИИ. Подписывайтесь, чтобы быть в курсе и ничего не упустить!

Автор: python_leader

Источник