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

Когда используются субагенты
Субагентов могут подключать режимы General и Orchestrator.
| Режим | Как работает | Когда выбирать |
|---|---|---|
| General | Выполняет простые задачи сам и может подключить субагентов, если задача разрастается | Когда заранее непонятно, сколько ролей потребуется |
| Orchestrator | Сам не редактирует файлы и не запускает инструменты напрямую, а распределяет работу между субагентами | Когда большая задача изначально требует исследования, плана, реализации, тестов и ревью |
Для подзадач используются специализированные режимы:
| Субагент | Основное назначение |
|---|---|
| Ask | Исследование проекта и ответы без изменения файлов |
| Code | Изменение кода и файлов |
| Test | Создание и доработка тестов |
| Review | Независимая проверка без основных инструментов редактирования файлов; строгая read-only гарантия отсутствует |
| Plan | План с подзадачами и критериями приёмки |
| Debug | Проверка гипотез через отладчик IDE |
Полный набор инструментов и ограничения режимов приведены в матрице функциональности.
Последовательная и параллельная работа
Основной агент может передавать подзадачи последовательно, если результат одного шага нужен следующему. Например: сначала изучить код, затем составить план, после этого изменить реализацию и только потом провести ревью.
Независимые подзадачи можно выполнять параллельно. В документации профилей моделей приведены два сценария:
- несколько субагентов независимо решают одну задачу на разных моделях, после чего основной агент сравнивает ответы;
- несколько Review-субагентов параллельно проверяют одни изменения, а основной агент объединяет замечания и убирает дубликаты.
Параллельная работа подходит только для независимых частей. Если несколько субагентов одновременно меняют пересекающиеся файлы, возрастает риск конфликтов и несогласованных правок.
Контекст субагента
Основной агент формулирует подзадачу и передаёт субагенту нужный контекст. Субагенты, запущенные параллельно, не видят ход работы друг друга. Если им нужен общий материал, его можно сохранить в отдельном файле проекта, если правила проекта это допускают, а итоговую сверку поручить основному агенту.
Точная схема передачи всей истории родительского чата и служебных данных субагенту в текущей документации не зафиксирована. Поэтому важные ограничения, ожидаемый результат и пути к нужным файлам лучше явно указывать в подзадаче.
Инструменты и безопасность
Доступ субагента к инструментам определяется его режимом. Например, Ask и Review работают только на чтение, а Code может менять файлы. Orchestrator сам не выполняет такие действия, но может поручить их субагенту с подходящими возможностями.
Пользовательские режимы позволяют явно задать набор инструментов и Skills для конкретной роли. Общие ограничения проекта продолжают иметь значение: для файлов используйте Edit Scope, .readignore и .writeignore, а доступ к действиям проверяйте в меню Tools.
Не считайте работу безопасной только потому, что её выполняет субагент. Перед задачей с правками задайте границы, а после завершения просмотрите общий diff в Agent Changes.
Как выбирается модель
По умолчанию субагент использует ту же модель, что и основной агент. Профили субагентов позволяют назначать разные модели и параметры рассуждения разным типам подзадач.

Встроенные профили:
| Профиль | Для каких задач предназначен |
|---|---|
fast | Быстрое чтение файлов, простой поиск и краткое изучение проекта |
balanced | Обычный анализ и рутинная генерация тестов |
strong | Сложная архитектура, нетривиальные изменения, глубокое ревью и трудная отладка |
Пока за профилем не закреплена конкретная модель, он наследует модель основного агента. Основной агент выбирает профиль по его текстовому описанию; документация не обещает, что один и тот же профиль будет выбран во всех похожих задачах. Для предсказуемости формулируйте описания профилей как конкретные правила применения.
Как поставить большую задачу
- Опишите общий результат и ограничения.
- Укажите, какие части можно выполнять независимо, а какие зависят друг от друга.
- Запретите параллельное изменение одних и тех же файлов.
- Назовите проверки и критерии готовности для каждой подзадачи.
- Для особо важных решений попросите независимый анализ или Review.
- После завершения проверьте итоговые изменения и результаты запусков.
Пример запроса:
Раздели задачу на исследование, реализацию, тесты и независимое ревью.
Зависимые шаги выполняй последовательно. Параллельно запускай только те части,
которые не меняют одни и те же файлы. В конце объедини результаты, запусти
связанные проверки и сообщи, что сделал каждый субагент.