프로젝트 소개

OpenSandbox는 AI 애플리케이션을 겨냥한 범용 샌드박스 플랫폼입니다. README에 따르면 Coding Agents, GUI Agents, Agent Evaluation, AI Code Execution, RL Training과 같은 워크로드를 위한 안전하고 확장 가능한 실행 환경을 제공하며, 노트북부터 대규모 클러스터까지 일관된 API를 제공합니다. 설명된 주요 기능: - SDK, CLI 및 MCP: Python, Java/Kotlin, TypeScript, C#/.NET, Go용 네이티브 SDK와 `osb` 명령줄 도구, MCP 서버를 제공합니다. README는 샌드박스 생성, 명령 실행, 파일 작업을 위한 단일 API 표면을 제시합니다. - 개방형 프로토콜: 샌드박스 수명 주기와 실행 API가 공개 OpenAPI 계약으로 정의되어 있어, 클라이언트 코드를 변경하지 않고도 사용자 정의 런타임을 통합할 수 있습니다. - 런타임 및 환경: 동일한 SDK 호출 뒤에서 Docker 및 Kubernetes 런타임을 사용할 수 있으며, 내장된 Command, Filesystem, Code Interpreter 환경을 제공합니다. 문서화된 사용 사례로는 코딩 CLI(Claude Code, Gemini CLI, Codex CLI, OpenCode, Qwen Code, Kimi CLI), 브라우저 자동화(Chrome, Playwright), 데스크톱 환경(VNC, VS Code / code-server)이 있습니다. - 하이브리드 배포: 이 프로젝트는 장기 실행 Kubernetes 네이티브 컨테이너 워크로드와 단기 마이크로VM 샌드박스를 하나의 클러스터에서 혼합하는 방식을 설명합니다. 상시 대기 시간과 약 80ms 시작을 위한 사전 예열된 Firecracker 기반 풀, 상태를 아티팩트 저장소에 체크포인트하고 컴퓨팅을 해제한 뒤 어떤 호스트에서든 재개하는 FastSandbox 일시 중지/재개를 언급합니다. - 네트워크 정책 및 자격 증명 보관소: 여러 라우팅 전략을 갖춘 통합 인그레스 게이트웨이, 샌드박스별 이그레스 제어, 실제 비밀 정보를 샌드박스 워크로드로부터 멀리 유지하기 위한 자격 증명 주입을 제공합니다. - 강력한 격리: 워크로드는 호스트로부터 격리를 위해 gVisor, Kata Containers 또는 Firecracker 마이크로VM 아래에서 실행될 수 있습니다. 시작하기: README는 Docker와 Python 3.10+를 요구 사항으로 나열합니다. 샌드박스 서버는 `uvx opensandbox-server init-config ~/.sandbox.toml --example docker`와 `uvx opensandbox-server`로 초기화하고 시작할 수 있습니다. Python SDK는 `pip install opensandbox`로 설치하며, 짧은 예제는 Alpine 기반 샌드박스를 생성하고, 셸 명령을 실행하고, 파일을 쓰고 읽고, 스크립트를 실행하고, 샌드박스를 파괴하는 방법을 보여줍니다. 공식 컨테이너 이미지는 Docker Hub, GitHub Container Registry, Alibaba Cloud Container Registry에 게시됩니다. README는 태그된 릴리스 이미지가 Cosign으로 키 없이 서명되고 출처 증명을 포함한다고 밝히며, 프로덕션 이미지를 다이제스트로 고정하고 OpenSandbox GitHub Actions 아이덴티티에 대해 검증할 것을 권장합니다. 문서는 아키텍처, 자격 증명 보관소, 릴리스 검증, 개선 제안, SDK 참조, CLI, MCP 서버, OpenAPI 사양, 서버 구성을 다룹니다. 이 프로젝트는 Apache 2.0에 따라 라이선스가 부여되며, 토론을 위한 GitHub Issues, Discord, DingTalk 채널을 제공합니다.