AI エージェントのサンドボックス ガイド
Mac を丸ごと渡さずに、AI エージェントを Mac で動かす
結論は、エージェントに自分のユーザーアカウントではなく仮想マシンを渡すことです。起動前にスナップショットを取り、信頼できないものには使い捨てのクローンを作り、タスクにネットワークが要らないなら遮断します。このガイドでは、Apple Silicon での隔離方式を比べ、Kyvenza の内蔵 MCP サーバーを使ったワークフローを順に説明します。
隔離の方式ごとに、実際に何が守られるか
自分のユーザーアカウント:隔離なし
あなたとしてシェルコマンドを実行するエージェントは、あなたが持つものをすべて持ちます。Keychain、SSH 鍵、ブラウザーのセッション、クラウドの認証情報、読めるすべてのファイルです。誤ったコマンドやプロンプトインジェクションも、あなたと同じ範囲に届きます。
2 つ目の macOS ユーザー:ファイルは分かれるが、OS は共有
別のアカウントなら、ホームフォルダーと Keychain には手が届きません。ただし OS もカーネルも同じです。事故には効きますが、管理者権限を与えたエージェントに対しては効果が薄くなります。
コンテナ:Linux ツールには向くが、注意点あり
Mac 上のコンテナは Linux の仮想マシンの中で動き、そのカーネルを共有します。ヘッドレスな Linux ツールには向きますが、マウントしたホストのフォルダーや Docker ソケットがエージェントに外へ出る道を与えてしまい、macOS や Windows のアプリは動かせません。
仮想マシン:ハイパーバイザーが守る境界
ゲストは独立した OS です。共有しない限りホストのファイルは見えず、スナップショットがあれば、誤った操作のあとにマシン全体を巻き戻せます。1 台の Mac でコーディング エージェントを動かすなら、ちょうどよい落としどころです。
専用のマシン:最も強力だが、機器がもう 1 台
予備の Mac mini なら物理的に分離できます。ただし費用がかかり、セットアップも要り、管理する機器が 1 台増えます。VM なら、今お持ちの Mac で隔離の大半が得られます。
エージェント作業における Kyvenza の VM と Docker コンテナ
コンテナは多くのエージェント作業に十分で、すぐ作れます。違いが出るのは、エージェントがフルデスクトップや macOS・Windows のゲスト、より強い境界を必要とするときです。
| 項目 | Kyvenza | Docker container |
|---|---|---|
| ゲスト OS | Linux ARM、macOS ARM、Windows 11 ARM | Linux のみ |
| 隔離の境界 | ハイパーバイザーが守る独立した OS | 1 つの Docker 仮想マシン内で共有される Linux カーネル |
| 誤った操作のあとの巻き戻し | スナップショットを復元。MCP 経由では、エージェントが VM を起動する前に自動で 1 つ取られます | コンテナを作り直し、ボリュームを復元 |
| 使い捨てのコピー | clone_vm:コピーオンライトで、約 1 秒で現れます | あり。新しいコンテナはすぐ起動します |
| ネットワークを完全に切る | 分離ネットワーク。Linux ではゲスト エージェントがコマンド実行とスクリーンショットを続けられます | あり。ネットワークなしの設定で可能 |
| 画面を見る | フルデスクトップのゲストで screenshot ツール | デスクトップを足さない限りターミナルのみ |
| 最も合う用途 | 本物のデスクトップや macOS が要るエージェント、信頼できないインストーラー | ヘッドレスな Linux ツールと CI |
Kyvenza が今できること
短く、正直に並べます。ダウンロードする前に何が期待できるかが分かります。
現在対応しているもの
- Apple Silicon Mac(M1、M2、M3、M4、M5)
- ARM 版 Windows 11(Microsoft のイメージとライセンスはご自身でご用意ください)
- Ubuntu ARM(LTS リリース)
- Debian ARM
- Fedora ARM
- ホストは macOS 14 Sonoma 以降
- Apple 純正 Virtualization framework をネイティブに利用
まだ対応していないもの
- Windows ゲストでの GPU / 3D アクセラレーション
- Windows ゲストでのマイク入力と USB パススルー
- x86 / Intel のゲスト OS
- ネストされた仮想化
- GPU パススルー
今はお届けできないことも書き出しておきます。そのうえで計画を立てていただけます。
使い方
きれいなベース VM を用意する
Kyvenza で Linux か macOS のゲストを作り、エージェントが使うツールを入れて、シャットダウンします。これが正常な状態のベースです。個人の認証情報は入れないでください。
MCP サーバーをオンにして、エージェントを接続する
設定の「Automation」でサーバーをオンにし、お使いの Mac のトークンがすでに入ったエンドポイントをコピーします。Claude Code なら接続は 1 コマンドです:claude mcp add --transport http kyvenza http://127.0.0.1:59800/mcp/YOUR-TOKEN。URL を受け付ける MCP クライアントなら、どれでも使えます。
クローンして、実行し、結果を読み、削除する
破壊的なツールを有効にすると、エージェントはベースをサンドボックスにクローンし、その中でインストーラーやスクリプトを実行して出力を読み、クローンを削除します。クローンはコピーオンライトで、削除はゴミ箱に入ります。外へ通信させたくないコードなら、先に VM を分離ネットワークに設定してください。
よくある質問
メインのアカウントでは安全ではありません。あなたとしてシェルコマンドを実行できるエージェントは、Keychain、SSH 鍵、ブラウザーのセッションを読めるので、誤ったコマンドやプロンプトインジェクションも、あなたと同じ範囲に届きます。認証情報を一切持たない仮想マシンの中で動かし、起動前にスナップショットを取ってください。
エージェントに専用のマシンを
Kyvenza をダウンロードして MCP サーバーをオンにし、スナップショットを取って捨てられる VM でエージェントを働かせてください。7日間のトライアルのあとは $49 の一回払いです。