Файл дня
Субагент для Claude Code, который ищет по коду и не съедает ваш контекст
Слава Сажин 24.09.2026 2 мин чтения 17 просмотров
Субагент для Claude Code ищет по незнакомому коду в своём контексте и возвращает только пути и номера строк. Один файл, ставится за минуту.
Сегодня в «Файле дня» субагент для Claude Code. Вы спрашиваете, где что лежит в коде, который сессия видит впервые, поиск идёт в отдельном агенте, а обратно приходят адреса, а не содержимое файлов.
Зачем отдельный агент
Всё, что прочитала главная сессия, остаётся в её контексте. Чтобы найти, где определена функция и кто её вызывает, она может открыть десяток файлов, и к началу настоящей правки заметная часть контекста уже занята текстом, который больше не нужен. Субагент читает в своём контексте, а в главную сессию возвращается только ответ, строками такого вида:
app/Services/Billing.php:142 - здесь определена charge() app/Http/Controllers/CheckoutController.php:58 - единственный вызов
И две-три строки о том, как устроено найденное. Пересказ файла вместо адресов его промпт прямо называет провалом.
Что поменять под себя
Наш работает на opus с effort: high: ошибка в адресе обходится дороже самого поиска. Чтобы поиск стоил меньше, впишите в строку model sonnet или haiku, а inherit запустит его на той же модели, что и главная сессия.
Инструментов Edit и Write у агента нет, через них он файл не изменит. Но есть Bash, для grep и find, так что «только чтение» держится на промпте, а не на замке. Если нужен замок, уберите Bash из строки tools.
Как поставить
Один файл кладётся в ~/.claude/agents/, новая сессия его подхватит. Слово «ПРОАКТИВНО» в начале описания подсказывает Claude звать разведчика самому, до правки. Команда и проверка одной строкой есть в инструкции ниже.
Файлы
---
name: kod-razvedka
description: ПРОАКТИВНО. Зови ДО правки, когда надо понять, где в незнакомом коде что лежит: найти место определения, все вызовы, похожие образцы, устройство участка. Ищет по коду в своём контексте и возвращает только короткий ответ путями и номерами строк, без пересказа файлов. Только чтение, ничего не решает и не правит. Для одиночного известного пути не нужен - такой файл открывают сами.
tools: Read, Grep, Glob, Bash
model: opus
effort: high
---
Ты разведчик по коду. Тебя зовут, чтобы поиск шёл в твоём контексте, а не в главном разговоре.
Твоё дело - найти места и назвать их адресами.
## Что делаешь
- Ищешь то, что велено в промпте: где определено, где вызывается, как устроено, есть ли
похожий образец. Инструменты - `grep`, `find`, `Glob`, чтение файлов.
- Читаешь ровно столько, сколько нужно, чтобы назвать место и коротко сказать, что там
происходит. Файл целиком читаешь только когда без этого ответа нет.
## Что возвращаешь
Короткий ответ, из которого зовущий сразу пойдёт править. По каждой находке:
путь:номер_строки - что там (одна строка)
Плюс 2-3 строки итога: как устроено найденное и что зовущему важно знать до правки.
Содержимое файлов в ответ не переписываешь: цитата - только когда без этих 1-3 строк
находка непонятна. Пересказ файла вместо адресов - провал работы: зовущий за этим и звал,
чтобы содержимое осталось у тебя, а к нему ушли адреса.
# Как поставить агента-разведчика по коду
Агент ищет по коду в своём контексте и возвращает главной сессии только адреса: путь и номер строки. Главная сессия не тратит свой контекст на чтение файлов, а сам поиск идёт на той модели, которую вы зададите агенту.
Куда положить:
```
mkdir -p ~/.claude/agents
cp agent-kod-razvedka.md ~/.claude/agents/
```
Что вписать своё: в строке `model` - модель, на которой пойдёт поиск: `haiku`, `sonnet`, `opus`, `fable`, полный идентификатор модели или `inherit` (модель главной сессии). В строке `effort` - уровень усилий: `low`, `medium`, `high`, `xhigh` или `max`; какие уровни доступны, зависит от модели.
Как убедиться, что заработало: откройте новую сессию Claude Code и попросите:
```
Через агента kod-razvedka найди, где в этом проекте определена функция <имя>
```
Пока агент работает, команда `/tasks` показывает его строку и модель, на которой он идёт. В ответ придут строки вида `путь:номер_строки - что там`, а не содержимое файлов.
Статья стоила вашего времени?
Все мастер-классы по одной подписке
Записи мастер-классов и файлы к ним, новые выходят каждую неделю. €10 в месяц.