昨晚十一点,我哥们老周在群里发了张截图。
屏幕上一行字:接下来我将处理剩余端点。
发消息的是他养的 Agent。他让这玩意儿连夜把公司老代码库从 Python 2 迁到 3,三百多个文件,说好天亮交活。
早上七点他爬起来一看,就这一行字。后面啥也没了。

它没偷懒。它以为自己已经干完了
老周一开始骂模型变笨了。Opus 5.5 发布那天他还专门充了钱,就冲着长任务能力去的。
结果跑去翻 Anthropic 的官方文档才发现,人家早写了。
API 返回一个叫 end_turn 的信号,意思是这轮我说完了。可老周那套旧逻辑,把这个信号当成了任务完成。
Agent 说完「接下来我要处理剩余端点」,等于是举手说「我汇报一下」,系统却直接给它放学了。
它没跑,是以为下班了。

这事儿不新鲜。做 Agent 开发的人最近都在踩这个坑。
长任务跑到一半,模型觉得该跟用户同步进度,吐一段总结。旧框架一看见 end_turn,把执行链掐了。
活生生把干活的牛,当成开完会的领导。
改三个地方,让它闭嘴干完
老周折腾了两天,总结出三招。我直接搬过来,你照着改。
第一招,别把汇报当交付。
在循环里加个判断:只要 end_turn 后面没有明确的交付物,比如文件写完、测试通过、命令返回 0,就当作中间态。
自动追一句「继续」,把上下文塞回去。
他说这一招下去,完成率从四成跳到八成。

第二招,给任务画格子。
别跟它说迁移整个代码库。太虚。
拆成清单:先扫目录,再逐个文件转语法,再跑单元测试,最后汇总。
每完成一格,打个勾。Agent 看得见进度条,就不容易在半路自我感动。
老周现在让 Agent 每处理二十个文件才允许汇报一次。从随缘汇报,改成按量结算。

第三招,设个硬止损。
他给每个子任务加了最大轮次,比如三百轮。到了还没完,强制打断,把现场状态存下来。
第二天人工看一眼,接着跑。
不指望它一口气干完,但至少不会假装干完了。

我们到底在期待什么
老周跟我说了句话,我记到现在。
他说,以前觉得 Agent 得聪明,现在发现,得靠谱。
聪明是它能写多漂亮的代码。靠谱是你睡觉的时候,它还在那儿一格一格往前推。
Opus 5.5 能力没问题。问题出在我们把它的礼貌性汇报,当成了终点线。
说白了,跑 Agent 跟带团队一样。
你不把验收标准写清楚,底下人就以为交个周报就算完事。
你把活拆细、把节点卡死、把「继续」两个字焊在循环里,它才真给你干到天亮。

老周现在那套跑通了。昨天又跑了一夜,早上我看他发朋友圈,一张图:终端里最后一行写着,迁移完成,327 个文件全部通过测试。
配文就俩字:收工。
觉得有用就点个在看,转给那个还在熬夜盯 Agent 的哥们。