✻ Claude Code по-русски
🎧 Аудиокурс
🎧 Слушать урок11:22 · голос Russian_BrightHeroine

#Выбор паттерна оркестрации

Продвинутый уровень · Урок 2 из 7 · около 20 минут · Нужно: Параллельные сессии в worktree · Сверено с Claude Code v2.1.285 (stable) 09.10.2026

#Цель

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

#Что понадобится

#Идея

Субагенты, динамический workflow и команда агентов — все они делят работу между исполнителями; различается то, у кого план (When to use a workflow). С субагентами Claude решает ход за ходом, и каждый результат возвращается в ваш разговор. Динамический workflow — это скрипт, который пишет Claude: в нём живут цикл и промежуточные результаты, поэтому он может запустить много агентов, перепроверить их находки и повторить запуск тем же способом. В команде агентов ведущий руководит участниками, которые переписываются напрямую (Choose an approach).

Любой паттерн сложнее одного разговора увеличивает расход: каждый субагент и каждый агент, запущенный workflow, отправляет собственные запросы (Why usage climbs), а команды агентов «расходуют значительно больше токенов, чем одна сессия» (When to use agent teams). Поэтому выбирайте самый дешёвый паттерн, который подходит задаче: задавайте эти вопросы по порядку и останавливайтесь на первом ответе, который всё решает.

flowchart TD
  accTitle: У кого план
  accDescr: Путь выбора способа разделить задачу. Если один разговор справится, не переполнившись, оставьте задачу в основном разговоре. Иначе, если исполнителям нужно общаться друг с другом, план держит ведущий в команде агентов — это экспериментальная функция. Если общаться не нужно и задача — несколько поручений на один раз, план держит Claude, а субагенты возвращают сводки. Если нужно много агентов, перепроверка находок или повторный запуск, план держит скрипт в динамическом workflow.
  A["Задача"] --> B{"Справится ли один разговор, не переполнившись?"}
  B -- да --> M["Основной разговор"]
  B -- нет --> C{"Нужно ли исполнителям общаться друг с другом?"}
  C -- да --> T["Команда агентов: план у ведущего"]
  C -- нет --> D{"Нужно много агентов, перепроверка находок или повторный запуск?"}
  D -- нет --> S["Субагенты: план у Claude"]
  D -- да --> W["Динамический workflow: план у скрипта"]

Примечание

«Команды агентов — экспериментальная функция, по умолчанию отключённая» (Orchestrate teams of Claude Code sessions). Этот урок называет их как один из вариантов, но не запускает; это делает факультатив Команды агентов.

#Разбор примера

  1. Выберите в репозитории три папки верхнего уровня, например src, test и docs, и запустите claude.
  2. Пройдите по вопросам схемы для одной задачи: сводка по каждой папке для новичка. Один разговор заполнился бы прочитанными файлами, которые больше не понадобятся, — значит, не основной разговор (Choose between subagents and main conversation). Сводкам не нужно общаться друг с другом — значит, не команда. Это три поручения на один раз — значит, субагенты.
  3. Попросите их, указав свои папки, как в примере параллельного исследования из документации (Run parallel research):
Research the src, test and docs folders in parallel using separate subagents, and give me two sentences on each.

По умолчанию интерактивная сессия запускает субагентов в фоне, так что ваш промпт остаётся свободным (Run subagents in foreground or background). Пока каждый работает, на панели под промптом есть его строка. 4. Пока они работают, выполните /tasks. Команда покажет каждого субагента, его состояние и модель, на которой он работает; нажмите Enter на строке, чтобы открыть его расшифровку (Check on running work, Choose a model). Claude может запустить встроенных субагентов Explore или general-purpose либо форки вашего разговора, так что строки у вас будут другими. Когда субагент успешно завершается, его строка исчезает с панели, а в нижней строке ненадолго появляется /tasks to see subagents; строка упавшего субагента задерживается на мгновение. 5. Когда придут сводки, выполните /usage. На планах Pro, Max, Team и Enterprise разбивка расхода относит недавний расход к скиллам, субагентам, плагинам и MCP-серверам и отмечает поведение, например длинный контекст, на которое приходится заметная доля (Plan usage breakdown). Блок Session, рассчитанный на пользователей API — например, вошедших через аккаунт Console, — показывает оценочную стоимость этой сессии (Using the /usage command). И то и другое — оценки. 6. Назовите, что изменило бы ответ. Одинаковая сводка для каждой папки, перепроверяемая и перезапускаемая перед каждым релизом, была бы workflow — паттерном следующего урока. Ревьюеры, которым нужно выяснить первопричину в споре между собой, были бы командой агентов.

#Ваша очередь

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

  1. Проверить три самых больших исходных файла на ошибки, которые перехватываются и игнорируются. Чтение файлов в вашем разговоре его перегрузит, а нужны вам только находки: по одному ревьюеру на файл, один раз, и короткий список в ответ.
  2. Выполнять ту же проверку на каждом исходном файле, сверять каждую находку с кодом до того, как она попадёт в отчёт, и перезапускать перед каждым релизом.
  3. Исправить опечатку в одном сообщении об ошибке.
  4. Три исследователя проверяют каждый свою гипотезу о нестабильном тесте, по ходу работы переписываются, оспаривая находки друг друга, и продолжают, пока не сойдутся на причине.

Критерии приёмки:

{
  "hooks": {
    "SubagentStart": [
      { "hooks": [ { "type": "command", "command": "jq -r '[.agent_id, .agent_type] | @tsv' >> \"$CLAUDE_PROJECT_DIR/.practice/a-2-agents.txt\"" } ] }
    ]
  }
}

#Проверка

Урок пройден, когда выполнено всё это:

Запустите npm run check -- a-2 --dir <your repo> из своей копии для практики.

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

#Осторожно

#Что дальше


Источники: Run agents in parallel · Orchestrate subagents at scale with dynamic workflows · Orchestrate teams of Claude Code sessions · Create custom subagents · Manage costs effectively · Hooks reference · CLI reference · Settings files and precedence

← Параллельные сессии в worktree · Оглавление Продвинутого уровня · Запуск и сохранение динамического workflow → · Тема: Субагенты и параллельная работа · Застряли на уроке?