В чём фокус
Представь, что тебя привезли в незнакомый город и вместо карты дали телефонный справочник: все адреса есть, все дома описаны, но чтобы понять, как добраться от вокзала до нужной улицы, придётся читать подряд. Каждый раз, когда ты выходишь из дома, ты читаешь его заново — потому что запомнить справочник невозможно, а карты у тебя нет.
Примерно в таком положении находится Claude Code на любом проекте крупнее десятка файлов. Он не держит вчерашнюю сессию в голове: контекст каждый раз собирается с нуля, из того, что он успел прочитать сегодня. А контекстное окно конечное, и чем оно полнее, тем хуже модель держит ранние инструкции и тем чаще ошибается — про это в официальном гайде сказано прямым текстом (Anthropic, Best practices). Получается двойная плата: сначала токенами за чтение, потом качеством ответа за то, что окно забито.
Graphify пытается заменить справочник картой. Он один раз проходит по папке и строит граф знаний: узлы — сущности проекта (файлы, функции, классы, таблицы, понятия из документации), рёбра — отношения между ними вроде «вызывает», «импортирует», «наследует». Дальше агент не открывает двадцать файлов в надежде найти нужное, а спрашивает карту: где живёт эта функция, что с ней связано, что развалится, если её тронуть.
Как именно строится граф
Первое, что стоит понять про этот инструмент: он не «скармливает проект нейросети». Сборка графа разбита на две очень разные части, и путать их не надо, потому что от этого зависит и цена, и приватность.
Код разбирается структурно и локально. Файлы прогоняются через tree-sitter — это парсер, который строит синтаксическое дерево исходника: где объявлена функция, где она вызывается, что откуда импортируется. Из этого дерева собираются узлы и рёбра. На этом этапе обращения к модели не происходит вообще: ни токенов, ни API-ключа, ни отправки твоего кода наружу (README). Чисто код в проекте — самый частый случай — обходится бесплатно.
Смысл вытаскивается моделью — но только из не-кода. Документация, README, PDF-статьи и картинки со схемами через AST не разберёшь: там связи не синтаксические, а смысловые. Эту часть делает языковая модель — либо Gemini, если в окружении лежит GEMINI_API_KEY, либо сам агент, в котором ты запустил команду. Отсюда простое правило: чем больше в корпусе документов и статей, тем дороже первая сборка; чистый репозиторий с кодом почти ничего не стоит.
Дальше обе половины сливаются в один граф на NetworkX, и по нему прогоняется кластеризация Leiden — она режет карту на смысловые районы и находит «узлы-боги», то есть те точки, через которые проходит наибольшее число связей. Именно поэтому итоговый отчёт умеет показывать не только «что с чем связано», но и «вот эта функция держит на себе половину проекта, трогать её опасно».
И отдельная деталь, которая мне нравится больше остальных: каждое ребро помечается уровнем уверенности — EXTRACTED (взято прямо из синтаксиса), INFERRED (выведено моделью) или AMBIGUOUS (связь предполагается, но не доказана). Карта честно говорит, где она уверена, а где догадывается. Для инструмента, который потом кормит собой агента, это важнее, чем красивая картинка.
код .py .ts .js .go .rs .java .c .cpp .rb .cs .kt .scala .php
доки .md .txt .rst
статьи .pdf
картинки .png .jpg .webp .gif
видео транскрибируется в текст, дальше идёт как документУстановка за пару минут
Ставится тремя строчками. Первая кладёт пакет в систему, вторая прописывает команду в твоего агента, третья — уже сама сборка графа по текущей папке.
uv tool install graphifyy
graphify install
# дальше внутри Claude Code:
/graphify .Если uv у тебя не стоит, работает обычный pip install graphifyy, а на Windows и macOS README советует pipx install graphifyy — так пакет живёт в отдельном окружении и не конфликтует с остальным Python.
safishamri/graphify — такого репозитория не существует, страница отдаёт 404. Похоже на опечатку в никнейме автора (он safishamsi). Рабочий адрес один: github.com/Graphify-Labs/graphify.Второй момент — это не только про Claude Code. Команда graphify install прописывает навык в того ассистента, который у тебя есть: в описании репозитория перечислены Claude Code, Codex, OpenCode, Cursor и Gemini CLI, а всего заявлена поддержка больше двадцати сред, включая GitHub Copilot CLI и Aider. Граф лежит на диске обычными файлами, поэтому сменишь инструмент — карта останется.
Что появляется на диске
После сборки в проекте появляется папка graphify-out, и это не чёрный ящик: три файла, каждый читается человеком или открывается в браузере.
graph.html интерактивный граф, открывается в браузере
GRAPH_REPORT.md отчёт: районы карты, узлы-боги, неожиданные связи,
предложенные вопросы и потраченные токены
graph.json сам граф данными — то, что читает агентОтчёт полезно открыть первым же делом, даже если ты не собираешься ничего спрашивать. В нём есть раздел с неожиданными связями — местами, где кластеризация нашла мост между двумя частями проекта, которые ты считал независимыми. На чужом репозитории это способ за минуту понять архитектуру. На своём — способ обнаружить, что скрипт отчётов почему-то тянет модуль оплаты.
Если тебе нужен не отчёт, а вход в другой инструмент, на этом же графе есть экспорты: --obsidian раскладывает карту в заметки вики-стиля, --wiki собирает набор статей по районам графа, --svg и --graphml отдают картинку и файл для Gephi, --neo4j — запросы для графовой базы, а --mcp поднимает MCP-сервер, чтобы агент ходил в граф напрямую, без промежуточных команд.

Как агент ходит по карте
Пока граф просто лежит на диске, он ничего не экономит. Экономия начинается в тот момент, когда вопрос про проект уходит не в чтение файлов, а в обход графа.
graphify query "как устроена авторизация"
graphify query "как данные доходят до базы" --dfs
graphify query "что делает планировщик" --budget 1500
graphify path "AuthModule" "Database"
graphify explain "SwinTransformer"По умолчанию query идёт обходом в ширину: находит узлы, подходящие под вопрос, и собирает вокруг них соседей слой за слоем — это ответ на «что с этим связано». Флаг --dfs переключает на обход в глубину, когда нужно проследить конкретную цепочку: как одно дотягивается до другого через промежуточные звенья. Команда path ищет кратчайший путь между двумя понятиями и печатает его по шагам, с типом связи на каждом переходе.
Флаг --budget — самая недооценённая вещь во всём наборе. Он ставит потолок на размер ответа в токенах: подграф ранжируется по релевантности и обрезается по лимиту. То есть ты не просто платишь меньше — ты заранее знаешь, сколько максимум заплатишь за ответ. С чтением файлов такой гарантии нет в принципе: сколько там окажется строк, столько и уйдёт в окно.
Ответы при этом можно возвращать обратно в граф. У инструмента есть команда сохранения результата с пометкой, оказался ли путь полезным или завёл в тупик, и следующая сборка втягивает эти пометки в карту. Через несколько сессий граф начинает знать не только структуру проекта, но и то, какие маршруты по нему уже пробовали.
А что происходит, когда код меняется
Это первый вопрос, который возникает у любого, кто дослушал про «один раз построил». Карта города устаревает, если в городе построили новую улицу. Карта проекта устаревает быстрее — она устаревает после каждого коммита.
Отвечает на это флаг --update. Graphify держит манифест с хешами всех файлов и при обновлении сравнивает их с текущим состоянием: заново разбираются только новые и изменённые файлы, результат домердживается в существующий граф, а узлы удалённых файлов вычищаются. Отдельно приятно, что при чисто кодовых правках инструмент это замечает и пропускает смысловую часть целиком — обновление не стоит ни одного токена.
/graphify . --update # пересобрать только изменившееся
/graphify . --watch # следить за папкой и обновлять на лету
graphify hook install # ставит post-commit хук: обновление после коммитаПрактический вывод простой: ручной режим --update хорош, пока ты помнишь про него сам. Хук на коммит надёжнее — карта обновляется ровно тогда, когда меняется то, что она описывает, и никакой дисциплины от тебя не требует. Режим --watch удобен в активной сессии, когда файлы правятся каждые пару минут.
Карта проекта есть. А что на ней строить?
Граф чинит расход токенов, но сам по себе денег не приносит. Дальше идёт вопрос, ради которого всё затевалось: что собрать, чтобы это покупали, как довести до продукта и привести людей. У нас это собрано в контент-завод на Claude Code — тренды, карусели и рилсы пачкой, воронки на кодовые слова, лид-магниты и платёжки. Разбираем на практикуме, по шагам.
Что за практикум →Про «минус 70%» — честно
Цифра, с которой этот инструмент разошёлся по роликам: расход токенов падает примерно на семьдесят процентов. Скажу прямо: это заявление автора инструмента, а не наш замер. Мы не гоняли контролируемый тест и за число не ручаемся. В самом README, кстати, встречается формулировка ещё смелее — про кратное сокращение на корпусах от полусотни файлов. К любым таким цифрам стоит относиться как к обещанию разработчика.
Что при этом можно сказать уверенно, так это про механику — она проверяема и не требует веры. Разбор кода идёт локально, без обращения к модели, а значит эта часть работы действительно перестаёт стоить токенов. Ответ на вопрос собирается из подграфа, а не из полного текста файлов, и его размер ограничивается флагом --budget. Повторная сборка трогает только изменённые файлы. Куда именно уходит экономия, видно без маркетинга: то, что раньше вычитывалось каждую сессию, теперь лежит в graph.json и запрашивается локальными командами.
Правильный способ проверить — на своём проекте. Инструмент сам ведёт cost.json, куда пишет токены каждого запуска, так что ты увидишь честную цену сборки. Дальше сравнивай не с обещанием из ролика, а со своим прошлым: как быстро сгорал лимит до графа и как после.

Что ты увидишь
Один и тот же вопрос на проекте без графа и с графом. Агент тот же, модель та же — разница только в том, откуда он берёт ответ.
ты: что сломается, если я поменяю функцию отправки?
claude: Сейчас посмотрю… читает 14 файлов, ищет упоминания, открывает ещё 6
…ответ есть, но половина окна забита кодом, к делу не относящимся. Завтра то же самое с нуля.
ты: что сломается, если я поменяю функцию отправки?
claude: По графу на неё завязаны три узла: очередь, обработчик ошибок и отчёт. Связь с очередью помечена как EXTRACTED, с отчётом — INFERRED, её стоит проверить глазами.
…файлы не открывались вообще. Окно свободно под саму задачу.
Где эта штука упирается в потолок
Инструмент хороший, но не волшебный. Четыре места, о которые спотыкаются чаще всего — лучше знать заранее.
А если…
Четыре сомнения, которые держат людей на пороге. Отвечаю прямо.
Зачем тебе это на самом деле
Про токены думают как про деньги, и это только половина картины. Вторая половина — качество. Когда окно забито кодом, который агент прочитал на всякий случай, ему хуже думается о твоей задаче: ранние инструкции вытесняются, детали теряются, ответы становятся общими. Ты платишь дважды, просто вторая плата не приходит счётом.
Граф разрывает эту связку. Агент перестаёт тратить окно на разведку и начинает тратить его на работу. Меняется и твоя роль: вместо «прочитай эти файлы и разберись» ты задаёшь вопросы человеческого уровня — что здесь главное, что от чего зависит, что развалится при изменении. Это разговор с тем, кто уже знает проект, а не с тем, кто каждый раз заходит в него впервые.
А дальше
Граф закрывает одну конкретную дыру: агент перестаёт перечитывать проект. Рядом стоят ещё две, и вместе они и дают ощущение, что работаешь с напарником, а не с новым стажёром каждый день.
Первая — правила проекта, которые агент читает сам на старте сессии: каркас проекта на Claude Code →. Вторая — внешнее хранилище знаний, куда карта выгружается заметками и живёт между проектами: Второй мозг для Claude →. А если интересно, что ещё лежит на GitHub из готового, у нас есть подборка: 5 систем с GitHub →.
Источники
Число звёзд и дата обновления сверены через GitHub 19 июля 2026 года. Механика описана по README и документации проекта. Цифра экономии токенов — заявление автора инструмента, а не наш замер.