Skip to Content

Graphify

Вопросы вроде «как запрос доходит до базы данных?» или «что сломается, если поменять parseConfig?» обычно стоят агенту длинной цепочки grep и чтения файлов. Плагин Graphify превращает воркспейс в граф знаний с помощью graphify  — открытого инструмента Graphify-Labs: файлы, функции, классы, вызовы, импорты, разделы Markdown и комментарии NOTE: / WHY:, сгруппированные в подсистемы. Подключённый агент спрашивает граф словами или по имени символа и за один вызов получает нужную часть графа — с файлом и строкой для каждого результата.

Карточка рисует граф картой, и каждый запрос агента проигрывается на ней вживую: видно, что агент спросил, с каких узлов начал, как расходился поиск и что нашёл.

Как пользоваться

  1. В меню добавления карточек выберите Плагин…, откройте Graphify на вкладке Плагины и нажмите Добавить на канвас.
  2. Нажмите Установить на карточке (один раз на компьютер). NeuroSquad скачивает uv  0.12.22 с GitHub и сверяет его с контрольной суммой, зашитой в приложение; uv ставит собственный Python 3.12, затем устанавливает graphify 0.9.74 с PyPI, где каждый пакет закреплён по хешу (--require-hashes, только готовые бинарные пакеты). Около 250 МБ, всё в папке данных приложения. Ваши собственные настройки Python, uv и pip не используются и не меняются.
  3. Затем карточка сама строит граф всего воркспейса. Видно, сколько файлов уже прочитано, сколько всего и сколько примерно осталось.
  4. Проведите стрелку от агента к карточке.

Теперь у агента есть инструменты графа. Большинство CLI подхватывают их без перезапуска; уберите стрелку — и они пропадут.

Что может агент

ИнструментНа что отвечает
graphify_queryВопрос словами или именами символов → нужный подграф (символы, файлы со строками, связи вызовов и импортов)
graphify_neighborsВсё, что символ вызывает, кто его вызывает, что он импортирует и кто импортирует его, с файлом и строкой каждого использования
graphify_pathКратчайшая цепочка вызовов и импортов между двумя местами
graphify_affectedРадиус изменения: всё, что зависит от символа или файла, транзитивно
graphify_nodeГде находится символ, его тип и подсистема
graphify_communityВсе участники одной подсистемы
graphify_god_nodesСамые связанные символы — ядро кодовой базы
graphify_statsРазмер графа и сколько связей прочитано прямо из кода
graphify_reindexОбновить граф сейчас, после только что сделанных правок

Пока первая сборка идёт, инструменты отвечают, сколько осталось («граф ещё строится: 37%, 170 из 461 файла…»), — агент продолжает обычным поиском и спрашивает снова позже.

Как агентов направляют к графу

Агент, у которого есть инструмент графа, пользуется им не всегда: модели привыкли к grep. Graphify добавляет три лёгких слоя, ни один из которых ничего не блокирует:

  • Описания инструментов говорят, когда граф лучше («используйте до grep, если вопрос о структуре»), а когда по-прежнему нужен текстовый поиск (строковые литералы, сообщения в логах, значения конфигов). В Claude Code graphify_query, graphify_neighbors и graphify_affected загружены всегда, а не спрятаны за поиском инструментов.
  • Заметка в первом ходе. Первый ход сессии со стрелкой несёт одну короткую фактическую заметку: что такое граф, какой инструмент на какой вопрос отвечает и когда grep всё ещё уместен. Следующие ходы получают однострочное напоминание, если запрос про структуру кода (и каждый пятый ход в любом случае). Когда вы убираете стрелку, следующий ход получает одну заметку о том, что инструментов больше нет. Claude Code, Codex и Qwen Code получают её через хук промпта; OpenCode, Kilo Code, pi, omp и Gemini CLI — через плагин, расширение или мост хуков NeuroSquad. Остальные CLI получают только инструменты.
  • Подсказка перед текстовым поиском (Claude Code). Когда агент собирается выполнить Grep, Glob или команду grep / rg / find по тому, что похоже на имя символа, он получает одну строку контекста с отсылкой к graphify_neighbors и graphify_query. Поиск всё равно выполняется как просили: решение о разрешении не принимается, ваши правила allow и deny и запросы подтверждения работают как раньше. Подсказка молчит две минуты после обращения агента к графу и приходит не чаще раза в 45 секунд и раза в четыре поиска.

Выключите Направлять агентов к графу в настройках карточки, чтобы оставить только инструменты.

Карта

  • Файлы — точки, размер которых зависит от содержимого, а цвет — от подсистемы. Приблизьте карту (или нажмите Показать символы), чтобы увидеть функции и классы вокруг каждого файла.
  • Запросы вживую. Когда агент спрашивает граф, его стартовые узлы расходятся кругами, поиск распространяется шаг за шагом вдоль пройденных связей, а панель результатов показывает находки с файлом и строкой. Нажмите на результат, чтобы навести на него карту, или откройте файл в редакторе.
  • Лента внизу: недавние запросы и кто их задал. Нажмите на запрос, чтобы проиграть его снова.
  • Поиск по графу — в поле в углу; совпадения подсвечиваются так же.
  • Нажмите на узел, чтобы увидеть его детали и связи; Вписать карту возвращает всё в кадр.
  • Разверните карточку, чтобы посмотреть карту крупно.

Перетаскивайте карту мышью, масштабируйте колесом; анимации карты ставятся на паузу, пока вы масштабируете канвас или карточка вне экрана.

Всегда актуален

С включённым Автообновлением (по умолчанию) карточка замечает изменённые файлы и обновляет граф примерно через 4 секунды после последнего изменения. Ещё она обновляется после хода подключённого агента и один раз при открытии приложения. graphify хранит кеш каждого прочитанного файла, так что при обновлении перечитывается только изменённое. Выключите, чтобы обновлять вручную кнопкой Обновить.

Настройки

Кнопка настроек в шапке карточки:

  • Автообновление и Направлять агентов к графу (см. выше).
  • Языки: исключить из графа целые языки.
  • Дополнительно игнорировать: шаблоны по одному на строку, синтаксис .gitignore. Файлы .gitignore и .graphifyignore проекта учитываются всегда.
  • Включать файлы из .gitignore: для сгенерированного кода, которому место в графе.

Изменение того, что индексируется, перестраивает граф.

Воркспейсы в WSL и по SSH

  • WSL: graphify работает в Windows и читает файлы дистрибутива через их путь в Windows. Для проекта на диске Windows (/mnt/c/…) карточка следит за файлами как обычно; для проекта на собственном диске дистрибутива она обновляется после хода подключённого агента и по кнопке Обновить.
  • SSH: не поддерживается, карточка так и говорит. Используйте плагин Граф кода — он запускает свой движок на SSH-хосте.

Graphify или Граф кода?

Оба индексируют код, но хорошо отвечают на разные вопросы — их можно использовать вместе.

Граф кодаGraphify
Сильная сторонаТочная навигация: вызывающие и вызываемые, фрагменты кода, Cypher только для чтения, смысловой поискВопросы словами → нужный подграф, как всё связано, что затронет изменение
ДополнительноМаршруты, пакетыПодсистемы, разделы Markdown, комментарии NOTE: / WHY:
На карточкеСтатистика индекса и поискЖивая карта с анимацией каждого запроса
WSL / SSHРаботает внутри WSL и на SSH-хостахWSL через пути Windows; SSH нет

Граф строится по папке воркспейса. Агент, работающий в изолированном worktree, всё равно обращается к графу основной папки.

Приватность и хранение

Всё работает на вашем компьютере. Graphify читает только код (никаких документов, изображений и прочего, для чего понадобилась бы языковая модель), языковые модели не используются, ключи API в него не передаются. У graphify нет телеметрии, а его необязательный журнал запросов выключен. Движок лежит в папке данных приложения, каждый граф — в graphify/projects/<папка>-<хеш>/ там же. В ваш проект и домашнюю папку ничего не пишется. Удаление последней карточки папки удаляет её граф.

graphify создан Graphify-Labs и распространяется по лицензии Apache License 2.0.

Решение проблем

  • Установка не проходит через прокси. uv берёт HTTPS_PROXY / HTTP_PROXY из окружения приложения; задайте переменную до запуска NeuroSquad и снова нажмите Установить.
  • Установка падает с «no matching distribution». Для одного из пакетов нет готовой бинарной сборки под вашу систему; из исходников graphify не собирается. Карточка показывает сообщение uv.
  • «Граф ещё строится». Первая сборка очень большого воркспейса занимает время; карточка показывает прогресс. Агенты на свои вопросы получают тот же прогресс.
  • Агент продолжает пользоваться grep. Проверьте, что стрелка на месте, что Направлять агентов к графу включено и что CLI агента из тех, кто получает подсказки (остальных карточка помечает «только инструменты»). Можно и попросить прямо: «найди через graphify…».
  • Карта пустая или в ней не хватает файлов. Проверьте Языки и Дополнительно игнорировать в настройках, а также .gitignore проекта.
  • Карточка пишет, что SSH не поддерживается. Для SSH-воркспейсов используйте плагин «Граф кода».