OpenSandbox 运行时
为 AI 应用提供可扩展的隔离运行时,统一管理沙箱、命令和文件。
- Star 数
- ★ 16k
- 最近更新
- 1 天前
- License
- Apache-2.0
- 主语言
- Python
- FA 评分
- 47/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台Codex · Claude Code
- 费用
- 免费,无需付费服务
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 开发平台团队需要在 Docker 或 Kubernetes 上为代码执行服务提供短生命周期隔离环境。
- 不适合
- 需要完全离线、无 Docker 环境的团队
- 不愿部署 Kubernetes 或自建沙箱服务的小团队
- 需要开箱即用托管云服务、不想自行运维的用户
- 源码审查
- 47/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
OpenSandbox 是面向 AI 应用的通用沙箱平台,提供统一的沙箱生命周期、命令执行和文件操作接口。项目包含多语言 SDK、osb 命令行工具、MCP 服务器、Python FastAPI 生命周期服务器,以及 Docker 和 Kubernetes 运行时。其内置环境覆盖 Command、Filesystem 和 Code Interpreter,并提供浏览器、桌面、编程 CLI、评测与训练相关示例。工作负载在沙箱内运行,执行结果可包含标准输出和代码结果,文件可通过 SDK 或 CLI 写入和读取。对于需要将不可信或临时任务与宿主环境隔离、同时保留本地或 Kubernetes 部署选择的团队,它是一个可评估的基础设施组件。
应用可通过 Sandbox.create 创建沙箱,再用 sandbox.commands.run 执行 shell 命令;执行对象提供日志输出。通过 sandbox.files.write_files 写入文件,并通过 sandbox.files.read_file 读取内容。CodeInterpreter.create(sandbox) 可关联现有沙箱,随后以 interpreter.codes.run 运行指定语言的代码并返回结果和日志。osb CLI 可初始化连接配置、创建沙箱、运行命令、移动文件、查看诊断并管理运行时出口策略;opensandbox-mcp 则向 MCP 客户端开放沙箱创建、命令执行和文本文件操作。
- 开发平台团队需要在 Docker 或 Kubernetes 上为代码执行服务提供短生命周期隔离环境。
- 构建 Coding Agent 的团队希望在沙箱中运行 Claude Code、Gemini CLI、OpenAI Codex CLI、Qwen Code 或 Kimi CLI。
- 自动化测试工程师需要使用 Chromium、Playwright、VNC 或 code-server 在隔离环境中执行浏览器和桌面任务。
- 评测团队需要按 trial 创建一个沙箱来运行 Harbor agent evaluation。
- 使用 LangGraph 或 Google ADK 的应用开发者需要让工作流写入文件、读取文件并执行命令。
如何安装或部署这个 Agent?
本地执行需要 Docker 和 Python 3.10+。可运行:
uvx opensandbox-server init-config ~/.sandbox.toml --example docker
uvx opensandbox-server安装 CLI:
pip install opensandbox-cli然后初始化并配置连接:
osb config init
osb config set connection.domain localhost:8080
osb config set connection.protocol http
osb config set connection.api_key <your-api-key>如需 MCP 服务,安装并启动:
pip install opensandbox-mcp
opensandbox-mcp --domain localhost:8080 --protocol http如何使用这个 Agent?
配置完成后,可先创建并调用一个沙箱:
osb sandbox create --image python:3.12 --timeout 30m -o json
osb command run <sandbox-id> -o raw -- python -c "print(1 + 1)"Python SDK 可通过 await Sandbox.create(...) 创建实例,在 async with sandbox 中调用 await sandbox.commands.run(...)、sandbox.files.write_files(...) 和 sandbox.files.read_file(...)。代码解释器工作流先执行 interpreter = await CodeInterpreter.create(sandbox),再调用 await interpreter.codes.run(..., language=SupportedLanguage.PYTHON)。
这个 Agent 有哪些优点和局限?
- 同一平台同时提供 Python、Java/Kotlin、JavaScript/TypeScript、C#/.NET 和 Go SDK,以及 CLI 与 MCP 接入方式。
- Docker 支持本地运行,Kubernetes 运行时面向分布式调度,部署边界较清晰。
- 命令、文件和代码解释器具备具体接口,且项目提供浏览器、桌面、编程 CLI、评测和训练示例。
- 网络能力包含统一入口网关、每沙箱出口控制,以及用于出站请求的 Credential Vault。
- 文档列出 gVisor、Kata Containers 和 Firecracker microVM 等增强隔离选项。
- 本地执行明确依赖 Docker 和 Python 3.10+;采用 Kubernetes 则需要相应的运行环境与部署配置。
- CLI 示例要求配置 connection.domain、connection.protocol 和 API key,凭据的签发与服务端认证流程未在所给材料中说明。
- 安全容器运行时被列为支持项,但不同运行时的配置、性能与功能取舍需要自行验证。
- 多语言 SDK、MCP、入口网关、出口控制和凭据注入覆盖面较大,团队需要决定实际采用的组件组合。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| OpenSandbox 运行时 当前 | 47 · 缺口较多 | 代码库 / SDK免费 | ★ 16k | 1 天前 | Python | Codex · Claude Code |
| Stakpak | 57 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 1.9k | 4 个月前 | Rust | OpenAI API · Claude API |
| SandBase Harness | 52 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 640 | 1 天前 | TypeScript | OpenAI API · Claude API |
| OptimNow Cloud FinOps 知识库 | 65 · 存在缺口 | Agent 插件 / 技能免费 | ★ 66 | 1 天前 | Python | Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示项目强调最小权限原则(如网络策略、安全容器运行时),但未提供具体实现细节;用户确认机制未明确;数据流透明度有限;敏感数据处理有凭据保险库但细节不足;依赖安全有安全策略但未提供依赖清单;外部影响有网络策略但未说明默认行为;回滚机制未提及;来源归属有发布签名但未验证。
自洽性较好,文档与代码结构一致;依赖可用性未提供完整依赖清单;失败消息有CLI测试但未覆盖所有场景。
目标受众和场景明确(编码代理、浏览器自动化等);能力边界有文档说明;触发精度未明确;环境适配支持Docker和Kubernetes。
信息架构清晰,有项目结构表;安装说明详细;命名稳定性未明确;示例丰富;已知限制未明确;许可证为Apache-2.0;版本变更日志未提供;维护责任未明确。
输出可用性有CLI和SDK示例;边际价值高,提供多种集成;成本效益未提供性能数据。
声明可追溯性有限,部分功能有文档但未提供验证;跨来源佐证不足;事实与推断分离不明确。
- 发布者身份未验证,需谨慎对待。
- 依赖安全未提供完整依赖清单,需自行审计。
- 用户确认机制未明确,可能影响安全审批流程。
- 回滚机制未提及,需确认。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
发布说明摘录
First release candidate on the 1.2.1 patch line, cut from release-1.2.0 (2026-10-27). Headline: OSEP-0025 Credential Vault Exchange — an exchange credential source with per-request header resolution through a pluggable resolver, wired end to end across egress, server, all five SDKs, fast-sandbox e2e, and the Credential Vault guide. Also notable: execd atomic uploads, digest validation for rootfs snapshots, Kubernetes create-timeout startup diagnostics, and informer-cache scoping for large clusters. Baseline for every section is release-1.2.0. rc releases publish images but hold package …在 GitHub 查看 ↗ -
release-1.2.0 OpenSandbox 1.2.0
发布说明摘录
Stable cut of the 1.2.0 line, carrying everything merged since release-1.1.1 through two release candidates plus a post-rc hardening delta. Images shipped with the rcs; SDK/CLI/server packages publish at 1.2.0. Everyone on 1.1.x should upgrade. Baseline for every section below: release-1.1.1. Highlights …在 GitHub 查看 ↗ -
release-1.2.0-rc.2 OpenSandbox 1.2.0-rc.2
发布说明摘录
Second release candidate on the 1.2.0 line, carrying everything merged since release-1.2.0-rc.1 — the headline is the Credential Vault (OSEP-0022) landing end to end for fast sandboxes: an egress-held vault with durable per-subject persistence and pause/resume transfer, the user-reachable server-routed vault API, and a pool-pinned MITM CA. Network policy follows the same egress-held pattern, and NetworkRule gains port-scoped rules in the classic profile — fast sandboxes reject them fail-closed until the fastlet nft path enforces them. Images publish now; SDK/CLI packages ship at the `1.2 …在 GitHub 查看 ↗