Graphify 代码知识图谱
把代码库、文档、SQL Schema、配置与 PDF 转成可查询的知识图谱。以 /graphify 技能形式接入 Claude Code、Cursor、Codex、Gemini CLI,本地用 tree-sitter 做确定性 AST 解析,每条边都标注来源,不依赖向量库。
爱鲜报评分
0 人评分
125k
星数
是
中文
Python
主语言
是
活跃
317
贡献者
人工分析
EDITORIAL推荐理由
它用本地 AST 解析替代向量检索,把代码库变成可遍历的真实图谱,查询时不必反复 grep 文件。每条边区分 EXTRACTED 与 INFERRED,让「读到的」和「推断的」一目了然,可信度更高。对需要快速理解大型陌生仓库、追踪调用链与依赖关系的开发者非常实用,且已支持中文文档。
适用场景
- 接手陌生大型代码库时快速建立全局认知
- 追踪模块、类与函数之间的调用与依赖路径
- 为 AI 编程助手提供项目级上下文检索
- 把文档、SQL Schema 与 PDF 一并纳入知识检索
- 代码审查或重构前梳理影响范围
优点
- 代码解析完全本地、确定性,无需上传源码
- 每条边带 EXTRACTED/INFERRED 置信标签,可追溯
- 不依赖向量库与 embedding,图谱可遍历可解释
- 支持 Claude Code、Cursor、Codex、Gemini CLI 等多种助手
- 产出 graph.html、GRAPH_REPORT.md、graph.json 三种结果,便于浏览与集成
缺点
- 文档、PDF、图片与视频的语义解析仍需调用模型或 API Key
- 知识图谱质量依赖代码结构与解析覆盖度,超大仓库可能耗时
- 需要先安装 CLI 并注册技能,对纯新手有一定配置成本
Graphify 是什么
Graphify 是一个把「整个项目」变成可查询知识图谱的工具。在 AI 编程助手里输入 /graphify,它会把代码、文档、PDF、图片、视频等素材映射成一张图,之后你查询图谱,而不是一遍遍 grep 文件。
它支持 Claude Code、Cursor、Codex、Gemini CLI、GitHub Copilot 等 15 种以上平台。
核心特性
本地确定性代码解析
代码部分使用 tree-sitter 做 AST 解析,完全本地、确定性、不经过 LLM,源码不会离开你的机器。文档、PDF、图片和视频则使用助手自带模型或配置的 API Key 做语义处理。
每条边都有解释
图谱中的每条连接都会标注:
EXTRACTED:源码中显式存在的连接INFERRED:由 Graphify 解析推断出的连接
这样你能清楚区分「直接读到的」和「推断出来的」信息。
不是向量索引
Graphify 不做 embedding,也不使用向量库,而是一张可遍历的真实图谱。你可以提问、追踪两个概念之间的路径,或解释某个概念。
快速开始
安装 CLI 并注册技能:
uv tool install graphifyy # 或 pipx install graphifyy
graphify install # 向 AI 助手注册技能
然后在 AI 助手中执行:
/graphify .
产出文件
运行后会生成三个文件:
graphify-out/
├── graph.html 浏览器打开,可点击节点、筛选、搜索
├── GRAPH_REPORT.md 要点汇总:关键概念、意外连接、建议问题
└── graph.json 完整图谱,可随时查询而无需重读文件
图谱中带有 graph.schema_version 与 graph.graphify_version,方便集成方识别格式变化与生成版本。
查询示例
图谱构建完成后,你可以直接查询而不是阅读文件。例如在 FastAPI 代码库上:
$ graphify explain "APIRouter"
Node: APIRouter
Source: routing.py L2210
Community: 2
Degree: 47
$ graphify path "FastAPI" "ModelField"
Shortest path (3 hops):
FastAPI --uses--> DefaultPlaceholder <--references-- get_request_handler() --references--> ModelField
每个节点是一个概念,颜色代表自动检测出的社区,整个图谱可在 graph.html 中交互浏览。
适用与注意
它适合接手陌生大型仓库、追踪调用链、为 AI 助手补充项目级上下文。需要注意的是,非代码素材的语义解析仍依赖模型能力,超大仓库的解析也可能比较耗时。
评论
- 暂无评论,来写第一条吧。