jai - AI 에이전트를 위한 경량 격리 도구
Linux 환경에서 AI 에이전트를 손쉽게 격리(containment) 할 수 있도록 설계된 도구. 복잡한 컨테이너나 VM 설정 없이 단일 명령으로 안전한 실행 경계를 제공합니다.
개요
jai는 AI 도구가 실제 파일 시스템에 접근해 데이터를 삭제하거나 손상시키는 문제를 방지하기 위한 도구입니다. 홈 디렉터리를 copy-on-write 오버레이로 보호하고 /tmp·/var/tmp를 분리해 원본 파일 변경을 방지합니다.
GitHub: https://jai.scs.stanford.edu/
실제 문제 사례
여러 사용자가 AI 도구 사용 중 파일 손실 및 디렉터리 삭제 피해를 보고했습니다:
- Nick Davidov: 15년치 가족 사진이 터미널 명령으로 삭제됨
- Anthropic Claude Code: 홈 디렉터리를 삭제해 개발 프로젝트 손실
- Cursor: 작업 트리를 비워 “모든 것이 사라졌다”는 보고
- Antigravity: 전체 D 드라이브 삭제 (Reddit 사용자 언급)
- Cursor 사용자: 100GB의 파일 삭제
이러한 사례는 AI 도구에 실제 계정 접근을 허용할 때 발생하는 보안 공백을 보여줍니다.
jai의 핵심 기능
자동 경계 설정
- 실행 계정과 홈 디렉터리 사이의 경계를 자동 설정
- 작업 디렉터리는 완전한 읽기/쓰기 권한 유지
- 홈 디렉터리는 copy-on-write 오버레이로 보호되어 원본 파일이 변경되지 않음
- /tmp와 /var/tmp는 독립된 공간으로 분리, 나머지 파일은 읽기 전용으로 제한
간단한 사용법
명령어 앞에 jai를 붙이는 것만으로 격리 실행 가능:
jai codex
jai claude
jai # 또는 단순히 jai로 셸 실행- Dockerfile이나 이미지 빌드 과정 없이 즉시 사용 가능
- 복잡한 bwrap 플래그 설정이나 스크립트 작성이 불필요
격리 모드 선택
| 모드 | 설명 | 보안 수준 |
|---|---|---|
| Casual | 홈 디렉터리를 copy-on-write로 보호, 대부분의 파일 읽기 가능 | 기본 격리 |
| Strict | 별도 jai 사용자로 실행, 홈 디렉터리가 비워진 상태로 강력한 격리 제공 | 강력한 격리 |
| Bare | 홈 디렉터리가 비워진 상태지만 사용자 UID 유지 | 최소 격리 |
각 모드는 기밀성(confidentiality), 무결성(integrity), NFS 지원 여부가 다릅니다. Strict 모드는 가장 강력한 격리를 제공하지만 NFS 홈은 지원하지 않습니다.
대안 도구와의 비교
| 도구 | 장점 | 단점 |
|---|---|---|
| Docker | 이미지 기반 환경 재현에 적합 | 호스트 도구의 임시 샌드박싱에는 무거움, 홈 디렉터리 오버레이 기능 없음 |
| bubblewrap | 강력한 네임스페이스 샌드박스 | 파일시스템 구성을 직접 지정해야 함 |
| chroot | 간단한 파일시스템 격리 | 보안 격리 수단이 아님, 마운트·PID 네임스페이스·자격 분리 기능이 없어 Linux에서도 샌드박싱 용도로 권장되지 않음 |
jai는 이러한 복잡성을 제거합니다.
보안 한계
jai는 완전한 보안을 보장하지 않습니다:
- “casual sandbox”로서 피해 범위를 줄이지만 모든 공격을 차단하지는 않음
- Casual 모드는 기밀성 보호가 약하며, Strict 모드도 컨테이너나 VM 수준의 격리와는 다름
- 다중 테넌트 환경이나 고위험 상황에서는 컨테이너 또는 가상머신 사용 권장
프로젝트 배경
- 개발: Stanford Secure Computer Systems(SCS) 연구 그룹과 Future of Digital Currency Initiative(FDCI) 공동 개발
- 라이선스: 무료 오픈소스 소프트웨어
- 목표: 사용자가 AI를 더 안전하게 활용할 수 있도록 지원
요약
jai는 AI 코딩 도구(Claude Code, Cursor 등)를 사용할 때 파일 삭제나 시스템 손상을 방지하는 실용적인 보호 수단입니다. 복잡한 컨테이너 설정 없이 단일 명령어로 안전한 실행 환경을 제공합니다.
Related
- 공식 웹사이트: https://jai.scs.stanford.edu/
- GitHub: https://github.com/stanford-fdc/jai (추정 URL, 실제 링크는 확인 필요)
Source: hada.io 뉴스 (2026-03-29)