100 期
每日开源 · 100 期特别篇
2026-07-19 · 早间篇
◉
Code Review Graph
by tirth8205 · 伦敦
Local-first 代码智能图谱——用 Tree-sitter AST 构建代码结构图,通过 MCP 协议让 AI 编码助手只读该读的代码,中位数82 倍Token 缩减,30 个 MCP 工具覆盖审查、影响分析、架构发现全流程。
20.2k**+355**
Stars
82x
Token 缩减
30
MCP 工具
24+
编程语言
MIT 开源
MCP 协议
Tree-sitter AST
Local-first
15+ AI 平台
🎉 第 100 期里程碑
从 2026 年 4 月 22 日第 001 期(RuView)到今天的第 100 期,「每日开源」已连续运行 89 天。100 个项目、100 篇深度文章、从 WiFi 穿墙姿态估计到 AI 代码审查图谱。感谢持续关注。
100
期数
89
天
100+
开源项目
15+
覆盖领域
🔥 为什么值得关注
AI 编码工具(Claude Code、Cursor、Copilot)有一个根深蒂固的问题:每次执行任务时,它们要么全文读取代码库浪费海量 token,要么随机 grep导致遗漏关键上下文。一个 3,000 文件的 Next.js 项目,完整源码可能需要 95 万 tokens——远超任何上下文窗口。
Code Review Graph 的解法:用 Tree-sitter AST 将代码库解析为有向属性图(函数、类、导入、测试、调用关系),存入本地 SQLite。AI 审查代码时,通过图查询精准获取"这个函数被谁调用、影响哪些测试、依赖什么模块"——平均只需 2,000-3,500 tokens,中位数 82 倍缩减。
这个项目精准命中了 2026 年 AI 编程工具的核心矛盾:模型能力越来越强,但上下文利用效率没有同步提升。与其等更大的上下文窗口,不如让 AI 更聪明地选择读什么。
🎯 它解决什么问题
问题 1:AI Code Review 读太多
审查一个 PR 改动了 3 个文件,但 AI 可能读取 50+ 个不相关文件来"理解上下文"。Code Review Graph 通过 BFS 影响分析,只返回变更节点的直接调用者和依赖者。
问题 2:Token 成本高昂
Claude Code 处理一个大型 monorepo 的单次任务可能消耗 50 万+ tokens。82 倍缩减意味着从 50 万降至约 6,000——成本从几美元降到几美分。
问题 3:AI 编码工具的"健忘症"
每次任务从零开始理解代码库。Code Review Graph 的 SQLite 图是持久化的,增量更新(基于 SHA-256 哈希,2,900 文件 < 2 秒),AI 的"记忆"跨会话保留。
问题 4:代码架构不可见
AI 不知道项目的模块边界和依赖关系。Code Review Graph 用 Leiden 社区检测自动发现架构模块,用 hub/bridge 节点分析识别关键枢纽。
📊 基准测试数据
在 6 个真实开源仓库、13 个 commit 上的测试结果:
| 仓库 | 文件数 | 原始 Tokens | 图查询 Tokens | 缩减倍数 |
|---|---|---|---|---|
| FastAPI | ||||
| ~600 | ||||
| 951,071 | ||||
| 2,169 | ||||
| 528x | ||||
| code-review-graph | ||||
| ~370 | ||||
| 208,821 | ||||
| 2,495 | ||||
| 93x | ||||
| Gin | ||||
| ~280 | ||||
| 166,868 | ||||
| 1,990 | ||||
| 92x | ||||
| Flask | ||||
| ~220 | ||||
| 125,022 | ||||
| 1,986 | ||||
| 71x | ||||
| Express | ||||
| ~250 | ||||
| 135,955 | ||||
| 3,465 | ||||
| 41x | ||||
| httpx | ||||
| ~125 | ||||
| 89,492 | ||||
| 2,438 | ||||
| 38x |
图查询稳定返回2,000-3,500 tokens的定向结果,几乎不受项目规模影响。Next.js 日常编码任务中峰值缩减达49 倍。
审查质量方面,使用图谱上下文 vs 完整源码的评分对比为8.8 vs 7.2(10 分制)——读得更少,审查得更好,因为噪声更少。
⭐ 核心亮点
🕸️
有向属性图 + SQLite WAL
节点代表函数/类/导入/测试,边代表 CALLS/IMPORTS/INHERITS/TESTED_BY/DEPENDS_ON 等关系。单文件.code-review-graph/graph.db存储,WAL 模式支持并发读取。⚡
增量更新 < 2 秒
基于 SHA-256 哈希检测变更文件,仅重新解析受影响部分。2,900 文件的大型项目增量更新不到 2 秒,不需要重建整个图谱。🔌
30 个 MCP 工具 + 5 个 Prompt 模板
覆盖审查上下文、影响分析(BFS)、图查询(callers_of/callees_of/tests_for)、语义搜索、架构发现、社区检测、重构预览、死代码检测、知识缺口分析。🌐
15+ AI 平台自动适配
Claude Code、Cursor、Codex、Windsurf、Zed、Continue、OpenCode、Gemini CLI、Qwen、GitHub Copilot 等,安装时自动检测并配置。🔍
FTS5 + 向量混合搜索
关键词搜索 + 语义向量搜索复合查询,准确率从 0.545 提升到 0.909。支持本地 sentence-transformers 或 Google Gemini 嵌入。🏛️
Leiden 社区检测
自动发现代码库的架构模块边界,识别 hub 节点(被大量依赖的核心模块)和 bridge 节点(跨模块连接器),生成架构概览。🐙
GitHub Action 集成
PR 提交时自动在 CI runner 本地构建图谱、发布风险评分审查评论。源码不发送到任何外部服务,满足企业安全要求。📊
实时 Token 节约面板
v2.3.5+ 提供终端 UI,实时显示"本应消耗 X tokens / 实际使用 Y tokens / 节省 Z%",可与 OpenAI tiktoken 交叉验证。
⚙️ 工作原理
1. 图谱构建
Tree-sitter 解析源文件为 AST,提取函数、类、导入、测试等实体及它们之间的关系(调用、继承、依赖等),写入 SQLite 图数据库。支持 24+ 编程语言,可通过 YAML 配置自定义语言解析规则。
2. 增量更新
通过watchdog监听文件变更或 Git diff 检测 SHA-256 哈希变化。仅重新解析变更文件及其邻域节点,保持图谱始终最新。
3. 图查询与上下文生成
当 AI 需要审查某个变更时,通过 BFS 从变更节点出发,遍历 CALLS 和 TESTED_BY 边,收集所有受影响的调用者和测试。将结果格式化为紧凑的文本上下文(约 2K-3.5K tokens),替代完整源文件。
4. MCP 暴露
通过 FastMCP 框架注册 30 个工具,以 stdio 或 Streamable HTTP 传输。AI 编码助手通过标准 MCP 协议调用,无需任何额外集成代码。
🚀 安装与使用
# 安装 pip install code-review-graph code-review-graph install # 在项目目录构建图谱 cd your-project code-review-graph build # Claude Code 自动配置(检测到后自动启用)# 也支持 Cursor / Codex / Windsurf / Gemini CLI 等
MCP 服务器配置
{ “mcpServers”: { “code-review-graph”: { “command”: “uvx”, “args”: [“code-review-graph”, “serve”] } } }
GitHub Action(PR 自动审查)
- uses: tirth8205/code-review-graph@v2.3.7 with: github-token: ${{ secrets.GITHUB_TOKEN }}
📋 适用场景
PR 代码审查AI 审查 PR 时精准获取影响范围,不读无关代码
Monorepo 导航大型多模块项目中快速定位依赖关系和架构边界
架构发现Leiden 社区检测自动生成模块关系图
重构辅助重命名预览、死代码检测、影响半径分析
Token 成本优化将 AI 编码的 token 消耗降低一个数量级
调试辅助从 Bug 位置反溯调用链和测试覆盖
🔍 竞品对比
| 维度 | Code Review Graph | Graphify(095期) | codebase-memory-mcp |
|---|---|---|---|
| Stars | |||
| 20.2k | |||
| 85k | |||
| ~22k | |||
| 核心差异 | |||
| PR 审查 + 影响分析 | |||
| 多模态知识图谱 | |||
| LSP 级极限性能 | |||
| Token 缩减 | |||
| 82x 中位数 | |||
| ~71x | |||
| ~120x | |||
| 语言覆盖 | |||
| 24+ | |||
| 36+ grammar | |||
| 158 | |||
| 存储 | |||
| SQLite WAL | |||
| 内存图 | |||
| 纯 C 零依赖 | |||
| MCP 工具数 | |||
| 30 | |||
| ~15 | |||
| 较少 | |||
| 增量更新 | |||
| ✅ <2s | |||
| 部分 | |||
| ✅ | |||
| GitHub Action | |||
| ✅ | |||
| ❌ | |||
| ❌ | |||
三者定位不同:Graphify 侧重跨模态知识管理,codebase-memory-mcp 追求极致性能(158 种语言),Code Review Graph 侧重审查场景的完整工作流(影响分析 + 风险评分 + GitHub Action)。
👤 创始人背景
Tirth Kanani(@tirth8205),英国伯明翰大学 MSc(毕业成绩第一名 Distinction),研究方向为 HCI & AI Lab。硕士论文GraphMinds研究知识图谱如何让 LLM 系统更透明、可控制——正是 code-review-graph 的学术基础。
常驻伦敦,关注领域包括智能体系统、知识图谱、AI 安全与对齐、上下文高效检索。项目获得 Hacker News 关注,有日本和中国社区的技术解读文章。
✅ 优势与风险
优势
82 倍 token 缩减,有扎实的基准数据
30 个 MCP 工具,覆盖完整审查工作流
Local-first,无云端依赖,企业友好
增量更新极快(<2 秒),不阻塞开发
15+ AI 平台自动适配
GitHub Action 一键集成 CI
开源活跃(493 commits,v2.3.7)
风险
Python 3.10+ 要求,非 Python 用户需额外安装
图谱构建是离线的,不能替代实时代码搜索
架构检测(Leiden)需可选依赖 igraph
向量搜索需额外安装嵌入模型
F1 = 0.71 的影响分析精度仍有提升空间
单人维护,82 个开放 issue
📝 总结
Code Review Graph 是 **“AI 编码工具的持久化结构记忆”**这一新兴品类的标杆项目。它不试图让 AI 更聪明,而是让 AI读得更精准——通过代码图谱将 95 万 tokens 的上下文压缩到 2,000-3,500 tokens,同时提升审查质量。
在百期特别篇选择这个项目,也因为它代表了一个重要的行业趋势:AI 编码工具的竞争正在从"谁的模型更强"转向**“谁的上下文利用更高效”**。本地优先、图谱索引、增量更新、MCP 协议——这些技术组合正在成为 AI 编码基础设施的新标准。
如果你在用 Claude Code、Cursor 或 Copilot 处理大型代码库,Code Review Graph 值得一试。安装只需两行命令,之后的每一次 AI 交互都会更精准、更便宜。
查看 GitHub 仓库
📚 信息来源
GitHub 官方仓库:tirth8205/code-review-graph(Stars/License/架构/版本)
GitHub Trending 榜单(2026-07-19),今日 +355 Stars
Hacker News 原帖及作者回复:tirthkanani on HN
dev.to 三工具对比:Code Review Graph vs Graphify vs codebase-memory-mcp
developersdigest.tech:Coding Agents Need Codebase Maps
mohammadkhan.dev 实践文章:I’m Wiring Graph Memory Into Code Review
掘金中文文章:code-review-graph 介绍与 GitHub Action 集成
AI Heartland 日文介绍
Tirth Kanani 个人网站:tirthkanani.com
Greptile 基准测试:greptile.com/benchmarks
每日开源 · 第 100 期 · 2026-07-19 · 百期里程碑
001–100 期完整索引见 index.md · 本文内容基于公开信息整理,仅供技术交流参考