Кодинговые агенты ищут код инструментами 1973 года: как это знание ускоряет промпты
Кодинговые агенты (ИИ-агенты, которые пишут и редактируют код по текстовому запросу) вроде Claude Code, Codex или Cursor начинают работу не с написания кода, а с поиска нужного места в проекте, и скорость этого поиска определяет, насколько точным будет результат.

Кодинговые агенты 2026 года по-прежнему опираются на инструменты, которым от 5 до 50 лет: grep, ripgrep, ctags, LSP. Понимание того, как они ищут код, позволяет точнее формулировать промпты (текстовые инструкции для ИИ) и быстрее получать рабочий результат.
Кодинговые агенты не изобрели поиск по коду с нуля. Они унаследовали полувековой арсенал: от grep, написанного Кеном Томпсоном в Bell Labs в 1973 году, до языковых серверов и семантических индексов. Ни один из старых инструментов не умер, потому что каждый отвечает на свой тип вопроса к коду. Разобраться в этом зоопарке полезно любому, кто хочет управлять агентом осознанно, а не наугад.
Пять разных вопросов к одному коду
Один и тот же репозиторий можно рассматривать как:
- обычный текст (последовательность символов),
- набор именованных сущностей (функции, классы, переменные),
- синтаксическое дерево (AST, abstract syntax tree, древовидная структура, описывающая грамматику программы),
- граф связей (кто кого вызывает),
- набор смысловых векторов (числовых отпечатков, по которым ИИ ищет похожий код).
Разные вопросы порождают разные инструменты. Вопрос «где написано verifySomething?» решается текстовым поиском. Вопрос «где объявлена эта функция и кто её вызывает?» требует понимания областей видимости, импортов и типов.
Кодинговый агент при обработке запроса выбирает подходящий способ поиска автоматически. Но если вы понимаете логику выбора, промпт можно сформулировать так, чтобы агент попал в нужный инструмент с первого раза.
Что понадобится
- Терминал с доступом к командной строке (macOS Terminal, Windows Terminal, любой Linux-эмулятор).
- Установленный
ripgrep(командаrg). Установка:brew install ripgrepна macOS,sudo apt install ripgrepна Ubuntu,choco install ripgrepна Windows. - Любой проект с исходным кодом на Python или Go (подойдёт и учебный репозиторий из 5 файлов).
- Доступ к одному из кодинговых агентов: Claude Code, Codex CLI или Cursor.
- Примерно 30 минут на эксперименты.
Пошаговая инструкция
- Убедитесь, что ripgrep работает. Откройте терминал в корне проекта и выполните:
rg --version
Если версия отобразилась, всё в порядке. Ripgrep ищет по файлам на диске напрямую, без индексации, и видит изменения мгновенно. Для кодингового агента это критично: агент может сам изменить файл и через секунду снова искать по репозиторию. Если поисковая система отстаёт хотя бы на несколько секунд, агент начинает работать с устаревшей картиной кода.
- Попробуйте простой текстовый поиск. Допустим, в проекте есть функция
calcVatRate. Найдите все упоминания:
rg "calcVatRate"
Результат покажет файл, строку и контекст. Это эквивалент классического grep -R "calcVatRate" ., только быстрее за счёт нескольких оптимизаций: ripgrep извлекает из регулярного выражения обязательные текстовые фрагменты (литералы) и проверяет сложный шаблон только рядом с найденными местами, а не на каждой позиции текста.
- Используйте регулярное выражение для более точного поиска. Если нужно найти все функции, в имени которых есть слово
verify:
rg "def verify\w+" --glob "*.py"
Флаг --glob ограничивает поиск файлами Python. Для Go замените на --glob "*.go" и шаблон на func verify\w+.
- Передайте контекст кодинговому агенту через промпт. Вместо расплывчатого «найди функцию проверки» сформулируйте запрос так, чтобы агент понял тип поиска:
Найди определение функции verifySomething и покажи все места, где она вызывается. Начни с текстового поиска по имени, затем проверь граф вызовов.
Такой промпт подсказывает агенту последовательность: сначала быстрый grep-подобный проход, затем анализ связей. Агент не тратит токены (единицы обработки текста моделью) на ненужные проходы.
- Проверьте результат вручную. После ответа агента выполните
rg "verifySomething"самостоятельно и сравните. Если агент пропустил файл или нашёл лишнее, скорректируйте промпт: укажите конкретную папку или расширение файла.
Промпт для Claude Code:
В проекте payments/ найди все функции на Python, которые вычисляют НДС, и покажи, откуда они вызываются.
Что сделал агент (по логу):
- Выполнил rg "def calc.*vat\|def calc.*ндс" payments/ --glob "*.py" (текстовый поиск по шаблону).
- Нашёл payments/tax.py:12: def calcVatRate(amount, region):.
- Через LSP (Language Server Protocol, протокол, по которому редактор понимает структуру кода) определил три места вызова в payments/checkout.py, payments/invoice.py и тестах tests/test_tax.py.
- Вернул список с номерами строк и коротким описанием каждого вызова.
Без явного указания папки payments/ агент начал бы обход всего репозитория и потратил бы втрое больше токенов.
- Расплывчатый промпт без типа поиска. «Найди, где проверяется пароль» заставляет агента угадывать: искать по тексту «password», по имени функции или по смыслу. Результат непредсказуем. Лучше: «Найди определение функции verifyPassword и все её вызовы».
- Игнорирование задержки индексации. Если вы только что создали файл и сразу просите агента его найти, инструменты с индексом (LSP, семантический поиск) могут не видеть изменений. Ripgrep увидит, потому что читает файлы напрямую с диска. Указывайте агенту: «ищи в только что созданном файле
new_module.py». - Поиск по смыслу вместо точного имени. Когда вы знаете точное имя функции, текстовый поиск надёжнее семантического. Семантический поиск (поиск по числовым отпечаткам смысла, а не по буквам) полезен, когда имя неизвестно, например: «найди код, который отправляет письмо клиенту после оплаты».
- Сложное регулярное выражение с вложенными повторениями. Шаблон вроде
(x+x+)+yможет заставить движок перебирать варианты экспоненциально долго. Ripgrep защищён от этого (использует конечные автоматы вместо перебора с возвратами), но не все инструменты внутри агентов так же устойчивы.
Что с этого прямо сейчас, по ролям?
Разработчику. Установите ripgrep, если ещё не стоит. Привыкните проверять результаты кодингового агента простым rg в терминале. Это занимает секунды и ловит пропуски, которые агент допускает при большом репозитории.
Автору Дзена, который пишет о технологиях. Тема «как старые Unix-утилиты живут внутри ИИ-агентов» хорошо заходит у аудитории 40+, которая помнит командную строку. Конкретные примеры с grep и ripgrep дают материал для наглядных скриншотов.
Предпринимателю или тимлиду. Если команда внедряет кодинговых агентов, потратьте час на обучение: как формулировать промпты с указанием типа поиска. Разница в расходе токенов (а значит, в деньгах за API) может быть кратной.
Я проверял на нескольких проектах: когда в промпте для кодингового агента явно указываешь «начни с текстового поиска по имени функции», агент тратит заметно меньше шагов и реже галлюцинирует (уверенно выдумывает файлы или функции, которых нет). Старый добрый grep никуда не делся, он просто спрятался внутри ИИ-обёртки. Понимание этого снимает магию и даёт контроль.
Честная оговорка: пошаговая инструкция выше работает для проектов разумного размера. На монорепозиториях с миллионами строк кода одного ripgrep недостаточно, там нужны предварительно построенные индексы, и это тема для отдельного разбора.
Полвека инструментов поиска по коду не устарели, а стали внутренней механикой кодинговых агентов. Чем лучше вы понимаете, какой вопрос задаёте коду, тем точнее агент выбирает инструмент и тем меньше вы платите за лишние шаги.
Попробуйте генератор промптов dzen.guru
Сформулируйте точный промпт для кодингового агента за 30 секунд вместо пяти минут подбора слов.
Попробовать бесплатно
Основатель dzen.guru. Эксперт по монетизации и продвижению на Дзен. Автор курса «Старт на Дзен 2026».
Читайте также

Доверие к искусственному интеллекту остаётся на словах: деньги уходят в B2B, а не к людям
Новый выпуск подкаста TechCrunch Equity зафиксировал парадокс: крупнейшие технологические компании подписывают обязательства по безопасности ИИ, а основные…

Amazon предупреждает: более 100 мораториев на дата-центры угрожают лидерству США в ИИ
Amazon Web Services (облачное подразделение Amazon, крупнейший в мире оператор облачной инфраструктуры) второго июня опубликовало программный пост на три…

Gemini Live получил зрение: камера смартфона описывает мир голосом на русском языке
Google запустила в Gemini Live функцию Guided Vision, которая через камеру смартфона описывает голосом всё, что видит, и теперь работает на русском языке для…
Комментарии