最近我越来越觉得,Agent 系统的问题不能只归结为模型能力。有时执行器主动性不足,任务很快停下来;有时安全管家又过度保护,让部署推进变慢。真正需要重构的,是模型、治理、工作流和运行环境之间的关系。
治理不能变成过度保护
安全治理当然重要,但保护规则也需要被反向检查。如果每个动作都被过多的确认和限制卡住,系统虽然看起来安全,却很难把事情做完。
更合理的方式是一边治理、一边开发:持续测试功能,也定期扫描哪些保护已经变成了不必要的摩擦,再在审计后清理它们。治理的目标不是让 Agent 什么都不能做,而是让它在边界内持续执行。
多条任务线之后,瓶颈回到了人
通过消息工具派发任务、推进工作流,是一种很有价值的模式。人可以在手机端提出目标,由 Agent 派发任务并跟踪进度,而不是亲自执行每个动作。
但当任务线路变多,人的脑力会成为新的瓶颈。问题变成:我如何接收多条线的状态信息,又如何快速给出反馈?如果系统把所有细节原样推给人,信息越多,越难推进。
因此,状态信息必须被转换成人类容易理解的分类:当前处于哪一阶段、接下来可以做什么、依赖是什么、是否阻塞。只有这样,多条工作流才不会变成多条互相争夺注意力的消息流。
状态机让复杂流程可理解
我认为,最适合表达 Agent 任务进度的模式可能就是状态机。状态机描述当前处于哪个状态,以及在这个状态下应该执行什么行为、什么条件会触发下一步流转。
从本质上说,Agent 的执行流程和传统程序并没有完全不同。传统程序沿着固定的 if/else 顺序流转;Agent 则在各个节点中加入自己的判断和一定的随机性。顺序流转仍然存在,只是节点内部变得更灵活,因而能够处理更复杂的工作。
状态机的价值,是把这种灵活性放在清晰的边界里。系统知道任务走到哪里,也知道当前状态允许哪些行为。Agent 可以在节点内部寻找解法,但不能随意改变整体流程。
智能的一部分,是把步骤压缩
Agent 执行任务时,会发现一些可以复用的规律。原本需要逐步展开的一串动作,经过理解和沉淀后,可以被压缩成一个更高层次的动作。
我越来越倾向于把这种压缩看成智能的重要组成部分:把多个步骤压缩成一个步骤,把反复试错得到的经验反馈回环境,再把经验变成规则、模块或 Skill。压缩得越多,下一次执行时就越不需要重新消耗上下文,也就能把能力用于更复杂的问题。
因此,环境中那些 Agent 处理不好的内容,不应该只被当成一次失败。它们应当被记录下来,反馈回系统,推动架构、模块和工作流继续改进。
用控制论形成反馈闭环
控制论和系统论提供了另一个重要视角:系统不是执行一次就结束,而是通过反馈不断修正自己。Agent 做出动作,环境返回结果;结果暴露出的偏差,再进入下一轮治理和设计。
代码架构中的模块化、工作流中的任务拆解、状态机中的流转条件,以及控制论中的反馈回路,实际上共同指向一个目标:让系统能够观察自己、修正自己,并逐步形成更好的正反馈。
这也解释了为什么应该把运行环境搭建好。环境足够清楚、边界足够稳定、反馈足够及时,即使 Agent 的智力变强,也只能在这个环境里寻找最优解法,而不能越过环境随意行动。
让耐心沉淀为系统
现在做了很多工作,却还没有形成足够显性的成果,这确实会让人揪心。支撑我继续推进的,是相信耐心本身可以产生复利,但耐心不能只是等待。
每一次执行、失败和修正,都应该沉淀为系统的一部分:更清楚的状态、更稳定的环境、更好的反馈和更少的重复劳动。最终要构建的,不是一个需要人不断盯守的 Agent,而是一个能够在约束中寻找解法、在反馈中持续迭代的系统。