OpenShell
NVIDIA OpenShell 是开源运行时,用于在具备内核级隔离的沙箱环境中运行大量自主 AI 智能体。它结合沙箱运行时控制与声明式 YAML 策略,限制文件系统、网络、进程和凭据访问,让团队在保留智能体能力的同时避免其获得不受限制的本地文件、凭据和外部网络权限。
访问 NVIDIA/OpenShell项目简介
NVIDIA OpenShell 是开源运行时,用于在具备内核级隔离的沙箱环境中执行大量自主 AI 智能体。它将沙箱运行时控制与声明式 YAML 策略结合,使团队可以让智能体访问文件、软件包、API 和凭据,同时避免其获得对本地文件、凭据或外部网络的不受限制访问。
核心功能
- 主要特性包括:内核级执行将文件访问与系统调用限制在沙箱内,并在每个网络连接离开沙箱前按策略检查;声明式 YAML 策略为每个沙箱定义文件系统、网络、进程与提供方凭据控制;文件系统限制使用 Landlock 将读写限定在声明路径;网络策略仅允许批准的目的地并拒绝其他出站流量;提供方凭据处理仅在配置档案授权的端点解析不透明占位符,并只向获批端点请求添加凭据;正式验证会在策略变更获批前标记有风险的新访问,使涉及新主机与凭据等变更等待人工审查。
适用场景
- 安全编码智能体:以受限文件和网络访问运行 Claude Code、OpenCode、Codex 或 GitHub Copilot CLI;私有企业开发:让选定沙箱访问自托管或私有模型端点,同时将敏感上下文置于控制之下;合规与审计:将策略 YAML 视为可审查和审计的版本控制安全控制;可复用环境:使用默认 Ubuntu 工作负载或自带容器化运行时。
快速开始
- 使用安装脚本安装 CLI 和本地网关,并创建名为 demo 的沙箱。默认沙箱镜像是最小 Ubuntu,未安装智能体;要运行真实智能体,可参考 Run Your First Agent 指南,其中使用免费 OpenRouter 模型运行 OpenCode。
部署与要求
- 需要 Linux、Apple Silicon 上的 macOS 或带 WSL 2 的 Windows(实验性),以及 Docker、Podman 或主机虚拟化。Kubernetes 场景使用 Helm 部署网关,CNI 必须强制执行 NetworkPolicy。
采用前须知
- 许可证:Apache-2.0。在使用、修改或分发项目前,请确认其具体条款。