我用 AI 助手干活半年,真正学会的不是怎么派活,是怎么验收。

我用的是 Hermes Agent(Nous Research 出的开源项目,跑在我自己电脑上,我平时拿手机在企业微信里跟它说话)。我不懂英文,不会写代码,干建筑二十多年。这半年我改得最狠的一处用法,就是不再相信"完成"这两个字。

派活容易:一句话说清要什么。验收难:它回来说"做完了""检查过了",语气和真的一模一样,我前几个月就信这句话。

"做完了"是它的说法,"做成了"得我自己看证据。

下面是我吃过的几回亏,和为此立的规矩。

一、退出码是 0,话却只说了半截

我有一批活,是让它写小脚本在我这台 Windows 电脑上跑。有一阵出了个怪事:脚本报"成功",活却没干完,中间整整一段命令像是从来没执行过。

它查出的原因很难想到:脚本里写了中文,而存文件时少了一个隐藏的开头标记(三个字节,等于在文件最前面写上"我是 UTF-8 编码")。少了它,系统就按另一套编码读中文,中文最后一个字节正好撞上命令里的引号,整行被吃掉。

最要命的不是出错,是它的表现:没有报错,退出码是 0(退出码就是脚本离开时留给系统的一个数字,0 代表"我没出错")。它不是"失败",是悄悄少干了一点——放在全自动链条里能一路安静跑下去,直到某天我拿着结果一看,缺东西。

它的处置很简单:这类脚本一律在存文件时强制补上那个标记。之后这类怪事再没出现过。

"成功"这个结论是要看的,不是脚本自己说了算的。

二、它验的是它自己刚造出来的东西

它替我做的交付文件是要打印的 A4 文件。它每次都说"检查过了,没问题",我拿去打印却表格撑破页面、内容顶到纸边。

为什么"检查过了"还没发现?因为它的检查方式是打开文件读一遍文字。文字当然都在,跑出去的是版式。

后来它换了个笨到我觉得可笑的办法:把文件每一页转成图片,再按像素一页一页量——量上下左右各留了多少厘米空白,低于底线就报警、就停下,不许往外交。

检查里定死的是:基准边距 2 厘米、容差给一半(页码本来就落在下边距里,不算越界)、一百像素一英寸。跑完给我这么一行:

p-01: 左2.31 右2.28 上2.15 下2.07 cm ✓

有一页不合规,它就不交,回来先告诉我错在哪一页。

三、本地通过了,不等于外头生效了

我有个自己的小网站,写文章、生成网页、上传全是自动的。

有一回发布完我去看:新页面能打开,一切正常。但搜索引擎那边——根本不知道我发了新文章。

原因有两层。第一层:链子上那道"本地检查"(查断链、查格式、查文件在不在),验的是我电脑里刚生成的东西,不验线上,中间还隔着一次上传和一圈网络。我把"本地通过"当成了"发布成功"。

第二层更隐蔽:有时候刚发布完,我去查新页面,回来的不是正常,是"找不到"(404)。第一次我以为是发布失败,重跑了一遍。其实不是失败,是文件还没传到我这一侧的节点上,隔十几秒再查全好了。

它教我一个动作:见到"找不到",先加个随机尾巴重试一次,再看本地文件在不在,别急着重跑——重跑等于把整个站重新生成、重新传一次,运气不好会盖掉别的活。

"本地通过"和"线上生效"是两道门。只推开一道就宣布成功,是最容易翻车的地方。

四、拿到一个坏消息,别急着当结论

第四件事,是它拦住了我下结论。

有一回它回来报错,报错里有个词我认得,一看就觉得是"权限不够"。我心里立刻定了性:得去改权限,改不了就是干不了。

它没顺着我。它把报错原文整个读完,又翻了相关说明,然后告诉我:那不是权限问题,是"这条记录没被打上归属标记"。 补上标记就行,跟权限一点关系没有。

那天我才真记住它那句规矩——说"做不到"之前,先把工具的参数和原文核一遍。猜出来的"做不到",是假结论。

五、我立的四条验收规矩

规矩 一句话 挡住的是什么
一、要东西,不要说法 交回来必须是一个能打开的文件、一个能点开的地址、一个具体的数字 "我做好了"四个字
二、结论之外看正文 "成功/失败"之外,翻一眼它到底输出了什么 退出码 0,话说了半截
三、证据拿到最外层 本地通过不够,要到最外面那一层再验一次 构建成功当成了发布成功
四、坏消息先读原文 报错没读全,不许下"做不到"的结论 假失败,白跑的返工

规矩一:要东西,不要说法。 我不认"我弄好了"这种话。要看得见的东西:一份对不上的清单、一张表、一个数字、一个能打开的地址。拿不出,这一步就还没走完。

规矩二:结论之外看正文。 机器报的"成功",说的是"它没崩",不一定是"它干完了"。

规矩三:证据拿到最外层。 我这边查"文章有没有正常在发",是四处对:定时任务上一次跑的结果、本地生成目录的时间、本地最新文章的清单、线上首页实际展示的内容。四处对得上才算正常。 只查一处就说"正常在发",跟没查差不多。

规矩四:坏消息先读原文。 见到报错先抄下原文,再问一句"这是什么意思"。别拿脑子里现成的类比去套——我那次把"没标记"当成"没权限",差点白折腾一整天。

六、把它们塞进流程,别指望我记得

这四条听着都对,但靠人记靠不住。闸门得在流程里,不在我脑子里。 我现在的做法就三件:

  • 交付前先自检。 文件要打印之前先自动量一遍版式,不合规就停下、不许交。跑的是它,结果贴给我看。
  • 每次发布分头报账。 本地检查、线上能不能打开、有没有提交给搜索引擎,各报一行。缺哪一行我一眼看得出来——以前这三件事捆在一起报"成功",中间断了我根本不知道。
  • 活儿都起名字。 我这台机器上有五十多条定时任务,名字就是一句话,哪条没跑、跑成什么样,翻一眼就知道。

七、结果怎么样

  1. 退回来的次数少了——不合规的在我看到之前就被它自己拦住了。
  2. 我不再重跑那些"看起来失败"的活,回头看一半根本没失败。
  3. 它出岔子会自己先说:报错、卡点、哪儿没做,主动告诉我。

我一开始以为验收就是"看一眼对不对"。现在知道它是三件事:要一个东西、核到最外层、把不好听的话先听完。

八、你要是也在用 AI,今天就能做三件事

  1. 下次它说"做完了",回一句:"拿证据来。" 一个能打开的东西,或者一个具体的数字。
  2. 看见报错先别定性。 把原文发回去,问一句"这是什么意思"。
  3. 给最常翻车的那件事,定一条能自动拦的线。 不合规就不许往下走。

最后

它交活的时候,我最想听见的不是"做好了",是"这一步成了,证据在这儿;那一步没成,卡在这儿"。

会报错的助手,比只会说"没问题"的助手值钱得多。

下一篇我聊:《它记不住事,我就替它记——我给 AI 补记性的几个办法》。

——妍暄研习社 · AI 实践