code-review-graph 是什么?

code-review-graph 是本地代码知识图谱与 MCP 服务。它用 Tree-sitter 把函数、类、导入、调用、继承和测试关系写入 SQLite,通过变更影响范围、执行流和图查询,为 AI 编码工具提供小而相关的上下文。它提供结构事实和风险线索,不负责替模型完成最终语义判断。

⭐ 18,415 Stars 🍴 1,976 Forks Python — 作者: tirth8205
来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c… 查看 GitHub 仓库 → 📘 使用教程 →

为什么值得关注

大型仓库让编码 Agent 反复搜索和读取文件,耗时也占上下文。code-review-graph 先把静态结构持久化,后续只查询变更附近的函数、调用方、测试和流程,并提供跨多种 Agent 的 MCP 接口。项目活跃度来自 2026-09-18 发布的 v2.3.9 和持续更新的官方仓库。

来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c…

核心功能

Tree-sitter 结构图

解析多语言仓库中的符号和关系,持久化到本地 SQLite。内置语言之外还可用 languages.toml 配置 tree-sitter-language-pack 已提供的语法。

来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c…
影响范围与执行流

根据 git 变更、调用关系、测试覆盖和社区结构,返回受影响函数、可能波及的流程和测试空白;v2.3.9 对空结果增加 confidence 字段,区分未建图、图过期、语言缺口与真实空集。

来源:github.com/tirth8205/code-review-graph/releases/tag/v2.3.9
MCP 与多平台安装

install 命令检测 Claude Code、Codex、Cursor、Copilot 等工具并写入 MCP、hook、skill 和规则文件。可用 --platform 限定目标,并用 --no-instructions 避免注入仓库规则。

来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c…
本地 CI 图审查

GitHub Action 在 runner 上建图和查询,不把源代码发送给外部服务;它发布风险表、受影响流程、测试空白和上下文节省估算,可选 fail-on-risk 门禁。

来源:github.com/tirth8205/code-review-graph/blob/main/docs/GITHUB_ACTION.md

技术架构

CLI 先通过 Tree-sitter 解析源码,再把节点、边、签名、流、社区和全文索引存入项目本地 .code-review-graph/graph.db。增量更新根据文件和 git 变化刷新受影响记录。MCP server 暴露图查询、影响半径、语义搜索和分析工具给编码 Agent;本地模型可生成 embeddings,v2.3.9 也加入 Voyage AI provider,选择云 embedding 时相关文本会离开本机。可视化把图导出为 D3、GraphML、Cypher、Obsidian 或 SVG;GitHub Action 使用同一分析层在 CI runner 上生成评论。

来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c…

项目知识图谱

知识图谱:项目核心节点(中心)+ 核心功能(内环六边形)+ 关键技术依赖(外环 chip) tree-sitter-language-packtree-sitter-la… SQLite 本地图数据库SQLite 本地图数… FastMCP 与各编码客户端的 MCP 配置FastMCP 与各编… Tree-sitter 结构图 影响范围与执行流 MCP 与多平台安装 本地 CI 图审查 code-review-graph 项目本体 核心功能 关键依赖

技术栈

语言Python 3.10+框架Tree-sitter + SQLite/FTS5 + 图分析 + MCP + 可选 embeddings
tree-sitter-language-packSQLite 本地图数据库FastMCP 与各编码客户端的 MCP 配置
PyPI/pipx/uvx 安装,本地图默认位于 .code-review-graph;提供 VS Code 扩展和复合 GitHub Action;MIT 许可
来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c…

快速上手

先在虚拟环境或 pipx 安装固定的 2.3.9,运行 code-review-graph install --platform codex --no-instructions,把改动限制到一个客户端且不注入规则文件;检查生成的 MCP 和 hook 配置后,再执行 code-review-graph build。随后用 status 和小范围 query 检查节点、边、语言识别和图的新鲜度。不要先开启云 embedding,也不要把 fail-on-risk 直接设为合并门禁。
来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c…

使用场景

适合在中大型多语言仓库中为 Agent 找调用方、评估改动半径、定位测试空白、浏览模块社区和减少重复读取。动态调用、反射、运行时依赖、生成代码和不完整语言解析会限制图的覆盖;发布前仍要结合测试、运行时 tracing、静态分析和人工 review。

来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c…

优势与局限

优势

  • 结构图和 CI 默认在本地或 runner 上构建,源代码无需交给托管审查服务
  • 影响半径、执行流、测试空白与图新鲜度形成可检查的中间证据
  • 支持多语言、多 MCP 客户端、增量更新和多种图导出
  • v2.3.9 开始为零结果解释原因,减少把缺数据误当成无影响

局限

  • 静态图无法完整捕获反射、依赖注入、动态导入、运行时配置和外部服务行为
  • 官方约 82 倍 median context reduction 与最高 528 倍属于项目方 benchmark,收益依仓库和任务变化
  • install 会写 MCP、hook、skill 和规则文件,应先限定平台并审查 diff
  • 图过期或解析缺口会导致漏掉受影响代码,必须关注 confidence、status 和增量更新
  • 选择 Voyage 等云 embedding provider 会改变本地数据边界
来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c…

最新版本

Latest v2.3.9 发布于 2026-09-18。该版增加局部图可视化、路径与深度边界、forget 命令、单平台卸载、Voyage embedding provider,并为三个主要查询工具的空结果加入 confidence 解释;升级时仍需检查 graph schema、客户端配置和现有索引。

来源:github.com/tirth8205/code-review-graph/releases/tag/v2.3.9

实测与证据

status: docs_only_official_sources_checked_not_installed  |  checked_at: 2026-09-23  |  environment: 阅读 tirth8205/code-review-graph 官方 README、v2.3.9 Releases、Usage、FAQ、GitHub Action、VS Code 和 benchmark 说明;未安装包、未扫描本地代码库。  |  limitations: 没有验证安装写入、建图时间、语言覆盖、影响半径、MCP、图新鲜度、token benchmark、可视化、CI 或云 embedding 数据路径;官方 benchmark 不作为本机结果。  |  observed_output: Latest GitHub Release 为 v2.3.9,发布于 2026-09-18;官方文档要求 Python 3.10+,默认图数据库位于项目 .code-review-graph/graph.db,CI 文档说明源代码不发往外部服务。

来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c…

同类项目对比

相比 brooks-lint,code-review-graph 侧重从源码抽取符号、调用和测试关系,为 Agent 提供可查询的结构上下文;它不靠固定的工程书目给出完整评语。brooks-lint 侧重语言模型审查框架、风险分类和诊断格式,但没有持久化代码图。需要查调用链和影响范围时先用 code-review-graph,需要统一团队的架构与技术债提问方式时可用 brooks-lint;两者都需测试和人工复核。

来源:github.com/tirth8205/code-review-graph;https://github.com/hyhmrright/…

总结评价

code-review-graph 适合把“Agent 应该读哪些代码”变成可检查的图查询。首次试用应固定 v2.3.9,只配置一个客户端,在中等规模仓库抽查几条已知调用链和测试关系;如果图对关键路径都不完整,节省再多上下文也没有意义。

来源:github.com/tirth8205/code-review-graph;https://github.com/tirth8205/c…

常见问题

code-review-graph v2.3.9 会把源码上传到云端吗?

本地建图和官方 GitHub Action 默认在本机或 CI runner 上处理,文档称不会把源代码发给外部服务。但如果主动选择 Voyage 等云 embedding provider,相关文本会进入对应服务。

图查询返回 0 就表示改动没有影响吗?

不一定。v2.3.9 会在空结果中说明是未建图、图落后于工作区、语言静态分析缺口,还是确认后的真实空集。还要检查 status、更新时间和语言覆盖。

官方 82 倍上下文节省适用于所有仓库吗?

不适用。那是项目方在固定仓库和任务上的 median benchmark;动态语言、仓库规模、改动范围和 Agent 原本的搜索策略都会改变结果。

install 命令会修改哪些地方?

它会检测客户端并可能写 MCP 配置、hooks、skills 和规则文件。首次运行应指定 --platform,并用 --no-instructions 避免规则注入;运行前后都要审查 diff。

code-review-graph 能替代测试和 code review 吗?

不能。它能提供静态关系和风险线索,但反射、运行时配置、外部服务与业务语义仍需测试、运行时观测、静态规则和人工评审。

资料与核验范围
本文依据项目公开资料整理。版本、安装命令和功能边界可能随上游更新,请以所列来源和项目当前版本为准。 资料核对时间: 2026-09-23 13:55.

参考材料:README、GitHub API、依赖文件