夜雨聆风学习资料网

ARTICLE · 1301446

别急着让 AI 写代码:Google 工程师每天在用的“大象-金鱼”工作法,开源了

别急着让 AI 写代码:Google 工程师每天在用的“大象-金鱼”工作法,开源了

一句话看懂:Google 开源了一个叫 EGM(Elephant-Goldfish Model,大象-金鱼模型)的插件。它不帮 AI 写更多代码,而是逼你和 AI 先把“要做什么”想清楚,再让一群“失忆”的 AI 来挑刺。可装进 Claude Code、Codex 等编程智能体,Apache 2.0 协议,免费。

先说一个让很多人心虚的现象

10 月 30 日,工程师 Thariq(@trq212)在 X 上发了一条帖子,收获了 1.6 万多个赞、约 140 万次浏览。

他说:用编程智能体的时候,人会进入一种“躁狂状态”——感觉自己一直在干活、产出很多,但其实什么都没真正发生。

图:Thariq 在 X 上谈到编程智能体带来的“忙碌错觉”(来源:X @trq212)

这条帖子能火,是因为太多人对号入座了。

开 5 个 AI 窗口并行写代码,屏幕上的字刷得飞快,提交记录一条接一条。到了周五回头看:功能没上线,bug 修了又冒,代码改了三版,最初要解决的问题好像还是没解决。

AI 写代码的速度越快,这个问题越明显。因为速度放大的不只是产出,也放大了错误。

Google 工程师 Dave Rensin 在一篇长文里说得更直白:如果我们不小心,就是在“批量生产我们的错误”。

就在这个时间点上,Google 把一套内部工作法开源了。名字有点怪,叫“大象-金鱼模型”。

EGM 是什么:一只大象,一群金鱼,加上你

10 月 22 日,Google 开源博客发布文章,正式介绍 Elephant-Goldfish Model 插件,作者是 Brian Suchy 和 Dave Rensin。

图:Dave Rensin 原文配图,大象手里拿着“唯一真相来源”,一群金鱼各自拿着放大镜和清单(来源:Dave Rensin,Medium)

文章里最重要的一句话是:Design is the new code(设计才是新的代码)。

官方的说法是:成千上万的 Google 员工每天都用这个插件来交付 Google 的生产代码。注意,这是 Google 自己的说法,不是第三方统计。

它的核心是三个角色。

图:EGM 官方配图,大象“什么都记得”,金鱼“什么都不记得”(来源:Google Open Source Blog)

大象(Elephant):一个带着完整上下文的 AI。它了解你的代码库、历史、架构和你们聊过的所有细节,负责和你一起头脑风暴,并起草设计文档。

金鱼(Goldfish):一群“没有记忆”的 AI 子代理。每条金鱼都在一个全新的会话里启动,看不到你和大象之前的聊天,只读设计文档和它引用的源码,然后挑毛病。

你:负责权衡取舍、做最终决定、批准设计。

图:EGM 的三个角色与基本流程(AI猫实测室根据官方文档整理)

为什么金鱼必须“失忆”?AI猫觉得这是整套方法最聪明的地方。

和 AI 聊了两个小时之后,你和它都会产生大量“默认共识”:那个缩写是什么意思、那个边界情况“之前说过不用管”、某个依赖“大家都知道”。这些东西都在聊天记录里,但不在文档里。

一个只读文档的新人,会立刻卡在这些地方。金鱼就是来扮演这个新人的。

为什么 Google 要把重心挪回设计文档

Rensin 在今年 4 月写了一篇长文《Elephants, Goldfish, and the New Golden Age of Software Engineering》,10 月开源前后又在文中补充了说明。EGM 背后的思路基本都在这篇文章里。

文中有三个他称为“顿悟”的时刻,第三个可以用一个式子概括:

sizeof(docs) << sizeof(code)

意思是:文档远比代码短。

以前写设计文档费力不讨好,大家宁可直接写代码。现在情况反过来了:AI 写代码几乎不花时间,真正稀缺的是“想清楚要什么”。一份几页的设计文档,审起来比几千行代码容易得多;改设计文档的成本,也比改代码低得多。

所以在 Rensin 的工作法里,设计文档有固定的顺序:问题是什么 → 技术方案 → 考虑过的替代方案 → 详细实现。详细实现部分要具体到“每一个要改的文件”。

他还提到几个很有意思的细节:

• 在设计阶段,他会明确要求 AI “不准写代码”,只讨论设计

• 他会专门挑战 AI 的“讨好倾向”,不让它一味附和

• 有些设计讨论他和 Gemini 一聊就是两三天

• 金鱼给出的批评意见里,大约 30% 是真正有价值的

这些都是作者个人的经验分享,不是严格的实验数据。但最后一条很实在:七成意见没用,三成有用。这比很多工具宣传里的“全部问题一网打尽”可信多了。

具体怎么用:四个命令走完一个功能

EGM 是一个插件,装进你已有的编程智能体里使用。官方 README 给出的安装方式如下。

Claude Code:

claude plugin marketplace add google/elephant-goldfish-model

claude plugin install egm@egm

OpenAI Codex:

codex plugin marketplace add google/elephant-goldfish-model

codex plugin add egm@egm

Google 自家的 Antigravity CLI:

agy plugin install https://github.com/google/elephant-goldfish-model

官方还列出了 Claude Cowork、ChatGPT Work 等宿主。但独立版的 Antigravity IDE 暂不支持,原因是它缺少调用子代理的能力,而“生成全新子代理”恰好是金鱼评审的前提。

装好之后,主要流程是这样的:

图:从一个想法到一份验证过的设计:头脑风暴、起草、评审,实现后再检查“走样”(来源:egm.dev 官网)

第一步:头脑风暴(brainstorm)。 你丢一个模糊的想法进去,大象会用开放式问题追问你,同时派出一群从不同角度思考的金鱼去压力测试这个想法,最后产出一份概念简报。

第二步:起草(draft)。 大象把简报变成正式设计文档,放在项目的 docs/designs/ 目录下。它会一节一节地写,每写完一节停下来等你确认。

第三步:评审(review)。 派出全新的金鱼子代理来审设计。这是 EGM 的核心,下一节细说。

第四步:实现后检查走样(drift-report)。 代码写完后,对比代码和设计文档,报告哪里不一致。官方建议每周跑一次。

此外还有 resolve(处理评审意见)、review-loop(循环评审)、bootstrap(给现有代码库自动补全 README)等技能。在 Claude Code 中,这些命令以 /egm: 为前缀调用。

官方 README 里的入门示例是一个“webhook 推送”功能:这类需求看起来简单,实际上失败重试、重复推送、对方服务器宕机等细节都得提前想清楚,正适合先写设计再动手。

金鱼评审:五个阶段,专治“我觉得没问题”

评审技能分五个阶段,每个阶段由不同“人设”的金鱼执行。AI猫翻了仓库里的角色定义文件,整理成下面这张图:

图:金鱼评审的五个阶段(AI猫实测室根据官方 SKILL.md 与评审角色文件整理)

几个值得注意的设计:

所有金鱼都是只读的。 角色文件里写得很清楚:金鱼没有修改文件、编译代码的工具,不许动手改,只许提意见。

金鱼必须是真正全新的上下文。 README 明确说,如果宿主环境不能提供全新的子代理会话,EGM 会直接停止,而不是凑合着用同一个会话“假装失忆”。

禁止拍马屁。 评审技能里有一条“No Glazing”规则,像“brilliant(绝妙的)”这类吹捧形容词被明确禁止。用过 AI 做代码评审的人都懂:AI 最大的问题之一,就是它太爱夸你了。

第一个阶段就问“该不该做”。 第一条金鱼的人设是“怀疑派架构师”,它反复追问:是不是在做现在用不上的东西?是不是过度设计了?是不是已经有现成的工具能解决?这一步专门对付 AI 时代最常见的毛病:因为写代码太便宜,什么都想顺手加上。

不写代码的人,也能偷师这套方法

EGM 是给程序员的插件,但它背后的思路,普通人用 ChatGPT、豆包、Kimi 都能照搬。

Rensin 在文中举了一个买车的例子,AI猫觉得比代码例子更好懂:

第一步,让 AI 当“审问者”,而不是“研究员”。 别一上来就问“20 万买什么车好”。让 AI 反过来问你:通勤多远、几口人、在哪里充电、更在意空间还是操控。

第二步,把问答结果整理成一份“验收标准”。 比如:续航不低于多少、后排能放下儿童座椅、落地价不超过多少。

第三步,开一个全新的对话,只把这份标准贴进去,让 AI 去做研究和推荐。

这就是大象和金鱼的分工:前一个对话是大象,负责把你的需求挖干净;后一个对话是金鱼,不受之前聊天的影响,只按文档办事。

如果新对话看完标准后还要反问你一堆问题,说明你的标准没写清楚。这本身就是一次“金鱼评审”。

写方案、写活动策划、写产品需求,都可以这样做。

冷静一下:EGM 不是银弹

说完优点,AI猫得泼几盆冷水。好在大部分冷水,是 EGM 官方自己泼的。

1. 不适合小事。 README 明确说,需要做设计决策的功能才用 EGM;修个小 bug,照常用你的普通工作流。拿它改一个错别字,纯属浪费。

2. 费额度。 每一轮评审都会派出多个子代理,每个都要消耗你所用模型的额度。官方提醒过这一点。按量付费的用户要心里有数。

3. 可能制造新瓶颈。 官方 FAQ 承认,评审本身可能变成瓶颈。设计文档写得越详细,人要读的东西也越多。

4. 效率提升“看情况”。 FAQ 的原话大意是:走完整个流程,本身不能证明生产力提高了。大模型的输出也有不确定性,同一份文档审两次,结果可能不同。

5. 评审不能替代测试和人的判断。 这一点 README 里写得很直接。官方还有一句话:“You own the outcomes”,结果由你负责。

6. “非官方支持”。 仓库标注为“not an officially supported Google product”。这是 Google 开源项目的常见声明,意思是没有官方服务承诺。

7. 数据去向取决于你的宿主。 EGM 自己没有托管服务、没有遥测、不需要注册账号。但你的代码和文档会发给你用的智能体背后的模型服务商。公司代码能不能发给它,按你们原来的规定办。

另外,Rensin 在文中提到,给老代码库补 README 的 bootstrap 流程,自动生成的底层文档大约一半有错,每份需要人花 5 到 10 分钟修正,整个过程大约一周。AI 写文档也要人兜底,这个预期要放对。

谁应该试试?

AI猫的建议:

适合:

• 已经在用 Claude Code、Codex 写真实项目的开发者,尤其是经常“AI 写得飞快、返工也飞快”的人

• 小团队技术负责人,想把“需求讨论”沉淀成可审查的文档

• 产品经理:设计文档恰好是你的主场

不太适合:

• 只是写写小脚本、做做原型的人

• 额度紧张、按量付费又不想多花钱的人

• 期待“装上就自动变强”的人

AI猫的判断

这个项目在 GitHub 上蹿得很快:10 月 22 日官宣,截至 11 月 2 日已接近 1 万星。X 上的英文、日文技术圈都在讨论,中文圈目前还只有零星几条帖子。

但 AI猫觉得,EGM 最值得关注的不是插件本身,而是它代表的方向转变。

过去一年,AI 编程工具的竞争焦点是“谁写代码更快、更多”。EGM 反其道而行:它不让 AI 写更多代码,而是让你在写代码之前多花时间。

Rensin 在文章里还有一个观点:我们现在都成了“经理”,手下管着好几个 AI。他建议从同时管 3 到 5 个智能体开始;他还把专注力比作肌肉,建议每天专注 30 到 45 分钟,每周再加 5 到 10 分钟。

回到开头 Thariq 说的“忙碌错觉”。AI 让“动手”变得几乎免费,那真正值钱的,就只剩下“想清楚”了。

大象帮你想,金鱼帮你挑刺,但最后拍板的,还得是你。

参考来源

1. Google Open Source Blog:Introducing the Elephant-Goldfish Model plugin(2026-10-22)https://opensource.googleblog.com/2026/10/introducing-elephant-goldfish-model-plugin.html

2. GitHub:google/elephant-goldfish-model(README、FAQ、PRIVACY、skills 与 agents 目录)https://github.com/google/elephant-goldfish-model

3. EGM 官网:https://egm.dev

4. Dave Rensin:Elephants, Goldfish, and the New Golden Age of Software Engineering(Medium)https://medium.com/@drensin/elephants-goldfish-and-the-new-golden-age-of-software-engineering-c33641a48874

5. X @trq212(Thariq):https://x.com/trq212/status/2115937378674372783

6. X @RoundtableSpace:https://x.com/RoundtableSpace/status/2116798646591091029

7. X @LenardReads(GitHub 黑马榜):https://x.com/LenardReads/status/2116868355986735277

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料