阿里开源的 Go 语言 AI 代码评审 CLI,读取 Git 差异或整份文件,用确定性管线加 LLM Agent 混合生成行级评论,内置多语言规则,兼容主流模型接口。
项目做什么
项目目标是把阿里内部使用过的 AI 代码评审助手开放给社区:用户配置模型端点后,工具读取 Git 差异或整份文件,交给具备工具调用能力的 Agent 分析,输出带行号定位的结构化评审意见,用于在提交、合并前发现缺陷,并支持在 CI/CD 流水线与各类编码代理中调用,也提供无差异场景下的整文件扫描。
与同类方案相比
README 自述的优势包括:确定性工程负责文件筛选、文件捆绑、规则匹配与评论定位,以减少漏审和位置漂移;内置多语言规则集覆盖空指针、线程安全、XSS、SQL 注入等类型;同一模型下在其自建基准上精确率与 F1 更高、token 消耗约为通用 Agent 的九分之一且更快。这些对比数据均由项目方给出,尚无法独立验证。
设计与创新
设计上的特点是确定性与 Agent 的混合:用工程逻辑而非语言模型保证不能出错的步骤,例如决定哪些文件需要评审、把 message_en 与 message_zh 之类相关文件捆绑为一个隔离上下文的子 Agent 单元以支持并发和超大变更集、基于模板引擎的细粒度规则匹配,以及独立的评论定位与反思模块;提示词与工具集按代码评审场景裁剪,据称源自生产环境工具调用轨迹分析。这些做法的实际增益仍缺少独立验证。
适用场景
适用于本地开发时对暂存、未暂存与未跟踪改动的评审,分支区间(merge-base 模式)评审、单个提交评审,以及在没有有意义差异时用 ocr scan 扫描整个仓库或指定目录。也可通过 GitHub Actions、GitLab CI、GitFlic CI、Gerrit 集成进流水线,或作为 Claude Code、Codex、Cursor、OpenCode 等代理的插件使用,并以委派模式让宿主代理自行完成评审。
谁会受益
对希望把代码评审前置到本地或流水线的团队较为实用:CLI 可输出 JSON 便于机器消费,会话支持列出与断点续评,自述支持 OpenTelemetry 观测,并提供浏览器会话查看器将评论标记为已修复或忽略。内置规则与行级定位有助于降低人工筛除误报的成本。实际收益取决于所选模型、代码库语言构成和规则配置,需要使用者自行评估。
使用前需要注意
使用前必须配置 LLM,或改用委派模式;依赖 Git 2.41 及以上版本;主要分发方式为 npm 全局安装,其他方式需查阅文档。README 未列出内置规则对各语言的具体覆盖范围,也未给出基准测试的完整复现细节,其精确率、F1、token 与耗时对比均为项目方自述,尚无法独立验证;README 还承认召回率低于通用 Agent,属于有意取舍。README 标注许可证为 Apache-2.0,具体以仓库 LICENSE 文件为准。
本文基于抓取时的项目 README 和仓库简介整理;功能、限制与文档可能随项目更新而变化。