クラウド環境を設定する
Claude Code クラウドセッション用のクラウド環境を設定します。ネットワークアクセスレベル、環境変数、セットアップスクリプト、環境キャッシュを構成できます。
クラウド環境には Web 上の Claude Code が必要です。これは Pro、Max、Team ユーザーの研究プレビュー版であり、プレミアムシートまたは Chat + Claude Code シートを持つ Enterprise ユーザー向けです。
各 クラウドセッション はクラウド環境で実行されます。環境を設定して ネットワークアクセス を許可または拒否し、セッション用に 環境変数を設定 し、Pro および Max プランで API 認証情報 を保存してセッションが認証情報を見ずに使用でき、Claude が作業を開始する前に セットアップスクリプト を実行できます。
同じ環境は、クラウドセッションを開始する場所に関係なく適用されます。Web 上の Claude Code、claude --cloud を使用したターミナル、Claude Tag、ルーチン、Claude モバイルアプリ、Desktop アプリ です。これらの各サーフェスは セルフホスト環境 にもルーティングできます。利用可能性と制限 は、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 つを選択します。
- Web、Desktop アプリ、モバイルアプリでは、セッションは セレクタ に表示される環境を使用します。オーナーが設定した 組織のデフォルト は、選択していない場合にセレクションを埋めます。
- 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 が作成した 共有環境 は同じセレクターに表示されます。設定なしで利用可能な内容については、インストール済みツール を参照してください。
環境を追加または編集する
Add cloud environment を選択するか、既存の環境にホバーして右側に表示される設定アイコンを選択します。ダイアログには名前、ネットワークアクセスレベル、環境変数、セットアップスクリプトが含まれます。Pro または Max プランで既存のクラウド環境を編集する場合、ダイアログには API 認証情報 も含まれます。
環境変数を設定する
環境変数は .env 形式を使用し、1 行に 1 つの KEY=value ペアです。プレーン値は引用符が不要で、一致するペアで値を引用符で囲む場合、引用符は値の一部にはなりません。複数行にまたがる値または # を含む値を引用符で囲みます。引用符なしの値では、# はコメントを開始し、行の残りは削除されます。
次の例は 3 つの変数を定義します。
NODE_ENV=development
LOG_LEVEL=debug
DATABASE_URL=postgres://localhost:5432/myapp
各セッションは起動時に環境の値を 1 回コピーして、Claude が実行するコマンドが読み取ることができる通常の環境変数にします。実行中のセッションは設定を再度読み込まないため、変数の編集または追加は、その後に開始するセッションに影響します。既に実行中のセッションは、開始時の値を保持します。
Web 上の Claude Code は、セッション開始時に自身でいくつかの変数も設定します。CLAUDE_AUTOCOMPACT_PCT_OVERRIDE の場合、Web 上の Claude Code が設定する値は、ここで追加する値をオーバーライドするため、ここでこのキーを追加しても効果がありません。
環境を使用する誰もが値を読み取ることができます。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 つの認証情報を追加します。新しい環境のダイアログはそれらを提供しません。編集もありません。認証情報のホストまたは値を変更するには、削除して再度追加します。
環境の API 認証情報を開く
claude.ai/code で 環境を編集用に開きます。Update cloud environment ダイアログで、Environment variables の下の API credentials を見つけます。環境に既にある認証情報が表示され、それぞれが適用されるホストが表示されます。
認証情報を追加する
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 に提供するものと同じです。
認証情報を保存する
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 つあります。
- 共有環境または self-hosted 環境を claude.ai/admin-settings/claude-code で組織の default environment として設定します。
- Claude Tag 管理設定でチャネルに 1 つをピンします。
ネットワークアクセス
各環境は 1 つのネットワークアクセスレベルを設定し、セッションが行える送信接続を制御します。デフォルトレベルの Trusted はパッケージレジストリおよび他の 許可リストドメイン を許可します。Custom は独自のドメインリストを取ります。
環境のネットワークアクセスを変更するには、編集用に開いて ダイアログの Network access セレクタを使用します。セレクタを開くクラウドアイコンは、Default 環境 の下にリストされたアプリサーフェスおよび ルーチンエディタ に表示されます。個人環境は claude.ai アカウント設定に別のページを持ちません。
セッションまたはルーチンで有効にする MCP コネクタは、コネクタホストを Allowed domains に追加しなくても機能します。コネクタトラフィックはセッションのネットワークではなく Anthropic のサーバーを通じて移動するためです。コネクタはセッションごとまたはルーチンごとに設定します。Claude が到達できるツールを制限するために不要なものを削除します。これは セキュリティと分離 の下に記載されている同じ Anthropic バウンドチャネルに依存します。
アクセスレベル
環境ダイアログ の 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 またはセルフホスト実行を設定している:ホストをその許可リストに保持します。ネットワークアクセス要件 およびセルフホスト ネットワーク要件 を参照してください。
各環境は独自の許可ドメインリストを持ちます。管理者がすべてのメンバーの環境にプッシュできる組織レベルの許可リストはありません。サーバー管理設定 はクラウドセッション内に適用されますが、環境のネットワーク許可リストにドメインを追加するものはありません。
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 ホスト環境では、各セッションは独自のオペレーティングシステムに関係なく Ubuntu 24.04 を実行する新しい仮想マシン(VM)を x86_64 で取得し、リポジトリがクローンされ、一般的なツールチェーンがプリインストールされています。依存関係がプリコンパイルされたバイナリを提供する場合(Ruby gems とネイティブ拡張またはプリビルト Python wheels など)、VM と一致するように x86_64 Linux ビルドを使用します。このセクションでは Anthropic ホスト デフォルト、組み込み GitHub ツール、テストとサービスの実行 方法、および各 VM が取得する リソース制限 について説明します。
組織が セルフホスト環境 にルーティングするセッションは、代わりに独自のランナーで実行され、ランナーイメージが提供するツールを使用します。
セットアップから引き継がれるもの
クラウドセッションはリポジトリの新しいクローンから開始されます。リポジトリにコミットしたものはすべて利用可能です。独自のマシンにのみインストールまたは設定したものはセッションで利用できません。組織のポリシーは サーバー管理設定 を通じて別途到達します。
| クラウドセッションで利用可能 | 理由 | |
|---|---|---|
リポジトリの CLAUDE.md |
はい | クローンの一部 |
リポジトリの .claude/settings.json フック |
はい | クローンの一部 |
リポジトリの .mcp.json MCP サーバー |
はい | クローンの一部 |
リポジトリの .claude/rules/ |
はい | クローンの一部 |
リポジトリの .claude/skills/、.claude/agents/、.claude/commands/ |
はい | クローンの一部 |
.claude/settings.json で宣言されたプラグイン |
はい | 宣言した マーケットプレイス からセッション開始時にインストールされます。マーケットプレイスソースに到達するにはネットワークアクセスが必要です |
| 組織の サーバー管理設定 | はい | セッション開始時に Anthropic のサーバーから取得されます。クラウドセッションで availableModels がどのように適用されるかについては サーフェスカバレッジ を参照してください。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 に書き込まれ、そのファイルをコミットします |
リポジトリの .claude/settings.json env ブロック内のトランスポート変数(NODE_EXTRA_CA_CERTS および mTLS クライアント証明書変数 など) |
いいえ | ホスティング環境はセッションの API 接続を管理するため、Claude Code はこれらのキーを無視し、セッションのデバッグログで各無視されたキーを記録します |
| サービス Claude が呼び出す API キーとトークン | Pro および Max プランでは API 認証情報 として | キーを環境に 1 回追加し、エージェントプロキシがリストしたホストへのリクエストに接続します。エージェントプロキシが 接続できない キー、または Team または Enterprise プランのキーは環境変数に留まります |
| AWS SSO などのインタラクティブ認証 | いいえ | サポートされていません。SSO はクラウドセッションで実行できないブラウザベースのログインが必要です |
独自の設定をクラウドセッションで利用可能にするには、リポジトリにコミットします。
環境を使用する誰もが環境変数とセットアップスクリプトを読み取ることができます。ダイアログの 環境変数 の下のメモはそう述べており、シークレットを追加しないよう警告します。Pro および Max プランでは、エージェントプロキシが接続できるキーを API 認証情報 として代わりに保存します。
インストール済みツール
クラウドセッションには、一般的な言語ランタイム、ビルドツール、データベースがプリインストールされています。以下の表は、カテゴリ別に含まれるものをまとめています。
| カテゴリ | 含まれるもの |
|---|---|
| Python | pip、poetry、uv、black、mypy、pytest、ruff を備えた Python 3.x |
| Node.js | 20、21、22(npm、yarn、pnpm、bun¹、eslint、prettier、chromedriver) |
| Ruby | gem、bundler、rbenv を備えた 3.1、3.2、3.3 |
| PHP | Composer を備えた 8.3 |
| Java | Maven と Gradle を備えた OpenJDK 21 |
| 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 はインストールされていますが、パッケージフェッチに関して既知の プロキシ互換性の問題 があります。
このテーブルのほとんどのツールのバージョンを取得するには、Claude にクラウドセッションで check-tools を実行するよう依頼してください。これはスラッシュコマンドではなく、セッション VM にインストールされたシェルコマンドです。Claude はすべての VM コマンドを実行します。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 の問題とプルリクエストを操作する
クラウドセッションには、Claude が問題を読み取り、プルリクエストをリストし、差分をフェッチし、セットアップなしでコメントを投稿できる組み込み 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 release または gh workflow run などの gh コマンドが必要な場合は、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 が独自の行に含まれます。これには v2.1.179 以降が必要です。トレーラーと PR 本文リンクを省略するには、attribution.sessionUrl を false に設定します。設定には v2.1.182 以降が必要です。
セッションリンクをコミットまたは PR 以外のもの(Claude が投稿する Slack メッセージまたは書き込むレポートファイルなど)に含めるには、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 を実行するよう依頼して、プロジェクトのサービスを開始します。イメージをプルするためのネットワークアクセスは環境の アクセスレベル に従い、Trusted デフォルト には 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 フックはクラウドでローカルと同じように動作しますが、これらの注意事項があります。
- クラウドのみのスコープなし:フックはローカルとクラウドセッションの両方で実行されます。ローカル実行をスキップするには、上記のように
CLAUDE_CODE_REMOTE環境変数をチェックします。 - ネットワークアクセスが必要:インストールコマンドはパッケージレジストリに到達する必要があります。環境が 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
関連リソース
- Web 上の Claude Code:クラウドセッションを開始、管理、共有します
- Web クイックスタート:GitHub を接続して最初のクラウドセッションを開始します
- Claude Tag:Claude が Slack から開始するセッションは同じ環境で実行されます
- ルーチン:スケジュール実行は同じ環境とネットワークアクセスレベルを使用します
- Remote Control:代わりに独自のマシンのネットワークとファイルでセッションを実行します
- セルフホスト環境:組織独自のインフラストラクチャでクラウドセッションを実行します
- SessionStart フック:ローカルとクラウドセッションで実行されるリポジトリコミットセットアップ
- サーバー管理設定:クラウドセッションに到達する組織ポリシー