智能体(agent)开始自己改写提示词、工具和记忆,这听起来很强大,但也带来一个棘手问题:如果智能体把自己改坏了怎么办?

exo,一个全新的开源智能体框架(agent harness),正是为了解决这个问题而生。它的核心思路很直接:把智能体拆成三个独立层次,让每一层各司其职,从而应对递归自我改进(RSI,Recursive Self-Improvement)带来的挑战。

打开网易新闻 查看精彩图片

三层架构:各管一摊

exo 将智能体拆分为三层,每一层都有明确边界。

第一层是 exoharness,负责存储所有持久化数据。对话历史以追加式事件日志(append-only event log)的形式存在,智能体无法篡改。同时,它还管理着工件(artifacts)、密钥(secrets)和沙箱生命周期。这一层是智能体无法触碰的"底盘"。

第二层是 执行器(executor),决定智能体的行为方式。它负责组装提示词、调用模型、调度工具和管理记忆。智能体可以重写这些内容,而且你可以随时把执行器换成另一个框架。

第三层是 沙箱(sandbox),运行真正的工作。包、文件和命令都在一个隔离的机器中执行,这个机器支持快照和回滚。

关键能力:回滚与分叉

这套三层设计带来几个实用能力。

  • 分叉对话:可以从任意事件点分叉出一个新对话,同时运行同一任务的多个版本。
  • 回滚修复:如果智能体把自己搞坏了,可以回滚到出问题之前的事件点。
  • 长时恢复:几周后恢复对话,完整历史记录和专属挂载(mount)都还在。
  • 命令审计:通过 tool_requested 和 tool_result 字段,可以查看实际执行了哪些命令。

这些能力背后有一个共同逻辑:当智能体开始重写自身配置时,底层必须有一个它无法修改的持久化状态,同时还要有把运行回滚到更早检查点的机制。

为什么这很重要

智能体正在越来越多地接管自身的配置工作,这对底层框架提出了更高要求。当事件日志、分叉和回滚成为必备功能时,exo 这种设计思路的价值就会显现出来。

对开发者而言,这意味着在构建自主智能体时,需要考虑的不只是模型能力,还有底层框架的可靠性。一个能自我修改的智能体,需要一个它碰不到的安全底座。