OpenAI Agents SDK 大升级:把 Harness 和 Sandbox 做进 SDK,和 Anthropic 路线相反
OpenAI 在 2026 年 4 月 15 日给 Agents SDK 做了一次大升级,核心是把 harness 和 sandbox 这两件事做进了 SDK。过去开发 agent 要自己 wire agent loop、自己维护 tool integration、自己处理 retry 和 state,现在这些全由 SDK 托管。Anthropic Claude Agent SDK 走的路线刚好是对立的方向
从自己造轮子到 SDK 托管全流程
OpenAI 官方用一张对比图把这次升级的核心价值说清楚了。左边是传统做法,开发者要自己搭建 Agent Loop(接收请求、路由到模型、调用工具、更新上下文、生成响应),还要自己集成 Web Search、File Search、MCP、Code Interpreter、Skills、Remote MCP 等一堆工具,最后还要自己写 Message Handling、Model Interface、Tool Manager、Context Management 这些组件

右边是用 Agents SDK 的效果。Agent Loop 由 SDK 处理,Built-in Tools 一个 SDK 连接所有工具,Key Components 全部预置。开发者只需要关注业务逻辑本身。OpenAI 在图里用了一条警告横幅:"Retries, auth, state, and edge cases are on you"(重试、认证、状态和边界情况都归你管),这一行直接点出了传统做法的痛点
更关键的是 SDK 支持 100+ 非 OpenAI 模型,只要暴露 Chat Completions 兼容端点就能接入。这不是绑死 OpenAI 自家模型的封闭工具链
Harness 架构的根本性重构
这次升级里最技术性的改动是 harness 和 compute 的分离。OpenAI 给出了 before/after 对比图,能直观看出架构演进

左边的 "Harness in compute" 是传统设计:Server/Agent Harness 把编码 agent 作为工具启动,直接扔进 Sandbox 里执行。Harness、Agent Loop、MCPs/Tools 全部挤在 Sandbox 内部。Filesystem 和外部数据访问都要经过 Gateway Service 拦截,防止编码 sandbox 执行不可信的 HTTP 请求。整个设计的问题在于:harness 和 compute 耦合在一起,一旦 sandbox 崩溃,整个 agent 状态就丢了
右边的 "Harness separate from compute" 才是新架构。HARNESS(包含 AGENT LOOP 和 MCPS/TOOLS)被抽到 Sandbox 外部,可以跑在任何地方(Temporal、AWS、Azure)。Sandbox 变成纯执行环境,集成了 OpenAI、E2B、Daytona、Cloudflare、Vercel、Modal、Runloop、Blaxel 等多家提供商。Filesystem 支持本地挂载或 AWS S3、Azure Blob Storage、Google Cloud Storage 这些云存储
分离后的好处很明显:Secrets 由 Server 管理,不会进入模型生成的执行环境,安全边界更清晰;Server 可以从可信环境访问数据库和 Web,编码 sandbox 只负责执行 shell 命令、grep 文件、写代码这些计算任务;Harness 崩溃重启不影响 Sandbox 里的执行状态,通过内置的 snapshotting 和 rehydration 实现长时任务的状态恢复
Sandbox 原生集成 7 家提供商
sandbox 执行没有走 OpenAI 自建一套的路线,直接把 7 家云服务商接进来让开发者自选。Blaxel、Cloudflare、Daytona、E2B、Modal、Runloop、Vercel 都在首批集成名单里。开发者可以继续用自己的 sandbox 基础设施,也可以直接用这些托管方案
配套推出的 Manifest 抽象是个关键设计。它让 sandbox 环境变成可移植的,开发者可以声明要挂载的本地文件、输出目录、连接的云存储,然后换一家 sandbox 提供商也不用改代码。这种抽象层对企业很重要,因为合规和成本会让企业在不同云之间切换

Subagents 和 Code Mode 即将推出
OpenAI 还预告了两个新能力:subagents 和 code mode,两个都会同时支持 Python 和 TypeScript
Subagents 让编排 agent 可以 spawn 专用的子 agent,实现模块化、可并行的任务分解。传统做法是在一个 agent 内部处理所有事情,subagents 允许把不同专长拆开,比如一个子 agent 专门做网页抓取,另一个专门做数据清洗,主 agent 负责协调
Code Mode 给 agent 加了专业的代码执行和生成能力,让开发者能在 SDK 里直接构建 coding agent。这是把 Codex 这种产品级能力下沉到 SDK 层面

工具集成:MCP + Skills + AGENTS.md + apply_patch
新 harness 对工具集成做了统一。Model Context Protocol(MCP)负责工具调用的标准化协议,这个是 Anthropic 提出的开放标准,现在 OpenAI 也全面采纳。Skills 负责渐进式披露,agent 不需要一次性加载所有工具,而是按需调用
AGENTS.md 是自定义指令的载体,类似 CLAUDE.md 的概念,开发者把项目特定规则写进这个文件,agent 启动时自动加载。apply_patch 工具专门做文件修改,shell 工具做代码执行
这套组合直接对标 Claude Code 的工具链。Anthropic 这边是 CLAUDE.md + Skills + Tools,OpenAI 这边是 AGENTS.md + Skills + apply_patch。两家在 agent 工具链的设计哲学上正在快速收敛

和 Anthropic 走了完全相反的路
OpenAI 这次升级和 Anthropic 10 月发布的 Claude Agent SDK 路线差别很大。Anthropic 把 Claude Code 的核心能力抽出来做成 SDK,让开发者自己组装 agent loop,思路是「给你工具箱你自己搭」。OpenAI 这次相反,把 agent loop 做进 SDK,开发者只管配置不管实现,思路是「SDK 帮你搭好你只管用」

这两种路线没有优劣之分,适用场景不同:
- 想要深度定制、对 agent 执行过程有完全控制的开发者,Anthropic 的路线更合适
- 想要快速上手、不想操心底层架构的企业团队,OpenAI 的新 SDK 更省心
Python SDK 已经可用,TypeScript 支持稍后推出。定价按标准 API token 和工具使用量计费,没有额外的 harness 费用
订阅 Newsletter,免费获取完整手册
Subscribe即送《AIP出海自媒体实战手册》完整版,还有每周AI精选内容推送
Jason Zhu
前AI算法工程师 | AI博主