如果用 AI 编程代理做过大型代码库的架构分析,你八成遇到过这种场景:代理为了搞清一个函数的影响范围,先 grep、再 ls、再 Read 十几个文件,最后你可能发现它的探索过程比你手动翻还慢。
CodeGraph 解决的就是这个问题——提前建好知识图谱,让代理直接查答案,而不是从头探索。
给 AI 代理的一份「代码地图」
CodeGraph 是 colbymchenry 发布的开源项目,TypeScript 编写,MIT 协议。它做的事情很简单:在你运行代理之前,先对你的代码库做一次完整的静态分析,生成符号关系图、调用图、代码结构索引。然后通过 MCP 协议把这些信息喂给代理。
代理不再需要 grep/Read 文件来找代码关系——直接问 CodeGraph,一次工具调用就能得到答案。
效果很直观。官方在 7 个真实开源项目上做了对比测试:
平均节省: 16% 费用、47% token、22% 时间、58% 工具调用次数。
大项目效果尤其明显。VS Code 代码库(约 1 万文件):工具调用少了 81%,token 少了 64%。Django(约 3 千文件):工具调用少了 77%。
核心能力
智能上下文构建。 一个工具调用返回入口点、相关符号和代码片段。不用派探索代理到处翻。
全文搜索。 基于 FTS5,在整个代码库中按名称瞬间定位代码。
影响分析。 改动一个符号之前,先查它的调用者和被调用者,了解影响范围。
实时同步。 文件监控器使用原生 OS 事件(FSEvents/inotify/Windows),两秒内自动更新索引。改了代码不需要手动重建。
20+ 语言支持。 从 TypeScript、Python、Go、Rust 到 Java、C#、PHP、Swift、Kotlin、Dart,覆盖面很广。
框架感知路由。 能识别 Django、Flask、FastAPI、Express、NestJS、Spring 等 14 个 Web 框架的路由文件,把 URL 模式和处理器关联起来。
iOS / React Native 跨语言桥接。 这是比较惊艳的一个功能——Swift ↔ ObjC 自动桥接、React Native 新旧架构桥接、Expo Modules,都能跨语言追踪调用关系。
安装使用
不需要 Node.js 环境:
# 安装 CLI(macOS/Linux)
curl -fsSL https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.sh | sh
# 连接 AI 代理
codegraph install
# 在项目中初始化
cd your-project
codegraph init -i
支持 Claude Code、Cursor、Codex CLI、OpenCode、Gemini CLI、Hermes Agent、Antigravity、Kiro。
跟 Understand-Anything 有啥区别?
这两文章前后脚发可能有点混淆,但它们其实走的不同路线:
- Understand-Anything 侧重可视化——交互式知识图谱、业务领域映射、AI 导览,适合人看
- CodeGraph 侧重给 AI 代理用——MCP 协议集成、性能优化(更便宜更快)、实时同步,适合代理用
简单说:你想自己看代码结构 → Understand-Anything。你想让 AI 代理更快理解代码 → CodeGraph。
不是没有槽点
初次建索引需要时间。 大型代码库第一次索引可能要几分钟到十几分钟。
依赖项目代码质量。 符号解析准确度受限于代码规范性和语言解析器能力。
竞品很多。 代码理解这个赛道挺拥挤的(Understand-Anything、Sourcegraph Cody、CodeGraph...),到底哪个能跑出来还得看。
一句话总结
如果你用 AI 代理做大型项目开发,CodeGraph 能显著减少代理的探索成本。3.8 万星,MIT 协议,100% 本地运行,值得一试。
GitHub:github.com/colbymchenry/codegraph
文档:colbymchenry.github.io/codegraph