Graphify:把代码库变成可查询的知识图谱
Graphify 把代码库、文档、PDF 和图表变成知识图谱,让 AI 编程助手直接查询结构而非 grep。本文讲清它的双通道原理、用法与真实局限。
十月 agent skills 圈子里最火的词是 graphify。这个工具做的事情一句话就能讲清:对准任意文件夹,一条命令生成可查询的知识图谱——代码、文档、PDF、图片甚至视频转写全部连进一张图,让 AI 编程助手直接查结构,而不是 grep 翻文件。
数据很夸张:Graphify-Labs/graphify 今年四月建仓,到十月中旬已约 12.8 万 star、2400+ commits、238 个 release。开发者圈显然被戳中了某个真实痛点。
为什么 grep 不够用了
你问 agent"请求校验逻辑在哪",它默认的做法是词法式的:grep "valid",打开五个文件,逐个读。大仓库里,找东西本身就吃掉大量 token,而且经常迷路。知识图谱换了一种问法:谁调用了这个函数?A 和 B 之间隔着什么?所有流量经过哪几个核心概念?图建一次、持久复用,之后每次查询都不用重读原始文件。
它是怎么工作的
Graphify 是 CLI + agent skill 的二合一(Apache-2.0 开源)。安装两条命令,注意包名是双 y:
uv tool install graphifyy
graphify install然后在 Claude Code 里(也支持 Cursor、Codex、Gemini CLI 等 20+ 助手):
/graphify .一次生成 graphify-out/,里面有三样东西:可交互的 graph.html、要点提炼的 GRAPH_REPORT.md、完整持久化的 graph.json。之后可以直接问:
graphify query "how requests are validated"
graphify path "FastAPI" "ModelField"核心机制是双通道:第一遍确定性解析——tree-sitter AST 解析约 40 种语言,不经过 LLM、不出本机、零 token,抽的是"谁调用谁、谁 import 谁"这类硬事实;第二遍模型辅助——文档、PDF、截图、白板照片等解析器看不懂的东西,才交给你的模型做语义抽取。
最得工程师信任的细节:每条边都带可信度标签。EXTRACTED 表示源码里明确写着的,INFERRED 表示推导出来的——找到的和猜的永远分得清。另外整个设计里没有向量数据库,没有 embeddings,没有要跑的服务,就是一张实实在在的图。
诚实的局限
- 文档那一遍不免费:代码图零 token,语义抽取烧的是你模型的 token,文档多的仓库要掂量。
- 包名是
graphifyy(双 y),README 明确警告其他graphify*包与官方无关,别凭记忆手打。 - 图会过期:重构后不重建,你导航的就是上个月的代码库。
- 小仓库不需要:十几个文件的项目,grep 本来就够快。
- 仓库自称的 benchmark(LOCOMO recall@10 0.497)是自测数据,仅供参考,真想评估就在自己的 monorepo 上跑一遍。
地图之后
说句实在的:graphify 不是 debugger。地图告诉你东西在哪,不告诉你为什么坏。但两者很配:当图谱指出来一条可疑调用链——比如三处 handler 用三种不同路径调同一份校验逻辑——接下来就是系统化调试的工作了:先假设、再复现、再二分、最后验证修复。我们的 systematic-debugging skill 就是为这一步设计的;如果要 review 的 PR 动到了图谱里的"核心节点",code-review-and-quality 则给了高风险变更的检查清单。先看地图,再讲方法。
有一下午空闲就值得一试:装上,跑 /graphify .,打开 graph.html,问一个你平时靠 grep 回答的问题,对比一下答案的速度和准度——这个对比就是全部的评估标准。