读一个不熟悉的代码库,最耗时的不是写代码,而是“搞清楚它到底怎么连起来的”:这个函数被谁调用、这个配置从哪来、某条业务规则写在哪个文件。常规的全文搜索只能给你一堆命中,给不出关系;向量检索又常常“编”出不存在的调用链。Graphify-Labs 的 graphify 换了个思路:用 tree-sitter 在本地做确定性 AST 解析,把整个代码库(连同文档、SQL、配置甚至 PDF)变成一张可查询的知识图谱,让智能体像查地图一样查代码。
项目基本信息
| 信息项 | 详情 |
|---|---|
| 项目名称 | graphify |
| GitHub地址 | https://github.com/Graphify-Labs/graphify |
| 项目描述 | 把任意代码库变成可查询的知识图谱,供 Claude Code / Cursor / Codex 等使用 |
| 作者 | Graphify-Labs |
| 开源协议 | Apache License 2.0 |
| 开源状态 | 公开 |
| Languages | Python |
| 支持平台 | Windows / macOS / Linux |
| 最后更新 | 2026-10-23 |
一、项目介绍
graphify 是一个本地优先的代码知识图谱工具。它先用 tree-sitter 对约 40 种语言做 AST 解析,抽出 calls / imports / inherits / mixes_in 等跨文件关系,再把文档、PDF、图片、音视频也映射进同一张图。最终产物是一份 graph.json,以及一句 /graphify . 就能唤醒的 Skill,支持 Claude Code、Cursor、Codex、Gemini CLI 等 20 多个智能体。
二、核心优势
一是确定性、零幻觉。跨文件链接由 AST 解析得到,每条边都有来源,不会像向量检索那样“编”调用链。二是本地优先、隐私可控。代码解析完全在本地、不调用 LLM;只有对文档/媒体的语义处理才会访问后端,且可配置。三是面向智能体优化。提供 query(提问)、path(追踪两点间路径)、explain(解释某个概念)三种查询,并自动生成 God nodes(最核心的概念)与 Leiden 社区划分,帮智能体一眼看到系统主干。
三、适用场景
适合接手遗留系统、做大规模重构前的风险评估、跨仓库 Impact Analysis,以及给新同事/新智能体做 onboarding。对安全与架构评审也很有用:一条数据的来龙去脉能在图里直接追出来。
四、安装教程
官方 PyPI 包名是 graphifyy(双 y),注意甄别仿冒包。推荐用 uv 隔离安装:
# 推荐:uv 隔离环境
uv tool install graphifyy
# 备选
pipx install graphifyy
pip install graphifyy装完执行一次初始化,它会自动识别你用的智能体并注册 Skill:
graphify install常见报错:Mac/Windows 上 pip install 后命令找不到,多半是 PATH 没包含用户脚本目录,改用 uv tool install 或在 PowerShell 里注意引号转义即可;仍不行可参考官方 Installation 文档。
五、使用示例
在智能体里打开任意项目后输入:
/graphify .随后即可让智能体基于图谱问答,例如:
graphify: 解释一下支付回调是如何从路由走到对账服务的?graphify: 找出所有调用了 secrets 模块却没走审计日志的函数。六、常见问题
Q:graphify 和向量检索 RAG 有什么区别?
A:graphify 用 AST 做确定性关系抽取,边都可溯源;向量检索靠相似度,易产生不存在的链路。两者可互补,graphify 负责“结构”,RAG 负责“语义”。
Q:我的代码会外传吗?
A:代码解析在本地完成,不上传;仅当你配置了文档/媒体语义后端时才会有那部分流量。
Q:项目级安装怎么弄?
A:加 --project 参数(如 graphify install --project),会把 SKILL.md 写到当前仓库的 .claude/skills/ 下,可随仓库提交。
七、总结
graphify 把“理解代码库”从靠人肉通读变成靠可查询的图谱。对长期维护大型代码库的团队,它是给智能体装上“代码地图”的高性价比方案。
评论 0
还没有评论,来说两句吧。