| 说明 | 删除所有已停止的沙箱 |
| 用法 | sbx prune [flags] |
描述
删除所有已停止的沙箱及其关联资源。
只有已停止的沙箱才会成为清理对象 —— 正在运行的沙箱绝不会被删除, 因此可以放心地定期运行。如果你希望某个沙箱被清理,请先用 "sbx stop" 停止它。若要删除指定沙箱(无论其状态如何),请使用 "sbx rm SANDBOX"。
使用 --filter until=TIMESTAMP 可以把范围缩小到在 TIMESTAMP 之前停止的沙箱。 该值可以是 RFC 3339 时间戳、Unix 时间戳,或相对当前时间的 Go 时长 (例如 until=168h 会保留最近一周内停止的所有内容)。 如果守护进程无法报告停止时间的沙箱会被跳过,因为无法确定它已经停止多久。
使用 --dry-run 可以列出将被删除的内容而不实际删除,并可搭配 --format json 或 --format yaml 以获得机器可读的输出。
清理需要确认;使用 --force 可跳过确认提示(适用于非交互式脚本), 也可删除正在使用中的沙箱(例如有打开的 SSH 连接)。此操作无法撤销。
以每个成功清理的沙箱为作用域的密钥也会一并删除。
仅限本地:云端沙箱依靠 TTL 过期。
选项
| 选项 | 默认值 | 说明 |
|---|---|---|
--dry-run | 列出将被删除的沙箱,但不实际删除 | |
--filter | 筛选候选对象(支持:until=TIMESTAMP — 在 TIMESTAMP 之前停止) | |
-f, --force | 跳过确认提示,即使正在使用中也会删除(例如有打开的 SSH 连接) | |
--format | 输出格式:table、json 或 yaml | |
--json | 以 JSON 格式输出 |
全局选项
| 选项 | 默认值 | 说明 |
|---|---|---|
--cloud | 改为调用 Docker Cloud Sandboxes API,而不是本地 sandboxd(支持的动词正在逐步增加,运行 sbx --cloud --help 查看当前列表) | |
-D, --debug | 启用调试日志 | |
--no-input | 从不提示;需要应答的命令会直接失败,并给出应当运行的命令 |
示例
console
# 显示将被删除的内容
sbx prune --dry-run
# 不加询问地删除
sbx prune --force
# 仅删除在某个时间点之前停止的沙箱
sbx prune --filter until=2026-01-01T00:00:00Z参见
sbx— 管理 AI 编程智能体沙箱。