-
AI 에이전트 실행을 위한 경량 Linux 가상머신 환경으로, macOS의 Virtualization.framework를 기반으로 동작
- 모든 실행이 기본적으로 일회성(Ephemeral) 으로 시작되어, 설치나 변경이 종료 시 자동 초기화됨
-
Checkpoint 기능을 통해 디스크 상태를 스냅샷으로 저장하고, 복원·분기·재사용 가능
-
네트워크, CPU, 메모리, 디스크 크기를 명령줄 옵션이나 설정 파일로 세밀하게 제어 가능
- AI 코드 실행, 패키지 설치, 평가 및 테스트용으로 안전하고 재현 가능한 로컬 샌드박스 환경을 제공
로컬 우선 샌드박스 개요
- macOS에서 AI 에이전트용 경량 Linux VM을 실행하는 구조
- Apple Virtualization.framework를 사용해 에뮬레이션 없이 ARM64 네이티브 속도 제공
- Docker 의존성이 없으며, 기본적으로 임시적(Ephemeral) 실행 형태
- 각 실행은 깨끗한 rootfs에서 시작하며, 변경 사항은 저장하지 않는 한 유지되지 않음
상태 관리와 스냅샷
-
Checkpoint 기능으로 디스크 상태를 이름 있는 스냅샷으로 저장 가능
- 저장된 스냅샷은 복원, 분기, 반복 실행 가능
- Git 커밋처럼 환경 버전 관리가 가능함
- 예시 명령:
-
$ shuru checkpoint create myenv --allow-net -- sh -c 'apk add nodejs npm' → ‘myenv’ 스냅샷 저장
-
$ shuru run --from myenv -- node -e 'console.log("ready")' → 저장된 환경에서 즉시 실행
CLI 기능
- 단일 명령으로 VM을 부팅하고 종료하는 간단한 CLI 인터페이스 제공
-
$ shuru run -- echo "hello from the sandbox" → 샌드박스 내 명령 실행
-
$ shuru run -- cat /etc/os-release | head -1 → Alpine Linux 환경 확인
-
네트워크 접근은 기본 비활성화, --allow-net 플래그로 NAT 활성화 가능
-
리소스 설정: --cpus, --memory, --disk-size 옵션으로 실행 환경 조정
-
포트 포워딩 지원: -p 8080:8000 형식으로 호스트와 게스트 간 연결 가능
AI 에이전트 실행 및 활용
-
AI 생성 코드 실행을 위한 격리된 VM 환경 제공
-
패키지 설치, 코드 컴파일, 시스템 도구 사용을 안전하게 수행
-
병렬 샌드박스 실행으로 환경 간 일관된 평가 수행 가능
-
테스트, 디버깅, 프로토타이핑을 위한 일회용 Linux 환경으로 활용 가능
설치 및 시작
- 설치와 실행 모두 단일 명령으로 수행 가능
-
빠른 초기화와 폐기 가능한 환경으로, 개발자와 AI 시스템 모두에 안전한 실행 공간 제공