Почему grep не решает проблему
Мне регулярно пишут: «У тебя Max-подписка, токенов вагон — зачем городить индексацию кода? Дай агенту grep и не выпендривайся». Полгода назад я бы согласился. Сейчас — нет.
Когда агент ищет «где тут авторизация», он спавнит эксплорацию: грепает по ключевым словам, находит несколько зацепок, затем читает 15–20 файлов целиком, чтобы по содержимому догадаться о связях между ними. Это сотни тысяч токенов на один запрос, куча tool calls и регулярные промахи — агент банально не дочитывает до нужного места или теряет контекст на стыке файлов.
Граф кода схлопывает этот веер чтений в один точный запрос к индексу: вместо «открою-ка 18 файлов и посмотрю» агент спрашивает граф — и сразу получает список символов, зависимостей и точек входа. Разница в стоимости и точности — кратная.
CodeGraph против Graphify
Я сейчас гоняю CodeGraph — это лёгкий локальный индекс символов для агента: функции, классы, импорты, вызовы. Инструмент заточен под навигацию по коду: быстро отвечает на вопросы типа «кто вызывает эту функцию» или «от каких модулей зависит этот класс». Минимальный footprint, работает локально, не требует внешней инфраструктуры.
Graphify — другое животное. Это граф знаний всего проекта: код плюс документы, PDF, медиафайлы, README, тикеты. Его сила — в связях между разнородными артефактами, а не только в символах кода. Graphify я только собираюсь попробовать, поэтому личного опыта эксплуатации пока нет.
Два инструмента постоянно путают, хотя они под разные боли. CodeGraph — про навигацию по коду. Graphify — про понимание проекта в широком смысле.
Архитектура и хранение индекса
В статье я разбираю, чем они отличаются архитектурно: какие структуры данных используют, как обновляют индекс при изменениях, насколько дорого переиндексировать большой репозиторий.
Отдельная тема — модель хранения. Она не произвольная: это прямое следствие архитектуры инструмента. И здесь возникает практический вопрос, который мало кто задаёт в обзорах: как держать индекс актуальным, если над проектом работает команда с разных машин? Локальный файл-индекс — не ответ, когда агент запущен в CI или у нескольких разработчиков одновременно. Разбираю, как это решается у каждого из инструментов.
Бенчмарки и карта инструментов
Привожу бенчмарки точности и скорости — с честной пометкой «не мои цифры». Чужие замеры полезны как ориентир, но методологию стоит читать внимательно: разные репозитории, разные типы запросов, разные метрики дают несопоставимые результаты.
Отдельно — карта смежных инструментов, которые решают похожие задачи: Gortex, CodeGraphContext, Sourcegraph MCP и Cognee. Каждый из них занимает свою нишу, и чтобы не тратить время на пробы, нужно понимать, чем они принципиально отличаются от CodeGraph и Graphify.
Финал статьи — практическая матрица «кому что брать»: по размеру проекта, типу задач агента, командной инфраструктуре и бюджету токенов.