← все видео

Claude Code с агентами проще (и лучше) чем кажется

Roman Kubar · 2026-01-22 · 15м 59с · 16 737 просмотров · YouTube ↗

Топики: ai-loop-engineering

🎧 Аудио

📝 Summary

model=deepseek-v4-flash · prompt=summary-v7 · 5 704→1 932 tokens · 2026-07-20 12:12:51

🎯 Главная суть

При работе с Claude Code основное ограничение — контекстное окно в 200 тысяч токенов, из которых реально доступно 99–135 тысяч. По мере накопления истории запросов, чтения файлов и ответов модели окно забивается неактуальной информацией. Решение — выносить ресурсоёмкие или изолированные задачи в суб-агентов (отдельные инстансы Claude Code со своим контекстным окном). Это позволяет сохранять основное окно чистым и избегать потери данных при автоматическом сжатии.

Как устроено контекстное окно в Claude Code

Окно в 200 тысяч токенов делится на три части: системные промпты, инструменты (tools) и буфер автокомпакта. Между ними остаётся 99–135 тысяч токенов для запросов пользователя, размышлений модели, чтения файлов и ответов. После каждого действия содержимое файла попадает в контекст и остаётся там даже после того, как модель переписала код. Постепенно окно забивается историей, которая уже не нужна для текущей задачи.

Два подхода к очистке контекста: компакт и суб-агенты

Первый — слэш-команда /compact. Модель обобщает весь накопленный диалог и размещает сжатую информацию в начале нового окна, остальное очищается. Недостаток: при сжатии часть важных деталей теряется, и точность модели падает.

Второй — использование суб-агентов. Вместо того чтобы держать всё в одном окне, вы делегируете подзадачу отдельному инстансу Claude Code. У того своё контекстное окно (с меньшим буфером автокомпакта, поэтому полезное пространство шире), свой системный промпт и набор инструментов. После завершения работы суб-агент возвращает только итоговый ответ в основное окно, не засоряя его промежуточными рассуждениями и прочитанными файлами.

Как работают суб-агенты из коробки

В Claude Code есть несколько встроенных суб-агентов, описанных в инструменте task. Основные:

Все они могут динамически подгружать MCP-тулзы, но в версии 2.1.15 исправлена ошибка: теперь MCP-тулзы не загружаются в суб-агент автоматически, а остаются доступными для подгрузки по запросу. Это уменьшает накладные расходы на контекст.

Создание и настройка кастомных суб-агентов

Команда /agents открывает меню: можно создать агента в локальном проекте (для коммита в Git и совместной работы) или в персональной домашней директории. Есть два способа — через модель (Claude) или вручную. Вы пишете промт для системного промпта, затем выбираете доступные инструменты (read-only, редактирование, выполнение, все), модель (Sonet, Opus, Haiku или наследование от родительской), цвет отображения.

После создания формируется Markdown-файл с frontmatter: name, description, model, color, tools, и тело, которое становится системным промптом при запуске. В frontmatter можно указать скиллы (skills), которые будут сразу подгружены в контекст суб-агента — например, правила оформления коммитов или задачи трекера, чтобы агенту не пришлось искать их самостоятельно.

Также настраивается режим взаимодействия: default (запрашивает подтверждение), plan (только планирование), yolo (без дополнительных вопросов). В YOLO-режиме агент может свободно писать файлы через bash (создавая tmp-файлы и перемещая их), не спрашивая пользователя.

Параллельная работа суб-агентов

Ключевое преимущество — запуск нескольких суб-агентов одновременно на одну задачу под разными углами. Например, запрос: «Исследуй кодовую базу и дай список зависимостей отдельно для фронтенда и для прокси». Claude Code запускает двух суб-агентов Explorer — один для UI-зависимостей, другой для прокси-зависимостей — и получает результат быстрее, чем если бы анализировал всё последовательно в одном окне.

Плюсы и минусы подхода

Плюсы:

  1. Сохранение основного контекстного окна — рутинная работа уходит в отдельные окна.
  2. Гибкое управление правами внутри суб-агента (YOLO-режим без запросов).
  3. Чётко заданный контекст для каждой подзадачи — ничего лишнего.
  4. Возможность параллельного запуска нескольких агентов на одну задачу.

Минусы:

  1. Усложняется flow — нужно решать, что выносить в суб-агент, а что оставлять в основном окне.
  2. При запуске с чистым контекстом суб-агенту не хватает информации — он тратит дополнительные токены на сбор данных (чтение файлов, запросы к пользователю).

📜 Transcript

ru · 1 999 слов · 38 сегментов · clean

Показать текст транскрипта
Бывает такое, что сидишь с клауд-кодом, пытаешься реализовать какую-то фичу в проекте, почти уже доделал и внезапно понимаешь, что окно контекста заканчивается. И вроде есть автокомпакт, который помогает с этим, но после него модель становится сильно глупее и хочется реализовать все внутри одного контекстного окна. Но не всегда это возможно из-за большого объема, например, кодовой базы. В этом видео мы посмотрим на один из способов решения этой проблемы с помощью саб-агентов. Поехали! Давайте для начала еще раз посмотрим, как формируется окно контекста при работе в клауд-коде. У нас есть общий окно в 200 тысяч токенов, которое разделяется на три части. Системные промпты, тулзы и другие инструменты, и буфер автокомпакта, который находится в конце. И посередине у нас остается от 99 до 135 примерно тысяч токенов окно, внутри которого мы можем работать. И это окно обычно заполняется запросами пользователя к модели, размышлением модели и ответами, чтением каких-то файлов, ну и остальной информацией, которая накапливается в процессе запросов и ответов. И часть этой информации не всегда актуальна для решения последующих задач. Например, мы попросили модель реализовать что-то в коде, модель посмотрела файл. содержимое этого файла попало в сам контекст. Модель на основании этого содержимого написала новый код, но вся история остается в контекстном окне и заполняет его, даже если эта информация уже не актуальна. И возникает вопрос, а можем ли мы часть этой информации оттуда убрать для того, чтобы освободить место для следующих задач? И ответ на этот вопрос не так очевиден. Есть два основных способа. Это автокомпакт или просто компакт. И использование саб-агентов. Давайте сначала посмотрим на компакт. Допустим, у нас есть заполненное окно контекста в 140 тысяч токенов. И у нас остается до автокомпакта 14 тысяч токенов. Мы выполняем запрос компакт. Эта слэш-команда отправляет запрос к модели о архивации фактически всего окна контекста с потерей информации. При запуске этой слэш-команды отправляется запрос со всем контекстом из предыдущей встречи и запросом «пожалуйста, суммаризируй, бла-бла-бла» и «пример». И модель, соответственно, отвечает, и уже эта суммаризация попадает в начало контекстного окна при продолжении работы с Cloud-кодом. Схематично это можно показать следующим образом. Например, у нас заполняется окно контекста, пользователь пишет компакт, модель смотрит весь контекст и составляет суммаризированную информацию об этом диалоге. После этого Cloud Code очищает все окно контекста и вначале кладет суммаризированную информацию о прошлом разговоре. И дальше пользователь также может продолжать вести разговор, ассистент может отвечать. до тех пор, пока следующая итерация не произойдет, когда суммаризируется уже та информация, которая находится в текущем окне контекста. Проблема в таком подходе в том, что при сжатии информации, очевидно, часть из нее теряется. Если в... предыдущем окне контекста какая-то информация была достаточно важная, а модель ее пропустила, то в новом окне контекста этой информации может не оказаться, и в этом случае мы сильно теряем в эффективности работы этой модели. Один из способов избежать компакта — это сохранять окно контекста в текущей итерации достаточно чистым и оставлять там только ту информацию, которая важна для решения общей задачи без выхода за рамки выделенного окна контекста. В этом нам могут помогать сабагенты. Что такое сабагенты? Это фактически еще один инстанс клауд-кода внутри нашего запущенного клауд-кода. Мы можем попросить нашу модель выделить часть работы. и отправить в отдельного сабагента с отдельным контекстным окном. Например, чтобы поработать с какими-то объемными файлами, логов или большой кодовой базой, мы можем попросить модель запустить отдельного сабагента, составить описание работы с этой задачей, добавить весь нужный контекст только для этой задачи и переложить работу с файлами в... эту модель. После запуска сабагент будет проводить работу уже в своем окне контекста. Добавлять цепочку рассуждений. Она может быть достаточно объемная. Мы также можем отвечать саб-агенту на его запросы в его контекстном окне и работать как с обычным контекстным окном, за исключением того, что изначально системный промпт и набор тоузов мы можем регулировать для каждого саб-агента в отдельности. И в среднем это сокращает занимаемый объем вот этими накладными расходами, плюс буфер автокомпакта по умолчанию тоже сильно меньше, поэтому основное контекстное окно, внутри которого может происходить рассуждение, оно расширяется. И после своей работы сабагент возвращает ответ в основное окно контекста, с которым дальше пользователь может продолжать работать без засорения основного окна ненужной контекстной информации. Важно еще отметить, что мы сами как пользователи можем создавать своих сабагентов и формировать системный промпт для них, чтобы они действовали внутри какого-то Мы чуть позже создадим своих агентов и посмотрим, как они могут настраиваться, какие инструменты для этого есть. И в Cloud Code есть какой-то набор саб-агентов, которые мы можем использовать из коробки. Один из них это Explore, который использует модель Haiku. Часто используется для того, чтобы исследовать, например, кодовую базу, прочитать файлы и как-то их суммаризировать. Есть агент Plan. который составляет планы реализации, например, новых фич или сложных задач, которые он пытается разбить на более мелкие для исполнения. Есть еще не специализированный сабагент, у которого нет какого-то выделенного контекста, и он часто используется просто, чтобы выделить какую-то задачу в отдельное окно контекста для сохранения основного. Есть еще и другие типы агентов со своим контекстом, со своими настройками тулов, но это основной список, который часто используется. Давайте теперь посмотрим, где в Cloud Code эти агенты описаны. Как мы знаем, у Cloud Code есть набор тулзов для чтения файлов, для выполнения bash-команд, для записи файлов и так далее. И первой в списке у нас стоит тул, который называется task. Собственно, здесь и описывается принцип работы всех саб-агентов. Вначале у нас идет описание агентов. для чего каждая из них используется, и какие тулы им доступны. Каким-то агентам, например, башу, доступен tool bash. И explore, например, у нас разрешен тулы все, кроме task. И здесь у нас перечислены все встроенные агенты, плюс те, которые мы сами создали. Здесь у меня создано три кастомных... Агента, который имеет свое описание, для чего они должны использоваться, примеры их использования и какие тулзы ему доступны. Этому конкретному доступны все тулзы. Дальше идет Project Manager, тоже со своим описанием, с примерами использования. И также все тулзы доступны. Frontend Expert, тоже описание. Здесь даже по-русски есть у него описание. И также все тулзы. После этого идет... описание, опять же, для всех агентов в целом. Я сейчас удалил все агенты, которые были у меня созданы локально. И давайте посмотрим, как мы можем создать новых. Для этого мы можем использовать слэш-команду agents. И сейчас мы видим, что у нас есть встроенные агенты. Bash, Status Line Setup, Explorer Plan и так далее. И у нас есть возможность создать нового агента. Мы можем выбрать, где мы его создаем у себя локально в проекте. Это удобно для того, чтобы, например, закоммитить это в Git и использовать вместе с остальной командой разработчиков. Либо у себя персонально в домашней директории, чтобы не перемешивать сам проект и настройки клауд-кода. Сейчас мы создадим в персональной директории. И здесь у нас предлагается два разных варианта. Либо с помощью Клода, либо самому вручную. Создадим с помощью Клода для удобства. Здесь он просит ввести промт для наполнения контекста, который потом попадет в System Prompt. Здесь мы для примера ввели вот такой промт. Отправляем в модель, и внутри она составляет уже основной текст, который попадет у нас в самого агента. Модель отработала, и следующий запрос у нас на включение-отключение доступа к тулзам. Можно включить все тулзы, только read-only, те, которые на редактирование, на выполнение, другие тулзы. И можно посмотреть конкретные тулзы, которые у нас есть. Давайте разрешим все тулзы и выберем Continue. Здесь у нас есть возможность выбрать саму модель. Три варианта Sonet, Opus и Haiku. И четвертый вариант — наследовать от основной модели, которая запускает этот саб-агент. Давайте здесь, так как у нас разработчик, выберем Opus, цвет, который отображается в интерфейсе. И здесь мы видим основную информацию по созданному агенту. Его название — Senior Weekend Architect, там, где он располагается, MD-файл. Какие тузы, какая модель, description и системный промпт, который у нас будет использоваться при запуске этого агента. Сохраняем. И здесь мы его видим. Можем отредактировать тулы, модель, то, что мы заполняли. И давайте посмотрим, как он выглядит у нас в файлике. Ну и в файлике он у нас выглядит следующим образом. У нас есть Markdown файл с фронтметером, где у нас в отдельном поле имя, description, Здесь у нас вперемешку идет английский и русский, потому что изначально в этом скиле модель получила описание на английском языке, и часть на русском языке она получила уже от нас. Модель указана, цвет тоже указан. И здесь основное тело, которое попадает уже в System Prompt при запуске этого агента. И динамически загружаемыми тулами, я рассказывал в прошлом видео, MCP-тулзы доступны, но они не подгружаются сразу в окно контекста, но доступны для подгрузки динамически. И раньше при запуске сабагентов все эти тулзы автоматически подключались, но в версии 2.1.15, которая сейчас актуальна, эту ошибку исправили. И при запуске сабагентов, вот здесь мы видим, что сабагент запускается, и какие тулзы ему доступны. Tool Search, раньше MCP Search назывался, и еще дополнительных два Tools. И здесь не загружены автоматически Tools для нашего GitHub. Они ему доступны, он все еще может их загрузить. Здесь вот мы в описании можем их увидеть, что он их может загрузить, но они по умолчанию не загружены. В предыдущей версии это было не так, и они автоматически сюда подгружались. Также говоря про настройки агента, важно упомянуть, какие еще у нас средства есть. Как уже говорили, есть настройка доступа к тузам. Здесь мы установили read, grep, globe и bash. Если мы перезапустим клод и посмотрим в агента, то мы увидим execution tools и увидим, что у нас доступны bash, globe, grep. Также мы можем разрешить один из режимов работы с правами. Дефолтный. Разрешать редактирование. Не спрашивать. Не спрашивать это когда агент не сможет задавать дополнительные вопросы пользователю. Где мы там? 1, 2, 3. Можем выбирать. Либо разрешено все. Это как YOLO mode. Или план, который используется для планов. Давайте попробуем включить YOLO mode. Перезапустить. И посмотреть как это будет выглядеть. Запусти сабагента и обнови архитектуру в Redmi. Ну и, собственно, здесь мы видим, как Cloud Code изобретает запись в файлы. Ему доступен Tool Bash, но не доступен Write, поэтому он создает файлик в TMP, пишет туда текст и потом этот файлик переносит. В процессе этого ни одного запроса он нам не задал. Соответственно, у нас эти все инструменты работают. Также можно в фронтметре указать те скиллы, которые нужно подгрузить в окно контекста работы этого сабагента. Это удобно, если, например... Агенту нужно работать с трекером задач, сразу можно подгрузить правила оформления задач, правила оформления коммитов, если у нас агент про работу с гитом, например, и остальные, чтобы он не ходил, не искал, если мы точно знаем, что ему эти скиллы пригодятся, здесь мы можем списком ему это указывать. Планирую снять отдельное видео про скиллы, там расскажу подробнее. Например, мы можем попросить CloudCode исследовать нашу кодовую базу с разных точек зрения. Использую сабагентов, исследую код и дай мне список зависимости отдельно для фронтенда и для прокси. Здесь мы видим, что он запустил два сабагента Explorer, отдельно для UI-зависимости и отдельно для прокси-зависимости. Это может ускорить такие операции, как исследование новой кодовой базы или, например, код-ревью с разных точек зрения. Ну и давайте разберем плюсы и минусы работы с агентами. Первый плюс, очевидно, является сохранение окна контекста. Мы можем выносить рутинную работу по какой-то задаче в отдельное окно и сохранять в основном окне только то, что важно для глобальной задачи. Противовес этому усложнению Flow с необходимостью решать, что именно выносить, а что оставлять в основном окне контекста. Вторым плюсом я бы выделил управление правами. Мы сразу в сабагенте можем выдать доступ без запроса к каким-то тулам, и он автоматически будет с ними работать. Третий плюс по управлению контекстом, он аналогичен второму. Мы можем четко задать тот контекст, который необходим для работы с конкретной задачей для этого сабагента. Ко второму минусу отнесу при запуске агента с чистым окном контекста. Часто ему не хватает какой-то информации, которую он отдельно должен ходить собирать по файлам или запрошить у пользователя, на что тратится дополнительное время и токены. Четвертый плюс — это возможность запускать параллельно несколько самагентов на одну задачу под разным углом. Это основная информация о сабагентах, которую я использую ежедневно. На самом деле сабагенты это достаточно широкая тема. Если остались какие-то вопросы, пишите в комментариях. Буду снимать отдельное видео. Подписывайтесь на канал, здесь будут видео и на остальные темы. Всем пока.

⚙️ Pipeline jobs

StageStatusAtt.UpdatedError
download done 1/3 2026-07-20 12:12:01
transcribe done 1/3 2026-07-20 12:12:28
summarize done 1/3 2026-07-20 12:12:51
embed done 1/3 2026-07-20 12:12:52

📄 Описание YouTube

Показать
В этом видео подробно разбираю механизм сабагентов (subagents) в Claude Code

Что вы узнаете:
— Что такое сабагенты и зачем они нужны
— Какие типы агентов существуют (Explore, Plan, Bash, general-purpose и другие)
— Как Claude Code решает, когда запускать сабагента
— Параллельный запуск нескольких агентов
— Фоновое выполнение задач

Типы сабагентов:
• Bash — выполнение команд, git-операции
• Explore — быстрый поиск по кодовой базе
• Plan — проектирование архитектуры и планов реализации
• general-purpose — исследование сложных вопросов

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

Официальная документация:
https://code.claude.com/docs/en/sub-agents

---
Таймкоды:
00:00 Вступление
00:29 Окно контекста
01:52 Compact
02:41 Схема компакта
03:59 Что такое саб-агенты
05:51 Встроенные агенты
06:35 Механизм запуска агентов
08:03 Создаём своих агентов
10:59 Динамические инструменты
11:52 Параметры агентов
13:52 Параллельный запуск
14:31 Плюсы и минусы