跳转至

AgentMeshOS AI 平台与应用架构

版本:v1.4.0

更新:2026-08-18

状态:架构边界已收口;阶段三通用 AI Runtime MVP、重新开启后的阶段四“AI BOSS 智能编排、通用成果与验收闭环”、阶段五至阶段八均已完成并归档;当前阶段为 P9(阶段九)“隔离 Tailnet 临时远程协助节点”实施中

一、定位

AgentMeshOS 的主体是 AI 应用运行平台 / AI 操作系统。AI 平台位于分布式计算底座之上,为多个应用提供统一 Runtime、模型、任务、成果、证据、预算、恢复和审计能力,不等于某一个业务应用。

flowchart TB
    Apps["可插拔 AI 应用"] --> Runtime["薄 AI Runtime"]
    Runtime --> Boss["AI BOSS / Plan / Capability / Task Graph"]
    Runtime --> OmniRoute["官方 OmniRoute"]
    Runtime -. "AI Boss 显式备用;runtime_redacted" .-> CliGateway["CLI Agent Gateway"]
    Runtime --> Nomad["NomadAdapter"]
    Runtime --> Storage["StorageAdapter"]
    Runtime --> Feedback["Feedback / Business Ledger"]
    Runtime --> Delivery["Deliverable / Evidence / Verification / Acceptance"]
    Nomad --> Workers["101 / 103 无状态 Worker"]
    Storage --> SQLite["Runtime SQLite"]
    Storage --> Cloudreve["Cloudreve 长期 Artifact"]
    OmniRoute --> Providers["Provider / Model / Combo / Usage"]
    CliGateway --> CliClients["Codex CLI / Claude Code CLI / AgentRouter"]

二、AI Runtime 内部控制边界

不新增独立控制器。AI Runtime 进程内部直接持有适配器和必要的受控凭据;现有 API Gateway 继续负责 Console、Status 和只读运维聚合,不进入 AI 任务执行链路。

Console、回源代理、API Gateway 与 CLI Agent Gateway

组件 权威职责 与 AI BOSS 的关系 禁止事项
Console 管理员业务工作台和用户交互 AI BOSS 页面经认证回源代理调用 Runtime;状态/告警页面读取 API Gateway 保存服务凭据、复制 Runtime 编排或 Gateway 目录逻辑
主节点认证回源代理 鉴权后的固定路径转发 将聊天、附件、记忆、任务和系统动作请求直达 Runtime 保存业务状态、修改请求语义、成为第二控制面
API Gateway 节点、Nomad、服务、探针、告警和状态聚合 只接收 Runtime 的 HMAC 脱敏故障事件,并向 Console 提供只读结果 提交 AI 任务、调用模型、重启服务、管理 Cloudreve 文件、代理附件或聊天流量
AI Runtime 会话、交互、上下文、记忆、计划验证、能力目录、任务图、预算、成果/证据/检查/验收和受控 Adapter AI BOSS 的唯一业务控制面,执行硬边界与持久化 代替 AI BOSS 做业务语义派工、复制 OmniRoute Provider 权威、把基础设施凭据交给模型
CLI Agent Gateway 已登记 Codex/Claude 单模型通道、加密 Key 存储和最小审计 只接受 Runtime 显式选择的固定 backend_idruntime_redacted 上下文与白名单推理强度 自动回退、任意命令、原始敏感数据、工具、仓库或基础设施访问

API Gateway 页面必须从显式安全元数据展示真实接口目录和运行状态,不直接暴露原始 OpenAPI Schema。目录按匿名只读、管理员只读、内部签名写入和受控状态操作分组;写接口只展示契约与调用方,不在页面提供执行按钮。版本从运行时 APP_VERSION 读取,退役接口必须标明或移除,密钥、Token、Tailnet IP、主机路径和底层配置不得进入浏览器。

职责:

  • NomadAdapter:提交、查询、取消和清理 Nomad Job
  • StorageAdapter:处理 Runtime 本地状态、结果、成本和最大 1 MiB 的 Worker JSON 回调证据;PPTX、PDF、图片和 Office 等长期/较大 Artifact 由主节点 root-only Cloudreve WebDAV Adapter 写入 DD 节点长期目录,Runtime 只保存元数据和引用,Worker 不获得凭据
  • ToolAdapter:调用固定只读 MCP 白名单,记录任务关联、摘要、哈希、状态、耗时和官方审计引用
  • FeedbackAdapter:记录日志、结果、失败、成本和收益
  • 在数据破坏风险明确时启用最小技术围栏

普通任务不得要求批准单、准入报告、签入报告、人工申请、Run lease、epoch/fencing 或普通 TTL。适配器只允许使用真实数据风险所需的最小围栏。

三、通用 AI Runtime

AI Boss Agent

AI Boss Agent 是项目级语义总控,负责理解 Benson 的真实目标、判断问答/澄清/工具/系统动作/任务计划、拆分任务、选择已登记逻辑 Worker 能力、提出主节点或 Nomad 执行位置、决定依赖和并行、定义预期成果与验收标准、监控状态、审核成果与证据、提出返工/重规划并最终汇总。Benson 定义合法、预算、数据与风险边界,并保留真实外部业务动作、破坏性动作、未知风险和证据不足任务的最终决定。

AI BOSS 不直接调用节点、Nomad 或存储凭据。它输出结构化计划与审核契约,Runtime 验证能力、安全、预算、资源、风险、幂等和状态后调用固定 Adapter;Nomad 只选择具体节点。Runtime 不能静默替换 AI BOSS 选择,也不能用固定规则代替其业务语义派工;规则只负责硬边界和真实性。

AI Boss 的执行过程必须以 Runtime 真实事件呈现,而不是以模型自述能力或隐藏思维链代替证据。Console 可以展示请求接收、通道检查、模型调用、任务创建、工具调用、审核和完成状态,以及脱敏 Provider、模型、耗时、Token、调用 ID 与任务引用;不得保存或展示完整 Prompt、凭据、内部推理文本或主机配置。模型声称能够读取文件、执行 shell/Git、部署或修改 Provider/Combo 时,若 Runtime 没有对应受控 Adapter 和验收,该声明必须视为不具备能力。

专业 Agent

专业 Agent 负责资料研究、解析、分析、规划、生产、验证或复盘等单一职责。它通过 Workflow、MCP Tool 和 Runtime 适配器完成任务,不直接获得底层凭据或主机权限。

运行时能力

  • Agent Registry:Agent 角色、能力和状态
  • Workflow / Task Graph:任务拆分和依赖
  • Plan / Capability Snapshot:保存结构化目标、风险、预算、能力目录版本、逻辑 Worker、执行位置建议、依赖、并行、成果和验收标准;Runtime 只执行完整通过校验的计划
  • Model Policy:按角色、数据等级、预算和任务快照选择 OmniRoute 模型/Combo;不复制 Provider Registry
  • AI Boss Explicit Backend Policy:Console 的模型、推理强度、预算档位和每日最大用量为持久化偏好;会话记忆始终归 Runtime。每个真实 Smoke 后保存的动态单模型通道固定同时提供 BOSS、Worker 与对话资格,不在编辑页设置角色或可切换开关;当前 BOSS、Worker、Codex、Claude 只在目录列表切换。Codex CLI 固定走 Responses API,Claude CLI 固定走 Anthropic Messages;需要直接 HTTP 时,独立 Codex Direct API 执行器可选择 Responses API 或 Chat Completions,不能把 Direct API 协议伪装为 CLI 能力。公开/私有不是用户选择项:Runtime 保留原文,并在外发前替换可识别的密钥、Token、连接字符串、内部端点和主机路径,CLI Gateway 只接受 runtime_redacted 上下文。模型切换不改变记忆权威。Codex 不可用时保持失败/暂停并告知 Benson,不自动回退。
  • AI 免费策略:面向 Worker Agent 选择 OmniRoute 中已配置的合法免费 Combo;Runtime 不维护免费 Provider 运行池
  • Model Policy / Business Cost Ledger:按角色、任务和数据选择 OmniRoute 模型策略,并记录业务成本
  • Tool Policy:为官方 OmniRoute MCP 建立任务级白名单和摘要审计,不复制 MCP Tool Registry
  • Memory / Context:Runtime 是 AI BOSS 跨模型会话、摘要、确认记忆、版本和审计的唯一权威。前置批次采用 SQLite + FTS5 + sqlite-vec 的本地混合候选检索,向量和 FTS5 都不能覆盖确认状态、来源、版本替代或权限裁决;Runtime 以 RRF、来源和 Token 成本做可解释选择。OmniRoute Memory 不自动注入 AI BOSS;它只在独立专用 Key、隔离范围、短保留期和跨 Key 不可检索验收后,供 OmniRoute 自身独立用途启用
  • Policy / Budget:工具边界、资源额度和成本记录
  • Active Work Policy:阶段五由 Runtime 按 Benson 已启用的持久策略触发 AI BOSS;Console 提供定时、暂停、终止、预算和受控重新运行,模型不能修改策略或越权动作。该能力已完成生产与公网交互验收并归档
  • Evaluation / Feedback:Runtime 评价任务业务结果、证据、质量、成本、收入和策略;OmniRoute 评价模型路由、上游调用质量和传输效率,两者不得互相覆盖
  • Deliverable / Evidence:登记可扩展成果类型、版本、安全位置、哈希、正式访问方式、回滚与替代关系,并关联真实可访问证据
  • Verification / Acceptance:Runtime 轻量检查器和无凭据 Nomad 验证 Worker 产生确定性结果,AI BOSS 做结构化语义审核;低风险任务自动验收,高风险、未知、冲突或证据不足进入 Benson 决定
  • Routing Analytics Boundary:用量、组合健康、利用率、缓存、压缩、搜索、评估和 Provider 性能统计的原始数据与计算属于 OmniRoute;Runtime 只可关联脱敏聚合、runtime_call_id、任务质量和业务结果,不复制原始调用日志、Prompt、账号、Provider 凭据、缓存或路由决策

阶段四计划、成果与验收数据流

flowchart LR
    Goal["Benson 目标"] --> Plan["AI BOSS 结构化 Plan"]
    Plan --> Validate["Runtime 契约与能力校验"]
    Validate --> Tasks["持久 Task Graph"]
    Tasks --> Execute["主节点 Adapter / Nomad Worker"]
    Execute --> Deliverables["Deliverable + Evidence"]
    Deliverables --> Checks["确定性 Verification"]
    Checks --> Review["AI BOSS Review"]
    Review --> Auto["普通低风险自动验收"]
    Review --> Benson["Benson 高风险决定"]

Runtime SQLite 分别持久化 Plan、Task、Acceptance Criteria、Deliverable、Evidence、Verification Run 和 Acceptance Decision。成果类型使用可扩展字符串 ID;未知成果可登记为 other,但必须人工验收。证据只有在真实读取或访问成功后才能支持标准。必需检查失败、模型审核无法解析、审核引用伪证据、检查器不支持或风险未知时,任务不能进入 completed

completed 只表示最终验收完成。普通低风险任务必须同时满足所有必需确定性检查、AI BOSS 对必需标准的结构化通过、无证据冲突、预算未超限和自动完成风险规则;删除、付款、外部发信/提交/注册、凭据/权限/安全、网络/SSH、不可恢复生产变更、证据不足和检查冲突必须进入 Benson 决定。返工和新版本保留旧成果与替代关系,不删除历史。

Console 在阶段四提供“对话、任务、成果与验收、记忆、系统操作”五个分区。对话是 Benson 唯一写操作入口,显示所属主题的人类可读进展、结果、原因、下一步和待决定卡片;任务与成果分区只读查询完整技术事实并跳回原主题,不重复放置执行或验收按钮。记忆分区明确区分主题历史、经确认的跨主题长期记忆和可分页全历史 Context Manifest。系统操作分区逐项解释白名单动作的用途、精确范围、风险和预期结果,默认显示人类摘要并折叠技术详情,不提供任意 Shell。长期文件通过 cloud.yohan.fun 用户数据面访问,Console 和浏览器不得取得系统 WebDAV 凭据;API Gateway 不增加计划、成果、模型或验收接口。

四、AI 应用层

应用层把平台能力组织为 Benson 可以直接理解和使用的工作区。应用不得复制 Runtime 的计划、任务、成果、证据、预算、记忆或审计状态机,也不得自建 Nomad 替代调度器、Provider Router 或凭据代理。

Application Manifest
Application Workspace → Application Run → Human-readable Result
        ↓                       ↓                    ↓
Input Reference          Plan / Task         Deliverable / Evidence
        ↓                       ↓                    ↓
    Settings              Cost / Audit         Version / Recovery

应用中心统一展示应用身份、版本、状态、入口和最近结果。每次应用运行冻结应用版本、设置、输入引用、模型通道、预算和工具白名单,并通过 application_id / application_run_id 关联现有 Conversation、Plan、Task、Deliverable 和 Evidence;关联不能替代这些对象自己的权威 ID。

阶段六先实现内置应用注册与“本地资料分析与验收工作台”样板。它只读取 Benson 明确提交的本地文本、Markdown、JSON、PDF、项目资料和验收材料,输出摘要、事实、问题、风险、验收项、证据和下一步;不访问外部来源,不自动投递、注册、付款、发信或执行外部业务写入。阶段七收敛稳定应用和运行规范,阶段八再验证多应用生命周期。

应用代码由仓库开发、测试、构建和发布;生产运行依靠已发布镜像、Runtime 数据与正式服务,不依赖 Git 工作树。

五、模型和工具边界

AI 免费层与来源目录

AI 免费策略是 Runtime 的业务模型策略,不是第二套 Provider 池。Boss 选择官方 agentmeshos-free-quality-first,按质量顺序优先使用 GPT/Codex、Claude 和 O3;Worker 选择官方 agentmeshos-free-capacity-pool,按“模型 + 账号”的实际使用次数均衡容量。同等使用量时保持质量顺序,调用失败时由 OmniRoute 执行官方回退,Runtime 只记录事实和告警。

历史 Free AI Source Registry 已在 P3-7.3 退役:运行表、同步/健康/发现 Worker 和发现 API 不再作为现行能力。生产 Runtime 已清除其 80 条来源、512 条模型映射和 11 条检查,只保留一条不含来源内容的计数事件;这些历史候选不迁入 OmniRoute。正式 Provider、模型、额度、价格、健康和用量只属于 OmniRoute。

当前已发现的候选来源:

OmniRoute
来源:https://github.com/diegosouzapw/OmniRoute
类型:MIT 开源的多 Provider 模型核心候选
状态:P3-6-2 已完成。官方 `omniroute@3.8.49` 以 root、系统 Node `22.23.0`、默认目录 `/root/.omniroute` 原生运行;101 隔离恢复、主节点生产切换、Runtime/Console 生产部署、全链路和旧容器清理均已完成
角色:官方模型路由服务;AgentMeshOS 保留外壳与全局控制面
额度、条款、区域、隐私、稳定性和生产适用性:待核查

P3-6-2 采用“薄 Runtime + 官方 OmniRoute 模型核心”:OmniRoute 负责 Provider/Model/Protocol/Auth、OAuth/API Key、连接、Dashboard、Live WS、健康/冷却/回退、用量和上游调用事件;AgentMeshOS 负责 Benson Console、AI Boss/Worker、业务策略、任务图、Nomad、Storage、证据、成本/收入、告警和业务复盘。Runtime 已删除通用 ProviderRouter、Provider 凭据和 CRUD;OmniRouteAdapter 是唯一通用模型调用路径。

2026-08-03 已完成 101 官方 npm 隔离恢复和主节点 root 官方默认原生迁移;迁移验收基线为 53 条连接、52 个 Provider、2 个 Combo、1 个高权限 API Key、SQLite quick_check=ok、迁移 133。2026-08-04 当前运行基线为 52 条连接、51 个 Provider、2 个 Combo、2 个 API Key,其中双角色免费路由均包含 195 个已筛选候选、覆盖 24 家 Provider;旧 Docker、Redis、兼容数据目录和自定义版本目录均已清理。未来任何上游更新必须先备份完整原始数据、完成迁移差异评估、隔离启动并等待 Provider 加载、认证 API 数量核对、协议 Smoke 和数据快照回滚验证。

Runtime 只根据 Agent 角色、任务类型、数据敏感度和业务质量要求选择允许的 OmniRoute 模型/Combo;具体 Provider、连接、延迟、额度、成本、健康和回退由 OmniRoute 决定。未脱敏的私有数据不得发送到未经批准的模型策略。

Runtime 必须记录模型调用的官方脱敏事实、业务成本、基础设施成本、任务质量、失败、真实收入和净收益;Provider 配额和原始成本账本留在 OmniRoute。Runtime 可以通过固定只读观测适配器周期读取 OmniRoute 的聚合用量、缓存健康、延迟、遥测和配额池数量,并保存脱敏快照供 Console 展示;不得透传管理 API、原始调用日志、账号/API Key、Provider/模型分组或请求正文,也不得据此修改路由。自动化成功不等于商业盈利成功。

阶段三两层运行模型

AI Boss Agent、逻辑 Worker、Runtime 策略选择器、任务图、审核和 Console 状态运行在主节点 AI Runtime;Provider/模型路由由主节点官方 OmniRoute 承担。抓取、解析、去重和计算等可并行无状态子任务由 NomadAdapter 提交到 101/103 Docker Worker。结果经 StorageAdapter/FeedbackAdapter 回收,AI Boss 再审核、修正和汇总。该模型复用现有 Network、Nomad、Compute、Storage 底座,不新增第二调度器或 Gateway 任务提交接口。

Provider 管理与配置稳定性

Console 只展示 OmniRoute 的非敏感健康、连接/Provider 数量、模型策略和 Runtime 业务成本,并提供官方 Dashboard 入口;不执行 Provider CRUD、密钥预览、模型刷新或免费来源启停。Runtime 通过 OmniRoute 官方目录和受控 /v1 入口获取模型能力。

每项新任务只持久化非敏感 OmniRoute 模型策略快照,包括路由类型和模型/Combo ID;运行中任务保持该快照。Provider 密钥只属于 OmniRoute,不写入 Runtime SQLite、浏览器、事件、Worker、普通日志或 Git。

OmniRoute 分析面与 Runtime 反馈边界

官方 Dashboard 的分析页面应充分作为模型运行观察面使用,但不成为第二个 Runtime 控制面:

官方分析模块 OmniRoute 权威事实 Runtime 可用方式 禁止事项
用量、组合健康、利用率、Provider 统计 上游请求、Token、成本、延迟、Provider/Combo 分布和容量 只读聚合后与任务质量、预算和告警关联,供 Benson 审核策略 用这些数据直接选择 Provider、修改 Combo 或伪造业务成本
缓存、压缩 命中、节省、保真回退和配置效果 只读判断是否需要重新评估官方配置 在 Runtime 重建缓存/压缩器,或因统计存在而自动启用压缩
搜索、评估 官方搜索工具的调用效果、模型路由 Eval 套件与结果 将已完成的官方评估引用关联到任务复盘 把搜索内容、Eval Case、原始日志复制到 Runtime,或把模型 Eval 代替业务验收

未来如需由 Runtime 消费这些数据,只能新增固定只读的 OmniRouteAnalyticsAdapter:白名单端点、固定时间窗口、脱敏聚合和任务关联是其完整职责;不得提供浏览器透传、任意路径、写操作或自动调整路由。当前 3.8.49 的普通模型 Key 对这些分析接口没有读取权限,因此在上游提供最小只读 scope 前,不为分析页额外扩大 Key 权限;Runtime 现有管理 Key 兼容边界也不构成向模型或浏览器开放分析管理能力的授权。

Runtime 模型调用实现层

AI Runtime 的唯一通用 Provider 调用仍是 OmniRouteAdapter:它把任务快照允许的模型/Combo 传给官方服务,回收脱敏的 Provider/model/attempt/usage/error 事实;官方响应缺失的事实写为 unknown。AI Boss 另有一个受限 CliAgentGatewayAdapter,只转发固定后端 ID、获准的数据范围和白名单推理强度到隔离 Gateway,不复制 Provider Registry,也不承担自动回退。外部 Codex/Claude 提供商通过 Console 的单模型通道管理接入:填写独立服务 URL/Key、读取或手填模型、真实 Smoke 后才能保存和启用;静态未配置候选不保留。绝不复制桌面 Codex 会话或凭据。完整关系与失败边界见 Runtime 模型调用适配层

Runtime 原样记录 OmniRoute SSE 返回的 USD 上游成本;人民币业务成本只在存在明确换算与业务规则时标记为精确。缺少 Token、成本或换算依据时显示未知,不得以 0 冒充精确成本;Provider 原始成本与用量权威留在 OmniRoute。

AI Runtime 的 Provider、AI Boss 审核和 Nomad 失败通过现有 API Gateway 告警中心进入 Console。该回程只使用 Runtime bridge 到 Gateway 私有监听 172.30.70.1:39120 的 HMAC 脱敏事件,不经过浏览器或公网,也不让 Gateway 进入 AI 任务执行链路。Benson 点击告警只标记已读;点击“交给 AI Boss 自动处理”才在 Runtime 创建 Incident。AI Boss 将诊断、允许的自动动作、结果、证据和下一步建议回写为独立处置状态,Gateway 只保存和展示,不提交 AI 任务。只有原故障真实恢复才标记“已处理”;否则明确为诊断完成并等待 Benson 选择,不提供虚假的处理按钮。处理记录不触发任务重试、不改变 Provider、不调整 Nomad,也不构成审批。

阶段三完成证据以阶段三完成归档为准。原阶段四完成归档继续证明此前对话、预算、上下文、记忆、附件、多模态、SSE、CLI Gateway 与 API Gateway 验收;重新开启后的结构化编排与通用成果最终出口见阶段四最终归档。阶段五至阶段八均已完成并归档;P8 归档事实见阶段八完成归档

MCP 是工具能力协议,不是调度系统。MCP 工具由 ToolAdapter 调用,不能直接读取 Nomad、Storage、Docker Socket 或主机敏感凭据。

阶段三使用官方 OmniRoute MCP 的工具目录、执行、scope 和原始审计。Runtime 只保留 omniroute_get_healthomniroute_list_models_catalogomniroute_simulate_routeomniroute_cost_reportomniroute_web_searchomniroute_web_fetch 白名单,以及任务关联、摘要和哈希。模型级 Guardrails、Evals 与通过质量门槛的 Compression 同样由 OmniRoute 承担;Memory、A2A、Cloud Agent、Context Sources 和危险 Skills 不进入阶段三生产链路。

Codex 工程 Specialist 仍是未来能力,不是 Runtime 核心服务。当前新增的 Codex CLI 后端仅用于 AI Boss 的一次性文本推理备用,不挂载 Git worktree、不允许工具、不返回补丁,也不能自动合并、推送或改变生产状态;两者不得混为同一个能力。

六、持续反馈与运行边界

应用输入、外部平台边界、结果、成本、模型额度和失败退出不是 Runtime 的隐藏前置门禁。它们由 AI Boss Agent 与专业 Agent 在受控运行中记录、复盘和调整;应用只能使用 Benson 明确提交的数据和已登记能力,不能自行扩大来源或动作范围。

系统可以实现自动化闭环,但不承诺必然盈利。自动化成功和商业收益成功必须分开记录;数据保护、凭据保护和平台规则遵守是硬边界,不扩展成审批或 Go/No-Go 流程。

当前阶段:P9(阶段九)隔离 Tailnet 临时远程协助节点(实施中)

P9 是授权技术支持的独立运维边界:目标设备使用一次性 Headscale Auth Key 以 tag:temporary-support 加入隔离策略,主机侧通过 SSH 维护。它不注册 Nomad Worker、不获得 Cloudreve、OmniRoute、Headscale 管理面或 Codex 系统权限。当前系统 Codex 只在主机侧读取诊断输出并协助操作员生成步骤;AI Boss 不直接向临时设备下发命令。