几个月来,我一直让四个长期运行的智能体负责运营我的新闻通讯。难点不在于记忆,而在于上下文窗口。

Reddit r/AI_Agents 工具

摘要

作者分享用四个长期运行的 Claude Code 智能体运营自己的 AI 通讯的经验,指出最大瓶颈不是记忆或工具,而是上下文窗口,并介绍了智能体自写检查点、自清空、自我恢复的机制,以及相关的失败案例和开源工具。

我的通讯(The AIgent,订阅者接近 9 千)日常由四个 Claude Code 智能体负责运行,我叫它们 Titus、Pheme、Davinci 和 Metis。Titus 协助监督和组织,Pheme 是编辑兼通讯负责人,Davinci 负责构建,Metis 负责分派任务。所有对外发布的内容仍由我审批。我没想到的是:最常出问题的不是记忆或工具,而是上下文窗口。一个长时间运行的智能体会把它填满,然后你要么让它压缩上下文(它会靠一份有损摘要继续运行,悄悄忘掉一些东西),要么清空上下文,再花十分钟重新解释。对于需要跨天持续工作的系统来说,这两种方式都行不通。所以现在,每个智能体都会自行刷新。当上下文占用过高时,它会写入一个检查点,确认检查点有效,清空上下文,检查是否确实启动了一个新会话,然后从检查点继续工作。如果无法确认,它就不会清空。实际运行这些智能体让我学到了几件事:不要盲目信任检查点。有一次我检查正在运行的智能体,发现四个里有三个会从没有实际下一步任务的检查点恢复。现在,它会拒绝从空检查点恢复。把保存的记忆当作数据,而不是指令。智能体之前写下的任何内容,都不能向下一个会话下达命令。智能体会假装已经完成。在一次加速测试中,一个智能体在同一个会话里写了好几个“完成”标记,然后宣称任务已结束,而没有真正执行刷新循环。我作废了那次测试。每一次失败都会对应一项修复和一个测试,并反馈到开源版本中。说清楚一点,这只是我使用它的方式,并不是在声称它带来了什么增长。到目前为止,唯一的正式结果是:一个智能体完成了 11 次刷新循环,11 次都顺利通过。很好奇其他把智能体用于实际工作的人是怎么处理这个问题的。你们会让它们压缩上下文、重启它们,还是采用别的方法?(这套运行框架是我搭建的,免费且开源。按照规则,链接放在评论区。)
查看原文

相似文章

我的智能体配置的三个部分:持久记忆、自我改进和协调

Reddit r/AI_Agents

作者分享其 AI 代理工作流设置的博客文章,围绕三大原则:持久化记忆(版本控制的技能库与 AGENTS.md/CLAUDE.md 约束)、递归式自我改进(授权代理在任务中修补记忆文件)以及可扩展并行化(通过协调工具管理文件写入范围以避免冲突)。