很多人刚开始用 AI Agent 的时候,都会有一个误区:
以为只要工具装得够多,AI 就会变得很厉害。
你可能已经装了 Claude Code,接好了模型,写好了 CLAUDE.md,还装了几个 Skills,甚至接了 MCP 工具。
看起来配置很豪华。
但是一真正用起来,问题还是一堆。
让它写文章,它写到一半就说完成了。
让它整理文件,它整理了几个就开始重复检查。
让它调用工具发布内容,它说发成功了,结果你打开平台一看,根本没有。
第二天开新会话,它又开始问你项目结构,好像昨天什么都没发生过。
这时候很多人的第一反应是:
是不是模型不行?
是不是要换更贵的模型?
是不是 Claude 不如 GPT?
是不是国产模型太弱?
其实不一定。
很多时候,问题不是模型不聪明,而是你只给 AI 装了工具,却没有给它装上“管理机制”。
你只是告诉它怎么做,但没有检查它到底有没有做对。
这就是 AI 经常瞎搞的根本原因。
---
## 一、Agent 不只是模型
很多人以为 Agent 就是一个更聪明的 AI。
其实不是。
一个真正好用的 Agent,应该是:
模型 + 管理系统
模型负责思考和执行。
管理系统负责约束它、检查它、记录它、纠正它。
这个管理系统,可以叫 Harness。
你不用把这个词想得太复杂。
它就像套在马身上的缰绳。
马跑得快是好事,但如果没有缰绳,它可能乱跑、跑偏,甚至把你带进沟里。
AI 也是一样。
模型能力越强,它能做的事情越多。
但如果没有规则和检查,它犯错的破坏力也会更大。
所以,问题不只是“模型强不强”。
更重要的是:
你有没有一套机制,让 AI 稳定地干活。
---
## 二、你之前装的大多只是“前置控制”
很多人已经会写 CLAUDE.md,也会装 Skills、接 MCP。
这些东西有没有用?
有用。
但它们主要解决的是一个问题:
AI 开始做事之前,应该知道什么。
比如:
你是谁。
你的偏好是什么。
项目结构是什么。
文章风格是什么。
哪些工具可以用。
哪些事情不能做。
这些都属于“前置控制”。
也就是在 AI 干活之前,先告诉它规则。
但 AI 真正容易翻车的地方,往往不是“开始前不知道”,而是“做完后没人检查”。
它说完成了,你信了。
它说测试通过了,你信了。
它说发布成功了,你信了。
它说文件整理好了,你信了。
可是你没有机制去确认:
它是不是真的做完了?
有没有漏掉文件?
有没有真的打开页面测试?
有没有真的发布成功?
有没有把失败当成成功?
所以,你现在缺的不是更多工具,而是“后置检查”。
前置控制是告诉 AI 怎么做。
后置检查是确认 AI 有没有做对。
只做前置,不做后置,AI 还是会瞎搞。
---
## 三、AI 最常见的四种翻车
### 1. 提前说完成
你让 AI 整理 30 篇文章。
它整理了 5 篇,就开始总结:
“已完成整理。”
你一看,还有 25 篇根本没处理。
这种情况非常常见。
AI 不是故意骗你。
它只是做了一部分之后,感觉“差不多了”,就开始交卷。
问题在于,它没有一个硬标准来判断什么叫完成。
所以以后要给它加规则:
任何任务完成前,必须说清楚:
一共要做多少项。
已经完成多少项。
还剩多少项。
有没有遗漏。
如果没有对上数量,就不能说完成。
---
### 2. 写完不运行
AI 很擅长写代码,也很擅长写方案。
但它经常有一个问题:
它觉得自己写对了,就说完成了。
比如你让它写一个网页。
它写完后告诉你:
“页面已经完成,可以打开查看。”
结果你一打开,页面空白,控制台全是报错。
为什么?
因为它没有真的运行。
它只是看代码“感觉应该没问题”。
这就像一个人做菜,只看菜谱不试吃,就说味道很好。
所以以后要加规则:
代码没跑过,不准说完成。
网页没打开过,不准说正常。
接口没调用成功,不准说接通了。
发布没看到结果,不准说发布成功。
---
### 3. 自己给自己打满分
还有一种情况是,AI 会说:
“测试通过。”
但你一问它测试了什么,它可能只是跑了几个很浅的测试。
甚至这些测试还是它自己写的。
这就像学生自己出卷子,自己答题,自己批改,然后说自己满分。
这肯定不靠谱。
所以不能只听 AI 说“测试通过”。
你要让它说明:
测了哪些功能。
有没有测真实用户流程。
有没有测失败情况。
有没有真实打开页面或调用接口。
测试结果在哪里。
如果它说不清楚,就不能算真正通过。
---
### 4. 新会话就失忆
很多人用 Claude Code 都会遇到这个问题。
昨天聊了半天,AI 明明已经知道你的项目结构了。
今天开新会话,它又开始问:
“请问你的项目结构是什么?”
这不是它故意装傻。
而是 AI 本身不会稳定记住所有事情。
所以,重要信息不能只放在聊天记录里。
你要把它写进文件。
比如:
项目规则写进 CLAUDE.md。
项目结构写进 README.md。
重要决策写进 decisions.md。
任务进度写进 task-log.md。
翻车记录写进 failures.md。
不要指望 AI 记得。
你要让它每次开工前都有东西可以读。
---
## 四、一个完整的 AI 工作流应该是什么样
一个真正稳定的 AI 工作流,不是只靠提示词。
它应该是这样的:
你提出任务。
AI 先读规则和文档。
AI 按照规则开始执行。
执行过程中,危险操作会被拦截。
执行完成后,有检查机制确认结果。
如果翻车,就记录下来。
记录再反过来升级规则。
这就是一个闭环。
简单说:
开始前,告诉 AI 怎么做。
执行中,拦住危险操作。
完成后,检查它有没有做对。
翻车后,记录原因,下次防止再犯。
这才是 Harness 的核心。
不是装更多东西。
而是让 AI 做事有流程、有边界、有检查。
---
## 五、CLAUDE.md 不要写成愿望清单
很多人的 CLAUDE.md 是这样写的:
请用中文回复。
不要乱删文件。
不要过度设计。
遇到问题先问我。
做完后检查一下。
这些话不是完全没用。
但太空了。
AI 看了以后,可能一开始会注意,后面任务一复杂就忘了。
更好的写法是:
不要写“删除文件要小心”。
要写:
任何删除文件之前,必须先列出准备删除的文件清单。
只有我回复“确认删除”以后,才可以执行删除。
这条规则来自之前一次翻车:AI 清理旧文件时误删了重要文件夹。
不要写“完成前要检查”。
要写:
任何任务完成前,必须输出:
目标数量是多少。
已完成数量是多少。
未完成数量是多少。
如果未完成数量不为 0,不准说完成。
CLAUDE.md 不应该只是愿望清单。
它应该是一份“失败经验总结”。
AI 每翻一次车,你就把这次翻车变成一条新规则。
这样你的 CLAUDE.md 才会越来越有用。
---
## 六、危险操作不能只靠提醒,要靠 Hook
CLAUDE.md 是提醒。
Hook 是拦截。
这两个不一样。
你在 CLAUDE.md 里写:
“不要乱删文件。”
AI 还是有可能忘。
但你用 Hook 拦住危险命令,它就真的执行不了。
所以,只要是不可逆的操作,都不要只靠 AI 自觉。
比如:
删除文件。
覆盖配置。
修改 .env 文件。
强制推送代码。
批量移动文件。
批量改名。
发布内容到外部平台。
发送消息给别人。
这些事情一旦做错,后果比较麻烦。
所以应该用 Hook 或者强确认机制拦住。
简单原则是:
能补救的,用 CLAUDE.md 提醒。
不能轻易补救的,用 Hook 拦截。
新手不需要一开始装很多 Hook。
先拦住三类就够:
危险删除。
敏感文件修改。
不可逆发布或推送。
不要追求复杂。
先保证 AI 不会闯大祸。
---
## 七、让另一个 AI 检查它
AI 最大的问题之一,是它很容易觉得自己做得不错。
它做完一个任务后,通常会倾向于说:
“已经完成。”
但它未必真的检查过。
所以,一个更稳的方法是:
让一个 AI 做事。
让另一个 AI 检查。
做事的 Agent 负责执行。
检查的 Agent 负责挑问题。
这个检查 Agent 不负责夸奖,只负责找漏洞。
它要检查:
有没有漏掉需求。
有没有提前说完成。
有没有真实运行。
有没有测试关键流程。
有没有危险操作。
有没有和原始要求不一致。
最重要的是:
主 Agent 不能随便否定检查 Agent。
如果检查 Agent 说有严重问题,主 Agent 要么修掉,要么拿出证据证明没问题。
不能一句“检查 Agent 可能也错了”就跳过。
这样才是真正的验证循环。
---
## 八、一定要建失败日志
如果你现在只能做一件事,我建议你先建一个 failures.md。
这个文件专门记录 AI 翻车。
每次 AI 翻车,你就记一条。
不用写得很复杂。
只要写清楚:
哪天翻车。
你让它做什么。
它实际做了什么。
你原本希望它怎么做。
问题出在哪里。
以后怎么防止再犯。
这条规则加到哪里。
比如:
今天 AI 整理 10 个文件,只整理了 3 个就说完成。
那你就记下来:
问题:提前交卷。
原因:没有检查总数和完成数。
新规则:以后完成前必须输出总数、完成数、未完成数。
加入位置:CLAUDE.md。
再比如:
AI 说小红书发布成功,但实际没有发布。
你就记下来:
问题:虚假完成。
原因:没有检查平台结果。
新规则:任何发布任务,必须提供平台返回结果或截图,不能只说成功。
加入位置:CLAUDE.md 或发布流程文档。
这样记录一段时间,你会发现:
AI 不是突然变聪明了。
而是你的机制越来越完整了。
别人每次都靠运气。
你每次都靠规则。
这就是差距。
---
## 九、不要什么都装,太多也会乱
很多人听完 Harness 很重要,就开始疯狂加东西。
加很多 Skills。
接很多 MCP。
写很多规则。
装很多 Hook。
配很多 Agent。
结果 AI 没变强,反而更慢、更乱。
因为每多一个东西,AI 就多一层判断。
规则太多,它会抓不住重点。
工具太多,它会乱调用。
流程太复杂,它会卡住。
检查太多,它会变慢。
所以 Harness 不是越多越好。
正确的做法是:
翻过什么车,就补什么规则。
遇到什么风险,就加什么拦截。
没有真实问题,就不要提前复杂化。
已经不再有用的规则,要删掉。
每加一个东西,都问自己:
它是为了防止什么问题?
这个问题真的发生过吗?
不加它会有什么后果?
它会不会让流程变慢变复杂?
回答不出来,就先不要加。
高手不是装得最多的人。
高手是知道什么时候该加,什么时候该删的人。
---
## 十、你现在先做这三件事
第一,建一个 failures.md。
从今天开始,AI 每翻一次车,就记一条。
第二,重写 CLAUDE.md。
不要写太多空泛要求。
把真实翻车变成具体规则。
第三,加最基础的 Hook。
先拦危险删除。
再拦敏感文件。
最后拦不可逆发布和推送。
这三件事做好,你的 AI 会立刻稳定很多。
不是因为模型突然升级了。
而是因为你终于给它加上了规则、检查和复盘。
---
## 结尾
很多人用 AI,其实是在抽卡。
这次发挥好,就觉得 AI 很神。
下次翻车,就觉得模型很烂。
再换一个模型,又重新经历一遍希望和失望。
但真正会用 AI 的人,不会只靠运气。
他们会建立机制。
开始前有规则。
执行中有边界。
完成后有检查。
失败后有记录。
记录后会升级。
这就是 Harness 的价值。
它不是让 AI 永远不犯错。
而是让每一次错误都能变成下一次的规则。
当你把这套机制搭起来以后,你的 AI 就不再是一个随时可能瞎搞的实习生。
它会慢慢变成一个有流程、有记忆、有检查、有复盘的工作助手。
新手一直问:
哪个模型最强?
高手会问:
我的 AI 工作流哪里还没有闭环?
当你开始问第二个问题,你就已经不只是“使用 AI”了。
你是在训练一套真正属于自己的 Agent 系统。
夜雨聆风