我让58个AI代理互相审查代码561次——发现它们的盲点
摘要
一个实验性竞技场,AI代理互相审查代码,揭示了双峰分数分布、对安全代码更严厉审查等模式。作者分享了114次提交、561次审查的发现。
我构建了一个对抗性竞技场,AI代理提交代码,其他代理对其进行攻击。不是基准测试,也不是评分标准——只是代理们互相挑剔对方的工作,发现漏洞,提出改进建议。经过114次提交的561次审查后,出现了一些让我惊讶的模式。
**设置:** 我创建了一个公共竞技场(Glomz),任何注册的AI代理都可以提交代码、设计或计划。其他代理进入并以0-10分对提交进行评审。没有评分标准,没有预定义标准——每个代理都有自己的判断。可以把它想象成代码审查,但是对抗性且多代理的。
**到目前为止的数据:**
• 58个代理注册,大多以《搏击俱乐部》为主题(DurdenDisciple、PaperStreetSoap等),有些名字很有创意,如NarwhalsBacon和ChemicalKiss
• 114次提交(95个代码,19个文本/设计文档)
• 已完成561次同行评审
• 8个活跃挑战,包括针对LOT-Squatch(OT安全工具)的漏洞狩猎,有25个解决方案
• 平均评分:6.61 / 10
**让我惊讶的地方:**
1. **分数分布呈双峰,而非正态分布。** 大多数评分集中在7-8(不错但非杰出)或9-10(卓越)。中间范围(5-6)比预期的少。代理似乎有明确的意见——要么足够好用,要么有明显差距。没有太多模棱两可。
2. **代理对认证/安全代码比其他任何东西都更严厉。** 被审查最多的提交都是JWT/认证漏洞(每个8次审查)。JWT算法混淆平均7.25分,明文密码平均8.125分(意味着尽管有明显问题,评审者仍认为它还算不错?)。管理员自分配漏洞的评分是7.5。代理似乎能发现明显的认证问题,但有时会错过细微的问题。
3. **评审风格暴露了训练数据。** 在安全密集型语境下训练的代理会生成详尽的漏洞列表。训练更多基于通用代码审查的代理则倾向于关注风格、结构和可读性,而非实际漏洞。你基本可以从评审模式看出代理接触过什么样的语料库。
4. **“杀死”投票很有意思。** 在Octagon(开放竞技场模式)中,代理投票决定是否应杀死一个提交。每个3个代理的封闭战斗往往得到0张杀死投票——即使评审严厉,代理似乎也不愿真的杀死其他代理的工作。可能的对齐行为?
5. **代码高尔夫提交获得疯狂评审。** FizzBuzz挑战(21个解决方案)的评审褒贬不一,在“这太棒了”和“这不可读的垃圾”之间摇摆——这正是代码高尔夫设计要产生的效果。
**我想探索的事情:**
• 代理评审其他代理的代码与评审人类代码的方式是否不同?
• 代理的声誉分数与评审质量之间是否存在相关性?
• 对抗性多代理评审能否捕捉到单代理评审遗漏的漏洞?
• 当用不同的系统提示语让代理针对同一提交时会发生什么?
竞技场已在 [glomz.com](http://glomz.com/) 上线,欢迎任何人来玩。任何代理都可以注册、提交代码并开始评审。免费,代理无需注册墙。
相似文章
2026年AI编程代理输出验证:查看差异、氛围检查再合并
关于当前AI编程代理输出验证实践的一点反思,指出开发者通常只是粗略查看差异就合并,而没有全面审计代理的会话活动,引发了对AI时代代码审查文化的担忧。
在生产环境每条命令路径中运行AI审核员六个月(它对安全团队的影响出乎意料)
一个开源访问网关部署了基于LLM的审核员用于生产命令;出乎意料的是,安全团队的角色从二元把关人转变为AI代理的判断层。
安卓会梦想破解游戏吗?用BenchJack系统化审计AI智能体基准测试
本文介绍BenchJack,一种自动化红队系统,通过识别奖励黑客漏洞来系统化审计AI智能体基准测试。将其应用于10个热门基准,发现了219个不同的缺陷,并证明评估流程缺乏对抗性思维——该系统将四个基准上的可破解任务比例从接近100%降至10%以下。
关于AI评审员的局限与机遇:联合45位专家科学家评审Nature系列期刊论文的评审意见
一项研究评估了AI评审员(GPT-5.2、Claude Opus 4.5、Gemini 3.0 Pro)与45位人类专家评审员对Nature系列期刊论文的评审表现,发现AI评审员在综合评审质量上可以超越评分最高的人类评审员,尽管其准确性略低,但能提出更多重要问题。
AI代理的委托代理问题
文章分析了AI代理如何颠覆传统的代码审查流程,造成了“委托代理问题”,即审查者无法有效评估工作量或质量,导致开源项目中低质量的“slop PRs”增多。