CodeGraph知识图谱AI 编码 ⭐ 13,021 stars
凌晨 3 点 17 分,我盯着那个 50 万行的代码库发呆。Claude Code 已经 tool call 了 200 次,token 用掉了 80%,它还在问:「这个函数在哪里调用过?」
那一刻我明白了——AI 编码 Agent 最大的瓶颈,不是模型不够聪明,而是它不认识你的代码。就像你让一个天才去修车,但他连扳手都没见过。
CodeGraph(colbymchenry/codegraph)是 2026 年 GitHub 最火的工具之一——一个预索引的代码知识图谱,专为 Claude Code、Codex、Cursor、OpenCode 等 AI 编码 Agent 设计。
它的核心承诺:更少 token,更少工具调用,100% 本地运行。
传统代码 RAG 的做法:把代码切成块 → 向量化 → 语义检索。问题是:
// CodeGraph 索引流程
代码库
↓
AST 解析(保留完整语法树)
↓
知识图谱构建
├── 节点:文件、类、函数、变量
├── 边:调用、继承、引用、依赖
└── 属性:行号、参数类型、返回值
↓
向量化索引(语义 + 结构混合)
↓
本地存储(SQLite + 向量扩展)
# openclaw.yaml
code_intelligence:
provider: codegraph
config:
repo_path: /path/to/your/repo
index_mode: hybrid # 结构 + 语义
db_path: ~/.openclaw/codegraph.db
languages:
- typescript
- python
- go
// OpenClaw Agent 通过 CodeGraph 查询
const result = await agent.queryCodeGraph({
question: "用户认证模块中,哪个函数处理 JWT 验证?",
depth: 2, // 查询深度:关系跳转次数
includeCallers: true
});
// 返回:
// - 函数:verifyJWT() in auth/jwt.ts:42
// - 调用者:3 个函数
// - 相关文件:auth/middleware.ts, config/auth.ts
// - 依赖包:jsonwebtoken@9.0
| 指标 | 传统 RAG | CodeGraph |
|---|---|---|
| Token 消耗 | 高(需多次检索) | 低(一次图谱查询) |
| 查询速度 | 2-5 秒 | 200-500 ms |
| 结构理解 | ❌ 无 | ✅ 完整保留 |
| 本地运行 | 部分 | ✅ 100% 本地 |