
비밀을 유출하거나 자신의 PR을 병합할 수 없는 AI 코딩 에이전트.
당신은 책임감 있는 엔지니어입니다. AI가 가장 민감한 시스템과 코드베이스를 마구 휘젓도록 내버려두지 않을 것입니다.
그렇기에 Claude Code와 같은 도구의 안전 장치를 절대 해제하지 않을 것입니다. 위험한 작업마다 허가를 요청하니까요! 안전합니다!
그래서 당신은 기다립니다. 그리고 응답합니다. 결정 피로가 쌓입니다. 그리고 바로 그때 일이 발생합니다.
권한 프롬프트는 위협 모델의 가장 약한 부분인 피곤한 사용자를 무시합니다. 에이전트의 폭발 반경을 제한하면서 권한을 부여하여 결정을 PR 검토까지 미룰 수 있다면 어떨까요?
그것은 좋을 것입니다! 그리고 그것이 바로 yolo-cage입니다.
curl -fsSL https://github.com/borenstein/yolo-cage/releases/latest/download/yolo-cage -o yolo-cage
chmod +x yolo-cage && sudo mv yolo-cage /usr/local/bin/
yolo-cage build --interactive --up
그런 다음 샌드박스를 만들고 코딩을 시작하세요:
yolo-cage create feature-branch
yolo-cage attach feature-branch # Attach to agent in tmux
전제 조건: libvirt를 사용하는 Vagrant (Linux) 또는 QEMU (macOS, 실험적), 8GB RAM, 4 CPUs, GitHub PAT (repo 범위), Claude 계정. 자세한 내용은 설정 문서를 참조하세요.
HTTP/HTTPS 내 비밀 - 이그레스 프록시가 요청 본문, 헤더, URL을 스캔합니다:
sk-ant-*, AKIA*, ghp_*, SSH 개인 키, 일반 자격 증명 패턴git remote, git clone, git config, git credentialGitHub CLI - 디스패처가 위험한 명령을 차단합니다:
gh pr merge, gh repo delete, gh apiGitHub API - 프록시가 HTTP 계층에서 차단합니다:
PUT /repos/*/pulls/*/merge, DELETE /repos/*, 웹훅 수정유출 사이트: pastebin.com, file.io, transfer.sh 등
전체 위협 모델은 아키텍처를 참조하세요.
┌──────────────────────────────────────────────────────────────────────────┐
│ Runtime (Vagrant VM + MicroK8s) │
│ │
│ ┌────────────────────────────────────────────────────────────────────┐ │
│ │ Sandbox │ │
│ │ │ │
│ │ Agent (Claude Code in YOLO mode) │ │
│ │ │ │ │
│ │ ├── git/gh ──▶ Dispatcher ──▶ GitHub │ │
│ │ │ • Branch isolation enforcement │ │
│ │ │ • TruffleHog pre-push scanning │ │
│ │ │ │ │
│ │ └── HTTP/S ──▶ Egress Proxy ──▶ Internet │ │
│ │ • Secret scanning (LLM-Guard) │ │
│ │ • Domain blocklist │ │
│ └────────────────────────────────────────────────────────────────────┘ │
│ │
└──────────────────────────────────────────────────────────────────────────┘
브랜치당 하나의 샌드박스. 에이전트는 할당된 브랜치에만 푸시할 수 있습니다. 모든 아웃바운드 트래픽이 필터링됩니다.
샌드박스 내에서 실행 중인 웹 앱에 접근:
yolo-cage port-forward feature-x 8080 # localhost:8080 → sandbox:8080
yolo-cage port-forward feature-x 9000:3000 # localhost:9000 → sandbox:3000
yolo-cage port-forward feature-x 8080 --bind 0.0.0.0 # LAN accessible
프록시 우회, 훅 및 리소스 제한에 대해서는 설정을 참조하세요.
이는 위험을 줄입니다. 완전히 제거하지는 않습니다.
범위가 지정된 자격 증명을 사용하세요. 유출이 치명적일 수 있는 프로덕션 비밀은 사용하지 마십시오. 직접 테스트하려면 보안 감사를 참조하세요.
MIT. LICENSE 참조.
| Command | 설명 |
|---|
create <branch> | 샌드박스 생성 |
attach <branch> | 연결 (tmux에서 Claude) |
shell <branch> | 연결 (bash) |
list | 샌드박스 목록 |
delete <branch> | 샌드박스 삭제 |
port-forward <branch> <port> | 샌드박스에서 포트 포워딩 |
up / down | VM 시작/중지 |
upgrade [--rebuild] | 최신 버전으로 업그레이드 |
version | 버전 표시 |