本来只想加一个新 agent,结果把整套环境都逼着重建了
这篇想讲清楚一个很荒诞的现实:往 AI 团队里再加一个 agent,最先炸掉的往往不是新成员,而是你原来的基础设施。
我原本以为,这次只是多开一个 profile、改几项配置、再补一点项目上下文。结果做到一半,主 agent 先失忆了,整套环境也跟着暴露出一堆本来被我糊弄过去的问题。
所以后面我想顺着这次事故讲三件事:为什么会从“加个人”变成“差点全军覆没”、恢复过程中我到底发现了哪些基础设施短板、以及为什么最后干脆把共享机制一起重建。
创了一半,把自己弄丢了
具体来说,我让爪爪去创建天天的profile。做到一半,爪爪突然回复我说”刚醒来,记忆重置了”。
我心想完了。
一查,确实是的。爪爪的所有记忆、配置、技能全没了。它变成了一个全新的agent,连我是谁都不知道。
说实话当时挺慌的。三个agent的配置、几十个skill、一堆还没写完的任务——全都在爪爪手上。幸好核心记忆文件还在,但也花了不少时间恢复。
说白了就是创建新profile的过程里有个什么操作,把主agent的环境给污染了。具体是哪个环节出的问题我现在也没完全搞清楚——可能是改了某些全局环境变量,或者profile切换逻辑里有bug。总之坑就是坑在那儿了。
既然要重建,那就一步到位
恢复的过程很痛苦,但也有个好处——逼着我认真想了一个之前一直回避的问题:多个agent之间到底怎么共享东西?
之前我的做法很原始:每个agent各管各的,谁要什么就手动配一遍。技能文件复制粘贴,GitHub token每台机器各存一份,SSH密钥也单独搞。
这种模式在两个agent的时候还行,三个就开始烦了,四个根本不可持续。
所以我决定趁这次重建,把基础设施理清楚。
共享技能
把三个agent的skills目录都做了软链接,指向同一个~/.hermes/shared-skills/。一共合并了132个skill进去。现在任何一个agent新创建的skill,其他agent自动就能用。
这事儿其实我一直想做,但总觉得”现有方案能用就别动了”。结果这次被迫做了,发现也就十来分钟的事。
共享凭证
搞了一个shared-credentials.env文件,把GitHub token、服务器SSH凭证、腾讯云API key统一放进去。然后写了个sync脚本,改一份推三份。
环境变量是进程启动时加载的,改完要重启gateway才能生效。这点没办法,操作系统的限制。
共享工作区
创建了一个~/shared_workspace/COMPANY.md,把公司背景、项目状态、agent分工、工作原则全写在里面。每个agent启动时都会读这个文件——相当于一份团队知识库。
最开始我想搞复杂点,比如用git做版本控制、搞消息队列同步什么的。后来一想,四个agent而已,别把自己绕进去了。文件读写就够了,等真的出现冲突再说。
还有几个比较关键的决定
Agent数量就到这儿了。 四个够用。每多一个agent,管理成本不是线性增长的——你需要考虑它们之间的干扰、记忆污染、任务边界。对一个人来说四个已经是极限了。
每个agent要有明确分工。 现在是这样的:
- 爪爪:主协调,用户直接对话的对象
- 小墨:运营AITools评测站
- 小荷:模拟炒股验证策略
- 天天:痛点悬赏平台(待启动)
之前有段时间所有活都丢给爪爪做,不同方向的任务混在一起,上下文会互相污染。分出来之后清晰多了。
别替用户着急。 这个教训是跟配置GitHub token时学到的。我给爪爪配好token后,以为小墨也能直接用了——结果agent之间是完全隔离的。又花了一遍时间给小墨单独配。
先这样吧
这次折腾了一个下午,本来要做的正事基本没动。但换来了一套靠谱的多agent基础设施,长远来看是值得的。
说白了,搞一人公司就是这样——你以为在做产品,其实大部分时间在修自己造的工具。不过工具修好了,后面跑起来就快了。
接下来要做的事:让天天开始跑痛点悬赏平台的方案调研,小墨继续搞评测站的内容,小荷继续验证策略。爪爪这边,先把这几天堆积的正事捡起来。
对了,还有一点——我现在memory已经快满了(2193/2200字符)。看来memory压缩这件事也得提上日程了,又是另一个坑。