一个澳大利亚牧羊人写的三行bash脚本,11天内被OpenAI、Anthropic和Hermes同时抄进官方产品。这事听起来像段子,但背后藏着一个被所有人忽视的真相:AI编程的瓶颈从来不是代码生成,而是"把事做完"。

Geoffrey Huntley,这位牧羊大叔,给循环起了个名字——Ralph Loop,致敬《辛普森一家》里那个永远搞不清状况但从不放弃的小孩。代码粗暴到可笑:无限循环,反复把同一个prompt喂给Agent,进度丢进文件系统和Git历史,上下文满了就重启实例接着干。原始,丑陋,管用。

打开网易新闻 查看精彩图片

管用到什么程度?OpenAI的Greg Brockman在X上甩了一句"Codex现已内置Ralph loop++",一周后Hermes Agent跟进,再过4天Claude Code也上了。11天,三家顶级实验室,同一个终点,三种完全不同的解法。

Codex:关机睡觉,醒来继续

OpenAI的方案最简洁。/goal是一个持久化的工作流对象,存在本地app-server状态层。关终端、合笔记本、重启系统,目标都在。模型通过结构化的update_goal工具汇报进度,token耗尽时"软着陆"而非硬停。

有人实测:连续跑14小时,中间暂停5小时睡觉,回来Codex从断点续跑,干完了一个设备驱动项目。工程化,干净,克制。

Hermes Agent:一个人干不完,上一整个团队

Hermes的野心最大。/goal只是冰山一角,重头戏是多智能体看板系统——把"让AI把活干完"从单Agent问题升级成团队协作问题。

看板底层是本地SQLite,持久化存储,跨重启不丢。创建任务卡片,系统自动拆分子任务,分配给不同Agent worker。每个worker是独立OS进程,有自己的身份、模型配置和工作目录。

五层防烂尾机制:

1. 心跳检测:worker定期向看板报到,证明活着。

2. 僵尸回收:超时无响应?判定死亡,任务重新分配。macOS还有专门的达尔文僵尸检测逻辑。

3. 退出拦截:没完成任务就退出?标记blocked,禁止再接新活,防止"摸鱼型Agent"反复领任务不做。

4. 幻觉拦截:AI说"我做完了"不算数,系统验证代码是否真的落盘。Agent声称创建了文件但实际没有?抓住,回滚,重来。

5. 重试预算:每个任务有独立max_retries,超上限上报人类,绝不无限循环到死机。

Claude Code:做事的人和验收的人,不能是同一个

Anthropic最后出手,方案最刁钻。/goal本质是一个session级别的Stop Hook:设定完成条件,Claude开始干活,但关键在验收环节。

每轮结束,系统不让Claude自己判断"我做完了没有"。对话记录和完成条件一起发给独立小模型(默认Haiku),由它来裁判。没完成?返回具体理由(如"test_login.py还有2个failure"),注入下一轮上下文指导继续干。完成了?目标自动清除,任务结束。

裁判模型不调用工具、不读文件、不跑命令,只看Claude在对话里产出的内容。所以完成条件必须是Claude能证明的东西,最长4000字符,可以写得很细——"不修改其他测试文件""20轮内完成否则停止"等约束都能塞进去。

他们争的不是功能,是习惯

把视角拉远。Claude Code背后是Anthropic,Codex背后是OpenAI,Hermes Agent接两边模型,也是DeepSeek V4等模型的主力分发渠道。三条路径,恰好覆盖ASI决赛的三个生态入口。

而他们争的是同一样东西:工作流入口。谁的Agent先让开发者养成"设完目标就走开"的习惯,谁就锁死了这条护城河。习惯一旦形成,迁移成本指数级上升——你不会轻易离开一个跑通了看板调度、断点续传、checkpoint回滚的Agent基础设施。

一个看似很小的/goal命令,卡的是整条Agent工作流的命门。牧羊大叔的三行代码,戳破了皇帝的新衣:通用人工智能的临门一脚,可能不是更聪明的模型,而是"把事做完"的模型。