
秘密を外部に漏洩したり、自分自身の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 CPU、GitHub PAT(repoスコープ)、Claudeアカウント。詳細はセットアップドキュメントを参照してください。
HTTP/HTTPS内の機密情報 - エグレスプロキシがリクエスト本文、ヘッダー、URLをスキャンします:
sk-ant-*、AKIA*、ghp_*、SSH秘密鍵、一般的な認証情報パターンGit操作 - ディスパッチャーがブランチ分離を強制します:
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/*、webhookの変更情報流出サイト: 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 │ │
│ └────────────────────────────────────────────────────────────────────┘ │
│ │
└──────────────────────────────────────────────────────────────────────────┘
ブランチごとに1つのサンドボックス。エージェントは割り当てられたブランチにのみプッシュできます。すべての送信トラフィックがフィルタリングされます。
サンドボックス内で実行されているWebアプリにアクセスします:
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を参照。
| コマンド | 説明 |
|---|
create <branch> | サンドボックスを作成 |
attach <branch> | アタッチ(tmux内のClaude) |
shell <branch> | アタッチ(bash) |
list | サンドボックスを一覧表示 |
delete <branch> | サンドボックスを削除 |
port-forward <branch> <port> | サンドボックスからポート転送 |
up / down | VMを起動/停止 |
upgrade [--rebuild] | 最新バージョンにアップグレード |
version | バージョンを表示 |