Graphify Skill:把代码库变成可查询知识图谱的代码智能神器
Graphify Skill:将代码库转化为可查询知识图谱的代码智能工具
功能与原则
Graphify 是一款将任意代码库(配套文档、SQL Schema、配置文件、PDF)实时转化为可查询知识图谱的 CLI 工具。核心原则是「用图查询代替文件搜索」——构建完成后,开发者可以用自然语言提问、查询两点间路径、或解释任意概念,一切基于 graph.json 而非逐文件 grep。代码解析完全基于 tree-sitter AST(本地执行、无 LLM 调用、零数据外传),文档和媒体文件才调用配置的模型 API。
认可度
- GitHub Star:约 99.9k(截至 2026-08-01)
- Fork:约 9.7k
- 近期趋势:GitHub Trending 常驻,5 小时前刚有 commit,Search 结果 top 4
- 版本:0.9.31(2026-07-31)
- 许可:Apache-2.0
- Y Combinator:S26 入选项目
- Benchmark:LOCOMO recall@10 为 0.497(mem0 仅 0.048,supermemory 仅 0.149);LongMemEval QA 准确率 76%,与 dense RAG 持平;图构建 LLM 消耗为 0(代码部分)
链接
GitHub:https://github.com/Graphify-Labs/graphify
原作者
Graphify-Labs(主导贡献者 @safishamsi);Y Combinator S26 加速器支持项目,团队背景为代码智能方向。
介绍
Graphify 起源于一个朴素痛点:大型代码库里,一个概念散布在几十个文件中,传统 grep/Read 工具无法告诉你「A 和 B 之间是如何关联的」。Graphify 用知识图谱替代了这一流程——每个代码对象(类/函数/变量/接口)作为节点,边代表调用、导入、继承、引用等关系,全部由 tree-sitter AST 解析器自动抽取,完全本地执行。
安装后只需两条命令:uv tool install graphifyy → graphify install,然后在 AI 助手中输入 /graphify . 即可生成三类产物:graph.html(可交互图)、GRAPH_REPORT.md(高层摘要)、graph.json(全量图供后续查询)。支持持续更新:配合 Git hook 可在每次 commit 后自动增量重建图谱,团队成员直接复用同一张图,无需各自重跑。
Graphify 还支持将 docs、PDF、图片、视频、YouTube 视频也映射进同一张图谱(调用 AI 模型做语义提取),真正实现「代码 + 文档 + 视频」统一的查询界面。
特点
- tree-sitter AST 本地解析:代码部分完全不调用 LLM、不外传数据,覆盖 36 种 tree-sitter 语法、40+ 编程语言
- 图查询替代文件搜索:
graphify query "<question>"返回 scoped 子图;graphify path A B追踪任意两点间路径;graphify explain "<node>"输出节点详情和连接 - 全链路置信标签:每条边标注
EXTRACTED(源码直接读取)或INFERRED(由图推理),用户始终知道信息来源 - Benchmark 领先:LOCOMO recall@10 = 0.497(竞品最高 0.149);QA 准确率 76% 对标 dense RAG;图构建零 LLM 成本
- 多平台开箱即用:Claude Code、Cursor、Codex、Copilot、Kimi Code、Gemini CLI、OpenClaw 等 20+ 平台均有官方集成,一条命令完成技能注册
使用方法
安装(推荐 uv):
uv tool install graphifyy
graphify install
构建图谱:
/graphify . # 当前目录构建完整图谱
查询图谱(构建完成后):
graphify query "show the auth flow"
graphify path "UserService" "DatabasePool"
graphify explain "RateLimiter"
团队协作(commit 后自动重建):
graphify hook install # 每次 git commit 自动增量更新
持续更新 docs:
/graphify ./docs --update
输出三个文件:
graphify-out/
graph.html # 浏览器打开,可视化交互图
GRAPH_REPORT.md # 高层摘要、God nodes、跨文件连接
graph.json # 全量图,随时 query
使用场景与人群
- 大型代码库维护者:快速理解陌生项目结构、追踪跨文件依赖关系
- AI 编程工具用户:让 Claude Code/Cursor 等在读代码前先查图谱,减少 token 消耗、提升回答准确率
- 技术 lead / 架构师:快速摸清系统全貌,发现隐藏的循环依赖或不合理耦合
- 多语言/混合项目:代码 + 文档 + PDF 统一映射,避免割裂
输入与输出案例
案例一:查询节点
Input: graphify explain "APIRouter"
Output:
Node: APIRouter
Source: routing.py L2210
Community: 2
Degree: 47
Connections (47):
--> RequestValidationError [uses] [INFERRED]
--> Dependant [uses] [INFERRED]
--> .get() [method] [EXTRACTED]
<-- __init__.py [imports] [EXTRACTED]
...
案例二:路径追踪
Input: graphify path "FastAPI" "ModelField"
Output:
Shortest path (3 hops):
FastAPI --uses--> DefaultPlaceholder
<--references-- get_request_handler()
--references--> ModelField
评论区
登录后可评论。