
OpenShell v0.1.6
Песочница для автономных ИИ-агентов с декларативными политиками YAML, обеспечивающими ограничения файловой системы, сети и процессов, а также привязку учётных данных к конечным точкам.
[!IMPORTANT] Новое в OpenShell 0.1.x: стабильный график выпуска релизов, новые примитивы изоляции, расширенная поверхность расширений и новые API. Ознакомьтесь с руководством по обновлению до 0.1.0.
OpenShell — это безопасная и приватная среда выполнения для парков автономных ИИ-агентов. Агенты наиболее полезны, когда могут читать файлы, устанавливать пакеты, вызывать API и использовать учётные данные. OpenShell даёт им эту возможность, не предоставляя неограниченный доступ к вашим данным, секретам или сети. Вы объявляете в политике, к чему может обращаться каждый агент, а OpenShell обеспечивает её соблюдение.
Как это работает
OpenShell управляет тем, что могут делать агенты, двумя способами: он инструментирует ядро, чтобы применять политику при каждом доступе к файлам, системном вызове и сетевом подключении во время выполнения, и использует формальную верификацию, чтобы проверить, что разрешит изменение политики, до его применения.
- Принудительное применение на уровне ядра. Каждый агент работает в изолированной песочнице. Механизмы ядра ограничивают, к каким файлам он может обращаться и какие системные вызовы может выполнять, а каждое сетевое подключение проходит проверку политики, прежде чем покинуть песочницу. Агенты никогда не видят настоящие учётные данные; OpenShell добавляет их только к запросам, направленным на одобренные эндпоинты.
- Формально верифицированные изменения политики. Прежде чем изменение политики будет одобрено, OpenShell использует формальную верификацию, чтобы отметить рискованный новый доступ, который оно предоставит, например обращение к новому хосту с учётными данными или вызов нового метода API, поэтому такие изменения ожидают проверки человеком.
См. Архитектура, чтобы узнать, как шлюз, супервизор и песочница взаимодействуют друг с другом.
Быстрый старт
Вам нужны Linux, macOS на Apple Silicon или Windows с WSL 2 (экспериментально), а также Docker, Podman или виртуализация на хосте. Подробности см. в Матрице поддержки.
curl -LsSf https://raw.githubusercontent.com/NVIDIA/OpenShell/main/install.sh | sh
openshell sandbox create --name demo
Установщик настраивает CLI и локальный шлюз. Образ песочницы по умолчанию — минимальный Ubuntu без установленного агента. Чтобы запустить настоящего агента, следуйте инструкции Run Your First Agent: она запускает OpenCode с бесплатной моделью OpenRouter и показывает, как одобрять новый доступ по мере необходимости для агента.
О поддержке нативной Windows через Microsoft MXC см. руководство по сборке и работе в Windows — там описаны настройка и текущие ограничения.
Дополнительное изучение
- Песочницы: образы, среды выполнения, GPU и жизненный цикл.
- Политики: правила для файловой системы, сети и процессов, а также advisor и prover для проверки изменений.
- Провайдеры: учётные данные, работающие только на одобренных эндпоинтах, включая inference.
- Шлюзы: плоскость управления для песочниц, политик и доступа.
- Kubernetes: развёртывание шлюза с помощью Helm. Ваш CNI должен обеспечивать соблюдение
NetworkPolicy. - Расширяемость: middleware, перехватчики и драйверы вычислений.
- Учебные руководства: пошаговые разборы политик и работы агентов.
- Предварительные и dev-сборки: попробуйте будущий релиз или последний коммит в
main.
Навыки агента
Установите публичные навыки OpenShell для вашего агента программирования:
npx skills add NVIDIA/OpenShell
Навыки учат вашего агента управлять OpenShell CLI, писать политики песочницы и отлаживать шлюзы и маршрутизацию вывода. Они находятся в skills/ и работают без исходного кода OpenShell.
SDK
SDK подключают приложения к шлюзу OpenShell. Они не устанавливают CLI. По возможности используйте одну и ту же версию OpenShell для SDK и шлюза.
| Язык | Установка | Документация |
|---|---|---|
| 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> | Установка и использование |
Сообщество
- Вопросы и обсуждения: GitHub Discussions
- Отчёты об ошибках и запросы функций: GitHub Issues с использованием шаблонов issue
- Уязвимости безопасности: следуйте SECURITY.md. Не открывайте issue на GitHub.
- Дорожная карта: OpenShell Roadmap и RFC board
- Попробовать в облаке: Brev Launchable
OpenShell создаётся agent-first: он разрабатывается с помощью тех же агент-ориентированных рабочих процессов, которые он обеспечивает. См. CONTRIBUTING.md для настройки разработки и процесса внесения вклада, а также AGENTS.md для соглашений по кодированию в репозитории.