程序员老鬼

git-lrc 开源工具,自动触发 AI 代码审查,直接拦截问题代码。

用 AI 写代码这事,大家现在都玩得挺溜了:写个注释,敲几句自然语言,Model 啪一串代码给你吐出来,看着是挺香的。

但真上过线的同学都知道——有时候 AI 改代码,不是优化,是“暗改”。

一会儿悄悄改了个条件判断,一会儿顺手删了两行“看起来没用”的老逻辑,单元测试又刚好没覆盖到。等到线上出 Bug,日志一翻:咦,这段不是我写的啊?那一刻真的很想把 AI 拉出来一起背锅。

为了解决这种“AI 胡乱动刀子”的问题,我最近翻到了一个开源小工具:git-lrc。

Image

它干的事情很简单也很暴力—— 在你 git commit 之前,自动拉起一次 AI 代码审查,不通过,就不让你提交。

相当于在本地给自己的代码拦了一道“安检门”,任何可疑改动,直接拦截在 commit 之前。

git-lrc 的体验方式也挺符合开发者习惯。

它会开启一个 Web 界面,展示一份类似 GitHub 的 diff 对比,把这一次提交改了哪些文件、每一行差异都列出来。

更关键的是: 在那些“有问题嫌疑”的代码行旁边,AI 会直接写评审意见,比如:

  • 这里可能引入空指针风险
  • 这一行改动会导致原来的边界条件失效
  • 这段逻辑跟上面的函数重复了,可以抽取复用
  • 这里打印日志可能泄露敏感信息

甚至安全相关的警告,也会用醒目的标记给你高亮出来。

真要你改代码,git-lrc 也不是那种说一句“有问题自己看着办”的甩手掌柜。

你可以在 Web 界面里,直接根据 AI 的提示反复修改,然后再次触发检查,来回几轮,直到 AI 觉得这次改动“合格”了,git-lrc 才会放行 commit。

Image

而且它还会把每次审查的状态写进 Git 日志里,让你之后翻历史的时候,一眼能看出来: 这次提交有没有经过 AI 审查、当时是否有警告、是不是被你硬着头皮忽略了。

要是以后线上真出事,这些记录就是非常直观的“犯罪现场回放”。

安装方面,门槛也不高。

官方是支持 Windows、macOS、Linux 三端的,一条命令就能完成初始化配置,不需要你去研究一堆莫名其妙的脚本。

底层这套审查能力,用的是 Google 的 Gemini API。

好处在于: 你完全可以绑定一个免费的 API Key 来玩,不需要额外掏钱买什么私有服务; 对个人开发者、创业小团队来说,这波成本控制还是挺友好的。

而且接到自己项目里以后,你可以按照团队代码风格、业务特点去调整提示词: 比如更偏安全审计一点,还是更偏代码质量、可读性检查,都能慢慢“调教”出来。

Image

这个工具最适合的,其实就是重度依赖 AI 编程的场景:

  • 平时用 AI 写脚手架、写 CRUD、写测试样例,一天改动几百上千行;
  • 团队里有人习惯直接把 AI 生成的代码一股脑丢进仓库;
  • 项目对安全、合规、稳定性有要求,但人力不够每天做详细 Code Review。

在这种情况下,git-lrc 把审查这件事往前挪了一大步: 不再是等 PR 提交之后、等代码合并之前才发现问题, 而是在你按下 git commit 的那一秒,就把风险先掐死在本地。

说难听点,它就是帮你挡掉一部分“AI 幻觉”和“手贱误操作”的锅。

你可以继续享受 AI 编程带来的效率提升,但至少在提交之前,有个东西替你再看一眼: “这次改动是不是动了不该动的逻辑?” “是不是漏掉了原来那几个不起眼但关键的判断?” “是不是顺手给用户数据多打了几行日志?”

这道本地的最后防线守住了,上线心态都会稳定不少。

当然,它也不是银弹。

AI 再聪明,也不可能完全理解你所有业务细节, 真正关键的架构设计、复杂交易流程、跨系统联动,还是得人来拍板。

但对大量日常改动、重复逻辑、低级错误来说, 有这么一个 24 小时不喊累、不摸鱼的“机器人审查同事”, 说一句“这波我服”,不过分。

如果你已经在用 AI 写代码,可以试试给自己加上这道 commit 前的保险。

把 git-lrc 接入当前项目,跑几天看看: 看看它能揪出多少你原本会放进仓库的小问题, 也看看团队里那些“AI 重度使用者”的代码风格,会不会被慢慢拉回正轨。

GitHub地址:github.com/HexmosTech/git-lrc