Clipping 微信公众号

如何让Codex自主编码10小时,秘籍开源

by 李泽宇的AI实验室 原文 ↗
Created: 2026-04-29

公众号名称:榴莲的AI实验室

作者名称:李泽宇的AI实验室

发布时间:2026-04-24 16:33

这是「300 亿 Token,30 万行代码,30万字烧出来的Harness实践,我开源了」的续篇。这两天很多人问我到底如何让Codex长时间自主运行。于是我把文章里的Skill更新了一版,往里面增补了一套长任务规范,如果你想知道这个Skill详细的作用,欢迎看前文。

李泽宇的AI实验室,公众号:榴莲的AI实验室300 亿 Token,30 万行代码,30万字烧出来的Harness实践,我开源了

让Coding Agent持续自主运行的核心在于,AI Agent 要跑长任务,不能只靠一句“你自己继续”,它需要一份合同。

如果你要在自己的项目上使用这套框架,请把下面的文字复制给你的Agent安装,如果发现对你有帮助,欢迎点赞分享,也欢迎给项目点🌟,谢谢你的支持:

请克隆https://github.com/FairladyZ625/coding-agent-harness 到本地,读取其中的 SKILL.md 作为执行协议,然后按照 12 Phase SOP 的顺序,在我当前的项目上搭建完整的 harness 体系。先从 Phase 1(项目诊断)开始,逐步执行到 Phase 12(输出 Bootstrap Summary)。每完成一个 Phase 告诉我结果,再继续下一个。

我以前的指令很偷懒

以前我经常这样给 agent 下任务。

你继续做,把剩下的都收掉(没错,我被GPT夺舍了)。

这句话听起来挺合理,尤其是在已经聊了很多轮之后。上下文都在,目标也大概说过,agent 看起来也知道自己在干什么。那就让它继续呗。

但这句话其实很偷懒。

因为它没有说清楚很多关键问题。哪些文件能改,哪些文件不能碰。验证到哪一层才算够。遇到不确定的问题,是自己查,还是停下来问。什么时候该找子代理审查。什么叫完成,什么叫只是看起来差不多。

不写清楚,agent 就会走向两个极端。

一种是太保守,跑一会儿就回来问我,要不要继续。另一种是太自信,越跑越远,把我没授权的东西也顺手改了。

这两种看起来相反,本质上是同一个问题。

任务边界有没有写清楚,其实也是一种Harness,而对于Coding场景,仅文档构建的Harness配合脚本就可以产生良好的效果。


10个小时不是奇迹

我们最近大任务经常可以连续跑5 个小时,如果足够大的任务,10小时也不是问题。

在这样的长程任务里,它做的是一套很具体的循环。先读写任务计划,再开独立 worktree,改代码,跑测试,开浏览器检查(或者各种冒烟,取决于你的任务和项目),自己审一遍,再让另一批 agent 只做审查。审查发现问题后继续修,修完再验证,然后把进度和发现回写walkthrough。

我不用每 20 分钟过去问一次“现在怎么样了”,我看的也不是它中间输出了什么,而是最后的证据与结果。

长任务不是授权问题,是验收问题。执行可以放开,验收不能放开。


我更新了什么

这次更新 coding-agent-harness skill,补了两个文档,一个叫 long-running-task-standard.md,讲长任务应该怎么设计。一个叫 long-running-task-contract.md,让每个项目在真正开跑前先填一份任务合同。

看似补得是文档,实际我补的是边界和刹车结构。

以前说长任务,很多人第一反应是让 agent 更自主,让它少问人,让它多跑几轮。这个方向没错,但只说到了一半。自主执行的前提,是人类先把“什么叫做完”写清楚。

一份长任务合同里,至少要写清楚这轮任务到底要解决什么问题。哪些地方允许改,哪些地方不能动。agent 是否被允许连续执行,不用每一步回来要确认。子代理什么时候介入,只审查还是可以改代码。最终用什么证据证明任务完成。碰到什么情况必须停下来。


子代理的重要性

这次我专门把子代理审查写进了长任务规范里。

原因很简单。主 agent 连续做久了以后,会天然相信自己的方案。它刚改完一堆文件,最容易觉得已经差不多了。这个时候让另一个 agent 站在外面,只看 bug、风险、缺测试,反而能把问题挑出来。

但子代理也不能随便按主agent心情创建,如果只是丢一句“帮我审一下”,它也会发散。它可能重做需求,可能讨论架构,可能把主任务又打开一遍。

所以合同里必须提前写清楚调用子代理的规则,它看哪些文件,看什么问题,不看什么问题。它是 reviewer,不是另一个 owner。


永远由自己想清楚边界,定好Harness

很多时候 AI 任务做不好,是因为人给了模型一个虚的目标,再聪明的模型也只能交一个虚的结果。给一个没有边界的目标,它就会自己猜边界。不给停止条件,它就只能用“还有没有事情可以做”来判断自己该不该继续。

而 agent 最擅长的事情,恰好就是继续找事情做。

这才是危险的地方。它不是不动,它是太会动了,你误以为自己一直在加有意义的功能,回过头发现项目里充满了自我感动的堆砌(我在骂自己)。

所以那之后我再给 AI 下长任务,总会在讨论完后先写一份很短的合同。它不同于任务计划,而是定义目标是什么,边界在哪里,审查怎么做,证据是什么,什么时候必须停。

如果我写不清楚什么叫完成,那就说明其实我也没有想清楚我要做什么。

没有合同,AI 不是在长跑。

它只是在一直动。


参考链接


Original 李泽宇的AI实验室 榴莲的AI实验室

输入关键词开始搜索