搜索你想找的开源项目

输入名称、用途或关键词,也可粘贴 GitHub 仓库链接

分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

opensandbox-group/OpenSandbox

AI 工程

在自有基础设施的 Docker 或 Kubernetes 上运行 AI 智能体,通过统一 API 执行代码、命令、文件与浏览器操作。

17,229
1,634
Go
Apache-2.0
创建于 11 个月前

项目介绍

OpenSandbox 为 AI 应用提供隔离的执行环境,让智能体可以运行代码、执行 shell 命令、管理文件,以及操作浏览器或桌面,而不直接接触宿主机。它支持本地用 Docker 启动,也能部署到 Kubernetes,两者共用统一的沙箱生命周期 API,因此开发阶段和集群环境可以使用同一套集成。

它面向构建编码智能体、代码解释器、浏览器/桌面自动化,以及需要为每次试验分配独立环境的智能体评测和 RL 训练场景。运行时功能包括快速创建沙箱、保留内存和磁盘状态的暂停与恢复、入站和出站网络控制,以及让沙箱调用外部服务而不暴露真实凭据的 Credential Vault。项目提供 Python、Java/Kotlin、TypeScript/JavaScript、C#/.NET 和 Go SDK,另有 CLI 与 MCP 服务端。

快速使用

本地执行需要 Docker,示例和本地运行时需要 Python 3.10+ README。

  1. 初始化并启动沙箱服务端:
uvx opensandbox-server init-config ~/.sandbox.toml --example docker
uvx opensandbox-server
  1. 安装 Python SDK:
uv pip install opensandbox
  1. 基于 alpine 镜像创建沙箱,执行命令、写入并读取文件、运行脚本,最后销毁沙箱:
import asyncio

from opensandbox import Sandbox
from opensandbox.models import WriteEntry

async def main() -> None:
    sandbox = await Sandbox.create("alpine")
    try:
        execution = await sandbox.commands.run("echo 'Hello OpenSandbox!'")
        print(execution.logs.stdout[0].text)

        await sandbox.files.write_files([
            WriteEntry(
                path="/tmp/hello.sh",
                data="echo \"Hello $1\"\necho '2 + 2 =' $((2 + 2))",
                mode=755,
            )
        ])
        content = await sandbox.files.read_file("/tmp/hello.sh")
        print(f"Content: {content}")

        execution = await sandbox.commands.run("sh /tmp/hello.sh OpenSandbox")
        for log in execution.logs.stdout:
            print(log.text)
    finally:
        await sandbox.destroy()

if __name__ == "__main__":
    asyncio.run(main())

其他接入方式连接同一服务端:osb CLI(pip install opensandbox-cli)和 MCP 服务端(pip install opensandbox-mcp)。examples 目录提供 Claude Code、Codex CLI、Playwright、Chrome、桌面和 Harbor 评测等可直接运行的集成示例。

使用约束

  • 本地执行依赖 Docker;集群部署走 Kubernetes Operator,配置步骤见部署指南。
  • Fast Sandbox 公布的创建延迟数据对应 Kubernetes 上的 Firecracker 路径和特定并发条件,不构成所有部署的通用保证。
  • 官方镜像发布到 Docker Hub、GHCR 和阿里云容器镜像服务。README 建议生产环境按 digest 固定镜像。历史按组件发布的镜像支持 Cosign 签名和来源证明,但当前汇总发布存在已跟踪的签名与来源证明缺口,不能假定这些镜像具有相同的验证证据 发布验证。
  • 代码采用 Apache-2.0 许可证,文档授权和贡献条款另见说明。

HotRepo 点评

在 2026-11-09 的 Python 日榜中,OpenSandbox 记录到 16,743 星、1,580 fork、当日新增 159 星,位列该语言榜第 14 名。这组数据说明该日期前后存在可测量的关注度,但单次快照无法判断趋势,也不能证明采用情况。更具体的信号是项目属于 Agentic AI Foundation,并同时提供多语言 SDK、CLI 和 MCP 接口,降低了从不同智能体技术栈试用的成本。上文提到的发布签名缺口是投入生产前最值得核对的操作细节。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。

相关推荐

  1. kubernetes-sigs/agent-sandbox为 AI 智能体运行时和强化学习提供有状态、单例、带稳定身份的 Kubernetes 沙箱 CRD 与控制器。Go4,429
  2. pydantic/monty让 LLM 生成的 Python 代码在没有文件系统、网络和环境变量的沙箱里运行,毫秒级启动,比容器沙箱快得多。Rust8,769
  3. docker/docker-agent用 YAML 定义多智能体与工具链,接任意模型,可作为 Docker 插件运行和分发。Go4,609
  4. agent-substrate/substrate在 Kubernetes 上以高密度运行不受信任的 AI Agent,并提供隔离沙箱与快照恢复能力的运行时。Go5,768