课程目录

本篇听书

3 分钟 · 双主持人讲解

配套视频里没有与本篇对应的段落

AI课程 / OpenAI Codex / 06 · 安全与沙箱
OpenAI Codex OpenAI 的智能体编程工具 · 第三方系统课整理 06 · 安全与沙箱
Untrusted几乎每个动作都要批准陌生代码/敏感环境Request危险动作才问日常默认Full-Auto不打断,全自动受控沙箱/CI 越上越严 ←→ 越下越自动(沙箱 Bubblewrap / Seatbelt 始终隔离执行)
Codex 审批策略 + 沙箱:在「放手」和「失控」之间分级

06 · 安全与沙箱

05-计划模式与项目开发 | 下一篇 → 07-API-SDK-CICD集成


为什么要沙箱

智能体会自己跑命令、改文件。没有约束的话,一条 rm -rf 或一次误操作就能毁掉环境。Codex 用沙箱 + 审批策略两道闸门来保证「放手但不失控」。

沙箱技术

平台 沙箱实现 作用
Linux Bubblewrap (bwrap) 隔离文件系统/进程,限制可访问范围
macOS Seatbelt (sandbox-exec) 系统级沙箱,限制文件/网络
  • 沙箱把 Codex 的执行关在一个受控环境里:默认只能动项目目录,碰不到系统其他地方。
  • 网络访问默认受限,可按需配置(防止它随便联网拉东西)。

审批策略(Approval Policy)

控制「它执行动作前要不要问你」:

策略 行为 适合
Untrusted(最严) 几乎每个动作都要你批准 陌生代码、敏感环境
Request / On-Request 危险动作才问(写文件外、联网) 日常默认,平衡
Never / Full-Auto(最松) 不打断,全自动 受控沙箱/CI 里跑可控任务

经验:本地探索用 Request;CI/沙箱里跑可控任务用 Full-Auto;碰不熟的仓库用 Untrusted。

配置项(概念)

  • 选择沙箱模式 / 审批级别
  • 是否允许写项目目录外
  • 是否允许网络访问
  • 把规则写进配置文件,团队统一

排错

  • 「命令被拒绝/卡在审批」→ 检查当前审批策略是不是太严。
  • 「它装不上依赖」→ 可能网络被沙箱挡了,按需放开网络。
  • 「想全自动但总被打断」→ 切 Full-Auto,但务必在沙箱/可回滚环境里

与 Claude Code 的对照

Claude Code Codex
护栏机制 权限提示 + Hooks 沙箱 + 审批策略
哲学 可编程拦截(Hook 脚本) 系统级隔离 + 审批分级

本节实操

  • 看当前用的是哪种审批策略,试着切换观察差别
  • 在一个测试目录里开 Full-Auto 跑一个任务,体会「放手」
  • 故意让它跑一个写目录外的命令,看沙箱怎么拦

下一篇 → 07-API-SDK-CICD集成

AI Know · 跨越信息鸿沟,带大家用 AI 掌握未来科技