第 02 模块 · 1 节

云端沙箱的工作原理

《Codex 基础入门》02 环境与沙箱 · 本节时长 24 分钟

为什么 Codex 敢「大胆」改东西

你可能好奇:Codex 怎么敢大改文件、跑命令,不怕把你电脑搞坏?答案就在它的核心设计——云端沙箱。这一节讲沙箱的工作原理。

贯穿项目我们的 text-tools 会一路在沙箱里长大:工作区建在沙箱、代码写进沙箱、命令跑在沙箱。理解了沙箱,你就知道为什么可以让 Codex 放心大胆地反复改——改坏了重来就行,不碰你的电脑。

沙箱是什么

沙箱(Sandbox)是一个隔离的执行环境。Codex 在沙箱里改代码、跑命令,这个环境和你真实的电脑是分开的。

就像小孩子在沙坑里玩,玩得再乱,也只是乱在沙坑里,不会弄脏整间屋子。

Codex 干活的位置:云端沙箱(隔离)
   ├─ 读代码 ✅
   ├─ 改文件 ✅(改在沙箱里)
   ├─ 跑命令 ✅(跑在沙箱里)
   └─ 不直接弄乱你的本机 ✅

一个最直观的可复制示例——让 Codex 在沙箱里建一个目录看看:

codex "在沙箱工作区里新建一个名为 sandbox-test 的目录,并在里面放一个 readme.txt"

你会看到它真的在云端创建了文件,而你本机什么都没多出来。这就是「隔离」最直白的体现。


沙箱带来三个好处

好处 说明
安全 它乱改也乱不到你的本机
大胆 因为安全,它敢放心地改、放心地试
干净 环境可重建,搞砸了重新来

理解了沙箱,你就懂为什么 Codex「敢大胆改、改完再让你看」。

对新手最实用的是「干净」这条:你不用担心「它会不会把我项目搞坏」。就算 Codex 把沙箱里的东西改得乱七八糟,也不影响你的真实文件——最坏情况就是重新让它建一遍。


沙箱怎么隔离

隔离主要体现在:

  • 文件系统:沙箱里有自己的文件视图,改动不直接落到你本地
  • 进程:命令在沙箱环境里运行,不碰你的系统
  • 网络/权限:沙箱可以限制它接触的东西

隔离的深浅可以配置,但核心理念一致:给 AI 一个「安全试错」的空间。

一个排查示例——如果 text-tools 的代码「神秘消失」,先查是不是沙箱问题:

codex "列出当前工作区里所有文件和目录,把结果打印给我"

这条命令能让你看到「沙箱里到底有什么」,快速确认东西在不在、在哪个目录。


沙箱的代价

安全是有代价的,你要清楚:

  • 结果要同步:沙箱里改的东西,可能需要同步/导出到本地,才能落到你的项目里
  • 环境不同:沙箱和本地环境可能有差异,跑通了也不代表本地 100% 一样

所以「它在沙箱里跑通了」≠「你本地直接能用」,你要验收并同步结果

提醒text-tools 时尤其要养成习惯:每次干完一批活,主动让 Codex「把成果同步/导出到工作区」并确认文件在。别让成果「留在沙箱里没人拿」。

一句话理解

沙箱 = 给 Codex 的「练习场」:安全试错、干净可重建,但它的成果需要你验收后拿回本地。


落地练习:给 text-tools 建出云端工作区

现在就把我们的贯穿项目在沙箱里「落个户」,真实走一遍「在云端建东西」的感觉:

  1. 让 Codex 在沙箱工作区建一个项目目录:codex "创建目录 text-tools"
  2. 让它在里面建一个说明文件:codex "在 text-tools 里创建 README.md,第一行写:云端文本处理工具"
  3. 让它列出目录确认:codex "列出 text-tools 目录里的所有文件"

怎么判断做对了?——第 3 步能列出 README.md,说明你在沙箱里成功建出了工作区。此时你的本机文件夹里应该什么都没有,这正是「云端 + 隔离」的体现。

卡住了怎么办? 列表里没有 README.md?可能是工作目录不对,先 codex "打印当前工作目录" 确认位置,再让它在正确目录里建。目录名拼错了?直接用 codex "列出工作区所有目录" 看看现状再建。


常见坑:成果留在沙箱,忘了拿回来

新手最常踩的坑:Codex 在沙箱里干得热火朝天、文件也建了、代码也写了,但你从没让它把成果同步/导出,于是一换会话或一换环境,东西就「没了」——其实不是没了,是还在沙箱里,没拿到你能访问的地方。

正确做法:干完一批活就同步一次。每次结束前问自己「沙箱里的成果,拿到我该拿的地方了吗」。养成这个习惯,比任何技巧都重要。


小结

  1. 沙箱 = 隔离的执行环境,Codex 在里面干活
  2. 好处:安全、大胆、干净
  3. 代价:结果要同步到本地、环境可能有差异
  4. 它在沙箱跑通 ≠ 你本地直接能用,要验收
  5. 我们已在云端建好了 text-tools 工作区

下一节,讲会话、上下文与工作目录。