# Вложенные субагенты в Claude Code 2026: делегирование до пяти уровней

> В Claude Code v2.1.172 Anthropic добавила поддержку вложенных субагентов глубиной до 5 уровней. Разбираем, как устроено делегирование и когда оно полезно.

Source: https://ailoot.ai/blog/ru/claude-code-nested-subagents/
Canonical: https://ailoot.ai/blog/ru/claude-code-nested-subagents/
Language: ru
Publisher: Ailoot (https://ailoot.ai/)
Translation: guide-232
Revision: sha256-4a1125ce370b837fffc7ea932a0ad01e630efec6c482fdbf871e9650087ab021


<div class="aside" data-semantic="editorial-reference" role="note" aria-label="Документация Ailoot">

[Документация Ailoot](https://ailoot.ai/docs/) — материалы о работе с сервисом.

</div>

## Что изменилось в Claude Code v2.1.172?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Главное в разделе">

Ключевой вывод

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

</div>

В документации и материалах о Claude Code долго повторялось правило: «субагент не может запускать другой субагент». По состоянию на 11 июня 2026 года эта формулировка всё ещё встречалась в трёх местах на странице `code.claude.com/docs/en/sub-agents`. Документация Anthropic ещё не была обновлена.

10 июня 2026 года в 20:44 UTC на GitHub Releases вышла версия Claude Code v2.1.172. В её журнале изменений появилась короткая запись:

<figure>
<blockquote>
Субагенты теперь могут запускать собственных субагентов на глубину до пяти уровней.
</blockquote>
<figcaption>— Журнал изменений Claude Code, https://github.com/anthropics/claude-code/releases/tag/v2.1.172</figcaption>
</figure>

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

В этом материале разберём, чем вложенность отличается от параллельного и последовательного делегирования, как понимать «глубину 5» и в каких задачах такая структура может пригодиться.

## Чем вложенные субагенты отличаются от параллельных и последовательных?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Главное в разделе">

Ключевой вывод

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

</div>

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

**Ширина — параллельные субагенты.** Главный чат запускает N независимых агентов на одном уровне. Каждому назначается отдельная задача; агенты работают в изолированных окнах и возвращают результат. Параллельность полезна, когда нужно ускорить выполнение независимых частей работы. Подробнее этот подход рассматривается в руководстве [о параллельных субагентах и worktree](https://ailoot.ai/blog/ru/claude-code-parallel-worktree-agents/).

**Длина — последовательная цепочка.** Агент A выполняет свою часть и передаёт результат агенту B, тот — агенту C. Каждый следующий этап использует результат предыдущего. Например, сначала исследователь собирает материалы, затем редактор пишет по ним статью, а после этого проверяющий сверяет факты. Это плоская последовательность этапов, ход которой контролирует главный чат.

**Глубина — вложенные субагенты.** Агент A запускает B, B запускает C, а C — D. Каждый дочерний агент работает в собственном изолированном окне и возвращает родителю **только итог**. Основной чат не получает промежуточные данные из окон дочерних и более глубоких агентов. Поддержка такой структуры появилась в v2.1.172.

Глубина 5 не означает, что можно одновременно запустить только пять субагентов. Речь идёт о вертикальной глубине дерева, а не о числе параллельных дочерних задач. На каждом уровне может быть один агент или несколько. В описании глубины важно учитывать, что официальные материалы Anthropic не поясняют, входит ли главный чат в эти пять уровней.

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

## Что означает «глубина 5 уровней» на практике?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Главное в разделе">

Ключевой вывод

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

</div>

При толковании этого ограничения важно отделять подтверждённое от неизвестного. Anthropic сообщила о глубине до пяти уровней, но не опубликовала точное определение того, как именно эти уровни считаются.

**Это предел, а не настройка.** Пользователь не может менять глубину дерева с помощью параметра или флага. Например, нельзя задать `--max-depth 7`, чтобы увеличить ограничение, или `--max-depth 2`, чтобы уменьшить его. В frontmatter агента можно ограничить **типы** запускаемых дочерних агентов с помощью `Agent(agent_type)`, но это не задаёт глубину.

**Точное значение «5» Anthropic не уточнила.** Официальная документация не говорит, означает ли `depth=5` пять уровней ниже корневого агента или пять агентов в цепочке вместе с корневым. Поэтому не следует считать одну из этих трактовок подтверждённой Anthropic.

**Поддержка включена в версии v2.1.172.** Отдельно активировать её не требуется. После обновления можно добавить `Agent` в поле `tools` дочернего агента, чтобы разрешить ему вызывать субагентов. Конкретные типы вызовов ограничиваются значением `Agent(...)` в настройках агента.

## Какое делегирование вы используете: ширину, длину или глубину?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Главное в разделе">

Ключевой вывод

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

</div>

Посмотрите на последние пять запросов к Claude Code. Случалось ли, что во время работы модель искала файлы, выполняла десять веб-запросов и добавляла в контекст длинные журналы, а через двадцать минут основное окно оказывалось переполнено? В такой ситуации промежуточные данные могут оставить мало места для итогового ответа.

Для подобной работы полезна **глубина**. Главный чат поручает исследование одному агенту, а тот делегирует отдельные поиски, чтение файлов и команды grep своим дочерним агентам. Дочерние агенты возвращают короткие выводы, например: «нашёл и подтвердил» или «не найдено, причина X». Родитель собирает их в общую сводку и передаёт её наверх. В основном чате остаётся итог, а не весь поток промежуточных данных.

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

## В каких трёх случаях вложенные субагенты полезны?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Главное в разделе">

Ключевой вывод

Вложенность подходит не каждой задаче. Она полезна, когда внутри одного поручения есть объёмная подзадача, результаты которой не нужно выводить в основное окно. Ниже приведены три типичных примера: исследование с проверкой фактов, изучение крупного репозитория и поиск последствий изменения общей зависимости.

</div>

### Сценарий 1. Исследование с проверкой фактов

Представим, что вы готовите статью или коммерческое предложение. Сначала нужно собрать 5–10 тезисов из открытых источников, а затем проверить каждый: найти первоисточник, сверить точность цитаты и проверить приведённые числа.

До v2.1.172 можно было поручить всю работу одному субагенту. Ему пришлось бы обработать около 30 веб-запросов и держать их результаты в своём контексте. Другой вариант — вручную выделять этапы: сначала извлечь тезисы, а затем запускать отдельную проверку для каждого. При этом главный чат мог заполняться промежуточными списками.

В рецепте ниже главный чат делегирует `research-orchestrator` на уровне 1. Оркестратор сам извлекает тезисы, передаёт каждый `fact-verifier` на уровне 2, а проверяющий поручает точный поиск `web-deep-search` на уровне 3. Основной чат получает тезисы с источниками, а подробные поисковые данные остаются у исполнителей.

### Сценарий 2. Изучение большого репозитория

Допустим, вам передали проект из 200 файлов. Нужно понять его архитектуру, определить ключевые модули и оценить технический долг. Если вручную запускать `Glob` и читать десятки файлов через `Read`, основной контекст может быстро переполниться.

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

### Сценарий 3. Анализ последствий изменения общей зависимости

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

Вложенная схема может быть такой: главный чат запускает `impact-analyzer` (уровень 1). Он вызывает по одному `dependency-tracer` для каждого затронутого файла (уровень 2). Каждый трассировщик запускает `consumer-finder` (уровень 3), который ищет в кодовой базе места, использующие эту зависимость. На каждом этапе агент передаёт наверх краткий результат, например: «затронуты эти три места». Главный чат сводит результаты в таблицу «затронутые файлы → последствия», не получая все выводы поиска.

## Как настроить вложенные субагенты

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Главное в разделе">

Ключевой вывод

Для запуска вложенных агентов не требуется отдельный флаг. Добавьте `Agent` в поле `tools` дочернего агента, чтобы разрешить ему вызывать субагентов. Чтобы ограничить набор доступных типов, используйте allowlist, например `Agent(имя1, имя2)`. Ниже — пример трёхуровневой настройки.

</div>

**Шаг 1. Проверьте, что установлена версия v2.1.172 или новее.**

```bash
claude --version
```

Если версия старее, обновите Claude Code. В журнале изменений Anthropic указано, что субагенты теперь могут запускать собственных субагентов на глубину до пяти уровней ([полная запись релиза](https://github.com/anthropics/claude-code/releases/tag/v2.1.172)).

**Шаг 2. Создайте родительского агента, которому разрешено запускать дочерних.**

Файл `.claude/agents/research-orchestrator.md`:

```markdown
---
name: research-orchestrator
description: Делегирует исследование с глубокой проверкой фактов
tools: Agent(fact-verifier), Read, WebFetch
model: opus
---

Ты — оркестратор исследования. Получив материал:
1. Прочитай переданный текст или открытые URL. Сам извлеки не более5 конкретных тезисов. Для каждого запиши текст, источник или файл и точный подтверждающий фрагмент. Если материала нет, запроси его до делегирования.
2. Передай каждый тезис fact-verifier — он сам запускает
   дочерних агентов для веб-поиска и проверки.
3. Получай от fact-verifier только итоговые вердикты;
   не добавляй в свой контекст промежуточные данные.

Итоговый отчёт — только массив { claim, sources[], confidence }.
```

Поле tools разрешает только тип `fact-verifier`. Оркестратор извлекает тезисы сам, поэтому неопределённый файл `claim-extractor` не нужен. Список типов ограничивает доступных исполнителей, но не число запусков. Отдельно ограничьте начальное извлечение пятью тезисами.

**Шаг 3. Создайте дочернего агента, который может запускать следующий уровень.**

Файл `.claude/agents/fact-verifier.md`:

```markdown
---
name: fact-verifier
description: Проверяет тезисы с помощью дочернего веб-поиска
tools: Agent(web-deep-search), Read
model: sonnet
---

Ты — фактчекер. Получив тезис:
1. Составь 2–3 поисковых запроса.
2. Для каждого запусти web-deep-search: он выполняет
   WebSearch и WebFetch и возвращает проверенные фрагменты.
3. Сведи результат в один вердикт: { claim, sources[], confidence }.
```

Здесь в `tools` также указан `Agent(web-deep-search)`. Поэтому `fact-verifier`, находящийся на уровне 2 в примере, может вызвать агента уровня 3. Версия v2.1.172 добавила поддержку таких вложенных вызовов.

**Шаг 4. Создайте агента для веб-поиска.**

Файл `.claude/agents/web-deep-search.md`:

```markdown
---
name: web-deep-search
description: Ищет информацию в интернете и возвращает фрагменты источников
tools: WebSearch, WebFetch
model: haiku
---

Получив поисковый запрос, выполни WebSearch и выбери три наиболее
подходящих URL. С помощью WebFetch найди точные фрагменты,
подтверждающие тезис. Верни массив { url, snippet, supports_claim: yes|no }.
```

У агента третьего уровня нет `Agent` в поле `tools`, поэтому он не запускает следующий уровень и завершает ветвь дерева.

**Шаг 5. Запустите оркестратор.**

```bash
claude --agent research-orchestrator
```

Передайте исходный текст или открытые URL: «Извлеки и проверь до5 конкретных тезисов этих источников; верни тезисы, источники и уверенность». При `--agent research-orchestrator` сама сессия является оркестратором, ниже которого два делегированных уровня — проверка и поиск. Если обычная главная сессия делегирует этому оркестратору, ниже неё три уровня.

## Какие пять ошибок увеличивают расход токенов и усложняют контроль?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Главное в разделе">

Ключевой вывод

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

</div>

**Ошибка 1. Задачу можно выполнить в одном окне.**

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

**Ошибка 2. Нужна скорость, а не изоляция промежуточной работы.**

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

**Ошибка 3. Задача не требует глубокой структуры.**

Запрос «найди файл и покажи его» состоит из двух шагов и не требует иерархии из трёх уровней. Вложенность оправдана, если в задаче есть объёмная подзадача с множеством промежуточных данных. Если такой работы нет, дополнительные агенты не нужны.

**Ошибка 4. Расплывчатые инструкции на первом уровне.**

Это может привести к тому, что неясность будет повторяться на следующих уровнях. Например, один нечёткий запрос на уровне 1 может породить четыре неясных задания на уровне 2 и шестнадцать — на уровне 3. В результате дочерние агенты не поймут, что именно нужно искать.

**Ошибка 5. Не учитывать рост стоимости.**

Ветвление и глубина увеличивают общий объём работы. Для грубой оценки можно взять дерево глубины 3 с коэффициентом ветвления 3 на каждом уровне: оно включает 27 конечных ветвей. Фактическое число запусков и расход токенов зависят от того, как устроено дерево и сколько задач действительно запущено. Тарифы и лимиты могут различаться, поэтому заранее оцените затраты для своего сценария.

**Дополнительная ошибка: «много агентов, но непонятно зачем».**

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

Перед запуском каждого субагента ответьте на четыре вопроса:

- Какую конкретную задачу он выполняет? Сформулируйте её одним предложением.
- С какими файлами он работает?
- Что он должен вернуть родительскому агенту?
- Кто проверит его результат?

Если на эти вопросы трудно ответить, сначала уточните задачу и результат, который должен выдать агент. Подробнее этот подход описан в руководстве [о параллельных субагентах](https://ailoot.ai/blog/ru/claude-code-parallel-worktree-agents/).

## Почему вложенность без контекста может ухудшить результаты?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Главное в разделе">

Ключевой вывод

Главная ловушка глубокой передачи — потеря контекста задачи. Потомок не получает автоматически всю беседу родителя и прочитанные им файлы. Пользовательские субагенты обычно загружают применимый CLAUDE.md, если это не отключено; все упомянутые бизнес-файлы от этого не загружаются. При каждой передаче укажите точные материалы, пути и формат результата.

</div>

Каждый субагент Claude Code запускается в отдельном контексте. В документации Claude Code говорится:

<figure>
<blockquote>
Каждый субагент начинает работу в отдельном изолированном окне и не видит историю разговора, уже вызванные вами навыки и файлы, прочитанные Claude ранее.
</blockquote>
<figcaption>— Документация Claude Code, https://code.claude.com/docs/en/sub-agents</figcaption>
</figure>

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

Файл [CLAUDE.md](https://ailoot.ai/blog/ru/kak-nastroit-claude-md/) и другие проектные инструкции помогают передать необходимые сведения, если они доступны агенту. Перед созданием дерева определите, какие файлы и данные должен видеть каждый уровень, и включите нужные сведения в запросы или инструкции.

## Что ещё изменилось в v2.1.172?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Главное в разделе">

Ключевой вывод

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

</div>

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

**Исправление 1.** Фоновый субагент больше не должен отображаться активным после остановки запущенного им вложенного агента.

**Исправление 2.** Ограничения `availableModels` теперь распространяются и на субагентов. Если для команды запрещена определённая модель, например opus, дочерний агент не должен обходить это ограничение через переопределение в собственной конфигурации.

**Исправление 3.** Клавиша со стрелкой вверх в истории запросов показывает запросы текущей вкладки субагента, а не главного агента.

**Исправление 4.** В режиме ожидания снижена нагрузка на CPU: индикатор `/goal` больше не перерисовывает терминал без необходимости с частотой 5 Гц. Также при параллельной работе субагентов сокращено число перерисовок интерфейса.

## Проверка: когда вложенность помогает, а когда мешает

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Главное в разделе">

Ключевой вывод

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

</div>

Используйте вложенность, если:

- Внутри задачи есть подзадача с большим числом веб-запросов, операций grep или файлов для чтения.
- Можно продолжить работу, даже если дочерний агент ничего не найдёт.
- Вам **не нужны** промежуточные результаты в главном окне.
- Есть `CLAUDE.md` и собраны сведения о проекте, которыми можно снабдить субагентов.
- Вы можете определить входные данные, результат и формат ответа для каждого уровня.
- Вы заранее оценили доступный лимит токенов с учётом возможного ветвления.

Не используйте вложенность, если:

- Одного субагента достаточно и его работа не создаёт большого объёма промежуточных данных.
- Промежуточные результаты должны быть видны в основном окне; в таком случае может подойти параллельная схема.
- Для работы нет `CLAUDE.md` или агентам не хватает сведений о проекте.
- Запросы на первом уровне неясны: эта неясность может перейти на следующие уровни.
- Важнее скорость: параллельные агенты могут выполнить независимые задачи одновременно.
- Вы используете план с ограниченным лимитом и не учли возможный рост расхода токенов.

<div class="section" role="doc-bibliography" aria-label="Источники">

### Источники

- [Релиз Claude Code v2.1.172 — GitHub Releases](https://github.com/anthropics/claude-code/releases/tag/v2.1.172)
- [Создание собственных субагентов — документация Claude Code](https://code.claude.com/docs/en/sub-agents)

</div>

Дополнительные материалы доступны на [Ailoot](https://ailoot.ai/).

## Вопросы и ответы

### Нужен ли claim-extractor для приведённого рецепта?

Нет. Исправленный research-orchestrator сам извлекает до пяти тезисов из материала. Создайте три показанных файла: research-orchestrator, fact-verifier и web-deep-search, затем передайте текст или URL.

### Ограничивает ли разрешение только fact-verifier число дочерних запусков?

Нет. Список типов ограничивает тип, а не количество вызовов. В рецепте отдельно задано не более пяти начальных тезисов. Следите за настоящими вызовами и токенами.


## Ailoot · Компания и портфель её проектов

Ailoot опирается на накопленный опыт работы, большую клиентскую базу, стабильный сервис и постоянный контроль KPI.

Компания и портфель её проектов: миллионы клиентов; продажи на миллиарды ежемесячно.

Этот опыт Ailoot использует для API-доступа к нейросетям в продуктах клиентов, агентах, приложениях и автоматизациях.
