クラウド環境を設定する
Claude Code クラウドセッション用のクラウド環境を設定します。ネットワークアクセスレベル、環境変数、セットアップスクリプト、環境キャッシュを構成できます。
クラウド環境は クラウドセッション に適用されます。これは Pro、Max、Team ユーザーの研究プレビュー版であり、プレミアムシートまたは Chat + Claude Code シートを持つ Enterprise ユーザー向けです。
各 クラウドセッション はクラウド環境で実行されます。環境を設定して ネットワークアクセス を許可または拒否し、セッション用に 環境変数を設定 し、Pro および Max プランで API 認証情報 を保存してセッションが認証情報を見ずに使用でき、Claude が作業を開始する前に セットアップスクリプト を実行できます。
同じ環境は、クラウドセッションを開始する場所に関係なく適用されます。Desktop アプリ、Claude モバイルアプリ、claude.ai/code のブラウザ、claude --cloud を使用したターミナル、ルーチン、Claude Tag です。これらの各サーフェスは セルフホスト環境 にもルーティングできます。利用可能性と制限 は、Claude Tag セッションがセルフホスト環境で実行される場合に Claude がまだ使用できないものをカバーしています。
Remote Control セッションは Web とモバイルインターフェイスを自分のマシン上のセッションに接続します。これはクラウド環境ではなく、自分のマシンのネットワークとファイルを使用します。Claude Tag チャネルセッションは 共有環境 または セルフホスト環境 のいずれかの組織レベルの環境のみを使用します。
Default 環境
環境がまだない場合、オンボーディングは Default 環境をセットアップします。どのように設定されるかは、オンボーディングの場所によって異なります。
/web-setupなどの CLI フロー:Default を作成します- Pro および Max での Web オンボーディング:Default を作成します
- Team および Enterprise での Web オンボーディング:オーナーが Quick web setup をオンにしていない限り、最初のクラウド環境を作成 フォームを表示します。フォームのデフォルトを保持して 作成して完了 をクリックして、同じ Default 環境を取得します
Default は独自の設定を持ちません。
- Trusted ネットワークアクセス:セッションはパッケージレジストリおよび他の 許可リストドメイン に到達でき、セッションのネットワークを通じて他には何も到達できません。
- その他の設定なし:Default は環境変数またはセットアップスクリプトを定義しないため、セッションは プリインストールされたツール だけで開始されます。
Default のみが利用可能な場合、すべてのセッションはそれで実行されます。複数の環境がある場合、セッションはサーフェスごとに 1 つを選択します。
- Desktop アプリ、モバイルアプリ、および claude.ai/code では、自分で開始したセッションは セレクタ に表示される環境を使用します。オーナーが設定した 組織のデフォルト は、選択していない場合にセレクションを埋めます。プロジェクト 内のスレッドは、代わりにプロジェクトの設定で設定された環境を使用します。
- CLI からは、Claude Code は
/remote-envの選択 を使用するか、リストに 1 つある場合は Anthropic ホスト環境にフォールバックし、そうでない場合はブリッジ環境ではないリスト内の最初の環境にフォールバックします。ブリッジ環境は、クラウド環境ではなく独自のマシンを表すために Remote Control が登録するエントリです。セルフホスト環境 の場合、セッションをディスパッチする ときにccpool_ID を持つ--environment <environment-id>を渡すと、その呼び出しの/remote-envの選択とフォールバックをオーバーライドします。Claude Code は Anthropic ホストenv_ID をフラグに渡されたものを拒否するため、それらをターゲットにするには/remote-envを使用します。フラグには Claude Code v2.1.224 以降が必要です。
デフォルトでは不十分な場合は環境を設定します。Claude が デフォルト許可リスト 外のドメインに到達する必要がある場合、セッション用に環境変数を設定する必要がある場合、または作業を開始する前に依存関係をインストールする必要がある場合です。
環境を設定する
web onboarding 後に claude.ai/code で、または Desktop app のプロンプトボックスから環境セレクターにアクセスして、環境を作成、編集、アーカイブできます。作成した環境はアカウントに個人的なものです。Owner が作成した 共有環境 は同じセレクターに表示されます。設定なしで利用可能な内容については、インストール済みツール を参照してください。
環境を追加または編集する
クラウド環境を追加 を選択するか、既存の環境にホバーして右に表示される設定アイコンを選択します。ダイアログには名前、ネットワークアクセスレベル、環境変数、セットアップスクリプトが含まれます。Pro または Max プランで既存のクラウド環境を編集する場合、ダイアログには API 認証情報 も含まれます。
環境変数を設定する
環境変数は .env 形式を使用し、1 行に 1 つの KEY=value ペアです。プレーン値は引用符が不要で、一致するペアで値を引用符で囲む場合、引用符は値の一部にはなりません。複数行にまたがる値または # を含む値を引用符で囲みます。引用符なしの値では、# はコメントを開始し、行の残りは削除されます。
次の例は 3 つの変数を定義しています。
NODE_ENV=development
LOG_LEVEL=debug
DATABASE_URL=postgres://localhost:5432/myapp
各セッションは起動時に環境の値を 1 回コピーして、Claude が実行するコマンドが読み取ることができる通常の環境変数にします。実行中のセッションは設定を再度読み取らないため、変数を編集または追加すると、その後に開始するセッションに影響します。既に実行中のセッションは開始時の値を保持します。
クラウドセッションは起動時に自身でいくつかの変数も設定します。CLAUDE_AUTOCOMPACT_PCT_OVERRIDE の場合、セッションが設定する値はここで追加した値をオーバーライドするため、ここでそのキーを追加しても効果がありません。
環境を使用する誰もが値を読み取ることができます。Pro および Max プランでは、エージェントプロキシがリクエストに添付できるキーに対して API 認証情報 を代わりに使用してください。認証情報を取得しないリクエスト はそこにリストされています。
API 認証情報を追加する
API 認証情報は、クラウド環境に保存する API キーまたはトークンで、Claude が環境内の任意のセッションからそのキーを見ることなく API を呼び出すことができます。Anthropic のエージェントプロキシは、セッションの VM を離れた後、リストしたホストへのリクエストにキーを追加します。キーは Claude、実行するコマンド、またはセッションの環境変数に到達しません。
API 認証情報は Pro および Max プランで利用可能です。Team および Enterprise プランではまだ利用できないため、API 認証情報 セクションはこれらのプランの環境ダイアログに表示されません。
要件
これらのうち 2 つは認証情報を追加できるかどうかを決定し、2 つは追加後にエージェントプロキシがそれを使用できるかどうかを決定します。
- ロール: claude.ai 組織内の組織管理者ロール
- Team および Enterprise では、Owner がそれを保持し、Admin は保持しません
- Pro および Max では、独自の組織でそれを保持します
- それがない場合、自分の環境でも認証情報リストの代わりにメモが表示されます。Owner に共有環境に認証情報を追加してそこでセッションを実行するよう依頼してください
- 環境タイプ: 既に存在する Anthropic ホスト型クラウド環境。自己ホスト型環境 には API 認証情報がありません
- API 到達可能性: API がインターネットからの接続を受け入れます。リクエストは Anthropic のネットワークから離れるためです
- 暗号化キー: 組織がカスタマー管理暗号化キーを使用する場合、認証情報を保存できません
認証情報を追加する
既に存在する環境のエディターから一度に 1 つの認証情報を追加します。新しい環境のダイアログはそれらを提供しません。編集もありません。認証情報のホストまたは値を変更するには、削除して再度追加します。
環境の API 認証情報を開く
claude.ai/code で 環境を編集用に開きます。クラウド環境を更新 ダイアログで、環境変数 の下の API 認証情報 を見つけます。環境に既にある認証情報が表示され、それぞれが適用されるホストが表示されます。
認証情報を追加する
認証情報を追加 を選択してフォームに入力します。API キーがリクエストヘッダーで移動する場合はデフォルトの 認証情報タイプ、Bearer を保持し、これらのフィールドに入力します。
- 名前:
Internal billing APIなどの認証情報のラベル - 許可されたウェブサイト:
api.example.comなどの API のホスト。先頭の*.はすべてのサブドメインと一致します - カスタムヘッダー: キーを運ぶヘッダーの 1 行。行は
Authorizationをヘッダーの 名前 として、Bearerを プレフィックス として開始します。キー自体を 値 として貼り付けます。X-Api-Keyのようなベア値を取得するヘッダーの場合、名前を変更してプレフィックスをクリアします
別の方法で認証する API の場合、別の 認証情報タイプ を選択します。リストは Claude Tag(Team および Enterprise プランの Slack 統合)が 接続 に提供するものと同じです。
認証情報を保存する
接続 を選択します。認証情報はリストにホストと共に表示され、ダイアログの 変更を保存 ボタンなしで保存されます。保存後に値を再度表示することはできません。
認証情報が機能することを確認するには、環境でセッションを開始して Claude に API を呼び出すよう依頼します。例えば curl を使用します。API はキーがリクエストにあるかのように応答し、キーはセッションの環境変数またはファイルに表示されません。リストが認証情報を 送信されていません とマークしている場合、その下のメモは理由と対処方法を説明しています。ホストが正確に一致せずに重複する 2 つの認証情報はマーカーを取得せず、エージェントプロキシはそのうちの 1 つだけを送信します。
どのリクエストが認証情報を取得するか
エージェントプロキシは、リクエストのホストがその認証情報にリストしたものと一致する場合、認証情報をリクエストに添付します。セッションは、環境の ネットワークアクセスレベル がそれ以外の場合は許可しない場合でも、認証情報を取得しないホスト を除いて、これらのホストに到達できます。認証情報は、削除するまで、それを開始した人に関係なく、環境で実行されるすべてのセッションに適用されます。
認証情報を取得しないリクエスト
エージェントプロキシは、追加した認証情報をこれらのリクエストに添付しません。
- GitHub: GitHub プロキシ は代わりに GitHub へのリクエストを認証するため、GitHub に対して API 認証情報は不要です
- Anthropic API およびパブリックパッケージレジストリ:
api.anthropic.com、registry.npmjs.org、jsr.io、npm.jsr.io、pypi.org、files.pythonhosted.org、index.crates.io、およびproxy.golang.org - セットアップスクリプトリクエスト: Claude Code は セットアップスクリプト が実行された後、起動時にエージェントプロキシに接続します
CLI から環境を選択する
ターミナルで /remote-env を実行して、claude --cloud などの CLI から作成するクラウドセッションのデフォルト環境を選択します。コマンドは既存の環境のピッカーを開き、選択を ユーザー設定 の remote.defaultEnvironmentId キーに保存するため、マシン上のすべてのプロジェクトに適用されます。同じキーが 設定レイヤー の高い優先度で設定されている場合(リポジトリのプロジェクト設定など)を除きます。
自己ホスト型環境 ID(ccpool_... の形式)は、より厳密なソースルールに従います。Claude Code がそれを受け入れる設定レイヤーについては、remote.defaultEnvironmentId を参照してください。
/remote-env はデフォルトのみを設定します。セッションを開始せず、環境を追加または編集することはできません。環境セレクター から管理します。
環境をアーカイブする
独自の環境の 1 つをアーカイブするには、編集用に開いて アーカイブ を選択します。Owner は管理設定の クラウド環境 ページから 共有環境 をアーカイブします。環境を削除することはできず、アーカイブのみできます。
アーカイブは新しいセッションに影響し、実行中のセッションには影響しません。
- 環境で既に実行中のセッションは引き続き機能します。
- 環境はセレクターと
/remote-envから消えるため、新しいセッション用に選択できません。 - 環境の API 認証情報は実行中のセッションに添付されたままです。アーカイブする前に不要なものを削除してください。
- アーカイブされた環境では、どのサーフェスでも新しいセッションを開始できません。環境が保存された CLI デフォルト だった場合、リストに 1 つがある場合は Claude Code は Anthropic ホスト型環境で CLI クラウドセッションを開始し、そうでない場合は Remote Control ブリッジ環境 ではないリスト内の最初の環境で開始します。ルーチン など環境で明示的に設定されたものは、新しいセッションをそこで開始できません。別の環境を指してください。
組織共有環境
Team および Enterprise プランでは、Owner は組織のすべてのメンバーと共有されるクラウド環境を作成できます。同じロールは クラウド環境 管理ページで他のすべてを管理します。自己ホスト型環境 を含みます。Admin ロールはページを開くことができません。それを開くことができるロールの完全なリストは、サーバー管理設定を管理する ためのものです。
共有環境は各メンバーの 環境セレクター に 組織 見出しの下に表示され、メンバー独自の環境の下に 個人 が表示されるため、チームは各メンバーが再作成する代わりに 1 つの設定で標準化できます。共有環境の設定アイコンを選択すると、すべてのメンバー(Owner を含む)の設定の読み取り専用サマリーが開きます。
Owner は 2 つの方法のいずれかで環境を組織で利用可能にします。
- 共有環境を作成する: 管理設定 の クラウド環境 ページを使用します。これは Owner が共有環境を編集およびアーカイブする場所でもあります。各環境には名前、ネットワークアクセスレベル、
.env形式の 環境変数、および セットアップスクリプト があります。 - 個人環境を共有する: 環境セレクターで独自の環境の 1 つを編集用に開き、それを使用できるユーザー 行から共有します。環境はその ID を保持するため、既にそれを使用しているセッションとルーチンは影響を受けず、すべてのメンバーはそれを見てセッションを開始できます。
Owner は claude.ai/admin-settings/claude-code で組織の デフォルト環境 を別途選択します。
すべてのメンバーのセッションは共有環境でその変数を読み取るため、シークレットを含めないでください。API 認証情報(セッションが読み取ることができないキーを提供)は Team および Enterprise プランではまだ利用できません。
Claude Tag チャネルが使用する環境を設定する
Claude Tag チャネルでは、Claude はメンバーではなく組織の共有アイデンティティとして機能するため、チャネルセッションは組織レベルの環境のみを使用します。共有環境または 自己ホスト型環境。チャネルに .NET などの 事前インストール されていないツールチェーンを提供するには、Owner は クラウド環境 管理ページから 共有環境 を作成し、それをインストールする セットアップスクリプト を使用できます。チャネルを環境に指す 2 つの方法のいずれかで:
- claude.ai/admin-settings/claude-code で共有環境または自己ホスト型環境を組織の デフォルト環境 として設定します。
- Claude Tag 管理設定で チャネルに 1 つをピンする。
ネットワークアクセス
各環境は 1 つのネットワークアクセスレベルを設定し、セッションが行える送信接続を制御します。デフォルトレベルの Trusted はパッケージレジストリおよび他の 許可リストドメイン を許可します。Custom は独自のドメインリストを取ります。
環境のネットワークアクセスを変更するには、編集用に開いて ダイアログの Network access セレクタを使用します。共有環境 は読み取り専用で開くため、Owner は admin settings の Cloud environments ページからそのネットワークアクセスを変更します。セレクタを開くクラウドアイコンは、Default 環境 の下にリストされたアプリサーフェスおよび ルーチンエディタ に表示されます。個人環境は claude.ai アカウント設定に別のページを持ちません。
セッションまたはルーチンで有効にする MCP コネクタは、コネクタホストを Allowed domains に追加しなくても機能します。コネクタトラフィックはセッションのネットワークではなく Anthropic のサーバーを通じて移動するためです。これは セキュリティと分離 の下に記載されている同じ Anthropic バウンドチャネルに依存します。Claude が到達できるツールを制限するために不要なコネクタをオフにします。
アクセスレベル
環境ダイアログ の Network access フィールドは 4 つのレベルのいずれかを取ります。
| レベル | 送信接続 |
|---|---|
| None | セッションのネットワークを通じた送信ネットワークアクセスなし |
| Trusted | 許可リストドメイン のみ:パッケージレジストリ、GitHub、クラウド SDK |
| Full | 任意のドメイン |
| Custom | 独自の許可リスト(オプションでデフォルトを含む) |
どのレベルを選択しても、セッションはこれらに到達できます。それぞれはセッションのネットワーク許可リストを通じて行かないパスを取るためです。
- GitHub(別のプロキシ を通じて)
- MCP コネクタ(トラフィックが Anthropic のサーバーを通じて移動)
- 環境の API 認証情報 にリストしたホスト(エージェントプロキシがスキップするホスト を除く)
- Anthropic API(Claude Code 独自のリクエスト用。セキュリティと分離 の下に記載されているように None でも)
特定のドメインを許可する
Trusted リストにないドメインを許可するには、環境のネットワークアクセス設定で Custom を選択し、Allowed domains フィールドに 1 行に 1 つのドメインをリストします。この例は、内部プロジェクトが必要とする可能性のある 3 つのホストを許可します。
api.example.com
*.internal.example.com
registry.example.com
この環境のセッションは api.example.com、internal.example.com のすべてのサブドメイン、および registry.example.com に到達でき、セッションのネットワークを通じて他のドメインには到達できません。GitHub トラフィック、MCP コネクタトラフィック、および環境の API 認証情報 のホストへのリクエスト(エージェントプロキシがスキップするホスト を除く)はこの許可リストを通じません。先頭の *. はすべてのサブドメインと一致します。Trusted ドメイン も保持するには、一般的なパッケージマネージャーのデフォルトリストも含める をチェックします。チェックを外すと、リストしたもののみを許可します。
組織が アーティファクト を使用する場合、セッションがそれらを読み取るために *.frame.claudeusercontent.com をリストに含める必要はありません。リストがそのホストを除外する場合、Claude Code はセッションの Anthropic への接続を通じてアーティファクトコンテンツを読み取ります。ホストを許可リストに保持する 2 つの状況があります。
- この環境のセッションが別の組織のパブリックアーティファクトを開く:Claude Code はホストから直接それらをフェッチするため、このリストに追加します。
- ローカル CLI またはセルフホスト実行を設定している:ホストをその許可リストに保持します。ネットワークアクセス要件 およびセルフホスト ネットワーク要件 を参照してください。
各環境は独自の許可ドメインリストを持ちます。管理者がすべてのメンバーの環境にプッシュできる組織レベルの許可リストはありません。サーバー管理設定 はクラウドセッション内に適用されますが、環境のネットワーク許可リストにドメインを追加するものはありません。チームに 1 つの標準リストを提供するために、Owner は Custom ネットワークアクセスとそのリストを持つ 組織共有環境 を作成できます。
GitHub プロキシ
Anthropic ホスト環境では、すべての GitHub 操作は、セッションの VM の外に実際の GitHub 認証情報を保持する専用プロキシを通じて行われます。これは環境の アクセスレベル とは独立しています。セルフホスト環境のセッションは、デプロイが提供する認証情報で git 操作を認証します。Git を設定する はオプションをカバーしています。セッションごとにミントされた認証情報とこの同じプロキシへのオプトインを含みます。プロキシは以下を提供します。
- Git 認証情報:VM 内の git クライアントはスコープされた認証情報を使用し、プロキシはそれを検証して実際の GitHub トークンと交換します。
- API リクエスト:組み込み GitHub ツールからのリクエスト、および
proxy-injectedプレースホルダー の下のghからのリクエストは、実際の認証情報が置き換えられた状態で送信されます。 - プッシュ保護:
git pushはセッションの現在の作業ブランチに対してのみ機能します。クローン、フェッチ、PR 操作は通常どおり機能します。 - リポジトリスコープ:GitHub API およびリリースアセットリクエストはセッションに接続されたリポジトリのみに到達するため、セットアップスクリプトが接続されていないリポジトリからリリースアセットをダウンロードすると 403 が返されます。
- GraphQL 制限:プロキシはプルリクエストワークフロー用にピン留めされた GraphQL 操作のセットのみを提供します。プロキシは GraphQL エンドポイント上の他のすべてを 403 で拒否します。
This GraphQL query is not enabled for this sessionと言い、REST フォールバックgh api repos/{owner}/{repo}/...を名前付けします。制限は、提供する認証情報に関係なく、プロキシを通じるすべてのリクエストに適用されます。設定したGH_TOKENは同じ 403 を取得します。Claude は Projects v2 などのプロキシを通じて GraphQL にのみ存在する GitHub API に到達できません。
パブリックリポジトリからのコミットされたファイルは raw.githubusercontent.com を通じて到達し、セキュリティプロキシ がそれを処理します。そのドメインはデフォルト Trusted リスト にあるため、環境の アクセスレベル がそれを除外しない限り、これらのファイルは到達可能なままです。
セキュリティプロキシ
Anthropic ホスト環境のクラウドセッションはセキュリティと不正使用防止のため HTTP/HTTPS ネットワークプロキシの背後で実行されます。セルフホスト環境 では、送信トラフィックは代わりに独自のネットワーク境界を通じて離れます。Anthropic ホスト セッションからのすべての送信インターネットトラフィックはこのプロキシを通じて渡され、以下を提供します。
- 悪意のあるリクエストに対する保護
- レート制限と不正使用防止
- 強化されたセキュリティのためのコンテンツフィルタリング
- リクエストされたホスト名の DNS レベルの監査証跡
クラウドセッションで利用可能な機能
Anthropic ホスト環境では、各セッションは独自のオペレーティングシステムと CPU アーキテクチャに関係なく、Ubuntu 24.04 を x86_64 で実行する新しい仮想マシン(VM)を取得し、リポジトリがクローンされ、一般的なツールチェーンが事前にインストールされています。依存関係が Ruby ネイティブ拡張機能付きの gem やプリビルド Python wheels などのプリコンパイル済みバイナリを提供する場合は、VM に合わせて x86_64 Linux ビルドを使用してください。このセクションでは、Anthropic ホストのデフォルト、組み込み GitHub ツール、テストとサービスの実行方法、および各 VM が取得するリソース制限について説明します。
組織がセルフホスト環境にルーティングするセッションは、代わりに独自のランナーで実行され、ランナーイメージが提供するツールを使用します。
セットアップから引き継がれるもの
クラウドセッションはリポジトリの新しいクローンから開始されます。リポジトリにコミットしたものはすべて利用可能です。独自のマシンにのみインストールまたは構成したものはセッションでは利用できません。組織のポリシーはサーバー管理設定を通じて別途到着します。
| クラウドセッションで利用可能 | 理由 | |
|---|---|---|
リポジトリの CLAUDE.md |
はい | クローンの一部 |
リポジトリの .claude/settings.json hooks と権限ルール |
はい、1 つのリポジトリを持つセッションの場合 | クローンの一部。複数のリポジトリを持つセッション(プロジェクトスレッドを含む)はクローンの上で開始され、それらを読み取りません |
リポジトリの .mcp.json MCP サーバー |
はい、1 つのリポジトリを持つセッションの場合 | クローンの一部、セッションの作業ディレクトリから検出されます |
リポジトリの .claude/rules/ |
はい | クローンの一部 |
リポジトリの .claude/skills/、.claude/agents/、.claude/commands/ |
はい | クローンの一部 |
リポジトリの .claude/settings.json で宣言されたプラグインとマーケットプレイス |
いいえ | クラウドセッションは、リポジトリが enabledPlugins で有効にするプラグインをインストールしません。これには extraKnownMarketplaces の下にリストされているマーケットプレイスのプラグインも含まれます。代わりに claude.ai アカウントのプラグインを有効にして、Claude Code が同期されたプラグインとして読み込むようにしてください |
| 組織のサーバー管理設定 | はい | セッション開始時に Anthropic のサーバーから取得されます。クラウドセッションで availableModels がどのように適用されるかについては、Surface coverage を参照してください。MDM または管理設定ファイルを通じてデバイスにデプロイされた設定は適用されません。セッションは Anthropic 管理 VM で実行されるためです。セルフホスト環境では、セッションはランナーイメージの管理設定ファイルも読み取ります。Claude Code が管理ソースを組み合わせる方法に従います |
ユーザー ~/.claude/CLAUDE.md |
いいえ | マシンに存在し、リポジトリには存在しません |
ユーザー ~/.claude/skills/、~/.claude/agents/、~/.claude/commands/ |
いいえ | マシンに存在し、リポジトリには存在しません。代わりにリポジトリの .claude/ ディレクトリにコミットしてください。クラウドセッションは claude.ai で有効にしたスキルを自動的に読み込みます |
| ユーザー設定でのみ有効なプラグイン | いいえ | ユーザースコープの enabledPlugins は ~/.claude/settings.json に存在します。代わりに claude.ai アカウントで有効にして、Claude Code が同期されたプラグインとして読み込むようにしてください |
デフォルトのローカルスコープまたはユーザースコープで claude mcp add を使用して追加した MCP サーバー |
いいえ | これらはマシンの ~/.claude.json に書き込まれ、リポジトリには書き込まれません。claude mcp add --scope project でサーバーを追加します。これはリポジトリの.mcp.jsonに書き込まれ、そのファイルをコミットしてください。1 つのリポジトリを持つセッションはそれを読み込みます |
リポジトリの .claude/settings.json env ブロック内のトランスポート変数(NODE_EXTRA_CA_CERTS やmTLS クライアント証明書変数など) |
いいえ | ホスティング環境がセッションの API 接続を管理するため、Claude Code はこれらのキーを無視し、セッションのデバッグログで無視された各キーを記録します |
| Claude が呼び出すサービスの API キーとトークン | Pro および Max プランでは、API 認証情報として | キーを環境に一度追加すると、エージェントプロキシがリストしたホストへのリクエストにそれを添付します。エージェントプロキシが添付できないキー、または Team または Enterprise プランのキーは環境変数に留まります |
| AWS SSO のようなインタラクティブ認証 | いいえ | サポートされていません。SSO はクラウドセッションで実行できないブラウザベースのログインが必要です |
クラウドセッションで独自の構成を利用可能にするには、リポジトリにコミットしてください。
環境を使用する誰もが環境変数とセットアップスクリプトを読むことができます。ダイアログの環境変数の下のメモはそのことを述べており、シークレットをそこに置かないよう警告しています。Pro および Max プランでは、代わりにエージェントプロキシが添付できるキーをAPI 認証情報として保存してください。
インストール済みツール
クラウドセッションには、一般的な言語ランタイム、ビルドツール、データベースが事前にインストールされています。以下の表は、カテゴリ別に含まれるものをまとめています。
| カテゴリ | 含まれるもの |
|---|---|
| Python | Python 3.x(pip、poetry、uv、black、mypy、pytest、ruff 付き) |
| Node.js | 20、21、22(npm、yarn、pnpm、bun¹、eslint、prettier、chromedriver 付き) |
| Ruby | 3.1、3.2、3.3(gem、bundler、rbenv 付き) |
| PHP | 8.3(Composer 付き) |
| Java | OpenJDK 21(Maven と Gradle 付き) |
| Go | モジュールサポート付き Go |
| Rust | rustc と cargo |
| C/C++ | GCC、Clang、cmake、ninja、conan |
| Docker | docker、dockerd、docker compose |
| データベース | PostgreSQL 16、Redis 7.0 |
| ユーティリティ | git、gh、jq、yq、ripgrep、tmux、vim、nano |
¹ Bun はインストールされていますが、パッケージ取得のプロキシ互換性の問題が既知です。
このテーブルのほとんどのツールのバージョンを取得するには、クラウドセッションで check-tools を実行するよう Claude に依頼してください。これは / で入力するコマンドではなく、セッション VM にインストールされたシェルコマンドです。Claude がすべての VM コマンドを実行するため、Claude に依頼します。Ruby、PHP、bun、PostgreSQL、Redis など、報告されないツールについては、Claude にそのツール独自のバージョンコマンド(例:psql --version)を実行するよう依頼してください。
Node.js バージョンは /opt/node20、/opt/node21、/opt/node22 にインストールされ、デフォルトでは 22 が PATH にあります。別のバージョンで作業するには、Claude にそのバージョンの bin ディレクトリ(例:/opt/node20/bin)を PATH の先頭に追加するよう依頼してください。
このリストの外のツールチェーン(.NET SDK など)は、パッケージレジストリがデフォルト許可リストにある場合でも、事前にインストールされていません。セットアップスクリプトでインストールしてください。
GitHub の issue とプルリクエストを操作する
クラウドセッションには、Claude が issue を読み取り、プルリクエストをリストし、diff を取得し、セットアップなしでコメントを投稿できる組み込み GitHub ツールが含まれています。これらのツールはGitHub プロキシを通じて認証され、GitHub 認証オプションで構成した方法を使用するため、トークンはコンテナに入りません。
環境設定で GH_TOKEN または GITHUB_TOKEN を自分で設定するか、両方を設定しないままにしてGitHub プロキシに認証を処理させることができます:
- トークンを設定した場合、コンテナに変更されずに渡されるため、スクリプトと GitHub の
ghCLIがそれを直接使用します。 - どちらも設定せず、GitHub プロキシがセッションの認証を処理している場合、Claude が実行するコマンドでは両方の変数がプレースホルダー文字列
proxy-injectedとして読み取られ、プロキシは送信 GitHub リクエストで実際の認証情報を置き換えます。ghは独自のトークンなしで動作しますが、GITHUB_TOKENを直接読み取るスクリプトはプレースホルダーを取得し、使用可能なトークンは取得しません。
設定したトークンは通常の環境変数であるため、環境を使用する誰もがそれを読むことができます。プロキシパスは認証情報を環境構成とセッション VM から除外します。
セッションにどちらが適用されるかを確認するには、Claude に echo $GH_TOKEN を実行するよう依頼してください。
GitHub のgh CLIは事前にインストールされています。組み込みツールがカバーしていない gh コマンド(gh release や gh workflow run など)が必要な場合は、Claude に実行するよう依頼してください。gh は GH_TOKEN を自動的に読み取るため、gh auth login を実行する必要はありません。
セッションに出力をリンクバックする
各クラウドセッションは claude.ai 上にトランスクリプト URL を持ち、セッションは CLAUDE_CODE_REMOTE_SESSION_ID 環境変数から独自の ID を読み取ることができます。これを使用して、PR 本文、コミットメッセージ、Slack 投稿、または生成されたレポートに追跡可能なリンクを配置し、レビュアーがそれらを生成した実行を開くことができるようにします。
Claude がクラウドセッションで作成するコミットには Claude-Session: <url> git トレーラーが含まれ、PR 本文にはセッション URL が独自の行に含まれます。トレーラーと PR 本文リンクを省略するには、attribution.sessionUrlを false に設定します。
Claude が投稿する Slack メッセージやレポートファイルなど、コミットまたは PR 以外のものにセッションリンクを含めるには、Claude に次のコマンドを実行させ、その出力を使用してください。このコマンドは環境変数の値の cse_ プレフィックスをトランスクリプト URL が期待する session_ プレフィックスに変換します:
echo "https://claude.ai/code/${CLAUDE_CODE_REMOTE_SESSION_ID/#cse_/session_}"
テストの実行、サービスの開始、パッケージの追加
セッション VM へのシェルアクセスは取得できません。Claude がすべてのコマンドを実行するため、このセクションのタスクをプロンプトでリクエストとして表現してください。
テストの実行
Claude はタスクに取り組む際にテストを実行します。プロンプトでリクエストしてください。例えば「tests/ の失敗したテストを修正してください」または「各変更後に pytest を実行してください」。事前にインストールされたツールチェーンに付属するテストランナー(pytest や cargo test など)は追加のセットアップなしで動作します。プロジェクトが依存関係として宣言するランナー(jest など)は依存関係と共にインストールされます。
サービスの開始
PostgreSQL と Redis は事前にインストールされていますが、デフォルトでは実行されていません。必要なものを開始するよう Claude に依頼してください。実行するコマンドは次のとおりです:
service postgresql start
service redis-server start
Docker はコンテナ化されたサービスを実行するために利用可能です。Claude に docker compose up を実行するよう依頼して、プロジェクトのサービスを開始してください。イメージをプルするためのネットワークアクセスは環境のアクセスレベルに従い、信頼できるデフォルトには Docker Hub および他の一般的なレジストリが含まれます。
イメージが大きいか遅い場合は、セットアップスクリプトに docker compose pull または docker compose build を追加してください。環境キャッシュはプルされたイメージを保持するため、各新しいセッションはディスク上にそれらを持ちます。キャッシュはファイルのみを保存し、実行中のプロセスは保存しないため、Claude は各セッションでコンテナを開始します。
パッケージの追加
事前にインストールされていないパッケージを追加するには、セットアップスクリプトを使用してください。環境キャッシュはスクリプトがインストールするものを保持するため、そこにインストールするパッケージは各セッションの開始時に利用可能で、毎回再インストールする必要はありません。セッション中に Claude にパッケージをインストールするよう依頼することもできますが、これらのインストールは他のセッションに引き継がれません。
リソース制限
Anthropic ホスト環境のクラウドセッションは、時間とともに変わる可能性のある概算リソース上限で実行されます:
- 4 vCPU
- 16 GB の RAM
- 30 GB のディスク
VM は大規模なビルドジョブやメモリ集約的なテストなど、大幅により多くのメモリを必要とするタスクを停止する可能性があります。これらの制限を超えるワークロードの場合は、Remote Controlを使用して Claude Code を独自のハードウェアで実行するか、組織が運用するコンピュートでセルフホスト環境でクラウドセッションを実行してください。
セットアップスクリプト
セットアップスクリプトは、新しいクラウドセッションが開始されるときに実行される Bash スクリプトです。Claude Code が起動する前です。セットアップスクリプトを使用して、依存関係をインストールし、ツールを設定し、またはセッションが必要とするプリインストールされていないものをフェッチします。
スクリプトは Ubuntu 24.04 上で root として実行されるため、apt install およびほとんどの言語パッケージマネージャーが機能します。
セットアップスクリプトを追加するには、環境設定ダイアログを開き、Setup script フィールドにスクリプトを入力します。
この例は、プリインストールされていない ShellCheck をインストールします。
#!/bin/bash
apt update && apt install -y shellcheck
スクリプト要件
セットアップスクリプトには、対応する 3 つの制約があります。
- ゼロで終了:スクリプトがゼロ以外で終了する場合、セッションは開始に失敗します。非重要なコマンドに
|| trueを追加して、一時的なインストール失敗がセッションをブロックしないようにします。 - 5 分以内に完了:スクリプトの総実行時間を約 5 分以内に保つため、環境キャッシュ をビルドできます。独立したインストールを
&とwaitで並列実行し、フィットしない単一ダウンロードを SessionStart フック に移動して、バックグラウンドで起動します。 - インストール用のネットワークアクセス:パッケージインストールはレジストリに到達する必要があります。デフォルトの Trusted レベルは npm、PyPI、RubyGems、crates.io を含む 一般的なパッケージレジストリ をカバーします。None ネットワークアクセスでは、インストールは失敗します。
環境キャッシング
セットアップスクリプトは、環境でセッションを開始する最初の時間に実行されます。完了後、Anthropic はファイルシステムをスナップショットし、そのスナップショットを後のセッションの開始点として再利用します。新しいセッションはディスク上に既に依存関係、ツール、Docker イメージを持ち、セットアップスクリプトステップをスキップします。これにより、スクリプトが大規模なツールチェーンをインストールしたりコンテナイメージをプルしたりする場合でも、スタートアップが高速に保たれます。
キャッシュはファイルシステムスナップショットであるため、セットアップスクリプトがディスクに書き込むものを保持し、実行中のみのものを失います。インストールするパッケージ、プルする Docker イメージ、書き込むファイルはすべて引き継がれます。スクリプトが開始したデータベース、docker compose up スタック、またはその他のバックグラウンドプロセスは引き継がれません。これらはセッションごとに Claude に依頼するか、SessionStart フック で開始します。
セットアップスクリプトは、環境のセットアップスクリプトまたは許可されたネットワークホストを変更するとき、およびキャッシュが約 7 日後に有効期限に達するときに再度実行され、キャッシュを再構築します。既存のセッションを再開すると、セットアップスクリプトは再度実行されません。
キャッシングを有効にするか、スナップショットを自分で管理する必要はありません。
セットアップスクリプト対 SessionStart フック
セットアップスクリプトを使用して VM 自体をプロビジョニングします。プリインストール されていないツールチェーンと CLI ツール。SessionStart フック をプロジェクトセットアップに使用します。クラウドとローカルで実行する必要があります。npm install などです。
セットアップスクリプトと SessionStart フックは、クラウドセッションが開始するときに固定順序で実行されます。テーブルは、設定場所、実行時期、実行場所を比較しています。
| セットアップスクリプト | SessionStart フック | |
|---|---|---|
| 設定場所 | claude.ai/code の環境ダイアログ、共有環境 の クラウド環境 管理ページ | 設定ファイル(リポジトリの .claude/settings.json など)。セットアップから引き継がれるもの を参照して、どのファイルがクラウドセッションに到達するかを確認してください |
| 実行時期 | Claude Code が起動する前に、キャッシュされた環境 が存在する場合はスキップ | Claude Code が起動した後、再開を含むすべてのセッションで |
| 実行場所 | クラウドセッションのみ | ローカルとクラウドセッション |
ユーザーレベルの ~/.claude/settings.json に SessionStart フックがある場合、クラウドではそれらを期待しないでください。ユーザーレベルの設定はマシンに留まります。どの他のフックが実行されるかは、セッションが実行される場所によって異なります。
- Anthropic ホスト環境:Claude Code はリポジトリおよび組織の サーバー管理設定 からフックを実行します。
- セルフホスト環境:Claude Code はオペレーターがランナーホストの
~/.claude/からシードしたフックも実行し、ランナーイメージの管理設定ファイルのフック(そのファイルが Claude Code が適用する管理ソース のいずれかである場合)。
SessionStart フックで依存関係をインストールする
クラウドセッションのみに依存関係をインストールするには、SessionStart フックを実行場所をチェックするスクリプトと組み合わせます。
まず、SessionStart フックをリポジトリの .claude/settings.json に追加します。この設定は、セッションが開始または再開されるたびに Claude Code に scripts/install_pkgs.sh をリポジトリから実行するよう指示します。
{
"hooks": {
"SessionStart": [
{
"matcher": "startup|resume",
"hooks": [
{
"type": "command",
"command": "bash \"$CLAUDE_PROJECT_DIR\"/scripts/install_pkgs.sh"
}
]
}
]
}
}
matcher はフックを startup および resume イベントに制限し、$CLAUDE_PROJECT_DIR はリポジトリルートに解決されるため、フックはセッションの作業ディレクトリに関係なくスクリプトを見つけます。
次に、scripts/install_pkgs.sh でスクリプトを作成します。クラウドの外では直ちに終了し、依存関係をインストールします。
#!/bin/bash
if [ "$CLAUDE_CODE_REMOTE" != "true" ]; then
exit 0
fi
npm install
pip install -r requirements.txt
exit 0
CLAUDE_CODE_REMOTE チェックは、インストールをクラウドセッションにスコープするものです。セッション VM の環境は変数を true として持ち、ローカルでは決して true ではないため、ラップトップではスクリプトは何もインストールする前に終了します。
2 つのファイルを合わせると、すべてのクラウドセッションは起動時に新しい npm install と pip install を取得し、ローカルセッションは影響を受けません。
クラウドセッションの制限
SessionStart フックはクラウドでローカルと同じように動作しますが、これらの注意事項があります。
- セッションごとに 1 つのリポジトリ:複数のリポジトリを持つセッションは、リポジトリの
.claude/settings.jsonからフックをロードしないため、そこで定義した SessionStart フックは実行されません。これらのセッションの依存関係は セットアップスクリプト でインストールしてください。 - クラウドのみのスコープなし:フックはローカルとクラウドセッションの両方で実行されます。ローカル実行をスキップするには、依存関係インストールスクリプト のように
CLAUDE_CODE_REMOTE環境変数がtrueでない限り早期に終了します。 - ネットワークアクセスが必要:インストールコマンドはパッケージレジストリに到達する必要があります。環境が None ネットワークアクセスを使用する場合、これらのフックは失敗します。Trusted の下の デフォルト許可リスト は npm、PyPI、RubyGems、crates.io をカバーします。
- プロキシ互換性:Anthropic ホスト環境では、すべての送信トラフィックは セキュリティプロキシ を通じて渡されます。一部のパッケージマネージャーはこのプロキシで正しく機能しません。Bun は既知の例です。セルフホスト環境 では、送信トラフィックは代わりに独自のネットワーク境界を通じて行きます。
- スタートアップレイテンシを追加:フックはセッションが開始または再開されるたびに実行されます。環境キャッシング の恩恵を受けるセットアップスクリプトとは異なります。依存関係が既に存在するかどうかをチェックして再インストールを避けることで、インストールスクリプトを高速に保ちます。
ベースイメージをカスタマイズするには、セットアップスクリプトを使用して 提供されたイメージ の上にインストールするか、docker compose で Claude と一緒にコンテナとして独自のイメージを実行します。ベースイメージ全体を置き換えることはまだサポートされていません。
デフォルト許可ドメイン
Trusted ネットワークアクセスでは、セッションはデフォルトで次のドメインに到達できます。* でマークされたドメインはワイルドカードサブドメインマッチングを示すため、*.gcr.io は gcr.io のすべてのサブドメインを許可します。
バージョン管理
- github.com
- www.github.com
- api.github.com
- npm.pkg.github.com
- raw.githubusercontent.com
- pkg-npm.githubusercontent.com
- objects.githubusercontent.com
- release-assets.githubusercontent.com
- codeload.github.com
- avatars.githubusercontent.com
- camo.githubusercontent.com
- gist.github.com
- gitlab.com
- www.gitlab.com
- registry.gitlab.com
- bitbucket.org
- www.bitbucket.org
- api.bitbucket.org
コンテナレジストリ
- registry-1.docker.io
- auth.docker.io
- index.docker.io
- hub.docker.com
- www.docker.com
- production.cloudflare.docker.com
- download.docker.com
- gcr.io
- *.gcr.io
- ghcr.io
- mcr.microsoft.com
- *.data.mcr.microsoft.com
- public.ecr.aws
クラウドプラットフォーム
- cloud.google.com
- accounts.google.com
- gcloud.google.com
- *.googleapis.com
- storage.googleapis.com
- compute.googleapis.com
- container.googleapis.com
- azure.com
- portal.azure.com
- microsoft.com
- www.microsoft.com
- *.microsoftonline.com
- packages.microsoft.com
- dotnet.microsoft.com
- dot.net
- visualstudio.com
- dev.azure.com
- *.amazonaws.com
- *.api.aws
- oracle.com
- www.oracle.com
- java.com
- www.java.com
- java.net
- www.java.net
- download.oracle.com
- yum.oracle.com
- *.r2.cloudflarestorage.com
JavaScript と Node パッケージマネージャー
- registry.npmjs.org
- www.npmjs.com
- www.npmjs.org
- npmjs.com
- npmjs.org
- yarnpkg.com
- registry.yarnpkg.com
- jsr.io
- npm.jsr.io
Python パッケージマネージャー
- pypi.org
- www.pypi.org
- files.pythonhosted.org
- pythonhosted.org
- test.pypi.org
- pypi.python.org
- pypa.io
- www.pypa.io
Ruby パッケージマネージャー
- rubygems.org
- www.rubygems.org
- api.rubygems.org
- index.rubygems.org
- ruby-lang.org
- www.ruby-lang.org
- rubyforge.org
- www.rubyforge.org
- rubyonrails.org
- www.rubyonrails.org
- rvm.io
- get.rvm.io
Rust パッケージマネージャー
- crates.io
- www.crates.io
- index.crates.io
- static.crates.io
- rustup.rs
- static.rust-lang.org
- www.rust-lang.org
Go パッケージマネージャー
- proxy.golang.org
- sum.golang.org
- index.golang.org
- golang.org
- www.golang.org
- goproxy.io
- pkg.go.dev
JVM パッケージマネージャー
- maven.org
- repo.maven.org
- central.maven.org
- repo1.maven.org
- repo.maven.apache.org
- maven.google.com
- jcenter.bintray.com
- gradle.org
- www.gradle.org
- services.gradle.org
- plugins.gradle.org
- plugins-artifacts.gradle.org
- kotlinlang.org
- www.kotlinlang.org
- spring.io
- repo.spring.io
その他のパッケージマネージャー
- packagist.org(PHP Composer)
- www.packagist.org
- repo.packagist.org
- nuget.org(.NET NuGet)
- www.nuget.org
- api.nuget.org
- pub.dev(Dart/Flutter)
- api.pub.dev
- hex.pm(Elixir/Erlang)
- www.hex.pm
- cpan.org(Perl CPAN)
- www.cpan.org
- metacpan.org
- www.metacpan.org
- api.metacpan.org
- cocoapods.org(iOS/macOS)
- www.cocoapods.org
- cdn.cocoapods.org
- haskell.org
- www.haskell.org
- hackage.haskell.org
- swift.org
- www.swift.org
Linux ディストリビューション
- archive.ubuntu.com
- security.ubuntu.com
- ubuntu.com
- www.ubuntu.com
- *.ubuntu.com
- ppa.launchpad.net
- launchpad.net
- www.launchpad.net
- *.nixos.org
開発ツールとプラットフォーム
- dl.k8s.io(Kubernetes)
- pkgs.k8s.io
- k8s.io
- www.k8s.io
- releases.hashicorp.com(HashiCorp)
- apt.releases.hashicorp.com
- rpm.releases.hashicorp.com
- archive.releases.hashicorp.com
- hashicorp.com
- www.hashicorp.com
- repo.anaconda.com(Anaconda/Conda)
- conda.anaconda.org
- anaconda.org
- www.anaconda.com
- anaconda.com
- continuum.io
- apache.org(Apache)
- www.apache.org
- archive.apache.org
- downloads.apache.org
- eclipse.org(Eclipse)
- www.eclipse.org
- download.eclipse.org
- nodejs.org(Node.js)
- www.nodejs.org
- developer.apple.com
- developer.android.com
- pkg.stainless.com
- binaries.prisma.sh
クラウドサービスと監視
- http-intake.logs.datadoghq.com
- *.datadoghq.com
- *.datadoghq.eu
- api.honeycomb.io
コンテンツ配信とミラー
- sourceforge.net
- *.sourceforge.net
- packagecloud.io
- *.packagecloud.io
- fonts.googleapis.com
- fonts.gstatic.com
スキーマと設定
- json-schema.org
- www.json-schema.org
- json.schemastore.org
- www.schemastore.org
Model Context Protocol
- *.modelcontextprotocol.io
関連リソース
- Cloud sessions reference:クラウドセッションを開始、管理、共有します
- Cloud sessions quickstart:GitHub を接続して最初のクラウドセッションを開始します
- Claude Tag:Claude が Slack から開始するセッションは同じ環境で実行されます
- Routines:スケジュール実行は同じ環境とネットワークアクセスレベルを使用します
- Remote Control:代わりに独自のマシンのネットワークとファイルでセッションを実行します
- Self-hosted environments:組織独自のインフラストラクチャでクラウドセッションを実行します
- SessionStart hooks:ローカルとクラウドセッションで実行されるリポジトリコミットセットアップ
- Server-managed settings:クラウドセッションに到達する組織ポリシー