最近在 GitHub 上看到一个挺有意思的项目:alibaba/open-code-review,来自阿里开源。简单说,它是一个用大模型(LLM)来自动化做代码审查的工具。你提交 PR 或者 MR 的时候,它能帮你先过一遍代码,指出潜在问题、风格不规范的地方,甚至给出修改建议,相当于一个随时在线的 review 助手。
它到底解决什么问题?
日常开发里,code review 是保证代码质量的关键环节,但也很耗人力。尤其开源项目或者小团队,reviewer 时间有限,难免遗漏。这个工具就是想用 LLM 来补上这块:
- 自动检查代码中的潜在 bug、安全漏洞、性能问题;
- 检查代码规范(比如命名、格式、注释);
- 对 PR 的改动生成总结和评论;
- 可以集成到 GitHub/GitLab 的 CI 流程里,实现自动 review。
说白了,它不替代人工 review,而是把那些重复性、规则性的检查自动化,让人可以更聚焦在架构和逻辑上。
怎么用?
项目提供了 CLI 和 GitHub Action 两种方式。我试了一下 CLI,基本流程是:
- 安装:
pip install open-code-review(或者从源码装); - 配置 LLM 的 API key(支持 OpenAI、DashScope 等);
- 在仓库目录下运行
ocr review之类的命令,指定要对比的 commit 或者分支,它就会分析 diff 并输出审查意见。
如果要集成到 GitHub,可以直接用他们提供的 Action,在 workflow 里配好 token 和模型参数,之后每个 PR 都会自动触发审查,评论会直接发在 PR 里。
技术要点和心得
- 它核心是拿 diff 内容 + 上下文 prompt 给 LLM,让模型按预设规则输出结构化的 review 评论。项目里应该有一套 prompt 工程和结果解析的逻辑。
- 支持自定义规则,你可以根据团队规范调整检查项,这点挺实用。
- 因为依赖 LLM,所以效果和模型能力、prompt 质量强相关。目前看对于常见模式的问题识别还不错,但复杂逻辑还是得靠人。
- 注意 API 调用成本,大仓库的 diff 可能很长,需要合理配置 token 限制或者分块。
总的来说,如果你在团队里想引入自动化的代码审查辅助,或者个人项目想有个免费的 “review 机器人”,这个项目值得一试。它的门槛不高,配置也简单,算是 LLM 落地到研发流程的一个不错案例。
希望能支持更多代码托管平台,我们用的不是 GitHub
阿里开源的东西质量一般还行,先 star 了慢慢研究
开源项目白嫖一个 review 机器人挺香的,就是别太依赖它
想问下它跟 sonar 这类静态扫描比优势在哪,是不是主要强在能理解语义
这个看着不错啊,我们团队正好缺 reviewer,回头试试
我们已经在 GitHub Action 里用了,PR 评论直接发出来还挺方便
API 成本这块有人算过吗,一天几十个 PR 会不会烧太多 token
之前自己也想过拿 LLM 做 review,没想到官方直接开源了,省事了
接入 CI 之后会不会误报太多,到时候大家都直接忽略评论就没意义了
token 限制那块配置项多吗,还是得自己改代码调
看到是阿里的就放心一半了,先收藏再说🐶
小团队太需要这个了,平时 review 全靠一两个人,累得要死😂
大仓库 diff 长的问题确实头疼,分块之后前后逻辑容易断
试用了一下,简单的 bug 确实能指出来,惊喜
有没有人对比过用 gpt4 和本地模型的差别,想省点钱
prompt 工程才是核心吧,模型选得好不好效果差挺多的
有个疑问,它分析 diff 的时候上下文带多少,跨文件的改动能看明白吗
复杂逻辑还是得人看,这点说得实在,工具定位挺清醒的
pip 装完跑了一下,规则自定义那块确实好用,能贴合团队规范
感觉适合当第一道筛子,把格式命名这些破事挡掉就行