code-review-graph 爆火:把整个代码库建成知识图谱喂给 AI,Token 减少 82 倍,代码完全不出本地

code-review-graph 爆火:把整个代码库建成知识图谱喂给 AI,Token 减少 82 倍,代码完全不出本地

最近有个项目在 GitHub 上突然就火了。
一周涨了 4791 个 Star,而且还在以每天上千的速度增长。

它就是 code-review-graph

GitHub 地址:https://github.com/code-review-graph/code-review-graph

这个项目到底做了什么?
简单说就是一句话:
它把你的整个代码库,提前解析成一张持久化的知识图谱,然后当 AI 需要上下文的时候,它只把真正相关的那部分给 AI。

听起来好像也没什么了不起的?
那是因为你还没有意识到今天用 AI 写大项目到底有多痛。

这可能是目前为止,解决大项目 AI 编程上下文问题的最好的方案。


先搞清楚:今天 AI 写大项目的痛点到底有多痛?

现在所有的 AI 编程工具,不管是 Cursor 还是 Claude Code,处理大项目的时候,都有一个致命的问题:
它们太笨了。

你让它改一个函数,它会把整个文件都读一遍。
你让它加一个功能,它会把十几个相关的文件都读一遍。
你让它做一个跨模块的重构,它可能会把半个仓库都读一遍。

结果是什么?
- Token 贵得要死:随便一个操作就是几万、几十万 Token。大一点的项目,一天光 Token 钱就几百块。
- :读几十万个 Token 就要几十秒,你坐在那里等,等 AI 把代码读完黄花菜都凉了。
- 容易被干扰:读了一大堆不相关的代码进去,反而把 AI 带偏了,本来很简单的问题,它给你一个错得离谱的答案。
- 安全问题:把整个代码库的代码都传给第三方 API,很多公司根本就不允许。

项目越大,这个问题就越严重。
十万行代码的项目,AI 用起来已经很痛苦了。
百万行、千万行的项目?想都不要想。

所有人都知道这是个问题,但是所有人都没有什么好的解决方案。
直到 code-review-graph 的出现。


code-review-graph 是怎么解决这个问题的?

code-review-graph 的思路非常漂亮,非常朴素,但是非常有效。
它没有去搞什么更聪明的检索算法,也没有去搞什么更好的 RAG。
它走了一条完全不同的路:提前把整个代码库的结构和关系,都算好存起来。

整个流程是这样的:

第一步:构建知识图谱

第一次运行的时候,它会用 Tree-sitter,把你整个代码库全部解析一遍。
不是把代码当成纯文本索引,是真的去理解代码的结构和关系:
- 有哪些函数,哪些类,哪些接口
- 谁调用了谁
- 谁导入了谁
- 谁继承了谁
- 哪个测试覆盖了哪个函数
- 哪个文件和哪个文件经常一起被修改

所有这些关系,它都会提前算好,存成一张持久化的知识图谱。

这件事,你只需要做一次。

第二步:增量更新

之后,你每次改代码,它不会重新解析整个仓库。
它只会解析那些变更了的文件,增量更新这张图。
通常只需要不到 2 秒钟,你甚至都感觉不到它在运行。

第三步:精准检索

当 AI 需要上下文的时候,它不会傻傻地去把所有相关文件都读一遍。
它会去问这张图:
- 我要改的这个函数,会影响到哪些其他的函数?
- 有哪些地方调用了它?
- 它调用了哪些别的函数?
- 相关的测试在哪里?
- 最近还有哪些地方改了类似的代码?

然后它只把这真正相关的一小部分,拿出来给 AI。

就这么简单。


效果有多夸张?82 倍 Token 减少

官方给出的测试数据是:
平均减少 82 倍的上下文 Token 消耗。

什么概念?
以前你做一个代码变更,AI 需要读 82000 个 Token 才能搞清楚上下文。
现在只需要 1000 个。

这带来的好处是全方位的:
- 成本直接降到原来的 1.2%:以前一天花 100 块 Token 钱,现在只需要 1 块 2。
- 速度快了一个数量级:以前等 30 秒,现在等 3 秒。
- 答案质量大幅提升:没有无关的代码干扰 AI,犯错的概率大大降低。
- 大项目终于能用 AI 了:以前百万行项目根本不敢想,现在用起来和小项目一样流畅。

而且最关键的一点:
这一切都发生在你的本地。你的代码一行都不会上传到任何地方。

图谱存在你本地,检索在你本地做,最后给 AI 的那一小段上下文也是在你本地抽出来的。
你甚至可以在完全断网的环境里用它。

对于对代码安全有要求的公司来说,这一点就是杀手级的。


几个真正好用的杀手级功能

除了核心的精准上下文供给之外,这个项目还做了几个非常非常实用的功能,每一个都精准命中了开发的痛点。

1. Blast Radius 分析(影响范围分析)

你改了一行代码,它会自动帮你算出来,这行代码的改动,会影响到整个代码库里的哪些地方。
影响路径是什么,调用链是什么,有多少个函数会受到影响,有多少个测试可能会挂。

这个功能对于大项目来说,简直是救命的。
很多时候,你觉得你只是改了一行无关紧要的代码,结果上线之后炸了八个地方。
以后这种事情会越来越少。

2. PR 风险评分

它可以自动给每个 Pull Request 打一个风险分。
0-100 分,分数越高越危险。
它会告诉你:
- 这个 PR 改了哪些核心模块
- 影响了多少个调用方
- 有没有相应的测试覆盖
- 历史上类似的改动出过多少 bug
- 哪些地方需要重点 review

而且它可以集成 GitHub Action,自动把风险评分和分析作为评论发到 PR 下面。
不需要任何人人工介入,完全自动化。

很多团队用了之后都说,光这一个功能,就值回票价了。

3. 执行流检测

你给它一个入口函数,它可以沿着调用图,把整个完整的执行流给你画出来。
从入口到最底层的 IO,中间经过了多少层,每一层做了什么。

这个功能对于理解陌生的代码库,对于排查复杂的 bug,对于做大型重构,帮助真的太大了。
比你自己一个个函数跳进去看,效率高 10 倍都不止。

4. 代码社区划分

它可以自动把你的整个代码库,划分成几个不同的"社区"。
哪些文件经常一起被修改,哪些模块是强耦合的,哪些地方看起来就像是一团乱麻。

很多时候,你在一个团队里待了好几年,都不一定能搞清楚整个代码库的模块关系。
它几秒钟就能给你画得清清楚楚。


MCP 集成:一次构建,所有 AI 工具都能用

这个项目最聪明的一点,就是它没有自己再做一个 AI 编程工具。
它做的是:通过 MCP 协议,把能力开放给所有的 AI 编程工具。

现在已经支持:
- ✅ Claude Code
- ✅ Cursor
- ✅ OpenAI Codex
- ✅ 所有支持 MCP 协议的工具

你只需要装一次 code-review-graph,配置好 MCP。
然后不管你用哪个 AI 写代码,它都会自动在后台给你提供精准的上下文。
你甚至都感觉不到它的存在。

它就像是你电脑上的一个显卡。
所有的应用程序都可以用它来加速,不需要每个应用自己再做一遍。

这才是正确的架构。


现在还有什么问题?

当然,现在这个项目还非常新,还有很多可以改进的地方。

问题 1:复杂语言的支持还不够完善

对于 C++、Rust 这种有非常复杂类型系统的语言,现在的图谱构建质量还有提升空间。
很多复杂的模板、宏、泛型,现在还不能很好地处理。

不过好消息是,它是基于 Tree-sitter 的,只要 Tree-sitter 的语法更完善了,它自然就会变得更好。

问题 2:跨语言分析还比较弱

现在的分析,基本上还是在单一语言内部的。
如果你的项目是前端 JS + 后端 Go + 中间件 Python 这种多语言组合,现在跨语言的调用关系还分析不出来。

不过这也是他们 roadmap 上优先级非常高的一个功能。

问题 3:UI 还比较简陋

现在基本上还是一个命令行工具,可视化的 UI 还比较原始。
很多分析结果,就是输出一个文本列表,看起来不够直观。

不过相信这个问题很快就会解决。


这件事真正的意义是什么?

code-review-graph 这个项目,我觉得它的意义远不止是一个好用的工具这么简单。
它代表了 AI 编程发展的一个非常重要的方向。

AI 编程的第一个阶段:拼模型

大家比的是谁的模型更聪明,谁写代码写得更好。
这个阶段已经基本结束了,现在所有主流模型的代码能力都已经到了够用的水平。

AI 编程的第二个阶段:拼上下文

大家比的是谁能给 AI 更好、更精准、更相关的上下文。
同样一个模型,上下文给得好,效果可能会差好几倍。
现在我们就处在这个阶段。

code-review-graph 就是这个阶段的代表性产品。
它不做模型,它不做推理,它就专心把上下文这件事做到极致。

AI 编程的第三个阶段:拼对代码的深度理解

再往下走,就是对代码的深度理解,对软件架构的理解,对设计模式的理解。
而 code-review-graph 做的知识图谱,正是所有这些高级功能的基础。

所以你看,这个项目看起来只是解决了一个小问题。
但是它实际上是在为整个下一代的 AI 编程工具,打地基。


给所有开发者的建议

最后,给所有每天用 AI 写代码的开发者几个非常实在的建议:

  1. 现在就去试试
    如果你每天用 Cursor 或者 Claude Code 写代码,现在就去把这个工具装上,试用一天。
    我可以保证,用了之后你就回不去了。那种速度和质量的提升,是立竿见影的。

  2. 不要自己再做一遍了
    很多公司、很多团队,都在内部做类似的东西。不要做了。
    这个项目做得已经非常好了,而且是完全开源的。
    有那个时间,还不如基于它做一些自己内部的定制化功能。

  3. 关注 MCP 生态的发展
    MCP 协议出来才几个月,但是已经出现了像 code-review-graph 这样的杀手级应用。
    以后还会有更多。这会是未来一两年 AI 工具领域最重要的生态。

  4. 把你的工具链提前准备好
    不要等所有人都用上了,你才开始研究。
    现在就开始体验,开始研究,开始定制。
    这些工具带来的生产力差距,是真实存在的,而且会越来越大。


写在最后

code-review-graph 这个项目,我之所以这么看好,是因为它走了一条非常难,但是非常正确的路。

大多数 AI 工具,都在做"向上"的事情:
做更酷炫的界面,做更自然的交互,做更聪明的提示词,做更多的自动化操作。

而 code-review-graph 选择了做"向下"的事情:
沉下去,真正地去理解代码,理解结构,理解关系。
把最底层的基础设施做扎实,做牢靠。

这条路很难,很慢,看起来也不够酷炫。
但是只要你把它做好了,上面所有的东西,都会自然而然地好起来。

这才是做基础设施应该有的样子。

非常期待这个项目未来的发展。
也非常推荐所有用 AI 写代码的开发者,都去试一试。


作者: itech001
来源: 公众号:AI人工智能时代
网站: https://www.theaiera.cn/
每日分享最前沿的AI新闻资讯和技术研究。

本文首发于 AI人工智能时代,转载请注明出处。

posted @ 2026-07-24 09:12  iTech  阅读(10)  评论(0)    收藏  举报