Skip to main content
sandbox 命令组用于创建和管理 AgentKit 沙箱工具,并在沙箱会话中执行命令、调用智能体、传输文件、打开 Web 预览或注入本地模型订阅凭据。sandbox create 与 sandbox config 对外支持的工具类型包括 All-in-one、Skill、CodeEnv、DevEnv、ArkClawEnv、HermesEnv 和 Private。
多数沙箱命令从 .agentkit/sandbox.yaml 或 AGENTKIT_SANDBOX_REGION 读取 AgentKit 控制面区域;sandbox dashboard 还支持用 --region 指定本地控制台会话的区域。TOS 挂载区域可通过 AGENTKIT_SANDBOX_TOS_REGION 指定;未设置时,CLI 会根据 TOS bucket 或当前云环境推断。
常用会话命令使用同一组工具和会话定位参数:-s, --session-id <id>, --sid <id> 指定用户会话 ID;--tool-id <id> 指定沙箱工具 ID;--tool-name <name> 按工具名称查找;--tool-type <type> 指定工具类型。若本地配置中已经保存 tool-id、tool-name、tool-type 或 session-id,相关命令会按各自参数表在未显式传参时读取配置默认值。

命令总览

sandbox build

在云端 Code Pipeline 中构建自定义沙箱镜像。构建完成后,CLI 会把 tool-type 设置为 Private,并把生成的镜像地址写入 .agentkit/sandbox.yaml,便于后续 sandbox create 使用。
sandbox build 会使用 TOS、Container Registry 和 Code Pipeline 等云资源,可能产生费用。执行前确认账号权限、项目目录和镜像命名;构建失败时,CLI 可能在项目的 .agentkit/sandbox/build/ 目录写入构建日志。

sandbox init

生成沙箱 Dockerfile 模板。未指定模板时,默认生成 skill 模板。命令会按模板对应的工具类型解析当前内置基础镜像,并把实际镜像地址写入生成的 Dockerfile。
解析内置基础镜像需要可用的 AgentKit 控制面凭据和区域配置。离线环境或无权限环境无法生成带实际基础镜像的模板。

sandbox config

配置沙箱命令的本地默认值。配置文件位于当前项目的 .agentkit/sandbox.yaml,--list 会输出当前配置文件内容,并自动隐藏模型 API Key 和 WebSearch API Key。
首次写入 .agentkit/sandbox.yaml 时,CLI 只保存网络、工具类型、CPU、快照和会话 TTL 等基础默认值;模型提供方、模型名称和模型 Base URL 会在读取有效配置时按云环境补齐,只有用户通过 sandbox config --set model-* 或命令行标志显式设置后才会持久化。 支持的配置键如下。

sandbox create

创建沙箱工具。创建完成后,CLI 会等待工具进入 Ready 状态,并把工具 ID 与名称写入本地沙箱配置。
sandbox create 会在云端创建计算资源,资源存续期间可能产生费用。创建前确认工具类型、规格、网络、镜像和 TOS 挂载配置;不再使用时,通过 sandbox delete --tool-id <id> --force 删除工具。
为 Skill 工具启用 LLM Shield 时,必须显式传入应用 ID。该参数只支持 Skill 工具类型。
创建自定义 Private 工具时需要先准备镜像地址:

sandbox dashboard

启动本地 Web 控制台,用于查看和操作沙箱工具与会话。该命令会在本机监听一个端口,默认在交互终端中打开浏览器;在 CI 或传入 --no-open 时只输出访问地址。
通过安装脚本或 agentkit upgrade 安装的独立二进制已包含控制台终端界面所需资源,无需额外安装 Node.js 依赖。若手动解压独立发行包,请保留 vendor/ 目录与 ak 在同一安装目录,否则控制台页面可能无法加载终端组件。

sandbox delete

删除沙箱工具或工具下的指定会话。传入会话 ID 时删除会话;不传会话 ID 时删除工具本身。删除工具时必须且只能用 --tool-id 或 --tool-name 指定一个目标。
删除沙箱工具或会话不可恢复,未另行保存的文件、运行状态和会话缓存可能丢失。执行前确认目标 ID 或名称,并先下载需要保留的文件。

sandbox list

列出本地缓存的沙箱会话,或查看某个本地缓存会话。该命令读取本地会话缓存并输出 JSON,不会列出云端所有沙箱工具。

sandbox mount

使用 TosBrowser 打开已挂载 TOS 的沙箱会话目录。该命令需要目标工具已配置 TOS 挂载,并且本地已通过 agentkit login 保存可用于挂载授权的登录 profile。

sandbox exec

连接沙箱终端并执行命令。--command 可用于指定进入终端后执行的初始命令;未设置时打开终端连接。--mode tmux 会附加或创建与会话 ID 同名的 tmux 会话。

sandbox invoke

通过 A2A 调用沙箱中的智能体。默认工具类型为 SkillEnv,输出 JSON。传入 --async 时,命令在创建任务后立即返回;传入 --task-id 时,命令轮询已有任务。

sandbox run

读取 YAML 文件并把其中的条目转换为 agentkit sandbox exec 命令。默认文件名为 agentkit-sandbox-run.yaml。配置根节点可以是列表,也可以是包含 exec、execs、tabs 或 commands 的对象。
agentkit-sandbox-run.yaml
条目支持的字段包括 session_id、sid、tool_id、tool_type、command、mode、shell_id、git_config、model_name、model_api_key、model_provider、model_base_url、cwd、workdir、copy 和 copies。也可以使用 args 或 argv 直接提供 sandbox exec 的原始参数列表。

sandbox shell

在沙箱中执行非交互 shell 命令并输出 JSON 结果。该命令要求传入 --command,适合自动化脚本;需要交互终端时使用 sandbox exec。

sandbox web

打开沙箱 Web 预览,并输出包含 URL、工具 ID、会话 ID 与会话是否新建的 JSON。默认打开浏览器时,CLI 会同时请求远端沙箱浏览器打开 /home/gem/,便于直接查看会话文件;传入 --no-open 时只返回 Web URL。

sandbox codex-login

将本地 Codex 或 Claude 订阅凭据注入沙箱会话。model-login 与此命令等价。
sandbox codex-login 和 sandbox model-login 会把本地订阅凭据复制到远端沙箱会话。仅在受信任的沙箱和专用会话中使用,避免共享该会话;使用完成后删除会话或沙箱工具。

sandbox model-login

model-login 与 codex-login 等价,用于将本地 Codex 或 Claude 订阅凭据注入沙箱会话。

sandbox scp

在本地与已有沙箱会话之间传输文件或目录。远端路径必须以 sandbox: 开头;相对远端路径会解析到 /home/gem 下。该命令使用本地会话缓存,因此目标会话需要先通过 sandbox exec、sandbox shell、sandbox web、sandbox invoke 或登录命令创建。
最后修改于 2026年9月19日