code-review-graph 完整指南:代码审查 token 省 65 倍
code-review-graph 完整指南代码审查 token 省 65 倍【免费下载链接】code-review-graphLocal-first code intelligence graph for MCP and CLI. Builds a persistent map of your codebase so AI coding tools read only what matters, with benchmarked context reductions on reviews and large-repo workflows.项目地址: https://gitcode.com/GitHub_Trending/co/code-review-graphcode-review-graph 是一个本地优先的代码图谱工具用 Tree-sitter 把代码库解析成持久化结构图再通过 MCP一种让 AI 助手调用外部工具的标准协议和命令行只喂给 AI 助手最小必要上下文。官方基准里读完整 flask 仓库要 14 万 token从图里拿答案只要约 2 千。AI 代码审查为什么费 token让 AI 审查一次改动时它的默认动作是能读就读——把可能相关、也可能不相关的文件统统塞进上下文。仓库越大浪费越狠token 烧得快、响应变慢模型注意力还被无关代码稀释。code-review-graph 的定位就是挡在 AI 前面的过滤器先算清楚这次改动真正波及哪些文件再让助手只读这些其余一概不碰。三步装完三分钟跑起来pip install code-review-graph code-review-graph install code-review-graph buildinstall会自动检测你机器上的 AI 工具Cursor、Claude Code、Codex、Zed 等十几类逐个写好 MCP 配置重启编辑器即可只想配某一个就加--platform cursor想先看会改哪些文件就加--dry-run。build首次构建看仓库规模约 3,000 个文件的仓库冷构建约 40 秒几百文件的小项目 10 秒左右。之后就不用管图了开 watch 模式持续监听或者靠各平台支持的 git 钩子在文件保存和提交时自动增量更新。它是怎么做到的从源码到最小上下文打个比方出门前先有一张城市地图某条路施工了你只需要看那一带的替代路线不用重画整张地图。拆成三步看解析成图。parser 模块 用 Tree-sitter一个能把源码快速变成语法树的增量解析器提取每个文件里的函数、类、导入和调用点边是调用、继承、测试覆盖这些关系。语言映射表EXTENSION_TO_LANGUAGE加四张节点类型表驱动了 30 多种语言的解析——Python、TypeScript、Go、Rust、Java、C/C 都在内连 Jupyter Notebook.ipynb也不落下。存进 SQLite。节点和边落在本地.code-review-graph/目录的 SQLite 文件里不依赖云服务数据不出机器。沿边算影响范围。有文件变更时系统从被改动的函数出发沿依赖边做 BFS广度优先搜索一层层往外扩散把受影响的调用方、依赖方和测试全部收进来——这就是影响范围。AI 拿到的只是这份最小文件集而不是整个仓库。增量这条路径值得单独说incremental.py 先用git diff拿到变更文件再靠图里现成的导入/调用边找出依赖方而 SHA-256 哈希没变的文件直接跳过、不重新解析。所以重新解析数只跟你改了几个文件有关跟依赖链有多长无关。数据说话65 倍削减怎么来的数字来自自动评估跑在 6 个真实开源仓库、13 个提交上的结果code-review-graph eval --all即可复现指标数值token 削减中位数约 65×区间 36×–376×影响精度 F1精确率与召回率的调和平均0.693多跳检索任务均分0.90911 项任务增量更新约 3,000 文件仓库空更新 1.4 s改 2 个文件约 2.5 s两个数字要会读影响精度跑的是 graph-derived 模式真值本身来自同一张图属于循环上界。0.693 应理解为天花板而不是答对了 69%。系统预测偏多是刻意设计最坏的一次是 10 个文件的改动被标出 33 个。设计取舍写得很直白——漏掉一个依赖比让 AI 多读一个文件代价大得多。能帮你解决哪些事合并前审查detect-changes默认对比HEAD~1把 diff 映射到受影响的函数、执行流和测试缺口给出带风险评分的报告--brief只留风险摘要。架构瓶颈定位枢纽节点工具找出连接数最多的热点桥梁节点按介数中心性找出断了就断一片的桥。单次变更影响面问一句改这个文件会波及什么图直接返回调用方、依赖方与测试清单。跨仓库搜索register注册多个仓库后跨仓库工具能一次搜全部。新人熟悉架构内置的 5 个 MCP 提示词模板审查、架构、调试、入职、合并前检查可以直接基于图结构生成上手材料。上手前该知道的事排除规则在仓库根目录建.code-review-graphignore写generated/**、vendor/**这类模式。注意 git 仓库里只索引被跟踪的文件git ls-filesgitignore 掉的内容本来就跳过这个文件管的是已跟踪但要排除或 git 不可用的场景。嵌入搜索怎么配默认走 FTS5 关键词加混合检索要语义向量嵌入选本地 sentence-transformers、Google Gemini、MiniMax 或 OpenAI 兼容端点vLLM、LocalAI 等。OpenAI 兼容那类不用装额外依赖设好CRG_OPENAI_BASE_URL、CRG_OPENAI_API_KEY、CRG_OPENAI_MODEL三个环境变量给embed_graph传provideropenai就行。模型别选预览版带-preview/-beta/-exp后缀的嵌入模型可能悄悄改维度或下线一旦维度变了所有节点都得重嵌。用 GA 稳定版。环境Python 3.10装了 uv 的话 MCP 配置会优先用uvx体验更顺。它适合谁大仓库 AI 审查的组合如果你的仓库不小、团队又靠 AI 做代码审查或者经常要回答改这里会波及什么它值得直接进日常工具链——本地 SQLite隐私上也省心。反过来几十个文件的小项目、或者没在用任何支持 MCP 的 AI 编码工具时收益就很有限整库读一遍也不心疼。收尾code-review-graph 把 AI 代码审查从整库重读拉回定点阅读核心动作就三个建图、增量追踪、只喂最小上下文。想验证它值不值挑一个真实仓库跑一遍 install看一次审查的 token 账单就明白了。仓库内文档延伸阅读README、使用手册、架构说明。项目采用 MIT 许可。【免费下载链接】code-review-graphLocal-first code intelligence graph for MCP and CLI. Builds a persistent map of your codebase so AI coding tools read only what matters, with benchmarked context reductions on reviews and large-repo workflows.项目地址: https://gitcode.com/GitHub_Trending/co/code-review-graph创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

千亿行C#代码现代化:分布式分析与智能迁移实战

千亿行C#代码现代化:分布式分析与智能迁移实战

1. 项目背景与核心挑战"MWGA"这个项目名称乍看像某种缩写口号,但结合副标题"为了复活1000亿行C#代码",立刻能感受到这是一个关于大规模遗留系统现代化的技术攻坚项目。1000亿行代码是什么概念?相当于Windows操作系统代码…

2026/9/20 16:01:38 阅读更多 →
PTP端口状态机详解:九种状态与状态迁移实战指南

PTP端口状态机详解:九种状态与状态迁移实战指南

1. 端口状态机到底在解决什么问题很多接触PTP协议的人,一开始都会被那一堆术语劝退:BMCA、Sync、Delay_Req、Announce、状态机……尤其是端口状态机,看起来就像一张密密麻麻的状态迁移图,新手一看就头大。但如果你真正在产线上调过…

2026/9/19 5:23:25 阅读更多 →
OpenPose C++ API 开发指南:从 Wrapper 封装到自定义输入输出的实战教程

OpenPose C++ API 开发指南:从 Wrapper 封装到自定义输入输出的实战教程

OpenPose C API 开发指南:从 Wrapper 封装到自定义输入输出的实战教程 【免费下载链接】openpose OpenPose: Real-time multi-person keypoint detection library for body, face, hands, and foot estimation 项目地址: https://gitcode.com/gh_mirrors/op/openp…

2026/9/20 14:51:42 阅读更多 →

最新新闻

grok-build / xai-grok-shell 0.2.10 变更解读:`/check-work` 命令迁移与小于 8×8 像素图片的拒绝策略

grok-build / xai-grok-shell 0.2.10 变更解读:`/check-work` 命令迁移与小于 8×8 像素图片的拒绝策略

grok-build / xai-grok-shell 0.2.10 变更解读:/check-work 命令迁移与小于 88 像素图片的拒绝策略 【免费下载链接】grok-build SpaceXAIs coding agent harness and TUI. Fullscreen, mouse interactive, extensible. 项目地址: https://gitcode.com/gh_mirrors…

2026/9/20 16:01:36 阅读更多 →
如何用Semantica做本体建模?从实体关系数据到Turtle导出的实操指南

如何用Semantica做本体建模?从实体关系数据到Turtle导出的实操指南

如何用Semantica做本体建模?从实体关系数据到Turtle导出的实操指南 【免费下载链接】semantica Graph-Native Infrastructure for Context and Accountable AI Systems 项目地址: https://gitcode.com/GitHub_Trending/sema/semantica 没有本体的知识图谱&am…

2026/9/20 16:01:36 阅读更多 →
低频功率放大器DIY全攻略:从LM1875选型到电源接地调试

低频功率放大器DIY全攻略:从LM1875选型到电源接地调试

简介:一份围绕低频功率放大器设计的完整赛题资料,适合电子设计竞赛参赛者、课程设计学生及功率放大电路爱好者参考。内容从任务说明、技术指标到设计思路均有覆盖,明确给出额定输出功率≥10W、带宽50Hz~10kHz、非线性失真≤3%、效…

2026/9/20 16:01:36 阅读更多 →
大模型权重下载慢?用91n多线程与断点续传提速

大模型权重下载慢?用91n多线程与断点续传提速

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/20 16:01:36 阅读更多 →
大模型应用技术选型:提示工程、RAG与微调对比

大模型应用技术选型:提示工程、RAG与微调对比

1. 大模型应用技术选型全景图当企业或开发者准备将大语言模型(LLM)落地到实际业务场景时,通常会面临三个主流技术路线的选择:提示工程(Prompt Engineering)、检索增强生成(RAG)和模型…

2026/9/20 16:01:36 阅读更多 →
绵阳网站建设科雨网络报价单揭秘:源码下载才不亏

绵阳网站建设科雨网络报价单揭秘:源码下载才不亏

绵阳网站建设科雨网络报价单揭秘:源码下载才不亏 域名和服务器到底选哪家?这问题问得我头疼。 很多老板在找绵阳网站建设科雨网络这类服务商时,第一反应就是看价格,但往往忽略了最核心的“资产归属”。 如果你拿到手只是一堆编译好的文件,甚至连后台账号密码都控制不了,那你花钱买的就是个“牢笼”。…

2026/9/20 16:01:04 阅读更多 →

日新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/20 0:00:46 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/20 0:00:46 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/20 0:00:46 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/20 0:00:46 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/20 0:00:46 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/20 0:00:46 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/19 23:01:36 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/19 17:50:38 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/19 23:35:34 阅读更多 →