NVIDIA OpenShell: 에이전트용 안전한 런타임

NVIDIA OpenShell의 에이전트용 안전한 런타임

중요
OpenShell 0.1.x의 새로운 기능: 안정적인 릴리스 주기, 새로운 격리 프리미티브, 확장된 확장 지점, 그리고 새로운 API. 0.1.0 업그레이드 가이드 읽기.
OpenShell은 자율 AI 에이전트 집단을 위한 안전하고 비공개적인 런타임입니다. 에이전트는 파일을 읽고, 패키지를 설치하고, API를 호출하고, 자격 증명을 사용할 수 있을 때 가장 유용합니다. OpenShell은 에이전트가 데이터를, 비밀 정보를, 또는 네트워크를 무제한으로 접근하지 못하게 하면서도 그런 기능을 제공합니다. 각 에이전트가 무엇에 접근할 수 있는지는 정책으로 선언하고, OpenShell이 이를 강제합니다.
작동 방식
OpenShell은 두 가지 방식으로 에이전트의 동작을 통제합니다. 런타임에서 파일 접근, 시스템 호출, 네트워크 연결마다 정책을 강제하도록 커널을 계측하고, 정책 변경이 적용되기 전에 그것이 허용할 내용을 형식 검증으로 확인합니다.
- 커널 수준 강제. 각 에이전트는 격리된 샌드박스에서 실행됩니다. 커널 제어는 접근 가능한 파일과 실행할 수 있는 시스템 호출을 제한하며, 모든 네트워크 연결은 샌드박스를 벗어나기 전에 정책 검사를 거칩니다. 에이전트는 실제 자격 증명을 보지 못합니다. 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입니다. 실제 에이전트를 실행하려면 첫 번째 에이전트 실행을 따르세요. 이 과정은 무료 OpenRouter 모델을 대상으로 OpenCode를 실행하고, 에이전트가 필요로 할 때 새 접근을 승인하는 방법을 보여줍니다.
더 살펴보기
- 샌드박스: 이미지, 런타임, GPU, 수명 주기.
- 정책: 파일 시스템, 네트워크, 프로세스 규칙과, 변경 사항 검토를 위한 advisor 및 prover.
- 제공자: 승인된 엔드포인트에서만 작동하는 자격 증명, 추론 포함.
- 게이트웨이: 샌드박스, 정책, 접근을 위한 제어 평면.
- Kubernetes: Helm으로 게이트웨이를 배포합니다. CNI는
NetworkPolicy를 강제해야 합니다. - 확장성: 미들웨어, 인터셉터, 컴퓨트 드라이버.
- 튜토리얼: 단계별 정책 및 에이전트 안내.
- 사전 릴리스 및 개발 빌드: 예정된 릴리스나
main의 최신 커밋을 사용해 보세요.
에이전트 기술
코딩 에이전트를 위해 공개 OpenShell 기술을 설치하세요:
npx skills add NVIDIA/OpenShell이 기술들은 에이전트가 OpenShell CLI를 다루고, 샌드박스 정책을 작성하고, 게이트웨이와 추론 라우팅 문제를 디버깅하도록 가르칩니다. 이들은 skills/에 있으며 OpenShell 소스 체크아웃 없이도 작동합니다.
SDK
SDK는 애플리케이션을 OpenShell 게이트웨이에 연결합니다. CLI는 설치하지 않습니다. 가능하면 SDK와 게이트웨이에 같은 OpenShell 릴리스를 사용하세요.
| 언어 | 설치 | 문서 |
|---|
| 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
- 보안 취약점: SECURITY.md를 따르세요. GitHub 이슈를 열지 마세요.
- 로드맵: OpenShell Roadmap 및 RFC 보드
- 클라우드에서 사용해 보기: Brev Launchable
OpenShell은 agent-first 방식으로 구축됩니다. 즉, 이를 가능하게 하는 것과 동일한 agent 기반 워크플로로 개발됩니다. 개발 설정과 기여 워크플로는 CONTRIBUTING.md를, 저장소 코딩 규칙은 AGENTS.md를 참고하세요.
원격 측정
OpenShell은 프로젝트 개선에 도움이 되도록 운영 범주와 개수로 제한된 익명 원격 측정을 수집합니다. 샌드박스 이름, 호스트명, 파일 경로, 프롬프트, 자격 증명, 제공자 또는 모델 이름, 사용자 콘텐츠는 수집하지 않습니다. 이를 비활성화하려면 게이트웨이에서 OPENSHELL_TELEMETRY_ENABLED=false를 설정하거나, Helm 설치의 경우 server.telemetryEnabled=false로 설정하세요. 원격 측정을 완전히 컴파일에서 제외할 수도 있습니다. 자세한 내용은 Telemetry를, 공개된 사용 추세는 community telemetry reports를 참고하세요.
고지 및 면책 조항
이 소프트웨어는 외부 자료를 자동으로 가져오고, 접근하거나 상호작용합니다. 이렇게 가져온 자료는 이 소프트웨어와 함께 배포되지 않으며, 별도의 약관, 조건 및 라이선스만 적용됩니다. 해당되는 모든 약관, 조건 및 라이선스를 찾고 검토하며 준수하는 것, 그리고 특정 사용 사례에 맞게 가져온 자료의 보안성, 무결성 및 적합성을 확인하는 것은 전적으로 귀하의 책임입니다. 이 소프트웨어는 어떠한 종류의 보증도 없이 "있는 그대로" 제공됩니다. 저자는 가져온 자료에 대해 어떤 진술이나 보증도 하지 않으며, 이 소프트웨어나 가져온 자료를 사용하거나 사용하지 못해 발생하는 어떠한 손실, 손해, 책임 또는 법적 결과에 대해서도 책임을 지지 않습니다. 이 소프트웨어와 가져온 자료의 사용은 전적으로 귀하의 책임입니다.
라이선스
이 프로젝트는 Apache License 2.0로 라이선스가 부여됩니다.
출처
- 원문: https://github.com/NVIDIA/OpenShell (2026-10-23 · github.com)