让 Claude Code 在 VS Code 的代码库里找一个功能是怎么实现的,它默认会干什么?
spawn 一个 Explore agent,然后开始 grep、glob、ls、Read——一个文件一个文件地翻。52 次工具调用,1 分 37 秒,消耗 89.4K token,读了大约 15 个文件。
同样的任务,装了 CodeGraph 之后:3 次工具调用,17 秒,56.6K token,读了 0 个文件。
差 94% 的工具调用,快 82%。
这不是 benchmark 作弊。是底层思路的转换。
代码知识图谱 vs 暴力搜索
CodeGraph 的核心想法很简单:与其让 agent 每次都从文件系统中暴力搜索,不如先给代码库建一张"地图"——符号关系、调用图、代码结构,全部预先索引好。
agent 需要找信息时,直接查图谱,而不是翻文件。
codegraph init -i 一键初始化项目。交互式安装器自动配置 Claude Code、Cursor、Codex CLI、opencode。
然后当 agent 需要探索代码时,它调用 codegraph_explore 工具——直接得到结构化答案,而不是自己去 grep 和 glob。
基准测试数据
作者在 6 个真实代码库上做了对比测试,全部用 Claude Opus 4.6 (1M context) + Claude Code v2.1.91,每个测试 spawn 同一个 Explore agent 问同一个问题:
| 代码库 | 有 CodeGraph | 没有 CodeGraph | 改进 |
|---|---|---|---|
| VS Code (TS) | 3 calls, 17s | 52 calls, 1m 37s | 94%↓, 82%↑ |
| Excalidraw (TS) | 3 calls, 29s | 47 calls, 1m 45s | 94%↓, 72%↑ |
| Claude Code (Python+Rust) | 3 calls, 39s | 40 calls, 1m 8s | 93%↓, 43%↑ |
| Claude Code (Java) | 1 call, 19s | 26 calls, 1m 22s | 96%↓, 77%↑ |
| Alamofire (Swift) | 3 calls, 22s | 32 calls, 1m 39s | 91%↓, 78%↑ |
| Swift Compiler (Swift/C++) | 6 calls, 35s | 37 calls, 2m 8s | 84%↓, 73%↑ |
平均:92% 工具调用减少,71% 速度提升。
最有说服力的是 Swift Compiler 那个测试——25,874 个文件、272,897 个节点的知识图谱,agent 只用了 6 次调用、35 秒就完成了没有 CodeGraph 时需要 37 次调用、2 分 8 秒才能完成的任务。
省的不只是时间
工具调用减少的直接收益是 token 消耗降低。在大模型 API 定价体系下,每个工具调用都是有成本的——不仅是 API 费用,更是 agent 的上下文窗口占用。
当 agent 的上下文窗口里塞满了 grep 和 Read 的输出,它用来推理的空间就变小了。CodeGraph 把 agent 从"找信息"的重复劳动中解放出来,让它的上下文窗口更多用于"理解信息"。
这是一个经常被忽略的优化维度:不是让模型更强,是让模型更少做无用功。
局限性
初始化需要时间。 对大代码库,首次建立知识图谱可能需要几分钟到几十分钟。这是一个一次性成本,但需要纳入工作流。
图谱不是活的。 代码变了,图谱需要重新索引。如果团队频繁提交,你可能需要设置一个 CI 任务来自动更新图谱——目前还没有内置的增量更新机制。
只解决 Explore 场景。 CodeGraph 优化的是 agent 探索代码库的过程。写代码、改代码、测试代码——这些环节它帮不上忙。它是一个"查找加速器",不是"编码加速器"。
目前只支持 Claude Code、Cursor、Codex CLI、opencode。 其他 agent 需要等待适配。
我的看法
这个项目的价值在于它提出了一个问题:AI 编程工具的瓶颈可能不是模型能力,而是信息检索效率。
给 agent 一张代码地图,比让它一个文件一个文件地翻要高效得多。这是一个很直觉的思路——但直觉不等于已经有人做出来了。
如果你在 Claude Code 里处理大代码库(几千个文件以上),装一下 npx @colbymchenry/codegraph 的成本几乎为零。5,816 颗星,MIT 协议,100% 本地运行。
唯一的问题是:你的代码库够不够大,大到值得建一张图谱?对小项目,grep 够用了。但一旦项目超过某个规模阈值,这张图的价值会迅速放大。
主要来源:
- GitHub - colbymchenry/codegraph (5,816 stars, updated 2026-05-19)
- npm - @colbymchenry/codegraph
- 基准测试数据来自项目 README,测试环境:Claude Opus 4.6 (1M) + Claude Code v2.1.91