006 / AI协作
给 Agent 立规矩:从踩坑到流程化的两天

这两天折腾HW-AIMS项目,算是把Agent协作的坑踩了个遍。
问题是怎么暴露的
6月12号晚上,我想加个搜索功能,让布布(我的AI助手)写代码。她写完了,让胖子(本地Agent)部署到服务器。
结果页面死活出不来。
布布反复改代码、反复部署,搞到凌晨1点还是空白页。我当时就急了——这什么破Agent,连个简单功能都搞不定?
后来胖子(另一个Agent)接手排查,发现了一个致命问题:部署路径搞错了。
布布一直把文件放到/opt/1panel/1panel/www/hw-aims/,但Nginx看的是容器内的/www/hw-aims。这两个路径在物理上是一回事(通过bind mount映射),但布布不知道这层关系,导致新代码根本没被Nginx读到。
更离谱的是,GitHub的HTTPS认证早就被废弃了(2021年8月就全面禁用了),我们还在用PAT token尝试push,当然一直超时失败。
这两个问题叠加的结果就是:代码改了好几轮,但服务器上跑的始终是旧版本。
为什么会这样?
不是布布代码写得不好(其实写得挺对),而是协作流程没有规范。
布布是决策者,负责设计和写代码;胖子是执行者,负责在本地Mac和服务器上执行命令。但胖子有个坏习惯:喜欢自作主张。
布布让他执行命令,他有时候觉得"这里可能有问题",就自己改代码或排查问题。结果越改越乱,引入新问题。
另外,部署路径这种关键信息,布布和胖子都没有明确记录。布布以为她知道,胖子也以为他知道,结果两人说的根本不是同一个东西。
立规矩
6月14号凌晨,我花了两个小时,做了几件事:
1. 给胖子写执行规范
核心原则就一条:严格按指令执行,禁止自行修改。
我把项目的关键信息全部整理成文档:
- 部署路径到底是什么(主机路径vs容器内路径)
- Git remote怎么配置(必须用SSH,不能用HTTPS)
- 服务器信息(IP、用户名、密码、SSH密钥)
- 标准操作流程(提交→推送→部署→验证)
- 禁止事项(红线清单)
最后还加了一个"执行清单",胖子每次执行前必须过一遍:
- 布布的指令我看清楚了吗?
- 我是"只读检查"还是"修改执行"?
- 涉及服务器的路径对吗?
- Git remote对吗?
- 包管理器用pnpm了吗?
- 执行完后如实贴完整输出了吗?
2. 制定猴子协作流程
猴子是另一个coding agent,不在群里,我单独通知他。之前的流程是:我告诉布布要做什么→布布告诉胖子→胖子转写指令给猴子。多了一道手,效率低还容易出错。
现在改成:
我提需求 → 布布写指令文件到GitHub → 我转发给猴子 → 猴子执行并push → 布布验收 → 我让胖子部署 → 我验证 → 布布标记完成
指令文件用时间戳命名(MONKEY_TASK_MMDD_HHMM.md),避免覆盖。布布写完会在群里发摘要,我一眼就能看懂要猴子做什么。
猴子执行完后,布布用GitHub API验收,确认改对了再通知我部署。这样避免了"猴子说做完了但其实没做对"的情况。
3. 建立待处理事项机制
我随时可能想到新问题,但猴子不一定立刻有空。所以我让布布建了个TODO.md,我想到什么就告诉她:"记一下待处理"。
格式统一:
- 记录时间(加粗)
- 事项内容(多条加序号)
- 处理完后追加完成时间+已处理标识
- 两组之间用分隔线分开
这样我的想法不会丢,布布可以集中安排给猴子执行。
4. 沟通规则优化
有时候我同时at布布和胖子,但主要是对其中一人说,另一人只需要知道。之前两人都会回应,信息冗余还容易混淆。
现在约定:
- 通过语义判断主要对象——主要对象回应,另一个只记不说
- 如果是对两人都说的,各自回应但集中在一条信息里,方便我单独引用转发
这些规范的意义
说实话,刚开始立这些规矩时,我觉得有点繁琐——不就是改个代码吗,至于搞这么复杂?
但两天下来,我发现这些规范的价值在于把隐性知识显性化。
以前布布和胖子都知道"部署路径是/opt/1panel/1panel/www/hw-aims/",但这个"知道"是模糊的。布布以为是容器内路径,胖子以为是主机路径,结果两人说的不是一回事。现在写进文档,白纸黑字,不会再有歧义。
以前胖子觉得"我觉得这里可能有问题"就去改代码是"主动思考",但结果是越改越乱。现在明确告诉他"你是执行者,不是决策者",他的职责是准确执行+如实回报,不要越界。这样布布出指令、他执行,效率反而更高。
以前我想到一个问题,随口告诉布布,布布记在脑子里,过两天就忘了。现在有TODO.md,所有待办事项都有记录,处理完有标识,不会丢也不会乱。
带来的好处
最直观的感受:错误少了,效率高了。
以前部署一次,可能要反复折腾半小时甚至更久。现在按标准流程走,一次就成。
以前胖子自行改代码,布布要花更多时间排查"到底哪里改坏了"。现在他严格按指令执行,出问题也能快速定位。
以前我想到一个需求,要组织语言、找时间告诉布布。现在随时一句话"记一下待处理",布布帮我记录、安排、跟踪。
更重要的是:我的精力被释放出来了。
以前我要盯着布布和胖子的每一步操作,生怕他们搞错。现在有规范兜底,我可以专注在产品设计和技术决策上,执行层面的事交给他们按流程走。
写在最后
Agent不是万能的神,它们也会犯错、会遗漏、会理解偏差。但通过立规矩、建流程,可以把这些不确定性降到最低。
这两天的折腾,让我明白了一个道理:Agent的价值不在于它们多聪明,而在于你怎么用它们。
用得好,是效率倍增器;用得不好,是麻烦制造机。
关键就在于——你有没有给它们立好规矩。