让AI不再自卖自夸:GAN风格的对抗评估框架,让代码质量直接拉满
你有没有这种感觉——让 AI 给自己打分,它永远给得很高?不管是写的代码、做的设计还是产出的内容,它都会说”很棒”,哪怕你自己都觉得哪里不对。
这其实不是 AI 的态度问题,是它的底层机制:生成式模型天然倾向于生成”完整”的输出,评估式反馈在它的训练里权重极低。所以当你让 Claude 评价自己写的东西,它基本不可能给你一个冷酷的差评。
Anthropic 2026 年 3 月的一篇论文就专门研究了这个现象,并提出了一个很聪明的解法——把”生成”和”评估”拆成两个独立的 Agent,让它们互相对抗,就像 GAN(生成对抗网络)的思路一样。
这个思路被做成了一个 Skill,就叫 GAN-Style Harness。
三个 Agent,打配合赛
GAN-Style Harness 里不是一个人埋头干,而是三个角色来回迭代:
Planner Agent:产品经理视角。你给一句需求(比如”做个待办事项 App”),它负责扩展成完整的 16 个功能点的产品说明书,定义清楚用户故事和技术要求。
Generator Agent:开发者。拿到规范之后,一个功能一个功能地实现,用的是全栈工具链(React、FastAPI/Express、数据库、CSS)。它不追求一次做完,而是以”sprint”为单位,每轮只做一部分。
Evaluator Agent:这是关键。它不是看代码,而是真正打开浏览器,用 Playwright 操作实际运行的 App——点击按钮、填表单、测 API。测完之后,它从四个维度打分:
– 设计质量(看起来是否像个整体?)
– 原创性(有没有模板感?)
– 工艺感(字体、间距、动画、微交互)
– 功能性(功能真的能用吗?)
分数不达标就打回重来,直到 Generator 交出合格品。
为什么这样比单个 Agent 强
单个 Agent 自评时,最大的问题是”沉没成本”——它已经花了时间写代码,从情感上就不愿意承认写得烂。Evaluator Agent 没有这个问题,它只看最终运行结果,不看过程。
而且 Generator 和 Evaluator 的关系是真正的对抗:你做 → 我评 → 你改 → 我再评,循环 5~15 轮,每一轮质量都会比上一轮更好。这和 GAN 的训练逻辑完全一致:Generator 生成假样本,Discriminator 判断真假,互相博弈,最后两边都越来越强。
适合用在哪儿
GAN-Style Harness 最适合这些场景:
- 零基础起步做完整应用:你只有一个点子,它能给你跑出一个能跑的全栈 App
- 前端设计要求高:要的不是”能看”,要的是没 AI 味、原创、有设计感
- 全栈项目需要前后端串联:Generator 只写代码,Evaluator 专门负责破坏性测试
- 不想看到 AI 生成痕迹:模板感、套路化的输出,在这种对抗评审下基本活不过两轮
安装使用
npx skills add https://github.com/affaan-m/everything-claude-code --skill gan-style-harness
装完之后,直接告诉你的 Agent:”用 GAN-Style Harness 来做这个项目”,它就会自动启动三智能体循环。
GitHub 仓库里还有完整的 SKILL.md 说明文档,以及 Evaluator Agent 的 Playwright 集成配置。
核心理念就这一句:不要让 Agent 评价自己做的,要另外找一个 Agent 来打它的分。对抗才能出好活。
GitHub:https://github.com/affaan-m/everything-claude-code/tree/main/skills/gan-style-harness
GitHub: https://github.com/affaan-m/everything-claude-code/tree/main/skills/gan-style-harness
评论区
登录后可评论。