Dynamic Workflows: как Claude Code научился писать собственный оркестратор и запускать сотни агентов параллельно

28 мая Anthropic выкатила Dynamic Workflows — новый режим в Claude Code. Ключевое изменение в архитектуре: план теперь переносится из контекстного окна в исполняемый код. Разбираю как это устроено, что получилось на практике и где механизм пока ломается.

Dynamic Workflows: как Claude Code научился писать собственный оркестратор и запускать сотни агентов параллельно

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

На длинных задачах с одним контекстным окном возникают три конкретных сбоя. «Агентная лень»: Claude объявляет задачу выполненной после 35 из 50 пунктов и останавливается. Самопредпочтение: при проверке собственной работы агент склонен её одобрять. Дрейф цели: после нескольких компакций контекста граничные условия вроде «не делай X» вымываются из картины.

Ни одну из этих проблем нельзя решить длинным промптом. Они структурные.

Что меняет Dynamic Workflows

Ключевая идея: план переносится из контекстного окна в исполняемый код.

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

Основной Claude видит только финальный синтез, без сотен промежуточных ответов субагентов. Это снимает сразу две проблемы: контекст не разбухает, и когда агент-«критик» проверяет результат другого агента, он оценивает чужую работу — самопредпочтение не срабатывает.

Ограничения: до 16 агентов одновременно (ограничение процессора), до 1000 за весь ран, без пользовательского ввода в середине прогона.

Запускается через ultracode в промпте или явным «создай workflow».

Как выглядит Bun-кейс изнутри

Jarred Sumner использовал Dynamic Workflows, чтобы портировать Bun с Zig на Rust: 750 000 строк, 99.8% тестов прошли, 11 дней от первого коммита до мержа.

Три последовательных workflow: первый картировал типы данных, прошёл по Zig-структурам и определил правильные Rust-лайфтаймы для каждого поля. Второй портировал файлы: каждый .zig отдавался отдельному агенту, параллельно, двое ревьюеров на файл. Третий гонял тест-сьют до зелёного — fix-loop, который не останавливался до прохождения всех тестов.

Каждый агент работает в своём контексте, агент-«критик» пытается опровергнуть результаты до того, как они дойдут до пользователя.

В переписанном Bun нашли более 13 000 unsafe-блоков. Агенты переводили код с Zig через костыли, лишь бы тесты прошли. Хороший черновик, не готовый прод. Dynamic Workflows ускоряет первый проход до состояния «есть с чем работать» — финальная шлифовка всё равно остаётся за человеком.

Честно про стоимость

Один пользователь на Max-плане ($200/мес) сжёг 20% недельного лимита за один день-первый ран. Тред на r/ClaudeCode с заголовком «Dynamic Workflows — это потрясающе, но безумно дорого» собрал дружный консенсус.

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

Отдельная проблема: при параллельной нагрузке агенты упираются в серверный rate-limit и обрываются без автоматического ретрая. GitHub Issues зафиксировали это с первых дней релиза.

Хорошая новость: можно задать токенный бюджет прямо в промпте — «используй не больше 10k токенов» — и скрипт будет работать в этом лимите.

Что дальше

Dynamic Workflows — архитектурный сдвиг. План уходит из контекстного окна в исполняемый код, и это меняет класс задач, которые Claude может закрывать.

Задачи, которые раньше требовали координации инженерной команды, теперь берёт оркестрационный скрипт — который Claude пишет сам под задачу.

Кто уже пробовал в своих проектах — что получилось и где сломалось? Интересен реальный опыт, особенно где всё пошло не по плану.

Разбираю такие инструменты регулярно — в Telegram: @dmitra_ai

1