createSandbox / create_sandbox 总是需要一个快照,可以通过 ID(snapshot_id / snapshotId)或名称(snapshot_name / snapshotName)指定。构建一次快照,然后可以根据需要从中启动任意数量的沙盒。
你也可以从一个正在运行的沙盒中捕获快照——安装包、写入数据文件或配置状态,然后将结果快照并将其作为新的起点重复使用。

从 Docker 镜像构建快照
通过指向任何 Docker 镜像来构建快照。该调用会阻塞直到快照就绪(默认超时为 60 秒;对于大型镜像可以增加超时时间)。私有注册表
传递注册表凭据(或预先注册的registry_id / registryId)以从私有注册表拉取镜像。
从正在运行的沙盒捕获快照
从现有快照启动一个沙盒,安装包或准备数据,然后将结果捕获为新的快照。返回的快照会将其source_sandbox_id 设置为从中捕获的沙盒,并且可以作为任何后续 create_sandbox 调用的 snapshot_id 使用。
捕获仅保留持久文件系统。安装的包(位于
/usr/local、/root、/opt、主目录等下)以及你写入这些位置的文件会被保留。运行中的进程、打开的套接字、内存状态以及 /tmp 下的任何内容(这是一个 tmpfs)不会被带过来——启动新沙盒并重新启动你需要的进程。调整捕获时机
capture_snapshot 会阻塞直到新快照就绪。如果你的文件系统很大或存储后端较慢,请增加 timeout 关键字参数(默认 60 秒)。
列出、获取和删除快照
list_snapshots / listSnapshots 在服务器端进行分页(默认每页大小 50,最大 500),并接受可选的过滤器:name_contains / nameContains(名称上的不区分大小写的子字符串)、limit(1–500)和 offset(≥ 0)。通过推进 offset 来翻阅结果。停止和启动沙盒
沙盒可以停止和重启而不会丢失文件系统状态。你在上次运行期间写入的文件在沙盒重新启动后仍然存在。client.stop_sandbox(name) / client.start_sandbox(name),TypeScript 中为 client.stopSandbox(name) / client.startSandbox(name))。
后续步骤
将这些文档连接到 Claude、VSCode 等,通过 MCP 获取实时答案。

