以下说明适用于本地沙箱。有关云端身份验证和使用方式,请参阅 为云智能体配置身份验证和使用云沙箱。
官方文档:Claude Code
快速开始
指向项目目录,即可在沙箱中启动 Claude Code:
$ sbx run claude ~/my-project要在当前目录中用指定的提示词启动 Claude:
$ sbx run --name my-sandbox claude -- "Add error handling to the login function"-- 之后的内容会直接传给 Claude Code。你也可以用 -- "$(cat prompt.txt)" 从文件传入提示词。
要创建无挂载沙箱,使用不带工作区路径的 sbx create,然后按名称连接。
身份验证
使用默认的 Anthropic 模型时,Claude Code 需要 Anthropic API 密钥或 Claude 订阅。 对于其他模型,请参阅使用本地模型。
API 密钥:用存储的密钥保存你的密钥:
$ sbx secret set anthropicClaude 订阅:如果未设置 API 密钥,请在 Claude Code 内使用 /login 命令, 通过 OAuth 完成身份验证。
配置
沙箱不会读取宿主机的用户级配置,例如 ~/.claude。沙箱内只有工作目录中的项目级 配置可用。变通方法请参阅 沙箱为什么不用我的用户级智能体配置?。
远程控制
要在沙箱内使用 Claude Code 的 /remote-control 命令,请开启 claude.remoteControl:
$ sbx settings set claude.remoteControl true远程控制的环境变量和会话凭据会保留在宿主机上。Docker Sandboxes 不会把远程提供的 环境变量或 MCP 配置传入沙箱。将 claude.remoteControl 设为 false,即可阻止代理 向运行中的沙箱提供远程控制凭据。
Claude in Chrome
Claude in Chrome 让沙箱中的 Claude Code 能够操作宿主机浏览器里的标签页。默认关闭。 要使用它:
在宿主机浏览器中安装 Claude in Chrome 扩展并登录。扩展与 Claude Code 的订阅 OAuth 登录要使用同一个账户。你的组织必须允许该扩展。仅凭 API 密钥是不够的。
在宿主机上启用
claude.chrome:console$ sbx settings set claude.chrome true在 Claude 沙箱中用
--chrome启动 Claude Code:console$ sbx run --name <sandbox-name> -- --chrome
让 Claude 打开标签页、导航到某个页面或读取其内容。Docker Sandboxes 会用你保存的 Claude OAuth 登录对浏览器连接进行身份验证,而不会在沙箱内暴露令牌。
要阻止后续的浏览器连接,在宿主机上运行:
$ sbx settings set claude.chrome false这会阻止运行中的沙箱建立新的连接,而无需重建沙箱。它不会终止已经建立的浏览器 连接。要撤销有效的访问权限,请结束现有的 Claude 浏览器会话。
默认启动命令
不带额外参数时,沙箱运行:
claude --dangerously-skip-permissions当 -- 后的第一个参数本身是标志(以 - 开头)时,其余参数会追加到默认标志之后, 因此 --dangerously-skip-permissions 会被保留:
$ sbx run --name <sandbox-name> -- -c # 运行 claude --dangerously-skip-permissions -c有关提示词和子命令,请参阅 向智能体传递参数。
可用选项请参阅 Claude Code CLI 参考。
智能体视图
Claude Code 的智能体视图会启动并行 运行任务的后台会话。将它与克隆模式配合使用, 可以把它们的改动保留在沙箱内:
$ sbx run --clone claude . -- agents要使用 agents 子命令并启用跳过权限模式,请显式传入该标志:
$ sbx run --clone claude . -- --dangerously-skip-permissions agents要同时执行多个任务,每个后台会话都需要独立的 worktree 或克隆。仅靠分支无法隔离 同一个工作目录中的改动。Claude Code 如何管理工作目录,取决于任务、配置和项目 指令。--clone 标志无法控制这一行为。请让 Claude Code 在沙箱内为每个任务创建 独立的 worktree。
要审查某个会话创建的分支,在宿主机上抓取 sandbox-<sandbox-name> 远程:
$ git fetch sandbox-<sandbox-name>
$ git diff main..sandbox-<sandbox-name>/<branch>有关克隆模式的详细信息,请参阅 Git 工作流。
基础镜像
沙箱使用 docker/sandbox-templates:claude-code。要在该基础镜像之上构建自己的镜像, 请参阅基础镜像。
使用本地模型
有关本地模型、托管提供商和自定义推理端点,请参阅 使用本地模型和托管模型。