跳至内容

软件技术分享

关于电子游戏的方方面面

  • 游戏评测
  • 游戏设计
  • 游戏产业
  • 行业杂谈
  • 开发者采访
  • 专题学习
  • 工具指南
  • 发布游戏
  • AI
  • 关于妙游社

Codex:终端命令审批与危险操作怎么设

作者 2026年10月30日 10:25

Codex 默认建议 Auto:工作区可写+越界/联网要审批;用 /permissions、.rules 禁高危命令,勿开全放行。

要点

  • 两层控制:沙箱(sandbox)管“命令技术上能碰什么”(写哪些目录、能否联网);审批策略(approval policy)管“越界时要不要问你”(Agent approvals & security、Sandbox,核验日 2026-10-30)。
  • 日常默认(官方 Auto 预设):--sandbox workspace-write --ask-for-approval on-request。工作目录内读改与常规本地命令可自动跑;改工作区外文件或需要网络时会要审批。有版本控制的文件夹官方更倾向 Auto;无版本控制更倾向 read-only。
  • 会话内切换:TUI/会话里用 /permissions 可切到只读浏览;用 /status 看当前工作区含哪些目录。菜单文案以当前客户端为准(待核)。
  • 高危习惯清单(人工纪律,非完整黑名单):rm -rf/递归删除、git push --force、乱改权限(chmod/chown 大范围)、管道下装(curl … | sh)、任意外网脚本。应用 .rules 的 prefix_rule+forbidden/prompt 收紧沙箱外命令(Rules)。
  • 不要默认开的:--dangerously-bypass-approvals-and-sandbox(别名 --yolo)=无沙箱+无审批,官方表标 Elevated Risk/不推荐;仅在你自备隔离环境时才考虑,本稿不展开绕过手法。
  • Cursor 对照:Settings → Agents → Approvals & Execution,多数人优先 Auto-review;另有 File-Deletion/External-File 等保护项。Cloud Agents 不走本地 Run Modes(Run Modes)。
  • 证据强度:沙箱/审批组合与 .rules 行为来自 OpenAI Learn 官方文档(高);“高危命令清单”为工程常识+官方 rules/链式拆分说明的归纳(中高);具体按钮中文名标待核。

正文

场景

Agent 能自己跑终端后,真正吓人的通常不是“写错一行代码”,而是它在你没盯着时执行了删除、强推、改权限或从外网拉脚本。审批不是为了刁难,而是把越界动作从自动变成“先问再跑”。

下文以 OpenAI Codex CLI/本地会话为主(含文档所述 IDE 扩展同套沙箱思路),并对照 Cursor 本地 Agent 的 Run Modes。目标是入门可跟做:默认怎么设、哪些操作要当高危、可抄的配置纪律。不写如何绕过安全边界。

可跟做步骤/可抄工作流

证据强度:高(OpenAI Learn approvals/sandbox/rules,核验日 2026-10-30);UI 入口名标待核。

  1. 先认两层词

– 沙箱:命令实际被允许写哪里、能不能出网。常见档位:read-only(偏只看)、workspace-write(工作区内可写,默认联网关)、danger-full-access(去掉文件系统与网络边界,高风险)。

– 审批:on-request(越界才问)、never(不再弹审批;仍受沙箱约束,除非你同时放开沙箱)。

  1. 个人开发机默认建议(可抄)

有 Git 的项目目录直接:

codex --sandbox workspace-write --ask-for-approval on-request

或写入 ~/.codex/config.toml/profile(键名以当前 Configuration Reference 为准):

approval_policy = "on-request"
sandbox_mode    = "workspace-write"
# 默认不要开网络;确有需要再显式打开并收窄
# [sandbox_workspace_write]
# network_access = true

只想先摸清仓库、暂不改文件:

codex --sandbox read-only --ask-for-approval on-request
  1. 会话里用 /permissions,别一上来全开

官方:Auto 下可在工作区自动读改跑命令;要聊天/规划不改文件时切 read-only。用 /status 确认工作区根与临时目录。审批提示若提供“仅一次/本会话”等范围,选最窄能继续任务的那档。

  1. 把“沙箱外仍危险”的命令写进 .rules

规则文件示例路径:~/.codex/rules/default.rules(项目层另有 .codex/rules/,仅在项目层受信任时加载;细则见官方 Rules 页)。示例意图:对删除、强推、curl 管道等使用 forbidden 或至少 prompt。以下为可抄纪律模板,落地前用本机 codex execpolicy check 自测。

# 示例:禁止以 rm 开头的命令在沙箱外直接执行(按需收紧 pattern)
prefix_rule(
    pattern = ["rm"],
    decision = "forbidden",
    justification = "删除请人工确认后本地执行,不要让 Agent 自动 rm",
)

prefix_rule(
    pattern = ["git", "push"],
    decision = "prompt",
    justification = "推远程前人工确认;尤其警惕 --force",
)

prefix_rule(
    pattern = ["curl"],
    decision = "prompt",
    justification = "外网下载与管道执行需人工看清目标",
)

官方说明:多条规则命中时取最严(forbidden > prompt > allow)。对 bash -lc '… && …' 这类线性安全链,Codex 会拆成子命令分别评估,避免“前面 git add、后面 rm -rf”被一条 allow 带过;含重定向/变量展开等复杂脚本时则整段保守处理。

  1. 验收三条(建议写进个人 checklist)

– 故意让 Agent 提一次“需要联网/写工作区外”的动作,确认会弹审批或被拒。

– codex execpolicy check --rules … -- 看决策是否符合预期。

– 改完看 git status/git diff;高风险操作宁可自己在终端敲。

  1. Cursor 本地 Agent 对照(同日可记一笔)

Settings → Agents → Approvals & Execution:

– Auto-review:允许列表立即跑;能进沙箱的 shell 进沙箱;其余交分类器。官方称对多数人最有用且相对稳妥。

– Allowlist:只自动跑你列出的动作。

– Run Everything:全部自动、无沙箱分类器——接受风险才用。

另有 Browser/删文件/工作区外写文件等独立保护。Cloud Agents 在独立机器跑,不适用本地 Run Modes。

真实用户诀窍/反例

  • 诀窍:先保留 on-request,再用规则收窄,而不是先关审批。 官方组合表把“workspace-write + on-request”标成日常 Auto;把 never 叠在 danger-full-access 上才是全放行。
  • 诀窍:网络默认关。 文档写 workspace-write 默认无网络;需要装依赖时再开,并考虑域名策略/代理类选项(企业环境另遵托管配置)。
  • 诀窍:.git 等在可写根下仍可能被标成受保护只读。 不要假设 Agent 能随便改 hooks/config;版本操作用你自己的 Git 流程更稳。
  • 反例:为少点几次确认直接 --yolo。 省掉的点击可能换成难回滚的删除或外泄。
  • 反例:把“信任这个文件夹”理解成“所有危险 shell 都免审”。 信任/工作区边界与沙箱外命令规则是不同层。
  • 反例:在无 Git 的目录开满写权限大改。 官方对无版本控制目录更倾向只读起步。

适用边界

  • 本稿覆盖:Codex 本地沙箱+审批默认、会话 /permissions、用 .rules 约束沙箱外命令、Cursor Run Modes 对照。不覆盖企业 MDM/托管 requirements.toml 全表,也不评测模型“会不会主动搞破坏”。
  • Auto-review/分类器(Codex 的 approvals_reviewer=auto_review 与 Cursor 的 Auto-review)会误判;官方均写明它不是绝对安全边界,关键操作仍要人审。
  • Windows/WSL2/Linux bwrap 等平台差异以当前 Sandbox 文档为准;容器内若宿主机拦了命名空间,沙箱可能不可用,此时应先修好隔离,而不是习惯性全放行。
  • UI 中文名、设置路径、默认预设标签:以你安装版本界面与官方文档为准(待核)。

【来源与编译】

  • Agent approvals & security|ChatGPT Learn/Codex|https://learn.chatgpt.com/docs/agent-approvals-security|核验日 2026-10-30(沙箱与审批两层、Auto 预设、组合表、yolo 风险标注、受保护路径、网络默认)
  • Sandbox|ChatGPT Learn|https://learn.chatgpt.com/docs/sandboxing|核验日 2026-10-30(沙箱与审批如何配合、模式释义)
  • Rules|ChatGPT Learn|https://learn.chatgpt.com/docs/agent-configuration/rules|核验日 2026-10-30(prefix_rule、forbidden/prompt/allow、链式命令拆分、execpolicy check)
  • Running Codex safely at OpenAI|OpenAI|https://openai.com/index/running-codex-safely/|核验日 2026-10-30(沙箱+审批+rules 工程实践旁证)
  • Run Modes|Cursor Docs|https://cursor.com/docs/agent/security/run-modes|核验日 2026-10-30(Auto-review/Allowlist/Run Everything、删文件保护、Cloud Agents 不适用)
  • 本文说明:中文编译“默认 Auto+规则收紧高危+勿全放行”;高危命令清单为纪律归纳而非官方穷尽黑名单;未提供绕过沙箱/审批的步骤;UI 标待核。

相关阅读

  • Cursor/Codex:先读再改——给 Agent 的开工清单
  • Claude:从 ChatGPT 迁过来的常用对照表
  • Grok:自定义指令/人设怎么写才不翻车
  • 用 Claude/ChatGPT 做游戏本地化:先冻术语表再批量译校
  • Claude 工具调用/自动化:什么时候不该开
  • Grok 看图提问入门:上传、怎么问、适用边界

浏览更多「AI」文章 ›

  • 要点
  • 正文
  • 场景
  • 可跟做步骤/可抄工作流
  • 真实用户诀窍/反例
  • 适用边界
  • 【来源与编译】

文章导航

上一篇Grok:自定义指令/人设怎么写才不翻车
下一篇Claude:从 ChatGPT 迁过来的常用对照表

相关文章

Cursor/Codex:先读再改——给 Agent 的开工清单 Cursor/Codex:先读再改——给 Agent 的开工清单 Claude:从 ChatGPT 迁过来的常用对照表 Claude:从 ChatGPT 迁过来的常用对照表 Grok:自定义指令/人设怎么写才不翻车 Grok:自定义指令/人设怎么写才不翻车

评测设计产业杂谈

软件技术分享

关于电子游戏的方方面面

栏目

  • 游戏评测
  • 游戏设计
  • 游戏产业
  • 行业杂谈
  • 开发者采访
  • 专题学习
  • 工具指南
  • 发布游戏
  • AI
  • 关于妙游社

本站

  • 首页
  • 隐私政策
  • 联系我们
  • 关于妙游社
  • 工具指南专题
  • 文章 RSS

关注公众号

沙漏社公众号二维码

© 2026 软件技术分享

沪ICP备19032461号-1

目录

×
  • 要点
  • 正文
    • 场景
    • 可跟做步骤/可抄工作流
    • 真实用户诀窍/反例
    • 适用边界
  • 【来源与编译】
→ 目录