SpyBara
Go Premium

cloud-environments.md 2026-09-17 05:00 UTC to 2026-09-18 23:58 UTC

This page contains 68 additions and 67 deletions.

2026
Sat 12 03:02 Mon 14 22:58 Fri 18 23:58 Sat 19 23:57 Tue 22 23:59 Wed 23 23:57 Fri 25 23:58

クラウド環境を設定する

Claude Code クラウドセッション用のクラウド環境を設定します。ネットワークアクセスレベル、環境変数、セットアップスクリプト、環境キャッシュを構成できます。

各 クラウドセッション はクラウド環境で実行されます。環境を設定して ネットワークアクセス を許可または拒否し、セッション用に 環境変数を設定 し、Pro および Max プランで API 認証情報 を保存してセッションが認証情報を見ずに使用でき、Claude が作業を開始する前に セットアップスクリプト を実行できます。

同じ環境は、クラウドセッションを開始する場所に関係なく適用されます。Desktop アプリ、Claude モバイルアプリ、claude.ai/code のブラウザ、claude --cloud を使用したターミナル、ルーチン、Claude Tag です。これらの各サーフェスは セルフホスト環境 にもルーティングできます。利用可能性と制限 は、Claude Tag セッションがセルフホスト環境で実行される場合に Claude がまだ使用できないものをカバーしています。

Default 環境

環境がまだない場合、オンボーディングは Default 環境をセットアップします。どのように設定されるかは、オンボーディングの場所によって異なります。

  • /web-setup などの CLI フロー:Default を作成します
  • Pro および Max での Web オンボーディング:Default を作成します
  • Team および Enterprise での Web オンボーディング:オーナーが Quick web setup をオンにしていない限り、最初のクラウド環境を作成 フォームを表示します。フォームのデフォルトを保持して 作成して完了 をクリックして、同じ Default 環境を取得します

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 が作成した 共有環境 は同じセレクターに表示されます。設定なしで利用可能な内容については、インストール済みツール を参照してください。

1

環境セレクターを開く

claude.ai/code で、メッセージボックスの上の行にある現在の環境名を表示するクラウドアイコンを選択します。セレクターの設定ページまたは直接 URL はありません。

claude.ai/code のメッセージボックスの上に開いた環境セレクター。環境名 Default を表示するクラウドボタンがメッセージボックスの上の行に位置します。開いたメニューには、Download と Desktop only ラベルを持つ Local 行、Default 環境がチェックマークで選択され、ホバー時に設定ギアアイコンを表示する Cloud セクション、Add cloud environment オプション、セットアップ手順を含む Remote Control セクションが表示されます。
2

環境を追加または編集する

Add cloud environment を選択するか、既存の環境にホバーして右側に表示される設定アイコンを選択します。ダイアログには名前、ネットワークアクセスレベル、環境変数、セットアップスクリプトが含まれます。Pro または Max プランで既存のクラウド環境を編集する場合、ダイアログには API 認証情報 も含まれます。

New cloud environment ダイアログ。プレースホルダー Default を持つ Name フィールド、Trusted に設定されたネットワークアクセスセレクター(ネットワークポリシーとアクセスレベルへのリンク付き)、.env 形式のプレースホルダーテキストを表示する Environment variables ボックス(値は環境を使用する誰もが見ることができるという注記付き)、新しいセッション開始時に Claude Code が起動する前に実行される Bash スクリプトとして説明される Setup script ボックス、および Cancel と Create environment ボタン。

環境変数を設定する

環境変数は .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 credentials セクションはこれらのプランの環境ダイアログに表示されません。

要件

これらのうち 2 つは認証情報を追加できるかどうかを決定し、2 つは追加後にエージェントプロキシがそれを使用できるかどうかを決定します。

  • Role: claude.ai 組織の組織管理者ロール
    • Team および Enterprise では、Owner がこれを保持し、Admin は保持しません
    • Pro および Max では、独自の組織でこれを保持します
    • これがない場合、独自の環境でも認証情報リストの代わりにメモが表示されます。Owner に共有環境に認証情報を追加してそこでセッションを実行するよう依頼してください
  • Environment type: 既に存在する Anthropic ホスト型クラウド環境。self-hosted environment には API 認証情報がありません
  • API reachability: API がインターネットからの接続を受け入れます。リクエストは Anthropic のネットワークから離れるためです
  • Encryption keys: 組織がカスタマー管理暗号化キーを使用する場合、認証情報を保存できません

認証情報を追加する

既に存在する環境のエディターから一度に 1 つの認証情報を追加します。新しい環境のダイアログはそれらを提供しません。編集もありません。認証情報のホストまたは値を変更するには、削除して再度追加します。

1

環境の API 認証情報を開く

claude.ai/code で 環境を編集用に開きます。Update cloud environment ダイアログで、Environment variables の下の API credentials を見つけます。環境に既にある認証情報が表示され、それぞれが適用されるホストが表示されます。

2

認証情報を追加する

Add credential を選択してフォームに入力します。リクエストヘッダーで移動する API キーについてはデフォルトの Credential type、Bearer を保持し、これらのフィールドに入力します。

  • Name: Internal billing API などの認証情報のラベル
  • Allowed websites: api.example.com などの API のホスト。先頭の *. はすべてのサブドメインに一致します
  • Custom headers: キーを運ぶヘッダーの 1 行。行は Authorization をヘッダーの Name として、Bearer を Prefix として開始します。キー自体を Value として貼り付けます。X-Api-Key のようなベア値を取るヘッダーの場合、名前を変更してプレフィックスをクリアします

別の方法で認証する API の場合、別の Credential type を選択します。リストは Claude Tag(Team および Enterprise プランの Slack 統合)が connections に提供するものと同じです。

3

認証情報を保存する

Connect を選択します。認証情報はリストにホストと共に表示され、ダイアログの Save changes ボタンなしで保存されます。保存後に値を再度表示することはできません。

認証情報が機能することを確認するには、環境でセッションを開始して、Claude に API を呼び出すよう依頼します。例えば curl を使用します。API はキーがリクエストにあるかのように応答し、キーはセッションの環境変数またはファイルに表示されません。リストが認証情報を Not sent としてマークする場合、その下のメモは理由と対処方法を説明します。ホストが正確に一致せずに重複する 2 つの認証情報はマーカーを取得せず、エージェントプロキシはそのうちの 1 つだけを送信します。

どのリクエストが認証情報を取得するか

エージェントプロキシは、リクエストのホストがその認証情報にリストしたものと一致する場合、リクエストに認証情報を添付します。セッションは、環境の network access level がそれ以外の場合は許可しないホストに到達できます。ただし、認証情報を取得しないホスト は除きます。認証情報は、削除するまで、それを開始した人に関係なく、環境で実行されるすべてのセッションに適用されます。

認証情報を取得しないリクエスト

エージェントプロキシは、これらのリクエストに追加する認証情報を決してアタッチしません。

  • GitHub: GitHub proxy は代わりに 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
  • Setup script requests: Claude Code は setup script が実行された後、起動時にエージェントプロキシに接続します

CLI から環境を選択する

ターミナルで /remote-env を実行して、claude --cloud などの CLI から作成するクラウドセッションのデフォルト環境を選択します。コマンドは既存の環境のピッカーを開き、選択を user settings の remote.defaultEnvironmentId キーに保存するため、設定を変更するまで、マシン上のすべてのプロジェクトで適用されます。ただし、リポジトリのプロジェクト設定などの高い優先度の settings layer で同じキーが設定されている場合を除きます。

self-hosted environment ID(ccpool_... の形式)は、より厳密なソースルールに従います。Claude Code がそれを受け入れる設定レイヤーについては、remote.defaultEnvironmentId を参照してください。

/remote-env はデフォルトのみを設定します。セッションを開始せず、環境を追加または編集することはできません。environment selector から管理します。

環境をアーカイブする

環境をアーカイブするには、編集用に開いて Archive を選択します。環境を削除することはできず、アーカイブのみできます。

アーカイブは新しいセッションに影響し、実行中のセッションには影響しません。

  • 環境で既に実行中のセッションは引き続き機能します。
  • 環境はセレクターと /remote-env から消えるため、新しいセッションに選択できません。
  • 環境の API 認証情報は実行中のセッションに添付されたままです。アーカイブする前に、不要になったものを削除してください。
  • アーカイブされた環境では、どのサーフェスでも新しいセッションを開始できません。環境が保存された CLI default だった場合、リストに 1 つがある場合は Anthropic ホスト型環境で Claude Code が CLI クラウドセッションを開始し、そうでない場合は Remote Control bridge environment ではないリスト内の最初の環境で開始します。routine など環境で明示的に設定されたものは、新しいセッションをそこで開始できません。別の環境を指してください。

組織共有環境

Team および Enterprise プランでは、Owner は組織のすべてのメンバーと共有されるクラウド環境を作成できます。同じロールは Cloud environments 管理ページで他のすべてを管理します。self-hosted environments を含みます。Admin ロールはページを開くことができません。それを開くことができるロールの完全なリストは、managing server-managed settings のものです。共有環境は各メンバーの環境セレクターに個人的なものと一緒に表示されるため、チームは各メンバーが再作成する代わりに 1 つの設定で標準化できます。

admin settings の Cloud environments ページから共有環境を作成、編集、アーカイブします。共有環境は claude.ai/code の environment selector からも開きます。Owner はそこで編集できます。他のメンバーは読み取り専用で表示します。各共有環境には名前、network access level、.env 形式の environment variables、および setup script があります。Owner は claude.ai/admin-settings/claude-code で組織の default environment を別途選択します。

すべてのメンバーのセッションは共有環境でその変数を読み取るため、シークレットを含めないでください。API credentials(セッションに読み取ることができないキーを与える)は Team および Enterprise プランではまだ利用できません。

Claude Tag チャネルが使用する環境を設定する

Claude Tag チャネルでは、Claude は任意のメンバーではなく組織の共有アイデンティティとして機能するため、チャネルセッションは組織レベルの環境のみを使用します。共有環境または self-hosted environments。チャネルに pre-installed ではないツールチェーン(.NET など)を与えるには、Owner は Cloud environments 管理ページから shared environment を作成し、setup script でそれをインストールできます。チャネルを環境に指す方法は 2 つあります。

ネットワークアクセス

各環境は 1 つのネットワークアクセスレベルを設定し、セッションが行える送信接続を制御します。デフォルトレベルの Trusted はパッケージレジストリおよび他の 許可リストドメイン を許可します。Custom は独自のドメインリストを取ります。

環境のネットワークアクセスを変更するには、編集用に開いて ダイアログの Network access セレクタを使用します。セレクタを開くクラウドアイコンは、Default 環境 の下にリストされたアプリサーフェスおよび ルーチンエディタ に表示されます。個人環境は claude.ai アカウント設定に別のページを持ちません。

アクセスレベル

環境ダイアログ の Network access フィールドは 4 つのレベルのいずれかを取ります。

レベル 送信接続
None セッションのネットワークを通じた送信ネットワークアクセスなし
Trusted 許可リストドメイン のみ:パッケージレジストリ、GitHub、クラウド SDK
Full 任意のドメイン
Custom 独自の許可リスト(オプションでデフォルトを含む)

どのレベルを選択しても、セッションはこれらに到達できます。それぞれはセッションのネットワーク許可リストを通じて行かないパスを取るためです。

特定のドメインを許可する

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 で宣言されたプラグイン はい 宣言したマーケットプレイスからセッション開始時にインストールされます。マーケットプレイスソースに到達するにはネットワークアクセスが必要です
組織のサーバー管理設定 はい セッション開始時に 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/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 のgh CLIがそれを直接使用します。
  • どちらも設定せず、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 のすべてのサブドメインを許可します。

* api.anthropic.com * docs.claude.com * platform.claude.com * code.claude.com * claude.ai
バージョン管理
  • 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 パッケージマネージャー
Python パッケージマネージャー
Ruby パッケージマネージャー
Rust パッケージマネージャー
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
その他のパッケージマネージャー
Linux ディストリビューション
開発ツールとプラットフォーム
  • 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
スキーマと設定
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:クラウドセッションに到達する組織ポリシー