🧠 图解记忆: Sandbox Agent 用隔离环境执行高风险操作,让文件、网络和命令权限变得可控。
💡 答案要点
v0.14.0 核心新特性:Sandbox Agent
2026年4月,OpenAI Agents SDK 发布 v0.14.0,其中最重大的新功能是 Sandbox Agent —— 传统 Agent 的能力边界被彻底打破。
传统 Agent 的局限性:
| 问题 | 说明 |
|---|---|
| 只读上下文 | Agent 只能基于输入的文本生成输出,无法操作真实文件系统 |
| 无法执行代码 | 只能"建议"怎么做,不能真正去跑、去验证 |
| 跨长时间任务脆弱 | 长任务中上下文丢失,状态无法延续 |
Sandbox Agent 的解决方案:
传统 Agent:
用户输入 → LLM推理 → 输出文字建议 → 用户手动执行
Sandbox Agent:
用户输入 → LLM在沙箱中执行 → 真实文件系统操作/命令运行 → 结果返回
↑ 独立沙箱环境,持久化工作区状态核心架构:
python
from agents import Runner
from agents.run import RunConfig
from agents.sandbox import Manifest, SandboxAgent, SandboxRunConfig
from agents.sandbox.entries import GitRepo
from agents.sandbox.sandboxes import UnixLocalSandboxClient
agent = SandboxAgent(
name="Workspace Assistant",
instructions="检查沙箱工作区后再回答",
default_manifest=Manifest(
entries={
"repo": GitRepo(repo="openai/openai-agents-python", ref="main"),
}
),
)
result = Runner.run_sync(
agent,
"查看仓库 README 并总结这个项目是做什么的",
run_config=RunConfig(sandbox=SandboxRunConfig(client=UnixLocalSandboxClient())),
)
print(result.final_output)关键概念解析:
| 概念 | 说明 |
|---|---|
| Manifest | 定义沙箱初始化时的文件/目录状态(可以是 Git 仓库、本地目录等) |
| GitRepo entry | 初始化时自动 clone 指定仓库到沙箱,Agent 可以直接阅读和修改 |
| UnixLocalSandboxClient | 本地 Unix 沙箱执行器(真实文件系统操作) |
| SandboxRunConfig | 沙箱运行配置(超时、资源限制、持久化策略) |
vs 传统 Agent 的核心区别:
| 维度 | 传统 Agent | Sandbox Agent |
|---|---|---|
| 执行能力 | 仅文本生成 | 可读写文件系统、执行命令 |
| 工作区状态 | 无状态,每次独立 | 持久化工作区,跨任务保持 |
| 代码验证 | 无法运行 | 可以真正执行并验证结果 |
| 适用场景 | 问答、写作、分析 | 代码开发、数据处理、自动化脚本 |
| 安全风险 | 低(只读输出) | 需要沙箱隔离 |
v0.14.0 其他更新:
- Realtime Agents — 支持 GPT-Realtime-1.5 语音 Agent
- Guardrails 增强 — 输入/输出安全验证更完善
- Tracing 改进 — 更详细的 Agent 运行追踪
面试话术:
"Sandbox Agent 是 OpenAI Agents SDK 的重大突破——它让 Agent 从'能说不能做'变成了'能说也能做'。传统 Agent 只能生成文本建议,Sandbox Agent 可以在隔离的沙箱里真正读写文件、执行命令、跑代码验证。对于 AI 编程场景,这意味着 Agent 不仅能给你代码建议,还能自己 checkout 仓库、改文件、跑测试、验证结果。v0.14.0 还支持 Realtime Agents,可以用语音控制 Agent 工作。2026年的 Agent 已经不只是'顾问',而是真正的'工作者'了。"
版本: v2.23 | 更新: 2026-04-20 | by 二狗子 🐕
