1. Что кладём в файл субагента
Про субагента Тёма уже всё понял: отдельный работник со своей чистой головой, живёт файлом .claude/agents/reviewer.md. По сути — второй инженер, которого он сейчас и наймёт. Приходит с новым кофе и готовым настроем — раз можно завести специалиста под роль, давай заводить:
— Слушай, всё, я понял, кто такой субагент. Теперь давай руками. Как мне такого проверяющего реально завести? Где кнопка?
— Кнопки нет — есть файл, ты его уже видел, — отвечает Лёха. — Пора заглянуть внутрь. Внутри .claude/agents/reviewer.md — описание работника. Сверху небольшой служебный блок, под ним — что он должен делать обычными словами:
---
name: reviewer
description: Ревьюит код на баги и шероховатости. Применять, когда просят посмотреть готовую вещь свежим взглядом.
---
# Ревьюер
Прочитай код, найди баги, неудобства, шероховатости. Выдай список находок
с приоритетом. Не правь сам — только отчёт.
— А эти две строчки сверху, в рамке? — всматривается Тёма.
— Их всего две, и обе простые. name — имя работника, reviewer, по нему ты его и зовёшь. description — самое важное: когда его звать. По этому описанию главный агент сам понимает, что задача под ревьюера, и отдаёт её ему. А ниже, обычными словами, — что работник должен делать. Заметь последнюю строчку задачи: «не правь сам — только отчёт». Мы завели придиру смотреть, а не чинить. Пусть находит и докладывает — а решать и править будем мы сами, осознанно.
— А почему не дать ему сразу и чинить?
— Потому что это две разные работы, помнишь? Кто нашёл — не обязательно тот, кто чинит. Придира придирается. Как тонко настроить работника — что ему можно, что нельзя, на каком движке думать, — это отдельная большая тема сильно дальше. Сегодня хватает роли словами: кто он и что делает. Кладёшь этот файл — и субагент готов.
2. Как проверить и как делегировать
— Проверим, что работник на месте, — продолжает Лёха. — Никаких особых команд не надо. Набери в строке одну собачку:
@
Выпадает список — и в нём, среди файлов проекта, стоит reviewer со своим описанием.
— О, вот он, — Тёма тычет в экран. — А я думал, надо где-то в настройках его регистрировать.
— Не надо. Положил файл в .claude/agents/ — и через пару секунд работник доступен. Агент сам следит за этой папкой. Перезапускать разговор не нужно, ничего нажимать не нужно. И это, кстати, самый надёжный способ проверить, что твоё описание подхватилось: если работник виден по собачке — значит эта сессия его знает. Не виден — значит что-то не так с файлом, иди смотри.
— А если бы не подхватился?
— Есть ровно один случай, — говорит Лёха. — Если папки .claude/agents/ не было вообще, когда ты начинал разговор. Новую папку сессия не отслеживает — она про неё не знала на старте. Тогда перезапускаешь, сохранив разговор:
claude --continue
— И всё, дальше папка на месте, следующих работников кладёшь и пользуешься сразу. Это разовая история, на первого работника. Теперь самое вкусное. Поручаем ему разбор по твоему брифу — обычными словами:
Пусть reviewer разберёт мою Змейку по REVIEW_BRIEF и найдёт, что улучшить.
Здесь важно поймать саму идею. Ты не водишь ревьюера по шагам — не говоришь «теперь открой этот файл, теперь проверь хвост, теперь глянь управление». Ты отдаёшь узкую задачу целиком и отходишь: он сам открывает нужные файлы, сам прогоняет, сам возвращает находки. Это и называется делегировать — не выполнить руками, а поручить и получить результат. Раньше ты вёл ИИ-агента за ручку по каждому шагу; теперь у тебя есть работник, которому задачу отдают целиком. (Как это ощущается вживую — прочувствуешь на практике, когда сам запустишь придиру начисто.)
— А я могу позвать его как-то… поадреснее? Если он сам не сообразит?
— Можешь. Через ту же собачку, прямо по имени:
@reviewer проверь это
— Собачка у тебя, выходит, на две работы, — добавляет Лёха. — Набрал одну — посмотрел, кто вообще есть в штате. Набрал с именем — ткнул пальцем в конкретного. Если имя длинное и лень печатать, выбери его из того же выпадающего списка, агент подставит сам. Но обычно он и так понимает по смыслу задачи — для того у него есть description. Явный вызов — это когда хочешь наверняка.
3. Роль босса: выбирать, а не внедрять всё подряд
— И вот теперь ты в новой роли, — продолжает Лёха. — Ты босс. Субагент выдал список находок, но решать, что с ними делать, — тебе. И тут важная привычка: не внедряй всё подряд. Глянул находки, выбрал осознанно — вот это правлю, потому что реально баг, а вот это не трогаю, это вкусовщина, мне и так нравится. Хороший руководитель не делает всё, что советует подчинённый. Он выбирает.
— Логично, — Тёма кивает. — Я ж босс, не исполнитель его капризов.
— Ну вот, сам всё и сформулировал. И один тихий нюанс на будущее, — Лёха роняет это легко, будто между делом. — У субагента своё окно внимания. Он не знает того, что говорилось в нашем основном разговоре. Иногда из-за этого он может чего-то не учесть. Пока просто запомни. А что с этим делать по-взрослому — не верить помощнику на слово, проверять его выводы — это отдельная большая тема сильно дальше. Сегодня просто запомни, что окно у него своё.
4. Бонус: задачу можно наговорить голосом
— Раз уж сегодня про удобство, — добавляет Лёха почти вскользь, — есть у меня для тебя одна фишка. Любой текст агенту ты можешь наговорить голосом, а не печатать. Есть два способа: встроенный в claude распознаватель речи и внешняя утилита.
Если ты хочешь пользоваться встроенным способом, то тебе нужно сначала включить голосовой режим. Команда такая:
/voice hold
— hold — это режим «зажал — говоришь — отпустил». Зажал клавишу space, проговорил задачу вслух, отпустил — текст напечатался сам, агент получил обычный текст. Если печатаешь медленно или задача длинная — реальная суперсила.
Тёма оживляется — он как раз печатает не очень быстро.
— И что, мы теперь сможем общаться голосом?
— Не обольщайся, — Лёха осаживает мягко. — Это просто удобный ввод, не отдельная магия. Текстовый путь всегда остаётся — хочешь, печатай как раньше. Голос только заменяет клавиатуру на твой рот, и всё. Я буду по-прежнему писать текстом. Голосовой ввод - так, приятный довесок. И учти: встроенный голос завязан на подписку Claude — на нашем курсовом доступе он не заработает. Так что для нас рабочий способ — второй.
— Ну ладно, понял. — А что за второй способ?
— Второй способ - это поставить бесплатную утилиту, называется Handy. В отличие от claude, Она тебе дает голосовой ввод вообще для любой программы на компьютере. Работает полностью бесплатно, и даже без интернета.
— Второй вариант вроде как бы и лучше — вслух размышляет Тёма. —Работает для любой программы на компе, без интернета. Точно бесплатно? А как поставить?
— Просто попроси ИИ-агента поставить тебе ее. Вообще-то, он должен был это сделать ещё в самом начале, когда ты устанавливал Claude Code в первый день. Но если ее у тебя нет - попроси ИИ поставить. Команда может выглядеть примерно так:
Установи приложение Handy для локального голосового ввода: https://github.com/cjpais/Handy
— Офигеть, работает, — Тёма уже что-то наговаривает. — Короче, все сделал: завёл файл-роль, глянул собачкой, что он на месте, потом ей же его и позвал, он сам разобрал и принёс находки. А я выбираю, что брать. Я не вызываю функцию — я поручаю работу.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ