Graphify — граф знаний для AI-агентов
Graphify — open-source скилл (by Safi Shamsi), который превращает кодовую базу в queryable knowledge graph. Вместо того чтобы агент каждый раз читал десятки файлов, он один раз задаёт точный вопрос графу — и получает ответ за долю токенов. Инструмент поддерживает 20+ AI-платформ: Claude Code, Codex, Cursor, Gemini CLI и другие.
1. Проблема: агент как full table scan
Классический сценарий: дать задачу «найди, где обрабатывается авторизация». Claude Code идёт искать — спавнит эксплорацию, грепает по ключевым словам, читает 15–20 файлов целиком. Каждый read — это весь файл в контекст. На среднем репозитории — сотни тысяч токенов только чтобы понять, где вообще лежит ответ. Половину времени агент промахивается: прочитал не те файлы, сделал вывод, пошёл чинить не там.
Проблема не в модели. Проблема в способе поиска: агент делает full table scan по кодовой базе там, где должен делать запрос по индексу.
Это ровно та же история, что с индексами в базе данных. Можно гонять SELECT по миллиону строк, а можно построить индекс и доставать нужное за миллисекунды. С кодом для агента — та же логика.
2. Что такое Graphify
Graphify — инструмент, который строит граф знаний из кодовой базы. Три ключевых момента:
- Код парсится локально через tree-sitter — 0 токенов, ничего не уходит наружу
- Документы, PDF, изображения, видео — опционально, через LLM (вашего IDE-провайдера)
- Результат — три файла:
graph.html,GRAPH_REPORT.md,graph.json
graphify-out/
├── graph.html # интерактивная визуализация — открыть в браузере
├── GRAPH_REPORT.md # god-ноды, неожиданные связи, suggested questions
└── graph.json # полный граф — queryable в любой момент
После установки агент получает команды /graphify query, /graphify path, /graphify explain — и вместо веера чтений делает один точный запрос.
Автор и лицензия: Safi Shamsi, MIT, Python 3.10+, 3.7k+ звёзд на GitHub (на момент написания). PyPI-пакет называется graphifyy (два «y»), CLI-команда — graphify.
3. Архитектура: как это работает
Семистадийный pipeline:
detect → extract → build → cluster → analyze → report → export
| Стадия | Что происходит |
|---|---|
| detect | Сканирует файлы по типам |
| extract | tree-sitter (AST) для кода; LLM для документов/медиа |
| build | Строит NetworkX-граф из узлов и рёбер |
| cluster | Leiden-алгоритм — community detection без векторов |
| analyze | Находит god-ноды и неожиданные связи |
| report | Генерирует GRAPH_REPORT.md |
| export | graph.html, graph.json, опционально Obsidian vault, Wiki, Neo4j |
Ключевые компоненты
tree-sitter — парсит 28+ языков программирования (.py, .ts, .js, .go, .rs, .java, .c, .cpp, .rb, .cs, .kt, .scala, .php, .swift, .lua, .zig, .ps1 и др.) в AST. Структурные рёбра (call, import, inheritance) извлекаются без LLM — ноль токенов на код.
NetworkX — in-memory граф на Python. Все узлы и рёбра живут в памяти, graph.json — текстовый артефакт, его можно (и нужно) коммитить в git.
Leiden algorithm (через graspologic) — community detection на топологии графа, без векторных эмбеддингов. Находит группы связанных файлов, которые «принадлежат одной фиче».
PreToolUse hook — ключевая интеграция с Claude Code. После graphify install в ~/.claude/settings.json прописывается hook, который срабатывает перед каждым вызовом Glob или Grep. Если в проекте есть граф, агент получает напоминание: «Knowledge graph exists. Read GRAPH_REPORT.md for god nodes and community structure before searching raw files». Claude Code сначала смотрит на одностраничный обзор архитектуры — и только потом, если нужно, лезет в файлы.
Что попадает в GRAPH_REPORT.md
- God nodes — наиболее связанные концепции проекта. Всё проходит через них
- Surprising connections — связи между разными файлами или модулями, отсортированные по «неожиданности»
- The “why” — inline-комментарии (
# NOTE:,# WHY:,# HACK:), docstrings и проектная документация - Suggested questions — 4–5 вопросов, на которые граф лучше всего отвечает
- Confidence tags — каждая инференция помечена:
EXTRACTED,INFERREDилиAMBIGUOUS
4. Установка и основные команды
Быстрый старт
# Установка (рекомендуется через uv)
uv tool install graphifyy
# Регистрация скилла в Claude Code
graphify install
# Сборка графа для текущей папки
/graphify .
# Или в Codex/PowerShell (без слеша):
graphify .На Windows: winget install astral-sh.uv, затем graphify install (автоопределяет платформу).
Основные команды
# Запросы к графу
/graphify query "что связывает auth с базой данных?"
/graphify path "UserService" "DatabasePool"
/graphify explain "RateLimiter"
# Обновление (только изменённые файлы)
/graphify . --update
# Режимы сборки
/graphify . --mode deep # агрессивное семантическое извлечение
/graphify . --no-viz # только отчёт + JSON, без HTML
# Экспорт
/graphify . --obsidian # генерировать Obsidian vault
/graphify . --wiki # markdown-wiki
graphify export callflow-html # Mermaid call-flow HTML
# Git hook — авторебилд после каждого коммита
graphify hook installПлатформы
Graphify работает с 20+ инструментами: Claude Code, Codex, OpenCode, Cursor, Gemini CLI, GitHub Copilot CLI, VS Code Copilot Chat, Aider, Hermes, Kimi Code, Google Antigravity и другими. Для каждой — отдельная команда install с правильным механизмом интеграции.
5. Экономия токенов: факты и маркетинг
Вокруг Graphify ходит много цифр — стоит разобраться честно.
| Источник | Заявленная экономия | Контекст |
|---|---|---|
| Official (graphify.net) | 71.5× | Corpus Карпати: 3 репо + 5 статей + 4 диаграммы; 1.7k токенов vs 123k naive |
| Eric Tech (YouTube) | 27× | Production SaaS bookzero.ai — реальный проект |
| lucasrosati (GitHub) | 499× | React+Supabase, 126 файлов TypeScript; per query, не per session |
| Шубин Данила (Habr) | 2–5× реалистично | Средний сценарий, честная оценка; до 10× на задачах где граф хорошо ложится |
Вывод: цифра 71.5× — это лучший случай на синтетическом корпусе, не средняя экономия в проде. Реалистичная оценка — 2–5× в среднем, до 10–27× на крупных проектах с чётко выраженной структурой. Это всё равно значимо.
Важнее токенов — точность и скорость. Агент с графом находит нужное с первого запроса, а не читает двадцать файлов и строит гипотезу. Он реже промахивается, реже чинит не то.
6. Плюсы и минусы
Плюсы
- Ноль токенов для кода — tree-sitter работает чисто локально, никаких API-вызовов на исходники
- Персистентность через git —
graph.jsonкоммитится в репозиторий; вся команда стартует с готовой картой - Мульти-модальность — код + документы + PDF + изображения + видео в одном графе
- PreToolUse hook — агент автоматически консультируется с графом перед поиском
- Широкая поддержка платформ — 20+ AI-инструментов
- Интерактивная визуализация —
graph.htmlоткрыть в браузере и клацать ноды - MCP server mode — команда может поднять один HTTP-сервер с графом для всех разработчиков
- Obsidian export — интеграция с LLM-Wiki паттерном (см. LLM Wiki вместо RAG - Полный Obsidian-сетап для новичка по методу Андрея Карпати)
- MIT-лицензия, бесплатно для коммерческого использования
- PR-triage —
graphify prs --triageранжирует PR по приоритету через тот же граф
Минусы
- Документы и медиа стоят токенов — если идёте глубже кода, платите LLM-вызовами
- Нет авто-синхронизации — в отличие от CodeGraph с файловыми watcher’ами, надо вручную запускать
--update(или настроить git hook) - Требует rebuild после рефакторинга — при значительных изменениях структуры старый граф устаревает
- Коммерческий интерес автора — Penpax строится поверх Graphify; Open Source, но с оглядкой на это
- Маркетинговые цифры — 71.5× продаётся везде, реальность скромнее
- Python-зависимость — если в проекте уже нет Python, нужно поставить отдельно
- Сложность с крупными проектами — граф >5000 нод плохо открывается как HTML; нужен
--no-viz
7. Graphify vs другие инструменты
Инструменты памяти для кода
| Graphify | CodeGraph | Gortex | Sourcegraph MCP | |
|---|---|---|---|---|
| Что индексирует | код + доки + медиа | только символы кода | только код | только код |
| Хранилище | graph.json (коммитить) | SQLite (локально) | in-memory | облако/enterprise |
| Токены на сборку | 0 для кода | 0 всегда | 0 | нет |
| Авто-синхронизация | нет (git hook) | да (file watcher) | да | да |
| Мультирепозиторий | нет | нет | да | да |
| Языков | 28+ | 19+ | 256 | много |
| Стоимость | MIT free | MIT free | free | платный Enterprise |
| Для чего | понять проект целиком | ускорить агента | ускорить агента, мультирепо | корпоративный масштаб |
CodeGraph (@colbymchenry/codegraph) — ближайший аналог, но с другим фокусом. 100% локально, SQLite + FTS5, автообновление через FSEvents/inotify. Работает как MCP-сервер в runtime агента. Заявленная экономия: −57% токенов, −71% tool calls, −46% времени (benchmark на 7 open-source репозиториях). Правило хранения — противоположное: граф CodeGraph это кэш, регенерируемый из кода, в git не коммитится.
Gortex — то же самое что CodeGraph, но больше: 256 языков, мультирепо со сквозным разрешением символов, один бинарь без внешних зависимостей. Если вы работаете с десятком связанных репозиториев — смотреть сюда.
Три класса «памяти для агентов»
Часто Graphify сравнивают с Mem0, Zep, Letta — это неверное сравнение. Это принципиально разные задачи:
| Задача | Инструмент | Что делает |
|---|---|---|
| Память о пользователе | Mem0, Zep/Graphiti, Letta | Факты о пользователе, персонализация |
| Память о коде | Graphify, CodeGraph, Gortex | Структура кодовой базы, связи |
| Память о знаниях | Obsidian + LLM Wiki | Накопление и синтез знаний |
Mem0 — API для разработчиков собственных агентов: «дай мне ту же memory API, что у ChatGPT, но для моего бота на FastAPI». Двухслойная архитектура extraction → vector store. Не про код вообще.
Zep/Graphiti — temporal knowledge graph: каждый факт помечен valid_from/valid_until, temporal queries «где жил пользователь полгода назад». Мощно, тяжело, много LLM-вызовов. Не про код.
Letta (бывший MemGPT) — агент как «операционная система»: контекстное окно = RAM, агент сам управляет выгрузкой в archival storage. Полный контроль над policy памяти, steep learning curve.
Когда кто-то говорит «наш memory framework улучшит агента в N раз» — стоит спросить: память о чём? Если о коде — Mem0 не поможет вообще.
Подробнее о Mem0, Zep и Letta: Бесконечная память для ИИ — Claude, Codex и Gemini с Pinecone.
8. Интеграция с Obsidian: связка со стратегией
Graphify органично встраивается в LLM-Wiki паттерн по методу Карпати. Связка выглядит так:
| Слой | Инструмент | Что хранит |
|---|---|---|
| Структура кода | Graphify | Граф: функции, классы, связи, архитектура |
| Решения и история | Obsidian vault | Что было решено, почему, что осталось сделать |
| Чаты и инсайты | Import pipeline | Ценные находки из переписок с агентом |
Типичная сессия при такой связке:
Открыть Claude Code
/resume ← vault context: решения, прогресс
Claude → graph.json ← понимает структуру без re-reading
Работа над кодом
/save ← session log в vault
git commit ← hook перестраивает граф
Проект lucasrosati/claude-code-memory-setup реализует эту связку «под ключ»: Obsidian + Graphify + pipeline импорта чатов + команды /resume и /save.
Экспорт в Obsidian
Graphify умеет генерировать Obsidian vault из графа:
/graphify . --obsidian --obsidian-dir ~/vault/graphify/my-projectКаждая функция и модуль получает свою страницу с frontmatter и wikilinks. Это уже не «инструмент для агента», а визуальная карта проекта прямо в Obsidian.
9. Penpax: коммерческий слой
Автор Graphify строит поверх него коммерческий продукт Penpax (graphifylabs.ai) — «always-on layer» для всей рабочей жизни: митинги, browser history, письма, файлы, код. Обновляется в фоне, on-device.
Это важно понимать: Graphify — open-source инструмент, за которым стоит чисто коммерческий интерес. Автор заинтересован в том, чтобы пользователи привыкали к Graphify. Это не делает инструмент плохим — MIT-лицензия остаётся MIT-лицензией — но стоит держать в уме при оценке цифр и roadmap.
10. Когда брать
| Ситуация | Решение |
|---|---|
| Онбординг в чужой или легаси-проект | Graphify — понять архитектуру целиком |
| Ежедневная работа агента в коде | CodeGraph — быстрый символьный поиск без overhead |
| Много языков или несколько репозиториев | Gortex — шире по охвату |
| Корпоративный масштаб, сотни репозиториев | Sourcegraph MCP |
| Память о пользователе, персонализация агента | Mem0 / Zep |
| Накопление знаний из статей, видео, заметок | Obsidian + LLM Wiki |
Тезис Игоря Масленникова (Habr): CodeGraph и Graphify не «или-или», они разные инструменты, которые легко держать оба. CodeGraph работает каждый день в фоне. Graphify достаёшь, когда надо охватить картину — собрать карту, посмотреть god-ноды и неожиданные связи.
11. Обновления (июнь 2026)
A/B тест Никиты Велса (13.06.2026)
Практическая верификация с реальным проектом (Telegram ↔ Claude Code интеграция):
| Параметр | С Graphify | Без Graphify |
|---|---|---|
| Сообщение | 40,000 токенов | 100,000 токенов |
| Разница | — | ×2.5 больше |
| Задача | «Как устроена авторизация?» | Та же задача |
Граф проекта: 2040 узлов, 4156 рёбер, 151 сообщество. Сборка через 9 субагентов параллельно.
Нюанс от Велса: «Внедрять Graphify во все проекты подряд — плохая идея». Его шкала:
- < 100 файлов → разница почти нулевая
- 100–500 файлов → существенная экономия
- 500+ файлов → до 30× экономии
Это подтверждает данные из раздела 5 (реалистично 2-5× в среднем, до 27-30× на крупных проектах).
Skill Pilot — кастомный скилл Велса, который сам выбирает нужную команду Graphify под задачу. У Graphify > 100 команд, часть из них ломают Claude Code или сжигают токены зря.
Источник: raw · Никита Велс, YouTube, 13.06.2026
InfraNodus — граф для поиска ПРОБЕЛОВ (не только структуры)
InfraNodus (infranodus.com) — knowledge graph инструмент, который решает другую задачу: не «что здесь есть», а «чего здесь нет».
| Инструмент | Задача | Ответ |
|---|---|---|
| Graphify | Структура кода/документов | Где какой файл, как связаны |
| InfraNodus | Структура знаний | Какие кластеры есть, какие связи между ними отсутствуют |
Ключевая фича InfraNodus: graph science metrics выявляют gaps — пространства между кластерами, которые не соединены. По этим gaps модель генерирует «мостовые» инсайты — идеи, которые связывают разные области знания.
Интеграция с LLM Wiki: Nodus Labs выпустили InfraNodus MCP server — Claude Code подключается к InfraNodus API и использует его напрямую в разговоре. Команды: generate_graph, identify_clusters, find_gaps, generate_insights.
Расширение для VS Code и Obsidian: визуализация графа прямо внутри IDE / второго мозга.
Для чего брать InfraNodus:
- Анализ исследовательских материалов (статьи, заметки, PDF)
- Генерация новых идей через «мостовые» вопросы
- Поиск blind spots в накопленных знаниях
Не заменяет Graphify: InfraNodus = граф смыслов. Graphify = граф кода. Разные уровни.
Источник: raw · Nodus Labs, YouTube, 11.04.2026 (добавлено в wiki 14.06.2026)
Graphify vs LLM Wiki: 4 вопроса для выбора
Исчерпывающий фреймворк (ai-chain.tw, апрель 2026):
Фундаментальное различие:
- Graphify = граф-первый (map for agents): структура, traversable, дешёвые токены
- LLM Wiki (этот vault) = wiki-первый (encyclopedia for humans): нарратив, ссылки, накопление интерпретаций
4 вопроса для выбора:
| Вопрос | Graphify | LLM Wiki |
|---|---|---|
| 1. Кто primary reader? | Агент | Человек |
| 2. Материал multimodal/смешанный? | ✅ Да | Текстовые заметки |
| 3. Нужна трейсируемость связей? | ✅ Да (EXTRACTED / INFERRED / AMBIGUOUS) | Человекочитаемый синтез |
| 4. Главная стоимость — повторная выборка? | ✅ Retrieval cost | Организация и синтез |
Источник: raw · ai-chain.tw, апрель 2026
Ссылки
- GitHub: safishamsi/graphify — исходник, README, документация
- Сайт: graphify.net — landing page с архитектурным разбором
- Penpax: graphifylabs.ai — коммерческий продукт поверх Graphify
- lucasrosati setup: claude-code-memory-setup — Obsidian + Graphify «под ключ»
- InfraNodus: infranodus.com — knowledge graph для поиска пробелов в знаниях