Windows 原生沙箱先 elevated,读目录用斜杠命令补

原生 Windows 不必先上 WSL。elevated 是正选;没管理员权限再退 unelevated。沙箱读不到的目录用 /sandbox-add-read-dir。

桌面应用、CLI、IDE 扩展都能在 Windows 上跑原生沙箱,不必先开虚拟机。

[windows]
sandbox = "elevated"    # 推荐:独立低权限用户 + 防火墙
# sandbox = "unelevated"  # 管理员批准被拦时的退路

elevated 会建沙箱用户、文件系统边界和防火墙规则。unelevated 只用当前用户的受限 token,网络隔离更弱。企业可用 requirements.tomlallowed_sandbox_implementations 禁止退回 unelevated。

沙箱里读不到某个目录时,路径必须是已存在的绝对路径:

/sandbox-add-read-dir C:\absolute\directory\path

只对当前会话有效。报错 1385 通常是沙箱用户没有所需登录权限,把 CODEX_HOME/.sandbox/sandbox.log 交给 IT,不要把 .sandbox-secrets/ 发出去。

setup refresh / SetNamedSecurityInfoW failed: 5 时,先看 .git.codex.agents 的所有者是不是变成了 CodexSandboxOffline。关掉所有 ChatGPT.exe 后,用管理员 PowerShell 把所有权改回自己的账户,再重开。这是 ACL 残留,不是 Git 坏了。

Windows 11 是推荐基线;Windows 10 要 1809 以上且有 ConPTY。需要 Linux 工具链再回 WSL。沙箱弹出的窗口看不见,先查 windows.sandbox_private_desktop,不要改成 unelevated。

来源