Docker Sandboxes に標準搭載されている AI コーディングエージェントの認証、構成、および使用方法について説明します。
プロジェクト ディレクトリを指定して、サンドボックス内で Claude Code を起動します:
$ sbx run claude ~/my-project
ワークスペース パラメーターはデフォルトで現在のディレクトリになるため、プロジェクトのディレクトリ内から sbx run claude
を実行することもできます。特定のプロンプトで Claude を起動するには次のようにします:
$ sbx run claude --name my-sandbox -- "Add error handling to the login function"
-- 以降のすべての内容は、Claude Code に直接渡されます。また、-- "$(cat prompt.txt)"
のようにファイルからプロンプトをパイプで渡すこともできます。
Claude Code には、Anthropic API キーまたは Claude サブスクリプションが必要です。
API キー: 保存されたシークレットを使用してキーを保存します。
$ sbx secret set -g anthropic
あるいは、サンドボックスを実行する前にシェルで ANTHROPIC_API_KEY 環境変数をエクスポートすることもできます。両方の方法の詳細については、Credentials (資格情報)
(英語) を参照してください。
Claude サブスクリプション: API キーが設定されていない場合、Claude Code は OAuth を使用して対話的に認証するようプロンプトを表示します。プロキシが OAuth フローを処理するため、資格情報がサンドボックス内に保存されることはありません。
サンドボックスは、~/.claude
などのホストからのユーザーレベルの構成を取得しません。サンドボックス内では、作業ディレクトリ内のプロジェクトレベルの構成のみが利用可能です。回避策については、サンドボックスがユーザーレベルのエージェント構成を使用しないのはなぜですか? (英語) を参照してください。
追加の引数なしの場合、サンドボックスは以下を実行します:
claude --dangerously-skip-permissions
--
以降の引数は、追加されるのではなく、これらのデフォルト値を置き換えます。--dangerously-skip-permissions を維持するには、ご自身で含める必要があります:
$ sbx run claude -- --dangerously-skip-permissions -c
利用可能なオプションについては、Claude Code CLI リファレンス (英語) を参照してください。
Claude Code の Agents ビュー (英語) は、それぞれが自身の Git ワークツリーを持つ並行して動作するサブエージェントにタスクをディスパッチします。隔離されたマルチエージェント ワークフローを実現するには、クローン モードと組み合わせて使用します:
$ sbx run --clone claude -- agents
この呼び出しはデフォルトの起動コマンドを置き換えるため、--dangerously-skip-permissions
が含まれず、サンドボックス内でパーミッションをバイパスするモードに切り替えることはできません。これを回避するには、Claude Code の auto モードを使用するか、フラグを明示的に渡します:
$ sbx run --clone claude -- --dangerously-skip-permissions agents
サブエージェントのワークツリーはサンドボックスのプライベート
クローン内に存在するため、どれもホストのリポジトリに触れることはありません。各サブエージェントは自身のブランチにコミットし、ホストから
sandbox-<sandbox-name> リモートをフェッチすることで作業をレビューできます:
$ git fetch sandbox-<sandbox-name>
$ git diff main..sandbox-<sandbox-name>/<branch>
クローン モードの詳細については、Git ワークフロー (英語) を参照してください。
サンドボックスは docker/sandbox-templates:claude-code を使用します。このベースの上に独自のイメージを構築するには、Templates (テンプレート)
(英語) を参照してください。
Docker Model Runner を介してホスト上のローカル モデルに対してサンドボックス内で Claude Code を実行するには、Docker Model Runner で Docker サンドボックス内で Claude Code を実行する (英語) を参照してください。サンドボックスなしのホスト専用バージョンについては、Docker Model Runner で Claude Code を使用する (英語) を参照してください。
このガイドでは、サンドボックス環境での Cursor の認証、構成、および使用方法について説明します。
プロジェクト ディレクトリ用にサンドボックスを作成し、Cursor を実行します:
$ sbx run cursor ~/my-project
ワークスペース パラメーターは省略可能で、デフォルトで現在のディレクトリになります:
$ cd ~/my-project
$ sbx run cursor
Cursor は、API キーまたは OAuth の 2 つの認証方法をサポートしています。
API キー: 保存されたシークレットを使用して Cursor API キーを保存します。
$ sbx secret set -g cursor
あるいは、サンドボックスを実行する前にシェルで CURSOR_API_KEY 環境変数をエクスポートすることもできます。両方の方法の詳細については、Credentials (資格情報)
(英語) を参照してください。
OAuth: API キーが設定されていない場合、Cursor は初回実行時にサインインを対話的に求めます。プロキシが
api2.cursor.sh/auth/poll とのトークン交換を傍受するため、資格情報はホストによって管理され、サンドボックス内には保存されません。
サンドボックスは、~/.cursor
などのホストからのユーザーレベルの構成を取得しません。サンドボックス内では、作業ディレクトリ内のプロジェクトレベルの構成のみが利用可能です。回避策については、サンドボックスがユーザーレベルのエージェント構成を使用しないのはなぜですか? (英語) を参照してください。
Cursor は、エージェント固有の指示についてワークスペースから AGENTS.md を読み取ります。
追加の引数なしの場合、サンドボックスは以下を実行します:
cursor-agent --yolo
-- 以降の引数は、追加されるのではなく、これらのデフォルト値を置き換えます。--yolo
を維持するには、ご自身で含める必要があります:
$ sbx run cursor -- --yolo -p "refactor this"
テンプレート: docker/sandbox-templates:cursor-agent-docker
リクエストがホスト プロキシを経由するように、エージェント トラフィック用に HTTP/1.1 および Server-Sent Events が事前に構成されています。認証状態はサンドボックスの再起動をまたいで保持されます。
ツールを事前インストールしたり、この環境をカスタマイズしたりするには、Customize (カスタマイズ) (英語) を参照してください。
このガイドでは、サンドボックス環境での GitHub Copilot の認証、構成、および使用方法について説明します。
プロジェクト ディレクトリ用にサンドボックスを作成し、Copilot を実行します:
$ sbx run copilot ~/my-project
ワークスペース パラメーターは省略可能で、デフォルトで現在のディレクトリになります:
$ cd ~/my-project
$ sbx run copilot
Copilot には、Copilot アクセス権を持つ GitHub トークンが必要です。保存されたシークレットを使用してトークンを保存します。
$ echo "$(gh auth token)" | sbx secret set -g github
あるいは、サンドボックスを実行する前にシェルで GH_TOKEN または GITHUB_TOKEN
環境変数をエクスポートすることもできます。両方の方法の詳細については、Credentials (資格情報) (英語) を参照してください。
サンドボックスはホストからユーザーレベルの構成を取得しません。サンドボックス内では、作業ディレクトリ内のプロジェクトレベルの構成のみが利用可能です。回避策については、サンドボックスがユーザーレベルのエージェント構成を使用しないのはなぜですか? (英語) を参照してください。
Copilot はデフォルトでワークスペース ディレクトリを信頼するように構成されているため、ワークスペース ファイルに対して確認を繰り返すことなく動作します。
追加の引数なしの場合、サンドボックスは以下を実行します:
copilot --yolo
-- 以降の引数は、追加されるのではなく、これらのデフォルト値を置き換えます。--yolo
を維持するには、ご自身で含める必要があります:
$ sbx run copilot -- --yolo -p "review this PR"
テンプレート: docker/sandbox-templates:copilot
ワークスペース ディレクトリを信頼するように事前に構成されています。
ツールを事前インストールしたり、この環境をカスタマイズしたりするには、Customize (カスタマイズ) (英語) を参照してください。
このガイドでは、サンドボックス環境での Google Gemini の認証、構成、および使用方法について説明します。
プロジェクト ディレクトリ用にサンドボックスを作成し、Gemini を実行します:
$ sbx run gemini ~/my-project
ワークスペース パラメーターは省略可能で、デフォルトで現在のディレクトリになります:
$ cd ~/my-project
$ sbx run gemini
Gemini には、Google API キーまたは Gemini アクセス権を持つ Google アカウントが必要です。
API キー: 保存されたシークレットを使用してキーを保存します。
$ sbx secret set -g google
あるいは、サンドボックスを実行する前にシェルで GEMINI_API_KEY または GOOGLE_API_KEY
環境変数をエクスポートすることもできます。両方の方法の詳細については、Credentials (資格情報) (英語) を参照してください。
Google アカウント: API キーが設定されていない場合、Gemini は起動時に対話的にサインインするように求めてきます。対話型認証はサンドボックスにスコープされており、サンドボックスを削除して再作成した場合は保持されません。
サンドボックスは、~/.gemini
などのホストからのユーザーレベルの構成を取得しません。サンドボックス内では、作業ディレクトリ内のプロジェクトレベルの構成のみが利用可能です。回避策については、サンドボックスがユーザーレベルのエージェント構成を使用しないのはなぜですか? (英語) を参照してください。
サンドボックスは、Gemini に組み込まれた sandbox ツールを無効にします (サンドボックス自体が隔離を提供するため)。
追加の引数なしの場合、サンドボックスは以下を実行します:
gemini --yolo
-- 以降の引数は、追加されるのではなく、これらのデフォルト値を置き換えます。--yolo
を維持するには、ご自身で含める必要があります:
$ sbx run gemini -- --yolo -p "explain this"
テンプレート: docker/sandbox-templates:gemini
Gemini は組み込みの OAuth フローを無効にするように構成されています。認証はプロキシを介して API キーで管理されます。
ツールを事前インストールしたり、この環境をカスタマイズしたりするには、Customize (カスタマイズ) (英語) を参照してください。
プロジェクト ディレクトリ用にサンドボックスを作成し、Docker Agent を実行します:
$ sbx run docker-agent ~/my-project
ワークスペース パラメーターはデフォルトで現在のディレクトリになるため、プロジェクトのディレクトリ内から sbx run docker-agent
を実行することもできます。
Docker Agent は複数のプロバイダーをサポートしています。使用したいプロバイダーのキーを保存されたシークレットで保存します。
$ sbx secret set -g openai
$ sbx secret set -g anthropic
$ sbx secret set -g google
$ sbx secret set -g xai
$ sbx secret set -g nebius
$ sbx secret set -g mistral
使用したいプロバイダーのみを設定する必要があります。Docker Agent は利用可能な資格情報を検出し、リクエストを適切なプロバイダーにルーティングします。
あるいは、サンドボックスを実行する前にシェルで環境変数
(OPENAI_API_KEY、ANTHROPIC_API_KEY、GOOGLE_API_KEY、XAI_API_KEY、NEBIUS_API_KEY、MISTRAL_API_KEY)
をエクスポートすることもできます。両方の方法の詳細については、Credentials (資格情報) (英語) を参照してください。
サンドボックスはホストからユーザーレベルの構成を取得しません。サンドボックス内では、作業ディレクトリ内のプロジェクトレベルの構成のみが利用可能です。回避策については、サンドボックスがユーザーレベルのエージェント構成を使用しないのはなぜですか? (英語) を参照してください。
追加の引数なしの場合、サンドボックスは以下を実行します:
docker-agent run --yolo
-- 以降の引数は、追加されるのではなく、これらのデフォルト値を置き換えます。run --yolo
を維持するには、ご自身で含める必要があります:
$ sbx run docker-agent -- run --yolo agent.yml
サンドボックスは docker/sandbox-templates:docker-agent を使用します。このベースの上に独自のイメージを構築するには、Templates (テンプレート)
(英語) を参照してください。
このガイドでは、サンドボックス環境での OpenAI Codex の認証、構成、および使用方法について説明します。
プロジェクト ディレクトリ用にサンドボックスを作成し、Codex を実行します:
$ sbx run codex ~/my-project
ワークスペース パラメーターは省略可能で、デフォルトで現在のディレクトリになります:
$ cd ~/my-project
$ sbx run codex
Codex は OpenAI の API キーを使用します。
API キー: サンドボックス環境を開始する前に、ホストマシンで API キーを保存されたシークレットとして設定します。
$ sbx secret set -g openai
あるいは、サンドボックスを実行する前にシェルで OPENAI_API_KEY 環境変数をエクスポートすることもできます。
OAuth: API キーを使用しない場合は、ホストで次のように OAuth フローを開始します:
$ sbx secret set -g openai --oauth
これにより、認証用のブラウザ ウィンドウが開き、結果のトークンが OS のキーチェーンに保存されます。OAuth フローはサンドボックス内ではなくホスト上で実行されるため、ブラウザ ベースの認証は追加の設定なしで機能します。
詳細については、Credentials (資格情報) (英語) を参照してください。
サンドボックスは、~/.codex
などのホストからのユーザーレベルの構成を取得しません。サンドボックス内では、作業ディレクトリ内のプロジェクトレベルの構成のみが利用可能です。回避策については、サンドボックスがユーザーレベルのエージェント構成を使用しないのはなぜですか? (英語) を参照してください。
追加の引数なしの場合、サンドボックスは以下を実行します:
codex --dangerously-bypass-approvals-and-sandbox
-- 以降の引数は、追加されるのではなく、これらのデフォルト値を置き換えます。フラグを維持するには、ご自身で含める必要があります:
$ sbx run codex -- --dangerously-bypass-approvals-and-sandbox "fix the build"
テンプレート: docker/sandbox-templates:codex
ツールを事前インストールしたり、この環境をカスタマイズしたりするには、Customize (カスタマイズ) (英語) を参照してください。
「自社の開発フローにどう組み込めるか」「セキュリティ要件を満たせるか」など、導入に向けた具体的な疑問にお答えします。専任スタッフによる個別デモで、Docker Sandboxes の圧倒的な開発体験と管理機能をぜひお確かめください。