这里所说的“客户端”,不是浏览器、手机或一台终端设备,而是一个具备完整能力的专业 Agent。它有自己的身份、模型或 Provider 配置、领域指令、工具、工作环境和权限边界,能够接收一个子目标并独立完成任务。
例如,HS Dev Admin 是具备发布能力的 Agent:它理解部署目录、脚本、服务器连接、备份与验证流程;外贸开发助手是另一类专业 Agent:它拥有外贸业务与开发相关的上下文、工具和工作方法。它们不是 Codex Master 的“远程手脚”,而是可以独立负责结果的能力节点。
Codex Master 则位于更高一层。它不是又一个什么都做的 Agent,而是 Agent OS:管理 Agent、任务、记忆、规划和调度,并把一个目标组织成可执行的 Agent Graph。
01 / 一个完整能力 Agent 是什么
Agent 不应该只是一段提示词,也不只是一个模型接口。一个能够进入生产协作的 Agent,至少包含以下部分:
- 身份:有稳定的 Agent ID,能够说明自己是谁、由谁维护、当前是否在线。
- 能力清单:明确能做什么、需要哪些输入、会输出什么,以及不能做什么。
- 智能配置:可以有自己的模型、Provider、系统指令和领域知识,但不因此成为全局规划者。
- 工具与环境:拥有实际完成任务所需的代码目录、服务接口、运行环境或远程连接。
- 权限边界:密钥和高风险权限留在 Agent 所在环境,由 Agent 根据任务范围决定是否执行。
- 任务状态:能够开始、继续、停止、等待批准和恢复同一个任务,而不是每次都重新来过。
- 结果契约:返回结构化状态、产物、验证证据和异常,而不只是一段“已经完成”的文字。
“完整能力”并不等于“拥有所有权限”。相反,越专业的 Agent,能力边界通常越清楚。发布 Agent 不必访问客户资料;外贸开发助手也不应该持有生产服务器密钥。
02 / Codex Master 是 Agent OS
Agent OS 解决的不是某个领域任务,而是整个 Agent 系统如何运行。Codex Master 的核心职责可以分成五类:
| 能力 | Agent OS 的职责 | 专业 Agent 的职责 |
|---|---|---|
| 发现 | 维护 Agent 注册表、在线状态、能力清单与版本 | 准确声明自身能力、约束和可用环境 |
| 规划 | 把用户目标拆解为任务,确定依赖、并行关系与验收条件 | 判断分配给自己的子目标是否可执行 |
| 调度 | 根据能力、环境、Provider、可用性和风险选择 Agent | 在本地权限边界内执行,不擅自扩大目标 |
| 记忆 | 维护跨任务、跨 Agent 的项目上下文和决策记录 | 维护领域内的工作状态与必要上下文 |
| 治理 | 控制预算、超时、审批、重试、停止和全局审计 | 返回证据、异常和实际副作用 |
Agent OS 选择的是哪个 Agent 来承担这个节点,不只是选择一个模型名称。模型是 Agent 的智能配置之一;环境、工具、权限和领域能力同样决定任务能否完成。
03 / Agent Graph 是可执行的协作计划
单次调用只能表达“把任务交给某个 Agent”。当目标需要调研、开发、发布和验证共同完成时,就需要 Agent Graph。
Graph 中的节点不是一句模糊指令,而是一项可以独立验收的 Agent 任务。一个节点至少应包含:
- 由哪个 Agent 或哪类能力执行;
- 明确的目标、输入引用和上下文范围;
- 依赖哪些上游节点,允许与哪些节点并行;
- 超时、重试、人工审批和失败处理策略;
- 验收条件、输出产物和下游可见范围。
边表示的不只是先后顺序,还可以表达产物传递、条件分支、审批门、失败回退和结果汇合。Graph 可以由系统根据目标生成,但执行前必须形成稳定版本;运行中发生变化,应记录为新的图版本或明确的动态分支。
- 目标进入:“完成独立站功能更新并发布”。
- 构建 Graph:需求核对 → 源码修改 → 测试 → 发布 → 在线验证。
- 选择 Agent:外贸开发助手承担业务与开发节点,HS Dev Admin 承担发布与生产验证节点。
- 传递产物:上游输出代码版本、变更说明和测试证据,下游只获得发布所需内容。
- 执行门控:测试未通过时不进入发布;生产变更需要批准时,Graph 进入等待状态。
- 汇总结果:Codex Master 收集每个节点的状态和证据,形成整个目标的最终结论。
这样,失败不会变成一句笼统的“任务失败”。系统能够指出是哪个节点、哪个 Agent、哪项验收条件没有满足,并从合适的位置继续。
04 / 调度的是能力,不是 Agent 名字
早期系统可以直接指定“调用 HS Dev Admin”。但当同类 Agent 增多后,图节点应该更多地声明所需能力,例如:
- 能够访问指定代码工作区;
- 支持某种构建和测试环境;
- 具备目标服务器的发布权限;
- 能够产生备份、原子替换和在线校验证据;
- 满足指定模型、成本、时延或数据驻留要求。
Codex Master 再根据注册表选择具体 Agent。这样可以替换节点、扩容同类能力,也能在某个 Agent 离线时判断是否有等价节点,而不是把流程写死在一个名称上。
能力声明不是授权凭证。Agent 表示“我能发布”,不代表任何任务都有权让它发布。每个任务仍需携带目标范围、发起者、审批状态和有效期;Agent 在本地再次校验后才执行。NIST SP 800-207关于按会话、最小权限访问资源的原则,可作为这种任务授权设计的基础。
05 / Agent 之间传产物,不传全部上下文
Agent Graph 很容易演变成“把所有对话发给所有 Agent”。这既增加成本,也会模糊责任和泄露不必要的信息。
更合理的方式是让节点通过结构化产物协作:
- 开发节点输出代码版本、变更摘要、测试结果和已知风险;
- 发布节点接收经过验收的制品、目标路径和发布策略;
- 验证节点输出响应状态、内容校验值和可回滚依据;
- Codex Master 保存产物引用、节点状态与决策,不强制复制全部原始数据。
跨 Agent 的令牌也不应直接透传。作为一种具体协议参考,MCP 授权规范要求令牌绑定目标资源,并禁止把收到的令牌原样转交下游。Agent OS 可以协调身份与授权流程,但专业 Agent 仍应只持有自己执行所需的凭据。
06 / Agent Graph 必须可观测、可继续
多 Agent 系统的可观测对象不只是模型调用,而是整张图的运行状态。界面和审计记录至少应回答:
- 当前运行的是哪个 Graph 版本,哪些节点等待、运行、完成或失败;
- 每个节点由哪个 Agent 执行,为什么选它;
- 节点消费了哪些输入,产生了哪些产物和业务副作用;
- 哪一步等待用户批准,谁做了批准或拒绝;
- 失败后是重试原节点、切换 Agent、走补偿分支,还是终止整张图。
OpenTelemetry的 Trace、Metric 和 Log 可以承载跨服务的技术可观测性;Agent OS 还需要增加 Graph、节点、Agent、审批、产物和业务副作用之间的关联。
任务续接比自动重试更重要。Codex Master 应续接同一个节点任务,保留原 Task ID 和进度;只有确认任务没有执行或具备幂等条件时,才重新提交。否则一次网络超时可能触发两次发布或两次外部操作。
07 / 多 Agent 不等于多 Agent 聊天
Agent Graph 的价值不是让多个 Agent 自由讨论,而是把责任拆清楚。每个节点都应有负责人、目标、输入、输出、预算和退出条件。能用确定性程序完成的校验,不必再调用一个 Agent;能并行的节点并行,存在生产副作用的节点严格串行。
一个可落地的演进顺序是:
- Agent Registry:先把 Agent 身份、能力、状态和调用协议统一起来。
- Direct Task:由 Codex Master 选择一个 Agent,提交并持续跟踪同一个任务。
- 固定 Graph:把已经稳定的开发、测试、发布流程配置成显式节点和依赖。
- 动态 Graph:由规划能力根据目标生成候选图,经策略检查后执行。
- 治理闭环:用历史运行数据评估 Agent 选择、失败路径、成本与验收质量。
Agent 是能力节点,Codex Master 是系统
这种架构下,HS Dev Admin、外贸开发助手以及未来更多专业 Agent 都可以独立演进:更换模型、增加工具、迁移环境,而不必把所有能力重新塞进一个超级 Agent。
Codex Master 负责把它们组织成系统。它理解全局目标,维护记忆和计划,通过 Agent Graph 安排协作,并持续观察每个节点是否真正完成。
未来的重点,不是让每个客户端各自拥有一个大模型,而是让每个专业 Agent 成为可靠的能力单元,再由 Agent OS 把这些能力编排成结果。
本文中的“客户端”特指接入 Agent OS 的完整能力 Agent,不是终端设备或轻量 Runtime。Agent Graph 是对多 Agent 任务、依赖、分支、审批和产物关系的可执行表达。