Code Review Graph:Local-first 代码智能图谱——用 Tree-sitter AST 构建代码结构图,编码助手只读该读的代码 |SSP Github Daily

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 GraphGraphify(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 仓库

📚 信息来源

  1. GitHub 官方仓库:tirth8205/code-review-graph(Stars/License/架构/版本)

  2. GitHub Trending 榜单(2026-07-19),今日 +355 Stars

  3. Hacker News 原帖及作者回复:tirthkanani on HN

  4. dev.to 三工具对比:Code Review Graph vs Graphify vs codebase-memory-mcp

  5. developersdigest.tech:Coding Agents Need Codebase Maps

  6. mohammadkhan.dev 实践文章:I’m Wiring Graph Memory Into Code Review

  7. 掘金中文文章:code-review-graph 介绍与 GitHub Action 集成

  8. AI Heartland 日文介绍

  9. Tirth Kanani 个人网站:tirthkanani.com

  10. Greptile 基准测试:greptile.com/benchmarks

每日开源 · 第 100 期 · 2026-07-19 · 百期里程碑

001–100 期完整索引见 index.md · 本文内容基于公开信息整理,仅供技术交流参考