Урок 11Суб-агенты

Паттерны агентов

Лучшие практики

Что такое агентные паттерны в Claude Code

Агентный паттерн — это устойчивый способ организовать работу Claude над задачей: как разбить её на шаги, когда запускать вспомогательные агенты (sub-agents) и как передавать между ними информацию. Claude Code умеет запускать отдельные суб-агенты через инструмент Task: каждый такой агент получает собственное окно контекста (context window), работает изолированно и возвращает главному агенту только итог, а не весь свой «черновик». Это ключевая идея — родительский диалог не засоряется промежуточными деталями поиска и чтения файлов, и в нём остаётся место для самого важного.

Английские блоки кода ниже на странице показывают это на практике. Записи вида Task(Explore, «...») — это запуск суб-агента, которому поручают одну узкую цель: найти реализацию авторизации, найти эндпоинты API, найти модели базы данных. Когда такие вызовы перечислены подряд (или собраны в Promise.all), Claude исследует кодовую базу параллельно — три агента читают разные части проекта одновременно, и общий результат собирается быстрее, чем при последовательном переборе файлов. Блок с Phase 1 → Phase 2 → Phase 3 → Phase 4 показывает другой приём: сначала параллельное исследование (research), затем планирование (planning), затем реализация с ревью на каждом шаге и в конце — проверка тестами. Это и есть цепочка агентов, где выход одного этапа становится входом следующего.

Когда это использовать и какие ошибки типичны

Параллельное исследование оправдано, когда задач сбора информации много и они не зависят друг от друга; цепочку выбирают, когда шаги связаны (нельзя писать код, пока нет плана). Специализированные агенты вроде code-reviewer или отладчика полезны тем, что у них узкая инструкция и чистый контекст — они не отвлечены историей основного диалога. Главная ошибка (анти-паттерн) — поручать всё одному агенту: его контекст переполняется, фокус теряется, и качество падает. Вторая частая ошибка — реализация без плана, которая ведёт к переделкам. Практический пример: при рефакторинге системы авторизации сначала тремя параллельными агентами собирают файлы, требования безопасности и существующие тесты, затем по этим данным строят план, реализуют его пошагово с ревью и завершают прогоном тестов. Такой разбор задачи на роли делает работу Claude предсказуемой и воспроизводимой.

Параллельное исследование

Запуск нескольких агентов одновременно для исследования разных аспектов

Когда использовать:

Исследование большой кодовой базы, сбор информации из разных источников

Преимущества:

  • Быстрее чем последовательный поиск
  • Изолированные контексты
  • Не теряется информация
// Claude launches in parallel:
Task(Explore, "Find auth implementation")
Task(Explore, "Find API endpoints")
Task(Explore, "Find database models")
Цепочка агентов

Последовательное выполнение: результат одного агента → вход другого

Когда использовать:

Сложные многоэтапные задачи с зависимостями

Преимущества:

  • Структурированный процесс
  • Каждый агент специализирован
  • Проверка на каждом этапе
// Sequential chain:
1. Plan agent → creates implementation plan
2. Code agent → implements based on plan
3. Reviewer agent → reviews the code
4. Test agent → writes tests
Код-ревьюер

Специализированный агент для проверки качества и безопасности кода

Когда использовать:

После написания кода, перед коммитом, проверка PR

Преимущества:

  • Автоматическая проверка качества
  • Находит проблемы до коммита
  • Консистентные стандарты
// code-reviewer agent checks:
- Security vulnerabilities
- Best practices violations
- Performance issues
- Code style consistency
Отладчик

Агент для систематической отладки и поиска причин ошибок

Когда использовать:

Сложные баги, неочевидные причины ошибок

Преимущества:

  • Систематический подход
  • Документирует процесс
  • Находит первопричину
// Debugger pattern:
1. Reproduce the issue
2. Add logging/breakpoints
3. Trace execution flow
4. Identify root cause
5. Propose fix
Аналитик данных

Агент для анализа данных, метрик, логов

Когда использовать:

Анализ производительности, поиск паттернов в логах

Преимущества:

  • Обрабатывает большие объёмы
  • Находит неочевидные паттерны
  • Структурированные отчёты
// Data analysis pattern:
1. Read logs/metrics files
2. Parse and aggregate data
3. Identify anomalies
4. Generate report with visualizations
Комбинирование паттернов

Сложные задачи часто требуют комбинации нескольких паттернов:

// Complex task: Refactor authentication system

// Phase 1: Research (parallel)
const [authFiles, securityReqs, tests] = await Promise.all([
  Task(Explore, "Find all authentication related files"),
  Task(Explore, "Find security requirements in docs"),
  Task(Explore, "Find existing auth tests")
]);

// Phase 2: Plan
const plan = await Task(Plan, `
  Create refactoring plan based on:
  - Files: ${authFiles}
  - Requirements: ${securityReqs}
  - Tests: ${tests}
`);

// Phase 3: Implement (with review)
for (const step of plan.steps) {
  await implementStep(step);
  await Task(code-reviewer, "Review the changes");
}

// Phase 4: Verify
await Task(Bash, "Run all auth tests");
Параллельный поискПланированиеРеализация + РевьюВерификация
Анти-паттерны
ПлохоОдин агент для всего
ХорошоСпециализированные агенты
ПлохоПоследовательный поиск в большом codebase
ХорошоПараллельные Explore агенты
ПлохоРеализация без плана
ХорошоPlan → Implement → Review

Когда какой паттерн использовать

  • Параллельное исследование — когда нужно быстро собрать информацию
  • Цепочка — когда шаги зависят друг от друга
  • Ревьюер — после любых значительных изменений кода
  • Комбинация — для сложных задач с несколькими этапами

Частые вопросы

Что такое суб-агенты в Claude Code?

Суб-агенты — это отдельные агенты, которые Claude Code запускает через инструмент Task для выполнения узкой подзадачи. Каждый суб-агент работает в собственном окне контекста (context window), изолированно от основного диалога, и возвращает главному агенту только итог своей работы, а не все промежуточные шаги. Благодаря этому контекст родительского диалога не засоряется деталями поиска и чтения файлов.

Чем параллельные агенты отличаются от цепочки агентов?

Параллельные агенты запускаются одновременно (например, через Promise.all) и независимо исследуют разные части задачи — это быстрее, когда подзадачи не зависят друг от друга. Цепочка агентов выполняется последовательно: результат одного этапа становится входом следующего. Цепочку выбирают, когда шаги связаны — например, нельзя писать код, пока не готов план.

Когда стоит использовать специализированных агентов вместо одного?

Специализированных агентов (code-reviewer, отладчик, аналитик данных) стоит использовать, когда задача распадается на разные роли. У такого агента узкая инструкция и чистый контекст, он не отвлечён историей основного диалога, поэтому работает точнее. Поручать всё одному агенту — анти-паттерн: его контекст переполняется, фокус теряется и качество падает.

Как Claude Code исследует большую кодовую базу?

Claude Code запускает несколько Explore-агентов параллельно, каждому давая узкую цель — найти реализацию авторизации, найти эндпоинты API, найти модели базы данных. Агенты читают разные части проекта одновременно, и общий результат собирается быстрее, чем при последовательном переборе файлов. Затем по собранным данным строится план и выполняется реализация.

Квиз по уроку

1 из 1

1.Что такое паттерн "делегирования" в архитектуре агентов Claude Code?

Этот урок — часть структурированного курса по LLM.

Мой путь обучения