Claude Code の隔離環境の選び方|サンドボックス比較

この記事の要点
- 隔離の方法は6つ。軽いのはコマンドだけを囲うサンドボックス、重いのは仮想マシン。違いは「何を囲うか」と「準備の手間」
- ふだんの確認を減らすならコマンドのサンドボックス、確認なしで放っておくならコンテナ・仮想マシン・sandbox runtime
- 権限モードは「実行してよいか」、隔離は「実行した後に何に触れるか」を決める。組み合わせて使う
活用例:夜間に AI へ確認なしで作業を任せる時の環境づくり
- 部署
- 開発・情報システム
- 使うもの
- Claude Code の開発コンテナや sandbox runtime
- AIに任せる
- 囲いの中での作業(テストの実行・修正・まとめ)
- 人が決める
- 囲いの方法・書き込んでよい場所・通信してよい相手・終わった後の確認
Claude Code に 確認なしで作業を任せる時ほど、「どこまで触れるか」を囲う仕組み が大切になります。囲い方は1つではなく、軽い物から重い物まで6つの方法があります。
この記事では、公式ドキュメント「Choose a sandbox environment」(2026年11月13日確認)にもとづいて、それぞれの違いと、目的に合わせた選び方を整理します。コマンドを囲う組み込みのサンドボックスの設定は Claude Codeのサンドボックスとは? で解説しています。
結論:「何を囲うか」と「どこまで放っておくか」で選ぶ
組み込みのサンドボックスが囲うのは、Claude が実行するコマンドだけです。 ファイルを読む・書く道具、MCP サーバー、フックは、そのまま手元のパソコンで動きます。それ以外の5つの方法は、Claude Code 全体を囲いの中に入れます。

6つの方法の比較
| 方法 | 囲う範囲 | Docker | 準備の手間 |
|---|---|---|---|
| コマンドのサンドボックス | Claude が実行するコマンド | 不要 | Mac はほぼ無し・Linux と WSL2 は少し |
| sandbox runtime | Claude Code 全体(ファイルの道具・MCP・フックも) | 不要 | 少し |
| 開発コンテナ | 開発の環境まるごと | 必要 | ふつう |
| 独自のコンテナ | 開発の環境まるごと | 必要 | ふつう〜多い |
| 仮想マシン | OS まるごと | 不要 | 多い |
| クラウド | OS まるごと(Anthropic が用意) | 不要 | 無し(契約と GitHub の連携が要る) |
囲えば安心、というわけではない点にも注意します。 外へ通信できる囲いなら、読めたデータを外へ送れてしまいますし、プロジェクトのフォルダを書き込める形で入れれば、そのコードは書き換えられます。また、囲っていても、Claude に送る文章や読ませたファイルの中身は、ふだんどおりモデルに送られます。送られる物は Claude Codeのデータは学習に使われる? で解説しています。
目的別の選び方
| やりたいこと | まず選ぶ物 |
|---|---|
| 手元のふだんの作業で、確認の回数を減らしたい | コマンドのサンドボックス(/sandbox で設定) |
| 確認なしの起動やオートモードで、放っておきたい | 開発コンテナ・コンテナ・仮想マシン・sandbox runtime |
| Docker なしで、MCP やフックまで囲いたい | sandbox runtime |
| チームで同じ囲いをそろえたい | 開発コンテナをリポジトリに入れる |
| 手元に何も用意せずに使いたい | クラウド |
| Windows のパソコンで使いたい | コンテナ・仮想マシン、または WSL2 の中でコマンドのサンドボックス |
開発コンテナの使い方は Claude Code を開発コンテナで動かす方法 で、クラウドでの作業は Claude Code をクラウドで使う方法 で紹介しています。
権限モードとの関係
権限モードは「その操作を実行してよいか・先に聞くか」を決め、隔離は「実行した後に何へ触れられるか」を決めます。 2つは役割が違うので、組み合わせて使います。
- 確認なしで起動する時(--dangerously-skip-permissions):確認で間違いを止められないので、必ずコンテナ・仮想マシン・sandbox runtime の中で動かすのが公式の案内です。Linux と Mac では管理者(root)のまま起動するとこのフラグは断られるので、ふつうのユーザーで動かします
- オートモードの時:確認の代わりに、操作ごとに判定する仕組みが働きます。囲いは必須ではありませんが、放っておく作業では守りを重ねる意味があります
- コマンドのサンドボックスだけでは、コマンドしか囲わないので、どちらのモードでも放っておく作業には足りません
モードの違いは Claude Code 権限モードの違い で、オートモードは Claude Code のオートモードとは? で解説しています。
sandbox runtime の使い方の要点
sandbox runtime は、Claude Code 全体を、組み込みのサンドボックスと同じ仕組みで囲う道具です(いまは研究段階のベータ版)。
- 設定ファイルに、書き込んでよい場所(プロジェクトのフォルダ・Claude Code の設定の場所・一時ファイルの場所)と、通信してよい相手(モデルの窓口・ログインに使う claude.ai など)を書く
- 道具を入れて、プロジェクトのフォルダで srt claude と打って起動する
既定では通信も書き込みも止まっているので、先に設定を書いてから起動します。また、設定ファイルが無くても起動はするので、「起動できた=設定が読まれた」とは限りません。Git のフックや .mcp.json などの危ない場所への書き込みは、設定しなくても止められます。放っておいた作業の後は、書き込めるようにした場所を見直します。
会社で隔離を徹底するには
- コマンドのサンドボックス:Claude Code 自身が守らせられる唯一の方法です。会社で配る設定(マネージド設定)に入れると、各自が勝手に広げられないようにできます
- 開発コンテナ:リポジトリに入れてそろえるのは「決まりごと」で、外で動かすこと自体は止められません。止めたい時は、会社の端末管理の仕組みを使います
- 独自のコンテナ・仮想マシン:認めたイメージの中で配り、端末管理で外での導入を止めます
会社で配る設定は Claude Code の管理者設定 で解説しています。
よくある質問
いちばん安全なのはどれですか?
分け方がいちばん強いのは仮想マシンです。 カーネルから分かれるので、会社の決まりでそこまで求められる時に選びます。準備の手間が大きいので、ふだんは開発コンテナや sandbox runtime から始めるのが現実的です。
プラグインのフックも囲えますか?
コマンドのサンドボックスでは囲えません。フック・モニター・MCP サーバーまで囲いたい時は、Claude Code 全体を入れる方法を選びます。プラグインが動かす物は Claude Code プラグインは安全? で整理しています。
Agent SDK で作ったアプリも同じ考え方ですか?
考え方は同じです。アプリとして置く時の囲い方は Agent SDK を安全に置く方法 で解説しています。
まとめ
- 隔離の方法は6つ。コマンドだけを囲う物と、Claude Code 全体を囲う物に分かれる
- ふだんの確認を減らすならコマンドのサンドボックス、放っておくならコンテナ・仮想マシン・sandbox runtime
- 確認なしの起動は、必ず全体を囲う方法の中で
- 囲っても、送る文章や読ませたファイルはモデルに届く
出典:Anthropic「Choose a sandbox environment」(2026年11月13日確認) https://code.claude.com/docs/en/sandbox-environments
この記事はAIを使って下書きし、著者が事実確認・加筆しています。ツールの機能や料金は変わることがあるため、最新の情報は各社の公式ページでご確認ください。


