今天大多数 Agent 的工作方式,其实还是一种非常熟悉的交互模型:你问一句,它答一句;你再发一个 prompt,它再继续往下做一点。从产品体验上看,这已经比传统软件灵活很多了,但如果把时间再往前推一步,就会发现里面有一个非常明显的限制:Agent 仍然是被动的。它只有在用户主动发起交互时才会开始工作,离开了 prompt,它就像暂时不存在一样。
这对于很多简单任务没有问题,但一旦 Agent 要进入真实环境,这种模式很快就会显得太窄。因为现实世界里的很多事情,并不是“等你想起来了再问一句”才值得处理。运维告警出现的那一刻就需要反应,供应链状态变化的那一刻就需要跟进,家里的智能家居设备上报新事件时,也不应该还要人手动打开一个聊天窗口,再把这件事转述给 Agent。真正有价值的 Agent,不应该只是一个等待 prompt 的接口,而应该能对环境变化本身做出反应。
0x00 > 问题
被动 Agent 最大的问题,不是它不聪明,而是它天然晚了一步。系统里已经发生了事情,外部世界已经产生了变化,但 Agent 还在等待一个人把这些变化重新整理成一句自然语言,再交给它处理。这个过程看上去很自然,实际上却把很多本来可以自动开始的工作,重新变回了人为触发的流程。
而且,一旦事件量变大,这种方式几乎一定会失效。企业内部每天会产生大量系统事件、业务事件、告警事件和数据更新,外部数据源也会不断推来新的变化。如果每来一条事件都要先经过人看一遍,再决定要不要告诉 Agent,那么 Agent 再强,也仍然只是人类操作链路后面的一层补充。它没有真正成为系统的一部分,只是变成了一个“你想起来时可以问一问”的助手。
0x01 > 主动 Agent
所以,我们更关心的是另一种 Agent:主动 Agent。它和一问一答的被动 Agent 最大的区别,不在于模型本身更大,也不在于会的工具更多,而在于它开始直接接收环境事件,并且能对这些事件做出反应。也就是说,Agent 不再只是消费 prompt,而是开始消费世界里的变化。
这个能力一旦成立,很多事情的工作方式就会完全不同。比如接入运维事件的 Agent,可以在预警出现的第一时间收到事件并开始着手处理,而不是等值班同学看见告警后再手工转发一遍;再比如接入家里的智能家居物联网事件之后,Agent 也不再只是一个“帮我关灯”的聊天入口,而可以围绕温度、传感器状态、门锁、摄像头、回家离家等事件,自由地编排更复杂的控制流程。换句话说,主动 Agent 不只是“更自动”,而是它终于开始真正处在环境之中。
0x02 > 实时事件总线
Brazosd 实现主动 Agent 的方式,是引入一个实时事件总线。企业内部产生的各种事件,以及接入进来的外部数据源,都会并入这条统一的实时事件总线。这样做的关键,不只是为了“把数据汇总到一起”,而是为了让 Agent 面对的,不再是零散、彼此割裂的输入,而是一个持续流动的环境。
一旦事件进入统一总线,Agent 就不再依赖某个单独系统用某种特定接口把消息推到自己面前。无论事件来自监控系统、业务系统、审批系统、传感器网络,还是各种第三方外部数据源,它们都先进入同一个实时事件层。这样做的意义非常大,因为它让主动 Agent 的基础不再是“针对某一个接入点做一个特化集成”,而是“在统一事件层之上定义工作反应”。
0x03 > 不是每条都交给 Agent 处理
但如果只是把所有事件都接进来,还远远不够。因为现实中的事件量往往非常大,如果让 Agent 逐条处理所有信息,系统很快就会被吞吐量和成本拖垮。真正重要的,不是 Agent 有没有收到每一条消息,而是它能不能只在特定状况出现时被唤醒。
这也是 Brazosd 另一层核心设计:Agent 不是直接逐条消费事件流,而是先通过高效的流处理引擎制定实时事件筛选规则。也就是说,系统会先在高吞吐的实时数据流里判断“什么情况真的值得唤醒 Agent”,只有当这些条件成立时,Agent 才会被唤醒并开始处理。这样一来,Agent 就不需要像一个低效的轮询程序那样,对每条事件都做一遍完整推理,而是只在真正关键的事件态出现时介入。
这个区别非常重要。它意味着主动 Agent 并不等于“让模型去看更多数据”,而是“让系统先在海量实时数据中,把真正值得 Agent 关注的状况挑出来”。只有这样,主动能力才可能既足够灵敏,又足够经济。
0x04 > 精确唤醒
当事件总线和实时筛选规则结合在一起之后,Agent 获得的其实是一种新的工作方式:它可以在极高吞吐的实时数据量中,精确捕捉到特定事件状况,然后再做出反应。也就是说,Agent 不再是被无限信息淹没的一层推理模块,而是被系统有意识地放在“真正需要判断和行动”的位置上。
这对于企业场景尤其重要。因为企业系统里最不缺的就是事件,最稀缺的反而是对重要状况的及时反应能力。主动 Agent 的意义,不是让一切都自动化,而是让关键变化发生时,系统能立刻把 Agent 推到台前。它可以接住预警,可以接住业务异常,也可以接住跨系统事件碰撞出来的新状况,然后开始处理。
0x05 > 价值
所以,Brazosd 讨论主动 Agent 时,重点并不是“Agent 终于能主动给你发消息了”这么简单。真正重要的是,我们把 Agent 从一问一答的被动接口,变成了一个能够生活在环境事件中的系统角色。实时事件总线负责汇聚环境变化,流处理引擎负责在高吞吐数据中筛出真正有意义的状况,事件驱动唤醒则负责在那个时刻把 Agent 精确推起来。
这意味着,Agent 不需要长期热运行去盯着每一条输入,也不需要依赖人类把系统变化翻译成 prompt。它可以在正确的事件出现时,被正确地唤醒,并对正确的问题做出反应。对我们来说,这才是主动 Agent 真正成立的方式:不是更频繁地聊天,而是更真实地参与环境。