OpenShell
NVIDIA 开源的自主 AI Agent 安全运行时,通过内核级沙箱隔离与形式化验证策略,让 Agent 能读写文件、安装软件、调用 API 和使用凭证,同时不失去对数据、密钥与网络的掌控。
爱鲜报评分
0 人评分
21k
星数
否
中文
Rust
主语言
是
活跃
137
贡献者
人工分析
EDITORIAL推荐理由
OpenShell 把「让 Agent 干活」和「不让 Agent 闯祸」这对矛盾用内核级强制隔离 + 形式化验证策略解决,思路在同类 Agent 运行时中相当少见。背靠 NVIDIA 官方维护、Apache-2.0 许可、2 万+ Star,工程成熟度和社区活跃度都有保障。对需要把自主 Agent 放进真实生产环境、又必须满足安全合规要求的团队,是值得优先评估的基础设施。
适用场景
- 为自主 AI Agent 提供隔离运行沙箱
- 企业内需要审计与审批 Agent 网络/文件访问的场景
- 在 Kubernetes 上批量部署 Agent 集群
- 给 Agent 安全注入 API 凭证而不暴露明文密钥
- 构建需要策略变更前风险评估的合规型 Agent 平台
优点
- 内核级强制隔离,文件、系统调用、网络连接逐项受控
- 策略变更前用形式化验证预判新增风险,支持人工审批
- Agent 不接触真实凭证,仅在发往白名单端点时注入
- 提供 Python/TypeScript/Go/Rust 多语言 SDK 与 Helm 部署
- NVIDIA 官方维护,文档体系完整,Apache-2.0 友好商用
缺点
- 运行依赖 Linux、Apple Silicon macOS 或 WSL 2,Windows 原生支持仍属实验性
- 需要 Docker/Podman 或主机虚拟化,环境准备成本不低
- 策略编写与形式化验证概念有一定学习曲线
- Kubernetes 部署要求 CNI 支持 NetworkPolicy,集群条件受限
- 默认收集匿名遥测,需手动关闭
OpenShell 是什么
OpenShell 是 NVIDIA 开源的自主 AI Agent 安全运行时。Agent 之所以有用,是因为它能读文件、装依赖、调 API、用凭证;但这也意味着它可能碰到不该碰的数据、密钥和网络。OpenShell 的做法是:由你用策略声明每个 Agent 能接触什么,然后由运行时强制执行。
核心机制
内核级强制隔离
每个 Agent 运行在独立沙箱中,内核控制其可访问的文件与可发起的系统调用;所有网络连接在离开沙箱前都要经过策略检查。Agent 永远看不到真实凭证,OpenShell 只在请求发往已批准端点时临时注入。
形式化验证的策略变更
策略变更生效前,OpenShell 会用形式化验证标出这次改动将新开放的高风险访问,例如「用凭证访问新主机」「调用新的 API 方法」,这类变更会挂起等待人工审核。
快速上手
需要 Linux、Apple Silicon 上的 macOS,或带 WSL 2 的 Windows(实验性),以及 Docker、Podman 或主机虚拟化。
curl -LsSf https://raw.githubusercontent.com/NVIDIA/OpenShell/main/install.sh | sh
openshell sandbox create --name demo
安装脚本会配置 CLI 与本地网关。默认沙箱镜像是最小化 Ubuntu,不含任何 Agent;要跑真实 Agent,可参考官方「Run Your First Agent」教程。
生态与集成
- 沙箱:镜像、运行时、GPU 与生命周期管理
- 策略:文件系统、网络、进程规则,配套 advisor 与 prover
- Providers:仅在批准端点生效的凭证,含推理服务
- Gateways:沙箱、策略与访问的控制平面,支持 Helm 部署到 Kubernetes
- 扩展性:中间件、拦截器与计算驱动
- SDK:Python、TypeScript、Go、Rust 四种语言接入网关
适用与注意
OpenShell 适合需要把自主 Agent 放进真实环境、同时满足安全与合规审计的团队。需要注意:环境依赖较重,策略与形式化验证概念有学习成本;Kubernetes 部署要求 CNI 支持 NetworkPolicy;默认开启匿名遥测,可通过 OPENSHELL_TELEMETRY_ENABLED=false 关闭。
评论
- 暂无评论,来写第一条吧。