一句话介绍
Graphify 是一个将代码库、文档、PDF 和配置自动转化为可查询知识图谱的开源 AI 工具,支持 Claude Code、Cursor、Codex 和 Gemini CLI,Star 数已突破 10.8 万。
工具简介
现代软件开发中,代码库规模不断增长,开发者越来越依赖 AI 编程助手来理解代码结构、追踪依赖关系、回答”这个函数被哪里调用”这类问题。然而,大多数 AI 工具的处理方式是直接把文件内容塞进上下文窗口, token 消耗巨大,且难以把握整体架构。
Graphify 的思路完全不同:它用树-sitter 进行确定性 AST 解析,结合 Claude 的多模态理解能力,把代码库、文档、论文、截图等一切内容提取为节点和边的知识图谱,再提供高效的查询能力。整个过程本地运行,不需要 Neo4j 等外部数据库,也不需要向量存储。
核心功能
1. 多模态知识图谱构建
Graphify 支持多种输入类型,每种都有针对性的提取策略:
- 代码文件:
.py .ts .js .go .rs .java .c .cpp .rb .cs .kt .scala .php,通过 tree-sitter 做 AST 解析 + 调用图构建 - 文档:
.md .txt .rst,用 Claude 提取概念和关系 - 论文:
.pdf,做引用挖掘 + 概念抽取 - 图片:
.png .jpg .webp .gif,用 Claude Vision 识别截图、图表、白板照片等
2. 智能查询能力
构建图谱后,Graphify 提供多种查询方式:
/graphify query "attention 和 optimizer 之间有什么联系?"— 自然语言问答/graphify path "DigestAuth" "Response"— 寻找两个概念之间的路径/graphify explain "SwinTransformer"— 对特定节点进行解释
3. 节点质量标注
每条边都会被标记为三种状态之一:
- EXTRACTED(提取到的)— 从代码或文档中直接找到
- INFERRED(推断的)— 基于上下文合理推断
- AMBIGUOUS(模糊的)— 关系不确定
开发者可以清楚地区分”确实存在”和”可能相关”的连接。
4. 自动同步与增量更新
使用 --watch 模式可以在后台持续监控文件变化:代码文件的保存会触发即时 AST 重建(无需 LLM),文档或图片变化则提示运行 --update 进行 LLM 重分析。另外还提供了一个 git post-commit hook,每次提交后自动重建图谱。
5. 丰富的输出格式
| 格式 | 用途 |
|---|---|
graph.html | 交互式可视化图谱,可点击节点、搜索、按社区过滤 |
obsidian/ | 导出为 Obsidian vault,方便知识管理 |
wiki/ | 生成 Wikipedia 风格的文章,便于 AI Agent 导航 |
graph.json | 持久化图谱数据,后续查询无需重新解析 |
graph.svg | 静态图片导出 |
graph.graphml | 兼容 Gephi、yEd 等专业图谱工具 |
cypher.txt | 生成 Neo4j 查询语句,导入企业级图数据库 |
6. Token 大幅压缩
官方 benchmark 显示,在包含 Karpathy 仓库 + 5 篇论文 + 4 张图的混合语料(52 个文件)上,Graphify 的查询 token 消耗比直接读取原始文件少了 71.5 倍。对于大规模代码库,这一压缩比例会进一步提升。
适用人群
- AI 编程助手用户:使用 Claude Code、Cursor、Codex 或 Gemini CLI 的开发者,可以用
/graphify快速理解任意代码库 - 技术文档维护者:需要整理项目架构、生成文档索引的工程师
- 学术研究工作者:将论文、笔记、截图整合为知识图谱的研究者
- 知识管理爱好者:希望用 Obsidian 等工具管理个人知识库的用户
与同类工具对比
| 工具 | 类型 | 本地运行 | 无需向量库 | 多模态 | 价格 |
|---|---|---|---|---|---|
| Graphify | 知识图谱生成器 | ✅ | ✅ | ✅ | 免费(需 Claude API) |
| LangChain + Chroma | 向量数据库框架 | ✅ | ❌ | 有限 | 免费 |
| Dria | 去中心化向量存储 | ❌ | ❌ | ❌ | 付费 |
| Supermemory | 开发者记忆系统 | ✅ | ❌ | ❌ | 免费 |
| Mem0 | AI 记忆层 | ✅ | ❌ | ❌ | 免费/付费 |
Graphify 的独特之处在于:它不是向量检索,而是图结构查询,通过 AST 解析保证准确性,通过图算法(Leiden 社区检测)发现隐藏的结构关系。对于代码理解任务,确定性 AST 解析远比语义向量检索可靠。
如何使用
安装
# 通过 pip 安装(PyPI 包名暂为 graphifyy)
pip install graphifyy
# 或者使用 pipx(推荐,自动处理 PATH)
pipx install graphifyy
Windows 用户如果安装后
graphify命令找不到,需要把 Python Scripts 文件夹加到 PATH:%APPDATA%\Python\Python3xx\Scripts
在 Claude Code 中使用
# 打开任意目录
claude
# 在对话中输入
/graphify .
常用命令
# 分析当前目录
/graphify .
# 分析指定目录
/graphify ./src --mode deep
# 增量更新(只处理变化的文件)
/graphify ./src --update
# 添加网页内容
/graphify add https://arxiv.org/abs/1706.03762
# 交互式查询
/graphify query "如何处理认证流程?"
/graphify path "AuthService" "UserController"
# 自动同步模式
/graphify ./src --watch
# 生成 Wiki 风格文档
/graphify ./src --wiki
# 安装 git hook(每次提交自动重建)
graphify hook install
# 导出 Neo4j 兼容格式
/graphify ./src --neo4j
输出结构
运行完成后,你会得到一个 graphify-out/ 目录:
graphify-out/
├── graph.html # 交互式图谱可视化
├── obsidian/ # Obsidian vault 格式
├── wiki/ # Wikipedia 风格文档
├── GRAPH_REPORT.md # 核心节点、隐藏关联、推荐问题
├── graph.json # 持久化图谱数据
└── cache/ # SHA256 缓存,增量更新用
总结
Graphify 是一个设计精良的 AI 代码分析工具,它的核心创新在于用知识图谱替代向量检索来处理代码理解任务。确定性 AST 解析保证结果可追溯,图算法发现人眼难以察觉的架构关联,而 71.5 倍的 token 压缩让大模型查询效率大幅提升。
优点: - 多模态输入支持(代码、文档、PDF、图片) - 本地运行,无需外部数据库 - 丰富的输出格式(HTML 图谱、Obsidian、Wiki、Neo4j 等) - 增量更新和自动同步机制 - 每条边都有明确的置信度标注 - 10.8 万+ Star,社区活跃
缺点: - 需要 Claude API(有使用成本) - 初次分析大型代码库可能较慢 - 依赖 tree-sitter 的语言支持仍在扩展中
推荐指数:★★★★☆(4.5/5)
对于使用 AI 编程助手的开发者来说,Graphify 是目前最成熟的代码知识库构建工具之一。它填补了”代码理解”和”知识管理”之间的空白,让 AI 助手真正理解你的代码库而不仅仅是读取文件内容。如果你日常用 Claude Code 或 Cursor 写代码,强烈建议试一下。
GitHub: https://github.com/Graphify-Labs/graphify 官网: https://www.graphify.com
图谱导出为 JSON 后,可用本站的 JSON 格式化工具 查看结构,或用 URL 编码解码工具 处理链接。