欣淇
发布于 2026-05-17 / 0 阅读
0
0

🔥 CodeGraph:2.7k Stars 的预索引代码知识图谱,让 Claude Code 少读 92% 的文件

🔥 CodeGraph:2.7k Stars 的预索引代码知识图谱,让 Claude Code 少读 92% 的文件

项目地址:colbymchenry/codegraph | ⭐ 2.7k Stars | 🛠 TypeScript | 作者 colbymchenry


老实说,用 Claude Code 翻大项目的体验,真是一言难尽。每次问个"这个函数怎么调用的",它就开始 spawn Explore agent,先 grep 再 glob 再 Read,Token 哗哗地烧,等它回过神来的功夫,你已经可以去泡杯咖啡了。

CodeGraph 给这事儿打了个补丁——它帮你把整个代码库的知识提前索引好扔进 SQLite,Claude Code 的 Explore agent 直接查图而不是扫文件。

到底省了多少?

开发者在 6 个真实项目上测过,数据很硬:

项目 不用 CodeGraph 用 CodeGraph
VS Code (TypeScript) 52 次工具调用,1分37秒 3 次调用,17秒
Excalidraw 47 次调用,1分45秒 3 次调用,29秒
Swift 编译器 37 次调用,2分8秒 6 次调用,35秒

平均少读 92% 的文件,快 71%,而且全程零文件读取——Explore agent 完全信任图查询的结果。

一行命令装上

npx @colbymchenry/codegraph

装完会自动配好 Claude Code 的 MCP Server,在 ~/.claude.json 里注册好 codegraph 工具集。重启 Claude Code 就行了。

初始化项目:

cd your-project
codegraph init -i

执行完项目根目录下会多一个 .codegraph/ 文件夹,里面就是 SQLite 图谱数据库。

两个场景最爽

场景一:探索代码

不用 CodeGraph 时,Claude Code 的 Explore agent 会先撒网找文件再读。用了之后,它直接调 codegraph_explore 把相关符号、调用链、代码片段一把抓回来。

场景二:改代码前看影响面

codegraph affected src/auth.ts

改了 auth 模块,想知道哪些测试文件会受影响?一个命令全列出来。搭配 CI hook:

git diff --name-only HEAD | codegraph affected --stdin --quiet

然后只跑受影响的测试,不用全量跑。

20 种语言 + 13 个 Web 框架

树-sitter 解析 AST,支持 TypeScript、Python、Go、Rust、Java、C#、PHP、Ruby、Swift、Kotlin、Dart、C、C++……甚至还认 Django 的 urls.py、Flask 的 @app.route()、Spring 的 @GetMapping。路由 URL 直接链到 handler 函数,查调用链的时候 URL 也跟着出来了。

踩坑注意

  • 装了之后要重启 Claude Code 才能加载 MCP Server
  • 大规模项目(25,000+ 文件)首次索引要等几分钟,但索引完就爽了
  • Explore agent 要调 codegraph_explore 而不是 codegraph_context——后者返回大量源码会占主会话的上下文窗口

总结

  • npx @colbymchenry/codegraph 一键安装配好 MCP
  • codegraph init -i 初始化项目,建好图库
  • 92% 更少的工具调用,71% 更快的探索速度
  • 20 种语言,13 个 Web 框架,路由到 handler 全链跟踪
  • 100% 本地,不走网络,不要 API key

标签:#ClaudeCode #MCP #代码知识图谱 #AI编程 #开发者工具


评论