ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

OpenSandbox集成Claude Code实战:给AI编码代理一个安全执行环境

OpenSandbox集成Claude Code实战:给AI编码代理一个安全执行环境 OpenSandbox集成Claude Code实战给AI编码代理一个安全执行环境【免费下载链接】OpenSandboxSecure, Fast, and Extensible Sandbox runtime for AI agents.项目地址: https://gitcode.com/GitHub_Trending/ope/OpenSandboxClaude Code 等 AI 编码代理能力强大但直接在宿主机上执行代码、读写文件、携带 API 凭据风险极高一次失控命令就可能影响生产环境。OpenSandbox 是一个安全、快速、可扩展的沙箱运行时平台本教程基于官方示例带你 3 步把 Claude Code 跑进沙箱并学会用网络策略 凭据保险箱为 AI 编码代理构建企业级安全执行环境。为什么 AI 编码代理需要沙箱️AI 代理为了干活必须能执行 shell 命令、修改文件、访问网络。如果这些能力直接暴露在宿主机上你将面对三类风险代码失控模型生成的命令不可预测误删文件、占用资源难以避免凭据泄露Anthropic Token、Git Token 一旦进入环境就可能被注入的提示词偷走网络外联失控代理可能向任意地址发起请求变成数据外泄通道OpenSandbox 的应对思路是把沙箱当作隔离边界本身容器强隔离 默认拒绝的出口网络策略 真凭据永不落沙箱的 Credential Vault。相关设计可见 docs/architecture/index.md 与 docs/guides/secure-container.md。快速上手3 步启动 Claude Code 沙箱 ⚡前置要求Docker Python 3.10。先获取示例代码git clone https://gitcode.com/GitHub_Trending/ope/OpenSandbox cd OpenSandbox第 1 步启动本地 OpenSandbox 服务uvx opensandbox-server init-config ~/.sandbox.toml --example docker uvx opensandbox-server服务以 Docker 为运行时后台日志直接输出到终端详见 server/README.md。第 2 步预拉取 code-interpreter 镜像该官方镜像自带 Node.js 与 Python 运行时无需额外配置即可安装 Claude CLIdocker pull opensandbox/code-interpreter:v1.1.0第 3 步运行官方示例uv pip install opensandbox export ANTHROPIC_AUTH_TOKEN你的Anthropic令牌 uv run python examples/claude-code/main.py示例脚本 examples/claude-code/main.py 会创建沙箱、把ANTHROPIC_AUTH_TOKEN等变量注入容器环境随后在沙箱内执行npm i -g anthropic-ai/claude-code安装 Claude CLI并用claude Compute 11?发起首个请求见 main.py#L84-L94。常用环境变量一览完整说明见 docs/examples/claude-code.md变量说明ANTHROPIC_AUTH_TOKEN必填Anthropic 访问令牌ANTHROPIC_BASE_URL/ANTHROPIC_MODEL可选自定义端点与模型名SANDBOX_DOMAIN/SANDBOX_API_KEY沙箱服务地址与鉴钥本地可省略SANDBOX_IMAGE沙箱镜像默认为 code-interpreter沙箱如何为 Claude Code 保驾护航 容器强隔离从 runc 到微虚拟机默认 Docker 容器已能隔离文件系统和网络对执行不可信 AI 生成代码的场景OpenSandbox 还支持 gVisor、Kata Containers、Firecracker microVM 等安全容器运行时提供防容器逃逸级别的硬件隔离各运行时启动开销与适用场景对比见 docs/guides/secure-container.md。命令执行execd 守护进程沙箱内并非裸跑命令。注入的 execd 执行守护进程负责接收任务、跟踪进程组、捕获 stdout/stderr 与退出码并支持优雅停止与超时强杀完整执行流程如下实现源码位于 components/execd/。网络策略 凭据保险箱真密钥永不进沙箱最精彩的一层是 Credential Vault沙箱进程拿到的只是ANTHROPIC_API_KEYfake-key这类假值真实凭据由宿主侧 SDK 写入出口边车egress sidecar的保险箱中当 Claude Code 发起允许名单内的 HTTPS 请求时边车透明注入真实认证头响应中的密钥再被脱敏返回。这样即使遭遇提示词注入攻击者也拿不到真凭据配套规则建议出口策略使用defaultActiondeny仅放行api.anthropic.com等白名单主机。网络与出口组件文档见 components/egress/README.md凭据保险箱详解见 docs/guides/credential-vault.md。进阶无头模式与多轮会话 生产集成很少交互官方示例同时演示了两种关键模式main.py#L98-L117无头运行claude -p ... --output-format json输出回复、session_id与用量后退出便于脚本解析会话恢复claude -p 追问... --resume session_id保留上下文完成多轮对话并行追问可加--fork-session避免互相覆盖权限处理-p模式下无人回答权限询问二选一——沙箱本身就是隔离边界时可用--dangerously-skip-permissions锁定型 CI 建议--permission-mode dontAsk保持失败即拒完整参数说明见 docs/examples/claude-code.md。另一条路用 MCP 让 Claude Code 自己管理沙箱 除了把 Claude Code 装进沙箱还可以反过来——通过 OpenSandbox MCP 服务器让 Claude Code 直接创建、执行、管理沙箱。安装后一条命令接入pip install opensandbox-mcp claude mcp add opensandbox-sandbox --transport stdio -- \ opensandbox-mcp --api-key $OPEN_SANDBOX_API_KEY --domain $OPEN_SANDBOX_DOMAIN随后你就可以用自然语言驱动它创建一个 Python 沙箱并运行健康检查把脚本写进沙箱并执行启动 8000 端口服务并返回访问地址。工具集涵盖sandbox_create、command_run、file_write、sandbox_kill等详见 sdks/mcp/sandbox/python/README.md。生产部署建议清单 ✅固定镜像生产环境按摘要digest固定 code-interpreter 镜像避免版本漂移提升隔离级别多租户场景启用 gVisor 或 Firecracker 安全运行时默认拒绝出口策略一律defaultActiondeny按需白名单放行凭据走保险箱所有外发凭据经 Credential Vault 注入环境里只留假值服务鉴权为 OpenSandbox 服务配置 API KeyKubernetes 规模化部署参考 kubernetes/README.md写在最后OpenSandbox 的价值不只是跑一条命令而是把 AI 编码代理放进一个可隔离、可审计、可扩展的执行平面Docker/Kubernetes 双运行时、execd 执行守护、出口网络策略与 Credential Vault 层层设防。除了 Claude Code同一套沙箱还支持浏览器自动化与完整桌面环境延伸资料Claude Code 示例源码examples/claude-code/main.py完整示例文档docs/examples/claude-code.md架构总览docs/architecture/index.md命令行工具 osbcli/README.mdAPI 规范specs/README.md【免费下载链接】OpenSandboxSecure, Fast, and Extensible Sandbox runtime for AI agents.项目地址: https://gitcode.com/GitHub_Trending/ope/OpenSandbox创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表