英伟达开放壳
OpenShell – A safe, private runtime for fleets of autonomous AI agents

原始链接: https://github.com/NVIDIA/OpenShell

OpenShell 0.1.x 是一个稳定、安全的私有运行时,用于自主 AI 智能体集群。它允许智能体访问文件、软件包、API 和凭证,同时在内核级别执行策略,并在策略更改应用前进行验证。每个智能体都在隔离的沙箱中运行;内核控制限制文件、系统调用和网络访问,凭证仅注入到已批准的端点。形式化验证会标记有风险的新访问,例如新的主机或 API 方法,供人工审查。它需要 Linux、Apple Silicon 上的 macOS,或支持 WSL2 的 Windows,以及 Docker、Podman 或主机虚拟化。使用提供的脚本安装 CLI 和本地网关;默认沙箱为精简版 Ubuntu。文档涵盖沙箱、策略、提供者、网关、Kubernetes、可扩展性、教程和预发布构建。SDK 将应用程序连接到网关。OpenShell 以智能体为先开发,收集可禁用的有限匿名遥测数据,并采用 Apache 2.0 许可证。

Hacker News 上的讨论涵盖了 Nvidia OpenShell——一个面向自主 AI 代理集群的运行时,旨在管理集体权限并强制实施细粒度沙箱。评论者就实用的隔离策略展开辩论,包括容器、虚拟机、代理、凭证交换和网络日志,并强调了代理勾结和隐蔽数据外泄等风险。他们分享了 iron proxy、Lima、Incus 和 matchlock 等工具,还讨论了检测出站数据模式,以及不可信输入、私有数据和网络访问构成的“致命三要素”。此外,部分人还提到了遥测、企业用例,以及 OpenShell 相比更简单的容器方案是否过度设计。
相关文章

原文
OpenShell

License PyPI Security Policy Documentation

Important

New in OpenShell 0.1.x: a stable release cadence, new isolation primitives, an expanded extension surface, and new APIs. Read the 0.1.0 upgrade guide.

OpenShell is the safe, private runtime for fleets of autonomous AI agents. Agents are most useful when they can read files, install packages, call APIs, and use credentials. OpenShell gives them that capability without giving them unrestricted access to your data, secrets, or network. You declare what each agent can touch in a policy, and OpenShell enforces it.

OpenShell governs what agents can do in two ways: it instruments the kernel to enforce policy on every file access, system call, and network connection at runtime, and it uses formal verification to check what a policy change would allow before it is applied.

  • Kernel-level enforcement. Each agent runs in an isolated sandbox. Kernel controls confine which files it can access and which system calls it can make, and every network connection passes through a policy check before it leaves the sandbox. Agents never see real credentials; OpenShell adds them only to requests bound for approved endpoints.
  • Formally verified policy changes. Before a policy change is approved, OpenShell uses formal verification to flag risky new access it would grant, such as reaching a new host with credentials or calling a new API method, so those changes wait for human review.

See Architecture for how the gateway, supervisor, and sandbox fit together.

You need Linux, macOS on Apple Silicon, or Windows with WSL 2 (experimental), plus Docker, Podman, or host virtualization. See the Support Matrix for details.

curl -LsSf https://raw.githubusercontent.com/NVIDIA/OpenShell/main/install.sh | sh
openshell sandbox create --name demo

The installer sets up the CLI and a local gateway. The default sandbox image is minimal Ubuntu with no agent installed. To run a real agent, follow Run Your First Agent: it runs OpenCode against a free OpenRouter model and shows how to approve new access as the agent needs it.

Install the public OpenShell skills for your coding agent:

npx skills add NVIDIA/OpenShell

The skills teach your agent to drive the OpenShell CLI, write sandbox policies, and debug gateways and inference routing. They live in skills/ and work without an OpenShell source checkout.

SDKs connect applications to an OpenShell gateway. They do not install the CLI. Use the same OpenShell release for the SDK and the gateway when possible.

Language Install Docs
Python uv add openshell README
TypeScript npm install @nvidia/openshell-sdk (GitHub Packages) README
Go go get github.com/NVIDIA/OpenShell/sdk/go@latest README
Rust cargo add openshell-sdk --git https://github.com/NVIDIA/OpenShell --tag <release-tag> Installation and usage

OpenShell is built agent-first: it is developed with the same agent-driven workflows it enables. See CONTRIBUTING.md for development setup and the contribution workflow, and AGENTS.md for repository coding conventions.

OpenShell collects anonymous telemetry, limited to operational categories and counts, to help improve the project. It does not collect sandbox names, hostnames, file paths, prompts, credentials, provider or model names, or user content. To disable it, set OPENSHELL_TELEMETRY_ENABLED=false on the gateway, or server.telemetryEnabled=false for Helm installs. You can also compile telemetry out entirely. See Telemetry for details and the community telemetry reports for published usage trends.

This software automatically retrieves, accesses or interacts with external materials. Those retrieved materials are not distributed with this software and are governed solely by separate terms, conditions and licenses. You are solely responsible for finding, reviewing and complying with all applicable terms, conditions, and licenses, and for verifying the security, integrity and suitability of any retrieved materials for your specific use case. This software is provided "AS IS", without warranty of any kind. The author makes no representations or warranties regarding any retrieved materials, and assumes no liability for any losses, damages, liabilities or legal consequences from your use or inability to use this software or any retrieved materials. Use this software and the retrieved materials at your own risk.

This project is licensed under the Apache License 2.0.

联系我们 contact @ memedata.com