AIOS 往哪走
这不是一课,是我作为运行支持席、看完 2026 年前沿之后的判断:集团 AIOS 该往哪走、哪些牌值得打、哪些不值得。每条都写清前沿谁在做、传统里对应的成熟做法、我建议怎么用、代价和风险。你不一定采纳,但看完你手里有牌。
阅读约 20 分钟。优先级是我的判断,不是集团决议。
一句话总判断
我们的 AIOS 在"运行时层"走在多数开源项目前面,输在工程化:三件事还停在文化层面没变成代码。前沿给出的答案不是换框架,是把这三件事做成机器校验,再补一张对外的名片和一个带时间的记忆。
比前沿强身份纪律、回执推导状态、fail-closed 文化、真在七台机上跑了几个月。
三件要成代码载体契约、任务级持久、机器可验的完成。
两件要补对外的 Agent Card(协议层缺席)、带时间的记忆(记忆层是文件)。
不该做换编排框架、追万级规模、自研公钥体系、把数据送进 SaaS 可观测平台。
选型原则无聊技术:每一步只押一处新东西,其余用已证明的。
七件事逐条:前沿、传统、建议、代价
顺序按优先级,不按课程顺序。
真源与状态优先级 高
- 现状
- Current 是位置真源;站内信状态从回执推导;Goal 和 Task Plan 是手改的 JSON;记忆是文件加人工整理。
- 前沿
- 事件溯源加投影(当前状态永远是从事件算出来的复印件);Letta 的记忆块和休眠期整理;Zep/Graphiti 的双时态知识图(每条事实带"何时为真、何时失效")。
- 传统
- 追加式日志、预写日志、单写者、版本号乐观并发。数据库三十年的老手艺,全部适用。
- 建议
- 集团建一张统一的事件表(SQLite 即可),Current、义务状态、Task Plan 进度全部改成从它投影;每个事实定一个 owner 席(单写者);手改 JSON 加版本号。记忆先做"带时间的事实表",不急着上图数据库。
- 代价
- 两到三周。迁移期投影和旧 Current 并行对照一周。
- 风险
- 迁移期最容易出两套事实。对策:投影只读上线,对照一周零差异再切。
观测与验证优先级 高
- 现状
- 产物带路径和 sha256;验收铁律是真实路径跑通;没有全链路追踪;完成多是自述加抽查。
- 前沿
- OpenTelemetry 的 GenAI 约定(还是草案);规范驱动验证(MAS-Lab);形式化门闩(OpenAI 用 Lean);对"再加一个裁判 agent"的实证否定(MAS-ProVe)。
- 传统
- SRE 那套:一任务一条 trace、SLO 和错误预算、金丝雀、无责复盘、回放日志。
- 建议
- 三样:每个任务一条本地 trace(落文件或 SQLite,不上云);done_when 必须写成机器能复跑的东西(测试、探针、截图对比),否则不许报完成;每周一次十分钟文本复盘。不建裁判链,纠偏原典和前沿实证在这一点上一致。
- 代价
- trace 一周;done_when 模板三天;复盘零成本。
- 风险
- trace 字段名会变(OTel 草案)。对策:先记"发生了什么",不押字段合同。
载体与调度优先级 高
- 现状
- tmux 加 launchd 托着终端进程;重拉工具带四个环境变量,校验 fail-open;--resume 只保对话不保在飞任务。
- 前沿
- 持久执行引擎(Temporal、Restate、DBOS)把任务从进程里拿出来;沙箱运行时(Rivet agentOS 的 WASM 微虚拟机、NVIDIA NemoClaw)把壳做成标准件;模型侧开始自带暂停监控。
- 传统
- 十二要素(配置进环境、进程无状态)、监督者、健康检查、不可变镜像。
- 建议
- 第一步,每席一份"载体规格文件":必须带的环境变量、文件、端口、wake 元组、探针命令;重拉工具按它 fail-closed 校验,真值是文件存在与否,不是上一代进程有没有。第二步,挑一个 Goal 做持久执行引擎 spike,Restate(单二进制)或 DBOS(Python 库)二选一,不上 Temporal。第三步,一席试点沙箱载体,tmux 保留给人 attach。
- 代价
- 规格文件一周;引擎 spike 两周;沙箱试点一个月。
- 风险
- 引擎是新的运维面。对策:只 spike 一个 Goal,验证"崩了能续"再谈推广。
通信优先级 高(去重与超时)中(对外网关)
- 现状
- 回执纪律比多数框架严;发件箱、备用路径、持久收件箱都有;去重靠 agent 自己认;送不出去的消息没有去处;未读没有提醒。
- 前沿
- A2A 任务模型(编号、状态、流式、产物);MCP 7 月版无会话;MCP 路线图把 agent 消息原语列为下一阶段。
- 传统
- 幂等键去重、死信队列、背压、超时告警。消息队列的常识。
- 建议
- 先补三个小件:收件方幂等表(同一编号只处理一次)、死信队列(送不出去的单独放)、未读超时提醒(送达 30 分钟没 READ,提醒 owner)。再做一个 A2A 适配层,把站内信映射成 A2A 任务,对外露一张名片。内部协议不换。
- 代价
- 三个小件各一两天;适配层两周。
- 风险
- 低。适配层若做成第二套协议就是错,它只能是翻译。
控制面与边界优先级 高(测试化)
- 现状
- 每席有不可做清单;跨机生产写删要授权;fail-closed 是文化不是代码;高风险动作靠 Ling 一人授权。
- 前沿
- 策略即代码(OPA、Cedar);沙箱网络策略;能力令牌层层收窄地委托;模型侧安全监控暂停任务。
- 传统
- 最小权限、四眼原则、变更窗口、职责分离。
- 建议
- 把"缺证据就红"写成契约测试,每个校验工具都要有"缺失即失败"的用例;跨机删除、生产写、支付三类动作走双席确认;策略即代码只做 spike(Cedar 轻),不急上线。
- 代价
- 契约测试一周;双席确认是流程不是代码。
- 风险
- 过度安全会变成审批链,纠偏原典明确反对。对策:只管三类不可逆动作,其余不加门。
能力层优先级 中
- 现状
- 能力清单、资产目录、中文 Skill;目录登记率低(今天查网页、前端、Cloudflare 三个词都是零条)。
- 前沿
- Skill 成为跨工具标准,社区库过两千条;技能市场同时成为攻击面(Hermes 让 agent 自写技能、OpenClaw 出过恶意技能)。
- 传统
- 带签名的软件源、白名单、物料清单。
- 建议
- 登记先行:每次真实成功都登记成资产,目录不空才有人查;外部 Skill 装前必审,自动下载二进制的 hook 一律不装;MCP 服务器统一登记来源。
- 代价
- 零工程,是习惯。
- 风险
- 登记变成仪式。对策:只登记跑通过的。
身份与位置优先级 中
- 现状
- 稳定 actor、位置单一真源、每席证书、双向校验。内部已经够用。
- 前沿
- 签名 Agent Card;工作负载身份自动签发;能力令牌;支付网络的 KYA。
- 传统
- X.509 证书体系,我们已经在用。
- 建议
- 用已有席位证书给每席签一张内部 Agent Card,由 runtime 从 Current 生成,先内用后对外。授权改用能力令牌只在需要跨席委托时做,不为做而做。
- 代价
- 一周。
- 风险
- 过度设计。对策:不重构证书体系,只加一张卡。
九十天三步
- 第一个月:把三件文化变成代码
- 每席一份载体规格文件,重拉工具按它 fail-closed 校验。
- 站内信加幂等表、死信队列、未读超时提醒。
- done_when 模板:没有机器可复跑的证据不许报完成。
- 第二个月:统一真源,试持久执行
- 统一事件表,Current 和义务状态改投影,并行对照一周再切。
- 一个 Goal 上持久执行引擎 spike,验证"崩了能续"。
- 每任务一条本地 trace。
- 第三个月:对外名片,试沙箱,试记忆
- 内部 Agent Card 加 A2A 适配层试点一席。
- 沙箱载体试点一席。
- 带时间的事实表试点一个领域。
每一步只押一处新东西。三步走完,我们仍然是 tmux 加 SQLite 的集团,但每一件事都能被机器证明。
不建议做的
- 换编排框架。LangGraph 之类解决的是"图和状态",我们的问题不在图,在契约和验证。
- 追万级规模。OpenAI 那次是数百万美元的实验室能力。先把二十席做成每一件事可验证。
- 自研公钥体系。已有证书够用,加一张卡就行。
- 把数据送进 SaaS 可观测平台。trace 落本地,集团数据不出集团。
- 建裁判 agent 链。前沿实证和纠偏原典都说不。
传统且有效,保留并加强
- SQLite 当万能存储,不上 Postgres 除非真的多写者。
- launchd 监督常驻进程,但要有崩溃循环告警。
- tmux 保留:人随时能 attach 看 agent 在干什么,这是我们比沙箱方案强的地方。
- mTLS 对等网。
- 追加式记录加 sha256。
- 清单、运行手册、复盘。
- 无聊技术原则。
第 2 版补充(第 4 课之后):持久执行引擎六家我都看过了:Temporal(8 月出 Agent Harness,最重)、Restate(流水加持久承诺,单二进制)、DBOS(进度写进已有 SQLite 或 Postgres,最轻)、Inngest(serverless 向)、Cloudflare Agents 加 Workflows(云锁定)、Rivet(诚实地说不保证恰好一次)。对二十席七台 Mac 的集团,spike 顺序是 DBOS-on-SQLite 先于 Restate,Temporal 不进候选。事件表的设计原则从 ESAA 抄:agent 只发意图,编排器校验、追加、再改盘;Current 和 Task Plan 改成投影;Task Plan 每一步引用它依赖的记录版本(PlanFence)。所有记忆产品只做投影,冲突以事件日志为准,写进契约测试。