SpyBara
Go Premium

Documentation 2026-09-11 23:01 UTC to 2026-09-12 03:02 UTC

93 files changed +15,938 −1,593. View all changes and history on the product overview
2026
Fri 25 23:58 Thu 24 22:57 Wed 23 23:57 Tue 22 23:59 Mon 21 22:59 Sun 20 23:59 Sat 19 23:57 Fri 18 23:58 Tue 15 23:58 Mon 14 22:58 Sat 12 03:02 Thu 10 23:00 Wed 9 22:58 Tue 8 20:00 Tue 1 21:02

admin-setup.md +34 −27

Details

90WSL 2 ユーティリティ VM 内のプロセスは、Windows 側のエンドポイント検出センサーに表示されません。ディストリビューション内のプロセスとファイルアクティビティを観察するには、エンドポイント検出ベンダーの WSL ガイダンスで、ディストリビューション内で実行できる Linux センサーと、それが必要とする除外を確認してください。Claude Code の [OpenTelemetry ツール実行テレメトリ](/docs/ja/monitoring-usage)は WSL とネイティブセッションで同じように出力されます。90WSL 2 ユーティリティ VM 内のプロセスは、Windows 側のエンドポイント検出センサーに表示されません。ディストリビューション内のプロセスとファイルアクティビティを観察するには、エンドポイント検出ベンダーの WSL ガイダンスで、ディストリビューション内で実行できる Linux センサーと、それが必要とする除外を確認してください。Claude Code の [OpenTelemetry ツール実行テレメトリ](/docs/ja/monitoring-usage)は WSL とネイティブセッションで同じように出力されます。

91 91 

92<h2 id="decide-what-to-enforce">92<h2 id="decide-what-to-enforce">

93 実行する内容を決定する93 実装する内容を決定する

94</h2>94</h2>

95 95 

96マネージド設定は、ツール、サンドボックス実行、MCP サーバーとプラグインソースへのアクセスをロックダウンし、実行されるフックを制御できます。各行は、それを駆動する設定キーを持つ制御サーフェスです。96マネージド設定は、ツール、サンドボックス実行、MCP サーバーとプラグインソース、および実行するフック を制限できます。各行は、それを駆動する設定キーを持つ制御サーフェスです。

97 97 

98| 制御 | 機能 | キー設定 |98| 制御 | 機能 | キー設定 |

99| :------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------- |99| :--------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------- |

100| [Permission rules](/docs/ja/permissions) | 特定のツールとコマンドを許可、確認、または拒否する | `permissions.allow`、`permissions.deny` |100| [権限ルール](/docs/ja/permissions) | 特定のツールとコマンドを許可、確認、または拒否する | `permissions.allow`、`permissions.deny` |

101| [Permission lockdown](/docs/ja/permissions#managed-only-settings) | マネージド設定を [permission ルールの唯一の設定ソース](/docs/ja/settings-reference#allowmanagedpermissionrulesonly) にする。`--dangerously-skip-permissions` を無効化する | `allowManagedPermissionRulesOnly`、`permissions.disableBypassPermissionsMode` |101| [権限ロックダウン](/docs/ja/permissions#managed-only-settings) | マネージド設定を[権限ルールの唯一の設定ソース](/docs/ja/settings-reference#allowmanagedpermissionrulesonly)にします。`--dangerously-skip-permissions` を無効にする | `allowManagedPermissionRulesOnly`、`permissions.disableBypassPermissionsMode` |

102| [Starting permission mode](/docs/ja/permission-modes#which-mode-a-session-starts-in) | 開発者のターミナルセッションが開始する権限モードを選択するか、組み込みの開始権限モードの代わりに自動モードを削除する。VS Code 拡張機能は、Pro、Max、Team プランでのみ設定した `defaultMode` を読み取ります。[Switch permission modes](/docs/ja/permission-modes#switch-permission-modes) は拡張機能が読み取る内容をリストします | `permissions.defaultMode`、`permissions.disableAutoMode` |102| [開始権限モード](/docs/ja/permission-modes#which-mode-a-session-starts-in) | 組み込みの開始権限モードの代わりに、開発者のターミナルセッションが開始する権限モードを選択するか、自動モードを削除します。VS Code 拡張機能は、Pro、Max、Team プランでのみ設定した `defaultMode` を読み取ります。[権限モードの切り替え](/docs/ja/permission-modes#switch-permission-modes)は、拡張機能が読み取る内容を一覧表示します | `permissions.defaultMode`、`permissions.disableAutoMode` |

103| [Sandboxing](/docs/ja/sandboxing) | ドメイン許可リスト付きの OS レベルのファイルシステムとネットワーク分離 | `sandbox.enabled`、`sandbox.network.allowedDomains` |103| [サンドボックス](/docs/ja/sandboxing) | ドメイン許可リスト付きの OS レベルのファイルシステムとネットワーク分離 | `sandbox.enabled`、`sandbox.network.allowedDomains` |

104| [Managed policy CLAUDE.md](/docs/ja/memory#deploy-organization-wide-claude-md) | すべてのセッションで読み込まれる組織全体の指示。除外できない | マネージドポリシーパスのファイル |104| [マネージドポリシー CLAUDE.md](/docs/ja/memory#deploy-organization-wide-claude-md) | すべてのセッションで読み込まれる組織全体の指示。除外できません | マネージドポリシーパスのファイル |

105| [MCP server control](/docs/ja/managed-mcp) | ユーザーが追加または接続できる MCP サーバーを制限するか、固定セットをデプロイするか、すべてのユーザーに独自のサーバーと一緒にリモートサーバーを提供する | `allowedMcpServers`、`deniedMcpServers`、`allowManagedMcpServersOnly`、`managedMcpServers`、またはデプロイされた `managed-mcp.json` ファイル |105| [MCP サーバー制御](/docs/ja/managed-mcp) | ユーザーが追加または接続できる MCP サーバーを制限し、固定セットをデプロイするか、リモートサーバーをすべてのユーザーに提供します | `allowedMcpServers`、`deniedMcpServers`、`allowManagedMcpServersOnly`、`managedMcpServers`、またはデプロイされた `managed-mcp.json` ファイル |

106| [Plugin marketplace control](/docs/ja/plugin-marketplaces#managed-marketplace-restrictions) | ユーザーが追加およびインストールできるマーケットプレイスソースを制限し、単一実行のためにプラグイン、エージェント、MCP サーバーをサイドロードする CLI フラグを拒否し、[`command` プラグインソース](/docs/ja/plugin-marketplaces#command-sources) をブロックし、どのマーケットプレイスのプラグインが提案されるかをホワイトリストに登録する | `strictKnownMarketplaces`、`blockedMarketplaces`、`disableSideloadFlags`、`disableCommandPluginSources`、`pluginSuggestionMarketplaces` |106| [プラグインマーケットプレイス制御](/docs/ja/plugin-marketplaces#managed-marketplace-restrictions) | ユーザーが追加およびインストールできるマーケットプレイスソースを制限し、単一実行のためにプラグイン、エージェント、MCP サーバーをサイドロードする CLI フラグを拒否し、[`command` プラグインソース](/docs/ja/plugin-marketplaces#command-sources)をブロックし、どのマーケットプレイスのプラグインを提案できるかをホワイトリストに登録します | `strictKnownMarketplaces`、`blockedMarketplaces`、`disableSideloadFlags`、`disableCommandPluginSources`、`pluginSuggestionMarketplaces` |

107| [Customization lockdown](/docs/ja/settings-reference#strictpluginonlycustomization) | スキル、エージェント、フック、および MCP サーバーをユーザーおよびプロジェクトソースからブロックし、プラグインまたはマネージド設定からのみ取得できるようにする | `strictPluginOnlyCustomization` |107| [カスタマイズロックダウン](/docs/ja/settings-reference#strictpluginonlycustomization) | スキル、エージェント、フック、MCP サーバーをユーザーおよびプロジェクトソースからブロックし、プラグインまたはマネージド設定からのみ取得できるようにします | `strictPluginOnlyCustomization` |

108| [Hook restrictions](/docs/ja/settings-reference#allowmanagedhooksonly) | 実行されるフックを制限し、HTTP フック URL を制限する。[`allowManagedHooksOnly` の下で実行される内容](/docs/ja/settings-reference#what-runs-under-allowmanagedhooksonly) を参照して、完全な効果リストを確認してください | `allowManagedHooksOnly`、`allowedHttpHookUrls` |108| [フック制限](/docs/ja/settings-reference#allowmanagedhooksonly) | 実行するフックを制限し、HTTP フック URL を制限します。[`allowManagedHooksOnly` で実行される内容](/docs/ja/settings-reference#what-runs-under-allowmanagedhooksonly)の完全な効果リストを参照してください | `allowManagedHooksOnly`、`allowedHttpHookUrls` |

109| [Login enforcement](/docs/ja/settings-reference#forceloginmethod) | ログインを特定の方法または Anthropic 組織に制限する。メソッド制限は VS Code 拡張機能、Agent SDK、`claude setup-token`、`/install-github-app` 全体に適用され、ターミナルのインタラクティブログイン画面は `/login` または初回オンボーディングで到達し、メソッドを強制せずに事前選択します。Claude Code は、ターミナル、VS Code 拡張機能、Agent SDK での claude.ai アカウントログインの組織を検証し、Claude Console ログインまたは [gateway](/docs/ja/claude-apps-gateway) サインインではチェックしません。v2.1.212 より前は、ターミナルログインのみが両方のキーを適用していました。設定されている場合、`ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN`、または `apiKeyHelper` によって認証されたセッションはスタートアップでブロックされます。クラウドプロバイダーセッションは影響を受けません | `forceLoginMethod`、`forceLoginOrgUUID` |109| [ログイン強制](/docs/ja/settings-reference#forceloginmethod) | ログインを特定の方法または Anthropic 組織に制限します。メソッド制限は VS Code 拡張機能、Agent SDK、`claude setup-token`、`/install-github-app` 全体に適用され、ターミナルのインタラクティブログイン画面(`/login` または初回オンボーディングで到達)はメソッドを事前選択しますが強制しません。Claude Code は、ターミナル、VS Code 拡張機能、Agent SDK での claude.ai アカウントログインの組織を検証し、Claude Console ログインまたは[ゲートウェイ](/docs/ja/claude-apps-gateway)サインインではチェックしません。v2.1.212 より前は、ターミナルログインのみが両方のキーを適用していました。設定すると、`ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN`、または `apiKeyHelper` によって認証されたセッションはスタートアップでブロックされます。クラウドプロバイダーセッションは影響を受けません | `forceLoginMethod`、`forceLoginOrgUUID` |

110| [Disable agent view](/docs/ja/agent-view#how-background-sessions-are-hosted) | `claude agents`、`--bg`、`/background`、およびオンデマンドスーパーバイザーをオフにする | `disableAgentView` |110| [エージェントビューを無効にする](/docs/ja/agent-view#how-background-sessions-are-hosted) | `claude agents`、`--bg`、`/background`、およびオンデマンドスーパーバイザーをオフにします | `disableAgentView` |

111| [Configure the corporate launcher](/docs/ja/corporate-launcher) | [バックグラウンドエージェントスーパーバイザー](/docs/ja/agent-view#how-background-sessions-are-hosted)、そのワーカー、および [その他のカバーされたバックグラウンドプロセス](/docs/ja/corporate-launcher#what-the-launcher-covers) に、エージェントビューをオフにする代わりに、必須の企業ランチャーをプレフィックスする | `processWrapper` |111| [企業ランチャーを構成する](/docs/ja/corporate-launcher) | [バックグラウンドエージェントスーパーバイザー](/docs/ja/agent-view#how-background-sessions-are-hosted)、そのワーカー、および[その他のカバーされたバックグラウンドプロセス](/docs/ja/corporate-launcher#what-the-launcher-covers)に、エージェントビューをオフにする代わりに、必須の企業ランチャーをプレフィックスします | `processWrapper` |

112| [Model restrictions](/docs/ja/model-config#restrict-model-selection) | `availableModels` はピッカーに表示されるモデルをフィルタリングします。`enforceAvailableModels` を追加すると、自動選択されるデフォルトモデルも制限されます。この設定が CLI、ウェブ、IDE にどのように到達するかについては、[surface coverage](/docs/ja/model-config#surface-coverage) を参照してください | `availableModels`、`enforceAvailableModels` |112| [モデル制限](/docs/ja/model-config#restrict-model-selection) | `availableModels` はピッカーに表示されるモデルをフィルタリングします。`enforceAvailableModels` を追加すると、自動選択されたデフォルトモデルも制限されます。このセッティングが CLI、ウェブ、IDE にどのように到達するかについては、[サーフェスカバレッジ](/docs/ja/model-config#surface-coverage)を参照してください | `availableModels`、`enforceAvailableModels` |

113| [Version floor](/docs/ja/settings-reference#minimumversion) | 自動更新が組織全体の最小値より下にインストールされるのを防ぐ | `minimumVersion` |113| [エフォートキャップ](/docs/ja/settings-reference#maxeffortlevel) | すべてのモデルまたはモデルごとに、すべてのプロバイダーで[エフォートレベル](/docs/ja/model-config#adjust-effort-level)をキャップします | `maxEffortLevel` |

114| [Required version range](/docs/ja/settings-reference#requiredminimumversion) | 実行中のバージョンが組織承認の範囲外の場合、まったく起動を拒否する。`minimumVersion` より強力で、ダウングレードのみをブロックする | `requiredMinimumVersion`、`requiredMaximumVersion` |114| [バージョンフロア](/docs/ja/settings-reference#minimumversion) | 自動更新が組織全体の最小値以下をインストールするのを防ぎます | `minimumVersion` |

115| [Telemetry opt-out](/docs/ja/data-usage#telemetry-services) | すべてのデバイスで Anthropic にバインドされた使用メトリクス、エラーレポート、調査をオフにする | `env` に `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` を `1` に設定。リンクされたセクションはカテゴリごとの変数をリストします |115| [必須バージョン範囲](/docs/ja/settings-reference#requiredminimumversion) | 実行中のバージョンが組織承認範囲外の場合、まったく起動を拒否します。ダウングレードのみをブロックする `minimumVersion` より強力です | `requiredMinimumVersion`、`requiredMaximumVersion` |

116 116| [テレメトリオプトアウト](/docs/ja/data-usage#telemetry-services) | すべてのデバイスで Anthropic バウンドの使用メトリクス、エラーレポート、およびサーベイをオフにします | `env` に `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` を `1` に設定します。リンクされたセクションはカテゴリごとの変数を一覧表示します |

117claude.ai または Anthropic API を通じて認証するメンバーを持つ組織は、設定をデプロイせずにモデルを管理することもできます。[organization model restrictions](/docs/ja/model-config#organization-model-restrictions) は個別のモデルを無効化し、[organization default model](/docs/ja/model-config#organization-default-model) は新しいセッションが開始するモデルを設定し、[organization effort limits](/docs/ja/model-config#organization-effort-limits) はロールごとのエフォートレベルを制限します。3 つのコントロールすべてに Claude Enterprise プランが必要です。モデル制限とエフォート制限はサーバー側で実行されます。デフォルトモデルは、組織がそれを実行しない限り、ユーザーが変更できる開始点です。実行は限定的な組織セットで利用可能です。可用性については、Anthropic アカウントチームにお問い合わせください。これらのコントロールのいずれも、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、または [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) 上のセッションには到達しません。これらのプロバイダーでは、制限に上記の `availableModels` を使用し、マネージド設定の `model` キーをデフォルトに使用してください。117 

118 118メンバーが claude.ai または Anthropic API を通じてサインインし、Claude Enterprise プランを使用している場合、何もデプロイせずに組織の管理者設定からモデルを管理することもできます。

119[Claude Code on the web](/docs/ja/claude-code-on-the-web) には独自の管理サーフェスがあります。管理設定のクラウド環境ページで、オーナーは、メンバーのクラウドセッションの [network access level](/docs/ja/cloud-environments#network-access)、環境変数、セットアップスクリプトを設定する [organization-shared environments](/docs/ja/cloud-environments#organization-shared-environments) を作成します。オーナーは、[claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) で組織のデフォルト環境を別途選択します。119 

120 120* [組織モデル制限](/docs/ja/model-config#organization-model-restrictions):個別のモデルを無効にします。サーバー側で強制されます。

121パーミッションルールとサンドボックスは異なるレイヤーをカバーします。WebFetch を拒否すると Claude の fetch ツールがブロックされますが、Bash が許可されている場合、`curl` と `wget` は依然として任意の URL に到達できます。サンドボックスは OS レベルで実行されるネットワークドメイン許可リストでそのギャップを閉じます。121* [組織デフォルトモデル](/docs/ja/model-config#organization-default-model):新しいセッションが開始するモデルを設定します。ユーザーは、組織がデフォルトを強制しない限り変更できます。これは限定的な組織セットで利用可能です。Anthropic アカウントチームにお問い合わせください。

122 122* [組織エフォート制限](/docs/ja/model-config#organization-effort-limits):ロールごとのエフォートレベルをキャップします。サーバー側で強制されます。

123これらの制御が防御する脅威モデルについては、[Security](/docs/ja/security) を参照してください。123 

124これらの制御は、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、または[AWS 上の Claude Platform](/docs/ja/claude-platform-on-aws)のセッションには到達しません。これらのプロバイダーでは、代わりにマネージド設定を使用してください。制限には `availableModels`、デフォルトには `model`、エフォートキャップには [`maxEffortLevel`](/docs/ja/settings-reference#maxeffortlevel) を使用します。

125 

126[Web 上の Claude Code](/docs/ja/claude-code-on-the-web)には独自の管理サーフェスがあります。管理設定のクラウド環境ページで、オーナーは[組織共有環境](/docs/ja/cloud-environments#organization-shared-environments)を作成し、メンバーのクラウドセッションの[ネットワークアクセスレベル](/docs/ja/cloud-environments#network-access)、環境変数、セットアップスクリプトを設定します。オーナーは、[claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) で組織のデフォルト環境を別途選択します。

127 

128権限ルールとサンドボックスは異なるレイヤーをカバーします。WebFetch を拒否すると Claude のフェッチツールがブロックされますが、Bash が許可されている場合、`curl` と `wget` は依然として任意の URL に到達できます。サンドボックスは、OS レベルで強制されるネットワークドメイン許可リストでそのギャップを閉じます。

129 

130これらの制御が防御する脅威モデルについては、[セキュリティ](/docs/ja/security)を参照してください。

124 131 

125<h2 id="set-up-usage-visibility">132<h2 id="set-up-usage-visibility">

126 使用状況の可視性をセットアップする133 使用状況の可視性をセットアップする

advisor.md +17 −6

Details

48/advisor opus48/advisor opus

49```49```

50 50 

51コマンドは `Advisor set to` で確認し、その後に advisor モデル名が続きます。選択はユーザー設定の `advisorModel` に保存され、セッション全体で保持されます。51コマンドは `Advisor set to` で確認し、その後に advisor モデル名が続きます。選択はユーザー設定の `advisorModel` に保存され、セッション全体で保持されます。ただし、[`advisorModel` エントリ](/docs/ja/settings-reference#advisormodel)が現在のセッションにのみ適用されるとリストしている場合は除きます。

52 

53このコマンドは、ターミナルピッカーがない場所でも機能します。[非対話型モード](/docs/ja/headless)で `-p` を使用する場合、Agent SDK 内、デスクトップアプリ内、および[リモートコントロール](/docs/ja/remote-control)経由です。これには Claude Code v2.1.260 以降が必要です。これらのサーフェスでは、

54 

55* 引数なしで `/advisor` を実行して、現在の advisor モデルとそれが受け入れるエイリアスを出力します。

56* `/advisor opus` などのモデルを使用して `/advisor` を実行して、それを設定します。

57* `/advisor off` を実行してそれをオフにします。

52 58 

53Claude Code は、組織の [`availableModels`](/docs/ja/model-config#restrict-model-selection)許可リストが除外した保存済み advisor を呼び出しません。advisor を使用するには、`/advisor` で許可されたモデルを選択してください。Claude Code は、現在のメインモデルがサポートしていない advisor を引き続き保存します。その advisor は、[`/model`](/docs/ja/model-config#setting-your-model)で[互換性のあるメインモデル](#choose-an-advisor-model)に切り替えた後にアクティブになります。59Claude Code は、組織の [`availableModels`](/docs/ja/model-config#restrict-model-selection)許可リストが除外した保存済み advisor を呼び出しません。advisor を使用するには、`/advisor` で許可されたモデルを選択してください。Claude Code は、現在のメインモデルがサポートしていない advisor を引き続き保存します。その advisor は、[`/model`](/docs/ja/model-config#setting-your-model)で[互換性のあるメインモデル](#choose-an-advisor-model)に切り替えた後にアクティブになります。

54 60 


92advisor はメインモデル以上の機能を持つ必要があります。各メインモデルで受け入れられる advisor は次のとおりです。98advisor はメインモデル以上の機能を持つ必要があります。各メインモデルで受け入れられる advisor は次のとおりです。

93 99 

94| メインモデル | 受け入れられる advisor | 注記 |100| メインモデル | 受け入れられる advisor | 注記 |

95| --------------------- | --------------------------- | --------------------------------------------------------------------------------------------------------------------- |101| --------------------- | --------------------- | --------------------------------------------------------------------------------------------------------------------- |

96| Haiku 4.5 | Fable、Opus、Sonnet | Haiku は advisor を呼び出すことはできますが、advisor として機能することはできません |102| Haiku 4.5 | Fable、Opus、Sonnet | Haiku は advisor を呼び出すことはできますが、advisor として機能することはできません |

97| Sonnet 4.6 | Fable、Opus、Sonnet | |103| Sonnet 4.6 | Fable、Opus、Sonnet | |

98| Sonnet 5 | Fable、Opus、Sonnet 5 | Sonnet 4.6 advisor は拒否されます |104| Sonnet 5 | Fable、Opus、Sonnet 5 | Sonnet 4.6 advisor は拒否されます |

99| Opus 4.6 | Fable、Opus、Sonnet 5 | Sonnet 5 と Opus 4.6 は同等の機能として評価されるため、Opus 4.6 メインは Sonnet 5 advisor を受け入れます |105| Opus 4.6 | Fable、Opus、Sonnet 5 | Sonnet 5 と Opus 4.6 は同等の機能として評価されるため、Opus 4.6 メインは Sonnet 5 advisor を受け入れます |

100| Opus 4.7 以降 | Fable、Opus 4.7 以降 | Opus 4.7 以降の Opus モデルは同等の機能として評価されるため、どれでも他方を advisor として受け入れます。Opus 4.6 または Sonnet 5 advisor を持つ Opus 4.7 メインは拒否されます |106| Opus 4.7 以降 | Fable、Opus 4.7 以降 | Opus 4.7 以降の Opus モデルは同等の機能として評価されるため、どれでも他方を advisor として受け入れます。Opus 4.6 または Sonnet 5 advisor を持つ Opus 4.7 メインは拒否されます |

101| Fable 5.1 または Fable 5 | Fable 5.1、または同じ Fable バージョン | Opus または Sonnet advisor は拒否され、Fable 5.1 メインモデルの Fable 5 advisor も拒否されます |107| Fable 5.1 または Fable 5 | Fable 5.1 または Fable 5 | Opus または Sonnet advisor は拒否されます |

102 108 

103Fable 5.1 は Claude Code v2.1.257 以降が必要であり、Fable 5 は v2.1.170 以降が必要です。どちらも [Fable アクセス](/docs/ja/model-config#work-with-fable) が必要です。109Fable 5.1 は Claude Code v2.1.257 以降が必要です。どちらの Fable モデルも [Fable アクセス](/docs/ja/model-config#work-with-fable) が必要です。

104 110 

105advisor を `fable`、`opus`、または `sonnet` として設定します。これらのエイリアスは Claude Code の各モデルファミリーの組み込みデフォルトバージョンに解決され、新しい Claude Code リリースで進化します。`claude-opus-5` などの完全なモデル ID を渡すこともできます。111advisor を `fable`、`opus`、または `sonnet` として設定します。これらのエイリアスは Claude Code の各モデルファミリーの組み込みデフォルトバージョンに解決され、新しい Claude Code リリースで進化します。`claude-opus-5` などの完全なモデル ID を渡すこともできます。

106 112 


161 コスト167 コスト

162</h2>168</h2>

163 169 

164Claude が advisor を呼び出すと、advisor モデルが会話を読むため、各呼び出しはメインモデルの使用に加えて advisor モデルのレートでトークンを消費します。API 課金では、advisor トークンに対して advisor モデルの入力および出力レートで課金されます。サブスクリプションプランでは、advisor 使用量はプランの使用制限にカウントされます。ただし、Fable advisor は Fable 使用量が課金される計画では[使用クレジット](/docs/ja/model-config#fable-and-usage-credits)に課金されます。アカウントが使用クレジット同意を必要とする場合、Fable advisor は同意を与えるまで何も課金されません。Claude Code はそれまで[選択を適用しない](#fable-advisor-and-usage-credits)ためです。170Claude が advisor を呼び出すと、advisor モデルが会話を読むため、各呼び出しはメインモデルの使用に加えて advisor モデルのレートでトークンを消費します。これらの advisor トークンがどのように課金されるかは、お支払い方法によって異なります。

171 

172* **API 課金**: advisor トークンに対して advisor モデルの入力および出力レートで課金されます

173* **サブスクリプションプラン**: advisor 使用量はプランの使用制限にカウントされます。ただし、Fable advisor は Fable 使用量が課金される計画では[使用クレジット](/docs/ja/model-config#fable-and-usage-credits)に課金されます

174 

175アカウントが使用クレジット同意を必要とする場合、Fable advisor は同意を与えるまで何も課金されません。Claude Code はそれまで[選択を適用しない](#fable-advisor-and-usage-credits)ためです。

165 176 

166Claude は各ターンではなく決定ポイントで advisor を呼び出すため、より高速なメインモデルをより強力な advisor と組み合わせることは、通常、より強力なモデルを全体で実行するよりもコストが低くなります。advisor 使用量は [`/usage`](/docs/ja/costs#track-your-costs)で表示されるセッション合計にカウントされます。177Claude は各ターンではなく決定ポイントで advisor を呼び出すため、より高速なメインモデルをより強力な advisor と組み合わせることは、通常、より強力なモデルを全体で実行するよりもコストが低くなります。advisor 使用量は [`/usage`](/docs/ja/costs#track-your-costs)で表示されるセッション合計にカウントされます。

167 178 


189 advisor をオフにする200 advisor をオフにする

190</h2>201</h2>

191 202 

192advisor の使用を停止し、保存された `advisorModel` をクリアするには、`/advisor off` を実行するか、`/advisor` ピッカーで **No advisor** を選択します。203advisor の使用を停止するには、`/advisor off` を実行するか、`/advisor` ピッカーで **No advisor** を選択します。

193 204 

194```205```

195/advisor off206/advisor off

Details

23<img src="https://mintcdn.com/claude-code/_xqph1dUOslCOwsj/images/agent-loop-diagram-dark.svg?fit=max&auto=format&n=_xqph1dUOslCOwsj&q=85&s=afe723c52a324d3c61fa72fb02432ab6" className="hidden dark:block" alt="エージェントループの図:プロンプトが agentic ループに入り、Claude が評価してツール呼び出しをリクエストするか最終回答を返すか、またはツール呼び出しの結果が別の評価にフィードバックされます" width="720" height="212" data-path="images/agent-loop-diagram-dark.svg" />23<img src="https://mintcdn.com/claude-code/_xqph1dUOslCOwsj/images/agent-loop-diagram-dark.svg?fit=max&auto=format&n=_xqph1dUOslCOwsj&q=85&s=afe723c52a324d3c61fa72fb02432ab6" className="hidden dark:block" alt="エージェントループの図:プロンプトが agentic ループに入り、Claude が評価してツール呼び出しをリクエストするか最終回答を返すか、またはツール呼び出しの結果が別の評価にフィードバックされます" width="720" height="212" data-path="images/agent-loop-diagram-dark.svg" />

24 24 

251. **プロンプトを受け取る。** Claude はプロンプト、システムプロンプト、ツール定義、および会話履歴とともにプロンプトを受け取ります。SDK はセッションメタデータを含むサブタイプ `"init"` の[`SystemMessage`](#message-types)を生成します。251. **プロンプトを受け取る。** Claude はプロンプト、システムプロンプト、ツール定義、および会話履歴とともにプロンプトを受け取ります。SDK はセッションメタデータを含むサブタイプ `"init"` の[`SystemMessage`](#message-types)を生成します。

262. **評価して応答する。** Claude は現在の状態を評価し、どのように進めるかを決定します。テキストで応答したり、1 つ以上のツール呼び出しをリクエストしたり、その両方を行ったりできます。SDK はテキストとツール呼び出しリクエストを含む[`AssistantMessage`](#message-types)を生成します。262. **評価して応答する。** Claude は現在の状態を評価し、どのように進めるかを決定します。テキストで応答したり、1 つ以上のツール呼び出しをリクエストしたり、その両方を行ったりできます。SDK はテキストブロックやツール呼び出しリクエストなどのコンテンツブロックごとに 1 つずつ、1 つ以上の[`AssistantMessage`](#message-types)オブジェクトを生成します。

273. **ツールを実行する。** SDK は要求された各ツールを実行し、結果を収集します。ツール結果の各セットは次の決定のために Claude にフィードバックされます。[hooks](/docs/ja/agent-sdk/hooks)を使用して、ツール呼び出しを実行前に傍受、変更、またはブロックできます。273. **ツールを実行する。** SDK は要求された各ツールを実行し、結果を収集します。ツール結果の各セットは次の決定のために Claude にフィードバックされます。[hooks](/docs/ja/agent-sdk/hooks)を使用して、ツール呼び出しを実行前に傍受、変更、またはブロックできます。

284. **繰り返す。** ステップ 2 と 3 がサイクルとして繰り返されます。各完全なサイクルは 1 ターンです。Claude はツール呼び出しと結果の処理を続け、ツール呼び出しのない応答を生成するまで続きます。284. **繰り返す。** ステップ 2 と 3 がサイクルとして繰り返されます。各完全なサイクルは 1 ターンです。Claude はツール呼び出しと結果の処理を続け、ツール呼び出しのない応答を生成するまで続きます。

295. **結果を返す。** SDK は最終的な[`AssistantMessage`](#message-types)(テキスト応答、ツール呼び出しなし)を生成し、その後に最終テキスト、トークン使用量、コスト、およびセッション ID を含む[`ResultMessage`](#message-types)を生成します。295. **結果を返す。** SDK は最終的な[`AssistantMessage`](#message-types)(テキスト応答、ツール呼び出しなし)を生成し、その後に最終テキスト、トークン使用量、コスト、およびセッション ID を含む[`ResultMessage`](#message-types)を生成します。


41まず、SDK はプロンプトを Claude に送信し、セッションメタデータを含む[`SystemMessage`](#message-types)を生成します。その後、ループが開始されます。41まず、SDK はプロンプトを Claude に送信し、セッションメタデータを含む[`SystemMessage`](#message-types)を生成します。その後、ループが開始されます。

42 42 

431. **ターン 1:** Claude は `Bash` を呼び出して `npm test` を実行します。SDK は[`AssistantMessage`](#message-types)とツール呼び出しを生成し、コマンドを実行し、出力(3 つの失敗)を含む[`UserMessage`](#message-types)を生成します。431. **ターン 1:** Claude は `Bash` を呼び出して `npm test` を実行します。SDK は[`AssistantMessage`](#message-types)とツール呼び出しを生成し、コマンドを実行し、出力(3 つの失敗)を含む[`UserMessage`](#message-types)を生成します。

442. **ターン 2:** Claude は `Read` を呼び出して `auth.ts` と `auth.test.ts` を読み取ります。SDK はファイルの内容を返し、`AssistantMessage` を生成します。442. **ターン 2:** Claude は `Read` を呼び出して `auth.ts` と `auth.test.ts` を読み取ります。SDK は各呼び出しに対して `AssistantMessage` を生成し、ファイルの内容を返します。

453. **ターン 3:** Claude は `Edit` を呼び出して `auth.ts` を修正し、`Bash` を呼び出して `npm test` を再実行します。3 つのテストすべてが成功します。SDK は `AssistantMessage` を生成します。453. **ターン 3:** Claude は `Edit` を呼び出して `auth.ts` を修正し、`Bash` を呼び出して `npm test` を再実行します。3 つのテストすべてが成功します。SDK は各呼び出しに対して `AssistantMessage` を生成します。

464. **最終ターン:** Claude はツール呼び出しのないテキストのみの応答を生成します。「認証バグを修正し、3 つのテストすべてが成功しました。」SDK はこのテキストを含む最終 `AssistantMessage` を生成し、その後、同じテキストとコストおよび使用量を含む[`ResultMessage`](#message-types)を生成します。464. **最終ターン:** Claude はツール呼び出しのないテキストのみの応答を生成します。「Fixed the auth bug, all three tests pass now.」SDK はこのテキストを含む最終 `AssistantMessage` を生成し、その後、同じテキストとコストおよび使用量を含む[`ResultMessage`](#message-types)を生成します。

47 47 

48これは 4 ターンでした。3 つはツール呼び出し、1 つは最終テキストのみの応答です。48これは 4 ターンでした。3 つはツール呼び出し、1 つは最終テキストのみの応答です。

49 49 

50`max_turns` / `maxTurns` でループをキャップできます。これはツール使用ターンのみをカウントします。たとえば、上記のループで `max_turns=2` は編集ステップの前に停止していたでしょう。`max_budget_usd` / `maxBudgetUsd` を使用して、支出しきい値に基づいてターンをキャップすることもできます。50`max_turns` / `maxTurns` でループをキャップできます。これはツール使用ターンのみをカウントします。たとえば、上記のループで `max_turns=2` は編集ステップの前に停止していたでしょう。`max_budget_usd` / `maxBudgetUsd` を使用して、支出しきい値に基づいてターンをキャップすることもできます。

51 51 

52制限がない場合、ループは Claude が独自に終了するまで実行されます。これは適切にスコープされたタスクには問題ありませんが、オープンエンドのプロンプト(「このコードベースを改善する」)では長時間実行される可能性があります。予算を設定することは、本番エージェントの良いデフォルトです。以下の[ターンと予算](#turns-and-budget)でオプションリファレンスを参照してください。52制限がない場合、ループは Claude が独自に終了するまで実行されます。これは適切にスコープされたタスクには問題ありませんが、オープンエンドのプロンプト(「improve this codebase」)では長時間実行される可能性があります。予算を設定することは、本番エージェントの良いデフォルトです。以下の[ターンと予算](#turns-and-budget)でオプションリファレンスを参照してください。

53 53 

54<h2 id="message-types">54<h2 id="message-types">

55 メッセージタイプ55 メッセージタイプ


65 * `"worker_shutting_down"`:ホストが終了しているか Remote Control が切断されたため、現在のターン後にループが終了します65 * `"worker_shutting_down"`:ホストが終了しているか Remote Control が切断されたため、現在のターン後にループが終了します

66 66 

67 TypeScript では、`"init"` 以外の各サブタイプは `SDKSystemMessage` のサブタイプではなく、[`SDKMessage` ユニオン](/docs/ja/agent-sdk/typescript#sdkmessage)内の独自のタイプです。67 TypeScript では、`"init"` 以外の各サブタイプは `SDKSystemMessage` のサブタイプではなく、[`SDKMessage` ユニオン](/docs/ja/agent-sdk/typescript#sdkmessage)内の独自のタイプです。

68* **`AssistantMessage`:** 最終テキストのみの応答を含む、各 Claude 応答の後に生成されます。そのターンからのテキストコンテンツブロックとツール呼び出しブロックを含みます。68* **`AssistantMessage`:** 最終テキストのみの応答を含む、Claude の各応答のコンテンツブロックごとに生成されます。各メッセージは、テキストやツール呼び出しなどの単一のコンテンツブロックを持ち、1 つの応答からのメッセージは同じメッセージ ID を共有します。

69* **`UserMessage`:** 各ツール実行後、Claude に送り返されるツール結果コンテンツとともに生成されます。ループ中盤でストリーミングするユーザー入力に対しても生成されます。69* **`UserMessage`:** 各ツール実行後、Claude に送り返されるツール結果コンテンツとともに生成されます。ループ中盤でストリーミングするユーザー入力に対しても生成されます。

70* **`StreamEvent`:** 部分メッセージが有効な場合のみ生成されます。生の API ストリーミングイベント(テキストデルタ、ツール入力チャンク)を含みます。[ストリーム応答](/docs/ja/agent-sdk/streaming-output)を参照してください。70* **`StreamEvent`:** 部分メッセージが有効な場合のみ生成されます。生の API ストリーミングイベント(テキストデルタ、ツール入力チャンク)を含みます。[ストリーム応答](/docs/ja/agent-sdk/streaming-output)を参照してください。

71* **`ResultMessage`:** エージェントループの終了をマークします。最終テキスト結果、トークン使用量、コスト、およびセッション ID を含みます。`subtype` フィールドをチェックして、タスクが成功したか制限に達したかを判断します。`prompt_suggestion` などの少数の末尾システムイベントはその後に到着する可能性があるため、結果で中断するのではなく、ストリームを完了まで反復処理します。[結果を処理する](#handle-the-result)を参照してください。71* **`ResultMessage`:** エージェントループの終了をマークします。最終テキスト結果、トークン使用量、コスト、およびセッション ID を含みます。`subtype` フィールドをチェックして、タスクが成功したか制限に達したかを判断します。`prompt_suggestion` などの少数の末尾システムイベントはその後に到着する可能性があるため、結果で中断するのではなく、ストリームを完了まで反復処理します。[結果を処理する](#handle-the-result)を参照してください。


91 <CodeGroup>91 <CodeGroup>

92 ```python Python theme={null}92 ```python Python theme={null}

93 import asyncio93 import asyncio

94 from claude_agent_sdk import query, AssistantMessage, ResultMessage94 from claude_agent_sdk import query, AssistantMessage, ResultMessage, TextBlock, ToolUseBlock

95 95 

96 96 

97 async def main():97 async def main():

98 try:98 try:

99 async for message in query(prompt="Summarize this project"):99 async for message in query(prompt="Summarize this project"):

100 if isinstance(message, AssistantMessage):100 if isinstance(message, AssistantMessage):

101 print(f"Turn completed: {len(message.content)} content blocks")101 # Each AssistantMessage carries one content block

102 for block in message.content:

103 if isinstance(block, TextBlock):

104 print(f"Claude: {block.text}")

105 elif isinstance(block, ToolUseBlock):

106 print(f"Tool call: {block.name}")

102 if isinstance(message, ResultMessage):107 if isinstance(message, ResultMessage):

103 if message.subtype == "success":108 if message.subtype == "success":

104 print(message.result)109 print(message.result)


120 try {125 try {

121 for await (const message of query({ prompt: "Summarize this project" })) {126 for await (const message of query({ prompt: "Summarize this project" })) {

122 if (message.type === "assistant") {127 if (message.type === "assistant") {

123 console.log(`Turn completed: ${message.message.content.length} content blocks`);128 // Each assistant message carries one content block

129 for (const block of message.message.content) {

130 if (block.type === "text") {

131 console.log(`Claude: ${block.text}`);

132 } else if (block.type === "tool_use") {

133 console.log(`Tool call: ${block.name}`);

134 }

135 }

124 }136 }

125 if (message.type === "result") {137 if (message.type === "result") {

126 if (message.subtype === "success") {138 if (message.subtype === "success") {


175 187 

176Claude はタスクに基づいてどのツールを呼び出すかを決定しますが、それらの呼び出しの実行を許可するかどうかを制御します。特定のツールを自動承認したり、他のツールを完全にブロックしたり、すべてに対して承認を要求したりできます。3 つのオプションが連携して、何が実行されるかを決定します。188Claude はタスクに基づいてどのツールを呼び出すかを決定しますが、それらの呼び出しの実行を許可するかどうかを制御します。特定のツールを自動承認したり、他のツールを完全にブロックしたり、すべてに対して承認を要求したりできます。3 つのオプションが連携して、何が実行されるかを決定します。

177 189 

178* **`allowed_tools` / `allowedTools`** リストされたツールを自動承認します。許可されたツールリストに `["Read", "Glob", "Grep"]` がある読み取り専用エージェントは、プロンプトなしでそれらのツールを実行します。リストされていないツールは引き続き利用可能ですが、権限が必要です。190* **`allowed_tools` / `allowedTools`** リストされたツールを自動承認します。許可されたツールリストに `["Read", "Glob", "Grep"]` がある読み取り専用エージェントは、プロンプトなしでそれらのツールを実行します。リストされていないツールは引き続き利用可能ですが、それらへの呼び出しで承認が必要な場合は、権限モードと `canUseTool` にフォールスルーします。

179* **`disallowed_tools` / `disallowedTools`** リストされたツールをブロックします。他の設定に関係なく。ツールが実行される前にルールがチェックされる順序については、[権限](/docs/ja/agent-sdk/permissions)を参照してください。191* **`disallowed_tools` / `disallowedTools`** リストされたツールをブロックします。他の設定に関係なく。ツールが実行される前にルールがチェックされる順序については、[権限](/docs/ja/agent-sdk/permissions)を参照してください。

180* **`permission_mode` / `permissionMode`** 許可または拒否ルールでカバーされていないツールに何が起こるかを制御します。SDK は有効なモードと許可および拒否ルールを固定順序で評価します。詳細については、[権限がどのように評価されるか](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)を参照してください。利用可能なモードについては、[権限モード](#permission-mode)を参照してください。192* **`permission_mode` / `permissionMode`** 必要な人間の監視の量を制御します。SDK は有効なモードと許可および拒否ルールを固定順序で評価します。詳細については、[権限がどのように評価されるか](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)を参照してください。利用可能なモードについては、[権限モード](#permission-mode)を参照してください。

181 193 

182`"Bash(npm *)"` のようなルールで個別のツールをスコープすることもできます。これにより、特定のコマンドのみを許可できます。完全なルール構文については、[権限](/docs/ja/agent-sdk/permissions)を参照してください。194`"Bash(npm *)"` のようなルールで個別のツールをスコープすることもできます。これにより、特定のコマンドのみを許可できます。完全なルール構文については、[権限](/docs/ja/agent-sdk/permissions)を参照してください。

183 195 


219`effort` オプションは Claude が適用する推論の量を制御します。低い努力レベルはターンあたりのトークンが少なく、コストが削減されます。すべてのモデルが努力パラメータをサポートしているわけではありません。どのモデルがサポートしているかについては、[努力](https://platform.claude.com/docs/ja/build-with-claude/effort)を参照してください。231`effort` オプションは Claude が適用する推論の量を制御します。低い努力レベルはターンあたりのトークンが少なく、コストが削減されます。すべてのモデルが努力パラメータをサポートしているわけではありません。どのモデルがサポートしているかについては、[努力](https://platform.claude.com/docs/ja/build-with-claude/effort)を参照してください。

220 232 

221| レベル | 動作 | 適している用途 |233| レベル | 動作 | 適している用途 |

222| :--------- | :---------- | :------------------------------------------------------------------------------- |234| :--------- | :---------- | :------------------------------------------------------------------------------ |

223| `"low"` | 最小限の推論、高速応答 | ファイル検索、ディレクトリのリスト |235| `"low"` | 最小限の推論、高速応答 | ファイル検索、ディレクトリのリスト |

224| `"medium"` | バランスの取れた推論 | ルーチン編集、標準タスク |236| `"medium"` | バランスの取れた推論 | ルーチン編集、標準タスク |

225| `"high"` | 徹底的な分析 | リファクタリング、デバッグ |237| `"high"` | 徹底的な分析 | リファクタリング、デバッグ |

226| `"xhigh"` | 拡張推論深度 | [サポートしているモデル](/docs/ja/model-config#adjust-effort-level)での コーディングと agentic coding タスク |238| `"xhigh"` | 拡張推論深度 | [サポートしているモデル](/docs/ja/model-config#adjust-effort-level)でのコーディングと agentic coding タスク |

227| `"max"` | 最大推論深度 | 深い分析が必要な複数ステップの問題 |239| `"max"` | 最大推論深度 | 深い分析が必要な複数ステップの問題 |

228 240 

229`effort` を設定しない場合、両方の SDK はパラメータを設定したままにして、モデルのデフォルト動作に委譲します。241`effort` を設定しない場合、両方の SDK はパラメータを未設定のままにして、モデルのデフォルト動作に委譲します。

230 242 

231<Note>243<Note>

232 `effort` は各応答内の推論深度のレイテンシとトークンコストをトレードオフします。[Extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking)は、出力に `thinking` ブロックを生成する別の機能であり、[Python](/docs/ja/agent-sdk/python#thinkingconfig)または[TypeScript](/docs/ja/agent-sdk/typescript#thinkingconfig)の `ThinkingConfig` の `display` フィールドは、テキストを受け取るかどうかを制御します。これらは独立しています。`effort: "low"` を extended thinking 有効で設定することも、`effort: "max"` を有効にしないで設定することもできます。244 `effort` は各応答内の推論深度のレイテンシとトークンコストをトレードオフします。[Extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking)は、出力に `thinking` ブロックを生成する別の機能であり、[Python](/docs/ja/agent-sdk/python#thinkingconfig)または[TypeScript](/docs/ja/agent-sdk/typescript#thinkingconfig)の `ThinkingConfig` の `display` フィールドは、テキストを受け取るかどうかを制御します。これらは独立しています。`effort: "low"` を extended thinking 有効で設定することも、`effort: "max"` を有効にしないで設定することもできます。


242 254 

243| モード | 動作 | ユースケース |255| モード | 動作 | ユースケース |

244| :-------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------- |256| :-------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------- |

245| `"default"` | 許可ルールでカバーされていないツールは `canUseTool` コールバックをトリガーします。コールバックがない場合は拒否 | カスタム承認コールバックを備えたインタラクティブアプリケーション |257| `"default"` | 許可ルールでカバーされていないツール呼び出しは `canUseTool` コールバックをトリガーします。コールバックがない場合は拒否 | カスタム承認コールバックを備えたインタラクティブアプリケーション |

246| `"acceptEdits"` | ファイル編集と一般的なファイルシステムコマンド(`mkdir`、`touch`、`mv`、`cp` など)を自動承認します。他の Bash コマンドはデフォルトルールに従います | Claude の編集を信頼し、プロトタイピング中や隔離されたディレクトリで作業する場合など、より高速な反復を望む |258| `"acceptEdits"` | ファイル編集と一般的なファイルシステムコマンド(`mkdir`、`touch`、`mv`、`cp` など)を自動承認します。他の Bash コマンドはデフォルトルールに従います | Claude の編集を信頼し、プロトタイピング中や隔離されたディレクトリで作業する場合など、より高速な反復を望む |

247| `"plan"` | Claude はソースファイルを編集せずに探索して計画を作成します。ファイル編集は自動承認されず、`canUseTool` コールバックを通じてプロンプトされます | Claude が変更を提案するが実行しないようにしたい場合、例えばコードレビュー中または変更を実行する前に承認する必要がある場合 |259| `"plan"` | Claude はソースファイルを編集せずに探索して計画を作成します。ファイル編集は自動承認されず、`canUseTool` コールバックを通じてプロンプトされます | Claude が変更を提案するが実行しないようにしたい場合、例えばコードレビュー中または変更を実行する前に承認する必要がある場合 |

248| `"dontAsk"` | プロンプトしません。[権限ルール](/docs/ja/settings-reference#permission-settings)によって事前承認されたツールが実行され、その他はすべて拒否されます。`AskUserQuestion`、組織が[`ask` に設定](/docs/ja/mcp#organization-controls-on-connector-tools)したコネクタツール、および[`requiresUserInteraction`](/docs/ja/mcp#require-approval-for-a-specific-tool)とマークされた MCP ツールは、許可していても拒否されます | ヘッドレスエージェント用に固定で明示的なツール表面を望み、`canUseTool` が存在しないことへの暗黙的な依存よりもハード拒否を優先する |260| `"dontAsk"` | プロンプトしません。[権限ルール](/docs/ja/settings-reference#permission-settings)によって事前承認されたツールが実行され、`default` モードで承認が不要な呼び出し(作業ディレクトリ内のファイル読み取りなど)も実行されます。それ以外のプロンプトが表示される呼び出しはすべて拒否されます。`AskUserQuestion`、組織が[`ask` に設定](/docs/ja/mcp#organization-controls-on-connector-tools)したコネクタツール、および[`requiresUserInteraction`](/docs/ja/mcp#require-approval-for-a-specific-tool)とマークされた MCP ツールは、許可していても拒否されます | ヘッドレスエージェント用に固定で明示的なツール表面を望み、`canUseTool` が存在しないことへの暗黙的な依存よりもハード拒否を優先する |

249| `"auto"` | モデル分類器を使用して権限プロンプトを承認または拒否します。利用可能性と動作については、[Auto mode](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)を参照してください | ツール使用に対する安全ガードレールを望む自律型エージェント |261| `"auto"` | モデル分類器を使用して権限プロンプトを承認または拒否します。利用可能性と動作については、[Auto mode](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)を参照してください | ツール使用に対する安全ガードレールを望む自律型エージェント |

250| `"bypassPermissions"` | 明示的な[`ask` ルール](/docs/ja/settings-reference#permission-settings)に一致するツール、組織が[`ask` に設定](/docs/ja/mcp#organization-controls-on-connector-tools)したコネクタツール、およびユーザーインタラクションが必要なツールを除き、尋ねずにすべての許可されたツールを実行します。[クロスセッションメッセージングセーフガード](/docs/ja/permission-modes#skip-all-checks-with-bypasspermissions-mode)は引き続き適用されます。権限がどのように評価されるかについては、[権限の評価方法](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)を参照してください。TypeScript SDK では、`options` で `allowDangerouslySkipPermissions: true` も必要です。Unix でルートとして実行する場合は使用できません。エージェントのアクションが気にするシステムに影響を与えられない隔離環境でのみ使用します | CI、コンテナ、またはその他の隔離環境 |262| `"bypassPermissions"` | 明示的な[`ask` ルール](/docs/ja/settings-reference#permission-settings)に一致するツール、組織が[`ask` に設定](/docs/ja/mcp#organization-controls-on-connector-tools)したコネクタツール、およびユーザーインタラクションが必要なツールを除き、尋ねずにすべての許可されたツールを実行します。[クロスセッションメッセージングセーフガード](/docs/ja/permission-modes#skip-all-checks-with-bypasspermissions-mode)は引き続き適用されます。権限がどのように評価されるかについては、[権限の評価方法](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)を参照してください。TypeScript SDK では、`options` で `allowDangerouslySkipPermissions: true` も必要です。Unix でルートとして実行する場合は使用できません。エージェントのアクションが気にするシステムに影響を与えられない隔離環境でのみ使用します | CI、コンテナ、またはその他の隔離環境 |

251 263 


506* **長時間または高コストのタスクを実行していますか?** 隔離された作業を[サブエージェント](/docs/ja/agent-sdk/subagents)にオフロードして、メインコンテキストをリーンに保ちます。518* **長時間または高コストのタスクを実行していますか?** 隔離された作業を[サブエージェント](/docs/ja/agent-sdk/subagents)にオフロードして、メインコンテキストをリーンに保ちます。

507* **サービスとしてデプロイしていますか?** コンテナおよびサーバーレスガイダンスについては[Agent SDK のホスティング](/docs/ja/agent-sdk/hosting)を参照し、セッションを独自のバックエンドに永続化するには[セッションストレージ](/docs/ja/agent-sdk/session-storage)を参照してください。519* **サービスとしてデプロイしていますか?** コンテナおよびサーバーレスガイダンスについては[Agent SDK のホスティング](/docs/ja/agent-sdk/hosting)を参照し、セッションを独自のバックエンドに永続化するには[セッションストレージ](/docs/ja/agent-sdk/session-storage)を参照してください。

508 520 

509agentic ループのより広い概念的な図(SDK 固有ではない)については、[Claude Code の仕組み](/docs/ja/how-claude-code-works)を参照してください。Claude Code でループを設計するための実践的なガイド(ターンベースループからゴールベースループおよびプロアクティブループまで)については、ブログの[ループエンジニアリング:ループの開始](/docs/ja/blog/getting-started-with-loops)を参照してください。521agentic ループのより広い概念的な図(SDK 固有ではない)については、[Claude Code の仕組み](/docs/ja/how-claude-code-works)を参照してください。Claude Code でループを設計するための実践的なガイド(ターンベースループからゴールベースループおよびプロアクティブループまで)については、ブログの[ループエンジニアリング:ループの開始](https://claude.com/blog/getting-started-with-loops)を参照してください。

Details

338`tools` オプションと許可/禁止リストは、2 つのレイヤーに影響します。可用性はツールが Claude のコンテキストに表示されるかどうかを制御し、権限は Claude がツールを試みた後に呼び出しが承認されるかどうかを制御します。`tools` と単純名の `disallowedTools` エントリは可用性を変更します。`allowedTools` とスコープ付き `disallowedTools` ルールは権限を変更します。[タスク追跡ツール](/docs/ja/agent-sdk/todo-tracking#model-availability)の 1 つを `allowedTools` に名前を付けた場合、Claude Code もセッションをオプトインします。338`tools` オプションと許可/禁止リストは、2 つのレイヤーに影響します。可用性はツールが Claude のコンテキストに表示されるかどうかを制御し、権限は Claude がツールを試みた後に呼び出しが承認されるかどうかを制御します。`tools` と単純名の `disallowedTools` エントリは可用性を変更します。`allowedTools` とスコープ付き `disallowedTools` ルールは権限を変更します。[タスク追跡ツール](/docs/ja/agent-sdk/todo-tracking#model-availability)の 1 つを `allowedTools` に名前を付けた場合、Claude Code もセッションをオプトインします。

339 339 

340| オプション | レイヤー | 効果 |340| オプション | レイヤー | 効果 |

341| :------------------------ | :--- | :--------------------------------------------------------------------------------------------------------------------------------- |341| :------------------------ | :--- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

342| `tools: ["Read", "Grep"]` | 可用性 | リストされた組み込みツールのみが Claude のコンテキストに含まれます。リストされていない組み込みツールは削除されます。MCP ツールは影響を受けません。 |342| `tools: ["Read", "Grep"]` | 可用性 | リストされた組み込みツールのみが Claude のコンテキストに含まれます。リストされていない組み込みツールは削除されます。MCP ツールは影響を受けません。 |

343| `tools: []` | 可用性 | すべての組み込みツールが削除されます。Claude は MCP ツールのみを使用できます。 |343| `tools: []` | 可用性 | すべての組み込みツールが削除されます。Claude は MCP ツールのみを使用できます。 |

344| 許可されたツール | 権限 | リストされたツールは権限プロンプトなしで実行されます。その他のリストされていないツールは利用可能なままです。呼び出しは[権限フロー](/docs/ja/agent-sdk/permissions)を通じて行われます。 |344| 許可されたツール | 権限 | リストされたツールは権限プロンプトなしで実行されます。その他のリストされていないツールは利用可能なままです。呼び出しは[権限フロー](/docs/ja/agent-sdk/permissions)を通じて行われます。 |

345| 禁止されたツール | 両方 | `"Bash"` などの単純なツール名は、`tools` から省略するのと同じように、ツールを Claude のコンテキストから削除します。`"Bash(rm *)"` などのスコープ付きルールは、ツールをコンテキストに残し、一致する呼び出しのみを拒否します。 |345| 禁止されたツール | 両方 | `"Bash"` などの単純なツール名は、`tools` から省略するのと同じように、ツールを Claude のコンテキストから削除します。`"Bash(rm *)"` などのスコープ付きルールは、ツールをコンテキストに残し、[記述されたとおり](/docs/ja/permissions#bash-rule-limits)一致する呼び出しのみを拒否します。 |

346 346 

347組み込みツールを完全に削除するには、`tools` から省略するか、`disallowedTools`(Python: `disallowed_tools`)に単純名をリストします。どちらもツールをコンテキストから除外するため、Claude はそれを試みることはありません。スコープ付き `disallowedTools` ルールは一致する呼び出しをブロックしますが、ツールを表示したままにするため、Claude はそれを試みるターンを無駄にする可能性があります。評価順序の詳細については、[権限の設定](/docs/ja/agent-sdk/permissions)を参照してください。347組み込みツールを完全に削除するには、`tools` から省略するか、`disallowedTools`(Python: `disallowed_tools`)に単純名をリストします。どちらもツールをコンテキストから除外するため、Claude はそれを試みることはありません。スコープ付き `disallowedTools` ルールは一致する呼び出しをブロックしますが、ツールを表示したままにするため、Claude はそれを試みるターンを無駄にする可能性があります。評価順序の詳細については、[権限の設定](/docs/ja/agent-sdk/permissions)を参照してください。

348 348 

agent-sdk/examples.md +33 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# 例

6 

7> 構築したいものに合致する完全で実行可能な Agent SDK プロジェクト、または Claude Cookbook のガイド付きレシピを見つけてください。

8 

9このページは、完全で実行可能な Agent SDK プロジェクトとガイド付き Claude Cookbook レシピへのルートを提供します。TypeScript アプリケーションは [`claude-agent-sdk-demos`](https://github.com/anthropics/claude-agent-sdk-demos) リポジトリに、Python レシピは [Claude Cookbook](https://platform.claude.com/cookbook) に存在します。

10 

11<h2 id="run-a-minimal-agent-first">

12 まず最小限のエージェントを実行する

13</h2>

14 

15SDK でまだ何も構築していない場合は、完全なアプリケーションの前に、以下のいずれかから始めてください。

16 

17* [Agent SDK クイックスタート](/docs/ja/agent-sdk/quickstart):TypeScript または Python で最初に動作するエージェントを構築します。セットアップ手順が含まれています。エージェントはサンプルファイル内のバグを検出して修正します。

18 

19* [Hello World](https://github.com/anthropics/claude-agent-sdk-demos/tree/main/hello-world):リポジトリコードから開始したい場合にクローンする最小限の TypeScript プロジェクト

20 

21<h2 id="explore-a-typescript-application">

22 TypeScript アプリケーションを探索する

23</h2>

24 

25[`claude-agent-sdk-demos`](https://github.com/anthropics/claude-agent-sdk-demos) の TypeScript アプリケーションは、メールクライアントからマルチエージェント研究システムまで、ローカル開発用のデモです。構築しているものの形状に合致するデモをクローンしてください。

26 

27<h2 id="work-through-a-python-recipe">

28 Python レシピを実行する

29</h2>

30 

31Claude Cookbook の Agent SDK シリーズは、各レシピが Python ノートブックである一連のレシピで、シンプルな研究エージェントから洗練されたマルチエージェントシステムへと進行します。各ノートブックは前のものに基づいており、新しい概念と機能を導入します。[ワンライナー研究エージェント](https://platform.claude.com/cookbook/claude-agent-sdk-00-the-one-liner-research-agent) から始めて、前に進んでください。

32 

33Claude 製品全体のレシピについては、完全な [Claude Cookbook](https://platform.claude.com/cookbook) を参照してください。

Details

840 840 

841リモートサーバーのステータスは、`"connected"` を報告した後でも変わる可能性があります。セッション中に接続が切れると、Claude Code はサーバーを `"pending"` に戻して [再接続](/docs/ja/mcp#automatic-reconnection) します。その後、TypeScript で `mcpServerStatus()` を呼び出すか、Python で [`ClaudeSDKClient.get_mcp_status()`](/docs/ja/agent-sdk/python#methods) を呼び出すと、あなた側で設定変更がなくても、以前に接続されていたサーバーに対して `"pending"` を報告できます。841リモートサーバーのステータスは、`"connected"` を報告した後でも変わる可能性があります。セッション中に接続が切れると、Claude Code はサーバーを `"pending"` に戻して [再接続](/docs/ja/mcp#automatic-reconnection) します。その後、TypeScript で `mcpServerStatus()` を呼び出すか、Python で [`ClaudeSDKClient.get_mcp_status()`](/docs/ja/agent-sdk/python#methods) を呼び出すと、あなた側で設定変更がなくても、以前に接続されていたサーバーに対して `"pending"` を報告できます。

842 842 

8435 回の再接続試行が失敗した後、サーバーは `"failed"` を報告するか、再度認可が必要な場合は `"needs-auth"` を報告します。手動で再試行するには、TypeScript で [`reconnectMcpServer()`](/docs/ja/agent-sdk/python#methods) を呼び出すか、Python で [`ClaudeSDKClient.reconnect_mcp_server()`](/docs/ja/agent-sdk/python#methods) を呼び出してください。8435 回の再接続試行が失敗した後、サーバーは `"failed"` を報告するか、再度認可が必要な場合は `"needs-auth"` を報告します。手動で再試行するには、TypeScript で [`reconnectMcpServer()`](/docs/ja/agent-sdk/typescript#methods) を呼び出すか、Python で [`ClaudeSDKClient.reconnect_mcp_server()`](/docs/ja/agent-sdk/python#methods) を呼び出してください。

844 844 

845<h2 id="troubleshooting">845<h2 id="troubleshooting">

846 トラブルシューティング846 トラブルシューティング


924 ツール出力が最大許容トークン数を超える924 ツール出力が最大許容トークン数を超える

925</h3>925</h3>

926 926 

927SDK は Claude Code と同じ MCP 出力制限を適用します。ツール結果が 25,000 トークンより大きい場合、完全な出力はファイルに保存され、ツール結果はファイルパスを名前とするエラーメッセージに置き換えられるため、エージェントは出力を部分的に読み戻すことができます。[`MAX_MCP_OUTPUT_TOKENS`](/docs/ja/env-vars) 環境変数で制限を引き上げます。完全な動作については [MCP 出力制限と警告](/docs/ja/mcp#mcp-output-limits-and-warnings) を参照してください。これには、サーバーが `anthropic/maxResultSizeChars` アノテーションでツールごとの高い制限を宣言する方法も含まれます。927SDK は Claude Code と同じ MCP 出力制限を適用します。画像コンテンツのないツール結果が 25,000 トークンより大きい場合、Claude Code は出力をファイルに保存し、ツール結果をファイルパスを名前とするエラーメッセージに置き換えるため、エージェントは出力を部分的に読み戻すことができます。

928 

929[`MAX_MCP_OUTPUT_TOKENS`](/docs/ja/env-vars) 環境変数で制限を引き上げます。完全な動作については [MCP 出力制限と警告](/docs/ja/mcp#mcp-output-limits-and-warnings) を参照してください。これには、サーバーが `anthropic/maxResultSizeChars` アノテーションでツールごとの高い制限を宣言する方法も含まれます。

928 930 

929<h2 id="related-resources">931<h2 id="related-resources">

930 関連リソース932 関連リソース

Details

44 エージェントの動作をカスタマイズする44 エージェントの動作をカスタマイズする

45</h2>45</h2>

46 46 

47出力スタイル、`append`、およびカスタムプロンプト文字列は、それぞれシステムプロンプトを直接変更します。CLAUDE.md は異なるパスを取ります。SDK がそれを読み込み、システムプロンプトではなくプロジェクトコンテキストとして会話に内容を注入するため、選択したシステムプロンプトに関係なく動作を形作ります。[Skills](/docs/ja/agent-sdk/skills)、[hooks](/docs/ja/agent-sdk/hooks)、および[permissions](/docs/ja/agent-sdk/permissions)もシステムプロンプト外で動作を形作り、独自のページで説明されています。47`append` とカスタムプロンプト文字列は、それぞれシステムプロンプトを直接変更します。また、出力スタイルは Claude Code が毎回の応答で Claude に与える命令を変更します。CLAUDE.md は異なるパスを取ります。SDK がそれを読み込み、システムプロンプトではなくプロジェクトコンテキストとして会話に内容を注入するため、選択したシステムプロンプトに関係なく動作を形作ります。[Skills](/docs/ja/agent-sdk/skills)、[hooks](/docs/ja/agent-sdk/hooks)、および[permissions](/docs/ja/agent-sdk/permissions)もシステムプロンプト外で動作を形作り、独自のページで説明されています。

48 48 

49<h3 id="claude-md-files-for-project-level-instructions">49<h3 id="claude-md-files-for-project-level-instructions">

50 プロジェクトレベルの命令用の CLAUDE.md ファイル50 プロジェクトレベルの命令用の CLAUDE.md ファイル


118 永続的な設定のための出力スタイル118 永続的な設定のための出力スタイル

119</h3>119</h3>

120 120 

121出力スタイルは Claude のシステムプロンプトを変更する保存された設定です。マークダウンファイルとして保存され、セッションとプロジェクト全体で再利用できます。121出力スタイルは、Claude のロール、トーン、および出力形式を変更する保存された命令セットです。マークダウンファイルとして保存され、セッションとプロジェクト全体で再利用できます。

122 122 

123<h4 id="create-an-output-style">123<h4 id="create-an-output-style">

124 出力スタイルを作成する124 出力スタイルを作成する


387* マーカーを複数回含める場合、最初のマーカーが分割であり、SDK は他のマーカーを削除します。387* マーカーを複数回含める場合、最初のマーカーが分割であり、SDK は他のマーカーを削除します。

388* マーカーを除外する場合、SDK はすべての文字列を 1 つのブロックに結合します。これは 1 つの文字列を渡すのと同じです。388* マーカーを除外する場合、SDK はすべての文字列を 1 つのブロックに結合します。これは 1 つの文字列を渡すのと同じです。

389 389 

390<h3 id="change-the-prompt-of-an-existing-session">

391 既存のセッションのプロンプトを変更する

392</h3>

393 

394デフォルトでは、Claude Code はセッションの最初のリクエストでシステムプロンプトを 1 回構築し、`append` テキストまたはカスタムプロンプトを含めて、セッションに記録します。セッションがコンパクト化されるまで、その後のすべてのリクエストは、`resume` または `continue` でセッションに戻った後でも、その記録されたプロンプトを使用します。その後の呼び出しで異なる `append` またはカスタムプロンプトを渡す場合、セッションがコンパクト化されるか、新しいセッションで効果が発生します。

395 

396[bare mode](/docs/ja/headless#start-faster-with-bare-mode)で Claude Code を起動する場合、`--bare` を `extraArgs` で渡すか、`CLAUDE_CODE_SIMPLE=1` を設定して、記録はオフのままです。ただし、`systemPrompt` のオブジェクト形式で `snapshot: true` を設定する場合を除きます。デフォルトで `append` またはカスタムプロンプトを記録するには、Claude Code v2.1.265 以降が必要です。これは TypeScript Agent SDK v0.3.265 からバンドルされています。Claude Code v2.1.268 より前では、[feature flags](/docs/ja/env-vars#features-that-need-feature-flag-fetching)を取得しないセッション(Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry を含む)は、すべてのリクエストでプロンプトを再構築し、`snapshot` は効果がありませんでした。

397 

398代わりにすべてのリクエストでプロンプトを再構築するには、TypeScript SDK の `systemPrompt` のオブジェクト形式で `snapshot: false` を設定します。`{ type: "preset", preset: "claude_code", append, snapshot: false }` または `{ type: "custom", prompt, snapshot: false }`。プロンプトの表現を反復処理する場合、または同じセッションを再開する呼び出し間で `append` を変更するアプリケーションの場合は、このフォームを使用します。`snapshot` フィールドには `@anthropic-ai/claude-agent-sdk` v0.3.257 以降が必要です。

399 

390<h2 id="compare-the-four-approaches">400<h2 id="compare-the-four-approaches">

391 4 つのアプローチすべての比較401 4 つのアプローチすべての比較

392</h2>402</h2>

Details

934| `agents` | `dict[str, AgentDefinition] \| None` | `None` | プログラムで定義されたサブエージェント |934| `agents` | `dict[str, AgentDefinition] \| None` | `None` | プログラムで定義されたサブエージェント |

935| `plugins` | `list[SdkPluginConfig]` | `[]` | ローカルパスからカスタムプラグインを読み込みます。詳細については [プラグイン](/docs/ja/agent-sdk/plugins) を参照 |935| `plugins` | `list[SdkPluginConfig]` | `[]` | ローカルパスからカスタムプラグインを読み込みます。詳細については [プラグイン](/docs/ja/agent-sdk/plugins) を参照 |

936| `sandbox` | [`SandboxSettings`](#sandboxsettings) ` \| None` | `None` | プログラムでサンドボックス動作を設定します。詳細については [サンドボックス設定](#sandboxsettings) を参照 |936| `sandbox` | [`SandboxSettings`](#sandboxsettings) ` \| None` | `None` | プログラムでサンドボックス動作を設定します。詳細については [サンドボックス設定](#sandboxsettings) を参照 |

937| `setting_sources` | `list[SettingSource] \| None` | `None`(CLI デフォルト:すべてのソース) | 読み込むファイルシステム設定を制御します。`[]` を渡してユーザー、プロジェクト、ローカル設定を無効にします。管理ポリシー設定は常に読み込まれます。[Claude Code 機能を使用](/docs/ja/agent-sdk/claude-code-features#what-settingsources-does-not-control) を参照 |937| `setting_sources` | `list[SettingSource] \| None` | `None`(CLI デフォルト:すべてのソース) | 読み込むファイルシステム設定を制御します。`[]` を渡してユーザー、プロジェクト、ローカル設定を無効にします。管理ポリシー設定は常に読み込まれます。[適格な設定](/docs/ja/server-managed-settings#platform-availability) 上の組織認証情報でセッションが認証されるときに、サーバー管理設定が取得されます。[Claude Code 機能を使用](/docs/ja/agent-sdk/claude-code-features#what-settingsources-does-not-control) を参照 |

938| `skills` | `list[str] \| Literal["all"] \| None` | `None` | セッションで利用可能なスキル。すべての検出されたスキルを有効にするには `"all"` を渡すか、スキル名のリストを渡します。正確な名前のみを渡します。SDK は Claude Code プロセスを開始する前に、形式が正しくないワイルドカード形式の名前を `ValueError` で拒否します。このチェックには Python Agent SDK 0.2.129 以降が必要です。設定すると、SDK は `allowed_tools` に Skill ツールを自動的に追加します。`tools` も渡す場合は、そのリストに `"Skill"` を含めます。[スキル](/docs/ja/agent-sdk/skills) を参照 |938| `skills` | `list[str] \| Literal["all"] \| None` | `None` | セッションで利用可能なスキル。すべての検出されたスキルを有効にするには `"all"` を渡すか、スキル名のリストを渡します。正確な名前のみを渡します。SDK は Claude Code プロセスを開始する前に、形式が正しくないワイルドカード形式の名前を `ValueError` で拒否します。このチェックには Python Agent SDK 0.2.129 以降が必要です。設定すると、SDK は `allowed_tools` に Skill ツールを自動的に追加します。`tools` も渡す場合は、そのリストに `"Skill"` を含めます。[スキル](/docs/ja/agent-sdk/skills) を参照 |

939| `max_thinking_tokens` | `int \| None` | `None` | *非推奨* - 思考ブロックの最大トークン数。代わりに `thinking` を使用してください |939| `max_thinking_tokens` | `int \| None` | `None` | *非推奨* - 思考ブロックの最大トークン数。代わりに `thinking` を使用してください |

940| `thinking` | [`ThinkingConfig`](#thinkingconfig) ` \| None` | `None` | 拡張思考動作を制御します。`max_thinking_tokens` より優先されます |940| `thinking` | [`ThinkingConfig`](#thinkingconfig) ` \| None` | `None` | 拡張思考動作を制御します。`max_thinking_tokens` より優先されます |


1181| `maxTurns` | いいえ | エージェントが停止する前の最大 agentic ターン数 |1181| `maxTurns` | いいえ | エージェントが停止する前の最大 agentic ターン数 |

1182| `background` | いいえ | 呼び出されたときにこのエージェントをブロッキングされないバックグラウンドタスクとして実行します |1182| `background` | いいえ | 呼び出されたときにこのエージェントをブロッキングされないバックグラウンドタスクとして実行します |

1183| `effort` | いいえ | このエージェントの推論努力レベル。名前付きレベルまたは整数を受け入れます。[`EffortLevel`](#effortlevel) を参照 |1183| `effort` | いいえ | このエージェントの推論努力レベル。名前付きレベルまたは整数を受け入れます。[`EffortLevel`](#effortlevel) を参照 |

1184| `permissionMode` | いいえ | このエージェント内のツール実行のパーミッションモード。[`PermissionMode`](#permissionmode) を参照 |1184| `permissionMode` | いいえ | このエージェント内のツール実行のパーミッションモード。[サブエージェント継承ルール](/docs/ja/agent-sdk/permissions#available-modes) は、それが適用される場合を決定します。[`PermissionMode`](#permissionmode) を参照 |

1185 1185 

1186<Note>1186<Note>

1187 `AgentDefinition` フィールド名は `disallowedTools`、`permissionMode`、`maxTurns` などの camelCase を使用します。これらの名前は TypeScript SDK と共有される wire 形式に直接マップされます。これは `disallowed_tools` と `permission_mode` などの同等のトップレベルフィールドに Python snake\_case を使用する `ClaudeAgentOptions` とは異なります。`AgentDefinition` は dataclass であるため、snake\_case キーワードを渡すと構築時に `TypeError` が発生します。1187 `AgentDefinition` フィールド名は `disallowedTools`、`permissionMode`、`maxTurns` などの camelCase を使用します。これらの名前は TypeScript SDK と共有される wire 形式に直接マップされます。これは `disallowed_tools` と `permission_mode` などの同等のトップレベルフィールドに Python snake\_case を使用する `ClaudeAgentOptions` とは異なります。`AgentDefinition` は dataclass であるため、snake\_case キーワードを渡すと構築時に `TypeError` が発生します。


2885 2885 

2886バックグラウンドソースを実行し、各イベントを Claude に配信して、ポーリングなしで反応できるようにします。`command` はスクリプトを実行し、stdout 行ごとに 1 つのイベントを発行し、`ws` は WebSocket を開き、テキストフレームごとに 1 つのイベントを発行します。`command` または `ws` のいずれか 1 つを正確に指定してください。2886バックグラウンドソースを実行し、各イベントを Claude に配信して、ポーリングなしで反応できるようにします。`command` はスクリプトを実行し、stdout 行ごとに 1 つのイベントを発行し、`ws` は WebSocket を開き、テキストフレームごとに 1 つのイベントを発行します。`command` または `ws` のいずれか 1 つを正確に指定してください。

2887 2887 

2888Monitor がコマンドを実行する場合、Bash と同じパーミッションルールに従います。WebSocket ウォッチは別途承認を求めます。`ws` ソースには Claude Code v2.1.195 以降が必要です。動作とプロバイダーの可用性については、[Monitor ツールリファレンス](/docs/ja/tools-reference#monitor-tool) を参照してください。2888Monitor がコマンドを実行する場合、Bash と同じパーミッション規則に従います。WebSocket ウォッチは別途承認を求めます。`ws` ソースには Claude Code v2.1.195 以降が必要です。動作とプロバイダーの可用性については、[Monitor ツールリファレンス](/docs/ja/tools-reference#monitor-tool) を参照してください。

2889 2889 

2890**入力:**2890**入力:**

2891 2891 


3163**ツール名:** `TodoWrite`3163**ツール名:** `TodoWrite`

3164 3164 

3165<Note>3165<Note>

3166 Python Agent SDK 0.2.139 以降では、以下の制限が適用されます。

3167 

3168 The following tools are available by default only on Claude 3.x models, Opus 4 through 4.7, Sonnet 4 through 4.6, and Haiku 4.5. On every other model, including model IDs Claude Code doesn't recognize, they aren't available unless you opt in:3166 The following tools are available by default only on Claude 3.x models, Opus 4 through 4.7, Sonnet 4 through 4.6, and Haiku 4.5. On every other model, including model IDs Claude Code doesn't recognize, they aren't available unless you opt in:

3169 3167 

3170 * `TodoWrite`3168 * `TodoWrite`


3325 3323 

3326**ツール名:** `TaskOutput`。以前の名前 `BashOutput` はまだエイリアスとして受け入れられています。3324**ツール名:** `TaskOutput`。以前の名前 `BashOutput` はまだエイリアスとして受け入れられています。

3327 3325 

3328<Note>`TaskOutput` は非推奨です。タスクの出力ファイルパスで `Read` を使用することをお勧めします。以下のスキーマは、ツールを遭遇するフック と権限ハンドラーに対して有効なままです。</Note>3326<Note>`TaskOutput` は非推奨です。タスクの出力ファイルパスで `Read` を使用することをお勧めします。以下のスキーマは、ツールを遭遇するフックと権限ハンドラーに対して有効なままです。</Note>

3329 3327 

3330**入力:**3328**入力:**

3331 3329 

Details

102 uuid: UUID;102 uuid: UUID;

103 session_id: string;103 session_id: string;

104 ttft_ms?: number; // メッセージ開始イベントにのみ存在する、最初のトークンまでの時間(ミリ秒)104 ttft_ms?: number; // メッセージ開始イベントにのみ存在する、最初のトークンまでの時間(ミリ秒)

105 user_message_uuid?: string;

105 };106 };

106 ```107 ```

107</CodeGroup>108</CodeGroup>

108 109 

109`parent_tool_use_id` フィールドは Python では常に `None`、TypeScript では `null` です。ストリームイベントはメインセッションのみに対して発行されます。サブエージェントからのトークンレベルのデルタは転送されません。出力をサブエージェントに属性付けするには、`parent_tool_use_id` を含む完全なメッセージを使用してください。[サブエージェント呼び出しの検出](/docs/ja/agent-sdk/subagents#detect-subagent-invocation)を参照してください。110`parent_tool_use_id` フィールドは Python では常に `None`、TypeScript では `null` です。ストリームイベントはメインセッションのみに対して発行されます。サブエージェントからのトークンレベルのデルタは転送されません。出力をサブエージェントに属性付けするには、`parent_tool_use_id` を含む完全なメッセージを使用してください。[サブエージェント呼び出しの検出](/docs/ja/agent-sdk/subagents#detect-subagent-invocation)を参照してください。

110 111 

111`event` フィールドには、[Claude API](https://platform.claude.com/docs/ja/build-with-claude/streaming#event-types) からの生のストリーミングイベントが含まれます。一般的なイベントタイプは以下の通りです:112Claude Code は、ターンの最初の非 ping ストリームイベントで `user_message_uuid` を設定し、ターンが応答しているメッセージが変わるときに再度設定します。これは [`user_message_uuid`](/docs/ja/agent-sdk/typescript#user_message_uuid) の条件下で行われます。Python の `StreamEvent` はこのフィールドを公開していません。

113 

114`event` フィールドには、[Claude API](https://platform.claude.com/docs/en/build-with-claude/streaming#event-types) からの生のストリーミングイベントが含まれます。一般的なイベントタイプは以下の通りです:

112 115 

113| イベントタイプ | 説明 |116| イベントタイプ | 説明 |

114| :-------------------- | :---------------------------- |117| :-------------------- | :---------------------------- |


123 メッセージフロー126 メッセージフロー

124</h2>127</h2>

125 128 

126部分メッセージが有効な場合、メッセージは以下の順序で受け取ります。129Claude Code は、空でない各コンテンツブロックが完了するたびに `AssistantMessage` を発行します。そのため、テキストブロックとツール呼び出しを含むレスポンスは 2 つの `AssistantMessage` オブジェクトを生成します。各メッセージは独自のコンテンツブロックのみを含み、両方とも同じメッセージ ID を共有します。これは TypeScript では `message.message.id` として、Python では `message.message_id` として読み取ります。部分メッセージが有効な場合、各 `AssistantMessage` はそのブロックの `content_block_stop` イベントの前に到着し、メッセージは以下の順序で受け取ります。

127 130 

128```text theme={null}131```text theme={null}

129StreamEvent (message_start)132StreamEvent (message_start)

130StreamEvent (content_block_start) - text block133StreamEvent (content_block_start) - text block

131StreamEvent (content_block_delta) - text chunks...134StreamEvent (content_block_delta) - text chunks...

135AssistantMessage - complete text block

132StreamEvent (content_block_stop)136StreamEvent (content_block_stop)

133StreamEvent (content_block_start) - tool_use block137StreamEvent (content_block_start) - tool_use block

134StreamEvent (content_block_delta) - tool input chunks...138StreamEvent (content_block_delta) - tool input chunks...

139AssistantMessage - complete tool_use block

135StreamEvent (content_block_stop)140StreamEvent (content_block_stop)

136StreamEvent (message_delta)141StreamEvent (message_delta)

137StreamEvent (message_stop)142StreamEvent (message_stop)

138AssistantMessage - complete message with all content

139... tool executes ...143... tool executes ...

140... more streaming events for next turn ...144... more streaming events for next turn ...

141ResultMessage - final result145ResultMessage - final result

142```146```

143 147 

144部分メッセージが有効でない場合、`StreamEvent` を除くすべてのメッセージタイプを受け取ります。一般的なタイプには `SystemMessage`(セッション初期化)、`AssistantMessage`(完全な応答)、`ResultMessage`(最終結果)、および会話履歴がコンパクト化されたときを示すコンパクト境界メッセージ(TypeScript では `SDKCompactBoundaryMessage`、Python では subtype `"compact_boundary"` の `SystemMessage`)が含まれます。148部分メッセージが有効でない場合、`StreamEvent` を除くすべてのメッセージタイプを受け取ります。一般的なタイプには `SystemMessage`(セッション初期化)、`AssistantMessage`(完全なコンテンツブロック)、`ResultMessage`(最終結果)、および会話履歴がコンパクト化されたときを示すコンパクト境界メッセージ(TypeScript では `SDKCompactBoundaryMessage`、Python では subtype `"compact_boundary"` の `SystemMessage`)が含まれます。

145 149 

146<h2 id="stream-tool-calls">150<h2 id="stream-tool-calls">

147 ツール呼び出しをストリーミングする151 ツール呼び出しをストリーミングする

Details

6 6 

7> Agent SDK セッションで todo を追跡し、構造化されたツール呼び出しから Claude の進捗をアプリケーションでレンダリングします7> Agent SDK セッションで todo を追跡し、構造化されたツール呼び出しから Claude の進捗をアプリケーションでレンダリングします

8 8 

9[モデル利用可能性](#model-availability)に記載されているモデルでは、Claude は書かれた todo リストなしで複数ステップの作業を追跡し、Claude Code はデフォルトでセッションから[タスク追跡ツール](/docs/ja/tools-reference#task-tool-availability)を除外します。これらのモデルで Claude が複数ステップのタスクを処理するために、このページの内容は必要ありません。9Claude Code は、[モデル利用可能性](#model-availability)に記載されているモデルでのみデフォルトで[タスク追跡ツール](/docs/ja/tools-reference#task-tool-availability)を提供します。新しいモデルは書かれた todo リストなしで複数ステップの作業を追跡するため、これらのモデルでは Claude が複数ステップのタスクを処理するためにこのページの内容は必要ありません。

10 10 

11タスク追跡ツールを持つセッションでは、Claude は書かれた todo リストを保持し、作業を進めるにつれて各アイテムのステータスを更新します。メッセージストリーム内で各変更が構造化されたツール呼び出しとして表示されます。アプリケーションがこれらのツール呼び出しを読み取る場合にのみセッションをオプトインしてください。タスク活動をログするか、独自の進捗表示をレンダリングするかどうかに関わらず。11タスク追跡ツールを持つセッションでは、Claude は書かれた todo リストを保持し、作業を進めるにつれて各アイテムのステータスを更新します。メッセージストリーム内で各変更が構造化されたツール呼び出しとして表示されます。アプリケーションがこれらのツール呼び出しを読み取る場合にのみセッションをオプトインしてください。タスク活動をログするか、独自の進捗表示をレンダリングするかどうかに関わらず。

12 12 


15</h2>15</h2>

16 16 

17<Note>17<Note>

18 TypeScript Agent SDK 0.3.233 以降、または Python Agent SDK 0.2.139 以降では、以下の制限が適用されます。

19 

20 The following tools are available by default only on Claude 3.x models, Opus 4 through 4.7, Sonnet 4 through 4.6, and Haiku 4.5. On every other model, including model IDs Claude Code doesn't recognize, they aren't available unless you opt in:18 The following tools are available by default only on Claude 3.x models, Opus 4 through 4.7, Sonnet 4 through 4.6, and Haiku 4.5. On every other model, including model IDs Claude Code doesn't recognize, they aren't available unless you opt in:

21 19 

22 * `TodoWrite`20 * `TodoWrite`


30 This default set applies in Claude Code v2.1.268 and later, which the TypeScript Agent SDK bundles from v0.3.268.28 This default set applies in Claude Code v2.1.268 and later, which the TypeScript Agent SDK bundles from v0.3.268.

31</Note>29</Note>

32 30 

33記載されているモデルでは、セッションをオプトインしない限り、メッセージストリーム内でこれらのツールの `tool_use` ブロックは表示されません。Agent SDK は、バンドルされている Claude Code バイナリを通じてこれらのデフォルトを適用します。`pathToClaudeCodeExecutable`(TypeScript)または `cli_path`(Python)を独自の Claude Code インストールに指定する場合、そのインストールが提供するツールが、独自のデフォルトの下で取得されます。実行中のセッションで正確なセットを確認するには、[利用可能なツールを確認](/docs/ja/tools-reference#check-which-tools-are-available)してください。セッションをオプトインするには、以下のいずれかを実行してください:31デフォルトではツールを持たないモデルでは、セッションをオプトインしない限り、メッセージストリーム内でこれらのツールの `tool_use` ブロックは表示されません。Agent SDK は、バンドルされている Claude Code バイナリを通じてこれらのデフォルトを適用します。`pathToClaudeCodeExecutable`(TypeScript)または `cli_path`(Python)を独自の Claude Code インストールに指定する場合、そのインストールが提供するツールが、独自のデフォルトの下で取得されます。実行中のセッションで正確なセットを確認するには、[利用可能なツールを確認](/docs/ja/tools-reference#check-which-tools-are-available)してください。セッションをオプトインするには、以下のいずれかを実行してください:

34 32 

35* [`allowedTools`](/docs/ja/agent-sdk/permissions#allow-and-deny-rules)(TypeScript)または `allowed_tools`(Python)オプションでツールの 1 つに名前を付ける33* [`allowedTools`](/docs/ja/agent-sdk/permissions#allow-and-deny-rules)(TypeScript)または `allowed_tools`(Python)オプションでツールの 1 つに名前を付ける

36* `tools` オプションにツールをリストします。これはセッションの組み込みツールを、それが名前を付けるものに制限します。使用する他の組み込みツールと一緒に必要なツールを含めます34* `tools` オプションにツールをリストします。これはセッションの組み込みツールを、それが名前を付けるものに制限します。使用する他の組み込みツールと一緒に必要なツールを含めます

agent-sdk/troubleshooting.md +161 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# Agent SDK のトラブルシューティング

6 

7> Agent SDK エラーを表示されたメッセージで修正します。TypeScript と Python SDK の各エラーについて、原因と対処方法を説明します。

8 

9このページのエントリは、表示されるエラーに対応しています。各エントリは原因と対処方法を示しています。

10 

11<h2 id="cli-startup">

12 CLI スタートアップ

13</h2>

14 

15<h3 id="clinotfounderror-claude-code-not-found">

16 CLINotFoundError: Claude Code not found

17</h3>

18 

19Python SDK は Claude Code CLI をサブプロセスとして起動します。`claude` 実行ファイルが見つからない場合、接続は `CLINotFoundError` で失敗します。

20 

21```

22Claude Code not found at: /your/configured/path

23```

24 

25メッセージには、`ClaudeAgentOptions(cli_path=...)` を設定して存在しないファイルを指している場合、設定されたパスが含まれます。`cli_path` がない場合、SDK は `PATH` と一般的なインストール場所を検索し、メッセージにはプラットフォーム用のインストール手順が含まれます。

26 

27修正するには:

28 

29* Claude Code がインストールされていない場合はインストールしてください。プラットフォーム用のコマンドについては、[Claude Code のインストール](/docs/ja/setup#install-claude-code)を参照してください。

30* `cli_path` を設定した場合は、ファイルが存在し、`claude` 実行ファイルであることを確認してください。

31* `PATH` 解決に依存している場合は、アプリケーションが実行される環境で `claude --version` が機能することを確認してください。IDE やサービスマネージャーなど、シェルの外から起動するプロセスは、多くの場合異なる `PATH` で実行されます。

32 

33TypeScript SDK は、バンドルされたプラットフォームパッケージと `pathToClaudeCodeExecutable` に設定されたパスで CLI を探します。表示されるメッセージに一致させてください:

34 

35* `Native CLI binary for <platform>-<arch> not found`:バンドルされたプラットフォームパッケージが見つかりません。最も一般的には、インストールがオプション依存関係をスキップしたためです。オプション依存関係をスキップせずに `@anthropic-ai/claude-agent-sdk` を再インストールするか、`pathToClaudeCodeExecutable` を[ネイティブインストール](/docs/ja/setup#install-claude-code)に指定してください。`bun build --compile` で構築された単一ファイル実行ファイルでは、同じメッセージが異なる原因と修正方法を持ちます。[単一実行ファイルへのコンパイル](/docs/ja/agent-sdk/typescript#compile-to-a-single-executable)を参照してください。

36* `Claude Code native binary not found at <path>` または `Claude Code executable not found at <path>. Is options.pathToClaudeCodeExecutable set?`:解決されたパスのファイルが見つからないか、プロセスがアクセスできません。ファイルがそのパスに存在し、プロセスがアクセスできることを確認してください。

37 

38<h3 id="cliconnectionerror-refusing-to-execute-batch-script">

39 CLIConnectionError: Refusing to execute batch script

40</h3>

41 

42Windows では、Python SDK が使用する CLI パスが `.bat` または `.cmd` バッチスクリプト(npm インストールが作成する `claude.cmd` シムを含む)の場合、接続は `CLIConnectionError` で失敗します。

43 

44```

45Refusing to execute batch script 'C:\\Users\\you\\AppData\\Roaming\\npm\\claude.cmd': Windows runs .bat/.cmd files via cmd.exe, which can execute commands injected through CLI arguments, and no reliable escaping for cmd.exe exists. Use a native claude executable instead: install Claude Code natively (irm https://claude.ai/install.ps1 | iex), point ClaudeAgentOptions(cli_path=...) at a claude.exe, or install the claude-agent-sdk wheel for a platform that bundles claude.exe (e.g. Windows x64).

46```

47 

48この拒否は意図的なセキュリティ強化であり、インストールが壊れているわけではありません。Windows はバッチスクリプトを `cmd.exe /c` 呼び出しに書き換えて実行し、`cmd.exe` は実行時にコマンドライン全体を再解析するため、引数値は注入されたコマンドを実行できます。

49 

50ほとんどの Windows インストールはこのエラーに到達しません。Windows x64 の `claude-agent-sdk` ホイールは `claude.exe` をバンドルしており、SDK はバンドルされた CLI を優先し、次に発見できるネイティブ `claude.exe` を優先し、その後バッチシムにフォールバックします。拒否は 2 つのケースで表示されます:

51 

52* `ClaudeAgentOptions(cli_path=...)` を `.bat` または `.cmd` ファイル(npm の `claude.cmd` シムなど)に設定した場合。

53* インストールにバンドルされたネイティブ `claude.exe` がない場合。たとえば、ARM64 Windows でのソースインストールで、`PATH` 上の唯一の `claude` が npm シムである場合。

54 

55修正するには、バッチスクリプトの代わりにネイティブ実行ファイルを SDK に提供してください:

56 

57* `ClaudeAgentOptions(cli_path=...)` を設定した場合は、`claude.exe` を指すか、オプションを削除してください。`cli_path` が設定されている間、SDK は検出をスキップするため、ネイティブインストールだけでは効果がありません。

58* PowerShell で Claude Code をネイティブにインストールしてください:`irm https://claude.ai/install.ps1 | iex`

59* x64 Windows では、`claude.exe` をバンドルする `claude-agent-sdk` ホイールをインストールしてください。

60 

61`claude-agent-sdk` 0.2.124 より前では、Python SDK はこのチェックなしで `cmd.exe` を通じてバッチスクリプトを生成していました。

62 

63<h3 id="cliconnectionerror-failed-to-start-claude-code">

64 CLIConnectionError: Failed to start Claude Code

65</h3>

66 

67SDK は解決されたパスでファイルを見つけましたが、起動できませんでした。Python はこれらの失敗を `CLIConnectionError` として発生させます。TypeScript はメッセージ反復を SDK クラスを持たないエラーで拒否します。以下の表は各メッセージを何を示しているかにマップします。表示されるメッセージに一致させてください:

68 

69| メッセージ | SDK | 意味 |

70| ----------------------------------------------------------------- | ---------- | ---------------------------------- |

71| `Failed to start Claude Code: <detail>` | Python | メッセージの残りはオペレーティングシステム自体のエラーです |

72| `Claude Code executable at <path> exists but failed to launch` | TypeScript | 設定されたパスのスクリプトは実行できません |

73| `Claude Code native binary at <path> exists but failed to launch` | TypeScript | バイナリは実行できません。libc の提案がメッセージに追加されます |

74| `Failed to spawn Claude Code process: <detail>` | TypeScript | その他の起動失敗 |

75 

76両方の SDK では、通常の原因は、テキストファイル、ディレクトリ、または実行権限のないファイルなど、実行できないものを指す解決されたパスです。ネイティブバイナリメッセージの libc 提案を 1 つの可能な原因として読んでください。

77 

78どちらの SDK でも修正するには:

79 

80* 設定されたパスが `claude` 実行ファイル自体を指し、ファイルに実行権限があることを確認してください。

81* カスタムパスが不要な場合は、Python で `cli_path` を削除するか、TypeScript で `pathToClaudeCodeExecutable` を削除して、SDK が独自に CLI を見つけるようにしてください。バンドルされたコピーを優先します。

82* 失敗しているバイナリがコンテナイメージ内の SDK のバンドルされたコピーの場合、イメージビルド中に SDK を再インストールして、バンドルされたバイナリがコンテナのプラットフォームと一致するようにするか、実行するアーキテクチャ用にイメージを再構築してください。通常の原因は、コンテナのアーキテクチャまたは libc と一致しないバイナリ、またはイメージビルド中に実行権限を失ったバイナリです。

83 

84<h3 id="cliconnectionerror-not-connected">

85 CLIConnectionError: Not connected

86</h3>

87 

88Python で `ClaudeSDKClient` メソッドを呼び出す前にクライアントが接続していない場合、または接続を切断した後に呼び出すと、`CLIConnectionError` がこのメッセージで発生します:

89 

90```

91Not connected. Call connect() first.

92```

93 

94メッセージが言うことをしてください。他のクライアントメソッドの前に `await client.connect()` を呼び出すか、`async with ClaudeSDKClient() as client:` でクライアントを開いてください。これは入口で接続します。

95 

96<h2 id="cli-process-exit">

97 CLI プロセス終了

98</h2>

99 

100このセクションのエントリは、アプリケーションがそれを使用している間に Claude Code プロセスが終了したことを意味します。表示されるエラーは SDK 言語と、CLI が終了する前にエラー結果を報告したかどうかによって異なります。

101 

102<h3 id="processerror-command-failed-with-exit-code">

103 ProcessError: Command failed with exit code

104</h3>

105 

106Python SDK は Claude Code プロセスが 0 以外のコードで終了すると `ProcessError` を発生させます:

107 

108```

109Command failed with exit code 1 (exit code: 1)

110Error output: Check stderr output for details

111```

112 

113メッセージは終了コードを 2 回述べ、`Error output` 行は固定テキストであり、プロセスの実際のエラー出力ではありません。同じ固定テキストが例外の `stderr` 属性を埋めます。例外の `exit_code` 属性がコードを持ちます。CLI が実際に stderr に書き込んだものをキャプチャするには、`ClaudeAgentOptions` で `stderr` コールバックを渡し、受け取ったものをログしてください。

114 

115単純な `ProcessError` は、CLI がエラー結果を報告せずに終了したことを意味します。CLI がエラー結果を報告した場合、SDK は代わりに [`ResultError`](/docs/ja/agent-sdk/python#resulterror) を発生させます。これは[Claude Code returned an error result](#claude-code-returned-an-error-result)で説明されています。`ResultError` は `ProcessError` をサブクラス化するため、`except ProcessError` は両方をキャッチします。異なる方法で処理するには、`except ResultError` 句を最初に配置してください。

116 

117`claude-agent-sdk` 0.2.140 より前では、Python SDK はエラー結果の終了を `ResultError` ではなく単純な `Exception` として発生させていました。

118 

119<h3 id="claude-code-process-exited-with-code-n">

120 Claude Code process exited with code N

121</h3>

122 

123IDE ラッパーもこのメッセージを出力し、[エラーリファレンス](/docs/ja/errors#claude-code-process-exited-with-code-n)は VS Code およびその他のランチャーをカバーしています。このエントリは TypeScript SDK コードが受け取るものをカバーしています。SDK は 0 以外の CLI 終了を単純な `Error` として表示し、`query()` のメッセージ上の `for await` ループを拒否します。キャッチする SDK エラークラスはないため、ループを `try`/`catch` でラップし、メッセージで一致させてください:

124 

125```

126Claude Code process exited with code 1. stderr: <tail of the CLI's stderr>

127```

128 

129CLI が stderr に書き込んだ場合、メッセージはそれのテールで終わります。完全なストリームをキャプチャするには、クエリオプションで `stderr` コールバックを渡してください。シグナルで強制終了されたプロセスは同じ形式で `Claude Code process terminated by signal <name>` を報告します。

130 

131<h3 id="claude-code-returned-an-error-result">

132 Claude Code returned an error result

133</h3>

134 

135両方の SDK は、CLI が終了する前にエラー結果を報告した場合、プロセス終了エラーをこのメッセージに置き換えます:

136 

137```

138Claude Code returned an error result: <the CLI's own error report>

139```

140 

141コロンの後のテキストは、何が間違ったかについての CLI の報告であるため、終了自体ではなくそこから始めてください。Python はこれを [`ResultError`](/docs/ja/agent-sdk/python#resulterror) として発生させます。その `data` 属性は完全なエラー結果を持ちます。TypeScript は同じメッセージ形式を持つ単純な `Error` でメッセージループを拒否します。

142 

143<h2 id="structured-outputs">

144 構造化出力

145</h2>

146 

147<h3 id="structured_output-is-none-but-the-result-says-success">

148 structured\_output は None ですが、結果は成功と言っています

149</h3>

150 

151結果メッセージは `subtype: "success"` で終わることができますが、Python では `structured_output` は `None` であり、TypeScript では `undefined` です。実行は完了しますが、検証された出力は存在しません。これに到達する 1 つの方法は、出力が満たすことができないスキーマです。たとえば、矛盾する長さの制約があります。実行は検証エラーなしで終了し、唯一の信号は欠落している `structured_output` です。

152 

153アプリケーションコードでこの結果を失敗として扱ってください。`structured_output` を使用する前に、`subtype` が `success` であり、`structured_output` が存在することの両方を確認してください。[エラーハンドリング](/docs/ja/agent-sdk/structured-outputs#error-handling)セクションは両方の SDK のこのパターンを示しています。

154 

155正しいと思われるスキーマで繰り返し発生する場合は、スキーマが満たされることを確認し、出力が検証されるまで単純化し、制約を 1 つずつ再導入してください。

156 

157<h2 id="report-a-new-issue">

158 新しい問題を報告する

159</h2>

160 

161エラーがここでカバーされていない場合は、オープンな問題を確認するか、SDK リポジトリに新しい問題を提出してください:[claude-agent-sdk-typescript](https://github.com/anthropics/claude-agent-sdk-typescript/issues) または [claude-agent-sdk-python](https://github.com/anthropics/claude-agent-sdk-python/issues)。完全なエラーテキストと SDK バージョンを含めてください。

Details

12 12 

13確認質問については、Claude が質問とオプションを生成します。あなたの役割は、それらをユーザーに提示して、ユーザーの選択を返すことです。このフローに独自の質問を追加することはできません。ユーザーに何か尋ねる必要がある場合は、アプリケーションロジックで別途実行してください。13確認質問については、Claude が質問とオプションを生成します。あなたの役割は、それらをユーザーに提示して、ユーザーの選択を返すことです。このフローに独自の質問を追加することはできません。ユーザーに何か尋ねる必要がある場合は、アプリケーションロジックで別途実行してください。

14 14 

15コールバックは無期限に保留中のままにすることができます。実行はコールバックが返されるまで一時停止したままであり、SDK はクエリ自体がキャンセルされた場合にのみ待機をキャンセルします。ユーザーがプロセスが合理的に実行し続けることができるより長く応答するのに時間がかかる可能性がある場合、[`defer` フック決定](/docs/ja/hooks#defer-a-tool-call-for-later)を返します。これにより、プロセスを終了して、後で永続化されたセッションから再開できます。15コールバックは無期限に保留中のままにすることができます。実行はコールバックが返されるまで一時停止したままであり、SDK はクエリ自体がキャンセルされた場合にのみ待機をキャンセルします。ユーザーがプロセスが合理的に実行し続けることができるより長く応答するのに時間がかかる可能性がある場合、[`PreToolUse` フック](/docs/ja/agent-sdk/hooks)を登録して、[`defer` 決定](/docs/ja/hooks#defer-a-tool-call-for-later)を返します。これにより、プロセスを終了して、後で永続化されたセッションから再開できます。

16 16 

17このガイドでは、各タイプのリクエストを検出し、適切に応答する方法を示します。17このガイドでは、各タイプのリクエストを検出し、適切に応答する方法を示します。

18 18 

19<h2 id="detect-when-claude-needs-input">19<h2 id="detect-when-claude-needs-input">

20 Claude が入力を必要とする場合を検出する20 Claude が入力を必要とするタイミングを検出する

21</h2>21</h2>

22 22 

23クエリオプションで `canUseTool` コールバックを渡します。Claude がユーザー入力を必要とするたびにコールバックが発火し、ツール名と入力を引数として受け取ります。23クエリオプションで `canUseTool` コールバックを渡してください。このコールバックは Claude がユーザー入力を必要とするたびに発火し、ツール名と入力を引数として受け取ります。

24 24 

25<CodeGroup>25<CodeGroup>

26 ```python Python theme={null}26 ```python Python theme={null}

27 from claude_agent_sdk import ClaudeAgentOptions

28 

29 

27 async def handle_tool_request(tool_name, input_data, context):30 async def handle_tool_request(tool_name, input_data, context):

28 # ユーザーにプロンプトを表示して、許可または拒否を返す31 # ユーザーにプロンプトを表示して、許可または拒否を返す

29 ...32 ...


44 47 

45コールバックは 2 つのケースで発火します。48コールバックは 2 つのケースで発火します。

46 49 

471. **ツールが承認を必要とする場合**:Claude が [許可ルール](/docs/ja/agent-sdk/permissions)またはモードによって自動承認されていないツールを使用したい場合。`tool_name` でツール(例:`"Bash"`、`"Write"`)を確認します。501. **ツールが承認を必要とする場合**: Claude が [権限ルール](/docs/ja/agent-sdk/permissions) または権限モードで自動承認されていないツールを使用したいとき。`tool_name` でツール(例:`"Bash"`、`"Write"`)を確認してください。

482. **Claude が質問をする場合**:Claude が `AskUserQuestion` ツールを呼び出します。`tool_name == "AskUserQuestion"` をチェックして、異なる方法で処理します。`tools` 配列を指定する場合は、これが機能するように `AskUserQuestion` を含めます。詳細は [確認質問を処理する](#handle-clarifying-questions)を参照してください。512. **Claude が質問をする場合**: Claude が `AskUserQuestion` ツールを呼び出します。`tool_name == "AskUserQuestion"` をチェックして、異なる方法で処理してください。`tools` 配列を指定する場合は、これが機能するように `AskUserQuestion` を含めてください。詳細は [質問の明確化を処理する](#handle-clarifying-questions) を参照してください。

49 52 

50<Warning>53<Warning>

51 **コールバックは自動承認されたツールに対しては発火しません。** [許可評価フロー](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)の前の段階での承認、許可ルール、または `acceptEdits` や `bypassPermissions` のようなモードは、`canUseTool` が参照される前に呼び出しを解決します。`allowed_tools` にツールをそのまま列挙する場合、そのツールに対する `canUseTool` チェックは、ask ルールまたは `plan` モードが呼び出しをプロンプトに戻さない限り実行されません。すべてのツール呼び出しに適用する必要があるロジックについては、[`PreToolUse` フック](/docs/ja/agent-sdk/hooks)を使用してください。このフックはフローの残りの部分の前に実行され、リクエストを許可、拒否、または変更できます。54 **コールバックは自動承認されたツールに対しては発火しません。** [権限評価フロー](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated) の前の段階での承認、許可ルール、または `acceptEdits` や `bypassPermissions` のようなモードは、`canUseTool` が参照される前に呼び出しを解決します。`allowed_tools` にツールをそのまま列挙した場合、そのツールの `canUseTool` チェックは、[評価フロー](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated) が呼び出しを質問ルールや `plan` モードなどのプロンプトに戻すルートを通るときのみ実行されます。すべてのツール呼び出しに適用する必要があるロジックの場合は、[`PreToolUse` フック](/docs/ja/agent-sdk/hooks) を使用してください。このフックはフローの残りの部分の前に実行され、リクエストを許可、拒否、または変更できます。

52 55 

53 `AskUserQuestion`、[`requiresUserInteraction`](/docs/ja/mcp#require-approval-for-a-specific-tool)とマークされた MCP ツール、および [組織が `ask` に設定したコネクタツール](/docs/ja/mcp#organization-controls-on-connector-tools)は、許可ルールが一致する場合でもコールバックに到達します。`dontAsk` モードではこれらの呼び出しは代わりに拒否され、コールバックは呼び出されません。56 許可ルールは [モードが自動承認しないアクション](/docs/ja/permission-modes#actions-no-mode-auto-approves) を事前承認しません。[権限がどのように評価されるか](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated) を参照して、どのアクションがコールバックに到達し、`dontAsk` モードと `auto` モードで何が起こるかを確認してください。

54</Warning>57</Warning>

55 58 

56また、[`PermissionRequest` フック](/docs/ja/agent-sdk/hooks#available-hooks)を使用して、Claude が承認を待っているときに外部通知(Slack、メール、プッシュ)を送信することもできます。59また、[`PermissionRequest` フック](/docs/ja/agent-sdk/hooks#available-hooks) を使用して、Claude が承認を待っているときに外部通知(Slack、メール、プッシュ)を送信することもできます。

57 60 

58<h2 id="handle-tool-approval-requests">61<h2 id="handle-tool-approval-requests">

59 ツール承認リクエストを処理する62 ツール承認リクエストを処理する

60</h2>63</h2>

61 64 

62クエリオプションで `canUseTool` コールバックを渡すと、Claude が自動承認されていないツールを使用したい場合に発火します。コールバックは 3 つの引数を受け取ります。65クエリオプションで `canUseTool` コールバックを渡すと、Claude が以前の許可フローで承認されていないツールを使用したい場合に発火します。`dontAsk` モードなどの一部の設定では、Claude Code はこれを呼び出しません。[許可がどのように評価されるか](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)の最後のステップにそれらが記載されており、代わりに呼び出しに何が起こるかが説明されています。

66 

67コールバックは 3 つの引数を受け取ります。

63 68 

64| 引数 | 説明 |69| 引数 | 説明 |

65| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |70| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |


220 225 

221拒否する場合、理由を説明するメッセージを提供します。Claude はこのメッセージを見て、アプローチを調整する可能性があります。226拒否する場合、理由を説明するメッセージを提供します。Claude はこのメッセージを見て、アプローチを調整する可能性があります。

222 227 

223<CodeGroup>

224 ```python Python theme={null}

225 from claude_agent_sdk.types import PermissionResultAllow, PermissionResultDeny

226 

227 # ツールの実行を許可する

228 return PermissionResultAllow(updated_input=input_data)

229 

230 # ツールをブロックする

231 return PermissionResultDeny(message="User rejected this action")

232 ```

233 

234 ```typescript TypeScript theme={null}

235 // ツールの実行を許可する

236 return { behavior: "allow", updatedInput: input };

237 

238 // ツールをブロックする

239 return { behavior: "deny", message: "User rejected this action" };

240 ```

241</CodeGroup>

242 

243許可または拒否を超えて、ツールの入力を変更したり、Claude がアプローチを調整するのに役立つコンテキストを提供したりできます。228許可または拒否を超えて、ツールの入力を変更したり、Claude がアプローチを調整するのに役立つコンテキストを提供したりできます。

244 229 

245* **承認**:ツールを Claude がリクエストしたとおりに実行させる230* **承認**:ツールを Claude がリクエストしたとおりに実行させる


249* **代替案を提案**:ブロックするが、ユーザーが望むものに向かって Claude をガイドする234* **代替案を提案**:ブロックするが、ユーザーが望むものに向かって Claude をガイドする

250* **完全にリダイレクト**:[ストリーミング入力](/docs/ja/agent-sdk/streaming-vs-single-mode)を使用して Claude に完全に新しい指示を送信する235* **完全にリダイレクト**:[ストリーミング入力](/docs/ja/agent-sdk/streaming-vs-single-mode)を使用して Claude に完全に新しい指示を送信する

251 236 

237次のスニペットの `ask_user` および `askUser` ヘルパーは、アプリケーション独自のプロンプト UI の代わりになります。

238 

252<Tabs>239<Tabs>

253 <Tab title="承認">240 <Tab title="承認">

254 ユーザーはアクションをそのまま承認します。コールバックから `input` をそのまま渡し、ツールは Claude がリクエストしたとおりに実行されます。241 ユーザーはアクションをそのまま承認します。コールバックから `input` をそのまま渡し、ツールは Claude がリクエストしたとおりに実行されます。


653 640 

654複数選択質問の場合、ラベルの配列を渡すか、`", "` で結合します。[自由テキスト入力をサポート](#support-free-text-input)に示されているような質問ごとの自由テキスト(例:「その他」オプション)の場合は、ユーザーのテキストを `answers[question]` に入力します。`response` は、ユーザーが質問カードを閉じて、特定の質問への回答ではない一般的な返信を入力できる UI の場合にのみ設定します。`response` が設定されている場合、Claude は質問ごとの回答リストではなく「ユーザーが応答しました:…」を受け取ります。641複数選択質問の場合、ラベルの配列を渡すか、`", "` で結合します。[自由テキスト入力をサポート](#support-free-text-input)に示されているような質問ごとの自由テキスト(例:「その他」オプション)の場合は、ユーザーのテキストを `answers[question]` に入力します。`response` は、ユーザーが質問カードを閉じて、特定の質問への回答ではない一般的な返信を入力できる UI の場合にのみ設定します。`response` が設定されている場合、Claude は質問ごとの回答リストではなく「ユーザーが応答しました:…」を受け取ります。

655 642 

656```json theme={null}643```jsonc theme={null}

657{644{

658 "questions": [645 "questions": [

659 // ...646 // ...

agent-teams.md +22 −19

Details

120 `tmux` には特定のオペレーティングシステムでの既知の制限があり、従来は macOS で最も効果的に動作します。iTerm2 で `tmux -CC` を使用することが、`tmux` への推奨エントリーポイントです。120 `tmux` には特定のオペレーティングシステムでの既知の制限があり、従来は macOS で最も効果的に動作します。iTerm2 で `tmux -CC` を使用することが、`tmux` への推奨エントリーポイントです。

121</Note>121</Note>

122 122 

123デフォルトは `"in-process"` です。v2.1.179 より前は、デフォルトは `"auto"` でした。そのため、以前に分割ペインを開いたアップグレードされたセッションは、モードを明示的に設定しない限り、1 つのターミナルに留まります。`"auto"` を設定して、既に tmux セッション内で実行している場合または使用しているターミナルが iTerm2 の場合は分割ペインを有効にし、それ以外の場合は in-process にフォールバックします。`"tmux"` 設定は分割ペインモードを有効にし、ターミナルに基づいて tmux または iTerm2 を使用するかどうかを自動検出します。123デフォルトは `"in-process"` です。v2.1.179 より前は、デフォルトは `"auto"` でした。そのため、以前に分割ペインを開いたアップグレードされたセッションは、モードを明示的に設定しない限り、1 つのターミナルに留まります。`"auto"` を設定して、既に tmux セッション内で実行している場合または使用しているターミナルが iTerm2 で `it2` CLI がインストールされている場合は分割ペインを有効にし、それ以外の場合は in-process にフォールバックします。`"tmux"` 設定は分割ペインモードを有効にし、ターミナルに基づいて tmux または iTerm2 を使用するかどうかを自動検出します。

124 124 

125v2.1.186 以降、`"iterm2"` を設定して iTerm2 ネイティブ分割ペインを明示的に使用してください。このモードは [`it2` CLI](https://github.com/mkusaka/it2) が必要で、`it2` が見つからない場合はインストールコマンド付きでエラーを表示します。`it2` をインストールするか tmux に切り替えるオプションを提供するセットアッププロンプトは、ターミナルが iTerm2 で tmux がフォールバックとして利用可能な場合、`"auto"` または `"tmux"` の下に表示されます。125v2.1.186 以降、`"iterm2"` を設定して iTerm2 ネイティブ分割ペインを明示的に使用してください。このモードは [`it2` CLI](https://github.com/mkusaka/it2) が必要で、`it2` が見つからない場合はインストールコマンド付きでエラーを表示します。`it2` をインストールするか tmux に切り替えるオプションを提供するセットアッププロンプトは、ターミナルが iTerm2 で tmux がフォールバックとして利用可能な場合、`"auto"` または `"tmux"` の下に表示されます。

126 126 


1633. [`CLAUDE_CODE_SUBAGENT_MODEL`](/docs/ja/model-config#environment-variables)。`inherit` 以外に設定されている場合。1633. [`CLAUDE_CODE_SUBAGENT_MODEL`](/docs/ja/model-config#environment-variables)。`inherit` 以外に設定されている場合。

1644. リーダーの現在のモデル。1644. リーダーの現在のモデル。

165 165 

166[`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/ja/sub-agents#run-every-subagent-on-one-model) はチームメンバーとサブエージェントの両方に適用されます。166[`CLAUDE_CODE_SUBAGENT_MODEL_FORCE=1`](/docs/ja/sub-agents#run-every-subagent-on-one-model) を設定した場合、最初の 2 つのソースは適用されません。Claude Code は `CLAUDE_CODE_SUBAGENT_MODEL` が `inherit` 以外に設定されている場合はそこからすべてのチームメンバーのモデルを選択し、それ以外の場合はリーダーの現在のモデルから選択します。Claude Code v2.1.257 以降が必要です。

167 167 

168v2.1.251 より前は、`CLAUDE_CODE_SUBAGENT_MODEL` がこの順序で最初に来ていました。168v2.1.251 より前は、`CLAUDE_CODE_SUBAGENT_MODEL` がこの順序で最初に来ていました。

169 169 


252 Claude がエージェントチームを開始する方法252 Claude がエージェントチームを開始する方法

253</h3>253</h3>

254 254 

255チームを開始するには、Claude にチームメンバーをリクエストしてください。Claude は [Agent ツール](/docs/ja/tools-reference) を呼び出して [`name`](/docs/ja/sub-agents#subagent-names) を指定し、エージェントチームが有効になっている場合、Claude Code があなたに確認を求めないときにチームメンバーを起動します。Claude は通常の subagent にも独自に名前を付けるため、後でメッセージを送信でき、エージェントチームが有効になっている場合、名前付き subagent はチームメンバーとして起動するため、チームメンバーをリクエストしなくてもチームが形成される可能性があります。255チームを開始するには、Claude にチームメンバーをリクエストしてください。Claude は [Agent ツール](/docs/ja/tools-reference) を呼び出して [`name`](/docs/ja/sub-agents#subagent-names) を指定し、エージェントチームが有効になっている場合にチームメンバーを起動します。ただし、呼び出しが [fork](/docs/ja/sub-agents#fork-the-current-conversation) であるか、呼び出し自体で `isolation` を渡す場合は除きます。Claude Code があなたに確認を求めることはありません。

256 256 

257subagent の代わりに使用したい場合は、[エージェントチームをオフにしてください](#claude-spawns-teammates-instead-of-subagents)。257Claude は通常の subagent にも独自に名前を付けるため、後でメッセージを送信できます。これらの呼び出しは同じルールに従うため、チームメンバーをリクエストしなくてもチームが形成される可能性があります。subagent の代わりに使用したい場合は、[エージェントチームをオフにしてください](#claude-spawns-teammates-instead-of-subagents)。

258 258 

259<h3 id="architecture">259<h3 id="architecture">

260 アーキテクチャ260 アーキテクチャ


294 チームメンバーに subagent 定義を使用する294 チームメンバーに subagent 定義を使用する

295</h3>295</h3>

296 296 

297チームメンバーを生成するときに、任意の [subagent スコープ](/docs/ja/sub-agents#choose-the-subagent-scope)(プロジェクト、ユーザー、プラグイン、または CLI 定義)から [subagent](/docs/ja/sub-agents) タイプを参照できます。これにより、セキュリティレビュアーやテストランナーなどのロールを 1 回定義し、委任された subagent とエージェントチームチームメンバーの両方として再利用できます。297どちらの表示モードでもチームメンバーを生成するときに、プロジェクト、ユーザー、または管理対象の [subagent スコープ](/docs/ja/sub-agents#choose-the-subagent-scope) から [subagent](/docs/ja/sub-agents) タイプを参照できます。これにより、セキュリティレビュアーやテストランナーなどのロールを 1 回定義し、委任された subagent とエージェントチームチームメンバーの両方として再利用できます。

298 298 

299subagent 定義を使用するには、Claude にチームメンバーを生成するよう指示するときに名前で言及してください。299subagent 定義を使用するには、Claude にチームメンバーを生成するよう指示するときに名前で言及してください。

300 300 


314 権限314 権限

315</h3>315</h3>

316 316 

317チームメンバーはリーダーの権限設定で開始します。リーダーが `--dangerously-skip-permissions` で実行する場合、すべてのチームメンバーも同様に実行します。生成後、個別のチームメンバーモードを変更できますが、生成時にチームメンバーごとのモードを設定することはできません。317チームメンバーはリーダーの権限モードで開始します。ただし、[`dontAsk` モード](/docs/ja/permission-modes#allow-only-pre-approved-tools-with-dontask-mode) は継承しません。リーダーが `--dangerously-skip-permissions` で実行する場合、すべてのチームメンバーも同様に実行します。生成後、個別のチームメンバーの権限モードを変更できますが、生成時にチームメンバーごとの権限モードを設定することはできません。

318 318 

319チームメンバーの権限プロンプトはリーダーセッションに表示されるため、そこで自分で承認してください。[プラン承認](#have-teammates-plan-before-implementing) は設計された例外です。リーダーセッションはあなたへの別のプロンプトなしにチームメンバープラン承認を付与します。319チームメンバーの権限プロンプトはリーダーセッションに表示されるため、そこで自分で承認してください。[プラン承認](#have-teammates-plan-before-implementing) は設計された例外です。リーダーセッションはあなたへの別のプロンプトなしにチームメンバープラン承認を付与します。

320 320 


322 エージェント間のメッセージ322 エージェント間のメッセージ

323</h4>323</h4>

324 324 

3251 つのエージェントが `SendMessage` 経由で別のエージェントにメッセージを送信する場合、受信エージェントには、あなたからではなく別の Claude セッションから来たことが通知されます。チームメンバーは権限プロンプトを承認したり、あなたに代わって同意を提供したりすることはできません。また、アクションが拒否されたチームメンバーは、チェックをバイパスするために別のチームメンバーにそれをリレーすることはできません。[auto mode](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) では、別のエージェントからリレーされた承認クレームは、あなたからの確認ではなく、信頼できない入力として分類器によって扱われます。3251 つのエージェントが `SendMessage` 経由で別のエージェントにメッセージを送信する場合、受信エージェントには、あなたからではなく別の Claude セッションから来たことが通知されます。チームメンバーは権限プロンプトを承認したり、あなたに代わって同意を提供したりすることはできません。また、アクションが拒否されたチームメンバーは、チェックをバイパスするために別のチームメンバーにそれをリレーすることはできません。[チーム外の他の Claude Code セッション](/docs/ja/cross-session-messaging#how-a-session-treats-an-incoming-message) から到着するメッセージにも同じルールが適用されます。

326 326 

327[チーム外の他の Claude Code セッション](/docs/ja/cross-session-messaging#how-a-session-treats-an-incoming-message) から到着するメッセージにも同じルールが適用されます。327[auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) では、分類器はエージェント間のメッセージに 2 つのチェックを適用します。

328 

329* 別のエージェントからリレーされた承認クレームは、あなたからの確認ではなく、信頼できない入力として扱われます。

330* シャットダウンリクエストやプラン承認応答などの構造化プロトコルメッセージであるかどうかに関わらず、プレーンメッセージであるかどうかに関わらず、各メッセージを Claude Code が配信する前にレビューします。ブロックされたメッセージは受信者に到達することはありません。

328 331 

329<h3 id="context-and-communication">332<h3 id="context-and-communication">

330 コンテキストと通信333 コンテキストと通信


537 制限事項540 制限事項

538</h2>541</h2>

539 542 

540エージェントチームは実験的です。注意すべき現在の制限事項は以下の通りです。543Agent teams は実験的な機能です。現在の制限事項は以下の通りです。

541 544 

542* **In-process チームメンバーでのセッション再開なし**:`/resume` と `/rewind` は in-process チームメンバーを復元しません。セッションを再開した後、リーダーは存在しなくなったチームメンバーにメッセージを送信しようとする可能性があります。これが発生した場合は、リーダーに新しいチームメンバーを生成するよう指示してください。545* **インプロセス teammates でのセッション再開非対応**: `/resume` と `/rewind` はインプロセス teammates を復元しません。セッションを再開した後、lead が存在しなくなった teammates にメッセージを送ろうとする可能性があります。この場合、lead に新しい teammates をスポーンするよう指示してください。

543* **タスクステータスが遅延する可能性**:チームメンバーはタスクを完了としてマークできず、依存タスクをブロックすることがあります。タスクが立ち往生しているように見える場合は、作業が実際に完了しているかどうかを確認し、タスクステータスを手動で更新するか、リーダーにチームメンバーをナッジするよう指示してください。546* **タスク状態が遅延することがある**: teammates は時々タスク完了のマークに失敗し、これが依存タスクをブロックします。タスクが止まっているように見える場合、実際に作業が完了しているかどうかを確認し、タスク状態を手動で更新するか、lead に teammate に促すよう指示してください。

544* **シャットダウンが遅い可能性**:チームメンバーは現在のリクエストまたはツール呼び出しを完了してからシャットダウンし、時間がかかる可能性があります。547* **シャットダウンが遅い可能性がある**: teammates は現在のリクエストまたはツール呼び出しを完了してからシャットダウンするため、時間がかかる可能性があります。

545* **セッションあたり 1 つのチーム**:セッションは正確に 1 つのチームを持ち、そのセッションにスコープされています。追加の名前付きチームを作成したり、セッション間でチームを共有したりすることはできません。548* **セッションごとに 1 つのチーム**: セッションは正確に 1 つのチームを持ち、そのセッションにスコープされています。追加の名前付きチームを作成したり、セッション間でチームを共有したりすることはできません。

546* **ネストされたチームなし**:チームメンバーは独自のチームメンバーを生成できません。リーダーのみがチームを管理できます。549* **ネストされたチーム非対応**: teammates は独自の teammates をスポーンできません。lead のみがチームを管理できます。

547* **In-process チームメンバーからのバックグラウンドサブエージェントなし**:in-process チームメンバー自身のサブエージェントはフォアグラウンドで実行されます。チームメンバーの定義が `background: true` を設定するサブエージェントを生成する場合、Claude Code はエラーを返します。チームメンバーの `run_in_background: true` リクエストも失敗し、[Claude Code がフォアグラウンドまたはバックグラウンドを選択する方法](/docs/ja/sub-agents#run-subagents-in-foreground-or-background)で説明されているように、エラーが発生するか、フォアグラウンドで静かに実行されます。メイン会話から起動されたサブエージェントは、[バックグラウンドデフォルト](/docs/ja/sub-agents#run-subagents-in-foreground-or-background)に従います。550* **インプロセス teammates からのバックグラウンド subagents 非対応**: インプロセス teammate 自身の subagents はフォアグラウンドで実行されます。これは teammate のバックグラウンド作業が lead のプロセスより長く存続できないためです。Claude Code は、teammate が `background: true` を設定する定義を持つ subagent をスポーンする場合、エラーを返します。teammate の `run_in_background: true` リクエストも失敗し、[Claude Code がフォアグラウンドまたはバックグラウンドを選択する方法](/docs/ja/sub-agents#run-subagents-in-foreground-or-background)で説明されているようにエラーが発生するか、フォアグラウンドで静かに実行されます。メイン会話から起動された Subagents は[バックグラウンドデフォルト](/docs/ja/sub-agents#run-subagents-in-foreground-or-background)に従います。

548* **リーダーは固定**:メインセッションはその生涯のリーダーです。チームメンバーをリーダーに昇格させたり、リーダーシップを譲渡したりすることはできません。551* **Lead は固定**: メインセッションはその存続期間中、lead です。teammate を lead に昇格させたり、リーダーシップを譲渡したりすることはできません。

549* **権限は生成時に設定**:すべてのチームメンバーはリーダーの権限モードで開始します。生成後に個別のチームメンバーモードを変更できますが、生成時にチームメンバーごとのモードを設定することはできません。552* **権限はスポーン時に設定**: teammates は[権限](#permissions)の下で説明されている権限モードで開始します。スポーン後に個別の teammate の権限モードを変更できますが、スポーン時に teammate ごとの権限モードを設定することはできません。

550* **分割ペインには tmux または iTerm2 が必要**:デフォルトの in-process モードは任意のターミナルで動作します。分割ペインモードは VS Code の統合ターミナル、Windows Terminal、または Ghostty ではサポートされていません。553* **分割ペインは tmux または iTerm2 が必要**: デフォルトのインプロセスモードはすべてのターミナルで機能します。分割ペインモードは VS Code の統合ターミナル、Windows Terminal、または Ghostty ではサポートされていません。

551 554 

552<h2 id="next-steps">555<h2 id="next-steps">

553 次のステップ556 次のステップ

agents.md +1 −1

Details

19 19 

20この作業をサポートする 3 つの追加ツールがありますが、エージェント自体を実行する方法ではありません。20この作業をサポートする 3 つの追加ツールがありますが、エージェント自体を実行する方法ではありません。

21 21 

22* [ワークツリー](/docs/ja/worktrees) は各セッションに個別の git チェックアウトを提供するため、並列セッションが同じファイルを編集することはありません。自分で実行するセッションに使用します。エージェントビューは、ディスパッチされた各セッションを自動的に独自のワークツリーに移動し、スポーンするサブエージェントも各々独自のワークツリーを取得できます。22* [ワークツリー](/docs/ja/worktrees) は各セッションに個別の git チェックアウトを提供するため、並列セッションが同じファイルを編集することはありません。自分で実行するセッションに使用します。エージェントビューからディスパッチされたセッションは、[ファイルを編集する前に独自のワークツリーに移動](/docs/ja/agent-view#how-file-edits-are-isolated) し、スポーンするサブエージェントも各々独自のワークツリーを取得できます。

23* [クロスセッションメッセージング](/docs/ja/cross-session-messaging) により、Claude はこのマシン上、別のマシン上、または [Claude Code on the web](/docs/ja/claude-code-on-the-web) 上の他の Claude Code セッションをリストして、メッセージを送信できます。自分で実行するセッションは、検出結果とステータスを相互に渡すことができます。23* [クロスセッションメッセージング](/docs/ja/cross-session-messaging) により、Claude はこのマシン上、別のマシン上、または [Claude Code on the web](/docs/ja/claude-code-on-the-web) 上の他の Claude Code セッションをリストして、メッセージを送信できます。自分で実行するセッションは、検出結果とステータスを相互に渡すことができます。

24* [`/batch`](/docs/ja/commands) は、1 つの大きな変更を 5 ~ 30 個のワークツリー分離サブエージェントに分割し、各エージェントがプルリクエストを開く [skill](/docs/ja/skills) です。これはサブエージェントとワークツリーのパッケージ化された使用法であり、別の調整スタイルではありません。24* [`/batch`](/docs/ja/commands) は、1 つの大きな変更を 5 ~ 30 個のワークツリー分離サブエージェントに分割し、各エージェントがプルリクエストを開く [skill](/docs/ja/skills) です。これはサブエージェントとワークツリーのパッケージ化された使用法であり、別の調整スタイルではありません。

25 25 

Details

190 190 

191チェーンの各解決は 60 秒後にタイムアウトします。チェーン内のステップが停止した場合(例えば、受け取ることができない入力を待つ `credential_process` ヘルパー)、リクエストは [`AWS default-chain credential resolve timed out`](/docs/ja/errors#aws-default-chain-credential-resolve-timed-out) で失敗します。チェーンが正当に長い時間が必要なインタラクティブサインイン(`aws-vault` のようなラッパーを使用した MFA 付きブラウザベースの SSO など)を実行する場合、[`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/ja/env-vars) でミリ秒単位で制限を引き上げてください。v2.1.207 より前では、停止した認証情報解決はリクエストを無期限に待機させていました。191チェーンの各解決は 60 秒後にタイムアウトします。チェーン内のステップが停止した場合(例えば、受け取ることができない入力を待つ `credential_process` ヘルパー)、リクエストは [`AWS default-chain credential resolve timed out`](/docs/ja/errors#aws-default-chain-credential-resolve-timed-out) で失敗します。チェーンが正当に長い時間が必要なインタラクティブサインイン(`aws-vault` のようなラッパーを使用した MFA 付きブラウザベースの SSO など)を実行する場合、[`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/ja/env-vars) でミリ秒単位で制限を引き上げてください。v2.1.207 より前では、停止した認証情報解決はリクエストを無期限に待機させていました。

192 192 

193Amazon Bedrock API キーで認証する場合を除き、[セットアップウィザード](#sign-in-with-bedrock)は認証情報を検証する際に行う各 AWS 呼び出しに同じ制限を適用し、各モデルチェック前の認証情報ルックアップにも適用します。認証情報検証中に、制限を超えるチェックは [`Timed out after 60s waiting for AWS`](/docs/ja/errors#bedrock-setup-verification-timed-out-waiting-for-aws) で失敗します。

194 

193<h4 id="advanced-credential-configuration">195<h4 id="advanced-credential-configuration">

194 高度な認証情報設定196 高度な認証情報設定

195</h4>197</h4>


263 265 

264Claude Code で Amazon Bedrock を有効にする場合、以下の点に注意してください。266Claude Code で Amazon Bedrock を有効にする場合、以下の点に注意してください。

265 267 

266* v2.1.172 以降、AWS プロファイルのリージョンをオーバーライドする場合、またはプロファイルにリージョンがない場合にのみ `AWS_REGION` を設定する必要があります。Claude Code はこの順序でリージョンを解決します。268* `AWS_REGION` を設定する必要があるのは、AWS プロファイルのリージョンをオーバーライドする場合、またはプロファイルにリージョンがない場合のみです。Claude Code はこの順序でリージョンを解決します。

267 269 

268 * `AWS_REGION`270 * `AWS_REGION`

269 * `AWS_DEFAULT_REGION`271 * `AWS_DEFAULT_REGION`


274 276 

275 アクティブなプロファイルは、設定されている場合は `AWS_PROFILE`、そうでない場合は `default` です。`AWS_SHARED_CREDENTIALS_FILE` または `AWS_CONFIG_FILE` を設定して、デフォルト以外のファイルパスを指定してください。277 アクティブなプロファイルは、設定されている場合は `AWS_PROFILE`、そうでない場合は `default` です。`AWS_SHARED_CREDENTIALS_FILE` または `AWS_CONFIG_FILE` を設定して、デフォルト以外のファイルパスを指定してください。

276 278 

277 `/status` を実行して、解決されたリージョンを確認してください。リージョンが AWS 設定ファイルまたはデフォルトフォールバックから来た場合、Claude Code は `/status` 出力でソースも記載します。v2.1.171 以前では、Claude Code は AWS 設定ファイルを読み込まないため、`AWS_REGION` を明示的に設定してください。279 `/status` を実行して、解決されたリージョンを確認してください。リージョンが AWS 設定ファイルまたはデフォルトフォールバックから来た場合、Claude Code は `/status` 出力でソースも記載します。

278* Amazon Bedrock を使用する場合、認証は AWS 認証情報を通じて処理されるため、`/logout` コマンドは利用できません。280* Amazon Bedrock を使用する場合、認証は AWS 認証情報を通じて処理されるため、`/logout` コマンドは利用できません。

279* WebSearch ツールは Amazon Bedrock では利用できません。[WebSearch ツールの動作](/docs/ja/tools-reference#websearch-tool-behavior)を参照してください。281* WebSearch ツールは Amazon Bedrock では利用できません。[WebSearch ツールの動作](/docs/ja/tools-reference#websearch-tool-behavior)を参照してください。

280* `AWS_PROFILE` のような他のプロセスにリークしたくない環境変数に設定ファイルを使用できます。詳細については [Settings](/docs/ja/settings) を参照してください。282* `AWS_PROFILE` のような他のプロセスにリークしたくない環境変数に設定ファイルを使用できます。詳細については [Settings](/docs/ja/settings) を参照してください。


530export AWS_REGION=us-east-1532export AWS_REGION=us-east-1

531```533```

532 534 

533Claude Code は AWS リージョンからエンドポイント URL を構築します。v2.1.172 以降では、リージョンは [上記の Amazon Bedrock](#3-configure-claude-code) と同じ優先順位で解決されます。以前のバージョンは `AWS_REGION` のみを使用します。カスタムエンドポイントまたはゲートウェイの URL をオーバーライドするには、`ANTHROPIC_BEDROCK_MANTLE_BASE_URL` を設定します。535Claude Code は AWS リージョンからエンドポイント URL を構築します。リージョンは [上記の Amazon Bedrock](#3-configure-claude-code) と同じ優先順位で解決されます。カスタムエンドポイントまたはゲートウェイの URL をオーバーライドするには、`ANTHROPIC_BEDROCK_MANTLE_BASE_URL` を設定します。

534 536 

535Claude Code 内で `/status` を実行して確認します。Mantle がアクティブな場合、プロバイダー行は `Amazon Bedrock (Mantle)` を表示します。537Claude Code 内で `/status` を実行して確認します。Mantle がアクティブな場合、プロバイダー行は `Amazon Bedrock (Mantle)` を表示します。

536 538 


606 608 

607ネットワーク環境が自動ブラウザベースの SSO フローに干渉する場合は、`awsAuthRefresh` に依存する代わりに、Claude Code を開始する前に手動で `aws sso login` を使用してください。609ネットワーク環境が自動ブラウザベースの SSO フローに干渉する場合は、`awsAuthRefresh` に依存する代わりに、Claude Code を開始する前に手動で `aws sso login` を使用してください。

608 610 

611<h3 id="certificate-errors-behind-a-tls-inspecting-proxy">

612 TLS 検査プロキシの背後での証明書エラー

613</h3>

614 

615Claude Code は、[CA certificate store](/docs/ja/network-config#ca-certificate-store) 設定を AWS へのリクエストに適用します。これには以下が含まれます:

616 

617* モデル検出

618* トークンカウント

619* AWS 認証情報を解決する STS および SSO ロール認証情報呼び出し

620* [setup wizard](#sign-in-with-bedrock) の認証情報検証とモデルチェック

621 

622これらのリクエストについては、OS トラストストアまたは `NODE_EXTRA_CA_CERTS` バンドル内の企業ルート証明書には、Amazon Bedrock 固有のセットアップは必要ありません。

623 

624v2.1.260 より前では、Claude Code は設定されたプロキシを通過するリクエストにのみ CA 設定を適用し、直接接続では実行時のデフォルト証明書ストアのみを信頼していました。

625 

626v2.1.261 より前では、**Use credentials already in my environment** オプションを使用した setup wizard のモデルチェックの背後での認証情報ルックアップは、実行時のデフォルト証明書ストアのみを信頼していました。ルート証明書が OS ストアにのみある TLS 検査プロキシの背後では、影響を受けるリクエストは `unable to get local issuer certificate` で失敗するか、ウィザードはモデルを `unreachable` として表示していましたが、推論リクエストは成功していました。v2.1.261 以降に更新してください。

627 

609<h3 id="region-issues">628<h3 id="region-issues">

610 リージョンの問題629 リージョンの問題

611</h3>630</h3>

analytics.md +5 −11

Details

26* **リーダーボード**:Claude Code 使用量でランク付けされたトップコントリビューター26* **リーダーボード**:Claude Code 使用量でランク付けされたトップコントリビューター

27* **データエクスポート**:カスタムレポート用に貢献データを CSV としてダウンロード27* **データエクスポート**:カスタムレポート用に貢献データを CSV としてダウンロード

28 28 

29ユーザーごとのトークン数とコスト推定については、[OpenTelemetry エクスポート](/ja/monitoring-usage)を構成するか、組織の分析設定から[支出レポート](https://support.claude.com/en/articles/12883420-view-usage-analytics-for-team-and-enterprise-plans)をエクスポートしてください。これはユーザーごと、モデルごとのトークン使用量と推定使用クレジット支出を一覧表示します。29ユーザーごとのトークン数とコスト推定については、[OpenTelemetry エクスポート](/docs/ja/monitoring-usage)を構成するか、組織の分析設定から[支出レポート](https://support.claude.com/en/articles/12883420-view-usage-analytics-for-team-and-enterprise-plans)をエクスポートしてください。これはユーザーごと、モデルごとのトークン使用量と推定使用クレジット支出を一覧表示します。

30 30 

31<h3 id="enable-contribution-metrics">31<h3 id="enable-contribution-metrics">

32 貢献メトリクスを有効にする32 貢献メトリクスを有効にする


41分析設定を構成するには、オーナーロールが必要です。GitHub 管理者が GitHub アプリをインストールする必要があります。41分析設定を構成するには、オーナーロールが必要です。GitHub 管理者が GitHub アプリをインストールする必要があります。

42 42 

43<Warning>43<Warning>

44 [Zero Data Retention](/ja/zero-data-retention) が有効になっている組織では、貢献メトリクスは利用できません。分析ダッシュボードは使用メトリクスのみを表示します。44 [Zero Data Retention](/docs/ja/zero-data-retention) が有効になっている組織では、貢献メトリクスは利用できません。分析ダッシュボードは使用メトリクスのみを表示します。

45</Warning>45</Warning>

46 46 

47<Steps>47<Steps>


139 139 

140貢献メトリクスが有効になっている場合、Claude Code はマージされたプルリクエストを分析して、Claude Code 支援で記述されたコードを判定します。これは、Claude Code セッションアクティビティを各 PR のコードと照合することで行われます。140貢献メトリクスが有効になっている場合、Claude Code はマージされたプルリクエストを分析して、Claude Code 支援で記述されたコードを判定します。これは、Claude Code セッションアクティビティを各 PR のコードと照合することで行われます。

141 141 

142<h4 id="tagging-criteria">

143 タグ付け基準

144</h4>

145 

146PR は、Claude Code セッション中に記述された少なくとも 1 行のコードを含む場合、「with Claude Code」としてタグ付けされます。システムは保守的なマッチングを使用します。Claude Code の関与に高い信頼度がある場合のみ、支援されたコードとしてカウントされます。

147 

148<h4 id="attribution-process">142<h4 id="attribution-process">

149 属性プロセス143 属性プロセス

150</h4>144</h4>


267 関連リソース261 関連リソース

268</h2>262</h2>

269 263 

270* [OpenTelemetry での監視](/ja/monitoring-usage):リアルタイムメトリクスとイベントを可観測性スタックにエクスポート264* [OpenTelemetry での監視](/docs/ja/monitoring-usage):リアルタイムメトリクスとイベントを可観測性スタックにエクスポート

271* [コストを効果的に管理する](/ja/costs):支出制限を設定し、トークン使用を最適化265* [コストを効果的に管理する](/docs/ja/costs):支出制限を設定し、トークン使用を最適化

272* [権限](/ja/permissions):ロールと権限を構成266* [権限](/docs/ja/permissions):ロールと権限を構成

Details

235 235 

236署名済みの [Claude apps gateway](/docs/ja/claude-apps-gateway) セッションはこのリストの外に位置します。これは Amazon Bedrock または Google Cloud の Agent Platform のようなプロバイダー選択であり、それらより優先されます。ゲートウェイセッションが存在する場合、CLI は `CLAUDE_CODE_USE_BEDROCK`、`CLAUDE_CODE_USE_VERTEX`、または `CLAUDE_CODE_USE_FOUNDRY` が設定されていても、ゲートウェイトークンで認証され、ベアラートークン、API キー、`apiKeyHelper`、およびプロファイルなどの上記の認証情報ソースは使用されません。236署名済みの [Claude apps gateway](/docs/ja/claude-apps-gateway) セッションはこのリストの外に位置します。これは Amazon Bedrock または Google Cloud の Agent Platform のようなプロバイダー選択であり、それらより優先されます。ゲートウェイセッションが存在する場合、CLI は `CLAUDE_CODE_USE_BEDROCK`、`CLAUDE_CODE_USE_VERTEX`、または `CLAUDE_CODE_USE_FOUNDRY` が設定されていても、ゲートウェイトークンで認証され、ベアラートークン、API キー、`apiKeyHelper`、およびプロファイルなどの上記の認証情報ソースは使用されません。

237 237 

238アクティブな Claude サブスクリプションがあり、環境に `ANTHROPIC_API_KEY` も設定されている場合、API キーは承認されると優先されます。キーが無効または期限切れの組織に属している場合、これは認証エラーを引き起こす可能性があります。`unset ANTHROPIC_API_KEY` を実行してサブスクリプションにフォールバックし、`/status` をチェックしてどの方法がアクティブであるかを確認します。`Login method` 行はサブスクリプションアカウントを表示し、API キーが使用中の場合は `API key` 行が表示されます。238マシンの [管理設定](/docs/ja/managed-settings)が [`forceLoginMethod`](/docs/ja/settings-reference#forceloginmethod) を `"gateway"` に設定するか、[`forceLoginGatewayUrl`](/docs/ja/settings-reference#forcelogingatewayurl) を設定し、`CLAUDE_CODE_USE_BEDROCK` または `CLAUDE_CODE_USE_VERTEX` などの変数を通じてクラウドプロバイダーを選択しない場合、セッションはゲートウェイサインインのみを使用します。Claude Code は他の認証情報ソースをスキップし、`/login` でサインインするよう求めます。残りの各認証情報で表示される内容については、[Administrator policy requires a Cloud gateway sign-in](/docs/ja/errors#administrator-policy-requires-a-cloud-gateway-sign-in) を参照してください。v2.1.261 より前、またはゲートウェイサインインのみを設定するマシンの v2.1.265 より前では、Claude Code はこれらのマシンで残りの保存されたログインを使用していました。

239 

240アクティブな Claude サブスクリプションがあり、環境に `ANTHROPIC_API_KEY` も設定されている場合、API キーは承認されると優先されます。キーが無効または期限切れの組織に属している場合、これは認証エラーを引き起こす可能性があります。

241 

242`unset ANTHROPIC_API_KEY` を実行してサブスクリプションにフォールバックし、`/status` をチェックしてどの方法がアクティブであるかを確認します。ログインと API キーの両方が設定されている場合、`/status` は使用中でない認証情報をマークします。

239 243 

240[Claude Code on the Web](/docs/ja/claude-code-on-the-web) は常にサブスクリプション認証情報を使用します。サンドボックス環境で `ANTHROPIC_API_KEY` または `ANTHROPIC_AUTH_TOKEN` を設定しても、サブスクリプション認証情報はオーバーライドされません。244[Claude Code on the Web](/docs/ja/claude-code-on-the-web) は常にサブスクリプション認証情報を使用します。サンドボックス環境で `ANTHROPIC_API_KEY` または `ANTHROPIC_AUTH_TOKEN` を設定しても、サブスクリプション認証情報はオーバーライドされません。

241 245 

Details

36 36 

37<Info>v2.1.211 より前では、分類器は作業ブランチ、Claude が作成したブランチ、およびデフォルトブランチへの定期的なプッシュのみを許可していました。</Info>37<Info>v2.1.211 より前では、分類器は作業ブランチ、Claude が作成したブランチ、およびデフォルトブランチへの定期的なプッシュのみを許可していました。</Info>

38 38 

39すべてのプッシュまたはプルリクエストの前に人間によるチェックポイントが必要な場合は、権限ルールを追加してください。[以下のレシピ](#add-a-human-checkpoint)では、他のすべてのアクションに対してオートモードを有効に保ちます。39Claude のプッシュおよびプルリクエストコマンドの前に人間によるチェックポイントが必要な場合は、権限ルールを追加してください。[以下のレシピ](#add-a-human-checkpoint)では、他のすべてのアクションに対してオートモードを有効に保ちます。

40 40 

41<h3 id="add-a-human-checkpoint">41<h3 id="add-a-human-checkpoint">

42 人間によるチェックポイントを追加する42 人間によるチェックポイントを追加する


55}55}

56```56```

57 57 

58これらのルールは `git push` または `gh pr create` で始まるコマンドに一致します。Claude が別の方法で記述したプッシュ(例:`git -C <dir> push` または `git -c <key>=<value> push`)は、[ルールに一致しない](/docs/ja/permissions#bash-rule-limits)ため、チェックポイントされません。完全なコマンドテキストを検査するチェックポイントの場合は、[PreToolUse フック](/docs/ja/hooks#pretooluse)を追加してください。

59 

58境界がどの程度厳密である必要があるかに応じて、メカニズムを選択してください。60境界がどの程度厳密である必要があるかに応じて、メカニズムを選択してください。

59 61 

60| 境界 | メカニズム | オートモードでの動作 |62| 境界 | メカニズム | オートモードでの動作 |

61| :------------- | :-------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------- |63| :------------- | :-------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------- |

62| アクション前にプロンプト表示 | `permissions.ask` | 上記のレシピのようなコンテンツスコープのルールに対して常にプロンプトを表示します。分類器は一致するアクションを自動承認できません。 |64| アクション前にプロンプト表示 | `permissions.ask` | 上記のレシピのようなコンテンツスコープのルールに一致するコマンドに対して常にプロンプトを表示します。分類器は一致するアクションを自動承認できません。 |

63| アクションを実行しない | `permissions.deny` | 分類器が参照される前にブロックします。分類器もユーザーの意図も、これをオーバーライドできません。 |65| アクションを実行しない | `permissions.deny` | 分類器が参照される前にブロックします。分類器もユーザーの意図も、これをオーバーライドできません。 |

64| このセッション限定の境界 | 「レビューするまでプッシュしない」のように会話で述べる | 分類器は一致するアクションをブロックしますが、[コンテキストコンパクション](/docs/ja/costs#reduce-token-usage)がそのステートメントを含むメッセージを削除すると、境界が失われる可能性があります。永続的な保証のために ask ルールまたは deny ルールを使用してください。 |66| このセッション限定の境界 | 「レビューするまでプッシュしない」のように会話で述べる | 分類器は一致するアクションをブロックしますが、[コンテキストコンパクション](/docs/ja/costs#reduce-token-usage)がそのステートメントを含むメッセージを削除すると、境界が失われる可能性があります。永続的な保証のために ask ルールまたは deny ルールを使用してください。 |

65 67 


395 397 

396分類器がブロックした内容を確認するには、会話でツール呼び出しを見つけます。呼び出しが短縮されているか、`Ran 3 shell commands` のような概要行に折りたたまれている場合は、`Ctrl+O` を押して[トランスクリプトビューア](/docs/ja/interactive-mode#transcript-viewer)を開き、展開します。398分類器がブロックした内容を確認するには、会話でツール呼び出しを見つけます。呼び出しが短縮されているか、`Ran 3 shell commands` のような概要行に折りたたまれている場合は、`Ctrl+O` を押して[トランスクリプトビューア](/docs/ja/interactive-mode#transcript-viewer)を開き、展開します。

397 399 

398画面上の拒否を報告する他の 2 つの場所では、コマンドまたは URL が省略されています。入力ボックスの近くの通知(`bash denied by auto mode · Blocked by classifier · /permissions` など)はツールと理由を示し、**Recently denied** タブはシェルコマンドを Claude が記述した説明で一覧表示します。これらの拒否の正確な入力をプログラムで取得するには、[`PermissionDenied` フック](/docs/ja/hooks#permissiondenied)を追加します。これは `tool_input` として受け取ります。400画面上の拒否を報告する他の 2 つの場所では、コマンドまたは URL が省略されています。入力ボックスの近くの通知(`bash denied by auto mode · [Data Exfiltration] · /permissions` など)はツールと理由を示し、**Recently denied** タブはシェルコマンドを Claude が記述した説明で一覧表示します。これらの拒否の正確な入力をプログラムで取得するには、[`PermissionDenied` フック](/docs/ja/hooks#permissiondenied)を追加します。これは `tool_input` として受け取ります。

399 401 

400呼び出しの下のテキストは、修正すべきことがあるかどうかを示します。分類器自体の問題を報告するテキスト(`is temporarily unavailable` のようなモデルや分類器エラーなど)は、Claude Code が分類器からの最終判定なしに呼び出しをブロックしたことを意味します。詳細は[オートモードがアクションの安全性を判定できない](/docs/ja/errors#auto-mode-cannot-determine-the-safety-of-an-action)を参照してください。それ以外の場合、`Denied by auto mode classifier` と `Blocked by classifier` などの理由が記載された行は、分類器が呼び出しを安全でないと判定したことを意味するため、呼び出しが何に到達しようとしていたか、または何をしようとしていたかから修正を選択します。402呼び出しの下のテキストは、修正すべきことがあるかどうかを示します。分類器自体の問題を報告するテキスト(`is temporarily unavailable` のようなモデルや分類器エラーなど)は、Claude Code が分類器からの最終判定なしに呼び出しをブロックしたことを意味します。詳細は[オートモードがアクションの安全性を判定できない](/docs/ja/errors#auto-mode-cannot-determine-the-safety-of-an-action)を参照してください。それ以外の場合、`Denied by auto mode classifier` と `[Production Deploy]` または `Blocked by classifier` などの理由が記載された行は、分類器が呼び出しを安全でないと判定したことを意味するため、呼び出しが何に到達しようとしていたか、または何をしようとしていたかから修正を選択します。

401 403 

402* タスク全体を通じて Claude が必要とする宛先(パッケージレジストリ、内部ドメイン、リポジトリホストなど):`autoMode.environment` に追加します。404* タスク全体を通じて Claude が必要とする宛先(パッケージレジストリ、内部ドメイン、リポジトリホストなど):`autoMode.environment` に追加します。

403* これからレビューなしで実行したいコマンド:`allow` ルールを追加します。405* これからレビューなしで実行したいコマンド:`allow` ルールを追加します。


405 407 

406環境エントリまたは `allow` ルールは、`/permissions` ダイアログの[**Auto mode** タブ](#edit-rules-from-permissions)から追加できます。408環境エントリまたは `allow` ルールは、`/permissions` ダイアログの[**Auto mode** タブ](#edit-rules-from-permissions)から追加できます。

407 409 

408呼び出しに表示される理由は、Claude Code v2.1.208 以降のほとんどのセッションで固定テキスト `Blocked by classifier` です。分類器は各アクションを内部の重大度スケールでスコアリングするため、説明を記述しません。一部のセッションでは、v2.1.193 以降で短い説明を記述する分類器モデルを実行します。説明が表示される場合は、分類器が欠落していた宛先または意図についてのヒントとして扱います。Claude Code が分類器モデルを選択するため、表示される理由はユーザーが設定できるものではありません。410ほとんどのセッションでは、理由は分類器が一致したルールを角括弧で示します。例えば `[Data Exfiltration]` または `[Production Deploy]` のようにです。一部のセッションでは、短い説明を追加する分類器モデルを実行します。Claude Code が分類器モデルを選択するため、表示される形式はユーザーが設定できるものではありません。

409 411 

410<h3 id="fix-repeated-denials">412<h3 id="fix-repeated-denials">

411 繰り返される拒否を修正する413 繰り返される拒否を修正する

channels.md +2 −2

Details

47 * `Marketplace "claude-plugins-official" not found`:`/plugin marketplace add anthropics/claude-plugins-official` でマーケットプレイスを追加してから、インストールを再試行してください。47 * `Marketplace "claude-plugins-official" not found`:`/plugin marketplace add anthropics/claude-plugins-official` でマーケットプレイスを追加してから、インストールを再試行してください。

48 * プラグインが[マーケットプレイスで見つかりません](/docs/ja/discover-plugins#install-plugins):プラグイン名を確認してください。48 * プラグインが[マーケットプレイスで見つかりません](/docs/ja/discover-plugins#install-plugins):プラグイン名を確認してください。

49 49 

50 インストールがインストールスコープを求めるとき、ユーザースコープオプションを選択して、プラグインがすべてのプロジェクト全体で利用可能になるようにしてください。インストール概要を確認してください。`Run /reload-plugins to activate.` と報告されている場合は、そのコマンドを実行してプラグインの設定コマンドをアクティブにしてください。50 インストールがインストールスコープを求めるとき、ユーザースコープオプションを選択して、プラグインがすべてのプロジェクト全体で利用可能になるようにしてください。インストール概要を確認してください。`Run /reload-plugins to activate.` と報告されている場合は、[プラグイン変更を再起動なしで適用する](/docs/ja/discover-plugins#apply-plugin-changes-without-restarting)を参照して、プラグインの設定コマンドを利用可能にしてください。

51 </Step>51 </Step>

52 52 

53 <Step title="トークンを設定する">53 <Step title="トークンを設定する">


125 * `Marketplace "claude-plugins-official" not found`:`/plugin marketplace add anthropics/claude-plugins-official` でマーケットプレイスを追加してから、インストールを再試行してください。125 * `Marketplace "claude-plugins-official" not found`:`/plugin marketplace add anthropics/claude-plugins-official` でマーケットプレイスを追加してから、インストールを再試行してください。

126 * プラグインが[マーケットプレイスで見つかりません](/docs/ja/discover-plugins#install-plugins):プラグイン名を確認してください。126 * プラグインが[マーケットプレイスで見つかりません](/docs/ja/discover-plugins#install-plugins):プラグイン名を確認してください。

127 127 

128 インストールがインストールスコープを求めるとき、ユーザースコープオプションを選択して、プラグインがすべてのプロジェクト全体で利用可能になるようにしてください。インストール概要を確認してください。`Run /reload-plugins to activate.` と報告されている場合は、そのコマンドを実行してプラグインの設定コマンドをアクティブにしてください。128 インストールがインストールスコープを求めるとき、ユーザースコープオプションを選択して、プラグインがすべてのプロジェクト全体で利用可能になるようにしてください。インストール概要を確認してください。`Run /reload-plugins to activate.` と報告されている場合は、[プラグイン変更を再起動なしで適用する](/docs/ja/discover-plugins#apply-plugin-changes-without-restarting)を参照して、プラグインの設定コマンドを利用可能にしてください。

129 </Step>129 </Step>

130 130 

131 <Step title="トークンを設定する">131 <Step title="トークンを設定する">

Details

170 170 

171 イベントが到着しない場合、診断は `curl` が返したものに依存します:171 イベントが到着しない場合、診断は `curl` が返したものに依存します:

172 172 

173 * **`curl` は成功するが Claude に何も到着しない**:セッションで `/mcp` を実行してサーバーのステータスを確認します。`failed` ステータスは通常、サーバーファイルの依存関係またはインポートエラーを意味します。`~/.claude/debug/<session-id>.txt` のデバッグログで stderr トレースを確認してください。173 * **`curl` は成功するが Claude に何も到着しない**:セッションで `/mcp` を実行してサーバーのステータスを確認します。`failed` ステータスは通常、サーバーファイルの依存関係またはインポートエラーを意味します。stderr トレースを確認するには、`claude --debug --dangerously-load-development-channels server:webhook` で再開し、`~/.claude/debug/<session-id>.txt` のデバッグログを確認してください。

174 * **`curl` が「接続が拒否されました」で失敗**:ポートはまだバインドされていないか、以前の実行からの古いプロセスがそれを保持しています。`lsof -i :<port>` は何がリッスンしているかを示します。セッションを再開する前に古いプロセスを `kill` してください。174 * **`curl` が「接続が拒否されました」で失敗**:ポートはまだバインドされていないか、以前の実行からの古いプロセスがそれを保持しています。`lsof -i :<port>` は何がリッスンしているかを示します。セッションを再開する前に古いプロセスを `kill` してください。

175 </Step>175 </Step>

176</Steps>176</Steps>

checkpointing.md +11 −3

Details

12 チェックポイントの仕組み12 チェックポイントの仕組み

13</h2>13</h2>

14 14 

15Claude で作業する際、チェックポイント機能は各ユーザープロンプト前のコード状態を自動的にキャプチャします。15Claude で作業する際、チェックポイント機能は送信する各プロンプトがターンを開始する前のコード状態を自動的にキャプチャします。

16 16 

17<h3 id="automatic-tracking">17<h3 id="automatic-tracking">

18 自動追跡18 自動追跡


20 20 

21Claude Code は、ファイル編集ツールで行われたすべての変更を追跡します。21Claude Code は、ファイル編集ツールで行われたすべての変更を追跡します。

22 22 

23* ユーザープロンプトごとに新しいチェックポイントが作成されます23* 送信する各プロンプトがターンを開始するたびに新しいチェックポイントが作成されます

24* Claude Code はセッション内の最新 100 個のチェックポイントのファイルスナップショットを保持します。古いチェックポイントを破棄すると、残りのチェックポイントが参照しないスナップショットファイルが削除されます。ただし、各ファイルの最初のスナップショットは除外されます。これは VS Code 拡張機能がセッション diff のベースラインとして使用します。24* Claude Code はセッション内の最新 100 個のチェックポイントのファイルスナップショットを保持します。古いチェックポイントを破棄すると、残りのチェックポイントが参照しないスナップショットファイルが削除されます。ただし、各ファイルの最初のスナップショットは除外されます。これは VS Code 拡張機能がセッション diff のベースラインとして使用します。

25* チェックポイントはセッションと共に保存されるため、再開したセッションでも `/rewind` で戻ることができます25* チェックポイントはセッションと共に保存されるため、再開したセッションでも `/rewind` で戻ることができます

26* Claude Code は[保持期間スイープ](/docs/ja/claude-directory#cleaned-up-automatically)でセッションのファイルスナップショットを削除します。デフォルトではセッションが最後に保存されてから約 30 日後です。スナップショットが削除されたチェックポイントに巻き戻すと、[`No files were restored`](/docs/ja/errors#no-files-were-restored) エラーで失敗する可能性があります。スナップショットをより長く保持するには、[`cleanupPeriodDays`](/docs/ja/settings-reference#cleanupperioddays) を設定してください。26* Claude Code は[保持期間スイープ](/docs/ja/claude-directory#cleaned-up-automatically)でセッションのファイルスナップショットを削除します。デフォルトではセッションが最後に保存されてから約 30 日後です。スナップショットが削除されたチェックポイントに巻き戻すと、[`No files were restored`](/docs/ja/errors#no-files-were-restored) エラーで失敗する可能性があります。スナップショットをより長く保持するには、[`cleanupPeriodDays`](/docs/ja/settings-reference#cleanupperioddays) を設定してください。


35 プロンプト入力にテキストが含まれている場合、ダブル `Esc` はメニューを開く代わりにテキストをクリアします。クリアされたテキストは入力履歴に保存されるため、巻き戻しメニューを終了した後に `Up` キーを押して呼び出すことができます。35 プロンプト入力にテキストが含まれている場合、ダブル `Esc` はメニューを開く代わりにテキストをクリアします。クリアされたテキストは入力履歴に保存されるため、巻き戻しメニューを終了した後に `Up` キーを押して呼び出すことができます。

36</Note>36</Note>

37 37 

38巻き戻しメニューには、セッション中に送信した各プロンプトが表示されます。操作したいポイントを選択してから、アクションを選択します。38巻き戻しメニューには、セッション中に送信した各プロンプトが表示されます。ただし、[ターン中に送信されたメッセージ](#messages-sent-mid-turn-not-checkpointed)は除外されます。操作したいポイントを選択してから、アクションを選択します。

39 39 

40* **コードと会話を復元**: コードと会話の両方をそのポイントに戻します40* **コードと会話を復元**: コードと会話の両方をそのポイントに戻します

41* **会話を復元**: 現在のコードを保持しながら、そのメッセージに巻き戻します41* **会話を復元**: 現在のコードを保持しながら、そのメッセージに巻き戻します


110 110 

111チェックポイント機能は、現在のセッション内で編集されたファイルのみを追跡します。Claude Code の外部で手動で行ったファイルの変更や、他の同時セッションからのエディットは、通常キャプチャされません。ただし、現在のセッションと同じファイルを変更する場合は除きます。111チェックポイント機能は、現在のセッション内で編集されたファイルのみを追跡します。Claude Code の外部で手動で行ったファイルの変更や、他の同時セッションからのエディットは、通常キャプチャされません。ただし、現在のセッションと同じファイルを変更する場合は除きます。

112 112 

113<h3 id="messages-sent-mid-turn-not-checkpointed">

114 ターン中に送信されたメッセージはチェックポイントされません

115</h3>

116 

117[Claude が作業中にキューに入れたメッセージ](/docs/ja/interactive-mode#queue-messages-while-claude-works)が実行中のターン内に Claude に到達すると、新しいターンを開始する代わりにそのターンに参加します。メッセージは会話に表示されますが、Claude Code はそれのチェックポイントを作成せず、巻き戻しメニューにはリストされません。Claude Code が独自のターンとして送信するキューに入れたメッセージは、通常どおりチェックポイントを取得します。

118 

119そのようなメッセージを削除するか、メッセージの後に Claude が行った編集を取り消すには、ターンを開始したプロンプトに巻き戻します。これにより、メッセージが到達する前に Claude が行った作業を含む、ターン全体が巻き戻されます。

120 

113<h3 id="symlinked-and-hard-linked-paths-not-restored">121<h3 id="symlinked-and-hard-linked-paths-not-restored">

114 シンボリックリンクおよびハードリンクパスは復元されません122 シンボリックリンクおよびハードリンクパスは復元されません

115</h3>123</h3>

Details

425これらの保証はすべての `/login` を通じてサインインしたセッションに適用されます。Claude Desktop が起動する埋め込みセッションは[Claude Desktop セッションにポリシーを配信する](#deliver-policy-to-claude-desktop-sessions)で説明されているようにポリシーを取得し、テレメトリの箇条書きはそれらのエクスポートがどこに行くかを示します。425これらの保証はすべての `/login` を通じてサインインしたセッションに適用されます。Claude Desktop が起動する埋め込みセッションは[Claude Desktop セッションにポリシーを配信する](#deliver-policy-to-claude-desktop-sessions)で説明されているようにポリシーを取得し、テレメトリの箇条書きはそれらのエクスポートがどこに行くかを示します。

426 426 

427* **モデルアクセス**:ポリシーが許可しないモデルのリクエストは 400 を返し、`/model` ピッカーはポリシーの `availableModels` 許可リストにフィルタリングされます。ポリシーで [`enforceAvailableModels: true`](/docs/ja/model-config#default-model-behavior) を設定して、Default オプションが Claude Code の組み込みデフォルトではなく `availableModels` 内のモデルに解決されるようにします。なしでは、Default は選択可能なままであり、そのモデルが許可されていない場合、リクエスト時に拒否されます。427* **モデルアクセス**:ポリシーが許可しないモデルのリクエストは 400 を返し、`/model` ピッカーはポリシーの `availableModels` 許可リストにフィルタリングされます。ポリシーで [`enforceAvailableModels: true`](/docs/ja/model-config#default-model-behavior) を設定して、Default オプションが Claude Code の組み込みデフォルトではなく `availableModels` 内のモデルに解決されるようにします。なしでは、Default は選択可能なままであり、そのモデルが許可されていない場合、リクエスト時に拒否されます。

428* **テレメトリ宛先**:`/login` を通じてサインインしたセッションでは、CLI はローカルに設定された `OTEL_EXPORTER_OTLP_ENDPOINT` に関係なく、OTLP/HTTP エクスポートをゲートウェイに送信し、ゲートウェイは [`telemetry.forward_to`](/docs/ja/claude-apps-gateway-config#telemetry) の宛先にそれらをリレーします。[Claude Desktop が起動する](#connect-claude-desktop)埋め込みセッションでは、CLI はエクスポートを設定された `OTEL_EXPORTER_OTLP_ENDPOINT` に送信します。CLI はそのエンドポイントがゲートウェイ自体を指す場合にのみ、ゲートウェイセッショントークンをそれらのエクスポートに添付します。信号に設定された宛先がない場合、ゲートウェイはそれを受け入れて破棄するため、既に Claude Code テレメトリを直接収集する場合は、コレクターを `forward_to` 宛先として追加します。428* **テレメトリ宛先**:`/login` を通じてサインインしたセッションでは、CLI はローカルに設定された `OTEL_EXPORTER_OTLP_ENDPOINT` に関係なく、OTLP/HTTP エクスポートをゲートウェイに送信します。ただし、ポリシーが[コレクターをエンドポイントとして指定](/docs/ja/claude-apps-gateway-config#export-directly-to-your-collector)する場合を除きます。ゲートウェイは [`telemetry.forward_to`](/docs/ja/claude-apps-gateway-config#telemetry) の宛先にそれらをリレーします。

429 * [Claude Desktop が起動する](#connect-claude-desktop)埋め込みセッションでは、CLI はエクスポートを設定された `OTEL_EXPORTER_OTLP_ENDPOINT` に送信します。CLI はそのエンドポイントがゲートウェイ自体を指す場合にのみ、ゲートウェイセッショントークンをそれらのエクスポートに添付します。

430 * 信号に設定された宛先がない場合、ゲートウェイはそれを受け入れて破棄します。

431 * 既に Claude Code テレメトリを直接収集する場合は、コレクターを `forward_to` 宛先として追加するか、ポリシーで指定してリレーをスキップします。

429* **認証情報**:ゲートウェイトークンはセッションの唯一の認証情報です。[Anthropic プロファイル](/docs/ja/authentication#anthropic-profiles-and-federation-credentials)および以前の claude.ai ログインはサインイン中は無視されるため、開発者は最初に claude.ai からログアウトする必要はありません。設定された `ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN`、または `apiKeyHelper` 認証情報については、[Administrator policy requires a Cloud gateway sign-in](/docs/ja/errors#administrator-policy-requires-a-cloud-gateway-sign-in)を参照してください。432* **認証情報**:ゲートウェイトークンはセッションの唯一の認証情報です。[Anthropic プロファイル](/docs/ja/authentication#anthropic-profiles-and-federation-credentials)および以前の claude.ai ログインはサインイン中は無視されるため、開発者は最初に claude.ai からログアウトする必要はありません。設定された `ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN`、または `apiKeyHelper` 認証情報については、[Administrator policy requires a Cloud gateway sign-in](/docs/ja/errors#administrator-policy-requires-a-cloud-gateway-sign-in)を参照してください。

430* **管理設定**:ロックされたキーはローカルでオーバーライドできません。CLI はポリシーを起動時に適用し、[次の起動時にのみ適用される変更](/docs/ja/server-managed-settings#fetch-and-caching-behavior)を除いて、毎時間のポーリングで変更を適用します。433* **管理設定**:ロックされたキーはローカルでオーバーライドできません。CLI はポリシーを起動時に適用し、[次の起動時にのみ適用される変更](/docs/ja/server-managed-settings#fetch-and-caching-behavior)を除いて、毎時間のポーリングで変更を適用します。

431* **ゲートウェイが到達不可能な状態での起動**:サインイン済みセッションは、設定なしで起動するのではなく、約 10 秒後に起動時にエラーで終了します。434* **ゲートウェイが到達不可能な状態での起動**:サインイン済みセッションは、設定なしで起動するのではなく、約 10 秒後に起動時にエラーで終了します。


456| ユーザーごとおよびグループごとの支出制限 | 利用可能 | [支出制限](/docs/ja/claude-apps-gateway-spend-limits)を参照してください |459| ユーザーごとおよびグループごとの支出制限 | 利用可能 | [支出制限](/docs/ja/claude-apps-gateway-spend-limits)を参照してください |

457| サーバー側ウェブ検索 | 利用不可 | CLI はゲートウェイがルーティングするアップストリームプロバイダーを見ることができないため、ウェブ検索サポートを検証できず、ゲートウェイセッションで WebSearch を無効化します |460| サーバー側ウェブ検索 | 利用不可 | CLI はゲートウェイがルーティングするアップストリームプロバイダーを見ることができないため、ウェブ検索サポートを検証できず、ゲートウェイセッションで WebSearch を無効化します |

458| [リモートコントロール](/docs/ja/remote-control) | 利用不可 | CLI は[ゲートウェイを指定するエラー](/docs/ja/errors#remote-control-requires-the-anthropic-api)を表示します |461| [リモートコントロール](/docs/ja/remote-control) | 利用不可 | CLI は[ゲートウェイを指定するエラー](/docs/ja/errors#remote-control-requires-the-anthropic-api)を表示します |

459| 標準プロンプトキャッシング | 利用可能 | ゲートウェイは `cache_control` ブレークポイントをすべてのアップストリームに転送し、CLI は[会話の途中で追加するシステムコンテキスト](/docs/ja/prompt-caching#where-the-cache-lives)をゲートウェイセッションでキャッシング用にマークします。これは他のすべてのプロバイダーと接続と同じです。 |462| [`/design-sync`](/docs/ja/commands#all-commands) と `/design-login` | 利用不可 | どちらも claude.ai が必要ですが、CLI はゲートウェイセッションで claude.ai に接続しないため、どちらのコマンドもそこに表示されません |

463| `/import` と `claude import` などの機能フラグ取得が必要な機能 | 利用不可 | CLI はゲートウェイセッションでフラグ取得をスキップします。[機能フラグ取得が必要な機能](/docs/ja/env-vars#features-that-need-feature-flag-fetching)は、それがオフにするものをリストします |

464| 標準プロンプトキャッシング | 利用可能 | ゲートウェイは `cache_control` ブレークポイントをすべてのアップストリームに転送します。[キャッシュが存在する場所](/docs/ja/prompt-caching#where-the-cache-lives)は、CLI がマークするブロック(会話の途中で追加するシステムコンテキストを含む)をカバーしています |

460| 1 時間キャッシュ TTL | 利用不可 | CLI はゲートウェイセッションで拡張キャッシュ TTL ベータを省略します。ゲートウェイがルーティングできるすべてのアップストリームが 1 時間 TTL をサポートしているわけではないため、ゲートウェイを通じたプロンプトキャッシングは 5 分 TTL を使用します。上記のベータヘッダーノートを参照してください |465| 1 時間キャッシュ TTL | 利用不可 | CLI はゲートウェイセッションで拡張キャッシュ TTL ベータを省略します。ゲートウェイがルーティングできるすべてのアップストリームが 1 時間 TTL をサポートしているわけではないため、ゲートウェイを通じたプロンプトキャッシングは 5 分 TTL を使用します。上記のベータヘッダーノートを参照してください |

461| オートモード | 利用可能 | [サードパーティプロバイダールール](/docs/ja/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry)に従います。サードパーティプロバイダーで適格なモデルのみがそれを使用できます。v2.1.207 より前では、ゲートウェイセッションのオートモードは `CLAUDE_CODE_ENABLE_AUTO_MODE=1` を設定する必要があり、管理ポリシー `env` ブロック経由で配信可能でした |466| オートモード | 利用可能 | [サードパーティプロバイダールール](/docs/ja/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry)に従います。サードパーティプロバイダーで適格なモデルのみがそれを使用できます。v2.1.207 より前では、ゲートウェイセッションのオートモードは `CLAUDE_CODE_ENABLE_AUTO_MODE=1` を設定する必要があり、管理ポリシー `env` ブロック経由で配信可能でした |

462| グローバルキャッシュスコープとトークン効率的なツールなどのファーストパーティのみの最適化 | 利用不可 | CLI はゲートウェイセッションでそれらを有効化しません。上記のベータヘッダーノートを参照してください |467| グローバルキャッシュスコープとトークン効率的なツールなどのファーストパーティのみの最適化 | 利用不可 | CLI はゲートウェイセッションでそれらを有効化しません。上記のベータヘッダーノートを参照してください |

Details

62 62 

63ここのすべての本番トポロジーは、L7 プロキシ(Ingress、Cloud Run のフロントエンド、ALB など)をプレーン HTTP レプリカの前に配置します。[`listen.trusted_proxies`](/docs/ja/claude-apps-gateway-config#listen) をプロキシのソース範囲に設定して、ゲートウェイが `X-Forwarded-For` からクライアント IP を読み込みます。ゲートウェイは TCP ピアが信頼されている場合にのみヘッダーを尊重します。[Google Cloud](/docs/ja/claude-apps-gateway-on-gcp) と [AWS](/docs/ja/claude-apps-gateway-on-aws) の実装例には、トポロジーごとに具体的な値があります。信頼されたプロキシなしでは、すべてのリクエストはプロキシの IP から来ているように見え、IP ごとのレート制限を 1 つの共有バケットに折りたたみ、監査イベントにプロキシの IP を記録します。63ここのすべての本番トポロジーは、L7 プロキシ(Ingress、Cloud Run のフロントエンド、ALB など)をプレーン HTTP レプリカの前に配置します。[`listen.trusted_proxies`](/docs/ja/claude-apps-gateway-config#listen) をプロキシのソース範囲に設定して、ゲートウェイが `X-Forwarded-For` からクライアント IP を読み込みます。ゲートウェイは TCP ピアが信頼されている場合にのみヘッダーを尊重します。[Google Cloud](/docs/ja/claude-apps-gateway-on-gcp) と [AWS](/docs/ja/claude-apps-gateway-on-aws) の実装例には、トポロジーごとに具体的な値があります。信頼されたプロキシなしでは、すべてのリクエストはプロキシの IP から来ているように見え、IP ごとのレート制限を 1 つの共有バケットに折りたたみ、監査イベントにプロキシの IP を記録します。

64 64 

65ゲートウェイのデバイス認可とトークンエンドポイントへのリクエストをリダイレクトしないでください。Claude Code はこれらのリクエストでリダイレクトに従わないため、HTTP から HTTPS へのリダイレクトやホスト正規化の書き換えなどのリダイレクトルールは、サインインとトークン更新を破壊します。65ゲートウェイのデバイス認可とトークンエンドポイントへのリクエストをリダイレクトしないでください。例えば、HTTP から HTTPS へのリダイレクトやホスト正規化の書き換えなどです。Claude Code はこれらのリクエストでリダイレクトに従わないため、ingress ルールがそれらをリダイレクトするとサインインとトークン更新が破壊されます。

66 66 

67プロキシに、ゲートウェイのキープアライブ間隔より長いアイドルタイムアウトを与えます。これは上流に依存します:67プロキシに、ゲートウェイのキープアライブ間隔より長いアイドルタイムアウトを与えます。これは上流に依存します:

68 68 


120 ゲートウェイ URL を開発者マシンにプッシュする120 ゲートウェイ URL を開発者マシンにプッシュする

121</h3>121</h3>

122 122 

123ゲートウェイがサービスを提供したら、MDM を通じて、または OS ごとの `managed-settings.json` を直接書き込むことで、管理設定を通じて各開発者のマシンに `forceLoginMethod`、`forceLoginGatewayUrl`、および `parentSettingsBehavior: "merge"` をプッシュします。これなしでは、`/login` はゲートウェイオプションなしで標準アカウントピッカーを表示します。ファイルパスと Claude Desktop `bootstrapUrl` 相当については、[クライアント側の管理設定](/docs/ja/claude-apps-gateway-config#client-side-managed-settings) を参照してください。123ゲートウェイがサービスを提供したら、MDM を通じて、または OS ごとの `managed-settings.json` を直接書き込むことで、管理設定を通じて各開発者のマシンに `forceLoginMethod`、`forceLoginGatewayUrl`、および `parentSettingsBehavior: "merge"` をプッシュします。これなしでは、`/login` はゲートウェイオプションなしで標準アカウントピッカーを表示します。

124 

125キーをデプロイしたら、Claude Code はマシン上の残存する API キーまたは claude.ai ログインの使用を停止するため、サインイン指示と一緒にプッシュを計画します。[Administrator policy requires a Cloud gateway sign-in](/docs/ja/errors#administrator-policy-requires-a-cloud-gateway-sign-in) は開発者が見るメッセージについて説明しています。

126 

127各メカニズムがポリシーを保存する場所については [where each mechanism stores the policy](/docs/ja/managed-settings#where-each-mechanism-stores-the-policy) を参照し、Claude Desktop `bootstrapUrl` 相当については [Client-side managed settings](/docs/ja/claude-apps-gateway-config#client-side-managed-settings) を参照してください。

124 128 

125<h2 id="operations">129<h2 id="operations">

126 運用130 運用


136 140 

137* **監査イベント**:セキュリティ関連イベントごとの単一行 JSON。stderr をログアグリゲーターにパイプします。発行されるイベントには `config.load`、`session.mint`、`session.refresh`、`device.authorize`、`device.verify`、`device.callback`、`auth.denied`、`access.denied`、`inference`、`managed.serve`、`desktop_bootstrap.serve`、`desktop_bootstrap.denied`、`spend.blocked`、`admin.denied`、`admin.limit.upsert`、`admin.limit.delete` が含まれます。フィールドはイベントによって異なります:141* **監査イベント**:セキュリティ関連イベントごとの単一行 JSON。stderr をログアグリゲーターにパイプします。発行されるイベントには `config.load`、`session.mint`、`session.refresh`、`device.authorize`、`device.verify`、`device.callback`、`auth.denied`、`access.denied`、`inference`、`managed.serve`、`desktop_bootstrap.serve`、`desktop_bootstrap.denied`、`spend.blocked`、`admin.denied`、`admin.limit.upsert`、`admin.limit.delete` が含まれます。フィールドはイベントによって異なります:

138 * 成功した mint と refresh イベントは `sub`、`email`、`client_ip`、結果を含みます142 * 成功した mint と refresh イベントは `sub`、`email`、`client_ip`、結果を含みます

139 * `auth.denied` と `access.denied` は理由とクライアント IP を含み、`auth.denied` ではリクエストパスも含みます。拒否時にはユーザーアイデンティティが存在しないため143 * `auth.denied` と `access.denied` は理由とクライアント IP を含み、`auth.denied` ではリクエストパスも含みます。拒否時にはユーザーアイデンティティが存在しないため。2 つの `access.denied` 理由はイベントが何を含むかを変更します:

144 * `xff_unparseable`:イベントは読み込めなかった `X-Forwarded-For` エントリも含みます

145 * `client_ip_unknown`:イベントはクライアント IP を含みません。接続にピアアドレスがなく、`access_control` リストが設定されていたため

140 * `inference` は、どの上流がリクエストを提供したか、応答ステータスを記録します146 * `inference` は、どの上流がリクエストを提供したか、応答ステータスを記録します

141 * `desktop_bootstrap.denied` は、拒否された Claude Desktop ブートストラップフェッチを理由(`not_configured`、`policy_not_opted_in`、`no_policy_matched`)とユーザーのアイデンティティで記録します147 * `desktop_bootstrap.denied` は、拒否された Claude Desktop ブートストラップフェッチを理由(`not_configured`、`policy_not_opted_in`、`no_policy_matched`)とユーザーのアイデンティティで記録します

142 * `admin.denied` は、拒否された admin-API 認証試行をクライアント IP、メソッド、パス、理由で記録します。提示されたキーマテリアルなし:`x-api-key` が提示されたが設定されたキーと一致しなかった場合は `invalid_key`、`Authorization` ヘッダーのみが提示され、ゲートウェイセッションとして `admin.admin_groups` で検証されなかった場合は `bearer_rejected`、どちらのヘッダーも提示されなかった場合は `no_credentials`148 * `admin.denied` は、拒否された admin-API 認証試行をクライアント IP、メソッド、パス、理由で記録します。提示されたキーマテリアルなし:`x-api-key` が提示されたが設定されたキーと一致しなかった場合は `invalid_key`、`Authorization` ヘッダーのみが提示され、ゲートウェイセッションとして `admin.admin_groups` で検証されなかった場合は `bearer_rejected`、どちらのヘッダーも提示されなかった場合は `no_credentials`


265 トラブルシューティング271 トラブルシューティング

266</h2>272</h2>

267 273 

268質問とフィードバックについては、[Claude Code サポート](https://support.claude.com/en/collections/14445694-claude-code) を使用するか、[Claude Code GitHub リポジトリ](https://github.com/anthropics/claude-code/issues) で issue を開きます。問題を報告するときは、以下を含めます:274ご質問やフィードバックについては、[Claude Code サポート](https://support.claude.com/en/collections/14445694-claude-code)をご利用いただくか、[Claude Code GitHub リポジトリ](https://github.com/anthropics/claude-code/issues)で issue を開いてください。問題を報告する際は、以下の情報を含めてください。

269 275 

270* **ゲートウェイの問題**:関連するウィンドウのゲートウェイの stderr、シークレットが削除された `gateway.yaml`、ゲートウェイバージョン(`/` のランディングページに表示、`/managed/settings` の `x-cc-gateway-version` レスポンスヘッダー)、最近変更されたもの276* **Gateway の問題**: gateway の stderr(該当するウィンドウの)、`gateway.yaml`(シークレットは削除)、gateway のバージョン(ランディングページの `/` と `/managed/settings` の `x-cc-gateway-version` レスポンスヘッダーに表示)、および最近の変更内容

271* **ログイン問題**:開発者は `claude --debug-file ./claude-debug.txt` を実行し、再現し、そのファイルとゲートウェイの同じウィンドウの監査ログを送信します277* **ログイン問題**: 開発者が `claude --debug-file ./claude-debug.txt` を実行して再現し、そのファイルと同じウィンドウの gateway の監査ログを送信

272* **推論問題**:リクエストされたモデル、設定された上流、リクエストのゲートウェイ監査ログ。どの上流がそれを提供したか、応答ステータスを記録します278* **推論の問題**: リクエストされたモデル、設定されたアップストリーム、およびリクエストの gateway 監査ログ(どのアップストリームがそれを処理したか、およびレスポンスステータスを記録)

273 279 

274ゲートウェイの stderr には監査イベントストリームが含まれ、監査ログには開発者の ID が記録され、デバッグファイルには開発者のマシンからの hook と MCP サーバーの出力が記録されます。公開 issue に投稿する前に、これらを確認して秘密情報を削除してください。280gateway の stderr には監査イベントストリームが含まれ、監査ログには開発者の ID が記録され、デバッグファイルには開発者のマシンからの hook と MCP サーバーの出力が記録されます。公開 issue に投稿する前に、これらを確認して削除してください。

275 281 

276| 症状 | 原因 | 修正 |282| 症状 | 原因 | 修正方法 |

277| ------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |283| -------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

278| 開発者の `/login` は標準アカウントピッカーを表示し、**Cloud gateway** 画面ではなく | 管理設定で `forceLoginMethod` または `forceLoginGatewayUrl` が設定されていない | [管理設定ファイル](/docs/ja/claude-apps-gateway#set-the-gateway-url) をデバイスにデプロイします。`/login` はそこからゲートウェイ URL を読み込みます |284| 開発者の `/login` が **Cloud gateway** 画面ではなく標準のアカウントピッカーを表示する | そのマシンのマネージド設定で `forceLoginMethod` または `forceLoginGatewayUrl` が設定されていない | [マネージド設定ファイル](/docs/ja/claude-apps-gateway#set-the-gateway-url)をデバイスにデプロイしてください。`/login` はそこから gateway URL を読み込みます |

279| Claude Desktop はブートストラップ設定を取得できなかったと報告 | `/user/bootstrap` は 404 を返しました:ユーザーと一致するポリシーが `desktop` キーを持たないか、ポリシーが一致しません。ゲートウェイの監査ログは各拒否を `desktop_bootstrap.denied` として理由とともに記録します。 | ユーザーと一致するポリシーに `desktop` ブロックを追加するか、`match: {}` ベースレイヤーに追加します。空の `desktop: {}` で十分です。[Claude Desktop オーバーレイ](/docs/ja/claude-apps-gateway-config#claude-desktop-overlay) を参照してください。 |285| 開発者のリクエストが `Not signed in to the Cloud gateway — run /login.` で失敗する | マシンのマネージド設定で `forceLoginMethod: "gateway"` または `forceLoginGatewayUrl` が設定されており、セッションに gateway サインインがない。残っている claude.ai ログインは要件を満たしていません。 | 開発者に `/login` を実行して gateway サインインを完了させてください。[Administrator policy requires a Cloud gateway sign-in](/docs/ja/errors#administrator-policy-requires-a-cloud-gateway-sign-in) も参照してください。 |

280| スタートアップは `Gateway login is configured in managed settings, but this Claude Code build does not include Cloud gateway support.` を表示 | インストールされた Claude Code ビルドはゲートウェイサポートより前 | 開発者に Claude Code を Cloud gateway サポートを含むリリースに更新させます |286| Claude Desktop がブートストラップ設定を取得できないと報告する | `/user/bootstrap` が 404 を返した: ユーザーに一致するポリシーが `desktop` キーを持たないか、ポリシーが一致しなかった。gateway の監査ログは各拒否を `desktop_bootstrap.denied` として理由とともに記録します。 | ユーザーに一致するポリシー、または `match: {}` ベースレイヤーに `desktop` ブロックを追加してください。空の `desktop: {}` で十分です。[Claude Desktop overlay](/docs/ja/claude-apps-gateway-config#claude-desktop-overlay) を参照してください。 |

281| CLI `/login`:`Gateway hosts must be on your organization's private network; <host> resolves to the public (or unrecognized) address <ip>` | ゲートウェイホスト名は少なくとも 1 つのパブリック IP アドレスに解決されます。Claude Code は各解決されたアドレスをチェックし、すべてがプライベートであることを要求します。一般的な原因は、1 つのファミリーがパブリックアドレスに解決するデュアルスタック名です。AWS 内部デュアルスタックロードバランサーを含み、パブリック範囲 AAAA アドレスを返します。 | ゲートウェイ名が開発者マシンでプライベートアドレスのみに解決されるようにします。デュアルスタック名の場合は、パブリック範囲レコードをドロップするか、個別の内部専用 DNS 名を提供します。[プライベートネットワーク前提条件](/docs/ja/claude-apps-gateway#prerequisites) を参照してください。 |287| スタートアップが `Gateway login is configured in managed settings, but this Claude Code build does not include Cloud gateway support.` を表示する | インストールされている Claude Code ビルドが gateway サポート前のバージョン | 開発者に Claude Code を Cloud gateway サポートを含むリリースに更新させてください |

282| CLI `/login`:`Gateway login would go through proxy <proxy>, which is not on a private network` | `HTTPS_PROXY` または `HTTP_PROXY` がゲートウェイホストに適用され、プロキシのホスト名がパブリックアドレスに解決されます。ホスト名がプライベートアドレスのみに解決するプロキシは許可され、このエラーをトリガーしません | ゲートウェイホストを開発者のマシンの `NO_PROXY` に追加して、接続が直接になるようにするか、ホスト名がプライベートアドレスに解決するプロキシを使用します。メッセージは追加する正確な `NO_PROXY` エントリを名前で指定します |288| スタートアップまたは `/login` がマネージド設定ロード時の 403 の後に `Claude Code may not be enabled for your organization` を報告する | gateway、またはその前にあるもの、が `/managed/settings` リクエストに 403 で応答した。gateway 自体の設定ルートは 403 で応答することはありません。ステータスは [`access_control`](/docs/ja/claude-apps-gateway-config#http-tuning) IP チェック、または gateway の前にあるプロキシまたは WAF から来ています。監査ログは IP チェック拒否を `access.denied` として理由とともに記録します。開発者はサインイン状態を保ちます。 | 失敗時の監査ログで `access.denied` を確認し、`access_control` リストまたはフロントエンドを修正してから、開発者に `claude` を再度起動させてください |

283| CLI `/login`:`Could not resolve the configured HTTP proxy` | `HTTPS_PROXY` または `HTTP_PROXY` のホスト名が開発者のマシンから解決されません。通常、企業ネットワークに接続していないため | 開発者にネットワークまたは VPN に接続させて再試行するか、プロキシ URL を修正します |289| CLI `/login`: `Gateway hosts must be on your organization's private network; <host> resolves to the public (or unrecognized) address <ip>` | gateway ホスト名が少なくとも 1 つのパブリック IP アドレスに解決される。Claude Code は各解決されたアドレスをチェックし、すべてがプライベートであることを要求します。一般的な原因は、1 つのファミリーがパブリックアドレスに解決されるデュアルスタック名です。AWS 内部デュアルスタックロードバランサーを含み、パブリック範囲の AAAA アドレスを返します。 | gateway 名が開発者マシン上でのみプライベートアドレスに解決されるようにしてください。デュアルスタック名の場合、パブリック範囲のレコードを削除するか、別の内部専用 DNS 名を提供してください。[プライベートネットワークの前提条件](/docs/ja/claude-apps-gateway#prerequisites)を参照してください。 |

284| CLI `/login`:`Could not resolve gateway host <host>` | マシンはゲートウェイの内部 DNS 名を解決できません。通常、企業ネットワークにないため | 開発者にネットワークまたは VPN に接続させ、`/login` を再試行します |290| CLI `/login`: `Gateway login would go through proxy <proxy>, which is not on a private network` | `HTTPS_PROXY` または `HTTP_PROXY` が gateway ホストに適用され、プロキシのホスト名がパブリックアドレスに解決される。ホストがプライベートアドレスのみに解決されるプロキシは許可され、このエラーをトリガーしません | 開発者のマシンの `NO_PROXY` に gateway ホストを追加して接続を直接にするか、ホスト名がプライベートアドレスに解決されるプロキシを使用してください。メッセージは追加する正確な `NO_PROXY` エントリを名前付けします |

285| ブートは `store.postgres_url` という名前の設定検証エラーで終了 | Postgres が設定されていません。ゲートウェイは Postgres が必要です | `store.postgres_url` を設定します。ローカル開発の場合は、使い捨てコンテナを使用します:`docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`。 |291| CLI `/login`: `Could not resolve the configured HTTP proxy` | `HTTPS_PROXY` または `HTTP_PROXY` のホスト名が開発者のマシンから解決されない。通常、企業ネットワークに接続されていないため | 開発者にネットワークまたは VPN に接続させて再試行するか、プロキシ URL を修正してください |

286| ブートは終了:`requires the native binary` | Node の代わりにネイティブバイナリの下で実行 | [スタンドアロンインストール方法](/docs/ja/setup) の 1 つで Claude Code をインストールします |292| CLI `/login`: `Could not resolve gateway host <host>` | マシンが gateway の内部 DNS 名を解決できない。通常、企業ネットワーク上にないため | 開発者にネットワークまたは VPN に接続させてから、`/login` を再試行してください |

287| ブートは `config.load` の後の OIDC ディスカバリーエラーで終了 | `oidc.issuer` に到達不可、または TLS チェーンが信頼されていない | issuer がポッドから到達可能で `/.well-known/openid-configuration` を提供することを確認します。プライベート PKI の場合は `ca_cert_pem` を設定します。 ポッドが forward proxy を通じてのみ IdP に到達する場合は、[`oidc.use_proxy: true`](/docs/ja/claude-apps-gateway-config#idp-requests-through-a-forward-proxy) を設定します。v2.1.227 より前のバージョンでは、代わりに IdP の各エンドポイントへの直接ルートをポッドに提供します。 |293| ブート時に `store.postgres_url` という名前の設定検証エラーで終了する | Postgres が設定されていない。gateway は Postgres を必要とします | `store.postgres_url` を設定してください。ローカル開発の場合、使い捨てコンテナを使用してください: `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`。 |

288| ブートは Postgres パーミッションエラーで終了 | データベースロールがそのスキーマに対して DDL 権限を持たない | ロールにゲートウェイのスキーマに対する `CREATE` を付与して、ブート時にテーブルを作成および変更できるようにします |294| ブート時に終了: `requires the native binary` | Node の代わりにネイティブバイナリで実行されていない | Claude Code を [スタンドアロンインストール方法](/docs/ja/setup)のいずれかでインストールしてください |

289| `/oauth/callback` は「Sign-in could not be completed」を表示 | メールドメインが拒否されました。id\_token 検証が失敗しました。または `email_verified` が明示的に `false` です。ゲートウェイは常にオーバーライドなしで拒否します | `allowed_email_domains` を確認し、IdP が検証済み `email` クレームを返すことを確認します。`email_verified: false` の場合は、IdP 側の検証を修正します。IdP がメールを別のクレーム名の下で発行する場合は、`oidc.email_claim` を設定します。 |295| ブート時に `config.load` の後に OIDC ディスカバリーエラーで終了する | `oidc.issuer` に到達できない、または TLS チェーンが信頼されていない | 発行者がポッドから到達可能で、`/.well-known/openid-configuration` を提供していることを確認してください。プライベート PKI の場合は `ca_cert_pem` を設定してください。ポッドが IdP にフォワードプロキシ経由でのみ到達する場合、[`oidc.use_proxy: true`](/docs/ja/claude-apps-gateway-config#idp-requests-through-a-forward-proxy)を設定してください。v2.1.227 より前のバージョンでは、代わりに IdP の各エンドポイントへの直接ルートをポッドに提供してください。 |

290| ログ:`token exchange failed request_id=<id>: id_token missing email claim` | IdP はデフォルトで id\_token に `email` を含めていません。この拒否は `allowed_email_domains` が設定されている場合にのみ発火します。なしでは、欠落したメールはメールなしでセッションをミントします | IdP を設定して id\_token で `email` を発行します。Okta:カスタム認可サーバーの ID トークンクレームに `email` を追加します。Entra:アプリ登録でオプションクレームとして `email` を追加します。PingFederate:`email` を発行する OpenID Connect ポリシーを有効にします。IdP が userinfo エンドポイントから `email` を提供するが、id\_token に含めない場合(Okta org 認可サーバーなど)、`oidc.userinfo_fallback: true` を設定します。 |296| ブート時に Postgres パーミッションエラーで終了する | データベースロールがそのスキーマに対する DDL 権限を持たない | ロールに gateway のスキーマに対する `CREATE` を付与して、ブート時にテーブルを作成・変更できるようにしてください |

291| すべての Amazon Bedrock リクエストは 502 を返します。ログは `Could not load credentials from any providers` を表示 | EC2 では、IMDSv2 のデフォルトホップリミット 1 がコンテナ内からのインスタンスメタデータリクエストをブロックします。ブートと `/readyz` はクライアント構築時ではなく最初のリクエストで AWS SDK がインスタンス認証情報を解決するため、とにかく合格します | `aws ec2 modify-instance-metadata-options --instance-id <id> --http-put-response-hop-limit 2` でホップリミットを上げるか、起動テンプレートで設定します。変更はインスタンス上のすべてのコンテナに適用されます。利用可能な場合は ECS タスクロールを優先します。ECS コンテナ認証情報エンドポイントから認証情報を読み込み、変更を完全に回避するか、専用ゲートウェイインスタンスで変更を適用して露出を制限します。 |297| `/oauth/callback` が「Sign-in could not be completed」を表示する | メールドメインが拒否された、id\_token 検証が失敗した、または `email_verified` が明示的に `false` である。gateway は常にオーバーライドなしでこれを拒否します | `allowed_email_domains` を確認し、IdP が検証済みの `email` クレームを返していることを確認してください。`email_verified: false` の場合、IdP 側の検証を修正してください。IdP がメールを別のクレーム名で発行する場合、`oidc.email_claim` を設定してください。 |

292| IdP エラー:unknown or unsupported scope | IdP は認識しないスコープを拒否します | `oidc.scopes` を IdP が受け入れる正確なリストに設定します。`openid` を含める必要があります。デフォルトは `openid profile email offline_access` です。 |298| ログ: `token exchange failed request_id=<id>: id_token missing email claim` | IdP がデフォルトで id\_token に `email` を含めていない。この拒否は `allowed_email_domains` が設定されている場合にのみ発火します。設定されていない場合、メールがないとメールなしのセッションが作成されます | IdP を設定して id\_token に `email` を発行させてください。Okta: カスタム認可サーバーの ID トークンクレームに `email` を追加してください。Entra: アプリ登録でオプションクレームとして `email` を追加してください。PingFederate: `email` を発行する OpenID Connect ポリシーを有効にしてください。IdP が userinfo エンドポイントから `email` を提供するが id\_token に含めない場合(Okta org 認可サーバーなど)、`oidc.userinfo_fallback: true` を設定してください。 |

293| `oidc.scopes` を設定した後、セッションはサイレントに更新されません | `offline_access` がオーバーライドからドロップされました | IdP がサポートしている場合は `offline_access` を戻します。リフレッシュトークンなしでは、開発者は `session.ttl_hours` ごとにブラウザログインを再実行します。 |299| ログ: `refresh failed request_id=<id>: invalid_token (…) (at userinfo_no_id_token, …)`、および開発者が `Cloud gateway session expired` を `session.ttl_hours` ごとに見る | IdP がリフレッシュトークンを受け入れたが、それで id\_token を返さなかったため、gateway は IdP の userinfo エンドポイントにユーザーのクレームを求めました。IdP はそこでリフレッシュされたアクセストークンを拒否しました。gateway は `temporarily_unavailable` で応答するため、Claude Code はリフレッシュトークンを保持しますがセッションを更新できません。v2.1.260 より前の gateway バージョンは `(at …)` の詳細なしで同じ行をログします。 | [`oidc.scope_on_refresh: true`](/docs/ja/claude-apps-gateway-config#oidc)を設定してください。gateway v2.1.260 以降で利用可能です。リフレッシュリクエストが再び `openid` を要求するようにします。Okta などの一部の IdP は、要求された場合にのみリフレッシュ時に id\_token を返します。PingFederate では、代わりに **Applications > OAuth > OpenID Connect Policy Management** の下で **Return ID Token On Refresh Grant** を有効にしてください。キーは PingFederate の動作を変更しません。それでも省略する他の IdP の場合、userinfo エンドポイントがリフレッシュによって発行されたアクセストークンを受け入れるかどうかを確認してください。一時的な対応として、[`session.ttl_hours`](/docs/ja/claude-apps-gateway-config#session)を上げてください。[Identity provider setup](#identity-provider-setup) でプロビジョニング解除のトレードオフを参照してください。 |

294| ブラウザは「This request came from another site and was blocked」を表示 | クロスサイトフォーム POST。CSRF 保護としてブロックされました。埋め込みまたはプロキシされたページの場合は予想されます | 検証リンクを直接開きます |300| すべての Amazon Bedrock リクエストが 502 を返す。ログに `Could not load credentials from any providers` が表示される | EC2 では、IMDSv2 のデフォルトホップリミット 1 がコンテナ内からのインスタンスメタデータリクエストをブロックします。ブートと `/readyz` は AWS SDK がクライアント構築時ではなく最初のリクエストでインスタンス認証情報を解決するため、とにかく成功します | `aws ec2 modify-instance-metadata-options --instance-id <id> --http-put-response-hop-limit 2` でホップリミットを上げるか、起動テンプレートで設定してください。変更はインスタンス上のすべてのコンテナに適用されます。利用可能な場合は ECS タスクロールを優先してください。これは ECS コンテナ認証情報エンドポイントから認証情報を読み込み、変更を完全に回避します。または、変更を専用 gateway インスタンスに適用して露出を制限してください。 |

295| Chrome は「Refused to send form data … violates … Content Security Policy directive: form-action」で Approve ボタンをブロックしますが、同じページは Safari または Firefox で機能します | Chrome はリダイレクトチェーン全体に対して `form-action` を実装します。IdP はさらに、許可リストに登録されていない 2 番目のホストにリダイレクトします。 | リダイレクトチェーン内の各追加オリジンを `oidc.form_action_origins` に追加します。Approve ページで Chrome DevTools → Console を開いて、どのオリジンがブロックされたかを確認します。 |301| IdP エラー: unknown or unsupported scope | IdP が認識しないスコープを拒否する | `oidc.scopes` を IdP が受け入れるリストに正確に設定してください。`openid` を含める必要があります。デフォルトは `openid profile email offline_access` です。 |

296| サインインは IdP で完了しますが、コールバックは失敗します。Chrome で CSP エラーまたは Safari で「this sign-in link has expired」 | IdP は `response_mode=form_post` を通じてコードを返しました。これは `/oauth/callback` にクロスオリジン POST を通じて自動送信します。Chrome はそれを厳密な CSP の下でブロックします。Safari は送信を許可しますが、コールバックはクエリ文字列のみを読み込みます。 | IdP が `response_mode=query` を尊重することを確認します。ゲートウェイは明示的にリクエストするため、コールバックはプレーンリダイレクトです |302| `oidc.scopes` を設定した後、セッションが自動的に更新されない | `offline_access` がオーバーライドから削除された | IdP がサポートしている場合は `offline_access` を戻してください。リフレッシュトークンがない場合、開発者は `session.ttl_hours` ごとにブラウザログインを再実行します。 |

297| ログインはローカルで機能しますが、ALB の背後で失敗します | `public_url` が設定されていないため、IdP は内部 `http://` オリジンを `redirect_uri` として取得します | `listen.public_url` を外部 `https://` オリジンに設定し、`<public_url>/oauth/callback` を IdP に登録します |303| ブラウザが「This request came from another site and was blocked」を表示する | クロスサイトフォーム POST。CSRF 保護としてブロックされました。埋め込みまたはプロキシされたページでは予想されます | 検証リンクを直接開いてください |

298| 開発者は信頼プロンプトを繰り返し見ます | TLS 証明書はレプリカごと、またはリクエストごとにローテーションしています | ingress で安定した証明書を使用するか、TLS を 1 回終了し、レプリカをプレーン HTTP で内部で実行します |304| Chrome が「Refused to send form data … violates … Content Security Policy directive: form-action」で Approve ボタンをブロックするが、同じページが Safari または Firefox で機能する | Chrome はリダイレクトチェーン全体に対して `form-action` を適用します。IdP が許可リストに登録されていない 2 番目のホストにさらにリダイレクトします。 | リダイレクトチェーン内の各追加オリジンを `oidc.form_action_origins` に追加してください。Approve ページで Chrome DevTools → Console を開いて、どのオリジンがブロックされたかを確認してください。 |

299| CLI `/login`:「Could not verify the gateway's TLS certificate」または `SELF_SIGNED_CERT_IN_CHAIN` | ゲートウェイの TLS チェーンは、CLI ホストの信頼ストアにないプライベート CA によって署名されています | Claude Code はデフォルトでネイティブバイナリで OS 信頼ストアを読み込み、Node 22.15 以降で読み込みます。[`CLAUDE_CODE_CERT_STORE`](/docs/ja/network-config#ca-certificate-store) はこの動作を制御します。CA が OS 信頼ストアにインストールされている場合は、開発者が現在のランタイムにいることを確認します。そうでない場合は、起動する前に `NODE_EXTRA_CA_CERTS` を CA 証明書 PEM に設定します。最初の接続フィンガープリントプロンプトは引き続き適用されます。 |305| サインインが IdP で完了するがコールバックが失敗する。Chrome で CSP エラーまたは Safari で「this sign-in link has expired」が表示される | IdP が `response_mode=form_post` 経由でコードを返しました。これは POST 経由で `/oauth/callback` にクロスオリジンで自動送信します。Chrome はこれを厳密な CSP の下でブロックします。Safari は送信を許可しますがコールバックはクエリ文字列のみを読み込みます。 | IdP が `response_mode=query` を尊重していることを確認してください。gateway はコールバックがプレーンリダイレクトになるように明示的にこれをリクエストします |

300| CLI `/login` はブラウザサインインを完了し、セッションは `Cloud gateway sign-in was not completed` で終了し、TLS 証明書の不一致 | サインイン後の最初のリクエストで、ゲートウェイは Claude Code がピンした フィンガープリントと一致しない証明書を提示したため、Claude Code はゲートウェイ認証情報を保持しませんでした。通常の原因は、1 つのアドレスの背後にあるレプリカが異なる証明書を提供するか、ネットワークパス上の何かが TLS をインターセプトしています。 | ホスト名に対して 1 つの証明書を提供します。例えば、ingress で TLS を 1 回終了し、開発者に `/login` を再度実行させます。その証明書がピンされたものと異なる場合、Claude Code は [信頼プロンプト](/docs/ja/claude-apps-gateway#connect-developers) を警告とともに表示し、証明書が変更されたことを示します。 |306| ログインはローカルで機能するが ALB の背後では失敗する | `public_url` がまだローカルまたは内部の `http://` オリジンを名前付けしているため、IdP は間違った `redirect_uri` を取得します | `listen.public_url` を外部の `https://` オリジンに設定し、`<public_url>/oauth/callback` を IdP に登録してください |

301| CLI `/login` は `The gateway's TLS certificate changed during sign-in: it no longer matches the one you trusted` で停止 | サインインリクエストは、開発者が `/login` を開始したときに受け入れた証明書と一致しない証明書を提供するサーバーに到達しました:1 つのアドレスの背後にあるレプリカが異なる証明書を提供、パス上の TLS インターセプション、またはサインイン中の証明書ローテーション。 | ホスト名に対して 1 つの証明書を提供し、開発者にサインインを再度開始させ、[信頼プロンプト](/docs/ja/claude-apps-gateway#connect-developers) で新しい証明書を確認させます。 |307| 開発者が信頼プロンプトを繰り返し見る | TLS 証明書がレプリカごと、またはリクエストごとにローテーションしている | イングレスで安定した証明書を使用するか、TLS を 1 回終了して、レプリカをプレーン HTTP で内部的に実行してください |

302 308| CLI `/login`: 「Could not verify the gateway's TLS certificate」または `SELF_SIGNED_CERT_IN_CHAIN` | Gateway の TLS チェーンが CLI ホストの信頼ストアにないプライベート CA によって署名されている | Claude Code はネイティブバイナリ上でデフォルトで OS 信頼ストアを読み込み、Node 22.15 以降で読み込みます。[`CLAUDE_CODE_CERT_STORE`](/docs/ja/network-config#ca-certificate-store) がこの動作を制御します。CA が OS 信頼ストアにインストールされている場合、開発者が現在のランタイムを使用していることを確認してください。そうでない場合、起動前に `NODE_EXTRA_CA_CERTS` を CA 証明書 PEM に設定してください。最初の接続フィンガープリントプロンプトは引き続き適用されます。 |

303`Cloud gateway sign-in was not completed` メッセージはゲートウェイホスト名を名前で指定し、Claude Code が両方のフィンガープリントを持つ場合、ピンされたものと提示されたものの最初の 16 文字を指定します。309| CLI `/login` がブラウザサインインを完了してから、セッションが `Cloud gateway sign-in was not completed` と TLS 証明書の不一致で終了する | サインイン後の最初のリクエストで、gateway は Claude Code がピンした フィンガープリントと一致しない証明書を提示したため、Claude Code は gateway 認証情報を保持しませんでした。通常の原因は、1 つのアドレスの背後にあるレプリカが異なる証明書を提供するか、ネットワークパス上の何かが TLS をインターセプトしています。 | ホスト名に対して 1 つの証明書を提供してください。例えば、イングレスで TLS を 1 回終了してから、開発者に `/login` を再度実行させてください。その証明書がピンされたものと異なる場合、Claude Code は [信頼プロンプト](/docs/ja/claude-apps-gateway#connect-developers) を警告とともに表示します。証明書が変更されました。 |

304 310| CLI `/login` が `The gateway's TLS certificate changed during sign-in: it no longer matches the one you trusted` で停止する | サインインリクエストが、開発者が `/login` を開始したときに受け入れた証明書と一致しない証明書を提供するサーバーに到達しました: 1 つのアドレスの背後にあるレプリカが異なる証明書を提供する、パス上の TLS インターセプション、またはサインイン中の証明書ローテーション。 | ホスト名に対して 1 つの証明書を提供してから、開発者にサインインを再度開始させ、[信頼プロンプト](/docs/ja/claude-apps-gateway#connect-developers)で新しい証明書を確認させてください。 |

305Claude Code がゲートウェイサインイン後に `couldn't load your organization's managed settings` を報告する場合、Claude Code は理由を名前で指定し、その場で再起動し、会話を再開します。Claude Code が再起動できない場合(例えば、バックグラウンドセッション)、Claude Code はセッションを終了し、サインインを保持します。311 

312`Cloud gateway sign-in was not completed` メッセージは gateway ホスト名を名前付けします。Claude Code がピンされたフィンガープリントと提示されたフィンガープリントの両方を持つ場合、メッセージは各の最初の 16 文字も表示します。

313 

314Claude Code がゲートウェイサインイン後に `couldn't load your organization's managed settings` を報告する場合、Claude Code は理由を名前付けし、その場で再起動して、会話を再開します。Claude Code が再起動できない場合(例えば、バックグラウンドセッション)、Claude Code はセッションを終了し、サインインを保持します。

306 315 

307<h2 id="related">316<h2 id="related">

308 関連317 関連

claude-apps-gateway-on-aws.md +553 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# AWS に Claude apps gateway をデプロイする

6 

7> AWS で Claude apps gateway を実行する実装例:ECS Fargate または EKS、Amazon RDS for PostgreSQL、AWS Secrets Manager、および Amazon Bedrock への IAM ロール認証。

8 

9<Note>

10 このページは、AWS で Claude apps gateway を実行する 1 つの方法を説明しています。この設定は、サポートされている本番環境デプロイメントではなく、カスタマー管理インフラストラクチャの実装例です。各部分がどのように組み合わさるかを確認してから、自分の環境に適応させてください。プラットフォーム非依存の要件については、[デプロイメントガイド](/docs/ja/claude-apps-gateway-deploy)を参照してください。

11</Note>

12 

13この例では、Amazon Bedrock をモデルアップストリームとして使用し、[Amazon ECS](https://aws.amazon.com/ecs/) を [AWS Fargate](https://aws.amazon.com/fargate/) で実行するか、[Amazon EKS](https://aws.amazon.com/eks/) をコンピュートに使用して、AWS に Claude apps gateway をプロビジョニングします。[Okta](https://www.okta.com/) は例の ID プロバイダー(IdP)ですが、OpenID Connect(OIDC)準拠の任意の IdP が機能します。IdP ごとの詳細については、[ID プロバイダーのセットアップ](/docs/ja/claude-apps-gateway-deploy#identity-provider-setup)を参照してください。

14 

15<Note>

16 Bedrock は AWS 上の唯一の Claude アップストリームではありません。ゲートウェイは、Bedrock の代わりに、または Bedrock と並行して、AWS 認証と AWS Marketplace 課金を備えた Anthropic 運営の Claude API である Claude Platform on AWS もサポートしています。そのアップストリームエントリ、認証情報、および IAM 権限は、このページの Bedrock スコープのものとは異なります。[Claude Platform on AWS アップストリームリファレンス](/docs/ja/claude-apps-gateway-config#claude-platform-on-aws)は何が変わるかをカバーしており、このページの残りは変わらずに適用されます。

17</Note>

18 

19<h2 id="architecture">

20 アーキテクチャ

21</h2>

22 

23<Frame caption="例のアーキテクチャ。Amazon Bedrock をモデルアップストリームとして使用しています。Claude Platform on AWS アップストリームは同じ位置を占めます。">

24 <img src="https://mintcdn.com/claude-code/PHweeRmDUYEKff49/images/claude-gateway-aws-architecture.svg?fit=max&auto=format&n=PHweeRmDUYEKff49&q=85&s=8599cc34aa28522cde208ee831439bb4" alt="AWS 上の Claude apps gateway の図:Claude Code クライアントは HTTPS 経由でゲートウェイ(ECS Fargate または EKS)の前にある内部アプリケーションロードバランサーに接続し、プライベートサブネット内で Amazon RDS for PostgreSQL インスタンスと並行して実行されます。ゲートウェイは OIDC 経由でユーザーを企業 IdP に対してサインインさせ、AWS Secrets Manager からシークレットを読み取り、IAM ロールを使用してモデルリクエストを Amazon Bedrock に転送し、デプロイ時に Amazon ECR からイメージをプルします。" width="820" height="430" data-path="images/claude-gateway-aws-architecture.svg" />

25</Frame>

26 

27ゲートウェイは、開発者が IdP を通じてサインインするネットワーク上のプライベート HTTPS エンドポイントとして実行されます。Claude Code セッションは、ゲートウェイの IAM ロールを通じて Amazon Bedrock 上の Claude モデルに到達するため、モデル認証情報は開発者マシンに到達しません。参照設定は以下をプロビジョニングします:

28 

29* **Amazon ECS on AWS Fargate** サービスまたは **Amazon EKS** デプロイメント(ゲートウェイコンテナを実行)

30* **Amazon ECR** リポジトリ(ゲートウェイイメージ用)

31* **Amazon RDS for PostgreSQL** インスタンス(プライベートサブネット内、公開アクセス不可、ゲートウェイの[ストア](/docs/ja/claude-apps-gateway-config#store)用)

32* **AWS Secrets Manager** シークレット(JWT 署名キー、OIDC クライアントシークレット、Postgres URL 用)

33* **IAM ロール**(`bedrock:InvokeModel`、`bedrock:InvokeModelWithResponseStream`、`bedrock:CountTokens` 権限付き、ECS タスクロールとしてアタッチされるか、EKS 上の IAM Roles for Service Accounts(IRSA)経由でバインドされる)

34* **内部アプリケーションロードバランサー**(HTTPS 用)

35 

36<h2 id="prerequisites">

37 前提条件

38</h2>

39 

40このウォークスルーではゲートウェイ独自のリソースを作成しますが、既に存在するネットワークおよびアイデンティティインフラストラクチャの上に構築されます。開始する前に、以下が必要です。

41 

42* [上記のリソース](#architecture)を作成する権限を持つ AWS アカウント

43* [AWS CLI v2](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) がインストールされ[認証済み](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-authentication.html)であること、および [Docker](https://docs.docker.com/get-started/get-docker/) がローカルにインストールされていること

44* 異なるアベイラビリティゾーンに少なくとも 2 つの[プライベートサブネット](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html)を持つ [VPC](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html)。[NAT ゲートウェイ](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html)を通じたアウトバウンドインターネットアクセスがあること。内部ロードバランサーは 2 つの AZ のサブネットが必要であり、ゲートウェイは Bedrock および IdP へのエグレスが必要です

45* リダイレクト URI が `https://<gateway-host>/oauth/callback` の Okta OIDC ウェブアプリケーション。[ID プロバイダーのセットアップ](/docs/ja/claude-apps-gateway-deploy#identity-provider-setup)を参照してください

46* ゲートウェイ用の TLS ホスト名。通常は [Route 53 プライベートホストゾーン](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-private.html)内の内部 DNS 名でロードバランサーを指し、そのホスト名用の [ACM 証明書](https://docs.aws.amazon.com/acm/latest/userguide/gs.html)があり、[AWS Private CA](https://docs.aws.amazon.com/privateca/latest/userguide/PcaWelcome.html)によってインポートまたは発行されていること

47 

48<h3 id="set-your-environment-variables">

49 環境変数を設定する

50</h3>

51 

52このページのすべてのコマンドはシェルから 4 つの値を読み込みます。`AWS_REGION`、`ACCOUNT_ID`、`VPC_ID`、および `PRIVATE_SUBNETS` です。

53 

54必要な Claude モデルを Bedrock が提供する US リージョンを選択してください。このウォークスルーはゲートウェイの組み込みモデルカタログに依存しており、これは `us.anthropic.*` 推論プロファイルに解決され、IAM ポリシーはそれらの ARN を許可します。US 以外のリージョンでは、そのジオの推論プロファイル ID を含む [`models:` ブロック](/docs/ja/claude-apps-gateway-config#models)を追加し、IAM ポリシーの ARN プレフィックスを変更して一致させてください。

55 

56VPC ID が手元にない場合は、`aws ec2 describe-vpcs` で VPC をリストアップし、その VPC のサブネットをリストアップして、異なるアベイラビリティゾーンにある 2 つのプライベートサブネットを見つけてください。

57 

58```bash theme={null}

59aws ec2 describe-subnets --filters "Name=vpc-id,Values=<your-vpc-id>" \

60 --query 'Subnets[].{ID:SubnetId,AZ:AvailabilityZone,CIDR:CidrBlock}' --output table

61```

62 

63続行する前に、4 つすべてをエクスポートしてください。

64 

65```bash theme={null}

66export AWS_REGION=us-east-1 # a US region where Bedrock serves the Claude models you need

67export ACCOUNT_ID="$(aws sts get-caller-identity --query Account --output text)"

68export VPC_ID=<your-vpc-id>

69export PRIVATE_SUBNETS="<subnet-id-a> <subnet-id-b>"

70```

71 

72<h2 id="deploy-the-gateway">

73 ゲートウェイをデプロイする

74</h2>

75 

76以下の手順は、`aws` コマンドを使用して完全なデプロイをプロビジョニングします。

77 

78<Steps>

79 <Step title="セキュリティグループを作成する">

80 3 つのセキュリティグループがトラフィックパスをチェーンします。企業ネットワークはロードバランサーに 443 で到達し、ロードバランサーはゲートウェイに 8080 で到達し、ゲートウェイは Postgres に 5432 で到達します。それ以外は到達不可能です。それらをアタッチする方法は、コンピュートトラックによって異なります。

81 

82 * ECS Fargate では、デプロイステップが `$ALB_SG` をロードバランサーにアタッチし、`$GW_SG` をサービスにアタッチします。

83 * EKS では、AWS Load Balancer Controller が ALB 用に独自のフロントエンドセキュリティグループを作成するため、`$ALB_SG` と `$GW_SG` は使用されません。デプロイステップの `inbound-cidrs` アノテーションがリスナーを企業ネットワークに制限し、データベースセキュリティグループはクラスタのセキュリティグループを `$GW_SG` の代わりに許可します。

84 

85 ```bash theme={null}

86 ALB_SG="$(aws ec2 create-security-group --group-name claude-gateway-alb \

87 --description "Claude gateway ALB" --vpc-id "$VPC_ID" \

88 --query GroupId --output text)"

89 GW_SG="$(aws ec2 create-security-group --group-name claude-gateway-svc \

90 --description "Claude gateway service" --vpc-id "$VPC_ID" \

91 --query GroupId --output text)"

92 DB_SG="$(aws ec2 create-security-group --group-name claude-gateway-db \

93 --description "Claude gateway Postgres" --vpc-id "$VPC_ID" \

94 --query GroupId --output text)"

95 

96 aws ec2 authorize-security-group-ingress --group-id "$ALB_SG" \

97 --protocol tcp --port 443 --cidr <your-corporate-cidr>

98 aws ec2 authorize-security-group-ingress --group-id "$GW_SG" \

99 --protocol tcp --port 8080 --source-group "$ALB_SG"

100 aws ec2 authorize-security-group-ingress --group-id "$DB_SG" \

101 --protocol tcp --port 5432 --source-group "$GW_SG"

102 ```

103 </Step>

104 

105 <Step title="IAM ロールを作成して使用例フォームを送信する">

106 ゲートウェイは、Bedrock で Claude モデルを呼び出す唯一の権限を持つ専用タスクロールで実行されます。[Bedrock アップストリームリファレンス](/docs/ja/claude-apps-gateway-config#amazon-bedrock)に従い、ポリシーはクロスリージョン推論プロファイル ARN と基盤となるファウンデーションモデル ARN の両方をカバーする必要があります。

107 

108 ```bash theme={null}

109 cat > bedrock-invoke.json <<EOF

110 {

111 "Version": "2012-10-17",

112 "Statement": [{

113 "Effect": "Allow",

114 "Action": ["bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream", "bedrock:CountTokens"],

115 "Resource": [

116 "arn:aws:bedrock:${AWS_REGION}:${ACCOUNT_ID}:inference-profile/us.anthropic.*",

117 "arn:aws:bedrock:*::foundation-model/anthropic.*"

118 ]

119 }]

120 }

121 EOF

122 cat > ecs-trust.json <<'EOF'

123 {

124 "Version": "2012-10-17",

125 "Statement": [{

126 "Effect": "Allow",

127 "Principal": { "Service": "ecs-tasks.amazonaws.com" },

128 "Action": "sts:AssumeRole"

129 }]

130 }

131 EOF

132 

133 aws iam create-role --role-name claude-gateway-task \

134 --assume-role-policy-document file://ecs-trust.json

135 aws iam put-role-policy --role-name claude-gateway-task \

136 --policy-name bedrock-invoke --policy-document file://bedrock-invoke.json

137 ```

138 

139 ECS には実行ロールも必要です。これは ECS エージェント自体が ECR からイメージをプルし、後で作成される Secrets Manager 値を注入するために使用します。これはゲートウェイの AWS SDK が実行時に使用するタスクロールとは別です。

140 

141 ```bash theme={null}

142 aws iam create-role --role-name claude-gateway-execution \

143 --assume-role-policy-document file://ecs-trust.json

144 aws iam attach-role-policy --role-name claude-gateway-execution \

145 --policy-arn arn:aws:iam::aws:policy/service-role/AmazonECSTaskExecutionRolePolicy

146 cat > secrets-read.json <<EOF

147 {

148 "Version": "2012-10-17",

149 "Statement": [{

150 "Effect": "Allow",

151 "Action": ["secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret"],

152 "Resource": [

153 "arn:aws:secretsmanager:${AWS_REGION}:${ACCOUNT_ID}:secret:gateway-jwt-secret-??????",

154 "arn:aws:secretsmanager:${AWS_REGION}:${ACCOUNT_ID}:secret:gateway-oidc-client-secret-??????",

155 "arn:aws:secretsmanager:${AWS_REGION}:${ACCOUNT_ID}:secret:gateway-postgres-url-??????"

156 ]

157 }]

158 }

159 EOF

160 aws iam put-role-policy --role-name claude-gateway-execution \

161 --policy-name read-gateway-secrets --policy-document file://secrets-read.json

162 ```

163 

164 ポリシーは、ベアの `gateway-*` ワイルドカードではなく、シークレットごとに 1 つの ARN を指定します。共有アカウントでは、ベアのワイルドカードは無関係なシークレットにも一致します。末尾の `-??????` は、Secrets Manager がすべてのシークレットの ARN に追加する 6 文字のランダムサフィックスと正確に一致します。末尾の `-*` はプレーンプレフィックスグロブであり、`gateway-postgres-url-prod` などのより長い名前にも一致します。

165 

166 IAM ポリシーはゲートウェイに Bedrock を呼び出す権限を付与し、Bedrock は商用リージョンでデフォルトでモデルアクセスを有効にします。残りのアカウントレベルのゲートは Anthropic の 1 回限りの使用例フォームです。アカウント内の誰もそれを送信していない場合は、[Amazon Bedrock コンソール](https://console.aws.amazon.com/bedrock/)を開き、モデルカタログから Anthropic モデルを選択して、フォームを完成させます。アクセスは送信直後に付与されます。[Claude Code on Amazon Bedrock](/docs/ja/amazon-bedrock#1-submit-use-case-details)で AWS Organizations フォームと送信者が必要な IAM 権限を参照してください。

167 

168 EKS トラックは、2 つの ECS ロールの代わりに IRSA ロール上で両方のポリシードキュメントを再利用します。デプロイステップを参照してください。

169 </Step>

170 

171 <Step title="Amazon RDS for PostgreSQL をプロビジョニングする">

172 インスタンスはプライベートサブネットで実行され、パブリックアドレスがなく、ストレージ暗号化がオンです。エンジンバージョンは Postgres 16 に固定されており、ゲートウェイがサポートする PostgreSQL 14 の下限を満たし、以下のパラメータグループファミリーがインスタンスが実行するエンジンと一致することを保証します。

173 

174 まず、プライベートサブネットにデータベースを配置するサブネットグループと、`rds.force_ssl=1` を使用してサーバーがプレーンテキスト接続を拒否するパラメータグループを作成します。エンジンバージョンは 1 回固定されます。パラメータグループのファミリーはインスタンスが実行するエンジンのメジャーバージョンと一致する必要があるためです。

175 

176 ```bash theme={null}

177 aws rds create-db-subnet-group --db-subnet-group-name claude-gateway-db \

178 --db-subnet-group-description "Claude gateway" --subnet-ids $PRIVATE_SUBNETS

179 

180 PG_VERSION=16

181 PG_FAMILY="postgres${PG_VERSION}"

182 aws rds create-db-parameter-group --db-parameter-group-name claude-gateway-db \

183 --db-parameter-group-family "$PG_FAMILY" \

184 --description "Claude gateway - require TLS on every connection"

185 aws rds modify-db-parameter-group --db-parameter-group-name claude-gateway-db \

186 --parameters "ParameterName=rds.force_ssl,ParameterValue=1,ApplyMethod=immediate"

187 ```

188 

189 次に、生成されたマスターパスワードでインスタンスを作成します。

190 

191 ```bash theme={null}

192 PGPASS="$(openssl rand -hex 24)"

193 aws rds create-db-instance --db-instance-identifier claude-gateway-db \

194 --engine postgres --engine-version "$PG_VERSION" \

195 --db-instance-class db.t4g.micro \

196 --allocated-storage 20 --db-name claude_gateway \

197 --master-username gateway --master-user-password "$PGPASS" \

198 --db-subnet-group-name claude-gateway-db \

199 --db-parameter-group-name claude-gateway-db \

200 --vpc-security-group-ids "$DB_SG" \

201 --no-publicly-accessible --storage-encrypted

202 ```

203 

204 リテラル `--master-user-password` 引数は、コマンド実行中のプロセステーブルおよび監査/EDR ログに表示されます。これは、シークレットステップのメモがカバーする同じ露出です。共有またはモニタリングされたホストでは、代わりに `0600` ファイルを介して `--cli-input-json` でパスワードを渡してください。バンドルの `setup.sh` は、`0600` 一時ファイルを `--cli-input-json` に渡すことで、同じ方法でシークレット値をプロセス argv から保ちます。

205 

206 インスタンスが起動するのを待ちます。これには数分かかる場合があります。その後、プライベートエンドポイントを読み取り、ゲートウェイが使用する接続文字列を組み立てます。

207 

208 ```bash theme={null}

209 aws rds wait db-instance-available --db-instance-identifier claude-gateway-db

210 DB_HOST="$(aws rds describe-db-instances --db-instance-identifier claude-gateway-db \

211 --query 'DBInstances[0].Endpoint.Address' --output text)"

212 GATEWAY_POSTGRES_URL="postgres://gateway:${PGPASS}@${DB_HOST}:5432/claude_gateway?sslmode=verify-full"

213 ```

214 

215 `sslmode=verify-full` は、ゲートウェイが RDS サーバー証明書のチェーンとホスト名を検証し、暗号化するだけでなく検証することを確認します。トラストアンカーは [AWS RDS 証明書バンドル](https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem)です。これは、以下のイメージビルドステップで `/etc/claude/rds-global-bundle.pem` にコピーされ、`NODE_EXTRA_CA_CERTS` を介して信頼されます。libpq スタイルの `sslrootcert=` パラメータを URL に追加しないでください。ゲートウェイのドライバーはクエリ文字列から `sslmode` のみを読み取り、`sslrootcert` を Postgres スタートアップパラメータとして転送します。サーバーはこれを拒否します。

216 

217 ECS サービスまたは EKS ポッドはこの VPC で実行され、インスタンスのプライベートエンドポイントに到達でき、`claude-gateway-db` セキュリティグループはゲートウェイのセキュリティグループのみを許可します。

218 </Step>

219 

220 <Step title="gateway.yaml を書き込む">

221 `upstreams` ブロックは `auth: {}` で Bedrock を指します。ゲートウェイは ECS のタスクロールまたは EKS の IRSA ロールから AWS デフォルト認証情報チェーンを介して認証します。すべてのフィールドについては、[設定リファレンス](/docs/ja/claude-apps-gateway-config)を参照してください。

222 

223 2 つの `listen` フィールドは、ゲートウェイの前にあるものに依存します。

224 

225 * `public_url`:外部 `https://` オリジン。ロードバランサーの背後で必須です。[`listen` リファレンス](/docs/ja/claude-apps-gateway-config#listen)を参照してください。ゲートウェイは IdP `redirect_uri` と検出ドキュメントをこの値からのみ構築し、`X-Forwarded-*` ヘッダーからは構築しません。

226 * `trusted_proxies`:フロントエンドのソース範囲。ゲートウェイは TCP ピアがこのリストにある場合にのみ `X-Forwarded-For` を尊重し、信頼できるホップを過ぎてチェーンをウォークします。IP ごとのサインイン率制限と監査イベントは、ロードバランサーの代わりに開発者 IP を記録します。

227 

228 両方のトラックでフロントエンドは内部 ALB です。直接作成されるか、AWS Load Balancer Controller によって作成されるかは関係ありません。ALB のノードはアタッチされたサブネットからアドレスを取得するため、`trusted_proxies` をそれらのサブネットの CIDR に設定します。これはそれらのサブネット内のすべてのホストをプロキシとして信頼します。ALB のイングレスソース(企業 CIDR)がそれらと重複しないようにし、`X-Forwarded-For` を介してクライアント IP をスプーフできる信頼できないワークロードとサブネットを共有しないでください。

229 

230 ALB のクライアントポート保存属性 `routing.http.xff_client_port.enabled` は、どちらの設定でも保つことができます。オンの場合、ALB はクライアントを `203.0.113.7:54321` または `[2001:db8::1]:54321` として書き込み、ゲートウェイはポートをドロップして両方を読み取ります。

231 

232 ```yaml gateway.yaml theme={null}

233 listen:

234 host: 0.0.0.0

235 port: 8080

236 public_url: https://claude-gateway.internal.example.com

237 trusted_proxies: [<your-alb-subnet-cidrs>]

238 

239 oidc:

240 issuer: https://example.okta.com

241 client_id: 0oa1example2

242 client_secret: ${OIDC_CLIENT_SECRET} # EKS: ${file:/secrets/oidc-client-secret}

243 allowed_email_domains: [example.com]

244 # Okta org 認可サーバーは、メールとグループを省略した薄い id_token を返します。

245 # ゲートウェイは /userinfo からそれらを入力します。

246 userinfo_fallback: true

247 # Okta は、`groups` スコープがリクエストされ、アプリのグループクレーム

248 # フィルターがそれらを許可する場合にのみグループを発行します。

249 scopes: [openid, profile, email, offline_access, groups]

250 

251 session:

252 jwt_secret: ${GATEWAY_JWT_SECRET} # EKS: ${file:/secrets/jwt-secret}

253 ttl_hours: 8 # デプロビジョニングレイテンシーを制限します。より厳密な

254 # 取り消しのために 1 に向かって下げます

255 

256 store:

257 postgres_url: ${GATEWAY_POSTGRES_URL} # EKS: ${file:/secrets/postgres-url}

258 

259 upstreams:

260 - provider: bedrock

261 region: <your-region> # IAM ポリシーの ARN がそれをカバーするように $AWS_REGION と一致させます

262 auth: {} # AWS デフォルト認証情報チェーン:

263 # ECS タスクロール、または EKS の IRSA

264 ```

265 

266 <Note>

267 `oidc` ブロックのみが Okta 固有です。Microsoft Entra ID を代わりに使用するには、`issuer` を `https://login.microsoftonline.com/<tenant-id>/v2.0` に設定し、`userinfo_fallback` と `groups` スコープをドロップし、Entra がグループ名ではなくグループ Object ID を発行することに注意してください。[`managed.policies`](/docs/ja/claude-apps-gateway-config#managed)は GUID で一致するか、`oidc.groups_claim: roles` を使用した App Roles で一致する必要があります。[ID プロバイダーセットアップ](/docs/ja/claude-apps-gateway-deploy#identity-provider-setup)を参照してください。

268 </Note>

269 </Step>

270 

271 <Step title="AWS Secrets Manager にシークレットを保存する">

272 3 つのシークレットを作成します。IAM ステップからの実行ロールはすでにそれらを読み取ることができます。

273 

274 ```bash theme={null}

275 aws secretsmanager create-secret --name gateway-jwt-secret \

276 --secret-string "$(openssl rand -base64 32)"

277 aws secretsmanager create-secret --name gateway-oidc-client-secret \

278 --secret-string '<your-okta-client-secret>'

279 aws secretsmanager create-secret --name gateway-postgres-url \

280 --secret-string "$GATEWAY_POSTGRES_URL"

281 ```

282 

283 各呼び出しが出力する ARN に注意してください。ECS タスク定義は ARN でシークレットを参照します。

284 

285 <Note>

286 リテラル `--secret-string` 引数は、各コマンド実行中のプロセステーブルおよび監査/EDR ログに表示されます。共有またはモニタリングされたホストでは、値を `0600` ファイルに入れ、代わりに `--secret-string file://<path>` を渡してください。バンドルの `setup.sh` は、`0600` 一時ファイルを `--cli-input-json` に渡すことで、同じ方法でシークレット値をプロセス argv から保ちます。

287 </Note>

288 

289 シークレットとは異なり、`gateway.yaml` 自体にはシークレット値が含まれていません。すべての認証情報は [`${VAR}` または `${file:...}` 展開](/docs/ja/claude-apps-gateway-config#secret-expansion)を通じてブート時に解決されるためです。すべてがコンテナに到達する方法はトラックによって異なります。

290 

291 * ECS では、次のステップのビルドが `gateway.yaml` をイメージにコピーして `/etc/claude/gateway.yaml` に配置し、タスク定義は 3 つのシークレットを環境変数として `secrets` フィールドを介して注入するため、YAML は `${GATEWAY_JWT_SECRET}`、`${OIDC_CLIENT_SECRET}`、および `${GATEWAY_POSTGRES_URL}` を参照します。

292 * EKS では、`gateway.yaml` を ConfigMap からマウントし、シークレットを `/secrets` のファイルとしてマウントし、`${file:/secrets/...}` として参照します。Kubernetes Secrets を External Secrets Operator または Secrets Store CSI ドライバーの AWS プロバイダーで Secrets Manager からソースするか、`kubectl` で直接作成します。

293 </Step>

294 

295 <Step title="イメージを構築して Amazon ECR にプッシュする">

296 [コンテナイメージ要件](/docs/ja/claude-apps-gateway-deploy#container-image)に従ってイメージを構築し、`linux-x64` glibc バイナリをビルドコンテキストの `./claude` に配置します。これらの要件に従って独自の Dockerfile を作成するか、バンドルの [`Dockerfile`](https://github.com/anthropics/claude-code/blob/main/examples/gateway/aws/Dockerfile)から始めます。これは、前のステップから入力された `gateway.yaml` をイメージにコピーして `/etc/claude/gateway.yaml` に配置します。ECS では、その埋め込みコピーは設定がコンテナに到達する方法です。これが、ファイルが書き込まれた後にビルドが行われる理由です。EKS トラックは代わりにデプロイ時に ConfigMap から `gateway.yaml` をマウントするため、埋め込みコピーはそこで使用されません。

297 

298 イメージは、接続文字列の `sslmode=verify-full` のトラストアンカーとして AWS RDS 証明書バンドルも搭載しているため、最初にビルドコンテキストにダウンロードします。AWS はバンドルをローテーションします(新しい地域の CA が追加されます)。ため、チェックサムをピンするか、コミットするのではなく、ビルドごとにダウンロードします。

299 

300 ```bash theme={null}

301 curl -fL --proto '=https' -o rds-global-bundle.pem \

302 https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem

303 ```

304 

305 コンテナイメージ要件はバンドルをカバーしていないため、独自の Dockerfile を作成する場合は、それをコピーして信頼する 2 行を追加してください。バンドルの `Dockerfile` にはすでに両方が含まれています。

306 

307 ```dockerfile theme={null}

308 COPY rds-global-bundle.pem /etc/claude/rds-global-bundle.pem

309 ENV NODE_EXTRA_CA_CERTS=/etc/claude/rds-global-bundle.pem

310 ```

311 

312 ECR リポジトリを作成し、Docker をそれにサインインします。イミュータブルタグは、デプロイステップがピンする `<version>` タグが後で別のイメージに静かに再ポイントされることはできないことを意味します。

313 

314 ```bash theme={null}

315 aws ecr create-repository --repository-name claude-gateway \

316 --image-tag-mutability IMMUTABLE \

317 --image-scanning-configuration scanOnPush=true

318 aws ecr get-login-password --region "$AWS_REGION" \

319 | docker login --username AWS --password-stdin \

320 "${ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com"

321 ```

322 

323 イメージを構築してプッシュします。以下のタスク定義は `linux/amd64` を実行するため、プラットフォームはここで一致する必要があります。Fargate on ARM64(Graviton)の場合は、`linux-arm64` バイナリで `linux/arm64` を構築し、代わりに `cpuArchitecture` を `ARM64` に設定します。

324 

325 ```bash theme={null}

326 docker build --platform=linux/amd64 \

327 -t "${ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com/claude-gateway:<version>" .

328 docker push "${ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com/claude-gateway:<version>"

329 ```

330 </Step>

331 

332 <Step title="デプロイ">

333 <Tabs>

334 <Tab title="ECS Fargate">

335 クラスターと、ゲートウェイの stderr 用のロググループを作成します。stderr は監査イベントと運用ログの両方を搭載しています。保持は別の呼び出しであり、保持がない場合、CloudWatch はログを永遠に保ちます。90 日を監査保持ポリシーと調整します。

336 

337 ```bash theme={null}

338 aws ecs create-cluster --cluster-name claude-gateway

339 aws logs create-log-group --log-group-name /ecs/claude-gateway

340 aws logs put-retention-policy --log-group-name /ecs/claude-gateway \

341 --retention-in-days 90

342 ```

343 

344 タスク定義を書き込みます。タスクロールは Bedrock 権限を搭載し、実行ロールはシークレットを注入します。Secrets Manager ステップからシークレット ARN を使用します。

345 

346 ```json claude-gateway-task.json theme={null}

347 {

348 "family": "claude-gateway",

349 "networkMode": "awsvpc",

350 "requiresCompatibilities": ["FARGATE"],

351 "cpu": "1024",

352 "memory": "2048",

353 "runtimePlatform": { "cpuArchitecture": "X86_64", "operatingSystemFamily": "LINUX" },

354 "executionRoleArn": "arn:aws:iam::<account-id>:role/claude-gateway-execution",

355 "taskRoleArn": "arn:aws:iam::<account-id>:role/claude-gateway-task",

356 "containerDefinitions": [

357 {

358 "name": "gateway",

359 "image": "<account-id>.dkr.ecr.<region>.amazonaws.com/claude-gateway:<version>",

360 "portMappings": [{ "containerPort": 8080 }],

361 "secrets": [

362 { "name": "GATEWAY_JWT_SECRET", "valueFrom": "<gateway-jwt-secret ARN>" },

363 { "name": "OIDC_CLIENT_SECRET", "valueFrom": "<gateway-oidc-client-secret ARN>" },

364 { "name": "GATEWAY_POSTGRES_URL", "valueFrom": "<gateway-postgres-url ARN>" }

365 ],

366 "logConfiguration": {

367 "logDriver": "awslogs",

368 "options": {

369 "awslogs-group": "/ecs/claude-gateway",

370 "awslogs-region": "<region>",

371 "awslogs-stream-prefix": "gateway"

372 }

373 }

374 }

375 ]

376 }

377 ```

378 

379 それを登録します。

380 

381 ```bash theme={null}

382 aws ecs register-task-definition --cli-input-json file://claude-gateway-task.json

383 ```

384 

385 ゲートウェイをヘルスチェックするターゲットグループを持つ内部 ALB を前に配置します。`--ip-address-type ipv4` は重要です。内部デュアルスタック ALB はパブリック範囲の AAAA レコードを公開し、`/login` プライベートネットワークチェックはそれらを拒否します。

386 

387 ```bash theme={null}

388 ALB_ARN="$(aws elbv2 create-load-balancer --name claude-gateway \

389 --scheme internal --type application --ip-address-type ipv4 \

390 --subnets $PRIVATE_SUBNETS --security-groups "$ALB_SG" \

391 --query 'LoadBalancers[0].LoadBalancerArn' --output text)"

392 

393 TG_ARN="$(aws elbv2 create-target-group --name claude-gateway \

394 --protocol HTTP --port 8080 --vpc-id "$VPC_ID" --target-type ip \

395 --health-check-path /readyz \

396 --query 'TargetGroups[0].TargetGroupArn' --output text)"

397 ```

398 

399 HTTPS リスナーを追加します。`--ssl-policy` は最新の TLS フロアをピンします。これを省略すると、レガシー `ELBSecurityPolicy-2016-08` デフォルトにフォールバックします。これは TLS 1.0/1.1 をまだ受け入れます。

400 

401 ALB はデフォルトで 60 秒間データがない接続を閉じます。ゲートウェイのキープアライブピングはストリームをそのデフォルト内に保つため、タイムアウトを上げるとピングケイデンスの上にマージンを追加します。[トラブルシューティング](#troubleshooting)行はドロップされたストリームのメカニズムと古いゲートウェイをカバーしています。以下のコマンドはリスナーを追加し、タイムアウトを上げます。

402 

403 ```bash theme={null}

404 aws elbv2 create-listener --load-balancer-arn "$ALB_ARN" \

405 --protocol HTTPS --port 443 \

406 --ssl-policy ELBSecurityPolicy-TLS13-1-2-2021-06 \

407 --certificates CertificateArn=<your-acm-certificate-arn> \

408 --default-actions Type=forward,TargetGroupArn="$TG_ARN"

409 

410 aws elbv2 modify-load-balancer-attributes --load-balancer-arn "$ALB_ARN" \

411 --attributes Key=idle_timeout.timeout_seconds,Value=3600

412 ```

413 

414 サービスを作成します。デプロイメント回路ブレーカーは、タスクが失敗し続けるデプロイメント(不正なイメージまたはブート不可能な設定から)を、失敗するタスクを永遠に再起動する代わりに、最後の安定した状態にロールバックします。

415 

416 ```bash theme={null}

417 aws ecs create-service --cluster claude-gateway --service-name claude-gateway \

418 --task-definition claude-gateway --desired-count 1 --launch-type FARGATE \

419 --deployment-configuration "deploymentCircuitBreaker={enable=true,rollback=true}" \

420 --health-check-grace-period-seconds 60 \

421 --network-configuration "awsvpcConfiguration={subnets=[$(echo $PRIVATE_SUBNETS | tr ' ' ',')],securityGroups=[$GW_SG],assignPublicIp=DISABLED}" \

422 --load-balancers "targetGroupArn=$TG_ARN,containerName=gateway,containerPort=8080"

423 ```

424 

425 60 秒のグレースピリオドは、コールドタスクがイメージをプルし、ストアに接続し、ECS が失敗をデプロイメントに対してカウントし始める前に最初のヘルスチェックに答える時間を与えます。ターゲットグループの `GET /readyz` のヘルスチェックはストアが到達可能であることを検証するため、Postgres に到達できないタスクはローテーションに入りません。[停止動作](/docs/ja/claude-apps-gateway-deploy#outage-behavior)でトレードオフと `/healthz` 代替案を参照してください。

426 

427 タスクはパブリック IP なしのプライベートサブネットで実行されるため、すべてのエグレス(Bedrock、IdP、Secrets Manager、ECR、CloudWatch Logs へ)は NAT ゲートウェイを通過します。Bedrock トラフィックをパブリックパスから保つには、`bedrock-runtime` インターフェース VPC エンドポイントを作成し、アップストリームの `base_url` をそれを指すように設定します。[Bedrock アップストリームリファレンス](/docs/ja/claude-apps-gateway-config#amazon-bedrock)に示されているように。IdP はまだインターネットエグレスが必要です。

428 

429 開発者にプライベートに解決可能なホスト名を与えることで完了します。Route 53 プライベートホストゾーンで、ゲートウェイの内部 DNS 名を ALB にエイリアスし、`listen.public_url` をそのホスト名に設定します。ALB 自体の `*.elb.amazonaws.com` 名は内部 ALB のプライベートアドレスに解決されますが、ACM 証明書を搭載できないため、独自の名前を使用します。

430 

431 最初のサインイン前に OAuth クライアントの認可リダイレクト URI を `<public_url>/oauth/callback` に更新します。`public_url` を変更した後、新しいタグの下でイメージを再構築してプッシュし、新しいタスク定義リビジョンを登録し、再デプロイします。ECS では、設定はイメージの埋め込み `gateway.yaml` に存在し、ゲートウェイはその設定からのみパブリックオリジンを構築し、`X-Forwarded-Host` と `X-Forwarded-Proto` を無視します。`X-Forwarded-For` は、`listen.trusted_proxies` が設定されている場合にのみクライアント IP に対して尊重されます。

432 </Tab>

433 

434 <Tab title="EKS">

435 このトラックには、ローカルにインストールされた `kubectl` と `eksctl` が必要です。また、IAM OIDC プロバイダーと AWS Load Balancer Controller がインストールされた既存の EKS クラスターが必要です。クラスターは `$VPC_ID` 上にある必要があります。ポッドが RDS プライベートエンドポイントに到達でき、`claude-gateway-db` セキュリティグループは `$GW_SG` の代わりにクラスタのポッドまたはノードセキュリティグループを許可する必要があります。

436 

437 EKS では、ゲートウェイは ECS ロールではなく IRSA を通じて Bedrock 認証情報を取得します。IAM ステップからの `ecs-tasks.amazonaws.com` トラストポリシーはここに適用されません。IRSA には、クラスタの OIDC プロバイダーにフェデレートするトラストポリシーを持つロールが必要です。`system:serviceaccount:claude-gateway:gateway` にスコープされます。`eksctl create iamserviceaccount` は、そのロールを作成し、ポリシーをアタッチし、Kubernetes サービスアカウントに 1 つのステップでロール ARN に注釈を付けます。IAM ステップからの 2 つのポリシードキュメントをマネージドポリシーに変換します。それはアタッチできます。

438 

439 ```bash theme={null}

440 BEDROCK_POLICY_ARN="$(aws iam create-policy --policy-name claude-gateway-bedrock-invoke \

441 --policy-document file://bedrock-invoke.json --query Policy.Arn --output text)"

442 SECRETS_POLICY_ARN="$(aws iam create-policy --policy-name claude-gateway-secrets-read \

443 --policy-document file://secrets-read.json --query Policy.Arn --output text)"

444 

445 kubectl create namespace claude-gateway

446 eksctl create iamserviceaccount --cluster <your-cluster> --region "$AWS_REGION" \

447 --namespace claude-gateway --name gateway --role-name claude-gateway \

448 --attach-policy-arn "$BEDROCK_POLICY_ARN" \

449 --attach-policy-arn "$SECRETS_POLICY_ARN" \

450 --approve

451 ```

452 

453 シークレットポリシーは、Secrets Store CSI ドライバーの AWS プロバイダーがマウントするポッドのサービスアカウントを使用して行うように、ポッドが Secrets Manager 自体を読み取る場合にのみ必要です。別の方法で Kubernetes Secrets を作成する場合はドロップします。プロバイダーはポリシーの両方のアクションが必要です。ローテーションされたシークレットを調整するときに `DescribeSecret` を呼び出すため、`GetSecretValue` のみの付与はマウントされますが、最初のデプロイでローテーションの取得を停止します。

454 

455 [Kubernetes デプロイメント](/docs/ja/claude-apps-gateway-deploy#kubernetes)で説明されているように、ゲートウェイを標準 Deployment、Service、および Ingress としてデプロイします。

456 

457 * `serviceAccountName: gateway`

458 * ConfigMap からマウントされた `gateway.yaml` と `/secrets` にマウントされたシークレット

459 * `GET /readyz` を指すレディネスプローブ

460 

461 フロントエンドの場合、AWS Load Balancer Controller によって管理される Ingress は内部 ALB をプロビジョニングします。以下でアノテーションを付けます。

462 

463 * `alb.ingress.kubernetes.io/scheme: internal` と `alb.ingress.kubernetes.io/target-type: ip`

464 * `alb.ingress.kubernetes.io/ip-address-type: ipv4`。パブリック範囲の AAAA レコードが `/login` [プライベートネットワークチェック](/docs/ja/claude-apps-gateway#prerequisites)に公開されないようにするため。拒否します

465 * `alb.ingress.kubernetes.io/inbound-cidrs: <your-corporate-cidr>`。コントローラー管理のフロントエンドセキュリティグループが `0.0.0.0/0` デフォルトの代わりに企業ネットワークのみを許可するようにします

466 * `alb.ingress.kubernetes.io/certificate-arn` と ACM 証明書

467 * `alb.ingress.kubernetes.io/ssl-policy: ELBSecurityPolicy-TLS13-1-2-2021-06`。リスナーが TLS 1.0 と 1.1 を受け入れるレガシーデフォルトポリシーにフォールバックしないようにするため

468 * `alb.ingress.kubernetes.io/load-balancer-attributes: idle_timeout.timeout_seconds=3600`。ゲートウェイのストリーミングキープアライブの上のマージン。[トラブルシューティング](#troubleshooting)を参照してください

469 

470 IRSA では、AWS SDK はプロジェクトされたサービスアカウントトークンを読み取り、AWS STS と交換するため、ポッドは EC2 インスタンスメタデータサービスを必要としません。エグレス NetworkPolicy は `169.254.169.254` をゲートウェイポッドに対してブロックする場合があります。以下の[トラブルシューティング](#troubleshooting)のノードホップリミット問題は、IRSA をスキップし、ノードインスタンスロールに依存するクラスターにのみ適用されます。

471 </Tab>

472 </Tabs>

473 </Step>

474 

475 <Step title="ゲートウェイ URL を開発者マシンにプッシュする">

476 ゲートウェイは実行されていますが、開発者は `/login` からそれに到達できません。ゲートウェイ URL がマシンに存在するまで。MDM を介して各デバイスにデプロイする[マネージド設定ファイル](/docs/ja/claude-apps-gateway#set-the-gateway-url)で `forceLoginMethod` と `forceLoginGatewayUrl` を設定します。ログインピッカーにはゲートウェイオプションがなく、開発者が手動で選択することはできません。

477 </Step>

478</Steps>

479 

480<h2 id="terraform-reference">

481 Terraform リファレンス

482</h2>

483 

484[`examples/gateway/aws`](https://github.com/anthropics/claude-code/tree/main/examples/gateway/aws) の付属バンドルは、このページをコードとしてパッケージ化しています。

485 

486* **`setup.sh`** は、上記のプロビジョニング手順を ECS Fargate トラックで同じ `aws` コマンドでスクリプト化しています。べき等性があります。既存のリソースは検出されてスキップされるため、再実行しても安全です。また、デフォルト値は環境変数で上書きできます。Okta OIDC クライアントシークレットと ACM 証明書は自分で作成する必要があります。それらがない場合、実行は ECS/ALB デプロイをスキップし、不足している入力を名前付けし、`create-secret` コマンドを出力します。両方を作成して再実行してください。Bedrock ユースケースフォームと Route 53 エイリアスは、自動的に実行されるのではなく、次のステップとして出力されます。クライアント MDM プッシュはこのページからの手動ステップのままです。

487* **`gateway.yaml.example`** は gateway.yaml ステップの設定テンプレートで、オプションキーはコメントアウトされた状態で含まれています。これを `gateway.yaml` にコピーし、ビルド前にすべての `REPLACE_ME` を置き換えてください。

488* **`Dockerfile`** は、プリビルドされた `linux-x64` バイナリからランタイムイメージをビルドし、入力済みの `gateway.yaml` を `/etc/claude/gateway.yaml` にコピーします。また、ストアの `sslmode=verify-full` をアンカーする AWS RDS 証明書バンドルもコピーします。`setup.sh` は、ビルドコンテキストにまだ存在しない場合にのみバンドルをダウンロードします。ファイルを削除して新しいタグで再ビルドすると、AWS CA ローテーションを取得できます。設定ファイルはシークレット値を保持しません。すべての認証情報はブート時に `${VAR}` 展開を通じて解決されるためです。したがって、設定ファイルの編集は新しいタグでの再ビルドを意味します。`setup.sh` はファイルのハッシュでイメージにタグを付けることでこれを自動化します。

489* **`terraform/`** は、同じ ECS Fargate スコープを宣言的にプロビジョニングします。セキュリティグループ、IAM ロール、ECR リポジトリ、RDS インスタンス、Secrets Manager シークレット、および内部 ALB の背後にある ECS サービスです。VPC とプライベートサブネットは前提条件のままで、変数として渡されます。Terraform は ECR リポジトリを作成しますがイメージはビルドしません。サービス定義はイメージを参照するため、apply は 2 パスです。リポジトリの対象 apply、その後ビルドとプッシュ、その後フル apply です。バンドルの `terraform/README.md` は変数、リモート状態、およびティアダウンについて説明しています。

490 

491このページと同様に、バンドルはサポートされている本番環境デプロイメントではなく、カスタマー管理インフラストラクチャの動作例です。それに依存する前に、自分の環境に合わせてレビューして適応させてください。

492 

493<h2 id="troubleshooting">

494 トラブルシューティング

495</h2>

496 

497ゲートウェイのブートおよびログインエラーについては、プラットフォーム非依存の[トラブルシューティングテーブル](/docs/ja/claude-apps-gateway-deploy#troubleshooting)を参照してください。以下のエントリは AWS に固有です。

498 

499| 症状 | 原因 | 修正 |

500| ------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

501| CLI `/login`: `Gateway hosts must be on your organization's private network; <host> resolves to the public (or unrecognized) address <ip>` | ゲートウェイ名が少なくとも 1 つのパブリックアドレスに解決されます。デュアルスタック内部 ALB はパブリック範囲の AAAA レコードを公開し、[プライベートネットワークチェック](/docs/ja/claude-apps-gateway#prerequisites)は解決されたすべてのアドレスがプライベートであることを要求します | ALB を `--ip-address-type ipv4` で作成するか、パブリック AAAA レコードのない別の内部専用 DNS 名を提供してください |

502| すべての Bedrock リクエストが 502 を返す。ログに `Could not load credentials from any providers` が表示される | タスクは ECS EC2 起動タイプでタスクロールなしで実行されるか、ポッドは IRSA なしで EKS ノードで実行されるため、認証情報はインスタンスメタデータから取得されます。IMDSv2 のデフォルトホップリミット 1 はコンテナ内で停止します。このページの両方のトラック(Fargate タスクロールと IRSA)はインスタンスメタデータを使用しません | タスクロールと IRSA を優先してください。インスタンス認証情報が避けられない場合は、`aws ec2 modify-instance-metadata-options --instance-id <id> --http-put-response-hop-limit 2` でホップリミットを上げてください。[プラットフォーム非依存テーブル](/docs/ja/claude-apps-gateway-deploy#troubleshooting)はトレードオフをカバーしています |

503| Bedrock リクエストが `403 AccessDeniedException` を返す | アカウントが Anthropic のワンタイム使用ケースフォームを送信していない、アカウントの最初の呼び出しで開始される自動 AWS Marketplace サブスクリプションがまだ完了していない、またはタスクロールのポリシーに推論プロファイルまたは基盤モデル ARN が不足している | Bedrock コンソールのモデルカタログから使用ケースフォームを送信してください。フォームが送信されたばかりの場合、またはこれがアカウントの最初の呼び出しの場合は、数分後に再試行してください。`bedrock:InvokeModel` と `bedrock:InvokeModelWithResponseStream` を両方の ARN ファミリーに付与してください。 |

504| Bedrock がオンデマンドスループットがサポートされていないと言う `ValidationException` を返す | カスタム `models:` エントリが、リージョンが推論プロファイルを通じてのみ提供する基盤モデル ID にマップされている | モデルをクロスリージョン推論プロファイル ID(`us.anthropic.*`)にマップしてください。組み込みカタログはすでにこれを行っています |

505| ECS タスクがゲートウェイがログに何も出力する前に `ResourceInitializationError` で停止する | 実行ロールが Secrets Manager シークレットを読み取ることができない、またはプライベートサブネットが Secrets Manager または ECR へのパスを持たない | 実行ロールに 3 つの `gateway-` シークレット ARN に対する `secretsmanager:GetSecretValue` を付与し、NAT ゲートウェイ経由でエグレスを提供するか、NAT ゲートウェイなしで Secrets Manager、ECR、CloudWatch Logs のインターフェースエンドポイント(`awslogs` ドライバーが同じステージで必要とする)と S3 ゲートウェイエンドポイントを提供してください |

506| ゲートウェイブートが Postgres 接続タイムアウトエラーで終了する | データベースセキュリティグループがゲートウェイのセキュリティグループを 5432 で許可していない、またはサービスがデータベースの VPC 外で実行されている。ストアは 5 秒後に待機を停止します | データベースのセキュリティグループでゲートウェイのセキュリティグループから 5432 を許可し、サービスを DB サブネットグループと同じ VPC で実行してください |

507| ゲートウェイブートが Postgres TLS 証明書検証エラーで終了する | 接続文字列が `sslmode=verify-full` を設定しているが、イメージが RDS CA バンドルを信頼していない。バンドルがイメージにコピーされていない、または `NODE_EXTRA_CA_CERTS` がそれを指していない | ビルドステップの 2 つの Dockerfile 行を追加してバンドルをコピーし、`NODE_EXTRA_CA_CERTS` を設定してから、リビルドして新しいタグで プッシュし、再デプロイしてください |

508| ストリーミング応答が静止期間後にストリーム途中でドロップする | v2.1.229 より前のゲートウェイが Bedrock または AWS 上の Claude Platform 上流で、上流が静止している間(例えば、ストリーム出力のない拡張思考中)は何も送信しません。ALB はデフォルトで 60 秒間データがない場合に接続を閉じるため、そのギャップでストリームを切断します。v2.1.229 以降のゲートウェイはそのタイムアウト下で静止したストリームを保持します。これらの上流では、ゲートウェイはストリームデータがない状態で約 15 秒経過すると SSE `ping` イベントを 1 回発行し、Anthropic API 上流ではゲートウェイは API 自体のピングをリレーします | ゲートウェイを v2.1.229 以降に更新するか、`idle_timeout.timeout_seconds` 属性を `3600` に設定してください。`modify-load-balancer-attributes` または EKS の `load-balancer-attributes` Ingress アノテーション経由で設定します |

509 

510<h2 id="telemetry">

511 テレメトリ

512</h2>

513 

514ゲートウェイは、マシンごとの OTEL 設定なしで開発者ごとの使用メトリクスを提供します。Claude Code は OpenTelemetry(OTLP)メトリクス、ログ、およびオプトインのトレースを発行します。[使用状況の監視](/docs/ja/monitoring-usage)は CLI が報告するすべてをカバーしています。ゲートウェイセッションでは、CLI は各エクスポートに認証された IdP ID 属性 `user.id`、`user.email`、および `user.groups` でスタンプを付けるため、使用状況は `OTEL_RESOURCE_ATTRIBUTES` 配管なしで開発者ごとにロールアップされます。

515 

516ゲートウェイ自体は認証された OTLP リレーです。[`telemetry.forward_to`](/docs/ja/claude-apps-gateway-config#telemetry) を `listen.public_url` と一緒に設定し、OTEL エクスポーター設定をすべての接続されたクライアントにプッシュし、OTLP トラフィックを逐語的にリストするすべての宛先に転送します。各宛先はメトリクス、ログ、およびトレースを独立して選択し、デフォルトはメトリクスのみです。[`telemetry` リファレンス](/docs/ja/claude-apps-gateway-config#telemetry)を参照してください。シグナルごとのフィールドとそれらの感度トレードオフについて。ゲートウェイはバッファ、集約、またはテレメトリを保存しないため、データが到達する場所は完全にコレクターのエクスポーター設定です。

517 

518クライアントテレメトリはデフォルトでオフです。`telemetry.forward_to` を設定することは、接続された開発者のためにそれをオンにするものです。各インタラクティブクライアントは、[設定リファレンス](/docs/ja/claude-apps-gateway-config#telemetry)で説明されているように、プッシュされた設定の 1 回限りのセキュリティ承認ダイアログを表示します。AWS では、各シグナルは次のように宛先にマップされます。

519 

520<h3 id="client-metrics-logs-and-traces">

521 クライアントメトリクス、ログ、およびトレース

522</h3>

523 

524`telemetry.forward_to` を OpenTelemetry コレクター([AWS Distro for OpenTelemetry(ADOT)コレクター](https://aws-otel.github.io/)など)に指し、Amazon CloudWatch、Amazon Managed Service for Prometheus、または任意の OTLP バックエンドにエクスポートします。

525 

526`https://` 経由で到達可能な独自の内部サービスとしてコレクターを実行します。ゲートウェイはループバック URL に対してのみプレーンテキスト `http://` を受け入れ、その場合でも [SSRF ガード](/docs/ja/claude-apps-gateway-deploy#threat-model-summary)はデフォルトで送信時にループバック接続をブロックします。`http://localhost:4318` のサイドカーコレクターは設定検証を渡しますが、トラフィックを受け取りません。エクスポートは `ECONNREFUSED_SSRF` として失敗します。ゲートウェイログで、`CLAUDE_GATEWAY_ALLOW_LOOPBACK=1` がゲートウェイの環境に設定されていない限り。その変数はすべてのオペレーター設定 URL のループバックブロックを緩和し、テレメトリのみではなく、ネットワークが他の方法でロックダウンされているタスクのサイドカープラスフラグセットアップを予約してください。内部サービスパターンを優先します。

527 

528<h3 id="gateway-logs">

529 ゲートウェイログ

530</h3>

531 

532ECS Fargate では、追加のセットアップはありません。`awslogs` ドライバーはゲートウェイの stderr を配信します。これは監査イベントと運用ログを運びます。`/ecs/claude-gateway` ロググループに上記で作成されました。EKS では、ポッドログはデフォルトで CloudWatch に到達しないため、監査証跡は失われます。ログ収集をインストールするまで:コンテナログキャプチャが有効な Amazon CloudWatch Observability アドオン、または Fluent Bit DaemonSet。どちらのトラックでも、CloudWatch Logs Insights でログをクエリし、メトリクスフィルターからアラームを駆動します。

533 

534<h3 id="container-metrics">

535 コンテナメトリクス

536</h3>

537 

538`aws ecs update-cluster-settings --cluster claude-gateway --settings name=containerInsights,value=enabled` でクラスタで Container Insights を有効にして、タスクごとの CPU、メモリ、およびネットワーク。EKS では、Amazon CloudWatch Observability アドオンをインストールします。

539 

540<h3 id="spend">

541 支出

542</h3>

543 

544テレメトリは事後に使用状況を表示します。[支出制限](/docs/ja/claude-apps-gateway-spend-limits)は、共有アップストリーム認証情報の上にゲートウェイのライブ開発者ごとのビューと実装です。

545 

546<h2 id="next-steps">

547 次のステップ

548</h2>

549 

550* [設定リファレンス](/docs/ja/claude-apps-gateway-config):すべての `gateway.yaml` オプション。`managed.policies` と `telemetry` を含む

551* [デプロイメントと運用](/docs/ja/claude-apps-gateway-deploy):IdP セットアップ、ヘルスチェック、JWT シークレットローテーション、アップグレード、およびセキュリティモデル

552* [Claude apps gateway 概要](/docs/ja/claude-apps-gateway):クイックスタートと開発者の接続

553* [Claude apps gateway の AWS サンプル](https://github.com/aws-samples/anthropic-on-aws/tree/main/claude-apps-gateway):顧客環境の範囲をカバーする AWS 保守デプロイメントサンプル

Details

1499| --------------------------------------------------- | -------------- | ---- | ------------------------------------------------------------------------- | --------------------------------------------------------------- |1499| --------------------------------------------------- | -------------- | ---- | ------------------------------------------------------------------------- | --------------------------------------------------------------- |

1500| [`CLAUDE.md`](#ce-claude-md) | プロジェクトおよびグローバル | ✓ | 毎セッション読み込まれる指示 | [メモリ](/docs/ja/memory) |1500| [`CLAUDE.md`](#ce-claude-md) | プロジェクトおよびグローバル | ✓ | 毎セッション読み込まれる指示 | [メモリ](/docs/ja/memory) |

1501| [`rules/*.md`](#ce-rules) | プロジェクトおよびグローバル | ✓ | トピックスコープの指示、オプションでパスゲート | [ルール](/docs/ja/memory#organize-rules-with-claude/rules/) |1501| [`rules/*.md`](#ce-rules) | プロジェクトおよびグローバル | ✓ | トピックスコープの指示、オプションでパスゲート | [ルール](/docs/ja/memory#organize-rules-with-claude/rules/) |

1502| [`settings.json`](#ce-settings-json) | プロジェクトおよびグローバル | ✓ | パーミッション、hooks、環境変数、モデルデフォルト | [設定](/docs/ja/settings) |1502| [`settings.json`](#ce-settings-json) | プロジェクトおよびグローバル | ✓ | 権限、hooks、環境変数、モデルデフォルト | [設定](/docs/ja/settings) |

1503| [`settings.local.json`](#ce-settings-local-json) | プロジェクトのみ | | 個人的なオーバーライド、Claude Code が設定を保存するときに gitignore | [設定スコープ](/docs/ja/settings#where-settings-live) |1503| [`settings.local.json`](#ce-settings-local-json) | プロジェクトのみ | | 個人的なオーバーライド、Claude Code が設定を保存するときに gitignore | [設定スコープ](/docs/ja/settings#where-settings-live) |

1504| [`.mcp.json`](#ce-mcp-json) | プロジェクトのみ | ✓ | チーム共有 MCP サーバー | [MCP スコープ](/docs/ja/mcp#mcp-installation-scopes) |1504| [`.mcp.json`](#ce-mcp-json) | プロジェクトのみ | ✓ | チーム共有 MCP サーバー | [MCP スコープ](/docs/ja/mcp#mcp-installation-scopes) |

1505| [`.worktreeinclude`](#ce-worktreeinclude) | プロジェクトのみ | ✓ | 新しい worktrees にコピーする gitignore ファイル | [Worktrees](/docs/ja/worktrees#copy-gitignored-files-into-worktrees) |1505| [`.worktreeinclude`](#ce-worktreeinclude) | プロジェクトのみ | ✓ | 新しい worktrees にコピーする gitignore ファイル | [Worktrees](/docs/ja/worktrees#copy-gitignored-files-into-worktrees) |

1506| [`skills/<name>/SKILL.md`](#ce-skills) | プロジェクトおよびグローバル | ✓ | `/name` で呼び出される、または自動呼び出される再利用可能なプロンプト | [Skills](/docs/ja/skills) |1506| [`skills/<name>/SKILL.md`](#ce-skills) | プロジェクトおよびグローバル | ✓ | `/name` で呼び出される、または自動呼び出される再利用可能なプロンプト | [Skills](/docs/ja/skills) |

1507| [`commands/*.md`](#ce-commands) | プロジェクトおよびグローバル | ✓ | シングルファイルプロンプト。skills と同じメカニズム | [Skills](/docs/ja/skills) |1507| [`commands/*.md`](#ce-commands) | プロジェクトおよびグローバル | ✓ | シングルファイルプロンプト。skills と同じメカニズム | [Skills](/docs/ja/skills) |

1508| [`output-styles/*.md`](#ce-output-styles) | プロジェクトおよびグローバル | ✓ | カスタムシステムプロンプトセクション | [出力スタイル](/docs/ja/output-styles) |1508| [`output-styles/*.md`](#ce-output-styles) | プロジェクトおよびグローバル | ✓ | Claude の動作方法を調整するカスタム指示セット | [出力スタイル](/docs/ja/output-styles) |

1509| [`agents/*.md`](#ce-agents) | プロジェクトおよびグローバル | ✓ | 独自のプロンプトとツールを持つ subagent 定義 | [Subagents](/docs/ja/sub-agents) |1509| [`agents/*.md`](#ce-agents) | プロジェクトおよびグローバル | ✓ | 独自のプロンプトとツールを持つ subagent 定義 | [Subagents](/docs/ja/sub-agents) |

1510| [`workflows/*.js`](#ce-workflows) | プロジェクトおよびグローバル | ✓ | Claude によって書かれた動的ワークフロースクリプト、`/workflows` から保存。各ファイルは `/<name>` コマンドになります | [動的ワークフロー](/docs/ja/workflows) |1510| [`workflows/*.js`](#ce-workflows) | プロジェクトおよびグローバル | ✓ | Claude によって書かれた動的ワークフロースクリプト、`/workflows` から保存。各ファイルは `/<name>` コマンドになります | [動的ワークフロー](/docs/ja/workflows) |

1511| [`agent-memory/<name>/`](#ce-agent-memory) | プロジェクトおよびグローバル | ✓ | subagents の永続メモリ | [永続メモリ](/docs/ja/sub-agents#enable-persistent-memory) |1511| [`agent-memory/<name>/`](#ce-agent-memory) | プロジェクトおよびグローバル | ✓ | subagents の永続メモリ | [永続メモリ](/docs/ja/sub-agents#enable-persistent-memory) |


1672| `~/.claude/cache/changelog.md` | なし。バックグラウンドで更新されます。 |1672| `~/.claude/cache/changelog.md` | なし。バックグラウンドで更新されます。 |

1673| `~/.claude/policy-limits.json` | なし。自動的に更新されます。 |1673| `~/.claude/policy-limits.json` | なし。自動的に更新されます。 |

1674| `~/.claude/tasks/` | 再開されたセッションが取得するタスクリスト |1674| `~/.claude/tasks/` | 再開されたセッションが取得するタスクリスト |

1675| `~/.claude/debug/`、`~/.claude/plans/`、`~/.claude/image-cache/`、`~/.claude/session-env/`、`~/.claude/shell-snapshots/`、`~/.claude/backups/` | ユーザー向けのもの |1675| `~/.claude/debug/`、`~/.claude/plans/`、`~/.claude/image-cache/`、`~/.claude/session-env/`、`~/.claude/shell-snapshots/`、`~/.claude/backups/` | ユーザー向けのものはなし |

1676| `~/.claude/todos/`、`~/.claude/statsig/`、`~/.claude/logs/` | なし。現在のバージョンでは書き込まれないレガシーディレクトリ。 |1676| `~/.claude/todos/`、`~/.claude/statsig/`、`~/.claude/logs/` | なし。現在のバージョンでは書き込まれないレガシーディレクトリ。 |

1677 1677 

1678`~/.claude.json`、`~/.claude/settings.json`、または `~/.claude/plugins/` は削除しないでください。これらは認証、設定、インストール済みプラグインを保持しています。1678`~/.claude.json`、`~/.claude/settings.json`、または `~/.claude/plugins/` は削除しないでください。これらは認証、設定、インストール済みプラグインを保持しています。

claude-security.md +171 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# コードベースの脆弱性をスキャンする

6 

7> Claude Security プラグインをインストールして、Claude Code セッション内でコードベースの脆弱性をスキャンし、検出結果をレビューして適用できるパッチに変換します。

8 

9Claude Security プラグインは、Claude Code セッション内でコードベースのマルチエージェント脆弱性スキャンを実行します。Claude エージェントのチームがアーキテクチャをマッピングし、脅威モデルを構築し、脆弱性を検出し、すべての検出結果を独立してレビューしてからレポートを作成します。プラグインを使用して、リポジトリ全体をスキャンするか、[変更のみをスキャン](#scan-only-your-changes)することができます。例えば、ブランチの diff、プルリクエストの diff、または単一のコミットなど、選択した検出結果をレビューして自分で適用できるパッチに変換します。

10 

11プラグインはセッション内でローカルに実行され、Claude Code で利用可能なモデルを使用し、各スキャンはプランの使用制限にカウントされます。リポジトリを監視するマネージドサービスが必要な場合、または [Claude Mythos 5](https://platform.claude.com/docs/en/about-claude/models/introducing-claude-fable-5-and-claude-mythos-5) でスキャンを実行したい場合は、Enterprise プランで利用可能な [Claude Security](https://claude.com/product/claude-security) プロダクトを参照してください。プラグインは、GitLab や Bitbucket でホストされているリポジトリ、または受信接続を許可しないネットワーク上のリポジトリなど、マネージドプロダクトが到達できないコードに到達します。

12 

13プラグインは、Claude Code に既に存在するレビューツールとも異なります。[security guidance プラグイン](/docs/ja/security-guidance)は Claude が記述するコードをレビューし、[`/security-review`](/docs/ja/commands#all-commands)はブランチに対して単一パスを実行し、[Code Review](/docs/ja/code-review)はプルリクエストをレビューします。レイヤーがどのようにスタックするかについては、[プラグインが他のセキュリティツールとどのように適合するか](#how-the-plugin-fits-with-other-security-tools)を参照してください。

14 

15<h2 id="prerequisites">

16 前提条件

17</h2>

18 

19プラグインを実行するには、以下が必要です。

20 

21* 有料プラン。スキャンがエージェントをオーケストレーションするために使用する [動的ワークフロー](/docs/ja/workflows)用です。Pro では、`/config` の Dynamic workflows 行から有効にしてください。

22* Python 3.9 以降が `PATH` で `python3` として利用可能です。`python3 --version` で確認してください。プラグインのツーリングは Python 標準ライブラリのみを使用するため、何もインストールされません。

23* Linux、macOS、または Windows。

24* Git(変更スキャンおよび検出結果をパッチに変換するため)。これらのジョブは他のバージョン管理システムをサポートしていません。完全スキャンは、バージョン管理の有無にかかわらず、任意のディレクトリで機能します。

25 

26<h2 id="install-the-plugin">

27 プラグインをインストールする

28</h2>

29 

30Claude Code セッションで、[公式 Anthropic マーケットプレイス](/docs/ja/discover-plugins#official-anthropic-marketplace)からインストールします。

31 

32```text theme={null}

33/plugin install claude-security@claude-plugins-official

34```

35 

36コマンドはプラグインの詳細を開き、[インストールスコープ](/docs/ja/discover-plugins#install-plugins)を選択してインストールを開始します。

37 

38インストールが失敗した場合、修正は Claude Code が報告するメッセージによって異なります。

39 

40* `Marketplace "claude-plugins-official" not found` と報告された場合は、`/plugin marketplace add anthropics/claude-plugins-official` でマーケットプレイスを追加してから、インストールを再試行してください。

41* マーケットプレイスで [プラグインが見つからないと報告された](/docs/ja/discover-plugins#install-plugins)場合は、プラグイン名のタイプミスを確認してください。

42 

43インストール概要を確認してください。`Run /reload-plugins to activate.` と報告された場合は、[プラグインの変更を再起動なしで適用](/docs/ja/discover-plugins#apply-plugin-changes-without-restarting)を参照して、現在のセッションでプラグインをアクティブにしてください。

44 

45プラグインがアクティブになり、[コードベースをスキャンして修正](#scan-and-fix-your-codebase)する準備ができました。

46 

47<h3 id="uninstall-the-plugin">

48 プラグインをアンインストールする

49</h3>

50 

51プラグインを削除するには、`/plugin` メニューからアンインストールするか、ターミナルで `claude plugin uninstall claude-security` を実行します。

52 

53<h2 id="scan-and-fix-your-codebase">

54 コードベースをスキャンして修正する

55</h2>

56 

57プラグインは 1 つのコマンド `/claude-security` を追加します。これは 3 つのジョブのメニューを開きます。コードベースのスキャン、変更セットのスキャン、パッチの提案です。ハッピーパスは完全スキャンを実行してから、その検出結果をパッチに変換します。

58 

59<Steps>

60 <Step title="Claude Security メニューを開く">

61 `/claude-security` を実行して、**Scan codebase** を選択します。

62 </Step>

63 

64 <Step title="スキャンする内容を選択する">

65 プラグインはまずリポジトリを読み込み、その後、リポジトリ全体またはフォーカスされた領域を提供します。各オプションのファイル数と相対コストが記載されています。リポジトリ全体を選択するか、「I don't know」と答えると、プラグインはリポジトリのサイズに合わせて適切なデフォルトを選択します。

66 </Step>

67 

68 <Step title="実行を確認する">

69 スキャンには時間がかかる場合があり、かなりの数のトークンを使用する可能性があり、完了するまで Claude Code を開いたままにする必要があります。確認するまで何も実行されません。

70 </Step>

71 

72 <Step title="レポートを読む">

73 スキャンが実行されている間、各ステージが開始されるたびに報告され、詳細は [`/workflows`](/docs/ja/workflows) で利用可能です。結果は、リポジトリ内のタイムスタンプ付きディレクトリに格納され、[スキャン結果を読む](#read-the-scan-results)で説明されています。

74 </Step>

75 

76 <Step title="検出結果をパッチに変換する">

77 `/claude-security` を再度実行して、**Suggest patches** を選択してから、対処する検出結果を選択します。レビュー済みパッチはレポートの `patches/` フォルダに格納されます。[検出結果を修正](#fix-findings)では、各パッチがどのように構築およびレビューされるかについて説明しています。

78 </Step>

79 

80 <Step title="受け入れたパッチを適用する">

81 シェルから `git apply` で各パッチを適用します。独自のプルリクエストで実行してください。パッチは自動的に適用されることはありません。

82 </Step>

83</Steps>

84 

85メニューから開始する必要はありません。コマンドの引数として直接ジョブを要求することができます。例えば `/claude-security scan my branch` のように、またはプレーンテキストで「scan commit abc1234」のように要求できます。プラグインは [auto mode](/docs/ja/permission-modes) で最適に機能します。これにより、スキャンのエージェントは各ステップで権限プロンプトなしで進行できます。

86 

87<h3 id="scan-only-your-changes">

88 変更のみをスキャンする

89</h3>

90 

91ブランチにベースにないコミットがある場合、`/claude-security` メニューはその差分のみをスキャンするオプションを提供するため、マージ前にブランチを確認できます。開いているプルリクエストの 1 つをスキャンするか、「scan commit abc1234」のように要求して単一のコミットをスキャンすることもできます。コミットされた変更のみがスキャンされます。進行中の編集をコミットまたはスタッシュするか、作業ツリーを読み込む完全スキャンを実行してください。

92 

93変更スキャンには git リポジトリが必要です。バージョン管理されていないディレクトリの完全スキャンは引き続き機能します。開いているプルリクエストを見つけることは、ネットワークに到達する唯一のステップであり、セッションが既に GitHub CLI を実行する権限を持ち、`gh` がサインインしている場合にのみ提供されます。

94 

95<h3 id="scope-large-repositories">

96 大規模なリポジトリのスコープを設定する

97</h3>

98 

99大規模なリポジトリでは、ツリー全体ではなく、一度に 1 つの領域をスキャンします。プラグインが提供するフォーカスされたスコープの 1 つを選択します。例えば、API レイヤーまたは認証コードなど。実行は選択内容に合わせてサイズが調整されます。レポートのカバレッジセクションには、何が検査され、何が検査されなかったかが記載されています。別の領域で別のスキャンを実行してください。

100 

101<h3 id="read-the-scan-results">

102 スキャン結果を読む

103</h3>

104 

105すべてのスキャンは、リポジトリ内のタイムスタンプ付き `CLAUDE-SECURITY-<timestamp>/` ディレクトリに結果を書き込みます。

106 

107* **`CLAUDE-SECURITY-RESULTS.md`**: レポート。各検出結果の ID(`F1` など)、影響、悪用シナリオ、重大度、信頼度、推奨事項が含まれています。

108* **`CLAUDE-SECURITY-RESULTS.jsonl`**: 同じ検出結果を機械可読形式で、1 行に 1 つの JSON オブジェクト。

109* **`CLAUDE-SECURITY-RESULTS.sarif`**: 同じ検出結果を [SARIF 2.1.0](https://docs.oasis-open.org/sarif/sarif/v2.1.0/sarif-v2.1.0.html) ログとして。GitHub コードスキャンおよび標準を読む他のツール用です。スキャンは検出結果を [CWE](https://cwe.mitre.org/) 弱点カテゴリの下に分類します。

110* **`CLAUDE-SECURITY-REVISION-<commit>.json`**: リビジョンスタンプ。スキャンされたコミット、どの程度の労力で、コミットされていない変更がスキャンされたツリーの一部であったかどうか、実行がどの程度徹底的に検証されたかを記録します。これにより、レポートは常にそれが説明するコードに関連付けられます。バージョン管理外のスキャンは、コミットの代わりに `UNVERSIONED` をスタンプします。

111 

112そのディレクトリはスキャンがチェックアウトに加える唯一の変更であり、独自の `.gitignore` を含むため、迷った `git add` がレポートをコミットに掃き込むことはありません。監査証跡のためにレポートを履歴に保持するには、その 1 つの `.gitignore` ファイルを削除して、ディレクトリを他のものと同様にコミットします。

113 

114検出結果は、独立した検証エージェントが分析した後にのみレポートに表示されます。これにより、レポートは短く、読む価値があります。スキャンは非決定的です。同じコードの 2 つのスキャンは異なる検出結果を表示できます。スキャンを定期的に実行し、リビジョンスタンプを使用して、各レポートをそれがカバーする正確なコードと設定に属性付けします。

115 

116<h2 id="fix-findings">

117 検出結果の修正

118</h2>

119 

120`/claude-security` メニューから **Suggest patches** を選択するか、「finding F3 を修正」などのプレーンテキストで質問して、修正フローを開始し、レポートからどの検出結果に対処するかを選択します。パッチはコミットされたコードに対して構築され、レポートはまだ現在のコードを説明している必要があります。その後コードが変更された検出結果はスキップされ、プラグインは古いレポートからのパッチ適用ではなく新しいスキャンを提供します。各パッチはリポジトリのスクラッチコピーで作成されるため、パッチを自分で適用するまでソースファイルは変更されません。

121 

122配信前に、各パッチはそれを作成したエージェントとは独立したエージェントによってレビューされます。このエージェントはコードにテストがある場合、変更に対してプロジェクトのテストを実行し、導入される可能性のある新しい問題がないか diff を独自に読みます。パッチは、そのレビューが 3 つすべてを保証できる場合にのみ作成されます。つまり、変更が 1 つの検出結果に対処し、新しい脆弱性を導入せず、その他の動作は変わらないということです。3 つすべてを保証できない場合、パッチの代わりに、理由を説明する短いメモが表示されます。

123 

124<h3 id="patches-are-never-applied-automatically">

125 パッチは自動的に適用されることはありません

126</h3>

127 

128パッチの適用は常にあなたの決定です。パッチはレポートの `patches/` フォルダに配置され、検出結果ごとに 1 つの `F<n>.patch` ファイルが変更を説明するメモとともに配置されます。シェルから 1 つを適用するか、Claude にパッチを適用してプルリクエストを開くよう依頼します。

129 

130```bash theme={null}

131git apply CLAUDE-SECURITY-<timestamp>/patches/F1.patch

132```

133 

134パッチされたコードにテストがない場合、パッチのメモはそのことを示しているため、レビューがテストパスなしで実行されたことがわかります。各パッチを独自のプルリクエストで適用して、独立してレビューおよびテストできるようにします。

135 

136<h2 id="how-the-plugin-fits-with-other-security-tools">

137 プラグインが他のセキュリティツールとどのように適合するか

138</h2>

139 

140Claude Security プラグインは、[セキュリティガイダンスプラグイン](/docs/ja/security-guidance)、[`/security-review`](/docs/ja/commands#all-commands)、[Code Review](/docs/ja/code-review)、マネージド [Claude Security](https://claude.com/product/claude-security) プロダクト、および既存のスキャナーと並んで、多層防御スタックのオンデマンド深スキャンレイヤーです。

141 

142| ステージ | ツール | カバー内容 |

143| :----------- | :--------------------------------------------------------------------------- | :------------------------------------------- |

144| セッション内 | [セキュリティガイダンスプラグイン](/docs/ja/security-guidance) | Claude が書くコード内の一般的な脆弱性。同じセッションで修正 |

145| オンデマンド、単一パス | [`/security-review`](/docs/ja/commands#all-commands) | 現在のブランチに対する 1 回限りのセキュリティパス |

146| オンデマンド、深スキャン | Claude Security プラグイン | リポジトリまたは差分のマルチエージェントスキャン。独立してレビューされた検出結果とパッチ |

147| プルリクエスト時 | [Code Review](/docs/ja/code-review)、Team および Enterprise プラン | 完全なコードベースコンテキストを備えたマルチエージェント正確性およびセキュリティレビュー |

148| マネージド | [Claude Security](https://claude.com/product/claude-security)、Enterprise プラン | 接続されたリポジトリを監視するホストされたスキャン |

149| CI 内 | 既存の静的分析および依存関係スキャナー | 言語固有のルール、サプライチェーンチェック、ポリシー実装 |

150 

151プラグインは既存のソースコードセキュリティツールを置き換えません。静的分析、依存関係スキャン、コードレビューと並行して実行します。人間のセキュリティ研究者がするのと同じ方法でコードについて推論します。これは、これらのツールが提供する決定論的チェックを補完します。

152 

153<h2 id="troubleshooting">

154 トラブルシューティング

155</h2>

156 

157**`/claude-security` メニューが Python 警告で開きます。** プラグインは `PATH` に Python 3.9 以降の `python3` が必要です。`python3` がまったく見つからない場合、メニューは Claude Security がインストールされるまで機能しないことを警告します。`PATH` の最初の `python3` が古い場合、警告は見つかったバージョンを名前で指定します。Python 3 をインストールするか、新しい `python3` を `PATH` の最初に配置してから、新しいセッションを開始してください。

158 

159**Fable モデルでスキャンするときに「safeguards flagged this message」という通知が表示される場合があります。** メッセージはモデルを名前で指定します。例えば「Fable 5.1's safeguards flagged this message」。Fable のサイバーセキュリティ安全分類器により、特定のリクエストがフラグされ、Claude Code は [自動モデルフォールバック](/docs/ja/model-config#automatic-model-fallback)を通じてフラグされたリクエストを Opus モデルで再実行します。これは予想されており、スキャンは引き続き正常に完了するはずです。

160 

161<h2 id="related-resources">

162 関連リソース

163</h2>

164 

165このページが触れるピースについてさらに詳しく知るには。

166 

167* [セキュリティガイダンスプラグイン](/docs/ja/security-guidance): Claude が書くときにコード内の問題をキャッチします。同じセッション内。

168* [Code Review](/docs/ja/code-review): PR 時のマルチエージェントレビューをセットアップします。

169* [Claude Security](https://claude.com/product/claude-security): 接続されたリポジトリを監視するマネージドサービス。

170* [Claude Code セキュリティ](/docs/ja/security): Claude Code がトラスト、権限、セーフガードにどのようにアプローチするか。

171* [プラグインを発見してインストール](/docs/ja/discover-plugins#official-anthropic-marketplace): 他の公式プラグインを参照します。

claude-tag.md +11 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# Claude Tag

6 

7> Claude Tag を使用して Claude をチームの Slack チャネルに導入し、claude.com で設定と使用方法のドキュメントを確認できます。

8 

9[Claude Tag](https://claude.com/product/tag) は Slack インテグレーションで、チームのチャネルで `@Claude` を実行し、管理者が設定したアクセス権限を持つ組織の共有アイデンティティとして機能します。チャネル内の誰でも `@Claude` をスレッドにタグ付けして、タスクを割り当てることができます。claude.com の [Claude Tag ドキュメント](https://claude.com/docs/claude-tag/overview) を参照して、設定を行い、使用を開始してください。

10 

11Claude Tag は Team プランと Enterprise プランで利用可能であり、個々のユーザーのアカウントでセッションを実行する以前の [Claude Code in Slack](/docs/ja/slack) とは異なります。Claude Tag が利用できない Pro プランと Max プランでは、Claude Code in Slack が設定パスのままです。

cli-reference.md +23 −11

Details

13これらのコマンドを使用して、セッションを開始し、コンテンツをパイプし、会話を再開し、更新を管理できます。13これらのコマンドを使用して、セッションを開始し、コンテンツをパイプし、会話を再開し、更新を管理できます。

14 14 

15| コマンド | 説明 | 例 |15| コマンド | 説明 | 例 |

16| :------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------- |16| :------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :---------------------------------------------------------- |

17| `claude` | インタラクティブセッションを開始 | `claude` |17| `claude` | インタラクティブセッションを開始 | `claude` |

18| `claude "query"` | 初期プロンプト付きでインタラクティブセッションを開始 | `claude "explain this project"` |18| `claude "query"` | 初期プロンプト付きでインタラクティブセッションを開始 | `claude "explain this project"` |

19| `claude -p "query"` | SDK 経由でクエリを実行してから終了 | `claude -p "explain this function"` |19| `claude -p "query"` | SDK 経由でクエリを実行してから終了 | `claude -p "explain this function"` |


34| `claude daemon status` | バックグラウンドセッション [スーパーバイザー](/docs/ja/agent-view#the-supervisor-process) の状態、バージョン、ソケットディレクトリ、および診断用のワーカー数を出力します。スーパーバイザーが実行されていない場合は 1 で終了します | `claude daemon status` |34| `claude daemon status` | バックグラウンドセッション [スーパーバイザー](/docs/ja/agent-view#the-supervisor-process) の状態、バージョン、ソケットディレクトリ、および診断用のワーカー数を出力します。スーパーバイザーが実行されていない場合は 1 で終了します | `claude daemon status` |

35| `claude daemon stop --any` | バックグラウンドセッション [スーパーバイザー](/docs/ja/agent-view#the-supervisor-process) とそれがホストするセッションを停止します。`--keep-workers` を渡して、バックグラウンドセッションを実行したままにして、次のスーパーバイザーが再接続できるようにします。`--any` はオンデマンドスーパーバイザーの停止を確認します。これはデフォルトです。これを使用して、[応答しないスーパーバイザー](/docs/ja/agent-view#agent-view-says-the-background-service-did-not-respond) から回復します | `claude daemon stop --any --keep-workers` |35| `claude daemon stop --any` | バックグラウンドセッション [スーパーバイザー](/docs/ja/agent-view#the-supervisor-process) とそれがホストするセッションを停止します。`--keep-workers` を渡して、バックグラウンドセッションを実行したままにして、次のスーパーバイザーが再接続できるようにします。`--any` はオンデマンドスーパーバイザーの停止を確認します。これはデフォルトです。これを使用して、[応答しないスーパーバイザー](/docs/ja/agent-view#agent-view-says-the-background-service-did-not-respond) から回復します | `claude daemon stop --any --keep-workers` |

36| `claude doctor` | セッションを開始せずにターミナルから読み取り専用のインストールおよび設定診断を出力します。インストール正常性、設定ファイル検証エラー、およびリモートコントロール適格性を含みます。セッション内のセットアップチェックアップで修正を適用することもできます。[`/doctor`](/docs/ja/commands#all-commands) を実行してください | `claude doctor` |36| `claude doctor` | セッションを開始せずにターミナルから読み取り専用のインストールおよび設定診断を出力します。インストール正常性、設定ファイル検証エラー、およびリモートコントロール適格性を含みます。セッション内のセットアップチェックアップで修正を適用することもできます。[`/doctor`](/docs/ja/commands#all-commands) を実行してください | `claude doctor` |

37| `claude import [codex\|gemini]` | 他のコーディングエージェントからの設定を Claude Code に取り込むために [`/import`](/docs/ja/commands#all-commands) を実行するインタラクティブセッションを開始します。コマンドと同じ `--dry-run` および `--yes` オプションを受け入れます。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、または AWS 上の Claude Platform では利用できません。[機能フラグ取得](/docs/ja/env-vars#features-that-need-feature-flag-fetching) をオフにした場合も利用できません。Claude Code v2.1.213 以降が必要です | `claude import codex --dry-run` |37| `claude import [source]` | 他のコーディングエージェントからの設定を Claude Code に取り込むために [`/import`](/docs/ja/commands#all-commands) を実行するインタラクティブセッションを開始します。コマンドと同じ `--dry-run` および `--yes` オプションを受け入れます。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、または AWS 上の Claude Platform では利用できません。[機能フラグ取得](/docs/ja/env-vars#features-that-need-feature-flag-fetching) をオフにした場合も利用できません。Claude Code v2.1.213 以降が必要です | `claude import codex --dry-run` |

38| `claude logs <id>` | [バックグラウンドセッション](/docs/ja/agent-view#manage-sessions-from-the-shell) からの最近の出力を出力します | `claude logs 7c5dcf5d` |38| `claude logs <id>` | [バックグラウンドセッション](/docs/ja/agent-view#manage-sessions-from-the-shell) からの最近の出力を出力します | `claude logs 7c5dcf5d` |

39| `claude mcp` | Model Context Protocol(MCP)サーバーを設定 | [Claude Code MCP ドキュメント](/docs/ja/mcp) を参照してください。 |39| `claude mcp` | Model Context Protocol(MCP)サーバーを設定 | [Claude Code MCP ドキュメント](/docs/ja/mcp) を参照してください。 |

40| `claude mcp login <name>` | 設定済み MCP サーバーの OAuth フローを実行します。インタラクティブな `/mcp` パネルを開きません。HTTP、SSE、および claude.ai コネクタサーバーで機能します。SSH 経由で `--no-browser` を追加して、ブラウザを開く代わりに認可 URL を出力し、リダイレクト URL をプロンプトに貼り付けます。Claude Code v2.1.186 以降が必要です。[コマンドラインから認証](/docs/ja/mcp#authenticate-from-the-command-line) を参照してください | `claude mcp login sentry` |40| `claude mcp login <name>` | 設定済み MCP サーバーの OAuth フローを実行します。インタラクティブな `/mcp` パネルを開きません。HTTP、SSE、および claude.ai コネクタサーバーで機能します。SSH 経由で `--no-browser` を追加して、ブラウザを開く代わりに認可 URL を出力し、リダイレクト URL をプロンプトに貼り付けます。Claude Code v2.1.186 以降が必要です。[コマンドラインから認証](/docs/ja/mcp#authenticate-from-the-command-line) を参照してください | `claude mcp login sentry` |


43| `claude project purge [path]` | プロジェクトのすべてのローカル Claude Code 状態を削除します:トランスクリプト、タスクリスト、デバッグログ、ファイル編集履歴、プロンプト履歴行、および `~/.claude.json` 内のプロジェクトエントリ。`[path]` を省略して、インタラクティブリストから選択します。フラグ:`--dry-run` でプレビュー、`-y`/`--yes` で確認をスキップ、`-i`/`--interactive` で各項目を確認、`--all` ですべてのプロジェクト。[ローカルデータをクリア](/docs/ja/claude-directory#clear-local-data) を参照してください | `claude project purge ~/work/repo --dry-run` |43| `claude project purge [path]` | プロジェクトのすべてのローカル Claude Code 状態を削除します:トランスクリプト、タスクリスト、デバッグログ、ファイル編集履歴、プロンプト履歴行、および `~/.claude.json` 内のプロジェクトエントリ。`[path]` を省略して、インタラクティブリストから選択します。フラグ:`--dry-run` でプレビュー、`-y`/`--yes` で確認をスキップ、`-i`/`--interactive` で各項目を確認、`--all` ですべてのプロジェクト。[ローカルデータをクリア](/docs/ja/claude-directory#clear-local-data) を参照してください | `claude project purge ~/work/repo --dry-run` |

44| `claude remote-control` | [Remote Control](/docs/ja/remote-control) サーバーを開始して、Claude.ai または Claude アプリから Claude Code を制御します。サーバーモード(ローカルインタラクティブセッションなし)で実行されます。[サーバーモードフラグ](/docs/ja/remote-control#start-a-remote-control-session) を参照してください。サーバーを停止した後、サーバーが提供していたセッションを復元できます。[サーバー停止後のセッション再開](/docs/ja/remote-control#resume-sessions-after-stopping-the-server) を参照してください | `claude remote-control --name "My Project"` |44| `claude remote-control` | [Remote Control](/docs/ja/remote-control) サーバーを開始して、Claude.ai または Claude アプリから Claude Code を制御します。サーバーモード(ローカルインタラクティブセッションなし)で実行されます。[サーバーモードフラグ](/docs/ja/remote-control#start-a-remote-control-session) を参照してください。サーバーを停止した後、サーバーが提供していたセッションを復元できます。[サーバー停止後のセッション再開](/docs/ja/remote-control#resume-sessions-after-stopping-the-server) を参照してください | `claude remote-control --name "My Project"` |

45| `claude respawn <id>` | 会話を保持したまま、[バックグラウンドセッション](/docs/ja/agent-view#manage-sessions-from-the-shell) を再開します。実行中または停止中。`--all` を使用してすべての実行中セッションを再開します。たとえば、更新された Claude Code バイナリを取得するため | `claude respawn 7c5dcf5d` |45| `claude respawn <id>` | 会話を保持したまま、[バックグラウンドセッション](/docs/ja/agent-view#manage-sessions-from-the-shell) を再開します。実行中または停止中。`--all` を使用してすべての実行中セッションを再開します。たとえば、更新された Claude Code バイナリを取得するため | `claude respawn 7c5dcf5d` |

46| `claude rm <id>` | [バックグラウンドセッション](/docs/ja/agent-view#manage-sessions-from-the-shell) をリストから削除します。会話トランスクリプトはローカルマシンに残り、`claude --resume` を通じて利用可能です | `claude rm 7c5dcf5d` |46| `claude rm <id>` | [バックグラウンドセッション](/docs/ja/agent-view#manage-sessions-from-the-shell) をリストから削除します。削除が [セッションのワークツリーを介して拒否](/docs/ja/agent-view#what-deleting-a-session-removes) され、2 番目の `claude rm` で解決できる場合、拒否は渡すべき正確なフラグと値を出力します:`--discard-unpushed <commit>@<worktree-id>` はプッシュされていないコミットを持つワークツリーをそれらのコミットとともに破棄し、`--force-remove-worktree <worktree-id>` は git または `WorktreeRemove` フックが削除できなかったワークツリーディレクトリを削除します。`--discard-unpushed` には Claude Code v2.1.260 以降が必要です。また、`--force-remove-worktree` には v2.1.268 以降が必要です。会話トランスクリプトはローカルマシンに残り、`claude --resume` を通じて利用可能です | `claude rm 7c5dcf5d` |

47| `claude self-hosted-runner` | このマシンまたはコンテナを [自己ホスト環境](/docs/ja/self-hosted-environments) に登録し、Claude Code クラウドセッションをインフラストラクチャ上でホストするランナープロセスを開始します。`claude self-hosted-runner setup` でガイド付きオペレーターウォークスルーを実行し、`claude self-hosted-runner doctor` で [デプロイされたランナーを診断](/docs/ja/self-hosted-environments-deploy#troubleshooting) し、`claude self-hosted-runner orchestrator` で [オンデマンドランナー](/docs/ja/self-hosted-environments-configuration#on-demand-runners) をスポーンします。Claude Code v2.1.224 以降が必要です | `claude self-hosted-runner setup` |47| `claude self-hosted-runner` | このマシンまたはコンテナを [自己ホスト環境](/docs/ja/self-hosted-environments) に登録し、Claude Code クラウドセッションをインフラストラクチャ上でホストするランナープロセスを開始します。`claude self-hosted-runner setup` でガイド付きオペレーターウォークスルーを実行し、`claude self-hosted-runner doctor` で [デプロイされたランナーを診断](/docs/ja/self-hosted-environments-deploy#troubleshooting) し、`claude self-hosted-runner orchestrator` で [オンデマンドランナー](/docs/ja/self-hosted-environments-configuration#on-demand-runners) をスポーンします。Claude Code v2.1.224 以降が必要です | `claude self-hosted-runner setup` |

48| `claude setup-token` | CI とスクリプト用の長期間有効な OAuth トークンを生成します。ターミナルにトークンを出力し、保存しません。Claude サブスクリプションが必要です。[長期間有効なトークンを生成](/docs/ja/authentication#generate-a-long-lived-token) を参照してください | `claude setup-token` |48| `claude setup-token` | CI とスクリプト用の長期間有効な OAuth トークンを生成します。ターミナルにトークンを出力し、保存しません。Claude サブスクリプションが必要です。[長期間有効なトークンを生成](/docs/ja/authentication#generate-a-long-lived-token) を参照してください | `claude setup-token` |

49| `claude stop <id>` | [バックグラウンドセッション](/docs/ja/agent-view#manage-sessions-from-the-shell) を停止します。`claude kill` も受け入れます | `claude stop 7c5dcf5d` |49| `claude stop <id>` | [バックグラウンドセッション](/docs/ja/agent-view#manage-sessions-from-the-shell) を停止します。`claude kill` も受け入れます | `claude stop 7c5dcf5d` |


60これらのコマンドラインフラグを使用して Claude Code の動作をカスタマイズします。`claude --help` はすべてのフラグをリストしていないため、`--help` にフラグが表示されていないことは、そのフラグが利用できないことを意味しません。60これらのコマンドラインフラグを使用して Claude Code の動作をカスタマイズします。`claude --help` はすべてのフラグをリストしていないため、`--help` にフラグが表示されていないことは、そのフラグが利用できないことを意味しません。

61 61 

62| フラグ | 説明 | 例 |62| フラグ | 説明 | 例 |

63| :---------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------- |63| :---------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :-------------------------------------------------------------------------------------------------- |

64| `--add-dir` | Claude がファイルを読み取り、編集するための追加の作業ディレクトリを追加します。ファイルアクセスを許可します。Claude Code は [これらのディレクトリからほとんどの `.claude/` 設定を検出しません](/docs/ja/permissions#additional-directories-grant-file-access-not-configuration)。各パスがディレクトリとして存在することを検証します。ほとんどの [ネットワークパス](/docs/ja/errors#working-directory-is-a-network-path)(`\\server\share` など)を追加することはできません。これらのディレクトリをセッション全体で永続化するには、設定で [`permissions.additionalDirectories`](/docs/ja/settings-reference#permissions-additionaldirectories) を設定してください | `claude --add-dir ../apps ../lib` |64| `--add-dir` | Claude がファイルを読み取り、編集するための追加の作業ディレクトリを追加します。ファイルアクセスを許可します。Claude Code は [これらのディレクトリからほとんどの `.claude/` 設定を検出しません](/docs/ja/permissions#additional-directories-grant-file-access-not-configuration)。各パスがディレクトリとして存在することを検証します。ほとんどの [ネットワークパス](/docs/ja/errors#working-directory-is-a-network-path)(`\\server\share` など)を追加することはできません。これらのディレクトリをセッション全体で永続化するには、設定で [`permissions.additionalDirectories`](/docs/ja/settings-reference#permissions-additionaldirectories) を設定してください | `claude --add-dir ../apps ../lib` |

65| `--advisor <model>` | このセッションのサーバーサイド [advisor ツール](/docs/ja/advisor) をモデルエイリアス `fable`、`opus`、または `sonnet`、または完全なモデル ID で有効にします。このセッションの `advisorModel` 設定より優先されます。`fable` には [Fable アクセス](/docs/ja/advisor#choose-an-advisor-model) が必要です | `claude --advisor opus` |65| `--advisor <model>` | このセッションのサーバーサイド [advisor ツール](/docs/ja/advisor) をモデルエイリアス `fable`、`opus`、または `sonnet`、または完全なモデル ID で有効にします。このセッションの `advisorModel` 設定より優先されます。`fable` には [Fable アクセス](/docs/ja/advisor#choose-an-advisor-model) が必要です | `claude --advisor opus` |

66| `--agent` | 現在のセッションのエージェントを指定します(`agent` 設定をオーバーライドします) | `claude --agent my-custom-agent` |66| `--agent` | 現在のセッションのエージェントを指定します(`agent` 設定をオーバーライドします) | `claude --agent my-custom-agent` |


85| `--debug` | オプションのカテゴリフィルタリング付きでデバッグモードを有効にします(例:`--debug='mcp,startup'` または `--debug='!1p'`)。フィルターは `=` 形式でのみバインドされます。スペース区切りフィルターはフィルタリングなしでデバッグモードを有効にします | `claude --debug='mcp,startup'` |85| `--debug` | オプションのカテゴリフィルタリング付きでデバッグモードを有効にします(例:`--debug='mcp,startup'` または `--debug='!1p'`)。フィルターは `=` 形式でのみバインドされます。スペース区切りフィルターはフィルタリングなしでデバッグモードを有効にします | `claude --debug='mcp,startup'` |

86| `--debug-file <path>` | デバッグログを特定のファイルパスに書き込みます。暗黙的にデバッグモードを有効にします。`CLAUDE_CODE_DEBUG_LOGS_DIR` より優先されます | `claude --debug-file /tmp/claude-debug.log` |86| `--debug-file <path>` | デバッグログを特定のファイルパスに書き込みます。暗黙的にデバッグモードを有効にします。`CLAUDE_CODE_DEBUG_LOGS_DIR` より優先されます | `claude --debug-file /tmp/claude-debug.log` |

87| `--disable-slash-commands` | このセッションのすべてのスキルとコマンドを無効にします | `claude --disable-slash-commands` |87| `--disable-slash-commands` | このセッションのすべてのスキルとコマンドを無効にします | `claude --disable-slash-commands` |

88| `--disallowedTools`、`--disallowed-tools` | 拒否ルール。ベアツール名はそのツールをモデルのコンテキストから削除します:`"Edit"` は Edit を削除し、`"*"` はすべてのツールを削除し、`"mcp__*"` はすべての MCP ツールを削除します。`Bash(rm *)` のようなスコープ付きルールはツールを利用可能なままにし、一致する呼び出しのみを拒否します。[`EndConversation`](/docs/ja/tools-reference#endconversation-tool-behavior) という名前のルールは、他のツールが残っている間はそれを削除できません | `"Bash(git log *)" "Bash(git diff *)" "Edit"` |88| `--disallowedTools`、`--disallowed-tools` | 拒否ルール。ベアツール名はそのツールをモデルのコンテキストから削除します:`"Edit"` は Edit を削除し、`"*"` はすべてのツールを削除し、`"mcp__*"` はすべての MCP ツールを削除します。`Bash(rm *)` のようなスコープ付きルールはツールを利用可能なままにし、[書かれたとおりに](/docs/ja/permissions#bash-rule-limits) 一致する呼び出しのみを拒否します。[`EndConversation`](/docs/ja/tools-reference#endconversation-tool-behavior) という名前のルールは、他のツールが残っている間はそれを削除できません | `"Bash(git log *)" "Bash(git diff *)" "Edit"` |

89| `--effort` | 現在のセッションの [努力レベル](/docs/ja/model-config#adjust-effort-level) を設定します。オプション:`low`、`medium`、`high`、`xhigh`、`max`、または `ultracode`。利用可能なレベルはモデルによって異なります。`ultracode` は [ultracode](/docs/ja/workflows#let-claude-decide-with-ultracode) をオンにして `xhigh` 努力でセッションを開始し、Claude Code v2.1.203 以降が必要です。このセッションの [`modelSettings`](/docs/ja/settings-reference#modelsettings) と [`effortLevel`](/docs/ja/settings-reference#effortlevel) 設定をオーバーライドし、永続化されません | `claude --effort high` |89| `--effort` | 現在のセッションの [努力レベル](/docs/ja/model-config#adjust-effort-level) を設定します。オプション:`low`、`medium`、`high`、`xhigh`、`max`、または `ultracode`。利用可能なレベルはモデルによって異なります。`ultracode` は [ultracode](/docs/ja/workflows#let-claude-decide-with-ultracode) をオンにして `xhigh` 努力でセッションを開始し、Claude Code v2.1.203 以降が必要です。このセッションの [`modelSettings`](/docs/ja/settings-reference#modelsettings) と [`effortLevel`](/docs/ja/settings-reference#effortlevel) 設定をオーバーライドし、永続化されません | `claude --effort high` |

90| `--enable-auto-mode` | v2.1.111 で削除されました。Auto mode は現在 `Shift+Tab` サイクルにデフォルトで含まれています。`--permission-mode auto` を使用して開始してください | `claude --permission-mode auto` |90| `--enable-auto-mode` | v2.1.111 で削除されました。Auto mode は現在 `Shift+Tab` サイクルにデフォルトで含まれています。`--permission-mode auto` を使用して開始してください | `claude --permission-mode auto` |

91| `--environment <environment-id>` | 指定された ID の [自己ホスト環境](/docs/ja/self-hosted-environments) で実行される新しいクラウドセッションを作成します。環境 ID は `ccpool_` で始まります。[`--environment` ディスパッチ動作](/docs/ja/self-hosted-environments-testing#environment-dispatch-behavior) を参照してください。ディスパッチ動作とそれが拒否するフラグの組み合わせについては、Claude Code v2.1.224 以降が必要です | `claude -p "Fix the login bug" --environment ccpool_abc123` |91| `--environment <environment-id>` | 指定された ID の [自己ホスト環境](/docs/ja/self-hosted-environments) で実行される新しいクラウドセッションを作成します。環境 ID は `ccpool_` で始まります。[`--environment` ディスパッチ動作](/docs/ja/self-hosted-environments-testing#environment-dispatch-behavior) を参照してください。ディスパッチ動作とそれが拒否するフラグの組み合わせについては、Claude Code v2.1.224 以降が必要です | `claude -p "Fix the login bug" --environment ccpool_abc123` |


93| `--exec` | シェルコマンドを PTY バックアップのバックグラウンドジョブとして実行します。Claude セッションを開始する代わりに `--bg` と一緒に使用してください | `claude --bg --exec 'pytest -x'` |93| `--exec` | シェルコマンドを PTY バックアップのバックグラウンドジョブとして実行します。Claude セッションを開始する代わりに `--bg` と一緒に使用してください | `claude --bg --exec 'pytest -x'` |

94| `--fallback-model` | プライマリモデルが過負荷の場合、または利用できない場合、指定されたモデルへの自動フォールバックを有効にします。例えば、廃止されたモデル。カンマ区切りリストを受け入れ、順番に試されます。[フォールバックモデルチェーン](/docs/ja/model-config#fallback-model-chains) を参照してください。セッション全体でチェーンを永続化するには、[`fallbackModel` 設定](/docs/ja/settings-reference#fallbackmodel) を使用してください。このフラグはそれをオーバーライドします | `claude --fallback-model sonnet,haiku` |94| `--fallback-model` | プライマリモデルが過負荷の場合、または利用できない場合、指定されたモデルへの自動フォールバックを有効にします。例えば、廃止されたモデル。カンマ区切りリストを受け入れ、順番に試されます。[フォールバックモデルチェーン](/docs/ja/model-config#fallback-model-chains) を参照してください。セッション全体でチェーンを永続化するには、[`fallbackModel` 設定](/docs/ja/settings-reference#fallbackmodel) を使用してください。このフラグはそれをオーバーライドします | `claude --fallback-model sonnet,haiku` |

95| `--fork-session` | 再開時に、元のセッション ID を再利用する代わりに新しいセッション ID を作成します(`--resume` または `--continue` と一緒に使用) | `claude --resume abc123 --fork-session` |95| `--fork-session` | 再開時に、元のセッション ID を再利用する代わりに新しいセッション ID を作成します(`--resume` または `--continue` と一緒に使用) | `claude --resume abc123 --fork-session` |

96| `--forward-subagent-text` | [subagent](/docs/ja/sub-agents) テキストと思考ブロックを出力ストリームに `assistant` および `user` メッセージとして `parent_tool_use_id` セットで発行し、各 subagent のトランスクリプトを再構築できるようにします。このフラグがない場合、Claude Code は subagent `tool_use` および `tool_result` ブロックのみを発行します。`--print` と `--output-format stream-json` が必要です。Claude Code は [ネストされた subagents](/docs/ja/sub-agents#let-subagents-spawn-their-own-subagents) からのメッセージも転送し、各メッセージを生成した Agent ツール呼び出しの ID に `parent_tool_use_id` を設定します。これには Claude Code v2.1.219 以降が必要です。[`CLAUDE_CODE_FORWARD_SUBAGENT_TEXT`](/docs/ja/env-vars) 環境変数は同じ動作を有効にします。Claude Code v2.1.211 以降が必要です | `claude -p --output-format stream-json --verbose --forward-subagent-text "query"` |96| `--forward-subagent-text` | [subagent](/docs/ja/sub-agents) テキストと思考ブロックを出力ストリームに `assistant` および `user` メッセージとして `parent_tool_use_id` セットで発行し、各 subagent のトランスクリプトを再構築できるようにします。このフラグがない場合、Claude Code は [フォアグラウンド](/docs/ja/sub-agents#run-subagents-in-foreground-or-background) で実行される subagent のテキストと思考ブロックを省略します。`--print` と `--output-format stream-json` が必要です。Claude Code は [ネストされた subagents](/docs/ja/sub-agents#let-subagents-spawn-their-own-subagents) からのメッセージも転送し、各メッセージを生成した Agent ツール呼び出しの ID に `parent_tool_use_id` を設定します。これには Claude Code v2.1.219 以降が必要です。[`CLAUDE_CODE_FORWARD_SUBAGENT_TEXT`](/docs/ja/env-vars) 環境変数は同じ動作を有効にします。Claude Code v2.1.211 以降が必要です | `claude -p --output-format stream-json --verbose --forward-subagent-text "query"` |

97| `--from-pr` | セッションピッカーを特定のプルリクエストにリンクされたセッションにフィルタリングして開きます。PR 番号、GitHub または GitHub Enterprise PR URL、GitLab マージリクエスト URL、または Bitbucket プルリクエスト URL を受け入れます。Claude がプルリクエストを作成するときに、セッションは自動的にリンクされます | `claude --from-pr 123` |97| `--from-pr` | セッションピッカーを特定のプルリクエストにリンクされたセッションにフィルタリングして開きます。PR 番号、GitHub または GitHub Enterprise PR URL、GitLab マージリクエスト URL、または Bitbucket プルリクエスト URL を受け入れます。Claude がプルリクエストを作成するときに、セッションは自動的にリンクされます | `claude --from-pr 123` |

98| `--ide` | 起動時に、正確に 1 つの有効な IDE が利用可能な場合、自動的に IDE に接続します | `claude --ide` |98| `--ide` | 起動時に、正確に 1 つの有効な IDE が利用可能な場合、自動的に IDE に接続します | `claude --ide` |

99| `--init` | セッション開始前に `init` マッチャーで [Setup hooks](/docs/ja/hooks#setup) を実行します(プリントモードのみ) | `claude -p --init "query"` |99| `--init` | セッション開始前に `init` マッチャーで [Setup hooks](/docs/ja/hooks#setup) を実行します(プリントモードのみ) | `claude -p --init "query"` |


114| `--permission-mode` | 指定された [権限モード](/docs/ja/permission-modes) で開始します。`default`、`acceptEdits`、`plan`、`auto`、`dontAsk`、`bypassPermissions`、または `manual` を `default` のエイリアスとして受け入れます。`manual` エイリアスは UI が Manual とラベル付けするモードを選択し、Claude Code v2.1.200 以降が必要です。`claude --help` は `default` の代わりにそれをリストし、両方の値が機能します。設定ファイルの `defaultMode` をオーバーライドします。このフラグまたは `--dangerously-skip-permissions` がない場合、新しいセッションは [セッションが開始する権限モード](/docs/ja/permission-modes#which-mode-a-session-starts-in) で説明されている権限モードで開始します。`-p` の場合、それは何も設定されていない場合は `default` です | `claude --permission-mode plan` |114| `--permission-mode` | 指定された [権限モード](/docs/ja/permission-modes) で開始します。`default`、`acceptEdits`、`plan`、`auto`、`dontAsk`、`bypassPermissions`、または `manual` を `default` のエイリアスとして受け入れます。`manual` エイリアスは UI が Manual とラベル付けするモードを選択し、Claude Code v2.1.200 以降が必要です。`claude --help` は `default` の代わりにそれをリストし、両方の値が機能します。設定ファイルの `defaultMode` をオーバーライドします。このフラグまたは `--dangerously-skip-permissions` がない場合、新しいセッションは [セッションが開始する権限モード](/docs/ja/permission-modes#which-mode-a-session-starts-in) で説明されている権限モードで開始します。`-p` の場合、それは何も設定されていない場合は `default` です | `claude --permission-mode plan` |

115| `--permission-prompt-tool` | 非インタラクティブモードで権限プロンプトを処理する MCP ツールを指定します。Claude Code は、最初のターンを実行する前に、そのツールの MCP サーバーが接続されるまで待機します。最大 [`MCP_TIMEOUT`](/docs/ja/env-vars) スタートアップタイムアウト、デフォルト 30 秒。<br /><br />プロンプトツールは [ユーザーインタラクションが必要](/docs/ja/mcp#require-approval-for-a-specific-tool) とマークされた MCP ツールを承認できません:Claude Code はそのようなツールの `allow` 結果を拒否に変換します。この制限には Claude Code v2.1.199 以降が必要です | `claude -p --permission-prompt-tool mcp_auth_tool "query"` |115| `--permission-prompt-tool` | 非インタラクティブモードで権限プロンプトを処理する MCP ツールを指定します。Claude Code は、最初のターンを実行する前に、そのツールの MCP サーバーが接続されるまで待機します。最大 [`MCP_TIMEOUT`](/docs/ja/env-vars) スタートアップタイムアウト、デフォルト 30 秒。<br /><br />プロンプトツールは [ユーザーインタラクションが必要](/docs/ja/mcp#require-approval-for-a-specific-tool) とマークされた MCP ツールを承認できません:Claude Code はそのようなツールの `allow` 結果を拒否に変換します。この制限には Claude Code v2.1.199 以降が必要です | `claude -p --permission-prompt-tool mcp_auth_tool "query"` |

116| `--permission-prompts` | プリントモードで権限プロンプトに誰が答えるかを設定します。デフォルトの `host` を使用すると、Claude Code はそれらを Agent SDK ホストまたは `--permission-prompt-tool` ツールに送信します。誰も答えられない場合は `none` を渡し、Claude Code は代わりにそれらを拒否します。[無人実行で権限プロンプトをオフにする](/docs/ja/headless#turn-off-permission-prompts-in-unattended-runs) を参照してください。Claude Code v2.1.259 以降が必要です | `claude -p --permission-prompts none "query"` |116| `--permission-prompts` | プリントモードで権限プロンプトに誰が答えるかを設定します。デフォルトの `host` を使用すると、Claude Code はそれらを Agent SDK ホストまたは `--permission-prompt-tool` ツールに送信します。誰も答えられない場合は `none` を渡し、Claude Code は代わりにそれらを拒否します。[無人実行で権限プロンプトをオフにする](/docs/ja/headless#turn-off-permission-prompts-in-unattended-runs) を参照してください。Claude Code v2.1.259 以降が必要です | `claude -p --permission-prompts none "query"` |

117| `--plugin-dir` | このセッションのみのプラグインをディレクトリまたは `.zip` アーカイブから読み込みます。各フラグは 1 つのパスを取ります。複数のプラグインの場合はフラグを繰り返します:`--plugin-dir A --plugin-dir B.zip` | `claude --plugin-dir ./my-plugin` |117| `--plugin-dir` | このセッションのみのプラグインをディレクトリまたは `.zip` アーカイブから読み込みます。または [プラグインのフォルダ](/docs/ja/plugins#test-your-plugins-locally) から複数を読み込みます。各フラグは 1 つのパスを取ります。複数のパスの場合はフラグを繰り返します:`--plugin-dir A --plugin-dir B.zip`。プラグインのフォルダを渡すには Claude Code v2.1.265 以降が必要です | `claude --plugin-dir ./my-plugin` |

118| `--plugin-url` | このセッションのみのプラグイン `.zip` アーカイブを URL から取得します。複数のプラグインの場合はフラグを繰り返すか、スペース区切りの URL を単一の引用符で囲まれた値で渡します | `claude --plugin-url https://example.com/plugin.zip` |118| `--plugin-url` | このセッションのみのプラグイン `.zip` アーカイブを URL から取得します。複数のプラグインの場合はフラグを繰り返すか、スペース区切りの URL を単一の引用符で囲まれた値で渡します | `claude --plugin-url https://example.com/plugin.zip` |

119| `--print`、`-p` | インタラクティブモードなしで応答を出力します(プログラムによる使用の詳細については [Agent SDK ドキュメント](/docs/ja/agent-sdk/overview) を参照) | `claude -p "query"` |119| `--print`、`-p` | インタラクティブモードなしで応答を出力します(プログラムによる使用の詳細については [Agent SDK ドキュメント](/docs/ja/agent-sdk/overview) を参照) | `claude -p "query"` |

120| `--prompt-suggestions` | 各ターンの後に、予測される次のユーザープロンプトを含む `prompt_suggestion` メッセージを発行します。非常に短い会話は何も生成しない可能性があります。`--print`、`--output-format stream-json`、および `--verbose` が必要です。[プロンプト提案](/docs/ja/interactive-mode#prompt-suggestions) を参照してください | `claude -p --prompt-suggestions --output-format stream-json --verbose "query"` |120| `--prompt-suggestions` | 各ターンの後に、予測される次のユーザープロンプトを含む `prompt_suggestion` メッセージを発行します。非常に短い会話は何も生成しない可能性があります。`--print`、`--output-format stream-json`、および `--verbose` が必要です。[プロンプト提案](/docs/ja/interactive-mode#prompt-suggestions) を参照してください | `claude -p --prompt-suggestions --output-format stream-json --verbose "query"` |


132| `--strict-mcp-config` | `--mcp-config` からのみ MCP サーバーを使用し、他のすべての MCP 設定を無視します。[managed-mcp.json での排他的制御](/docs/ja/managed-mcp#exclusive-control-with-managed-mcp-json) を参照してください。管理 MCP ファイルの下でフラグが何をするかについては、Claude Code v2.1.248 以降が必要です | `claude --strict-mcp-config --mcp-config ./mcp.json` |132| `--strict-mcp-config` | `--mcp-config` からのみ MCP サーバーを使用し、他のすべての MCP 設定を無視します。[managed-mcp.json での排他的制御](/docs/ja/managed-mcp#exclusive-control-with-managed-mcp-json) を参照してください。管理 MCP ファイルの下でフラグが何をするかについては、Claude Code v2.1.248 以降が必要です | `claude --strict-mcp-config --mcp-config ./mcp.json` |

133| `--system-prompt` | デフォルトシステムプロンプト全体をカスタムテキストで置き換えます | `claude --system-prompt "You are a Python expert"` |133| `--system-prompt` | デフォルトシステムプロンプト全体をカスタムテキストで置き換えます | `claude --system-prompt "You are a Python expert"` |

134| `--system-prompt-file` | ファイルからシステムプロンプトを読み込み、デフォルトプロンプトを置き換えます | `claude --system-prompt-file ./custom-prompt.txt` |134| `--system-prompt-file` | ファイルからシステムプロンプトを読み込み、デフォルトプロンプトを置き換えます | `claude --system-prompt-file ./custom-prompt.txt` |

135| `--system-prompt-snapshot` | `off` を渡して、[会話の最初のリクエストで記録された](#system-prompt-flags-in-resumed-conversations) プロンプトを再利用する代わりに、すべてのリクエストでシステムプロンプトを再構築します。例えば、`--continue` 実行全体で `--append-system-prompt` テキストを反復処理する場合。Claude Code v2.1.257 以降が必要です | `claude --system-prompt-snapshot off` |

135| `--teleport` | [Web セッション](/docs/ja/claude-code-on-the-web) をローカルターミナルで再開します | `claude --teleport` |136| `--teleport` | [Web セッション](/docs/ja/claude-code-on-the-web) をローカルターミナルで再開します | `claude --teleport` |

136| `--teammate-mode` | [エージェントチーム](/docs/ja/agent-teams) のチームメイトの表示方法を設定します:`in-process`(デフォルト)、`auto`、`tmux`、または `iterm2`(v2.1.186 で追加)。このセッションの [`teammateMode`](/docs/ja/settings-reference#teammatemode) 設定をオーバーライドします。[ディスプレイモードを選択](/docs/ja/agent-teams#choose-a-display-mode) を参照してください | `claude --teammate-mode auto` |137| `--teammate-mode` | [エージェントチーム](/docs/ja/agent-teams) のチームメイトの表示方法を設定します:`in-process`(デフォルト)、`auto`、`tmux`、または `iterm2`(v2.1.186 で追加)。このセッションの [`teammateMode`](/docs/ja/settings-reference#teammatemode) 設定をオーバーライドします。[ディスプレイモードを選択](/docs/ja/agent-teams#choose-a-display-mode) を参照してください | `claude --teammate-mode auto` |

137| `--tmux` | worktree 用に tmux セッションを作成します。`--worktree` が必要です。利用可能な場合は iTerm2 ネイティブペインを使用します。従来の tmux の場合は `--tmux=classic` を渡します | `claude -w feature-auth --tmux` |138| `--tmux` | worktree 用に tmux セッションを作成します。`--worktree` が必要です。利用可能な場合は iTerm2 ネイティブペインを使用します。従来の tmux の場合は `--tmux=classic` を渡します | `claude -w feature-auth --tmux` |

138| `--tools` | Claude が使用できる組み込みツールを制限します。`""` を使用してすべてを無効にし、`"default"` を使用してすべてを有効にするか、`"Bash,Edit,Read"` のようなツール名を使用します。[タスク追跡ツール](/docs/ja/tools-reference#task-tool-availability) のいずれかをここで名前を付けた場合、Claude Code もセッションをオプトインします。フラグは MCP ツールに影響しません。それらも拒否するには、`--disallowedTools "mcp__*"` を使用してください。[`EndConversation`](/docs/ja/tools-reference#endconversation-tool-behavior) を省略するリストはそれを削除しません。`""` は他の MCP ツールが残っていない場合にのみそれを削除します | `claude --tools "Bash,Edit,Read"` |139| `--tools` | Claude が使用できる組み込みツールを制限します。`""` を使用してすべてを無効にし、`"default"` を使用してデフォルトセットを使用するか、`"Bash,Edit,Read"` のようなツール名を使用します。macOS、Linux、および WSL では、デフォルトセットは [Glob ツール動作](/docs/ja/tools-reference#glob-tool-behavior) で説明されているように `Glob` と `Grep` を除外します。[タスク追跡ツール](/docs/ja/tools-reference#task-tool-availability) のいずれかをここで名前を付けた場合、Claude Code もセッションをオプトインします。フラグは MCP ツールに影響しません。それらも拒否するには、`--disallowedTools "mcp__*"` を使用してください。[`EndConversation`](/docs/ja/tools-reference#endconversation-tool-behavior) を省略するリストはそれを削除しません。`""` は他の MCP ツールが残っていない場合にのみそれを削除します | `claude --tools "Bash,Edit,Read"` |

139| `--verbose` | 詳細ログを有効にし、ターンごとの完全な出力を表示します。このセッションの [`viewMode`](/docs/ja/settings-reference#viewmode) 設定をオーバーライドします | `claude --verbose` |140| `--verbose` | 詳細ログを有効にし、ターンごとの完全な出力を表示します。このセッションの [`viewMode`](/docs/ja/settings-reference#viewmode) 設定をオーバーライドします | `claude --verbose` |

140| `--version`、`-v` | バージョン番号を出力します | `claude -v` |141| `--version`、`-v` | バージョン番号を出力します | `claude -v` |

141| `--worktree`、`-w` | Claude を `<repo>/.claude/worktrees/<name>` の分離された [git worktree](/docs/ja/worktrees) で開始します。名前が指定されていない場合は、自動生成されます。`#<number>`、GitHub プルリクエスト URL、または GitLab マージリクエスト URL を渡して、[`origin` からその PR または MR をフェッチし、worktree をそこからブランチします](/docs/ja/worktrees#branch-from-a-pull-request)。GitLab マージリクエストからのブランチには Claude Code v2.1.233 以降が必要です | `claude -w feature-auth` |142| `--worktree`、`-w` | Claude を `<repo>/.claude/worktrees/<name>` の分離された [git worktree](/docs/ja/worktrees) で開始します。名前が指定されていない場合は、自動生成されます。`#<number>`、GitHub プルリクエスト URL、または GitLab マージリクエスト URL を渡して、[`origin` からその PR または MR をフェッチし、worktree をそこからブランチします](/docs/ja/worktrees#branch-from-a-pull-request)。GitLab マージリクエストからのブランチには Claude Code v2.1.233 以降が必要です | `claude -w feature-auth` |


144 システムプロンプトフラグ145 システムプロンプトフラグ

145</h3>146</h3>

146 147 

147Claude Code は、システムプロンプトをカスタマイズするための 4 つのフラグを提供します。すべて 4 つはインタラクティブモードと非インタラクティブモードの両方で機能します。148Claude Code は、システムプロンプトをカスタマイズするための 5 つのフラグを提供します。4 つはそのテキストを設定し、`--system-prompt-snapshot` を使用して、会話がそれを開始したテキストを保持するかどうかを制御します。5 つすべてがインタラクティブモードと非インタラクティブモードの両方で機能します。

148 149 

149| フラグ | 動作 | 例 |150| フラグ | 動作 | 例 |

150| :---------------------------- | :----------------------- | :------------------------------------------------------ |151| :---------------------------- | :-------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------- |

151| `--system-prompt` | デフォルトプロンプト全体を置き換えます | `claude --system-prompt "You are a Python expert"` |152| `--system-prompt` | デフォルトプロンプト全体を置き換えます | `claude --system-prompt "You are a Python expert"` |

152| `--system-prompt-file` | ファイルの内容で置き換えます | `claude --system-prompt-file ./prompts/review.txt` |153| `--system-prompt-file` | ファイルの内容で置き換えます | `claude --system-prompt-file ./prompts/review.txt` |

153| `--append-system-prompt` | デフォルトプロンプトに追加します | `claude --append-system-prompt "Always use TypeScript"` |154| `--append-system-prompt` | デフォルトプロンプトに追加します | `claude --append-system-prompt "Always use TypeScript"` |

154| `--append-system-prompt-file` | ファイルの内容をデフォルトプロンプトに追加します | `claude --append-system-prompt-file ./style-rules.txt` |155| `--append-system-prompt-file` | ファイルの内容をデフォルトプロンプトに追加します | `claude --append-system-prompt-file ./style-rules.txt` |

156| `--system-prompt-snapshot` | `off` を使用すると、プロンプトを再構築します。`on` を使用すると、デフォルトで、[記録が適用される](#system-prompt-flags-in-resumed-conversations) 場所で記録されたプロンプトを再利用します | `claude --append-system-prompt "Draft rules" --system-prompt-snapshot off` |

155 157 

156`--system-prompt` と `--system-prompt-file` は相互に排他的です。追加フラグは、置き換えフラグのいずれかと組み合わせることができます。158`--system-prompt` と `--system-prompt-file` は相互に排他的です。追加フラグは、置き換えフラグのいずれかと組み合わせることができます。

157 159 

158Claude Code のデフォルトの ID がタスクに適合しているかどうかに基づいて選択してください。Claude が追加のルールも従うコーディングアシスタントのままである場合は、追加フラグを使用してください:呼び出しごとの指示、出力形式設定、または `-p` スクリプトのドメインコンテキスト。追加することで、デフォルトのツールガイダンス、安全指示、およびコーディング規約が保持されるため、異なる部分のみを提供します。システムプロンプトの表面、ID、または権限モデルが Claude Code のものと異なる場合は、置き換えフラグを使用してください。例えば、人間が監視していないパイプラインの非コーディングエージェント。置き換えることで、デフォルトプロンプト全体が削除されます。ツールガイダンスと安全指示を含めて、タスクがまだ必要とするものについて責任を負います。160Claude Code のデフォルトの ID がタスクに適合しているかどうかに基づいて選択してください。Claude が追加のルールも従うコーディングアシスタントのままである場合は、追加フラグを使用してください:呼び出しごとの指示、出力形式設定、または `-p` スクリプトのドメインコンテキスト。追加することで、デフォルトのツールガイダンス、安全指示、およびコーディング規約が保持されるため、異なる部分のみを提供します。システムプロンプトの表面、ID、または権限モデルが Claude Code のものと異なる場合は、置き換えフラグを使用してください。例えば、人間が監視していないパイプラインの非コーディングエージェント。置き換えることで、デフォルトプロンプト全体が削除されます。ツールガイダンスと安全指示を含めて、タスクがまだ必要とするものについて責任を負います。

159 161 

160これらのフラグは現在の呼び出しにのみ適用されます。プロジェクト全体で切り替えて共有できる永続的なペルソナについては、[出力スタイル](/docs/ja/output-styles) を使用してください。Claude が常に従うべきプロジェクト規約については、[CLAUDE.md](/docs/ja/memory) を使用してください。[Agent SDK ガイドのシステムプロンプト](/docs/ja/agent-sdk/modifying-system-prompts#decide-on-a-starting-point) は、より詳細に同じ決定をカバーしています。162永続的なペルソナについては、プロジェクト全体で切り替えて共有できるため、[出力スタイル](/docs/ja/output-styles) を使用してください。Claude が常に従うべきプロジェクト規約については、[CLAUDE.md](/docs/ja/memory) を使用してください。[Agent SDK ガイドのシステムプロンプト](/docs/ja/agent-sdk/modifying-system-prompts#decide-on-a-starting-point) は、より詳細に同じ決定をカバーしています。

163 

164<h4 id="system-prompt-flags-in-resumed-conversations">

165 システムプロンプトフラグが再開された会話で

166</h4>

167 

168デフォルトでは、Claude Code はシステムプロンプトを 1 回構築し、会話の最初のリクエストで、適用されたシステムプロンプトフラグからのテキストを使用して、セッションに記録します。会話がコンパクト化されるまで、その後のすべてのリクエストは、`--resume` または `--continue` で会話に戻った後を含めて、その記録されたプロンプトを使用します。異なるシステムプロンプトフラグテキストを渡すか、後の起動時に何も渡さない場合、会話がコンパクト化されるか、新しい会話を開始するときに有効になります。

169 

170`--bare` を渡すか、`CLAUDE_CODE_SIMPLE=1` を設定して [bare mode](/docs/ja/headless#start-faster-with-bare-mode) で Claude Code を開始する場合、記録は `--system-prompt-snapshot on` を渡さない限りオフのままです。v2.1.268 より前は、[機能フラグをフェッチしない](/docs/ja/env-vars#features-that-need-feature-flag-fetching) セッション(Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry を含む)は、すべてのリクエストでプロンプトを再構築し、`--system-prompt-snapshot` は効果がありませんでした。

171 

172すべてのリクエストでプロンプトを再構築するには、例えば `--continue` 実行全体でそのテキストを反復処理する場合は、`--system-prompt-snapshot off` を渡します。v2.1.265 より前は、システムプロンプトフラグのいずれかを渡すことで、`--system-prompt-snapshot on` を渡さない限り、記録がオフになりました。

161 173 

162<h2 id="see-also">174<h2 id="see-also">

163 関連項目175 関連項目

cloud-environments.md +806 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# クラウド環境を設定する

6 

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

8 

9<Note>

10 クラウド環境には [Web 上の Claude Code](/docs/ja/claude-code-on-the-web) が必要です。これは Pro、Max、Team ユーザーの研究プレビュー版であり、[プレミアムシートまたは Chat + Claude Code シートを持つ](https://support.claude.com/en/articles/11845131-use-claude-code-with-your-team-or-enterprise-plan) Enterprise ユーザー向けです。

11</Note>

12 

13各 [クラウドセッション](/docs/ja/claude-code-on-the-web) はクラウド環境で実行されます。環境を設定して [ネットワークアクセス](#access-levels) を許可または拒否し、セッション用に [環境変数を設定](#set-environment-variables) し、Pro および Max プランで [API 認証情報](#add-api-credentials) を保存してセッションが認証情報を見ずに使用でき、Claude が作業を開始する前に [セットアップスクリプト](#setup-scripts) を実行できます。

14 

15同じ環境は、クラウドセッションを開始する場所に関係なく適用されます。[Web 上の Claude Code](/docs/ja/claude-code-on-the-web)、[`claude --cloud`](/docs/ja/claude-code-on-the-web#from-terminal-to-web) を使用したターミナル、[Claude Tag](https://claude.com/docs/claude-tag/overview)、[ルーチン](/docs/ja/routines)、[Claude モバイルアプリ](/docs/ja/mobile)、[Desktop アプリ](/docs/ja/desktop) です。これらの各サーフェスは [セルフホスト環境](/docs/ja/self-hosted-environments) にもルーティングできます。[利用可能性と制限](/docs/ja/self-hosted-environments#availability-and-limitations) は、Claude Tag セッションがセルフホスト環境で実行される場合に Claude がまだ使用できないものをカバーしています。

16 

17<Info>

18 [Remote Control](/docs/ja/remote-control) セッションは Web とモバイルインターフェイスを自分のマシン上のセッションに接続します。これはクラウド環境ではなく、自分のマシンのネットワークとファイルを使用します。Claude Tag チャネルセッションは [共有環境](#organization-shared-environments) または [セルフホスト環境](/docs/ja/self-hosted-environments) のいずれかの組織レベルの環境のみを使用します。

19</Info>

20 

21<h2 id="the-default-environment">

22 Default 環境

23</h2>

24 

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

26 

27* **`/web-setup` などの CLI フロー**:**Default** を作成します

28* **Pro および Max での Web オンボーディング**:**Default** を作成します

29* **Team および Enterprise での Web オンボーディング**:オーナーが [Quick web setup](/docs/ja/claude-code-on-the-web#github-authentication-options) をオンにしていない限り、**最初のクラウド環境を作成** フォームを表示します。フォームのデフォルトを保持して **作成して完了** をクリックして、同じ **Default** 環境を取得します

30 

31**Default** は独自の設定を持ちません。

32 

33* [**Trusted** ネットワークアクセス](#access-levels):セッションはパッケージレジストリおよび他の [許可リストドメイン](#default-allowed-domains) に到達でき、セッションのネットワークを通じて他には何も到達できません。

34* その他の設定なし:**Default** は環境変数またはセットアップスクリプトを定義しないため、セッションは [プリインストールされたツール](#installed-tools) だけで開始されます。

35 

36**Default** のみが利用可能な場合、すべてのセッションはそれで実行されます。複数の環境がある場合、セッションはサーフェスごとに 1 つを選択します。

37 

38* Web、Desktop アプリ、モバイルアプリでは、セッションは [セレクタ](#configure-your-environment) に表示される環境を使用します。オーナーが設定した [組織のデフォルト](#organization-shared-environments) は、選択していない場合にセレクションを埋めます。

39* CLI からは、Claude Code は [`/remote-env` の選択](#select-an-environment-from-the-cli) を使用するか、リストに 1 つある場合は Anthropic ホスト環境にフォールバックし、そうでない場合はブリッジ環境ではないリスト内の最初の環境にフォールバックします。ブリッジ環境は、クラウド環境ではなく独自のマシンを表すために [Remote Control](/docs/ja/remote-control) が登録するエントリです。[セルフホスト環境](/docs/ja/self-hosted-environments) の場合、[セッションをディスパッチする](/docs/ja/self-hosted-environments-testing#run-the-test-loop) ときに `ccpool_` ID を持つ `--environment <environment-id>` を渡すと、その呼び出しの `/remote-env` の選択とフォールバックをオーバーライドします。Claude Code は Anthropic ホスト `env_` ID をフラグに渡されたものを拒否するため、それらをターゲットにするには `/remote-env` を使用します。フラグには Claude Code v2.1.224 以降が必要です。

40 

41デフォルトでは不十分な場合は環境を設定します。Claude が [デフォルト許可リスト](#default-allowed-domains) 外のドメインに到達する必要がある場合、セッション用に環境変数を設定する必要がある場合、または作業を開始する前に依存関係をインストールする必要がある場合です。

42 

43<h2 id="configure-your-environment">

44 環境を設定する

45</h2>

46 

47[web onboarding](/docs/ja/web-quickstart) 後に [claude.ai/code](https://claude.ai/code) で、または [Desktop app](/docs/ja/desktop#cloud-sessions) のプロンプトボックスから環境セレクターにアクセスして、環境を作成、編集、アーカイブできます。作成した環境はアカウントに個人的なものです。Owner が作成した [共有環境](#organization-shared-environments) は同じセレクターに表示されます。設定なしで利用可能な内容については、[インストール済みツール](#installed-tools) を参照してください。

48 

49<Steps>

50 <Step title="環境セレクターを開く">

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

52 

53 <Frame>

54 <img src="https://mintcdn.com/claude-code/ZFId6l95856c5LSw/images/cloud-environment-selector.png?fit=max&auto=format&n=ZFId6l95856c5LSw&q=85&s=cc2813a5664519eaf5a89d793ce5af26" alt="claude.ai/code のメッセージボックスの上に開いた環境セレクター。環境名 Default を表示するクラウドボタンがメッセージボックスの上の行に位置します。開いたメニューには、Download と Desktop only ラベルを持つ Local 行、Default 環境がチェックマークで選択され、ホバー時に設定ギアアイコンを表示する Cloud セクション、Add cloud environment オプション、セットアップ手順を含む Remote Control セクションが表示されます。" width="1672" height="682" data-path="images/cloud-environment-selector.png" />

55 </Frame>

56 </Step>

57 

58 <Step title="環境を追加または編集する">

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

60 

61 <Frame>

62 <img src="https://mintcdn.com/claude-code/ZFId6l95856c5LSw/images/cloud-environment-dialog.png?fit=max&auto=format&n=ZFId6l95856c5LSw&q=85&s=30d4478b31d1f879f7ee287ddab32505" alt="New cloud environment ダイアログ。プレースホルダー Default を持つ Name フィールド、Trusted に設定されたネットワークアクセスセレクター(ネットワークポリシーとアクセスレベルへのリンク付き)、.env 形式のプレースホルダーテキストを表示する Environment variables ボックス(値は環境を使用する誰もが見ることができるという注記付き)、新しいセッション開始時に Claude Code が起動する前に実行される Bash スクリプトとして説明される Setup script ボックス、および Cancel と Create environment ボタン。" width="874" height="1372" data-path="images/cloud-environment-dialog.png" />

63 </Frame>

64 </Step>

65</Steps>

66 

67<h3 id="set-environment-variables">

68 環境変数を設定する

69</h3>

70 

71環境変数は `.env` 形式を使用し、1 行に 1 つの `KEY=value` ペアです。プレーン値は引用符が不要で、一致するペアで値を引用符で囲む場合、引用符は値の一部にはなりません。複数行にまたがる値または `#` を含む値を引用符で囲みます。引用符なしの値では、`#` はコメントを開始し、行の残りは削除されます。

72 

73次の例は 3 つの変数を定義します。

74 

75```text theme={null}

76NODE_ENV=development

77LOG_LEVEL=debug

78DATABASE_URL=postgres://localhost:5432/myapp

79```

80 

81各セッションは起動時に環境の値を 1 回コピーして、Claude が実行するコマンドが読み取ることができる通常の環境変数にします。実行中のセッションは設定を再度読み込まないため、変数の編集または追加は、その後に開始するセッションに影響します。既に実行中のセッションは、開始時の値を保持します。

82 

83Web 上の Claude Code は、セッション開始時に自身でいくつかの変数も設定します。[`CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`](/docs/ja/claude-code-on-the-web#manage-context) の場合、Web 上の Claude Code が設定する値は、ここで追加する値をオーバーライドするため、ここでこのキーを追加しても効果がありません。

84 

85環境を使用する誰もが値を読み取ることができます。Pro および Max プランでは、エージェントプロキシがリクエストに添付できるキーについて、代わりに [API 認証情報](#add-api-credentials) を使用してください。[認証情報を取得しないリクエスト](#requests-that-never-get-the-credential) はそこにリストされています。

86 

87<h3 id="add-api-credentials">

88 API 認証情報を追加する

89</h3>

90 

91API 認証情報は、クラウド環境に保存する API キーまたはトークンで、Claude が環境内の任意のセッションからそのキーを見ることなく API を呼び出すことができます。Anthropic のエージェントプロキシは、リストしたホストへのリクエストにキーを追加します。各リクエストがセッションの VM を離れた後です。キーは Claude、実行するコマンド、またはセッションの環境変数に到達しません。

92 

93API 認証情報は Pro および Max プランで利用可能です。Team および Enterprise プランではまだ利用できないため、**API credentials** セクションはこれらのプランの環境ダイアログに表示されません。

94 

95<h4 id="requirements">

96 要件

97</h4>

98 

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

100 

101* **Role**: claude.ai 組織の組織管理者ロール

102 * Team および Enterprise では、Owner がこれを保持し、Admin は保持しません

103 * Pro および Max では、独自の組織でこれを保持します

104 * これがない場合、独自の環境でも認証情報リストの代わりにメモが表示されます。Owner に共有環境に認証情報を追加してそこでセッションを実行するよう依頼してください

105* **Environment type**: 既に存在する Anthropic ホスト型クラウド環境。[self-hosted environment](/docs/ja/self-hosted-environments) には API 認証情報がありません

106* **API reachability**: API がインターネットからの接続を受け入れます。リクエストは Anthropic のネットワークから離れるためです

107* **Encryption keys**: 組織がカスタマー管理暗号化キーを使用する場合、認証情報を保存できません

108 

109<h4 id="add-a-credential">

110 認証情報を追加する

111</h4>

112 

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

114 

115<Steps>

116 <Step title="環境の API 認証情報を開く">

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

118 </Step>

119 

120 <Step title="認証情報を追加する">

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

122 

123 * **Name**: `Internal billing API` などの認証情報のラベル

124 * **Allowed websites**: `api.example.com` などの API のホスト。先頭の `*.` はすべてのサブドメインに一致します

125 * **Custom headers**: キーを運ぶヘッダーの 1 行。行は `Authorization` をヘッダーの **Name** として、`Bearer` を **Prefix** として開始します。キー自体を **Value** として貼り付けます。`X-Api-Key` のようなベア値を取るヘッダーの場合、名前を変更してプレフィックスをクリアします

126 

127 別の方法で認証する API の場合、別の **Credential type** を選択します。リストは [Claude Tag](https://claude.com/docs/claude-tag/overview)(Team および Enterprise プランの Slack 統合)が [connections](https://claude.com/docs/claude-tag/admins/add-connections) に提供するものと同じです。

128 </Step>

129 

130 <Step title="認証情報を保存する">

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

132 </Step>

133</Steps>

134 

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

136 

137<h4 id="which-requests-get-the-credential">

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

139</h4>

140 

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

142 

143<h4 id="requests-that-never-get-the-credential">

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

145</h4>

146 

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

148 

149* **GitHub**: [GitHub proxy](#github-proxy) は代わりに GitHub へのリクエストを認証するため、GitHub の API 認証情報は不要です

150* **Anthropic API およびパブリックパッケージレジストリ**: `api.anthropic.com`、`registry.npmjs.org`、`jsr.io`、`npm.jsr.io`、`pypi.org`、`files.pythonhosted.org`、`index.crates.io`、および `proxy.golang.org`

151* **Setup script requests**: Claude Code は [setup script](#setup-scripts) が実行された後、起動時にエージェントプロキシに接続します

152 

153<h3 id="select-an-environment-from-the-cli">

154 CLI から環境を選択する

155</h3>

156 

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

158 

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

160 

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

162 

163<h3 id="archive-an-environment">

164 環境をアーカイブする

165</h3>

166 

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

168 

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

170 

171* 環境で既に実行中のセッションは引き続き機能します。

172* 環境はセレクターと `/remote-env` から消えるため、新しいセッションに選択できません。

173* 環境の API 認証情報は実行中のセッションに添付されたままです。アーカイブする前に、不要になったものを削除してください。

174* アーカイブされた環境では、どのサーフェスでも新しいセッションを開始できません。環境が保存された [CLI default](#select-an-environment-from-the-cli) だった場合、リストに 1 つがある場合は Anthropic ホスト型環境で Claude Code が CLI クラウドセッションを開始し、そうでない場合は [Remote Control bridge environment](#the-default-environment) ではないリスト内の最初の環境で開始します。[routine](/docs/ja/routines#environments-and-network-access) など環境で明示的に設定されたものは、新しいセッションをそこで開始できません。別の環境を指してください。

175 

176<h3 id="organization-shared-environments">

177 組織共有環境

178</h3>

179 

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

181 

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

183 

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

185 

186<h3 id="set-the-environment-a-claude-tag-channel-uses">

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

188</h3>

189 

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

191 

192* 共有環境または self-hosted 環境を [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) で組織の [default environment](#the-default-environment) として設定します。

193* [Claude Tag 管理設定でチャネルに 1 つをピンします](https://claude.com/docs/claude-tag/admins/troubleshooting#channel-sessions-use-the-wrong-environment-or-can%E2%80%99t-find-one)。

194 

195<h2 id="network-access">

196 ネットワークアクセス

197</h2>

198 

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

200 

201環境のネットワークアクセスを変更するには、[編集用に開いて](#configure-your-environment) ダイアログの **Network access** セレクタを使用します。セレクタを開くクラウドアイコンは、[Default 環境](#the-default-environment) の下にリストされたアプリサーフェスおよび [ルーチンエディタ](/docs/ja/routines#environments-and-network-access) に表示されます。個人環境は claude.ai アカウント設定に別のページを持ちません。

202 

203<Note>

204 セッションまたはルーチンで有効にする MCP コネクタは、コネクタホストを **Allowed domains** に追加しなくても機能します。コネクタトラフィックはセッションのネットワークではなく Anthropic のサーバーを通じて移動するためです。コネクタはセッションごとまたはルーチンごとに設定します。Claude が到達できるツールを制限するために不要なものを削除します。これは [セキュリティと分離](/docs/ja/claude-code-on-the-web#security-and-isolation) の下に記載されている同じ Anthropic バウンドチャネルに依存します。

205</Note>

206 

207<h3 id="access-levels">

208 アクセスレベル

209</h3>

210 

211[環境ダイアログ](#configure-your-environment) の **Network access** フィールドは 4 つのレベルのいずれかを取ります。

212 

213| レベル | 送信接続 |

214| :---------- | :------------------------------------------------------------------ |

215| **None** | セッションのネットワークを通じた送信ネットワークアクセスなし |

216| **Trusted** | [許可リストドメイン](#default-allowed-domains) のみ:パッケージレジストリ、GitHub、クラウド SDK |

217| **Full** | 任意のドメイン |

218| **Custom** | 独自の許可リスト(オプションでデフォルトを含む) |

219 

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

221 

222* GitHub([別のプロキシ](#github-proxy) を通じて)

223* [MCP コネクタ](#network-access)(トラフィックが Anthropic のサーバーを通じて移動)

224* 環境の [API 認証情報](#add-api-credentials) にリストしたホスト([エージェントプロキシがスキップするホスト](#requests-that-never-get-the-credential) を除く)

225* Anthropic API(Claude Code 独自のリクエスト用。[セキュリティと分離](/docs/ja/claude-code-on-the-web#security-and-isolation) の下に記載されているように **None** でも)

226 

227<h3 id="allow-specific-domains">

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

229</h3>

230 

231Trusted リストにないドメインを許可するには、環境のネットワークアクセス設定で **Custom** を選択し、**Allowed domains** フィールドに 1 行に 1 つのドメインをリストします。この例は、内部プロジェクトが必要とする可能性のある 3 つのホストを許可します。

232 

233```text theme={null}

234api.example.com

235*.internal.example.com

236registry.example.com

237```

238 

239この環境のセッションは `api.example.com`、`internal.example.com` のすべてのサブドメイン、および `registry.example.com` に到達でき、セッションのネットワークを通じて他のドメインには到達できません。[GitHub トラフィック](#github-proxy)、[MCP コネクタトラフィック](#network-access)、および環境の [API 認証情報](#add-api-credentials) のホストへのリクエスト([エージェントプロキシがスキップするホスト](#requests-that-never-get-the-credential) を除く)はこの許可リストを通じません。先頭の `*.` はすべてのサブドメインと一致します。[Trusted ドメイン](#default-allowed-domains) も保持するには、**一般的なパッケージマネージャーのデフォルトリストも含める** をチェックします。チェックを外すと、リストしたもののみを許可します。

240 

241組織が [アーティファクト](/docs/ja/artifacts#availability) を使用する場合、セッションがそれらを読み取るために `*.frame.claudeusercontent.com` をリストに含める必要はありません。リストがそのホストを除外する場合、Claude Code はセッションの Anthropic への接続を通じてアーティファクトコンテンツを読み取ります。ホストを許可リストに保持する 2 つの状況があります。

242 

243* **この環境のセッションが別の組織のパブリックアーティファクトを開く**:Claude Code はホストから直接それらをフェッチするため、このリストに追加します。

244* **ローカル CLI またはセルフホスト実行を設定している**:ホストをその許可リストに保持します。[ネットワークアクセス要件](/docs/ja/network-config#network-access-requirements) およびセルフホスト [ネットワーク要件](/docs/ja/self-hosted-environments-deploy#network-requirements) を参照してください。

245 

246各環境は独自の許可ドメインリストを持ちます。管理者がすべてのメンバーの環境にプッシュできる組織レベルの許可リストはありません。[サーバー管理設定](/docs/ja/server-managed-settings) はクラウドセッション内に適用されますが、環境のネットワーク許可リストにドメインを追加するものはありません。

247 

248<h3 id="github-proxy">

249 GitHub プロキシ

250</h3>

251 

252Anthropic ホスト環境では、すべての GitHub 操作は、セッションの VM の外に実際の GitHub 認証情報を保持する専用プロキシを通じて行われます。これは環境の [アクセスレベル](#access-levels) とは独立しています。セルフホスト環境のセッションは、デプロイが提供する認証情報で git 操作を認証します。[Git を設定する](/docs/ja/self-hosted-environments-deploy#configure-git) はオプションをカバーしています。セッションごとにミントされた認証情報とこの同じプロキシへのオプトインを含みます。プロキシは以下を提供します。

253 

254* **Git 認証情報**:VM 内の git クライアントはスコープされた認証情報を使用し、プロキシはそれを検証して実際の GitHub トークンと交換します。

255* **API リクエスト**:組み込み GitHub ツールからのリクエスト、および [`proxy-injected` プレースホルダー](#work-with-github-issues-and-pull-requests) の下の `gh` からのリクエストは、実際の認証情報が置き換えられた状態で送信されます。

256* **プッシュ保護**:`git push` はセッションの現在の作業ブランチに対してのみ機能します。クローン、フェッチ、PR 操作は通常どおり機能します。

257* **リポジトリスコープ**:GitHub API およびリリースアセットリクエストはセッションに接続されたリポジトリのみに到達するため、セットアップスクリプトが接続されていないリポジトリからリリースアセットをダウンロードすると 403 が返されます。

258* **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 に到達できません。

259 

260パブリックリポジトリからのコミットされたファイルは `raw.githubusercontent.com` を通じて到達し、[セキュリティプロキシ](#security-proxy) がそれを処理します。そのドメインはデフォルト [Trusted リスト](#default-allowed-domains) にあるため、環境の [アクセスレベル](#access-levels) がそれを除外しない限り、これらのファイルは到達可能なままです。

261 

262<h3 id="security-proxy">

263 セキュリティプロキシ

264</h3>

265 

266Anthropic ホスト環境のクラウドセッションはセキュリティと不正使用防止のため HTTP/HTTPS ネットワークプロキシの背後で実行されます。[セルフホスト環境](/docs/ja/self-hosted-environments-deploy#default-deny-egress) では、送信トラフィックは代わりに独自のネットワーク境界を通じて離れます。Anthropic ホスト セッションからのすべての送信インターネットトラフィックはこのプロキシを通じて渡され、以下を提供します。

267 

268* 悪意のあるリクエストに対する保護

269* レート制限と不正使用防止

270* 強化されたセキュリティのためのコンテンツフィルタリング

271* リクエストされたホスト名の DNS レベルの監査証跡

272 

273<h2 id="what’s-available-in-cloud-sessions">

274 クラウドセッションで利用可能なもの

275</h2>

276 

277Anthropic ホスト環境では、各セッションは独自のオペレーティングシステムに関係なく Ubuntu 24.04 を実行する新しい仮想マシン(VM)を x86\_64 で取得し、リポジトリがクローンされ、一般的なツールチェーンがプリインストールされています。依存関係がプリコンパイルされたバイナリを提供する場合(Ruby gems とネイティブ拡張またはプリビルト Python wheels など)、VM と一致するように x86\_64 Linux ビルドを使用します。このセクションでは Anthropic ホスト デフォルト、組み込み GitHub ツール、[テストとサービスの実行](#run-tests-start-services-and-add-packages) 方法、および各 VM が取得する [リソース制限](#resource-limits) について説明します。

278 

279<Note>

280 組織が [セルフホスト環境](/docs/ja/self-hosted-environments) にルーティングするセッションは、代わりに独自のランナーで実行され、ランナーイメージが提供するツールを使用します。

281</Note>

282 

283<h3 id="what-carries-over-from-your-setup">

284 セットアップから引き継がれるもの

285</h3>

286 

287クラウドセッションはリポジトリの新しいクローンから開始されます。リポジトリにコミットしたものはすべて利用可能です。独自のマシンにのみインストールまたは設定したものはセッションで利用できません。組織のポリシーは [サーバー管理設定](/docs/ja/server-managed-settings) を通じて別途到達します。

288 

289| | クラウドセッションで利用可能 | 理由 |

290| :-------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

291| リポジトリの `CLAUDE.md` | はい | クローンの一部 |

292| リポジトリの `.claude/settings.json` フック | はい | クローンの一部 |

293| リポジトリの `.mcp.json` MCP サーバー | はい | クローンの一部 |

294| リポジトリの `.claude/rules/` | はい | クローンの一部 |

295| リポジトリの `.claude/skills/`、`.claude/agents/`、`.claude/commands/` | はい | クローンの一部 |

296| `.claude/settings.json` で宣言されたプラグイン | はい | 宣言した [マーケットプレイス](/docs/ja/plugin-marketplaces) からセッション開始時にインストールされます。マーケットプレイスソースに到達するにはネットワークアクセスが必要です |

297| 組織の [サーバー管理設定](/docs/ja/server-managed-settings) | はい | セッション開始時に Anthropic のサーバーから取得されます。クラウドセッションで `availableModels` がどのように適用されるかについては [サーフェスカバレッジ](/docs/ja/model-config#surface-coverage) を参照してください。MDM または管理設定ファイルを通じてデバイスにデプロイされた設定は適用されません。セッションは Anthropic 管理 VM で実行されるためです。[セルフホスト環境](/docs/ja/self-hosted-environments) では、セッションはランナーイメージの管理設定ファイルも読み取ります。[Claude Code が管理ソースを組み合わせる方法](/docs/ja/managed-settings#how-claude-code-combines-managed-sources) に従います |

298| ユーザー `~/.claude/CLAUDE.md` | いいえ | マシンに存在し、リポジトリには存在しません |

299| ユーザー `~/.claude/skills/`、`~/.claude/agents/`、`~/.claude/commands/` | いいえ | マシンに存在し、リポジトリには存在しません。代わりにリポジトリの `.claude/` ディレクトリにコミットします。クラウドセッションは claude.ai で有効にしたスキルを自動的にロードします |

300| ユーザー設定でのみ有効なプラグイン | いいえ | ユーザースコープの `enabledPlugins` は `~/.claude/settings.json` に存在します。代わりにリポジトリの `.claude/settings.json` で宣言します。または claude.ai アカウントで有効にして、Claude Code が [同期プラグイン](/docs/ja/plugins-reference#synced-plugins) としてロードするようにします |

301| デフォルトのローカルスコープまたはユーザースコープで `claude mcp add` で追加した MCP サーバー | いいえ | これらはマシンの `~/.claude.json` に書き込まれ、リポジトリには書き込まれません。`claude mcp add --scope project` でサーバーを追加します。これはリポジトリの [`.mcp.json`](/docs/ja/mcp#project-scope) に書き込まれ、そのファイルをコミットします |

302| リポジトリの `.claude/settings.json` `env` ブロック内のトランスポート変数(`NODE_EXTRA_CA_CERTS` および [mTLS クライアント証明書変数](/docs/ja/network-config#mtls-authentication) など) | いいえ | ホスティング環境はセッションの API 接続を管理するため、Claude Code はこれらのキーを無視し、セッションのデバッグログで各無視されたキーを記録します |

303| サービス Claude が呼び出す API キーとトークン | Pro および Max プランでは [API 認証情報](#add-api-credentials) として | キーを環境に 1 回追加し、エージェントプロキシがリストしたホストへのリクエストに接続します。エージェントプロキシが [接続できない](#requests-that-never-get-the-credential) キー、または Team または Enterprise プランのキーは環境変数に留まります |

304| AWS SSO などのインタラクティブ認証 | いいえ | サポートされていません。SSO はクラウドセッションで実行できないブラウザベースのログインが必要です |

305 

306独自の設定をクラウドセッションで利用可能にするには、リポジトリにコミットします。

307 

308環境を使用する誰もが環境変数とセットアップスクリプトを読み取ることができます。ダイアログの **環境変数** の下のメモはそう述べており、シークレットを追加しないよう警告します。Pro および Max プランでは、エージェントプロキシが接続できるキーを [API 認証情報](#add-api-credentials) として代わりに保存します。

309 

310<h3 id="installed-tools">

311 インストール済みツール

312</h3>

313 

314クラウドセッションには、一般的な言語ランタイム、ビルドツール、データベースがプリインストールされています。以下の表は、カテゴリ別に含まれるものをまとめています。

315 

316| カテゴリ | 含まれるもの |

317| :---------- | :-------------------------------------------------------- |

318| **Python** | pip、poetry、uv、black、mypy、pytest、ruff を備えた Python 3.x |

319| **Node.js** | 20、21、22(npm、yarn、pnpm、bun¹、eslint、prettier、chromedriver) |

320| **Ruby** | gem、bundler、rbenv を備えた 3.1、3.2、3.3 |

321| **PHP** | Composer を備えた 8.3 |

322| **Java** | Maven と Gradle を備えた OpenJDK 21 |

323| **Go** | モジュールサポート付きの Go |

324| **Rust** | rustc と cargo |

325| **C/C++** | GCC、Clang、cmake、ninja、conan |

326| **Docker** | docker、dockerd、docker compose |

327| **データベース** | PostgreSQL 16、Redis 7.0 |

328| **ユーティリティ** | git、gh、jq、yq、ripgrep、tmux、vim、nano |

329 

330¹ Bun はインストールされていますが、パッケージフェッチに関して既知の [プロキシ互換性の問題](#install-dependencies-with-a-sessionstart-hook) があります。

331 

332このテーブルのほとんどのツールのバージョンを取得するには、Claude にクラウドセッションで `check-tools` を実行するよう依頼してください。これはスラッシュコマンドではなく、セッション VM にインストールされたシェルコマンドです。[Claude はすべての VM コマンドを実行します](#run-tests-start-services-and-add-packages)。Ruby、PHP、bun、PostgreSQL、Redis などのツールについては、Claude にツール独自のバージョンコマンド(例:`psql --version`)を実行するよう依頼してください。

333 

334Node.js バージョンは `/opt/node20`、`/opt/node21`、`/opt/node22` にインストールされ、デフォルトで 22 が `PATH` にあります。別のバージョンで作業するには、Claude にそのバージョンの `bin` ディレクトリ(例:`/opt/node20/bin`)を `PATH` の前に追加するよう依頼してください。

335 

336.NET SDK などのこのリスト外のツールチェーンは、パッケージレジストリが [デフォルト許可リスト](#default-allowed-domains) にある場合でも、プリインストールされていません。[セットアップスクリプト](#setup-scripts) でインストールします。

337 

338<h3 id="work-with-github-issues-and-pull-requests">

339 GitHub の問題とプルリクエストを操作する

340</h3>

341 

342クラウドセッションには、Claude が問題を読み取り、プルリクエストをリストし、差分をフェッチし、セットアップなしでコメントを投稿できる組み込み GitHub ツールが含まれています。これらのツールは [GitHub プロキシ](#github-proxy) を通じて認証され、[GitHub 認証オプション](/docs/ja/claude-code-on-the-web#github-authentication-options) の下で設定した方法を使用するため、トークンはコンテナに入りません。

343 

344[環境設定](#set-environment-variables) で `GH_TOKEN` または `GITHUB_TOKEN` を自分で設定するか、両方を設定しないままにして [GitHub プロキシ](#github-proxy) に認証を処理させることができます。

345 

346* トークンを設定する場合、それはコンテナに変更されずに渡されるため、スクリプトと GitHub の [`gh` CLI](https://cli.github.com) がインストールされている場合は直接使用します。

347* どちらも設定せず、[GitHub プロキシ](#github-proxy) がセッションの認証を処理している場合、両方の変数は Claude が実行するコマンドでプレースホルダー文字列 `proxy-injected` として読み取られ、プロキシは送信 GitHub リクエストで実際の認証情報を置き換えます。`gh` はトークンなしで機能しますが、`GITHUB_TOKEN` を直接読み取るスクリプトはプレースホルダーを取得し、使用可能なトークンは取得しません。

348 

349設定したトークンは通常の環境変数であるため、環境を使用する誰でも読み取ることができます。プロキシパスは認証情報を環境設定とセッション VM の外に保持します。

350 

351セッションに適用される場合を確認するには、Claude に `echo $GH_TOKEN` を実行するよう依頼してください。

352 

353GitHub の [`gh` CLI](https://cli.github.com) はプリインストールされています。組み込みツールがカバーしない `gh release` または `gh workflow run` などの `gh` コマンドが必要な場合は、Claude に実行するよう依頼してください。`gh` は `GH_TOKEN` を自動的に読み取るため、`gh auth login` を実行する必要はありません。

354 

355<h3 id="link-output-back-to-the-session">

356 セッションに出力をリンクバックする

357</h3>

358 

359各クラウドセッションは claude.ai 上にトランスクリプト URL を持ち、セッションは `CLAUDE_CODE_REMOTE_SESSION_ID` 環境変数から独自の ID を読み取ることができます。これを使用して、PR 本文、コミットメッセージ、Slack 投稿、または生成されたレポートに追跡可能なリンクを配置し、レビュアーがそれを生成した実行を開くことができるようにします。

360 

361Claude がクラウドセッションで作成するコミットには `Claude-Session: <url>` git トレーラーが含まれ、PR 本文にはセッション URL が独自の行に含まれます。これには v2.1.179 以降が必要です。トレーラーと PR 本文リンクを省略するには、[`attribution.sessionUrl`](/docs/ja/settings-reference#attribution-sessionurl) を `false` に設定します。設定には v2.1.182 以降が必要です。

362 

363セッションリンクをコミットまたは PR 以外のもの(Claude が投稿する Slack メッセージまたは書き込むレポートファイルなど)に含めるには、Claude に次のコマンドを実行させ、その出力を使用します。コマンドは環境変数の値の `cse_` プレフィックスをトランスクリプト URL が期待する `session_` プレフィックスに変換します。

364 

365```bash theme={null}

366echo "https://claude.ai/code/${CLAUDE_CODE_REMOTE_SESSION_ID/#cse_/session_}"

367```

368 

369<h3 id="run-tests-start-services-and-add-packages">

370 テストを実行し、サービスを開始し、パッケージを追加する

371</h3>

372 

373セッション VM へのシェルアクセスは取得できません。Claude はすべてのコマンドを実行するため、このセクションのタスクをプロンプトでリクエストとして表現します。

374 

375<h4 id="run-tests">

376 テストを実行する

377</h4>

378 

379Claude はタスクに取り組む際にテストを実行します。プロンプトで「`tests/` の失敗したテストを修正する」または「各変更後に pytest を実行する」のようにリクエストします。pytest や cargo test などの [プリインストールされたツールチェーン](#installed-tools) に付属するテストランナーは、追加のセットアップなしで機能します。jest などのプロジェクトが依存関係として宣言するランナーは、依存関係と共にインストールされます。

380 

381<h4 id="start-services">

382 サービスを開始する

383</h4>

384 

385PostgreSQL と Redis はプリインストールされていますが、デフォルトでは実行されていません。必要なものを開始するよう Claude に依頼します。実行するコマンドは次のとおりです。

386 

387```bash theme={null}

388service postgresql start

389```

390 

391```bash theme={null}

392service redis-server start

393```

394 

395Docker はコンテナ化されたサービスを実行するために利用可能です。Claude に `docker compose up` を実行するよう依頼して、プロジェクトのサービスを開始します。イメージをプルするためのネットワークアクセスは環境の [アクセスレベル](#access-levels) に従い、[Trusted デフォルト](#default-allowed-domains) には Docker Hub および他の一般的なレジストリが含まれます。

396 

397イメージが大きいか遅い場合は、[セットアップスクリプト](#setup-scripts) に `docker compose pull` または `docker compose build` を追加します。[環境キャッシュ](#environment-caching) はプルされたイメージを保持するため、各新しいセッションはディスク上にそれらを持ちます。キャッシュはファイルのみを保存し、実行中のプロセスは保存しないため、Claude は各セッションでコンテナを開始します。

398 

399<h4 id="add-packages">

400 パッケージを追加する

401</h4>

402 

403プリインストールされていないパッケージを追加するには、[セットアップスクリプト](#setup-scripts) を使用します。[環境キャッシュ](#environment-caching) はスクリプトがインストールするものを保持するため、そこにインストールするパッケージは各セッションの開始時に利用可能であり、毎回再インストールする必要はありません。Claude にセッション中にパッケージをインストールするよう依頼することもできますが、これらのインストールは他のセッションに引き継がれません。

404 

405<h3 id="resource-limits">

406 リソース制限

407</h3>

408 

409Anthropic ホスト環境のクラウドセッションは、時間とともに変わる可能性のある概算リソース上限で実行されます。

410 

411* 4 vCPU

412* 16 GB の RAM

413* 30 GB のディスク

414 

415VM は、大規模なビルドジョブやメモリ集約的なテストなど、大幅により多くのメモリを必要とするタスクを停止する可能性があります。これらの制限を超えるワークロードについては、[Remote Control](/docs/ja/remote-control) を使用して独自のハードウェアで Claude Code を実行するか、[セルフホスト環境](/docs/ja/self-hosted-environments) でクラウドセッションを実行します。組織が操作するコンピュートで。

416 

417<h2 id="setup-scripts">

418 セットアップスクリプト

419</h2>

420 

421セットアップスクリプトは、新しいクラウドセッションが開始されるときに実行される Bash スクリプトです。Claude Code が起動する前です。セットアップスクリプトを使用して、依存関係をインストールし、ツールを設定し、またはセッションが必要とするプリインストールされていないものをフェッチします。

422 

423スクリプトは Ubuntu 24.04 上で root として実行されるため、`apt install` およびほとんどの言語パッケージマネージャーが機能します。

424 

425セットアップスクリプトを追加するには、環境設定ダイアログを開き、**Setup script** フィールドにスクリプトを入力します。

426 

427この例は、プリインストールされていない [ShellCheck](https://www.shellcheck.net/) をインストールします。

428 

429```bash theme={null}

430#!/bin/bash

431apt update && apt install -y shellcheck

432```

433 

434<h3 id="script-requirements">

435 スクリプト要件

436</h3>

437 

438セットアップスクリプトには、対応する 3 つの制約があります。

439 

440* **ゼロで終了**:スクリプトがゼロ以外で終了する場合、セッションは開始に失敗します。非重要なコマンドに `|| true` を追加して、一時的なインストール失敗がセッションをブロックしないようにします。

441* **5 分以内に完了**:スクリプトの総実行時間を約 5 分以内に保つため、[環境キャッシュ](#environment-caching) をビルドできます。独立したインストールを `&` と `wait` で並列実行し、フィットしない単一ダウンロードを [SessionStart フック](#setup-scripts-vs-sessionstart-hooks) に移動して、バックグラウンドで起動します。

442* **インストール用のネットワークアクセス**:パッケージインストールはレジストリに到達する必要があります。デフォルトの **Trusted** レベルは npm、PyPI、RubyGems、crates.io を含む [一般的なパッケージレジストリ](#default-allowed-domains) をカバーします。**None** ネットワークアクセスでは、インストールは失敗します。

443 

444<h3 id="environment-caching">

445 環境キャッシング

446</h3>

447 

448セットアップスクリプトは、環境でセッションを開始する最初の時間に実行されます。完了後、Anthropic はファイルシステムをスナップショットし、そのスナップショットを後のセッションの開始点として再利用します。新しいセッションはディスク上に既に依存関係、ツール、Docker イメージを持ち、セットアップスクリプトステップをスキップします。これにより、スクリプトが大規模なツールチェーンをインストールしたりコンテナイメージをプルしたりする場合でも、スタートアップが高速に保たれます。

449 

450キャッシュはファイルシステムスナップショットであるため、セットアップスクリプトがディスクに書き込むものを保持し、実行中のみのものを失います。インストールするパッケージ、プルする Docker イメージ、書き込むファイルはすべて引き継がれます。スクリプトが開始したデータベース、`docker compose up` スタック、またはその他のバックグラウンドプロセスは引き継がれません。これらはセッションごとに Claude に依頼するか、[SessionStart フック](#setup-scripts-vs-sessionstart-hooks) で開始します。

451 

452セットアップスクリプトは、環境のセットアップスクリプトまたは許可されたネットワークホストを変更するとき、およびキャッシュが約 7 日後に有効期限に達するときに再度実行され、キャッシュを再構築します。既存のセッションを再開すると、セットアップスクリプトは再度実行されません。

453 

454キャッシングを有効にするか、スナップショットを自分で管理する必要はありません。

455 

456<h3 id="setup-scripts-vs-sessionstart-hooks">

457 セットアップスクリプト対 SessionStart フック

458</h3>

459 

460セットアップスクリプトを使用して VM 自体をプロビジョニングします。[プリインストール](#installed-tools) されていないツールチェーンと CLI ツール。[SessionStart フック](/docs/ja/hooks#sessionstart) をプロジェクトセットアップに使用します。クラウドとローカルで実行する必要があります。`npm install` などです。

461 

462セットアップスクリプトと SessionStart フックは、クラウドセッションが開始するときに固定順序で実行されます。テーブルは、設定場所、実行時期、実行場所を比較しています。

463 

464| | セットアップスクリプト | SessionStart フック |

465| -------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

466| **設定場所** | [claude.ai/code](https://claude.ai/code) の環境ダイアログ、[共有環境](#organization-shared-environments) の **クラウド環境** 管理ページ | [設定ファイル](/docs/ja/settings#where-settings-live)(リポジトリの `.claude/settings.json` など)。[セットアップから引き継がれるもの](#what-carries-over-from-your-setup) を参照して、どのファイルがクラウドセッションに到達するかを確認してください |

467| **実行時期** | Claude Code が起動する前に、[キャッシュされた環境](#environment-caching) が存在する場合はスキップ | Claude Code が起動した後、再開を含むすべてのセッションで |

468| **実行場所** | クラウドセッションのみ | ローカルとクラウドセッション |

469 

470ユーザーレベルの `~/.claude/settings.json` に SessionStart フックがある場合、クラウドではそれらを期待しないでください。ユーザーレベルの設定はマシンに留まります。どの他のフックが実行されるかは、セッションが実行される場所によって異なります。

471 

472* **Anthropic ホスト環境**:Claude Code はリポジトリおよび組織の [サーバー管理設定](/docs/ja/server-managed-settings) からフックを実行します。

473* **[セルフホスト環境](/docs/ja/self-hosted-environments-configuration#permissions-and-tool-approval)**:Claude Code はオペレーターがランナーホストの `~/.claude/` からシードしたフックも実行し、ランナーイメージの管理設定ファイルのフック(そのファイルが [Claude Code が適用する管理ソース](/docs/ja/managed-settings#how-claude-code-combines-managed-sources) のいずれかである場合)。

474 

475<h3 id="install-dependencies-with-a-sessionstart-hook">

476 SessionStart フックで依存関係をインストールする

477</h3>

478 

479クラウドセッションのみに依存関係をインストールするには、SessionStart フックを実行場所をチェックするスクリプトと組み合わせます。

480 

481まず、SessionStart フックをリポジトリの `.claude/settings.json` に追加します。この設定は、セッションが開始または再開されるたびに Claude Code に `scripts/install_pkgs.sh` をリポジトリから実行するよう指示します。

482 

483```json theme={null}

484{

485 "hooks": {

486 "SessionStart": [

487 {

488 "matcher": "startup|resume",

489 "hooks": [

490 {

491 "type": "command",

492 "command": "bash \"$CLAUDE_PROJECT_DIR\"/scripts/install_pkgs.sh"

493 }

494 ]

495 }

496 ]

497 }

498}

499```

500 

501`matcher` はフックを `startup` および `resume` イベントに制限し、`$CLAUDE_PROJECT_DIR` はリポジトリルートに解決されるため、フックはセッションの作業ディレクトリに関係なくスクリプトを見つけます。

502 

503次に、`scripts/install_pkgs.sh` でスクリプトを作成します。クラウドの外では直ちに終了し、依存関係をインストールします。

504 

505```bash theme={null}

506#!/bin/bash

507 

508if [ "$CLAUDE_CODE_REMOTE" != "true" ]; then

509 exit 0

510fi

511 

512npm install

513pip install -r requirements.txt

514exit 0

515```

516 

517`CLAUDE_CODE_REMOTE` チェックは、インストールをクラウドセッションにスコープするものです。セッション VM の環境は変数を `true` として持ち、ローカルでは決して `true` ではないため、ラップトップではスクリプトは何もインストールする前に終了します。

518 

5192 つのファイルを合わせると、すべてのクラウドセッションは起動時に新しい `npm install` と `pip install` を取得し、ローカルセッションは影響を受けません。

520 

521<h4 id="limitations-in-cloud-sessions">

522 クラウドセッションの制限

523</h4>

524 

525SessionStart フックはクラウドでローカルと同じように動作しますが、これらの注意事項があります。

526 

527* **クラウドのみのスコープなし**:フックはローカルとクラウドセッションの両方で実行されます。ローカル実行をスキップするには、上記のように `CLAUDE_CODE_REMOTE` 環境変数をチェックします。

528* **ネットワークアクセスが必要**:インストールコマンドはパッケージレジストリに到達する必要があります。環境が **None** ネットワークアクセスを使用する場合、これらのフックは失敗します。**Trusted** の下の [デフォルト許可リスト](#default-allowed-domains) は npm、PyPI、RubyGems、crates.io をカバーします。

529* **プロキシ互換性**:Anthropic ホスト環境では、すべての送信トラフィックは [セキュリティプロキシ](#security-proxy) を通じて渡されます。一部のパッケージマネージャーはこのプロキシで正しく機能しません。Bun は既知の例です。[セルフホスト環境](/docs/ja/self-hosted-environments-deploy#default-deny-egress) では、送信トラフィックは代わりに独自のネットワーク境界を通じて行きます。

530* **スタートアップレイテンシを追加**:フックはセッションが開始または再開されるたびに実行されます。[環境キャッシング](#environment-caching) の恩恵を受けるセットアップスクリプトとは異なります。依存関係が既に存在するかどうかをチェックして再インストールを避けることで、インストールスクリプトを高速に保ちます。

531 

532ベースイメージをカスタマイズするには、セットアップスクリプトを使用して [提供されたイメージ](#installed-tools) の上にインストールするか、`docker compose` で Claude と一緒にコンテナとして独自のイメージを実行します。ベースイメージ全体を置き換えることはまだサポートされていません。

533 

534<h2 id="default-allowed-domains">

535 デフォルト許可ドメイン

536</h2>

537 

538**Trusted** ネットワークアクセスでは、セッションはデフォルトで次のドメインに到達できます。`*` でマークされたドメインはワイルドカードサブドメインマッチングを示すため、`*.gcr.io` は `gcr.io` のすべてのサブドメインを許可します。

539 

540<AccordionGroup>

541 <Accordion title="Anthropic サービス">

542 * api.anthropic.com

543 * statsig.anthropic.com

544 * docs.claude.com

545 * platform.claude.com

546 * code.claude.com

547 * claude.ai

548 </Accordion>

549 

550 <Accordion title="バージョン管理">

551 * github.com

552 * [www.github.com](http://www.github.com)

553 * api.github.com

554 * npm.pkg.github.com

555 * raw\.githubusercontent.com

556 * pkg-npm.githubusercontent.com

557 * objects.githubusercontent.com

558 * release-assets.githubusercontent.com

559 * codeload.github.com

560 * avatars.githubusercontent.com

561 * camo.githubusercontent.com

562 * gist.github.com

563 * gitlab.com

564 * [www.gitlab.com](http://www.gitlab.com)

565 * registry.gitlab.com

566 * bitbucket.org

567 * [www.bitbucket.org](http://www.bitbucket.org)

568 * api.bitbucket.org

569 </Accordion>

570 

571 <Accordion title="コンテナレジストリ">

572 * registry-1.docker.io

573 * auth.docker.io

574 * index.docker.io

575 * hub.docker.com

576 * [www.docker.com](http://www.docker.com)

577 * production.cloudflare.docker.com

578 * download.docker.com

579 * gcr.io

580 * \*.gcr.io

581 * ghcr.io

582 * mcr.microsoft.com

583 * \*.data.mcr.microsoft.com

584 * public.ecr.aws

585 </Accordion>

586 

587 <Accordion title="クラウドプラットフォーム">

588 * cloud.google.com

589 * accounts.google.com

590 * gcloud.google.com

591 * \*.googleapis.com

592 * storage.googleapis.com

593 * compute.googleapis.com

594 * container.googleapis.com

595 * azure.com

596 * portal.azure.com

597 * microsoft.com

598 * [www.microsoft.com](http://www.microsoft.com)

599 * \*.microsoftonline.com

600 * packages.microsoft.com

601 * dotnet.microsoft.com

602 * dot.net

603 * visualstudio.com

604 * dev.azure.com

605 * \*.amazonaws.com

606 * \*.api.aws

607 * oracle.com

608 * [www.oracle.com](http://www.oracle.com)

609 * java.com

610 * [www.java.com](http://www.java.com)

611 * java.net

612 * [www.java.net](http://www.java.net)

613 * download.oracle.com

614 * yum.oracle.com

615 </Accordion>

616 

617 <Accordion title="JavaScript と Node パッケージマネージャー">

618 * registry.npmjs.org

619 * [www.npmjs.com](http://www.npmjs.com)

620 * [www.npmjs.org](http://www.npmjs.org)

621 * npmjs.com

622 * npmjs.org

623 * yarnpkg.com

624 * registry.yarnpkg.com

625 </Accordion>

626 

627 <Accordion title="Python パッケージマネージャー">

628 * pypi.org

629 * [www.pypi.org](http://www.pypi.org)

630 * files.pythonhosted.org

631 * pythonhosted.org

632 * test.pypi.org

633 * pypi.python.org

634 * pypa.io

635 * [www.pypa.io](http://www.pypa.io)

636 </Accordion>

637 

638 <Accordion title="Ruby パッケージマネージャー">

639 * rubygems.org

640 * [www.rubygems.org](http://www.rubygems.org)

641 * api.rubygems.org

642 * index.rubygems.org

643 * ruby-lang.org

644 * [www.ruby-lang.org](http://www.ruby-lang.org)

645 * rubyforge.org

646 * [www.rubyforge.org](http://www.rubyforge.org)

647 * rubyonrails.org

648 * [www.rubyonrails.org](http://www.rubyonrails.org)

649 * rvm.io

650 * get.rvm.io

651 </Accordion>

652 

653 <Accordion title="Rust パッケージマネージャー">

654 * crates.io

655 * [www.crates.io](http://www.crates.io)

656 * index.crates.io

657 * static.crates.io

658 * rustup.rs

659 * static.rust-lang.org

660 * [www.rust-lang.org](http://www.rust-lang.org)

661 </Accordion>

662 

663 <Accordion title="Go パッケージマネージャー">

664 * proxy.golang.org

665 * sum.golang.org

666 * index.golang.org

667 * golang.org

668 * [www.golang.org](http://www.golang.org)

669 * goproxy.io

670 * pkg.go.dev

671 </Accordion>

672 

673 <Accordion title="JVM パッケージマネージャー">

674 * maven.org

675 * repo.maven.org

676 * central.maven.org

677 * repo1.maven.org

678 * repo.maven.apache.org

679 * jcenter.bintray.com

680 * gradle.org

681 * [www.gradle.org](http://www.gradle.org)

682 * services.gradle.org

683 * plugins.gradle.org

684 * kotlinlang.org

685 * [www.kotlinlang.org](http://www.kotlinlang.org)

686 * spring.io

687 * repo.spring.io

688 </Accordion>

689 

690 <Accordion title="その他のパッケージマネージャー">

691 * packagist.org(PHP Composer)

692 * [www.packagist.org](http://www.packagist.org)

693 * repo.packagist.org

694 * nuget.org(.NET NuGet)

695 * [www.nuget.org](http://www.nuget.org)

696 * api.nuget.org

697 * pub.dev(Dart/Flutter)

698 * api.pub.dev

699 * hex.pm(Elixir/Erlang)

700 * [www.hex.pm](http://www.hex.pm)

701 * cpan.org(Perl CPAN)

702 * [www.cpan.org](http://www.cpan.org)

703 * metacpan.org

704 * [www.metacpan.org](http://www.metacpan.org)

705 * api.metacpan.org

706 * cocoapods.org(iOS/macOS)

707 * [www.cocoapods.org](http://www.cocoapods.org)

708 * cdn.cocoapods.org

709 * haskell.org

710 * [www.haskell.org](http://www.haskell.org)

711 * hackage.haskell.org

712 * swift.org

713 * [www.swift.org](http://www.swift.org)

714 </Accordion>

715 

716 <Accordion title="Linux ディストリビューション">

717 * archive.ubuntu.com

718 * security.ubuntu.com

719 * ubuntu.com

720 * [www.ubuntu.com](http://www.ubuntu.com)

721 * \*.ubuntu.com

722 * ppa.launchpad.net

723 * launchpad.net

724 * [www.launchpad.net](http://www.launchpad.net)

725 * \*.nixos.org

726 </Accordion>

727 

728 <Accordion title="開発ツールとプラットフォーム">

729 * dl.k8s.io(Kubernetes)

730 * pkgs.k8s.io

731 * k8s.io

732 * [www.k8s.io](http://www.k8s.io)

733 * releases.hashicorp.com(HashiCorp)

734 * apt.releases.hashicorp.com

735 * rpm.releases.hashicorp.com

736 * archive.releases.hashicorp.com

737 * hashicorp.com

738 * [www.hashicorp.com](http://www.hashicorp.com)

739 * repo.anaconda.com(Anaconda/Conda)

740 * conda.anaconda.org

741 * anaconda.org

742 * [www.anaconda.com](http://www.anaconda.com)

743 * anaconda.com

744 * continuum.io

745 * apache.org(Apache)

746 * [www.apache.org](http://www.apache.org)

747 * archive.apache.org

748 * downloads.apache.org

749 * eclipse.org(Eclipse)

750 * [www.eclipse.org](http://www.eclipse.org)

751 * download.eclipse.org

752 * nodejs.org(Node.js)

753 * [www.nodejs.org](http://www.nodejs.org)

754 * developer.apple.com

755 * developer.android.com

756 * pkg.stainless.com

757 * binaries.prisma.sh

758 </Accordion>

759 

760 <Accordion title="クラウドサービスと監視">

761 * statsig.com

762 * [www.statsig.com](http://www.statsig.com)

763 * api.statsig.com

764 * sentry.io

765 * \*.sentry.io

766 * downloads.sentry-cdn.com

767 * http-intake.logs.datadoghq.com

768 * browser-intake-us5-datadoghq.com

769 * \*.datadoghq.com

770 * \*.datadoghq.eu

771 * api.honeycomb.io

772 </Accordion>

773 

774 <Accordion title="コンテンツ配信とミラー">

775 * sourceforge.net

776 * \*.sourceforge.net

777 * packagecloud.io

778 * \*.packagecloud.io

779 * fonts.googleapis.com

780 * fonts.gstatic.com

781 </Accordion>

782 

783 <Accordion title="スキーマと設定">

784 * json-schema.org

785 * [www.json-schema.org](http://www.json-schema.org)

786 * json.schemastore.org

787 * [www.schemastore.org](http://www.schemastore.org)

788 </Accordion>

789 

790 <Accordion title="Model Context Protocol">

791 * \*.modelcontextprotocol.io

792 </Accordion>

793</AccordionGroup>

794 

795<h2 id="related-resources">

796 関連リソース

797</h2>

798 

799* [Web 上の Claude Code](/docs/ja/claude-code-on-the-web):クラウドセッションを開始、管理、共有します

800* [Web クイックスタート](/docs/ja/web-quickstart):GitHub を接続して最初のクラウドセッションを開始します

801* [Claude Tag](https://claude.com/docs/claude-tag/overview):Claude が Slack から開始するセッションは同じ環境で実行されます

802* [ルーチン](/docs/ja/routines):スケジュール実行は同じ環境とネットワークアクセスレベルを使用します

803* [Remote Control](/docs/ja/remote-control):代わりに独自のマシンのネットワークとファイルでセッションを実行します

804* [セルフホスト環境](/docs/ja/self-hosted-environments):組織独自のインフラストラクチャでクラウドセッションを実行します

805* [SessionStart フック](/docs/ja/hooks#sessionstart):ローカルとクラウドセッションで実行されるリポジトリコミットセットアップ

806* [サーバー管理設定](/docs/ja/server-managed-settings):クラウドセッションに到達する組織ポリシー

commands.md +6 −6

Details

54| コマンド | 目的 |54| コマンド | 目的 |

55| :----------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |55| :----------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

56| `/add-dir <path>` | 現在のセッション中にファイルアクセス用の作業ディレクトリを追加します。部分的なパスを入力して一致するディレクトリの候補を表示し、`Tab` を押して 1 つを受け入れます。ほとんどの `.claude/` 設定は、追加されたディレクトリから[検出されません](/docs/ja/permissions#additional-directories-grant-file-access-not-configuration)。`\\server\share` などのほとんどの[ネットワークパス](/docs/ja/errors#working-directory-is-a-network-path)は追加できません。追加に成功すると、[`DirectoryAdded` hooks](/docs/ja/hooks#directoryadded) が実行されます。Claude が応答している間にこれを実行すると、Claude Code はディレクトリをすぐに確認するよう求め、確認すると Claude の同じターンの次のツール呼び出しがそれにアクセスできます。v2.1.234 より前は、Claude Code はターンが終了するまでコマンドをキューに入れていました |56| `/add-dir <path>` | 現在のセッション中にファイルアクセス用の作業ディレクトリを追加します。部分的なパスを入力して一致するディレクトリの候補を表示し、`Tab` を押して 1 つを受け入れます。ほとんどの `.claude/` 設定は、追加されたディレクトリから[検出されません](/docs/ja/permissions#additional-directories-grant-file-access-not-configuration)。`\\server\share` などのほとんどの[ネットワークパス](/docs/ja/errors#working-directory-is-a-network-path)は追加できません。追加に成功すると、[`DirectoryAdded` hooks](/docs/ja/hooks#directoryadded) が実行されます。Claude が応答している間にこれを実行すると、Claude Code はディレクトリをすぐに確認するよう求め、確認すると Claude の同じターンの次のツール呼び出しがそれにアクセスできます。v2.1.234 より前は、Claude Code はターンが終了するまでコマンドをキューに入れていました |

57| `/advisor [model\|off]` | [アドバイザーツール](/docs/ja/advisor)を有効または無効にします。このツールはタスク中の重要な瞬間に 2 番目のモデルに相談します。`fable`、`opus`、`sonnet`、または完全なモデル ID を受け入れます。`fable` には[Fable アクセス](/docs/ja/advisor#choose-an-advisor-model)が必要です。引数がない場合は、ピッカーを開きます |57| `/advisor [model\|off]` | [アドバイザーツール](/docs/ja/advisor)を有効または無効にします。このツールはタスク中の重要な瞬間に 2 番目のモデルに相談します。`fable`、`opus`、`sonnet`、または完全なモデル ID を受け入れます。`fable` には[Fable アクセス](/docs/ja/advisor#choose-an-advisor-model)が必要です。引数がない場合は、ピッカーを開きます。対話型ターミナルがないセッション、または[Remote Control](/docs/ja/remote-control#limitations)経由では、モデルまたは `off` を引数として渡します。引数がない場合、コマンドは現在のアドバイザーをテキストとして出力します。これらのフォームには Claude Code v2.1.260 以降が必要です |

58| `/agents` | v2.1.198 以降、`/agents` を実行すると、Claude に[サブエージェント](/docs/ja/sub-agents)を作成または管理するよう求めるか、`.claude/agents/` または `~/.claude/agents/` を直接編集するよう促すリマインダーが表示されます。v2.1.197 以前では、サブエージェント設定を作成および管理するための対話型インターフェイスを開きます |58| `/agents` | v2.1.198 以降、`/agents` を実行すると、Claude に[サブエージェント](/docs/ja/sub-agents)を作成または管理するよう求めるか、`.claude/agents/` または `~/.claude/agents/` を直接編集するよう促すリマインダーが表示されます。v2.1.197 以前では、サブエージェント設定を作成および管理するための対話型インターフェイスを開きます |

59| `/artifacts` | [アーティファクト](/docs/ja/artifacts#find-an-artifact-again)を所有しているか、共有されているアーティファクトを一覧表示し、セッションに添付するか、ブラウザで開くか、そのリンクをコピーします。[アーティファクト](/docs/ja/artifacts#availability)が利用可能な場所で利用可能です。Claude Code v2.1.208 以降が必要です。`Enter` で添付するには v2.1.216 が必要です |59| `/artifacts` | [アーティファクト](/docs/ja/artifacts#find-an-artifact-again)を所有しているか、共有されているアーティファクトを一覧表示し、セッションに添付するか、ブラウザで開くか、そのリンクをコピーします。[アーティファクト](/docs/ja/artifacts#availability)が利用可能な場所で利用可能です。Claude Code v2.1.208 以降が必要です。`Enter` で添付するには v2.1.216 が必要です |

60| `/auto-mode-setup` | [プロジェクトと最近のセッションから `autoMode.environment` エントリを作成](/docs/ja/auto-mode-config#generate-environment-entries)し、ドラフトを確認してユーザー設定に保存します。Pro、Max、または Team プランと Claude Code v2.1.228 以降が必要です。ネイティブ Windows では v2.1.233 以降が必要です |60| `/auto-mode-setup` | [プロジェクトと最近のセッションから `autoMode.environment` エントリを作成](/docs/ja/auto-mode-config#generate-environment-entries)し、ドラフトを確認してユーザー設定に保存します。Pro、Max、または Team プランと Claude Code v2.1.228 以降が必要です。ネイティブ Windows では v2.1.233 以降が必要です |


70| `/claude-api [migrate\|upgrade\|managed-agents-onboard\|prompt-audit\|cost-optimize\|build-eval\|hillclimb]` | **[Skill](/docs/ja/skills#bundled-skills).** プロジェクトの言語用に [Claude API](https://platform.claude.com/docs/en/api/overview) および [Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview) リファレンス資料を読み込みます。コードが `anthropic` または `@anthropic-ai/sdk` をインポートするときも自動的にアクティブになります。`migrate` を実行して、既存の Claude API コードを新しいモデルに更新します。プロジェクトの Anthropic SDK 依存関係をメジャーバージョン全体で移動するには `upgrade` を実行します。現在、Python `anthropic` パッケージを 0.x から 1.x に移動します。新しい Managed Agent を作成するウォークスルーについては、`managed-agents-onboard` を実行します。古いモデル用に作成された指示をプロンプト、スキル、ツール説明でフラグを立て、修正を diff として提案するには `prompt-audit` を実行します。プロジェクトの Claude API 支出がどこに行くかをプロファイルし、プロンプトキャッシング、不要な入出力トークンのトリミング、バッチ処理、努力、モデル選択などのオプションから節約を提案するには `cost-optimize` を実行します。一度に 1 つの変更。Claude 搭載アプリの eval セットを構築するには `build-eval` を実行し、既存の eval に対してアプリを反復的に改善するには `hillclimb` を実行します。`prompt-audit` サブコマンドには Claude Code v2.1.221 以降が必要です。`upgrade` には v2.1.236 以降が必要です。`cost-optimize` には v2.1.247 以降が必要です。`build-eval` と `hillclimb` には v2.1.259 以降が必要です |70| `/claude-api [migrate\|upgrade\|managed-agents-onboard\|prompt-audit\|cost-optimize\|build-eval\|hillclimb]` | **[Skill](/docs/ja/skills#bundled-skills).** プロジェクトの言語用に [Claude API](https://platform.claude.com/docs/en/api/overview) および [Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview) リファレンス資料を読み込みます。コードが `anthropic` または `@anthropic-ai/sdk` をインポートするときも自動的にアクティブになります。`migrate` を実行して、既存の Claude API コードを新しいモデルに更新します。プロジェクトの Anthropic SDK 依存関係をメジャーバージョン全体で移動するには `upgrade` を実行します。現在、Python `anthropic` パッケージを 0.x から 1.x に移動します。新しい Managed Agent を作成するウォークスルーについては、`managed-agents-onboard` を実行します。古いモデル用に作成された指示をプロンプト、スキル、ツール説明でフラグを立て、修正を diff として提案するには `prompt-audit` を実行します。プロジェクトの Claude API 支出がどこに行くかをプロファイルし、プロンプトキャッシング、不要な入出力トークンのトリミング、バッチ処理、努力、モデル選択などのオプションから節約を提案するには `cost-optimize` を実行します。一度に 1 つの変更。Claude 搭載アプリの eval セットを構築するには `build-eval` を実行し、既存の eval に対してアプリを反復的に改善するには `hillclimb` を実行します。`prompt-audit` サブコマンドには Claude Code v2.1.221 以降が必要です。`upgrade` には v2.1.236 以降が必要です。`cost-optimize` には v2.1.247 以降が必要です。`build-eval` と `hillclimb` には v2.1.259 以降が必要です |

71| `/clear [name]` | 空のコンテキストで新しい会話を開始します。前の会話に `/resume` ピッカーでラベルを付けるには、名前を渡します。同じ会話を続けながらコンテキストを解放するには、`/compact` を代わりに使用します。`/resume` で前の会話を再開するか、同じ Claude Code プロセスで、[rewind メニューの previous-session エントリから](/docs/ja/checkpointing#rewind-past-a-cleared-conversation)復元します。rewind エントリには Claude Code v2.1.191 以降が必要です。エイリアス: `/reset`、`/new` |71| `/clear [name]` | 空のコンテキストで新しい会話を開始します。前の会話に `/resume` ピッカーでラベルを付けるには、名前を渡します。同じ会話を続けながらコンテキストを解放するには、`/compact` を代わりに使用します。`/resume` で前の会話を再開するか、同じ Claude Code プロセスで、[rewind メニューの previous-session エントリから](/docs/ja/checkpointing#rewind-past-a-cleared-conversation)復元します。rewind エントリには Claude Code v2.1.191 以降が必要です。エイリアス: `/reset`、`/new` |

72| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | **[Skill](/docs/ja/skills#bundled-skills).** 現在の diff、または渡す PR 番号、ブランチ、またはパスを確認して、正確性のバグとクリーンアップの機会を確認します。`--fix` を渡して検出結果を適用し、`--comment` を渡して GitHub PR または GitLab マージリクエストに投稿するか、`ultra` を渡して深い[クラウドレビュー](/docs/ja/ultrareview)を実行します。GitLab マージリクエストに投稿するには Claude Code v2.1.257 以降が必要です。`github.com` PR ターゲットで `ultra` を使用する場合、`--post` を渡して[PR に完成した検出結果を投稿](/docs/ja/ultrareview#post-findings-to-the-pull-request)することを起動ダイアログで事前選択します。`--post` には Claude Code v2.1.227 以降が必要です。努力レベル、ターゲット、および `/simplify` との関係については、[diff をローカルで確認](/docs/ja/code-review#review-a-diff-locally)を参照してください。エイリアス: `/review` |72| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | **[Skill](/docs/ja/skills#bundled-skills).** 現在の diff、または渡す PR 番号、ブランチ、またはパスを確認して、正確性のバグとクリーンアップの機会を確認します。`--fix` を渡して検出結果を適用し、`--comment` を渡して GitHub PR または GitLab マージリクエストに投稿するか、`ultra` を渡して深い[クラウドレビュー](/docs/ja/ultrareview)を実行します。GitLab マージリクエストに投稿するには Claude Code v2.1.257 以降が必要です。`github.com` PR ターゲットで `ultra` を使用する場合、`--post` を渡して[PR に完成した検出結果を投稿](/docs/ja/ultrareview#post-findings-to-the-pull-request)することを起動ダイアログで事前選択します。`--post` には Claude Code v2.1.227 以降が必要です。努力レベル、ターゲット、および `/simplify` との関係については、[diff をローカルで確認](/docs/ja/code-review#review-a-diff-locally)を参照してください。エイリアス: `/review` |

73| `/color [color\|default]` | 現在のセッションのプロンプトバーの色を設定します。利用可能な色: `red`、`blue`、`green`、`yellow`、`purple`、`orange`、`pink`、`cyan`。`default` を使用してリセットするか、引数なしで実行してランダムな色を選択します。[Remote Control](/docs/ja/remote-control) が接続されている場合、色は claude.ai/code に同期されます。非対話型モード(`-p`)でも利用可能です。Claude Code v2.1.205 以降が必要です |73| `/color [color\|default]` | 現在のセッションのプロンプトバーのカラーを設定します。利用可能なカラー: `red`、`blue`、`green`、`yellow`、`purple`、`orange`、`pink`、`cyan`。`default` を使用してリセットするか、引数なしで実行してランダムなカラーを選択します。[Remote Control](/docs/ja/remote-control) が接続されている場合、カラーは claude.ai/code に同期されます。非対話型モード(`-p`)でも利用可能です。Claude Code v2.1.205 以降が必要です |

74| `/compact [instructions]` | これまでの会話を要約してコンテキストを解放します。オプションで要約の焦点指示を渡します。[コンパクション処理がルール、スキル、メモリファイルをどのように処理するか](/docs/ja/context-window#what-survives-compaction)を参照してください |74| `/compact [instructions]` | これまでの会話を要約してコンテキストを解放します。オプションで要約の焦点指示を渡します。[コンパクション処理がルール、スキル、メモリファイルをどのように処理するか](/docs/ja/context-window#what-survives-compaction)を参照してください |

75| `/config [key=value ...]` | [設定](/docs/ja/settings)インターフェイスを開いて、テーマ、モデル、[出力スタイル](/docs/ja/output-styles)、およびその他の設定を調整します。v2.1.181 から、インターフェイスを開かずに設定を直接設定するために 1 つ以上の `key=value` ペアを渡します。たとえば `/config thinking=false`。v2.1.182 から、`/config theme=dark` または `/config model=sonnet` などの名前付き短縮キーも受け入れられます。`key=value` フォームは非対話型モード(`-p`)および Claude モバイルアプリから [Remote Control](/docs/ja/remote-control) 経由でも機能します。`key=value` フォームは、[`autoContinueAtUsageLimit`](/docs/ja/interactive-mode#turn-automatic-continue-off)などのパネルで確認が必要な設定をオンにすることはできませんが、オフにすることはできます。`/config --help` を実行して、受け入れるキーを一覧表示します。エイリアス: `/settings` |75| `/config [key=value ...]` | [設定](/docs/ja/settings)インターフェイスを開いて、テーマ、モデル、[出力スタイル](/docs/ja/output-styles)、およびその他の設定を調整します。v2.1.181 から、インターフェイスを開かずに設定を直接設定するために 1 つ以上の `key=value` ペアを渡します。たとえば `/config thinking=false`。v2.1.182 から、`/config theme=dark` または `/config model=sonnet` などの名前付き短縮キーも受け入れられます。`key=value` フォームは非対話型モード(`-p`)および Claude モバイルアプリから [Remote Control](/docs/ja/remote-control) 経由でも機能します。`key=value` フォームは、[`autoContinueAtUsageLimit`](/docs/ja/interactive-mode#turn-automatic-continue-off)などのパネルで確認が必要な設定をオンにすることはできませんが、オフにすることはできます。`/config --help` を実行して、受け入れるキーを一覧表示します。エイリアス: `/settings` |

76| `/context [all]` | 現在のコンテキスト使用量を色付きグリッドとして視覚化します。コンテキストが多いツール、メモリの肥大化、容量警告の最適化提案を表示します。会話がコンテキストウィンドウを超える場合、出力には[警告](/docs/ja/errors#context-exceeds-the-token-limit)が含まれ、制限をどのくらい超えているか、どのコマンドがスペースを解放するかが表示されます。[全画面モード](/docs/ja/fullscreen)では、`/context` は項目ごとの内訳を折りたたんでグリッドを表示したままにします。`all` を渡して展開します |76| `/context [all]` | 現在のコンテキスト使用量を色付きグリッドとして視覚化します。コンテキストが多いツール、メモリの肥大化、容量警告の最適化提案を表示します。会話がコンテキストウィンドウを超える場合、出力には[警告](/docs/ja/errors#context-exceeds-the-token-limit)が含まれ、制限をどのくらい超えているか、どのコマンドがスペースを解放するかが表示されます。[全画面モード](/docs/ja/fullscreen)では、`/context` は項目ごとの内訳を折りたたんでグリッドを表示したままにします。`all` を渡して展開します |

77| `/copy [N]` | 最後のアシスタント応答をクリップボードにコピーします。数値 `N` を渡して、N 番目に最新の応答をコピーします。`/copy 2` は 2 番目に最新の応答をコピーします。コードブロックが存在する場合、個別のブロックまたは完全な応答を選択するための対話型ピッカーを表示します。ピッカーで `w` を押して、クリップボードの代わりにファイルに選択を書き込みます。これは SSH 経由で便利です |77| `/copy [N]` | 最後のアシスタント応答をクリップボードにコピーします。数値 `N` を渡して、N 番目に最新の応答をコピーします。`/copy 2` は 2 番目に最新の応答をコピーします。コードブロックが存在する場合、個別のブロックまたは完全な応答を選択するための対話型ピッカーを表示します。ピッカーで `w` を押して、クリップボードの代わりにファイルに選択を書き込みます。これは SSH 経由で便利です |

78| `/cost` | `/usage` のエイリアス |78| `/cost` | `/usage` のエイリアス |

79| `/dataviz [request]` | **[Skill](/docs/ja/skills#bundled-skills).** チャート、グラフ、ダッシュボードの設計ガイダンス。Claude はデータのチャート形式を選択し、役割別に色を割り当て、バンドルされたスクリプトで色覚異常の安全性とコントラストを検証し、マーク、相互作用、アクセシビリティルールを適用します。独自のパレットに置き換えるブランド中立プレースホルダーパレットを使用します。Claude Code v2.1.198 以降が必要です |79| `/dataviz [request]` | **[Skill](/docs/ja/skills#bundled-skills).** チャート、グラフ、ダッシュボードの設計ガイダンス。Claude はデータのチャート形式を選択し、役割別にカラーを割り当て、バンドルされたスクリプトで色覚異常の安全性とコントラストを検証し、マーク、相互作用、アクセシビリティルールを適用します。独自のパレットに置き換えるブランド中立プレースホルダーパレットを使用します。Claude Code v2.1.198 以降が必要です |

80| `/debug [description]` | **[Skill](/docs/ja/skills#bundled-skills).** 現在のセッションのデバッグログを有効にし、セッションデバッグログを読んで問題をトラブルシューティングします。デバッグログはデフォルトではオフです。`claude --debug` で開始した場合を除き、セッション中に `/debug` を実行するとその時点からログのキャプチャを開始します。オプションで問題を説明して分析に焦点を当てます |80| `/debug [description]` | **[Skill](/docs/ja/skills#bundled-skills).** 現在のセッションのデバッグログを有効にし、セッションデバッグログを読んで問題をトラブルシューティングします。デバッグログはデフォルトではオフです。`claude --debug` で開始した場合を除き、セッション中に `/debug` を実行するとその時点からログのキャプチャを開始します。オプションで問題を説明して分析に焦点を当てます |

81| `/deep-research <question>` | **[Workflow](/docs/ja/workflows#bundled-workflows).** 質問に関する Web 検索を展開し、ソースを取得して相互確認し、引用されたレポートを合成します |81| `/deep-research <question>` | **[Workflow](/docs/ja/workflows#bundled-workflows).** 質問に関する Web 検索を展開し、ソースを取得して相互確認し、引用されたレポートを合成します |

82| `/design [brief]` | **[Skill](/docs/ja/skills#bundled-skills).** UI モックアップ、スクリーンフロー、ランディングページ、またはポスターを 1 つのキャンバス上のアートボードとしてドラフトし、Claude Design のエディターの研究プレビューを実行する[アーティファクト](/docs/ja/artifacts#draft-a-design-canvas)として公開します。たとえば `/design a settings screen for a mobile banking app`。アカウントで保存が有効な場合、キャンバス上のアートボードを編集して新しいバージョンを公開するために保存します。そうでない場合は、ドラフトを表示して PNG または PDF としてエクスポートします。[アーティファクトが利用可能](/docs/ja/artifacts#availability)なセッションと Claude Code v2.1.234 以降が必要です。Anthropic API で利用可能です。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、および Claude Platform on AWS では、アーティファクトが利用できないため、コマンドはそこで利用できません |82| `/design [brief]` | **[Skill](/docs/ja/skills#bundled-skills).** UI モックアップ、スクリーンフロー、ランディングページ、またはポスターを 1 つのキャンバス上のアートボードとしてドラフトし、Claude Design のエディターの研究プレビューを実行する[アーティファクト](/docs/ja/artifacts#draft-a-design-canvas)として公開します。たとえば `/design a settings screen for a mobile banking app`。アカウントで保存が有効な場合、キャンバス上のアートボードを編集して新しいバージョンを公開するために保存します。そうでない場合は、ドラフトを表示して PNG または PDF としてエクスポートします。[アーティファクトが利用可能](/docs/ja/artifacts#availability)なセッションと Claude Code v2.1.234 以降が必要です。Anthropic API で利用可能です。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、および Claude Platform on AWS では、アーティファクトが利用できないため、コマンドはそこで利用できません |

83| `/design-login` | claude.ai アカウントで `/design-sync` のデザインシステムアクセスを認可します |83| `/design-login` | claude.ai アカウントで `/design-sync` のデザインシステムアクセスを認可します |

84| `/design-sync [hint]` | **[Skill](/docs/ja/skills#bundled-skills).** リポジトリの React デザインシステムを変換して [Claude Design](https://claude.ai/design) にアップロードし、生成するデザインが実際のコンポーネントを使用するようにします。オプションでデザインシステムに名前を付けます。たとえば `/design-sync Acme DS`。初回同期はすべてのコンポーネントを検証し、大規模なリポジトリでは数時間かかる場合があります。Anthropic API で利用可能です。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、および Claude Platform on AWS では、基盤となるツールが claude.ai に到達できないため、コマンドは利用できません |84| `/design-sync [hint]` | **[Skill](/docs/ja/skills#bundled-skills).** リポジトリの React デザインシステムを変換して [Claude Design](https://claude.ai/design) にアップロードし、生成するデザインが実際のコンポーネントを使用するようにします。オプションでデザインシステムに名前を付けます。たとえば `/design-sync Acme DS`。初回同期はすべてのコンポーネントを検証し、大規模なリポジトリでは数時間かかる場合があります。Anthropic API で利用可能です。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、および Claude Platform on AWS では、基盤となるツールが claude.ai に到達できないため、コマンドは利用できません。[Claude apps gateway](/docs/ja/claude-apps-gateway#availability-and-limitations) 経由でも利用できません |

85| `/desktop` | 現在のセッションを Claude Code Desktop アプリで続行します。macOS または x64 Windows と Claude サブスクリプションが必要です。エイリアス: `/app` |85| `/desktop` | 現在のセッションを Claude Code Desktop アプリで続行します。macOS または x64 Windows と Claude サブスクリプションが必要です。エイリアス: `/app` |

86| `/diff` | 作業ツリーの変更(Claude がこれまでに行った編集を含む)を確認します。[/diff で変更を確認](/docs/ja/interactive-mode#review-changes-with-%2Fdiff)を参照してください |86| `/diff` | 作業ツリーの変更(Claude がこれまでに行った編集を含む)を確認します。[/diff で変更を確認](/docs/ja/interactive-mode#review-changes-with-%2Fdiff)を参照してください |

87| `/doctor` | **[Skill](/docs/ja/skills#bundled-skills).** セットアップチェックアップを実行して、問題を診断して修正できます。重複またはレフトオーバーインストール、`PATH` の問題、解析不可能な設定ファイルなど、インストール正常性をチェックします。未使用のスキル、MCP サーバー、プラグインとそのコンテキストコストを検出し、遅い[hooks](/docs/ja/hooks)にフラグを立て、[リリースチャネル](/docs/ja/setup#configure-release-channel)で新しいバージョンをチェックします。ローカル `CLAUDE.md` ファイルをチェックイン済みのファイルに対して重複排除し、Claude がコードベースから導出できるコンテンツをカットしてチェックイン済み [`CLAUDE.md`](/docs/ja/memory#my-claude-md-is-too-large) ファイルをトリミングし、残っている常にロードされるガイダンスを[スキル](/docs/ja/skills)およびオンデマンドでロードされるネストされた `CLAUDE.md` ファイルに移行します。また、[自動モード](/docs/ja/permissions#permission-modes)をデフォルトにすることと、頻繁に拒否される読み取り専用コマンドを[事前承認](/docs/ja/permissions)することも提案します。最初に検出結果を報告し、何かを変更する前に確認を求めます。ターミナルから、`claude doctor` はセッションを開始せずに読み取り専用インストール診断を出力します。エイリアス: `/checkup`。`CLAUDE.md` トリミングチェックには Claude Code v2.1.206 以降が必要です。v2.1.205 より前は、`/doctor` は読み取り専用診断画面を開き、`f` を押すとレポートを Claude に送信しました |87| `/doctor` | **[Skill](/docs/ja/skills#bundled-skills).** セットアップチェックアップを実行して、問題を診断して修正できます。重複またはレフトオーバーインストール、`PATH` の問題、解析不可能な設定ファイルなど、インストール正常性をチェックします。未使用のスキル、MCP サーバー、プラグインとそのコンテキストコストを検出し、遅い[hooks](/docs/ja/hooks)にフラグを立て、[リリースチャネル](/docs/ja/setup#configure-release-channel)で新しいバージョンをチェックします。ローカル `CLAUDE.md` ファイルをチェックイン済みのファイルに対して重複排除し、Claude がコードベースから導出できるコンテンツをカットしてチェックイン済み [`CLAUDE.md`](/docs/ja/memory#my-claude-md-is-too-large) ファイルをトリミングし、残っている常にロードされるガイダンスを[スキル](/docs/ja/skills)およびオンデマンドでロードされるネストされた `CLAUDE.md` ファイルに移行します。また、[自動モード](/docs/ja/permissions#permission-modes)をデフォルトにすることと、頻繁に拒否される読み取り専用コマンドを[事前承認](/docs/ja/permissions)することも提案します。最初に検出結果を報告し、何かを変更する前に確認を求めます。ターミナルから、`claude doctor` はセッションを開始せずに読み取り専用インストール診断を出力します。エイリアス: `/checkup`。`CLAUDE.md` トリミングチェックには Claude Code v2.1.206 以降が必要です。v2.1.205 より前は、`/doctor` は読み取り専用診断画面を開き、`f` を押すとレポートを Claude に送信しました |


98| `/help` | ヘルプと利用可能なコマンドを表示します |98| `/help` | ヘルプと利用可能なコマンドを表示します |

99| `/hooks` | ツールイベントの[hook](/docs/ja/hooks)設定を表示します |99| `/hooks` | ツールイベントの[hook](/docs/ja/hooks)設定を表示します |

100| `/ide` | IDE 統合を管理して状態を表示します |100| `/ide` | IDE 統合を管理して状態を表示します |

101| `/import [codex\|gemini] [--dry-run] [--yes]` | マシン上の他のコーディングエージェント(現在 OpenAI Codex および Google Gemini CLI)から Claude Code に設定を取り込みます。指示ファイル、MCP サーバー、コマンド、サブエージェント、スキルを含みます。[非対話型モード](/docs/ja/headless)で `-p` を使用する場合、`/import` は見つけたものを一覧表示し、インポートを確認するコマンドを提供します。`--dry-run` を追加して何も書き込まずにプレビューするか、`--yes` を追加して対話型ピッカーをスキップします。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、または Claude Platform on AWS では利用できません。[フィーチャーフラグ取得](/docs/ja/env-vars#features-that-need-feature-flag-fetching)をオフにしている場合も利用できません。Claude Code v2.1.213 以降が必要です |101| `/import [codex\|gemini\|cursor] [--dry-run] [--yes]` | マシン上の OpenAI Codex、Google Gemini CLI、または Cursor から Claude Code に設定を取り込みます。指示ファイル、MCP サーバー、コマンド、サブエージェント、スキルを含みます。[非対話型モード](/docs/ja/headless)で `-p` を使用する場合、`/import` は見つけたものを一覧表示し、インポートを確認するコマンドを提供します。`--dry-run` を追加して何も書き込まずにプレビューするか、`--yes` を追加して対話型ピッカーをスキップします。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、または Claude Platform on AWS では利用できません。[Claude apps gateway](/docs/ja/claude-apps-gateway#availability-and-limitations) 経由でも利用できません。[フィーチャーフラグ取得](/docs/ja/env-vars#features-that-need-feature-flag-fetching)をオフにしている場合も利用できません。Claude Code v2.1.213 以降が必要です。Cursor からのインポートには v2.1.265 以降が必要です |

102| `/init` | `CLAUDE.md` ガイドでプロジェクトを初期化します。`CLAUDE_CODE_NEW_INIT=1` を設定して、スキル、hooks、個人メモリファイルもウォークスルーする対話型フローを実行します。`/init` が `/import` がサポートするコーディングエージェントから設定を見つけた場合、`/import` で引き継ぐことを提案します |102| `/init` | `CLAUDE.md` ガイドでプロジェクトを初期化します。`CLAUDE_CODE_NEW_INIT=1` を設定して、スキル、hooks、個人メモリファイルもウォークスルーする対話型フローを実行します。`/init` が OpenAI Codex または Google Gemini CLI 設定を見つけた場合、`/import` で引き継ぐことを提案します |

103| `/insights` | このマシンの最近のセッションを分析する HTML レポートを生成します。どのプロジェクトで作業するか、Claude Code をどのように使用するか、何が問題になるか、試すべき機能を示します。[クラウドセッション](/docs/ja/claude-code-on-the-web)では利用できません。レポートの場所、保持期間、コストについては、[使用パターンを分析](/docs/ja/costs#analyze-your-usage-patterns)を参照してください |103| `/insights` | このマシンの最近のセッションを分析する HTML レポートを生成します。どのプロジェクトで作業するか、Claude Code をどのように使用するか、何が問題になるか、試すべき機能を示します。[クラウドセッション](/docs/ja/claude-code-on-the-web)では利用できません。レポートの場所、保持期間、コストについては、[使用パターンを分析](/docs/ja/costs#analyze-your-usage-patterns)を参照してください |

104| `/install-github-app` | リポジトリに Claude GitHub App をインストールし、オプションで [GitHub Actions](/docs/ja/github-actions) ワークフローとシークレットをセットアップするステップを実行します。リポジトリを選択して統合を設定するウォークスルーを実行します。github.com リポジトリでのみ機能します。リポジトリの git リモートが gitlab.com または bitbucket.org にある場合、コマンドは通知を出力してセットアップを開始する代わりに終了します。GitLab パイプラインから Claude Code を実行するには、[GitLab CI/CD](/docs/ja/gitlab-ci-cd) を参照してください |104| `/install-github-app` | リポジトリに Claude GitHub App をインストールし、オプションで [GitHub Actions](/docs/ja/github-actions) ワークフローとシークレットをセットアップするステップを実行します。リポジトリを選択して統合を設定するウォークスルーを実行します。github.com リポジトリでのみ機能します。リポジトリの git リモートが gitlab.com または bitbucket.org にある場合、コマンドは通知を出力してセットアップを開始する代わりに終了します。GitLab パイプラインから Claude Code を実行するには、[GitLab CI/CD](/docs/ja/gitlab-ci-cd) を参照してください |

105| `/install-slack-app` | Claude Slack アプリをインストールします。OAuth フローを完了するためにブラウザを開きます |105| `/install-slack-app` | Claude Slack アプリをインストールします。OAuth フローを完了するためにブラウザを開きます |

Details

1588 1588 

1589セッションは、代表的なトークン数を含む現実的なフローを通じて進みます。1589セッションは、代表的なトークン数を含む現実的なフローを通じて進みます。

1590 1590 

1591* **何も入力する前に**: CLAUDE.md、自動メモリ、MCP ツール名、スキルの説明がすべてコンテキストに読み込まれます。あなた自身のセットアップは、[出力スタイル](/docs/ja/output-styles)や[`--append-system-prompt`](/docs/ja/cli-reference)からのテキストなど、ここにさらに多くのものを追加する可能性があります。これらはシステムプロンプトと同じ方法で入ります。1591* **何も入力する前に**: CLAUDE.md、自動メモリ、MCP ツール名、スキルの説明がすべてコンテキストに読み込まれます。あなた自身のセットアップは、[出力スタイル](/docs/ja/output-styles)や[`--append-system-prompt`](/docs/ja/cli-reference)からのテキストなど、ここにさらに多くのものを追加する可能性があります。

1592* **Claude が作業するとき**: 各ファイル読み込みがコンテキストに追加され、[パススコープ付きルール](/docs/ja/memory#path-specific-rules)は一致するファイルと一緒に自動的に読み込まれ、[PostToolUse フック](/docs/ja/hooks-guide)は各編集後に発火します。1592* **Claude が作業するとき**: 各ファイル読み込みがコンテキストに追加され、[パススコープ付きルール](/docs/ja/memory#path-specific-rules)は一致するファイルと一緒に自動的に読み込まれ、[PostToolUse フック](/docs/ja/hooks-guide)は各編集後に発火します。

1593* **フォローアップ プロンプト**: [サブエージェント](/docs/ja/sub-agents)は独自の別のコンテキストウィンドウで研究を処理するため、大きなファイル読み込みはあなたのコンテキストウィンドウから外れます。サマリーと小さなメタデータトレーラーだけが戻ってきます。1593* **フォローアップ プロンプト**: [サブエージェント](/docs/ja/sub-agents)は独自の別のコンテキストウィンドウで研究を処理するため、大きなファイル読み込みはあなたのコンテキストウィンドウから外れます。サマリーと小さなメタデータトレーラーだけが戻ってきます。

1594* **最後に**: `/compact` は会話を構造化されたサマリーに置き換えます。ほとんどのスタートアップコンテンツは自動的に再度読み込まれます。以下の表は、各メカニズムに何が起こるかを示しています。1594* **最後に**: `/compact` は会話を構造化されたサマリーに置き換えます。ほとんどのスタートアップコンテンツは自動的に再度読み込まれます。以下の表は、各メカニズムに何が起こるかを示しています。


1601 1601 

1602| メカニズム | コンパクション後 |1602| メカニズム | コンパクション後 |

1603| :---------------------------------------------------------------------------------------- | :-------------------------------------------------------------------- |1603| :---------------------------------------------------------------------------------------- | :-------------------------------------------------------------------- |

1604| システムプロンプトと出力スタイル | 変更なし。メッセージ履歴の一部ではありません |1604| システムプロンプトと出力スタイル | 両方とも引き続き適用されます |

1605| プロジェクトルート CLAUDE.md とスコープなしルール | ディスクから再度注入されます |1605| プロジェクトルート CLAUDE.md とスコープなしルール | ディスクから再度注入されます |

1606| 自動メモリ | ディスクから再度注入されます |1606| 自動メモリ | ディスクから再度注入されます |

1607| [plan mode](/docs/ja/permission-modes#analyze-before-you-edit-with-plan-mode)で Claude が作成したプラン | ディスクから再度注入されます |1607| [plan mode](/docs/ja/permission-modes#analyze-before-you-edit-with-plan-mode)で Claude が作成したプラン | ディスクから再度注入されます |

Details

49 プロセスモニターのヘルパープロセス名49 プロセスモニターのヘルパープロセス名

50</h3>50</h3>

51 51 

52ランチャーが設定されている場合、`ps` と Activity Monitor は Claude Code の `claude bg-pty-host` と `claude bg-spare` ラベルの代わりに、バックグラウンドヘルパープロセスのバージョン付きバイナリ名を表示します。これはランチャーの `exec` が引数リストを再構築するためです。名前変更は隠蔽ではなく副作用です。プロセスはそれ以外は変更されず、Claude Code は表示名ではなくバイナリパスで独自のプロセスを識別します。52ランチャーが設定されている場合、`ps` と Activity Monitor は Claude Code の `claude bg-pty-host` と `claude bg-spare` ラベルをバックグラウンドヘルパープロセスに対して表示しなくなります。これはランチャーの `exec` が引数リストを再構築するためです。ラベルを失うことは隠蔽ではなく副作用です。プロセスはそれ以外は変更されず、Claude Code は表示名ではなくバイナリパスで独自のプロセスを識別します。

53 53 

54<h2 id="set-up-the-launcher">54<h2 id="set-up-the-launcher">

55 ランチャーをセットアップする55 ランチャーをセットアップする

Details

102 一般的な原因を確認する102 一般的な原因を確認する

103</h2>103</h2>

104 104 

105ほとんどの設定の問題は、小さな場所とシンタックスルールのセットに遡ります。バグを想定する前にこれらを確認してください:105ほとんどの設定の問題は、少数の場所とシンタックスのルールに遡ることができます。バグを想定する前に、以下を確認してください。

106 106 

107| 症状 | 原因 | 修正 |107| 症状 | 原因 | 修正方法 |

108| :--------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |108| :-------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

109| フックが発火しない | `matcher` が JSON 配列ではなく文字列である | 複数のツールをマッチするために `\|` を含む単一の文字列を使用します。例えば `"Edit\|Write"` です。[マッチャーパターン](/docs/ja/hooks#matcher-patterns) を参照してください。 |109| Hook が発火しない | `matcher` が文字列ではなく JSON 配列である | 複数のツールにマッチさせるには、`\|` を使用した単一の文字列を使用してください。例えば `"Edit\|Write"` です。[matcher パターン](/docs/ja/hooks#matcher-patterns)を参照してください。 |

110| フックが発火しない | `matcher` が v2.1.191 より前のバージョンでセパレータとして `,` を使用しています | Claude Code v2.1.191 以降は `,` をリスト区切り文字として `\|` のように扱います。以前のバージョンではコンマをリテラル文字として評価するため、`"Edit,Write"` は何もマッチしません。代わりに `\|` を使用するか、Claude Code をアップグレードしてください。 |110| Hook が発火しない | `matcher` が v2.1.191 より前のバージョンで区切り文字として `,` を使用している | Claude Code v2.1.191 以降では、`,` は `\|` のようなリスト区切り文字として扱われます。それより前のバージョンでは、カンマをリテラル文字として評価するため、`"Edit,Write"` は何にもマッチしません。代わりに `\|` を使用するか、Claude Code をアップグレードしてください。 |

111| フックが発火しない | `matcher` 値が小文字です。例えば `"bash"` | マッチングは大文字と小文字を区別します。ツール名は大文字です:`Bash`、`Edit`、`Write`、`Read`。 |111| Hook が発火しない | `matcher` の値が小文字である。例えば `"bash"` | マッチングは大文字と小文字を区別します。ツール名は大文字で始まります。`Bash`、`Edit`、`Write`、`Read` です。 |

112| フックが発火しない | Hooks がスタンドアロンファイルではなく `settings.json` に定義されていません | プロジェクトまたはユーザー設定用のスタンドアロン hooks ファイルはありません。`settings.json` の `"hooks"` キーの下に hooks を定義します。[プラグイン](/docs/ja/plugins-reference#hooks) のみが別の `hooks/hooks.json` を読み込みます。[フック設定](/docs/ja/hooks) を参照してください。 |112| Hook が発火しない | Hook が `settings.json` ではなくスタンドアロンファイルで定義されている | プロジェクトまたはユーザー設定用のスタンドアロン hooks ファイルはありません。`settings.json` の `"hooks"` キーの下に Hook を定義してください。[プラグイン](/docs/ja/plugins-reference#hooks)のみが別の `hooks/hooks.json` を読み込みます。[hook 設定](/docs/ja/hooks)を参照してください。 |

113| グローバルに設定された権限、hooks、env が無視されます | 設定が `~/.claude.json` に追加されました | `~/.claude.json` はアプリ状態と UI トグルを保持します。`permissions`、`hooks`、`env` は `~/.claude/settings.json` に属します。これらは 2 つの異なるファイルです。 |113| グローバルに設定された権限、Hook、または env が無視される | 設定が `~/.claude.json` に追加された | `~/.claude.json` はアプリの状態と UI トグルを保持します。`permissions`、`hooks`、および `env` は `~/.claude/settings.json` に属します。これらは 2 つの異なるファイルです。 |

114| `settings.json` 値が無視されているように見えます | 同じキーが `settings.local.json` で設定されています | `settings.local.json` は `settings.json` をオーバーライドし、両方とも `~/.claude/settings.json` をオーバーライドします。[設定の優先順位](/docs/ja/settings#settings-precedence) を参照してください。 |114| `settings.json` の値が無視されているように見える | 同じキーが `settings.local.json` で設定されている | `settings.local.json` は `settings.json` をオーバーライドし、両方とも `~/.claude/settings.json` をオーバーライドします。[設定の優先順位](/docs/ja/settings#settings-precedence)を参照してください。 |

115| スキルが `/skills` に表示されません | スキルファイルがフォルダ内ではなく `.claude/skills/name.md` にあります | `SKILL.md` を含むフォルダを使用します:`.claude/skills/name/SKILL.md`。 |115| Skill が `/skills` に表示されない | Skill ファイルがフォルダ内ではなく `.claude/skills/name.md` にある | フォルダ内に `SKILL.md` を使用してください。`.claude/skills/name/SKILL.md` です。 |

116| スキルが `/skills` に表示されますが Claude が呼び出しません | スキルのフロントマターに `disable-model-invocation: true` があるか、その説明がリクエストの言い方と一致しません | `/skills` のバッジを確認します:「user-only」ラベルは Claude が独自にトリガーしないことを意味します。[スキル呼び出し](/docs/ja/skills) を参照してください。 |116| Skill が `/skills` に表示されるが Claude がそれを呼び出さない | Skill のフロントマターに `disable-model-invocation: true` がある、またはその説明がリクエストの表現方法と一致しない | `/skills` のバッジを確認してください。「user-only」ラベルは Claude がそれを自動的にトリガーしないことを意味します。[skill 呼び出し](/docs/ja/skills)を参照してください。 |

117| サブディレクトリの `CLAUDE.md` 指示が無視されているように見えます | サブディレクトリファイルはセッション開始時ではなくオンデマンドで読み込まれます | Claude が Read ツールでそのディレクトリ内のファイルを読むときに読み込まれます。起動時ではなく、ファイルを書き込みまたは作成するときではありません。[CLAUDE.md ファイルの読み込み方法](/docs/ja/memory#how-claude-md-files-load) を参照してください。 |117| サブディレクトリの `CLAUDE.md` 命令が無視されているように見える | サブディレクトリファイルはセッション開始時ではなく、オンデマンドで読み込まれる | これらは Claude が Read ツールでそのディレクトリ内のファイルを読み取るときに読み込まれます。起動時ではなく、そこでファイルを書き込みまたは作成するときでもありません。[CLAUDE.md ファイルの読み込み方法](/docs/ja/memory#how-claude-md-files-load)を参照してください。 |

118| サブエージェントが `CLAUDE.md` 指示を無視します | 組み込みの Explore および Plan エージェントは `CLAUDE.md` をスキップします。カスタムサブエージェントはメイン会話と同じ方法で読み込みます | Explore または Plan の場合、委譲プロンプトで指示を再度述べてください。カスタムサブエージェントの場合、重要な指示をエージェントファイル本体に入れます。これはエージェントのシステムプロンプトになります。[起動時に読み込まれるもの](/docs/ja/sub-agents#what-loads-at-startup) を参照してください。 |118| サブエージェントが `CLAUDE.md` 命令を無視する | 組み込みの Explore および Plan エージェントは `CLAUDE.md` をスキップします。カスタムサブエージェントはメイン会話と同じ方法で読み込みます | Explore または Plan の場合、委譲プロンプトで命令を再度述べてください。カスタムサブエージェントの場合、重要な命令をエージェントファイル本体に入れてください。これはエージェントのシステムプロンプトになります。[起動時に読み込まれるもの](/docs/ja/sub-agents#what-loads-at-startup)を参照してください。 |

119| クリーンアップロジックがセッション終了時に実行されません | `SessionEnd` フックが設定されていません | `settings.json` に `SessionEnd` フックを追加します。[フックイベントリスト](/docs/ja/hooks#hook-events) を参照してください。 |119| クリーンアップロジックがセッション終了時に実行されない | `SessionEnd` hook が設定されていない | `settings.json` に `SessionEnd` hook を追加してください。[hook イベントリスト](/docs/ja/hooks#hook-events)を参照してください。 |

120| `.mcp.json` の MCP サーバーが読み込まれません | ファイルが `.claude/` の下にあるか、サーバーが VS Code の `mcp.json` のように、トップレベルの `servers` キーの下にあります。代わりに `mcpServers` を使用してください | プロジェクト MCP 設定はリポジトリルートの `.mcp.json` に置かれます。`.claude/` 内ではなく、`mcpServers` キーの下にサーバーがあります。[MCP 設定](/docs/ja/mcp) を参照してください。 |120| `.mcp.json` の MCP サーバーが読み込まれない | ファイルが `.claude/` の下にあるか、そのサーバーが VS Code の `mcp.json` のように、`mcpServers` ではなくトップレベルの `servers` キーの下にある | プロジェクト MCP 設定は `.claude/` 内ではなく、リポジトリルートに `.mcp.json` として配置され、`mcpServers` キーの下にサーバーがあります。[MCP 設定](/docs/ja/mcp)を参照してください。 |

121| `settings.json` の `mcpServers` の下に追加された MCP サーバーが表示されません | `settings.json` は `mcpServers` キーを読み込みません | プロジェクトサーバーをリポジトリルートの `.mcp.json` で定義するか、`claude mcp add --scope user` を実行してユーザースコープサーバーを追加します。[MCP 設定](/docs/ja/mcp) を参照してください。 |121| `settings.json` の `mcpServers` の下に追加された MCP サーバーが表示されない | `settings.json` は `mcpServers` キーを読み込まない | プロジェクトサーバーをリポジトリルートの `.mcp.json` で定義するか、ユーザースコープのサーバーの場合は `claude mcp add --scope user` を実行してください。[MCP 設定](/docs/ja/mcp)を参照してください。 |

122| プロジェクト MCP サーバーが追加されても表示されません | 1 回限りの承認プロンプトが却下されました | プロジェクトスコープサーバーは承認が必要です。`/mcp` を実行してステータスを確認し、承認します。 |122| プロジェクト MCP サーバーが追加されたが表示されない | 1 回限りの承認プロンプトが却下された | プロジェクトスコープのサーバーは承認が必要です。`/mcp` を実行してステータスを確認し、承認してください。 |

123| MCP サーバーが一部のディレクトリから起動に失敗します | `command` または `args` が相対ファイルパスを使用しています | ローカルスクリプトには絶対パスを使用します。`npx` または `uvx` のような `PATH` 上の実行可能ファイルはそのまま機能します。 |123| MCP サーバーが一部のディレクトリから起動に失敗する | `command` または `args` が相対ファイルパスを使用している | ローカルスクリプトには絶対パスを使用してください。`npx` や `uvx` のような `PATH` 上の実行可能ファイルはそのまま機能します。 |

124| MCP サーバーが予期された環境変数なしで起動します | サーバーの設定エントリがそれらを設定していません。また、Claude Code が stdio サーバーに渡す環境にもありません:独自の環境から、[サブプロセスから削除する変数](/docs/ja/monitoring-usage#administrator-configuration) を差し引いたもの | サーバーの `.mcp.json` エントリ内でサーバーごとの `env` を設定します。これは起動環境またはワークスペーストラストに依存しません。 |124| MCP サーバーが予期された環境変数なしで起動する | サーバーの設定エントリがそれらを設定していない、および Claude Code が stdio サーバーに渡す環境にそれらがない。その独自の環境から、[サブプロセスから削除する変数](/docs/ja/monitoring-usage#administrator-configuration)を引いたもの | サーバーの `.mcp.json` エントリ内でサーバーごとの `env` を設定してください。これは起動環境またはワークスペーストラストに依存しません。 |

125| `Bash(rm *)` 拒否ルールが `/bin/rm` または `find -delete` をブロックしません | プレフィックスルールは基になる実行可能ファイルではなく、リテラルコマンド文字列をマッチします | 各バリアントの明示的なパターンを追加するか、[PreToolUse フック](/docs/ja/hooks-guide) または [サンドボックス](/docs/ja/sandboxing) を使用して、ハード保証を取得します。 |125| `Bash(rm *)` 拒否ルールが `/bin/rm` または `find -delete` をブロックしない | Bash ルールは基になる実行可能ファイルではなく、リテラルコマンド文字列にマッチします。[Bash ルールがマッチしないもの](/docs/ja/permissions#bash-rule-limits)を参照してください | [PreToolUse hook](/docs/ja/hooks-guide)または[サンドボックス](/docs/ja/sandboxing)を使用して、ハード保証を取得してください。 |

126 126 

127<h2 id="related-resources">127<h2 id="related-resources">

128 関連リソース128 関連リソース

desktop.md +13 −8

Details

9Claude Desktop アプリには 3 つのタブがあります:**Chat** は会話用、**Cowork** は [Dispatch とより長い agentic work](https://claude.com/product/cowork) 用、**Code** はソフトウェア開発用です。このページは Code タブのリファレンスです。9Claude Desktop アプリには 3 つのタブがあります:**Chat** は会話用、**Cowork** は [Dispatch とより長い agentic work](https://claude.com/product/cowork) 用、**Code** はソフトウェア開発用です。このページは Code タブのリファレンスです。

10 10 

11<CardGroup cols={3}>11<CardGroup cols={3}>

12 <Card title="Download for macOS" icon="apple" href="https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code&utm_medium=docs">12 <Card title="macOS 用にダウンロード" icon="apple" href="https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code&utm_medium=docs">

13 Universal build for Intel and Apple Silicon13 Intel と Apple Silicon 向けのユニバーサルビルド

14 </Card>14 </Card>

15 15 

16 <Card title="Download for Windows" icon="windows" href="https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code&utm_medium=docs">16 <Card title="Windows 用にダウンロード" icon="windows" href="https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code&utm_medium=docs">

17 For x64 processors17 x64 プロセッサ向け

18 </Card>18 </Card>

19 19 

20 <Card title="Get Claude for Linux (beta)" icon="linux" href="/docs/en/desktop-linux">20 <Card title="Linux 用 Claude を入手(ベータ版)" icon="linux" href="/docs/ja/desktop-linux">

21 apt or .deb for Ubuntu and Debian21 Ubuntu と Debian 向けの apt または .deb

22 </Card>22 </Card>

23</CardGroup>23</CardGroup>

24 24 

25For Windows ARM64, download the [ARM64 installer](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs). On Linux, install with apt; see [Claude Desktop on Linux](/docs/en/desktop-linux).25Windows ARM64 の場合は、[ARM64 インストーラー](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)をダウンロードしてください。Linux では apt でインストールします。[Claude Desktop on Linux](/docs/ja/desktop-linux)を参照してください。

26 26 

27インストール後、Claude を起動してサインインし、**Code** タブをクリックします。Windows で初めて開く場合、[Git for Windows](https://git-scm.com/downloads/win) がインストールされている必要があります。インストール後、アプリを再起動してください。最初のセッションのウォークスルーについては、[はじめにガイド](/docs/ja/desktop-quickstart)を参照してください。27インストール後、Claude を起動してサインインし、**Code** タブをクリックします。Windows で初めて開く場合、[Git for Windows](https://git-scm.com/downloads/win) がインストールされている必要があります。インストール後、アプリを再起動してください。最初のセッションのウォークスルーについては、[はじめにガイド](/docs/ja/desktop-quickstart)を参照してください。

28 28 


743 743 

744クラウドセッションはアプリを閉じても、バックグラウンドで続行されます。使用状況は[サブスクリプションプランの制限](/docs/ja/costs)にカウントされ、別の計算料金はありません。744クラウドセッションはアプリを閉じても、バックグラウンドで続行されます。使用状況は[サブスクリプションプランの制限](/docs/ja/costs)にカウントされ、別の計算料金はありません。

745 745 

746異なるネットワークアクセスレベルと環境変数を持つカスタムクラウド環境を作成できます。クラウドセッションを開始するときに環境ドロップダウンを選択し、**Add cloud environment** を選択します。ネットワークアクセスと環境変数の設定の詳細については、[クラウド環境を設定する](/docs/ja/cloud-environments)を参照してください。746異なるネットワークアクセスレベルと環境変数を持つカスタムクラウド環境を作成できます。クラウドセッションを開始するときに、プロンプトボックスの環境ドロップダウンを開いてそれらを管理します:

747 

748* **環境を追加する**:**Add cloud environment** を選択します

749* **自分の環境の 1 つを編集またはアーカイブする**:それにマウスを合わせて、ギアアイコンをクリックします

750 

751ネットワークアクセスと環境変数の設定の詳細については、[クラウド環境を設定する](/docs/ja/cloud-environments)を参照してください。

747 752 

748<h3 id="ssh-sessions">753<h3 id="ssh-sessions">

749 SSH セッション754 SSH セッション

desktop-ios-simulator.md +176 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# iOS シミュレータでアプリをテストする

6 

7> Claude Code Desktop は、Claude がアプリをビルド、実行、またはチェックするときに、iOS シミュレータペインでアプリを開きます。各セッションに対して個別のシミュレータが用意されます。

8 

9<Note>

10 iOS シミュレータペインは、macOS 上の Claude Code Desktop でパブリックベータ版です。Pro、Max、Team、Enterprise プランで利用可能です。ただし、HIPAA 設定が有効になっている Enterprise 組織では利用できません。

11</Note>

12 

13iOS シミュレータペインは、Claude Code Desktop の会話の横に Apple の iOS シミュレータで実行されているアプリを表示します。Claude がシミュレータでアプリをビルド、インストール、起動、またはチェックするときに、ペインが自動的に開き、デバイス画面がライブでストリーミングされます。Claude がアプリを実行してテストするのを見守ったり、Claude が作業を続けている間に自分でアプリをタップして操作したりできます。

14 

15シミュレータペインはシミュレータを直接操作するため、[コンピュータの使用](/docs/ja/desktop#let-claude-use-your-computer)を必要とせず、画面を乗っ取ったり他のウィンドウを隠したりすることはありません。CLI からは、Claude は [コンピュータの使用](/docs/ja/computer-use#test-a-simulator-flow)を通じて iOS シミュレータに到達し、マウスで操作するのと同じ方法で画面上のシミュレータを制御します。

16 

17<h2 id="requirements">

18 要件

19</h2>

20 

21シミュレータペインは Apple のシミュレータツールを使用しており、デスクトップアプリには含まれていません。セッションを開始する前に、以下を確認してください。

22 

23* Claude Desktop v1.24012.0 以降

24* Mac(Apple の iOS シミュレータは macOS でのみ実行されるため)

25* [Xcode](https://developer.apple.com/xcode/)(iOS プラットフォームがインストールされている状態)。これはシミュレータデバイスを提供します。Xcode にまだシミュレータが表示されていない場合は、[シミュレータペインにシミュレータが見つからないと表示される](#the-simulator-pane-says-no-simulators-were-found)を参照してください。

26 * Xcode 26.x を使用してください。ペインはまだ Xcode 27 では動作しません。Xcode 27 は Simulator アプリを Device Hub に置き換えます。Mac 上の `xcode-select` が Xcode 27 を指している場合は、[シミュレータペインが Xcode 27 で失敗する](#the-simulator-pane-fails-with-xcode-27)を参照してください。

27 

28<Note>

29 このページでは、「デバイス」はシミュレートされた iPhone または iPad を指し、Xcode の **Window → Devices and Simulators** で管理するのと同じシミュレータデバイスの 1 つであり、物理ハードウェアではありません。

30</Note>

31 

32シミュレータペインはローカルセッションでのみ利用可能です。[クラウド](/docs/ja/desktop#run-long-running-tasks-remotely)および [SSH](/docs/ja/desktop#ssh-sessions) セッションでは、Claude は Mac 上のシミュレータに到達できないマシン上で実行されます。

33 

34<h2 id="run-your-app-in-the-simulator">

35 シミュレータでアプリを実行する

36</h2>

37 

38シミュレータペインを開くためにコマンドや設定は必要ありません。Claude がシミュレータでアプリを実行するときに、ペインが開きます。

39 

40<Steps>

41 <Step title="iOS プロジェクトを開く">

42 Claude Code Desktop で **Code** タブを開き、アプリのプロジェクトを [プロジェクトフォルダ](/docs/ja/desktop#start-a-session)としてセッションを開始します。iOS シミュレータ用にアプリをビルドするプロジェクトであれば、どのプロジェクトでも動作します。

43 </Step>

44 

45 <Step title="Claude にアプリを実行またはテストするよう依頼する">

46 タスクをアプリの実行または検証の周辺で表現します。例えば:

47 

48 ```text theme={null}

49 Build the app and run it in the simulator to check the onboarding flow.

50 ```

51 </Step>

52 

53 <Step title="シミュレータペインでアプリを見る">

54 アプリがシミュレータで起動すると、iOS シミュレータペインが会話の横に開きます。Claude がデバイスを初めて使用するときは、デスクトップアプリがアクセスを許可するよう求めます。[Claude にデバイスへのアクセスを許可する](#grant-claude-access-to-a-device)を参照してください。Claude はアプリをインストールし、タップして操作し、画面を読み取って独自の変更を検証しながら、あなたが見守ります。

55 </Step>

56</Steps>

57 

58シミュレータペインは、Claude がセッション内のいずれかの時点でシミュレータでアプリを起動するたびに開きます。リクエストがアプリを見ることについてである場合、例えば「新しい画面は正しく見えますか?」という場合、Claude は作業を開始する前にシミュレータを起動します。Claude がバグを修正または画面を変更した後、変更を検証するよう依頼します。アプリを再起動すると、ペインが開いていない場合は再度開きます。

59 

60シミュレータペインは、アプリが実際に起動したデバイスを表示します。特定のデバイスでテストするには、リクエストでそれを指定します。例えば「iPhone SE シミュレータで実行してください」と言えば、Claude はビルドと起動時にそのデバイスをターゲットにします。

61 

62Claude が起動したデバイスは Apple の Simulator アプリにも表示され、Claude は既に起動しているデバイスにアプリをインストールできます。

63 

64シミュレータペインを自分で開くこともできます。セッションがシミュレータを接続したか Swift ファイルを編集した後、セッションツールバーの **Views** メニューに **iOS Simulator** エントリが表示されます。ペインがまだデバイスを表示していない場合は、**Attach simulator** をクリックするか、その横のデバイスメニューから特定のデバイスを選択します。シャットダウンしたデバイスを選択すると、それが起動します。Xcode またはそのシミュレータが見つからない場合、ペインはセットアップステップを表示し、完了するたびにそれらをチェックします。

65 

66<h2 id="control-the-simulator-yourself">

67 シミュレータを自分で制御する

68</h2>

69 

70シミュレータペインはビューアだけではなく、インタラクティブです。Claude が作業している間、またはタスク間に、以下を実行できます。

71 

72* デバイス画面をクリックしてドラッグすることでタップとスワイプを実行する

73* Apple の Simulator アプリと同じショートカットでハードウェアボタンを押す。**Cmd+Shift+H** でホーム、**Cmd+L** でロック、**Cmd+Up Arrow** と **Cmd+Down Arrow** でボリューム

74* 回転ボタンまたは **Cmd+Right Arrow** でデバイスを時計回りに 4 分の 1 回転させる

75* デバイスメニューからペインが表示するデバイスを切り替える。このメニューには各シミュレータの OS バージョンと起動状態が表示されます

76* **Cmd+S** でスクリーンショットを保存するか、**Cmd+R** でスクリーン録画を保存します。ペインのキャプチャボタンまたはショートカットを使用します。ファイルはデスクトップに保存されます

77* **Detach simulator** をクリックしてデバイスをシャットダウンせずにストリーミングを停止します。ペインは **Attach simulator** 状態に戻ります

78 

79デバイス名の下の行は、シミュレータからのビデオストリームを調整します。Mac に負荷がかかっている場合は **Frame rate** または **Resolution** を下げるか、**Encoding** を H.264 と JPEG の間で切り替えるか、**FPS** をチェックしてペインが受け取っているフレームレートを表示します。これらの設定は、ペインがデバイスを表示する方法を変更し、アプリの実行方法は変更しません。

80 

81あなたと Claude は同じデバイスを操作するため、あなたのタップは Claude が見るアプリの状態を変更します。Claude に特定の画面をチェックさせるには、タップして移動してから依頼します。Claude がデバイスを操作している間、ペインは画面の上に **Claude is using this device** バッジを表示します。バッジが消えるまでタップを控えて、結果があなたの入力ではなくアプリを反映するようにします。

82 

83<h2 id="how-sessions-manage-devices">

84 セッションがデバイスを管理する方法

85</h2>

86 

87各デバイスはそれを起動したセッションに属するため、[並列セッション](/docs/ja/desktop#work-in-parallel-with-sessions)はデバイスを共有しません。1 つのセッションのペインに表示されるのは、そのセッションの作業を反映し、別のセッションの作業ではありません。サイドバーでセッションを切り替えると、シミュレータビューが会話と一緒に切り替わり、戻すと同じデバイスが中断したところから再開されます。Claude が複数のデバイスで作業する場合、各デバイスは独自のペインを開き、セッションあたり最大 4 つまでです。

88 

89Claude Code Desktop は、起動したシミュレータが使用されなくなると、それらをシャットダウンします。アプリを終了するとき、セッションをアーカイブするとき、またはペインからデバイスをデタッチしてから 10 分後です。ペインまたは Apple の Simulator アプリから自分で起動したデバイスは、自動的にシャットダウンされることはありません。接続されたデバイスをすぐにシャットダウンするには、ペインのシャットダウンボタンを使用します。

90 

91<h2 id="grant-claude-access-to-a-device">

92 Claude にデバイスへのアクセスを許可する

93</h2>

94 

95Claude はデバイスを制御する前に同意を求めますが、アプリのビルドまたはデバイス上の URL を開くことはセッションの権限モードに従います。あなたまたはあなたの組織は、Claude のアクセスを完全にオフにすることもできます。

96 

97<h3 id="allow-a-device-the-first-time">

98 デバイスを初めて許可する

99</h3>

100 

101Claude がシミュレータを初めて使用するときは、デスクトップアプリがそれを許可するよう求めます。同意はそのデバイスの制御とスクリーンショットの撮影をカバーし、セッションごとではなくデバイスごとに 1 回与えます。Claude のデバイスのスクリーンショットは Anthropic に送信され、通常の会話保持設定の下で保持されるため、Claude が使用するデバイスで実際のアカウントにサインインしないでください。

102 

103デバイスを許可した後、タップ、入力、アプリの起動、スクリーンショットの撮影など、Claude のそのデバイス上のアクションは、さらなるプロンプトなしに実行されます。これらはペインをクリックするのと同じ信頼を持ち、シミュレートされたデバイスのみに触れるため、ペインはコンピュータの使用が必要とする macOS アクセシビリティおよびスクリーン録画権限を必要としません。

104 

105拒否した場合、デバイスは起動し、ペインは独自のタップで動作します。Claude のアクセスのみがオフのままです。後で考え直した場合は、ペインの **Let Claude use it** をクリックします。

106 

107<h3 id="actions-that-follow-your-permission-mode">

108 権限モードに従うアクション

109</h3>

110 

1112 つのアクションは、1 回限りの同意ではなく、セッションの [権限モード](/docs/ja/permissions#permission-modes)に従います。

112 

113* デバイス上で URL を開く。例えば、ディープリンクをテストするか、デバイスの Safari でページを読み込むため。URL はデータをデバイスから持ち出す可能性があります。

114* アプリをビルドする。`xcodebuild` は Mac 上でプロジェクトのビルドスクリプトを実行するため。既に進行中のビルドをチェックしてもプロンプトは表示されません。

115 

116<h3 id="turn-off-simulator-access">

117 シミュレータアクセスをオフにする

118</h3>

119 

120デスクトップアプリの設定でシミュレータアクセスをオフにできます。組織がすべてのユーザーに対してオフにする方法は 2 つあります。

121 

122* `disableMobileSimulatorTools` [管理設定](/docs/ja/desktop#managed-settings)は Claude のシミュレータツールをブロックします。シミュレータペインは独自のタップで使用可能なままで、設定はアプリ内からオーバーライドできません。

123* `requireCoworkFullVmSandbox` ポリシーキー。これは Claude のツールを Mac 上ではなく分離された仮想マシン内で実行し、シミュレータペインと Claude のシミュレータツールを完全に無効にするため、設定されている間はペインがデバイスを接続できません。

124 

125Claude はどちらが適用されるかを通知します。

126 

127<h2 id="limitations">

128 制限事項

129</h2>

130 

131Claude はシミュレートされたデバイスのみを操作でき、物理的な iPhone または iPad を制御できません。物理デバイスでテストするには、Xcode から自分でアプリを実行し、表示内容を説明するか、スクリーンショットを会話に添付して Claude が作業できるようにします。

132 

133<h2 id="troubleshooting">

134 トラブルシューティング

135</h2>

136 

137<h3 id="the-simulator-pane-doesn’t-open-when-claude-runs-the-app">

138 Claude がアプリを実行するときにシミュレータペインが開かない

139</h3>

140 

141Claude がアプリを実行またはテストしたいことを認識していないか、シミュレータツールが見つからない可能性があります。以下を確認してください。

142 

143* 目標を明確に述べます。例えば「iOS シミュレータでアプリを実行し、サインアップフローをタップして操作してください」。

144* Xcode と iOS シミュレータがインストールされており、Xcode バージョンが [要件](#requirements)を満たしていることを確認します。

145* 組織が Claude Code を管理している場合、[シミュレータツールはポリシーによって無効にされている可能性があります](#turn-off-simulator-access)。

146* Enterprise 組織で HIPAA 設定が有効になっている場合、シミュレータペインは利用できません。

147* シミュレータペインには Claude Desktop v1.24012.0 以降が必要です。**Claude → Check for Updates** を開き、アプリを再起動します。

148 

149<h3 id="the-simulator-pane-says-no-simulators-were-found">

150 シミュレータペインにシミュレータが見つからないと表示される

151</h3>

152 

153`xcode-select` が Xcode 27 を指している場合、デバイスが存在していても、ペインはシミュレータが見つからないと報告できます。[シミュレータペインが Xcode 27 で失敗する](#the-simulator-pane-fails-with-xcode-27)を参照してください。それ以外の場合、Xcode はインストールされていますが、iOS シミュレータがリストされていません。シミュレータペインはセットアップステップを表示し、各ステップが完了するたびにそれらをチェックします。見つからないピースを手動でインストールするには、Xcode の設定から iOS シミュレータランタイムをダウンロードするか、`xcodebuild -downloadPlatform iOS` を実行します。

154 

155<h3 id="the-simulator-pane-fails-with-xcode-27">

156 シミュレータペインが Xcode 27 で失敗する

157</h3>

158 

159ペインはまだ Xcode 27 では動作しません。Xcode 27 は Simulator アプリを Device Hub に置き換えます。Xcode 27 が選択されている場合、デバイスの接続に失敗するか、デバイスが存在していてもペインはシミュレータが見つからないと報告します。

160 

161ペインは `xcode-select` が指す Xcode を使用します。Xcode 27 が唯一のインストールである場合、まず Xcode 26.x をそれと並行してインストールします。次に、26.x インストールをそのパスで選択します。例えば、`/Applications/Xcode-26.4.app` としてインストールされている場合:

162 

163```bash theme={null}

164sudo xcode-select -s /Applications/Xcode-26.4.app

165```

166 

167`xcode-select -p` を実行して、どのインストールが選択されているかを確認します。

168 

169<h2 id="see-also">

170 関連項目

171</h2>

172 

173* [Desktop でのコンピュータの使用](/docs/ja/desktop#let-claude-use-your-computer):専用ペインのないアプリの画面制御

174* [CLI からのコンピュータの使用](/docs/ja/computer-use):CLI が iOS シミュレータに到達する方法

175* [セッションで並列に作業する](/docs/ja/desktop#work-in-parallel-with-sessions):セッションが変更を分離する方法

176* [Claude Code Desktop を始める](/docs/ja/desktop-quickstart)

Details

9デスクトップアプリは、複数のセッションを並行して実行するために構築されたグラフィカルインターフェース付きの Claude Code を提供します。並列作業を管理するためのサイドバー、統合ターミナルとファイルエディター付きのドラッグアンドドロップレイアウト、ビジュアル diff レビュー、ライブアプリプレビュー、自動マージ機能付きの GitHub PR 監視、スケジュール済みタスクがあります。ターミナルは不要です。9デスクトップアプリは、複数のセッションを並行して実行するために構築されたグラフィカルインターフェース付きの Claude Code を提供します。並列作業を管理するためのサイドバー、統合ターミナルとファイルエディター付きのドラッグアンドドロップレイアウト、ビジュアル diff レビュー、ライブアプリプレビュー、自動マージ機能付きの GitHub PR 監視、スケジュール済みタスクがあります。ターミナルは不要です。

10 10 

11<CardGroup cols={3}>11<CardGroup cols={3}>

12 <Card title="Download for macOS" icon="apple" href="https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code&utm_medium=docs">12 <Card title="macOS 用にダウンロード" icon="apple" href="https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code&utm_medium=docs">

13 Universal build for Intel and Apple Silicon13 Intel と Apple Silicon 向けのユニバーサルビルド

14 </Card>14 </Card>

15 15 

16 <Card title="Download for Windows" icon="windows" href="https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code&utm_medium=docs">16 <Card title="Windows 用にダウンロード" icon="windows" href="https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code&utm_medium=docs">

17 For x64 processors17 x64 プロセッサ向け

18 </Card>18 </Card>

19 19 

20 <Card title="Get Claude for Linux (beta)" icon="linux" href="/docs/en/desktop-linux">20 <Card title="Linux 用 Claude を入手(ベータ版)" icon="linux" href="/docs/ja/desktop-linux">

21 apt or .deb for Ubuntu and Debian21 Ubuntu と Debian 向けの apt または .deb

22 </Card>22 </Card>

23</CardGroup>23</CardGroup>

24 24 

25For Windows ARM64, download the [ARM64 installer](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs). On Linux, install with apt; see [Claude Desktop on Linux](/docs/en/desktop-linux).25Windows ARM64 の場合は、[ARM64 インストーラー](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)をダウンロードしてください。Linux では apt でインストールします。[Claude Desktop on Linux](/docs/ja/desktop-linux)を参照してください。

26 26 

27<Note>27<Note>

28 Claude Code には [Pro、Max、Team、または Enterprise サブスクリプション](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=desktop_quickstart_pricing)が必要です。28 Claude Code には [Pro、Max、Team、または Enterprise サブスクリプション](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=desktop_quickstart_pricing)が必要です。

Details

14 スケジュール設定オプションの比較14 スケジュール設定オプションの比較

15</h2>15</h2>

16 16 

17Claude Code offers three ways to schedule recurring or one-off work:17Claude Code は、定期的または 1 回限りの作業をスケジュールするための 3 つの方法を提供します。

18 18 

19| | [Cloud](/docs/en/routines) | [Desktop](/docs/en/desktop-scheduled-tasks) | [`/loop`](/docs/en/scheduled-tasks) |19| | [Cloud](/docs/ja/routines) | [Desktop](/docs/ja/desktop-scheduled-tasks) | [`/loop`](/docs/ja/scheduled-tasks) |

20| :------------------------- | :---------------------------------- | :------------------------------------- | :------------------------------------------------------------------------- |20| :-------------- | :------------------------- | :------------------------------------- | :----------------------------------------------------- |

21| Runs on | Cloud, Anthropic-managed by default | Your machine | Your machine |21| 実行場所 | Cloud、デフォルトでは Anthropic 管理 | お客様のマシン | お客様のマシン |

22| Requires machine on | No | Yes | Yes |22| マシンの起動が必要 | いいえ | はい | はい |

23| Requires open session | No | No | Yes |23| オープンセッションが必要 | いいえ | いいえ | はい |

24| Persistent across restarts | Yes | Yes | Restored on `--resume`, with [exceptions](/docs/en/scheduled-tasks#limitations) |24| 再起動後も永続 | はい | はい | `--resume` で復元、[例外](/docs/ja/scheduled-tasks#limitations)あり |

25| Access to local files | No (fresh clone) | Yes | Yes |25| ローカルファイルへのアクセス | いいえ(新規クローン) | はい | はい |

26| MCP servers | Connectors configured per task | [Config files](/docs/en/mcp) and connectors | Inherits from session |26| MCP サーバー | タスクごとに設定されたコネクタ | [設定ファイル](/docs/ja/mcp)とコネクタ | セッションから継承 |

27| Permission prompts | No (runs autonomously) | Configurable per task | Inherits from session |27| 権限プロンプト | いいえ(自律的に実行) | タスクごとに設定可能 | セッションから継承 |

28| Customizable schedule | Via `/schedule` in the CLI | Yes | Yes |28| カスタマイズ可能なスケジュール | CLI の `/schedule` 経由 | はい | はい |

29| Minimum interval | 1 hour | 1 minute | 1 minute |29| 最小間隔 | 1 時間 | 1 分 | 1 分 |

30 30 

31<Tip>31<Tip>

32 Use **cloud tasks** for work that should run reliably without your machine. Use **Desktop tasks** when you need access to local files and tools. Use **`/loop`** for quick polling during a session.32 マシンなしで確実に実行する必要がある作業には**クラウドタスク**を使用します。ローカルファイルとツールへのアクセスが必要な場合は**デスクトップタスク**を使用します。セッション中の迅速なポーリングには\*\*`/loop`\*\*を使用します。

33</Tip>33</Tip>

34 34 

35<Note>35<Note>

Details

207 </Step>207 </Step>

208 208 

209 <Step title="新しいプラグインを使用する">209 <Step title="新しいプラグインを使用する">

210 インストール概要を確認します。`Run /reload-plugins to activate.` と報告されている場合は、`/reload-plugins` を実行してください。リロードが会話を再読み込みすることを警告する場合は、`/reload-plugins --force` として再実行してください。210 インストール概要が `Run /reload-plugins to activate.` と報告されている場合、Claude Code はそのリロードを自動的に実行します。リロードが会話を再読み込みすることを警告する場合は、`/reload-plugins --force` を実行してプラグインをアクティベートしてください。

211 211 

212 プラグインスキルはプラグイン名でネームスペース化されているため、**commit-commands** は `/commit-commands:commit` のようなスキルを提供します。212 プラグインスキルはプラグイン名でネームスペース化されているため、**commit-commands** は `/commit-commands:commit` のようなスキルを提供します。

213 213 


311```311```

312 312 

313<Note>313<Note>

314 URL ベースのマーケットプレイスは、Git ベースのマーケットプレイスと比べていくつかの制限があります。プラグインをインストールするときに「path not found」エラーが発生した場合は、[トラブルシューティング](/docs/ja/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces)を参照してください。314 URL ベースのマーケットプレイスは、Git ベースのマーケットプレイスと比べていくつかの制限があります。URL ベースのマーケットプレイスからのプラグインのインストールが失敗する場合は、[トラブルシューティング](/docs/ja/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces)を参照してください。

315</Note>315</Note>

316 316 

317<h2 id="install-plugins">317<h2 id="install-plugins">


349`/plugin` インターフェイスからインストールすると、インストール サマリーは、プラグインが現在のセッションでアクティブかどうかを示します:349`/plugin` インターフェイスからインストールすると、インストール サマリーは、プラグインが現在のセッションでアクティブかどうかを示します:

350 350 

351* `Plugin is now active.`: Claude Code はインストールの一部としてプラグインをアクティブにしました。351* `Plugin is now active.`: Claude Code はインストールの一部としてプラグインをアクティブにしました。

352* `Run /reload-plugins to activate.`: プラグインはまだアクティブではありません。これは、アクティブ化すると[プロンプト キャッシュが無効になる](/docs/ja/prompt-caching#enabling-or-disabling-a-plugin)か、アクティブ化の試行が失敗したためです。コマンドを実行してプラグインをアクティブにします。352* `Run /reload-plugins to activate.`: プラグインはまだアクティブではありません。これは、アクティブ化すると[プロンプト キャッシュが無効になる](/docs/ja/prompt-caching#enabling-or-disabling-a-plugin)か、アクティブ化の試行が失敗したためです。Claude Code はその後、`/reload-plugins` を実行します。そのリロードがプロンプト キャッシュについて警告する場合、[プラグインをとにかくアクティブにする](#apply-plugin-changes-without-restarting)には `/reload-plugins --force` を実行してください。

353* プラグインの読み込みに失敗した場合、サマリーは失敗を報告し、`/plugin` **Errors** タブに詳細が表示されます。353* プラグインの読み込みに失敗した場合、サマリーは失敗を報告し、`/plugin` **Errors** タブに詳細が表示されます。

354 354 

355v2.1.221 より前では、`/reload-plugins` を実行するか再起動するまで、現在のセッションでインストールが有効になりませんでした。355v2.1.221 より前では、`/reload-plugins` を実行するか再起動するまで、現在のセッションでインストールが有効になりませんでした。


393 393 

394直接コマンドでプラグインを管理することもできます:394直接コマンドでプラグインを管理することもできます:

395 395 

396* `/plugin disable`、`/plugin enable`、または `/plugin uninstall` を実行すると、Claude Code はプラグインパネルを開いて変更を適用し、パネルを開いたままにします。別のコマンドを入力する前に **Esc** を押してパネルを閉じます。396* `/plugin disable`、`/plugin enable`、または `/plugin uninstall` を実行すると、Claude Code はプラグインパネルを開いて変更を適用し、パネルを開いたままにします。別のコマンドを入力する前に **Esc** を押してパネルを閉じます。[プラグインの変更をリスタートなしで適用する](#apply-plugin-changes-without-restarting) では、変更がセッションでいつ有効になるかについて説明しています。

397* スクリプティングの場合は、代わりに `claude plugin` シェルコマンドを使用します。これらはパネルを開きません。397* スクリプティングの場合は、代わりに `claude plugin` シェルコマンドを使用します。これらはパネルを開きません。

398 398 

399メニューを開かずにインストール済みプラグインを一覧表示します:399メニューを開かずにインストール済みプラグインを一覧表示します:


437 プラグインの変更をリスタートなしで適用する437 プラグインの変更をリスタートなしで適用する

438</h3>438</h3>

439 439 

440[インストール概要](#install-plugins) が `Plugin is now active.` を報告する場合、Claude Code はすでにプラグインをアクティブ化しており、このステップをスキップできます。その他すべての場合、セッション中に有効化または無効化したプラグイン、およびインストール概要が `Run /reload-plugins to activate.` を報告するインストールについては、すべての変更をリスタートなしで適用します:440`/plugin` メニューを閉じると、Claude Code はインストール、有効化、無効化、アンインストールなど、メニューで行った変更を適用するために `/reload-plugins` を実行します。リロードが [プロンプトキャッシュを無効にする](/docs/ja/prompt-caching#enabling-or-disabling-a-plugin) 場合、警告を表示し、変更を保留のままにします。代わりに `/reload-plugins --force` を実行して適用します。Claude がまだ応答中の場合、リロードは応答が終了した後に実行されます。

441 441 

442```shell theme={null}442メニューの外で発生するプラグイン変更については、`/reload-plugins` を自分で実行します。これらの変更には以下が含まれます:

443/reload-plugins443 

444```444* 別のターミナルで実行した `claude plugin` コマンド

445* 開発中に [`--plugin-dir`](/docs/ja/plugins#test-your-plugins-locally) で読み込んだプラグインへの編集

446* 再度読み込むよう求める通知を表示するプラグイン [自動更新](#configure-auto-updates)

447* Claude Code が保留していた [`--plugin-dir` フォルダ](/docs/ja/plugins#test-your-plugins-locally) の変更。これは、適用するとプロンプトキャッシュが無効になるため

445 448 

446リロードがプロンプトキャッシュを無効にする場合、コマンドは警告を表示し、`--force` を使用して再実行するまでスキップします。449v2.1.268 より前では、メニューで有効化、無効化、またはアンインストールしたプラグイン、およびインストール中にアクティブ化されなかったインストールは、`/reload-plugins` を実行するまで保留のままでした。

447 450 

448`/reload-plugins` はまた、デスクトップアプリ、Agent SDK、および [`-p` を使用した非対話型モード](/docs/ja/headless) など、対話型ターミナルのないセッションでも実行されます。Claude Code v2.1.260 以降が必要です。これらのセッションでは 2 つの制限が適用されます:451`/reload-plugins` はまた、デスクトップアプリ、Agent SDK、および [`-p` を使用した非対話型モード](/docs/ja/headless) など、対話型ターミナルのないセッションでも実行されます。Claude Code v2.1.260 以降が必要です。これらのセッションでは 2 つの制限が適用されます:

449 452 

env-vars.md +437 −301

Details

6 6 

7> Claude Code の動作を制御する環境変数のリファレンス。7> Claude Code の動作を制御する環境変数のリファレンス。

8 8 

9環境変数は、モデル選択、認証、リクエストルーティング、機能トグルなど、Claude Code の動作を制御できます。同じ動作の多くは、[設定ファイル](/docs/ja/settings) フィールド、[CLI フラグ](/docs/ja/cli-reference)、または `/model` などのセッション内コマンドを通じても設定できます。9環境変数は、モデル選択、認証、リクエストルーティング、機能トグルなど、Claude Code の動作を制御できます。同じ動作の多くは、[設定ファイル](/docs/ja/settings)フィールド、[CLI フラグ](/docs/ja/cli-reference)、または `/model` などのセッション内コマンドを通じても設定できます。

10 10 

11このページでは、以下の方法について説明します:11このページでは、以下の内容について説明します。

12 12 

13* シェルまたは設定ファイルで[環境変数を設定](#set-environment-variables)する方法13* [環境変数を設定する](#set-environment-variables)方法(シェルまたは設定ファイル内)

14* 動作を複数の方法で設定できる場合に[どの値が適用されるかを確認](#precedence)する方法14* [複数の方法で動作を設定できる場合](#precedence)、どの値が適用されるかを確認する

15* [Claude Code が読み取る変数を検索](#variables)する方法15* [Claude Code が読み込む変数を検索する](#variables)

16* [変数が機能フラグ取得をオフにする場合](#features-that-need-feature-flag-fetching)、どの機能が動作しなくなるかを確認する

16 17 

17<h2 id="set-environment-variables">18<h2 id="set-environment-variables">

18 環境変数を設定する19 環境変数を設定する

19</h2>20</h2>

20 21 

21シェルで設定した変数はそのターミナルセッション中に有効ですが、設定ファイルの変数は `claude` が実行されるたびに適用されます。22シェルで設定した変数はそのターミナルセッション中のみ有効ですが、設定ファイル内の変数は `claude` を実行するたびに適用されます。

22 23 

23<h3 id="in-your-shell">24<h3 id="in-your-shell">

24 シェルで設定する25 シェルで設定する

25</h3>26</h3>

26 27 

27`claude` を起動する前に変数を設定します:28`claude` を起動する前に変数を設定します。

28 29 

29<Tabs>30<Tabs>

30 <Tab title="macOS, Linux, WSL">31 <Tab title="macOS、Linux、WSL">

31 ```bash theme={null}32 ```bash theme={null}

32 export API_TIMEOUT_MS="1200000"33 export API_TIMEOUT_MS="1200000"

33 claude34 claude


42 claude43 claude

43 ```44 ```

44 45 

45 すべてのセッションで設定するには、`[Environment]::SetEnvironmentVariable("API_TIMEOUT_MS", "1200000", "User")` を実行して、新しいターミナルを開きます。46 すべてのセッションで設定するには、`[Environment]::SetEnvironmentVariable("API_TIMEOUT_MS", "1200000", "User")` を実行して新しいターミナルを開きます。

46 </Tab>47 </Tab>

47 48 

48 <Tab title="Windows CMD">49 <Tab title="Windows CMD">


51 claude52 claude

52 ```53 ```

53 54 

54 すべてのセッションで設定するには、`setx API_TIMEOUT_MS "1200000"` を実行して、新しいターミナルを開きます。55 すべてのセッションで設定するには、`setx API_TIMEOUT_MS "1200000"` を実行して新しいターミナルを開きます。

56 </Tab>

57</Tabs>

58 

59代入行は成功時に何も出力しないため、`claude` を実行する前に同じシェルで変数を出力して確認します。

60 

61<Tabs>

62 <Tab title="macOS、Linux、WSL">

63 ```bash theme={null}

64 echo $API_TIMEOUT_MS

65 ```

66 </Tab>

67 

68 <Tab title="Windows PowerShell">

69 ```powershell theme={null}

70 echo $env:API_TIMEOUT_MS

71 ```

72 </Tab>

73 

74 <Tab title="Windows CMD">

75 ```batch theme={null}

76 echo %API_TIMEOUT_MS%

77 ```

55 </Tab>78 </Tab>

56</Tabs>79</Tabs>

57 80 


59 設定ファイルで設定する82 設定ファイルで設定する

60</h3>83</h3>

61 84 

62`settings.json` ファイルの `env` キーの下に変数を追加します。Claude Code はスタートアップ時にファイルから直接読み込むため、`claude` がどのように起動されたかに関係なく有効になります。85`settings.json` ファイルの `env` キーの下に変数を追加します。ファイルが存在しない場合は作成します。Claude Code はファイルから直接読み込むため、`claude` がどのように起動されたかに関わらず有効になります。実行中のセッションは、ファイルを保存するときに新しい値と変更された値を環境に適用しますが、[OpenTelemetry monitoring](/docs/ja/monitoring-usage) のように起動時に変数を一度だけ読み込む機能は、再起動するまで起動時の値を保持します。ファイルから変数を削除しても、実行中のセッションではその変数は設定解除されません。削除は `claude` を次に起動するときに有効になります。

63 86 

64```json ~/.claude/settings.json theme={null}87```json ~/.claude/settings.json theme={null}

65{88{


70}93}

71```94```

72 95 

73選択したファイルは、変数が適用される対象を制御します:96選択したファイルは、変数が適用される対象を制御します。

74 97 

75| ファイル | 適用対象 |98| ファイル | 適用対象 |

76| :---------------------------- | :---------------------------------------------- |99| :---------------------------- | :------------------------------------------------------------------------------------ |

77| `~/.claude/settings.json` | すべてのプロジェクトで、あなた |100| `~/.claude/settings.json` | すべてのプロジェクトで、あなた |

78| `.claude/settings.json` | プロジェクトで作業しているすべての人。ソース管理にチェックイン |101| `.claude/settings.json` | プロジェクトで作業しているすべての人、ソース管理にチェックイン |

79| `.claude/settings.local.json` | このプロジェクトでのみ、あなた(手動で作成した場合は gitignore に追加してください) |102| `.claude/settings.local.json` | このプロジェクトのみで、あなた。Claude Code が設定を保存するときに gitignore されます。手動で作成した場合は gitignore に追加してください |

80| 管理設定 | 組織内のすべての人。管理者によってデプロイ |103| 管理設定 | 組織内のすべての人、管理者によってデプロイ |

81 104 

82各ファイルの場所については [設定ファイル](/docs/ja/settings#settings-files) を、複数のファイルが同じ変数を設定する場合の組み合わせ方については [設定の優先順位](/docs/ja/settings#settings-precedence) を参照してください。105各ファイルの場所については [Settings files](/docs/ja/settings#where-settings-live) を、複数のファイルが同じ変数を設定する場合の組み合わせ方については [Settings precedence](/docs/ja/settings#settings-precedence) を参照してください。

83 106 

84<h2 id="precedence">107<h2 id="precedence">

85 優先順位108 優先順位

86</h2>109</h2>

87 110 

88同じ動作に環境変数と設定フィールドの両方がある場合、環境変数が優先されます。たとえば、`ANTHROPIC_MODEL` は `model` 設定をオーバーライドし、`CLAUDE_CODE_AUTO_CONNECT_IDE` は `autoConnectIde` をオーバーライドします。環境変数が設定されていない場合、設定フィールドが適用されます。111いくつかの動作には環境変数と専用の設定キーの両方があり、Claude Code がどちらを最初に読むかはキーごとに異なります。`ANTHROPIC_MODEL` と `CLAUDE_CODE_AUTO_CONNECT_IDE` の場合、Claude Code は変数を最初に読み、変数が設定されていない場合にのみ `model` または `autoConnectIde` 設定を使用します。設定しているペアについては、以下の変数の行と [設定リファレンス](/docs/ja/settings-reference) のキーのエントリを確認してください。

112 

113同じ変数がシェルと設定ファイルの `env` ブロックの両方で設定されている場合、設定ファイルの値が適用されます。Claude Code は各 `env` エントリをプロセス環境に書き込み、シェルから継承された値を置き換えます。[`env` 設定](/docs/ja/settings-reference#when-claude-code-applies-env-values) は、それらがいつ適用されるかを示しています。いくつかの変数は特別な扱いを受けます。[`env` 設定](/docs/ja/settings-reference#env) は例外をリストしています。

89 114 

90シェルと設定ファイルの `env` ブロックの両方で同じ変数が設定されている場合、設定ファイルの値が適用されます。Claude Code は起動時に各 `env` エントリをプロセス環境に書き込み、シェルから継承された値を置き換えます。いくつかの変数は特別な扱いを受けます。[`env` 設定](/docs/ja/settings#available-settings) に例外が記載されています。115設定ファイルでは変数を設定できますが、削除することはできません。制御していないシェルプロファイルによってエクスポートされた古い `CLAUDE_CODE_USE_VERTEX` など、設定を解除できない変数をオーバーライドするには、`env` ブロックで空の文字列に設定します。`"CLAUDE_CODE_USE_VERTEX": ""`。Claude Code は空の値をプロバイダー選択の未設定として扱います。サブプロセスは引き続き空の値を継承します。

91 116 

92設定ファイル間では、`env` 値は [設定の優先順位](/docs/ja/settings#settings-precedence) に従うため、マネージド設定エントリはユーザーまたはプロジェクト設定の同じ変数をオーバーライドします。117設定ファイル間では、`env` 値は [設定の優先順位](/docs/ja/settings#settings-precedence) に従うため、マネージド設定エントリはユーザーまたはプロジェクト設定の同じ変数をオーバーライドします。

93 118 

94環境変数が CLI フラグおよびセッション内コマンドとどのように相互作用するかは機能によって異なります:`--model` と `/model` は `ANTHROPIC_MODEL` をオーバーライドしますが、`CLAUDE_CODE_EFFORT_LEVEL` は `/effort` をオーバーライドします。変数が別の設定ソースと相互作用する場合、[変数](#variables) リストの行は優先順位を示すか、それを文書化するページにリンクします。119環境変数が CLI フラグおよびセッション内コマンドとどのように相互作用するかは、機能ごとに異なります。`--model` と `/model` は `ANTHROPIC_MODEL` をオーバーライドしますが、`CLAUDE_CODE_EFFORT_LEVEL` は `--effort` と `/effort` をオーバーライドします。変数が別の設定ソースと相互作用する場合、[変数](#variables) リストの行は優先順位を示すか、それを文書化するページにリンクします。

95 120 

96Claude Code は起動時に環境変数を読み取るため、変更は `claude` を次に起動するときに有効になります。121Claude Code はスタートアップ時にシェル環境変数を読み込むため、それらへの変更は次回 `claude` を起動するときに有効になります。設定ファイルの `env` キーの下に設定された変数は、[設定ファイル内](#in-settings-files) で説明されているスタートアップのみの例外を除き、ファイルが変更されたときに実行中のセッションに再適用されます。

97 122 

98<h2 id="variables">123<h2 id="variables">

99 変数124 変数

100</h2>125</h2>

101 126 

127タイムアウト、トークン予算、再試行回数などの数値変数は、変数の行に「プレーンな数字のみ」と記載されている場合を除き、プレーンな数字に加えて科学記法と数字区切り記法を受け入れます。例えば、Claude Code は `2e3` を 2000 として、`64_000` を 64000 として読み込みます。v2.1.211 より前は、これらの記法により、`1e6` がタイムアウトを 1 に設定するなど、はるかに小さい値が静かに設定される可能性がありました。

128 

129<Note>

130 動作をオン/オフにする変数の場合、`1` または `true` を設定してオンにし、`0` または `false` を設定してオフにします(大文字小文字は問いません)。

131 

132 一部の変数は、設定されているかどうかのみを読み取るため、`0` を含む空でない値はすべて動作をオンにし、変数を設定解除するか空の値に設定することで動作をオフにします。これらの変数は次のように機能します:

133 

134 * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`

135 * `DISABLE_TELEMETRY`

136 * `DISABLE_ERROR_REPORTING`

137 * `CLAUDE_CODE_TMUX_TRUECOLOR`

138 * `FALLBACK_FOR_ALL_PRIMARY_MODELS`

139 * `IS_DEMO`

140 

141 別の変数には独自のルールがあります:`FORCE_HYPERLINK` は数値を読み取るため、`0` のみがオフになります。各変数の行には、独自のルールも記載されています。

142</Note>

143 

102| 変数 | 目的 |144| 変数 | 目的 |

103| :------------------------------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |145| :------------------------------------------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

104| `ANTHROPIC_API_KEY` | `X-Api-Key` ヘッダーとして送信される API キー。設定されている場合、ログインしていても Claude Pro、Max、Team、または Enterprise サブスクリプションの代わりにこのキーが使用されます。非対話モード(`-p`)では、キーが存在する場合は常に使用されます。対話モードでは、キーがサブスクリプションをオーバーライドする前に一度承認するよう求められます。代わりにサブスクリプションを使用するには、`unset ANTHROPIC_API_KEY` を実行してください |146| `ANTHROPIC_API_KEY` | `X-Api-Key` ヘッダーとして送信される API キー。設定されている場合、ログインしていても、このキーが Claude Pro、Max、Team、または Enterprise サブスクリプションの代わりに使用されます。非対話モード(`-p`)では、キーが存在する場合は常に使用されます。対話モードでは、キーがサブスクリプションをオーバーライドする前に、一度承認するよう求められます。代わりにサブスクリプションを使用するには、`unset ANTHROPIC_API_KEY` を実行します |

105| `ANTHROPIC_AUTH_TOKEN` | `Authorization` ヘッダーのカスタム値(ここで設定した値には `Bearer ` が接頭辞として付けられます) |147| `ANTHROPIC_AUTH_TOKEN` | `Authorization` ヘッダーのカスタム値(ここで設定した値には `Bearer ` というプレフィックスが付きます) |

106| `ANTHROPIC_AWS_API_KEY` | [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) のワークスペース API キー。AWS コンソールで生成されます。`x-api-key` として送信され、AWS SigV4 よりも優先されます |148| `ANTHROPIC_AWS_API_KEY` | [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) のワークスペース API キー(AWS コンソールで生成)。`x-api-key` として送信され、AWS SigV4 よりも優先されます |

107| `ANTHROPIC_AWS_BASE_URL` | [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) エンドポイント URL をオーバーライドします。カスタムリージョンを使用する場合、または [LLM ゲートウェイ](/docs/ja/llm-gateway) を通じてルーティングする場合に使用します。デフォルトは `https://aws-external-anthropic.{AWS_REGION}.api.aws` です |149| `ANTHROPIC_AWS_BASE_URL` | [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) エンドポイント URL をオーバーライドします。カスタムリージョンの場合、または [LLM ゲートウェイ](/docs/ja/llm-gateway) を経由してルーティングする場合に使用します。デフォルトは `https://aws-external-anthropic.{region}.api.aws` です。Claude Code は [Amazon Bedrock と同じ優先順位でリージョンを解決します](/docs/ja/amazon-bedrock#3-configure-claude-code) |

108| `ANTHROPIC_AWS_WORKSPACE_ID` | [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) に必須です。すべてのリクエストで `anthropic-workspace-id` ヘッダーとして送信されます |150| `ANTHROPIC_AWS_WORKSPACE_ID` | [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) に必須。すべてのリクエストで `anthropic-workspace-id` ヘッダーとして送信されます |

109| `ANTHROPIC_BASE_URL` | API エンドポイントをオーバーライドして、プロキシまたはゲートウェイを通じてリクエストをルーティングします。ファーストパーティ以外のホストに設定されている場合、[MCP ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search) はデフォルトで無効になります。プロキシが `tool_reference` ブロックを転送する場合は、`ENABLE_TOOL_SEARCH=true` を設定してください。v2.1.196 以降、[Remote Control](/docs/ja/remote-control#requirements) は `api.anthropic.com` 以外のホストを指している場合に無効になります。Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry での動作と一致します |151| `ANTHROPIC_BASE_URL` | API エンドポイントをオーバーライドして、プロキシまたはゲートウェイを経由してリクエストをルーティングします。ファーストパーティ以外のホストに設定されている場合、[MCP ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search) はデフォルトで無効になります。プロキシが `tool_reference` ブロックを転送する場合は、`ENABLE_TOOL_SEARCH=true` を設定します。v2.1.196 以降、[リモートコントロール](/docs/ja/remote-control#requirements) は、これが `api.anthropic.com` 以外のホストを指している場合は無効になり、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry での動作と一致します |

110| `ANTHROPIC_BEDROCK_BASE_URL` | Amazon Bedrock エンドポイント URL をオーバーライドします。カスタム Amazon Bedrock エンドポイントを使用する場合、または [LLM ゲートウェイ](/docs/ja/llm-gateway) を通じてルーティングする場合に使用します。[Amazon Bedrock](/docs/ja/amazon-bedrock) を参照してください |152| `ANTHROPIC_BEDROCK_BASE_URL` | Amazon Bedrock エンドポイント URL をオーバーライドします。カスタム Amazon Bedrock エンドポイントの場合、または [LLM ゲートウェイ](/docs/ja/llm-gateway) を経由してルーティングする場合に使用します。[Amazon Bedrock](/docs/ja/amazon-bedrock) を参照してください |

111| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Amazon Bedrock Mantle エンドポイント URL をオーバーライドします。[Mantle エンドポイント](/docs/ja/amazon-bedrock#use-the-mantle-endpoint) を参照してください |153| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Amazon Bedrock Mantle エンドポイント URL をオーバーライドします。[Mantle エンドポイント](/docs/ja/amazon-bedrock#use-the-mantle-endpoint) を参照してください |

154| `ANTHROPIC_BEDROCK_REGION_PREFIX` | クロスリージョン推論プロファイルプレフィックス(`us`、`eu`、`apac`、`jp`、`au`、または `global`)Claude Code が AWS リージョンから派生したものの代わりに最初に試します。AWS GovCloud リージョンでは無視されます。Claude Code v2.1.224 以降が必要です。[Amazon Bedrock](/docs/ja/amazon-bedrock#cross-region-inference-profile-prefixes) を参照してください |

112| `ANTHROPIC_BEDROCK_SERVICE_TIER` | Amazon Bedrock [サービスティア](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html)(`default`、`flex`、または `priority`)。`X-Amzn-Bedrock-Service-Tier` ヘッダーとして送信されます。[Amazon Bedrock](/docs/ja/amazon-bedrock#service-tiers) を参照してください |155| `ANTHROPIC_BEDROCK_SERVICE_TIER` | Amazon Bedrock [サービスティア](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html)(`default`、`flex`、または `priority`)。`X-Amzn-Bedrock-Service-Tier` ヘッダーとして送信されます。[Amazon Bedrock](/docs/ja/amazon-bedrock#service-tiers) を参照してください |

113| `ANTHROPIC_BETAS` | API リクエストに含める追加の `anthropic-beta` ヘッダー値のカンマ区切りリスト。Claude Code は既に必要なベータヘッダーを送信しています。Claude Code がネイティブサポートを追加する前に、[Anthropic API ベータ](https://platform.claude.com/docs/en/api/beta-headers) にオプトインするために使用します。API キー認証が必須の [`--betas` フラグ](/docs/ja/cli-reference#cli-flags) とは異なり、この変数は Claude.ai サブスクリプションを含むすべての認証方法で機能します |156| `ANTHROPIC_BETAS` | API リクエストに含める追加の `anthropic-beta` ヘッダー値のカンマ区切りリスト。Claude Code は既に必要なベータヘッダーを送信します。Claude Code がネイティブサポートを追加する前に、[Anthropic API ベータ](https://platform.claude.com/docs/en/api/beta-headers) にオプトインするために使用します。[`--betas` フラグ](/docs/ja/cli-reference#cli-flags) とは異なり、API キー認証が必要ですが、この変数は Claude.ai サブスクリプションを含むすべての認証方法で機能します |

114| `ANTHROPIC_CUSTOM_HEADERS` | リクエストに追加するカスタムヘッダー(`Name: Value` 形式、複数のヘッダーの場合は改行で区切られます) |157| `ANTHROPIC_CUSTOM_HEADERS` | リクエストに追加するカスタムヘッダー(`Name: Value` 形式、複数のヘッダーの場合は改行区切り)。名前または値に HTTP ヘッダーが処理できない文字(カーリークォートやゼロ幅スペースなど)が含まれている場合、リクエストは位置で識別されるペアを示すエラーで失敗します。Claude Code v2.1.227 以降が必要です。[無効なリクエストヘッダー値](/docs/ja/errors#invalid-request-header-value) は正確な文字セットとチェックが実行される場所をリストしています。`Authorization` や `Host` などの認証情報、組織またはテナント、ルーティング、または API 動作ヘッダーを設定する値は、サーバー管理設定がそれを配信する場合、[承認が必要な設定](/docs/ja/server-managed-settings#environment-variables-and-the-approval-dialog) としてカウントされます。プロジェクトまたはローカル設定からは、そのような値は [env 値が適用される場合のルール](/docs/ja/settings-reference#when-claude-code-applies-env-values) に従います |

115| `ANTHROPIC_CUSTOM_MODEL_OPTION` | `/model` ピッカーにカスタムエントリとして追加するモデル ID。組み込みエイリアスを置き換えずに、非標準またはゲートウェイ固有のモデルを選択可能にするために使用します。[モデル設定](/docs/ja/model-config#add-a-custom-model-option) を参照してください |158| `ANTHROPIC_CUSTOM_MODEL_OPTION` | `/model` ピッカーにカスタムエントリとして追加するモデル ID。組み込みエイリアスを置き換えることなく、非標準またはゲートウェイ固有のモデルを選択可能にするために使用します。[モデル設定](/docs/ja/model-config#add-a-custom-model-option) を参照してください |

116| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | `/model` ピッカーのカスタムモデルエントリの表示説明。設定されていない場合、デフォルトは `Custom model (<model-id>)` です |159| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | `/model` ピッカーのカスタムモデルエントリの表示説明。設定されていない場合、デフォルトは `Custom model (<model-id>)` です |

117| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | `/model` ピッカーのカスタムモデルエントリの表示名。設定されていない場合、デフォルトはモデル ID です |160| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | `/model` ピッカーのカスタムモデルエントリの表示名。設定されていない場合、Claude Code が [ID を認識する](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) 場合はエントリにモデルの名前が表示され、そうでない場合はモデル ID が表示されます |

118| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |161| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | カスタムモデルがサポートする [機能](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) のカンマ区切りリスト(例:`effort,thinking`)。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

119| `ANTHROPIC_DEFAULT_FABLE_MODEL` | [モデル設定](/docs/ja/model-config#environment-variables) を参照してください |162| `ANTHROPIC_DEFAULT_FABLE_MODEL` | `fable` エイリアスが解決するモデル ID、および Claude Code がサードパーティプロバイダーで [自動モデルフォールバック](/docs/ja/model-config#automatic-model-fallback) 用に Fable モデルとして認識するモデル ID。[モデル設定](/docs/ja/model-config#environment-variables) を参照してください |

120| `ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |163| `ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION` | `/model` ピッカーのピン留めされた Fable モデルの表示説明。設定されていない場合、行は `Custom Fable model` で始まるデフォルト説明を表示します。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

121| `ANTHROPIC_DEFAULT_FABLE_MODEL_NAME` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |164| `ANTHROPIC_DEFAULT_FABLE_MODEL_NAME` | `/model` ピッカーのピン留めされた Fable モデルの表示名。設定されていない場合、Claude Code がピン留めされた ID を認識する場合は行にモデルの名前が表示され、そうでない場合はピン留めされた ID が表示されます。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

122| `ANTHROPIC_DEFAULT_FABLE_MODEL_SUPPORTED_CAPABILITIES` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |165| `ANTHROPIC_DEFAULT_FABLE_MODEL_SUPPORTED_CAPABILITIES` | ピン留めされた Fable モデルがサポートする [機能](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) のカンマ区切りリスト(例:`effort,thinking`)。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

123| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | [モデル設定](/docs/ja/model-config#environment-variables) を参照してください |166| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | `haiku` エイリアスが解決するモデル ID、[バックグラウンド機能](/docs/ja/costs#background-token-usage) にも使用されます。[モデル設定](/docs/ja/model-config#environment-variables) を参照してください |

124| `ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |167| `ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION` | `/model` ピッカーのピン留めされた Haiku モデルの表示説明。設定されていない場合、行は `Custom Haiku model` で始まるデフォルト説明を表示します。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

125| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |168| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | `/model` ピッカーのピン留めされた Haiku モデルの表示名。設定されていない場合、Claude Code がピン留めされた ID を認識する場合は行にモデルの名前が表示され、そうでない場合はピン留めされた ID が表示されます。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

126| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |169| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | ピン留めされた Haiku モデルがサポートする [機能](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) のカンマ区切りリスト(例:`effort,thinking`)。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

127| `ANTHROPIC_DEFAULT_OPUS_MODEL` | [モデル設定](/docs/ja/model-config#environment-variables) を参照してください |170| `ANTHROPIC_DEFAULT_MODEL` | 新しいセッションがデフォルトで開始するモデル。Claude Code v2.1.236 以降が必要です。[新しいセッションのデフォルトモデルを設定](/docs/ja/model-config#set-a-default-model-for-new-sessions) を参照してください |

128| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |171| `ANTHROPIC_DEFAULT_OPUS_MODEL` | `opus` エイリアスが解決するモデル ID、および Plan Mode がアクティブな場合に `opusplan` が使用するモデル ID。[モデル設定](/docs/ja/model-config#environment-variables) を参照してください |

129| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |172| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | `/model` ピッカーのピン留めされた Opus モデルの表示説明。設定されていない場合、行は `Custom Opus model` で始まるデフォルト説明を表示します。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

130| `ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |173| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | `/model` ピッカーのピン留めされた Opus モデルの表示名。設定されていない場合、Claude Code がピン留めされた ID を認識する場合は行にモデルの名前が表示され、そうでない場合はピン留めされた ID が表示されます。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

131| `ANTHROPIC_DEFAULT_SONNET_MODEL` | [モデル設定](/docs/ja/model-config#environment-variables) を参照してください |174| `ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES` | ピン留めされた Opus モデルがサポートする [機能](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) のカンマ区切りリスト(例:`effort,thinking`)。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

132| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |175| `ANTHROPIC_DEFAULT_SONNET_MODEL` | `sonnet` エイリアスが解決するモデル ID、および Plan Mode がアクティブでない場合に `opusplan` が使用するモデル ID。[モデル設定](/docs/ja/model-config#environment-variables) を参照してください |

133| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |176| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | `/model` ピッカーのピン留めされた Sonnet モデルの表示説明。設定されていない場合、行は `Custom Sonnet model` で始まるデフォルト説明を表示します。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

134| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | [モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |177| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | `/model` ピッカーのピン留めされた Sonnet モデルの表示名。設定されていない場合、Claude Code がピン留めされた ID を認識する場合は行にモデルの名前が表示され、そうでない場合はピン留めされた ID が表示されます。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

135| `ANTHROPIC_FOUNDRY_API_KEY` | Microsoft Foundry 認証用の API キー([Microsoft Foundry](/docs/ja/microsoft-foundry) を参照してください) |178| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | ピン留めされた Sonnet モデルがサポートする [機能](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) のカンマ区切りリスト(例:`effort,thinking`)。[モデル設定](/docs/ja/model-config#customize-pinned-model-display-and-capabilities) を参照してください |

136| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | Microsoft Entra アクセストークンなど、Microsoft Foundry 認証用のベアラートークン。Claude Code は `Authorization: Bearer` ヘッダーとして送信します。`ANTHROPIC_FOUNDRY_API_KEY` および Azure デフォルト認証情報チェーンより優先されます。[Microsoft Foundry](/docs/ja/microsoft-foundry) を参照してください。Claude Code v2.1.203 以降が必須です |179| `ANTHROPIC_FEDERATION_RULE_ID` | [ワークロード ID フェデレーション](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) のフェデレーションルール ID。`ANTHROPIC_ORGANIZATION_ID` と一緒に設定すると、Claude Code はフェデレーション認証情報を選択します。これは `/login` 認証情報よりも優先されます。[認証の優先順位](/docs/ja/authentication#authentication-precedence) を参照してください |

137| `ANTHROPIC_FOUNDRY_BASE_URL` | Microsoft Foundry リソースの完全なベース URL(例:`https://my-resource.services.ai.azure.com/anthropic`)。`ANTHROPIC_FOUNDRY_RESOURCE` の代替([Microsoft Foundry](/docs/ja/microsoft-foundry) を参照してください) |180| `ANTHROPIC_FOUNDRY_API_KEY` | Microsoft Foundry 認証用の API キー([Microsoft Foundry](/docs/ja/microsoft-foundry) を参照) |

138| `ANTHROPIC_FOUNDRY_RESOURCE` | Microsoft Foundry リソース名(例:`my-resource`)。`ANTHROPIC_FOUNDRY_BASE_URL` が設定されていない場合は必須([Microsoft Foundry](/docs/ja/microsoft-foundry) を参照してください) |181| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | Microsoft Entra アクセストークンなど、Microsoft Foundry 認証用のベアラートークン。Claude Code は `Authorization: Bearer` ヘッダーとして送信します。`ANTHROPIC_FOUNDRY_API_KEY` および Azure デフォルト認証情報チェーンよりも優先されます。[Microsoft Foundry](/docs/ja/microsoft-foundry) を参照してください。Claude Code v2.1.203 以降が必要です |

139| `ANTHROPIC_MODEL` | 使用するモデル設定の名前([モデル設定](/docs/ja/model-config#environment-variables) を参照してください) |182| `ANTHROPIC_FOUNDRY_BASE_URL` | Microsoft Foundry リソースの完全なベース URL(例:`https://my-resource.services.ai.azure.com/anthropic`)。`ANTHROPIC_FOUNDRY_RESOURCE` の代替([Microsoft Foundry](/docs/ja/microsoft-foundry) を参照) |

140| `ANTHROPIC_SMALL_FAST_MODEL` | \[非推奨] バックグラウンドタスク用の [Haiku クラスモデルの名前](/docs/ja/costs) |183| `ANTHROPIC_FOUNDRY_RESOURCE` | Microsoft Foundry リソース名(例:`my-resource`)。`ANTHROPIC_FOUNDRY_BASE_URL` が設定されていない場合は必須([Microsoft Foundry](/docs/ja/microsoft-foundry) を参照) |

141| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Amazon Bedrock または Amazon Bedrock Mantle を使用する場合、Haiku クラスモデルの AWS リージョンをオーバーライドします。Amazon Bedrock では、`ANTHROPIC_DEFAULT_HAIKU_MODEL` または非推奨の `ANTHROPIC_SMALL_FAST_MODEL` も設定されている場合にのみ有効になります。Amazon Bedrock はそれ以外の場合、バックグラウンドタスク用にデフォルト Sonnet モデルまたはセッションリージョンのプライマリモデルを使用するためです |184| `ANTHROPIC_MODEL` | 使用するモデル設定の名前([モデル設定](/docs/ja/model-config#environment-variables) を参照) |

142| `ANTHROPIC_VERTEX_BASE_URL` | Google Cloud's Agent Platform エンドポイント URL をオーバーライドします。カスタム Google Cloud's Agent Platform エンドポイントを使用する場合、または [LLM ゲートウェイ](/docs/ja/llm-gateway) を通じてルーティングする場合に使用します。[Google Cloud's Agent Platform](/docs/ja/google-vertex-ai) を参照してください |185| `ANTHROPIC_ORGANIZATION_ID` | [ワークロード ID フェデレーション](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) の組織 ID。`ANTHROPIC_FEDERATION_RULE_ID` と一緒に設定します。[認証の優先順位](/docs/ja/authentication#authentication-precedence) を参照してください |

143| `ANTHROPIC_VERTEX_PROJECT_ID` | Google Cloud's Agent Platform リクエスト用の GCP プロジェクト ID。`GCLOUD_PROJECT`、`GOOGLE_CLOUD_PROJECT`、または `GOOGLE_APPLICATION_CREDENTIALS` 認証情報ファイル内のプロジェクトでオーバーライドされます。[Google Cloud's Agent Platform](/docs/ja/google-vertex-ai) を参照してください |186| `ANTHROPIC_PROFILE` | 認証するための Anthropic プロファイルの名前([`ant auth login`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication) で作成されたものなど、または [API キーなしで Console アカウントにサインイン](/docs/ja/authentication#sign-in-without-an-api-key))。[認証の優先順位](/docs/ja/authentication#authentication-precedence) を参照してください |

144| `ANTHROPIC_WORKSPACE_ID` | [ワークロード ID フェデレーション](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) 用のワークスペース ID。フェデレーションルールが複数のワークスペースにスコープされている場合に設定します。トークン交換がターゲットとするワークスペースを認識できるようにします |187| `ANTHROPIC_SMALL_FAST_MODEL` | \[非推奨] [バックグラウンドタスク用の Haiku クラスモデル](/docs/ja/costs) の名前 |

145| `API_FORCE_IDLE_TIMEOUT` | バイトが到着しない場合にストリーミングモデル応答を中止する 5 分のアイドルタイムアウトをオーバーライドします。遅い [ゲートウェイ](/docs/ja/llm-gateway) またはローカルモデルが 5 分以上チャンク間で一時停止する場合は、`0` に設定してタイムアウトを無効にします。`1` に設定してすべてのプロバイダーでタイムアウトを保持します。未設定の場合、タイムアウトは Anthropic API 直接接続と [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) では非アクティブです。Claude Code 独自のバイトレベルストリームウォッチドッグが実行されます。[Google Cloud's Agent Platform](/docs/ja/google-vertex-ai)、[Microsoft Foundry](/docs/ja/microsoft-foundry)、[Mantle](/docs/ja/amazon-bedrock#use-the-mantle-endpoint)、[Amazon Bedrock](/docs/ja/amazon-bedrock)、ゲートウェイ接続を含むすべての他のプロバイダーではアクティブです。停止したストリームはハングする代わりに中止されます。v2.1.169 以降 |188| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Amazon Bedrock または Amazon Bedrock Mantle を使用する場合、Haiku クラスモデルの AWS リージョンをオーバーライドします。Amazon Bedrock では、`ANTHROPIC_DEFAULT_HAIKU_MODEL` または非推奨の `ANTHROPIC_SMALL_FAST_MODEL` も設定されている場合にのみ有効になります。Amazon Bedrock はそれ以外の場合、バックグラウンドタスクをセッションリージョンの [デフォルト Sonnet モデルまたはプライマリモデル](/docs/ja/amazon-bedrock#4-pin-model-versions) で実行するため |

146| `API_TIMEOUT_MS` | API リクエストのタイムアウト(ミリ秒)(デフォルト:600000、または 10 分。最大:2147483647)。遅いネットワークでリクエストがタイムアウトする場合、またはプロキシを通じてルーティングする場合は、この値を増やしてください。最大値を超える値は基盤となるタイマーをオーバーフローさせ、リクエストが直ちに失敗する原因となります |189| `ANTHROPIC_VERTEX_BASE_URL` | Google Cloud の Agent Platform エンドポイント URL をオーバーライドします。カスタム Google Cloud の Agent Platform エンドポイントの場合、または [LLM ゲートウェイ](/docs/ja/llm-gateway) を経由してルーティングする場合に使用します。[Google Cloud の Agent Platform](/docs/ja/google-vertex-ai) を参照してください |

147| `AWS_BEARER_TOKEN_BEDROCK` | 認証用の Amazon Bedrock API キー([Amazon Bedrock API キー](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/) を参照してください) |190| `ANTHROPIC_VERTEX_PROJECT_ID` | Google Cloud の Agent Platform リクエストが対象とする GCP プロジェクト ID。[GCP 認証情報を設定](/docs/ja/google-vertex-ai#3-configure-gcp-credentials) を参照してください |

191| `ANTHROPIC_WORKSPACE_ID` | [ワークロード ID フェデレーション](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) のワークスペース ID。フェデレーションルールが複数のワークスペースにスコープされている場合、トークン交換がどのワークスペースをターゲットにするかを知るために設定します |

192| `API_FORCE_IDLE_TIMEOUT` | バイトが到着しないときにストリーミングモデル応答を中止する 5 分間のボディアイドルタイムアウトをオーバーライドします。`0` に設定してタイムアウトをオフにします(例:遅い [ゲートウェイ](/docs/ja/llm-gateway) またはローカルモデルがチャンク間で 5 分以上一時停止する場合)、または `1` に設定してすべてのプロバイダーでオンに保ちます。設定されていない場合、タイムアウトは直接 Anthropic API および [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) 以外のプロバイダーでアクティブです。[ストリーム監視犬](/docs/ja/network-config#streaming-idle-watchdogs) は独立して実行され、ここで `0` を設定した場合でも長い無音の一時停止を中止します |

193| `API_TIMEOUT_MS` | API リクエストのタイムアウト(ミリ秒単位)(デフォルト:600000、または 10 分;最大:2147483647)。遅いネットワークでリクエストがタイムアウトする場合、またはプロキシを経由してルーティングする場合は増加させます。最大値を超える値は基盤となるタイマーをオーバーフローさせ、リクエストが即座に失敗します |

194| `AWS_BEARER_TOKEN_BEDROCK` | 認証用の Amazon Bedrock API キー([Amazon Bedrock API キー](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/) を参照) |

148| `BASH_DEFAULT_TIMEOUT_MS` | 長時間実行される bash コマンドのデフォルトタイムアウト(デフォルト:120000、または 2 分) |195| `BASH_DEFAULT_TIMEOUT_MS` | 長時間実行される bash コマンドのデフォルトタイムアウト(デフォルト:120000、または 2 分) |

149| `BASH_MAX_OUTPUT_LENGTH` | bash 出力が完全な出力がファイルに保存され、Claude がパスと短いプレビューを受け取る前の最大文字数。[Bash ツール動作](/docs/ja/tools-reference#bash-tool-behavior) を参照してください |196| `BASH_MAX_OUTPUT_LENGTH` | Claude Code がコマンドの結果に読み込む bash 出力の最大文字数(デフォルト:30000;最大:150000)。[`bashOutputMaxChars`](/docs/ja/settings-reference#bashoutputmaxchars) 設定を設定した場合、Claude Code はこの変数を無視します。[出力制限](/docs/ja/tools-reference#output-limits) を参照してください |

150| `BASH_MAX_TIMEOUT_MS` | 長時間実行される bash コマンドに対してモデルが設定できる最大タイムアウト(デフォルト:600000、または 10 分) |197| `BASH_MAX_TIMEOUT_MS` | モデルが長時間実行される bash コマンドに設定できる最大タイムアウト(デフォルト:600000、または 10 分)。有効な上限は、これと `BASH_DEFAULT_TIMEOUT_MS` の大きい方です |

151| `CCR_FORCE_BUNDLE` | GitHub アクセスが利用可能な場合でも、[`claude --cloud`](/docs/ja/claude-code-on-the-web#send-local-repositories-without-github) がローカルリポジトリをバンドルしてアップロードするよう強制するには `1` に設定します |198| `BETA_TRACING_ENDPOINT` | [詳細ベータトレース](/docs/ja/monitoring-usage#traces-beta) 用の OTLP エンドポイント:`ENABLE_BETA_TRACING_DETAILED=1` を使用すると、ログとトレースは設定されたエクスポーターではなくそこに送信されます。シェル、ユーザー設定、または管理設定で設定します。[プロジェクトおよびローカル設定](/docs/ja/settings-reference#variables-claude-code-ignores-in-env) では無視されます |

152| `CLAUDECODE` | Claude Code がスポーンするサブプロセス(Bash と PowerShell ツール、tmux セッション、[フック](/docs/ja/hooks) コマンド、[ステータスライン](/docs/ja/statusline) コマンド、stdio [MCP サーバー](/docs/ja/mcp) サブプロセス)で `1` に設定されます。IDE 拡張機能は統合ターミナルでもこれを設定します。スクリプトが Claude Code によってスポーンされたサブプロセス内で実行されているかどうかを検出するために使用します。現在のプロセスがツール呼び出しまたはフックによって直接スポーンされたか、Claude Code が開始した stdio MCP サーバー内かどうかを確認するには、代わりに `CLAUDE_CODE_CHILD_SESSION` を使用します |199| `CCR_FORCE_BUNDLE` | [`claude --cloud`](/docs/ja/claude-code-on-the-web#send-local-repositories-without-github) がリモートから複製する代わりにローカルリポジトリをバンドルしてアップロードするように強制するには、`1` に設定します |

153| `CLAUDE_AFK_COUNTDOWN_MS` | 自動継続する前に、応答されていない [`AskUserQuestion`](/docs/ja/tools-reference) ダイアログにオンスクリーンカウントダウンが表示されるまでのミリ秒数。デフォルト `20000`(20 秒)。自動継続タイムアウトでキャップされます。自動継続がオンの場合にのみ効果があります。[`askUserQuestionTimeout`](/docs/ja/settings#available-settings) 設定と `CLAUDE_AFK_TIMEOUT_MS` を参照してください。Claude Code v2.1.198 以降が必須です |200| `CLAUDECODE` | Claude Code が生成するサブプロセス(Bash および PowerShell ツール、tmux セッション、[フック](/docs/ja/hooks) コマンド、[ステータスライン](/docs/ja/statusline) コマンド、stdio [MCP サーバー](/docs/ja/mcp) サブプロセス)で `1` に設定します。IDE 拡張機能は統合ターミナルでもこれを設定します。スクリプトが Claude Code によって生成されたサブプロセス内で実行されているかどうかを検出するために使用します。ツール呼び出しまたはフックによって直接生成されたプロセスであるか、Claude Code が開始した stdio MCP サーバー内であるかを確認するには、代わりに `CLAUDE_CODE_CHILD_SESSION` を使用します |

154| `CLAUDE_AFK_TIMEOUT_MS` | 応答されていない [`AskUserQuestion`](/docs/ja/tools-reference) ダイアログが自動継続するまでのアイドル時間(ミリ秒)。自動継続はデフォルトではオフです。[`askUserQuestionTimeout`](/docs/ja/settings#available-settings) 設定でオプトインします。この変数はデモと自動テスト用のオーバーライドです。設定されている場合、その設定より優先され、設定が未設定または `never` の場合でも自動継続をオンにします。`0` に設定してもタイムアウトはオフになりません。ダイアログはすぐに閉じられます。v2.1.198 と v2.1.199 では、自動継続はデフォルトでオンで、`60000`(60 秒)タイムアウトでした。Claude Code v2.1.198 以降が必須です |201| `CLAUDE_AFK_COUNTDOWN_MS` | 自動継続前に、未回答の [`AskUserQuestion`](/docs/ja/tools-reference) ダイアログに画面上のカウントダウンが表示されるまでのミリ秒数。デフォルト `20000`(20 秒)、自動継続タイムアウトでキャップされます。自動継続がオンでない限り効果がありません;[`askUserQuestionTimeout`](/docs/ja/settings-reference#askuserquestiontimeout) 設定と `CLAUDE_AFK_TIMEOUT_MS` を参照してください。Claude Code v2.1.198 以降が必要です |

155| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | すべての組み込み [subagent](/docs/ja/sub-agents) タイプ(Explore や Plan など)を無効にするには `1` に設定します。非対話モード(`-p` フラグ)でのみ適用されます。SDK ユーザーが白紙の状態を望む場合に役立ちます |202| `CLAUDE_AFK_TIMEOUT_MS` | 未回答の [`AskUserQuestion`](/docs/ja/tools-reference) ダイアログが自動継続されるまでのアイドル時間(ミリ秒単位)。自動継続はデフォルトでオフです;[`askUserQuestionTimeout`](/docs/ja/settings-reference#askuserquestiontimeout) 設定でオプトインします。この変数はデモと自動テスト用のオーバーライドです:設定されている場合、その設定よりも優先され、設定が設定されていない場合または `never` の場合でも自動継続をオンにします。`0` を設定してもタイムアウトはオフになりません;ダイアログが即座に閉じます。v2.1.198 および v2.1.199 では、自動継続はデフォルトでオンで、`60000`(60 秒)タイムアウトでした。Claude Code v2.1.198 以降が必要です |

156| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | SDK で作成された MCP サーバーからのツール名の `mcp__<server>__` プレフィックスをスキップするには `1` に設定します。ツールは元の名前を使用します。SDK 使用のみ |203| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | すべての組み込み [サブエージェント](/docs/ja/sub-agents) タイプ(Explore や Plan など)を無効にするには、`1` に設定します。非対話モード(`-p` フラグ)にのみ適用されます。SDK ユーザーが白紙の状態を望む場合に便利です。これにより、`general-purpose` も削除されます。これは、Agent ツール呼び出しが `subagent_type` を省略したときに Claude Code が実行するサブエージェントです。そのような呼び出しは [`subagent_type is required`](/docs/ja/errors#subagent-type-is-required) で失敗します |

157| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | バックグラウンド subagent のスタルタイムアウト(ミリ秒)。デフォルト `600000`(10 分)。タイマーは各ストリーミング進捗イベントでリセットされます。ウィンドウ内に進捗が到着しない場合、subagent は中止され、タスクは失敗とマークされ、部分的な結果が親に表示されます |204| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | SDK で作成された MCP サーバーからのツール名の `mcp__<server>__` プレフィックスをスキップするには、`1` に設定します。ツールは元の名前を使用します。SDK 使用のみ |

158| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | オートコンパクションがトリガーされるオートコンパクションウィンドウのパーセンテージ(1~100)を設定します。低い値(`50` など)を使用してより早くコンパクトします。この変数は、Claude Code がプロアクティブにコンパクトする場合にのみ早期コンパクションを引き起こします:`CLAUDE_CODE_AUTO_COMPACT_WINDOW` が設定されている場合、[クラウドセッション](/docs/ja/claude-code-on-the-web) では、Sonnet 4.6 と Opus 4.6 では [拡張コンテキスト](/docs/ja/model-config#extended-context) なしでは、デフォルトで 200K 境界でコンパクトします。Sonnet 5 では、モデルの [デフォルト閾値](/docs/ja/model-config#sonnet-5-context-window) でコンパクトします。ローカルセッションのデフォルトなど、他の場合では、オートコンパクションは会話がモデルのコンテキスト制限に達したときにトリガーされます。オーバーライドはしきい値を低くすることのみができるため、デフォルトより高い値は効果がありません。メインの会話と subagent の両方に適用されます |205| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | サブエージェントのスタルタイムアウト(ミリ秒単位)。デフォルト `600000`(10 分);`CLAUDE_STREAM_IDLE_TIMEOUT_MS` を上げながらストリーム監視犬がオンの場合、デフォルトはそれに応じて上がります。[遅いまたは停止した API 応答を処理](/docs/ja/agent-sdk/typescript#handle-slow-or-stalled-api-responses) で説明されています。タイマーは各ストリーミング進捗イベントでリセットされます;ウィンドウ内に進捗が到着しない場合、Claude Code はサブエージェントを中止し、親に停止を報告します |

159| `CLAUDE_AUTO_BACKGROUND_TASKS` | 長時間実行されるエージェントタスクの自動バックグラウンド化を強制的に有効にするには `1` に設定します。有効にすると、subagent は約 2 分間実行した後、バックグラウンドに移動されます |206| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | 自動コンパクションがトリガーされる自動コンパクトウィンドウのパーセンテージ(1~100)を設定します。`50` などの低い値を使用して早期にコンパクトします;変数はしきい値を上げることはできないため、デフォルトパーセンテージを超える値は無視されます。[モデルのコンテキスト制限の前にコンパクト](/docs/ja/model-config#context-window-and-auto-compaction) するセッションにのみ適用されます。メイン会話とサブエージェントの両方に適用されます |

160| `CLAUDE_AX_SCREEN_READER` | スクリーンリーダーフレンドリーな出力をレンダリングするには `1` に設定します:装飾的なボーダーやアニメーションなしのフラットテキスト。[`axScreenReader`](/docs/ja/settings#available-settings) が `true` の場合でも、スクリーンリーダーモードを強制的にオフにするには `0` に設定します。[`--ax-screen-reader`](/docs/ja/cli-reference#cli-flags) フラグが優先されます。Claude Code v2.1.181 以降が必須です |207| `CLAUDE_AUTO_BACKGROUND_TASKS` | 長時間実行されるエージェントタスクの自動バックグラウンド化を強制的に有効にするには、`1` に設定します。有効にすると、サブエージェントは約 2 分間実行した後、バックグラウンドに移動されます。また、[長い MCP ツール呼び出しの自動バックグラウンド化](/docs/ja/mcp#automatic-backgrounding-of-long-tool-calls) を非対話モードで Claude Code v2.1.212 以降で有効にします |

161| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | メインセッションの各 Bash または PowerShell コマンドの後に元の作業ディレクトリに戻ります |208| `CLAUDE_AX_PREPARK_MS` | [スクリーンリーダーモード](/docs/ja/accessibility#what-your-screen-reader-hears) では、Claude Code がカーソルを行の開始に置いて、新しいまたは変更された行を書き込む前に待機するミリ秒数。デフォルト `50`。`0` に設定して即座に書き込みます。Claude Code は待機を `5000` でキャップします。Claude Code v2.1.233 以降が必要です |

162| `CLAUDE_CLIENT_PRESENCE_FILE` | スクリーンロックリスナーなどの外部ツールがスクリーンのロック解除時に作成し、ロック時に削除するファイルへのパス。ファイルが存在する間、Claude Code は [Remote Control モバイルプッシュ通知](/docs/ja/remote-control#mobile-push-notifications) をスキップするため、コンピューターを積極的に使用している間はプッシュを受け取らなくなります。ファイルが存在しないか読み取り不可の場合、通知は通常通り送信されます。Claude Code はファイルをポーリングするのではなく、プッシュトリガーイベントごとに 1 回ファイルをチェックします。Claude Code v2.1.181 以降が必須です |209| `CLAUDE_AX_SCREEN_READER` | スクリーンリーダーフレンドリーな出力をレンダリングするには `1` に設定します:装飾的なボーダーやアニメーションなしのフラットテキスト。[`axScreenReader`](/docs/ja/settings-reference#axscreenreader) が `true` の場合でも、スクリーンリーダーモードを強制的にオフにするには `0` に設定します。[`--ax-screen-reader`](/docs/ja/cli-reference#cli-flags) フラグが優先されます。Claude Code v2.1.181 以降が必要です |

163| `CLAUDE_CODE_ACCESSIBILITY` | ネイティブターミナルカーソルを表示したままにし、反転テキストカーソルインジケーターを無効にするには `1` に設定します。macOS Zoom などのスクリーンマグニファイアーがカーソル位置を追跡できるようにします |210| `CLAUDE_AX_STARTUP_QUIET_MS` | [スクリーンリーダーモード](/docs/ja/accessibility) では、スタートアップ確認行の後の最初のインターフェイスレンダリングを Claude Code が保持するミリ秒数。スクリーンリーダーが新しい出力が割り込む前に行全体を話すことができるようにします。デフォルト `3000`。`0` に設定して即座にレンダリングします。Claude Code は保持を `600000`(10 分)でキャップします。最初のキーストロークが保持を早期に終了します。Claude Code v2.1.217 以降が必要です |

164| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | `--add-dir` で指定されたディレクトリからメモリファイルを読み込むには `1` に設定します。`CLAUDE.md`、`.claude/CLAUDE.md`、`.claude/rules/*.md`、および `CLAUDE.local.md` を読み込みます。デフォルトでは、追加ディレクトリはメモリファイルを読み込みません |211| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | メインセッションの各 Bash または PowerShell コマンドの後、元の作業ディレクトリに戻ります |

165| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | [フルスクリーンレンダリング](/docs/ja/fullscreen) で増分更新を送信する代わりに、すべてのフレームで画面全体を再描画するには `1` に設定します。フルスクリーンモードで古いテキストまたは配置が間違ったテキストフラグメントが表示される場合に使用します。Claude Code は Windows のバックグラウンドセッションと [エージェントビュー](/docs/ja/agent-view) でこれを自動的に有効にします |212| `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` | バイトレベルストリーミングアイドル監視犬のタイムアウト(ミリ秒単位);設定されている場合、そのタイムアウトに対して `CLAUDE_STREAM_IDLE_TIMEOUT_MS` よりも優先され、イベントレベルの監視犬は変更されません。Claude Code はこの変数を 10 秒~ 30 分の間にクランプします。Claude Code v2.1.210 以降が必要です |

166| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Claude Code がモデル ID を努力対応として認識しない場合でも、すべてのリクエストで [努力](/docs/ja/model-config#adjust-effort-level) パラメータを送信するには `1` に設定します。[LLM ゲートウェイ](/docs/ja/llm-gateway) またはカスタム識別子の下でモデルを提供するサードパーティプロバイダーを通じてルーティングする場合に使用します。Claude 3 モデル、Sonnet 4.0 と 4.5、Opus 4.0 と 4.1、Haiku 4.5 を含む、API で努力パラメータを拒否するモデルは、リクエストが失敗しないようにまだ除外されています |213| `CLAUDE_CLIENT_PRESENCE_FILE` | スクリーンロックリスナーなどの外部ツールが、スクリーンのロックを解除したときに作成し、ロックしたときに削除するファイルへのパス。ファイルが存在する間、Claude Code は [リモートコントロールモバイルプッシュ通知](/docs/ja/remote-control#mobile-push-notifications) をスキップするため、コンピューターをアクティブに使用している間はプッシュを受け取りません。ファイルが存在しないか読み取り不可の場合、通知は通常どおり送信されます。Claude Code はファイルをポーリングするのではなく、プッシュトリガーイベントごとに 1 回チェックします。Claude Code v2.1.181 以降が必要です |

167| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | 認証情報をリフレッシュする間隔(ミリ秒)([`apiKeyHelper`](/docs/ja/settings#available-settings) を使用する場合) |214| `CLAUDE_CODE_ACCESSIBILITY` | ネイティブターミナルカーソルを表示したままにし、反転テキストカーソルインジケーターを無効にするには、`1` に設定します。macOS Zoom などのスクリーン拡大鏡がカーソル位置を追跡できるようにします |

168| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | 新しい [アーティファクト](/docs/ja/artifacts) が公開されたときに Claude Code がブラウザを自動的に開くのを停止するには `0` に設定します。既存のアーティファクトを再公開してもこの設定に関係なくブラウザは開きません |215| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | `--add-dir` で指定されたディレクトリからメモリファイルを読み込むには、`1` に設定します。`CLAUDE.md`、`.claude/CLAUDE.md`、`.claude/rules/*.md`、および `CLAUDE.local.md` を読み込みます。デフォルトでは、追加ディレクトリはメモリファイルを読み込みません |

169| `CLAUDE_CODE_ATTRIBUTION_HEADER` | システムプロンプトの開始から属性ブロック(クライアントバージョンとプロンプトフィンガープリント)を省略するには `0` に設定します。これを無効にすると、[LLM ゲートウェイ](/docs/ja/llm-gateway) を通じてルーティングする場合のプロンプトキャッシュヒット率が向上します。Anthropic API キャッシングは影響を受けません |216| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | [フルスクリーンレンダリング](/docs/ja/fullscreen) で増分更新を送信する代わりに、すべてのフレームで画面全体を再描画するには、`1` に設定します。フルスクリーンモードが古いまたは配置ずれのテキストフラグメントを表示する場合に使用します。Claude Code はバックグラウンドセッションと Windows の [エージェントビュー](/docs/ja/agent-view) でこれを自動的に有効にします |

170| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | オートコンパクション計算に使用されるコンテキスト容量をトークン単位で設定します。デフォルトはモデルのコンテキストウィンドウです:標準モデルの場合は 200K、[拡張コンテキスト](/docs/ja/model-config#extended-context) モデルの場合は 1M。1M モデルで `500000` などの低い値を使用して、コンパクション目的でウィンドウを 500K として扱います。値はモデルの実際のコンテキストウィンドウでキャップされます。`CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` はこの値のパーセンテージとして適用されます。この変数を設定すると、コンパクション閾値がステータスラインの `used_percentage` から分離されます。これは常にモデルの完全なコンテキストウィンドウを使用します |217| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Claude Code が努力パラメーターを認識しないモデル ID でも、すべてのリクエストで [努力](/docs/ja/model-config#adjust-effort-level) パラメーターを送信するには、`1` に設定します。[LLM ゲートウェイ](/docs/ja/llm-gateway) またはカスタム識別子でモデルを提供するサードパーティプロバイダーを経由してルーティングする場合に使用します。Claude 3 モデル、Sonnet 4.0 および 4.5、Opus 4.0 および 4.1、Haiku 4.5 を含む、API で努力パラメーターを拒否するモデルは、リクエストが失敗しないようにまだ除外されています |

171| `CLAUDE_CODE_AUTO_CONNECT_IDE` | 自動 [IDE 接続](/docs/ja/vs-code) をオーバーライドします。デフォルトでは、Claude Code はサポートされている IDE の統合ターミナル内で起動されると自動的に接続します。これを防ぐには `false` に設定します。tmux が親ターミナルを隠すなど、自動検出が失敗した場合に接続を強制するには `true` に設定します。[`autoConnectIde`](/docs/ja/settings#global-config-settings) グローバル設定より優先されます |218| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | 認証情報をリフレッシュする間隔(ミリ秒単位)([`apiKeyHelper`](/docs/ja/settings-reference#apikeyhelper) を使用する場合) |

172| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | AWS デフォルト認証情報プロバイダーチェーンが認証情報を生成するまで Claude Code が待機する時間(ミリ秒)。リクエストが [`AWS default-chain credential resolve timed out`](/docs/ja/errors#aws-default-chain-credential-resolve-timed-out) で失敗する前(デフォルト:`60000`)。`aws-vault` などのラッパーを通じた MFA を使用したブラウザベースの SSO サインインなど、チェーン内のステップが正当に長い時間を必要とする場合は、これを引き上げます。Claude Code が署名するすべての場所に適用されます:[Amazon Bedrock](/docs/ja/amazon-bedrock#credential-caching-and-resolution-timeout)、[Claude Platform on AWS](/docs/ja/claude-platform-on-aws)、[Mantle エンドポイント](/docs/ja/amazon-bedrock#use-the-mantle-endpoint)。Claude Code v2.1.207 以降が必須です |219| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | 新しい [アーティファクト](/docs/ja/artifacts#create-an-artifact) が公開されたときに Claude Code がブラウザを自動的に開くのを停止するには、`0` に設定します |

173| `CLAUDE_CODE_BRIDGE_SESSION_ID` | セッションがアクティブな [Remote Control](/docs/ja/remote-control) 接続を持っている間、Bash ツールと [フックコマンド](/docs/ja/hooks) サブプロセスで自動的に設定され、接続が終了すると削除されます。値は `session_` 形式のセッション ID で、セッションの `claude.ai/code` URL に表示される同じ識別子です。スクリプトはそれを実行したセッションにリンクバックできます。Claude Code v2.1.199 以降が必須です。[クラウドセッション](/docs/ja/claude-code-on-the-web) では、代わりに `CLAUDE_CODE_REMOTE_SESSION_ID` を読み取ります |220| `CLAUDE_CODE_ARTIFACT_COMMENTS` | [アーティファクトのコメント](/docs/ja/artifacts#collect-comments-on-an-artifact) を読み取り、返信するのを停止するには、`0` に設定します。`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` が [アーティファクトをオフ](/docs/ja/artifacts#availability) にした場合は効果がありません。Claude Code v2.1.221 以降が必要です |

174| `CLAUDE_CODE_CERT_STORE` | TLS 接続用の CA 証明書ソースのカンマ区切りリスト。`bundled` は Claude Code に付属する Mozilla CA セットです。`system` はオペレーティングシステムの信頼ストアです。読み取り専用のランタイムで `tls.getCACertificates` を持つ:ネイティブバイナリ、または npm インストール用の Node 22.15 以降。[CA 証明書ストア](/docs/ja/network-config#ca-certificate-store) を参照してください。デフォルトは `bundled,system` です |221| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | Claude が [送信されたコメントに自動的に返信](/docs/ja/artifacts#let-claude-reply-to-comments-on-its-own) するのを停止するには、`0` に設定します。Claude Code v2.1.228 以降が必要です |

175| `CLAUDE_CODE_CHILD_SESSION` | Claude Code が Bash、PowerShell、Monitor ツール、[フック](/docs/ja/hooks) コマンド、[ステータスライン](/docs/ja/statusline) コマンドを通じてスポーンするサブプロセスで `1` に設定されます。stdio [MCP サーバー](/docs/ja/mcp) サブプロセスでは設定されません。これらは長寿命で、それらをスポーンしたセッションより長く存在します。`CLAUDECODE` とは異なり、これは Claude Code 独自のスポーンパスによってのみ設定され、IDE 拡張機能によっては設定されないため、ネストされたセッションをトップレベルの `claude` から確実に区別します。IDE 統合ターミナルで起動されました。この方法で開始されたネストされた対話的な `claude` TUI は、`--resume`、`--continue`、上矢印履歴、`claude agents` リストから自動的に除外されます。非対話的な `claude -p` セッションは依然として永続化されます。`CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` を設定してこの除外をオーバーライドします。Claude Code v2.1.172 以降が必須です |222| `CLAUDE_CODE_ATTRIBUTION_HEADER` | [属性ブロック](/docs/ja/llm-gateway-protocol#system-prompt-attribution-block)(クライアントバージョンとプロンプトフィンガープリントを含む)をシステムプロンプトの開始から省略するには、`0` に設定します。Anthropic API への直接接続でのキャッシングはどちらの方法でも影響を受けません。一部の直接接続セットアップでは、Claude Code は `0` を設定した場合でも [自動モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) 分類器リクエストでブロックをオンに保ちます。[システムプロンプト属性ブロック](/docs/ja/llm-gateway-protocol#system-prompt-attribution-block) で、これがカバーする接続と認証情報を確認してください。v2.1.181 より前は、ブロックにはカスタムベース URL および Microsoft Foundry 接続でのリクエストごとのトークンが含まれていたため、それらのバージョンでは、LLM ゲートウェイがリクエスト本体でキャッシュするか、リクエストをサードパーティプロバイダーに転送する場合、または Microsoft Foundry に直接接続する場合は、`0` に設定します |

223| `CLAUDE_CODE_AUTO_BACKGROUND_WORKER_CHECKIN_SECONDS` | `CLAUDE_AUTO_BACKGROUND_TASKS` が有効な場合、Claude に [バックグラウンドサブエージェント](/docs/ja/sub-agents#run-subagents-in-foreground-or-background) がまだ実行されているかを確認するよう促すリマインダー間の秒数。`1` ~ `86400` の平文整数のみを受け入れます;その他の値またはスペルは設定されていないものとして読み取られます。設定されていない場合、チェックインリマインダーはありません。Claude Code v2.1.248 以降が必要です |

224| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | [自動コンパクトウィンドウ](/docs/ja/model-config#set-the-auto-compact-window) をトークン単位で設定します(`100000` ~ `1000000`)。`500000` などの平文整数のみを受け入れます:`500k` のような値は `500` として読み取られ、100K 最小値にクランプされます。有効なウィンドウはモデルのコンテキストウィンドウでもキャップされます。`/autocompact` コマンド、`--autocompact` フラグ、および `autoCompactWindow` 設定よりも優先されます。ステータスラインの `used_percentage` は常にモデルの完全なコンテキストウィンドウに対して測定されるため、この変数が設定されると、そのパーセンテージはコンパクションが実行されるタイミングを示さなくなります |

225| `CLAUDE_CODE_AUTO_CONNECT_IDE` | 自動 [IDE 接続](/docs/ja/vs-code) をオーバーライドします。デフォルトでは、Claude Code はサポートされている IDE の統合ターミナル内で起動されたときに自動的に接続します。これを防ぐには `false` に設定します。tmux が親ターミナルを隠すなど、自動検出が失敗した場合に接続を試みるように強制するには `true` に設定します。[`autoConnectIde`](/docs/ja/settings-reference#autoconnectide) グローバル設定よりも優先されます |

226| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | Claude Code が AWS デフォルト認証情報プロバイダーチェーンが認証情報を生成するのを待つ時間(ミリ秒単位)。リクエストが [`AWS default-chain credential resolve timed out`](/docs/ja/errors#aws-default-chain-credential-resolve-timed-out) で失敗します(デフォルト:`60000`)。MFA を使用したブラウザベースの SSO サインインなど、チェーン内のステップが正当に長い時間を必要とする場合は増加させます。Claude Code がデフォルトチェーンで署名する場所に適用されます:[Amazon Bedrock](/docs/ja/amazon-bedrock#credential-caching-and-resolution-timeout)、[Claude Platform on AWS](/docs/ja/claude-platform-on-aws)、および [Mantle エンドポイント](/docs/ja/amazon-bedrock#use-the-mantle-endpoint)。Claude Code v2.1.207 以降が必要です |

227| `CLAUDE_CODE_BRIDGE_SESSION_ID` | セッションがアクティブな [リモートコントロール](/docs/ja/remote-control) 接続を持っている間、Bash ツールおよび [フックコマンド](/docs/ja/hooks) サブプロセスで自動的に設定され、接続が終了したときに削除されます。値は `session_` 形式のセッションの ID で、セッションの `claude.ai/code` URL に表示される同じ識別子です。スクリプトはそれを実行したセッションにリンクバックできます。Claude Code v2.1.199 以降が必要です。[クラウドセッション](/docs/ja/claude-code-on-the-web) では、代わりに `CLAUDE_CODE_REMOTE_SESSION_ID` を読み取ります |

228| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | Claude Code が `0x08` バイト(`^H` とも書かれる)をプレーンバックスペースとして読み取るには `0` に設定するか、Ctrl+Backspace として読み取るには `1` に設定します。どちらの値もプラットフォームのデフォルトを置き換えます。デフォルトでは、Claude Code は Windows で Ctrl+Backspace として読み取ります(`TERM_PROGRAM` が `mintty` または `TERM` が `cygwin` の場合を除く)、macOS および Linux ではプレーンバックスペースとして読み取ります。Windows ターミナルで [Backspace が単語全体を削除](/docs/ja/terminal-config#fix-backspace-deleting-a-whole-word-on-windows) する場合は `0` に設定します |

229| `CLAUDE_CODE_CERT_STORE` | TLS 接続用の CA 証明書ソースのカンマ区切りリスト。`bundled` は Claude Code に付属する Mozilla CA セットです。`system` はオペレーティングシステムの信頼ストアで、`tls.getCACertificates` を持つランタイムでのみ読み取られます:ネイティブバイナリ、または npm インストール用の Node 22.15 以降。[CA 証明書ストア](/docs/ja/network-config#ca-certificate-store) を参照してください。デフォルトは `bundled,system` です |

230| `CLAUDE_CODE_CHILD_SESSION` | Bash、PowerShell、Monitor ツール、[フック](/docs/ja/hooks) コマンド、および [ステータスライン](/docs/ja/statusline) コマンドを経由して Claude Code が生成するサブプロセスで `1` に設定されます。stdio [MCP サーバー](/docs/ja/mcp) サブプロセスでは設定されません。これらは長寿命で、それらを生成したセッションより長く存在します。`CLAUDECODE` とは異なり、これは Claude Code 自体がサブプロセスを起動するときにのみ設定され、IDE 拡張機能では設定されないため、ネストされたセッションを IDE 統合ターミナルで起動されたトップレベルの `claude` から確実に区別します。この方法で開始されたネストされたインタラクティブな `claude` TUI は、`--resume`、`--continue`、上矢印履歴、および `claude agents` リストから自動的に除外されます。非対話的な `claude -p` セッションは依然として永続化されます。`CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` を設定してこの除外をオーバーライドします。Claude Code v2.1.172 以降が必要です |

176| `CLAUDE_CODE_CLIENT_CERT` | mTLS 認証用のクライアント証明書ファイルへのパス |231| `CLAUDE_CODE_CLIENT_CERT` | mTLS 認証用のクライアント証明書ファイルへのパス |

177| `CLAUDE_CODE_CLIENT_KEY` | mTLS 認証用のクライアント秘密鍵ファイルへのパス |232| `CLAUDE_CODE_CLIENT_KEY` | mTLS 認証用のクライアント秘密鍵ファイルへのパス |

178| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | 暗号化された CLAUDE\_CODE\_CLIENT\_KEY のパスフレーズ(オプション) |233| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | 暗号化された CLAUDE\_CODE\_CLIENT\_KEY のパスフレーズ(オプション) |

179| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | v2.1.186 で削除され、現在は no-op です。以前は、ストリーミング API リクエストの接続、TLS、レスポンスヘッダーフェーズの個別タイムアウトを設定していました。リクエストごとのタイムアウトには `API_TIMEOUT_MS` を使用してください |234| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | v2.1.186 で削除され、現在は no-op です。以前は、ストリーミング API リクエストの接続、TLS、応答ヘッダーフェーズの個別タイムアウトを設定していました。リクエストごとのタイムアウトには `API_TIMEOUT_MS` を使用します。ストリーミングリクエストの応答ヘッダーフェーズについては、`CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` を参照してください |

180| `CLAUDE_CODE_DEBUG_LOGS_DIR` | デバッグログファイルパスをオーバーライドします。名前に反して、これはディレクトリではなくファイルパスです。デバッグモードを `--debug`、`/debug`、または `DEBUG` 環境変数で別途有効にする必要があります。この変数を設定するだけではログが有効になりません。[`--debug-file`](/docs/ja/cli-reference#cli-flags) フラグは両方を一度に行います。デフォルトは `~/.claude/debug/<session-id>.txt` です |235| `CLAUDE_CODE_DEBUG_LOGS_DIR` | デバッグログファイルパスをオーバーライドします。名前に関わらず、これはディレクトリではなくファイルパスです。デバッグモードは `--debug`、`/debug`、または `DEBUG` 環境変数を経由して別途有効にする必要があります:この変数を設定するだけではロギングは有効になりません。[`--debug-file`](/docs/ja/cli-reference#cli-flags) フラグは両方を一度に実行します。デフォルトは `~/.claude/debug/<session-id>.txt` です |

181| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | デバッグログファイルに書き込まれる最小ログレベル。値:`verbose`、`debug`(デフォルト)、`info`、`warn`、`error`。フルステータスラインコマンド出力などの大量の診断を含めるには `verbose` に設定するか、ノイズを減らすには `error` に上げます |236| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | デバッグログファイルに書き込まれる最小ログレベル。値:`verbose`、`debug`(デフォルト)、`info`、`warn`、`error`。フルステータスラインコマンド出力などの大量の診断を含めるには `verbose` に設定するか、ノイズを減らすには `error` に上げます |

182| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | [1M コンテキストウィンドウ](/docs/ja/model-config#extended-context) サポートを無効にするには `1` に設定します。設定すると、1M モデルバリアントはモデルピッカーで利用できなくなります。[Sonnet 5](/docs/ja/model-config#sonnet-5-context-window) セッションは 200K ウィンドウとして扱われます。コンプライアンス要件のあるエンタープライズ環境に役立ちます |237| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | [1M コンテキストウィンドウ](/docs/ja/model-config#extended-context) サポートを無効にするには、`1` に設定します。設定されている場合、1M モデルバリアントはモデルピッカーで利用できず、Claude Code は [Sonnet 5](/docs/ja/model-config#sonnet-5-context-window) や Fable モデルなど、ネイティブ 1M ウィンドウを持つモデルのセッションを 200K ウィンドウに保持します;[拡張コンテキスト](/docs/ja/model-config#extended-context) でホールドがどのように実装されるかを参照してください。コンプライアンス要件を持つエンタープライズ環境に便利です。認識されない `[1m]` モデル ID のウィンドウを修正する際の役割については、[ゲートウェイまたはカスタムモデル ID のウィンドウを修正](/docs/ja/model-config#correct-the-window-for-a-gateway-or-custom-model-id) を参照してください |

183| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Opus 4.6 と Sonnet 4.6 の [適応的推論](/docs/ja/model-config#adjust-effort-level) を無効にするには `1` に設定します。`MAX_THINKING_TOKENS` で制御される固定思考予算にフォールバックします。v2.1.111 以降、Fable 5、Sonnet 5、Opus 4.7 以降には効果がなく、常に適応的推論を使用します |238| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Opus 4.6 および Sonnet 4.6 で [適応的推論](/docs/ja/model-config#adjust-effort-level) を無効にし、`MAX_THINKING_TOKENS` で制御される固定思考予算にフォールバックするには、`1` に設定します。[Fable モデル](/docs/ja/model-config#extended-thinking)、Sonnet 5、または Opus 4.7 以降には効果がありません。これらは常に適応的推論を使用します |

184| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | [アドバイザーツール](/docs/ja/advisor) を無効にするには `1` に設定します。`/advisor` コマンドが利用できなくなり、設定された `advisorModel` は無視されます。`--advisor` フラグは受け入れられますが効果がないため、既存のスクリプトはエラーなしで続行されます |239| `CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION` | Claude Code が [管理設定](/docs/ja/managed-settings#precedence-within-the-managed-tier) `env` ブロックをキーごとに管理者ソース全体でマージするのを停止するには、`1` に設定します。v2.1.223 より前のように、最高優先度のソースの全体 `env` ブロックのみが適用されます。Claude Code を起動する環境で設定します。Claude Code は設定 `env` ブロックを経由して配信されたコピーを無視するため |

185| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | [バックグラウンドエージェントとエージェントビュー](/docs/ja/agent-view) をオフにするには `1` に設定します:`claude agents`、`--bg`、`/background`、およびオンデマンドスーパーバイザー。[`disableAgentView`](/docs/ja/settings#available-settings) 設定と同等です |240| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | [アドバイザーツール](/docs/ja/advisor) を無効にするには、`1` に設定します。`/advisor` コマンドは利用できなくなり、設定された `advisorModel` は無視され、`--advisor` フラグは受け入れられますが効果がないため、既存のスクリプトがそれを渡し続けてもエラーなく機能します |

186| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | [フルスクリーンレンダリング](/docs/ja/fullscreen) を無効にするには `1` に設定します。クラシックなメインスクリーンレンダラーを使用します。会話はターミナルのネイティブなスクロールバックに留まるため、`Cmd+f` と tmux コピーモードが通常通り機能します。`CLAUDE_CODE_NO_FLICKER` と [`tui`](/docs/ja/settings#available-settings) 設定より優先されます。`/tui default` で切り替えることもできます。バックグラウンドセッションから開かれた [エージェントビュー](/docs/ja/agent-view) には適用されません。これらは常にフルスクリーンレンダリングを使用します |241| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | [バックグラウンドエージェントとエージェントビュー](/docs/ja/agent-view) をオフにするには、`1` に設定します:`claude agents`、`--bg`、`/background`、およびオンデマンドスーパーバイザー。[`disableAgentView`](/docs/ja/settings-reference#disableagentview) 設定と同等です |

187| `CLAUDE_CODE_DISABLE_ARTIFACT` | [アーティファクト](/docs/ja/artifacts) ツールを無効にするには `1` に設定します。これはセッション出力を claude.ai 上のプライベート Web ページとして公開します。[`disableArtifact`](/docs/ja/settings#available-settings) 設定と同等です |242| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | [フルスクリーンレンダリング](/docs/ja/fullscreen) を無効にし、クラシックメインスクリーンレンダラーを使用するには、`1` に設定します。会話はターミナルのネイティブスクロールバックに留まるため、`Cmd+f` と tmux コピーモードが通常どおり機能します。`CLAUDE_CODE_NO_FLICKER` および [`tui`](/docs/ja/settings-reference#tui) 設定よりも優先されます。`/tui default` で切り替えることもできます。[エージェントビュー](/docs/ja/agent-view) からオープンされたバックグラウンドセッションには適用されません。これらは常にフルスクリーンレンダリングを使用します |

188| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | 添付ファイル処理を無効にするには `1` に設定します。`@` 構文を使用したファイルメンションはファイルコンテンツに展開される代わりにプレーンテキストとして送信されます |243| `CLAUDE_CODE_DISABLE_ARTIFACT` | [アーティファクト](/docs/ja/artifacts) ツール(セッション出力を claude.ai のプライベートウェブページとして公開)をオフにするには、`1` に設定します。設定されると、設定ファイルはツールをオンに戻しません。代わりに設定ファイルからツールをオフにするには、[`enableArtifact`](/docs/ja/settings-reference#enableartifact) を `false` に設定します;非推奨の [`disableArtifact`](/docs/ja/settings-reference#disableartifact) キーもツールをオフにします |

189| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | [自動メモリ](/docs/ja/memory#auto-memory) を無効にするには `1` に設定します。`--bare` モードまたは [`autoMemoryEnabled: false`](/docs/ja/settings#available-settings) が自動メモリを無効にする場合でも、自動メモリを強制的にオンにするには `0` に設定します。無効にすると、Claude は自動メモリファイルを作成または読み込みません |244| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | 添付ファイル処理を無効にするには、`1` に設定します。`@` 構文を使用したファイルメンションはファイルコンテンツに展開されるのではなく、プレーンテキストとして送信されます |

190| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Bash と subagent ツールの `run_in_background` パラメータ、自動バックグラウンド化、Ctrl+B ショートカットを含む、すべてのバックグラウンドタスク機能を無効にするには `1` に設定します |245| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | [自動メモリ](/docs/ja/memory#auto-memory) を無効にするには、`1` に設定します。`--bare` モードまたは [`autoMemoryEnabled: false`](/docs/ja/settings-reference#automemoryenabled) が自動メモリを無効にする場合でも、自動メモリを強制的にオンにするには `0` に設定します。無効にされると、Claude は自動メモリファイルを作成または読み込みません |

191| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | [Amazon Bedrock](/docs/ja/amazon-bedrock) ストリーミングレスポンスが `application/vnd.amazon.eventstream` コンテンツタイプを持つかどうかのチェックをスキップするには `1` に設定します。この変数がない場合、異なるコンテンツタイプのレスポンスはそのコンテンツタイプを名前付けするエラーで失敗します。これは [ゲートウェイまたはプロキシがレスポンスを変換している](/docs/ja/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy) ことを意味します。ゲートウェイが `Content-Type` ヘッダーを書き直すが、バイナリイベントストリームボディを変更なしで通す場合にのみ設定します。ボディ自体が変換された場合、リクエストは代わりに `Truncated event message received` で失敗します。Claude Code v2.1.208 以降が必須です |246| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | `run_in_background` パラメーター、自動バックグラウンド化、Ctrl+B ショートカットを含む、すべてのバックグラウンドタスク機能を無効にするには、`1` に設定します |

192| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | [バックグラウンドセッション](/docs/ja/agent-view) の実行中のバックグラウンドシェルコマンド、動的ワークフロー、v2.1.198 以降、バックグラウンド subagent を停止するには `1` に設定します。[スーパーバイザー](/docs/ja/agent-view#the-supervisor-process) が停止、再起動、またはそのセッションのプロセスを更新する場合、それらをセッションの次のプロセスに引き継ぐ代わりに。このハンドオフのみに影響します:`←` または [`/background`](/docs/ja/agent-view#from-inside-a-session) でセッションをバックグラウンド化すると、進行中の作業が引き継がれます。`CLAUDE_DISABLE_ADOPT` は両方をオフにします。Claude Code v2.1.196 以降が必須です |247| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Claude Code が [Amazon Bedrock](/docs/ja/amazon-bedrock) ストリーミング応答を、欠落または空の `Content-Type` ヘッダーを持つ Amazon Bedrock のバイナリイベントストリームとして扱うのを停止するには、`1` に設定します。デフォルトでは、Claude Code はゲートウェイがそれ以外は変更されていない応答からヘッダーをドロップしたと想定するため、本体をデコードしてストリーミングが機能し続けます。ストリームをサーバー送信イベントとして再発行するゲートウェイの場合にのみこれを設定します;Claude Code はヘッダーレスの本体をサーバー送信イベントとして読み取ります。Claude Code v2.1.239 以降が必要です |

193| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | オペレーティングシステムがメモリ圧力を報告する場合、Claude Code が [バックグラウンドシェルコマンド](/docs/ja/interactive-mode#background-bash-commands) を終了するのを停止するには `1` に設定します。デフォルトでは、macOS と Linux では、Claude Code はメモリ圧力信号でメインセッションで開始されたバックグラウンドシェルを終了します。セッションが 30 分間アイドル状態で、ターンまたは subagent が実行されていない場合。Windows にはメモリ圧力信号がないため、この変数は効果がありません。Claude Code v2.1.193 以降が必須です |248| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | [Amazon Bedrock](/docs/ja/amazon-bedrock) ストリーミング応答が `application/vnd.amazon.eventstream` コンテンツタイプを持つかどうかのチェックをスキップするには、`1` に設定します。この変数がない場合、応答が異なるコンテンツタイプを持つと、Claude Code はそのタイプを名前で示すエラーでリクエストを失敗させます。これは [ゲートウェイまたはプロキシが応答を変換している](/docs/ja/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy) ことを意味します。この変数を設定する代わりに、`Content-Type` ヘッダーと本体を変更されていない状態で転送するようにゲートウェイを設定します。Claude Code v2.1.208 以降が必要です |

194| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Claude Code に付属する [スキル](/docs/ja/skills) とワークフローを無効にするには `1` に設定します:バンドルされたスキルとワークフローは完全に削除されます。`/init` などの組み込みスラッシュコマンドは入力可能なままですが、モデルから非表示になります。プラグイン、`.claude/skills/`、`.claude/commands/` からのスキルは影響を受けません。[`disableBundledSkills`](/docs/ja/settings#available-settings) 設定と同等です。`0` はそれをオーバーライドしません |249| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | [バックグラウンドセッション](/docs/ja/agent-view) の実行中のバックグラウンドシェルコマンド、動的ワークフロー、および v2.1.198 以降のバックグラウンドサブエージェントが [スーパーバイザー](/docs/ja/agent-view#the-supervisor-process) がそのセッションのプロセスを停止、再起動、または更新するときに停止するのを停止するには、`1` に設定します。次のプロセスに引き継ぐ代わりに。このハンドオフのみに影響します:`←` または [`/background`](/docs/ja/agent-view#from-inside-a-session) でセッションをバックグラウンド化すると、進行中の作業が引き継がれます。`CLAUDE_DISABLE_ADOPT` は両方をオフにします。Claude Code v2.1.196 以降が必要です |

195| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | ユーザー、プロジェクト、自動メモリファイルを含む、任意の CLAUDE.md メモリファイルをコンテキストに読み込むことを防ぐには `1` に設定します |250| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | オペレーティングシステムがメモリ圧力を報告するときに Claude Code が [バックグラウンドシェルコマンド](/docs/ja/interactive-mode#background-bash-commands) を終了するのを停止するには、`1` に設定します。デフォルトでは、macOS および Linux では、Claude Code はセッションがアイドル状態で 30 分間、ターンまたはサブエージェントが実行されていない場合、メインセッションで開始されたバックグラウンドシェルをメモリ圧力信号で終了します。Windows にはメモリ圧力信号がないため、この変数は効果がありません。Claude Code v2.1.193 以降が必要です |

196| `CLAUDE_CODE_DISABLE_CRON` | [スケジュール済みタスク](/docs/ja/scheduled-tasks) を無効にするには `1` に設定します。`/loop` スキルと cron ツールが利用できなくなり、既にスケジュール済みのタスクはすべて実行を停止します。これには既にセッション中に実行中のタスクも含まれます |251| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Claude Code に含まれる [スキル](/docs/ja/skills) とワークフローを無効にするには、`1` に設定します:バンドルされたスキルとワークフローは完全に削除されます。`/init` などの組み込みコマンドは入力可能なままですが、モデルから非表示になります。`/doctor` は組み込みコマンドのように入力可能なままです;`DISABLE_DOCTOR_COMMAND` で非表示にします。プラグイン、`.claude/skills/`、および `.claude/commands/` からのスキルは影響を受けません。[`disableBundledSkills`](/docs/ja/settings-reference#disablebundledskills) 設定と同等です |

197| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Anthropic 固有の `anthropic-beta` リクエストヘッダーと beta ツールスキーマフィールド(`defer_loading` や `eager_input_streaming` など)を API リクエストから削除するには `1` に設定します。プロキシゲートウェイが「`anthropic-beta` ヘッダーの予期しない値」や「追加の入力は許可されていません」などのエラーでリクエストを拒否する場合に使用します。標準フィールド(`name`、`description`、`input_schema`、`cache_control`)は保持されます。[MCP ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search) は無効になり、すべての MCP ツールは `ENABLE_TOOL_SEARCH` が設定されている場合でも事前に読み込まれます |252| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | [Claude in Chrome](/docs/ja/chrome) ブラウザツールを利用可能に保ちながら、システムプロンプトの Chrome セクションと `/claude-in-chrome` [バンドルスキル](/docs/ja/skills#bundled-skills) を省略するには、`1` に設定します。Claude Code を埋め込み、独自のブラウザガイダンスを提供するホスト用。Claude Code v2.1.257 以降が必要です |

198| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | 組み込み [Explore と Plan subagent](/docs/ja/sub-agents#built-in-subagents) を無効にするには `1` に設定します。Claude は検索ツールまたは一般的な subagent で探索し、[プランモード](/docs/ja/permission-modes#analyze-before-you-edit-with-plan-mode) はファイルを直接読み取ります。Explore と Plan エージェントを起動する代わりに。`Explore` または `Plan` という名前のカスタム subagent は影響を受けません。Agent SDK または非対話モードのすべての組み込み subagent タイプを削除するには、代わりに `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` を使用します。Claude Code v2.1.198 以降が必須です |253| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | ユーザー、プロジェクト、自動メモリファイルを含む、CLAUDE.md メモリファイルをコンテキストに読み込むのを防ぐには、`1` に設定します |

199| `CLAUDE_CODE_DISABLE_FAST_MODE` | [高速モード](/docs/ja/fast-mode) を無効にするには `1` に設定します |254| `CLAUDE_CODE_DISABLE_CRON` | [スケジュール済みタスク](/docs/ja/scheduled-tasks) を無効にするには、`1` に設定します。`/loop` スキルと cron ツールは利用できなくなり、既にスケジュール済みのタスクは停止します。セッション中に既に実行されているタスクを含みます |

200| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | 「Claude の調子はどうですか?」セッション品質調査を無効にするには `1` に設定します。`DISABLE_TELEMETRY`、`DO_NOT_TRACK`、または `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` が設定されている場合も調査は無効になります。`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` でオプトバックインしない限り。サンプルレートを設定する代わりに、[`feedbackSurveyRate`](/docs/ja/settings#available-settings) 設定を使用します。[セッション品質調査](/docs/ja/data-usage#session-quality-surveys) を参照してください |255| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Anthropic 固有の `anthropic-beta` リクエストヘッダーと `defer_loading` および `eager_input_streaming` などのベータツールスキーマフィールドを API リクエストから削除するには、`1` に設定します。プロキシゲートウェイが「`anthropic-beta` ヘッダーの予期しない値」または「追加の入力は許可されていません」などのエラーでリクエストを拒否する場合に使用します。標準フィールド(`name`、`description`、`input_schema`、`cache_control`)は保持されます。[MCP ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search) は無効になり、すべての MCP ツールは先読みで読み込まれます。`ENABLE_TOOL_SEARCH` を設定した場合でも。Claude Code v2.1.227 以降では、[管理設定](/docs/ja/managed-settings) はツール検索をオンに保つことができます。[プリリリース機能を無効にする](/docs/ja/llm-gateway-protocol#disable-pre-release-capabilities) でオーバーライドが適用される場所をカバーしています |

201| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | ファイル [チェックポイント](/docs/ja/checkpointing) を無効にするには `1` に設定します。`/rewind` コマンドはコード変更を復元できなくなります |256| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | 組み込み [Explore および Plan サブエージェント](/docs/ja/sub-agents#built-in-subagents) を無効にするには、`1` に設定します。Claude は検索ツールまたは汎用サブエージェントで探索し、[プランモード](/docs/ja/permission-modes#analyze-before-you-edit-with-plan-mode) はファイルを直接読み取ります。Explore または Plan という名前のカスタムサブエージェントは影響を受けません。Agent SDK または非対話モードですべての組み込みサブエージェントタイプを削除するには、`CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` を使用します。Claude Code v2.1.198 以降が必要です |

202| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Claude のシステムプロンプトから組み込みのコミットと PR ワークフロー命令と git ステータススナップショットを削除するには `1` に設定します。独自の git ワークフロースキルを使用する場合に役立ちます。設定されている場合、[`includeGitInstructions`](/docs/ja/settings#available-settings) 設定よりも優先されます |257| `CLAUDE_CODE_DISABLE_FAST_MODE` | [高速モード](/docs/ja/fast-mode) を無効にするには、`1` に設定します |

203| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Anthropic API で Opus 4.0 と 4.1 を現在の Opus バージョンに自動的にリマップすることを防ぐには `1` に設定します。古いモデルを意図的にピンしたい場合に使用します。リマップは Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry では実行されません |258| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | 「Claude はどのように機能していますか?」セッション品質調査を無効にするには、`1` に設定します。`DISABLE_TELEMETRY`、`DO_NOT_TRACK`、または `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` が設定されている場合、調査も無効になります。ただし、`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` がオプトバックインしない限り。サンプルレートを設定する代わりに完全に無効にするには、[`feedbackSurveyRate`](/docs/ja/settings-reference#feedbacksurveyrate) 設定を使用します。[セッション品質調査](/docs/ja/data-usage#session-quality-surveys) を参照してください |

204| `CLAUDE_CODE_DISABLE_MOUSE` | [フルスクリーンレンダリング](/docs/ja/fullscreen) でマウストラッキングを無効にするには `1` に設定します。`PgUp` と `PgDn` でのキーボードスクロールは引き続き機能します。ターミナルのネイティブなコピーオンセレクト動作を保持するために使用します |259| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | ファイル [チェックポイント](/docs/ja/checkpointing) を無効にするには、`1` に設定します。`/rewind` コマンドはコード変更を復元できません。[`fileCheckpointingEnabled`](/docs/ja/settings-reference#filecheckpointingenabled) 設定をオーバーライドします |

205| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | [フルスクリーンレンダリング](/docs/ja/fullscreen) でクリック、ドラッグ、ホバー処理を無効にするには `1` に設定します。マウスホイールスクロールは保持します。Claude Code 内でホイールスクロールを機能させたいが、クリックがカーソルを配置したり、ツール出力を展開したり、リンクを開いたりしたくない場合に使用します。`CLAUDE_CODE_DISABLE_MOUSE` が両方設定されている場合は優先されます。Claude Code v2.1.195 以降が必須です |260| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Claude のシステムプロンプトから組み込みコミットおよび PR ワークフロー指示と git ステータススナップショットを削除するには、`1` に設定します。独自の git ワークフロースキルを使用する場合に便利です。[`includeGitInstructions`](/docs/ja/settings-reference#includegitinstructions) 設定が設定されている場合よりも優先されます |

206| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | `DISABLE_AUTOUPDATER`、`DISABLE_FEEDBACK_COMMAND`、`DISABLE_ERROR_REPORTING`、`DISABLE_TELEMETRY` を設定するのと同等です |261| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Anthropic API で Opus 4.0 および 4.1 を現在の Opus バージョンに自動的にリマップするのを防ぐには、`1` に設定します。古いモデルを意図的にピン留めしたい場合に使用します。リマップは Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry では実行されません |

207| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | ストリーミングリクエストがストリーム中に失敗した場合の非ストリーミングフォールバックを無効にするには `1` に設定します。ストリーミングエラーは再試行レイヤーに伝播します。プロキシまたはゲートウェイがフォールバックで重複したツール実行を生成する場合に役立ちます |262| `CLAUDE_CODE_DISABLE_MOUSE` | [フルスクリーンレンダリング](/docs/ja/fullscreen) でマウストラッキングを無効にするには、`1` に設定します。`PgUp` および `PgDn` を使用したキーボードスクロールは引き続き機能します。ターミナルのネイティブ選択時コピー動作を保持するために使用します |

208| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | ターミナルで入力中またはフォーカスされている場合でも、`PushNotification` ツールのデスクトップ通知を送信するには `1` に設定します。デフォルトでは、ツールは最近のキーボード活動またはターミナルフォーカスを検出すると、デスクトップ通知と [モバイルプッシュ](/docs/ja/remote-control#mobile-push-notifications) の両方をスキップします。この変数はそのローカルチェックのみを無効にするため、サーバーはアクティブであることを検出したときにモバイルプッシュを抑制できます。Claude Code v2.1.193 以降が必須です |263| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | [フルスクリーンレンダリング](/docs/ja/fullscreen) でクリック、ドラッグ、ホバー処理を無効にしながら、マウスホイールスクロールを保持するには、`1` に設定します。Claude Code 内でホイールスクロールが機能するが、クリックがカーソルを配置したり、ツール出力を展開したり、リンクを開いたりしないようにする場合に使用します。両方が設定されている場合、`CLAUDE_CODE_DISABLE_MOUSE` が優先されます。Claude Code v2.1.195 以降が必要です |

209| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | 初回実行時に公式プラグインマーケットプレイスの自動追加をスキップするには `1` に設定します |264| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | 接続リセットまたは TLS ハンドシェイクエラーなどの接続レベルエラーで API リクエストが失敗したときに Claude Code が [mTLS クライアント証明書とキー](/docs/ja/network-config#mtls-authentication) を再読み込みするのを停止するには、`1` に設定します。リロードが無効な場合、Claude Code は設定を次に適用するか、次の起動時にローテーションされたファイルを読み込みます。Claude Code v2.1.232 以降が必要です |

210| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | システム全体で管理されているスキルディレクトリからスキルを読み込むことをスキップするには `1` に設定します。コンテナまたは CI セッションがオペレーターがプロビジョニングしたスキルを読み込むべきでない場合に役立ちます |265| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | 非必須ネットワークトラフィック(自動更新、テレメトリ、エラー報告、`/feedback` コマンド、[Claude が作成したフィードバック](/docs/ja/tools-reference#sendfeedback-tool-behavior)、リリースノート、[PR および MR ステータスバッジ](/docs/ja/interactive-mode#pr-review-status) チェック、[高速モード](/docs/ja/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) チェックなどの可用性チェック)を無効にするには、`1` などの空でない値に設定します。また、[プラグイン `command` ソースのバックグラウンド実行](/docs/ja/plugin-marketplaces#when-claude-code-re-runs-the-command) を停止します。これらはネットワークトラフィックではなくローカルコマンドですが、依存関係のインストールをトリガーできます。**`0` または `false` に設定してもこのトラフィックは無効になります**。ほとんどのオン/オフ変数とは異なり;変数を設定解除してもう一度許可します。また、機能フラグ取得を無効にします。これにより、[リモートコントロール](/docs/ja/remote-control#requirements) および他の [機能フラグ取得が必要な機能](#features-that-need-feature-flag-fetching) が利用できなくなります。公式プラグインマーケットプレイスの自動インストールはカバーされていません;`CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` で無効にします。[ゲートウェイモデル検出](/docs/ja/llm-gateway-connect#add-gateway-models-to-the-model-picker) には影響しません。これには独自のオプトインがあります |

211| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | 会話コンテキストに基づいて自動的にターミナルタイトルを更新することを無効にするには `1` に設定します。Agent SDK と `claude -p` セッションでは、これはセッションタイトルを生成するバックグラウンド Haiku リクエストもスキップします |266| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | ストリーミングリクエストがストリーム中に失敗したときの非ストリーミングフォールバックを無効にするには、`1` に設定します。ストリーミングエラーは再試行レイヤーに伝播します。プロキシまたはゲートウェイがフォールバックで重複したツール実行を生成する場合に便利です |

212| `CLAUDE_CODE_DISABLE_THINKING` | API リクエストから `thinking` パラメータを完全に省略するには `1` に設定します。これはプロキシとゲートウェイがパラメータを拒否する場合の互換性オプションです。変数の動作は以前のバージョンから変わっていません。デフォルトで思考するモデルでは、パラメータを省略するとモデルは依然として思考する可能性があります。Anthropic API で [拡張思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) を明示的に無効にするには、代わりに `MAX_THINKING_TOKENS=0` を使用してください。これは Fable 5 では効果がありません。思考をオフにすることはできません。[サードパーティプロバイダー](/docs/ja/third-party-integrations) では、`0` 同様にパラメータを省略するため、2 つの変数はそこで同じ動作をします |267| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | ターミナルで入力または焦点を当てている間でも `PushNotification` ツールのデスクトップ通知を送信するには、`1` に設定します。デフォルトでは、ツールは最近のキーボード活動またはターミナルフォーカスを検出したときに、デスクトップ通知と [モバイルプッシュ](/docs/ja/remote-control#mobile-push-notifications) の両方をスキップします。この変数はそのローカルチェックのみを無効にするため、サーバーはアクティブであることを検出したときにモバイルプッシュを抑制できます。Claude Code v2.1.193 以降が必要です |

213| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | [フルスクリーンレンダリング](/docs/ja/fullscreen) で仮想スクロールを無効にするには `1` に設定します。トランスクリプト内のすべてのメッセージをレンダリングします。フルスクリーンモードでのスクロールがメッセージが表示されるべき場所に空白領域を表示する場合に使用します |268| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | 公式プラグインマーケットプレイスの自動登録を無効にするには、`1` に設定します。Claude Code は、マーケットプレイスを登録しようとしているときに変数を読み取ります。通常、マシンの最初のインタラクティブ起動中です。その時点で変数が設定されている場合、Claude Code は登録を永続的にスキップします。後で変数を設定解除してもスキップは元に戻りません。`claude plugin marketplace add anthropics/claude-plugins-official` を実行して、いつでもマーケットプレイスを登録します |

214| `CLAUDE_CODE_DISABLE_WORKFLOWS` | [ワークフロー](/docs/ja/workflows#turn-workflows-off) を無効にするには `1` に設定します。[`disableWorkflows`](/docs/ja/settings#available-settings) 設定と同等です |269| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | Claude Code が [未回答の権限リクエストの `Notification` フック](/docs/ja/hooks#notification) を実行するのを停止するには、`1` に設定します。Claude Desktop および VS Code 拡張機能が Claude Code をホストするセッションでは、Claude Code がそれらを Agent SDK の `canUseTool` コールバックに送信します。ターミナルセッションには効果がありません。Claude Code v2.1.233 以降が必要です |

215| `CLAUDE_CODE_EFFORT_LEVEL` | サポートされているモデルの努力レベルを設定します。値:`low`、`medium`、`high`、`xhigh`、`max`、または `auto`(モデルのデフォルトを使用)。利用可能なレベルはモデルによって異なります。`/effort` および `effortLevel` 設定より優先されます。[努力レベルを調整](/docs/ja/model-config#adjust-effort-level) を参照してください |270| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | システム全体の管理スキルディレクトリからスキルを読み込むのをスキップするには、`1` に設定します。管理者がプロビジョニングしたスキルを読み込まないコンテナまたは CI セッションに便利です |

216| `CLAUDE_CODE_ENABLE_APPEND_SUBAGENT_PROMPT` | すべての [subagent](/docs/ja/sub-agents) のシステムプロンプトの末尾に追加テキストを追加するには `1` に設定します。[`--append-subagent-system-prompt`](/docs/ja/cli-reference#cli-flags) フラグは追加テキストを提供し、この変数を自動的に設定するため、自分で設定する必要はありません。Claude Code v2.1.205 以降が必須です |271| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | 会話コンテキストに基づいて自動ターミナルタイトル更新を無効にするには、`1` に設定します。Agent SDK および `claude -p` セッションでは、セッションタイトルを生成するバックグラウンド小/高速モデルリクエストもスキップします |

217| `CLAUDE_CODE_ENABLE_AUTO_MODE` | 互換性のために受け入れられ、効果がありません。自動モードはすべてのプロバイダーでデフォルトで利用可能です。Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry、署名済み [Claude apps ゲートウェイ](/docs/ja/claude-apps-gateway) セッションを含みます。v2.1.158~v2.1.206 では、[自動モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) をこれらのプロバイダーで利用可能にするには `1` に設定する必要がありました |272| `CLAUDE_CODE_DISABLE_THINKING` | API リクエストから `thinking` パラメーターを完全に省略するには、`1` に設定します。これは、パラメーターを拒否するプロキシとゲートウェイの互換性オプションです。デフォルトで考える モデルでは、パラメーターを省略してもモデルは考える可能性があります。Anthropic API で [拡張思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) を明示的に無効にするには、代わりに `MAX_THINKING_TOKENS=0` を使用します。どちらの変数も Fable モデルで思考をオフにしません。これらは思考をオフにすることはできません。[サードパーティプロバイダー](/docs/ja/third-party-integrations) では、`MAX_THINKING_TOKENS=0` も同様にパラメーターを省略するため、2 つの変数は同じように動作します |

218| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | [セッションリキャップ](/docs/ja/interactive-mode#session-recap) の利用可能性をオーバーライドします。`/config` トグルに関係なくリキャップを強制的にオフにするには `0` に設定します。[`awaySummaryEnabled`](/docs/ja/settings#available-settings) が `false` の場合にリキャップを強制的にオンにするには `1` に設定します。設定と `/config` トグルより優先されます |273| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | Claude Code がモデル ID を認識しない場合([LLM ゲートウェイ](/docs/ja/llm-gateway) エイリアスなど)、プロアクティブな [自動コンパクション](/docs/ja/costs#reduce-token-usage) をスキップするには、`1` に設定します。この変数がない場合、Claude Code は ID に対して想定するコンテキストウィンドウでコンパクトします。`CLAUDE_CODE_MAX_CONTEXT_TOKENS` は想定されるウィンドウを修正できます;各変数が適用される場合については、[ゲートウェイまたはカスタムモデル ID のウィンドウを修正](/docs/ja/model-config#correct-the-window-for-a-gateway-or-custom-model-id) を参照してください。Claude Code v2.1.223 以降が必要です |

219| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | [非対話モード](/docs/ja/headless) でバックグラウンドインストールが完了した後、ターン境界でプラグイン状態をリフレッシュするには `1` に設定します。リフレッシュはセッション中にシステムプロンプトを変更するため、デフォルトではオフです。これにより、そのターンの [プロンプトキャッシング](/docs/ja/prompt-caching) が無効になります |274| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | [フルスクリーンレンダリング](/docs/ja/fullscreen) で仮想スクロールを無効にし、トランスクリプト内のすべてのメッセージをレンダリングするには、`1` に設定します。フルスクリーンモードでのスクロールがメッセージが表示されるべき場所に空白の領域を表示する場合に使用します |

220| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Anthropic バウンドの非必須トラフィックがブロックされている場合、「Claude の調子はどうですか?」セッション品質調査を独自の [OpenTelemetry コレクター](/docs/ja/monitoring-usage) にルーティングするには `1` に設定します。調査の評価は OTEL イベントとしてのみ設定されたコレクターに出力されます。このモードでは調査データは Anthropic に送信されません。`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`、`DISABLE_TELEMETRY`、または `DO_NOT_TRACK` が設定されている場合に適用され、それ以外の場合は効果がありません。`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` と組織製品フィードバックポリシーが優先されます |275| `CLAUDE_CODE_DISABLE_WORKFLOWS` | [ワークフロー](/docs/ja/workflows#turn-workflows-off) を無効にするには、`1` に設定します。[`disableWorkflows`](/docs/ja/settings-reference#disableworkflows) 設定と同等です |

221| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | ツール呼び出し入力が Claude によって生成されるときに API からストリーミングされるかどうかを制御します。これがない場合、大きなツール入力(長いファイル書き込みなど)は Claude が生成を完了した後にのみ到着します。これは、ハングしているように見える可能性があります。Anthropic API 直接接続でデフォルトで有効です。Amazon Bedrock と Google Cloud's Agent Platform では、デプロイされたコンテナがサポートしているモデルごとに有効です。`0` に設定してオプトアウトします。`1` に設定して、`ANTHROPIC_BASE_URL`、`ANTHROPIC_VERTEX_BASE_URL`、または `ANTHROPIC_BEDROCK_BASE_URL` を通じてプロキシにルーティングする場合に強制的に有効にします。Microsoft Foundry と [ゲートウェイ](/docs/ja/llm-gateway) 接続ではデフォルトでオフです |276| `CLAUDE_CODE_EFFORT_LEVEL` | サポートされているモデルの努力レベルを設定します。値:`low`、`medium`、`high`、`xhigh`、`max`、またはモデルのデフォルトを使用する `auto`。利用可能なレベルはモデルによって異なります。`--effort`、`/effort`、および `modelSettings` および `effortLevel` 設定よりも優先されます。[`maxEffortLevel`](/docs/ja/settings-reference#maxeffortlevel) キャップは引き続き適用されます。[努力レベルを調整](/docs/ja/model-config#adjust-effort-level) を参照してください |

222| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | `ANTHROPIC_BASE_URL` が LiteLLM、Kong、または内部プロキシなどの Anthropic 互換ゲートウェイを指している場合、ゲートウェイの `/v1/models` エンドポイントから `/model` ピッカーを入力するには `1` に設定します。共有 API キーでバックアップされたゲートウェイはそれ以外の場合、すべてのユーザーにキーがアクセスできるすべてのモデルを表示するため、デフォルトではオフです。検出されたモデルは依然として [`availableModels`](/docs/ja/settings#available-settings) 許可リストでフィルタリングされます。セッションが受け取る許可リスト。[MDM または管理設定ファイル](/docs/ja/settings#settings-files) を通じてリストを配信します。[サーバー管理配信はゲートウェイ設定では利用できません](/docs/ja/server-managed-settings#platform-availability) |277| `CLAUDE_CODE_ENABLE_APPEND_SUBAGENT_PROMPT` | [フォークされたサブエージェント](/docs/ja/sub-agents#fork-the-current-conversation) 以外のすべての [サブエージェント](/docs/ja/sub-agents) のシステムプロンプトの末尾に追加テキストを追加するのを有効にするには、`1` に設定します。[`--append-subagent-system-prompt`](/docs/ja/cli-reference#cli-flags) および [`--append-subagent-system-prompt-file`](/docs/ja/cli-reference#cli-flags) フラグは追加テキストを提供し、この変数を自動的に設定するため、自分で設定する必要はありません。Claude Code v2.1.205 以降が必要です |

223| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | v2.1.142 で削除されました。[高速モード](/docs/ja/fast-mode) のデフォルトが Opus 4.6 から Opus 4.7 に移動したときです |278| `CLAUDE_CODE_ENABLE_AUTO_MODE` | 互換性のために受け入れられ、効果がありません。自動モードは、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、および署名済み [Claude アプリゲートウェイ](/docs/ja/claude-apps-gateway) セッションを含むすべてのプロバイダーでデフォルトで利用可能です。v2.1.158 ~ v2.1.206 では、これを `1` に設定して [自動モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) をそれらのプロバイダーで利用可能にする必要がありました |

224| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | プロンプト提案を無効にするには `false` に設定します(`/config` の「プロンプト提案」トグル)。これらは Claude が応答した後にプロンプト入力に表示される灰色の予測です。[プロンプト提案](/docs/ja/interactive-mode#prompt-suggestions) を参照してください |279| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | [セッション要約](/docs/ja/interactive-mode#session-recap) の可用性をオーバーライドします。`/config` トグルに関わらず要約をオフに強制するには `0` に設定します。[`awaySummaryEnabled`](/docs/ja/settings-reference#awaysummaryenabled) が `false` の場合に要約をオンに強制するには `1` に設定します。設定および `/config` トグルよりも優先されます |

225| `CLAUDE_CODE_ENABLE_TASKS` | セッションが構造化 Task ツール(`TaskCreate`、`TaskUpdate`、`TaskGet`、`TaskList`)を使用するか、従来の `TodoWrite` ツールを使用するかを制御します。Claude Code v2.1.142 以降、Task ツールはすべてのモードでデフォルトです。`TodoWrite` に戻すには `0` に設定します。[タスクリスト](/docs/ja/interactive-mode#task-list) と [Task ツールへの移行](/docs/ja/agent-sdk/todo-tracking#migrate-to-task-tools) を参照してください |280| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | バックグラウンドインストールが完了した後、[非対話モード](/docs/ja/headless) でターン境界でプラグイン状態をリフレッシュするには、`1` に設定します。デフォルトではオフです。リフレッシュはセッション中にシステムプロンプトを変更するため、そのターンの [プロンプトキャッシング](/docs/ja/prompt-caching) が無効になります |

226| `CLAUDE_CODE_ENABLE_TELEMETRY` | OpenTelemetry データ収集をメトリクスとログ用に有効にするには `1` に設定します。OTel エクスポーターを設定する前に必須です。[監視](/docs/ja/monitoring-usage) を参照してください |281| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Anthropic バウンドの非必須トラフィックがブロックされている場合、「Claude はどのように機能していますか?」セッション品質調査を独自の [OpenTelemetry コレクター](/docs/ja/monitoring-usage) にルーティングするには、`1` に設定します。調査評価は、設定されたコレクターへの OTEL イベントとしてのみ発行されます。このモードでは、調査データは Anthropic に送信されません。`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`、`DISABLE_TELEMETRY`、または `DO_NOT_TRACK` が設定されている場合に適用され、それ以外の場合は効果がありません。`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` および組織製品フィードバックポリシーが優先されます |

227| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | クエリループがアイドル状態になった後、自動的に終了するまで待機する時間(ミリ秒)。SDK モードを使用した自動化されたワークフローとスクリプトに役立ちます |282| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | ツール呼び出し入力が Claude が生成するときに API からストリーミングするかどうかを制御します。これがオフの場合、長いファイル書き込みなどの大きなツール入力は、Claude が生成を完了した後にのみ到着します。これは、ハングしているように見える可能性があります。Anthropic API でデフォルトで有効になっています。Amazon Bedrock および Google Cloud の Agent Platform では、デプロイされたコンテナがサポートしている場合、モデルごとに有効になります。オプトアウトするには `0` に設定します。`ANTHROPIC_BASE_URL`、`ANTHROPIC_VERTEX_BASE_URL`、または `ANTHROPIC_BEDROCK_BASE_URL` を経由してプロキシを経由してルーティングする場合、強制的にオンにするには `1` に設定します。Microsoft Foundry および [ゲートウェイ](/docs/ja/llm-gateway) 接続ではデフォルトでオフです |

228| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | [エージェントチーム](/docs/ja/agent-teams) を有効にするには `1` に設定します。エージェントチームは実験的であり、デフォルトでは無効です |283| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | `ANTHROPIC_BASE_URL` が LiteLLM、Kong、または内部プロキシなどの Anthropic 互換ゲートウェイを指している場合、ゲートウェイの `/v1/models` エンドポイントから `/model` ピッカーを設定するには、`1` に設定します。デフォルトではオフです。共有 API キーでバックアップされたゲートウェイは、そうでなければすべてのユーザーにキーがアクセスできるすべてのモデルを表示します。検出されたモデルは、セッションが受け取る [`availableModels`](/docs/ja/settings-reference#availablemodels) 許可リストでフィルタリングされます;[MDM または管理設定ファイル](/docs/ja/managed-settings#delivery-mechanisms) を経由してリストを配信します。[サーバー管理配信はゲートウェイ設定では利用できません](/docs/ja/server-managed-settings#platform-availability) |

229| `CLAUDE_CODE_EXTRA_BODY` | すべての API リクエストボディの最上位にマージする JSON オブジェクト。Claude Code が直接公開していないプロバイダー固有のパラメータを渡すのに役立ちます。シェルでエクスポートされた値は、`claude agents` または `--bg` でディスパッチする [バックグラウンドセッション](/docs/ja/agent-view) にも適用されます。v2.1.206 より前は、バックグラウンドセッションはシェルエクスポート値を無視し、バックグラウンドスーパーバイザープロセスが継承したコピーを使用していました |284| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | v2.1.142 で削除されました。[高速モード](/docs/ja/fast-mode) のデフォルトが Opus 4.6 から Opus 4.7 に移動したとき |

230| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | ファイル読み取りのデフォルトトークン制限をオーバーライドします。より大きなファイルを完全に読み取る必要がある場合に役立ちます |285| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | プロンプト入力に表示される灰色の予測であるプロンプト提案をオフにするには、`false` に設定します。[`promptSuggestionEnabled`](/docs/ja/settings-reference#promptsuggestionenabled) 設定よりも優先されます。これは `/config` の **プロンプト提案** トグルが書き込むものです。Claude Code は、アカウントが使用制限に近いか達している場合、[提案を一時停止します](/docs/ja/interactive-mode#when-claude-code-skips-suggestions)。制限に達するまでオンに保つには `true` に設定します。Claude Code v2.1.238 以降が必要です。[プロンプト提案](/docs/ja/interactive-mode#prompt-suggestions) を参照してください |

231| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | 別の Claude Code セッション内から起動された場合でも、トランスクリプト永続化、プロンプト履歴、`claude agents` 登録を強制するには `1` に設定します。例えば、Claude Code の Bash ツールによって最初に開始された `screen` セッションから継承された `CLAUDE_CODE_CHILD_SESSION` 値が、本物のトップレベルセッションをネストされたものとして誤分類する場合に使用します。v2.1.178 以降、Claude Code は tmux ケースを自動的に検出し、継承されたマーカーを無視するため、tmux はこの変数を必要としなくなります。v2.1.169 以降でも尊重されます。v2.1.170 と v2.1.171 では効果がなく、それがオーバーライドするネストされたセッション検出が削除されました |286| `CLAUDE_CODE_ENABLE_TASKS` | [タスク追跡ツール](/docs/ja/tools-reference#task-tool-availability) を持つセッションで Claude Code が提供するタスク追跡ツールを選択します。デフォルトでは、Claude Code は Task ツール `TaskCreate`、`TaskUpdate`、`TaskGet`、および `TaskList` を提供します。レガシー `TodoWrite` ツールを取得するには `0` に設定します。[タスクリスト](/docs/ja/interactive-mode#task-list) を参照してください |

232| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | ターミナルがサポートしているが自動検出されていない場合、Claude の応答で `~~text~~` の取り消し線レンダリングを強制するには `1` に設定します。SSH 経由で `TERM_PROGRAM` が転送されていない場合など。これがない場合、検出されていないターミナルはリテラル `~~` マーカーを表示します。取り消し線としてレンダリングする代わりに。Claude Code v2.1.186 以降が必須です |287| `CLAUDE_CODE_ENABLE_TELEMETRY` | OpenTelemetry データ収集をメトリクスとロギング用に有効にするには、`1` に設定します。OTel エクスポーターを設定する前に必須です。[監視](/docs/ja/monitoring-usage) を参照してください |

233| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | ターミナルがサポートしているが自動検出されていない場合、DEC プライベートモード 2026 [同期出力](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) を強制的に有効にするには `1` に設定します。Emacs `eat` などのエミュレーターで役立ちます。これは BSU/ESU を実装していますが、機能プローブに応答しません。tmux では効果がありません |288| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | すべてのモデルでタスク追跡ツールを取得するには、`1` に設定します。これがない場合、Claude Code はデフォルトでは [タスクツール可用性](/docs/ja/tools-reference#task-tool-availability) の下にリストされているモデルでのみ提供します。`CLAUDE_CODE_ENABLE_TASKS` は引き続き Task ツールまたは `TodoWrite` を選択します。Claude Code v2.1.233 以降が必要です |

234| `CLAUDE_CODE_FORK_SUBAGENT` | Claude が [フォークされた subagent](/docs/ja/sub-agents#fork-the-current-conversation) をスポーンできるようにするには `1` に設定するか、`0` に設定して無効にします。サーバー側ロールアウトをオーバーライドします。有効にすると、Claude はフォークをリクエストできます。フォークは、最初から開始する代わりに、完全な会話コンテキストを継承する subagent です。subagent タイプなしのスポーンは依然として一般的な subagent を使用し、すべての subagent スポーンはバックグラウンドで実行されます。明示的な [`/fork`](/docs/ja/commands) コマンドはこの変数なしで機能します。対話モードと SDK または `claude -p` を通じて機能します |289| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | クエリループがアイドル状態になった後、自動的に終了するまでの待機時間(ミリ秒単位)。自動化されたワークフローおよび SDK モードを使用するスクリプトに便利です |

235| `CLAUDE_CODE_GIT_BASH_PATH` | Windows のみ:Git Bash 実行可能ファイル(`bash.exe`)へのパス。Git Bash がインストールされているが PATH にない場合に使用します。[Windows セットアップ](/docs/ja/setup#set-up-on-windows) を参照してください |290| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | [エージェントチーム](/docs/ja/agent-teams) を有効にするには、`1` に設定します。エージェントチームは実験的で、デフォルトで無効になっています |

236| `CLAUDE_CODE_GLOB_HIDDEN` | Claude が [Glob ツール](/docs/ja/tools-reference#glob-tool-behavior) を呼び出すときに結果からドットファイルを除外するには `false` に設定します。デフォルトで含まれます。`@` ファイルオートコンプリート、`ls`、Grep、または Read には影響しません |291| `CLAUDE_CODE_EXTRA_BODY` | すべての API リクエスト本体のトップレベルにマージする JSON オブジェクト。Claude Code が直接公開しないプロバイダー固有のパラメーターを渡すのに便利です。シェルでエクスポートされた値は、`claude agents` または `--bg` でディスパッチする [バックグラウンドセッション](/docs/ja/agent-view) にも適用されます。v2.1.206 より前は、バックグラウンドセッションはシェルエクスポート値を無視し、バックグラウンドスーパーバイザープロセスが継承したコピーを使用していました |

237| `CLAUDE_CODE_GLOB_NO_IGNORE` | [Glob ツール](/docs/ja/tools-reference#glob-tool-behavior) が `.gitignore` パターンを尊重するようにするには `false` に設定します。デフォルトでは、Glob は gitignored されたものを含むすべての一致するファイルを返します。`@` ファイルオートコンプリートには影響しません。これは独自の [`respectGitignore` 設定](/docs/ja/settings#available-settings) を持っています |292| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | ファイル読み取りのデフォルトトークン制限をオーバーライドします。より大きなファイルを完全に読み取る必要がある場合に便利です |

238| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Glob ツールファイル検出のタイムアウト(秒)。ほとんどのプラットフォームではデフォルト 20 秒、WSL では 60 秒 |293| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | 別の Claude Code セッション内から起動された場合でも、トランスクリプト永続化、プロンプト履歴、および `claude agents` 登録を強制するには、`1` に設定します。例えば、`screen` セッションまたは Claude Code の Bash ツールによって最初に開始されたバックグラウンドランチャーから継承された `CLAUDE_CODE_CHILD_SESSION` 値により、本物のトップレベルセッションがネストされたものとして誤分類される場合に使用します。v2.1.178 以降、Claude Code は tmux ケースを自動的に検出し、継承されたマーカーを無視するため、tmux はこの変数を必要としなくなりました。また、v2.1.169 以前で尊重されます;v2.1.170 および v2.1.171 では効果がなく、ネストされたセッション検出が削除されました |

239| `CLAUDE_CODE_HIDE_CWD` | スタートアップロゴで作業ディレクトリを非表示にするには `1` に設定します。スクリーンシェアまたは記録でパスが OS ユーザー名を公開する場合に役立ちます |294| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | ターミナルがサポートしているが自動検出されない場合(SSH 経由で `TERM_PROGRAM` が転送されていない場合など)、Claude の応答で `~~text~~` の取り消し線レンダリングを強制するには、`1` に設定します。これがない場合、検出されないターミナルはリテラル `~~` マーカーを表示します。Claude Code v2.1.186 以降が必要です |

295| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | ターミナルがサポートしているが自動検出されない場合、DEC プライベートモード 2026 [同期出力](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) を強制的に有効にするには、`1` に設定します。BSU/ESU を実装しているが機能プローブに応答しない Emacs `eat` などのエミュレーターに便利です。tmux では効果がありません。`CLAUDE_CODE_NO_FLICKER` とは異なり、これは [フルスクリーンレンダリング](/docs/ja/fullscreen) に切り替わりません |

296| `CLAUDE_CODE_FORK_SUBAGENT` | [フォークモード](/docs/ja/sub-agents#turn-fork-mode-on-or-off) を制御します。これにより Claude は [フォークされたサブエージェント](/docs/ja/sub-agents#fork-the-current-conversation) を自分で生成でき、対話型セッションではデフォルトでオンです。`claude -p` および Agent SDK でもオンにするには `1` に設定するか、すべての種類のセッションでオフにするには `0` に設定します。フォークモードがオンかどうかに関わらず `/subtask` を実行できます。対話型デフォルトには Claude Code v2.1.232 以降が必要です;以前のバージョンでは、フォークモードをオンにするために変数を `1` に設定します |

297| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | [サブエージェント](/docs/ja/sub-agents) テキストと思考ブロックを `claude -p --output-format stream-json` 出力で発行するには、`1` に設定します。[`--forward-subagent-text`](/docs/ja/cli-reference#cli-flags) フラグと同じ動作。ハーネスが `claude` を呼び出し、フラグ自体を渡すことができない場合に変数を使用します。フラグとは異なり、非対話モードで stream-json 出力の外でエラーで終了します。変数はそこで無視されるため、ネストされた呼び出しはそれが設定されている場合でも機能し続けます。Claude Code v2.1.211 以降が必要です |

298| `CLAUDE_CODE_GIT_BASH_PATH` | Windows のみ:Git Bash 実行可能ファイル(`bash.exe`)へのパス。Git Bash がインストールされているが PATH にない場合に使用します。パスが存在しないか、ファイルが `bash.exe`、`sh.exe`、`bash`、または `sh` という名前でない場合、Claude Code は変数を無視し、`--debug` で表示される警告をログに記録して Git Bash を自動検出します。v2.1.219 より前は、パスが存在しない場合、Claude Code は起動時に終了し、bash または sh であることを確認せずに既存のファイルをシェルとして使用していました。[Windows セットアップ](/docs/ja/setup#set-up-on-windows) を参照してください |

299| `CLAUDE_CODE_GLOB_HIDDEN` | Claude が [Glob ツール](/docs/ja/tools-reference#glob-tool-behavior) を呼び出すときに、結果からドットファイルを除外するには、`false` に設定します。デフォルトで含まれます。`@` ファイルオートコンプリート、`ls`、Grep、または Read には影響しません |

300| `CLAUDE_CODE_GLOB_NO_IGNORE` | [Glob ツール](/docs/ja/tools-reference#glob-tool-behavior) が `.gitignore` パターンを尊重するようにするには、`false` に設定します。デフォルトでは、Glob は gitignored されたものを含むすべての一致ファイルを返します。`@` ファイルオートコンプリートには影響しません。これには独自の [`respectGitignore` 設定](/docs/ja/settings-reference#respectgitignore) があります |

301| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Glob ツールファイル検出のタイムアウト(秒単位)。ほとんどのプラットフォームでデフォルト 20 秒、WSL では 60 秒 |

302| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | バックグラウンド作業がアクティブなゴールを待機させることができる時間(分単位)。その後、Claude Code は [Claude にそれをチェックするよう求めます](/docs/ja/goal#background-work-defers-evaluation)。デフォルト `30`。チェックインをオフにするには `0` に設定します。平文の数字で全分を指定します。最大 `10080`(1 週間)。Claude Code は他の値を設定されていないものとして扱い、デフォルトを使用します。Claude Code v2.1.234 以降が必要です |

303| `CLAUDE_CODE_HIDE_CWD` | スタートアップロゴで作業ディレクトリを非表示にするには、`1` に設定します。スクリーンシェアまたは記録で OS ユーザー名を公開するパスに便利です |

240| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | IDE 拡張機能への接続に使用されるホストアドレスをオーバーライドします。デフォルトでは Claude Code は WSL-to-Windows ルーティングを含む正しいアドレスを自動検出します |304| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | IDE 拡張機能への接続に使用されるホストアドレスをオーバーライドします。デフォルトでは Claude Code は WSL-to-Windows ルーティングを含む正しいアドレスを自動検出します |

241| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | IDE 拡張機能の自動インストールをスキップするには `1` に設定します。[`autoInstallIdeExtension`](/docs/ja/settings#global-config-settings) を `false` に設定するのと同等です |305| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | IDE 拡張機能の自動インストールをスキップするには、`1` に設定します。[`autoInstallIdeExtension`](/docs/ja/settings-reference#autoinstallideextension) を `false` に設定するのと同等です |

242| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | IDE ロックファイルエントリの検証をスキップするには `1` に設定します。自動接続が実行中の IDE を見つけられない場合に使用します |306| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | 接続中に IDE ロックファイルエントリの検証をスキップするには、`1` に設定します。自動接続が実行中の IDE を見つけられない場合に使用します |

243| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Claude Code がアクティブなモデルに対して想定するコンテキストウィンドウサイズをオーバーライドします。v2.1.193 以降、Claude Code が Claude モデルとして認識しないモデル名に対して直接適用されます。認識された Claude モデルの場合、`DISABLE_COMPACT` も設定されている場合にのみ有効になります。`ANTHROPIC_BASE_URL` を通じてモデルにルーティングする場合に使用します。その名前の組み込みサイズと一致しないコンテキストウィンドウを持つモデルの場合 |307| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | 1 つのセッションで実行できる [サブエージェント](/docs/ja/sub-agents#concurrent-subagent-limit) の数。Agent ツールが別のサブエージェントの生成を拒否する前に(デフォルト:20)。平文の数字で正の整数を受け入れます;その他は無視されるため、変数は上限を調整できますが、無効にすることはできません。Claude Code v2.1.217 以降が必要です |

244| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | ほとんどのリクエストの最大出力トークン数を設定します。デフォルトとキャップはモデルによって異なります。[最大出力トークン](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison) を参照してください。この値を増やすと、[オートコンパクション](/docs/ja/costs#reduce-token-usage) がトリガーされる前に利用可能な有効なコンテキストウィンドウが減少します |308| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Claude Code がアクティブなモデルに対して想定するコンテキストウィンドウサイズをオーバーライドします。v2.1.193 以降、それがどのように適用されるかは Claude Code がモデル ID をどのように解決するかに依存します;[ゲートウェイまたはカスタムモデル ID のウィンドウを修正](/docs/ja/model-config#correct-the-window-for-a-gateway-or-custom-model-id) を参照してください。`ANTHROPIC_BASE_URL` を経由してモデルにルーティングする場合、コンテキストウィンドウが組み込みサイズと一致しない場合に使用します |

245| `CLAUDE_CODE_MAX_RETRIES` | 失敗した API リクエストを再試行する回数をオーバーライドします(デフォルト:10)。v2.1.186 以降、最大 15 にキャップされます。v2.1.199 以降、`CLAUDE_CODE_RETRY_WATCHDOG` はデフォルト再試行回数を引き上げ、キャップを削除します。無人セッションが長いアウタージを待つ必要がある場合は、代わりに `CLAUDE_CODE_RETRY_WATCHDOG` を設定します |309| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | ほとんどのリクエストの最大出力トークン数を設定します。デフォルトと上限はモデルによって異なります;[最大出力トークン](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison) を参照してください。Claude Code は認識しないモデル ID(ゲートウェイ固有の名前など)に対して 32000 にデフォルト設定し、モデルの上限を超える値をその上限に低下させます。この値を増加させると、[自動コンパクション](/docs/ja/costs#reduce-token-usage) がトリガーされる前に利用可能な有効なコンテキストウィンドウが減少します |

246| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | 並列実行できる読み取り専用ツールと subagent の最大数(デフォルト:10)。高い値は並列性を増加させますが、より多くのリソースを消費します |310| `CLAUDE_CODE_MAX_RETRIES` | 失敗した API リクエストを再試行する回数をオーバーライドします(デフォルト:10)。v2.1.186 以降、15 でキャップされます;v2.1.199 以降、`CLAUDE_CODE_RETRY_WATCHDOG` はデフォルトを上げ、キャップを削除します。無人セッションがより長い停止を待つ必要がある場合は、代わりに `CLAUDE_CODE_RETRY_WATCHDOG` を設定します |

247| `CLAUDE_CODE_MAX_TURNS` | 明示的な制限が渡されない場合、agentic ターン数をキャップします。[`--max-turns`](/docs/ja/cli-reference#cli-flags) を渡すのと同等です。両方が設定されている場合、フラグが優先されます。正の整数ではない値は、キャップなしとして扱われるのではなく、スタートアップ時にエラーで拒否されます |311| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | v2.1.224 で削除され、現在は no-op です。以前は、1 つのセッションで Agent ツールを使用して Claude が生成できる [サブエージェント](/docs/ja/sub-agents) の総数をキャップしていました(デフォルト:200);キャップを超えて生成すると `Subagent spawn limit reached` で失敗しました。[同時サブエージェント制限](/docs/ja/sub-agents#concurrent-subagent-limit) および [深さ制限](/docs/ja/sub-agents#let-subagents-spawn-their-own-subagents) は引き続き適用されます |

248| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | stdio MCP サーバーをシェル環境を継承する代わりに、安全なベースライン環境とサーバーの設定された `env` のみでスポーンするには `1` に設定します |312| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | メイン会話の下で許可される [サブエージェントレイヤー](/docs/ja/sub-agents#let-subagents-spawn-their-own-subagents) の数(デフォルト:3)。デフォルトでは、サブエージェントは独自のサブエージェントを生成でき、3 番目のレイヤーのサブエージェントはさらに生成できません;ネストをオフにするには `1` に設定します。v2.1.217 ~ v2.1.218 では、デフォルトは 1 で、制限を上げない限りサブエージェントは独自のサブエージェントを生成できませんでした;v2.1.219 はデフォルトを 3 に上げました。平文の数字で正の整数を受け入れます;その他は無視されるため、制限を調整できますが、削除することはできません。Claude Code v2.1.217 以降が必要です |

249| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | MCP ツール呼び出しのアイドルタイムアウト(ミリ秒)。stdio、HTTP、SSE、WebSocket、または [claude.ai コネクター](/docs/ja/mcp#use-mcp-servers-from-claude-ai) MCP サーバーがこの期間、レスポンスと進捗通知を送信しない場合、ツール呼び出しはウォール時計 `MCP_TOOL_TIMEOUT` を待つ代わりにエラーで中止されます。`0` に設定してアイドルチェックを無効にします。1000 未満の値は 1 秒に引き上げられ、値は有効な `MCP_TOOL_TIMEOUT` でキャップされます。`.mcp.json` のサーバーごとの `timeout` が少なくとも 1000 の場合、そのサーバーのアイドルウィンドウを少なくとも `timeout` 値に引き上げるため、`CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` はそれより早く中止しません。このフロアには Claude Code v2.1.203 以降が必須です。IDE サーバーまたは SDK インプロセスサーバーには適用されません。Claude Code v2.1.187 以降が必須です。v2.1.203 より前は、stdio サーバーはアイドルタイムアウトから除外されていました |313| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | 並列で実行できる読み取り専用ツールとサブエージェントの最大数(デフォルト:10)。より高い値は並列処理を増加させますが、より多くのリソースを消費します |

250| `CLAUDE_CODE_NATIVE_CURSOR` | ターミナル独自のカーソルを入力キャレットに表示するには `1` に設定します。描画されたブロックの代わりに。カーソルはターミナルのまばたき、形状、フォーカス設定を尊重します |314| `CLAUDE_CODE_MAX_TURNS` | 明示的な制限が渡されない場合、エージェント的なターンの数をキャップします。[`--max-turns`](/docs/ja/cli-reference#cli-flags) を渡すのと同等です。両方が設定されている場合、フラグが優先されます。正の整数でない値は、キャップなしとして扱われるのではなく、起動時にエラーで拒否されます |

251| `CLAUDE_CODE_NEW_INIT` | `/init` が対話的なセットアップフローを実行するようにするには `1` に設定します。フローは、CLAUDE.md、スキル、フックを含む、生成するファイルを尋ねてから、コードベースを探索して書き込みます。この変数がない場合、`/init` はプロンプトなしに CLAUDE.md を自動的に生成します |315| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | 1 つのセッションが実行できる [WebSearch](/docs/ja/tools-reference#websearch-tool-behavior) 呼び出しの総数のキャップ(デフォルト:200)。Claude がキャップに達すると、さらなる WebSearch 呼び出しは、既に収集した情報で続行するよう指示する通知を返します。上限なしで正の整数を受け入れます。その他は無視され、デフォルトが適用されるため、キャップを上げることはできますが、オフにすることはできません。Claude Code v2.1.212 以降が必要です |

252| `CLAUDE_CODE_NO_FLICKER` | [フルスクリーンレンダリング](/docs/ja/fullscreen) を有効にするには `1` に設定します。これは研究プレビューで、フリッカーを減らし、長い会話でメモリをフラットに保ちます。[`tui`](/docs/ja/settings#available-settings) 設定と同等です。`/tui fullscreen` で切り替えることもできます |316| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | stdio MCP サーバーをシェル環境を継承する代わりに、安全なベースライン環境とサーバーの設定された `env` のみで生成するには、`1` に設定します |

253| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Claude.ai 認証用の OAuth リフレッシュトークン。設定されている場合、`claude auth login` はブラウザを開く代わりにこのトークンを直接交換します。`CLAUDE_CODE_OAUTH_SCOPES` が必須です。自動化された環境での認証のプロビジョニングに役立ちます |317| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | MCP ツール呼び出しが [バックグラウンドタスク](/docs/ja/mcp#automatic-backgrounding-of-long-tool-calls) に移動するまでの経過時間(ミリ秒単位)(デフォルト:120000、または 2 分)。自動バックグラウンド化をオフにするには `0` に設定します。Claude Code v2.1.212 以降が必要です |

254| `CLAUDE_CODE_OAUTH_SCOPES` | リフレッシュトークンが発行されたスペース区切りの OAuth スコープ(例:`"user:profile user:inference user:sessions:claude_code"`)。`CLAUDE_CODE_OAUTH_REFRESH_TOKEN` が設定されている場合は必須です |318| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | MCP ツール呼び出しのアイドルタイムアウト(ミリ秒単位)。stdio、HTTP、SSE、WebSocket、または [claude.ai コネクター](/docs/ja/mcp#use-mcp-servers-from-claude-ai) MCP サーバーが応答を送信せず、この長さの間進捗通知を送信しない場合、全体的な `MCP_TOOL_TIMEOUT` を待つ代わりに、ツール呼び出しはエラーで中止されます。ネットワークサーバーの 300000(5 分)および stdio サーバーの 1800000(30 分)のトランスポート別デフォルトをオーバーライドします。アイドルチェックを無効にするには `0` に設定します。1000 未満の値は 1 秒に上げられ、値は有効な `MCP_TOOL_TIMEOUT` でキャップされます。`.mcp.json` の少なくとも 1000 のサーバーごとの `timeout` は、そのサーバーのアイドルウィンドウを少なくとも `timeout` 値に上げます。IDE サーバーまたは SDK インプロセスサーバーには適用されません。Claude Code v2.1.187 以降が必要です。v2.1.203 より前は、stdio サーバーはアイドルタイムアウトから除外されていました |

255| `CLAUDE_CODE_OAUTH_TOKEN` | Claude.ai 認証用の OAuth アクセストークン。SDK および自動化された環境での `/login` の代替。キーチェーンに保存された認証情報よりも優先されます。[`claude setup-token`](/docs/ja/authentication#generate-a-long-lived-token) で生成します |319| `CLAUDE_CODE_MESSAGING_SOCKET` | Claude Code によって設定されます。あなたではなく:[インボックスソケット](/docs/ja/cross-session-messaging#the-sessions-inbox-socket) をバインドするセッションでは、Claude Code はそのソケットのパスをフックおよび Bash コマンドにエクスポートします。メッセージングがオンで開始するセッションでは、Claude Code はフックが実行される前にソケットをバインドします。マシン上の他のセッションはこのパスにメッセージを配信します。各セッションは親から継承されたものではなく、独自のソケットをエクスポートし、それに到着するメッセージはセッションの [インバウンドコントロール](/docs/ja/cross-session-messaging#control-inbound-messages) を通過します。設定 `env` ブロックは設定できません。Claude Code v2.1.224 以降が必要です |

256| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | v2.1.160 で削除されました。現在は no-op です。以前は [高速モード](/docs/ja/fast-mode) を現在のデフォルトの代わりに Claude Opus 4.6 にピンしていました。Opus 4.6 はもはや高速モードをサポートしていません |320| `CLAUDE_CODE_MESSAGING_TOKEN` | Claude Code によって設定されます。あなたではなく:[インボックスソケット](/docs/ja/cross-session-messaging#the-sessions-inbox-socket) をバインドするセッションでは、Claude Code は `CLAUDE_CODE_MESSAGING_SOCKET` と一緒にこのセッションごとのトークンをフックおよび Bash コマンドにエクスポートします。ソケットに投稿するスクリプトは、`{"type":"auth","token":"<token>"}` を最初の行として送信して、セッションに属していることを証明できます。ネイティブ Windows では、Claude Code はこの行を必須とし、有効なトークンで開かない接続を閉じます。[独自の子ルール](/docs/ja/cross-session-messaging#the-sessions-inbox-socket) は Claude Code がトークンを参照するタイミングを示します。各セッションは親セッションから継承されたものではなく、独自のトークンをエクスポートします。設定 `env` ブロックは設定できません。Claude Code v2.1.228 以降が必要です |

257| `CLAUDE_CODE_OTEL_DIAG_STDERR` | OpenTelemetry エクスポーター診断エラーを stderr に書き込むには `1` に設定します。デフォルトでは、これらのエラーは `--debug` でのみ表示されるため、Prometheus ポート衝突などの設定が間違ったエクスポーターはそれ以外の場合、サイレントに失敗します。Claude Code v2.1.179 以降が必須です。[監視](/docs/ja/monitoring-usage) を参照してください |321| `CLAUDE_CODE_NATIVE_CURSOR` | 入力キャレットでターミナル独自のカーソルを表示するには、`1` に設定します。カーソルはターミナルの点滅、形状、フォーカス設定を尊重します |

258| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | 保留中の OpenTelemetry スパンをフラッシュするためのタイムアウト(ミリ秒)(デフォルト:5000)。[監視](/docs/ja/monitoring-usage) を参照してください |322| `CLAUDE_CODE_NEW_INIT` | `/init` がインタラクティブセットアップフローを実行するようにするには、`1` に設定します。フローは、CLAUDE.md、スキル、フックを含む生成するファイルを尋ねてから、コードベースを探索して書き込みます。この変数がない場合、`/init` はプロンプトなしで CLAUDE.md を自動的に生成します |

259| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | 動的 OpenTelemetry ヘッダーをリフレッシュする間隔(ミリ秒)(デフォルト:1740000 / 29 分)。[動的ヘッダー](/docs/ja/monitoring-usage#dynamic-headers) を参照してください |323| `CLAUDE_CODE_NONBLOCKING_STDOUT` | 2 番目のノンブロッキングファイルディスクリプターを経由してターミナル出力を書き込むには、`1` に設定します。セッション中に Claude Code をフリーズできない、一時停止した tmux コントロールモードペインまたは停止した SSH 接続などのターミナル。stdout がターミナルの場合、macOS、Linux、WSL で適用されます。Claude Code v2.1.261 以降が必要です |

260| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | シャットダウン時に OpenTelemetry エクスポーターが完了するためのタイムアウト(ミリ秒)(デフォルト:2000)。終了時にメトリクスがドロップされる場合は増やしてください。[監視](/docs/ja/monitoring-usage) を参照してください |324| `CLAUDE_CODE_NO_FLICKER` | [フルスクリーンレンダリング](/docs/ja/fullscreen) を有効にするには、`1` に設定します。これは、ちらつきを減らし、長い会話でメモリをフラットに保つ研究プレビューです。[`tui`](/docs/ja/settings-reference#tui) 設定をオーバーライドします;`/tui fullscreen` で切り替えることもできます |

261| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | 新しいバージョンが利用可能な場合、Claude Code がパッケージマネージャーのアップグレードコマンドをバックグラウンドで実行できるようにするには `1` に設定します。Homebrew と WinGet インストールに適用されます。他のパッケージマネージャーは、実行せずにアップグレードコマンドを表示し続けます。[自動更新](/docs/ja/setup#auto-updates) を参照してください |325| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Claude.ai 認証用の OAuth リフレッシュトークン。設定されている場合、`claude auth login` はブラウザを開く代わりにこのトークンを直接交換します。`CLAUDE_CODE_OAUTH_SCOPES` が必須です。自動化された環境での認証のプロビジョニングに便利です |

262| `CLAUDE_CODE_PERFORCE_MODE` | Perforce 対応の書き込み保護を有効にするには `1` に設定します。設定されている場合、Edit、Write、NotebookEdit は、ターゲットファイルが所有者書き込みビットを欠いている場合に `p4 edit <file>` ヒント付きで失敗します。これは Perforce が同期されたファイルで消去し、`p4 edit` が開くまで消去したままにします。これにより、Claude Code が Perforce 変更追跡をバイパスすることを防ぎます |326| `CLAUDE_CODE_OAUTH_SCOPES` | リフレッシュトークンが発行されたスペース区切り OAuth スコープ(例:`"user:profile user:inference user:sessions:claude_code"`)。`CLAUDE_CODE_OAUTH_REFRESH_TOKEN` が設定されている場合は必須です |

263| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | プラグインルートディレクトリをオーバーライドします。名前に反して、これはキャッシュ自体ではなく親ディレクトリを設定します:マーケットプレイスとプラグインキャッシュはこのパスの下のサブディレクトリに存在します。デフォルトは `~/.claude/plugins` です |327| `CLAUDE_CODE_OAUTH_TOKEN` | claude.ai 認証用の OAuth アクセストークン。SDK および自動化された環境の `/login` の代替。キーチェーンに保存された認証情報よりも優先されます。[`claude setup-token`](/docs/ja/authentication#generate-a-long-lived-token) で生成します。[`/login`](/docs/ja/authentication#authentication-precedence) を実行しない限り、Claude Code はセッション全体に設定したトークンを使用します。期限切れのトークンを置き換えるには、新しいトークンを生成して再起動します |

264| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | プラグインをインストールまたは更新するときの git 操作のタイムアウト(ミリ秒)(デフォルト:120000)。大規模なリポジトリまたは遅いネットワーク接続の場合、この値を増やします。[Git 操作がタイムアウト](/docs/ja/plugin-marketplaces#git-operations-time-out) を参照してください |328| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | v2.1.160 で削除され、現在は no-op です。以前は [高速モード](/docs/ja/fast-mode) を現在のデフォルトの代わりに Claude Opus 4.6 にピン留めしていました。Opus 4.6 はもはや高速モードをサポートしていません |

265| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | `git pull` が失敗した場合、既存のマーケットプレイスキャッシュを保持するには `1` に設定します。ワイプして再クローンする代わりに。オフラインまたはエアギャップ環境で役立ちます。再クローンは同じ方法で失敗します。[オフライン環境でのマーケットプレイス更新の失敗](/docs/ja/plugin-marketplaces#marketplace-updates-fail-in-offline-environments) を参照してください |329| `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` | コンテンツを含む OpenTelemetry 属性の最大長(モデル応答、ツールコンテンツ、システムプロンプト、生 API 本体)、切り詰めマーカーを含む、UTF-16 コード単位(デフォルト:61440、つまり 60 KB)。テレメトリバックエンドが 64 KB より大きい属性値を受け入れる場合にのみ上げるか、テレメトリボリュームを削減するために低下させます。Claude Code v2.1.214 以降が必要です。[監視](/docs/ja/monitoring-usage) を参照してください |

266| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | GitHub `owner/repo` プラグインソースを SSH の代わりに HTTPS でクローンするには `1` に設定します。CI ランナー、コンテナ、または `github.com` 用に設定された SSH キーがない環境で役立ちます |330| `CLAUDE_CODE_OTEL_DIAG_STDERR` | OpenTelemetry エクスポーター診断エラーを stderr に書き込むには、`1` に設定します。デフォルトでは、これらのエラーは `--debug` でのみ表示されるため、Prometheus ポート衝突などの設定ミスのあるエクスポーターはそれ以外の場合は静かに失敗します。Claude Code v2.1.179 以降が必要です。[監視](/docs/ja/monitoring-usage) を参照してください |

267| `CLAUDE_CODE_PLUGIN_SEED_DIR` | 1 つ以上の読み取り専用プラグインシードディレクトリへのパス。Unix では `:` で、Windows では `;` で区切られます。事前入力されたプラグインディレクトリをコンテナイメージにバンドルするために使用します。Claude Code はこれらのディレクトリからマーケットプレイスを登録し、再クローンなしで事前キャッシュされたプラグインを使用します。[コンテナ用のプラグインを事前入力](/docs/ja/plugin-marketplaces#pre-populate-plugins-for-containers) を参照してください |331| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | 保留中の OpenTelemetry スパンをフラッシュするためのタイムアウト(ミリ秒単位)(デフォルト:5000)。[監視](/docs/ja/monitoring-usage) を参照してください |

268| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Claude Code が PowerShell をスポーンするときに `-ExecutionPolicy Bypass` を渡すことを停止するには `1` に設定します。ツール呼び出し、フック、ステータスラインコマンドの場合、マシンの有効な実行ポリシーを尊重します。デフォルトでは Claude Code はプロセススコープでバイパスを実行するため、`.ps1` スクリプトとモジュールインポートはデフォルト制限 Windows インストールで機能します。プロセススコープバイパスは、この設定に関係なく、グループポリシー `MachinePolicy` または `UserPolicy` をオーバーライドしません |332| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | 動的 OpenTelemetry ヘッダーをリフレッシュするための間隔(ミリ秒単位)(デフォルト:1740000 / 29 分)。[動的ヘッダー](/docs/ja/monitoring-usage#dynamic-headers) を参照してください |

269| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | [非対話モード](/docs/ja/headless#background-tasks-at-exit) で `-p` フラグを使用して、最終ターンの後、結果が出力の一部であるバックグラウンド subagent とワークフローを待機する最大時間(ミリ秒)。デフォルト:`600000`、または 10 分。キャップを超えた場合、残りのバックグラウンドタスクは終了され、プロセスは終了します。`0` に設定して無期限に待機します。このキャップは、プレーンバックグラウンドシェルに適用される 5 秒のグレースピリオドとは別です |333| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | OpenTelemetry エクスポーターがシャットダウン時に完了するためのタイムアウト(ミリ秒単位)(デフォルト:2000)。メトリクスが終了時にドロップされる場合は増加させます。[監視](/docs/ja/monitoring-usage) を参照してください |

270| `CLAUDE_CODE_PROCESS_WRAPPER` | Claude Code が独自のバイナリから開始するプロセスをラッパー実行可能ファイルを通じて起動します。`/opt/corp/launcher` などの argv プレフィックスとして指定されます。[エージェントビュー](/docs/ja/agent-view) セッションをホストするバックグラウンドサービス、それがスポーンするすべてのセッション、更新のインストール完了のために Claude Code が実行する再起動をカバーします。最初のトークンは `exec "$@"` で実行して終わる実行可能ファイルの絶対パスである必要があり、ほとんどのランチャーはその単一パスです。値は引数リストであり、シェルコマンドではありません:空白はトークンを分離し、二重引用符はスペースを含むパスをグループ化し、`[` で始まる値は JSON 文字列配列として読み取られます。ユーザーまたは [管理設定](/docs/ja/permissions#managed-settings) の `env` ブロックで設定します。プロジェクトおよびローカル設定では設定できません。VS Code 拡張機能は `claudeProcessWrapper` 設定を通じて独自のランチャーを設定します。Windows では無視されます。`CLAUDE_CODE_SHELL_PREFIX` は別の制御です:シェルコマンドを単一のクォート文字列としてラップしますが、この変数は Claude Code 独自のプロセスを argv プレフィックスとしてラップします。[企業ランチャーの背後で Claude Code を実行](/docs/ja/corporate-launcher) を参照してください |334| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | 新しいバージョンが利用可能な場合、Claude Code がバックグラウンドでパッケージマネージャーのアップグレードコマンドを実行できるようにするには、`1` に設定します。Homebrew および WinGet インストールに適用されます。他のパッケージマネージャーは、実行せずにアップグレードコマンドを表示し続けます。[自動更新](/docs/ja/setup#auto-updates) を参照してください |

271| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | カスタムプロキシを指す場合、W3C トレースコンテキストを伝播するには `1` に設定します。`ANTHROPIC_BASE_URL` が指しています。伝播は、モデルと HTTP MCP リクエストの `traceparent` ヘッダーと、Bash、PowerShell、フックサブプロセスの `TRACEPARENT` 環境変数をカバーします。デフォルトでは、伝播は Anthropic API に直接接続されている場合にのみ有効になります。v2.1.152 で追加されました。[トレース(ベータ)](/docs/ja/monitoring-usage#traces-beta) を参照してください |335| `CLAUDE_CODE_PERFORCE_MODE` | Perforce 対応の書き込み保護を有効にするには、`1` に設定します。設定されている場合、Edit、Write、および NotebookEdit は、ターゲットファイルが所有者書き込みビットを欠いている場合、`p4 edit <file>` ヒント付きで失敗します。Perforce は同期されたファイルでこれをクリアします。`p4 edit` がそれらを開くまで。これにより、Claude Code が Perforce 変更追跡をバイパスするのを防ぎます |

272| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Claude Code を埋め込み、その代わりにモデルプロバイダーのルーティングを管理するホストプラットフォームによって設定されます。設定されている場合、`CLAUDE_CODE_USE_BEDROCK`、`ANTHROPIC_BASE_URL`、`ANTHROPIC_API_KEY` などのプロバイダー選択、エンドポイント、認証変数は設定ファイルで無視されるため、ユーザー設定はホストのルーティングをオーバーライドできません。Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry の自動テレメトリオプトアウトもスキップされるため、テレメトリは標準の `DISABLE_TELEMETRY` オプトアウトに従います。[API プロバイダーごとのデフォルト動作](/docs/ja/data-usage#default-behaviors-by-api-provider) を参照してください |336| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | プラグインルートディレクトリをオーバーライドします。名前に関わらず、これは親ディレクトリを設定します:マーケットプレイスとプラグインキャッシュはこのパスの下のサブディレクトリに存在します。デフォルトは `~/.claude/plugins` です |

273| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | プロキシが呼び出し元の代わりに DNS 解決を実行できるようにするには `1` に設定します。プロキシがホスト名解決を処理する必要がある環境でオプトインします |337| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | プラグインのインストールまたは更新時の git 操作のタイムアウト(ミリ秒単位)(デフォルト:120000)。大規模なリポジトリまたは遅いネットワーク接続の場合は、この値を増加させます。[Git 操作がタイムアウト](/docs/ja/plugin-marketplaces#git-operations-time-out) を参照してください |

274| `CLAUDE_CODE_REMOTE` | Claude Code が [クラウドセッション](/docs/ja/claude-code-on-the-web) として実行されている場合に自動的に `true` に設定されます。フックまたはセットアップスクリプトからこれを読み取って、クラウド環境にいるかどうかを検出します |338| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | `git pull` が失敗したときに再複製を試みるのをスキップし、既存のマーケットプレイスキャッシュを使用し続けるには、`1` に設定します。オフラインまたはエアギャップ環境で再複製が同じ方法で失敗する場合に便利です。[マーケットプレイス更新がオフライン環境で失敗](/docs/ja/plugin-marketplaces#marketplace-updates-fail-in-offline-environments) を参照してください |

275| `CLAUDE_CODE_REMOTE_SESSION_ID` | [クラウドセッション](/docs/ja/claude-code-on-the-web) で現在のセッションの ID に自動的に設定されます。セッショントランスクリプトへのリンクを構築するために読み取ります。[セッションに出力をリンク](/docs/ja/claude-code-on-the-web#link-output-back-to-the-session) を参照してください |339| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | GitHub `owner/repo` ショートハンドソースを SSH ではなく HTTPS 経由で複製するには、`1` に設定します。プラグインのインストールと更新、および `/plugin marketplace add` と `update` に適用されます。CI ランナー、コンテナ、または `github.com` 用に設定された SSH キーがない環境で便利です |

276| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | 前のセッションが途中で終了した場合に自動的に再開するには `1` に設定します。SDK モードで使用されるため、モデルは SDK がプロンプトを再送信する必要なく続行します |340| `CLAUDE_CODE_PLUGIN_SEED_DIR` | 1 つ以上の読み取り専用プラグインシードディレクトリへのパス。Unix では `:` で、Windows では `;` で区切られます。事前に設定されたプラグインディレクトリをコンテナイメージにバンドルするために使用します。Claude Code はこれらのディレクトリからマーケットプレイスを登録し、再複製なしで事前キャッシュされたプラグインを使用します。[コンテナ用にプラグインを事前設定](/docs/ja/plugin-marketplaces#pre-populate-plugins-for-containers) を参照してください |

277| `CLAUDE_CODE_RESUME_PROMPT` | セッションが途中で終了した場合に再開するときに挿入される継続メッセージをオーバーライドします。デフォルトは `Continue from where you left off.` です。長時間実行されるエージェント用のスポーンスクリプトは、これをより指示的なブートメッセージに設定できます。空の文字列はデフォルトを使用します |341| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | ツール呼び出し、フック、ステータスラインコマンド用に PowerShell を生成するときに Claude Code が `-ExecutionPolicy Bypass` を渡すのを停止し、マシンの有効な実行ポリシーを尊重するには、`1` に設定します。デフォルトでは Claude Code はプロセススコープで実行ポリシーをバイパスするため、`.ps1` スクリプトとモジュールインポートはデフォルト制限 Windows インストールで機能します。プロセススコープバイパスは、この設定に関わらず、グループポリシー `MachinePolicy` または `UserPolicy` をオーバーライドしません |

278| `CLAUDE_CODE_RETRY_WATCHDOG` | eval ハーネス、CI ジョブ、リモートワーカーなどの無人セッション用に `1` に設定します。`429` と `529` キャパシティエラーを `CLAUDE_CODE_MAX_RETRIES` 試行後に失敗する代わりに無期限に再試行します。ウォッチドッグは試行間で最大 5 分までバックオフするか、レスポンスがレート制限リセット時間を持つ場合はリセットが制限されるまで待機するため、使用制限に達したセッションは残りのウィンドウを待機します。v2.1.199 以降、サーバーエラー、タイムアウト、ドロップされた接続などの他の一時的なエラーのデフォルト再試行回数も引き上げます。約 3 時間のバックオフまでの 300 回、`CLAUDE_CODE_MAX_RETRIES` を明示的に設定する場合は 15 のキャップを削除します。Claude Code v2.1.186 以降が必須です |342| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | [非対話モード](/docs/ja/headless#background-tasks-at-exit) で `-p` フラグを使用した最終ターン後、バックグラウンドサブエージェントおよびワークフローを待機するアイドル待機の上限(ミリ秒単位)。アイドル待機は、Claude がバックグラウンド結果を処理するためにターンを取るたびに再開されます。デフォルト:`600000`、または 10 分。アイドル待機が上限に達すると、Claude Code は残りのバックグラウンドタスクの待機を停止して終了します。無期限に待機するには `0` に設定します。このキャップは、プレーンバックグラウンドシェルに適用される 5 秒の猶予期間とは別です。Claude Code v2.1.182 以降が必要です |

279| `CLAUDE_CODE_SAFE_MODE` | セーフモードで開始するには `1` に設定します:CLAUDE.md、スキル、プラグイン、フック、MCP サーバー、カスタムコマンドとエージェント、出力スタイル、ワークフロー、カスタムテーマ、カスタムキーバインディング、ステータスラインとファイル提案コマンド、LSP サーバー、自動メモリは読み込まれません。壊れた設定のトラブルシューティング用。管理設定ポリシーは依然として適用されます。ポリシー設定フック、ステータスライン、ファイル提案コマンドを含みます。管理プラグイン、管理スキル、管理 CLAUDE.md、ポリシー設定 MCP サーバーは適用されません。[`--safe-mode`](/docs/ja/cli-reference#cli-flags) を渡すのと同等です。直接スポーンされた子プロセスは変数を継承します |343| `CLAUDE_CODE_PROCESS_WRAPPER` | Claude Code が独自のバイナリから開始するプロセス([エージェントビュー](/docs/ja/agent-view) セッションをホストするバックグラウンドサービスなど)を、`/opt/corp/launcher` のような argv プレフィックスとして指定されたコーポレートランチャーを経由して起動します。ユーザーまたは [管理設定](/docs/ja/managed-settings) の `env` ブロックで設定します。プロジェクトおよびローカル設定は設定できません。[`processWrapper` 設定](/docs/ja/settings-reference#processwrapper) と同等です。Claude Code v2.1.210 以降が必要です;この変数は両方が設定されている場合に優先されます。VS Code 拡張機能は `claudeProcessWrapper` 設定を経由して独自のランチャーを設定します。Windows では無視されます。[コーポレートランチャーの背後で Claude Code を実行](/docs/ja/corporate-launcher) で値の形式、ランチャーがカバーするもの、ランチャーが満たす必要があるコントラクトを参照してください。Claude Code v2.1.208 以降が必要です |

280| `CLAUDE_CODE_SCRIPT_CAPS` | `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` が設定されている場合、セッションごとに特定のスクリプトを呼び出すことができる回数を制限する JSON オブジェクト。キーはコマンドテキストに対して一致するサブストリングです。値は整数呼び出し制限です。例えば、`{"deploy.sh": 2}` は `deploy.sh` を最大 2 回呼び出すことを許可します。マッチングはサブストリングベースなので、`./scripts/deploy.sh $(evil)` などのシェル展開トリックは依然としてキャップに対してカウントされます。`xargs` または `find -exec` を通じた実行時ファンアウトは検出されません。これは多層防御制御です |344| `CLAUDE_CODE_PROJECT_DIR_NAME` | `CLAUDE_CONFIG_DIR` と一緒に設定して、Claude Code がそのセッションのトランスクリプトと自動メモリを保存する `projects/` ディレクトリ名を選択します。作業ディレクトリパスから派生したものの代わりに。例えば、`CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude` で開始すると、`/srv/tenant-a/projects/work/` の下に保存されます。`CLAUDE_CONFIG_DIR` が設定されていない場合、Claude Code はこの変数を無視し、`claude` を開始する環境からのみ読み取ります。設定ファイル `env` ブロックからではなく。[プロジェクトディレクトリを自分で名前付け](/docs/ja/sessions#name-the-project-directory-yourself) を参照してください。Claude Code v2.1.234 以降が必要です |

281| `CLAUDE_CODE_SCROLL_SPEED` | [フルスクリーンレンダリング](/docs/ja/fullscreen#mouse-wheel-scrolling) でマウスホイールスクロール乗数を設定します。1~20 の値を受け入れます。`0.5` などの 1 未満の小数値で、加速されたトラックパッドとホイールスクロールを遅くします。ターミナルが増幅なしで 1 ノッチあたり 1 つのホイールイベントを送信する場合、`vim` に一致させるには `3` に設定します。JetBrains IDE ターミナルでは無視されます。Claude Code は独自のスクロール処理を使用します |345| `CLAUDE_CODE_PROMPT_CACHE_TTL` | メイン会話の [プロンプトキャッシュ TTL](/docs/ja/prompt-caching#cache-lifetime) を選択するには、`5m` または `1h` に設定します。これは、対話型、`-p`、SDK ターン、およびそれらと一緒にインラインで実行されるヘルパーです。[`promptCacheTtl` 設定](/docs/ja/settings-reference#promptcachettl) および `ENABLE_PROMPT_CACHING_1H` よりも優先されます。`FORCE_PROMPT_CACHING_5M` はそれをオーバーライドします。API は 1 時間のキャッシュ書き込みをより高いレートで請求します。Claude Code v2.1.242 以降が必要です |

282| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | [SessionEnd](/docs/ja/hooks#sessionend) フックの時間予算をオーバーライドします(ミリ秒)。セッション終了、`/clear`、および対話的な `/resume` を通じたセッション切り替えに適用されます。デフォルトでは予算は 1.5 秒で、設定ファイルで設定されたフックごとの最高 `timeout` に自動的に引き上げられます。最大 60 秒。プラグイン提供フックのタイムアウトは予算を引き上げません |346| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | `ANTHROPIC_BASE_URL` がカスタムプロキシを指している場合、W3C トレースコンテキストを伝播するには、`1` に設定します。伝播は、モデルおよび HTTP MCP リクエストの `traceparent` ヘッダーと、Bash、PowerShell、フックサブプロセスの `TRACEPARENT` 環境変数をカバーします。デフォルトでは、伝播は Anthropic API に直接接続されている場合にのみ有効になります。v2.1.152 で追加されました。[トレース(ベータ)](/docs/ja/monitoring-usage#traces-beta) を参照してください |

283| `CLAUDE_CODE_SESSION_ID` | Bash と PowerShell ツールサブプロセスで現在のセッション ID に自動的に設定されます。[フック](/docs/ja/hooks) コマンドサブプロセスと stdio [MCP サーバー](/docs/ja/mcp) サブプロセスでも設定されます。フックに渡される `session_id` フィールドと一致します。`/clear` で更新されます。スクリプトと外部ツールを Claude Code セッションと相関させるために使用します |347| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Claude Code を埋め込み、その代わりにモデルプロバイダーのルーティングを管理するホストプラットフォームによって設定されます。設定されている場合、Claude Code は `CLAUDE_CODE_USE_BEDROCK`、`ANTHROPIC_BASE_URL`、`ANTHROPIC_API_KEY` などのプロバイダー選択、エンドポイント、認証変数を設定ファイルで無視するため、ユーザー設定はホストのルーティングをオーバーライドできません。Claude Code は、`model`、`fallbackModel`、`modelOverrides` などのモデル選択キーも [管理設定](/docs/ja/managed-settings) で無視します。どの管理ソースがそれらを配信するかに関わらず、ホストのモデル設定が古い管理モデルピンよりも優先されます。Claude Code は、`ANTHROPIC_MODEL` および `ANTHROPIC_DEFAULT_*_MODEL` ファミリーなどのモデル選択変数も管理 `env` ブロックで無視します;管理設定の [`availableModels`](/docs/ja/model-config#restrict-model-selection) 許可リストはホストが独自のものを提供しない限り引き続き適用されます。Claude Code は、Amazon Bedrock、Claude Platform on AWS、Google Cloud の Agent Platform、Microsoft Foundry などのサードパーティプロバイダーで適用する自動テレメトリオプトアウトをスキップするため、テレメトリは標準 `DISABLE_TELEMETRY` オプトアウトに従います。[API プロバイダーごとのデフォルト動作](/docs/ja/data-usage#default-behaviors-by-api-provider) を参照してください |

284| `CLAUDE_CODE_SHELL` | Claude Code が Bash ツールコマンドを実行するために使用するシェルを設定します。`bash` または `zsh` バイナリへのパス(例:`/opt/homebrew/bin/bash`)を受け入れます。`fish` などの他のシェルはサポートされていません。値が機能する `bash` または `zsh` パスでない場合、Claude Code はそれを無視し、自動検出にフォールバックします。自動検出は、`bash` または `zsh` を指している場合に `$SHELL` を使用します。それ以外の場合は、PATH と標準インストール場所で見つかった最初の機能する `zsh` を選択し、次に `bash` を選択します |348| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | プロキシが DNS 解決を実行できるようにするには、`1` に設定します。プロキシがホスト名解決を処理する必要がある環境のオプトイン |

285| `CLAUDE_CODE_SHELL_PREFIX` | Claude Code がスポーンするシェルコマンドをラップするコマンドプレフィックス:Bash ツール呼び出し、[フック](/docs/ja/hooks) コマンド、[ステータスライン](/docs/ja/statusline) コマンド、stdio [MCP サーバー](/docs/ja/mcp) スタートアップコマンド。PowerShell フックと exec 形式フックはプレフィックスなしで実行されます。ログまたは監査に役立ちます。`/path/to/logger.sh` などの裸の実行可能ファイルパスを設定すると、各コマンドが `/path/to/logger.sh '<command>'` として実行されます。ラッパーはコマンドラインを `$1` の単一シェルクォート引数として受け取るため、ラッパーは `$1` を `exec bash -c "$1"` などのシェルで再評価する必要があります。`$1` を裸の実行可能ファイルパスとして扱うと、`npx -y <package>` などの引数を渡す stdio MCP サーバーが壊れます。Bash ツール呼び出しの場合、`$1` には Claude が組み立てた完全なシェル呼び出しが含まれます。環境セットアップを含みます。Claude が実行したコマンドのみではありません |349| `CLAUDE_CODE_REMOTE` | Claude Code が [クラウドセッション](/docs/ja/claude-code-on-the-web) として実行されている場合、自動的に `true` に設定されます。フックまたはセットアップスクリプトからこれを読み取って、クラウドセッションにいるかどうかを検出します |

286| `CLAUDE_CODE_SIMPLE` | 最小限のシステムプロンプトと Bash、ファイル読み取り、ファイル編集ツールのみで実行するには `1` に設定します。`--mcp-config` からの MCP ツールは引き続き利用可能です。フック、スキル、プラグイン、MCP サーバー、自動メモリ、CLAUDE.md の自動検出を無効にします。OAuth トークンとキーチェーン認証情報は読み取られないため、Anthropic 認証は `ANTHROPIC_API_KEY` または `--settings` の `apiKeyHelper` から取得する必要があります。[`--bare`](/docs/ja/headless#start-faster-with-bare-mode) CLI フラグと同等です |350| `CLAUDE_CODE_REMOTE_SESSION_ID` | [クラウドセッション](/docs/ja/claude-code-on-the-web) で現在のセッション ID に自動的に設定されます。セッショントランスクリプトへのリンクを構築するために読み取ります。[出力をセッションにリンク](/docs/ja/cloud-environments#link-output-back-to-the-session) を参照してください |

287| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | 任意のモデルで短いシステムプロンプトと省略されたツール説明を使用するには `1` に設定します。`0`、`false`、`no`、または `off` に設定して、実験またはサーバー設定がそれ以外の場合に有効にしてもオプトアウトします。完全なツールセット、フック、MCP サーバー、CLAUDE.md 検出は有効なままです |351| `CLAUDE_CODE_RESTRICTED` | `--restricted` を渡すのと同じように、セッションを制限モードで開始するには、`1` に設定します。Claude Code はこの変数を設定ファイルの `env` ブロックで無視します。Claude Code v2.1.248 以降が必要です |

288| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) のクライアント側認証をスキップします。リクエストに自分で署名するゲートウェイの場合 |352| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | 前のセッションがターン中に終了した場合、自動的に再開するには、`1` に設定します。SDK モードで使用されるため、モデルは SDK がプロンプトを再送信する必要なく続行できます。これをオフにするには、変数を設定解除するか `0` に設定します。v2.1.221 より前は、Claude Code は `0` および他の falsy 値を無視したため、非対話モードで再開をトリガーし、変数を設定解除することが唯一の方法でした |

289| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Amazon Bedrock の AWS 認証をスキップします(例:LLM ゲートウェイを使用する場合) |353| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | ターン中に終了したセッションが自動的に再開するための最後のトランスクリプトメッセージの最大経過時間(ミリ秒単位)。最後のメッセージがこのバウンドより古い場合、Claude Code は `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` 自動再開と注入された `CLAUDE_CODE_RESUME_PROMPT` 継続メッセージの両方をスキップし、セッションはアイドル状態で開始されるため、明示的に続行します。設定されていない場合または `0` はバウンドなしを意味します;負の値または非数値は 1 時間のバウンドを適用します。長時間実行されるエージェント用のスポーンスクリプトはこれを設定できるため、古いトランスクリプトに対する再開は古いプロンプトを再実行しません。Claude Code は、対話型セッションから会話を継承した [エージェントビュー](/docs/ja/agent-view) セッションが再起動されたときに、1 時間のバウンドを自分で設定します。Claude Code v2.1.211 以降が必要です |

290| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | Microsoft Foundry の Azure 認証をスキップします。ゲートウェイの場合、代わりに `ANTHROPIC_CUSTOM_HEADERS` を通じて独自の `Authorization` ヘッダーを挿入するプロキシまたはゲートウェイの場合。Claude Code は Azure 認証情報なしでリクエストを送信し、指定した `Authorization` ヘッダーを保持します。`ANTHROPIC_FOUNDRY_API_KEY` または `ANTHROPIC_FOUNDRY_AUTH_TOKEN` が設定されている場合は無視されます。v2.1.203 より前は、この変数は API キーも設定されていない場合、Microsoft Foundry クライアントがリクエストを送信できない状態のままにしました |354| `CLAUDE_CODE_RESUME_PROMPT` | セッションがターン中に終了したときに再開するときに注入される継続メッセージをオーバーライドします。デフォルトは `Continue from where you left off.` です。長時間実行されるエージェント用のスポーンスクリプトはこれを設定して、より指示的なブートメッセージを使用できます。空の文字列はデフォルトを使用します |

291| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Amazon Bedrock Mantle の AWS 認証をスキップします(例:LLM ゲートウェイを使用する場合) |355| `CLAUDE_CODE_RETRY_WATCHDOG` | eval ハーネス、CI ジョブ、リモートワーカーなどの無人セッション用に `1` に設定します。`429` および `529` 容量エラーを `CLAUDE_CODE_MAX_RETRIES` 試行後に失敗する代わりに無期限に再試行します。Claude Code は、スケジュールでリセットされる [ゲートウェイ支出キャップ](/docs/ja/errors#spend-limit-reached) からのものであっても、支出制限またはリソース使用クレジットを報告する `429` で即座に失敗します。v2.1.239 より前は、監視犬はこれらを無期限に再試行していました。監視犬は試行間で最大 5 分までバックオフするか、応答がレート制限リセット時間を運ぶときに制限がリセットされるまで待機するため、使用制限に達したセッションは残りのウィンドウを待機します。v2.1.199 以降では、サーバーエラー、タイムアウト、ドロップされた接続などの他の一時的なエラーのデフォルト再試行回数も上げられ、約 3 時間のバックオフで 300 に上げられ、`CLAUDE_CODE_MAX_RETRIES` を明示的に設定した場合、15 のキャップが削除されます。Claude Code v2.1.186 以降が必要です |

292| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | プロンプト履歴とセッショントランスクリプトをディスクに書き込むことをスキップするには `1` に設定します。この変数が設定されたセッションは `--resume`、`--continue`、または上矢印履歴に表示されません。一時的なスクリプト化されたセッションに役立ちます |356| `CLAUDE_CODE_SAFE_MODE` | セーフモードで開始するには、`1` に設定します:CLAUDE.md、スキル、プラグイン、フック、MCP サーバー、カスタムコマンドとエージェント、出力スタイル、ワークフロー、カスタムテーマ、カスタムキーバインディング、ステータスラインおよびファイル提案コマンド、LSP サーバー、自動メモリは読み込まれません。トラブルシューティング用。管理設定ポリシーは引き続き適用されます。ポリシー設定フック、ステータスライン、ファイル提案コマンドを含む;管理プラグイン、管理スキル、管理 CLAUDE.md、ポリシー設定 MCP サーバーは読み込まれません。[`--safe-mode`](/docs/ja/cli-reference#cli-flags) を渡すのと同等です。直接生成された子プロセスは変数を継承します |

293| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Google Cloud's Agent Platform の Google 認証をスキップします(例:LLM ゲートウェイを使用する場合) |357| `CLAUDE_CODE_SCRIPT_CAPS` | `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` が設定されている場合、セッションごとに特定のスクリプトを呼び出すことができる回数を制限する JSON オブジェクト。キーはコマンドテキストに対して一致するサブストリングです;値は整数呼び出し制限です。例えば、`{"deploy.sh": 2}` は `deploy.sh` を最大 2 回呼び出すことを許可します。マッチングはサブストリングベースであるため、`./scripts/deploy.sh $(evil)` などのシェル展開トリックは引き続きキャップに対してカウントされます。`xargs` または `find -exec` を経由したランタイムファンアウトは検出されません;これは多層防御コントロールです |

294| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | [Stop](/docs/ja/hooks#stop) または [SubagentStop](/docs/ja/hooks#subagentstop) フックがターンの終了をブロックできる最大連続回数(デフォルト:8)。フックが解決するのに正当に必要とする場合は、これを増やします。`0` に設定してキャップを無効にします |358| `CLAUDE_CODE_SCROLL_SPEED` | [フルスクリーンレンダリング](/docs/ja/fullscreen#mouse-wheel-scrolling) でマウスホイールスクロール乗数を設定します。20 までの任意の正の値を受け入れます。`0.5` などの 1 未満の小数値を含めて、加速トラックパッドおよびターミナルが既にホイールイベントを増幅するホイールスクロールを遅くします。ターミナルが増幅なしで 1 ホイールイベントを送信する場合、`vim` に一致させるには `3` に設定します。JetBrains IDE ターミナルでは無視されます。Claude Code は独自のスクロール処理を使用します |

295| `CLAUDE_CODE_SUBAGENT_MODEL` | [モデル設定](/docs/ja/model-config) を参照してください。v2.1.196 以降、`inherit` に設定することは、設定を解除するのと同じです。以前のバージョンでは、`inherit` をオーバーライドとして扱い、すべての subagent をメイン会話のモデルに強制しました |359| `CLAUDE_CODE_SEND_FEEDBACK` | セッションの [Claude が作成したフィードバック](/docs/ja/tools-reference#sendfeedback-tool-behavior) をオフにするには `0` に設定します。アカウントが既にアクセス権を持っている場所でオンにするには `1` に設定します;変数はアクセス自体を付与できず、`DISABLE_FEEDBACK_COMMAND` および [`feedbackDrafts`](/docs/ja/settings-reference#feedbackdrafts) 設定の `off` 値などのフィードバックをオフにする他のスイッチは引き続き適用されます |

296| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Anthropic とクラウドプロバイダーの認証情報をサブプロセス環境(Bash ツール、フック、MCP stdio サーバー)から削除するには `1` に設定します。親 Claude プロセスはこれらの認証情報を API 呼び出し用に保持しますが、子プロセスはそれらを読み取ることができず、シェル展開を通じてシークレットを流出させようとするプロンプトインジェクション攻撃への露出を減らします。Linux では、これは Bash サブプロセスを分離された PID 名前空間で実行するため、ホストプロセス環境を `/proc` 経由で読み取ることができません。副作用として、`ps`、`pgrep`、`kill` はホストプロセスを見たり、シグナルを送ったりできません。`allowed_non_write_users` が設定されている場合、`claude-code-action` はこれを自動的に設定します |360| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | [SessionEnd](/docs/ja/hooks#sessionend) フックの時間予算をミリ秒単位でオーバーライドします。セッション終了、`/clear`、および対話型 `/resume` を経由したセッション切り替えに適用されます。デフォルトでは予算は 1.5 秒で、設定ファイルで設定された最高のフックごとの `timeout` に自動的に上げられます。最大 60 秒。プラグイン提供フックのタイムアウトは予算を上げません |

297| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | 非対話モード(`-p` フラグ)でプラグインインストールが完了するまで待機するには `1` に設定します。これがない場合、プラグインはバックグラウンドでインストールされ、最初のターンで利用できない可能性があります。`CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` と組み合わせて待機を制限します |361| `CLAUDE_CODE_SESSION_ID` | Bash および PowerShell ツールサブプロセス、[フックコマンド](/docs/ja/hooks) サブプロセス、stdio [MCP サーバー](/docs/ja/mcp) サブプロセスで現在のセッション ID に自動的に設定されます。Bash、PowerShell、フックの場合、これはフック JSON 入力の `session_id` フィールドと一致し、`/clear` で更新されます。MCP サーバーサブプロセスは、それが生成されたときに受け取った ID を保持します。`--resume <session-id>` では、再開された ID を受け取ります。`--continue` または明示的な ID なしで `--resume` では、初期スタートアップ ID を受け取る可能性があります。スクリプトおよび外部ツールを Claude Code セッションと関連付けるために使用します |

298| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | 同期プラグインインストールのタイムアウト(ミリ秒)。超過すると、Claude Code はプラグインなしで続行し、エラーをログします。デフォルトなし:この変数がない場合、同期インストールは完了するまで待機します |362| `CLAUDE_CODE_SHELL` | Claude Code が Bash ツールコマンドを実行するために使用するシェルを設定します。`/opt/homebrew/bin/bash` などの `bash` または `zsh` バイナリへのパスを受け入れます。`fish` などの他のシェルはサポートされていません。値が機能する `bash` または `zsh` パスでない場合、Claude Code はそれを無視し、自動検出にフォールバックします。自動検出は、`bash` または `zsh` を指している場合は `$SHELL` を使用します。そうでない場合は、`PATH` および標準インストール場所で見つかった最初の機能する `zsh` を選択してから `bash` を選択します |

299| `CLAUDE_CODE_SYNC_SKILLS` | 非対話モード(`-p` フラグ)で有効な claude.ai スキルを `~/.claude/skills/` にダウンロードし、10 分ごとに再同期するには `1` に設定します。claude.ai 認証が必須です。[Claude Code on the web](/docs/ja/claude-code-on-the-web) セッションで自動的に有効な claude.ai スキルを受け取ります。この場合、この変数を設定する必要はありません |363| `CLAUDE_CODE_SHELL_PREFIX` | Claude Code が生成するシェルコマンドをラップするコマンドプレフィックス:Bash ツール呼び出し、[フック](/docs/ja/hooks) コマンド、[ステータスライン](/docs/ja/statusline) コマンド、stdio [MCP サーバー](/docs/ja/mcp) スタートアップコマンド。PowerShell フックおよび exec フォームフックはプレフィックスなしで実行されます。ロギングまたは監査に便利です。`/path/to/logger.sh` などのベアの実行可能ファイルパスを設定すると、各コマンドが `/path/to/logger.sh '<command>'` として実行されます。ラッパーは `$1` の単一シェルクォート引数としてコマンドラインを受け取るため、ラッパーは `$1` を `exec bash -c "$1"` などのシェルで再評価する必要があります。`$1` をベアの実行可能ファイルパスとして扱うと、`npx -y <package>` などの引数を渡す stdio MCP サーバーが破損します。Bash ツール呼び出しの場合、`$1` には Claude Code が組み立てる完全なシェル呼び出しが含まれます。環境セットアップを含む。実行した単なるコマンドではなく |

300| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | `CLAUDE_CODE_SYNC_SKILLS` が設定されている場合、セッション中のスキル再同期のタイムアウト(ミリ秒)(デフォルト:30000)。ホストがセッション中にスキル再読み込みをリクエストしたときにトリガーされるダウンロードを制限します。超過すると、再同期は停止し、残りのダウンロードはバックグラウンドで続行されます |364| `CLAUDE_CODE_SIMPLE` | 最小限のシステムプロンプトおよび Bash、ファイル読み取り、ファイル編集ツールのみで実行するには、`1` に設定します。`--mcp-config` からの MCP ツールは引き続き利用可能です。フック、スキル、カスタムコマンド、サブエージェント、プラグイン、MCP サーバー、自動メモリ、CLAUDE.md の自動検出を無効にします。`--add-dir` で渡すディレクトリ内のスキルは引き続き読み込まれます。OAuth トークンおよびキーチェーン認証情報は読み取られないため、Anthropic 認証は `ANTHROPIC_API_KEY` または `--settings` の `apiKeyHelper` から取得する必要があります。[`--bare`](/docs/ja/headless#start-faster-with-bare-mode) を渡すのと同等です |

301| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | `CLAUDE_CODE_SYNC_SKILLS` が設定されている場合、最初のクエリが初期スキル同期を待機するタイムアウト(ミリ秒)(デフォルト:5000)。超過すると、クエリは続行され、残りのスキルダウンロードはバックグラウンドで続行されます |365| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | 任意のモデルで短いシステムプロンプトと省略されたツール説明を使用するには、`1` に設定します。実験またはサーバー設定がそれ以外の場合有効にする場合でも、オプトアウトするには `0`、`false`、`no`、または `off` に設定します。完全なツールセット、フック、MCP サーバー、CLAUDE.md 検出は有効なままです |

302| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | diff 出力の構文強調表示を無効にするには `false` に設定します。色がターミナルセットアップに干渉する場合に役立ちます。コードブロックとファイルプレビューの強調表示も無効にするには、[`syntaxHighlightingDisabled`](/docs/ja/settings) 設定を使用します |366| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) のクライアント側認証をスキップします。ゲートウェイが自分でリクエストに署名する場合 |

303| `CLAUDE_CODE_TASK_LIST_ID` | セッション間でタスクリストを共有します。複数の Claude Code インスタンスで同じ ID を設定して、共有タスクリストで調整します。[タスクリスト](/docs/ja/interactive-mode#task-list) を参照してください |367| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | AWS デフォルト認証情報プロバイダーチェーンのインプロセスキャッシュをオフにするには、`1` に設定します。Claude Code はすべての API リクエストでチェーンを解決します。キャッシュがオフの場合、SSO でバックアップされたプロファイルはすべてのリクエストで IAM Identity Center から認証情報をリクエストします。[認証情報キャッシングおよび解決タイムアウト](/docs/ja/amazon-bedrock#credential-caching-and-resolution-timeout) を参照してください。Claude Code v2.1.207 以降が必要です |

304| `CLAUDE_CODE_TEAM_NAME` | このチームメイトが属するエージェントチームの名前。[エージェントチーム](/docs/ja/agent-teams) メンバーで自動的に設定されます |368| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Amazon Bedrock の AWS 認証をスキップします(例えば、LLM ゲートウェイを使用する場合) |

305| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | 非対話セッションが終了時に [エージェントチーム](/docs/ja/agent-teams) の破棄を完了するまで待機する時間(ミリ秒)をオーバーライドします。1000~60000 を受け入れます。範囲外の値は無視され、デフォルト 10000 が適用されます。Claude Code v2.1.206 以降が必須です |369| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` | [高速モード](/docs/ja/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) 可用性チェックが失敗したときに、チェックの直接リクエストをブロックするネットワークの場合、利用可能として扱うには `1` に設定します。Claude Code は引き続き「組織によって無効化」応答を尊重します |

306| `CLAUDE_CODE_TMPDIR` | 内部一時ファイルに使用される一時ディレクトリをオーバーライドします。Claude Code はこのパスに `/claude-{uid}/`(Unix)または `/claude/`(Windows)を追加します。デフォルト:macOS では `/tmp`、Linux/Windows では `os.tmpdir()`。v2.1.161 以降、macOS と Linux では、[サンドボックス化](/docs/ja/sandboxing) された Bash サブプロセスは、一部のツールが長いパスで失敗するため、オーバーライドが長いパスの場合、システムデフォルト下の短いフォールバック `$TMPDIR` を受け取ります。サンドボックス化されていない Bash コマンドはシェルの `$TMPDIR` を変更なしで継承します。Claude Code 独自の一時ファイルは常にオーバーライドを使用します |370| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | プロキシがチェックのリクエストを拒否する代わりに傍受する場合、クライアント側 [高速モード](/docs/ja/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) 可用性チェックをスキップするには、`1` に設定します。API は、組織が高速モードを無効にしている場合、高速モードリクエストを引き続き拒否します |

307| `CLAUDE_CODE_TMUX_TRUECOLOR` | tmux 内で 24 ビット truecolor 出力を許可するには `1` に設定します。デフォルトでは、`$TMUX` が設定されている場合、Claude Code は 256 色にクランプされます。tmux は設定されていない限り truecolor エスケープシーケンスを通過させないためです。`~/.tmux.conf` に `set -ga terminal-overrides ',*:Tc'` を追加した後、これを設定します。[ターミナル設定](/docs/ja/terminal-config) で他の tmux 設定を参照してください |371| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | Microsoft Foundry の Azure 認証をスキップします。プロキシまたはゲートウェイが独自の `Authorization` ヘッダーを注入する場合。Claude Code は Azure 認証情報なしでリクエストを送信し、例えば `ANTHROPIC_CUSTOM_HEADERS` を経由して提供する `Authorization` ヘッダーを保持します。`ANTHROPIC_FOUNDRY_API_KEY` または `ANTHROPIC_FOUNDRY_AUTH_TOKEN` が設定されている場合は無視されます。v2.1.203 より前は、この変数は API キーも設定されていない限り、Microsoft Foundry クライアントがリクエストを送信できないままにしました |

372| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Amazon Bedrock Mantle の AWS 認証をスキップします(例えば、LLM ゲートウェイを使用する場合) |

373| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | プロンプト履歴およびセッショントランスクリプトをディスクに書き込むのをスキップするには、`1` に設定します。この変数が設定されたセッションは `--resume`、`--continue`、または上矢印履歴に表示されません。一時的なスクリプト化されたセッションに便利です |

374| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Google Cloud の Agent Platform の Google 認証をスキップします(例えば、LLM ゲートウェイを使用する場合) |

375| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | [Stop](/docs/ja/hooks#stop) または [SubagentStop](/docs/ja/hooks#subagentstop) フックがターンの終了をブロックできる連続回数の最大値。Claude Code がそれをオーバーライドしてターンを終了する前に(デフォルト:8)。キャップを無効にするには `0` に設定します。フックが解決するのに正当に多くの反復が必要な場合は上げます |

376| `CLAUDE_CODE_SUBAGENT_MODEL` | [サブエージェント](/docs/ja/sub-agents#choose-a-model)、[エージェントチーム](/docs/ja/agent-teams#specify-teammates-and-models) チームメイト、別の方法でモデルが割り当てられていない [ワークフロー](/docs/ja/workflows) エージェントのデフォルトモデル。`haiku` などのエイリアスまたは完全なモデル名を受け入れます。2 つのソースがそれよりも優先されます:Claude がエージェントを生成するときに渡すモデル、およびエージェント定義の `model` フィールド(`inherit` を含む)。それを変更するには、[`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/ja/sub-agents#run-every-subagent-on-one-model) を設定します。完全な順序については [モデルを選択](/docs/ja/sub-agents#choose-a-model) を参照してください。`inherit` に設定することは、設定されていないままにするのと同じです。v2.1.251 より前は、この変数は呼び出しごとのモデルと定義の `model` フィールドの両方をオーバーライドしました |

377| `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | サブエージェント、チームメイト、ワークフローエージェントに 1 つのモデルを強制するには、`1` に設定します。[すべてのサブエージェントを 1 つのモデルで実行](/docs/ja/sub-agents#run-every-subagent-on-one-model) はそのモデルがどれであるかを示します。Claude Code v2.1.257 以降が必要です |

378| `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` | [サブエージェント](/docs/ja/sub-agents)、ワークフロー、バックグラウンド作業などのメイン会話外のリクエストの [プロンプトキャッシュ TTL](/docs/ja/prompt-caching#cache-lifetime) を選択するには、`5m` または `1h` に設定します。[`subagentPromptCacheTtl` 設定](/docs/ja/settings-reference#subagentpromptcachettl) および `ENABLE_PROMPT_CACHING_1H` よりも優先されます。`FORCE_PROMPT_CACHING_5M` はそれをオーバーライドします。API は 1 時間のキャッシュ書き込みをより高いレートで請求します。Claude Code v2.1.242 以降が必要です |

379| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | サブプロセス環境から認証情報を削除するには、`1` に設定します(Bash ツール、フック、MCP stdio サーバー):Anthropic およびクラウドプロバイダー認証情報、Claude Code が認証情報として認識する他の変数、パッケージレジストリ URL に埋め込まれた認証情報。親 Claude プロセスはこれらの認証情報を API 呼び出し用に保持しますが、子プロセスは読み取ることができず、シェル展開を経由して秘密を流出させようとするプロンプトインジェクション攻撃への露出を減らします。Linux では、これは Bash サブプロセスを分離された PID 名前空間で実行するため、`/proc` を経由してホストプロセス環境を読み取ることができません;副作用として、`ps`、`pgrep`、`kill` はホストプロセスを見たり、シグナルを送ったりできません。`claude-code-action` は `allowed_non_write_users` が設定されている場合、これを自動的に設定します |

380| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | 非対話モード(`-p` フラグ)で、最初のクエリの前にプラグインインストールが完了するまで待機するには、`1` に設定します。これがない場合、プラグインはバックグラウンドでインストールされ、最初のターンで利用できない可能性があります。`CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` と組み合わせて待機を制限します |

381| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | 同期プラグインインストールのタイムアウト(ミリ秒単位)。超過すると、Claude Code はプラグインなしで進行し、エラーをログに記録します。デフォルトなし:この変数がない場合、同期インストールは完了するまで待機します |

382| `CLAUDE_CODE_SYNC_SKILLS` | 有効な claude.ai スキルを `~/.claude/skills/synced/` にダウンロードし、10 分ごとに再同期するには、`1` に設定します。最初のクエリを実行する前に、Claude Code は `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` までスキルのリストを待機します。ダウンロード自体はバックグラウンドで完了し、Claude はスキルを呼び出すときにスキルのダウンロードを待機します。`synced` フォルダ名は [このダウンロード用に予約されています](/docs/ja/skills#where-skills-live)。v2.1.227 より前は、スキルは `~/.claude/skills/` に直接ダウンロードされました。`-p` フラグを使用した非対話モードにのみ適用されます。claude.ai 認証が必要です。[Web 上の Claude Code](/docs/ja/claude-code-on-the-web) セッションは有効な claude.ai スキルを自動的に受け取ります;そこで設定する必要はありません。Claude Code は [ダウンロードされたスキルに追加ルール](/docs/ja/skills#how-synced-skills-behave) を適用します。例えば、マシンで `!` コマンドを実行しません |

383| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | `CLAUDE_CODE_SYNC_SKILLS` が設定されている場合、ターン中のスキル再同期のタイムアウト(ミリ秒単位)(デフォルト:30000)。ホストがセッション中にスキルリロードをリクエストするときにトリガーされるダウンロードを制限します。超過すると、再同期は停止し、残りのダウンロードはバックグラウンドで続行されます |

384| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | `CLAUDE_CODE_SYNC_SKILLS` が設定されている場合、最初のクエリが初期スキルリストを待機するタイムアウト(ミリ秒単位)(デフォルト:5000)。超過すると、最初のクエリは到着したスキルで実行されます。ダウンロードはどちらの方法でもバックグラウンドで完了し、Claude はスキルを呼び出すときにスキルのダウンロードを待機します |

385| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | diff 出力での構文強調表示を無効にするには、`false` に設定します。色がターミナルセットアップに干渉する場合に便利です。コードブロックおよびファイルプレビューでの強調表示も無効にするには、[`syntaxHighlightingDisabled`](/docs/ja/settings-reference#syntaxhighlightingdisabled) 設定を使用します |

386| `CLAUDE_CODE_TASK_LIST_ID` | セッション全体でタスクリストを共有します。複数の Claude Code インスタンスで同じ ID を設定して、[タスクツールを持つセッション](/docs/ja/tools-reference#task-tool-availability) で共有タスクリストを調整します。[タスクリスト](/docs/ja/interactive-mode#task-list) を参照してください |

387| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | 非対話型セッションが終了時に [エージェントチーム](/docs/ja/agent-teams) の破棄を完了するまで待機する時間(ミリ秒単位)をオーバーライドします。1000 ~ 60000 を受け入れます;範囲外の値は無視され、デフォルト 10000 が適用されます。Claude Code v2.1.206 以降が必要です |

388| `CLAUDE_CODE_TMPDIR` | 内部一時ファイルに使用される一時ディレクトリをオーバーライドします。Claude Code は Unix で `/claude-{uid}/` を、Windows で `/claude/` をこのパスに追加します。デフォルト:macOS では `/tmp`、Linux および Windows では `os.tmpdir()`。macOS および Linux では、[サンドボックス化](/docs/ja/sandboxing) された Bash サブプロセスは、オーバーライドが長いパスの場合、システムデフォルトの下で短いフォールバック `$TMPDIR` を受け取ります。一部のツールは一時パスが長すぎるときに失敗するため。サンドボックス化されていない Bash コマンドはシェルの `$TMPDIR` を変更されていない状態で継承します。Claude Code 独自の一時ファイルは常にオーバーライドを使用します。シェル、ユーザー設定、または管理設定で設定します。[プロジェクトおよびローカル設定](/docs/ja/settings-reference#variables-claude-code-ignores-in-env) では無視されます |

389| `CLAUDE_CODE_TMUX_TRUECOLOR` | tmux 内で 24 ビット truecolor 出力を許可するには、`1` などの空でない値に設定します。**`0` または `false` に設定してもまだ truecolor を許可します**。ほとんどのオン/オフ変数とは異なり;変数を設定解除して 256 色クランプを復元します。デフォルトでは、`$TMUX` が設定されている場合、Claude Code は 256 色にクランプします。tmux は `set -ga terminal-overrides ',*:Tc'` を `~/.tmux.conf` に追加しない限り、truecolor エスケープシーケンスを通過させません。[ターミナル設定](/docs/ja/terminal-config) で他の tmux 設定を参照してください |

390| `CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE` | Linux および WSL では、Claude Code が [ツールメモリキャップから除外](/docs/ja/tools-reference#memory-limit-on-linux-and-wsl) するプロセスの種類のカンマ区切りリストに設定します。例えば `mcp` または `lsp`。すべての種類をキャップするには `none` に設定するか、Bash、PowerShell、Monitor ツールコマンドのみをキャップするには `all-new` に設定します。Claude Code は、リストするものに関わらず、Bash、PowerShell、Monitor ツールコマンドをキャップの下に保ちます。Claude Code v2.1.246 以降が必要です |

391| `CLAUDE_CODE_TOOL_MEMORY_LIMIT` | Linux および WSL では、[Bash および PowerShell ツールコマンドが使用できるメモリをキャップ](/docs/ja/tools-reference#memory-limit-on-linux-and-wsl) するサイズ(例:`4G`)に設定します。v2.1.246 以降では Monitor ツールコマンド。平文の数字で、単独でバイト数、または `K`、`M`、`G`、`T` サフィックス付きでサイズを書き込みます。キャップをオフにするには `0` または `off` に設定します。Claude Code が開始する最初のプロセスがキャップをオンまたはオフにしたら、変更された値は次に `claude` を起動するときに有効になります。Claude Code v2.1.233 以降が必要です |

392| `CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS` | Claude Code が [リモートコントロール](/docs/ja/remote-control) または SDK ホストなどのリモートクライアント、または [保持されたクロスセッションメッセージ](/docs/ja/cross-session-messaging#control-inbound-messages) の承認ダイアログに転送するダイアログをキャンセルするまでのデッドライン(ミリ秒単位);権限プロンプトおよび `AskUserQuestion` 質問は独自のフローを使用し、それによって管理されません。Claude Code v2.1.236 以降では、セッション中の [Fable 使用クレジット同意プロンプト](/docs/ja/model-config#fable-and-usage-credits) も制限します。無人で実行されている可能性があります。[インバウンドメッセージを制御](/docs/ja/cross-session-messaging#control-inbound-messages) および [非対話型セッション](/docs/ja/cross-session-messaging#non-interactive-sessions) は、デッドラインが適用されない場合を含む、完全な保持メッセージ有効期限ルールをカバーしています。[`dialogExpiry`](/docs/ja/settings-reference#dialogexpiry) 設定をオーバーライドします。`0` または負の値はデッドラインを無効にします |

308| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) を使用します |393| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) を使用します |

309| `CLAUDE_CODE_USE_BEDROCK` | [Amazon Bedrock](/docs/ja/amazon-bedrock) を使用します |394| `CLAUDE_CODE_USE_BEDROCK` | [Amazon Bedrock](/docs/ja/amazon-bedrock) を使用します |

310| `CLAUDE_CODE_USE_FOUNDRY` | [Microsoft Foundry](/docs/ja/microsoft-foundry) を使用します |395| `CLAUDE_CODE_USE_FOUNDRY` | [Microsoft Foundry](/docs/ja/microsoft-foundry) を使用します |

311| `CLAUDE_CODE_USE_MANTLE` | Amazon Bedrock [Mantle エンドポイント](/docs/ja/amazon-bedrock#use-the-mantle-endpoint) を使用します |396| `CLAUDE_CODE_USE_MANTLE` | Amazon Bedrock [Mantle エンドポイント](/docs/ja/amazon-bedrock#use-the-mantle-endpoint) を使用します |

312| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | ripgrep の代わりに Node.js ファイル API を使用してカスタムコマンド、subagent、出力スタイルを検出するには `1` に設定します。バンドルされた ripgrep バイナリが利用できないか、環境でブロックされている場合に設定します。Grep またはファイル検索ツールには影響しません |397| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | ripgrep の代わりに Node.js ファイル API を使用してカスタムコマンド、サブエージェント、出力スタイルを検出するには、`1` に設定します。バンドルされた ripgrep バイナリが環境で利用できないか、ブロックされている場合に設定します。Grep またはファイル検索ツールには影響しません |

313| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | PowerShell ツールを制御します。Windows では Git Bash がない場合、ツールは自動的に有効になります。無効にするには `0` に設定します。Windows に Git Bash がインストールされている場合、ツールは段階的にロールアウトされています:オプトインするには `1` に、オプトアウトするには `0` に設定します。Linux、macOS、WSL では、有効にするには `1` に設定します。これには PATH に `pwsh` が必須です。Windows で有効にすると、Claude は Git Bash を通じてルーティングする代わりに PowerShell コマンドをネイティブに実行できます。[PowerShell ツール](/docs/ja/tools-reference#powershell-tool) を参照してください |398| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | PowerShell ツールを制御します。Git Bash がない Windows では、ツールは自動的に有効になります;無効にするには `0` に設定します。Git Bash がインストールされている Windows では、ツールは claude.ai および Console アカウントではデフォルトでオンです;Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry セッションで有効にするには `1` に設定するか、オフにするには `0` に設定します。Linux、macOS、WSL では、`1` に設定して有効にします。これには `pwsh` が `PATH` に必要です。Windows で有効にされている場合、Claude は Git Bash を経由してルーティングする代わりに PowerShell コマンドをネイティブに実行できます。[PowerShell ツール](/docs/ja/tools-reference#powershell-tool) を参照してください |

314| `CLAUDE_CODE_USE_VERTEX` | [Google Cloud's Agent Platform](/docs/ja/google-vertex-ai) を使用します |399| `CLAUDE_CODE_USE_VERTEX` | [Google Cloud の Agent Platform](/docs/ja/google-vertex-ai) を使用します |

315| `CLAUDE_CONFIG_DIR` | 設定ディレクトリをオーバーライドします(デフォルト:`~/.claude`)。すべての設定、認証情報、セッション履歴、プラグインはこのパスの下に保存されます。複数のアカウントを並行して実行する場合に役立ちます:例えば、`alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'` |400| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | [WebFetch](/docs/ja/tools-reference#webfetch-tool-behavior) が各フェッチされた URL の応答をキャッシュする時間(ミリ秒単位)に設定します。デフォルトは `900000`(15 分)です。平文の数字のみを受け入れます;`0`、小数、またはその他のスペルはデフォルトを保持します。Claude Code は起動ごとに値を 1 回読み取るため、設定 `env` ブロックの変更は次に `claude` を起動するときに適用されます。Claude Code v2.1.233 以降が必要です |

316| `CLAUDE_DISABLE_ADOPT` | セッションをバックグラウンド化するときに `←` または [`/background`](/docs/ja/agent-view#from-inside-a-session) で進行中のバックグラウンド作業を停止するには `1` に設定します。Claude Code はバックグラウンド化する前に確認を求め、それ以外の場合は引き継がれるタスクを停止します。Claude Code v2.1.195 以降が必須です |401| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | [WebFetch](/docs/ja/tools-reference#webfetch-tool-behavior) がページのダウンロードを待機する時間の上限(ミリ秒単位)。フォローするリダイレクトを含みます。その時点までに完了していないダウンロードはデッドラインエラーで失敗します。デフォルトは `300000`(5 分)です。制限を削除するには `0` に設定します。平文の数字のみを受け入れます;小数またはその他のスペルはデフォルトを保持します。Claude Code v2.1.268 以降が必要です |

317| `CLAUDE_EFFORT` | Bash ツールサブプロセスとフックコマンドで、ターンのアクティブな [努力レベル](/docs/ja/model-config#adjust-effort-level) に自動的に設定されます:`low`、`medium`、`high`、`xhigh`、`max`。Ultracode は異なるレベルではなく、`xhigh` として報告されます。[フック](/docs/ja/hooks) に渡される `effort.level` フィールドと一致します。現在のモデルが努力パラメータをサポートしている場合にのみ設定されます |402| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | [ワークフロー](/docs/ja/workflows) エージェントが同じプレフィックスシブリングの最初の応答が開始されるまで待機する時間の上限(ミリ秒単位)。ファンアウトが [プロンプトキャッシュプレフィックス](/docs/ja/workflows#prompt-caching-in-a-fan-out) を共有する複数のエージェントを開始する場合、Claude Code は最初のエージェント以外をすべてこの長さまで保持するため、残りはキャッシュされていないプレフィックスを処理する代わりにキャッシュされたプレフィックスを読み取ります。デフォルト `5000`。待機を無効にするには `0` に設定します。`DISABLE_PROMPT_CACHING` が設定されている場合、エージェントは待機しません。Claude Code v2.1.229 以降が必要です |

318| `CLAUDE_ENABLE_BYTE_WATCHDOG` | バイトレベルストリーミングアイドルウォッチドッグを強制的に有効にするには `1` に設定するか、強制的に無効にするには `0` に設定します。未設定の場合、ウォッチドッグは Anthropic API 直接接続と [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) 接続でデフォルトで有効になります。バイトウォッチドッグは、ワイヤ上にバイトが到着しない場合に接続を中止します。Anthropic API 直接接続ではデフォルト 180 秒、Claude Platform on AWS では 300 秒、Amazon Bedrock で有効な場合は 300 秒、または `CLAUDE_STREAM_IDLE_TIMEOUT_MS` で設定された値(最小 5 分にクランプ)。イベントレベルウォッチドッグとは独立しています |403| `CLAUDE_CONFIG_DIR` | 設定ディレクトリをオーバーライドします(デフォルト:`~/.claude`)。すべての設定、セッション履歴、プラグインはこのパスの下に保存されます。認証情報については、[Claude Code が認証情報を保存する場所](/docs/ja/authentication#credential-management) を参照してください。複数のアカウントを並行して実行するのに便利です:例えば、`alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`。シェル、ユーザー設定、または管理設定で設定します。[プロジェクトおよびローカル設定](/docs/ja/settings-reference#variables-claude-code-ignores-in-env) では無視されます |

319| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Amazon Bedrock `vnd.amazon.eventstream` レスポンスでバイトレベルストリーミングアイドルウォッチドッグを有効にするには `1` に設定します。デフォルトではオフです。`CLAUDE_STREAM_IDLE_TIMEOUT_MS` でタイムアウトを設定します |404| `CLAUDE_DISABLE_ADOPT` | `←` または [`/background`](/docs/ja/agent-view#from-inside-a-session) を押してセッションをバックグラウンド化するときに、進行中のバックグラウンド作業を引き継ぐ代わりに停止するには、`1` に設定します。Claude Code はバックグラウンド化する前に確認を求め、そうでなければ引き継がれるタスクを停止します。Claude Code v2.1.195 以降が必要です |

320| `CLAUDE_ENABLE_STREAM_WATCHDOG` | イベントレベルストリーミングアイドルウォッチドッグを強制的に有効にするには `1` に設定するか、強制的に無効にするには `0` に設定します。未設定の場合、ウォッチドッグはすべてのプロバイダーでデフォルトでオンです。v2.1.196 より前は、未設定のデフォルトは Anthropic API 直接接続ではサーバー制御、他のプロバイダーではオフでした。v2.1.169 以降、Anthropic API 直接接続と Claude Platform on AWS 以外のプロバイダーも、この変数とは独立した 5 分のボディアイドルタイムアウトを持っています。`API_FORCE_IDLE_TIMEOUT` を参照してください。Amazon Bedrock では、`CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` で独立したバイトレベルウォッチドッグも有効にできます。両方が設定されている場合、一緒に実行されます。`CLAUDE_STREAM_IDLE_TIMEOUT_MS` でタイムアウトを設定します |405| `CLAUDE_EFFORT` | Bash ツールサブプロセスおよびフックコマンドでサブプロセスが開始するときに有効な [努力レベル](/docs/ja/model-config#adjust-effort-level) に自動的に設定されます:`low`、`medium`、`high`、`xhigh`、または `max`。Ultracode は個別のレベルではなく、`xhigh` として報告されます。[フック](/docs/ja/hooks) に渡される `effort.level` フィールドと一致します。現在のモデルが努力パラメーターをサポートする場合にのみ設定されます |

321| `CLAUDE_ENV_FILE` | Claude Code が各 Bash コマンドの前に同じシェルプロセスで実行するシェルスクリプトへのパス。ファイル内のエクスポートはコマンドに表示されます。virtualenv または conda アクティベーションをコマンド間で永続化するために使用します。[SessionStart](/docs/ja/hooks#persist-environment-variables)、[Setup](/docs/ja/hooks#setup)、[CwdChanged](/docs/ja/hooks#cwdchanged)、[FileChanged](/docs/ja/hooks#filechanged) フックによって動的に入力されます |406| `CLAUDE_ENABLE_BYTE_WATCHDOG` | バイトレベルストリーミングアイドル監視犬を強制的に有効にするには `1` に設定するか、強制的に無効にするには `0` に設定します。`0` は、その監視犬が実行される接続での [最初バイトデッドライン](/docs/ja/network-config#streaming-idle-watchdogs) もオフにします。設定されていない場合、監視犬は直接 Anthropic API および [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) 接続でデフォルトで有効になり、`ANTHROPIC_BASE_URL` または `ANTHROPIC_AWS_BASE_URL` を経由して到達した [ゲートウェイ](/docs/ja/gateways) 接続でのストリーミング応答に対して有効になります;v2.1.222 より前は、それらのゲートウェイ接続では実行されず、イベントレベルの監視犬はキープアライブピングが到着している間でも停止を報告できました。タイムアウトおよびタイマーがどのように相互作用するかについては、[ストリーミングアイドル監視犬](/docs/ja/network-config#streaming-idle-watchdogs) を参照してください |

322| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | 明示的な名前が指定されていない場合、自動生成される [Remote Control](/docs/ja/remote-control) セッション名のプレフィックス。デフォルトはマシンのホスト名で、`myhost-graceful-unicorn` のような名前を生成します。`--remote-control-session-name-prefix` CLI フラグは単一の呼び出しに対して同じ値を設定します |407| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Amazon Bedrock `vnd.amazon.eventstream` 応答でバイトレベルストリーミングアイドル監視犬を有効にするには `1` に設定します。これは Bedrock ストリーミングリクエストで [最初バイトデッドライン](/docs/ja/network-config#streaming-idle-watchdogs) も有効にします。デフォルトではオフです。`CLAUDE_STREAM_IDLE_TIMEOUT_MS` でタイムアウトを設定します |

323| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | ストリーミングアイドルウォッチドッグが停止した接続を閉じるまでのタイムアウト(ミリ秒)。この変数を明示的に設定する場合、最小は `300000`(5 分)です。低い値は拡張思考の一時停止とプロキシバッファリングを吸収するために自動的にクランプされます。未設定の場合、イベントレベルウォッチドッグはデフォルト 300 秒、バイトレベルウォッチドッグは Anthropic API 直接接続でデフォルト 180 秒(Claude Platform on AWS および他のプロバイダーでは 300 秒)。未設定の 180 秒バイトウォッチドッグデフォルトは別の値で、5 分クランプの対象ではありません。`API_FORCE_IDLE_TIMEOUT` で説明されているボディアイドルタイムアウトは独立して適用されます。Amazon Bedrock では、`CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1` の場合にも適用されます |408| `CLAUDE_ENABLE_STREAM_WATCHDOG` | イベントレベルストリーミングアイドル監視犬を強制的に無効にするには `0` に設定するか、強制的に有効にするには `1` に設定します。設定されていない場合、監視犬はすべてのプロバイダーでデフォルトでオンです。v2.1.196 より前は、設定されていないデフォルトは直接 Anthropic API ではサーバー制御で、他のプロバイダーではオフでした。`CLAUDE_STREAM_IDLE_TIMEOUT_MS` でタイムアウトを設定します;このタイマーと一緒に実行される他の停止タイマーについては、[ストリーミングアイドル監視犬](/docs/ja/network-config#streaming-idle-watchdogs) を参照してください |

324| `DEBUG` | デバッグモードを有効にするには `1` に設定します。[`--debug`](/docs/ja/cli-reference#cli-flags) で起動するのと同等です。デバッグログは `~/.claude/debug/<session-id>.txt` に書き込まれるか、`CLAUDE_CODE_DEBUG_LOGS_DIR` で設定されたパスに書き込まれます。`1`、`true`、`yes`、`on` の真の値のみがデバッグモードを有効にするため、他のツール用に設定された `DEBUG=express:*` などの名前空間パターンはトリガーしません |409| `CLAUDE_ENV_FILE` | Claude Code が各 Bash コマンドの前に同じシェルプロセスで実行するシェルスクリプトへのパス。ファイル内のエクスポートはコマンドに表示されます。virtualenv または conda アクティベーションをコマンド全体で永続化するために使用します。また、[SessionStart](/docs/ja/hooks#persist-environment-variables)、[Setup](/docs/ja/hooks#setup)、[CwdChanged](/docs/ja/hooks#cwdchanged)、[FileChanged](/docs/ja/hooks#filechanged) フックによって動的に設定されます |

325| `DISABLE_AUTOUPDATER` | 自動更新を無効にするには `1` に設定します。手動の `claude update` は引き続き機能します。`DISABLE_UPDATES` を使用して両方をブロックします |410| `CLAUDE_JOB_DIR` | Claude Code によって各 [バックグラウンドセッション](/docs/ja/agent-view) でそのセッションの `~/.claude/jobs/<id>` ディレクトリに設定されます。セッションが実行するシェルコマンドはそれを継承します。スクラッチファイルを [`$CLAUDE_JOB_DIR/tmp`](/docs/ja/agent-view#where-state-is-stored) に書き込みます。Claude の `Write` および `Edit` 呼び出しはそこで権限を求めず、セッションが削除されるとディレクトリが削除されます |

326| `DISABLE_AUTO_COMPACT` | コンテキスト制限に近づいたときの自動コンパクションを無効にするには `1` に設定します。手動の `/compact` コマンドは引き続き利用可能です。コンパクションが発生するタイミングを明示的に制御したい場合に使用します |411| `CLAUDE_PID` | Claude Code はこれを独自のプロセス ID に設定します。生成するサブプロセス:Bash および PowerShell ツールコマンドおよびフックコマンド。Linux では、Bash ツールのシェル統合はそれを使用して、Claude Code プロセス自体と一致する `pkill` パターンを拒否します;[エラーリファレンス](/docs/ja/errors#pkill-pattern-matches-the-claude-code-process) を参照してください。独自のスクリプトから読み取って、親 Claude Code プロセスを意図的に識別またはシグナルします。Claude Code v2.1.214 以降が必要です |

327| `DISABLE_COMPACT` | すべてのコンパクションを無効にするには `1` に設定します:自動コンパクションと手動の `/compact` コマンドの両方 |412| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | 明示的な名前が提供されない場合、自動生成された [リモートコントロール](/docs/ja/remote-control) セッション名のプレフィックス。デフォルトはマシンのホスト名で、`myhost-graceful-unicorn` のような名前を生成します。`--remote-control-session-name-prefix` CLI フラグは単一の呼び出しに対して同じ値を設定します |

328| `DISABLE_COST_WARNINGS` | コスト警告メッセージを無効にするには `1` に設定します |413| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | ストリーミングリクエストの最初の応答バイトのデッドライン(ミリ秒単位)。[最初バイトデッドライン](/docs/ja/network-config#streaming-idle-watchdogs) が実行される接続で。Claude Code がそれをクランプする方法、大きなリクエスト本体に追加する追加時間、設定されていない場合にデッドラインを選択する方法については、[API からの応答なし](/docs/ja/errors#no-response-from-api) を参照してください。Claude Code v2.1.242 以降が必要です |

329| `DISABLE_DOCTOR_COMMAND` | `/doctor` セットアップチェックアップスキルとその `/checkup` エイリアスを非表示にするには `1` に設定します。ユーザーがセッションからセットアップ診断を実行すべきでない管理されたデプロイメントに役立ちます。`claude doctor` ターミナルコマンドには影響しません。v2.1.205 より前は、この変数は `/doctor` 診断スクリーンコマンドを非表示にしました |414| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | イベント- およびバイトレベルストリーミングアイドル監視犬が停止した接続を閉じるまでのタイムアウト(ミリ秒単位)。この変数を明示的に設定する場合、最小値は `300000`(5 分)です;低い値は拡張思考の一時停止とプロキシバッファリングを吸収するために静かにクランプされ、バイトレベルの監視犬は値を 30 分でキャップします。`CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` はこの変数よりもバイトレベルの監視犬に優先されます。監視犬ごとの設定されていないデフォルトについては、[ストリーミングアイドル監視犬](/docs/ja/network-config#streaming-idle-watchdogs) を参照してください |

330| `DISABLE_ERROR_REPORTING` | エラーレポートをオプトアウトするには `1` に設定します |415| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | v2.1.260 で削除され、現在は no-op です。以前は [バックグラウンドシェルコマンド](/docs/ja/interactive-mode#background-bash-commands) が [サブエージェント](/docs/ja/sub-agents) が開始できる実行時間をミリ秒単位でキャップしていました。デフォルト 60 分。[バックグラウンドコマンドライフタイムルール](/docs/ja/tools-reference#background-commands) を参照してください |

331| `DISABLE_EXTRA_USAGE_COMMAND` | ユーザーがレート制限を超えて追加使用量を購入できる `/usage-credits` コマンドを非表示にするには `1` に設定します |416| `DEBUG` | デバッグモードを有効にするには `1` に設定します。[`--debug`](/docs/ja/cli-reference#cli-flags) で起動するのと同等です。デバッグログは `~/.claude/debug/<session-id>.txt` または `CLAUDE_CODE_DEBUG_LOGS_DIR` で設定されたパスに書き込まれます。`1`、`true`、`yes`、`on` の truthy 値のみがデバッグモードを有効にするため、他のツール用に設定された `DEBUG=express:*` などの名前空間パターンはそれをトリガーしません |

332| `DISABLE_FEEDBACK_COMMAND` | `/feedback` コマンドを無効にするには `1` に設定します。古い名前 `DISABLE_BUG_COMMAND` も受け入れられます |417| `DISABLE_AUTOUPDATER` | 自動バックグラウンド更新を無効にするには、`1` に設定します。手動 `claude update` は引き続き機能します。両方をブロックするには `DISABLE_UPDATES` を使用します |

333| `DISABLE_GROWTHBOOK` | GrowthBook フィーチャーフラグ取得を無効にするには `1` に設定します。すべてのフラグにコードデフォルトを使用します。テレメトリイベントログは `DISABLE_TELEMETRY` も設定されていない限りオンのままです |418| `DISABLE_AUTO_COMPACT` | コンテキスト制限に近づくときの自動コンパクションを無効にするには、`1` に設定します。手動 `/compact` コマンドは利用可能なままです。コンパクションが発生するタイミングを明示的に制御したい場合に使用します。[`autoCompactEnabled`](/docs/ja/settings-reference#autocompactenabled) 設定をオーバーライドします |

334| `DISABLE_INSTALLATION_CHECKS` | インストール警告を無効にするには `1` に設定します。インストール場所を手動で管理する場合にのみ使用してください。標準インストールの問題をマスクする可能性があります |419| `DISABLE_COMPACT` | すべてのコンパクション(自動コンパクションと手動 `/compact` コマンド)を無効にするには、`1` に設定します |

335| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | `/install-github-app` コマンドを非表示にするには `1` に設定します。サードパーティプロバイダー(Amazon Bedrock、Google Cloud's Agent Platform、または Microsoft Foundry)を使用する場合は既に非表示です |420| `DISABLE_COST_WARNINGS` | コスト警告メッセージを無効にするには、`1` に設定します |

336| `DISABLE_INTERLEAVED_THINKING` | インターリーブ思考ベータヘッダーの送信を防ぐには `1` に設定します。LLM ゲートウェイまたはプロバイダーが [インターリーブ思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) をサポートしていない場合に役立ちます |421| `DISABLE_DOCTOR_COMMAND` | [`/doctor`](/docs/ja/commands#all-commands) セットアップチェックアップスキルおよびその `/checkup` エイリアスを非表示にするには、`1` に設定します。ユーザーがセッションからセットアップ診断を実行すべきでない管理デプロイメントに便利です。`claude doctor` ターミナルコマンドには影響しません。v2.1.205 より前は、この変数は `/doctor` 診断スクリーンコマンドを非表示にしていました |

337| `DISABLE_LOGIN_COMMAND` | `/login` コマンドを非表示にするには `1` に設定します。認証が API キーまたは `apiKeyHelper` を通じて外部で処理される場合に役立ちます |422| `DISABLE_ERROR_REPORTING` | エラー報告をオプトアウトするには、`1` などの空でない値に設定します。**`0` または `false` に設定してもまだオプトアウト**します。ほとんどのオン/オフ変数とは異なり;変数を設定解除してエラー報告をオンに戻します |

338| `DISABLE_LOGOUT_COMMAND` | `/logout` コマンドを非表示にするには `1` に設定します |423| `DISABLE_EXTRA_USAGE_COMMAND` | レート制限を超えて追加使用を購入できるようにする `/usage-credits` コマンドを非表示にするには、`1` に設定します |

339| `DISABLE_PROMPT_CACHING` | すべてのモデルのプロンプトキャッシングを無効にするには `1` に設定します(モデルごとの設定よりも優先されます) |424| `DISABLE_FEEDBACK_COMMAND` | `/feedback` コマンドおよび [Claude が作成したフィードバック](/docs/ja/tools-reference#sendfeedback-tool-behavior) を無効にするには、`1` に設定します。また、`/bug` および `/share` を無効にします。これらは同じパスを経由して報告されます;v2.1.212 より前は、それらは `/feedback` のエイリアスであったため、コマンドはすべての名前で無効になっていました。古い名前 `DISABLE_BUG_COMMAND` も受け入れられます |

340| `DISABLE_PROMPT_CACHING_FABLE` | Fable モデルのプロンプトキャッシングを無効にするには `1` に設定します |425| `DISABLE_GROWTHBOOK` | GrowthBook 機能フラグ取得を無効にし、すべてのフラグにコードデフォルトを使用するには、`1` または `true` に設定します。これにより、[リモートコントロール](/docs/ja/remote-control#requirements) および他の [機能フラグ取得が必要な機能](#features-that-need-feature-flag-fetching) が利用できなくなります。`0` または `false` に設定すると、取得がオンのままになります。テレメトリイベントロギングは `DISABLE_TELEMETRY` も設定されていない限りオンのままです |

341| `DISABLE_PROMPT_CACHING_HAIKU` | Haiku モデルのプロンプトキャッシングを無効にするには `1` に設定します |426| `DISABLE_INSTALLATION_CHECKS` | インストール警告を無効にするには、`1` に設定します。インストール場所を手動で管理する場合にのみ使用します。標準インストールの問題をマスクできるため |

342| `DISABLE_PROMPT_CACHING_OPUS` | Opus モデルのプロンプトキャッシングを無効にするには `1` に設定します |427| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | `/install-github-app` コマンドを非表示にするには、`1` に設定します。サードパーティプロバイダー(Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry)を使用する場合は既に非表示です |

343| `DISABLE_PROMPT_CACHING_SONNET` | Sonnet モデルのプロンプトキャッシングを無効にするには `1` に設定します |428| `DISABLE_INTERLEAVED_THINKING` | インターリーブ思考ベータヘッダーの送信を防ぐには、`1` に設定します。LLM ゲートウェイまたはプロバイダーが [インターリーブ思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) をサポートしていない場合に便利です |

344| `DISABLE_TELEMETRY` | テレメトリをオプトアウトするには `1` に設定します。テレメトリイベントにはコード、ファイルパス、bash コマンドなどのユーザーデータは含まれません。フィーチャーフラグ取得も無効になります。`DISABLE_GROWTHBOOK` と同じ効果なので、一部のフラグ付き機能は利用できない可能性があります |429| `DISABLE_LOGIN_COMMAND` | `/login` コマンドを非表示にするには、`1` に設定します。認証が API キーまたは `apiKeyHelper` を経由して外部で処理される場合に便利です |

345| `DISABLE_UPDATES` | すべての更新をブロックするには `1` に設定します。手動の `claude update` と `claude install` を含みます。`DISABLE_AUTOUPDATER` より厳密です。Claude Code を独自のチャネルを通じて配布し、ユーザーが自己更新すべきでない場合に使用します |430| `DISABLE_LOGOUT_COMMAND` | `/logout` コマンドを非表示にするには、`1` に設定します |

346| `DISABLE_UPGRADE_COMMAND` | `/upgrade` コマンドを非表示にするには `1` に設定します |431| `DISABLE_PROMPT_CACHING` | すべてのモデルの [プロンプトキャッシング](/docs/ja/prompt-caching#disable-prompt-caching) を無効にするには、`1` に設定します(モデルごとの設定よりも優先されます) |

347| `DO_NOT_TRACK` | テレメトリをオプトアウトするには `1` に設定します。`DISABLE_TELEMETRY` を設定するのと同等です。Claude Code はこれをクロスツール規約として尊重します。多くの開発者 CLI で認識されます |432| `DISABLE_PROMPT_CACHING_FABLE` | Fable モデルのプロンプトキャッシングを無効にするには、`1` に設定します |

348| `ENABLE_CLAUDEAI_MCP_SERVERS` | Claude Code で [claude.ai MCP サーバー](/docs/ja/mcp#use-mcp-servers-from-claude-ai) を無効にするには `false` に設定します。ログインしているユーザーではデフォルトで有効です。プロジェクトごとまたは組織ごとに無効にするには、代わりに設定で [`disableClaudeAiConnectors`](/docs/ja/settings#available-settings) を設定します |433| `DISABLE_PROMPT_CACHING_HAIKU` | Haiku モデルのプロンプトキャッシングを無効にするには、`1` に設定します |

349| `ENABLE_PROMPT_CACHING_1H` | API キー、[Amazon Bedrock](/docs/ja/amazon-bedrock)、[Google Cloud's Agent Platform](/docs/ja/google-vertex-ai)、[Microsoft Foundry](/docs/ja/microsoft-foundry)、[Claude Platform on AWS](/docs/ja/claude-platform-on-aws) ユーザーの場合、デフォルトの 5 分の代わりに 1 時間の [プロンプトキャッシュ TTL](/docs/ja/prompt-caching#cache-lifetime) をリクエストするには `1` に設定します。サブスクリプションユーザーは 1 時間の TTL を自動的に受け取ります。1 時間キャッシュ書き込みはより高いレートで請求されます |434| `DISABLE_PROMPT_CACHING_OPUS` | Opus モデルのプロンプトキャッシングを無効にするには、`1` に設定します |

350| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | 非推奨。代わりに `ENABLE_PROMPT_CACHING_1H` を使用してください |435| `DISABLE_PROMPT_CACHING_SONNET` | Sonnet モデルのプロンプトキャッシングを無効にするには、`1` に設定します |

351| `ENABLE_TOOL_SEARCH` | [MCP ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search) を制御します。未設定:すべての MCP ツールはデフォルトで遅延されますが、Google Cloud's Agent Platform または `ANTHROPIC_BASE_URL` がファーストパーティ以外のホストを指している場合は事前に読み込まれます。値:`true`(常に遅延し、ベータヘッダーを送信、Google Cloud's Agent Platform モデル Sonnet 4.5 または Opus 4.5 より前、または `tool_reference` をサポートしないプロキシでリクエストが失敗)、`auto`(閾値モード:ツールがコンテキストの 10% に収まる場合は事前に読み込み)、`auto:N`(カスタム閾値、例:5% の場合は `auto:5`)、`false`(すべて事前に読み込み)。`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` が設定されている場合は無視され、すべてのツールが事前に読み込まれます |436| `DISABLE_TELEMETRY` | テレメトリをオプトアウトするには、`1` などの空でない値に設定します。**`0` または `false` に設定してもまだオプトアウト**します。ほとんどのオン/オフ変数とは異なり;変数を設定解除してテレメトリをオンに戻します。テレメトリイベントにはコード、ファイルパス、bash コマンドなどのユーザーデータは含まれません。また、`DISABLE_GROWTHBOOK` と同じ効果で機能フラグ取得を無効にします。これにより、[リモートコントロール](/docs/ja/remote-control#requirements) および他の [機能フラグ取得が必要な機能](#features-that-need-feature-flag-fetching) が利用できなくなります。[組織のテレメトリをオフにする](/docs/ja/managed-settings#turn-telemetry-off-for-your-organization) を参照してください |

352| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | 任意のプライマリモデルで繰り返されるオーバーロードエラーの後にフォールバックモデルを停止するには、空でない値に設定します。v2.1.160 以降、設定された [フォールバックモデルチェーン](/docs/ja/model-config#fallback-model-chains) は任意のプライマリモデルで繰り返されるオーバーロードエラーでトリガーされるため、この変数はフォールバックモデルへの切り替えに影響しません |437| `DISABLE_UPDATES` | 手動 `claude update` および `claude install` を含むすべての更新をブロックするには、`1` に設定します。`DISABLE_AUTOUPDATER` より厳しい。独自のチャネルを経由して Claude Code を配布し、ユーザーが自己更新すべきでない場合に使用します |

353| `FORCE_AUTOUPDATE_PLUGINS` | メインのオートアップデーターが `DISABLE_AUTOUPDATER` で無効になっている場合でも、プラグインの自動更新を強制するには `1` に設定します |438| `DISABLE_UPGRADE_COMMAND` | `/upgrade` コマンドを非表示にするには、`1` に設定します |

354| `FORCE_HYPERLINK` | ターミナルがサポートしているが自動検出されていない場合、クリック可能な OSC 8 ハイパーリンクを有効にするには `1` に設定するか、`0` に設定して無効にします |439| `DO_NOT_TRACK` | `DISABLE_TELEMETRY` と同じ効果でテレメトリをオプトアウトするには、`1` に設定します。[リモートコントロール](/docs/ja/remote-control#requirements) および他の [機能フラグ取得が必要な機能](#features-that-need-feature-flag-fetching) が利用できなくなります。Claude Code はこの変数を標準ブール値として読み取るため、`0` はテレメトリをオンのままにし、多くの開発者 CLI で認識されるクロスツール規約として尊重します |

355| `FORCE_PROMPT_CACHING_5M` | 1 時間の TTL が適用される場合でも、5 分のプロンプトキャッシュ TTL を強制するには `1` に設定します。`ENABLE_PROMPT_CACHING_1H` をオーバーライドします |440| `ENABLE_BETA_TRACING_DETAILED` | `BETA_TRACING_ENDPOINT` と一緒に、[詳細ベータトレース](/docs/ja/monitoring-usage#traces-beta) をオンにするには、`1` に設定します。コンテンツを含むスパン属性と `claude_code.hook` スパンを追加します。対話型 CLI セッションでは、組織がベータ用にホワイトリストに登録されている必要があります。両方の変数は [プロジェクトおよびローカル設定](/docs/ja/settings-reference#variables-claude-code-ignores-in-env) では無視されます |

441| `ENABLE_CLAUDEAI_MCP_SERVERS` | Claude Code が [claude.ai MCP サーバー](/docs/ja/mcp#use-mcp-servers-from-claude-ai) をフェッチするのを停止するには、`false` に設定します。ログインしているユーザーではデフォルトで有効になります。プロジェクトごとまたは組織ごとに無効にするには、代わりに設定で [`disableClaudeAiConnectors`](/docs/ja/settings-reference#disableclaudeaiconnectors) を設定します |

442| `ENABLE_PROMPT_CACHING_1H` | デフォルトの 5 分の代わりに 1 時間の [プロンプトキャッシュ TTL](/docs/ja/prompt-caching#cache-lifetime) をリクエストするには、`1` に設定します。API キー、[Amazon Bedrock](/docs/ja/amazon-bedrock)、[Google Cloud の Agent Platform](/docs/ja/google-vertex-ai)、[Microsoft Foundry](/docs/ja/microsoft-foundry)、[Claude Platform on AWS](/docs/ja/claude-platform-on-aws) ユーザー向け。サブスクリプションユーザーは、含まれた使用内で [メイン会話](/docs/ja/prompt-caching#which-ttl-each-request-gets) で自動的に 1 時間の TTL を受け取ります。[使用クレジット](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) を引き出すサブスクリプションユーザーは、1 時間の TTL を保持するために設定できます。1 時間のキャッシュ書き込みはより高いレートで請求されます。リクエストバケットごとに TTL を選択するには、`CLAUDE_CODE_PROMPT_CACHE_TTL` および `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` を使用します。これらはこの変数よりも優先されます |

443| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | 非推奨。代わりに `ENABLE_PROMPT_CACHING_1H` を使用します |

444| `ENABLE_TOOL_SEARCH` | [MCP ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search) を制御します。設定されていない場合、Claude Code はデフォルトですべての MCP ツールを遅延させます。ただし、Google Cloud の Agent Platform モデルの Claude 4.5 世代より前のモデル、Azure でホストされている Microsoft Foundry デプロイメント、`ANTHROPIC_BASE_URL` がファーストパーティ以外のホストを指している場合は、先読みで読み込みます。`true` は常に遅延させ、ベータヘッダーを送信します。ただし、それらの同じ Agent Platform モデルおよび Microsoft Foundry デプロイメント以外;リクエストは `tool_reference` をサポートしないプロキシで失敗します。`auto` はツール定義がコンテキストの 10% 以内に収まる場合、先読みで読み込みます。`auto:N` はカスタムしきい値を設定します。例えば、5% の場合は `auto:5`。`false` はすべてのツールを先読みで読み込みます。自分で設定した値は `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` が設定されている場合は無視されます。v2.1.221 より前は、Claude Code は `true` に設定しない限り、Google Cloud の Agent Platform のすべてのモデルのツール検索を無効にしていました |

445| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | Claude Code が、フォールバックモデルが設定されていない場合、すべてのモデルで繰り返されたオーバーロードエラーで再試行を停止するようにするには、`1` などの空でない値に設定します。**`0` または `false` に設定してもまだこれを有効にします**。ほとんどのオン/オフ変数とは異なり;変数を設定解除してデフォルトの再試行動作を復元します。これがない場合、Claude Code は、API キーまたは [サードパーティプロバイダー](/docs/ja/third-party-integrations) ではなく Claude サブスクリプションで認証する場合、Opus、Fable、Mythos モデルとして認識するモデルでこの方法で再試行を停止します。Claude Code v2.1.160 以降では、Claude Code は繰り返されたオーバーロードエラーで設定された [フォールバックモデルチェーン](/docs/ja/model-config#fallback-model-chains) に切り替わるため、この変数はフォールバックモデルへの切り替えに影響しません |

446| `FORCE_AUTOUPDATE_PLUGINS` | メイン自動アップデーターが `DISABLE_AUTOUPDATER` を経由して無効になっている場合でも、プラグイン自動更新を強制するには、`1` に設定します |

447| `FORCE_HYPERLINK` | ターミナルがサポートしているが自動検出されない場合、クリック可能な OSC 8 ハイパーリンクを有効にするには `1` に設定するか、無効にするには `0` に設定します。設定されていない場合、Claude Code はターミナルサポートが検出された場合にのみハイパーリンクを有効にします。Claude Code はこの値を Boolean ではなく数値として解析するため、`false`、`no`、`off` などの値はハイパーリンクを無効にする代わりに有効にします。フッター [PR またはマージリクエストバッジ](/docs/ja/interactive-mode#pr-review-status) は、SSH 経由など Claude Code がターミナルサポートを検出できない場合でも、ハイパーリンクとしてレンダリングされます。バッジをプレーンテキストとしてレンダリングするには `0` に設定します |

448| `FORCE_PROMPT_CACHING_5M` | 1 時間の TTL がそれ以外の場合適用される場合でも、5 分のプロンプトキャッシュ TTL を強制するには、`1` に設定します。`CLAUDE_CODE_PROMPT_CACHE_TTL`、`CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`、`ENABLE_PROMPT_CACHING_1H`、および `promptCacheTtl` および `subagentPromptCacheTtl` 設定をオーバーライドします |

356| `HTTP_PROXY` | ネットワーク接続用の HTTP プロキシサーバーを指定します |449| `HTTP_PROXY` | ネットワーク接続用の HTTP プロキシサーバーを指定します |

357| `HTTPS_PROXY` | ネットワーク接続用の HTTPS プロキシサーバーを指定します |450| `HTTPS_PROXY` | ネットワーク接続用の HTTPS プロキシサーバーを指定します |

358| `IS_DEMO` | デモモードを有効にするには `1` に設定します:ヘッダーと `/status` 出力からメールと組織名を非表示にし、オンボーディングをスキップします。セッションをストリーミングまたは記録する場合に役立ちます |451| `IS_DEMO` | デモモードを有効にするには、`1` などの空でない値に設定します:ヘッダーおよび `/status` 出力からメールアドレスと組織名を非表示にし、オンボーディングをスキップします。**`0` または `false` に設定してもまだデモモードを有効にします**。ほとんどのオン/オフ変数とは異なり;変数を設定解除してオフにします。セッションをストリーミングまたは記録する場合に便利です |

359| `MAX_MCP_OUTPUT_TOKENS` | MCP ツール応答で許可される最大トークン数。Claude Code は出力が 10,000 トークンを超える場合に警告を表示します。[`anthropic/maxResultSizeChars`](/docs/ja/mcp#raise-the-limit-for-a-specific-tool) を宣言するツールはテキストコンテンツにその文字制限を使用しますが、これらのツールからの画像コンテンツはこの変数の対象です(デフォルト:25000) |452| `MAX_MCP_OUTPUT_TOKENS` | MCP ツール応答で許可される最大トークン数。Claude Code は出力が 10,000 トークンを超える場合に警告を表示します。[`anthropic/maxResultSizeChars`](/docs/ja/mcp#raise-the-limit-for-a-specific-tool) を宣言するツールは、テキストコンテンツにはその文字制限を使用しますが、それらのツールからの画像コンテンツはこの変数の対象です(デフォルト:25000) |

360| `MAX_STRUCTURED_OUTPUT_RETRIES` | 非対話モード(`-p` フラグ)で [`--json-schema`](/docs/ja/cli-reference#cli-flags) に対するモデルの応答検証が失敗した場合の再試行回数。デフォルト:5 |453| `MAX_STRUCTURED_OUTPUT_RETRIES` | 非対話モードで `-p` フラグを使用した [`--json-schema`](/docs/ja/cli-reference#cli-flags) に対する検証に失敗したモデルの応答に対して Claude Code が許可する試行回数;その後、有効な出力がない場合、実行は失敗します。[ワークフロー](/docs/ja/workflows) サブエージェントの構造化出力が検証に失敗した場合にも同じキャップが適用されます。デフォルト 5(最初の試行と 4 回の再試行) |

361| `MAX_THINKING_TOKENS` | [拡張思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) トークン予算をオーバーライドします。上限はモデルの [最大出力トークン](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison) から 1 を引いた値です。Anthropic API で思考を完全に無効にするには `0` に設定します。Fable 5 を除く。思考をオフにすることはできません。[サードパーティプロバイダー](/docs/ja/third-party-integrations) では、`0` 同様にパラメータを省略するため、2 つの変数はそこで同じ動作をします。[適応的推論](/docs/ja/model-config#adjust-effort-level) を備えたモデルでは、非ゼロ値の場合、`CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` を通じて適応的推論が無効にされない限り、予算は無視されます |454| `MAX_THINKING_TOKENS` | [拡張思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) の固定トークン予算。Claude Code はそれをリクエストの最大出力トークンより 1 トークン下にキャップし、1,024 未満にはしません。その制限がどのように設定されるかについては `CLAUDE_CODE_MAX_OUTPUT_TOKENS` を参照してください。設定されていない場合、[適応的推論](/docs/ja/model-config#adjust-effort-level) を持つモデルは独自の思考深度を選択し、他のモデルはキャップを使用します。Anthropic API で思考を無効にするには `0` に設定します。Fable モデルを除く。これらは思考をオフにすることはできません。[サードパーティプロバイダー](/docs/ja/third-party-integrations) では、`0` は `thinking` パラメーターを省略します。Anthropic API で思考がオフの場合、Claude Code は、Opus 5 などの [その組み合わせを受け入れないことが分かっているモデル](/docs/ja/errors#effort-isnt-available-with-thinking-turned-off) に努力 `high` を送信します。Claude Code は適応的推論モデルで非ゼロ値を無視します。ただし、`CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` が適応的推論をオフにするモデルを除く |

362| `MCP_CLIENT_SECRET` | [事前設定された認証情報](/docs/ja/mcp#use-pre-configured-oauth-credentials) が必要な MCP サーバーの OAuth クライアントシークレット。`--client-secret` でサーバーを追加するときに対話的なプロンプトを回避します |455| `MCP_CLIENT_SECRET` | [事前設定された認証情報](/docs/ja/mcp#use-pre-configured-oauth-credentials) が必要な MCP サーバー用の OAuth クライアントシークレット。`--client-secret` でサーバーを追加するときに対話型プロンプトを回避します |

363| `MCP_CONNECTION_NONBLOCKING` | スタートアップが最初のクエリの前に MCP サーバーの接続を待機するかどうかを制御します。Claude Code v2.1.142 以降、MCP スタートアップはデフォルトで非ブロッキングです:サーバーはバックグラウンドで接続し、完了するとそのツールが利用可能になります。`0` に設定してブロッキング 5 秒接続待機を復元します。[`alwaysLoad: true`](/docs/ja/mcp#exempt-a-server-from-deferral) で設定されたサーバーは、ツールが最初のプロンプトが構築されるときに存在する必要があるため、この設定に関係なく常にブロックします |456| `MCP_CONNECTION_NONBLOCKING` | スタートアップが最初のクエリの前に MCP サーバーが接続するのを待つかどうかを制御します。MCP スタートアップはデフォルトでノンブロッキングです:サーバーはバックグラウンドで接続し、完了するとそれらのツールが利用可能になります。スタートアップが最初のクエリの前にサーバーが接続するのを待つようにするには `0` に設定します。[`alwaysLoad: true`](/docs/ja/mcp#exempt-a-server-from-deferral) で設定されたサーバーは、[検出キャッシュ](/docs/ja/mcp#server-status-detail) から提供される場合を除き、この変数に関わらずスタートアップを待機させます。それらのツールは最初のプロンプトが構築されるときに存在する必要があります。非対話モード(`-p`)では、Claude Code は [`--mcp-config`](/docs/ja/cli-reference#cli-flags) を明示的に渡す場合、キャッシュされたサーバー例外を含む長いデッドラインで、最初のターンの前に保留中のサーバーを待機します;そのフラグのエントリを参照してください |

364| `MCP_CONNECT_TIMEOUT_MS` | ブロッキング MCP スタートアップが接続バッチを待機する時間(ミリ秒)。ツールリストをスナップショットする前のデフォルト:5000。`MCP_CONNECTION_NONBLOCKING=0` の場合、または [`alwaysLoad: true`](/docs/ja/mcp#exempt-a-server-from-deferral) でマークされたサーバーに適用されます。期限で保留中のサーバーはバックグラウンドで接続し続けますが、次のクエリまで表示されません。`MCP_TIMEOUT` とは異なります。これは個別のサーバーの接続試行を制限します |457| `MCP_CONNECT_TIMEOUT_MS` | ブロッキング MCP スタートアップが接続バッチを待機する時間(ミリ秒単位)。ツールリストをスナップショットする前に(デフォルト:5000)。`MCP_CONNECTION_NONBLOCKING=0` または [`alwaysLoad: true`](/docs/ja/mcp#exempt-a-server-from-deferral) でマークされたサーバーに適用されます。デッドラインで保留中のサーバーはバックグラウンドで接続し続けます。`MCP_TIMEOUT` とは異なります。これは個別のサーバーの接続試行をバウンドします |

365| `MCP_OAUTH_CALLBACK_PORT` | OAuth リダイレクトコールバック用の固定ポート。[事前設定された認証情報](/docs/ja/mcp#use-pre-configured-oauth-credentials) で MCP サーバーを追加する場合の `--callback-port` の代替 |458| `MCP_DISCOVERY_CACHE` | [MCP 検出キャッシュ](/docs/ja/mcp#server-status-detail) をオンまたはオフにします。キャッシュがオンの場合、以前に使用したリモート HTTP または SSE サーバーは [`cached` ステータス](/docs/ja/mcp#server-status-detail) を表示でき、Claude Code はスタートアップではなく最初のツール呼び出しで接続します。キャッシュはデフォルトではオフです。段階的なロールアウトがアカウントに対して有効にしていない限り。オンにするには `1` に設定するか、ロールアウトが有効にしている場合でもオフに保つには `0` に設定します。v2.1.238 より前は、キャッシュはデフォルトでオンでした。`cached` ステータスには Claude Code v2.1.221 以降が必要です |

366| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | スタートアップ中に並列接続するリモート MCP サーバー(HTTP/SSE)の最大数(デフォルト:20) |459| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | [検出キャッシュ](/docs/ja/mcp#server-status-detail) エントリの最大経過時間(秒単位)(デフォルト:14400、または 4 時間)。エントリがそれより古い開始では、Claude Code はそれを破棄し、スタートアップでサーバーを接続します。キャッシュがオフの場合と同様。Claude Code は値を 7 日でキャップします。v2.1.238 より前は、デフォルトは 86400(24 時間)で、Claude Code は値をキャップしませんでした |

367| `MCP_SERVER_CONNECTION_BATCH_SIZE` | スタートアップ中に並列接続するローカル MCP サーバー(stdio)の最大数(デフォルト:3) |460| `MCP_DISCOVERY_CACHE_STRIKES` | 開始時に [検出キャッシュ](/docs/ja/mcp#server-status-detail) エントリが `MCP_DISCOVERY_CACHE_TTL_S` より古い場合、Claude Code はバックグラウンドでリフレッシュします。この変数は、Claude Code がエントリを破棄し、次の開始時にサーバーを接続する代わりに、連続してリフレッシュが失敗できる回数を設定します(デフォルト:1)。ネットワーク接続が時々ドロップする場合は上げます。1 回の失敗したリフレッシュがエントリを破棄しないようにします。Claude Code v2.1.238 以降が必要です |

368| `MCP_TIMEOUT` | MCP サーバー起動のタイムアウト(ミリ秒)(デフォルト:30000、または 30 秒) |461| `MCP_DISCOVERY_CACHE_TTL_S` | Claude Code が [検出キャッシュ](/docs/ja/mcp#server-status-detail) エントリをリフレッシュせずに使用する秒数(デフォルト:900)。エントリがそれより古い開始では、Claude Code は引き続きそれを使用しますが、バックグラウンドでリフレッシュします。エントリが `MCP_DISCOVERY_CACHE_MAX_STALE_S` より古い場合、Claude Code はそれを破棄します。Claude Code は値を `MCP_DISCOVERY_CACHE_MAX_STALE_S`(デフォルト 4 時間)でキャップします。v2.1.238 より前は、Claude Code は値をキャップしませんでした |

369| `MCP_TOOL_TIMEOUT` | MCP ツール実行のタイムアウト(ミリ秒)(デフォルト:100000000、約 28 時間)。HTTP、SSE、WebSocket、または [claude.ai コネクター](/docs/ja/mcp#use-mcp-servers-from-claude-ai) MCP サーバーの場合、各リクエストはデフォルトで 60 秒後にもタイムアウトします。この変数またはサーバーごとの `timeout` を 60000 より上に設定して、そのリクエストごとの制限を引き上げます。低い値はまだ全体的なツール実行タイムアウトを短縮しますが、リクエストごとの制限は 60 秒のままです。stdio と WebSocket サーバーにはリクエストごとのタイマーがありません。`.mcp.json` のサーバーごとの `timeout` フィールドはそのサーバーのこれをオーバーライドします。サーバーごとの `timeout` が少なくとも 1000 の場合、そのサーバーのツール呼び出しの最小アイドルウィンドウも設定するため、`CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` はそれより早く中止しません。このフロアには Claude Code v2.1.203 以降が必須です。env 変数の場合、1000 未満の値は 1 秒にフロアされます。サーバーごとのフィールドの場合、1000 未満の値は無視されます |462| `MCP_OAUTH_CALLBACK_PORT` | [事前設定された認証情報](/docs/ja/mcp#use-pre-configured-oauth-credentials) を使用して MCP サーバーを追加するときの OAuth リダイレクトコールバック用の固定ポート。`--callback-port` の代替 |

370| `NO_PROXY` | リクエストが直接発行されるドメインと IP のリスト。プロキシをバイパスします |463| `MCP_PROTOCOL_NEGOTIATION` | [v2 MCP クライアントランタイム](/docs/ja/mcp#mcp-client-runtimes) でのみ、Claude Code が MCP プロトコルリビジョン 2026-07-28 のサーバーをプローブするかどうか。HTTP、claude.ai コネクター、stdio サーバーをプローブするには `auto` に設定します;プローブに応答しないサーバーは以前のプロトコルで接続します。SSE および WebSocket サーバーは常にそうします。すべてのサーバーのプローブをスキップするには `legacy` に設定します。変数がない場合、Claude Code は Claude Code v2.1.232 以降で HTTP および claude.ai コネクターサーバーをプローブします。[MCP クライアントランタイム](/docs/ja/mcp#mcp-client-runtimes) セクションがリストする例外を除く。他の値は警告付きで無視されます。Claude Code v2.1.221 以降が必要です |

371| `OTEL_LOG_ASSISTANT_RESPONSES` | モデルの応答テキストを `assistant_response` OpenTelemetry ログイベントに含めるには `1` に設定します。未設定の場合、`OTEL_LOG_USER_PROMPTS` の値が使用されます。`OTEL_LOG_USER_PROMPTS` が設定されている場合でも応答を編集したままにするには `0` に設定します。Claude Code v2.1.193 以降が必須です。[監視](/docs/ja/monitoring-usage#assistant-response-event) を参照してください |464| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | スタートアップ中に並列で接続するリモート MCP サーバー(HTTP/SSE)の最大数(デフォルト:20) |

372| `OTEL_LOG_RAW_API_BODIES` | Anthropic Messages API リクエストとレスポンス JSON を `api_request_body` / `api_response_body` ログイベントとして出力します。60 KB で切り詰められたインラインボディの場合は `1` に設定するか、切り詰められていないボディをディスクに書き込み、`body_ref` パスを出力する場合は `file:<dir>` に設定します。デフォルトでは無効です。ボディには会話履歴全体が含まれます。[監視](/docs/ja/monitoring-usage#api-request-body-event) を参照してください |465| `MCP_SDK_GENERATION` | このプロセスが MCP サーバーに接続する [MCP クライアントランタイム](/docs/ja/mcp#mcp-client-runtimes) をピン留めします:MCP TypeScript SDK 1.x で構築された `v1`、または [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/) で構築された `v2`。変数がない場合、Claude Code は Claude Code v2.1.232 以降で v2 を使用します。そのセクションが v1 を使用すると言う場所を除く。Claude Code v2.1.221 以降では、v2 ランタイムは MCP OAuth サーバーが認可応答で返す発行者をチェックし、一致しない場合、`Issuer mismatch in authorization response` で始まるエラーでサインインに失敗します。v1 ランタイムはこのチェックを実行しません。認識されない値を設定した場合、Claude Code はそれを無視し、デバッグログに警告を書き込みます。Claude Code はプロセスごとに値を 1 回読み取ります。Claude Code v2.1.218 以降が必要です |

373| `OTEL_LOG_TOOL_CONTENT` | ツール入力と出力コンテンツを OpenTelemetry スパンイベントに含めるには `1` に設定します。機密データを保護するためにデフォルトで無効です。[監視](/docs/ja/monitoring-usage) を参照してください |466| `MCP_SERVER_CONNECTION_BATCH_SIZE` | スタートアップ中に並列で接続するローカル MCP サーバー(stdio)の最大数(デフォルト:3) |

374| `OTEL_LOG_TOOL_DETAILS` | ツール入力引数、MCP サーバー名、ユーザー作成ワークフロー名、ツール失敗時の生エラー文字列、`api_refusal` イベントの拒否 `category`、その他のツール詳細を OpenTelemetry トレースとログに含めるには `1` に設定します。PII を保護するためにデフォルトで無効です。[監視](/docs/ja/monitoring-usage) を参照してください |467| `MCP_TIMEOUT` | MCP サーバースタートアップのタイムアウト(ミリ秒単位)(デフォルト:30000、または 30 秒) |

375| `OTEL_LOG_USER_PROMPTS` | ユーザープロンプトテキストを OpenTelemetry トレースとログに含めるには `1` に設定します。デフォルトで無効です(プロンプトは編集されます)。[監視](/docs/ja/monitoring-usage) を参照してください |468| `MCP_TOOL_TIMEOUT` | MCP ツール実行のタイムアウト(ミリ秒単位)(デフォルト:100000000、約 28 時間)。HTTP、SSE、claude.ai コネクターサーバーの場合、各リクエストもデフォルトで 60 秒後にタイムアウトします;この変数またはサーバーごとの `timeout` を 60000 以上に設定して、そのリクエストごとの制限を上げます。低い値はまだ全体的なツール実行タイムアウトを短縮しますが、リクエストごとの制限を 60 秒のままにします。Stdio および WebSocket サーバーにはリクエストごとのタイマーがありません。`.mcp.json` のサーバーごとの `timeout` フィールドはそのサーバーのこれをオーバーライドします。少なくとも 1000 のサーバーごとの `timeout` はそのサーバーのツール呼び出しの最小アイドルウィンドウも設定するため、`CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` はそれらを早期に中止しません;このフロアには Claude Code v2.1.203 以降が必要です。環境変数の場合、1000 未満の値は 1 秒にフロアされます;サーバーごとのフィールドの場合、1000 未満の値は無視されます |

469| `NO_PROXY` | リクエストが直接発行される、プロキシをバイパスするドメインおよび IP のリスト |

470| `OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT` | 属性値長の標準 OpenTelemetry SDK 制限。Claude Code はコンテンツを含むテレメトリ属性をこれと `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` の小さい方でキャップするため、切り詰めマーカーは SDK 制限内に留まります。Claude Code は `OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT` および `OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT` バリアントを同じ方法で読み取り、設定された最小値がすべてのシグナルに適用されます。Claude Code v2.1.214 以降が必要です。[監視](/docs/ja/monitoring-usage#common-configuration-variables) を参照してください |

471| `OTEL_LOG_ASSISTANT_RESPONSES` | `assistant_response` OpenTelemetry ログイベントにモデルの応答テキストを含めるには `1` に設定します。設定されていない場合、`OTEL_LOG_USER_PROMPTS` の値が使用されます。`OTEL_LOG_USER_PROMPTS` が設定されている場合でも応答を編集のままにするには `0` に設定します。Claude Code v2.1.193 以降が必要です。[監視](/docs/ja/monitoring-usage#assistant-response-event) を参照してください |

472| `OTEL_LOG_RAW_API_BODIES` | Anthropic Messages API リクエストおよび応答 JSON を `api_request_body` / `api_response_body` ログイベントとして発行します。インラインで切り詰められた本体の場合は `1` に設定するか、切り詰められていない本体をディスクに書き込み、`body_ref` パスを発行するには `file:<dir>` に設定します。`CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` はコンテンツ制限を設定します。デフォルト 60 KB。デフォルトで無効;本体は会話履歴全体を含みます。シェル、ユーザー設定、または管理設定で設定します。[プロジェクトおよびローカル設定](/docs/ja/settings-reference#variables-claude-code-ignores-in-env) では無視されます。[監視](/docs/ja/monitoring-usage#api-request-body-event) を参照してください |

473| `OTEL_LOG_TOOL_CONTENT` | OpenTelemetry スパンイベントにツール入力および出力コンテンツを含めるには `1` に設定します。機密データを保護するためにデフォルトで無効。[監視](/docs/ja/monitoring-usage) を参照してください |

474| `OTEL_LOG_TOOL_DETAILS` | OpenTelemetry トレースおよびログにツール入力引数、MCP サーバー名、ユーザー作成ワークフロー名、ツール失敗時の生エラー文字列、`api_refusal` イベントの拒否 `category`、その他のツール詳細を含めるには `1` に設定します。PII を保護するためにデフォルトで無効。[監視](/docs/ja/monitoring-usage) を参照してください |

475| `OTEL_LOG_USER_PROMPTS` | OpenTelemetry トレースおよびログにユーザープロンプトテキストを含めるには `1` に設定します。デフォルトで無効(プロンプトは編集されます)。[監視](/docs/ja/monitoring-usage) を参照してください |

376| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | メトリクス属性からアカウント UUID を除外するには `false` に設定します(デフォルト:含まれます)。[監視](/docs/ja/monitoring-usage) を参照してください |476| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | メトリクス属性からアカウント UUID を除外するには `false` に設定します(デフォルト:含まれます)。[監視](/docs/ja/monitoring-usage) を参照してください |

377| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | セッションエントリポイントをメトリクス属性に含めるには `true` に設定します(デフォルト:除外)。v2.1.152 で追加されました。[監視](/docs/ja/monitoring-usage) を参照してください |477| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | メトリクス属性にセッションエントリポイントを含めるには `true` に設定します(デフォルト:除外)。v2.1.152 で追加されました。[監視](/docs/ja/monitoring-usage) を参照してください |

378| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | v2.1.161 以降、Claude Code は `OTEL_RESOURCE_ATTRIBUTES` キーをメトリクスデータポイントラベルに添付します。除外するには `false` に設定します(デフォルト:含まれます)。[監視](/docs/ja/monitoring-usage#multi-team-organization-support) を参照してください |478| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | v2.1.161 以降、Claude Code は `OTEL_RESOURCE_ATTRIBUTES` キーをメトリクスデータポイントラベルに添付します。除外するには `false` に設定します(デフォルト:含まれます)。[監視](/docs/ja/monitoring-usage#multi-team-organization-support) を参照してください |

379| `OTEL_METRICS_INCLUDE_SESSION_ID` | メトリクス属性からセッション ID を除外するには `false` に設定します(デフォルト:含まれます)。[監視](/docs/ja/monitoring-usage) を参照してください |479| `OTEL_METRICS_INCLUDE_SESSION_ID` | メトリクス属性からセッション ID を除外するには `false` に設定します(デフォルト:含まれます)。[監視](/docs/ja/monitoring-usage) を参照してください |

380| `OTEL_METRICS_INCLUDE_VERSION` | Claude Code バージョンをメトリクス属性に含めるには `true` に設定します(デフォルト:除外)。[監視](/docs/ja/monitoring-usage) を参照してください |480| `OTEL_METRICS_INCLUDE_VERSION` | メトリクス属性に Claude Code バージョンを含めるには `true` に設定します(デフォルト:除外)。[監視](/docs/ja/monitoring-usage) を参照してください |

381| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | [Skill ツール](/docs/ja/skills#control-who-invokes-a-skill) に表示されるスキルメタデータの文字予算をオーバーライドします。予算はコンテキストウィンドウの 1% で動的にスケーリングされ、フォールバックは 8,000 文字です。後方互換性のために従来の名前が保持されています |481| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | [スキルツール](/docs/ja/skills#control-who-invokes-a-skill) に表示されるスキルメタデータの文字予算をオーバーライドします。予算はコンテキストウィンドウの 1% で動的にスケーリングされ、フォールバックは 8,000 文字です。後方互換性のために保持されたレガシー名 |

382| `TASK_MAX_OUTPUT_LENGTH` | 切り詰め前の [subagent](/docs/ja/sub-agents) 出力の最大文字数(デフォルト:32000、最大:160000)。切り詰められた場合、完全な出力はディスクに保存され、パスは切り詰められた応答に含まれます |482| `TASK_MAX_OUTPUT_LENGTH` | [バックグラウンドタスク](/docs/ja/tools-reference#background-commands) の出力の最大文字数。`TaskOutput` ツールが保持します(デフォルト:32000;最大:160000)。[`taskOutputMaxChars`](/docs/ja/settings-reference#taskoutputmaxchars) 設定を設定した場合、Claude Code はこの変数を無視します |

383| `USE_BUILTIN_RIPGREP` | Claude Code に含まれる `rg` の代わりにシステムにインストールされた `rg` を使用するには `0` に設定します |483| `USE_BUILTIN_RIPGREP` | Claude Code に含まれる `rg` の代わりにシステムインストール `rg` を使用するには、`0` に設定します |

384| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | Google Cloud's Agent Platform を使用する場合、Claude 3.5 Haiku のリージョンをオーバーライドします |484| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | Google Cloud の Agent Platform を使用する場合、Claude 3.5 Haiku のリージョンをオーバーライドします |

385| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Google Cloud's Agent Platform を使用する場合、Claude 3.5 Sonnet のリージョンをオーバーライドします |485| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Google Cloud の Agent Platform を使用する場合、Claude 3.5 Sonnet のリージョンをオーバーライドします |

386| `VERTEX_REGION_CLAUDE_3_7_SONNET` | Google Cloud's Agent Platform を使用する場合、Claude 3.7 Sonnet のリージョンをオーバーライドします |486| `VERTEX_REGION_CLAUDE_3_7_SONNET` | Google Cloud の Agent Platform を使用する場合、Claude 3.7 Sonnet のリージョンをオーバーライドします |

387| `VERTEX_REGION_CLAUDE_4_0_OPUS` | Google Cloud's Agent Platform を使用する場合、Claude 4.0 Opus のリージョンをオーバーライドします |487| `VERTEX_REGION_CLAUDE_4_0_OPUS` | Google Cloud の Agent Platform を使用する場合、Claude 4.0 Opus のリージョンをオーバーライドします |

388| `VERTEX_REGION_CLAUDE_4_0_SONNET` | Google Cloud's Agent Platform を使用する場合、Claude 4.0 Sonnet のリージョンをオーバーライドします |488| `VERTEX_REGION_CLAUDE_4_0_SONNET` | Google Cloud の Agent Platform を使用する場合、Claude 4.0 Sonnet のリージョンをオーバーライドします |

389| `VERTEX_REGION_CLAUDE_4_1_OPUS` | Google Cloud's Agent Platform を使用する場合、Claude 4.1 Opus のリージョンをオーバーライドします |489| `VERTEX_REGION_CLAUDE_4_1_OPUS` | Google Cloud の Agent Platform を使用する場合、Claude 4.1 Opus のリージョンをオーバーライドします |

390| `VERTEX_REGION_CLAUDE_4_5_OPUS` | Google Cloud's Agent Platform を使用する場合、Claude Opus 4.5 のリージョンをオーバーライドします |490| `VERTEX_REGION_CLAUDE_4_5_OPUS` | Google Cloud の Agent Platform を使用する場合、Claude Opus 4.5 のリージョンをオーバーライドします |

391| `VERTEX_REGION_CLAUDE_4_5_SONNET` | Google Cloud's Agent Platform を使用する場合、Claude Sonnet 4.5 のリージョンをオーバーライドします |491| `VERTEX_REGION_CLAUDE_4_5_SONNET` | Google Cloud の Agent Platform を使用する場合、Claude Sonnet 4.5 のリージョンをオーバーライドします |

392| `VERTEX_REGION_CLAUDE_4_6_OPUS` | Google Cloud's Agent Platform を使用する場合、Claude Opus 4.6 のリージョンをオーバーライドします |492| `VERTEX_REGION_CLAUDE_4_6_OPUS` | Google Cloud の Agent Platform を使用する場合、Claude Opus 4.6 のリージョンをオーバーライドします |

393| `VERTEX_REGION_CLAUDE_4_6_SONNET` | Google Cloud's Agent Platform を使用する場合、Claude Sonnet 4.6 のリージョンをオーバーライドします |493| `VERTEX_REGION_CLAUDE_4_6_SONNET` | Google Cloud の Agent Platform を使用する場合、Claude Sonnet 4.6 のリージョンをオーバーライドします |

394| `VERTEX_REGION_CLAUDE_4_7_OPUS` | Google Cloud's Agent Platform を使用する場合、Claude Opus 4.7 のリージョンをオーバーライドします。v2.1.111 で追加されました |494| `VERTEX_REGION_CLAUDE_4_7_OPUS` | Google Cloud の Agent Platform を使用する場合、Claude Opus 4.7 のリージョンをオーバーライドします |

395| `VERTEX_REGION_CLAUDE_4_8_OPUS` | Google Cloud's Agent Platform を使用する場合、Claude Opus 4.8 のリージョンをオーバーライドします。v2.1.154 で追加されました |495| `VERTEX_REGION_CLAUDE_4_8_OPUS` | Google Cloud の Agent Platform を使用する場合、Claude Opus 4.8 のリージョンをオーバーライドします |

396| `VERTEX_REGION_CLAUDE_5_SONNET` | Google Cloud's Agent Platform を使用する場合、Claude Sonnet 5 のリージョンをオーバーライドします。v2.1.197 で追加されました |496| `VERTEX_REGION_CLAUDE_5_OPUS` | Google Cloud の Agent Platform を使用する場合、Claude Opus 5 のリージョンをオーバーライドします。v2.1.219 で追加されました |

397| `VERTEX_REGION_CLAUDE_FABLE_5` | Google Cloud's Agent Platform を使用する場合、Claude Fable 5 のリージョンをオーバーライドします。v2.1.170 で追加されました |497| `VERTEX_REGION_CLAUDE_5_SONNET` | Google Cloud の Agent Platform を使用する場合、Claude Sonnet 5 のリージョンをオーバーライドします。v2.1.197 で追加されました |

398| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | Google Cloud's Agent Platform を使用する場合、Claude Haiku 4.5 のリージョンをオーバーライドします |498| `VERTEX_REGION_CLAUDE_FABLE_5` | Google Cloud の Agent Platform を使用する場合、Claude Fable 5 のリージョンをオーバーライドします。v2.1.170 で追加されました |

399 499| `VERTEX_REGION_CLAUDE_FABLE_5_1` | Google Cloud の Agent Platform を使用する場合、Claude Fable 5.1 のリージョンをオーバーライドします。v2.1.257 で追加されました |

400標準 OpenTelemetry エクスポーター変数(`OTEL_METRICS_EXPORTER`、`OTEL_LOGS_EXPORTER`、`OTEL_EXPORTER_OTLP_ENDPOINT`、`OTEL_EXPORTER_OTLP_PROTOCOL`、`OTEL_EXPORTER_OTLP_HEADERS`、`OTEL_METRIC_EXPORT_INTERVAL`、`OTEL_RESOURCE_ATTRIBUTES`、およびシグナル固有のバリアント)もサポートされています。設定の詳細は [監視](/docs/ja/monitoring-usage) を参照してください。500| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | Google Cloud の Agent Platform を使用する場合、Claude Haiku 4.5 のリージョンをオーバーライドします |

501 

502標準 OpenTelemetry エクスポーター変数(`OTEL_METRICS_EXPORTER`、`OTEL_LOGS_EXPORTER`、`OTEL_EXPORTER_OTLP_ENDPOINT`、`OTEL_EXPORTER_OTLP_PROTOCOL`、`OTEL_EXPORTER_OTLP_HEADERS`、`OTEL_METRIC_EXPORT_INTERVAL`、`OTEL_RESOURCE_ATTRIBUTES`、およびシグナル固有のバリアント)もサポートされています。設定の詳細については [監視](/docs/ja/monitoring-usage) を参照してください。

503 

504<h2 id="features-that-need-feature-flag-fetching">

505 フィーチャーフラグの取得が必要なフィーチャー

506</h2>

507 

508Claude Code は Anthropic から取得するフィーチャーフラグを通じて、いくつかのフィーチャーをオンにします。Claude Code は以下のセッションではその取得をスキップします。

509 

510* `DISABLE_GROWTHBOOK`、`DISABLE_TELEMETRY`、`DO_NOT_TRACK`、または `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` を設定したセッション。各変数の [変数テーブル](#variables) の行に、どの値が取得をオフにするかが記載されています

511* Amazon Bedrock、Claude Platform on AWS、Google Cloud の Agent Platform、Microsoft Foundry などの [サードパーティプロバイダー](/docs/ja/third-party-integrations) 上のセッション。ただし、Claude Code を埋め込むホストプラットフォームが `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` を設定している場合を除きます

512* [Claude apps gateway](/docs/ja/claude-apps-gateway) セッション

513 

514取得がオフの場合、以下のことはできません。

515 

516* Pro、Max、Team プランで [デフォルトでセッションをオートモードで開始する](/docs/ja/permission-modes#which-mode-a-session-starts-in)

517* VS Code 拡張機能が [開始権限モードの設定ファイルを読み込む](/docs/ja/permission-modes#switch-permission-modes)

518* [`/auto-mode-setup`](/docs/ja/auto-mode-config#generate-environment-entries) を実行して `autoMode.environment` エントリを作成する

519* [Remote Control](/docs/ja/remote-control#requirements) を使用する

520* [このマシン以外のセッションにメッセージを送信する](/docs/ja/cross-session-messaging#message-sessions-on-other-machines)。このマシン上のセッション間のメッセージングは取得がオフでも機能します

521* [`claude import` または `/import` コマンド](/docs/ja/cli-reference#cli-commands) を実行する

522* [`/skill-doctor`](/docs/ja/skills#find-unused-skills) を実行するか、`/plugin` **Stats** タブでそのレポートを開く

523* [アドバイザーツール](/docs/ja/advisor#requirements) を使用する

524* [アーティファクトのコメント](/docs/ja/artifacts#collect-comments-on-an-artifact) を読むまたは返信する

525* `MCP_SDK_GENERATION` と `MCP_PROTOCOL_NEGOTIATION` を設定せずに [v2 MCP クライアントランタイム](/docs/ja/mcp#mcp-client-runtimes) とそのプロトコルプローブを取得する。Claude Code は `MCP_SDK_GENERATION=v2` を設定しない限り v1 ランタイムを使用し、`MCP_PROTOCOL_NEGOTIATION=auto` を設定しない限りプローブをスキップします

526* Git Bash がインストールされている Windows 上の claude.ai および Console アカウント向けに [PowerShell ツール](/docs/ja/tools-reference#powershell-tool) をデフォルトで取得する。Claude Code は `CLAUDE_CODE_USE_POWERSHELL_TOOL=1` を設定しない限り、シェルコマンドを Git Bash 経由でルーティングします。Git Bash がない Windows では、ツールはオンのままです

527* [Claude が作成したフィードバック](/docs/ja/tools-reference#sendfeedback-tool-behavior) を取得する。Claude Code はこれを取得されたフラグを通じてオンにします

528* Claude Code が [入力スキーマを API が拒否する MCP ツールを除外する](/docs/ja/mcp#tools-with-invalid-input-schemas) ことができない。スキーマを送信してしまい、それを含むリクエストは [ツールをその位置で名前付けする 400 エラー](/docs/ja/errors#tool-input-schema-is-invalid) で失敗します

529 

530<h3 id="first-session-after-an-install-or-upgrade">

531 インストールまたはアップグレード後の最初のセッション

532</h3>

533 

534Claude Code をインストールした後、またはフィーチャーを追加するバージョンにアップグレードした後の最初のセッションでは、[フラグゲートされたフィーチャー](#features-that-need-feature-flag-fetching) が欠落する可能性があり、セッションは通常はオートモードで開始するプランでも Manual モードで開始する可能性があります。Claude Code はそのセッション中にフラグを取得するため、次のセッションではどちらも存在します。

535 

536新規インストール後、`claude -p`、Agent SDK、VS Code 拡張機能などの非対話型セッションでは、Claude Code は [開始権限モードを選択する](/docs/ja/permission-modes#which-mode-a-session-starts-in) 前にフラグを取得できます。

401 537 

402<h2 id="see-also">538<h2 id="see-also">

403 関連項目539 関連項目

errors.md +423 −25

Details

69| `OAuth token revoked` / `OAuth token has expired` | [認証](#oauth-token-revoked-or-expired) |69| `OAuth token revoked` / `OAuth token has expired` | [認証](#oauth-token-revoked-or-expired) |

70| `API Error: 401 Invalid authentication credentials` | [認証](#api-error-401-invalid-authentication-credentials) |70| `API Error: 401 Invalid authentication credentials` | [認証](#api-error-401-invalid-authentication-credentials) |

71| `Login expired · Please run /login` | [認証](#login-expired) |71| `Login expired · Please run /login` | [認証](#login-expired) |

72| `Not signed in to the Cloud gateway — run /login.` | [認証](#administrator-policy-requires-a-cloud-gateway-sign-in) |

73| `Administrator policy requires a Cloud gateway sign-in on this machine` | [認証](#administrator-policy-requires-a-cloud-gateway-sign-in) |

72| `Failed to authenticate: OAuth session expired and could not be refreshed` | [認証](#login-expired) |74| `Failed to authenticate: OAuth session expired and could not be refreshed` | [認証](#login-expired) |

73| `Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted` | [認証](#your-account-is-on-hold) |75| `Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted` | [認証](#your-account-is-on-hold) |

74| `Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted` | [認証](#your-account-is-on-hold) |76| `Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted` | [認証](#your-account-is-on-hold) |


81| `Cloud gateway <url> no longer accepts this session` | [認証](#cloud-gateway-session-expired) |83| `Cloud gateway <url> no longer accepts this session` | [認証](#cloud-gateway-session-expired) |

82| `AWS credentials expired or invalid` | [認証](#aws-credentials-expired-or-invalid) |84| `AWS credentials expired or invalid` | [認証](#aws-credentials-expired-or-invalid) |

83| `AWS authentication failed` | [認証](#aws-authentication-failed) |85| `AWS authentication failed` | [認証](#aws-authentication-failed) |

86| `Could not load AWS credentials` / `Could not load Google Cloud credentials` | [認証](#could-not-load-aws-or-google-cloud-credentials) |

84| `AWS default-chain credential resolve timed out` | [認証](#aws-default-chain-credential-resolve-timed-out) |87| `AWS default-chain credential resolve timed out` | [認証](#aws-default-chain-credential-resolve-timed-out) |

85| `Could not load the default credentials` on Google Cloud's Agent Platform | [自動再試行](#automatic-retries) |88| `Timed out after 60s waiting for AWS` | [認証](#bedrock-setup-verification-timed-out-waiting-for-aws) |

89| `A request to AWS timed out. Check your network and proxy settings, then try again.` | [認証](#bedrock-setup-verification-timed-out-waiting-for-aws) |

90| `Could not load the default credentials` on Google Cloud's Agent Platform | [認証](#could-not-load-aws-or-google-cloud-credentials) |

86| `Unable to connect to API` | [ネットワーク](#unable-to-connect-to-api) |91| `Unable to connect to API` | [ネットワーク](#unable-to-connect-to-api) |

87| `Connection refused —` / `Can't reach the API server —` / `No internet route —` / `Couldn't connect through your proxy` / `Connection dropped`、各々括弧内のエラーコードで終わる | [ネットワーク](#unable-to-connect-to-api) |92| `Connection refused —` / `Can't reach the API server —` / `No internet route —` / `Couldn't connect through your proxy` / `Connection dropped`、各々括弧内のエラーコードで終わる | [ネットワーク](#unable-to-connect-to-api) |

88| `Unable to connect to Anthropic services` during setup | [ネットワーク](#unable-to-connect-to-anthropic-services) |93| `Unable to connect to Anthropic services` during setup | [ネットワーク](#unable-to-connect-to-anthropic-services) |


93| `Bedrock streaming response has content-type "..."; expected "application/vnd.amazon.eventstream"` | [ネットワーク](#bedrock-streaming-response-has-an-unexpected-content-type) |98| `Bedrock streaming response has content-type "..."; expected "application/vnd.amazon.eventstream"` | [ネットワーク](#bedrock-streaming-response-has-an-unexpected-content-type) |

94| `SSL certificate verification failed` | [ネットワーク](#ssl-certificate-errors) |99| `SSL certificate verification failed` | [ネットワーク](#ssl-certificate-errors) |

95| `SSL certificate error (...)` during login or startup | [ネットワーク](#ssl-certificate-errors) |100| `SSL certificate error (...)` during login or startup | [ネットワーク](#ssl-certificate-errors) |

101| `unable to get local issuer certificate` | [ネットワーク](#ssl-certificate-errors) |

96| `403` with `x-deny-reason: host_not_allowed` in a cloud or routine session | [ネットワーク](#host-not-allowed-in-a-cloud-session) |102| `403` with `x-deny-reason: host_not_allowed` in a cloud or routine session | [ネットワーク](#host-not-allowed-in-a-cloud-session) |

97| `proxy refused the connection` | [ネットワーク](#the-proxy-refused-the-connection) |103| `proxy refused the connection` | [ネットワーク](#the-proxy-refused-the-connection) |

98| `403` with `This GraphQL query is not enabled for this session` in a cloud session | [GitHub proxy](/docs/ja/cloud-environments#github-proxy) |104| `403` with `This GraphQL query is not enabled for this session` in a cloud session | [GitHub proxy](/docs/ja/cloud-environments#github-proxy) |


109| `upstream rejected the request` / `request too large for this upstream` on a Claude apps gateway session | [Upstream error messages](/docs/ja/claude-apps-gateway-config#upstream-error-messages) |115| `upstream rejected the request` / `request too large for this upstream` on a Claude apps gateway session | [Upstream error messages](/docs/ja/claude-apps-gateway-config#upstream-error-messages) |

110| `upstream rate limit exceeded` on a Claude apps gateway session | [Upstream error messages](/docs/ja/claude-apps-gateway-config#upstream-error-messages) |116| `upstream rate limit exceeded` on a Claude apps gateway session | [Upstream error messages](/docs/ja/claude-apps-gateway-config#upstream-error-messages) |

111| `all upstreams failed (N attempted)` on a Claude apps gateway session | [Upstream error messages](/docs/ja/claude-apps-gateway-config#upstream-error-messages) |117| `all upstreams failed (N attempted)` on a Claude apps gateway session | [Upstream error messages](/docs/ja/claude-apps-gateway-config#upstream-error-messages) |

118| `Claude Code may not be enabled for your organization` after a Claude apps gateway sign-in | [Claude apps gateway troubleshooting](/docs/ja/claude-apps-gateway-deploy#troubleshooting) |

112| `Context exceeds the ...-token limit by ... tokens` in `/context` output | [リクエストエラー](#context-exceeds-the-token-limit) |119| `Context exceeds the ...-token limit by ... tokens` in `/context` output | [リクエストエラー](#context-exceeds-the-token-limit) |

113| `Error during compaction: Conversation too long` | [リクエストエラー](#error-during-compaction-conversation-too-long) |120| `Error during compaction: Conversation too long` | [リクエストエラー](#error-during-compaction-conversation-too-long) |

114| `Request too large` | [リクエストエラー](#request-too-large) |121| `Request too large` | [リクエストエラー](#request-too-large) |


120| `API Error: 400 ... tools.N.custom.input_schema: JSON schema is invalid` / `Property keys should match pattern` | [リクエストエラー](#tool-input-schema-is-invalid) |127| `API Error: 400 ... tools.N.custom.input_schema: JSON schema is invalid` / `Property keys should match pattern` | [リクエストエラー](#tool-input-schema-is-invalid) |

121| `There's an issue with the selected model` | [リクエストエラー](#theres-an-issue-with-the-selected-model) |128| `There's an issue with the selected model` | [リクエストエラー](#theres-an-issue-with-the-selected-model) |

122| `Model ... is not a recognized model id` | [リクエストエラー](#model-is-not-a-recognized-model-id) |129| `Model ... is not a recognized model id` | [リクエストエラー](#model-is-not-a-recognized-model-id) |

130| `Model ... not found` | [リクエストエラー](#model-not-found) |

123| `Claude Opus is not available with the Claude Pro plan` | [リクエストエラー](#claude-opus-is-not-available-with-the-claude-pro-plan) |131| `Claude Opus is not available with the Claude Pro plan` | [リクエストエラー](#claude-opus-is-not-available-with-the-claude-pro-plan) |

124| `Claude Code ... does not support this model; version ... or newer is required` | [リクエストエラー](#claude-code-does-not-support-this-model) |132| `Claude Code ... does not support this model; version ... or newer is required` | [リクエストエラー](#claude-code-does-not-support-this-model) |

133| `Claude Code ... is older than the minimum version required by your organization's policy` | [リクエストエラー](#claude-code-does-not-support-this-model) |

125| `Model ... is restricted by your organization's settings` | [リクエストエラー](#model-is-restricted-by-your-organizations-settings) |134| `Model ... is restricted by your organization's settings` | [リクエストエラー](#model-is-restricted-by-your-organizations-settings) |

126| `Model switch ... blocked by a PreModelSwitch hook` | [リクエストエラー](#model-switch-was-blocked-by-a-premodelswitch-hook) |135| `Model switch ... blocked by a PreModelSwitch hook` | [リクエストエラー](#model-switch-was-blocked-by-a-premodelswitch-hook) |

136| `couldn't save it as your default` / `couldn't confirm it was saved as your default` | [リクエストエラー](#couldnt-save-it-as-your-default) |

127| `thinking.type.enabled is not supported for this model` | [リクエストエラー](#thinking-type-enabled-is-not-supported-for-this-model) |137| `thinking.type.enabled is not supported for this model` | [リクエストエラー](#thinking-type-enabled-is-not-supported-for-this-model) |

128| `Effort '<level>' isn't available with thinking turned off on this model` | [リクエストエラー](#effort-isnt-available-with-thinking-turned-off) |138| `Effort '<level>' isn't available with thinking turned off on this model` | [リクエストエラー](#effort-isnt-available-with-thinking-turned-off) |

129| `effort '<level>' is not supported when thinking is disabled` | [リクエストエラー](#effort-isnt-available-with-thinking-turned-off) |139| `effort '<level>' is not supported when thinking is disabled` | [リクエストエラー](#effort-isnt-available-with-thinking-turned-off) |


144| `Error: Invalid --agents configuration:` | [コマンドラインエラー](#invalid-agents-configuration) |154| `Error: Invalid --agents configuration:` | [コマンドラインエラー](#invalid-agents-configuration) |

145| `Error: Settings file exceeds the 2MiB limit` | [コマンドラインエラー](#settings-file-exceeds-the-2mib-limit) |155| `Error: Settings file exceeds the 2MiB limit` | [コマンドラインエラー](#settings-file-exceeds-the-2mib-limit) |

146| `The current directory no longer exists (it was deleted or moved)` / `Can't read the current directory` | [コマンドラインエラー](#the-current-directory-no-longer-exists) |156| `The current directory no longer exists (it was deleted or moved)` / `Can't read the current directory` | [コマンドラインエラー](#the-current-directory-no-longer-exists) |

157| `couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded` | [コマンドラインエラー](#directory-couldnt-be-resolved-to-a-real-location) |

147| `Error: Workspace not trusted` when starting Remote Control | [コマンドラインエラー](#workspace-not-trusted-when-starting-remote-control) |158| `Error: Workspace not trusted` when starting Remote Control | [コマンドラインエラー](#workspace-not-trusted-when-starting-remote-control) |

148| `` `<flag>` before `remote-control` is not carried over to the sessions Remote Control starts `` | [コマンドラインエラー](#not-carried-over-to-the-sessions-remote-control-starts) |159| `` `<flag>` before `remote-control` is not carried over to the sessions Remote Control starts `` | [コマンドラインエラー](#not-carried-over-to-the-sessions-remote-control-starts) |

149| `` `claude import` is not yet available in this build `` | [コマンドラインエラー](#claude-import-is-not-yet-available-in-this-build) |160| `` `claude import` is not yet available in this build `` | [コマンドラインエラー](#claude-import-is-not-yet-available-in-this-build) |

150| `Could not read Claude Code config` | [コマンドラインエラー](#could-not-read-claude-code-config) |161| `Could not read Claude Code config` | [コマンドラインエラー](#could-not-read-claude-code-config) |

151| `Could not import <server>: <reason>` | [コマンドラインエラー](#could-not-import-a-server-from-claude-desktop) |162| `Could not import <server>: <reason>` | [コマンドラインエラー](#could-not-import-a-server-from-claude-desktop) |

163| `Cannot add MCP server to scope: managed` | [コマンドラインエラー](#cannot-add-mcp-server-to-the-managed-scope) |

152| `is Anthropic-hosted and doesn't support local OAuth` | [コマンドラインエラー](#anthropic-hosted-and-doesnt-support-local-oauth) |164| `is Anthropic-hosted and doesn't support local OAuth` | [コマンドラインエラー](#anthropic-hosted-and-doesnt-support-local-oauth) |

165| `Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes` | [コマンドラインエラー](#cant-read-mcp-json) |

153| `Server rejected the Authorization header minted by the configured headersHelper` | [コマンドラインエラー](#server-rejected-the-authorization-header-minted-by-the-configured-headershelper) |166| `Server rejected the Authorization header minted by the configured headersHelper` | [コマンドラインエラー](#server-rejected-the-authorization-header-minted-by-the-configured-headershelper) |

154| `Error: MCP tool <name> (passed via --permission-prompt-tool) not found` | [コマンドラインエラー](#mcp-permission-prompt-tool-not-found) |167| `Error: MCP tool <name> (passed via --permission-prompt-tool) not found` | [コマンドラインエラー](#mcp-permission-prompt-tool-not-found) |

168| `OAuth callback port <port> is already in use — another process may be holding it` | [コマンドラインエラー](#oauth-callback-port-is-already-in-use) |

155| `Shell command failed for pattern "..."`, from `/security-review` or any skill that injects dynamic context | [コマンドラインエラー](#security-review-fails-without-origin-head) |169| `Shell command failed for pattern "..."`, from `/security-review` or any skill that injects dynamic context | [コマンドラインエラー](#security-review-fails-without-origin-head) |

156| `Shell command permission check failed for pattern "..."`, from a skill that injects dynamic context | [コマンドラインエラー](#security-review-fails-without-origin-head) |170| `Shell command permission check failed for pattern "..."`, from a skill that injects dynamic context | [コマンドラインエラー](#security-review-fails-without-origin-head) |

157| ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found`` | [コマンドラインエラー](#security-review-fails-without-origin-head) |171| ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found`` | [コマンドラインエラー](#security-review-fails-without-origin-head) |

158| `Input must be provided either through stdin or as a prompt argument when using --print` | [コマンドラインエラー](#input-must-be-provided-when-using-print) |172| `Input must be provided either through stdin or as a prompt argument when using --print` | [コマンドラインエラー](#input-must-be-provided-when-using-print) |

159| `Error: Input contained only whitespace` | [コマンドラインエラー](#input-contained-only-whitespace) |173| `Error: Input contained only whitespace` | [コマンドラインエラー](#input-contained-only-whitespace) |

160| `Blank prompt — the message was only whitespace, so nothing was sent to the model.` | [コマンドラインエラー](#input-contained-only-whitespace) |174| `Blank prompt — the message was only whitespace, so nothing was sent to the model.` | [コマンドラインエラー](#input-contained-only-whitespace) |

175| `Error: stream-json input carried over 256M characters with no newline` | [コマンドラインエラー](#stream-json-input-carried-over-256m-characters-with-no-newline) |

161| `Unknown command: /<name>`, with or without a `Did you mean` suggestion | [コマンドラインエラー](#unknown-command) |176| `Unknown command: /<name>`, with or without a `Did you mean` suggestion | [コマンドラインエラー](#unknown-command) |

162| `Diff is too large for ultrareview` / `PR #<N> is too large for ultrareview` | [コマンドラインエラー](#diff-is-too-large-for-ultrareview) |177| `Diff is too large for ultrareview` / `PR #<N> is too large for ultrareview` | [コマンドラインエラー](#diff-is-too-large-for-ultrareview) |

163| `Could not find merge-base with <branch>` | [コマンドラインエラー](#could-not-find-merge-base-with-the-base-branch) |178| `Could not find merge-base with <branch>` | [コマンドラインエラー](#could-not-find-merge-base-with-the-base-branch) |


172| `Couldn't read your Zed keymap` / `Couldn't back up your Zed keymap` / `Couldn't update your Zed keymap` | [コマンドラインエラー](#terminal-setup-left-your-zed-keymap-unchanged) |187| `Couldn't read your Zed keymap` / `Couldn't back up your Zed keymap` / `Couldn't update your Zed keymap` | [コマンドラインエラー](#terminal-setup-left-your-zed-keymap-unchanged) |

173| `Your Zed keymap isn't a readable list of keybindings` | [コマンドラインエラー](#terminal-setup-left-your-zed-keymap-unchanged) |188| `Your Zed keymap isn't a readable list of keybindings` | [コマンドラインエラー](#terminal-setup-left-your-zed-keymap-unchanged) |

174| `Skill usage reports are not available on this connection.` | [コマンドラインエラー](#skill-usage-reports-are-not-available-on-this-connection) |189| `Skill usage reports are not available on this connection.` | [コマンドラインエラー](#skill-usage-reports-are-not-available-on-this-connection) |

190| `` `plugin eval` is currently in early access `` / `` `plugin eval` is currently unavailable `` | [プラグインエラー](#plugin-eval-is-currently-in-early-access) |

175| `Marketplace "<name>" is registered from an untrusted source` | [プラグインエラー](#marketplace-is-registered-from-an-untrusted-source) |191| `Marketplace "<name>" is registered from an untrusted source` | [プラグインエラー](#marketplace-is-registered-from-an-untrusted-source) |

176| `references ${user_config.*} in a shell-form command` | [プラグインエラー](#plugin-command-references-user-config) |192| `references ${user_config.*} in a shell-form command` | [プラグインエラー](#plugin-command-references-user-config) |

177| `Monitor "<name>" from plugin <plugin> references ${user_config.*} in its command` | [プラグインエラー](#plugin-command-references-user-config) |193| `Monitor "<name>" from plugin <plugin> references ${user_config.*} in its command` | [プラグインエラー](#plugin-command-references-user-config) |

178| `headersHelper for MCP server '<name>' references ${user_config.*}` | [プラグインエラー](#plugin-command-references-user-config) |194| `headersHelper for MCP server '<name>' references ${user_config.*}` | [プラグインエラー](#plugin-command-references-user-config) |

179| `Plugin archive integrity check failed` | [プラグインエラー](#plugin-archive-integrity-check-failed) |195| `Plugin archive integrity check failed` | [プラグインエラー](#plugin-archive-integrity-check-failed) |

180| `path escapes plugin directory` | [プラグインエラー](#path-escapes-plugin-directory) |196| `path escapes plugin directory` | [プラグインエラー](#path-escapes-plugin-directory) |

197| `path could not be checked` | [プラグインエラー](#path-could-not-be-checked) |

198| `its marketplace entry path does not stay inside the marketplace directory` | [プラグインエラー](#marketplace-entry-path-does-not-stay-inside-the-marketplace-directory) |

199| `Plugin source path refused` | [プラグインエラー](#marketplace-entry-path-does-not-stay-inside-the-marketplace-directory) |

181| `Failed to load marketplace configuration` | [プラグインエラー](#failed-to-load-marketplace-configuration) |200| `Failed to load marketplace configuration` | [プラグインエラー](#failed-to-load-marketplace-configuration) |

182| `Marketplace configuration file is corrupted` | [プラグインエラー](#failed-to-load-marketplace-configuration) |201| `Marketplace configuration file is corrupted` | [プラグインエラー](#failed-to-load-marketplace-configuration) |

183| `would be spawned with zero tools — refusing` | [ツールエラー](#agent-would-be-spawned-with-zero-tools) |202| `would be spawned with zero tools — refusing` | [ツールエラー](#agent-would-be-spawned-with-zero-tools) |


198| `Refusing to search <path>: a path one of its Read deny rules is written through changed while the search was being prepared` / `Refusing to search <path>: it could not be opened` | [ツールエラー](#refusing-after-a-symlink-changed) |217| `Refusing to search <path>: a path one of its Read deny rules is written through changed while the search was being prepared` / `Refusing to search <path>: it could not be opened` | [ツールエラー](#refusing-after-a-symlink-changed) |

199| `its permission check expired before it ran (too many concurrent file operations)` / `ripgrep was found only by name on PATH` | [ツールエラー](#refusing-after-a-symlink-changed) |218| `its permission check expired before it ran (too many concurrent file operations)` / `ripgrep was found only by name on PATH` | [ツールエラー](#refusing-after-a-symlink-changed) |

200| `task output swap refused (tasks dir moved or linked)` | [ツールエラー](#task-output-swap-refused) |219| `task output swap refused (tasks dir moved or linked)` | [ツールエラー](#task-output-swap-refused) |

220| `Command killed: its output file was replaced or could no longer be verified` | [ツールエラー](#task-output-swap-refused) |

221| `the source file is not valid UTF-8 text` / `the source file is not valid UTF-16 text` | [ツールエラー](#the-source-file-is-not-valid-utf-8-text) |

222| `the source file has the replacement character U+FFFD` | [ツールエラー](#the-source-file-is-not-valid-utf-8-text) |

201| `Can't open MCP settings while no terminal is attached to this background session` | [バックグラウンドセッションエラー](#commands-refused-in-a-background-session) |223| `Can't open MCP settings while no terminal is attached to this background session` | [バックグラウンドセッションエラー](#commands-refused-in-a-background-session) |

202| `Can't open MCP settings in a background session` | [バックグラウンドセッションエラー](#commands-refused-in-a-background-session) |224| `Can't open MCP settings in a background session` | [バックグラウンドセッションエラー](#commands-refused-in-a-background-session) |

203| `blocked because the path is spelled in a form that cannot be safely resolved` | [バックグラウンドセッションエラー](#write-or-command-blocked-because-the-path-cannot-be-safely-resolved) |225| `blocked because the path is spelled in a form that cannot be safely resolved` | [バックグラウンドセッションエラー](#write-or-command-blocked-because-the-path-cannot-be-safely-resolved) |


206| `Can't open — this session is running in another terminal` | [バックグラウンドセッションエラー](#this-session-is-running-in-another-terminal) |228| `Can't open — this session is running in another terminal` | [バックグラウンドセッションエラー](#this-session-is-running-in-another-terminal) |

207| `This conversation is already open in another running Claude session` | [バックグラウンドセッションエラー](#this-session-is-running-in-another-terminal) |229| `This conversation is already open in another running Claude session` | [バックグラウンドセッションエラー](#this-session-is-running-in-another-terminal) |

208| `This session's saved conversation is no longer on disk` | [バックグラウンドセッションエラー](#this-sessions-saved-conversation-is-no-longer-on-disk) |230| `This session's saved conversation is no longer on disk` | [バックグラウンドセッションエラー](#this-sessions-saved-conversation-is-no-longer-on-disk) |

231| `kept <id> — <n> unpushed commits on <branch>` | [バックグラウンドセッションエラー](#worktree-has-commits-that-are-not-pushed-anywhere) |

209| `kept <id> — worktree has commits that are not pushed anywhere` | [バックグラウンドセッションエラー](#worktree-has-commits-that-are-not-pushed-anywhere) |232| `kept <id> — worktree has commits that are not pushed anywhere` | [バックグラウンドセッションエラー](#worktree-has-commits-that-are-not-pushed-anywhere) |

210| `terminal host process died — press Enter to restart` / `This session's terminal host process died` | [バックグラウンドセッションエラー](#terminal-host-process-died) |233| `terminal host process died — press Enter to restart` / `This session's terminal host process died` | [バックグラウンドセッションエラー](#terminal-host-process-died) |

211| `Session isn't responding` / `Press enter again to restart this session — it isn't responding` | [バックグラウンドセッションエラー](#session-isnt-responding) |234| `Session isn't responding` / `Press enter again to restart this session — it isn't responding` | [バックグラウンドセッションエラー](#session-isnt-responding) |


215| `EUNKNOWN: unknown error, uv_spawn` | [バックグラウンドセッションエラー](#eunknown-when-starting-a-background-session) |238| `EUNKNOWN: unknown error, uv_spawn` | [バックグラウンドセッションエラー](#eunknown-when-starting-a-background-session) |

216| `EACCES: permission denied, posix_spawn` | [バックグラウンドセッションエラー](#eacces-when-starting-a-background-session) |239| `EACCES: permission denied, posix_spawn` | [バックグラウンドセッションエラー](#eacces-when-starting-a-background-session) |

217| `exited before it became reachable` | [バックグラウンドセッションエラー](#background-service-exited-before-it-became-reachable) |240| `exited before it became reachable` | [バックグラウンドセッションエラー](#background-service-exited-before-it-became-reachable) |

241| `Couldn't start a background session (working directory no longer exists or is not accessible: ...)` | [バックグラウンドセッションエラー](#working-directory-no-longer-exists-when-starting-a-background-session) |

218| `Claude Code is being updated by npm on this machine (still not runnable after 2 min, ...)` | [バックグラウンドセッションエラー](#eacces-when-starting-a-background-session) |242| `Claude Code is being updated by npm on this machine (still not runnable after 2 min, ...)` | [バックグラウンドセッションエラー](#eacces-when-starting-a-background-session) |

219| `Claude Code process exited with code N` | [ラッパーと IDE エラー](#claude-code-process-exited-with-code-n) |243| `Claude Code process exited with code N` | [ラッパーと IDE エラー](#claude-code-process-exited-with-code-n) |

220| `Could not locate the Claude CLI on PATH` | [ラッパーと IDE エラー](#could-not-locate-the-claude-cli-on-path) |244| `Could not locate the Claude CLI on PATH` | [ラッパーと IDE エラー](#could-not-locate-the-claude-cli-on-path) |


240| `... has a wildcard before the rest of the command` | [設定の警告](#has-a-wildcard-before-the-rest-of-the-command) |264| `... has a wildcard before the rest of the command` | [設定の警告](#has-a-wildcard-before-the-rest-of-the-command) |

241| `CLAUDE_CODE_DISABLE_1M_CONTEXT is set, but the 200K limit isn't enforced` | [設定の警告](#the-200k-limit-isnt-enforced) |265| `CLAUDE_CODE_DISABLE_1M_CONTEXT is set, but the 200K limit isn't enforced` | [設定の警告](#the-200k-limit-isnt-enforced) |

242| `[claude-code:unrecognized_model]` | [設定の警告](#unrecognized-model-id-on-a-request) |266| `[claude-code:unrecognized_model]` | [設定の警告](#unrecognized-model-id-on-a-request) |

267| `Stale sandbox mask files left by a killed session` | [設定の警告](#stale-sandbox-mask-files-left-by-a-killed-session) |

243| Responses seem lower quality than usual | [応答品質](#responses-seem-lower-quality-than-usual) |268| Responses seem lower quality than usual | [応答品質](#responses-seem-lower-quality-than-usual) |

244 269 

245<h2 id="automatic-retries">270<h2 id="automatic-retries">


260* 入力と `max_tokens` がコンテキスト制限を超えるため拒否されたリクエスト。変更されていない状態で再送信すると同じ方法で失敗するため、Claude Code は削減された `max_tokens` でリトライし、2 つのケースでリトライを停止してコンパクト化します:285* 入力と `max_tokens` がコンテキスト制限を超えるため拒否されたリクエスト。変更されていない状態で再送信すると同じ方法で失敗するため、Claude Code は削減された `max_tokens` でリトライし、2 つのケースでリトライを停止してコンパクト化します:

261 * 削減が適合できない場合。たとえば、会話自体がコンテキストウィンドウをほぼ満たしている場合。286 * 削減が適合できない場合。たとえば、会話自体がコンテキストウィンドウをほぼ満たしている場合。

262 * リトライが `max_tokens` をこれ以上縮小できない場合。v2.1.218 より前は、Claude Code は拡張思考予算が残りのコンテキストを超えた場合など、削減されたリクエストを再送信できましたが、それでも適合しませんでした。リトライ予算が尽きるまで。287 * リトライが `max_tokens` をこれ以上縮小できない場合。v2.1.218 より前は、Claude Code は拡張思考予算が残りのコンテキストを超えた場合など、削減されたリクエストを再送信できましたが、それでも適合しませんでした。リトライ予算が尽きるまで。

263* [Google Cloud の Agent Platform](/docs/ja/google-vertex-ai) 上の期限切れまたは欠落している Google Cloud 認証情報。`Could not load the default credentials` などのエラーとして表示されます。Claude Code はキャッシュされた認証情報を破棄し、最大 2 回リトライし、設定した場合は [`gcpAuthRefresh`](/docs/ja/google-vertex-ai#advanced-credential-configuration) コマンドを実行し、エラーを報告して、すぐに再認証できるようにします。[Google Cloud の Agent Platform トラブルシューティング](/docs/ja/google-vertex-ai#troubleshooting)は再認証をカバーしています。v2.1.228 より前は、Claude Code はエラーを表示する前に、失敗した認証情報を完全なリトライ予算を通じてリトライしました。288* 期限切れまたは欠落している Google Cloud 認証情報([Google Cloud の Agent Platform](/docs/ja/google-vertex-ai) 上)、またはマシンで読み込みに失敗した AWS 認証情報。Claude Code はキャッシュされた認証情報を破棄し、最大 2 回リトライしてからエラーを報告するため、[Could not load AWS or Google Cloud credentials](#could-not-load-aws-or-google-cloud-credentials) で説明されているようにすぐに再認証できます。v2.1.228 より前は、Claude Code はエラーを表示する前に、失敗した Google Cloud 認証情報を完全なリトライ予算を通じてリトライしました。

264* Anthropic API から直接、または [LLM ゲートウェイ](/docs/ja/llm-gateway) を通じて、[`apiKeyHelper`](/docs/ja/settings-reference#apikeyhelper) スクリプトが認証情報を提供している間の `401` または `403`。Claude Code はスクリプトを再実行し、完全なリトライ予算内でその新しい出力でリトライします。スクリプト自体が再実行時に失敗した場合、Claude Code は [Your apiKeyHelper script is failing](#your-apikeyhelper-script-is-failing) を代わりに表示します。289* Anthropic API から直接、または [LLM ゲートウェイ](/docs/ja/llm-gateway) を通じて、[`apiKeyHelper`](/docs/ja/settings-reference#apikeyhelper) スクリプトが認証情報を提供している間の `401` または `403`。Claude Code はスクリプトを再実行し、完全なリトライ予算内でその新しい出力でリトライします。スクリプト自体が再実行時に失敗した場合、Claude Code は [Your apiKeyHelper script is failing](#your-apikeyhelper-script-is-failing) を代わりに表示します。

265 290 

266v2.1.227 より前は、`Connection lost before a response was produced` は `Connection closed while thinking, before producing a response` と読み、`The response stalled before a response was produced` は `Response stalled while thinking, before producing a response` と読みました。291v2.1.227 より前は、`Connection lost before a response was produced` は `Connection closed while thinking, before producing a response` と読み、`The response stalled before a response was produced` は `Response stalled while thinking, before producing a response` と読みました。


1070* 非対話モードでは、同じ環境で `claude` を実行し、`/login` を完了してから、コマンドを再実行してください。対話的にサインインできない自動化については、`ANTHROPIC_API_KEY` で認証するか、[`claude setup-token`](/docs/ja/authentication#generate-a-long-lived-token) で長命トークンを生成してください。1095* 非対話モードでは、同じ環境で `claude` を実行し、`/login` を完了してから、コマンドを再実行してください。対話的にサインインできない自動化については、`ANTHROPIC_API_KEY` で認証するか、[`claude setup-token`](/docs/ja/authentication#generate-a-long-lived-token) で長命トークンを生成してください。

1071* サインインが失敗し続ける場合は、[ログインと認証](/docs/ja/troubleshoot-install#login-and-authentication) を参照してください1096* サインインが失敗し続ける場合は、[ログインと認証](/docs/ja/troubleshoot-install#login-and-authentication) を参照してください

1072 1097 

1098<h3 id="administrator-policy-requires-a-cloud-gateway-sign-in">

1099 管理者ポリシーがクラウドゲートウェイサインインを必要とします

1100</h3>

1101 

1102管理者の [管理設定](/docs/ja/managed-settings) がこのマシンで [`forceLoginMethod`](/docs/ja/settings-reference#forceloginmethod) を `"gateway"` に設定したか、[`forceLoginGatewayUrl`](/docs/ja/settings-reference#forcelogingatewayurl) を設定しました。`CLAUDE_CODE_USE_BEDROCK` などの変数を通じてクラウドプロバイダーを選択しない限り、Claude Code は [Claude apps ゲートウェイ](/docs/ja/claude-apps-gateway) サインインのみを受け入れます。2 つのメッセージのいずれかが表示されます:

1103 

1104```text theme={null}

1105Not signed in to the Cloud gateway — run /login.

1106```

1107 

1108セッションにゲートウェイサインインがない場合(例えば、ポリシーがマシンに到達してから `/login` を実行していない場合)、モデルリクエストはこのメッセージで失敗します。

1109 

1110`ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN`、または `apiKeyHelper` 認証情報も設定されており、管理設定が `forceLoginMethod` を設定している場合、Claude Code は代わりに起動時に以下で始まるメッセージで終了します:

1111 

1112```text theme={null}

1113Administrator policy requires a Cloud gateway sign-in on this machine; the

1114Anthropic-issued credential configured here (ANTHROPIC_API_KEY,

1115ANTHROPIC_AUTH_TOKEN, or apiKeyHelper) is not used.

1116```

1117 

1118**対応方法:**

1119 

1120* `/login` を実行し、**Cloud gateway** 画面でサインインを完了してください

1121* 起動メッセージについては、設定した `ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN`、または `apiKeyHelper` 設定を削除してから、`claude` を開始して `/login` を実行してください

1122* マシンがゲートウェイを必要としないと思われる場合は、それを管理する管理者に、管理設定から `forceLoginMethod` と `forceLoginGatewayUrl` を削除するよう依頼してください

1123 

1124v2.1.265 では、回帰により、API キー、`apiKeyHelper`、またはカスタムヘッダーで認証する一部の LLM ゲートウェイおよびプロキシ設定でも、マシンに管理者要件がない場合でも、最初のメッセージが表示されました。v2.1.266 以降にアップグレードしてください。設定を変更する必要はありません。

1125 

1126v2.1.261 より前は、`forceLoginMethod` を `"gateway"` に設定したマシンでは、Claude Code はモデルリクエストに失敗する代わりに、残っているサインイン済みログインを使用し、設定された環境認証情報を `This machine's managed settings require a first-party login` で報告していました。v2.1.265 より前は、管理設定が `forceLoginGatewayUrl` のみを設定したマシンはゲートウェイサインインを必要とせず、Claude Code はそこで残っている認証情報を使用していました。

1127 

1073<h3 id="your-account-is-on-hold">1128<h3 id="your-account-is-on-hold">

1074 アカウントが保留中です1129 アカウントが保留中です

1075</h3>1130</h3>


1131 claude.ai がセッショントークンを拒否しました1186 claude.ai がセッショントークンを拒否しました

1132</h3>1187</h3>

1133 1188 

1134[claude.ai コネクター](/docs/ja/mcp#use-mcp-servers-from-claude-ai) リクエストが失敗しました。claude.ai が Claude Code ログインからのトークンを拒否したため。通常、期限切れになり、更新できなかったログイン。拒否されたトークンはコネクターのログイン、コネクターの claude.ai での独自の認可ではないため、コネクターを再度認可してもそれは解決しません。`/mcp` では、コネクターは `connected · session token rejected` として表示され、その詳細ビューは以下のように読みます:1189[claude.ai コネクター](/docs/ja/mcp#use-mcp-servers-from-claude-ai) リクエストが失敗しました。claude.ai が Claude Code ログインからのトークンを拒否したため。通常、期限切れになり、更新できなかったログイン。拒否されたトークンはあなたのログインであり、コネクターの claude.ai での独自の認可ではないため、コネクターを再度認可してもそれは解決しません。`/mcp` では、コネクターは `connected · session token rejected` として表示され、その詳細ビューは以下のように読みます:

1135 1190 

1136```text theme={null}1191```text theme={null}

1137claude.ai rejected the session token. Run /login, then reconnect.1192claude.ai rejected the session token. Run /login, then reconnect.


1208* 認証情報が現在の場合は、[IAM 設定](/docs/ja/amazon-bedrock#iam-configuration) の IAM 権限が使用している ID に接続されていることを確認し、選択されたモデルがアカウントとリージョンで有効化されていることを確認してください1263* 認証情報が現在の場合は、[IAM 設定](/docs/ja/amazon-bedrock#iam-configuration) の IAM 権限が使用している ID に接続されていることを確認し、選択されたモデルがアカウントとリージョンで有効化されていることを確認してください

1209* `aws sts get-caller-identity` を実行して、リクエストがどの ID を使用するかを確認してください。古い `AWS_PROFILE` またはデフォルトプロファイルは、権限の不一致の一般的な原因です1264* `aws sts get-caller-identity` を実行して、リクエストがどの ID を使用するかを確認してください。古い `AWS_PROFILE` またはデフォルトプロファイルは、権限の不一致の一般的な原因です

1210 1265 

1266<h3 id="could-not-load-aws-or-google-cloud-credentials">

1267 AWS または Google Cloud 認証情報をロードできませんでした

1268</h3>

1269 

1270Claude Code は、マシンで実行されている AWS 認証情報プロバイダーチェーンから、または Google アプリケーションのデフォルト認証情報から、使用可能な認証情報を取得できなかったため、クラウドプロバイダーにリクエストが到達しませんでした。Claude Code はキャッシュされた認証情報をクリアし、このメッセージを表示する前に 2 回再試行します。`·` の後の詳細は、期限切れ SSO セッション、`Could not load the default credentials` として報告されている見つからないアプリケーションのデフォルト認証情報、または `invalid_grant` として報告されている取り消されたサインインなど、特定の原因を名前付けします:

1271 

1272```text theme={null}

1273API Error: Could not load AWS credentials · Could not load credentials from any providers. Check or refresh your AWS credentials and try again.

1274API Error: Could not load Google Cloud credentials · invalid_grant. Check or refresh your Google Cloud credentials and try again.

1275```

1276 

1277[非対話モード](/docs/ja/headless) で `-p` を使用する場合と [Agent SDK](/docs/ja/agent-sdk/overview) では、構造化エラーコードは `cloud_credential_error` です。v2.1.267 より前は、メッセージは `API Error:` の後のテキストのみを表示し、構造化コードは `server_error` または `unknown` でした。

1278 

1279**対応方法:**

1280 

1281* `aws sso login --profile myprofile` または `gcloud auth application-default login` などのプロバイダーのサインインコマンドを実行してから、再試行してください。[Bedrock、Agent Platform、または Foundry 認証情報がロードされていない](/docs/ja/troubleshoot-install#bedrock-agent-platform-or-foundry-credentials-not-loading) は、Claude Code の外で認証情報を確認する方法を示しています

1282* 詳細が `AWS default-chain credential resolve timed out` と読む場合は、チェーンが失敗するのではなくハングしたため、代わりに [AWS デフォルトチェーン認証情報解決がタイムアウトしました](#aws-default-chain-credential-resolve-timed-out) に従ってください

1283 

1211<h3 id="aws-default-chain-credential-resolve-timed-out">1284<h3 id="aws-default-chain-credential-resolve-timed-out">

1212 AWS デフォルトチェーン認証情報解決がタイムアウトしました1285 AWS デフォルトチェーン認証情報解決がタイムアウトしました

1213</h3>1286</h3>

1214 1287 

1215AWS デフォルト認証情報プロバイダーチェーンは 60 秒以内に認証情報を生成しなかったため、Claude Code は解決を停止し、リクエストに失敗しました。失敗はローカル認証情報解決です。リクエストは [Amazon Bedrock](/docs/ja/amazon-bedrock)、[Claude Platform on AWS](/docs/ja/claude-platform-on-aws)、または [Mantle エンドポイント](/docs/ja/amazon-bedrock#use-the-mantle-endpoint) に到達しませんでした。Claude Code はこのエラーが表面化する前に [認証情報キャッシュ](/docs/ja/amazon-bedrock#credential-caching-and-resolution-timeout) をクリアして再試行するため、このメッセージが表示されるまでにチェーンは繰り返された試行でスタールしています。1288AWS デフォルト認証情報プロバイダーチェーンは 60 秒以内に認証情報を生成しなかったため、Claude Code は解決を停止し、リクエストに失敗しました。このタイムアウトは [AWS または Google Cloud 認証情報をロードできませんでした](#could-not-load-aws-or-google-cloud-credentials) の 1 つの原因です。失敗はローカル認証情報解決です。リクエストは [Amazon Bedrock](/docs/ja/amazon-bedrock)、[Claude Platform on AWS](/docs/ja/claude-platform-on-aws)、または [Mantle エンドポイント](/docs/ja/amazon-bedrock#use-the-mantle-endpoint) に到達しませんでした。Claude Code はこのエラーが表面化する前に [認証情報キャッシュ](/docs/ja/amazon-bedrock#credential-caching-and-resolution-timeout) をクリアして再試行するため、このメッセージが表示されるまでにチェーンは繰り返された試行でスタールしています。

1216 1289 

1217```text theme={null}1290```text theme={null}

1218API Error: AWS default-chain credential resolve timed out1291API Error: Could not load AWS credentials · AWS default-chain credential resolve timed out. Check or refresh your AWS credentials and try again.

1219```1292```

1220 1293 

1221一般的な原因は、AWS プロファイルの `credential_process` コマンドが受け取ることができない入力を待機し、インスタンスメタデータサービス(IMDS)がチェーンのプローブに応答しないコンテナまたは VM です。v2.1.207 より前は、スタールしたチェーンはリクエストを無期限に待機させ、このメッセージで失敗する代わりに失敗しました。1294一般的な原因は、AWS プロファイルの `credential_process` コマンドが受け取ることができない入力を待機し、インスタンスメタデータサービス(IMDS)がチェーンのプローブに応答しないコンテナまたは VM です。

1295 

1296v2.1.267 より前は、メッセージは `API Error: AWS default-chain credential resolve timed out` と読みました。

1297v2.1.207 より前は、スタールしたチェーンはリクエストを無期限に待機させ、このメッセージで失敗する代わりに失敗しました。

1222 1298 

1223**対応方法:**1299**対応方法:**

1224 1300 


1226* Claude Code を開始する前にサインインステップを完了してください。例えば `aws sso login --profile myprofile`。チェーンはブラウザーフローを待機する代わりにローカル SSO キャッシュから解決するため1302* Claude Code を開始する前にサインインステップを完了してください。例えば `aws sso login --profile myprofile`。チェーンはブラウザーフローを待機する代わりにローカル SSO キャッシュから解決するため

1227* チェーンが `aws-vault` などのラッパーを使用した MFA を使用した SSO などの正当に 60 秒以上を必要とする対話的サインインを実行する場合は、ミリ秒単位で [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/ja/env-vars) で制限を上げてください1303* チェーンが `aws-vault` などのラッパーを使用した MFA を使用した SSO などの正当に 60 秒以上を必要とする対話的サインインを実行する場合は、ミリ秒単位で [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/ja/env-vars) で制限を上げてください

1228 1304 

1305<h3 id="bedrock-setup-verification-timed-out-waiting-for-aws">

1306 Bedrock セットアップ検証が AWS を待機中にタイムアウトしました

1307</h3>

1308 

1309[Bedrock セットアップウィザード](/docs/ja/amazon-bedrock#sign-in-with-bedrock) の認証情報検証中の AWS への呼び出し(認証情報ルックアップまたは ID チェックなど)が 60 秒の制限内に完了しませんでした。ウィザードは待機を停止し、検証ステップに失敗します:

1310 

1311```text theme={null}

1312Timed out after 60s waiting for AWS. Check your network and proxy settings; if a credential helper needs longer to prompt you, raise CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS.

1313```

1314 

1315数値は制限を反映しています。デフォルトでは 60 秒、または [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/ja/env-vars) で設定した値。

1316 

1317一般的な原因は、SSO トークン更新を含む AWS へのリクエストをスタールさせるネットワークまたはプロキシ、および見えない入力を待機しているまま認証情報ヘルパーです。制限を上げるのは、ヘルパーが正当にさらに時間を必要とする場合のみです。

1318 

1319AWS への単一のスタールしたリクエストは、独自のリクエストごとのタイムアウトで失敗することもあります。これは同じステップで短いメッセージを表示します:

1320 

1321```text theme={null}

1322A request to AWS timed out. Check your network and proxy settings, then try again.

1323```

1324 

1325同じタイムアウトがモデルピンステップで発生する場合、ウィザードはモデルを `unreachable` としてマークし、どちらのメッセージも表示しません。

1326 

1327**対応方法:**

1328 

1329* 同じシェルで `aws sts get-caller-identity` を実行してください。それもハングする場合、スタールは Claude Code の外にあります。ネットワーク、プロキシ、または AWS プロファイルの認証情報ヘルパーで。最初にそれを修正してください。

1330* ウィザードを開く前に対話的サインインを完了してください。例えば `aws sso login --profile myprofile`

1331* AWS プロファイルの認証情報ヘルパーが正当に 60 秒以上を必要とする場合、ミリ秒単位で [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/ja/env-vars) で制限を上げてください

1332 

1229<h3 id="cloud-gateway-session-expired">1333<h3 id="cloud-gateway-session-expired">

1230 クラウドゲートウェイセッション期限切れ1334 クラウドゲートウェイセッション期限切れ

1231</h3>1335</h3>


1307 1411 

1308Claude Code は、API リクエストと同じ [プロキシ設定](/docs/ja/network-config) を通じてチェックを送信し、各プローブに 10 秒を与えます。失敗したプローブがプロキシを通過した場合、メッセージは `HTTPS_PROXY` などの環境変数を名前で指定します。v2.1.222 より前では、チェックはタイムアウトなしの異なるプロキシトランスポートを使用していました。`https://` スキーム付きのプロキシ URL の背後では、`Checking connectivity...` で無期限に停止してから失敗する可能性があり、同じプロキシを通じた API リクエストが成功しても失敗します。1412Claude Code は、API リクエストと同じ [プロキシ設定](/docs/ja/network-config) を通じてチェックを送信し、各プローブに 10 秒を与えます。失敗したプローブがプロキシを通過した場合、メッセージは `HTTPS_PROXY` などの環境変数を名前で指定します。v2.1.222 より前では、チェックはタイムアウトなしの異なるプロキシトランスポートを使用していました。`https://` スキーム付きのプロキシ URL の背後では、`Checking connectivity...` で無期限に停止してから失敗する可能性があり、同じプロキシを通じた API リクエストが成功しても失敗します。

1309 1413 

1310Claude Code は、[管理設定ファイル、MDM ポリシー、またはポリシーヘルパー](/docs/ja/managed-settings) が [`forceLoginMethod`](/docs/ja/settings-reference#forceloginmethod) を `"gateway"` に設定するか、`forceLoginMethod` なしで [`forceLoginGatewayUrl`](/docs/ja/settings-reference#forcelogingatewayurl) を設定する場合、このチェックをスキップします。どちらかの設定では、Claude Code は **Cloud gateway** 画面ではなく Anthropic サインイン方法でサインインステップを開きます。マシン上の管理設定ソースが存在するが読み取れない場合、Claude Code はチェックをスキップします。そのソースはゲートウェイ設定を保持する可能性があるためです。v2.1.247 より前では、Claude Code はこの設定下でもチェックを実行し、Anthropic のエンドポイントに到達できない場合、このエラーで終了しました。1414Claude Code は、[管理設定ファイル、MDM ポリシー、またはポリシーヘルパー](/docs/ja/managed-settings) が [`forceLoginMethod`](/docs/ja/settings-reference#forceloginmethod) を `"gateway"` に設定するか、`forceLoginMethod` なしで [`forceLoginGatewayUrl`](/docs/ja/settings-reference#forcelogingatewayurl) を設定する場合、このチェックをスキップします。どちらの設定でも、Claude Code は Anthropic サインイン方法ではなく **Cloud gateway** 画面でサインインステップを開きます。マシン上の管理設定ソースが存在するが読み取れない場合も、Claude Code はチェックをスキップします。そのソースはゲートウェイ設定を保持する可能性があるためです。v2.1.247 より前では、Claude Code はこの設定下でもチェックを実行し、Anthropic のエンドポイントに到達できない場合、このエラーで終了しました。

1311 1415 

1312**対応方法:**1416**対応方法:**

1313 1417 


1408SSL certificate error (UNABLE_TO_GET_ISSUER_CERT_LOCALLY). If you are behind a corporate proxy or TLS-intercepting firewall, set NODE_EXTRA_CA_CERTS to your CA bundle path, or ask IT to allowlist *.anthropic.com. Run `claude doctor` for details.1512SSL certificate error (UNABLE_TO_GET_ISSUER_CERT_LOCALLY). If you are behind a corporate proxy or TLS-intercepting firewall, set NODE_EXTRA_CA_CERTS to your CA bundle path, or ask IT to allowlist *.anthropic.com. Run `claude doctor` for details.

1409```1513```

1410 1514 

1515[Amazon Bedrock](/docs/ja/amazon-bedrock) では、Claude Code 自体が AWS に送信するリクエスト(STS および SSO ロール認証情報呼び出し、モデル検出、セットアップウィザードのチェックなど)は、同じ証明書設定に依存しています。[TLS 検査プロキシの背後での証明書エラー](/docs/ja/amazon-bedrock#certificate-errors-behind-a-tls-inspecting-proxy) を参照してください。

1516 

1411**対応方法:**1517**対応方法:**

1412 1518 

1413* 組織の CA バンドルをエクスポートし、`NODE_EXTRA_CA_CERTS=/path/to/ca-bundle.pem` で Claude Code を指してください。1519* 組織の CA バンドルをエクスポートし、`NODE_EXTRA_CA_CERTS=/path/to/ca-bundle.pem` で Claude Code を指してください。


1613 コンテキストがトークン制限を超えています1719 コンテキストがトークン制限を超えています

1614</h3>1720</h3>

1615 1721 

1616`/context` は、会話がモデルのコンテキストウィンドウを超えて成長した場合、その出力の上部にこの警告を表示します。[`Prompt is too long`](#prompt-is-too-long) でリクエストが失敗するまで、スペースを解放してください。インタラクティブセッションは、そのエラーを `Context limit reached` 行として表示します。1722`/context` は、会話がモデルのコンテキストウィンドウを超えて成長した場合、その出力の上部にこの警告を表示します。スペースを解放するまで、リクエストは [`Prompt is too long`](#prompt-is-too-long) で失敗します。インタラクティブセッションは、そのエラーを `Context limit reached` 行として表示します。

1617 1723 

1618```text theme={null}1724```text theme={null}

1619Context exceeds the 200k-token limit by 94k tokens — run /compact or /clear to continue.1725Context exceeds the 200k-token limit by 94k tokens — run /compact or /clear to continue.


1706Unable to resize image — dimensions exceed the 2000x2000px limit and image processing failed. Please resize the image to reduce its pixel dimensions.1812Unable to resize image — dimensions exceed the 2000x2000px limit and image processing failed. Please resize the image to reduce its pixel dimensions.

1707Unable to resize image (… raw, … base64). The image exceeds the … API limit and compression failed. Please resize the image manually or use a smaller image.1813Unable to resize image (… raw, … base64). The image exceeds the … API limit and compression failed. Please resize the image manually or use a smaller image.

1708Unable to resize image — could not verify image dimensions are within the 2000x2000px API limit.1814Unable to resize image — could not verify image dimensions are within the 2000x2000px API limit.

1815Unable to resize image — it is a CMYK JPEG, which Claude Code cannot decode, and at …px it is over the 2000x2000px limit, so it cannot be sent. Re-save it as an RGB PNG or JPEG and try again.

1816Unable to resize image — it is an animated WebP whose first frame Claude Code cannot decode, and at …px it is over the 2000x2000px limit, so it cannot be sent. Save its first frame as a PNG or JPEG and try again.

1817Unable to resize image — its pixels could not be decoded (the file may be damaged, or use an encoding Claude Code cannot read), and it is over the … API limit (… raw, … base64), so it cannot be sent. Re-save it as a PNG or JPEG and try again.

1709```1818```

1710 1819 

1711Claude Code は通常、大きな画像を自動的にリサイズします。これらのエラーは、ネイティブ画像プロセッサが読み込みに失敗したか、エラーを返したため、画像を API 制限内に収まるようにリサイズできなかったことを意味します。1820Claude Code は通常、大きな画像を自動的にリサイズします。これらのエラーは、画像をデコードまたはリサイズして API 制限内に収まるようにできなかったことを意味します。

1712 1821 

1713**対応方法:**1822**対応方法:**

1714 1823 

1715* メッセージが画像を変換するよう求めている場合は、PNG、JPEG、GIF、または WebP に変換して、再度添付してください。Claude Code はこれらの形式の寸法を画像プロセッサなしで検証できます。1824* メッセージが画像を変換するよう求めている場合は、PNG、JPEG、GIF、または WebP に変換して、再度添付してください。Claude Code はこれらの形式の寸法をファイルヘッダーから検証でき、画像をデコードする必要はありません。

1716* メッセージが寸法またはサイズ制限を報告している場合は、その制限以下に画像をリサイズまたは再圧縮してから添付してください。1825* メッセージが寸法またはサイズ制限を報告している場合は、その制限以下に画像をリサイズまたは再圧縮してから添付してください。

1826* メッセージが CMYK JPEG、アニメーション WebP、または破損している可能性のあるファイルなどの原因を名前付けしている場合は、メッセージが提案する形式で画像を再度保存して添付してください。

1717 1827 

1718<h3 id="pdf-errors">1828<h3 id="pdf-errors">

1719 PDF エラー1829 PDF エラー


1810 1920 

1811末尾のヒントは、最も近いマッチングエイリアスまたはモデル ID を名前付けします。十分に近いものがない場合は、代わりに `Run /model to see available models.` と読みます。1921末尾のヒントは、最も近いマッチングエイリアスまたはモデル ID を名前付けします。十分に近いものがない場合は、代わりに `Run /model to see available models.` と読みます。

1812 1922 

1813Claude Code はこのエラーをローカルで生成します。スイッチが要求された時点で、API リクエストが行われる前です。これは、[Agent SDK](/docs/ja/agent-sdk/typescript) `setModel()` メソッドを通じてモデルが設定されるか、Claude Code CLI を実行する [Desktop app](/docs/ja/desktop)などのアプリによって適用されます。1923Claude Code はこのエラーをローカルで生成します。スイッチが要求された時点で、API リクエストが行われる前です。これは、[Agent SDK](/docs/ja/agent-sdk/typescript) `setModel()` メソッドを通じてモデルが設定されるか、Claude Code CLI を実行する [Desktop app](/docs/ja/desktop)などのアプリによって適用されます。または、[Remote Control](/docs/ja/remote-control)を通じて接続されたデバイスからモデルを選択するときに適用されます。v2.1.260 より前では、チェックは Remote Control ピックをカバーしなかったため、Claude Code はピックを適用し、次のリクエストは [選択されたモデルに問題があります](#theres-an-issue-with-the-selected-model)で失敗しました。

1814 1924 

1815**対応方法:**1925**対応方法:**

1816 1926 


1819* v2.1.200 より前に保存されたモデルはこのチェックで修復されません。古い値が戻り続ける場合は、[モデルの設定](/docs/ja/model-config#setting-your-model)の下にリストされている場所から削除してください。1929* v2.1.200 より前に保存されたモデルはこのチェックで修復されません。古い値が戻り続ける場合は、[モデルの設定](/docs/ja/model-config#setting-your-model)の下にリストされている場所から削除してください。

1820* チェックは Anthropic API でのみ実行されます。カスタム `ANTHROPIC_BASE_URL` を含む他のプロバイダーまたはゲートウェイでは、プロバイダーがモデル名を定義するため、Claude Code は任意の文字列を受け入れて渡します。Claude Code は依然として、すべてのプロバイダーで、リクエスト時に [認識されないモデル診断行](#unrecognized-model-id-on-a-request)を書き込むことができます。1930* チェックは Anthropic API でのみ実行されます。カスタム `ANTHROPIC_BASE_URL` を含む他のプロバイダーまたはゲートウェイでは、プロバイダーがモデル名を定義するため、Claude Code は任意の文字列を受け入れて渡します。Claude Code は依然として、すべてのプロバイダーで、リクエスト時に [認識されないモデル診断行](#unrecognized-model-id-on-a-request)を書き込むことができます。

1821 1931 

1932<h3 id="model-not-found">

1933 モデルが見つかりません

1934</h3>

1935 

1936`/model <name>` でモデルを選択し、Claude Code がそのモデルが存在することを確認できませんでした。名前が [モデルエイリアス](/docs/ja/model-config#model-aliases)または Claude Code がローカルで受け入れる別のスペルではない場合、`/model` は最小限の API リクエストで検証し、このエラーは通常、API エンドポイントの応答です。スペースを含むものなど、モデル ID になることができない名前は同じメッセージを取得します。

1937 

1938```text theme={null}

1939Model 'claude-opus-9' not found

1940```

1941 

1942プロバイダー固有のモデル ID を持つプロバイダーでは、メッセージはフォールバックモデルのプロバイダーの ID を名前付けする `Try '...' instead` 提案を追加する場合があります。

1943 

1944**対応方法:**

1945 

1946* 引数なしで `/model` を実行して、アカウントで利用可能なモデルから選択するか、`sonnet` などの [モデルエイリアス](/docs/ja/model-config#model-aliases)を使用してください。これは保守されたデフォルトに解決されます

1947* 完全な ID を入力した場合は、プロバイダーのモデルカタログに対して確認してください。新しく起動されたモデルは、プロバイダーまたは地域が提供する前に Anthropic API で利用可能になる可能性があります。

1948* v2.1.265 より前では、`/model` は `opusplan[1m]` エイリアススペルもこのエラーで拒否しました。これらのバージョンでは、Claude Code を更新するか、[設定](/docs/ja/model-config#setting-your-model)または `--model` でモデルを設定してください。

1949 

1822<h3 id="claude-opus-is-not-available-with-the-claude-pro-plan">1950<h3 id="claude-opus-is-not-available-with-the-claude-pro-plan">

1823 Claude Opus は Claude Pro プランでは利用できません1951 Claude Opus は Claude Pro プランでは利用できません

1824</h3>1952</h3>


1839 Claude Code はこのモデルをサポートしていません1967 Claude Code はこのモデルをサポートしていません

1840</h3>1968</h3>

1841 1969 

1842選択したモデルには、リクエストを行っている Claude Code バージョンより新しいバージョンが必要です。サーバーはモデルごとにこれをチェックします。1970API は、選択したモデルに必要な最小値より下の Claude Code バージョンであるため、400 でリクエストを拒否しました。サーバーはモデルごとにこれをチェックするか、組織のポリシーが 1 つを要求します。400 はエラーコード `claude_code_version_too_old` を含み、メッセージは適用される最小値を示します。

1843 1971 

1844```text theme={null}1972```text theme={null}

1845API Error: 400 Claude Code 2.1.219 does not support this model; version 2.1.255 or newer is required. Run 'claude update', or update the Claude desktop app, then try again.1973API Error: 400 Claude Code 2.1.219 does not support this model; version 2.1.255 or newer is required. Run 'claude update', or update the Claude desktop app, then try again.

1846```1974```

1847 1975 

1976組織ポリシーの表現は次のように読みます。

1977 

1978```text theme={null}

1979API Error: 400 Claude Code 2.1.240 is older than the minimum version required by your organization's policy. Run 'claude update', or update the Claude desktop app, to continue.

1980```

1981 

1848**対応方法:**1982**対応方法:**

1849 1983 

1850* `claude update` を実行するか、Claude デスクトップアプリを更新してから、モデルで新しいセッションを開始してください1984* `claude update` を実行するか、Claude デスクトップアプリを更新してから、新しいセッションを開始してください

1851* 現在のセッションで作業を続けるには、`/model` で別のモデルに切り替えてください1985* モデルごとの表現については、`/model` で別のモデルに切り替えて、現在のセッションで作業を続けることができます

1986* 組織ポリシーの表現については、続行する前に更新してください

1852 1987 

1853<h3 id="model-is-restricted-by-your-organizations-settings">1988<h3 id="model-is-restricted-by-your-organizations-settings">

1854 モデルは組織の設定によって制限されています1989 モデルは組織の設定によって制限されています


1890 2025 

1891v2.1.260 より前では、マネージドプラグイン拒否は `plugin hooks could not be loaded, so PreModelSwitch hooks could not be checked; see the debug log` と読みました。Claude Code はプラグイン読み込みを 1 回再試行してから、セッション内の後のスイッチを拒否しました。組織がプラグインを管理していない場合でも同様です。これらのバージョンでセッションを再開して、プラグイン読み込みを再度実行してください。2026v2.1.260 より前では、マネージドプラグイン拒否は `plugin hooks could not be loaded, so PreModelSwitch hooks could not be checked; see the debug log` と読みました。Claude Code はプラグイン読み込みを 1 回再試行してから、セッション内の後のスイッチを拒否しました。組織がプラグインを管理していない場合でも同様です。これらのバージョンでセッションを再開して、プラグイン読み込みを再度実行してください。

1892 2027 

2028<h3 id="couldnt-save-it-as-your-default">

2029 Couldn't save it as your default

2030</h3>

2031 

2032モデルをデフォルトとして保存するために選択しました。たとえば、`/model <name>` または `/model` ピッカーで `Enter` を使用して、Claude Code はユーザー設定ファイル `~/.claude/settings.json` に選択を書き込むことができませんでした。スイッチ自体が適用されたため、現在のセッションは選択したモデルで実行されますが、デフォルトは変わらず、次のセッションは古い値で開始されます。

2033 

2034```text theme={null}

2035Set model to Fable 5.1 for this session only · couldn't save it as your default: ~/.claude/settings.json can't be written (EROFS)

2036```

2037 

2038ファイルパスの後の理由は、失敗したものを示しています。

2039 

2040* **`can't be written (<code>)`**:書き込みは、`EROFS` などのオペレーティングシステムエラーコードで失敗しました。ファイルまたはそれがリンクするファイルが、書き込みを拒否するファイルシステムに存在する場合です。ファイルを書き込み可能にしてスイッチしてください。別のツールがファイルを生成する場合は、代わりにそのツールで `model` キーを設定してください。[Claude Code で行った変更は新しいセッションで失われます](/docs/ja/settings#a-change-you-made-in-claude-code-is-lost-in-new-sessions)を参照してください。

2041* **`isn't valid JSON`**:ディスク上のファイルが解析されず、Claude Code は読み戻すことができないコンテンツを上書きするのではなく、それを手つかずのままにします。構文エラーを修正してからスイッチしてください。[破損した設定ファイルを修正](/docs/ja/settings#fix-a-broken-settings-file)を参照してください。

2042 

2043`couldn't confirm it was saved as your default (~/.claude/settings.json is still being written)` で終わるお知らせは、書き込みが 3 秒後に完了していなかったことを意味します。バックグラウンドで続行されるため、デフォルトは依然として保存される可能性があります。次のセッションが開始するモデルを確認するか、`/model <name>` を再度実行してください。

2044 

2045v2.1.265 より前では、お知らせは、書き込みが失敗した場合でも、モデルが `saved as your default for new sessions` であると述べていました。

2046 

1893<h3 id="thinking-type-enabled-is-not-supported-for-this-model">2047<h3 id="thinking-type-enabled-is-not-supported-for-this-model">

1894 thinking.type.enabled はこのモデルではサポートされていません2048 thinking.type.enabled はこのモデルではサポートされていません

1895</h3>2049</h3>


2084このメッセージには Claude Code v2.1.198 以降が必要です。同じ `claude` 呼び出しで `--bg` を `-p` または `--print` と組み合わせました。`--bg` は [バックグラウンドセッション](/docs/ja/agent-view#from-your-shell) を開始し、後で `claude agents` で接続できます。一方、`--print` は [非対話的に](/docs/ja/headless) 実行され、`claude agents` が接続するインタラクティブセッションを開始しません。v2.1.198 より前は、この組み合わせは無言でバックグラウンドジョブを作成し、接続できなくなりました。2238このメッセージには Claude Code v2.1.198 以降が必要です。同じ `claude` 呼び出しで `--bg` を `-p` または `--print` と組み合わせました。`--bg` は [バックグラウンドセッション](/docs/ja/agent-view#from-your-shell) を開始し、後で `claude agents` で接続できます。一方、`--print` は [非対話的に](/docs/ja/headless) 実行され、`claude agents` が接続するインタラクティブセッションを開始しません。v2.1.198 より前は、この組み合わせは無言でバックグラウンドジョブを作成し、接続できなくなりました。

2085 2239 

2086```text theme={null}2240```text theme={null}

2241--bg and --print conflict: --print never starts the interactive session that `claude agents` attaches to, so the job would be unattachable. The prompt is the positional — drop --print: `claude --bg '<task>'`.

2087```2242```

2088 2243 

2089**対処方法:**2244**対処方法:**


2183 2337 

2184Claude Code が別の理由(権限の変更など)で作業ディレクトリを読み取ることができない場合、メッセージはエラーコードを示します。`Can't read the current directory (EACCES). Start Claude Code from a different directory.`2338Claude Code が別の理由(権限の変更など)で作業ディレクトリを読み取ることができない場合、メッセージはエラーコードを示します。`Can't read the current directory (EACCES). Start Claude Code from a different directory.`

2185 2339 

2340macOS では、`~/Desktop`、`~/Documents`、`~/Downloads`、または iCloud Drive のディレクトリの `EPERM` は通常、macOS がターミナルアプリをそのフォルダからブロックしていることを意味します。そのフォルダを読み取る他のコマンドも同じ方法で失敗します。`ls` はそこで `Operation not permitted` を報告し、`sudo` でも同じです。

2341 

2186**対処方法:**2342**対処方法:**

2187 2343 

2188* ホームディレクトリやプロジェクトディレクトリなど、存在するディレクトリに変更してから、`claude` を再度実行してください。2344* ホームディレクトリやプロジェクトディレクトリなど、存在するディレクトリに変更してから、`claude` を再度実行してください。

2189* ディレクトリが同じパスで再作成された場合、シェルは削除されたものを保持しています。`cd "$PWD"` を実行するか、ディレクトリを出て再度入ってから、`claude` を再度実行してください。2345* ディレクトリが同じパスで再作成された場合、シェルは削除されたものを保持しています。`cd "$PWD"` を実行するか、ディレクトリを出て再度入ってから、`claude` を再度実行してください。

2346* macOS の `EPERM` の場合は、Cmd+Q でターミナルアプリを終了し、再度開いて、そのフォルダに戻り、`claude` を実行してください。そのフォルダで `ls` がまだ失敗する場合は、**System Settings > Privacy & Security > Files and Folders** を開き、ターミナルアプリのフォルダをオンにしてから、ターミナルを再度開いてください。

2347 

2348<h3 id="directory-couldnt-be-resolved-to-a-real-location">

2349 ディレクトリを実際の場所に解決できませんでした

2350</h3>

2351 

2352作業ディレクトリのサブディレクトリに対して `/add-dir` を実行し、Claude Code はディレクトリを実際の場所に解決できませんでした。

2353 

2354作業ディレクトリのサブディレクトリへのファイルアクセスは既にあるため、`/add-dir` はスキル、コマンド、エージェントのみを読み込みます。読み込む前に、Claude Code はディレクトリの実際の場所(シンボリックリンクが解決されている)が作業ディレクトリ内にあることを確認します。Claude Code がその場所を解決できない場合、何も読み込まず、このメッセージを表示します。

2355 

2356```text theme={null}

2357packages/app couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded. Check that it is a directory inside the working directory and try again.

2358```

2359 

2360**対処方法:**

2361 

2362* パスが作業ディレクトリ内の実際のディレクトリを示していることを確認してから、`/add-dir` を再度実行してください。

2363* メッセージはファイルアクセスを変更しません。ディレクトリの `.claude/` コンテンツが読み込まれなかったことのみを報告します。

2364 

2365v2.1.261 より前は、このメッセージは、作業ディレクトリが `/net/<host>` オートマウント上にあるときに、すべての `/add-dir <subdirectory>` に対して表示されました。Claude Code は設計上パスを解決することを拒否します。ディレクトリは問題なく、再試行は役に立ちません。

2190 2366 

2191<h3 id="workspace-not-trusted-when-starting-remote-control">2367<h3 id="workspace-not-trusted-when-starting-remote-control">

2192 Remote Control 開始時にワークスペースが信頼されていません2368 Remote Control 開始時にワークスペースが信頼されていません


2243Claude Code は `claude import` をフィーチャーフラグを通じてオンにします。このフラグは Anthropic から取得してディスクにキャッシュされます。このメッセージはキャッシュされた値がオフであることを意味します。原因は通常、以下のいずれかです。2419Claude Code は `claude import` をフィーチャーフラグを通じてオンにします。このフラグは Anthropic から取得してディスクにキャッシュされます。このメッセージはキャッシュされた値がオフであることを意味します。原因は通常、以下のいずれかです。

2244 2420 

2245* インストール後にセッションを開始していないため、Claude Code はまだフラグを取得していません。最初の `claude import` は、フィーチャーが利用可能な場合でもこれを出力できます。2421* インストール後にセッションを開始していないため、Claude Code はまだフラグを取得していません。最初の `claude import` は、フィーチャーが利用可能な場合でもこれを出力できます。

2246* Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、または Claude Platform on AWS を通じて Claude Code を使用しています。Claude Code はこれらのプロバイダーでフィーチャーフラグを取得しないため、`claude import` は利用不可のままです。2422* Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、Claude Platform on AWS、または [Claude apps gateway](/docs/ja/claude-apps-gateway#availability-and-limitations) を通じて Claude Code を使用しています。Claude Code はこれらのセッションでフィーチャーフラグを取得しないため、`claude import` は利用不可のままです。

2247* `DISABLE_TELEMETRY`、`DO_NOT_TRACK`、`DISABLE_GROWTHBOOK`、または [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/ja/env-vars) を設定しました。これらはフィーチャーフラグ取得をオフにするため、`claude import` は利用不可のままです。2423* `DISABLE_TELEMETRY`、`DO_NOT_TRACK`、`DISABLE_GROWTHBOOK`、または [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/ja/env-vars) を設定しました。これらはフィーチャーフラグ取得をオフにするため、`claude import` は利用不可のままです。

2248 2424 

2249**対処方法:**2425**対処方法:**


2255 Claude Code 設定を読み込めませんでした2431 Claude Code 設定を読み込めませんでした

2256</h3>2432</h3>

2257 2433 

2258[`claude import`](/docs/ja/cli-reference#cli-commands) を実行しましたが、Claude Code はログインと プロジェクトごとの状態を保存する `~/.claude.json` を解析できませんでした。サブコマンドはその可用性をチェックするためにそのファイルを読み込みますが、インタラクティブセッションが表示する復旧ダイアログを表示しないため、終了コード 1 で終了します。v2.1.222 より前は、読み込み不可能な設定ファイルを持つ `claude import` はインタラクティブセッションを開始し、その復旧ダイアログがファイルを処理していました。2434[`claude import`](/docs/ja/cli-reference#cli-commands) を実行しましたが、Claude Code はログインとプロジェクトごとの状態を保存する `~/.claude.json` を解析できませんでした。サブコマンドはその可用性をチェックするためにそのファイルを読み込みますが、インタラクティブセッションが表示する復旧ダイアログを表示しないため、終了コード 1 で終了します。v2.1.222 より前は、読み込み不可能な設定ファイルを持つ `claude import` はインタラクティブセッションを開始し、その復旧ダイアログがファイルを処理していました。

2259 2435 

2260```text theme={null}2436```text theme={null}

2261Could not read Claude Code config — run `claude` with no arguments to recover it.2437Could not read Claude Code config — run `claude` with no arguments to recover it.


2283* `claude_desktop_config.json` でサーバーの名前を変更して、文字、数字、ハイフン、アンダースコアのみを使用してから、`claude mcp add-from-claude-desktop` を再度実行してください。2459* `claude_desktop_config.json` でサーバーの名前を変更して、文字、数字、ハイフン、アンダースコアのみを使用してから、`claude mcp add-from-claude-desktop` を再度実行してください。

2284* そのサーバーを `claude mcp add` または `claude mcp add-json` で有効な名前の下に直接追加してください。[Claude Desktop から MCP サーバーをインポートする](/docs/ja/mcp#import-mcp-servers-from-claude-desktop) を参照してください。2460* そのサーバーを `claude mcp add` または `claude mcp add-json` で有効な名前の下に直接追加してください。[Claude Desktop から MCP サーバーをインポートする](/docs/ja/mcp#import-mcp-servers-from-claude-desktop) を参照してください。

2285 2461 

2462<h3 id="cannot-add-mcp-server-to-the-managed-scope">

2463 MCP サーバーを管理スコープに追加できません

2464</h3>

2465 

2466`claude mcp add` または `claude mcp add-json` を `--scope managed` で実行しました。そのスコープは、組織が [`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers) 管理設定を通じて提供するサーバーを保持しています。Claude Code はそれらを管理設定からのみ読み込むため、コマンドはそのスコープにサーバーを書き込むことができません。

2467 

2468```text theme={null}

2469Cannot add MCP server to scope: managed

2470```

2471 

2472**対処方法:**

2473 

2474* 書き込み可能なスコープにサーバーを追加してください。`local`、`user`、または `project`。`--scope` なしで、コマンドは `local` を使用します。[MCP インストールスコープ](/docs/ja/mcp#mcp-installation-scopes) を参照してください。

2475* 組織内のすべてのユーザーにサーバーを提供するには、デプロイする管理設定の [`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers) に追加してください。

2476 

2477<h3 id="cant-read-mcp-json">

2478 .mcp.json を読み込めません

2479</h3>

2480 

2481プロジェクトの [`.mcp.json`](/docs/ja/mcp#project-scope) を読み込むコマンド(`--scope project` を使用した `claude mcp add` または `claude mcp add-json`、または `claude mcp remove` など)は、現在のディレクトリのファイルが通常ファイルではないか、2 MiB より大きいことを検出したため、ファイルを読み込む代わりにこのエラーで終了します。

2482 

2483```text theme={null}

2484Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes. Fix or remove it, then run the command again.

2485```

2486 

2487v2.1.257 より前は、`.mcp.json` の FIFO はコマンドを無期限に待機させ、出力がなく、`/dev/zero` などのデバイスファイルへのシンボリックリンクはメモリを増やし、プロセスが強制終了されるまで続きました。

2488 

2489**対処方法:**

2490 

2491* 現在のディレクトリの `.mcp.json` に何があるかを確認してください。[プロジェクトスコープ形式](/docs/ja/mcp#project-scope) の通常の JSON ファイルに置き換えるか、削除してから、コマンドを再度実行してください。

2492 

2286<h3 id="anthropic-hosted-and-doesnt-support-local-oauth">2493<h3 id="anthropic-hosted-and-doesnt-support-local-oauth">

2287 サーバーは Anthropic ホストで、ローカル OAuth をサポートしていません2494 サーバーは Anthropic ホストで、ローカル OAuth をサポートしていません

2288</h3>2495</h3>


2337* ツール名がサーバーが公開する `mcp__<server>__<tool>` 名と一致することを確認してください。2544* ツール名がサーバーが公開する `mcp__<server>__<tool>` 名と一致することを確認してください。

2338* サーバーが開始するのに 30 秒以上かかる場合は、[`MCP_TIMEOUT`](/docs/ja/env-vars) を上げてください。2545* サーバーが開始するのに 30 秒以上かかる場合は、[`MCP_TIMEOUT`](/docs/ja/env-vars) を上げてください。

2339 2546 

2547<h3 id="oauth-callback-port-is-already-in-use">

2548 OAuth コールバックポートは既に使用中です

2549</h3>

2550 

2551OAuth で遠隔 MCP サーバーにサインインすると、Claude Code はサインインコールバックを受け取るためのローカルリスナーを開始します。そのリスナーが必要とするポートが別のプロセスに保持されている場合、サインインはこのメッセージで失敗します。これは主に [固定コールバックポート](/docs/ja/mcp#use-a-fixed-oauth-callback-port) で発生します。これは [`MCP_OAUTH_CALLBACK_PORT`](/docs/ja/env-vars) 変数または `--callback-port` を通じて設定されます。1 つなしで Claude Code は利用可能なポートを選択するためです。

2552 

2553```text theme={null}

2554OAuth callback port <port> is already in use — another process may be holding it. Run `lsof -ti:<port> -sTCP:LISTEN` to find it.

2555```

2556 

2557Windows では、提案されたコマンドは代わりに `netstat -ano | findstr :<port>` です。

2558 

2559**対処方法:**

2560 

2561* メッセージからコマンドを実行して、ポートを保持しているプロセスを見つけ、停止するか、完了するまで待ってください。

2562* 別のプログラムがそのポートを永続的に必要とする場合は、サーバーに別のリダイレクト URI を登録し、`MCP_OAUTH_CALLBACK_PORT` または `--callback-port` を使用してそのポートを設定してください。どちらを使用するかは関係ありません。

2563* その後、サインインを再度開始してください。例えば、`/mcp` でサーバーを選択してください。

2564 

2340<h3 id="security-review-fails-without-origin-head">2565<h3 id="security-review-fails-without-origin-head">

2341 /security-review は origin/HEAD なしで失敗します2566 /security-review は origin/HEAD なしで失敗します

2342</h3>2567</h3>


2346```text theme={null}2571```text theme={null}

2347Error: Shell command failed for pattern "!`git diff --name-only origin/HEAD...`": [stderr]2572Error: Shell command failed for pattern "!`git diff --name-only origin/HEAD...`": [stderr]

2348fatal: ambiguous argument 'origin/HEAD...': unknown revision or path not in the working tree.2573fatal: ambiguous argument 'origin/HEAD...': unknown revision or path not in the working tree.

2349Use '---- to separate paths from revisions, like this:2574Use '--' to separate paths from revisions, like this:

2350'git <command> [<revision>...] -- [<file>...]'2575'git <command> [<revision>...] -- [<file>...]'

2351```2576```

2352 2577 


2393 2618 

2394* プロンプトに目に見えるテキストを含めてください。スクリプトが変数またはファイルからプロンプトを構築する場合は、Claude Code を呼び出す前にソースが空でないことを確認してください。2619* プロンプトに目に見えるテキストを含めてください。スクリプトが変数またはファイルからプロンプトを構築する場合は、Claude Code を呼び出す前にソースが空でないことを確認してください。

2395 2620 

2621<h3 id="stream-json-input-carried-over-256m-characters-with-no-newline">

2622 stream-json 入力は改行なしで 256M 文字を超えました

2623</h3>

2624 

2625プログラムは `claude -p --input-format stream-json` 実行に stdin で改行なしで 268,435,456 文字以上を送信したため、Claude Code はこのエラーを stderr に出力し、終了コード 1 で終了します。メッセージはこの予算を `256M` として示します。v2.1.257 より前は、Claude Code はそのような入力を無制限にバッファリングし、プロセスがクラッシュするか強制終了されるまでメモリを増やしていました。

2626 

2627```text theme={null}

2628Error: stream-json input carried over 256M characters with no newline. Each stream-json message must be a single newline-terminated JSON line: either the producer is not newline-terminating its messages, or one message exceeded this budget.

2629```

2630 

2631改行なしでこの長さの入力は通常、プロデューサーが stream-json プロデューサーではないことを意味します。例えば、バイナリファイルまたは誤ってパイプされた通常のログ出力です。予算を超える単一のメッセージは同じチェックに失敗します。

2632 

2633**対処方法:**

2634 

2635* stdin にパイプされているものを確認してください。[`--input-format stream-json`](/docs/ja/cli-reference#cli-flags) では、すべてのメッセージは 1 つの改行で終了する JSON 行である必要があります。

2636* 通常のテキストを代わりに送信するには、`--input-format stream-json` を削除してください。`claude -p` はデフォルトで stdin から通常のテキストプロンプトを読み込みます。

2637 

2396<h3 id="unknown-command">2638<h3 id="unknown-command">

2397 不明なコマンド2639 不明なコマンド

2398</h3>2640</h3>


2479`/code-review ultra <PR#>` または `claude ultrareview <PR#>` を実行し、クラウドセッションを作成する前に Claude Code はサーバーに [Claude アカウントに接続された GitHub アカウント](/docs/ja/ultrareview#review-a-pull-request) が PR のリポジトリに到達できるかどうかを尋ねます。アカウントが接続されていないか、接続が期限切れになったため、クラウドクローンは失敗し、Claude Code は起動を拒否します。Claude Code は無料実行を使用したり、使用クレジットを請求したりしません。2721`/code-review ultra <PR#>` または `claude ultrareview <PR#>` を実行し、クラウドセッションを作成する前に Claude Code はサーバーに [Claude アカウントに接続された GitHub アカウント](/docs/ja/ultrareview#review-a-pull-request) が PR のリポジトリに到達できるかどうかを尋ねます。アカウントが接続されていないか、接続が期限切れになったため、クラウドクローンは失敗し、Claude Code は起動を拒否します。Claude Code は無料実行を使用したり、使用クレジットを請求したりしません。

2480 2722 

2481```text theme={null}2723```text theme={null}

2482Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected (or the connection expired). To fix: run /web-setup to reuse your GitHub CLI login, or connect an account at https://claude.ai/code/onboarding?step=alt-auth — then re-run /code-review ultra 1234 (allow a minute after connecting).2724Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected (or the connection expired). To fix: run /web-setup to reuse your GitHub CLI login, or connect an account at https://claude.ai/connect-github — then re-run /code-review ultra 1234 (allow a minute after connecting).

2483```2725```

2484 2726 

2485[`/web-setup`](/docs/ja/web-quickstart#connect-from-your-terminal) がセッションで利用できない場合、メッセージは claude.ai リンクのみを示します。2727[`/web-setup`](/docs/ja/web-quickstart#connect-from-your-terminal) がセッションで利用できない場合、メッセージは claude.ai リンクのみを示します。

2486 2728 

2487**対処方法:**2729**対処方法:**

2488 2730 

2489* `/web-setup` を実行して GitHub CLI ログインを Claude アカウントに接続するか、[claude.ai/code/onboarding](https://claude.ai/code/onboarding?step=alt-auth) でアカウントを接続してください。2731* `/web-setup` を実行して GitHub CLI ログインを Claude アカウントに接続するか、[claude.ai/connect-github](https://claude.ai/connect-github) でアカウントを接続してください。

2490* 接続後 1 分後にレビューを再度実行してください。2732* 接続後 1 分後にレビューを再度実行してください。

2491 2733 

2492v2.1.248 より前は、Claude Code は起動前にこれをチェックしませんでした。2734v2.1.248 より前は、Claude Code は起動前にこれをチェックしませんでした。


2643 2885 

2644これらのエラーは、[プラグイン](/docs/ja/plugins)と[マーケットプレイス](/docs/ja/plugin-marketplaces)の設定から発生します。このページのメッセージを生成しないプラグインの問題(マーケットプレイス URL が読み込まれない、またはプラグインがインストールされても表示されないなど)については、[プラグインのトラブルシューティング](/docs/ja/discover-plugins#troubleshooting)を参照してください。2886これらのエラーは、[プラグイン](/docs/ja/plugins)と[マーケットプレイス](/docs/ja/plugin-marketplaces)の設定から発生します。このページのメッセージを生成しないプラグインの問題(マーケットプレイス URL が読み込まれない、またはプラグインがインストールされても表示されないなど)については、[プラグインのトラブルシューティング](/docs/ja/discover-plugins#troubleshooting)を参照してください。

2645 2887 

2888<h3 id="plugin-eval-is-currently-in-early-access">

2889 plugin eval は現在早期アクセス段階です

2890</h3>

2891 

2892[`claude plugin eval`](/docs/ja/plugin-evals)または `claude plugin eval init` を実行し、何もする前に終了コード 1 で次のいずれかのメッセージが表示されました:

2893 

2894```text theme={null}

2895`plugin eval` is currently in early access

2896```

2897 

2898```text theme={null}

2899`plugin eval` is currently unavailable

2900```

2901 

2902最初のメッセージは、ビルドがコマンドが一般的に利用可能になった最初のバージョンである v2.1.269 より古いことを意味します。2 番目のメッセージは、Anthropic がサーバー側でコマンドをオフにしたことを意味します。マシン上の何もそれをオンに戻しません。

2903 

2904**対処方法:**

2905 

2906* `claude --version` を実行してから `claude update` を実行し、新しいセッションでコマンドを再度実行してください。[プラグイン eval の要件](/docs/ja/plugin-evals#requirements)を参照してください

2907* 現在のビルドで 2 番目のメッセージが表示される場合は、別の `claude update` の後で後で再度試してください

2908 

2646<h3 id="marketplace-is-registered-from-an-untrusted-source">2909<h3 id="marketplace-is-registered-from-an-untrusted-source">

2647 マーケットプレイスが信頼されていないソースから登録されている2910 マーケットプレイスが信頼されていないソースから登録されている

2648</h3>2911</h3>


2729commands path escapes plugin directory: ./commands/deploy.md — it resolves to /home/user/shared/deploy.md, outside the plugin directory2992commands path escapes plugin directory: ./commands/deploy.md — it resolves to /home/user/shared/deploy.md, outside the plugin directory

2730```2993```

2731 2994 

2995macOS と Linux では、Claude Code はコンポーネントパスにバックスラッシュが含まれている場合も拒否します。パスがプラグイン内に留まっていても、Windows スタイルのセパレータを使用するコンポーネントパスを持つプラグインは Windows で読み込まれ、他のプラットフォームではこの拒否をトリガーします:

2996 

2997```text theme={null}

2998commands path escapes plugin directory: ./commands\deploy.md — its path contains a backslash, which is not resolved reliably on this platform

2999```

3000 

2732v2.1.251 より前は、Claude Code はマーケットプレイスエントリで宣言された `commands` パスを、プラグインディレクトリの外を指している場合でも読み込みました。Claude Code は既に `plugin.json` で宣言されたパスとマーケットプレイスエントリの他のコンポーネントパスを拒否していました。3001v2.1.251 より前は、Claude Code はマーケットプレイスエントリで宣言された `commands` パスを、プラグインディレクトリの外を指している場合でも読み込みました。Claude Code は既に `plugin.json` で宣言されたパスとマーケットプレイスエントリの他のコンポーネントパスを拒否していました。

2733 3002 

2734v2.1.257 より前は、チェックはパスのスペルのみを確認し、シンボリックリンクがどこにつながるかは確認しませんでした。3003v2.1.257 より前は、チェックはパスのスペルのみを確認し、シンボリックリンクがどこにつながるかは確認しませんでした。


2737 3006 

2738* 参照されたファイルをプラグインディレクトリ内に移動し、`./` 相対パスでそれを指すようにしてください3007* 参照されたファイルをプラグインディレクトリ内に移動し、`./` 相対パスでそれを指すようにしてください

2739* パスがプラグイン外のファイルへのシンボリックリンクの場合は、シンボリックリンクをファイルのコピーに置き換えてください3008* パスがプラグイン外のファイルへのシンボリックリンクの場合は、シンボリックリンクをファイルのコピーに置き換えてください

3009* メッセージがパスにバックスラッシュが含まれていると言う場合は、例えば `./commands/deploy.md` のようにフォワードスラッシュでパスを記述してください

2740* 同じマーケットプレイス内の他のプラグインとファイルを共有するには、プラグインディレクトリ内のシンボリックリンクを使用してリンクし、[シンボリックリンクルール](/docs/ja/plugins-reference#share-files-within-a-marketplace-with-symlinks)に従ってください3010* 同じマーケットプレイス内の他のプラグインとファイルを共有するには、プラグインディレクトリ内のシンボリックリンクを使用してリンクし、[シンボリックリンクルール](/docs/ja/plugins-reference#share-files-within-a-marketplace-with-symlinks)に従ってください

2741 3011 

3012<h3 id="path-could-not-be-checked">

3013 パスをチェックできませんでした

3014</h3>

3015 

3016Claude Code はプラグインパスが存在するかどうかをオペレーティングシステムに問い合わせ、「見つかりません」以外のエラーを受け取ったため、パスが名前を付けるものを読み込みません。プラグインのどの程度が読み込まれるかは、どのパスが失敗したかによって異なります:

3017 

3018* プラグインの [デフォルトコンポーネントフォルダ](/docs/ja/plugins-reference#file-locations-reference)の 1 つ(`skills/` や `commands/` など):プラグインの他のコンポーネントは引き続き読み込まれます

3019* プラグイン自体のディレクトリ:そのプラグインからは何も読み込まれません

3020 

3021存在しないパスについてはこのエラーは表示されません。`/plugin` では、エラーはプラグインの下に表示され、パスとオペレーティングシステムが返したコードに名前を付けます:

3022 

3023```text theme={null}

3024skills path could not be checked: /home/user/my-plugin/skills (ELOOP)

3025```

3026 

3027`claude plugin list` では、同じエラーは `Path not found: /home/user/my-plugin/skills (skills, ELOOP)` と表示されます。

3028 

3029このエラーを生成する原因には以下が含まれます:

3030 

3031* `ELOOP`:パス内のシンボリックリンクが自分自身を指しているか、ループを形成している

3032* `EIO` または `ESTALE`:パスが壊れているか古いネットワークマウント上にある

3033* `EACCES`:パスの上のディレクトリの 1 つがそれを通過する権限を拒否している

3034 

3035**対処方法:**

3036 

3037* 自分自身を指すシンボリックリンクを実フォルダに置き換えるか、削除してください

3038* パスがネットワークマウント上にある場合は、共有を再マウントしてください

3039* コードが `EACCES` の場合は、パスの上のディレクトリに対する実行権限を復元してください

3040* パスを修正した後、`/reload-plugins` を実行するか、Claude Code を再起動して、プラグインまたはコンポーネントを読み込んでください

3041 

3042v2.1.265 より前は、Claude Code はチェックできないデフォルトコンポーネントフォルダを存在しないものとして扱い、エラーなしでそのコンポーネントなしでプラグインを読み込みました。

3043 

3044<h3 id="marketplace-entry-path-does-not-stay-inside-the-marketplace-directory">

3045 マーケットプレイスエントリパスがマーケットプレイスディレクトリ内に留まらない

3046</h3>

3047 

3048プラグインの[マーケットプレイスエントリ](/docs/ja/plugin-marketplaces#plugin-entries)は、Claude Code がマーケットプレイス自体のディレクトリ内の場所に解決できないソースパスを宣言しているため、プラグインはインストールまたは読み込まれません。拒否は以下をカバーしています:

3049 

3050* 絶対パス、`..` でマーケットプレイスから抜け出す、またはネットワークパスのようにスペルされたエントリパス

3051* git または URL などのリモートソースから取得されたマーケットプレイス内のエントリで、マーケットプレイスディレクトリの外に解決するシンボリックリンクを通じてターゲットに到達する

3052* マーケットプレイスの `marketplace.json` への直接 URL から追加された相対エントリ:Claude Code はそのファイルのみをダウンロードするため、パスが名前を付けるローカルプラグインファイルは存在しません。[相対パスを持つプラグインが URL ベースのマーケットプレイスで失敗する](/docs/ja/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces)を参照してください

3053 

3054`claude plugin install` は拒否を次のように報告します:

3055 

3056```text theme={null}

3057Cannot install my-plugin@my-marketplace: its marketplace entry path does not stay inside the marketplace directory (an absolute, climbing, network-shaped or link-traversing entry, an entry of a fetched marketplace that resolves outside its tree — or a relative entry in a url-catalog marketplace, which has no local directory)

3058```

3059 

3060既にインストールされているプラグインのエントリが同じチェックに失敗した場合、`claude plugin list` はプラグインを `failed to load` として表示します:

3061 

3062```text theme={null}

3063Plugin source path refused: ./my-plugin does not stay inside its marketplace directory. Check that the marketplace entry has a plain relative path.

3064```

3065 

3066**対処方法:**

3067 

3068* マーケットプレイスを保守する場合は、エントリの `source` を `./plugins/my-plugin` のようなプレーンな相対パスとして記述し、それが通過するシンボリックリンクをマーケットプレイスディレクトリ内を指すようにしてください

3069* マーケットプレイスを直接 URL から追加した場合、相対エントリは解決できません。マーケットプレイス作成者に [別のプラグインソース](/docs/ja/plugin-marketplaces#plugin-sources)を使用するよう依頼するか、代わりに git リポジトリからマーケットプレイスを追加してください

3070 

2742<h3 id="failed-to-load-marketplace-configuration">3071<h3 id="failed-to-load-marketplace-configuration">

2743 マーケットプレイス設定の読み込みに失敗した3072 マーケットプレイス設定の読み込みに失敗した

2744</h3>3073</h3>


2985 3314 

2986* 通常は何もしません。拒否は Claude にツール結果として到達し、拒否された操作は実行されません3315* 通常は何もしません。拒否は Claude にツール結果として到達し、拒否された操作は実行されません

2987* シンボリックリンク拒否が 1 つのパスで繰り返される場合、ビルドツールやファイルウォッチャーなど、リンクをそこで書き直し続けるものを見つけるか、Claude にリンクされたものの代わりにファイルの解決されたパスを使用するよう依頼します3316* シンボリックリンク拒否が 1 つのパスで繰り返される場合、ビルドツールやファイルウォッチャーなど、リンクをそこで書き直し続けるものを見つけるか、Claude にリンクされたものの代わりにファイルの解決されたパスを使用するよう依頼します

3317* Claude Code が Windows 内の AppContainer または制限トークンサンドボックスで実行されている場合、この拒否がすべてのファイルに対して表示される場合は、v2.1.265 以降にアップグレードします

2988* ripgrep 拒否の場合、パッケージマネージャーで ripgrep をインストールして、`rg` が `PATH` 上の絶対パスに解決されるようにするか、作業ディレクトリの下で検索を保持します3318* ripgrep 拒否の場合、パッケージマネージャーで ripgrep をインストールして、`rg` が `PATH` 上の絶対パスに解決されるようにするか、作業ディレクトリの下で検索を保持します

2989 3319 

2990v2.1.251 より前は、Claude Code はファイル書き込みに対してのみパスの解決を再チェックしたため、権限チェック後に置き換えられたリンクは、メッセージなしで読み取りまたは検索を別の場所にリダイレクトする可能性がありました。これらの拒否のうち、親ディレクトリ書き込み拒否のみが以前のバージョンに表示されます。3320v2.1.251 より前は、Claude Code はファイル書き込みに対してのみパスの解決を再チェックしたため、権限チェック後に置き換えられたリンクは、メッセージなしで読み取りまたは検索を別の場所にリダイレクトする可能性がありました。これらの拒否のうち、親ディレクトリ書き込み拒否のみが以前のバージョンに表示されます。


2993 Task output swap refused3323 Task output swap refused

2994</h3>3324</h3>

2995 3325 

2996Claude Code は各 Bash コマンドの出力をその一時ディレクトリの下のファイルに保存します。このメッセージは、そのファイルのパス上のディレクトリがシンボリックリンクであるか移動されたことを意味するため、Claude Code はそのパスを通じて出力を書き込むのではなく、コマンドの実行を拒否しました。メッセージは Bash ツール結果に表示されます。3326Claude Code は各 Bash コマンドの出力をその一時ディレクトリの下のファイルに保存します。このファイルを開くたびに、パスがまだ Claude Code が作成したファイルにつながっていることを確認します。シンボリックリンク、追加のハードリンク、または移動されたディレクトリがそれをリダイレクトしていません。このメッセージは、そのチェックが失敗したことを意味するため、Claude Code はそのパスを通じて出力を書き込むのではなく、操作を拒否しました。メッセージは Bash ツール結果に表示されます。

2997 3327 

2998```text wrap theme={null}3328```text wrap theme={null}

2999task output swap refused (tasks dir moved or linked): /private/tmp/claude-501/-Users-you-my-project/1f0e62dc-4b0a-4f5e-9c2d-8a7b6c5d4e3f/tasks/b7k2f9m3q.output. To recover: restart Claude Code with CLAUDE_CODE_TMPDIR set to a fresh directory; or, if /private/tmp/claude-501/-Users-you-my-project is a stray directory or a symbolic link that should not be there, remove that entry itself (not what it points to) and restart.3329task output swap refused (tasks dir moved or linked): /private/tmp/claude-501/-Users-you-my-project/1f0e62dc-4b0a-4f5e-9c2d-8a7b6c5d4e3f/tasks/b7k2f9m3q.output. To recover: restart Claude Code with CLAUDE_CODE_TMPDIR set to a fresh directory; or, if /private/tmp/claude-501/-Users-you-my-project is a stray directory or a symbolic link that should not be there, remove that entry itself (not what it points to) and restart.

3000```3330```

3001 3331 

3332括弧内のテキストは、失敗したチェックに名前を付けます。`output symlink was re-pointed`、`output file identity changed`、`not a regular file` などの理由はすべて同じ条件を報告します。出力パスのどこかまたはその沿いに何かがもはや Claude Code が作成したファイルではありません。一部の理由のみが `To recover:` 文を持ちます。

3333 

3334コマンドがまだ実行中にチェックが失敗した場合、Claude Code はコマンドを停止し、その結果は以下を報告します。

3335 

3336```text theme={null}

3337Command killed: its output file was replaced or could no longer be verified

3338```

3339 

3002**What to do:**3340**What to do:**

3003 3341 

3004* v2.1.260 以降にアップグレードします。以前のバージョンは、リンクまたは移動されたディレクトリが存在しない場合でも、このメッセージを表示することがあります3342* v2.1.260 以降にアップグレードします。以前のバージョンは、リンクまたは移動されたディレクトリが存在しない場合でも、このメッセージを表示することがあります

3005* [`CLAUDE_CODE_TMPDIR`](/docs/ja/env-vars)を新しいディレクトリに設定して Claude Code を再起動します3343* [`CLAUDE_CODE_TMPDIR`](/docs/ja/env-vars)を新しいディレクトリに設定して Claude Code を再起動します

3006* または、プロジェクトのディレクトリを Claude Code 一時ディレクトリの下で確認します。例のメッセージでは `/private/tmp/claude-501/-Users-you-my-project` です。そのパスがシンボリックリンクであるか、そこにあるべきではないディレクトリである場合、リンクのターゲットではなく、リンクまたはディレクトリ自体を削除して、Claude Code を再起動します3344* または、プロジェクトのディレクトリを Claude Code 一時ディレクトリの下で確認します。例のメッセージでは `/private/tmp/claude-501/-Users-you-my-project` です。そのパスがシンボリックリンクであるか、そこにあるべきではないディレクトリである場合、リンクのターゲットではなく、リンクまたはディレクトリ自体を削除して、Claude Code を再起動します

3345* 拒否が繰り返される場合、セッションが実行されている間に、プロセスが Claude Code の一時ディレクトリの下のエントリを置き換え、リンク、または削除しています。[`CLAUDE_CODE_TMPDIR`](/docs/ja/env-vars)を他に何も管理しないディレクトリに設定して再起動します

3346 

3347<h3 id="the-source-file-is-not-valid-utf-8-text">

3348 The source file is not valid UTF-8 text

3349</h3>

3350 

3351Claude は、バイトがテキストとしてデコードされないファイルから [artifact](/docs/ja/artifacts)を公開しようとしました。または、テキストにはすでに置換文字 `U+FFFD` が含まれているため、Claude Code は何もアップロードする前に公開を拒否しました。メッセージは Artifact ツール結果に表示され、修正する最初の位置に名前を付けます。

3352 

3353```text wrap theme={null}

3354file_path: the source file is not valid UTF-8 text (first invalid byte at line 12, column 40). It may be saved in another encoding or contain binary data. Rewrite it as UTF-8, then publish again. Nothing was published.

3355 

3356file_path: the source file has the replacement character U+FFFD at line 12, column 40, usually left where an earlier edit or paste lost a character. Replace it with the intended text (in HTML, write an intended U+FFFD as &#xFFFD;), then publish again. Nothing was published.

3357```

3358 

3359Claude Code はファイルを UTF-8 としてデコードするか、リトルエンディアン UTF-16 バイト順マークで始まる場合は UTF-16 としてデコードします。そのような UTF-16 ファイルがデコードされない場合、最初のメッセージは `UTF-16` に名前を付け、ファイルを UTF-8 として書き直すよう指示します。名前の後に複数の位置が続く場合、メッセージは位置の後に `(+2 more)` などのカウントを追加します。

3360 

3361**What to do:**

3362 

3363* 通常は何もしません。Claude はファイルを書き直して公開します

3364* ファイルが自分で書いたか、エクスポートしたものである場合は、UTF-8 として再度保存し、各 `U+FFFD` を以前の編集、貼り付け、または変換で失われた文字に置き換えます

3365* ページに意図的な `U+FFFD` を表示するには、リテラル文字の代わりに HTML で `&#xFFFD;` として書き込みます

3366 

3367v2.1.267 より前は、Claude Code はそのようなファイルをチェックなしでアップロードし、サーバーは代わりに公開を拒否しました。

3007 3368 

3008<h2 id="background-session-errors">3369<h2 id="background-session-errors">

3009 バックグラウンドセッションエラー3370 バックグラウンドセッションエラー


3336* メッセージが行を引用する場合、それが名前を付けるものを修正してから、セッションを開くか再度ディスパッチします。次の試行はサービスを再度開始します3697* メッセージが行を引用する場合、それが名前を付けるものを修正してから、セッションを開くか再度ディスパッチします。次の試行はサービスを再度開始します

3337* `claude daemon status` を実行して、サービスが現在実行されているかどうかをチェックします3698* `claude daemon status` を実行して、サービスが現在実行されているかどうかをチェックします

3338 3699 

3700<h3 id="working-directory-no-longer-exists-when-starting-a-background-session">

3701 バックグラウンドセッションを開始するときに作業ディレクトリが存在しなくなりました

3702</h3>

3703 

3704[バックグラウンドセッション](/docs/ja/agent-view)を開始しようとしました。そのセッションは、もう存在しないディレクトリで実行されます。これは、エージェントビューからディスパッチするか、作業中のディレクトリが削除または移動された後に `/background` を実行するときに発生します。また、プロセスが終了し、そのディレクトリが消えたセッションに接続または再開するときにも発生します。新しいプロセスは同じディレクトリで開始するためです。Claude Code はセッションを開始せず、メッセージは見つからないディレクトリに名前を付けます:

3705 

3706```text theme={null}

3707Couldn't start a background session (working directory no longer exists or is not accessible: /tmp/demo)

3708```

3709 

3710v2.1.257 より前では、セッションは開始されたように見え、その後エージェントビューで同じ理由で失敗した行として表示されました。

3711 

3712**対処方法:**

3713 

3714* メッセージが名前を付けるディレクトリを再作成するか、存在するディレクトリからディスパッチしてから、再度試してください

3715 

3339<h2 id="wrapper-and-ide-errors">3716<h2 id="wrapper-and-ide-errors">

3340 ラッパーと IDE エラー3717 ラッパーと IDE エラー

3341</h2>3718</h2>


3600 3977 

3601**対応方法:**3978**対応方法:**

3602 3979 

3603* メッセージが名前を付ける原因に対応してください。ネットワーク原因の場合は、このマシンが `api.anthropic.com` に到達できることを確認してください。認証原因の場合は、`/status` で サインインを確認してください。3980* メッセージが名前を付ける原因に対応してください。ネットワーク原因の場合は、このマシンが `api.anthropic.com` に到達できることを確認してください。認証原因の場合は、`/status` でサインインを確認してください。

3604* `/status` または `claude doctor` を実行して、完全な診断を取得してください。3981* `/status` または `claude doctor` を実行して、完全な診断を取得してください。

3605 3982 

3606v2.1.248 より前では、Claude Code は失敗した設定取得をデバッグログにのみ報告していました。3983v2.1.248 より前では、Claude Code は失敗した設定取得をデバッグログにのみ報告していました。


3660* macOS 管理設定プロファイル、`ユーザーごとの管理設定` または `デバイスレベルの管理設定`4037* macOS 管理設定プロファイル、`ユーザーごとの管理設定` または `デバイスレベルの管理設定`

3661* Windows レジストリ値、`Registry: HKLM\SOFTWARE\Policies\ClaudeCode\Settings`4038* Windows レジストリ値、`Registry: HKLM\SOFTWARE\Policies\ClaudeCode\Settings`

3662 4039 

3663[Claude Code がドロップした エントリを検索](/docs/ja/managed-settings#find-entries-claude-code-dropped) は、各ソースを解析不可能にするものをリストしています。4040[Claude Code がドロップしたエントリを検索](/docs/ja/managed-settings#find-entries-claude-code-dropped) は、各ソースを解析不可能にするものをリストしています。

3664 4041 

3665Claude Code は、別の管理ソースが有効なポリシーを配信する場合でも、起動を拒否します。この エラーは対話型セッション、`claude -p`、Agent SDK セッション、[バックグラウンドセッション](/docs/ja/agent-view)、およびほとんどのサブコマンド(`claude doctor` を含む)で表示されます。拒否は意図的に閉じられます。Claude Code が解析できないドキュメント内の設定は強制できず、とにかく起動すると、組織の制御なしでセッションが実行されます。4042Claude Code は、別の管理ソースが有効なポリシーを配信する場合でも、起動を拒否します。このエラーは対話型セッション、`claude -p`、Agent SDK セッション、[バックグラウンドセッション](/docs/ja/agent-view)、およびほとんどのサブコマンド(`claude doctor` を含む)で表示されます。拒否は意図的に閉じられます。Claude Code が解析できないドキュメント内の設定は強制できず、とにかく起動すると、組織の制御なしでセッションが実行されます。

3666 4043 

3667解析可能なドキュメント内のスキーマ問題はこのエラーを生成しません。[Claude Code がドロップしたエントリを検索](/docs/ja/managed-settings#find-entries-claude-code-dropped) は、Claude Code が 1 つで何を行うかをカバーしています。4044解析可能なドキュメント内のスキーマ問題はこのエラーを生成しません。[Claude Code がドロップしたエントリを検索](/docs/ja/managed-settings#find-entries-claude-code-dropped) は、Claude Code が 1 つで何を行うかをカバーしています。

3668 4045 


3706**対応方法:**4083**対応方法:**

3707 4084 

3708* メッセージでリストされた設定ファイルで、ルールを閉じ括弧で終わるように書き直してください。例えば、`Bash(ls) x` の代わりに `Bash(ls *)` を使用してください。4085* メッセージでリストされた設定ファイルで、ルールを閉じ括弧で終わるように書き直してください。例えば、`Bash(ls) x` の代わりに `Bash(ls *)` を使用してください。

3709* コンテンツ内の括弧はそのままにしてください。それらはリテラルなので、`Edit(./Finance (2024)/**)` などのルールは エスケープなしで有効です。4086* コンテンツ内の括弧はそのままにしてください。それらはリテラルなので、`Edit(./Finance (2024)/**)` などのルールはエスケープなしで有効です。

3710 4087 

3711v2.1.260 より前では、Claude Code は一致しない括弧を持つルールを `Mismatched parentheses` として報告していました。4088v2.1.260 より前では、Claude Code は一致しない括弧を持つルールを `Mismatched parentheses` として報告していました。

3712 4089 


3749* 警告が括弧内に名前を付けるソースでルールを修正してください。設定ファイルパス、または `--allowed-tools` フラグ自体。ディスク上に存在しない `claude-settings-<hash>.json` パスはインライン `--settings` 値を表します。そのフラグに渡す JSON を修正してください。4126* 警告が括弧内に名前を付けるソースでルールを修正してください。設定ファイルパス、または `--allowed-tools` フラグ自体。ディスク上に存在しない `claude-settings-<hash>.json` パスはインライン `--settings` 値を表します。そのフラグに渡す JSON を修正してください。

3750* ソースが `managed policy settings` と読む場合は、警告を管理設定を保守している人に転送してください。自分でそれをクリアすることはできません。4127* ソースが `managed policy settings` と読む場合は、警告を管理設定を保守している人に転送してください。自分でそれをクリアすることはできません。

3751 4128 

3752Claude Code は同じ形状の deny および ask ルールについて警告しません。それらが一致する追加コマンドを拒否またはプロンプトします。また、サブコマンドが最初の `*` の前に来るルール(`Bash(git commit *)` など)、または `*` の後に オプション以外の単語がないルール(`Bash(git *)` など)、または `:*` プレフィックスルール(`Bash(git:*)` など)についても警告しません。4129Claude Code は同じ形状の deny および ask ルールについて警告しません。それらが一致する追加コマンドを拒否またはプロンプトします。また、サブコマンドが最初の `*` の前に来るルール(`Bash(git commit *)` など)、または `*` の後にオプション以外の単語がないルール(`Bash(git *)` など)、または `:*` プレフィックスルール(`Bash(git:*)` など)についても警告しません。

3753 4130 

3754[バックグラウンドセッション](/docs/ja/agent-view) または `--output-format json` または `stream-json` では、Claude Code は警告をデバッグログに stderr の代わりに書き込むため、マシン読み取り出力はクリーンなままです。`--debug` で `~/.claude/debug/<session-id>.txt` でキャプチャしてください。v2.1.246 より前では、Claude Code はこれらのルールを警告なしで受け入れていました。4131[バックグラウンドセッション](/docs/ja/agent-view) または `--output-format json` または `stream-json` では、Claude Code は警告をデバッグログに stderr の代わりに書き込むため、マシン読み取り出力はクリーンなままです。`--debug` で `~/.claude/debug/<session-id>.txt` でキャプチャしてください。v2.1.246 より前では、Claude Code はこれらのルールを警告なしで受け入れていました。

3755 4132 


3839 4216 

3840v2.1.233 より前では、Claude Code は認識しないモデル ID のリクエストを送信したときに行を書き込みませんでした。4217v2.1.233 より前では、Claude Code は認識しないモデル ID のリクエストを送信したときに行を書き込みませんでした。

3841 4218 

4219<h3 id="stale-sandbox-mask-files-left-by-a-killed-session">

4220 殺されたセッションによって残された古いサンドボックスマスクファイル

4221</h3>

4222 

4223`claude doctor` はその診断でこの警告を出力し、`/status` は同じ行をリストします。これは、[サンドボックス](/docs/ja/sandboxing) がファイルシステム分離をオンにして有効になっている Linux および WSL2 に表示されます。

4224 

4225サンドボックスコマンドが実行されている間、サンドボックスはまだ存在しないファイルへの書き込み拒否を保持し、そこに 0 バイトの読み取り専用プレースホルダーを作成し、その後削除します。SIGKILL によって殺されたセッションなど、そのクリーンアップが実行される前に、プレースホルダーが残ります。後のセッションは、起動するたびにそれらを読み取り専用で再度バインドするため、「はい、今後は尋ねない」を保存するなどの設定書き込みは、そこに座っているものが失敗します。

4226 

4227```text theme={null}

4228- Stale sandbox mask files left by a killed session: /home/you/project/.claude/settings.local.json

4229 Fix: Remove each with `rm <path>` while no other Claude Code session is running in that project — a 0-byte read-only file where a settings file belongs makes "Yes, and don't ask again" fail to save, and the sandbox binds it read-only again on every start

4230```

4231 

4232**対応方法:**

4233 

4234* そのプロジェクトで実行されている他の Claude Code セッションを終了し、`rm` で各リストされたファイルを削除してください。警告は最大 3 つのファイルに名前を付け、残りをカウントするため、削除されるまで `claude doctor` を再度実行してください。別のセッションのサンドボックスがまだ使用しているプレースホルダーは、そのセッションの書き込み保護の生きた部分です。

4235* 「はい、今後は尋ねない」で保存した権限の選択が固定されなかった場合は、プレースホルダーを削除した後、再度保存してください。

4236 

4237v2.1.257 より前では、`claude doctor` はこれらのファイルにフラグを立てませんでした。以前のバージョンは、セッションが殺されたときに同じプレースホルダーを残します。

4238 

3842<h2 id="responses-seem-lower-quality-than-usual">4239<h2 id="responses-seem-lower-quality-than-usual">

3843 応答の品質がいつもより低いように見える4240 応答の品質がいつもより低いように見える

3844</h2>4241</h2>

Details

41* **MCP サーバー**:[claude.ai からのコネクタ](/docs/ja/mcp#use-mcp-servers-from-claude-ai)は、claude.ai サブスクリプションがアクティブな認証方法である場合にのみロードされます。[ツール検索](/docs/ja/mcp#configure-tool-search)は `ANTHROPIC_BASE_URL` がファーストパーティ以外のホストを指している場合、デフォルトでオフになり、Google Cloud の Agent Platform の Claude 4.5 世代より前のモデルまたは Microsoft Foundry の [Azure でホストされているデプロイメント](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options)ではサポートされていません41* **MCP サーバー**:[claude.ai からのコネクタ](/docs/ja/mcp#use-mcp-servers-from-claude-ai)は、claude.ai サブスクリプションがアクティブな認証方法である場合にのみロードされます。[ツール検索](/docs/ja/mcp#configure-tool-search)は `ANTHROPIC_BASE_URL` がファーストパーティ以外のホストを指している場合、デフォルトでオフになり、Google Cloud の Agent Platform の Claude 4.5 世代より前のモデルまたは Microsoft Foundry の [Azure でホストされているデプロイメント](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options)ではサポートされていません

42* **Subagents**:組み込みの [Explore subagent](/docs/ja/sub-agents#built-in-subagents)は、Claude API で継承されたモデルを Opus に制限し、他のプロバイダー(Claude Platform on AWS を含む)では直接メイン会話のモデルを継承します42* **Subagents**:組み込みの [Explore subagent](/docs/ja/sub-agents#built-in-subagents)は、Claude API で継承されたモデルを Opus に制限し、他のプロバイダー(Claude Platform on AWS を含む)では直接メイン会話のモデルを継承します

43* **[Commands](/docs/ja/commands#all-commands)**:43* **[Commands](/docs/ja/commands#all-commands)**:

44 * `/design-sync` と `/import` およびその `claude import` サブコマンド形式は、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、および Claude Platform on AWS では利用不可です44 * `/design-sync` と `/import` およびその `claude import` サブコマンド形式は、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、および Claude Platform on AWS では利用不可です。また、[Claude apps gateway](/docs/ja/claude-apps-gateway#availability-and-limitations) を通じても利用不可です

45 * `/voice` には claude.ai アカウントが必要です45 * `/voice` には claude.ai アカウントが必要です

46 * `/list-agents` およびそのエイリアス `/peers` は、[クロスセッションメッセージング](/docs/ja/cross-session-messaging#availability)が有効になっているセッションでのみ利用可能です46 * `/list-agents` およびそのエイリアス `/peers` は、[クロスセッションメッセージング](/docs/ja/cross-session-messaging#availability)が有効になっているセッションでのみ利用可能です

47 47 

fullscreen.md +4 −2

Details

33 * 最初のメッセージの前に巻き戻した場合、Claude Code は空の会話で再起動されます33 * 最初のメッセージの前に巻き戻した場合、Claude Code は空の会話で再起動されます

34* [権限モード](/docs/ja/permission-modes)と[努力レベル](/docs/ja/model-config#adjust-effort-level)34* [権限モード](/docs/ja/permission-modes)と[努力レベル](/docs/ja/model-config#adjust-effort-level)

35* [`/model`](/docs/ja/model-config#setting-your-model)で最後に選択したモデル35* [`/model`](/docs/ja/model-config#setting-your-model)で最後に選択したモデル

36* [`--allowed-tools` または `--disallowed-tools`](/docs/ja/cli-reference#cli-flags)で渡したルール、および`--agent`、`--agents`、`--append-system-prompt` フラグ36* [`--allowed-tools` または `--disallowed-tools`](/docs/ja/cli-reference#cli-flags)で渡したルール、および `--agent`、`--agents`、`--append-system-prompt`、および `--system-prompt-snapshot` フラグ

37 37 

38Claude Code は、再起動されたプロセスに渡すことができない制限がセッションにある場合、再起動を拒否します。渡すことができない制限には以下が含まれます。38Claude Code は、再起動されたプロセスに渡すことができない制限がセッションにある場合、再起動を拒否します。渡すことができない制限には以下が含まれます。

39 39 


149 149 

150これらのアクションは再バインド可能です。アクション名の完全なリスト(デフォルトバインディングがない半ページおよび全ページバリアントを含む)については、[スクロールアクション](/docs/ja/keybindings#scroll-actions)を参照してください。150これらのアクションは再バインド可能です。アクション名の完全なリスト(デフォルトバインディングがない半ページおよび全ページバリアントを含む)については、[スクロールアクション](/docs/ja/keybindings#scroll-actions)を参照してください。

151 151 

152スクロールアップ中は、会話の上部に薄いヘッダー行が表示され、ビューの上にスクロールした最新のプロンプトが表示されます。その行をクリックしてそのプロンプトにジャンプしてください。

153 

152<h3 id="auto-follow">154<h3 id="auto-follow">

153 自動フォロー155 自動フォロー

154</h3>156</h3>


179 181 

180値 `3` は `vim` および同様のアプリケーションのデフォルトと一致します。この設定は、0.25 などの 1 未満の小数値を含む、20 までの任意の正の値を受け入れます。これにより、既にホイールイベントを増幅するターミナルで加速されたトラックパッドおよびホイールスクロールを遅くできます。182値 `3` は `vim` および同様のアプリケーションのデフォルトと一致します。この設定は、0.25 などの 1 未満の小数値を含む、20 までの任意の正の値を受け入れます。これにより、既にホイールイベントを増幅するターミナルで加速されたトラックパッドおよびホイールスクロールを遅くできます。

181 183 

182スクロール速度をインタラクティブに調整するには、`/scroll-speed` を実行してください。ダイアログは、開いている間スクロールできるルーラーを表示するため、変更をすぐに感じることができます。`←` と `→` を押して速度を調整し、`r` を押してオートディテクトされたデフォルトにリセットし、`Enter` を押して保存してください。ダイアログは 10 までの整数でステップし、より細かい制御をサポートするターミナルでは、0.25 までの 4 分の 1 ステップも提供します。4 分の 1 ステップには Claude Code v2.1.172 以降が必要です。184スクロール速度をインタラクティブに調整するには、`/scroll-speed` を実行してください。ダイアログは、開いている間スクロールできるルーラーを表示するため、変更をすぐに感じることができます。`←` と `→` を押して速度を調整し、`r` を押してオートディテクトされたデフォルトにリセットし、`Enter` を押して保存してください。ダイアログは 10 までの整数でステップし、より細かい制御をサポートするターミナルでは、0.25 までの 4 分の 1 ステップも提供します。

183 185 

184このコマンドは、`CLAUDE_CODE_SCROLL_SPEED` 環境変数が設定するのと同じ値を書き込み、`~/.claude/settings.json` に永続化されます。ダイアログの最大値は 10 です。環境変数を通じてより高い値を設定した場合、ダイアログは 10 を表示し、ダイアログから保存すると 10 が永続化されます。このコマンドは JetBrains IDE ターミナルでは利用できません。186このコマンドは、`CLAUDE_CODE_SCROLL_SPEED` 環境変数が設定するのと同じ値を書き込み、`~/.claude/settings.json` に永続化されます。ダイアログの最大値は 10 です。環境変数を通じてより高い値を設定した場合、ダイアログは 10 を表示し、ダイアログから保存すると 10 が永続化されます。このコマンドは JetBrains IDE ターミナルでは利用できません。

185 187 

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# Claude Code GitHub Actions をクラウドプロバイダーで使用する

6 

7> Claude Code GitHub Actions を Claude API の代わりに Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry を通じて実行する

8 

9[Claude Code GitHub Actions](/docs/ja/github-actions) は、デフォルトで Claude API を呼び出します。代わりに独自のクラウドアカウントを通じて推論をルーティングするには、Claude Code GitHub Action のプロバイダー入力を設定し、ワークフローの OpenID Connect(OIDC)トークンを信頼するようにクラウドを構成します。ワークフローはそのトークンで認証するため、リポジトリに長期的なクラウド認証情報を保存する必要がありません。

10 

11<Info>

12 このページは [GitHub Actions セットアップ](/docs/ja/github-actions#setup) に基づいています。ワークフローファイルと `anthropics/claude-code-action` ステップについてすでに理解していることを前提としており、クラウドプロバイダーが変更する内容のみをカバーしています。

13</Info>

14 

15<h2 id="choose-your-provider">

16 プロバイダーを選択する

17</h2>

18 

19Claude Code GitHub Action は 3 つのプロバイダーをサポートしており、以下のセットアップステップはクラウド側の構成のみが異なります。組織が既に Claude モデルアクセスを持っているプロバイダーを使用してください。`anthropics/claude-code-action` ステップの `with:` ブロック内の 1 つの入力で、Claude Code GitHub Action にどのプロバイダーを使用するかを指定します。

20 

21* **Amazon Bedrock**: `use_bedrock: "true"`

22* **Google Cloud の Agent Platform**: `use_vertex: "true"`

23* **Microsoft Foundry**: `use_foundry: "true"`

24 

25[統合をセットアップする](#set-up-the-integration) の完全なワークフロー例には、各プロバイダーの入力が既に含まれています。

26 

27<h2 id="prerequisites">

28 前提条件

29</h2>

30 

31開始する前に、以下が必要です。

32 

33* Claude Code GitHub Action が実行されるリポジトリへの管理者アクセス(GitHub App をインストールしてシークレットを追加するため)

34* クラウドアカウントでアイデンティティリソースを作成する権限:AWS の IAM ロールと OIDC アイデンティティプロバイダー、Google Cloud のワークロードアイデンティティフェデレーションリソースとサービスアカウント、または Azure の Microsoft Entra アプリケーション

35* プロバイダーでの Claude モデルアクセス:

36 * **Amazon Bedrock**: Claude モデルへのアクセスが許可されている。このページの例の `us.` モデル ID などのクロスリージョン推論プロファイルは、リージョングループのすべてのリージョンでアクセスが許可されている必要があります。[Amazon Bedrock の Claude Code](/docs/ja/amazon-bedrock) を参照してください

37 * **Google Cloud の Agent Platform**: Agent Platform API が有効になっており Claude モデルへのアクセスがあるプロジェクト。[Google Cloud の Agent Platform の Claude Code](/docs/ja/google-vertex-ai) を参照してください

38 * **Microsoft Foundry**: Claude モデルデプロイメントを備えた Foundry リソース。[Microsoft Foundry の Claude Code](/docs/ja/microsoft-foundry) を参照してください

39 

40<h2 id="set-up-the-integration">

41 統合をセットアップする

42</h2>

43 

44前提条件を超えて、4 つのものを作成します。Claude Code GitHub Action 用の GitHub アイデンティティ、クラウド側の信頼構成、リポジトリシークレット、およびワークフローファイルです。以下のステップでそれぞれを説明します。

45 

46<Steps>

47 <Step title="GitHub アイデンティティを選択する">

48 Claude Code GitHub Action はコミットをプッシュし、GitHub アイデンティティを通じてコメントを投稿します。[クイックセットアップ](/docs/ja/github-actions#quick-setup) はこのために公式 Claude GitHub App をインストールします。クラウドプロバイダーを使用する場合、アイデンティティを自分で選択します。

49 

50 * **公式 [Claude GitHub App](https://github.com/apps/claude)**: リポジトリにインストールするか、既にインストールされている場合は次のステップにスキップします

51 * **カスタム GitHub App**: Claude Code GitHub Action が使用する 3 つの権限のみが必要な場合に独自のアプリを作成します([公式アプリの完全なセット](/docs/ja/github-actions#github-app-permissions) ではなく)

52 * **GitHub の自動 `GITHUB_TOKEN`**: 作成またはインストールするアプリはありませんが、GitHub はそれで作成されたコミットで CI ワークフローをトリガーしません

53 

54 4 番目のステップのワークフロー例はカスタムアプリで認証します。そのステップでは、他の 2 つのオプションに対して何を変更するかも説明しています。

55 

56 カスタムアプリを作成するには、[新しい GitHub App を登録](https://docs.github.com/en/apps/creating-github-apps/registering-a-github-app/registering-a-github-app) し、この統合では使用しないため Webhook を無効にします。3 つのリポジトリ権限を付与します。

57 

58 * **Contents**: 読み取りと書き込み

59 * **Issues**: 読み取りと書き込み

60 * **Pull requests**: 読み取りと書き込み

61 

62 アプリを登録した後、秘密鍵を生成してダウンロードした `.pem` ファイルを保持し、アプリの設定ページから App ID をメモし、Claude Code GitHub Action が実行されるリポジトリに [アプリをインストール](https://docs.github.com/en/apps/using-github-apps/installing-your-own-github-app) します。キーと ID を 3 番目のステップでシークレットとして追加します。

63 </Step>

64 

65 <Step title="クラウド認証を構成する">

66 GitHub がワークフローに発行する OIDC トークンを信頼するようにクラウドを構成し、各ワークフロー実行が短期的なクラウド認証情報を取得できるようにします。各タブの箇条書きは作成する内容をまとめており、各タブはコンソールレベルのステップについてクラウドベンダー独自のガイドにリンクしています。

67 

68 <Tabs>

69 <Tab title="Amazon Bedrock">

70 AWS アカウントで信頼構成を作成し、[OIDC アイデンティティプロバイダーを作成するための AWS ガイド](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc.html) に従います。

71 

72 * プロバイダー URL `https://token.actions.githubusercontent.com` とオーディエンス `sts.amazonaws.com` を使用して GitHub OIDC アイデンティティプロバイダーを追加します

73 * そのプロバイダーによって Web アイデンティティとして信頼される IAM ロールを作成し、[IAM 構成](/docs/ja/amazon-bedrock#iam-configuration) からスコープ付き呼び出しポリシーをアタッチします。これは `bedrock:InvokeModel`、`bedrock:InvokeModelWithResponseStream`、`bedrock:ListInferenceProfiles`、`bedrock:GetInferenceProfile` を付与し、2 つの `aws-marketplace` サブスクリプションアクションも付与します

74 * ロールの信頼ポリシーをリポジトリに制限します。`repo:your-org/your-repo:*` などのサブジェクト条件を使用します。クレーム形式については [GitHub の OIDC 強化ガイド](https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect) を参照してください

75 

76 ロールの ARN をメモします。次のステップでシークレットとして追加します。

77 </Tab>

78 

79 <Tab title="Google Cloud の Agent Platform">

80 Google Cloud プロジェクトでフェデレーションリソースを作成し、[ワークロードアイデンティティフェデレーションドキュメント](https://cloud.google.com/iam/docs/workload-identity-federation) に従います。

81 

82 * 3 つの API を有効にします:IAM Credentials、Security Token Service(STS)、および Agent Platform API(サービス名は `aiplatform.googleapis.com`)

83 * 発行者が `https://token.actions.githubusercontent.com` である GitHub OIDC プロバイダーを持つワークロードアイデンティティプールを作成し、プールをリポジトリに制限する属性条件を追加します

84 * `Vertex AI User` ロール(`roles/aiplatform.user`)のみを持つ専用サービスアカウントを作成し、プールがそれを偽装することを許可します

85 

86 プロバイダーの完全なリソース名とサービスアカウントのメールアドレスをメモします。次のステップでシークレットとして追加します。

87 </Tab>

88 

89 <Tab title="Microsoft Foundry">

90 リポジトリ用のフェデレーション認証情報を持つ Microsoft Entra アプリケーションを作成し、[GitHub Actions から認証するための Microsoft ガイド](https://learn.microsoft.com/en-us/azure/developer/github/connect-from-azure-openid-connect) に従います。

91 

92 * Microsoft Entra アプリケーションを登録し、GitHub がリポジトリに発行するトークンを信頼するフェデレーション ID 認証情報を追加します。ユーザー割り当てマネージドアイデンティティはアプリケーションの代わりに機能します。どちらも以下でメモするクライアント ID を持ちます

93 * Foundry リソースでアプリケーションに `Azure AI User` ロールを割り当てます。より狭いカスタムロールについては [Azure RBAC 構成](/docs/ja/microsoft-foundry#azure-rbac-configuration) を参照してください

94 

95 アプリケーションのクライアント ID、テナント ID、サブスクリプション ID をメモします。次のステップでシークレットとして追加します。

96 </Tab>

97 </Tabs>

98 </Step>

99 

100 <Step title="リポジトリシークレットを追加する">

101 Claude Code GitHub Action が実行されるリポジトリで、プロバイダーのシークレットを追加します。また、最初のステップでカスタム GitHub App を作成した場合は、2 つのアプリシークレットも追加します。GitHub の [GitHub Actions でシークレットを使用する](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions) ガイドを参照してください。

102 

103 | シークレット | 必要な対象 | 値 |

104 | -------------------------------- | ----------------------------- | ------------------------ |

105 | `AWS_ROLE_TO_ASSUME` | Amazon Bedrock | IAM ロールの ARN |

106 | `GCP_WORKLOAD_IDENTITY_PROVIDER` | Google Cloud の Agent Platform | プロバイダーの完全なリソース名 |

107 | `GCP_SERVICE_ACCOUNT` | Google Cloud の Agent Platform | サービスアカウントのメールアドレス |

108 | `AZURE_CLIENT_ID` | Microsoft Foundry | Entra アプリケーションのクライアント ID |

109 | `AZURE_TENANT_ID` | Microsoft Foundry | Microsoft Entra テナント ID |

110 | `AZURE_SUBSCRIPTION_ID` | Microsoft Foundry | Azure サブスクリプション ID |

111 | `APP_ID` | カスタム GitHub App | GitHub App の ID |

112 | `APP_PRIVATE_KEY` | カスタム GitHub App | `.pem` 秘密鍵ファイルの内容 |

113 </Step>

114 

115 <Step title="ワークフローファイルを作成する">

116 プロバイダー用のワークフローファイル(`.github/workflows/claude.yml` など)を作成します。各例は `@claude` メンションに応答し、カスタムアプリで GitHub に認証し、`id-token: write` 権限を含みます。これは GitHub がクラウドプロバイダーが認証情報と交換する OIDC トークンを発行するために必要です。

117 

118 最初のステップで別の GitHub アイデンティティを選択した場合、例を調整します。

119 

120 * **公式 Claude GitHub App**: GitHub App トークン生成ステップと `github_token` 行を削除します

121 * **GitHub の自動トークン**: トークン生成ステップを削除し、`github_token` 行を `github_token: ${{ secrets.GITHUB_TOKEN }}` に変更します

122 

123 <Warning>

124 公開リポジトリでは、任意のユーザーからのトリガーフレーズを含むコメントがこのワークフローを開始します。認証情報ステップは Claude Code GitHub Action がコメント作成者の書き込みアクセスをチェックする前に実行されるため、アクションは App トークンを生成してクラウドプロバイダーにサインインした後にのみ未認可ユーザーを拒否します。これはログエントリを残し、Actions 分を消費します。これらの実行を避けるには、認証情報ステップの前にコメント作成者の書き込みアクセスを確認するステップを追加します。

125 </Warning>

126 

127 <Tabs>

128 <Tab title="Amazon Bedrock">

129 `aws-region` 値を自分のものに置き換えます。認証情報ステップはそれをジョブの残りの部分のために `AWS_REGION` としてエクスポートします。

130 

131 ```yaml theme={null}

132 name: Claude PR Action

133 

134 permissions:

135 contents: write

136 pull-requests: write

137 issues: write

138 id-token: write

139 

140 on:

141 issue_comment:

142 types: [created]

143 pull_request_review_comment:

144 types: [created]

145 issues:

146 types: [opened]

147 

148 jobs:

149 claude-pr:

150 if: |

151 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||

152 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||

153 (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))

154 runs-on: ubuntu-latest

155 steps:

156 - name: Checkout repository

157 uses: actions/checkout@v6

158 

159 - name: Generate GitHub App token

160 id: app-token

161 uses: actions/create-github-app-token@v2

162 with:

163 app-id: ${{ secrets.APP_ID }}

164 private-key: ${{ secrets.APP_PRIVATE_KEY }}

165 

166 - name: Configure AWS Credentials (OIDC)

167 uses: aws-actions/configure-aws-credentials@v4

168 with:

169 role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME }}

170 aws-region: us-west-2

171 

172 - uses: anthropics/claude-code-action@v1

173 with:

174 github_token: ${{ steps.app-token.outputs.token }}

175 use_bedrock: "true"

176 claude_args: '--model us.anthropic.claude-sonnet-4-6'

177 ```

178 

179 <Tip>

180 Bedrock モデル ID には `us.` などのクロスリージョン推論プロファイルプレフィックスが含まれます。モデルアクセスを許可したリージョングループのプレフィックスを使用します。

181 </Tip>

182 </Tab>

183 

184 <Tab title="Google Cloud の Agent Platform">

185 `CLOUD_ML_REGION` 値を自分のものに置き換えます。ワークフローが `auth` ステップの出力からプロジェクト ID を読み取るため、プロジェクト ID をハードコードする必要はありません。

186 

187 ```yaml theme={null}

188 name: Claude PR Action

189 

190 permissions:

191 contents: write

192 pull-requests: write

193 issues: write

194 id-token: write

195 

196 on:

197 issue_comment:

198 types: [created]

199 pull_request_review_comment:

200 types: [created]

201 issues:

202 types: [opened]

203 

204 jobs:

205 claude-pr:

206 if: |

207 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||

208 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||

209 (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))

210 runs-on: ubuntu-latest

211 steps:

212 - name: Checkout repository

213 uses: actions/checkout@v6

214 

215 - name: Generate GitHub App token

216 id: app-token

217 uses: actions/create-github-app-token@v2

218 with:

219 app-id: ${{ secrets.APP_ID }}

220 private-key: ${{ secrets.APP_PRIVATE_KEY }}

221 

222 - name: Authenticate to Google Cloud

223 id: auth

224 uses: google-github-actions/auth@v2

225 with:

226 workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}

227 service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}

228 

229 - uses: anthropics/claude-code-action@v1

230 with:

231 github_token: ${{ steps.app-token.outputs.token }}

232 use_vertex: "true"

233 claude_args: '--model claude-sonnet-5'

234 env:

235 ANTHROPIC_VERTEX_PROJECT_ID: ${{ steps.auth.outputs.project_id }}

236 CLOUD_ML_REGION: us-east5

237 ```

238 </Tab>

239 

240 <Tab title="Microsoft Foundry">

241 `your-resource-name` を Foundry リソース名に置き換えます。Claude Code はそれからエンドポイント URL を構築します。`azure/login` ステップはワークフローの OIDC トークンでサインインし、Claude Code は Azure [デフォルト認証情報チェーン](https://learn.microsoft.com/en-us/azure/developer/javascript/sdk/authentication/credential-chains#defaultazurecredential-overview) を通じて認証情報を取得します。

242 

243 ```yaml theme={null}

244 name: Claude PR Action

245 

246 permissions:

247 contents: write

248 pull-requests: write

249 issues: write

250 id-token: write

251 

252 on:

253 issue_comment:

254 types: [created]

255 pull_request_review_comment:

256 types: [created]

257 issues:

258 types: [opened]

259 

260 jobs:

261 claude-pr:

262 if: |

263 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||

264 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||

265 (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))

266 runs-on: ubuntu-latest

267 steps:

268 - name: Checkout repository

269 uses: actions/checkout@v6

270 

271 - name: Generate GitHub App token

272 id: app-token

273 uses: actions/create-github-app-token@v2

274 with:

275 app-id: ${{ secrets.APP_ID }}

276 private-key: ${{ secrets.APP_PRIVATE_KEY }}

277 

278 - name: Authenticate to Azure

279 uses: azure/login@v2

280 with:

281 client-id: ${{ secrets.AZURE_CLIENT_ID }}

282 tenant-id: ${{ secrets.AZURE_TENANT_ID }}

283 subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}

284 

285 - uses: anthropics/claude-code-action@v1

286 with:

287 github_token: ${{ steps.app-token.outputs.token }}

288 use_foundry: "true"

289 claude_args: '--model claude-sonnet-5'

290 env:

291 ANTHROPIC_FOUNDRY_RESOURCE: your-resource-name

292 ```

293 

294 <Tip>

295 Foundry リソース内の Claude デプロイメントと一致するモデル ID を使用します。モデル構成とバージョンピニングについては [Microsoft Foundry の Claude Code](/docs/ja/microsoft-foundry) を参照してください。

296 </Tip>

297 </Tab>

298 </Tabs>

299 

300 任意のプロバイダーで、実行時間とコストを制限するために `claude_args` に `--max-turns` を追加できます。[コストを管理する](/docs/ja/github-actions#manage-costs) を参照してください。

301 </Step>

302 

303 <Step title="セットアップをテストする">

304 イシューまたは PR コメントで `@claude` をメンションし、リポジトリの Actions タブで実行を監視します。Claude は同じイシューまたは PR のコメントで返信します。

305 </Step>

306</Steps>

307 

308<h2 id="troubleshooting">

309 トラブルシューティング

310</h2>

311 

312失敗した実行は通常、2 つの場所のいずれかで中断します。

313 

314* **認証エラー**: 通常は OIDC の設定ミス。ワークフローに `id-token: write` 権限が含まれていること、信頼構成のリポジトリ条件がリポジトリと正確に一致していること、ワークフロー内のシークレット名が追加したものと一致していることを確認します

315* **トリガーと CI の問題**: Claude Code GitHub Action が Claude API を呼び出す場合と同じように動作します。メインページの [トラブルシューティングセクション](/docs/ja/github-actions#troubleshooting) と Claude Code GitHub Action の [FAQ](https://github.com/anthropics/claude-code-action/blob/main/docs/faq.md) を参照してください

316 

317<h2 id="what’s-next">

318 次のステップ

319</h2>

320 

321* [Claude Code GitHub Actions](/docs/ja/github-actions) 例、パラメーター、ベストプラクティス用

322* [Amazon Bedrock の Claude Code](/docs/ja/amazon-bedrock) Bedrock モデル ID とリージョン用

323* [Google Cloud の Agent Platform の Claude Code](/docs/ja/google-vertex-ai) Agent Platform モデル ID とリージョン用

324* [Microsoft Foundry の Claude Code](/docs/ja/microsoft-foundry) Foundry モデルとエンドポイント構成用

glossary.md +19 −19

Details

96 Channel96 Channel

97</h3>97</h3>

98 98 

99[MCP server](#mcp-model-context-protocol) の一種。実行中のセッションにイベントをプッシュして、Claude がターミナルから離れている間に発生することに反応できるようにします。チャネルは双方向にできます。Claude は受信イベントを読み取り、同じチャネルを通じて返信します。Telegram、Discord、iMessage は研究プレビューに含まれています。99イベントを実行中のセッションにプッシュする [MCP サーバー](#mcp-model-context-protocol) で、ターミナルから離れている間に発生したことに Claude が反応できるようにします。チャネルは双方向にすることができます。Claude は受信イベントを読み取り、同じチャネルを通じて返信します。Telegram、Discord、iMessage は研究プレビューに含まれています。

100 100 

101詳細情報: [Channels](/docs/ja/channels)101詳細情報:[Channels](/docs/ja/channels)

102 102 

103<h3 id="checkpoint">103<h3 id="checkpoint">

104 Checkpoint104 Checkpoint

105</h3>105</h3>

106 106 

107各プロンプト送信時に作成されたリストアポイント。Claude Code はすべての編集の前にファイルをスナップショットするため、チェックポイントでそれらを復元できます。`Esc` を 2 回押すか `/rewind` を実行して、コード、会話、またはその両方を以前のポイントに復元するか、選択したメッセージから会話の一部を要約します。チェックポイントはセッションに対してローカルであり、git とは別であり、Bash ツールを通じて行われた変更は追跡しません。107送信するプロンプトごとにターンを開始する復元ポイント。Claude Code はすべての編集の前にファイルをスナップショットするため、チェックポイントはそれらを復元できます。`Esc` キーを 2 回押すか `/rewind` を実行して、コード、会話、またはその両方を以前のポイントに復元するか、選択したメッセージから会話の一部を要約します。チェックポイントは会話とともに保存されるため、再開されたセッションでも `/rewind` でそれらに戻ることができます。これらは git とは別で、Bash ツールを通じて行われた変更は追跡しません。

108 108 

109詳細情報: [Checkpointing](/docs/ja/checkpointing)109詳細情報:[Checkpointing](/docs/ja/checkpointing)

110 110 

111<h3 id="claude-directory">111<h3 id="claude-directory">

112 `.claude` directory112 `.claude` ディレクトリ

113</h3>113</h3>

114 114 

115Claude Code がプロジェクトスコープの設定を読み取るディレクトリ: 設定、hooks、skills、subagents、rules、auto memory。プロジェクトはそのルートに `.claude/` を持ちます。ユーザーレベルのデフォルトは `~/.claude/` にあります。115Claude Code がプロジェクトスコープの設定を読み取るディレクトリ。設定、フック、スキル、サブエージェント、ルール、自動メモリが含まれます。プロジェクトはそのルートに `.claude/` を持ち、ユーザーレベルのデフォルトは `~/.claude/` にあります。

116 116 

117詳細情報: [The `.claude` directory](/docs/ja/claude-directory)117詳細情報:[The `.claude` directory](/docs/ja/claude-directory)

118 118 

119<h3 id="claude-md">119<h3 id="claude-md">

120 CLAUDE.md120 CLAUDE.md

121</h3>121</h3>

122 122 

123Claude のために書く永続的な指示のマークダウンファイル。システムプロンプトの後、ユーザーメッセージとしてすべてのセッションの開始時にロードされます。プロジェクト規約、アーキテクチャノート、「常に X を行う」ルールをここに配置します。プロジェクトルート CLAUDE.md は [compaction](#compaction) を生き残り、その後ディスクから新しく再読み込みされます。123Claude 用に作成する永続的な指示のマークダウンファイル。システムプロンプトの後、ユーザーメッセージとしてすべてのセッションの開始時に読み込まれます。プロジェクト規約、アーキテクチャノート、「常に X を行う」ルールをここに記述します。プロジェクトルート CLAUDE.md は [compaction](#compaction) を通じて保存され、その後ディスクから新たに読み込まれます。

124 124 

125CLAUDE.md は `./CLAUDE.md` または `./.claude/CLAUDE.md` のプロジェクトスコープに、`~/.claude/CLAUDE.md` のユーザースコープに、または組織の [managed policy](#managed-settings) として配置できます。検出されたすべてのファイルは、互いにオーバーライドするのではなく、最も広いスコープから最も具体的なスコープへの順序で、コンテキストに連結されます。125CLAUDE.md は `./CLAUDE.md` または `./.claude/CLAUDE.md` でプロジェクトスコープに、`~/.claude/CLAUDE.md` でユーザースコープに、または組織の [managed policy](#managed-settings) として配置できます。検出されたすべてのファイルは相互にオーバーライドするのではなく、最も広いスコープから最も具体的なスコープの順に、コンテキストに連結されます。

126 126 

127詳細情報: [CLAUDE.md files](/docs/ja/memory#claude-md-files)127詳細情報:[CLAUDE.md files](/docs/ja/memory#claude-md-files)

128 128 

129<h3 id="command">129<h3 id="command">

130 Command130 Command


132 132 

133プロンプトに `/name` と入力して呼び出す再利用可能な指示。`/clear`、`/model`、`/compact` などの組み込みコマンドはセッションを制御します。`.claude/commands/` のファイルとして独自のコマンドを定義するか、[plugin](#plugin) からインストールできます。[Skills](#skill) は複数ステップのコマンドをパッケージ化するための推奨される方法です。133プロンプトに `/name` と入力して呼び出す再利用可能な指示。`/clear`、`/model`、`/compact` などの組み込みコマンドはセッションを制御します。`.claude/commands/` のファイルとして独自のコマンドを定義するか、[plugin](#plugin) からインストールできます。[Skills](#skill) は複数ステップのコマンドをパッケージ化するための推奨される方法です。

134 134 

135この単語の他の 2 つの用途は関連がありません。`claude mcp add` などの `claude` CLI サブコマンド([CLI reference](/docs/ja/cli-reference#cli-commands) に記載)と、stdio [MCP server](#mcp-server) エントリの `command` フィールド(Claude Code が起動するために起動する実行可能ファイルを指定)です。135この単語の他の 2 つの用途は関連がありません。`claude` CLI サブコマンド(`claude mcp add` など)は [CLI reference](/docs/ja/cli-reference#cli-commands) に記載されており、stdio [MCP server](#mcp-server) エントリの `command` フィールドは、Claude Code が起動するために起動する実行可能ファイルを指定します。

136 136 

137詳細情報: [Commands](/docs/ja/commands) · [Skills](/docs/ja/skills)137詳細情報:[Commands](/docs/ja/commands) · [Skills](/docs/ja/skills)

138 138 

139<h3 id="compaction">139<h3 id="compaction">

140 Compaction140 Compaction

141</h3>141</h3>

142 142 

143[context window](#context-window) がその制限に近づくときの会話の自動要約。古いツール出力が最初にクリアされ、次に会話が要約されます。プロジェクトルート CLAUDE.md と auto memory は compaction を生き残り、ディスクから再ロードされます。会話でのみ与えられた指示は失われる可能性があります。`/compact` を手動でトリガーするか、オプションで `/compact focus on the API changes` のようなフォーカスを指定します。143[context window](#context-window) がその制限に近づくときの会話の自動要約。古いツール出力が最初にクリアされ、その後会話が要約されます。プロジェクトルート CLAUDE.md と自動メモリは compaction を通じて保存され、ディスクから再度読み込まれます。会話でのみ与えられた指示は失われる可能性があります。`/compact` を手動でトリガーするか、オプションで `/compact focus on the API changes` のようなフォーカスを指定します。

144 144 

145詳細情報: [What survives compaction](/docs/ja/context-window#what-survives-compaction) · [When context fills up](/docs/ja/how-claude-code-works#when-context-fills-up)145詳細情報:[What survives compaction](/docs/ja/context-window#what-survives-compaction) · [When context fills up](/docs/ja/how-claude-code-works#when-context-fills-up)

146 146 

147<h3 id="connector">147<h3 id="connector">

148 Connector148 Connector

149</h3>149</h3>

150 150 

151[MCP server](#mcp-server) の一種。Claude Code ではなく claude.ai アカウントに追加されます。そのアカウントで Claude Code にサインインすると、コネクタは `/mcp` にローカルで追加したサーバーと一緒に表示されます。組織はコネクタをプロビジョニングし、それらに対してツール単位の制御を設定することもできます。151Claude Code ではなく claude.ai アカウントに追加される [MCP server](#mcp-server)。そのアカウントで Claude Code にサインインすると、コネクタはローカルに追加したサーバーと一緒に `/mcp` に表示されます。組織はコネクタをプロビジョニングし、それらに対するツール単位の制御を設定することもできます。

152 152 

153詳細情報: [Use MCP servers from claude.ai](/docs/ja/mcp#use-mcp-servers-from-claude-ai)153詳細情報:[Use MCP servers from claude.ai](/docs/ja/mcp#use-mcp-servers-from-claude-ai)

154 154 

155<h3 id="context-window">155<h3 id="context-window">

156 Context window156 Context window

157</h3>157</h3>

158 158 

159セッションの作業メモリ。会話履歴、ファイルコンテンツ、コマンド出力、CLAUDE.md、auto memory、ロードされたスキル、システム指示を保持します。作業を進めるにつれて、コンテキストが満杯になるまで [compaction](#compaction) がそれを要約します。`/context` を実行して、スペースを使用しているものを確認します。基礎となるモデル概念については、[プラットフォーム用語集](https://platform.claude.com/docs/ja/about-claude/glossary#context-window)を参照してください。159セッションの作業メモリ。会話履歴、ファイルコンテンツ、コマンド出力、CLAUDE.md、自動メモリ、読み込まれたスキル、システム指示を保持します。作業を進めると、[compaction](#compaction) がそれを要約するまでコンテキストが満杯になります。`/context` を実行してスペースを使用しているものを確認します。基盤となるモデルの概念については、[platform glossary](https://platform.claude.com/docs/ja/about-claude/glossary#context-window) を参照してください。

160 160 

161詳細情報: [Explore the context window](/docs/ja/context-window)161詳細情報:[Explore the context window](/docs/ja/context-window)

162 162 

163<h2 id="d">163<h2 id="d">

164 D164 D


266 Output style266 Output style

267</h3>267</h3>

268 268 

269Claude のシステムプロンプトを変更して応答動作、トーン、または形式を変更する設定です。[CLAUDE.md](#claude-md) とは異なり、Claude Code がシステムプロンプトの後にユーザーメッセージとして配信する output style は、システムプロンプト自体を変更します。269Claude Code が Claude に与える指示を変更して、応答動作、トーン、または形式を設定する設定です。プロジェクトコンテキストを Claude Code のデフォルト指示と一緒に追加する [CLAUDE.md](#claude-md) とは異なり、カスタム output style はデフォルトのソフトウェアエンジニアリング指示を置き換えることができます。

270 270 

271詳細情報: [Output styles](/docs/ja/output-styles)271詳細情報: [Output styles](/docs/ja/output-styles)

272 272 

headless.md +10 −5

Details

207 207 

208[サブエージェント](/docs/ja/sub-agents) からのメッセージは、ストリームに `assistant` および `user` メッセージとして表示され、その `parent_tool_use_id` フィールドはサブエージェントを生成したツール呼び出しの ID です。メインの会話からのメッセージはそのフィールドに `null` を含みます。208[サブエージェント](/docs/ja/sub-agents) からのメッセージは、ストリームに `assistant` および `user` メッセージとして表示され、その `parent_tool_use_id` フィールドはサブエージェントを生成したツール呼び出しの ID です。メインの会話からのメッセージはそのフィールドに `null` を含みます。

209 209 

210デフォルトでは、Claude Code はサブエージェント `tool_use` および `tool_result` ブロックのみを発行します。[`--forward-subagent-text`](/docs/ja/cli-reference#cli-flags) を渡すか、[`CLAUDE_CODE_FORWARD_SUBAGENT_TEXT`](/docs/ja/env-vars) を設定して、サブエージェントのテキストおよび思考ブロックも発行し、各サブエージェントのトランスクリプトを再構築できるようにします。これには Claude Code v2.1.211 以降が必要です。210[フォアグラウンド](/docs/ja/sub-agents#run-subagents-in-foreground-or-background) で実行されているサブエージェントからの最初のメッセージは、それを駆動するプロンプトを含む `user` メッセージです。その最初のメッセージの後、Claude Code は以下を発行します。

211 

212* **デフォルトでは**:サブエージェントの `tool_use` および `tool_result` ブロック。

213* **[`--forward-subagent-text`](/docs/ja/cli-reference#cli-flags) または [`CLAUDE_CODE_FORWARD_SUBAGENT_TEXT`](/docs/ja/env-vars) を使用する場合**:サブエージェントのテキストおよび思考ブロックも含まれるため、各サブエージェントのトランスクリプトを再構築できます。これには Claude Code v2.1.211 以降が必要です。

211 214 

212いずれかのオプションを有効にすると、Claude Code は [すべてのネストの深さのサブエージェント](/docs/ja/sub-agents#let-subagents-spawn-their-own-subagents) からのメッセージを転送します。サブエージェントが独自のサブエージェントを生成する場合、ネストされたサブエージェントのメッセージは、それを生成した Agent ツール呼び出しの ID を `parent_tool_use_id` に含むため、これらの ID をフォローして完全なネストツリーを再構築できます。v2.1.219 より前では、ネストされたサブエージェントからのメッセージはストリームに表示されませんでした。215いずれかのオプションを有効にすると、Claude Code は [すべてのネストの深さのサブエージェント](/docs/ja/sub-agents#let-subagents-spawn-their-own-subagents) からのメッセージを転送します。サブエージェントが独自のサブエージェントを生成する場合、ネストされたサブエージェントのメッセージは、それを生成した Agent ツール呼び出しの ID を `parent_tool_use_id` に含むため、これらの ID をフォローして完全なネストツリーを再構築できます。v2.1.219 より前では、ネストされたサブエージェントからのメッセージはストリームに表示されませんでした。

213 216 

217[サブエージェントで実行される](/docs/ja/skills#run-skills-in-a-subagent) スキルは、ストリームに同じ方法で表示されます。フォークされたスキルの最初のメッセージは、実行を駆動するスキルコンテンツを含む `user` メッセージです。いずれかのオプションを有効にすると、ストリームはフォークされたスキルのテキストおよび思考ブロックも含みます。v2.1.265 より前では、フォークされたスキルの `tool_use` および `tool_result` ブロックのみがストリームに表示されていました。

218 

214<h4 id="handle-api-retries">219<h4 id="handle-api-retries">

215 API 再試行を処理する220 API 再試行を処理する

216</h4>221</h4>


222| `type` | `"system"` | メッセージタイプ |227| `type` | `"system"` | メッセージタイプ |

223| `subtype` | `"api_retry"` | これが再試行イベントであることを識別します |228| `subtype` | `"api_retry"` | これが再試行イベントであることを識別します |

224| `attempt` | 整数 | 現在の試行番号(1 から開始) |229| `attempt` | 整数 | 現在の試行番号(1 から開始) |

225| `max_retries` | 整数 | 許可される再試行の合計 |230| `max_retries` | 整数 | この失敗の原因に対して許可される再試行の合計。セッション全体の予算より少ない場合があります |

226| `retry_delay_ms` | 整数 | 次の試行までのミリ秒 |231| `retry_delay_ms` | 整数 | 次の試行までのミリ秒 |

227| `error_status` | 整数または null | HTTP ステータスコード、または HTTP レスポンスのない接続エラーの場合は `null` |232| `error_status` | 整数または null | HTTP ステータスコード、または API からの HTTP レスポンスがない場合は `null` |

228| `no_response` | オブジェクト(オプション) | 失敗した試行が [時間内にレスポンスヘッダーを取得しなかった](/docs/ja/errors#no-response-from-api) 場合にのみ存在します。`waited_ms` はその試行が待機した時間で、`retry_wait_ms` は再試行が待機する時間です。これらのイベントでは、`max_retries` はこの原因が通常取得する 1 回の再試行を反映し、セッション全体の予算ではありません。Claude Code v2.1.261 以降が必要です |233| `no_response` | オブジェクト(オプション) | 失敗した試行が [時間内にレスポンスヘッダーを取得しなかった](/docs/ja/errors#no-response-from-api) 場合にのみ存在します。`waited_ms` はその試行が待機した時間で、`retry_wait_ms` は再試行が待機する時間です。これらのイベントでは、`max_retries` はこの原因が通常取得する 1 回の再試行を反映し、セッション全体の予算ではありません。Claude Code v2.1.261 以降が必要です |

229| `error` | 文字列 | エラーカテゴリ:`authentication_failed`、`oauth_org_not_allowed`、`billing_error`、`rate_limit`、`overloaded`、`invalid_request`、`model_not_found`、`server_error`、`max_output_tokens`、または `unknown` |234| `error` | 文字列 | エラーカテゴリ:`authentication_failed`、`oauth_org_not_allowed`、`account_on_hold`、`billing_error`、`rate_limit`、`overloaded`、`invalid_request`、`model_not_found`、`server_error`、`max_output_tokens`、`cloud_credential_error`、または `unknown` |

230| `uuid` | 文字列 | 一意のイベント識別子 |235| `uuid` | 文字列 | 一意のイベント識別子 |

231| `session_id` | 文字列 | イベントが属するセッション |236| `session_id` | 文字列 | イベントが属するセッション |

232 237 


293セッション全体のベースラインを設定する代わりに個別のツールをリストするには、[権限モード](/docs/ja/permission-modes) を渡します。`-p` の場合、[組み込みの開始権限モード](/docs/ja/permission-modes#which-mode-a-session-starts-in) はすべてのプランで Manual であるため、希望する権限モードを渡します。298セッション全体のベースラインを設定する代わりに個別のツールをリストするには、[権限モード](/docs/ja/permission-modes) を渡します。`-p` の場合、[組み込みの開始権限モード](/docs/ja/permission-modes#which-mode-a-session-starts-in) はすべてのプランで Manual であるため、希望する権限モードを渡します。

294 299 

295* **`auto`**:`--permission-mode auto` を渡して、ほとんどのアクションをあなたの代わりに分類器にレビューさせます300* **`auto`**:`--permission-mode auto` を渡して、ほとんどのアクションをあなたの代わりに分類器にレビューさせます

296* **`dontAsk`**:Claude Code は `permissions.allow` ルールまたは [読み取り専用コマンドセット](/docs/ja/permissions#read-only-commands) にないものをすべて拒否します。これはロックダウンされた CI 実行に役立ちます。`AskUserQuestion`、組織が [`ask`](/docs/ja/mcp#organization-controls-on-connector-tools) に設定したコネクタツール、および [`requiresUserInteraction`](/docs/ja/mcp#require-approval-for-a-specific-tool) とマークされた MCP ツールは、許可ルールが一致する場合でも拒否されます301* **`dontAsk`**:Claude Code はプロンプトが表示されるすべての呼び出しを拒否します。これはロックダウンされた CI 実行に役立ちます。Manual モードで承認が不要なアクション(作業ディレクトリでのファイル読み取りや [読み取り専用コマンドセット](/docs/ja/permissions#read-only-commands) など)はまだ実行され、`--allowedTools` エントリまたは `permissions.allow` ルールがカバーするアクションも実行されます。`AskUserQuestion`、組織が [`ask`](/docs/ja/mcp#organization-controls-on-connector-tools) に設定したコネクタツール、および [`requiresUserInteraction`](/docs/ja/mcp#require-approval-for-a-specific-tool) とマークされた MCP ツールは、許可ルールが一致する場合でも拒否されます

297* **`acceptEdits`**:Claude はプロンプトなしでファイルを書き込み、Claude Code は `mkdir`、`touch`、`mv`、`cp` などの一般的なファイルシステムコマンドを自動承認します。[モードが自動承認しないアクション](/docs/ja/permission-modes#actions-no-mode-auto-approves) はまだ適用されます。読み取り専用コマンドセット以外に、その他のシェルコマンドとネットワークリクエストは `--allowedTools` エントリまたは `permissions.allow` ルールが必要です。[`acceptEdits` が自動承認するもの](/docs/ja/permission-modes#auto-approve-file-edits-with-acceptedits-mode) の完全なリストについては、「何を `acceptEdits` が自動承認するか」を参照してください302* **`acceptEdits`**:Claude はプロンプトなしでファイルを書き込み、Claude Code は `mkdir`、`touch`、`mv`、`cp` などの一般的なファイルシステムコマンドを自動承認します。[モードが自動承認しないアクション](/docs/ja/permission-modes#actions-no-mode-auto-approves) はまだ適用されます。読み取り専用コマンドセット以外に、その他のシェルコマンドとネットワークリクエストは `--allowedTools` エントリまたは `permissions.allow` ルールが必要です。[`acceptEdits` が自動承認するもの](/docs/ja/permission-modes#auto-approve-file-edits-with-acceptedits-mode) の完全なリストについては、「何を `acceptEdits` が自動承認するか」を参照してください

298 303 

299この例は `acceptEdits` をベースラインとしてリント修正を適用します。304この例は `acceptEdits` をベースラインとしてリント修正を適用します。

hooks-guide.md +42 −37

Details

499 499 

500Claude Code は、ライフサイクルの特定のポイントで hook イベントを発火させます。イベントが発火すると、Claude Code はすべてのマッチングする hooks を並列で実行します。重複するハンドラーの扱い方については、[Hook ハンドラーフィールド](/docs/ja/hooks#hook-handler-fields) を参照してください。以下の表は各イベントとそれがトリガーされるときを示しています:500Claude Code は、ライフサイクルの特定のポイントで hook イベントを発火させます。イベントが発火すると、Claude Code はすべてのマッチングする hooks を並列で実行します。重複するハンドラーの扱い方については、[Hook ハンドラーフィールド](/docs/ja/hooks#hook-handler-fields) を参照してください。以下の表は各イベントとそれがトリガーされるときを示しています:

501 501 

502| Event | When it fires |502| イベント | 発火するタイミング |

503| :-------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |503| :-------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------ |

504| `SessionStart` | When a session begins or resumes |504| `SessionStart` | セッションが開始または再開されたとき |

505| `Setup` | When you start Claude Code with `--init-only`, or with `--init` or `--maintenance` in `-p` mode. For one-time preparation in CI or scripts |505| `Setup` | `--init-only` で Claude Code を起動するとき、または `-p` モードで `--init` または `--maintenance` を使用するとき。CI またはスクリプトでの 1 回限りの準備用 |

506| `UserPromptSubmit` | When you submit a prompt, before Claude processes it |506| `UserPromptSubmit` | プロンプトを送信するとき、Claude が処理する前 |

507| `UserPromptExpansion` | When a user-typed command expands into a prompt, before it reaches Claude. Can block the expansion |507| `UserPromptExpansion` | ユーザーが入力したコマンドがプロンプトに展開されるとき、Claude に到達する前。展開をブロックできます |

508| `PreToolUse` | Before a tool call executes. Can block it |508| `PreToolUse` | ツール呼び出しが実行される前。ブロックできます |

509| `PermissionRequest` | When a tool call needs a permission decision |509| `PermissionRequest` | ツール呼び出しが権限決定を必要とするとき |

510| `PermissionDenied` | When auto mode denies a tool call, including denials without a classifier verdict. Use JSON `hookSpecificOutput.retry: true` to tell the model it may retry the denied tool call. Claude Code ignores `retry` when the classifier produced no verdict |510| `PermissionDenied` | オートモードがツール呼び出しを拒否するとき、分類器の判定がない拒否を含みます。JSON `hookSpecificOutput.retry: true` を使用して、モデルが拒否されたツール呼び出しを再試行できることを伝えます。Claude Code は分類器が判定を出さなかった場合、`retry` を無視します |

511| `PostToolUse` | After a tool call succeeds |511| `PostToolUse` | ツール呼び出しが成功した後 |

512| `PostToolUseFailure` | After a tool call fails |512| `PostToolUseFailure` | ツール呼び出しが失敗した後 |

513| `PostToolBatch` | After a full batch of parallel tool calls resolves, before the next model call |513| `PostToolBatch` | 並列ツール呼び出しの完全なバッチが解決した後、次のモデル呼び出しの前 |

514| `Notification` | When Claude Code sends a notification |514| `Notification` | Claude Code が通知を送信するとき |

515| `MessageDisplay` | While assistant message text is displayed |515| `MessageDisplay` | アシスタントメッセージテキストが表示されている間 |

516| `SubagentStart` | When a subagent is spawned |516| `SubagentStart` | サブエージェントがスポーンされるとき |

517| `SubagentStop` | When a subagent finishes |517| `SubagentStop` | サブエージェントが終了するとき |

518| `TaskCreated` | When a task is being created via `TaskCreate` |518| `TaskCreated` | `TaskCreate` 経由でタスクが作成されるとき |

519| `TaskCompleted` | When a task is being marked as completed |519| `TaskCompleted` | タスクが完了としてマークされるとき |

520| `Stop` | When Claude finishes responding |520| `Stop` | Claude が応答を終了するとき |

521| `StopFailure` | When the turn ends due to an API error |521| `StopFailure` | API エラーが原因でターンが終了するとき |

522| `TeammateIdle` | When an [agent team](/docs/en/agent-teams) teammate is about to go idle |522| `TeammateIdle` | [エージェントチーム](/docs/ja/agent-teams) のチームメイトがアイドル状態になろうとするとき |

523| `InstructionsLoaded` | When a CLAUDE.md or `.claude/rules/*.md` file is loaded into context. Fires at session start and when files are lazily loaded during a session |523| `InstructionsLoaded` | CLAUDE.md または `.claude/rules/*.md` ファイルがコンテキストに読み込まれるとき。セッション開始時およびセッション中にファイルが遅延読み込みされるときに発火します |

524| `ConfigChange` | When a configuration file changes during a session |524| `ConfigChange` | セッション中に設定ファイルが変更されるとき |

525| `CwdChanged` | When the working directory changes, for example when Claude executes a `cd` command. Useful for reactive environment management with tools like direnv |525| `CwdChanged` | 作業ディレクトリが変更されるとき、例えば Claude が `cd` コマンドを実行するとき。direnv などのツールを使用したリアクティブな環境管理に便利です |

526| `DirectoryAdded` | When a working directory is added mid-session via `/add-dir` or the SDK `register_repo_root` control request |526| `DirectoryAdded` | `/add-dir` または SDK `register_repo_root` コントロールリクエスト経由でセッション中盤に作業ディレクトリが追加されるとき |

527| `FileChanged` | When a watched file changes on disk. The `matcher` field specifies which filenames to watch |527| `FileChanged` | 監視対象ファイルがディスク上で変更されるとき。`matcher` フィールドは監視するファイル名を指定します |

528| `WorktreeCreate` | When a worktree is being created via `--worktree`, `isolation: "worktree"`, or for a background session. Replaces default git behavior |528| `WorktreeCreate` | `--worktree`、`isolation: "worktree"`、またはバックグラウンドセッション経由で worktree が作成されるとき。デフォルトの git 動作を置き換えます |

529| `WorktreeRemove` | When a worktree is being removed at session exit, when a subagent finishes, or when you delete a background session |529| `WorktreeRemove` | セッション終了時、サブエージェント終了時、またはバックグラウンドセッションを削除するときに worktree が削除されるとき |

530| `PreCompact` | Before context compaction |530| `PreCompact` | コンテキスト圧縮の前 |

531| `PostCompact` | After context compaction completes |531| `PostCompact` | コンテキスト圧縮が完了した後 |

532| `PreModelSwitch` | Before Claude Code applies a model switch that you or a client requested. Can block the switch |532| `PreModelSwitch` | Claude Code があなたまたはクライアントがリクエストしたモデルスイッチを適用する前。スイッチをブロックできます |

533| `PostModelSwitch` | After the session's model changes, including changes Claude Code makes on its own, such as restoring the model when you resume a session |533| `PostModelSwitch` | セッションのモデルが変更された後、Claude Code が独自に行う変更(セッションを再開するときのモデル復元など)を含みます |

534| `Elicitation` | When an MCP server requests user input during a tool call |534| `Elicitation` | MCP サーバーがツール呼び出し中にユーザー入力をリクエストするとき |

535| `ElicitationResult` | After a user responds to an MCP elicitation, before the response is sent back to the server |535| `ElicitationResult` | ユーザーが MCP エリシテーションに応答した後、レスポンスがサーバーに送り返される前 |

536| `SessionEnd` | When a session terminates |536| `SessionEnd` | セッションが終了するとき |

537 537 

538各 hook には、それがどのように実行されるかを決定する `type` があります。ほとんどの hooks は `"type": "command"` を使用し、シェルコマンドを実行します。他の 4 つのタイプが利用可能です:538各 hook には、それがどのように実行されるかを決定する `type` があります。ほとんどの hooks は `"type": "command"` を使用し、シェルコマンドを実行します。他の 4 つのタイプが利用可能です:

539 539 


731| `SubagentStop` | エージェントタイプ | `SubagentStart` と同じ値 |731| `SubagentStop` | エージェントタイプ | `SubagentStart` と同じ値 |

732| `ConfigChange` | 設定ソース | `user_settings`、`project_settings`、`local_settings`、`policy_settings`、`skills` |732| `ConfigChange` | 設定ソース | `user_settings`、`project_settings`、`local_settings`、`policy_settings`、`skills` |

733| `DirectoryAdded` | ディレクトリがどのように追加されたか | `slash_command`、`register_repo_root` |733| `DirectoryAdded` | ディレクトリがどのように追加されたか | `slash_command`、`register_repo_root` |

734| `StopFailure` | エラータイプ | `rate_limit`、`overloaded`、`authentication_failed`、`oauth_org_not_allowed`、`account_on_hold`、`billing_error`、`invalid_request`、`model_not_found`、`server_error`、`max_output_tokens`、`unknown` |734| `StopFailure` | エラータイプ | `rate_limit`、`overloaded`、`authentication_failed`、`oauth_org_not_allowed`、`account_on_hold`、`billing_error`、`invalid_request`、`model_not_found`、`server_error`、`max_output_tokens`、`cloud_credential_error`、`unknown` |

735| `InstructionsLoaded` | ロード理由 | `session_start`、`nested_traversal`、`path_glob_match`、`include`、`compact` |735| `InstructionsLoaded` | ロード理由 | `session_start`、`nested_traversal`、`path_glob_match`、`include`、`compact` |

736| `Elicitation` | MCP サーバー名 | 設定した MCP サーバー名 |736| `Elicitation` | MCP サーバー名 | 設定した MCP サーバー名 |

737| `ElicitationResult` | MCP サーバー名 | `Elicitation` と同じ値 |737| `ElicitationResult` | MCP サーバー名 | `Elicitation` と同じ値 |


1077 Hook JSON に効果がない1077 Hook JSON に効果がない

1078</h3>1078</h3>

1079 1079 

1080Hook は有効な JSON を出力していますが、決定が有効にならず、トランスクリプトにエラーが表示されません。1080Hook は有効な JSON を出力していますが、決定が有効にならず、トランスクリプトにエラーが表示されません。どの原因が当てはまるかを確認します:

1081 

1082* **JSON の前の追加出力**:通常、シェルプロファイルの無条件の `echo` により、何か他のものが最初に stdout に書き込まれるため、出力はもはや `{` で始まらず、Claude Code はそれを JSON として解析しません。原因と修正は以下のリストに従います。

1083* **フィールドが間違ったレベルにある**:各フィールドの配置を [JSON 出力](/docs/ja/hooks#json-output)形式と比較します。例えば、`permissionDecision` はトップレベルではなく `hookSpecificOutput` の内部に属します。

1081 1084 

1082Claude Code が shell form コマンド hook(`args` なし)を実行する場合、macOS と Linux では `sh -c` を、Windows では Git Bash を、Git Bash がデフォルトでインストールされていない場合は PowerShell を生成します。このシェルは非インタラクティブですが、Git Bash と一部の設定(`BASH_ENV` が `~/.bashrc` を指すなど)は依然としてプロファイルをソースします。そのプロファイルに無条件の `echo` ステートメントが含まれている場合、その出力は hook の JSON に前置されます:1085Claude Code が shell form コマンド hook(`args` なし)を実行する場合、macOS と Linux では `sh -c` を、Windows では Git Bash を、Git Bash がデフォルトでインストールされていない場合は PowerShell を生成します。このシェルは非インタラクティブですが、Git Bash と一部の設定(`BASH_ENV` が `~/.bashrc` を指すなど)は依然としてプロファイルをソースします。そのプロファイルに無条件の `echo` ステートメントが含まれている場合、その出力は hook の JSON に前置されます:

1083 1086 


1097 1100 

1098`$-` 変数はシェルフラグを含み、`i` はインタラクティブを意味します。Hooks は非インタラクティブシェルで実行されるため、echo はスキップされます。1101`$-` 変数はシェルフラグを含み、`i` はインタラクティブを意味します。Hooks は非インタラクティブシェルで実行されるため、echo はスキップされます。

1099 1102 

1103Hook が `permissionDecision` または `additionalContext` を `hookSpecificOutput` の内部ではなくトップレベルに返す場合、JSON は依然として解析され、Claude Code は誤配置されたフィールドを報告なしで無視します。どのフィールドが無視されたかを確認するには、`claude --debug` で Claude Code を開始し、[デバッグログ](/docs/ja/hooks#debug-hooks)で `Hook JSON output had unrecognized keys` を検索します。

1104 

1100<h3 id="debug-techniques">1105<h3 id="debug-techniques">

1101 デバッグ技術1106 デバッグ技術

1102</h3>1107</h3>

Details

384* 空のプロンプトで `Escape`、`Backspace`、または `Ctrl+U` で終了します384* 空のプロンプトで `Escape`、`Backspace`、または `Ctrl+U` で終了します

385* `!` で始まるテキストを空のプロンプトに貼り付けると、入力された `!` の動作と一致して、自動的にシェルモードに入ります385* `!` で始まるテキストを空のプロンプトに貼り付けると、入力された `!` の動作と一致して、自動的にシェルモードに入ります

386 386 

387通常のインタラクティブセッションでは、サンドボックスを有効にしている場合でも、シェルモードで入力したコマンドは[サンドボックス](/docs/ja/sandboxing)の外で実行されます。これは、サンドボックスが Claude が実行するコマンドに適用されるためです。シェルモードコマンドがサンドボックス化される場合のセッション(厳密なサンドボックスモードがオンのバックグラウンドセッションなど)については、[厳密なサンドボックスモード](/docs/ja/sandboxing#the-unsandboxed-retry-escape-hatch)を参照してください。387セッションが[厳密なサンドボックスモード](/docs/ja/sandboxing#the-unsandboxed-retry-escape-hatch)の下に記載されているもののいずれかでない限り、シェルモードで入力したコマンドは、サンドボックスを有効にしている場合でも[サンドボックス](/docs/ja/sandboxing)の外で実行されます。これは、サンドボックスが Claude が実行するコマンドに適用されるためです。

388 388 

389Claude はコマンド出力がトランスクリプトに到着すると自動的に応答するため、`! npm test` を実行して、2 番目のプロンプトなしで失敗の説明を取得できます。応答コストは通常のプロンプトを送信するのと同じです。出力がコンテキストに追加されるが応答がない以前の動作を復元するには、`settings.json` で [`respondToBashCommands`](/docs/ja/settings-reference#respondtobashcommands) を `false` に設定します。v2.1.186 より前では、シェルモードは常に応答なしでコンテキストに出力を追加していました。389Claude はコマンド出力がトランスクリプトに到着すると自動的に応答するため、`! npm test` を実行して、2 番目のプロンプトなしで失敗の説明を取得できます。応答コストは通常のプロンプトを送信するのと同じです。出力がコンテキストに追加されるが応答がない以前の動作を復元するには、`settings.json` で [`respondToBashCommands`](/docs/ja/settings-reference#respondtobashcommands) を `false` に設定します。v2.1.186 より前では、シェルモードは常に応答なしでコンテキストに出力を追加していました。

390 390 


679 679 

680タスクリストは Claude のやることリストです。複数ステップの作業を計画するために Claude が作成したアイテムで、保留中、進行中、完了を示すインジケーターが付いています。バックグラウンドタスクビューとは別です。実行中のシェルとサブエージェントを確認するには、代わりに [`/tasks`](/docs/ja/commands) を使用してください。680タスクリストは Claude のやることリストです。複数ステップの作業を計画するために Claude が作成したアイテムで、保留中、進行中、完了を示すインジケーターが付いています。バックグラウンドタスクビューとは別です。実行中のシェルとサブエージェントを確認するには、代わりに [`/tasks`](/docs/ja/commands) を使用してください。

681 681 

682[Opus 4.8、Sonnet 5、Fable 5、Mythos 5、およびそれらのファミリーの以降のバージョン](/docs/ja/tools-reference#task-tool-availability)では、Claude は書かれたチェックリストなしで複数ステップの作業を追跡し、Claude Code はこのリストを埋めるツールを提供しないため、リストは空のままです。それでもこれらのモデルでタスクリストが必要な場合は、`CLAUDE_CODE_ENABLE_TODO_TOOLS=1` でオプトインするか、[タスクツールの利用可能性](/docs/ja/tools-reference#task-tool-availability)の下にある他の方法のいずれかを使用してください。Opus 4.7 などの以前のモデルでは、オプトイン後、タスクリストは次のように機能します。682リストは、タスク追跡ツールを持つセッションにのみ入力されます。Claude Code は [Claude 3.x モデル、Opus 4 から 4.7、Sonnet 4 から 4.6、Haiku 4.5](/docs/ja/tools-reference#task-tool-availability) でデフォルトでこれらのツールを提供します。他のモデル(Claude Code が認識しないモデル ID を含む)では、`CLAUDE_CODE_ENABLE_TODO_TOOLS=1` でオプトインするか、[タスクツールの利用可能性](/docs/ja/tools-reference#task-tool-availability) の下にある他の方法のいずれかを使用しない限り、リストは空のままです。セッションにツールがある場合、タスクリストは次のように機能します。

683 683 

684* `Ctrl+T` を押してタスクリストビューを切り替えます。表示は一度に最大 5 つのタスクを表示します。Claude がまだチェックリストアイテムを作成していない場合、表示するものがないため、切り替えは目に見える効果がありません684* `Ctrl+T` を押してタスクリストビューを切り替えます。表示は一度に最大 5 つのタスクを表示します。Claude がまだチェックリストアイテムを作成していない場合、表示するものがないため、切り替えは目に見える効果がありません

685* リストを展開したままにしておくと、Claude Code は `--resume` や `--continue` などでタスクがまだある セッションを起動する次回、展開されたビューを復元します。タスクリストが空の場合、Claude Code はそれを折りたたまれた状態で開始します685* リストを展開したままにしておくと、Claude Code は `--resume` や `--continue` などでタスクがまだある セッションを起動する次回、展開されたビューを復元します。タスクリストが空の場合、Claude Code はそれを折りたたまれた状態で開始します

keybindings.md +5 −1

Details

505ctrl+k ctrl+s Ctrl+K を押して、リリースしてから Ctrl+S505ctrl+k ctrl+s Ctrl+K を押して、リリースしてから Ctrl+S

506```506```

507 507 

508各キーストロークは、その前のキーストロークから 3 秒以内に押してください。それより長く待つと、Claude Code はコードをキャンセルし、そのことを示す簡潔な通知を表示します。

509 

508<h3 id="special-keys">510<h3 id="special-keys">

509 特殊キー511 特殊キー

510</h3>512</h3>


540 542 

541これはコード バインディングでも機能します。プレフィックスを共有するすべてのコードをアンバインドすると、そのプレフィックスを単一キー バインディングとして使用できるようになります。コード バインディングは任意のアクティブなコンテキストに存在し、そのプレフィックスを予約したままにするため、それを定義するコンテキストで各コードをアンバインドする必要があります。543これはコード バインディングでも機能します。プレフィックスを共有するすべてのコードをアンバインドすると、そのプレフィックスを単一キー バインディングとして使用できるようになります。コード バインディングは任意のアクティブなコンテキストに存在し、そのプレフィックスを予約したままにするため、それを定義するコンテキストで各コードをアンバインドする必要があります。

542 544 

543Claude Code は `ctrl+x` プレフィックスに以下のデフォルトコードをバインドします。`Chat` では `ctrl+x ctrl+k`、`ctrl+x ctrl+e`、`ctrl+x enter`、`Task` では `ctrl+x ctrl+b`、`DiffPanel` では `ctrl+x b` です。`ctrl+x enter` コードは v2.1.247 以降が必要で、`ctrl+x b` は v2.1.260 以降が必要です。`ctrl+x` 自体を単一キー バインディングとして再利用するには、すべてをアンバインドします。545Claude Code は `ctrl+x` プレフィックスに以下のデフォルトコードをバインドします。`Chat` では `ctrl+x ctrl+k`、`ctrl+x ctrl+e`、`ctrl+x enter`、`ctrl+x ctrl+a`、`ctrl+x tab`、`Task` では `ctrl+x ctrl+b`、`DiffPanel` では `ctrl+x b` です。`ctrl+x enter` コードは v2.1.247 以降が必要で、`ctrl+x b`、`ctrl+x ctrl+a`、`ctrl+x tab` は v2.1.260 以降が必要です。`ctrl+x` 自体を単一キー バインディングとして再利用するには、すべてをアンバインドします。

544 546 

545```json theme={null}547```json theme={null}

546{548{


563 "ctrl+x ctrl+k": null,565 "ctrl+x ctrl+k": null,

564 "ctrl+x ctrl+e": null,566 "ctrl+x ctrl+e": null,

565 "ctrl+x enter": null,567 "ctrl+x enter": null,

568 "ctrl+x ctrl+a": null,

569 "ctrl+x tab": null,

566 "ctrl+x": "chat:newline"570 "ctrl+x": "chat:newline"

567 }571 }

568 }572 }

Details

176拒否ルールは、リポジトリで作業するすべての人、あなただけ、またはマシン上のすべてのセッションに適用できます。これは、どの設定ファイルに配置するかによって異なります。176拒否ルールは、リポジトリで作業するすべての人、あなただけ、またはマシン上のすべてのセッションに適用できます。これは、どの設定ファイルに配置するかによって異なります。

177 177 

178* **リポジトリで作業するすべての人**: ルールを `.claude/settings.json` にコミットします。Claude をそこから開始する場合はリポジトリルートに配置するか、サブディレクトリから開始する場合は各パッケージの `.claude/` に配置します。このページの他のプロジェクト設定と同様に、そのファイルは親ディレクトリから継承されません。178* **リポジトリで作業するすべての人**: ルールを `.claude/settings.json` にコミットします。Claude をそこから開始する場合はリポジトリルートに配置するか、サブディレクトリから開始する場合は各パッケージの `.claude/` に配置します。このページの他のプロジェクト設定と同様に、そのファイルは親ディレクトリから継承されません。

179* **あなただけ**: リポジトリルートで `.claude/settings.local.json` を使用します。これは開始ディレクトリに関係なく、リポジトリ内のすべての CLI セッションで読み込まれます。ただし、Windows など Claude Code が [リポジトリルートを使用しない](/docs/ja/settings#where-claude-code-looks-for-each-file)場合は除きます。例の `Read(./vendor/**)` のような相対パターンは、[セッションの現在の作業ディレクトリ](/docs/ja/permissions#read-and-edit)ではなく、リポジトリルートではなく、セッションの現在の作業ディレクトリにアンカーされます。サブディレクトリからセッションを開始する場合は、このファイルのルールを `//` 絶対パスとして記述します。例えば `Read(//absolute/path/to/repo/vendor/**)` のようにします。v2.1.211 より前では、`.claude/settings.local.json` は開始ディレクトリからのみ読み込まれていました。179* **あなただけ**: リポジトリルートで `.claude/settings.local.json` を使用します。これは開始ディレクトリに関係なく、リポジトリ内のすべての CLI セッションで読み込まれます。ただし、Windows など Claude Code が [リポジトリルートを使用しない](/docs/ja/settings#where-claude-code-looks-for-each-file)場合は除きます。例の `Read(./**/vendor/**/*)` のような相対パターンは、[セッションの現在の作業ディレクトリ](/docs/ja/permissions#read-and-edit)ではなく、リポジトリルートではなく、セッションの現在の作業ディレクトリにアンカーされます。サブディレクトリからセッションを開始する場合は、このファイルのルールを `//` 絶対パスとして記述します。例えば `Read(//absolute/path/to/repo/**/vendor/**/*)` のようにします。v2.1.211 より前では、`.claude/settings.local.json` は開始ディレクトリからのみ読み込まれていました。

180* **すべての人、すべてのセッションで強制**: [管理設定](/docs/ja/managed-settings)でルールを設定します。ユーザーとプロジェクト設定はこれをオーバーライドできません。180* **すべての人、すべてのセッションで強制**: [管理設定](/docs/ja/managed-settings)でルールを設定します。ユーザーとプロジェクト設定はこれをオーバーライドできません。

181 181 

182以下の例はビルドアーティファクトとベンダー SDK をブロックします。182以下の例はビルドアーティファクトとベンダー SDK をブロックします。そのディレクトリパターンは `/**` ではなく `/**/*` で終わるため、各ルールはディレクトリ内のすべてをカバーしますが、ディレクトリ自体はカバーしません。Claude はその後、`ls dist` や `cd build` などでこれらのディレクトリをリストしたり、変更したりできます。

183 183 

184```json .claude/settings.json theme={null}184```json .claude/settings.json theme={null}

185{185{

186 "permissions": {186 "permissions": {

187 "deny": [187 "deny": [

188 "Read(./**/dist/**)",188 "Read(./**/dist/**/*)",

189 "Read(./**/build/**)",189 "Read(./**/build/**/*)",

190 "Read(./**/*.generated.*)",190 "Read(./**/*.generated.*)",

191 "Read(./vendor/**)"191 "Read(./**/vendor/**/*)"

192 ]192 ]

193 }193 }

194}194}


446 "../shared"446 "../shared"

447 ],447 ],

448 "deny": [448 "deny": [

449 "Read(./**/dist/**)",449 "Read(./**/dist/**/*)",

450 "Read(./**/build/**)"450 "Read(./**/build/**/*)"

451 ]451 ]

452 }452 }

453}453}


461{461{

462 "permissions": {462 "permissions": {

463 "deny": [463 "deny": [

464 "Read(./**/dist/**)",464 "Read(./**/dist/**/*)",

465 "Read(./**/build/**)"465 "Read(./**/build/**/*)"

466 ]466 ]

467 }467 }

468}468}

Details

54 オプションエンドポイントとスタートアップトラフィック54 オプションエンドポイントとスタートアップトラフィック

55</h3>55</h3>

56 56 

57トークンカウントエンドポイントは唯一のオプションです。存在しない場合、Claude Code は推論エンドポイントを通じてコンテキスト使用量をカウントすることにフォールバックします。推論リクエストは `/v1/messages?beta=true` に POST されるため、完全な URL ではなくパスで一致させてください。Google Cloud の Agent Platform メソッドのサフィックスは、`/projects/{project}/locations/{location}/publishers/anthropic/models/{model}:streamRawPredict` のようにパブリッシャーモデルパスに付加されます。57トークンカウントエンドポイントは唯一のオプションです。存在しない場合、Claude Code は文字ベースのコンテキスト使用量の推定にフォールバックします。

58 

59パスで一致させてください。完全な URL ではなく:

60 

61* 推論リクエストは `/v1/messages?beta=true` に POST されます

62* Google Cloud の Agent Platform メソッドのサフィックスは、`/projects/{project}/locations/{location}/publishers/anthropic/models/{model}:streamRawPredict` のようにパブリッシャーモデルパスに付加されます

58 63 

59ゲートウェイは、拒否しても何も壊さないベストエフォート型のスタートアップトラフィックも受け取ります。Anthropic Messages フォーマットゲートウェイは `HEAD /api/hello` 接続ウォーミングプローブを受け取ります。これは HTTP プロキシまたはクライアント証明書が設定されている場合、Claude Code はスキップします。Amazon Bedrock フォーマットゲートウェイは `GET /inference-profiles?type=SYSTEM_DEFINED` リクエストを受け取り、設定されたモデルが推論プロファイルの場合、`GET /inference-profiles/{profile}` ルックアップを受け取ります。64ゲートウェイは、拒否しても何も壊さないベストエフォート型のスタートアップトラフィックも受け取ります。Anthropic Messages フォーマットゲートウェイは `HEAD /api/hello` 接続ウォーミングプローブを受け取ります。これは HTTP プロキシまたはクライアント証明書が設定されている場合、Claude Code はスキップします。Amazon Bedrock フォーマットゲートウェイは `GET /inference-profiles?type=SYSTEM_DEFINED` リクエストを受け取り、設定されたモデルが推論プロファイルの場合、`GET /inference-profiles/{profile}` ルックアップを受け取ります。

60 65 


152| ベータ[ツールフィールド](https://platform.claude.com/docs/en/agents-and-tools/tool-use/overview) | ツール関連ベータヘッダーは `strict` および `defer_loading` などのツールスキーマフィールドと組み合わされます | ボディがヘッダーなしで渡される場合、認識されないツールスキーマフィールドを命名する `400` | 両方を転送するか、[`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`](#disable-pre-release-capabilities) |157| ベータ[ツールフィールド](https://platform.claude.com/docs/en/agents-and-tools/tool-use/overview) | ツール関連ベータヘッダーは `strict` および `defer_loading` などのツールスキーマフィールドと組み合わされます | ボディがヘッダーなしで渡される場合、認識されないツールスキーマフィールドを命名する `400` | 両方を転送するか、[`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`](#disable-pre-release-capabilities) |

153| [努力](https://platform.claude.com/docs/en/build-with-claude/effort)および[構造化出力](https://platform.claude.com/docs/en/build-with-claude/structured-outputs) | `output_config` ボディフィールドは努力、構造化出力フォーマット、およびタスク予算設定を含みます。各々は独自のベータヘッダーと組み合わされます | `output_config` を命名する `400`。多くの場合 `Extra inputs are not permitted`。Amazon Bedrock および Google Cloud の Agent Platform アップストリーム上 | フィールドとそのヘッダーを一緒に転送してください |158| [努力](https://platform.claude.com/docs/en/build-with-claude/effort)および[構造化出力](https://platform.claude.com/docs/en/build-with-claude/structured-outputs) | `output_config` ボディフィールドは努力、構造化出力フォーマット、およびタスク予算設定を含みます。各々は独自のベータヘッダーと組み合わされます | `output_config` を命名する `400`。多くの場合 `Extra inputs are not permitted`。Amazon Bedrock および Google Cloud の Agent Platform アップストリーム上 | フィールドとそのヘッダーを一緒に転送してください |

154| [プロンプトキャッシング](/docs/ja/prompt-caching) | ベータペアリングなし。Claude Code は `cache_control` マーカーを `system` ブロックおよび `messages` エントリ(会話の途中で追加される `role: "system"` エントリを含む)に付加します | エラーなし。会話は毎ターン、キャッシュされていない入力として課金されます。`usage` でキャッシュアクティビティがほとんどまたはまったくない高い `input_tokens` として表示されます | `cache_control` が表示される場所ならどこでも変更なしで転送し、ブロック形式の `system` またはメッセージコンテンツをプレーン文字列に変換しないでください |159| [プロンプトキャッシング](/docs/ja/prompt-caching) | ベータペアリングなし。Claude Code は `cache_control` マーカーを `system` ブロックおよび `messages` エントリ(会話の途中で追加される `role: "system"` エントリを含む)に付加します | エラーなし。会話は毎ターン、キャッシュされていない入力として課金されます。`usage` でキャッシュアクティビティがほとんどまたはまったくない高い `input_tokens` として表示されます | `cache_control` が表示される場所ならどこでも変更なしで転送し、ブロック形式の `system` またはメッセージコンテンツをプレーン文字列に変換しないでください |

155| [トークンカウント](https://platform.claude.com/docs/en/build-with-claude/token-counting) | ベータペアリングなし。`count_tokens` エンドポイントを使用します | Claude Code はメッセージエンドポイントを通じてコンテキスト使用量をカウントするようにフォールバックします | トークンカウントが推論リクエストを消費しないようにエンドポイントを公開してください |160| [トークンカウント](https://platform.claude.com/docs/en/build-with-claude/token-counting) | ベータペアリングなし。`count_tokens` エンドポイントを使用します | エラーなし。Claude Code は文字ベースの推定にフォールバックするため、`/context` は概算カウントを表示します | 正確なトークンカウントのためにエンドポイントを公開してください |

156 161 

157`ANTHROPIC_DEFAULT_*_MODEL_SUPPORTED_CAPABILITIES` [変数](/docs/ja/model-config)は、プロバイダー設定でのみモデル機能を宣言します:`CLAUDE_CODE_USE_BEDROCK`、`CLAUDE_CODE_USE_VERTEX`、`CLAUDE_CODE_USE_FOUNDRY`、および [`CLAUDE_CODE_USE_MANTLE`](/docs/ja/amazon-bedrock#use-the-mantle-endpoint)。`ANTHROPIC_BASE_URL` ゲートウェイの背後では効果がありません。162`ANTHROPIC_DEFAULT_*_MODEL_SUPPORTED_CAPABILITIES` [変数](/docs/ja/model-config)は、プロバイダー設定でのみモデル機能を宣言します:`CLAUDE_CODE_USE_BEDROCK`、`CLAUDE_CODE_USE_VERTEX`、`CLAUDE_CODE_USE_FOUNDRY`、および [`CLAUDE_CODE_USE_MANTLE`](/docs/ja/amazon-bedrock#use-the-mantle-endpoint)。`ANTHROPIC_BASE_URL` ゲートウェイの背後では効果がありません。

158 163 


160 自動リトライとエラー転送165 自動リトライとエラー転送

161</h3>166</h3>

162 167 

163アップストリームが `thinking` フィールド、[思考署名](https://platform.claude.com/docs/en/build-with-claude/extended-thinking)、会話中のシステムメッセージ、またはそれらのメッセージの 1 つの `cache_control` マーカーを拒否する場合、Claude Code はリクエストをリトライし、拒否された機能を会話の残りの部分で無効にします。Claude Code はコンテキスト管理またはツールスキーマフィールド拒否をリトライしません。それらの `400` エラーは開発者に到達します。168アップストリーム拒否後に Claude Code が実行する内容は、何が拒否されたかによって異なります:

169 

170* アップストリームが `thinking` フィールド、会話中のシステムメッセージ、またはそのようなメッセージの `cache_control` マーカーを拒否する場合、Claude Code はリクエストをリトライし、拒否された機能を会話の残りの部分で無効にします

171* アップストリームが[思考署名](https://platform.claude.com/docs/en/build-with-claude/extended-thinking)を拒否する場合、Claude Code はリクエストを会話の以前の思考ブロックなしでリトライし、それらを後のすべてのリクエストから除外します。新しい応答には依然として思考が含まれます

172* Claude Code はコンテキスト管理またはツールスキーマフィールド拒否をリトライしません。それらの `400` エラーは開発者に到達します

164 173 

165リトライロジックはアップストリームのエラー文言に一致するため、アップストリームエラーレスポンスボディを変更なしで転送してください。アップストリームエラーを独自のエンベロープでラップするゲートウェイは、ステータスコードを保持する場合でも回復パスを壊します。ただし、エンベロープのメッセージが安定した `capability_rejected:` トークンを含む場合は除きます。[Claude apps ゲートウェイはクラウドプロバイダーのエラー文言をそれらのトークンに置き換えます](/docs/ja/claude-apps-gateway-config#upstream-error-messages)。例えば `capability_rejected: prompt_too_long` です。174リトライロジックはアップストリームのエラー文言に一致するため、アップストリームエラーレスポンスボディを変更なしで転送してください。アップストリームエラーを独自のエンベロープでラップするゲートウェイは、ステータスコードを保持する場合でも回復パスを壊します。ただし、エンベロープのメッセージが安定した `capability_rejected:` トークンを含む場合は除きます。[Claude apps ゲートウェイはクラウドプロバイダーのエラー文言をそれらのトークンに置き換えます](/docs/ja/claude-apps-gateway-config#upstream-error-messages)。例えば `capability_rejected: prompt_too_long` です。

166 175 


168 プレリリース機能を無効化177 プレリリース機能を無効化

169</h3>178</h3>

170 179 

171`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` は Claude Code がすべてのプロバイダーでプレリリース機能とそのボディフィールドを送信するのを停止します。コンテキスト管理とベータツールフィールドを含みます。適応的推論には影響しません。これはモデルではなくベータで選択されるため、サブスクリプション認証が必要とする OAuth 機能を抑制することはありません。180`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` は Claude Code がすべてのプロバイダーでプレリリース機能とそのボディフィールドを送信するのを停止します。コンテキスト管理とベータツールフィールドを含みます。適応的推論には影響しません。適応的推論はベータではなくモデルによって選択されるためです。この変数は、サブスクリプション認証が必要とする OAuth 機能を抑制することもありません。

172 181 

173Claude Code v2.1.227 以降では、組織は [MCP ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search)を[管理設定](/docs/ja/managed-settings)を通じてこの変数の下で有効に保つことができます。このオーバーライドが有効な場合に Claude Code が送信する内容は、接続方法によって異なります:182Claude Code v2.1.227 以降では、組織は [MCP ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search)を[管理設定](/docs/ja/managed-settings)を通じてこの変数の下で有効に保つことができます。このオーバーライドが有効な場合に Claude Code が送信する内容は、接続方法によって異なります:

174 183 

managed-settings.md +445 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# マネージド設定をデプロイする

6 

7> すべての開発者のマシンにマネージド設定をデプロイします。OS ごとの配信メカニズム、Claude Code がマネージドソースを組み合わせる方法、および強制の検証方法について説明します。

8 

9マネージド設定は、組織がすべての開発者のマシンにデプロイする設定です。Claude Code はこれらを他のすべてのレベルの上に適用するため、ユーザー、プロジェクト、ローカル、または `--settings` の値は、いくつかの [セキュリティに関連する例外](/docs/ja/settings#exceptions-to-managed-settings-precedence) を除いて、これらをオーバーライドできません。これらの例外では、下位レベルからのより厳密な値がカウントされます。

10 

11このページは、マネージド設定をデプロイするか、設定が適用されない理由をデバッグする管理者向けです。強制する内容を決定するには、[強制する内容を決定する](/docs/ja/admin-setup#decide-what-to-enforce) テーブルから始めてください。claude.ai コンソールパスについては、[サーバーマネージド設定](/docs/ja/server-managed-settings) を参照してください。開発者自身の値がどのファイルに入るかについては、[設定](/docs/ja/settings) を参照してください。

12 

13<h2 id="deploy-a-managed-settings-file">

14 マネージド設定ファイルをデプロイする

15</h2>

16 

17これは各マシンにポリシーを配置する最速の方法です。`managed-settings.json` ファイルです。マネージド設定の配信方法をまだ選択していない場合、またはデバイスが MDM 下にあるか開発者がクラウドセッションを実行している場合は、最初に [配信メカニズムを選択する](#choose-a-delivery-mechanism) を読んでください。

18 

19<Steps>

20 <Step title="managed-settings.json を作成する">

21 強制することを決定したキーを保持する `managed-settings.json` を作成します。これは `settings.json` と同じ JSON 形式です。[強制する内容を決定する](/docs/ja/admin-setup#decide-what-to-enforce) テーブルは各コントロールの背後にあるキーをリストしており、[設定リファレンス](/docs/ja/settings-reference) の各エントリは、マネージドソースがそれを設定できるかどうかを示しています。このファイルは 2 つのファイル読み取りをブロックし、バイパスモードをオフにし、Claude Code がユーザー、プロジェクト、ローカルファイルおよび `--allowedTools` からの権限ルールを無視するようにします。

22 

23 ```json managed-settings.json theme={null}

24 {

25 "permissions": {

26 "deny": [

27 "Read(./.env)",

28 "Read(./secrets/**)"

29 ],

30 "disableBypassPermissionsMode": "disable"

31 },

32 "allowManagedPermissionRulesOnly": true

33 }

34 ```

35 

36 ログイン方法、モデル、MCP サーバー、マーケットプレイスを含むより多くのマネージドキーの形状を示すより完全な例については、[組織のマネージド設定](/docs/ja/settings-example#an-organizations-managed-settings) を参照してください。

37 </Step>

38 

39 <Step title="ファイルを各マシンに配置する">

40 ファイルを `managed-settings.json` として、オペレーティングシステムのシステムディレクトリに保存します。フリート上のファイルを配置するために既に使用しているツールを使用します。

41 

42 * **macOS**: `/Library/Application Support/ClaudeCode/managed-settings.json`

43 * **Linux と WSL**: `/etc/claude-code/managed-settings.json`

44 * **Windows**: `C:\Program Files\ClaudeCode\managed-settings.json`

45 </Step>

46 

47 <Step title="ポリシーが適用されたことを確認する">

48 1 つのマシンで、Claude Code 内で `/status` を実行します。`Setting sources` 行は `Enterprise managed settings (file)` を表示します。その後、フリートの残りにロールアウトします。[ポリシーが有効であることを確認する](#check-that-a-policy-is-in-force) は、行が見つからない場合に何を確認するかについて説明しています。

49 </Step>

50</Steps>

51 

52<span id="managed-settings-delivery" />

53 

54<span id="delivery-mechanisms" />

55 

56<h2 id="choose-a-delivery-mechanism">

57 配信メカニズムを選択する

58</h2>

59 

60上記のステップのファイルは、マネージド設定をマシンに取得する 4 つの方法の 1 つです。すべてのメカニズムは `settings.json` ファイルと同じポリシーキーを持つため、[設定リファレンス](/docs/ja/settings-reference) はすべてに適用されます。いくつかのキーは特定のソースに関連付けられており、各エントリの Scope 行はどれかを示しています。

61 

62* **配信コントロール**: [`policyHelper`](/docs/ja/settings-reference#policyhelper)、[`wslInheritsWindowsSettings`](/docs/ja/settings-reference#wslinheritswindowssettings)、および [`managedSourcesBehavior`](/docs/ja/settings-reference#managedsourcesbehavior)

63* **ゲートウェイログインキー**: [`forceLoginGatewayUrl`](/docs/ja/settings-reference#forcelogingatewayurl) および [`forceLoginMethod`](/docs/ja/settings-reference#forceloginmethod) の `"gateway"` 値

64 

65マネージド設定ファイル、MDM プロファイル、または claude.ai コンソールは、それが到達するすべてのユーザーに 1 つのポリシーを適用します。開発者の 1 つのグループに異なるポリシーを提供するには、異なるファイルまたはプロファイルをそのグループにデプロイします。claude.ai コンソール [はまだグループをターゲットにできません](/docs/ja/server-managed-settings#current-limitations)。一方、自己ホスト型の [Claude apps gateway](/docs/ja/claude-apps-gateway) は IdP グループごとにマネージド設定を配信します。

66 

67複数のメカニズムが同じマシンにポリシーを配信する場合、Claude Code はデフォルトで 1 つを使用し、他を無視します。[Claude Code がマネージドソースを組み合わせる方法](#how-claude-code-combines-managed-sources) は順序と適用される opt-in を示しています。

68 

69MDM とファイル行は一緒に endpoint-managed settings と呼ばれます。ポリシーが開発者のデバイスに保存されているためです。これは server-managed 行とは対照的です。Claude Code はそれをフェッチします。

70 

71下記のテーブルを使用して、デバイスを既に管理している方法に基づいてメカニズムを選択してください。

72 

73| メカニズム | 配信方法 | Claude Code がそれを読む時期 | 使用する場合 |

74| :----------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------- |

75| [サーバーマネージド設定](/docs/ja/server-managed-settings) | claude.ai 管理コンソール内、または自己ホスト型 [Claude apps gateway](/docs/ja/claude-apps-gateway) 上 | スタートアップ時にフェッチされ、1 時間ごとにポーリングされます。[ポリシーが適用される場所と時期](#where-and-when-a-policy-applies) を参照してください | 各マシンに触れずに claude.ai 組織のポリシーを変更する 1 つの場所が必要な場合 |

76| MDM または OS レベルのポリシー | macOS 構成プロファイルまたは Windows `HKLM` レジストリ値として、Jamf、Intune、グループポリシー、または同様のツール経由。[各メカニズムがポリシーを保存する場所](#where-each-mechanism-stores-the-policy) を参照してください | スタートアップ時に読み取られ、30 分ごとに変更がチェックされます | MDM またはグループポリシーでデバイスを既に管理している場合 |

77| ファイルベース | 各マシンのシステムディレクトリ内の `managed-settings.json` として。[各メカニズムがポリシーを保存する場所](#where-each-mechanism-stores-the-policy) を参照してください | スタートアップ時に読み取られ、ファイルが変更されるとリロードされます | MDM なしのマシン、Linux ホスト、または自分で構築するイメージ |

78| HKCU レジストリ、Windows と WSL | Windows `HKCU` レジストリ値として。[各メカニズムがポリシーを保存する場所](#where-each-mechanism-stores-the-policy) を参照してください | スタートアップ時に読み取られ、30 分ごとに変更がチェックされます。Claude Code はそれを使用するのは、他のマネージドソースがポリシーキーを配信せず、[ホスト提供の親設定](#let-an-embedding-host-add-policy) が制限的なキーを提供しない場合のみです | マシンレベルの `HKLM` キーを書き込むことができない場合 |

79 

80Jamf、Iru、Intune、グループポリシーのスターターテンプレートは、[MDM 例リポジトリ](https://github.com/anthropics/claude-code/tree/main/examples/mdm) にあります。

81 

82`managed-mcp.json` を通じてデプロイするか、[`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers) キーを通じて提供するマネージド MCP サーバーについては、[マネージド MCP 構成](/docs/ja/managed-mcp) を参照してください。

83 

84<h3 id="where-and-when-a-policy-applies">

85 ポリシーが適用される場所と時期

86</h3>

87 

88デプロイされたポリシーは、開発者のセッションに次のように到達します。

89 

90* **サーフェス**: 開発者のマシン上で、ターミナル、VS Code および JetBrains 拡張機能、デスクトップアプリの Code タブ、および [Agent SDK](/docs/ja/agent-sdk/typescript) セッションはこれらのソースをすべて読み取ります。Agent SDK セッションは、`settingSources` がユーザー、プロジェクト、ローカルファイルを除外する場合でも、マネージド設定をロードします。

91* **クラウドセッション**: Anthropic ホスト環境のセッションはデバイスの MDM プロファイルまたはファイルを読み取らないため、ポリシーはサーバーマネージド設定から来る必要があります。[自己ホスト環境](/docs/ja/self-hosted-environments) のセッションは、デフォルトではサーバーマネージド設定がポリシーキーを配信しない場合のみ、ランナーイメージ内のマネージド設定ファイルを読み取ります。ただし、[すべての管理ソースから Claude Code が読み取るキー](#keys-read-from-every-admin-source) は除きます。[Claude Code がマネージドソースを組み合わせる方法](#how-claude-code-combines-managed-sources) は両方を適用する opt-in について説明しています。

92* **Cowork セッション**: Claude Desktop アプリの [Cowork](https://claude.com/docs/cowork/overview) は Claude Code 上でセッションを実行します。Cowork セッションでは、Claude Code は Team または Enterprise アカウントでユーザーがサインインしている場合でも、claude.ai 管理コンソールからサーバーマネージド設定をフェッチしません。したがって、どのポリシーが適用されるかはセッションが実行される場所によって異なります。

93 

94 * **ユーザーのマシン上**: デフォルトでは、Cowork セッションの Claude Code はそのデバイス上の MDM または OS レベルのポリシーおよびマネージド設定ファイルを読み取るため、ポリシーをそこにデプロイします。

95 * **完全な VM サンドボックス内**: Claude Desktop マネージド構成が [`requireCoworkFullVmSandbox`](https://claude.com/docs/third-party/claude-desktop/configuration#requirecoworkfullvmsandbox) を設定する場合、Claude Code は仮想マシン内で実行され、デバイスの MDM ポリシーおよびマネージド設定ファイルは存在しません。

96 * **リモート Cowork セッション**: これらは Anthropic 管理 VM 上で実行され、Claude Code はデバイスポリシーを読み取ることができません。

97 

98 [サーフェスカバレッジ](/docs/ja/model-config#surface-coverage) テーブルは Cowork と他のサーフェスを比較しています。

99* **実行中のセッション**: ほとんどの変更は、[配信メカニズムテーブル](#choose-a-delivery-mechanism) のスケジュールに従って、再起動なしで実行中のセッションに到達します。

100 * [`forceRemoteSettingsRefresh`](/docs/ja/settings-reference#forceremotesettingsrefresh)、[`requiredMinimumVersion`](/docs/ja/settings-reference#requiredminimumversion)、および [いくつかのユーザー編集可能キー](/docs/ja/settings#when-edits-take-effect) への変更は、次のセッション開始時に有効になります。

101 * 新規または変更された [`policyHelper`](/docs/ja/settings-reference#policyhelper) エントリは次の起動時に有効になります。ただし、起動時にサーバーマネージド設定によってシャドウされたヘルパーは、フェッチがそれらの設定が削除されたことを報告するとすぐに実行されます。

102* **承認が必要な変更**: [次の起動を待つ更新](/docs/ja/server-managed-settings#fetch-and-caching-behavior) とは別に、[承認が必要な](/docs/ja/server-managed-settings#security-approval-dialogs) 設定(フックまたは `env` 変数など)へのサーバーマネージド変更は、開発者がインタラクティブセッションでダイアログを受け入れるのを待ち、IDE 拡張機能または Agent SDK がホストするセッションの現在の実行に適用されます。その他のサーバーマネージド変更は次のポーリングで適用されます。

103* **長時間実行セッション**: 数週間開いたままのセッションはロールアウトに遅れることができます。[`requiredMinimumVersion`](/docs/ja/settings-reference#requiredminimumversion) は古いバイナリが開始されるのをブロックし、既に実行中のセッションを終了しません。

104 

105<span id="format-the-policy-for-each-platform" />

106 

107<h3 id="where-each-mechanism-stores-the-policy">

108 各メカニズムがポリシーを保存する場所

109</h3>

110 

111キーはどこでも同じですが、各メカニズムはそれらを異なる場所と形状に保存します。

112 

113* **サーバーマネージド**: Anthropic のサーバーまたはゲートウェイがポリシーを保持します。Claude Code はローカルキャッシュを保持し、スタートアップ時に適用し、[各成功したフェッチで置き換えます](/docs/ja/server-managed-settings#security-considerations)。

114* **macOS 構成プロファイル**: `com.anthropic.claudecode` マネージド設定ドメイン。`managed-settings.json` と同じトップレベルキーを使用し、ネストされた設定は辞書として、リストは plist 配列として使用します。

115* **Windows HKLM レジストリ**: `HKLM\SOFTWARE\Policies\ClaudeCode` の下の `Settings` という名前の `REG_SZ` または `REG_EXPAND_SZ` 値として JSON。

116* **ファイルベース**: `managed-settings.json`、オプションの `managed-settings.d/` ディレクトリ、および `managed-mcp.json` をシステムディレクトリに配置します。macOS では `/Library/Application Support/ClaudeCode/`、Linux と WSL では `/etc/claude-code/`、Windows では `C:\Program Files\ClaudeCode\`。Claude Code はレガシー Windows パス `C:\ProgramData\ClaudeCode\managed-settings.json` を読み取りません。

117* **Windows HKCU レジストリ**: `HKCU\SOFTWARE\Policies\ClaudeCode` の下の同じ `Settings` 値。

118 

119<h3 id="split-a-file-based-policy-across-teams">

120 ファイルベースのポリシーをチーム間で分割する

121</h3>

122 

123複数のチームが 1 つのポリシーの一部を所有している場合、各部分を `managed-settings.d/` 内の独自のファイルに配置します。同じシステムディレクトリ内の `managed-settings.json` の隣に配置し、1 つの共有ファイルを編集する代わりに使用します。

124 

125Claude Code は `managed-settings.json` を最初にマージし、次にディレクトリ内のすべての `*.json` ファイルをアルファベット順にマージします。ファイルに数値プレフィックスを付けて順序を制御します。例えば `10-telemetry.json` と `20-security.json`。Claude Code は隠しファイルと `.json` で終わらないファイルを無視します。

126 

1272 つのファイルが同じキーを設定する場合、Claude Code はこれらのルールで組み合わせます。

128 

129* **単一値**(`"model": "opus"` または `"cleanupPeriodDays": 7` など): 後のファイルの値が前のファイルを置き換えます

130* **リスト**(`permissions.deny` または `sandbox.network.allowedDomains` など): 2 つのリストが組み合わされ、重複が削除されます

131* **ネストされたブロック**(`env` または `sandbox` など): 2 つのブロックはキーごとにマージされ、内部の各キーはこれらの同じルールに従います

132* **`fallbackModel`**: 後のチェーンが前のチェーン全体を置き換えます

133* **[`extraKnownMarketplaces`](/docs/ja/settings-reference#extraknownmarketplaces) および [`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers)**: 同じ名前の後のエントリが前のエントリ全体を置き換えます

134* **[`modelPicker`](/docs/ja/settings-reference#modelpicker)**: 後のラインアップが前のラインアップ全体を置き換えます

135 

136<span id="precedence-within-the-managed-tier" />

137 

138<span id="which-managed-source-claude-code-uses" />

139 

140<h2 id="how-claude-code-combines-managed-sources">

141 Claude Code がマネージドソースを組み合わせる方法

142</h2>

143 

144組織が同じマシンに複数のマネージドソースを配信する場合、[`managedSourcesBehavior`](/docs/ja/settings-reference#managedsourcesbehavior) キーは Claude Code が他のソースで何をするかを決定します。

145 

146* **`"first-wins"`、デフォルト**: Claude Code は少なくとも 1 つのポリシーキーを配信する最高ランクのソースを使用し、[すべての管理ソースから読み取るキー](#keys-read-from-every-admin-source) の少数を除いて、残りを無視します。Claude Code はスキップするソースの警告を表示しません。`/status` [使用したソースとスキップしたソースの名前](#read-the-source-in-/status)。

147* **`"merge"`**: Claude Code はポリシーキーを配信するすべての管理ソースを適用し、キーの種類で組み合わせます。ほとんどのキーでは高ランクのソースの値が適用され、リストは結合され、ロックは最も厳密な値を取ります。[すべてのマネージドソースを構成する](#compose-every-managed-source) はキーを設定する場所と各キーの種類がどのように組み合わされるかを示しています。Claude Code v2.1.242 以降が必要です。

148 

149両方の設定はソースを同じ方法でランク付けします。このセクションでは 2 つの用語が繰り返されます。

150 

151* **ポリシーキー**: 2 つのコントロールキー([`wslInheritsWindowsSettings`](/docs/ja/settings-reference#wslinheritswindowssettings) および [`managedSourcesBehavior`](/docs/ja/settings-reference#managedsourcesbehavior))以外の設定キー。これらのみを含むマネージド設定ファイルまたは MDM ポリシーはカウントされず、Claude Code は次のソースに移動します。

152* **管理ソース**: 以下の最初の 3 つのソースの 1 つ。HKCU レジストリはユーザー書き込み可能であり、1 つではありません。

153 

154Claude Code はこれらのソースを確認します。最初に最高優先度:

155 

1561. claude.ai から配信されたリモート設定。[サーバーマネージド設定](/docs/ja/server-managed-settings) または [Claude apps gateway](/docs/ja/claude-apps-gateway) として。Claude Code はセッションが [適格なログインまたはキー](/docs/ja/server-managed-settings#platform-availability) で Anthropic の API に直接認証するか、`/login` でゲートウェイにサインインする場合のみこのソースをフェッチします。他のプロバイダー上、または `ANTHROPIC_BASE_URL` が Anthropic の API 以外を指す場合、次のソースから開始します

1572. MDM または OS レベルのポリシー: macOS plist または HKLM レジストリキー

1583. マネージド設定ファイル、`managed-settings.d/*.json` および `managed-settings.json` がマージされたもの

1594. HKCU レジストリ、Windows 上、および WSL 上。HKLM レジストリまたは Windows マネージド設定ファイルが [`wslInheritsWindowsSettings`](/docs/ja/settings-reference#wslinheritswindowssettings) をオンにし、HKCU 値もそれを設定する場合。Claude Code はそれを読み取るのは、上記のソースがポリシーキーを配信せず、[ホスト提供の親設定](#let-an-embedding-host-add-policy) が制限的なキーを提供しない場合のみです

160 

161このダイアグラムはランキングを示し、いずれかの設定の下で最初の 3 つのソースから Claude Code が読み取るクロスソースキーの例を示しています。

162 

163<img src="https://mintcdn.com/claude-code/zuWID2B-Rxm8DEC8/images/managed-source-precedence.svg?fit=max&auto=format&n=zuWID2B-Rxm8DEC8&q=85&s=53f6be49f06eff48e01422c8ae1bc2e6" className="dark:hidden" alt="リモート設定の上から MDM、マネージド設定ファイル、HKCU レジストリの下まで、4 つのマネージド設定ソースがランク付けされていることを示すダイアグラム。デフォルトでは、ポリシーキーを持つ最初のソースがポリシーを提供し、残りはスキップされます。managedSourcesBehavior がマージに設定されている場合、ポリシーキーを持つすべての管理ソースが貢献し、キーの種類で組み合わされ、HKCU レジストリは除外されます。サイドパネルは、サンドボックスロック、forceRemoteSettingsRefresh、変数ごとの env マージなどのクロスソースキーが、HKCU レジストリを除外するすべての管理ソースから読み取られることを示しています。" width="680" height="330" data-path="images/managed-source-precedence.svg" />

164 

165<img src="https://mintcdn.com/claude-code/zuWID2B-Rxm8DEC8/images/managed-source-precedence-dark.svg?fit=max&auto=format&n=zuWID2B-Rxm8DEC8&q=85&s=ae407a9a08a3d680e80cf1a2af845d71" className="hidden dark:block" alt="リモート設定の上から MDM、マネージド設定ファイル、HKCU レジストリの下まで、4 つのマネージド設定ソースがランク付けされていることを示すダイアグラム。デフォルトでは、ポリシーキーを持つ最初のソースがポリシーを提供し、残りはスキップされます。managedSourcesBehavior がマージに設定されている場合、ポリシーキーを持つすべての管理ソースが貢献し、キーの種類で組み合わされ、HKCU レジストリは除外されます。サイドパネルは、サンドボックスロック、forceRemoteSettingsRefresh、変数ごとの env マージなどのクロスソースキーが、HKCU レジストリを除外するすべての管理ソースから読み取られることを示しています。" width="680" height="330" data-path="images/managed-source-precedence-dark.svg" />

166 

167<h3 id="keys-read-from-every-admin-source">

168 すべての管理ソースから読み取るキー

169</h3>

170 

171デフォルトの `"first-wins"` 設定では、Claude Code はほとんどのキーを [選択したソース](#how-claude-code-combines-managed-sources) からのみ読み取り、選択したソースがそのキーを設定しないままにしても、下位ランクのソースの値を無視します。

172 

173いくつかのキーは異なります。Claude Code はそれらをすべての管理ソースから読み取るため、選択したソースがそれを設定しない場合でも、下位ランクの MDM ポリシーまたはマネージド設定ファイルはそれらを設定できます。Claude Code はユーザー書き込み可能な HKCU レジストリをそのスキャンから除外します。HKCU が唯一のソースであり、ホストが親設定を提供しない場合、HKCU は選択されたソースのように適用されます。

174 

175クロスソースキーには以下が含まれます。

176 

177* `sandbox.network.allowManagedDomainsOnly` および `sandbox.filesystem.allowManagedReadPathsOnly`: 任意の管理ソースの `true` がロックをオンにします。ロックがオンの間、Claude Code は許可リストをロックします。`sandbox.network.allowedDomains` を `WebFetch(domain:...)` 許可ルール、または `sandbox.filesystem.allowRead` と一緒に、すべての管理ソース全体で結合します。ロックがない場合、Claude Code は許可リストを他のキーのように扱うため、`"first-wins"` の下では、選択されていない管理ソースの許可リストは無視されます

178* `allowAllClaudeAiMcps`

179* サンドボックスバイナリパス `sandbox.bwrapPath` および `sandbox.socatPath`

180* サンドボックス `ripgrep` バイナリ、[`sandbox.ripgrep`](/docs/ja/settings-reference#sandbox-ripgrep)

181* `sandbox.filesystem.disabled` および `sandbox.network.strictAllowlist`

182* [`useAutoModeDuringPlan`](/docs/ja/settings-reference#useautomodeduringplan) および [`syncClaudeAiSkills`](/docs/ja/settings-reference#syncclaudeaiskills)。任意の管理ソースの `false` が動作をオフにします。開発者のユーザーまたはローカル設定の `false` もそれをオフにします。各キーは拒否のみできます

183* [`enableArtifact`](/docs/ja/settings-reference#enableartifact)。任意の管理ソースの `false` が [Artifact ツール](/docs/ja/artifacts) をオフにします。開発者のユーザー、プロジェクト、またはローカル設定の `false` もそれをオフにし、ソースはそれをオンに戻しません。[下位レベルの値がまだカウントされる](/docs/ja/settings#exceptions-to-managed-settings-precedence) を参照してください。Claude Code v2.1.242 以降が必要です

184* [`maxEffortLevel`](/docs/ja/settings-reference#maxeffortlevel)。任意の管理ソースの最も低いキャップが適用されます。開発者が自分の設定または `--settings` で低いキャップを設定する場合、Claude Code はそれを適用します。ソースはキャップを上げることはできません。Claude Code v2.1.267 以降が必要です

185* `attribution` のコミットトレーラー opt-out、または非推奨の `includeCoAuthoredBy` から任意のティア

186* [`forceRemoteSettingsRefresh`](/docs/ja/server-managed-settings)

187* 管理ソース全体で変数ごとにマージされた `env`: 各変数は、それを定義する最高優先度のソースから来るため、下位のソースは高位のソースが設定しないままにした変数を埋めます。いくつかの変数は独自のルールに従います。[マネージドソース全体のキーごとの例外](/docs/ja/server-managed-settings#per-key-exceptions-across-managed-sources) は各変数に名前を付けます。Claude Code v2.1.223 以降が必要です。v2.1.223 より前では、Claude Code は選択されたソースの全体 `env` ブロックのみを適用しました

188 

189<h3 id="compose-every-managed-source">

190 すべてのマネージドソースを構成する

191</h3>

192 

193デプロイするすべての管理ソースを Claude Code が適用するようにするには、[`managedSourcesBehavior`](/docs/ja/settings-reference#managedsourcesbehavior) を `"merge"` に設定します。デプロイする最高ランクのソースで。Claude Code はキーを読み取るのは、キーまたはポリシーキーを持つ最高ランクのソースからのみです。したがって、下位のソースはそれ自体をマージにオプトインできず、サーバーマネージド設定を受け取らないマシンはそのキーを MDM プロファイルにも必要とします。ユーザー書き込み可能な HKCU レジストリは別のソースとマージされません。Claude Code v2.1.242 以降が必要です。

194 

195`"merge"` の下では、Claude Code は下位のソースのリストエントリ(`permissions.allow` ルールおよびフックなど)をポリシーに追加するため、最高ランクのソースの下にランク付けされたすべてのソースが管理者の制御下にある場合のみオンにします。

196 

197このテーブルは、`"merge"` の下で Claude Code が各キーの種類をどのように組み合わせるかを示しています。[`managedSourcesBehavior` エントリ](/docs/ja/settings-reference#managedsourcesbehavior) は制限許可リスト、値全体取得、および最高ソースのみ行のすべてのキーに名前を付けます。

198 

199| キーの種類 | Claude Code がそれを組み合わせる方法 | 例 |

200| :------------------ | :---------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------- |

201| リスト | すべてのソースからエントリを組み合わせます | `permissions.allow`、`hooks`、`sandbox.network.allowedDomains`、`deniedMcpServers` |

202| ロック | 任意のソースが設定する最も厳密な値を適用します。より緩い値は最高ランクのソースからのみ適用されます | `allowManagedHooksOnly`、`permissions.disableBypassPermissionsMode`、`crossSessionInbound` |

203| 制限許可リスト | それを設定する最高ランクのソースから値全体を取得し、下位のソースからエントリを追加しません | `availableModels`、`allowedMcpServers`、`strictKnownMarketplaces`、`allowedChannelPlugins`、および `fallbackModel` チェーン |

204| 値全体取得 | それを設定する最高ランクのソースから値全体を取得し、下位のソースからエントリまたはフィールドを組み合わせません | `sandbox.credentials.awsPairs`、`sandbox.ripgrep` |

205| 提供される MCP サーバー | すべてのソースからサーバー名を組み合わせます。2 つのソースが同じ名前を設定する場合、高ランクのソースの全体エントリを適用します | `managedMcpServers` |

206| 最高ランクのソースからのみ読み取るキー | 最高ランクのソースがそれを設定しないままにしても、すべての下位のソースのキーを無視します | `apiKeyHelper` などの認証情報ヘルパー、`forceLoginOrgUUID` などのログイン PIN、`modelPicker`、`permissions.defaultMode` |

207| `env` | いずれかの設定の下で管理ソース全体で変数ごとにマージされます。[すべての管理ソースから読み取るキー](#keys-read-from-every-admin-source) が説明するように | |

208| その他のすべてのキー | それを設定する最高ランクのソースから値を取得します | `model`、`cleanupPeriodDays` |

209 

210マシン上で組み合わされたソースを確認するには、[`/status` の `Setting sources` 行を読んでください](#read-the-source-in-/status)。そのセクションは各ラベルが何を意味するかを示しています。

211 

212<h3 id="compute-the-policy-with-a-helper-program">

213 ヘルパープログラムでポリシーを計算する

214</h3>

215 

216[`policyHelper`](/docs/ja/settings-reference#policyhelper) は、MDM ポリシーまたはマネージド設定ファイルが名前を付ける実行可能ファイルであり、Claude Code はスタートアップ時にそれを実行してマネージド設定を計算します。選択されたソースが 1 つを構成し、ヘルパーが `managedSettings` オブジェクトを出力する場合、その出力は Claude Code が読み取るものを変更します。

217 

218* **出力された `managedSettings` オブジェクトはセッションの唯一のマネージド設定です**。[それ以外の場合はすべての管理ソースから読み取るキー](#keys-read-from-every-admin-source) を含みます。ただし、[`forceRemoteSettingsRefresh` は独自のスタートアップルールを持っています](/docs/ja/settings-reference#forceremotesettingsrefresh)

219 

220ヘルパー実行が失敗する場合、および 1 つが失敗する場合に Claude Code が何をするかについては、[ヘルパー失敗](/docs/ja/settings-reference#helper-failures) を参照してください。

221 

222<span id="parent-settings-from-embedding-hosts" />

223 

224<span id="control-policy-from-an-embedding-host" />

225 

226<span id="merge-policy-from-an-embedding-host" />

227 

228<h3 id="let-an-embedding-host-add-policy">

229 埋め込みホストがポリシーを追加できるようにする

230</h3>

231 

232別のアプリケーション(Claude Desktop、IDE 拡張機能、Agent SDK アプリなど)が Claude Code を起動する場合、そのホストは SDK `managedSettings` オプションを通じて独自のマネージド設定を渡すことができます。Claude Code はこれらを親設定と呼びます。

233 

234デフォルトでは、Claude Code は管理ソースが存在する場合、親設定を無視します。サーバーマネージド設定、MDM または OS レベルのポリシー、またはマネージド設定ファイル。

235 

236親設定を管理ソースと一緒にマージするようにするには、[`parentSettingsBehavior`](/docs/ja/settings-reference#parentsettingsbehavior) を `"merge"` に設定します。最高優先度のマネージドソースで。Claude Code はそのソースからのみキーを読み取ります。

237 

238Claude Code はホストの値のうち、Claude ができることを制限するものだけを保持します。知っておくべき 1 つのギャップがあります。`allowManaged*Only` ロックも設定しない限り、ホストの権限許可ルールおよびサンドボックス許可リストはまだ適用されます。[親設定を制限する](/docs/ja/claude-apps-gateway#restrict-parent-settings) についてはロックを参照してください。

239 

240[`policyHelper`](/docs/ja/settings-reference#policyhelper) はこのキーに関係なく親マージをオフにできます。そのエントリは時期を示しています。

241 

242Claude Code はこれらのチェックを親提供の値に単独で適用します。

243 

244* 任意の管理ソースが `allowManagedPermissionRulesOnly` を設定する場合、Claude Code は [親提供の](/docs/ja/claude-apps-gateway#restrict-parent-settings) 権限許可ルールおよび `additionalDirectories` を読み取るときにドロップします。高優先度のソースがキーを設定しないままにしても。キーの効果は、Claude Code が適用するマネージド設定、または親設定からマージすることを選択したものから来ます

245* Claude Code は適用するマネージド設定の `forceLoginOrgUUID` または `allowedMcpServers` 値を強制し、親提供のものをブロックします。Claude Code が適用しない下位管理ソースの値は適用も、ブロックもしません。[`managedSourcesBehavior`](/docs/ja/settings-reference#managedsourcesbehavior) エントリは `"merge"` の下で各キーを提供するソースを示しています。v2.1.223 より前では、任意の管理ソースの値が親のものをブロックしました

246* `availableModels` 値は `allowedMcpServers` と同じルールに従います

247 

248<h4 id="keep-cowork-folder-access-when-only-managed-rules-apply">

249 マネージドルールのみが適用される場合に Cowork フォルダアクセスを保持する

250</h4>

251 

252Claude Desktop アプリの [Cowork](https://claude.com/docs/cowork/overview) は Claude Code 上でセッションを実行し、各セッションに接続されたフォルダなどの作業フォルダへのアクセスを許可します。セッションを起動するときに親設定として提供される許可ルールを通じて。マネージドポリシーが [`allowManagedPermissionRulesOnly`](/docs/ja/settings-reference#allowmanagedpermissionrulesonly) を設定する場合、Claude Code はマネージドポリシーの許可ルールのみを保持します。ホストが親設定として提供する許可ルール、`--allowedTools`、または設定ファイルをドロップするため、これらのフォルダへの書き込みは事前承認を失います。Cowork セッションで編集前に確認する場合、Cowork はプロンプトを表示できず、Claude は各書き込みを、パスが保護された場所に解決されるか、接続されたフォルダの外のパスであるため、ブロックされたと報告します。

253 

254書き込みを復元するには、Claude Code が [選択する](#precedence-within-the-managed-tier) マネージドソースにそれらのフォルダの許可ルールを追加します。MDM 管理フリートでは、それは別のマネージド設定ファイルではなく MDM ポリシーです。この例はファイル形式を使用し、MDM ポリシーは同じキーを取ります。`allowManagedPermissionRulesOnly` を設定したままにし、各ユーザーのホームディレクトリの `CoworkProjects` フォルダの下の編集を許可します。パスをユーザーが接続するフォルダに置き換えます。

255 

256```json managed-settings.json theme={null}

257{

258 "allowManagedPermissionRulesOnly": true,

259 "permissions": {

260 "allow": [

261 "Edit(~/CoworkProjects/**)"

262 ]

263 }

264}

265```

266 

267ポリシーをデプロイした後、Claude は新しい Cowork セッションでそのフォルダの下にファイルを保存できます。[Read および Edit ルール](/docs/ja/permissions#read-and-edit) は `//` 形式を含むパス構文をカバーしています。絶対パスの場合。

268 

269<h3 id="what-a-developer-can-change">

270 開発者が変更できるもの

271</h3>

272 

273開発者自身の設定ファイル、`--settings` 値、およびプロジェクトファイルはマネージド値をオーバーライドしません。[例外](/docs/ja/settings#exceptions-to-managed-settings-precedence) は下位レベルからのより厳密な値のみをカウントさせます。4 つのことはそのルールの外に座ります。

274 

275* **セッションのモデル**: マネージド `model` はロックではなくデフォルトです。`--model` および `ANTHROPIC_MODEL` はそのセッションのモデルを選択します。[`availableModels`](/docs/ja/settings-reference#availablemodels) をデプロイして選択を制限します。

276* **ローカル管理者権限**: マシンの管理者である開発者はマネージドソース自体を編集できます。これが MDM ツールがスケジュールでプロファイルまたはファイルを再デプロイでき、HKLM レジストリおよび macOS マネージド設定ドメインが存在する理由です。

277* **サーバーマネージドキャッシュ**: サーバーマネージド設定は Anthropic のサーバーから来ます。ローカルキャッシュへの編集は [次の成功したフェッチまでのみ続きます](/docs/ja/server-managed-settings#security-considerations)。

278* **その他のツール**: マネージド設定は Claude Code のみをバインドします。別のツールから API を呼び出す開発者はそれらの下にはいません。

279 

280<span id="verify-enforcement" />

281 

282<span id="verify-that-a-policy-is-in-force" />

283 

284<h2 id="check-that-a-policy-is-in-force">

285 ポリシーが有効であることを確認する

286</h2>

287 

288開発者がポリシーが適用されていないと報告している場合、またはロールアウトがフリートへのプッシュ前に完了したことを確認したい場合があります。そのマシン上の 2 つのコマンドがこれに答えます。`/status` は Claude Code が選択した管理対象ソースを表示し、`claude doctor` はドロップしたものをリストします。

289 

290<h3 id="read-the-source-in-/status">

291 /status でソースを読む

292</h3>

293 

294開発者のマシンで Claude Code 内で `/status` を実行し、`Setting sources` 行を読みます。管理対象ソースが有効な場合、その行は `Enterprise managed settings` をリストし、括弧内に Claude Code が選択したソースを表示します。

295 

296* `(remote)`:claude.ai またはゲートウェイからのサーバー管理設定

297* `(plist)` または `(HKLM)`:MDM または OS ポリシー

298* `(file)`、`(drop-ins)`、または `(file + drop-ins)`:`managed-settings.json`、ドロップイン ディレクトリ、またはその両方

299* `(remote + file, merged)` または別のリスト(`, merged` で終わる):組織が[すべての管理対象ソースを構成](#compose-every-managed-source)し、Claude Code がリストされたソースをポリシーにマージしました。下位のソースは、リストに表示されなくても `env` 変数を提供できます。Claude Code v2.1.242 以降が必要です

300* `(HKCU)`:ユーザー書き込み可能なレジストリ フォールバック

301* `(parent process)`:[埋め込みホスト](#let-an-embedding-host-add-policy)が制限的な設定を提供しました

302* `(helper)`:選択した MDM またはファイル ソースによって構成された [`policyHelper`](/docs/ja/settings-reference#policyhelper)

303 

304Claude Code がマシン上で管理対象ソースを見つけたが選択しなかった場合、2 番目の行 `Skipped sources` が各ソースを名前で示します。これを読んで、ポリシーがマシンに到達しなかった場合と、到達したが高優先度のソースがオーバーライドした場合を区別します。Claude Code v2.1.242 以降が必要です。

305 

306ポリシーが適用されていない場合、`Setting sources` 行は 2 つの問題のどちらがあるかを示します。

307 

308* **行が見つかりません**:Claude Code はポリシー キーを配信する管理対象ソースを見つけませんでした。

309 

310 管理対象設定ファイルをデプロイした場合、OS のパスに配置されていることを確認し、制御キーのみではなく[ポリシー キー](#how-claude-code-combines-managed-sources)が含まれていることを確認します。有効な JSON ではないファイルはこの状態を生成しません。Claude Code は代わりに[起動を拒否](#find-entries-claude-code-dropped)します。

311 

312 代わりにサーバー管理設定を通じてデプロイした場合は、`claude doctor` を実行します。これは[フェッチ結果](/docs/ja/server-managed-settings#verify-settings-delivery)を報告します。

313* **行が展開したソース以外のソースを名前で示す**:高優先度のソースが存在し、Claude Code があなたのソースを無視しました。`Skipped sources` がそれをリストします。[Claude Code が管理対象ソースを組み合わせる方法](#how-claude-code-combines-managed-sources)は順序を示します。

314 

315<span id="invalid-entries-in-managed-settings" />

316 

317<h3 id="find-entries-claude-code-dropped">

318 Claude Code がドロップしたエントリを見つける

319</h3>

320 

321管理対象設定ファイル、MDM プロファイル、レジストリ値、またはサーバー管理ペイロードがスキーマ検証に失敗した場合、Claude Code は最初に修復できる個別エントリ(無効なパーミッション ルールなど)をスキップし、各エントリに対して警告を表示してから、値がまだ失敗する最上位キーをドロップし、残りのすべての有効なキーの適用を続けます。

322 

323Claude Code は [`policyHelper`](/docs/ja/settings-reference#policyhelper) が出力する `managedSettings` に対してより厳密です。同じエントリ修復を行いますが、生き残るスキーマ違反は全体のヘルパー実行を失敗させ、起動時に Claude Code は起動を拒否します。これは非ゼロで終了するヘルパーと同じです。

324 

325管理対象設定ファイル、ドロップイン ファイル、MDM plist、または HKLM レジストリ値が存在するが JSON オブジェクトとして解析できない場合、Claude Code は起動を拒否し、別の管理者ソースが有効なポリシーを配信する場合でも[ソースを名前で示すエラー](/docs/ja/errors#managed-settings-document-could-not-be-parsed)を出力します。各ソースは次の場合にこのように失敗します。

326 

327* **管理対象設定ファイルまたはドロップイン ファイル**:ファイルが有効な JSON ではない、またはその最上位がオブジェクトではない

328* **MDM plist**:macOS の `plutil` が plist が不正形式であると報告する、またはその変換されたコンテンツが JSON オブジェクトではない

329* **HKLM レジストリ値**:`Settings` 値が文字列ではない、空である、または JSON オブジェクトを保持していない

330 

3313 つのソース状態はこの拒否を引き起こしません。

332 

333* 不在のファイル、プロファイル、またはレジストリ値は失敗ではありません。Claude Code はそのソースなしで実行されます。

334* 空の管理対象設定ファイルは `{}` としてカウントされます。

335* ユーザー書き込み可能な HKCU レジストリ キーの不正形式の値は起動をブロックしません。Claude Code は代わりに `/status` と `claude doctor` で通知として報告します。

336 

337管理対象設定ファイル、ドロップイン ファイル、または `managed-settings.d/` ディレクトリを読み取ることができず、管理者ソースがポリシーを提供しない場合、claude.ai または Claude Console 認証情報でサインインしたセッションは管理者に連絡するメッセージで起動時に終了します。

338 

339ドロップされたエントリを見つけるには、3 つの場所のいずれかを確認します。

340 

341* インタラクティブ セッションは起動時に無効なエントリをリストするダイアログを表示します。

342* `-p` を使用した非インタラクティブ実行は stderr に概要を出力します。

343* [`claude doctor`](/docs/ja/debug-your-config) は各無効なエントリをそのソースとフィールドでリストします。

344 

345<h4 id="keys-that-fail-closed">

346 閉じた状態で失敗するキー

347</h4>

348 

349無効な場合にドロップされない強制キーがいくつかあります。Claude Code は値が修正されるまでより厳密なフォールバックを適用します。テーブルは各キーに対して適用されるものを示します。

350 

351| フィールド | 存在するが無効な場合の動作 |

352| :---------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

353| `allowedMcpServers` | ユーザーが追加する MCP サーバーが許可されないように、値が修正されるまで空のアローリストとして適用されます。組織が [`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers) を通じて配信するサーバーは引き続きロードされ、`managed-mcp.json` サーバーは[サーバーの評価方法](/docs/ja/managed-mcp#how-a-server-is-evaluated)に従ってロードされます。個別の無効なエントリは削除され、有効なサブセットが適用されます。 |

354| `allowedHttpHookUrls` | Claude Code は値を修正するまで空の管理[アローリスト](/docs/ja/settings-reference#allowedhttphookurls)を適用するため、HTTP フックは別の設定ファイルがその URL をリストしている場合にのみ実行されます。無効なエントリが 1 つだけの場合、Claude Code はそのエントリを削除し、残りを適用します。 |

355| `httpHookAllowedEnvVars` | Claude Code は値を修正するまで空の管理[アローリスト](/docs/ja/settings-reference#httphookallowedenvvars)を適用するため、ヘッダー変数は別の設定ファイルがそれを名前で示している場合にのみ補間されます。無効なエントリが 1 つだけの場合、Claude Code はそのエントリを削除し、残りを適用します。 |

356| `allowedChannelPlugins` | 値を修正するまで空のアローリストとして適用されるため、`--channels` に渡されるチャネル プラグインは許可されません。無効なエントリが 1 つだけの場合、それを削除し、残りを適用します。 |

357| `allowManagedHooksOnly` | 修正されるまで `true` として扱われます。[フック制限](/docs/ja/settings-reference#allowmanagedhooksonly)が適用され、`disableCommandPluginSources` が明示的に `false` でない限り、コマンドソースのプラグインは無効になります。 |

358| `allowManagedMcpServersOnly` | `true` として扱われます。 |

359| `disableCommandPluginSources` | `true` として扱われるため、値が修正されるまでコマンドソースのプラグインは無効のままです。 |

360| `availableModels` | 修正されるまで空のアローリストとして適用されるため、デフォルト モデルのみが利用可能です。文字列以外のエントリは削除され、有効なサブセットが適用されます。 |

361| `enforceAvailableModels` | `true` として扱われます。 |

362| `forceLoginOrgUUID` | 値が修正されるまで、組織がログインすることは許可されません。 |

363| `crossSessionInbound` | 最も制限的な値である `refuse` として扱われるため、値が修正されるまで[クロスセッション メッセージ](/docs/ja/cross-session-messaging#control-inbound-messages)のインバウンドは拒否されます。開発者は[警告](/docs/ja/errors#crosssessioninbound-must-be-one-of-accept-hold-refuse)を見ます。 |

364| `deniedMcpServers` | 個別の無効なエントリは削除され、有効なサブセットが適用されます。完全に無効な値は警告とともにドロップされます。すべてのサーバーを拒否するとポリシーが名前を付けなかったサーバーがブロックされるためです。 |

365| `sandbox.credentials` | 回復可能な無効なエントリは `mode: "deny"` に低下し、警告が表示されます。回復不可能なエントリは削除されます。有効なエントリは適用されたままです。[管理対象設定の無効な認証情報エントリ](/docs/ja/settings-reference#invalid-credential-entries-in-managed-settings)を参照してください |

366 

367`allowedHttpHookUrls` と `httpHookAllowedEnvVars` は設定ファイル全体でマージされるため、管理対象リストが空の間、ユーザー、プロジェクト、またはローカル設定のエントリは引き続き適用されます。これら 2 つのキーと `allowedChannelPlugins` のフォールバックには Claude Code v2.1.267 以降が必要です。以前のバージョンは、値またはエントリが無効な場合、キー全体をドロップします。

368 

369`requiredMinimumVersion` と `requiredMaximumVersion` は設計上オープンに失敗します。無効な値は適用されるのではなくドロップされます。

370 

371この許容度は管理対象設定にのみ適用されます。ユーザー、プロジェクト、およびローカル設定ファイルは厳密なままです。JSON またはトップレベルの形状が検証に失敗するファイルは全体として拒否され、報告されます。不正形式のパーミッション ルールなどの個別エントリが失敗する場合は、警告とともにスキップされ、ファイルの残りが適用されます。

372 

373<span id="managed-only-settings" />

374 

375<h2 id="keys-only-a-managed-source-can-set">

376 マネージドソースのみが設定できるキー

377</h2>

378 

379Claude Code は次のキーをマネージドソースからのみ読み取ります。ユーザーまたはプロジェクト設定ファイルに配置しても効果がありません。

380 

381ほとんどはロックです。ロックが管理するキー(権限ルールまたは `sandbox.network.allowedDomains` など)は、任意のレベルが設定できる通常のキーであり、ロックは Claude Code にマネージド値のみを尊重するよう指示します。

382 

383テーブルは権限、プラグイン、配信コントロールをカバーしています。ここにリストされていないキーについては、[設定リファレンス](/docs/ja/settings-reference#all-settings) インデックスの Scope 列は、それがマネージドのみであるかどうかを示しています。残りのマネージドのみキーには、ゲートウェイログイン URL、バージョン、ブラウザ、モバイルシミュレーター、SSH ホスト、Desktop ローカルセッション、サンドボックスバイナリパス、モデル価格、CLAUDE.md コントロールが含まれます。

384 

385| 設定 | 説明 |

386| :-------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

387| [`allowAllClaudeAiMcps`](/docs/ja/settings-reference#allowallclaudeaimcps) | Claude Code が自身でフェッチする claude.ai コネクタをデプロイされた `managed-mcp.json` と一緒にロードします。それらを抑制する代わりに |

388| [`allowedChannelPlugins`](/docs/ja/settings-reference#allowedchannelplugins) | メッセージをプッシュできるチャネルプラグインの許可リスト。設定されている場合、デフォルト Anthropic 許可リストを置き換えます。`channelsEnabled: true` が必要です。[実行できるチャネルプラグインを制限する](/docs/ja/channels#restrict-which-channel-plugins-can-run) を参照してください |

389| [`allowManagedHooksOnly`](/docs/ja/settings-reference#allowmanagedhooksonly) | `true` の場合、実行するフックを制限します。[`allowManagedHooksOnly` の下で実行するもの](/docs/ja/settings-reference#what-runs-under-allowmanagedhooksonly) の完全な効果リストを参照してください |

390| [`allowManagedMcpServersOnly`](/docs/ja/settings-reference#allowmanagedmcpserversonly) | `true` の場合、マネージド設定からの `allowedMcpServers` のみが尊重されます。`deniedMcpServers` はすべてのソースからマージされます。[マネージド MCP 構成](/docs/ja/managed-mcp) を参照してください |

391| [`allowManagedPermissionRulesOnly`](/docs/ja/settings-reference#allowmanagedpermissionrulesonly) | マネージド設定を権限ルールの唯一の設定ソースにします。エントリは無視するすべてのソースをリストします |

392| [`blockedMarketplaces`](/docs/ja/settings-reference#blockedmarketplaces) | マーケットプレイスソースのブロックリスト。ブロックされたソースはダウンロード前にチェックされるため、ファイルシステムに触れません。[マネージドマーケットプレイス制限](/docs/ja/plugin-marketplaces#managed-marketplace-restrictions) を参照してください |

393| [`channelsEnabled`](/docs/ja/settings-reference#channelsenabled) | 組織の [チャネル](/docs/ja/channels) を許可します。各プランのデフォルトについては [エンタープライズコントロール](/docs/ja/channels#enterprise-controls) を参照してください |

394| [`disableCommandPluginSources`](/docs/ja/settings-reference#disablecommandpluginsources) | `true` の場合、[`command` プラグインソース](/docs/ja/plugin-marketplaces#command-sources) を完全にブロックするため、マーケットプレイス宣言コマンドは実行されません。マーケットプレイス [`headersHelper` コマンド](/docs/ja/plugin-marketplaces#authenticate-archive-downloads) もブロックします。ただし、マネージド設定自体が宣言するマーケットプレイスは除きます。設定されていない場合、`allowManagedHooksOnly` に従います。Claude Code v2.1.229 以降が必要で、`headersHelper` ブロックは v2.1.238 以降が必要です |

395| [`disableSideloadFlags`](/docs/ja/settings-reference#disablesideloadflags) | スタートアップで `--plugin-dir`、`--plugin-url`、`--agents`、および `--mcp-config` フラグを拒否します。クラウドセッションでは、Claude Code はサーバーが `--mcp-config` を通じて配信した MCP サーバーをドロップします。ただし、プロセス内 `type: "sdk"` エントリは除き、セッションを開始します。Claude Code v2.1.193 以降が必要です |

396| [`forceRemoteSettingsRefresh`](/docs/ja/settings-reference#forceremotesettingsrefresh) | `true` の場合、リモートマネージド設定が新しくフェッチされるまで CLI スタートアップをブロックし、フェッチが失敗する場合は終了します。[失敗閉じ強制](/docs/ja/server-managed-settings#enforce-fail-closed-startup) を参照してください |

397| [`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers) | すべてのユーザーに独自と一緒に提供されるリモート MCP サーバー。何かをロックするのではなく、サーバーを提供します。[マネージド設定を通じてサーバーを提供する](/docs/ja/managed-mcp#provide-servers-through-managed-settings) を参照してください。Claude Code v2.1.259 以降が必要です |

398| [`managedSourcesBehavior`](/docs/ja/settings-reference#managedsourcesbehavior) | Claude Code が最高優先度のマネージドソースのみを適用するか、[それらすべてを構成する](#compose-every-managed-source) か |

399| [`parentSettingsBehavior`](/docs/ja/settings-reference#parentsettingsbehavior) | ホスト提供の親設定がマネージドポリシーの下でマージするかどうか |

400| [`pluginSuggestionMarketplaces`](/docs/ja/settings-reference#pluginsuggestionmarketplaces) | Claude Code がユーザーに提案できるプラグインのマーケットプレイス |

401| [`pluginTrustMessage`](/docs/ja/settings-reference#plugintrustmessage) | インストール前に表示されるプラグイン信頼警告に追加されるカスタムメッセージ |

402| [`policyHelper`](/docs/ja/settings-reference#policyhelper) | スタートアップでマネージド設定を計算する実行可能ファイル。[ポリシーヘルパーでマネージド設定を計算する](/docs/ja/settings-reference#policyhelper) を参照してください |

403| [`sandbox.filesystem.allowManagedReadPathsOnly`](/docs/ja/settings-reference#sandbox-filesystem-allowmanagedreadpathsonly) | `true` の場合、マネージド設定からの `filesystem.allowRead` パスのみが尊重されます。`denyRead` はすべてのソースからマージされます |

404| [`sandbox.network.allowManagedDomainsOnly`](/docs/ja/settings-reference#sandbox-network-allowmanageddomainsonly) | マネージド `allowedDomains` および `WebFetch(domain:...)` 許可ルールのみを尊重します。プロンプトなしで他のドメインをブロックします |

405| [`strictKnownMarketplaces`](/docs/ja/settings-reference#strictknownmarketplaces) | ユーザーが追加してプラグインをインストールできるプラグインマーケットプレイスソースを制御します。[マネージドマーケットプレイス制限](/docs/ja/plugin-marketplaces#managed-marketplace-restrictions) を参照してください |

406| [`strictPluginOnlyCustomization`](/docs/ja/settings-reference#strictpluginonlycustomization) | ユーザーおよびプロジェクトソースからのスキル、エージェント、フック、MCP サーバーをブロックします。`true` はすべて 4 つをロックし、配列はどれかに名前を付けます |

407| [`wslInheritsWindowsSettings`](/docs/ja/settings-reference#wslinheritswindowssettings) | `HKLM` レジストリまたは `C:\Program Files\ClaudeCode` の下のファイルに設定されている場合、WSL が Windows ポリシーチェーンを読み取り、そのディレクトリの下の `/etc/claude-code` を読み取るのは、マネージド設定ファイルまたはドロップインが [ポリシーキー](#how-claude-code-combines-managed-sources) を配信しない場合のみです。エントリは順序を示しています |

408 

409<Note>

410 Team および Enterprise プランでは、Owner は [Claude Code 管理設定](https://claude.ai/admin-settings/claude-code) で [リモートコントロール](/docs/ja/remote-control) および [ウェブセッション](/docs/ja/claude-code-on-the-web) を組織全体で有効または無効にします。リモートコントロールは [`disableRemoteControl`](/docs/ja/settings-reference#disableremotecontrol) 設定でデバイスごとに無効にすることもできます。ウェブセッションにはデバイスごとのマネージド設定キーがありません。

411 

412 これらの組織設定が特定のマシンに到達したかどうかを確認するには、そこで `claude doctor` を実行し、`Organization policy` 行を読みます。これは Claude Code がポリシーをロードした場所、またはロードしなかった理由を示しています。Claude Code v2.1.261 以降が必要です。実行中のセッションでは、ポリシーがロードされなかった場合、`/status` は同じ行を表示します。

413</Note>

414 

415<h2 id="turn-telemetry-off-for-your-organization">

416 組織のテレメトリをオフにする

417</h2>

418 

419Claude Code は、Anthropic API を直接、LLM ゲートウェイを通じて、またはカスタム `ANTHROPIC_BASE_URL` を通じて使用するセッションで、デフォルトで Anthropic 運用 [テレメトリ](/docs/ja/data-usage#telemetry-services) を送信します。[API プロバイダーごとのデフォルト動作](/docs/ja/data-usage#default-behaviors-by-api-provider) はどのプロバイダーがそれを送信するかを示しています。すべての開発者が各人のシェルに依存することなく、マネージド設定の `env` ブロックを通じて `DISABLE_TELEMETRY` を配信することでオフにします。この例は、ポリシーが到達するすべてのユーザーに対して `DISABLE_TELEMETRY` を設定します。

420 

421```json theme={null}

422{

423 "env": {

424 "DISABLE_TELEMETRY": "1"

425 }

426}

427```

428 

429Claude Code は `1` の値を [承認ダイアログ](/docs/ja/server-managed-settings#environment-variables-and-the-approval-dialog) を表示せずに適用します。

430 

431テレメトリをオフにする場合、Claude Code はポリシーが到達する開発者の組織の [分析ダッシュボード](/docs/ja/analytics) を供給する使用データの送信を停止します。変数はフィーチャーフラグフェッチもオフにします。これにより、リモートコントロール、デフォルトオートモード、および他の [フィーチャーフラグフェッチが必要な機能](/docs/ja/env-vars#features-that-need-feature-flag-fetching) がこれらの開発者に利用できなくなります。

432 

433[ポリシーが適用される場所と時期](#where-and-when-a-policy-applies) は各サーフェスに到達する配信メカニズムを示し、[プラットフォーム可用性](/docs/ja/server-managed-settings#platform-availability) はどのセッションがサーバーマネージド設定フェッチをスキップするかを示しています。

434 

435組織がカスタマー管理暗号化キーを使用し、Claude Code をゲートウェイを通じてルーティングする場合、[プロキシとゲートウェイを構成する](/docs/ja/third-party-integrations#configure-proxies-and-gateways) はこれらのセッションがこの変数を必要とする理由を示しています。

436 

437<h2 id="see-also">

438 関連項目

439</h2>

440 

441* [組織向けに Claude Code をセットアップする](/docs/ja/admin-setup): 強制する内容と方法を決定します

442* [サーバーマネージド設定](/docs/ja/server-managed-settings): claude.ai コンソールまたはゲートウェイからポリシーを配信します

443* [マネージド MCP 構成](/docs/ja/managed-mcp): 開発者が使用できる MCP サーバーを制御します

444* [すべての設定](/docs/ja/settings-reference): すべてのキー。マネージドソースがそれを設定できるかどうか

445* [設定ファイルの例](/docs/ja/settings-example#an-organizations-managed-settings): マネージドキーの形状を示す完全な `managed-settings.json`

mcp.md +629 −311

Details

29 MCP サーバーを検索してビルドする29 MCP サーバーを検索してビルドする

30</h2>30</h2>

31 31 

32[Anthropic Directory](https://claude.ai/directory) でレビュー済みのコネクタを参照してください。Directory コネクタは Claude Code と同じ MCP インフラストラクチャを使用しているため、`claude mcp add` を使用して、そこにリストされているリモートサーバーを追加できます。32[Anthropic Directory](https://claude.ai/directory) でレビュー済みのコネクターを参照してください。Directory コネクターは Claude Code と同じ MCP インフラストラクチャを使用しているため、`claude mcp add` を使用して、そこにリストされているリモートサーバーを追加できます。

33 33 

34<Warning>34<Warning>

35 接続する前に、各サーバーを信頼していることを確認してください。外部コンテンツを取得するサーバーは、[プロンプトインジェクションリスク](/docs/ja/security#protect-against-prompt-injection)にさらされる可能性があります。35 接続する前に、各サーバーを信頼できることを確認してください。外部コンテンツを取得するサーバーは、[プロンプトインジェクションリスク](/docs/ja/security#protect-against-prompt-injection) にあなたを晒す可能性があります。

36</Warning>36</Warning>

37 37 

38独自のサーバーをビルドするには、プロトコルの基礎については [MCP サーバーガイド](https://modelcontextprotocol.io/docs/develop/build-server) を、認証、テスト、Directory への提出については [Claude コネクタビルディングドキュメント](https://claude.com/docs/connectors/building) を参照してください。38独自のサーバーをビルドするには、プロトコルの基礎については [MCP サーバーガイド](https://modelcontextprotocol.io/docs/develop/build-server) を、認証、テスト、Directory への提出については [Claude コネクター構築ドキュメント](https://claude.com/docs/connectors/building) を参照してください。

39 39 

40公式の [`mcp-server-dev` プラグイン](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/mcp-server-dev) を使用して、Claude にサーバーをスキャフォルドしてもらうこともできます。40公式の [`mcp-server-dev` プラグイン](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/mcp-server-dev) を使用して、Claude にサーバーをスキャフォールドしてもらうこともできます。

41 41 

42<Steps>42<Steps>

43 <Step title="プラグインをインストールする">43 <Step title="プラグインをインストールする">


47 /plugin install mcp-server-dev@claude-plugins-official47 /plugin install mcp-server-dev@claude-plugins-official

48 ```48 ```

49 49 

50 Claude Code がマーケットプレイスが見つからないと報告する場合は、まず `/plugin marketplace add anthropics/claude-plugins-official` を実行してから、インストールを再試行してください。インストール後、`/reload-plugins` を実行して、現在のセッションでアクティブにします。50 インストールが失敗した場合は、Claude Code が報告するメッセージに一致させてください:

51 

52 * `Marketplace "claude-plugins-official" not found`:`/plugin marketplace add anthropics/claude-plugins-official` でマーケットプレイスを追加してから、インストールを再試行してください。

53 * [プラグインがマーケットプレイスで見つかりません](/docs/ja/discover-plugins#install-plugins):プラグイン名を確認してください。

54 

55 インストール概要が `Run /reload-plugins to activate.` を報告する場合、Claude Code はその後、そのリロードを実行します。リロードが次のメッセージが会話を再度読み込むことになると警告する場合は、`/reload-plugins --force` を実行してください。

51 </Step>56 </Step>

52 57 

53 <Step title="ビルドスキルを実行する">58 <Step title="ビルドスキルを実行する">


55 /mcp-server-dev:build-mcp-server60 /mcp-server-dev:build-mcp-server

56 ```61 ```

57 62 

58 Claude があなたのユースケースについて質問し、リモート HTTP またはローカル stdio サーバーをスキャフォルドします。63 Claude があなたのユースケースについて質問し、リモート HTTP またはローカル stdio サーバーをスキャフォールドします。

59 </Step>64 </Step>

60</Steps>65</Steps>

61 66 


63 MCP サーバーのインストール68 MCP サーバーのインストール

64</h2>69</h2>

65 70 

66MCP サーバーは、ニーズに応じて複数の方法で設定できます:71MCP サーバーは、ニーズに応じてさまざまな方法で設定できます。

67 72 

68<h3 id="option-1-add-a-remote-http-server">73<h3 id="option-1-add-a-remote-http-server">

69 オプション 1:リモート HTTP サーバーを追加する74 オプション 1: リモート HTTP サーバーを追加する

70</h3>75</h3>

71 76 

72HTTP サーバーはリモート MCP サーバーに接続するための推奨オプションです。これはクラウドベースのサービスに最も広くサポートされているトランスポートです。77HTTP サーバーは、リモート MCP サーバーに接続するための推奨オプションです。これはクラウドベースのサービスに対して最も広くサポートされているトランスポートです。

73 78 

74```bash theme={null}79```bash theme={null}

75# 基本的な構文80# 基本的な構文

76claude mcp add --transport http <name> <url>81claude mcp add --transport http <name> <url>

77 82 

78# 実際の例:Notion に接続する83# 実際の例: Notion に接続

79claude mcp add --transport http notion https://mcp.notion.com/mcp84claude mcp add --transport http notion https://mcp.notion.com/mcp

80 85 

81# Bearer トークンを使用した例86# Bearer トークン付きの例

82claude mcp add --transport http secure-api https://api.example.com/mcp \87claude mcp add --transport http secure-api https://api.example.com/mcp \

83 --header "Authorization: Bearer your-token"88 --header "Authorization: Bearer your-token"

84```89```

85 90 

86MCP サーバーを `.mcp.json`、`~/.claude.json`、または `claude mcp add-json` で JSON を使用して設定する場合、`type` フィールドは `http` のエイリアスとして `streamable-http` を受け入れます。MCP 仕様ではこのトランスポートに `streamable-http` という名前を使用しているため、サーバードキュメントからコピーされた設定は変更なしで機能します。91`.mcp.json`、`~/.claude.json`、または `claude mcp add-json` で JSON を使用して MCP サーバーを設定する場合、`type` フィールドは `http` のエイリアスとして `streamable-http` を受け入れます。MCP 仕様ではこのトランスポートに `streamable-http` という名前を使用しているため、サーバードキュメントからコピーされた設定は変更なしで機能します。

92 

93`url` を持つが `type` を持たない JSON エントリは設定エラーです。Claude Code は `type` を持たないエントリを stdio サーバーとして読み込むためです。Claude Code はそのサーバーをスキップし、`MCP server "<name>" has a "url" but no "type"; add "type": "http" (or "sse" / "ws") to this entry` と報告します。v2.1.202 より前では、Claude Code はこの設定ミスを `command: expected string, received undefined` と報告していました。

87 94 

88`url` を持つが `type` を持たない JSON エントリは設定エラーです。Claude Code は `type` を持たないエントリを stdio サーバーとして読み取るためです。Claude Code はそのサーバーをスキップし、`MCP server "<name>" has a "url" but no "type"; add "type": "http" (or "sse" / "ws") to this entry` と報告します。v2.1.202 より前は、Claude Code はこの設定ミスを `command: expected string, received undefined` と報告していました。95`--output-format stream-json` 実行では、Claude Code はスキップされた `--mcp-config` エントリを `system/init` イベントの [`mcp_server_errors` フィールド](/docs/ja/headless#stream-responses) でも報告するため、スクリプトはサーバーが読み込まれなかったことを検出できます。これには Claude Code v2.1.219 以降が必要です。

89 96 

90<h3 id="option-2-add-a-remote-sse-server">97<h3 id="option-2-add-a-remote-sse-server">

91 オプション 2:リモート SSE サーバーを追加する98 オプション 2: リモート SSE サーバーを追加する

92</h3>99</h3>

93 100 

94<Warning>101<Warning>

95 SSE(Server-Sent Events)トランスポートは非推奨です。利用可能な場合は HTTP サーバーを使用してください。102 SSE(Server-Sent Events)トランスポートは非推奨です。利用可能な場合は HTTP サーバーを使用してください。

96</Warning>103</Warning>

97 104 

105一部のサービスは SSE エンドポイントのみを公開しています。これらを [HTTP サーバー](#option-1-add-a-remote-http-server) と同じ `claude mcp add --transport http <name> <url>` コマンドで追加してください。Claude Code は最初に HTTP トランスポートを試し、サーバーがそれを受け入れない場合は SSE に切り替わります。自動切り替えには Claude Code v2.1.265 以降が必要です。

106 

107以前のバージョンで、または SSE 経由で直接接続するには、代わりに `--transport sse` を渡してください。

108 

98```bash theme={null}109```bash theme={null}

99# 基本的な構文110# 基本的な構文

100claude mcp add --transport sse <name> <url>111claude mcp add --transport sse <name> <url>

101 112 

102# 実際の例:Asana に接続する113# 実際の例: Asana に接続

103claude mcp add --transport sse asana https://mcp.asana.com/sse114claude mcp add --transport sse asana https://mcp.asana.com/sse

104 115 

105# 認証ヘッダーを使用した例116# 認証ヘッダー付きの例

106claude mcp add --transport sse private-api https://api.company.com/sse \117claude mcp add --transport sse private-api https://api.company.com/sse \

107 --header "X-API-Key: your-key-here"118 --header "X-API-Key: your-key-here"

108```119```

109 120 

110<h3 id="option-3-add-a-local-stdio-server">121<h3 id="option-3-add-a-local-stdio-server">

111 オプション 3:ローカル stdio サーバーを追加する122 オプション 3: ローカル stdio サーバーを追加する

112</h3>123</h3>

113 124 

114Stdio サーバーはマシン上でローカルプロセスとして実行されます。システムへの直接アクセスやカスタムスクリプトが必要なツールに最適です。125Stdio サーバーはマシン上のローカルプロセスとして実行されます。システムへの直接アクセスやカスタムスクリプトが必要なツールに最適です。

115 126 

116Claude Code は、生成されたサーバーの環境に `CLAUDE_PROJECT_DIR` を設定して、プロジェクトルートを指定するため、サーバーは作業ディレクトリに依存することなくプロジェクト相対パスを解決できます。これは hooks が `CLAUDE_PROJECT_DIR` 変数で受け取るのと同じディレクトリです。サーバープロセス内から読み取ります。例えば、Node では `process.env.CLAUDE_PROJECT_DIR`、Python では `os.environ["CLAUDE_PROJECT_DIR"]` です。127Claude Code は、生成されたサーバーの環境に `CLAUDE_PROJECT_DIR` を設定して、プロジェクトルートに設定します。これにより、サーバーは作業ディレクトリに依存することなくプロジェクト相対パスを解決できます。これは hooks が `CLAUDE_PROJECT_DIR` 変数で受け取るのと同じディレクトリです。サーバープロセス内からこれを読み取ります。例えば、Node では `process.env.CLAUDE_PROJECT_DIR`、Python では `os.environ["CLAUDE_PROJECT_DIR"]` です。

117 128 

118`CLAUDE_PROJECT_DIR` は安定したプロジェクトルートであり、セッション中に作業ディレクトリを追加または削除しても変わりません。ファイルシステムアクセスを許可されたディレクトリのセットに制限するサーバーは、代わりに MCP `roots/list` リクエストを実装する必要があります。Claude Code は `roots/list` に、セッションの起動ディレクトリと、`--add-dir`、`/add-dir`、または `additionalDirectories` 設定で付与した [追加の作業ディレクトリ](/docs/ja/permissions#working-directories) をすべて返します。Claude Code は、そのセットが変わるときに `notifications/roots/list_changed` を送信します。v2.1.203 より前は、`roots/list` は起動ディレクトリのみを返し、Claude Code は `notifications/roots/list_changed` を送信していませんでした。129`CLAUDE_PROJECT_DIR` は安定したプロジェクトルートであり、セッション中に作業ディレクトリを追加または削除しても変わりません。ファイルシステムアクセスを許可されたディレクトリのセットに制限するサーバーは、代わりに MCP `roots/list` リクエストを実装する必要があります。Claude Code は `roots/list` にセッションの起動ディレクトリと、`--add-dir`、`/add-dir`、または `additionalDirectories` 設定で付与した [追加作業ディレクトリ](/docs/ja/permissions#working-directories) をすべて返します。Claude Code はそのセットが変わるときに `notifications/roots/list_changed` を送信します。v2.1.203 より前では、`roots/list` は起動ディレクトリのみを返し、Claude Code は `notifications/roots/list_changed` を送信していませんでした。

119 130 

120この変数はサーバーの環境に設定され、Claude Code 自体の環境には設定されないため、プロジェクトスコープまたはユーザースコープの `.mcp.json` `command` または `args` で `${VAR}` 展開を使用して参照するには、`${CLAUDE_PROJECT_DIR:-.}` などのデフォルトが必要です。プラグイン提供の MCP 設定は `${CLAUDE_PROJECT_DIR}` を直接置換し、デフォルトは必要ありません。131この変数はサーバーの環境に設定され、Claude Code 自体の環境には設定されないため、プロジェクトスコープの `.mcp.json` エントリまたはローカルまたはユーザースコープのサーバーエントリの `command` または `args` で `${VAR}` 展開を使用して参照するには、`${CLAUDE_PROJECT_DIR:-.}` などのデフォルトが必要です。プラグイン提供の MCP 設定は `${CLAUDE_PROJECT_DIR}` を直接置換し、デフォルトは必要ありません。

121 132 

122```bash theme={null}133```bash theme={null}

123# 基本的な構文134# 基本的な構文

124claude mcp add [options] <name> -- <command> [args...]135claude mcp add [options] <name> -- <command> [args...]

125 136 

126# 実際の例:Airtable サーバーを追加する137# 実際の例: Airtable サーバーを追加

127claude mcp add --env AIRTABLE_API_KEY=YOUR_KEY --transport stdio airtable \138claude mcp add --env AIRTABLE_API_KEY=YOUR_KEY --transport stdio airtable \

128 -- npx -y airtable-mcp-server139 -- npx -y airtable-mcp-server

129```140```

130 141 

131<Note>142<Note>

132 **重要:サーバー引数を `--` で分離する**143 **重要: サーバー引数を `--` で区切る**

133 144 

134 Stdio サーバーの場合、`--`(ダブルダッシュ)は Claude 自体のオプション(`--transport`、`--env`、`--scope` など)をサーバーを実行するコマンドと引数から分離します。`--` の後のすべてはサーバーに変更されずに渡されます。145 Stdio サーバーの場合、`--`(ダブルダッシュ)は Claude 自体のオプション(`--transport`、`--env`、`--scope` など)をサーバーを実行するコマンドと引数から分離します。`--` の後のすべてはサーバーに変更されずに渡されます。

135 146 

136 例:147 例えば:

137 148 

138 * `claude mcp add --transport stdio myserver -- npx server` → `npx server` を実行します149 * `claude mcp add --transport stdio myserver -- npx server` → `npx server` を実行します

139 * `claude mcp add --env KEY=value --transport stdio myserver -- python server.py --port 8080` → 環境に `KEY=value` を設定して `python server.py --port 8080` を実行します150 * `claude mcp add --env KEY=value --transport stdio myserver -- python server.py --port 8080` → 環境に `KEY=value` を設定して `python server.py --port 8080` を実行します

140 151 

141 `--` がない場合、Claude Code はサーバーのフラグ(上記の `--port` など)を独自のオプションとして解析しようとします。152 `--` がない場合、Claude Code はサーバーのフラグ(上記の `--port` など)を独自のオプションとして解析しようとします。

142 153 

143 `--env` は複数の `KEY=value` ペアを受け入れます。サーバー名が `--env` の直後に来る場合、CLI は名前を別のペアとして読み取り、それを拒否するため、上記の例のように `--env` とサーバー名の間に少なくとも 1 つの別のオプションを配置してください。154 `--env` は複数の `KEY=value` ペアを受け入れます。サーバー名が `--env` の直後に来る場合、CLI は名前を別のペアとして読み込み、拒否するため、上記の例のように `--env` とサーバー名の間に少なくとも 1 つの別のオプションを配置してください。

144</Note>155</Note>

145 156 

146<h3 id="option-4-add-a-remote-websocket-server">157<h3 id="option-4-add-a-remote-websocket-server">

147 オプション 4:リモート WebSocket サーバーを追加する158 オプション 4: リモート WebSocket サーバーを追加する

148</h3>159</h3>

149 160 

150WebSocket サーバーは永続的な双方向接続を保持し、Claude に予期しないイベントをプッシュするリモート MCP サーバーに適しています。サーバーがリクエストにのみ応答する場合は HTTP を使用してください。HTTP は OAuth と `claude mcp add --transport` フラグをサポートしていますが、WebSocket はどちらもサポートしていません。161WebSocket サーバーは永続的な双方向接続を保持し、Claude に予期しないイベントをプッシュするリモート MCP サーバーに適しています。サーバーがリクエストにのみ応答する場合は HTTP を使用してください。HTTP は OAuth と `claude mcp add --transport` フラグをサポートしますが、WebSocket はどちらもサポートしていないためです。

151 162 

152WebSocket サーバーを `.mcp.json` または `claude mcp add-json` で設定します:163WebSocket サーバーを `.mcp.json` または `claude mcp add-json` で設定します。

153 164 

154```bash theme={null}165```bash theme={null}

155claude mcp add-json events-server \166claude mcp add-json events-server \

156 '{"type":"ws","url":"wss://mcp.example.com/socket","headers":{"Authorization":"Bearer YOUR_TOKEN"}}'167 '{"type":"ws","url":"wss://mcp.example.com/socket","headers":{"Authorization":"Bearer YOUR_TOKEN"}}'

157```168```

158 169 

159`type: "ws"` エントリは `http` と同じ `url`、`headers`、`headersHelper`、`timeout`、`alwaysLoad` フィールドを受け入れます。認証はヘッダーのみなので、`headers` に静的トークンを渡すか、[`headersHelper`](#use-dynamic-headers-for-custom-authentication) で接続時に生成してください。`claude mcp add --transport` フラグは `ws` を受け入れません。170`type: "ws"` エントリは `http` と同じ `url`、`headers`、`headersHelper`、`timeout`、`alwaysLoad` フィールドを受け入れます。認証はヘッダーのみなので、`headers` に静的トークンを渡すか、接続時に [`headersHelper`](#use-dynamic-headers-for-custom-authentication) で生成してください。`claude mcp add --transport` フラグは `ws` を受け入れません。

171 

172<h3 id="add-a-server-from-setup-instructions-written-for-another-client">

173 別のクライアント向けに書かれたセットアップ指示からサーバーを追加する

174</h3>

175 

176MCP サーバーは Claude Code に固有ではないため、サーバーのセットアップ指示は Claude Desktop、Cursor、または別の MCP クライアント向けに書かれている可能性があり、`claude mcp add` コマンドを提供していない場合があります。それでもサーバーを追加するには、これら 3 つのいずれかについて指示を確認してください。

177 

178* **URL**(`https://mcp.example.com/mcp` など): サーバーはリモートです。

179* **起動コマンド**(`npx -y @example/mcp-server` など): サーバーはマシン上で実行されます。

180* **`mcpServers` JSON ブロック**: 別のクライアントの設定ファイル向けに書かれた設定。

181 

182各々は [MCP サーバーのインストール](#installing-mcp-servers) の 4 つのオプションが取る入力の 1 つです。以下で持っている形状を見つけて、Claude Code が受け入れるコマンドに変換してください。各コマンドは `--scope project` または `--scope user` を追加しない限り、[ローカルスコープ](#local-scope) に書き込みます。

183 

184<h4 id="from-a-url">

185 URL から

186</h4>

187 

188URL はサーバーがリモートであることを意味します。`https://` エンドポイントの場合、`--transport http` で追加するか、指示が SSE を使用するエンドポイントを示している場合は [オプション 2](#option-2-add-a-remote-sse-server) に従ってください。`wss://` エンドポイントの場合、`--transport` は `ws` を受け入れないため、代わりに [オプション 4](#option-4-add-a-remote-websocket-server) を使用してください。

189 

190```bash theme={null}

191claude mcp add --transport http example https://mcp.example.com/mcp

192```

193 

194指示が API キーまたはトークンヘッダーも提供する場合、[オプション 1](#option-1-add-a-remote-http-server) に示されているように `--header` で渡してください。

195 

196<h4 id="from-an-npx-uvx-or-binary-command">

197 `npx`、`uvx`、またはバイナリコマンドから

198</h4>

199 

200起動コマンドはサーバーがローカル stdio プロセスとして実行されることを意味します。コマンド全体を `--` の後に配置して、Claude Code が `-y` などのフラグをサーバーを起動するコマンドに渡し、独自のオプションとして読み込まないようにします。指示が要求する環境変数を `--env` で渡します。サーバー名の後、`--` の前に渡します。

201 

202```bash theme={null}

203claude mcp add example --env API_KEY=your-key -- npx -y @example/mcp-server

204```

205 

206[オプション 3](#option-3-add-a-local-stdio-server) は `--` セパレータを完全にカバーしています。

207 

208<h4 id="from-an-mcpservers-json-block">

209 `mcpServers` JSON ブロックから

210</h4>

211 

212Claude Desktop などの別の MCP クライアント向けに書かれた `mcpServers` ブロックは、Claude Code が読み込むラッパーキーとエントリ形状を使用します。`claude mcp add-json` に `mcpServers` 内のオブジェクトを渡します。ラッパーではなく。2 つのエントリは最初に修復が必要です。

213 

214* **`type` のない `url`**: エンドポイントに一致するように `"type": "http"`、`"type": "sse"`、または `"type": "ws"` を追加してください。Claude Code は `type` を持たないエントリを stdio サーバーとして読み込むため、`type` のない `url` エントリは失敗します。

215* **文字、数字、ハイフン、アンダースコア以外の文字を持つキー**: これらの文字のみを使用するサーバー名を選択してください。そうでない場合、キーはサーバー名です。

216 

217例えば、このブロック:

218 

219```json theme={null}

220{

221 "mcpServers": {

222 "example": {

223 "command": "npx",

224 "args": ["-y", "@example/mcp-server"]

225 }

226 }

227}

228```

229 

230このコマンドになります:

231 

232```bash theme={null}

233claude mcp add-json example '{"command":"npx","args":["-y","@example/mcp-server"]}'

234```

235 

236[JSON 設定から MCP サーバーを追加する](#add-mcp-servers-from-json-configuration) はシェルエスケープと `add-json` の `--scope` フラグをカバーしています。代わりにチームと共有するには、`--scope project` を追加するか、プロジェクトルートの `.mcp.json` の `mcpServers` の下にエントリを追加してコミットしてください。[プロジェクトスコープ](#project-scope) は Claude Code がそのファイルをどのように読み込み、承認するかをカバーしています。

237 

238各 `claude mcp add` と `claude mcp add-json` コマンドは `Added ...` 行を出力します。Claude Code が接続したことを確認するには、`claude mcp get <name>` を実行してください。[サーバーステータス](#server-status) はそれが表示するステータスと `.mcp.json` サーバーの承認ステップをカバーしています。

160 239 

161<h3 id="managing-your-servers">240<h3 id="managing-your-servers">

162 サーバーの管理241 サーバーの管理

163</h3>242</h3>

164 243 

165設定後、これらのコマンドで MCP サーバーを管理できます:244設定されたら、これらのコマンドで MCP サーバーを管理できます。

166 245 

167```bash theme={null}246```bash theme={null}

168# すべての設定済みサーバーをリストする247# すべての設定されたサーバーをリストする

169claude mcp list248claude mcp list

170 249 

171# 特定のサーバーの詳細を取得する250# 特定のサーバーの詳細を取得する

172claude mcp get github251claude mcp get notion

173 252 

174# サーバーを削除する253# サーバーを削除する

175claude mcp remove github254claude mcp remove notion

176 255 

177# (Claude Code 内)サーバーのステータスを確認する256# (Claude Code 内)サーバーステータスを確認する

178/mcp257/mcp

179```258```

180 259 

181`.mcp.json` からのプロジェクトスコープサーバーで承認待ちのものは、`claude mcp list` に `⏸ Pending approval` として表示されます。`claude` をインタラクティブに実行して、それらを確認して承認してください。`claude mcp get <name>` は保留中のサーバーを `⏸ Pending approval` として表示し、拒否されたサーバーを `✗ Rejected` として表示します。260リモートサーバーを削除すると、Claude Code はそのサーバー用に保存した OAuth トークンとクライアント登録も削除します。

261 

262<h4 id="server-status">

263 サーバーステータス

264</h4>

265 

266`claude mcp add` は `Added ...` 行を出力して成功した追加を確認します。これは設定が書き込まれたことを意味します。`claude mcp list` はその後、`✔ Connected`、`! Needs authentication`、`✘ Failed to connect` などの各サーバーの横に健全性ステータスを表示します。失敗ステータスは Claude Code がそのサーバーに接続できなかったことを意味し、list コマンドが失敗したことではありません。

182 267 

183v2.1.196 以降、`claude mcp list` と `claude mcp get` は、リポジトリにチェックインされていない設定ファイルからのみ `.mcp.json` 承認を読み取ります。これは、`claude` を実行してワークスペーストラストダイアログを受け入れることでワークスペースを信頼するまでです。クローンされたリポジトリは独自のサーバーを承認できません:プロジェクトの `.claude/settings.json` にコミットされた [`enableAllProjectMcpServers` または `enabledMcpjsonServers`](/docs/ja/settings#available-settings) は信頼されていないフォルダでは無視され、サーバーは接続されてヘルスチェックされる代わりに `⏸ Pending approval` のままです。268このリストのステータスは接続試行ではなく設定決定を報告するため、Claude Code はサーバーに接続せずにそれらを出力します。

184 269 

185これらのソースからの承認は、信頼されていないフォルダでも適用されます:270* ``⏸ Pending approval (run `claude` to approve)``: まだ承認していない `.mcp.json` からのプロジェクトスコープサーバー。Claude Code はそれを `claude mcp list` と `claude mcp get <name>` の両方に表示します。対話的に `claude` を実行して、それを確認して承認してください。

271* `✘ Rejected (see disabledMcpjsonServers in settings)`: [`disabledMcpjsonServers`](/docs/ja/settings-reference#disabledmcpjsonservers) エントリが拒否する `.mcp.json` サーバー。Claude Code はそれを `claude mcp get <name>` にのみ表示します。

272* `⊘ Disabled for this project (re-enable via /mcp)`: プロジェクトの [`disabledMcpServers`](#disable-a-server-without-removing-it) リストが名前を付けるサーバー。Claude Code はそれを `claude mcp list` と `claude mcp get <name>` の両方に表示します。`/mcp` パネルからサーバーをオンに戻してください。v2.1.238 より前では、両方のコマンドが無効なサーバーに接続して健全性チェックを実行し、接続結果を報告していました。

186 273 

187* ユーザーの `~/.claude/settings.json`274WebSocket サーバーは `claude mcp list` 出力に表示されません。`claude mcp get <name>` または `/mcp` パネルを使用してそれらを確認してください。

275 

276<h4 id="project-server-approvals-and-workspace-trust">

277 プロジェクトサーバーの承認とワークスペーストラスト

278</h4>

279 

280v2.1.196 以降、`claude mcp list` と `claude mcp get` は `.mcp.json` 承認を、`claude` を実行してワークスペーストラストダイアログを受け入れるまでリポジトリにチェックインされていない設定ファイルからのみ読み込みます。クローンされたリポジトリは独自のサーバーを承認できません。プロジェクトの `.claude/settings.json` にコミットされた [`enableAllProjectMcpServers`](/docs/ja/settings-reference#enableallprojectmcpservers) または [`enabledMcpjsonServers`](/docs/ja/settings-reference#enabledmcpjsonservers) は信頼されていないフォルダでは無視され、サーバーは接続されて健全性チェックされる代わりに `⏸ Pending approval` のままです。

281 

282これらのソースからの承認は信頼されていないフォルダでも適用されます。

283 

284* ユーザー `~/.claude/settings.json`

188* 管理設定285* 管理設定

189* `--settings` で渡された設定286* `--settings` で渡された設定

190 287 

191トラッキングされていない `.claude/settings.local.json` の承認も適用されますが、そのフォルダまたはその親ディレクトリのいずれかに対してトラストダイアログを受け入れた後のみです:Claude Code は git を実行してファイルがトラッキングされているかどうかを確認し、その確認は信頼されたフォルダでのみ実行されます。信頼したことのないフォルダでは、ファイルの承認はトラストダイアログを待ちます。ただし、フォルダがあなた自身の設定ホーム(ホームディレクトリ、または `.claude` を [`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) として設定したディレクトリ)である場合は除きます。v2.1.207 より前は、トラッキングされていない `.claude/settings.local.json` は信頼したことのないフォルダのサーバーを承認していました。288Claude Code はまた、追跡されていない `.claude/settings.local.json` からの承認を適用しますが、ファイルが追跡されているかどうかを確認するために git を実行し、その確認は [信頼されたフォルダ](/docs/ja/permissions#project-allow-rules-and-workspace-trust) でのみ実行されます。信頼したことのないフォルダでは、Claude Code はトラストダイアログを待ってからファイルの承認を適用します。ただし、フォルダがユーザー自身の設定ホームである場合は除きます。ホームディレクトリ、または `.claude` を [`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) として設定したディレクトリ。v2.1.207 より前では、Claude Code は信頼したことのないフォルダでも追跡されていない `.claude/settings.local.json` からの承認を適用していました。

289 

290任意の設定ファイルの `disabledMcpjsonServers` エントリはまだサーバーを拒否します。

192 291 

193任意の設定ファイル内の `disabledMcpjsonServers` エントリはサーバーを拒否します。292<h4 id="server-status-detail">

293 サーバーステータスの詳細

294</h4>

194 295 

195`/mcp` パネルは、接続されている各サーバーの横にツール数を表示し、ツール機能をアドバタイズしているが、ツールを公開していないサーバーにフラグを立てます。296`/mcp` で、そこにあるサーバーのメニューを含めて、[`/plugin`](/docs/ja/plugins) マネージャーで、以前使用したリモート HTTP または SSE サーバーは `cached` ステータス(`cached 2h ago · connects on first use · 5 tools` など)を表示できます。Claude Code は起動時に接続する代わりに、前のセッションで保存された検出キャッシュからサーバーのツールリストを読み込み、Claude Code はサーバーのツールの 1 つを Claude が最初に呼び出すときにサーバーを接続します。ツールは最初のメッセージから利用可能なため、何もする必要はありません。検出キャッシュとその `cached` ステータスには Claude Code v2.1.221 以降が必要です。

196 297 

197設定に空の `url` を持つリモートサーバーは、`/mcp`、`claude mcp list`、および [`/plugin`](/docs/ja/plugins) マネージャーに `not configured` として表示され、Claude Code は接続を試みません。プラグインは、後で設定するコネクタ用のプレースホルダーエントリを含めることができるため、Claude Code はそれをエラーまたはセットアップの問題として報告しません。`/mcp` のサーバーの詳細ビューは `No URL configured for this server` と表示されます。接続するにはエントリの `url` を設定してください。v2.1.208 より前は、Claude Code は空の `url` を設定の問題として報告し、再接続を促すプロンプトを表示していました。298検出キャッシュはデフォルトではオフですが、段階的なロールアウトがアカウントに対して有効にしている場合を除きます。[`MCP_DISCOVERY_CACHE=1`](/docs/ja/env-vars) を設定してオンにするか、`0` を設定してロールアウトが有効にしている場合でもオフのままにしてください。v2.1.238 より前では、キャッシュはデフォルトでオンでした。

198 299 

199リクエストがまだバックグラウンドで接続中のサーバーからのツールを必要とする場合、Claude はそのサーバーが接続されるまで待機してから続行します。デフォルトで有効になっている [ツール検索](#scale-with-mcp-tool-search) を使用すると、待機は `ToolSearch` 呼び出し内で発生します。Google Cloud の Agent Platform、カスタム `ANTHROPIC_BASE_URL`、または `ENABLE_TOOL_SEARCH=false` などのツール検索がない設定では、Claude は代わりに `WaitForMcpServers` ツールを使用します。300`/mcp` のサーバーのメニューの 2 つのアクションもそのサーバーのキャッシュエントリに影響します。

200 301 

201一部のサーバー名は Claude Code の組み込みサーバー用に予約されています:`workspace`、`claude-in-chrome`、`computer-use`、`Claude Preview`、`Claude Browser`。設定がこれらの予約名のいずれかでサーバーを定義している場合、Claude Code はロード時にそれをスキップし、名前を変更するよう求める警告を表示します。`claude mcp add` は予約名をエラーで拒否します。302* **再接続**: `cached` サーバーで、Claude Code は最初のツール呼び出しではなく今すぐそれを接続し、エントリを保持します。接続されたまたは失敗したサーバーで、Claude Code はそれを再接続し、エントリも破棄します。

303* **認証をクリア**: Claude Code はサーバーの認証を取り消し、エントリも破棄します。

202 304 

203`Claude Preview` と `Claude Browser` は両方とも、[Claude Code デスクトップアプリのプレビューペイン](/docs/ja/desktop#preview-your-app) が使用する組み込みサーバーに名前を付けます。v2.1.205 より前は、`Claude Browser` は予約されていなかったため、ユーザーが設定したサーバーはその名前で登録できました。305エントリを破棄した後、Claude Code はキャッシュではなくサーバーからサーバーのツールリストを取得します。

306 

307サーバーのステータスが `✘ Failed to connect` の場合、`claude mcp list` はそのステータス行に失敗の詳細を追加し、`claude mcp get <name>` は `Issue:` 行に表示します。HTTP ステータスまたはエラーコード、およびサーバーが返したエラーテキスト。サーバーの詳細ビューは `/mcp` で同じサーバー報告テキストを `Issue:` 行に含めます。Claude Code はこの詳細から認証情報のようなテキストを編集し、展開されたサーバー URL を含めることはありません。これはシークレットを運ぶことができます。Claude Code は `✘ Connection error` ステータスに詳細を追加しません。例外テキストがそこに出力される可能性があるため、その URL を埋め込むことができます。v2.1.219 より前では、両方のコマンドはステータスコードまたはサーバーのエラーテキストなしで、単なる失敗ステータスのみを表示していました。

308 

309`/mcp` から認証を完了し、接続が HTTP ステータスまたはトランスポートエラーコードで失敗し続ける場合、Claude Code は試行後に出力するメッセージにそのコードとサーバーの URL の起点を追加します。起点はスキーム、ホスト、およびポート(URL が 1 つを名前付けする場合)です。例えば `https://mcp.example.com`。

310 

311* パスとクエリはそのメッセージに表示されません。

312* ローカル、プロジェクト、またはユーザー [スコープ](#mcp-installation-scopes) のサーバー、または管理 MCP 設定のサーバーの場合、起点はその設定に書き込まれたホストを表示するため、ホストの `${VAR}` 参照はメッセージで展開されません。

313* ステータスまたはエラーコードのない失敗の場合、Claude Code は起点なしでエラーテキストを表示します。

314 

315設定に空の `url` を持つリモートサーバーは `/mcp`、`claude mcp list`、[`/plugin`](/docs/ja/plugins) マネージャーで `not configured` として表示され、Claude Code はそれに接続しようとしません。プラグインは後で設定するコネクタのプレースホルダーエントリをこのように含めることができるため、Claude Code はそれをエラーまたはセットアップの問題として報告しません。サーバーの詳細ビューは `/mcp` で `No URL configured for this server` を読み込みます。接続するにはエントリの `url` を設定してください。v2.1.208 より前では、Claude Code は空の `url` を設定の問題として報告し、再接続を促していました。

316 

317<h4 id="configuration-warnings">

318 設定警告

319</h4>

320 

321Claude Code は以下の設定の問題について警告します。各エントリは Claude Code が何をチェックし、警告をクリアする方法を示しています。

322 

323* **隠れた空白**: Claude Code は MCP 設定値が隠れた先頭または末尾の空白を持つときに警告します。これはしばしば末尾の改行を持つトークンを貼り付けることから来ます。Claude Code は `command`、`url`、各 `args` エントリ、および `env` と `headers` の下の値とキー名をチェックします。Claude Code は警告を `claude mcp list` 出力と `/mcp` に表示し、影響を受けたフィールドに名前を付けます。例えば `Leading or trailing whitespace in: headers.Authorization`。Claude Code は空白をトリムしません。書き込まれたとおりに値を使用するため、設定を編集してそれを削除してください。

324* **複数のスコープで同じ名前**: 異なるエンドポイントで複数の [スコープ](#mcp-installation-scopes) で同じサーバー名を定義する場合、Claude Code は `claude mcp list` 出力と `/mcp` で競合について警告します。Claude Code は OAuth サインインをエンドポイントごとに保存するため、1 つのプロジェクトで読み込まれる定義を認証すると、別の定義が読み込まれるプロジェクトで別にサインインする必要があります。必要なエンドポイントを保持し、他を `claude mcp remove <name> --scope <scope>` で削除してください。警告では、Claude Code は各スコープのエンドポイントを設定に書き込まれたとおりに引用します。[`${VAR}` 参照](#environment-variable-expansion-in-mcp-json) は展開されないため、API キーなどの解決された値を表示しません。

325* **予約名**: Claude Code は `workspace`、`claude-in-chrome`、`computer-use`、`Claude Preview`、`Claude Browser` を含む組み込みサーバーの名前を予約しています。設定が予約名を持つサーバーを定義する場合、Claude Code はロード時にそれをスキップし、名前を変更するよう求める警告を表示します。`claude mcp add` は予約名を拒否します。`Claude Preview` と `Claude Browser` は両方とも [Claude Code デスクトップアプリのプレビューペイン](/docs/ja/desktop#preview-your-app) が使用する組み込みサーバーに名前を付けます。v2.1.205 より前では、`Claude Browser` は予約されていなかったため、ユーザー設定サーバーはその名前で登録できました。

326* **環境変数の欠落**: サーバーの設定の [`${VAR}` 参照](#environment-variable-expansion-in-mcp-json) が設定されていない変数に名前を付け、`:-default` がない場合、Claude Code は `claude mcp list` 出力と `/mcp` で警告し、変数に名前を付けます。`${VAR}` テキストは展開されないままサーバーを読み込みます。変数を設定するか、`${VAR:-default}` フォールバックを追加してください。

327 

328<h4 id="tool-availability">

329 ツール可用性

330</h4>

331 

332`/mcp` パネルは各接続されたサーバーの横にツール数を表示し、ツール機能をアドバタイズするがツールを公開しないサーバーにフラグを立てます。

333 

334リクエストがバックグラウンドでまだ接続中のサーバーからのツールを必要とする場合、Claude はそのサーバーが接続するまで待機します。待機の方法は設定によって異なります。

335 

336* **[ツール検索](#scale-with-mcp-tool-search)(デフォルト)を使用**: 待機は `ToolSearch` 呼び出し内で発生します。

337* **ツール検索なし**: Claude は代わりに `WaitForMcpServers` ツールを使用します。ツール検索なしの設定には、カスタム `ANTHROPIC_BASE_URL`、`ENABLE_TOOL_SEARCH=false`、Google Cloud の Agent Platform の Claude 4.5 世代より前のモデルが含まれます。

338* **Microsoft Foundry [Azure でホストされたデプロイメント](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options)**: Claude はツール検索パスで開始します。Claude Code は API からのデプロイメントのサーバー側拒否のみを検出するため、`WaitForMcpServers` ではなく。Claude Code がそのデプロイメントを [アップフロント読み込み](#scale-with-mcp-tool-search) に切り替えた後、サーバーが接続を完了するからのツールは Claude の次のリクエストで利用可能になります。

339 

340ツール検索が有効な場合、サーバーが Claude が作業中に接続を完了すると、Claude Code はサーバーのツール名を同じターンの次のリクエストで Claude にリストします。Claude はそれらのツールを検索して呼び出し、メッセージを待つことなく実行できます。

341 

342<h3 id="disable-a-server-without-removing-it">

343 サーバーを削除せずに無効にする

344</h3>

345 

346`/mcp` パネルでサーバーをオフに切り替えて、Claude Code がそれに接続するのを停止し、設定を失わないようにします。Claude Code はサーバーを `/mcp` にリストし、無効としてマークします。

347 

348サーバーを切り替えると、Claude Code はプロジェクトごとに `~/.claude.json` で選択を記録します。2 つのリストの 1 つで、互いに素なサーバーセットをカバーします。

349 

350* `disabledMcpServers`: ユーザー設定サーバー、プラグインサーバー、組織が [管理設定を通じて提供](/docs/ja/managed-mcp#provide-servers-through-managed-settings) するサーバー、Claude Code が [自身で取得](#how-connectors-reach-claude-code) する claude.ai コネクタ、およびデフォルトでオンの組み込みサーバーのオプトアウトリスト。Claude Code はここにリストするサーバーに接続しません。[Disable claude.ai connectors](#disable-claude-ai-connectors) で説明されているプロジェクトごとの `/mcp` トグルで claude.ai コネクタを無効にすると、Claude Code はそれをこのリストの下に表示名で書き込みます。例えば `claude.ai Slack`。

351* `enabledMcpServers`: `computer-use` などのデフォルトでオフの組み込みサーバーのオプトインリスト。Claude Code はここにリストする場合にのみデフォルトオフサーバーに接続します。

352 

353Claude Code は各サーバーに対して 2 つのリストの 1 つを正確に参照するため、どちらのリストも他をオーバーライドしません。通常のサーバーを `enabledMcpServers` に追加するか、デフォルトオフの組み込みサーバーを `disabledMcpServers` に追加する場合、Claude Code はエントリを無視します。

354 

355`disabledMcpServers` と `enabledMcpServers` は [`enabledMcpjsonServers`](/docs/ja/settings-reference#enabledmcpjsonservers) と [`disabledMcpjsonServers`](/docs/ja/settings-reference#disabledmcpjsonservers) とは無関係です。これらはプロジェクトの `.mcp.json` ファイルで定義されたサーバーの承認を制御します。

356 

357<h3 id="mcp-client-runtimes">

358 MCP クライアントランタイム

359</h3>

360 

361Claude Code は 2 つのクライアントランタイムの 1 つを通じて MCP サーバーに接続します。v1 ランタイムは MCP TypeScript SDK 1.x に基づいています。v2 ランタイムは [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/) 上の同じコードで、MCP プロトコルリビジョン 2026-07-28 を追加します。このページの残りは両方のランタイムに適用されます。ただし、セクションが v2 ランタイムに名前を付ける場合を除きます。

362 

363Claude Code v2.1.232 以降では、Claude Code は v2 ランタイムを使用します。起動するたびにランタイムを選択し、終了するまで保持します。これを実行する場合は v1 を使用します。

364 

365* Amazon Bedrock、Claude Platform on AWS、Google Cloud の Agent Platform、または Microsoft Foundry で。ただし、Claude Code を埋め込むホストプラットフォームが [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/ja/env-vars) を設定する場合を除きます

366* [Claude apps gateway](/docs/ja/claude-apps-gateway) を通じてサインイン

367* [フィーチャーフラグ取得がオフ](/docs/ja/env-vars#features-that-need-feature-flag-fetching)

368 

369v2 では、Claude Code も:

370 

371* HTTP と claude.ai コネクタサーバーに新しいリビジョンをサポートするかどうかを尋ね、それをサポートするサーバーで使用します。Stdio サーバーに尋ねるのは [`MCP_PROTOCOL_NEGOTIATION`](/docs/ja/env-vars) を `auto` に設定する場合のみで、他のすべてのサーバーに v1 のように接続します。

372* 新しいリビジョンのサーバーから [ストリームを保持](#notification-streams-on-the-v2-runtime) 上で `list_changed` 通知を受け取ります。

373* 新しいリビジョンで接続する [チャネル](#push-messages-with-channels) サーバーを登録しません。そのリビジョンはチャネルメッセージを運ぶことができないためです。

374* 予期しない発行者に名前を付ける認可応答の [MCP OAuth サインイン](#authenticate-with-remote-mcp-servers) に失敗します。

375 

376Anthropic は特定のサーバーを以前のプロトコルに保つか、Claude Code が取得するフィーチャーフラグでそのストリームをオフにすることができます。

377 

378ランタイムを自分で選択するには、[`MCP_SDK_GENERATION`](/docs/ja/env-vars) を `v1` または `v2` に設定してください。Claude Code が尋ねるかどうかを決定するには、[`MCP_PROTOCOL_NEGOTIATION`](/docs/ja/env-vars) を `auto` または `legacy` に設定してください。Claude Code がデフォルトで v1 を使用する場合、`v2` をピン留めしても尋ねません。`auto` も設定してください。

204 379 

205<h3 id="dynamic-tool-updates">380<h3 id="dynamic-tool-updates">

206 動的ツール更新381 動的ツール更新

207</h3>382</h3>

208 383 

209Claude Code は MCP `list_changed` 通知をサポートしており、MCP サーバーが切断して再接続することなく、利用可能なツール、プロンプト、リソースを動的に更新できます。MCP サーバーが `list_changed` 通知を送信すると、Claude Code はそのサーバーから利用可能な機能を自動的に更新します。384Claude Code は MCP `list_changed` 通知をサポートし、MCP サーバーが切断して再接続することなく利用可能なツール、プロンプト、リソースを動的に更新できます。MCP サーバーが `list_changed` 通知を送信すると、Claude Code は自動的にそのサーバーから利用可能な機能をリフレッシュします。

385 

386リフレッシュリクエストが失敗する場合、Claude Code はサーバーの以前に検出されたツール、プロンプト、リソースを保持します。後のリフレッシュが成功するまで。v2.1.214 より前では、リフレッシュ中の一時的なエラーはサーバーのツール、プロンプト、リソースを空のリストに置き換えていました。

387 

388<h4 id="notification-streams-on-the-v2-runtime">

389 v2 ランタイムの通知ストリーム

390</h4>

391 

392[v2 ランタイム](#mcp-client-runtimes) では、Claude Code は新しいプロトコルリビジョンのサーバーから保持するストリーム上で `list_changed` 通知を受け取ります。ストリームが閉じると、Claude Code はそれを再度開きます。2 つの制限があります。

393 

394* **ストリームが 10 秒以内に再度閉じる**: Claude Code はそれを最大 3 回再度開き、その接続に対して停止します。

395* **ストリームが 10 秒以上開いたままで、その後閉じる**。サーバーレスホストへのストリームが一般的に行うように。1 時間に 5 回再度開いた後、Claude Code は次のものまで約 6 時間待機します。

396 

397ストリームが再度開くまで、サーバーの最後に取得したツール、プロンプト、リソースを保持します。変更をより早く取得するには、`/mcp` からサーバーを再接続してください。

210 398 

211<h3 id="automatic-reconnection">399<h3 id="automatic-reconnection">

212 自動再接続400 自動再接続

213</h3>401</h3>

214 402 

215HTTP または SSE サーバーがセッション中に切断された場合、Claude Code は指数バックオフで自動的に再接続します:最大 5 回の試行、1 秒の遅延から始まり、毎回 2 倍になります。サーバーは再接続が進行中の間、`/mcp` では保留中として表示されます。5 回の失敗した試行の後、サーバーは失敗としてマークされ、`/mcp` から手動で再試行できます。Stdio サーバーはローカルプロセスであり、自動的には再接続されません。403Claude Code はセッション中にドロップするリモートサーバーを再接続し、一時的なエラーの後に HTTP または SSE サーバーの最初の接続を再試行します。Stdio サーバーはローカルプロセスであり、Claude Code は自動的にそれらを再接続しません。

404 

405<h4 id="mid-session-drops-of-a-remote-server">

406 リモートサーバーのセッション中のドロップ

407</h4>

408 

409Claude Code は指数バックオフでドロップされたリモートサーバーを再接続します。最大 5 回の試行。1 秒の遅延で開始し、毎回それを 2 倍にします。表示内容は Claude Code の実行方法によって異なります。

410 

411* **対話的セッション**: `/mcp` は Claude Code が再接続している間、サーバーを保留中として表示します。5 回の失敗した試行の後、Claude Code はサーバーを失敗としてマークするか、サーバーが再度認可する必要がある場合は認証が必要として。`/mcp` から手動で再試行できます。

412* **[`claude -p`](/docs/ja/headless) 実行と [Agent SDK](/docs/ja/agent-sdk/overview) セッション**: Claude Code は同じスケジュールで再接続し、試行を表示する `/mcp` パネルはありません。

216 413 

217同じバックオフは、HTTP または SSE サーバーが起動時に初期接続に失敗した場合にも適用されます。v2.1.121 以降、Claude Code は 5xx レスポンス、接続拒否、タイムアウトなどの一時的なエラーで初期接続を最大 3 回再試行し、それでも接続できない場合はサーバーを失敗としてマークします。認証エラーと見つからないエラーは、解決するために設定変更が必要なため、再試行されません。414<h4 id="failed-first-connections">

415 失敗した最初の接続

416</h4>

218 417 

219設定されたサーバーが接続に失敗した場合、Claude Code は Claude にどのサーバーが失敗したかとその接続エラーを伝えます。これは、マッチするツールが見つからない `ToolSearch` 結果を含みます。そのため、Claude は応答で接続失敗を報告します。[ツール検索](#scale-with-mcp-tool-search) が必要です。これはデフォルトで有効になっています。カスタム `ANTHROPIC_BASE_URL`、`ENABLE_TOOL_SEARCH=false`、または Haiku モデルなどのツール検索がない設定、および Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry では、Claude Code は失敗したサーバー接続を Claude に報告しません。v2.1.205 より前は、Claude Code は接続エラーを Claude に渡さず、Claude は失敗したサーバーのツールが設定されていないかのように応答できました。418HTTP または SSE サーバーの最初の接続が 5xx レスポンス、接続拒否、タイムアウトなどの一時的なエラーで失敗する場合、Claude Code は最大 3 回再試行します。接続がまだ失敗する場合、Claude Code はサーバーを失敗としてマークします。Claude Code はこのように起動時と、セッション中にサーバーが追加されるときに再試行します。これには Claude Code が [クラウドセッション](/docs/ja/claude-code-on-the-web) に設定から追加するサーバーと、Agent SDK の [`setMcpServers()`](/docs/ja/agent-sdk/typescript) で追加するサーバーが含まれます。

220 419 

221v2.1.191 以降、接続成功後に実行される機能検出リクエスト(`tools/list`、`prompts/list`、`resources/list` など)も、一時的なネットワークおよびサーバーエラーを短いバックオフで最大 3 回再試行します。認証エラー、4xx レスポンス、リクエストタイムアウトは再試行されません。420Claude Code はこれらの場合には再試行しません。

421 

422* WebSocket サーバーの最初の接続

423* 認証またはエラーが見つからない。設定変更を解決する必要があるため。[`headersHelper`](#use-dynamic-headers-for-custom-authentication) がサーバーの `Authorization` ヘッダーの唯一のソースである場合、Claude Code は認証エラーを再試行します。ヘルパーを各試行で再実行し、新しい認証情報を取得できるためです。

424 

425<h4 id="failed-discovery-requests">

426 失敗した検出リクエスト

427</h4>

428 

429サーバーが接続した後、Claude Code は `tools/list`、`prompts/list`、`resources/list` などの機能検出リクエストを送信します。Claude Code は一時的なネットワークまたはサーバーエラーの後、短いバックオフで最大 3 回それらのリクエストを再試行します。認証エラー、4xx レスポンス、またはリクエストタイムアウトは再試行しません。

430 

431<h4 id="how-claude-learns-that-a-server-failed">

432 Claude がサーバーが失敗したことを学ぶ方法

433</h4>

434 

435Claude Code が接続に失敗した設定されたサーバーについて Claude に伝えるかどうかは [ツール検索](#scale-with-mcp-tool-search)(デフォルトではオン)に依存します。

436 

437* ツール検索を使用して、Claude Code は Claude にどのサーバーが失敗したか、その接続エラーを伝えるため、Claude は応答で接続失敗を報告します。Claude Code は一致するツールを見つけない `ToolSearch` 結果に同じ情報を含めます。

438* [ツール検索なしの設定](#configure-tool-search) では、Claude Code は失敗したサーバー接続を Claude に報告しません。

222 439 

223<h3 id="push-messages-with-channels">440<h3 id="push-messages-with-channels">

224 チャネルでメッセージをプッシュする441 チャネルでメッセージをプッシュする

225</h3>442</h3>

226 443 

227MCP サーバーはセッションに直接メッセージをプッシュすることもでき、Claude が CI 結果、監視アラート、チャットメッセージなどの外部イベントに対応できます。これを有効にするには、サーバーが `claude/channel` 機能を宣言し、起動時に `--channels` フラグでオプトインします。公式にサポートされているチャネルを使用するには [チャネル](/docs/ja/channels) を参照するか、独自に構築するには [チャネルリファレンス](/docs/ja/channels-reference) を参照してください。444MCP サーバーはまた、CI 結果、監視アラート、チャットメッセージなどの外部イベントに Claude が反応できるようにメッセージをセッションに直接プッシュできます。これを有効にするには、サーバーが `claude/channel` 機能を宣言し、起動時に `--channels` フラグでオプトインします。[チャネル](/docs/ja/channels) を使用して公式にサポートされているチャネルを使用するか、[チャネルリファレンス](/docs/ja/channels-reference) を参照して独自に構築してください。

445 

446[v2 ランタイム](#mcp-client-runtimes) では、[`MCP_PROTOCOL_NEGOTIATION`](/docs/ja/env-vars) を `auto` に設定し、チャネルサーバーが MCP プロトコルリビジョン 2026-07-28 をネゴシエートする場合、チャネルメッセージを配信できないため、Claude Code はそれをチャネルとして登録しません。変数を設定しないままにするか、`legacy` に設定して、stdio サーバーを以前のハンドシェイクに保ちます。

228 447 

229<Tip>448<Tip>

230 ヒント:449 ヒント:

231 450 

232 * `-s` または `--scope` フラグを使用して、設定が保存される場所を指定します:451 * `-s` または `--scope` フラグを使用して、設定が保存される場所を指定します。

233 * `local`(デフォルト):現在のプロジェクトでのみ利用可能。古いバージョンではこのスコープを `project` と呼んでいました452 * `local`(デフォルト): 現在のプロジェクトでのみ利用可能

234 * `project`:`.mcp.json` ファイルを通じてプロジェクト内のすべてのユーザーと共有453 * `project`: `.mcp.json` ファイルを通じてプロジェクト内のすべてのユーザーと共有

235 * `user`:すべてのプロジェクト全体で利用可能。古いバージョンではこのスコープを `global` と呼んでいました454 * `user`: すべてのプロジェクト全体で利用可能

236 * `-e` または `--env` フラグで環境変数を設定します(例:`-e KEY=value`)455 * `-e` または `--env` フラグで環境変数を設定します(例えば、`-e KEY=value`)

237 * `--transport` と `--header` フラグは `-t` と `-H` の短い形式も受け入れます456 * `--transport` と `--header` フラグは `-t` と `-H` 短形式も受け入れます

238 * `MCP_TIMEOUT` 環境変数を使用して MCP サーバーのスタートアップタイムアウトを設定します(例:`MCP_TIMEOUT=10000 claude` は 10 秒のタイムアウトを設定します)457 * `MCP_TIMEOUT` 環境変数を使用して MCP サーバー起動タイムアウトを設定します(例えば、`MCP_TIMEOUT=10000 claude` は 10 秒のタイムアウトを設定します)

239 * サーバーごとのツール実行タイムアウトを設定するには、そのサーバーの `.mcp.json` エントリにミリ秒単位で `timeout` フィールドを追加します。例えば、10 分の場合は `"timeout": 600000` です。これはそのサーバーのみの `MCP_TOOL_TIMEOUT` 環境変数をオーバーライドします458 * ミリ秒単位で `.mcp.json` エントリにそのサーバーの `timeout` フィールドを追加して、サーバーごとのツール実行タイムアウトを設定します。例えば `"timeout": 600000` は 10 分です。これは `MCP_TOOL_TIMEOUT` 環境変数をそのサーバーのみでオーバーライドします

240 * Claude Code は MCP ツール出力が 10,000 トークンを超えると警告を表示し、デフォルトで出力を 25,000 トークンに制限します。制限を増やすには、`MAX_MCP_OUTPUT_TOKENS` 環境変数を設定します(例:`MAX_MCP_OUTPUT_TOKENS=50000`)。警告しきい値は固定です。[MCP 出力制限と警告](#mcp-output-limits-and-warnings) を参照してください459 * Claude Code は MCP ツール出力が 10,000 トークンを超えるときに警告を表示し、デフォルトで出力を 25,000 トークンに制限します。制限を上げるには、`MAX_MCP_OUTPUT_TOKENS` 環境変数を設定します(例えば、`MAX_MCP_OUTPUT_TOKENS=50000`)。警告しきい値は固定です。[MCP 出力制限と警告](#mcp-output-limits-and-warnings) を参照してください

241 * `/mcp` を使用して、OAuth 2.0 認証が必要なリモートサーバーで認証します460 * `/mcp` を使用して、OAuth 2.0 認証が必要なリモートサーバーで認証します

242</Tip>461</Tip>

243 462 

244サーバーごとの `timeout` はツール呼び出しごとのハードウォールクロック制限であり、サーバーからの進捗通知はそれを延長しません。1000 未満の値は無視され、`MCP_TOOL_TIMEOUT` にフォールスルーするか、その変数が設定されていない場合は約 28 時間のデフォルトにフォールスルーします。HTTP、SSE、または [claude.ai コネクタ](/docs/ja/mcp#use-mcp-servers-from-claude-ai) サーバーの場合、サーバーの最初の応答バイトまでの各リクエストをカバーする、リクエストごとの 2 番目のタイマーもあります。このタイマーは、サーバーごとの `timeout` または `MCP_TOOL_TIMEOUT` を設定しない限り 60 秒です。どちらかを 60 秒以上に設定するとリクエストごとのタイマーがその値に上がり、より低い値ではそれを短縮しません。設定されていない `MCP_TOOL_TIMEOUT` の 28 時間のデフォルトはそれに供給されません。Stdio および WebSocket サーバーにはリクエストごとのタイマーがありません。v2.1.162 より前は、1000 未満の値は 1 秒に切り下げられていました。463サーバーごとの `timeout` はツール呼び出しごとのハードウォールクロック制限であり、サーバーからの進捗通知はそれを拡張しません。1000 未満の値は無視され、`MCP_TOOL_TIMEOUT` にフォールスルーするか、その変数が設定されていない場合は約 28 時間のデフォルトにフォールスルーします。HTTP、SSE、または [claude.ai コネクタ](/docs/ja/mcp#use-mcp-servers-from-claude-ai) サーバーの場合、サーバーの最初の応答バイトまでの各リクエストをカバーする 2 つ目の、リクエストごとのタイマーもあります。Claude Code はそのタイマーを 3 つの値の最大値に設定します。60 秒、サーバーに適用されるツールタイムアウト、`MCP_TIMEOUT`。設定されていない `MCP_TOOL_TIMEOUT` の 28 時間デフォルトはその比較に入らず、60 秒未満の値はタイマーを短縮しません。Stdio と WebSocket サーバーにはリクエストごとのタイマーがありません。

245 464 

246サーバーごとの `timeout` が少なくとも 1000 の場合、以下で説明するアイドルタイムアウトのフロアとしても機能します:Claude Code はそのサーバーのツール呼び出しをアイドルのために、サーバーごとの `timeout` より早く中止することはありません。Claude Code v2.1.203 以降が必要です。465少なくとも 1000 のサーバーごとの `timeout` は、以下で説明されるアイドルタイムアウトのフロアとしても機能します。Claude Code はそのサーバーのツール呼び出しをサーバーごとの `timeout` より早くアイドルのために中止しません。Claude Code v2.1.203 以降が必要です。

247 466 

248MCP サーバーへのツール呼び出しで、アイドルウィンドウ中に応答も進捗通知も送信されない場合、ウォールクロック制限を待つ代わりにエラーで中止されます。アイドルタイムアウトには Claude Code v2.1.187 以降が必要です。IDE サーバーと SDK インプロセスサーバーを除く、すべてのサーバータイプに適用されます。アイドルウィンドウは HTTP、SSE、WebSocket、および [claude.ai コネクタ](#use-mcp-servers-from-claude-ai) サーバーの場合は 5 分、stdio サーバーの場合は 30 分がデフォルトです。v2.1.203 より前は、stdio サーバーはアイドルタイムアウトの対象外でした。467応答も進捗通知も送信しない MCP サーバーへのツール呼び出しは、ウォールクロック制限を待つ代わりにエラーで中止されます。アイドルタイムアウトには Claude Code v2.1.187 以降が必要です。IDE サーバーと SDK インプロセスサーバーを除くすべてのサーバータイプに適用されます。アイドルウィンドウは HTTP、SSE、WebSocket、[claude.ai コネクタ](#use-mcp-servers-from-claude-ai) サーバーの場合は 5 分、stdio サーバーの場合は 30 分にデフォルト設定されます。v2.1.203 より前では、stdio サーバーはアイドルタイムアウトから除外されていました。

249 468 

250[`CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT`](/docs/ja/env-vars) 環境変数をミリ秒単位で設定してアイドルウィンドウを変更するか、`0` に設定してチェックを無効にしてください。469[`CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT`](/docs/ja/env-vars) 環境変数をミリ秒単位で設定してアイドルウィンドウを変更するか、`0` に設定してチェックを無効にしてください。

251 470 

471これらのタイムアウトは呼び出しがどのくらい実行できるかを制限し、常にどのくらいブロックするかではありません。2 分を超えて実行される主会話呼び出しは、最初にバックグラウンドタスクに移動します。[長いツール呼び出しの自動バックグラウンド化](#automatic-backgrounding-of-long-tool-calls) を参照してください。

472 

473<h3 id="automatic-backgrounding-of-long-tool-calls">

474 長いツール呼び出しの自動バックグラウンド化

475</h3>

476 

477主会話の MCP ツール呼び出しが 2 分後も実行中の場合、セッションをブロックする代わりにバックグラウンドタスクに移動します。Claude はタスク ID をすぐに受け取り、作業を続け、結果は呼び出しが解決するときにタスク通知として到着します。自動バックグラウンド化には Claude Code v2.1.212 以降が必要です。

478 

479タスクは [`/tasks`](/docs/ja/commands#all-commands) に表示され、そこで停止することもでき、セッションを終了しても存続しません。呼び出しがバックグラウンドで実行されている間、呼び出しごとの制限は引き続き適用されます。サーバーごとの `timeout` または [`MCP_TOOL_TIMEOUT`](/docs/ja/env-vars) で設定されたウォールクロック制限、および [`CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT`](/docs/ja/env-vars) で設定されたアイドルタイムアウト。

480 

481[`CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS`](/docs/ja/env-vars) 環境変数をミリ秒単位で設定してしきい値を変更するか、`0` に設定して自動バックグラウンド化をオフにしてください。`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` を `1` に設定すると、それもオフになり、他のすべてのバックグラウンドタスク機能も同様です。

482 

483一部の呼び出しはバックグラウンドに移動しません。

484 

485* [サブエージェント](/docs/ja/sub-agents) からの呼び出し。Claude Code はメイン会話呼び出しのみをバックグラウンド化します

486* IDE サーバーへの呼び出し

487* [非対話モード](/docs/ja/headless) での呼び出し。ただし `CLAUDE_AUTO_BACKGROUND_TASKS` が `1` に設定されている場合を除きます。1 回限りの実行は結果が到着する前に終了する可能性があるため

488 

489開いている [エリシテーションダイアログ](#respond-to-mcp-elicitation-requests) を待つ呼び出しは、ダイアログが開いている間はバックグラウンド化されません。サーバーは遅いのではなく入力を待ってブロックされているため、Claude Code はダイアログが閉じるまで移動を延期します。

490 

252<h3 id="plugin-provided-mcp-servers">491<h3 id="plugin-provided-mcp-servers">

253 プラグイン提供の MCP サーバー492 プラグイン提供の MCP サーバー

254</h3>493</h3>

255 494 

256[プラグイン](/docs/ja/plugins) は MCP サーバーをバンドルでき、プラグインが有効になると自動的にツールと統合を提供します。プラグイン MCP サーバーはユーザーが設定したサーバーと同じように機能します。495[プラグイン](/docs/ja/plugins) は、プラグインを有効にするときにツールと統合を提供する MCP サーバーをバンドルできます。プラグイン MCP サーバーはユーザー設定サーバーと同じように機能します。

257 496 

258**プラグイン MCP サーバーの仕組み**:497**プラグイン MCP サーバーの動作方法**:

259 498 

260* プラグインはプラグインルートの `.mcp.json` または `plugin.json` 内でインラインで MCP サーバーを定義します499* プラグインはプラグインルートの `.mcp.json` または `plugin.json` にインラインで MCP サーバーを定義します

261* プラグインが有効になると、その MCP サーバーが自動的に起動します500* プラグインを有効にすると、Claude Code は自動的にその MCP サーバーを起動します

262* プラグイン MCP ツールは手動で設定された MCP ツールと一緒に表示されます501* Claude Code は手動で設定された MCP ツールと並んでプラグイン MCP ツールを提供します

263* プラグインサーバーはプラグインのインストールを通じて管理されます(`/mcp` コマンドではありません)502* プラグインサーバーを追加および削除するには、プラグインをインストールまたはアンインストールします。`/mcp` コマンドではなく。[インストールされたプラグインサーバーをオフに切り替える](#disable-a-server-without-removing-it) ことはできます。これにより、Claude Code がそれに接続するのを停止し、プラグインを削除することなく

264 503 

265**プラグイン MCP 設定の例**:504**プラグイン MCP 設定の例**:

266 505 

267プラグインルートの `.mcp.json` 内:506プラグインルートの `.mcp.json` で:

268 507 

269```json theme={null}508```json theme={null}

270{509{


280}519}

281```520```

282 521 

283または `plugin.json` 内でインライン:522または `plugin.json` にインラインで:

284 523 

285```json theme={null}524```json theme={null}

286{525{


296 535 

297**プラグイン MCP 機能**:536**プラグイン MCP 機能**:

298 537 

299* **自動ライフサイクル**:セッション起動時に、有効なプラグインのサーバーが自動的に接続されます。セッション中にプラグインを有効または無効にする場合は、`/reload-plugins` を実行して MCP サーバーを接続または切断してください538* **自動ライフサイクル**: サーバーはこれらのポイントで接続および切断されます。

300* **パス プレースホルダー**:`${CLAUDE_PLUGIN_ROOT}` はプラグインのインストールディレクトリに解決され、`${CLAUDE_PLUGIN_DATA}` はその [永続的な状態](/docs/ja/plugins-reference#persistent-data-directory) ディレクトリに解決され、`${CLAUDE_PROJECT_DIR}` は安定したプロジェクトルートに解決されます。置換は以下に適用されます:539 * セッション起動時、Claude Code は有効なプラグインのサーバーを自動的に接続します。`/mcp` では、以前使用したリモート(HTTP または SSE)プラグインサーバーは [`cached` ステータス](#server-status-detail) を代わりに表示できます。Claude Code は Claude が最初にそのツールの 1 つを呼び出すときに接続します

301 * `stdio` サーバー:`command`、`args`、`env`540 * セッション中にプラグインを有効または無効にする場合、Claude Code はその変更が適用されるときにその MCP サーバーを接続または切断します。[プラグイン変更を再起動なしで適用](/docs/ja/discover-plugins#apply-plugin-changes-without-restarting) はいつかを説明しています。対話的なターミナルのないセッションでは、`/reload-plugins` はプラグイン MCP サーバーを接続または切断しません。これらの変更は次のセッションで有効になります

302 * `http`、`sse`、`ws` サーバー:`url`、`headers`、`headersHelper`。v2.1.195 より前は、`headersHelper` はプレースホルダーをリテラル文字列として渡していました541 * リロードするとき、Claude Code は設定が変更されていないプラグインサーバーのライブ接続を保持し、Agent SDK から [セッションの MCP サーバーリストを置き換える](/docs/ja/agent-sdk/typescript#mcpsetserversresult) ときに同じことを行います。それらに名前を付けずに

303* **ユーザー環境アクセス**:手動で設定されたサーバーと同じ環境変数へのアクセス542 * v2.1.246 以降で [`/cd`](/docs/ja/permissions#move-the-session-to-another-directory) でセッションを移動するとき、Claude Code は新しいディレクトリの設定が有効にするプラグインのサーバーを接続し、有効でなくなったプラグインのサーバーを切断するため、移動後に `/reload-plugins` を実行する必要はありません

304* **複数のトランスポートタイプ**:stdio、SSE、HTTP、WebSocket トランスポートをサポート(トランスポートサポートはサーバーによって異なる場合があります)543 * [ウェブセッション](/docs/ja/claude-code-on-the-web) では、まだ接続されていないプラグインサーバーへの MCP 呼び出し(アイドルセッションが起動した直後など)は、サーバーをオンデマンドで開始し、接続を待ちます

305 544* **パスプレースホルダー**: `${CLAUDE_PLUGIN_ROOT}` はプラグインのインストールディレクトリに解決され、`${CLAUDE_PLUGIN_DATA}` はその [永続状態](/docs/ja/plugins-reference#persistent-data-directory) ディレクトリに解決され、`${CLAUDE_PROJECT_DIR}` は安定したプロジェクトルートに解決されます。置換は以下に適用されます。

306**プラグイン MCP サーバーの表示**:545 * `stdio` サーバー: `command`、`args`、`env`

546 * `http`、`sse`、`ws` サーバー: `url`、`headers`、`headersHelper`。v2.1.195 より前では、`headersHelper` はプレースホルダーをリテラル文字列として渡していました

547* **ユーザー環境アクセス**: 手動で設定されたサーバーと同じ環境変数へのアクセス

548* **複数のトランスポートタイプ**: stdio、SSE、HTTP、WebSocket トランスポートのサポート。ただし、トランスポートサポートはサーバーによって異なる場合があります

307 549 

308```bash theme={null}550プラグインサーバーは `/mcp` に表示され、プラグインから来ることを示すインジケータが付きます。

309# Claude Code 内で、プラグインのものを含むすべての MCP サーバーを表示

310/mcp

311```

312 

313プラグインサーバーはプラグインから来ていることを示すインジケータ付きでリストに表示されます。

314 551 

315**プラグイン MCP ツール名**:552**プラグイン MCP ツール名**:

316 553 

317プラグインでバンドルされた MCP サーバーからのツールには、呼び出し可能な名前にプラグイン名とサーバーキーの両方が含まれます。完全な形式は `mcp__plugin_<plugin-name>_<server-name>__<tool-name>` です。ここで、`A-Z`、`a-z`、`0-9`、`_`、`-` の外の任意の文字は `_` に置き換えられます。`my-plugin` という名前のプラグインでバンドルされた `database-tools` サーバーの場合、`query` ツールは以下のように呼び出し可能です:554プラグインにバンドルされた MCP サーバーからのツールは、呼び出し可能な名前にプラグイン名とサーバーキーの両方を含めます。完全な形式は `mcp__plugin_<plugin-name>_<server-name>__<tool-name>` です。`A-Z`、`a-z`、`0-9`、`_`、`-` の外の任意の文字は `_` に置き換えられます。`my-plugin` という名前のプラグインにバンドルされた `database-tools` サーバーの場合、`query` ツールは以下のように呼び出し可能です。

318 555 

319```556```

320mcp__plugin_my-plugin_database-tools__query557mcp__plugin_my-plugin_database-tools__query

321```558```

322 559 

323[権限ルール](/docs/ja/permissions)、スキルの `allowed-tools` リスト、[サブエージェントの `tools` フィールド](/docs/ja/sub-agents#available-tools)、または [hook マッチャー](/docs/ja/hooks#match-mcp-tools) でツールを参照する場合は、この完全な名前を使用してください。`mcp__database-tools__.*` などのベアサーバーキーに対して記述された hook マッチャーは、プラグインでバンドルされたサーバーに対しては発火しません。560[権限ルール](/docs/ja/permissions)、スキルの `allowed-tools` リスト、[サブエージェントの `tools` フィールド](/docs/ja/sub-agents#available-tools)、または [フック マッチャー](/docs/ja/hooks#match-mcp-tools) でツールを参照するときに、この完全な名前を使用してください。裸のサーバーキー(`mcp__database-tools__.*` など)に対して書かれたフック マッチャーは、プラグインにバンドルされたサーバーに対して発火しません。

324 

325サーバー自体は、`plugin:<plugin-name>:<server-name>`(例:`plugin:my-plugin:database-tools`)などのスコープ付き名前で登録されます。設定されたサーバー名が予想される場所(例:[`mcp_tool` hook の `server` フィールド](/docs/ja/hooks#mcp-tool-hook-fields))でその名前を使用してください。

326 

327**プラグイン MCP サーバーの利点**:

328 561 

329* **バンドル配布**:ツールとサーバーが一緒にパッケージ化されます562サーバー自体は `plugin:<plugin-name>:<server-name>`(`plugin:my-plugin:database-tools` など)のスコープ付き名前で登録されます。設定されたサーバー名が予想される場所([`mcp_tool` フックの `server` フィールド](/docs/ja/hooks#mcp-tool-hook-fields) など)でその名前を使用してください。

330* **自動セットアップ**:手動の MCP 設定は不要です

331* **チーム一貫性**:プラグインがインストールされると、すべてのユーザーが同じツールを取得します

332 563 

333プラグインで MCP サーバーをバンドルする詳細については、[プラグインコンポーネントリファレンス](/docs/ja/plugins-reference#mcp-servers) を参照してください。564プラグインで MCP サーバーをバンドルする詳細については、[プラグインコンポーネントリファレンス](/docs/ja/plugins-reference#mcp-servers) を参照してください。

334 565 


336 MCP インストールスコープ567 MCP インストールスコープ

337</h2>568</h2>

338 569 

339MCP サーバーは 3 つのスコープで設定できます。選択するスコープは、サーバーがロードされるプロジェクトと、設定がチームと共有されるかどうかを制御します。管理者は、[マネージド設定](#managed-mcp-configuration)を通じてエンタープライズレベルでサーバーをデプロイすることもできます。570MCP サーバーは 3 つのスコープで設定できます。選択するスコープは、サーバーがロードされるプロジェクトと、設定がチームと共有されるかどうかを制御します。管理者は、[マネージド設定](#managed-mcp-configuration)を通じてすべてのユーザーに対してサーバーをデプロイまたは提供することもできます。

340 571 

341| スコープ | ロード対象 | チームと共有 | 保存場所 |572| スコープ | ロード対象 | チームと共有 | 保存場所 |

342| ------------------------ | ----------- | ------------ | ---------------------- |573| ------------------------ | ----------- | ------------ | ---------------------- |


351ローカルスコープはデフォルトです。ローカルスコープのサーバーは、追加したプロジェクトでのみロードされ、あなたにプライベートなままです。Claude Code は `~/.claude.json` のそのプロジェクトのパスの下に保存するため、同じサーバーは他のプロジェクトに表示されません。個人開発サーバー、実験的な設定、またはバージョン管理に含めたくない認証情報を持つサーバーにはローカルスコープを使用してください。582ローカルスコープはデフォルトです。ローカルスコープのサーバーは、追加したプロジェクトでのみロードされ、あなたにプライベートなままです。Claude Code は `~/.claude.json` のそのプロジェクトのパスの下に保存するため、同じサーバーは他のプロジェクトに表示されません。個人開発サーバー、実験的な設定、またはバージョン管理に含めたくない認証情報を持つサーバーにはローカルスコープを使用してください。

352 583 

353<Note>584<Note>

354 MCP サーバーの「ローカルスコープ」という用語は、一般的なローカル設定とは異なります。MCP ローカルスコープのサーバーは `~/.claude.json`(ホームディレクトリ)に保存されますが、一般的なローカル設定は `.claude/settings.local.json`(プロジェクトディレクトリ内)を使用します。設定ファイルの場所の詳細については、[設定](/docs/ja/settings#settings-files)を参照してください。585 MCP サーバーの「ローカルスコープ」という用語は、一般的なローカル設定とは異なります。MCP ローカルスコープのサーバーは `~/.claude.json`(ホームディレクトリ)に保存されますが、一般的なローカル設定は `.claude/settings.local.json`(プロジェクトディレクトリ内)を使用します。設定ファイルの場所の詳細については、[設定](/docs/ja/settings#where-settings-live)を参照してください。

355</Note>586</Note>

356 587 

357```bash theme={null}588```bash theme={null}


383 プロジェクトスコープ614 プロジェクトスコープ

384</h3>615</h3>

385 616 

386プロジェクトスコープのサーバーは、プロジェクトのルートディレクトリの `.mcp.json` ファイルに設定を保存することで、チーム間のコラボレーションを可能にします。このファイルはバージョン管理にチェックインするように設計されており、すべてのチームメンバーが同じ MCP ツールとサービスにアクセスできることを保証します。プロジェクトスコープのサーバーを追加すると、Claude Code は自動的にこのファイルを作成または更新して、適切な設定構造を使用します。617プロジェクトスコープのサーバーは、プロジェクトのルートディレクトリの `.mcp.json` ファイルに設定を保存することで、チーム間のコラボレーションを可能にします。プロジェクトスコープのサーバーを追加すると、Claude Code は自動的にこのファイルを作成または更新して、適切な設定構造を使用します。`.mcp.json` をバージョン管理にチェックインして、チームのすべてのメンバーが同じ MCP ツールとサービスを取得するようにしてください。

387 618 

388```bash theme={null}619```bash theme={null}

389# プロジェクトスコープのサーバーを追加する620# プロジェクトスコープのサーバーを追加する

390claude mcp add --transport http paypal --scope project https://mcp.paypal.com/mcp621claude mcp add --transport http shared-server --scope project https://example.com/mcp

391```622```

392 623 

393結果の `.mcp.json` ファイルは標準化された形式に従います:624結果の `.mcp.json` ファイルは標準化された形式に従います:


396{627{

397 "mcpServers": {628 "mcpServers": {

398 "shared-server": {629 "shared-server": {

399 "command": "/path/to/server",630 "type": "http",

400 "args": [],631 "url": "https://example.com/mcp"

401 "env": {}

402 }632 }

403 }633 }

404}634}

405```635```

406 636 

407セキュリティ上の理由から、Claude Code は `.mcp.json` ファイルからプロジェクトスコープのサーバーを使用する前に承認を求めます。これらの承認選択をリセットする必要がある場合は、`claude mcp reset-project-choices` コマンドを使用してください。637セキュリティ上の理由から、Claude Code はインタラクティブセッションで `.mcp.json` ファイルからプロジェクトスコープのサーバーを使用する前に承認を求めます。これらの承認選択をリセットするには、`claude mcp reset-project-choices` を実行してください。

638 

639`claude -p` 実行、[Agent SDK](/docs/ja/headless)セッション、および[クラウドセッション](/docs/ja/claude-code-on-the-web)では、Claude Code はそのプロンプトを表示できません。プロジェクトスコープのサーバーを確認なしでロードします。Claude Code はまた、ユーザー設定またはマネージド設定で [`skipDangerousModePermissionPrompt`](/docs/ja/settings-reference#skipdangerousmodepermissionprompt) が設定された `bypassPermissions` モードで開始したセッションではプロンプトをスキップします。とにかくサーバーを除外するには:

640 

641* [`disabledMcpjsonServers`](/docs/ja/settings-reference#disabledmcpjsonservers)に追加します。これはすべての権限モードでそれをブロックします。

642* [`--setting-sources`](/docs/ja/cli-reference#cli-flags)またはSDKの `settingSources` オプションでプロジェクト設定全体を除外します。

643* [`--strict-mcp-config`](/docs/ja/cli-reference#cli-flags)でセッションを開始します。Claude Code は `--mcp-config` で渡した MCP サーバーのみを使用します。Claude Code がロードしていないプロジェクトスコープのサーバーの承認プロンプトをスキップするには、Claude Code v2.1.246 以降が必要です。v2.1.246 より前では、厳密なセッションでもそれらの承認を待機していたため、バックグラウンドセッションは起動時に待機していました。マネージド MCP ファイルの下でフラグが何をするかについては、[マネージド mcp.json での排他的制御](/docs/ja/managed-mcp#exclusive-control-with-managed-mcp-json)を参照してください。

644 

645[プロジェクトサーバーの承認とワークスペーストラスト](#project-server-approvals-and-workspace-trust)は、リポジトリにコミットされた承認がワークスペーストラストとどのように相互作用するかについて説明しています。

408 646 

409<h3 id="user-scope">647<h3 id="user-scope">

410 ユーザースコープ648 ユーザースコープ


421 スコープの階層と優先順位659 スコープの階層と優先順位

422</h3>660</h3>

423 661 

424同じサーバーが複数の場所で定義されている場合、Claude Code はそれに 1 回接続し、最も優先度の高いソースからの定義を使用します。その定義全体が使用され、フィールドはスコープ全体でマージされません。662同じサーバーが複数の場所で定義されている場合、Claude Code はそれに 1 回接続し、最も優先度の高いソースからの定義を使用します。そのソースからのサーバーエントリ全体が使用されます。フィールドはスコープ全体でマージされません。

425 663 

4261. ローカルスコープ6641. ローカルスコープ

4272. プロジェクトスコープ6652. プロジェクトスコープ


431 669 

4323 つのスコープは名前で重複を照合します。プラグインとコネクタはエンドポイントで照合するため、上記のサーバーと同じ URL またはコマンドを指すものは重複として扱われます。6703 つのスコープは名前で重複を照合します。プラグインとコネクタはエンドポイントで照合するため、上記のサーバーと同じ URL またはコマンドを指すものは重複として扱われます。

433 671 

672組織が [`managedMcpServers`](/docs/ja/managed-mcp#provide-servers-through-managed-settings)マネージド設定を通じて提供するサーバーは、これらすべての上にランクされるため、それらの 1 つがそれを複製する場合、Claude Code は組織の定義に接続します。Claude Code v2.1.259 以降が必要です。

673 

674[Desktop アプリの Code タブ](/docs/ja/desktop#mcp-servers-from-the-claude-desktop-chat-app)でローカルセッションを開く場合、`~/.claude.json`(ユーザースコープ)のトップレベルと `.mcp.json` に同じ stdio サーバー名がある場合、Code タブは `~/.claude.json` 定義を使用します。

675 

434<h3 id="environment-variable-expansion-in-mcp-json">676<h3 id="environment-variable-expansion-in-mcp-json">

435 `.mcp.json` での環境変数の展開677 `.mcp.json` での環境変数の展開

436</h3>678</h3>


467}709}

468```710```

469 711 

470参照される環境変数が設定されておらず、デフォルト値がない場合、Claude Code はリテラルな `${VAR}` テキストを値に残し、そのサーバーに対して欠落変数の警告を報告します。設定はまだロードされるため、変数を設定するか、`:-default` フォールバックを追加して、サーバーが意図した値で起動するようにしてください。712参照される環境変数が設定されておらず、デフォルト値がない場合、設定はまだロードされます。Claude Code はそのサーバーに対して `claude mcp list` 出力で欠落変数の警告を報告し、展開されていない `${VAR}` テキストをそのまま使用します。変数を設定するか、`:-default` フォールバックを追加して、サーバーが意図した値で起動するようにしてください。

471 713 

472<h2 id="practical-examples">714<h2 id="practical-examples">

473 実践的な例715 実践的な例

474</h2>716</h2>

475 717 

476<h3 id="example-monitor-errors-with-sentry">

477 例:Sentry でエラーを監視する

478</h3>

479 

480```bash theme={null}

481claude mcp add --transport http sentry https://mcp.sentry.dev/mcp

482```

483 

484Sentry アカウントで認証します:

485 

486```text theme={null}

487/mcp

488```

489 

490その後、本番環境の問題をデバッグします:

491 

492```text theme={null}

493過去 24 時間で最も一般的なエラーは何ですか?

494```

495 

496```text theme={null}

497エラー ID abc123 のスタックトレースを表示してください

498```

499 

500```text theme={null}

501どのデプロイメントがこれらの新しいエラーを導入しましたか?

502```

503 

504<h3 id="example-connect-to-github-for-code-reviews">718<h3 id="example-connect-to-github-for-code-reviews">

505 例:コードレビューのために GitHub に接続する719 例:コードレビューのために GitHub に接続する

506</h3>720</h3>


512 --header "Authorization: Bearer YOUR_GITHUB_PAT"726 --header "Authorization: Bearer YOUR_GITHUB_PAT"

513```727```

514 728 

729`YOUR_GITHUB_PAT` を個人アクセストークンに置き換えてください。`claude mcp add` コマンドは認証情報を検証せずに設定を保存するため、ここではプレースホルダー値が受け入れられますが、サーバーは後で接続に失敗します。接続を確認するには、`/mcp` を実行し、サーバーが `connected` と表示されていることを確認してください。認証情報が不正なサーバーは `failed` と表示され、失敗の詳細には、サーバーが返した HTTP ステータス(401 など)が含まれます。

730 

515その後、GitHub で作業します:731その後、GitHub で作業します:

516 732 

517```text theme={null}733```text wrap theme={null}

518PR #456 をレビューして改善を提案してください734PR #456 をレビューして改善を提案してください

519```735```

520 736 

521```text theme={null}737```text wrap theme={null}

522見つけたバグの新しい課題を作成してください738見つけたバグの新しい課題を作成してください

523```739```

524 740 

525```text theme={null}741```text wrap theme={null}

526自分に割り当てられているすべてのオープン PR を表示してください742自分に割り当てられているすべてのオープン PR を表示してください

527```743```

528 744 


530 例:PostgreSQL データベースをクエリする746 例:PostgreSQL データベースをクエリする

531</h3>747</h3>

532 748 

749[DBHub](https://github.com/bytebase/dbhub)(`@bytebase/dbhub` パッケージ)は、`--dsn` で渡す接続文字列を通じて Claude をリレーショナルデータベースに接続する MCP サーバーです。Claude が実行するクエリがデータを変更できないように、接続文字列で読み取り専用データベースユーザーを使用してください:

750 

533```bash theme={null}751```bash theme={null}

534claude mcp add --transport stdio db -- npx -y @bytebase/dbhub \752claude mcp add --transport stdio db -- npx -y @bytebase/dbhub \

535 --dsn "postgresql://readonly:pass@prod.db.com:5432/analytics"753 --dsn "postgresql://readonly:pass@prod.db.com:5432/analytics"

536```754```

537 755 

756サーバーが起動することを確認するには、`/mcp` を実行し、`db` が `connected` と表示されていることを確認してください。

757 

538その後、データベースを自然に照会します:758その後、データベースを自然に照会します:

539 759 

540```text theme={null}760```text wrap theme={null}

541今月の総収益はいくらですか?761今月の総収益はいくらですか?

542```762```

543 763 

544```text theme={null}764```text wrap theme={null}

545orders テーブルのスキーマを表示してください765orders テーブルのスキーマを表示してください

546```766```

547 767 

548```text theme={null}768```text wrap theme={null}

549過去 90 日間に購入していない顧客を検索してください769過去 90 日間に購入していない顧客を検索してください

550```770```

551 771 


555 775 

556多くのクラウドベースの MCP サーバーは認証が必要です。Claude Code は安全な接続のために OAuth 2.0 をサポートしています。776多くのクラウドベースの MCP サーバーは認証が必要です。Claude Code は安全な接続のために OAuth 2.0 をサポートしています。

557 777 

558Claude Code は、サーバーが `401 Unauthorized` または `403 Forbidden` で応答するときに、リモートサーバーが認証を必要とするとマークします。どちらのステータスコードでも、サーバーは `/mcp` でフラグが立てられ、OAuth フローを完了できます。778Claude Code は、サーバーが `401 Unauthorized` または `403 Forbidden` で応答するとき、リモートサーバーが認証を必要としていることをマークします。Claude Code が表示する内容はサーバーによって異なります。

779 

780* サインインしていないサーバーの場合、どちらのステータスコードでも `/mcp` でフラグが立てられるため、OAuth フローを完了できます。

781* [claude.ai コネクタ](#use-mcp-servers-from-claude-ai)の場合、claude.ai がセッショントークンを拒否することによる `401` はコネクタにフラグを立てません。コネクタを再認可してもログインを修正できないためです。Claude Code は代わりに[セッショントークン拒否状態](/docs/ja/errors#claude-ai-rejected-the-session-token)を表示します。

782* `Authorization` ヘッダーを設定したサーバーの場合、`headers` または [`headersHelper`](#use-dynamic-headers-for-custom-authentication) を通じて、接続中の `401` または `403` はサーバーにフラグを立てません。修正する認証情報は設定した認証情報だからです。Claude Code は代わりに接続が失敗したことを報告します。

783* [クラウドセッションに配信されたコネクタ](#how-connectors-reach-claude-code)の場合、Claude Code はサインインフローを実行しません。セッションのプロキシが claude.ai で付与した認可を使用してコネクタに認証するためです。そこでコネクタが再度認可が必要な場合、セッションからではなく [claude.ai/customize/connectors](https://claude.ai/customize/connectors) で再接続してください。

559 784 

560既にサインインしている OAuth サーバーへのリクエストが `401 Unauthorized` を返す場合、Claude Code は保存されたトークンをリフレッシュし、再接続して、リクエストを 1 回再試行します。その再試行も失敗した場合にのみ、サーバーを `/mcp` でフラグが立てられます。v2.1.206 より前は、ネットワークエラーなどの一時的な理由でトークンリフレッシュが失敗した場合、リフレッシュトークンがまだ有効であっても、OAuth サーバーはセッションの残りの間、認証が必要とマークされていました。785既にサインインした OAuth サーバーへのリクエストが `401 Unauthorized` を返すとき、Claude Code は保存されたトークンをリフレッシュし、再接続して、リクエストを 1 回再試行します。その再試行も失敗した場合にのみ、`/mcp` でサーバーにフラグを立てます。v2.1.206 より前は、ネットワークエラーなどの一時的な理由でトークンリフレッシュが失敗した場合、リフレッシュトークンがまだ有効であっても、OAuth サーバーは残りのセッション中、認証が必要としてフラグが立てられていました。

561 786 

562v2.1.195 以降、トークンの更新がサーバーが保存されたリフレッシュトークンを拒否したために失敗する場合、Claude Code は `/mcp` を指す通知をすぐに表示します。接続されたサーバーのメニューはそこで「Re-authenticate」を提供するため、次のツール呼び出しが失敗する前に再度サインインできます。787サーバーが保存されたリフレッシュトークンを拒否するとき、Claude Code は直ちに `/mcp` を指す通知を表示します。`/mcp` を開き、サーバーで **Re-authenticate** を選択して、次のツール呼び出しが失敗する前に再度サインインしてください。

563 788 

564認可サーバーを指す `WWW-Authenticate` ヘッダーを返すカスタムサーバーは、他のリモートサーバーと同じ自動検出を取得します。789`WWW-Authenticate` ヘッダーを返すカスタムサーバーは、その認可サーバーを指し、他のリモートサーバーと同じ自動検出を取得します。

565 790 

566v2.1.193 以降、Claude Code は 1 つ以上の設定されたサーバーが認証を必要とする場合、スタートアップ通知も表示するため、どのサーバーがサインインを必要とするかを発見するために `/mcp` を開く必要がありません。791Claude Code は、1 つ以上の設定されたサーバーが認証を必要とするときにスタートアップ通知も表示するため、`/mcp` を開いて認証が必要なサーバーを検出する必要がありません。この通知には Claude Code v2.1.193 以降が必要です。Claude Code からサインインできるサーバーのみをカウントします。v2.1.218 より前は、claude.ai で接続されていない [claude.ai コネクタ](#use-mcp-servers-from-claude-ai)もカウントされていました。これらは claude.ai 設定からのみ接続できます。

567 792 

568非対話型モードでは `/mcp` パネルがないため、Claude Code は OAuth フローを実行できません。v2.1.196 以降、設定されたサーバーが `claude -p` または [ツール検索](#scale-with-mcp-tool-search) が有効になっている Agent SDK 実行中に認証を必要とする場合(これはデフォルトです)、Claude Code は Claude にサーバーのツールが認可されるまで利用できないことを伝えます。Claude はサーバーが設定されていないかのように応答するのではなく、サインインが必要なサーバーに名前を付けることができます。対話型セッションから `/mcp` または `claude mcp login <name>` でサインインを完了してください。793非対話モードでは `/mcp` パネルがないため、Claude Code は OAuth フローを実行できません。v2.1.196 以降、[ツール検索](#scale-with-mcp-tool-search)が有効な(デフォルト)`claude -p` または Agent SDK 実行中に設定されたサーバーが認証を必要とするとき、Claude Code はサーバーのツールが認可されるまで利用できないことを Claude に伝えます。Claude はサーバーが設定されていないかのように応答する代わりに、サインインが必要なサーバーに名前を付けることができます。対話セッションから `/mcp` または `claude mcp login <name>` でサインインを完了してください。

569 794 

570`headers.Authorization` をサーバー用に設定し、サーバーがそのヘッダーを拒否する場合、Claude Code は OAuth にフォールバックするのではなく、接続が失敗したと報告します。トークンが MCP エンドポイント用に有効であることを確認するか、OAuth フローを使用するためにヘッダーを削除してください。795サーバーに `headers.Authorization` を設定し、サーバーがそのヘッダーを拒否する場合、Claude Code は OAuth にフォールバックする代わりに接続が失敗したことを報告します。トークンが MCP エンドポイントに対して有効であることを確認するか、ヘッダーを削除して OAuth フローを使用してください。

571 796 

572<Steps>797<Steps>

573 <Step title="認証が必要なサーバーを追加する">798 <Step title="認証が必要なサーバーを追加する">

574 例:799 [MCP クイックスタート](/docs/ja/mcp-quickstart#connect-a-server-that-requires-sign-in)で既に `sentry` サーバーを追加した場合、このステップをスキップしてください。同じサーバー名で同じスコープで `claude mcp add` を再度実行すると、`MCP server sentry already exists in local config` で失敗します。それ以外の場合は、以下を実行してください。

575 800 

576 ```bash theme={null}801 ```bash theme={null}

577 claude mcp add --transport http sentry https://mcp.sentry.dev/mcp802 claude mcp add --transport http sentry https://mcp.sentry.dev/mcp


579 </Step>804 </Step>

580 805 

581 <Step title="Claude Code 内で /mcp コマンドを使用する">806 <Step title="Claude Code 内で /mcp コマンドを使用する">

582 Claude Code で、コマンドを使用します:807 Claude Code で、以下のコマンドを使用します。

583 808 

584 ```text theme={null}809 ```text wrap theme={null}

585 /mcp810 /mcp

586 ```811 ```

587 812 

588 その後、ブラウザでログインするための手順に従ってください。813 その後、ブラウザーのステップに従ってログインしてください。

589 </Step>814 </Step>

590</Steps>815</Steps>

591 816 

592<Tip>817<Tip>

593 ヒント:818 ヒント:

594 819 

595 * 認証トークンは安全に保存され、自動的に更新されます820 * 認証トークンは安全に保存され、自動的にリフレッシュされます

596 * `/mcp` メニューで「Clear authentication」を使用してアクセスを取り消します821 * `/mcp` メニューの「Clear authentication」を使用してアクセスを取り消します

597 * ブラウザが自動的に開かない場合は、提供された URL をコピーして手動で開いてください822 * ブラウザーが自動的に開かない場合は、提供された URL をコピーして手動で開いてください

598 * ブラウザのリダイレクトが認証後に接続エラーで失敗する場合は、ブラウザのアドレスバーから完全なコールバック URL を Claude Code に表示される URL プロンプトに貼り付けてください823 * 認証後、ブラウザーリダイレクトが接続エラーで失敗する場合は、ブラウザーのアドレスバーから完全なコールバック URL を貼り付けて、Claude Code に表示される URL プロンプトに入力してください

599 * OAuth 認証は HTTP サーバーで機能します824 * OAuth 認証は HTTP サーバーで機能します

600</Tip>825</Tip>

601 826 


603 コマンドラインから認証する828 コマンドラインから認証する

604</h3>829</h3>

605 830 

606v2.1.186 以降、`claude mcp login <name>` はシェルから直接設定されたサーバーの OAuth フローを実行するため、セッション内で `/mcp` パネルを開く必要がありません。831v2.1.186 から、`claude mcp login <name>` は設定されたサーバーの OAuth フローをシェルから直接実行するため、セッション内の `/mcp` パネルを開く必要がありません。

607 832 

608```bash theme={null}833```bash theme={null}

609claude mcp login sentry834claude mcp login sentry


611 836 

612後で保存された認証情報をクリアするには、`claude mcp logout <name>` を実行してください。837後で保存された認証情報をクリアするには、`claude mcp logout <name>` を実行してください。

613 838 

614v2.1.191 以降、このコマンドは SSH セッション中やディスプレイサーバーのない Linux など、ローカルブラウザが利用できない場合を検出し、ブラウザを開こうとするのではなく認可 URL を出力します。ローカルマシンで URL を開き、ブラウザのアドレスバーから完全なリダイレクト URL をプロンプトに貼り付けます。コマンドは貼り付けステップのためにインタラクティブなターミナルが必要なため、`ssh -t` で接続してください。ローカルブラウザが検出された場合でも URL プロンプトを強制するには、`--no-browser` を渡してください。839v2.1.191 以降、このコマンドは SSH セッション中やディスプレイサーバーのない Linux など、ローカルブラウザーが利用できない場合を検出し、ブラウザーを開こうとする代わりに認可 URL を出力します。ローカルマシンで URL を開き、ブラウザーのアドレスバーから完全なリダイレクト URL をプロンプトに貼り付けてください。このコマンドは貼り付けステップのために対話型ターミナルが必要なため、`ssh -t` で接続してください。ローカルブラウザーが検出された場合でも URL プロンプトを強制するには、`--no-browser` を渡してください。

615 840 

616```bash theme={null}841```bash theme={null}

617claude mcp login sentry --no-browser842claude mcp login sentry --no-browser


621 固定 OAuth コールバックポートを使用する846 固定 OAuth コールバックポートを使用する

622</h3>847</h3>

623 848 

624一部の MCP サーバーは、事前に登録された特定のリダイレクト URI が必要です。デフォルトでは、Claude Code は OAuth コールバック用にランダムに利用可能なポートを選択します。`--callback-port` を使用してポートを固定し、`http://localhost:PORT/callback` の形式の事前登録されたリダイレクト URI と一致させます。849一部の MCP サーバーは、事前に登録された特定のリダイレクト URI が必要です。デフォルトでは、Claude Code は OAuth コールバック用にランダムに利用可能なポートを選択します。`--callback-port` を使用してポートを固定し、`http://localhost:PORT/callback` 形式の事前登録されたリダイレクト URI と一致させてください。Claude Code v2.1.229 でのサインインがリダイレクト URI の不一致で失敗する場合は、[事前設定された OAuth 認証情報を使用する](#use-pre-configured-oauth-credentials)の下のバージョンノートを参照してください。

625 850 

626`--callback-port` を単独で使用できます(動的クライアント登録を使用)、または `--client-id` と一緒に使用できます(事前設定された認証情報を使用)。851`--callback-port` は単独で(動的クライアント登録を使用)または `--client-id` と一緒に(事前設定された認証情報を使用)使用できます。

627 852 

628```bash theme={null}853```bash theme={null}

629# 動的クライアント登録を使用した固定コールバックポート854# 動的クライアント登録を使用した固定コールバックポート


636 事前設定された OAuth 認証情報を使用する861 事前設定された OAuth 認証情報を使用する

637</h3>862</h3>

638 863 

639一部の MCP サーバーは、Dynamic Client Registration を通じた自動 OAuth セットアップをサポートしていません。「Incompatible auth server: does not support dynamic client registration」のようなエラーが表示される場合、サーバーは事前設定された認証情報が必要です。Claude Code は Client ID Metadata Document(CIMD)を使用するサーバーもサポートしており、これらを自動的に検出します。自動検出に失敗した場合は、まずサーバーの開発者ポータルを通じて OAuth アプリを登録し、サーバーを追加するときに認証情報を提供してください。864一部の MCP サーバーは、動的クライアント登録による自動 OAuth セットアップをサポートしていません。「Incompatible auth server: does not support dynamic client registration」のようなエラーが表示される場合、サーバーは事前設定された認証情報が必要です。Claude Code は、動的クライアント登録の代わりにクライアント ID メタデータドキュメント(CIMD)を使用するサーバーもサポートし、これらを自動的に検出します。自動検出が失敗する場合は、サーバーの開発者ポータルを通じて OAuth アプリを登録してから、サーバーを追加するときに認証情報を提供してください。

640 865 

641<Steps>866<Steps>

642 <Step title="サーバーで OAuth アプリを登録する">867 <Step title="サーバーで OAuth アプリを登録する">

643 サーバーの開発者ポータルを通じてアプリを作成し、クライアント ID とクライアントシークレットをメモしてください。868 サーバーの開発者ポータルを通じてアプリを作成し、クライアント ID とクライアントシークレットをメモしてください。

644 869 

645 多くのサーバーはリダイレクト URI も必要とします。その場合は、ポートを選択し、`http://localhost:PORT/callback` の形式でリダイレクト URI を登録してください。次のステップで `--callback-port` と同じポートを使用してください。870 多くのサーバーはリダイレクト URI も必要とします。その場合は、ポートを選択し、`http://localhost:PORT/callback` 形式でリダイレクト URI を登録してください。次のステップで `--callback-port` と同じポートを使用してください。

871 

872 v2.1.229 では、Claude Code は代わりに `http://127.0.0.1:PORT/callback` を送信していました。登録されたリダイレクト URI と完全に一致するサーバーは、リダイレクト URI の不一致でサインインを拒否していました。Claude Code v2.1.231 は `localhost` 形式を復元しました。v2.1.229 で復旧するには、Claude Code をアップグレードするか、一時的にサーバーの登録されたリダイレクト URI に `http://127.0.0.1:PORT/callback` 形式を追加してください。

646 </Step>873 </Step>

647 874 

648 <Step title="認証情報を使用してサーバーを追加する">875 <Step title="認証情報を使用してサーバーを追加する">

649 次のいずれかの方法を選択してください。`--callback-port` に使用されるポートは、利用可能な任意のポートにすることができます。前のステップで登録したリダイレクト URI と一致する必要があります。876 以下のいずれかの方法を選択してください。`--callback-port` に使用されるポートは、利用可能な任意のポートにできます。前のステップで登録したリダイレクト URI と一致する必要があります。

650 877 

651 <Tabs>878 <Tabs>

652 <Tab title="claude mcp add">879 <Tab title="claude mcp add">

653 `--client-id` を使用してアプリのクライアント ID を渡します。`--client-secret` フラグはマスクされた入力でシークレットを求めます:880 `--client-id` を使用してアプリのクライアント ID を渡します。`--client-secret` フラグはマスクされた入力でシークレットをプロンプトします。

654 881 

655 ```bash theme={null}882 ```bash theme={null}

656 claude mcp add --transport http \883 claude mcp add --transport http \


660 </Tab>887 </Tab>

661 888 

662 <Tab title="claude mcp add-json">889 <Tab title="claude mcp add-json">

663 JSON 設定に `oauth` オブジェクトを含め、`--client-secret` を別のフラグとして渡します:890 JSON 設定に `oauth` オブジェクトを含め、`--client-secret` を別のフラグとして渡します。

664 891 

665 ```bash theme={null}892 ```bash theme={null}

666 claude mcp add-json my-server \893 claude mcp add-json my-server \


670 </Tab>897 </Tab>

671 898 

672 <Tab title="claude mcp add-json(コールバックポートのみ)">899 <Tab title="claude mcp add-json(コールバックポートのみ)">

673 動的クライアント登録を使用しながらポートを固定するには、クライアント ID なしで `--callback-port` を使用します:900 動的クライアント登録を使用しながらポートを固定するには、クライアント ID なしで `--callback-port` を使用します。

674 901 

675 ```bash theme={null}902 ```bash theme={null}

676 claude mcp add-json my-server \903 claude mcp add-json my-server \


678 ```905 ```

679 </Tab>906 </Tab>

680 907 

681 <Tab title="CI / env var">908 <Tab title="CI / 環境変数">

682 環境変数を通じてシークレットを設定して、対話的なプロンプトをスキップします:909 環境変数を通じてシークレットを設定して、対話型プロンプトをスキップします。

683 910 

684 ```bash theme={null}911 ```bash theme={null}

685 MCP_CLIENT_SECRET=your-secret claude mcp add --transport http \912 MCP_CLIENT_SECRET=your-secret claude mcp add --transport http \


691 </Step>918 </Step>

692 919 

693 <Step title="Claude Code で認証する">920 <Step title="Claude Code で認証する">

694 Claude Code で `/mcp` を実行し、ブラウザのログインフローに従ってください。921 Claude Code で `/mcp` を実行し、ブラウザーログインフローに従ってください。

695 </Step>922 </Step>

696</Steps>923</Steps>

697 924 

698<Tip>925<Tip>

699 ヒント:926 ヒント:

700 927 

701 * クライアントシークレットはシステムキーチェーン(macOS)または認証情報ファイルに安全に保存され、設定には保存されません928 * クライアントシークレットは、設定ではなく、システムキーチェーン(macOS)または認証情報ファイルに安全に保存されます

702 * サーバーがシークレットなしのパブリック OAuth クライアントを使用する場合は、`--client-secret` なしで `--client-id` のみを使用してください929 * クライアントシークレットはサーバーを追加するときにのみ設定できます。`claude mcp login` または `/mcp` から認証するとき、Claude Code は保存されたシークレットを使用し、プロンプトを表示したり `MCP_CLIENT_SECRET` を読み込んだりしません

703 * `--callback-port` は `--client-id` の有無にかかわらず使用できます930 * 後でシークレットを追加または変更するには、`claude mcp remove <name>` でサーバーを削除してから、`--client-secret` と同じ `--scope` で再度追加してください

704 * これらのフラグは HTTP および SSE トランスポートにのみ適用されます。stdio サーバーには影響しません931 * サーバーがシークレットのないパブリック OAuth クライアントを使用する場合は、`--client-secret` なしで `--client-id` のみを使用してください

705 * `claude mcp get <name>` を使用して、OAuth 認証情報がサーバーに設定されていることを確認してください932 * これらのフラグは HTTP および SSE トランスポートにのみ適用されます。stdio サーバーには効果がありません

933 * `claude mcp get <name>` を使用して、OAuth 認証情報がサーバーに対して設定されていることを確認してください

706</Tip>934</Tip>

707 935 

708<h3 id="override-oauth-metadata-discovery">936<h3 id="override-oauth-metadata-discovery">

709 OAuth メタデータ検出をオーバーライドする937 OAuth メタデータ検出をオーバーライドする

710</h3>938</h3>

711 939 

712Claude Code を特定の OAuth 認可サーバーメタデータ URL に指定して、デフォルトの検出チェーンをバイパスします。MCP サーバーの標準エンドポイントがエラーになる場合、または内部プロキシを通じて検出をルーティングしたい場合に設定します。デフォルトでは、Claude Code は最初に RFC 9728 保護リソースメタデータを `/.well-known/oauth-protected-resource` でチェックし、次に RFC 8414 認可サーバーメタデータを `/.well-known/oauth-authorization-server` でフォールバックします。940特定の OAuth 認可サーバーメタデータ URL を指して、デフォルト検出チェーンをバイパスしてください。MCP サーバーの標準エンドポイントがエラーになるとき、または内部プロキシを通じて検出をルーティングしたいときに `authServerMetadataUrl` を設定してください。デフォルトでは、Claude Code は最初に `/.well-known/oauth-protected-resource` で RFC 9728 保護リソースメタデータをチェックし、次に `/.well-known/oauth-authorization-server` で RFC 8414 認可サーバーメタデータにフォールバックします。

713 941 

714`.mcp.json` のサーバー設定の `oauth` オブジェクトに `authServerMetadataUrl` を設定します:942`.mcp.json` のサーバー設定の `oauth` オブジェクトで `authServerMetadataUrl` を設定してください。

715 943 

716```json theme={null}944```json theme={null}

717{945{


733 OAuth スコープを制限する961 OAuth スコープを制限する

734</h3>962</h3>

735 963 

736`oauth.scopes` を設定して、認可フロー中に Claude Code がリクエストするスコープをピン留めします。これは、アップストリーム認可サーバーがより多くのスコープをアドバタイズする場合に、MCP サーバーをセキュリティチームが承認したサブセットに制限するサポートされた方法です。値は RFC 6749 §3.3 の `scope` パラメータ形式と一致する単一のスペース区切り文字列です。964`oauth.scopes` を設定して、認可フロー中に Claude Code がリクエストするスコープをピン留めしてください。これは、アップストリーム認可サーバーがより多くのスコープをアドバタイズするときに、MCP サーバーをセキュリティチームによって承認されたサブセットに制限するサポートされた方法です。値は RFC 6749 §3.3 の `scope` パラメーター形式と一致する単一のスペース区切り文字列です。

737 965 

738```json theme={null}966```json theme={null}

739{967{


749}977}

750```978```

751 979 

752`oauth.scopes` は `authServerMetadataUrl` と `/.well-known` でサーバーが検出するスコープの両方に優先します。MCP サーバーがリクエストするスコープセットを決定するようにするには、設定を解除したままにしてください。980`oauth.scopes` は `authServerMetadataUrl` とサーバーが `/.well-known` で検出するスコープの両方より優先されます。MCP サーバーがリクエストされたスコープセットを決定できるようにするには、設定を解除のままにしてください。

753 981 

754v2.1.196 以降、`oauth.scopes` が設定されていない場合、Claude Code はサーバーの `WWW-Authenticate` ヘッダーまたはその保護リソースメタデータによって提供されるスコープをリクエストし、どちらも提供しない場合は `scope` パラメータを送信しません。自動的に検出された認可サーバーメタデータから完全な `scopes_supported` カタログをリクエストしなくなりました。そのカタログをリクエストすると、管理者のみまたはテンプレートスコープをアドバタイズするアイデンティティプロバイダーが `invalid_scope` エラーで認可リクエストを拒否しました。設定された `authServerMetadataUrl` からフェッチされたメタデータは、その `scopes_supported` をリクエストされたスコープとして提供します。982v2.1.196 以降、`oauth.scopes` が設定されていない場合、Claude Code はサーバーの `WWW-Authenticate` ヘッダーまたは保護されたリソースメタデータによって提供されるスコープをリクエストし、どちらも提供しない場合は `scope` パラメーターを送信しません。自動的に検出された認可サーバーメタデータから完全な `scopes_supported` カタログをリクエストしなくなりました。そのカタログをリクエストすると、管理者のみまたはテンプレートスコープをアドバタイズするアイデンティティプロバイダーが `invalid_scope` エラーで認可リクエストを拒否していました。設定された `authServerMetadataUrl` から取得されたメタデータは、その `scopes_supported` をリクエストされたスコープとして提供します。

755 983 

756認可サーバーが `scopes_supported` で `offline_access` をアドバタイズする場合、Claude Code はそれをピン留めされたスコープに追加して、新しいブラウザサインインなしでアクセストークンを更新できるようにします。984認可サーバーが `scopes_supported` で `offline_access` をアドバタイズする場合、Claude Code はそれをピン留めされたスコープに追加して、新しいブラウザーサインインなしでアクセストークンをリフレッシュできるようにします。

757 985 

758サーバーが後で `insufficient_scope` の 403 を返す場合、Claude Code は同じピン留めされたスコープで再認証します。必要なツールが pin の外側のスコープを必要とする場合は、`oauth.scopes` を拡張してください。986サーバーが後でツール呼び出しに対して 403 `insufficient_scope` を返す場合、Claude Code は同じピン留めされたスコープで再認証します。ピン留めされたセット外のスコープが必要なツールが必要な場合は、`oauth.scopes` を拡張してください。

759 987 

760<h3 id="use-dynamic-headers-for-custom-authentication">988<h3 id="use-dynamic-headers-for-custom-authentication">

761 カスタム認証用の動的ヘッダーを使用する989 カスタム認証に動的ヘッダーを使用する

762</h3>990</h3>

763 991 

764MCP サーバーが OAuth 以外の認証スキーム(Kerberos、短期トークン、内部 SSO など)を使用する場合、`headersHelper` を使用して接続時にリクエストヘッダーを生成します。Claude Code はコマンドを実行し、その出力を接続ヘッダーにマージします。992MCP サーバーが Kerberos、短命トークン、または内部 SSO などの OAuth 以外の認証スキームを使用する場合は、`headersHelper` を使用して接続時にリクエストヘッダーを生成してください。Claude Code はコマンドを実行し、その出力を接続ヘッダーにマージします。

765 993 

766```json theme={null}994```json theme={null}

767{995{


775}1003}

776```1004```

777 1005 

778コマンドはインラインにすることもできます:1006コマンドはインラインにすることもできます。

779 1007 

780```json theme={null}1008```json theme={null}

781{1009{


792**要件:**1020**要件:**

793 1021 

794* コマンドは文字列キーと値のペアの JSON オブジェクトを stdout に書き込む必要があります1022* コマンドは文字列キーと値のペアの JSON オブジェクトを stdout に書き込む必要があります

795* コマンドは 10 秒のタイムアウト付きのシェルで実行されます。セッションの現在の作業ディレクトリから実行します。スクリプトには絶対パスまたは `PATH` 上のコマンドを使用してください1023* Claude Code はコマンドをシェルで実行し、10 秒後にそれを放棄します

1024* Claude Code は[サーバーを設定した場所](#where-the-helper-runs)によってコマンドの作業ディレクトリを選択するため、スクリプトを絶対パスとして指定するか、`PATH` に配置してください

796* 動的ヘッダーは同じ名前の静的 `headers` をオーバーライドします1025* 動的ヘッダーは同じ名前の静的 `headers` をオーバーライドします

797 1026 

798ヘルパーは各接続時に実行されます(セッション開始時と再接続時)。キャッシングはないため、スクリプトはトークンの再利用を担当します。1027Claude Code は各接続時にヘルパーを新たに実行します。セッション開始時と再接続時に、[プロジェクトおよびローカルスコープサーバーの信頼ルール](#trust-a-folder-before-its-headershelper-runs)がそれを実行できるようにします。結果をキャッシュしないため、スクリプトはトークンの再利用を担当します。

1028 

1029ツール呼び出しが `401 Unauthorized` または `403 Forbidden` を返す場合、Claude Code は自動的に同じルールの下でヘルパーを再実行し、新しいヘッダーで再接続し、呼び出しを 1 回再試行します。その再試行も失敗した場合にのみ、Claude Code は `/mcp` でサーバーを認証が必要としてマークします。

1030 

1031ヘルパーの出力に `Authorization` ヘッダーが含まれている場合、Claude Code はその認証情報をサーバーの認証として使用し、サーバーの OAuth にフォールバックしません。

799 1032 

800v2.1.193 以降、ツール呼び出しが `401 Unauthorized` または `403 Forbidden` を返す場合、Claude Code は自動的にヘルパーを再実行し、新しいヘッダーで再接続し、呼び出しを 1 回再試行します。Claude Code は、その再試行も失敗した場合にのみ、サーバーが `/mcp` で認証を必要とするとマークします。1033サーバーが接続中にヘルパーの認証情報を拒否する場合、Claude Code はサーバーを認証が必要としてマークする代わりに、接続が失敗したことを報告します。ヘルパーが返す認証情報を修正してから、`/mcp` から再接続してヘルパーを再実行してください。

801 1034 

802Claude Code は、ヘルパーを実行するときにこれらの環境変数を設定します:1035Claude Code はヘルパーを実行するときに、これらの環境変数を設定します。

803 1036 

804| 変数 | 値 |1037| 変数 | 値 |

805| :---------------------------- | :------------------------------------------------------------------------------- |1038| :---------------------------- | :------------------------------------------------------------------------------ |

806| `CLAUDE_CODE_MCP_SERVER_NAME` | MCP サーバーの名前 |1039| `CLAUDE_CODE_MCP_SERVER_NAME` | MCP サーバーの名前 |

807| `CLAUDE_CODE_MCP_SERVER_URL` | MCP サーバーの URL |1040| `CLAUDE_CODE_MCP_SERVER_URL` | MCP サーバーの URL |

808| `CLAUDE_PLUGIN_ROOT` | プラグインのルートディレクトリ。[プラグイン](/docs/ja/plugins-reference#mcp-servers) がサーバーを提供する場合にのみ設定されます |1041| `CLAUDE_PLUGIN_ROOT` | プラグインのルートディレクトリ。[プラグイン](/docs/ja/plugins-reference#mcp-servers)がサーバーを提供する場合にのみ設定されます |

809 1042 

810これらを使用して、複数の MCP サーバーに対応する単一のヘルパースクリプトを作成できます。1043これらを使用して、複数の MCP サーバーに対応する単一のヘルパースクリプトを作成してください。

811 1044 

812プラグイン提供のサーバーの場合、ヘルパーはそのワーキングディレクトリをプラグインルートに設定して実行されるため、相対 `headersHelper` パスはセッションのワーキングディレクトリに対してではなくプラグインディレクトリ内で解決されます。Claude Code v2.1.195 以降が必要です。1045プラグイン提供の `headersHelper` はプラグインの [`${user_config.*}`](/docs/ja/plugins-reference#user-configuration) 値を参照できません。コマンドはシェルを通じて実行されるためです。Claude Code はサーバーを設定ミスとして [エラー](/docs/ja/errors#plugin-command-references-user-config)で報告し、値を置換しません。代わりに、シェル解析されない `headers` フィールドに `${user_config.KEY}` を配置するか、ヘルパースクリプトに設定ファイルから値を読み込ませてください。v2.1.207 より前は、`headersHelper` は `${user_config.*}` 値を置換していました。

813 1046 

814プラグイン提供の `headersHelper` はプラグインの [`${user_config.*}`](/docs/ja/plugins-reference#user-configuration) 値を参照できません。コマンドはシェルを通じて実行されるためです。Claude Code はサーバーを [エラー](/docs/ja/errors#plugin-command-references-user-config) で設定が正しくないと報告し、値を置換しません。`${user_config.KEY}` をサーバーの `headers` フィールドに配置してください。これはシェル解析されません。または、ヘルパースクリプトが独自の環境またはコンフィグファイルから値を読み取るようにしてください。v2.1.207 より前は、`headersHelper` は `${user_config.*}` 値を置換していました。1047<h4 id="where-the-helper-runs">

1048 ヘルパーが実行される場所

1049</h4>

815 1050 

816<Note>1051Claude Code は、サーバーを宣言する設定から `headersHelper` コマンドの作業ディレクトリを選択します。Claude が Bash で実行する `cd` はそれを移動しません。[`/cd`](/docs/ja/permissions#move-the-session-to-another-directory)はセッションのプライマリ作業ディレクトリから実行されるサーバーのみを移動します。以下の各行は、`headersHelper` コマンドの相対パスが解決される対象のディレクトリを示します。

817 `headersHelper` は任意のシェルコマンドを実行します。プロジェクトまたはローカルスコープで定義されている場合、ワークスペース信頼ダイアログを受け入れた後にのみ実行されます。1052 

818</Note>1053| サーバーを設定した場所 | 作業ディレクトリ |

1054| :---------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------ |

1055| [プラグイン](/docs/ja/plugins-reference#mcp-servers) | プラグインのルートディレクトリ。Claude Code v2.1.195 以降が必要です |

1056| プロジェクト `.mcp.json` または [ローカルスコープ](#local-scope)サーバー | サーバーが宣言されているプロジェクトディレクトリ |

1057| プロジェクト内のエージェントファイル、SDK の `mcpServers` オプションまたは `setMcpServers()` メソッドからのサーバー、または [`--mcp-config`](/docs/ja/cli-reference) | セッションの[プライマリ作業ディレクトリ](/docs/ja/permissions#working-directories) |

1058| [ユーザースコープ](#user-scope)、[管理 MCP](/docs/ja/managed-mcp)、[claude.ai コネクタ](#use-mcp-servers-from-claude-ai)、またはプロジェクト外のエージェントファイル(`--add-dir` ディレクトリからのものを含む) | 設定ディレクトリ `~/.claude`([`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars)を設定していない場合) |

1059 

1060v2.1.238 より前は、Claude Code はユーザースコープ、管理、および claude.ai コネクタサーバーのヘルパー、およびプロジェクト外のエージェントファイルのヘルパーも、それを開始したディレクトリから実行していました。

1061 

1062<h4 id="which-variables-a-helper-can-read">

1063 ヘルパーが読み取ることができる変数

1064</h4>

1065 

1066リポジトリまたはプラグインが提供する `headersHelper` は、書いていないコマンドなため、Claude Code はそれを環境から認証情報変数なしで実行します(`ANTHROPIC_API_KEY` など)。サーバーを設定した場所によって、これが適用されるかどうかが決まります。

1067 

1068* **削除される**:プロジェクト `.mcp.json` またはプラグイン内のサーバー、およびプロジェクトからのエージェントファイルまたは `--add-dir` ディレクトリからのインラインサーバー

1069* **削除されない**:[ユーザー](#user-scope)または[ローカルスコープ](#local-scope)、[管理 MCP](/docs/ja/managed-mcp)、[claude.ai コネクタ](#use-mcp-servers-from-claude-ai)、または SDK または [`--mcp-config`](/docs/ja/cli-reference) から提供されるサーバー、および `~/.claude/agents/` からのインラインサーバー、管理設定から、または `--agents` で渡されるもの

1070 

1071Git の `GIT_CONFIG_KEY_<n>` 変数を除き、Claude Code は環境から `TOKEN`、`SECRET`、`PASSWORD`、`KEY`、または `AUTH` を含む名前のような認証情報のように見える名前を持つすべての変数を削除します。したがって、`ANTHROPIC_API_KEY` と `MY_REGISTRY_TOKEN` の両方が削除されます。Claude Code は、`ANTHROPIC_CUSTOM_HEADERS` などの名前がそのパターンに従わない固定リストの認証情報変数も削除します。

1072 

1073これがヘルパーに適用される場合は、スクリプトにファイルまたは認証情報ストアから認証情報を読み込ませてください。サーバーの `url` が[これらの変数のいずれかを展開する](#environment-variable-expansion-in-mcp-json)場合、ヘルパーが受け取る `CLAUDE_CODE_MCP_SERVER_URL` 値にはその部分が `REDACTED` に置き換えられています。

1074 

1075<h4 id="trust-a-folder-before-its-headershelper-runs">

1076 headersHelper が実行される前にフォルダーを信頼する

1077</h4>

1078 

1079Claude Code は `headersHelper` を任意のシェルコマンドとして実行します。プロジェクト `.mcp.json` 内のサーバーまたは[ローカルスコープ](#local-scope)の場合、サーバーが宣言されているプロジェクトディレクトリの[信頼ダイアログ](/docs/ja/permissions#project-allow-rules-and-workspace-trust)を受け入れた後にのみ、ヘルパーを実行します。v2.1.238 より前は、`claude -p` または SDK セッションはこれらのヘルパーを信頼をチェックせずに実行していました。対話セッションは親フォルダーを信頼した後に 1 回実行していました。

1080 

1081* **カウントされない信頼**:親フォルダーの信頼、および `claude -p` または SDK セッションが[設定ファイルのフック](/docs/ja/permissions#what-runs-before-you-trust-a-folder)に対して取得する自動信頼

1082* **フォルダーを信頼するまで**:Claude Code は静的 `headers` のみでサーバーを接続します。`claude -p` または SDK セッションでは、1 つの [`headersHelper not run`](/docs/ja/errors#headershelper-not-run) 行を stderr に出力し、信頼を付与する方法を示します。

1083* **ダイアログなしで信頼する**:`~/.claude.json` で `projects["<path>"].hasTrustDialogAccepted` を `true` に設定してください。`<path>` は、[プロジェクト許可ルールとワークスペース信頼](/docs/ja/permissions#project-allow-rules-and-workspace-trust)が Claude Code がキーを設定するフォルダーです。

1084 

1085Claude Code は[エージェントファイル](/docs/ja/sub-agents#scope-mcp-servers-to-a-subagent)で宣言されたサーバーに同じルールを適用し、そのエージェントファイルがどこから来たかをチェックします。プロジェクト内のファイルの場合は `.claude/agents/` ディレクトリから、または `--add-dir` ディレクトリから。[そのプロジェクトまたはディレクトリ自体を信頼する](/docs/ja/permissions#what-runs-before-you-trust-a-folder)まで、Claude Code はサーバーをロードしません。したがって、そのヘルパーも実行されません。

819 1086 

820<h2 id="add-mcp-servers-from-json-configuration">1087<h2 id="add-mcp-servers-from-json-configuration">

821 JSON 設定から MCP サーバーを追加する1088 JSON 設定から MCP サーバーを追加する


893</Tip>1160</Tip>

894 1161 

895<h2 id="use-mcp-servers-from-claude-ai">1162<h2 id="use-mcp-servers-from-claude-ai">

896 Claude.ai から MCP サーバーを使用する1163 claude.ai から MCP サーバーを使用する

897</h2>1164</h2>

898 1165 

899[Claude.ai](https://claude.ai) アカウントで Claude Code にログインしている場合、Claude.ai で追加した MCP サーバーは、[connectors](https://claude.com/docs/connectors) として知られており、Claude Code で自動的に利用可能です:1166[claude.ai](https://claude.ai) アカウントで Claude Code にログインしている場合、claude.ai に追加した MCP サーバー([connectors](https://claude.com/docs/connectors) として知られています)は Claude Code で自動的に利用可能になります。

900 1167 

901<Steps>1168<Steps>

902 <Step title="Claude.ai で MCP サーバーを設定する">1169 <Step title="claude.ai で MCP サーバーを設定する">

903 [claude.ai/customize/connectors](https://claude.ai/customize/connectors) でサーバーを追加します。Team および Enterprise プランでは、管理者のみがサーバーを追加できます。1170 [claude.ai/customize/connectors](https://claude.ai/customize/connectors) でサーバーを追加します。Team および Enterprise プランでは、管理者のみがサーバーを追加できます。

904 </Step>1171 </Step>

905 1172 

906 <Step title="MCP サーバーを認証する">1173 <Step title="MCP サーバーを認証する">

907 Claude.ai で必要な認証ステップを完了します。1174 claude.ai で必要な認証ステップを完了します。

908 </Step>1175 </Step>

909 1176 

910 <Step title="Claude Code でサーバーを表示および管理する">1177 <Step title="Claude Code でサーバーを表示および管理する">

911 Claude Code で、以下のコマンドを使用します:1178 Claude Code で、次のコマンドを使用します。

912 1179 

913 ```text theme={null}1180 ```text wrap theme={null}

914 /mcp1181 /mcp

915 ```1182 ```

916 1183 

917 Claude.ai のサーバーはリストに表示され、Claude.ai から来ていることを示すインジケータが付きます。1184 claude.ai からのサーバーはリストに表示され、claude.ai から来たことを示すインジケーターが付きます。

918 </Step>1185 </Step>

919</Steps>1186</Steps>

920 1187 

921v2.1.161 以降、以前にサインインしたことのないコネクタは、claude.ai セクションの最後にある `Show unused connectors` 行の背後に折りたたまれているため、組織がプロビジョニングしたリストがパネルを埋めることはありません。その行を選択して展開します。以前にサインインしたコネクタは、現在再認証が必要な場合でも表示されたままです。1188Claude Code は、組織が claude.ai で認証を管理している場合、`/mcp` および [`/plugin`](/docs/ja/plugins) マネージャーで connector を `managed` としてマークします。Managed ステータスは、Claude Code が connector に接続する方法や、組織の [tool controls](#organization-controls-on-connector-tools) を適用する方法を変更しません。

922 1189 

923Claude.ai コネクタは、アクティブな [認証方法](/docs/ja/authentication#authentication-precedence) が Claude.ai サブスクリプションである場合にのみ取得されます。`ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN`、`apiKeyHelper`、または Amazon Bedrock や Google Cloud の Agent Platform などのサードパーティプロバイダーがアクティブな場合は読み込まれません。以前に `/login` を実行した場合でも同様です。`/mcp` で追加したコネクタがリストされない場合は、`/status` を実行してアクティブな認証方法を確認し、その環境変数を設定解除するか `apiKeyHelper` 設定を削除してから、`/login` を実行して Claude.ai アカウントを選択します。1190まだサインインしたことのない Connector は、claude.ai セクションの最後にある `Show unused connectors` 行の背後に折りたたまれているため、組織がプロビジョニングしたリストがパネルを満たしません。その行を選択して展開します。以前にサインインした Connector は、現在再認証が必要な場合でも表示されたままです。

924 1191 

925Claude Code で追加したサーバーは、同じ URL を指す claude.ai コネクタより [優先](#scope-hierarchy-and-precedence) されます。この場合、`/mcp` はコネクタを非表示としてリストし、代わりにコネクタを使用する場合は重複を削除する方法を表示します。1192claude.ai からの Connector は、アクティブな [authentication method](/docs/ja/authentication#authentication-precedence) が claude.ai サブスクリプションログインである場合にのみ取得されます。以前に `/login` を実行した場合でも、次の場合は読み込まれません。

926 1193 

927Microsoft 365、Gmail、Google Calendar などの一部の Anthropic ホスト型コネクタは、アップストリーム ID プロバイダーが claude.ai が登録したリダイレクト URL のみを受け入れるため、Claude Code からのローカル OAuth をサポートしていません。v2.1.162 以降、これらのホストのいずれかを `/mcp` で認証すると、代わりに claude.ai の Settings → Connectors で接続するよう指示するメッセージが表示されます。そこで接続されると、コネクタは Claude Code に自動的に表示されます。1194* `ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN`、または `apiKeyHelper` がアクティブ

1195* Amazon Bedrock や Google Cloud の Agent Platform などのサードパーティプロバイダーがアクティブ

1196* `ANTHROPIC_PROFILE`、フェデレーション変数、またはアクティブな [Anthropic profile](/docs/ja/authentication#anthropic-profiles-and-federation-credentials) が認証情報を提供

1197* `CLAUDE_CODE_OAUTH_TOKEN` が [`claude setup-token`](/docs/ja/authentication#generate-a-long-lived-token) からのトークンを保持している(モデルリクエストのみを実行できます)

928 1198 

929<h3 id="organization-controls-on-connector-tools">1199`/mcp` が追加した connector をリストしない場合は、`/status` を実行してどの authentication method がアクティブであるかを確認します。その環境変数を設定解除し、`apiKeyHelper` 設定を削除するか、[profile をオフに切り替え](/docs/ja/authentication#anthropic-profiles-and-federation-credentials)、`/login` を実行して claude.ai アカウントを選択します。

930 組織のコネクタツールに対する制御1200 

1201一時的なネットワーク問題により、セッション開始時に connector リストが読み込まれない場合、Claude Code はバックグラウンドで最大 3 回再試行し、再試行が成功すると connector が表示されます。まだ表示されていない場合は、Claude Code を再起動してリストを再度取得します。

1202 

1203`/mcp` が connector を `connected · session token rejected` として表示する場合、またはその詳細ビューが [`claude.ai rejected the session token`](/docs/ja/errors#claude-ai-rejected-the-session-token) を表示する場合、claude.ai は Claude Code ログインからのトークンを拒否しました。通常、ログインの有効期限が切れて更新できなかったためです。connector を再度認証しても、connector 自体の認証が拒否されたわけではないため、この状態はクリアされません。クリアするには、以下を実行します。

1204 

12051. `/login` を実行して再度サインインします。

12062. `/mcp` から connector を再度接続します。

1207 

1208v2.1.222 より前では、Claude Code は connector を認証が必要として マークしていました。これを認証しても解決しませんでした。

1209 

1210Claude Code で追加したサーバーは、同じ URL を指す claude.ai connector よりも [precedence](#scope-hierarchy-and-precedence) を持ちます。これが発生すると、`/mcp` は connector を hidden としてリストし、代わりに connector を使用する場合は重複を削除する方法を表示します。

1211 

1212Microsoft 365、Gmail、Google Calendar などの一部の Anthropic ホスト connector は、アップストリーム ID プロバイダーが claude.ai が登録したリダイレクト URL のみを受け入れるため、Claude Code からのローカル OAuth をサポートしていません。`claude mcp add` または `.mcp.json` で追加したサーバーがこれらのホストの 1 つを指し、`/mcp` から、または `claude mcp login` でサインインすると、Claude Code は [`is Anthropic-hosted and doesn't support local OAuth`](/docs/ja/errors#anthropic-hosted-and-doesnt-support-local-oauth) を表示し、代わりに [claude.ai/customize/connectors](https://claude.ai/customize/connectors) でサービスを接続するよう指示します。

1213 

1214`claude mcp remove <name>` でエントリを削除し、claude.ai でサービスを接続した後、connector は Claude Code に自動的に表示されます。

1215 

1216<h3 id="how-connectors-reach-claude-code">

1217 Connector が Claude Code に到達する方法

931</h3>1218</h3>

932 1219 

933組織は [claude.ai connectors](https://claude.com/docs/connectors) に対してツール単位の制御を設定できます。Claude Code はスタートアップ時にこれらの設定を読み取り、ローカルで強制します。`/mcp` を実行して、各ツールに適用される設定を確認します。1220claude.ai connector を管理する設定は、セッションが実行される場所によって異なります。セッションの種類によっては、claude.ai 自体から connector を取得するセッションのみがあるためです。以下の各行は、1 種類のセッションで connector がどのように到達するか、およびそこで何が connector を制御するかを示しています。デスクトップアプリの [WSL sessions](/docs/ja/desktop-wsl#what-works-in-a-wsl-session) には、connector がまだ利用できないため、行がありません。

1221 

1222| セッションが実行される場所 | Connector がどのように到達するか | 何が connector を管理するか |

1223| :------------------------------------------------------------------------------------------------------------------- | :--------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------ |

1224| Terminal、[VS Code](/docs/ja/vs-code)、[JetBrains](/docs/ja/jetbrains)、および [Agent SDK](/docs/ja/agent-sdk/claude-code-features) セッション | Claude Code が claude.ai から取得 | このセクションの設定および [managed MCP configuration](/docs/ja/managed-mcp) |

1225| [Cloud sessions](/docs/ja/claude-code-on-the-web) | リモートホストが渡す | claude.ai 組織設定、および [allowlist と denylist](/docs/ja/managed-mcp#policy-based-control-with-allowlists-and-denylists) 設定がセッションに到達し、セッションを実行するホスト上の `managed-mcp.json` |

1226| [desktop app](/docs/ja/desktop) のローカルおよび SSH セッション | デスクトップアプリが in-process で配信 | 組織の [connector tool controls](#organization-controls-on-connector-tools) の `blocked` エントリ |

934 1227 

935* **ツールが `ask` に設定されている場合**:Claude Code は `Your organization requires approval for this tool` という理由で毎回呼び出しのたびにプロンプトを表示します。プロンプトは `acceptEdits`、`auto`、`bypassPermissions` [権限モード](/docs/ja/permissions#permission-modes) でも表示され、選択を記憶するオプションは提供されません。ツールに一致する [Allow ルール](/docs/ja/permissions) もプロンプトをスキップしません。プロンプトを表示しない `dontAsk` モードでは、Claude Code は代わりに呼び出しを拒否します。1228[`disableClaudeAiConnectors`](#disable-claude-ai-connectors)、`ENABLE_CLAUDEAI_MCP_SERVERS`、および [`allowAllClaudeAiMcps`](/docs/ja/settings-reference#allowallclaudeaimcps) は最初の行のみに作用します。Claude Code が自体で取得する connector です。他の 2 つの行は次の点で異なります。

936* **ツールが `blocked` に設定されている場合**:Claude Code は Claude がそれを見る前にツールをフィルタリングするため、ツールリストに表示されません。

937 1229 

938これらの制御を強制するには Claude Code v2.1.129 以降が必要です。以前のバージョンは設定を無視し、標準的な権限フローを適用します。1230* **Cloud sessions**: セッションに到達する `allowedMcpServers` および `deniedMcpServers` エントリ(例えば [server-managed settings](/docs/ja/server-managed-settings) を通じて)は、配信された connector もフィルタリングします。セッションのプロキシは各 connector の URL を書き直すため、connector 自体の URL 用に書かれた `serverUrl` パターンはそれと一致しません。自己ホスト環境で URL allowlist と共に配信された connector を許可するには、[Connector traffic leaves your network](/docs/ja/self-hosted-environments-deploy#connector-traffic-leaves-your-network) の下にリストされている `serverUrl` エントリを追加します。セッションを実行するホスト(例えば [self-hosted runner host](/docs/ja/self-hosted-environments-configuration#mcp-servers))に `managed-mcp.json` が存在する場合、Claude Code は配信された connector をドロップします。`allowAllClaudeAiMcps` を設定するかどうかに関わらず。

1231* **Desktop app local and SSH sessions**: デスクトップアプリは connector を in-process `type: "sdk"` サーバーとして登録し、MCP 設定または `managed-mcp.json` は到達しません。ユーザーは [claude.ai/customize/connectors](https://claude.ai/customize/connectors) で connector を切断することで、自分のセッションから connector を除外します。組織は connector の [tools](#organization-controls-on-connector-tools) をブロックするか、[Claude Code in the desktop app](/docs/ja/desktop#admin-console-controls) を完全にオフにします。

1232 

1233<h3 id="organization-controls-on-connector-tools">

1234 Connector tools の組織コントロール

1235</h3>

1236 

1237組織は [claude.ai connectors](https://claude.com/docs/connectors) に tool ごとのコントロールを設定できます。Claude Code はこれらの設定をスタートアップ時に読み取り、ローカルで実行します。ただし、デスクトップアプリの [local and SSH sessions](#how-connectors-reach-claude-code) では除きます。そこでは、デスクトップアプリは connector を配信する前に `blocked` tool を保留し、`ask` 設定は Claude Code に到達しないため、セッションの通常の [permission rules](/docs/ja/permissions) をそれらの tool に適用し、すべての呼び出しでプロンプトを表示する代わりに。Claude Code が connector 自体を取得するセッションでは、`/mcp` を実行して、各 tool に適用される設定を connector で確認します。

1238 

1239* **Tool が `ask` に設定されている場合**: Claude Code は理由 `Your organization requires approval for this tool` ですべての呼び出しでプロンプトを表示します。プロンプトは `acceptEdits`、`auto`、および `bypassPermissions` [permission modes](/docs/ja/permissions#permission-modes) でも表示され、選択を記憶するオプションは提供されません。tool と一致する [Allow rules](/docs/ja/permissions) はプロンプトをスキップしません。プロンプトを表示しない `dontAsk` モードでは、Claude Code は呼び出しを代わりに拒否します。

1240* **Tool が `blocked` に設定されている場合**: Claude Code は Claude がそれを見る前に tool をフィルタリングするため、tool リストに表示されません。デスクトップアプリと claude.ai チャットは同じ `blocked` 設定を適用するため、Claude はそこでも tool を使用できず、デスクトップアプリのセッションから tool を保留しながらチャットで利用可能に保つことはできません。デスクトップアプリは tool がすべてブロックされている connector をスキップします。

939 1241 

940<h3 id="disable-claude-ai-connectors">1242<h3 id="disable-claude-ai-connectors">

941 Claude.ai コネクタを無効にする1243 claude.ai connector を無効にする

942</h3>1244</h3>

943 1245 

944Claude Code で claude.ai MCP サーバーを無効にするには、任意の設定スコープで [`disableClaudeAiConnectors`](/docs/ja/settings#available-settings) を `true` に設定します:1246Claude Code は [`disableClaudeAiConnectors`](/docs/ja/settings-reference#disableclaudeaiconnectors) を、[自体で取得する](#how-connectors-reach-claude-code) connector のみに適用し、クラウドホストまたはデスクトップアプリが配信する connector には適用しません。取得する connector をオフにするには、任意の設定スコープで設定を `true` に設定します。

945 1247 

946```json theme={null}1248```json theme={null}

947{1249{


949}1251}

950```1252```

951 1253 

952この設定は任意のソース true セマンティクスを使用します:任意の設定ソースの `true` が優先されます。チェックインされたプロジェクト `.claude/settings.json` はリポジトリをクラウドコネクタから除外できますが、プロジェクトレベルの `false` はユーザーレベルまたはポリシーレベルの `true` が無効にしたコネクタを再度有効にすることはできません。`--mcp-config` を介して明示的に渡されたサーバーは影響を受けません。1254この設定は any-source-true セマンティクスを使用します。任意の設定ソースの `true` が優先されます。チェックインされたプロジェクト `.claude/settings.json` は Claude Code が自体で取得する connector をリポジトリから除外できますが、プロジェクトレベルの `false` は、ユーザーまたはポリシーレベルの `true` が無効にした connector を再度有効にすることはできません。`--mcp-config` を通じて明示的に渡されたサーバーは影響を受けません。

953 1255 

954`ENABLE_CLAUDEAI_MCP_SERVERS` 環境変数を `false` に設定することもできます。これは現在のシェルセッションに対して同じ効果があります:1256`ENABLE_CLAUDEAI_MCP_SERVERS` 環境変数を `false` に設定することもできます。これは現在のシェルセッションに対して同じ効果があります。

955 1257 

956```bash theme={null}1258```bash theme={null}

957ENABLE_CLAUDEAI_MCP_SERVERS=false claude1259ENABLE_CLAUDEAI_MCP_SERVERS=false claude

958```1260```

959 1261 

960すべての claude.ai コネクタを無効にする代わりに個別の claude.ai コネクタをブロックするには、名前または URL パターンで [`deniedMcpServers`](/docs/ja/managed-mcp) に追加します。たとえば、`serverName` エントリ `"claude.ai Slack"` は Slack コネクタをブロックします。現在のプロジェクトのみのコネクタのオン/オフを切り替えるには、`/mcp` パネルを使用します。1262すべての claude.ai connector をブロックする代わりに個別の claude.ai connector をブロックするには、名前または URL パターンで [`deniedMcpServers`](/docs/ja/managed-mcp) に追加します。例えば、`serverName` エントリ `"claude.ai Slack"` は Slack connector をブロックします。また、`/mcp` を実行して、Claude Code が取得する任意の connector を現在のプロジェクトのみでオン/オフに切り替えることもできます。

961 

962<Note>

963 これらのクライアント側の設定は、ローカル Claude Code セッションを管理します。[Claude Code on the web](/docs/ja/claude-code-on-the-web) セッションでは、claude.ai コネクタはリモートホストによってプロビジョニングされ、明示的な `--mcp-config` エントリとして到着するため、`disableClaudeAiConnectors` は適用されません。コネクタ URL はセッションプロキシを通じて書き直されるため、ベンダー URL をターゲットとする `deniedMcpServers` `serverUrl` パターンは一致しません。クラウドセッションが使用できるコネクタを管理するには、claude.ai 組織設定から行います。

964</Note>

965 1263 

966<h2 id="use-claude-code-as-an-mcp-server">1264<h2 id="use-claude-code-as-an-mcp-server">

967 Claude Code を MCP サーバーとして使用する1265 Claude Code を MCP サーバーとして使用する

968</h2>1266</h2>

969 1267 

970Claude Code 自体を MCP サーバーとして使用でき、他のアプリケーションが接続できます:1268Claude Code 自体を MCP サーバーとして使用して、他のアプリケーションが接続できるようにすることができます。

971 1269 

972```bash theme={null}1270```bash theme={null}

973# Claude を stdio MCP サーバーとして起動する1271# Claude を stdio MCP サーバーとして起動する

974claude mcp serve1272claude mcp serve

975```1273```

976 1274 

977これを Claude Desktop で使用するには、この設定を claude\_desktop\_config.json に追加します:1275コマンドは起動時に何も出力しません。stdio MCP サーバーは stdin と stdout を介して通信するため、サイレント状態でブロックされたターミナルはサーバーが実行中で、クライアントの接続を待機していることを意味します。

1276 

1277Claude Desktop でこれを使用するには、claude\_desktop\_config.json にこの設定を追加します。

978 1278 

979```json theme={null}1279```json theme={null}

980{1280{


990```1290```

991 1291 

992<Warning>1292<Warning>

993 **実行可能ファイルパスの設定**:`command` フィールドは Claude Code 実行可能ファイルを参照する必要があります。`claude` コマンドがシステムの PATH にない場合は、実行可能ファイルへの完全なパスを指定する必要があります。1293 **実行可能ファイルパスの設定**: `command` フィールドは Claude Code 実行可能ファイルを参照する必要があります。`claude` コマンドがシステムの PATH にない場合は、実行可能ファイルへの完全なパスを指定する必要があります。

994 1294 

995 完全なパスを見つけるには:1295 完全なパスを見つけるには:

996 1296 


998 which claude1298 which claude

999 ```1299 ```

1000 1300 

1001 その後、設定で完全なパスを使用します:1301 次に、設定で完全なパスを使用します。

1002 1302 

1003 ```json theme={null}1303 ```json theme={null}

1004 {1304 {


1013 }1313 }

1014 ```1314 ```

1015 1315 

1016 正しい実行可能ファイルパスがないと、`spawn claude ENOENT` のようなエラーが発生します。1316 正しい実行可能ファイルパスがない場合、`spawn claude ENOENT` などのエラーが発生します。

1017</Warning>1317</Warning>

1018 1318 

1019<Tip>1319<Tip>

1020 ヒント:1320 ヒント:

1021 1321 

1022 * サーバーは View、Edit、LS などの Claude のツールへのアクセスを提供します1322 * Claude Desktop では、Claude にディレクトリ内のファイルを読み取り、編集などを行うよう依頼してみてください。

1023 * Claude Desktop で、Claude にディレクトリ内のファイルを読み取り、編集などを行うよう依頼してみてください。1323 * この MCP サーバーは Claude Code のツールのみを MCP クライアントに公開するため、独自のクライアントは個別のツール呼び出しのユーザー確認を実装する責任があります。

1024 * この MCP サーバーは Claude Code のツールのみを MCP クライアントに公開しているため、独自のクライアントは個々のツール呼び出しのユーザー確認を実装する責任があります。

1025</Tip>1324</Tip>

1026 1325 

1027<h2 id="mcp-output-limits-and-warnings">1326<h2 id="mcp-output-limits-and-warnings">

1028 MCP 出力制限と警告1327 MCP 出力制限と警告

1029</h2>1328</h2>

1030 1329 

1031MCP ツールが大きな出力を生成する場合、Claude Code はトークン使用量を管理して、会話コンテキストが圧倒されるのを防ぐのに役立ちます:1330MCP ツールが大きな出力を生成する場合、Claude Code はトークン使用量を管理して、会話コンテキストが圧倒されるのを防ぐのに役立ちます。

1032 1331 

1033* **出力警告閾値**:Claude Code は MCP ツール出力が 10,000 トークンを超えると警告を表示します1332* **出力警告閾値**:Claude Code は、MCP ツール出力が 10,000 トークンを超える場合に警告を表示します

1034* **設定可能な制限**:`MAX_MCP_OUTPUT_TOKENS` 環境変数を使用して、許可される最大 MCP 出力トークンを調整できます1333* **設定可能な制限**:`MAX_MCP_OUTPUT_TOKENS` 環境変数を使用して、許可される最大 MCP 出力トークン数を調整できます

1035* **デフォルト制限**:デフォルトの最大値は 25,000 トークンです1334* **デフォルト制限**:デフォルトの最大値は 25,000 トークンです

1036* **スコープ**:環境変数は独自の制限を宣言しないツールに適用されます。[`anthropic/maxResultSizeChars`](#raise-the-limit-for-a-specific-tool) を設定するツールは、`MAX_MCP_OUTPUT_TOKENS` が何に設定されているかに関わらず、テキストコンテンツにその値を使用します。画像データを返すツールは引き続き `MAX_MCP_OUTPUT_TOKENS` の対象です1335* **スコープ**:環境変数は、独自の制限を宣言していないツールに適用されます。[`anthropic/maxResultSizeChars`](#raise-the-limit-for-a-specific-tool) を設定するツールは、`MAX_MCP_OUTPUT_TOKENS` に設定されている値に関係なく、テキストコンテンツに対してその値を代わりに使用します。画像データを返すツールは、引き続き `MAX_MCP_OUTPUT_TOKENS` の対象となります

1336* **制限を超える場合**:画像コンテンツのない結果が制限を超える場合、Claude Code はそれをファイルに保存し、会話内でファイルパスを名前とするメッセージに置き換えます。そのため、Claude はコンテンツが必要な場合にファイルを読み取ります。ファイルはセッションの `tool-results` ディレクトリ内の [`~/.claude/projects/`](/docs/ja/claude-directory#cleaned-up-automatically) に配置されます。

1037 1337 

1038大きな出力を生成するツールの制限を増やすには:1338大きな出力を生成するツールの制限を増やすには:

1039 1339 


1042claude1342claude

1043```1343```

1044 1344 

1045これは特に以下を行う MCP サーバーで役立ちます:

1046 

1047* 大規模なデータセットまたはデータベースをクエリする

1048* 詳細なレポートまたはドキュメントを生成する

1049* 広範なログファイルまたはデバッグ情報を処理する

1050 

1051<h3 id="raise-the-limit-for-a-specific-tool">1345<h3 id="raise-the-limit-for-a-specific-tool">

1052 特定のツールの制限を引き上げる1346 特定のツールの制限を引き上げる

1053</h3>1347</h3>

1054 1348 

1055MCP サーバーを構築している場合、ツールの `tools/list` 応答エントリで `_meta["anthropic/maxResultSizeChars"]` を設定することで、個々のツールがデフォルトの永続化ディスク閾値より大きい結果を返すことを許可できます。Claude Code はそのツールの閾値を注釈付き値に引き上げます。最大 500,000 文字のハードシーリングまで。1349MCP サーバーを構築している場合、ツールの `tools/list` レスポンスエントリで `_meta["anthropic/maxResultSizeChars"]` を設定することで、個別のツールがデフォルトの永続化ディスク閾値より大きい結果を返すことができます。Claude Code はそのツールの閾値を注釈付きの値に引き上げます。ただし、500,000 文字のハードシーリングまでです。

1056 1350 

1057これは、データベーススキーマまたは完全なファイルツリーなど、本質的に大きいが必要な出力を返すツールに役立ちます。注釈がない場合、デフォルト閾値を超える結果はディスクに永続化され、会話内のファイル参照に置き換えられます。1351これは、データベーススキーマや完全なファイルツリーなど、本質的に大きいが必要な出力を返すツールに役立ちます。注釈がない場合、デフォルト閾値を超える結果はディスクに永続化され、会話内のファイル参照に置き換えられます。

1058 1352 

1059```json theme={null}1353```json theme={null}

1060{1354{


1066}1360}

1067```1361```

1068 1362 

1069注釈はテキストコンテンツの `MAX_MCP_OUTPUT_TOKENS` とは独立して適用されるため、ユーザーは注釈を宣言するツールのために環境変数を引き上げる必要はありません。画像データを返すツールは引き続きトークン制限の対象です。1363注釈はテキストコンテンツに対して `MAX_MCP_OUTPUT_TOKENS` とは独立して適用されるため、ユーザーはそれを宣言するツールのために環境変数を引き上げる必要はありません。画像データを返すツールは、引き続きトークン制限の対象となります。

1070 1364 

1071<Warning>1365<Warning>

1072 特定の MCP サーバーで出力警告が頻繁に発生する場合は、`MAX_MCP_OUTPUT_TOKENS` 制限を増やすことを検討してください。制御していないサーバーの場合は、サーバー作成者に `anthropic/maxResultSizeChars` 注釈を追加するか、応答をページネーションするよう依頼することもできます。注釈は画像コンテンツを返すツールには影響しません。これらの場合、`MAX_MCP_OUTPUT_TOKENS` を引き上げることが唯一のオプションです。1366 制御していない特定の MCP サーバーで出力警告が頻繁に発生する場合は、`MAX_MCP_OUTPUT_TOKENS` 制限を増やすことを検討してください。サーバー作成者に `anthropic/maxResultSizeChars` 注釈を追加するか、レスポンスをページネーションするよう依頼することもできます。注釈は画像コンテンツを返すツールには効果がありません。それらの場合、`MAX_MCP_OUTPUT_TOKENS` を引き上げることが唯一のオプションです。

1073</Warning>1367</Warning>

1074 1368 

1075<h2 id="tool-input-schemas-with-a-root-level-combinator">1369<h2 id="tool-input-schemas-with-a-root-level-combinator">

1076 ツール入力スキーマとルートレベルのコンビネータ1370 ルートレベルのコンビネータを持つツール入力スキーマ

1077</h2>1371</h2>

1078 1372 

1079一部の MCP サーバーは、ツールの入力スキーマを JSON Schema ユニオンとして宣言し、スキーマの最上位に `anyOf`、`oneOf`、または `allOf` があります。Claude API はこれらのキーワードをスキーマルートで受け入れません。`properties` 内にネストされたコンビネータは受け入れます。これは Claude Code が変更されずに送信します。1373一部の MCP サーバーは、ツールの入力スキーマを JSON Schema ユニオンとして宣言し、スキーマの最上位に `anyOf`、`oneOf`、または `allOf` を配置しています。Claude API はこれらのキーワードをスキーマのルートで受け入れません。ただし、`properties` 内にネストされたコンビネータは受け入れており、Claude Code はそれらを変更せずに送信します。

1080 1374 

1081Claude Code v2.1.195 以降、ルートレベルのコンビネータを持つツールは利用可能なままです。API にツールを送信する前に、Claude Code はスキーマを単一のオブジェクトにフラット化し、ツールの説明の先頭に、どのパラメータグループが一緒に属しているかを Claude に伝える文を追加します:1375ルートレベルのコンビネータを持つツールは利用可能なままです。ツールを API に送信する前に、Claude Code はスキーマをフラット化して単一のオブジェクトにし、どのパラメータグループが一緒に属するかを Claude に伝える文をツールの説明の先頭に追加します。

1082 1376 

1083* `allOf`:すべてのブランチのプロパティがマージされ、各ブランチの `required` リストは引き続き適用されます1377* `allOf`:すべてのブランチからのプロパティがマージされ、各ブランチの `required` リストは引き続き適用されます

1084* `anyOf` と `oneOf`:すべてのブランチのプロパティがマージされ、各ブランチの `required` リストはスキーマによって強制されるのではなく、ツール説明で説明されます1378* `anyOf` と `oneOf`:すべてのブランチからのプロパティがマージされ、各ブランチの `required` リストはスキーマによって強制されるのではなく、ツールの説明に記述されます

1085 1379 

1086サーバーは Claude が選択した引数を受け取るため、サーバー側で組み合わせの検証を続けてください。1380サーバーは Claude が選択した引数を受け取るため、サーバー側で組み合わせの検証を続けてください。

1087 1381 

1088Claude Code が API が受け入れるスキーマを生成できない場合、またはリモート設定を受け取らないデプロイメント(オフラインマシンなど)では、そのツールをスキップし、理由をサーバーのログに記録し、サーバーの他のツールを利用可能なままにします。v2.1.195 より前のバージョンでは、入力スキーマにルートレベルの `anyOf`、`oneOf`、または `allOf` があるすべてのツールをスキップします。1382Claude Code が API が受け入れるスキーマを生成できない場合、またはスキーマの書き換えを有効にするリモート設定を受け取らないデプロイメントの場合、そのツール 1 つをスキップし、理由をサーバーのログに記録し、サーバーの他のツールは利用可能なままにします。v2.1.195 より前のバージョンは、入力スキーマにルートレベルの `anyOf`、`oneOf`、または `allOf` を持つすべてのツールをスキップします。

1383 

1384<h2 id="tools-with-invalid-input-schemas">

1385 無効な入力スキーマを持つツール

1386</h2>

1387 

1388Claude API はリクエスト内のすべてのツールの入力スキーマをチェックし、いずれかのスキーマが失敗すると、リクエスト全体を 400 エラーで拒否します。そのため、スキーマが不正な形式の MCP ツール 1 つがあると、それを含むすべてのリクエストが失敗します。Claude Code はサーバーのツールを読み込む際に API のチェックのうち 2 つを自身で実行し、それらのチェックに失敗するツールを除外するため、サーバーの他のツールは動作し続けます。

1389 

1390* トップレベルのプロパティ名は 1 ~ 64 文字の長さで、ASCII 文字と数字、`_`、`.`、`-` のみを使用する必要があります

1391* スキーマは JSON Schema draft 2020-12 メタスキーマに対して有効である必要があります。Claude Code は `$schema` を宣言していないスキーマと draft 2020-12 を宣言しているスキーマにこのチェックを適用します。他の方言を宣言しているスキーマはこのチェックをスキップしますが、上記のプロパティ名チェックは引き続き適用されます

1392 

1393Claude Code は [ルートレベルのコンビネータの書き換え](#tool-input-schemas-with-a-root-level-combinator) の後、実際に送信するスキーマに対してチェックを実行します。

1394 

1395Claude Code がツールを除外する場合、その理由をサーバーのログに記録し、除外したツールとその理由を Claude に伝えるため、ツールが見つからない理由を Claude に尋ねることができます。サーバーのスキーマを修正すると、Claude Code が次にサーバーのツールを読み込むときにツールが復帰します。

1396 

1397Claude Code は Anthropic から取得するフィーチャーフラグを通じて除外をオンにします。[フラグ取得がオフになっているデプロイメント](/docs/ja/env-vars#features-that-need-feature-flag-fetching) または フラグが到着したことのないマシン(エアギャップマシンなど)では、Claude Code はチェックを実行してサーバーのログにどのツールが拒否されるかを記録しますが、ツールのスキーマを API に送信します。API は [ツールの位置で名前を付けた 400 エラー](/docs/ja/errors#tool-input-schema-is-invalid) でそのスキーマを含むリクエストを拒否します。v2.1.216 より前では、デプロイメントはこれらのチェックを実行していませんでした。

1398 

1399[ルートレベルのコンビネータ処理](#tool-input-schemas-with-a-root-level-combinator) は独立しており、フラグ取得がオフの場合またはフラグが到着したことのない場合、独自の動作を保持します。

1089 1400 

1090<h2 id="require-approval-for-a-specific-tool">1401<h2 id="require-approval-for-a-specific-tool">

1091 特定のツールの承認を要求する1402 特定のツールに対して承認を要求する

1092</h2>1403</h2>

1093 1404 

1094MCP サーバーを構築している場合、ツールの `tools/list` 応答エントリで `_meta["anthropic/requiresUserInteraction"]` を `true` に設定することで、ツールがすべての呼び出しで明示的な承認を必要とするとマークできます。値は JSON ブール値 `true` である必要があります。他の値は無視されます。1405MCP サーバーを構築している場合、ツールの `tools/list` レスポンスエントリで `_meta["anthropic/requiresUserInteraction"]` を `true` に設定することで、そのツールがすべての呼び出しで明示的な承認を必要とするようにマークできます。値は JSON ブール値 `true` である必要があります。その他の値は無視されます。

1095 1406 

1096Claude Code は、`acceptEdits`、`auto`、`bypassPermissions` [権限モード](/docs/ja/permissions#permission-modes) でも、そのツールの権限プロンプトをすべての呼び出しで表示し、「今後は聞かない」オプションを提供しません。[許可ルール](/docs/ja/permissions#permission-rule-syntax) がツールと一致しても、プロンプトをスキップしません。`dontAsk` モードでは、プロンプトを表示しないため、Claude Code は呼び出しを拒否します。1407Claude Code は、`acceptEdits`、`auto`、`bypassPermissions` [権限モード](/docs/ja/permissions#permission-modes)でも、そのツールの権限プロンプトをすべての呼び出しで表示し、それに対して「今後は表示しない」オプションを提供しません。ツールに一致する [許可ルール](/docs/ja/permissions#permission-rule-syntax) もプロンプトをスキップしません。プロンプトを表示しない `dontAsk` モードでは、Claude Code は呼び出しを拒否します。

1097 1408 

1098プロンプトは人に到達する必要があります。[`--permission-prompt-tool`](/docs/ja/cli-reference#cli-flags) を使用した非対話型モードでは、フラグ付きツールのプロンプトツールからの `allow` 結果は、メッセージ `MCP tool requires user interaction; not supported via --permission-prompt-tool` を含む拒否に変換されます。Agent SDK の [`canUseTool` コールバック](/docs/ja/agent-sdk/permissions) はこれらの呼び出しを受け取り、承認できます。SDK ホストはユーザーに表示することが期待されるためです。1409プロンプトは人間に到達する必要があります。[`--permission-prompt-tool`](/docs/ja/cli-reference#cli-flags) を使用した非対話モードでは、フラグが付いたツールのプロンプトツールからの `allow` 結果は、メッセージ `MCP tool requires user interaction; not supported via --permission-prompt-tool` とともに拒否に変換されます。Agent SDK の [`canUseTool` コールバック](/docs/ja/agent-sdk/permissions) はこれらの呼び出しを受け取り、承認できます。これは、SDK アプリケーションがこれらを ユーザーに表示することが期待されているためです。

1099 1410 

1100これは、同意またはアクセス許可ステップなど、権限プロンプト自体がポイントであるツールに使用します。自動承認は人間が同意しないことを意味するため。同じサーバーの他のツールは通常の権限動作を保持します。1411これを使用するのは、権限プロンプト自体がポイントであるツール、たとえば同意またはアクセス許可ステップなど、自動承認は人間が同意しないことを意味する場合です。同じサーバーからの他のツールは、通常の権限動作を保持します。

1101 1412 

1102次の `tools/list` エントリは、1 つのツールを常に承認が必要とマークします。1413次の `tools/list` エントリは、1 つのツールを常に承認が必要なものとしてマークします。

1103 1414 

1104```json theme={null}1415```json theme={null}

1105{1416{


1111}1422}

1112```1423```

1113 1424 

1114`anthropic/requiresUserInteraction` 注釈には Claude Code v2.1.199 以降が必要です。以前のバージョンはそれを無視し、標準的な権限フローを適用します。1425`anthropic/requiresUserInteraction` アノテーションには Claude Code v2.1.199 以降が必要です。以前のバージョンはこれを無視し、標準的な権限フローを適用します。

1426 

1427[Remote Control](/docs/ja/remote-control) や [Agent SDK](/docs/ja/agent-sdk/overview) 上に構築されたアプリケーションなど、一部のサーフェスでは通常、1 タップでツール呼び出しを承認できます。このアノテーションでマークされたツールの場合、Claude Code は 1 タップアクションを保留し、代わりにツールの完全な権限プロンプトを表示するため、承認は依然としてプロンプトに答える人から得られます。

1115 1428 

1116セッションが [Remote Control](/docs/ja/remote-control) または SDK ホストに接続されている場合、Claude Code は権限リクエストをユーザーインタラクションが必要とマークするため、クライアントはワンタップ承認アクションの代わりにツールの権限プロンプトを表示します。1429Claude Code は、安全警告を含むものや、リモートサーフェスが表示できない常に許可オプションなど、ターミナルダイアログでのみ完全にレンダリングできる権限リクエストに対して、同じ方法で 1 タップ承認を保留します。その要求にはリモートコントロールではなく、ターミナルダイアログで答えます。Claude Code v2.1.214 以降が必要です。

1117 1430 

1118<h2 id="respond-to-mcp-elicitation-requests">1431<h2 id="respond-to-mcp-elicitation-requests">

1119 MCP 応答要求に対応する1432 MCP エリシテーション要求に応答する

1120</h2>1433</h2>

1121 1434 

1122MCP サーバーはタスク中に構造化された入力をあなたに要求するための応答要求を使用できます。サーバーが独自に取得できない情報が必要な場合、Claude Code は対話的なダイアログを表示し、あなたの応答をサーバーに返します。設定は不要です。応答要求ダイアログはサーバーが要求したときに自動的に表示されます。1435MCP サーバーは、エリシテーションを使用してタスク中に構造化された入力をリクエストできます。サーバーが独自に取得できない情報が必要な場合、Claude Code はインタラクティブなダイアログを表示し、応答をサーバーに返します。お客様側での設定は不要です。エリシテーションダイアログはサーバーがリクエストすると自動的に表示されます。

1436 

1437サーバーは 2 つの方法で入力をリクエストできます。

1123 1438 

1124サーバーは 2 つの方法で入力を要求できます:1439* **フォームモード**: Claude Code はサーバーで定義されたフォームフィールド(例えば、ユーザー名とパスワードプロンプト)を含むダイアログを表示します。フィールドに入力して送信します。

1440* **URL モード**: Claude Code はブラウザ URL を開いて認証または承認を行います。ブラウザでフローを完了してから、CLI で確認します。

1125 1441 

1126* **フォームモード**:Claude Code はサーバーで定義されたフォームフィールド(例:ユーザー名とパスワードプロンプト)を含むダイアログを表示します。フィールドに入力して送信します。1442URL モード では、Claude Code は URL をコマンドライン引数としてシステムの URL ハンドラーに渡し、その引数の長さに上限を設けます。コマンドラインのエスケープ後の URL がその上限を超える場合、リクエストを拒否することのみできます。`%` や `&` など、エスケープが必要なすべての文字は、上限に対して 4 倍カウントされます。その文字自体と 3 つのエスケープ文字です。これらを含まない URL は約 8,000 文字で上限に達します。3 番目の文字ごとに `%` があるパーセントエスケープで構成される URL は、約 4,000 で上限に達します。

1127* **URL モード**:Claude Code はブラウザ URL を開いて認証または承認を行います。ブラウザでフローを完了し、CLI で確認します。

1128 1443 

1129応答要求に自動応答するには、[`Elicitation` フック](/docs/ja/hooks#elicitation)を使用してください。1444ダイアログを表示せずにエリシテーション要求に自動応答するには、[`Elicitation` フック](/docs/ja/hooks#elicitation)を使用します。

1130 1445 

1131MCP サーバーを構築していて応答要求を使用する場合は、[MCP 応答要求仕様](https://modelcontextprotocol.io/docs/learn/client-concepts#elicitation)を参照してプロトコルの詳細とスキーマの例を確認してください。1446エリシテーションを使用する MCP サーバーを構築している場合は、プロトコルの詳細とスキーマの例については [MCP エリシテーション仕様](https://modelcontextprotocol.io/docs/learn/client-concepts#elicitation)を参照してください。

1132 1447 

1133<h2 id="use-mcp-resources">1448<h2 id="use-mcp-resources">

1134 MCP リソースを使用する1449 MCP リソースを使用する

1135</h2>1450</h2>

1136 1451 

1137MCP サーバーはリソースを公開でき、ファイルを参照する方法と同様に @ メンションを使用して参照できます。1452MCP サーバーは、ファイルを参照する方法と同様に、@ メンションを使用して参照できるリソースを公開できます。

1138 1453 

1139<h3 id="reference-mcp-resources">1454<h3 id="reference-mcp-resources">

1140 MCP リソースを参照する1455 MCP リソースを参照する

1141</h3>1456</h3>

1142 1457 

1143<Steps>1458<Steps>

1144 <Step title="利用可能なリソースをリストする">1459 <Step title="利用可能なリソースをリストアップする">

1145 プロンプトで `@` を入力して、接続されているすべての MCP サーバーから利用可能なリソースを表示します。リソースはオートコンプリートメニューのファイルと一緒に表示されます。1460 プロンプトで `@` を入力すると、接続されているすべての MCP サーバーから利用可能なリソースが表示されます。リソースはオートコンプリートメニューのファイルと一緒に表示されます。

1146 </Step>1461 </Step>

1147 1462 

1148 <Step title="特定のリソースを参照する">1463 <Step title="特定のリソースを参照する">

1149 `@server:protocol://resource/path` の形式を使用してリソースを参照します:1464 `@server:protocol://resource/path` の形式を使用してリソースを参照します。

1150 1465 

1151 ```text theme={null}1466 ```text wrap theme={null}

1152 Can you analyze @github:issue://123 and suggest a fix?1467 Can you analyze @github:issue://123 and suggest a fix?

1153 ```1468 ```

1154 1469 

1155 ```text theme={null}1470 ```text wrap theme={null}

1156 Please review the API documentation at @docs:file://api/authentication1471 Please review the API documentation at @docs:file://api/authentication

1157 ```1472 ```

1158 </Step>1473 </Step>

1159 1474 

1160 <Step title="複数のリソース参照">1475 <Step title="複数のリソース参照">

1161 1 つのプロンプトで複数のリソースを参照できます:1476 1 つのプロンプトで複数のリソースを参照できます。

1162 1477 

1163 ```text theme={null}1478 ```text wrap theme={null}

1164 Compare @postgres:schema://users with @docs:file://database/user-model1479 Compare @postgres:schema://users with @docs:file://database/user-model

1165 ```1480 ```

1166 </Step>1481 </Step>


1171 1486 

1172 * リソースは参照されると自動的に取得され、添付ファイルとして含まれます1487 * リソースは参照されると自動的に取得され、添付ファイルとして含まれます

1173 * リソースパスは @ メンションオートコンプリートでファジー検索可能です1488 * リソースパスは @ メンションオートコンプリートでファジー検索可能です

1174 * Claude Code はサーバーがサポートしている場合、MCP リソースをリストおよび読み取るツールを自動的に提供します1489 * Claude Code は、サーバーがサポートしている場合、MCP リソースをリストアップして読み取るためのツールを自動的に提供します

1175 * リソースには、MCP サーバーが提供するあらゆるタイプのコンテンツ(テキスト、JSON、構造化データなど)を含めることができます1490 * リソースには、MCP サーバーが提供するあらゆるタイプのコンテンツ(テキスト、JSON、構造化データなど)を含めることができます

1176</Tip>1491</Tip>

1177 1492 

1178<h2 id="scale-with-mcp-tool-search">1493<h2 id="scale-with-mcp-tool-search">

1179 MCP ツール検索でスケーリングする1494 MCP ツール検索でスケーリング

1180</h2>1495</h2>

1181 1496 

1182ツール検索は MCP コンテキスト使用量を低く保つことで、ツール定義をオンデマンドで遅延させます。セッション開始時にはツール名とサーバー命令のみがロードされるため、より多くの MCP サーバーを追加してもコンテキストウィンドウへの影響は最小限です。Claude Code は固定のサーバーごとのツール上限を課しません。実用的な制限はコンテキストウィンドウの予算です。1497ツール検索は、Claude がツールを必要とするまでツール定義を遅延させることで、MCP コンテキスト使用量を低く保ちます。セッション開始時にはツール名とサーバー指示のみが読み込まれるため、MCP サーバーを追加してもコンテキストウィンドウへの影響は最小限です。Claude Code はサーバーごとの固定ツール上限を課しません。実用的な上限はコンテキストウィンドウの予算です。

1183 

1184<h3 id="how-it-works">

1185 仕組み

1186</h3>

1187 

1188ツール検索はデフォルトで有効です。MCP ツールは事前にコンテキストにロードされるのではなく、遅延されます。Claude はタスクが必要な場合、検索ツールを使用して関連する MCP ツールを検出します。Claude が実際に使用するツールのみがコンテキストに入ります。あなたの視点からは、MCP ツールは以前と同じように機能します。

1189 1498 

1190しきい値ベースのロードを優先する場合は、`ENABLE_TOOL_SEARCH=auto` を設定して、コンテキストウィンドウの 10% 以内に収まる場合はスキーマを事前にロードし、オーバーフローのみを遅延させます。すべてのオプションについては、[ツール検索の設定](#configure-tool-search)を参照してください。1499<Note>

1500 ツール検索は Microsoft Foundry の[Azure でホストされているデプロイメント](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options)ではサポートされていません。これらのデプロイメントはサーバー側でツール検索を拒否します。Claude Code はこの拒否を検出し、そのデプロイメント用に MCP ツールを事前に読み込みます。[`ENABLE_TOOL_SEARCH`](#configure-tool-search) はデプロイメント自体からの拒否であるため、これをオーバーライドすることはできません。

1501</Note>

1191 1502 

1192<h3 id="for-mcp-server-authors">1503<h3 id="for-mcp-server-authors">

1193 MCP サーバー作成者向け1504 MCP サーバー作成者向け

1194</h3>1505</h3>

1195 1506 

1196MCP サーバーを構築している場合、ツール検索が有効になっているとサーバー命令フィールドがより有用になります。サーバー命令は、[スキル](/docs/ja/skills)の仕組みと同様に、Claude がいつサーバーのツールを検索するかを理解するのに役立ちます。1507MCP サーバーを構築している場合、ツール検索が有効になるとサーバー指示フィールドがより有用になります。サーバー指示は、[スキル](/docs/ja/skills)の動作方法と同様に、Claude がいつツールを検索すべきかを理解するのに役立ちます。

1197 1508 

1198明確で説明的なサーバー命令を追加して、以下を説明します:1509以下を説明する明確で説明的なサーバー指示を追加してください。

1199 1510 

1200* ツールが処理するタスクのカテゴリ1511* ツールが処理するタスクのカテゴリ

1201* Claude がツールを検索すべき場合1512* Claude がツールを検索すべき時期

1202* サーバーが提供する主な機能1513* サーバーが提供する主な機能

1203 1514 

1204Claude Code はツール説明とサーバー命令を各 2KB で切り詰めます。切り詰めを避けるために簡潔に保ち、重要な詳細を最初に配置してください。1515Claude Code はツール説明とサーバー指示を各 2KB で切り詰めます。切り詰めを避けるために簡潔に保ち、重要な詳細は最初の方に配置してください。

1205 1516 

1206<h3 id="configure-tool-search">1517<h3 id="configure-tool-search">

1207 ツール検索を設定する1518 ツール検索を設定する

1208</h3>1519</h3>

1209 1520 

1210ツール検索はデフォルトで有効です:MCP ツールは遅延され、オンデマンドで検出されます。Claude Code は Google Cloud の Agent Platform ではデフォルトで無効にします。`ANTHROPIC_BASE_URL` が非ファーストパーティホストを指している場合も無効です。ほとんどのプロキシは `tool_reference` ブロックを転送しないためです。`ENABLE_TOOL_SEARCH` を明示的に設定して、いずれかのフォールバックをオーバーライドしてください。1521ツール検索はデフォルトで有効です。MCP ツールは遅延され、オンデマンドで検出されます。Claude Code は `ANTHROPIC_BASE_URL` が非ファーストパーティホストを指している場合、ツール検索を無効にします。ほとんどのプロキシは `tool_reference` ブロックを転送しないためです。`ENABLE_TOOL_SEARCH` を明示的に設定して、そのフォールバックをオーバーライドします。

1522 

1523[`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/ja/env-vars) を設定するとツール検索がオフになります。`ENABLE_TOOL_SEARCH` を自分で設定してオーバーライドすることはできません。組織は [管理設定](/docs/ja/managed-settings)を通じて Claude Code v2.1.227 以降でツール検索をオンに保つことができます。[プリリリース機能を無効にする](/docs/ja/llm-gateway-protocol#disable-pre-release-capabilities)は、オーバーライドが適用される場所と変数が削除する内容をカバーしています。

1524 

1525ツール検索には `tool_reference` ブロックをサポートするモデルが必要です。Claude Sonnet 4.5、Claude Haiku 4.5、Claude Opus 4.5、およびそれ以降のモデルです。現在のリストについては、[API ドキュメントのモデル互換性](https://platform.claude.com/docs/en/agents-and-tools/tool-use/tool-search-tool#model-compatibility)を参照してください。

1526 

1527Google Cloud の Agent Platform では、Claude Code はモデル世代によって決定します。

1211 1528 

1212[`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/ja/env-vars)を設定するとツール検索がオフになり、`ENABLE_TOOL_SEARCH` はそれをオーバーライドできません。この変数は、`defer_loading` ツール定義と `tool_reference` コンテンツブロックが必要とするベータヘッダーを削除します。1529* **Claude Opus 4.5、Sonnet 4.5、Haiku 4.5、およびそれ以降**: ツール検索はデフォルトでオンです。Anthropic API と同じです。

1530* **以前の Agent Platform モデル**: Claude Code は必要なベータヘッダーを拒否するサーバースタックのため、すべての MCP ツールを事前に読み込みます。`ENABLE_TOOL_SEARCH=true` はこれをオーバーライドしません。

1213 1531 

1214ツール検索には、`tool_reference` ブロックをサポートするモデルが必要です:Claude Sonnet 4.5、Claude Haiku 4.5、Claude Opus 4.5、およびそれ以降のモデル。現在のリストについては、[API ドキュメントのモデル互換性](https://platform.claude.com/docs/en/agents-and-tools/tool-use/tool-search-tool#model-compatibility)を参照してください。Google Cloud の Agent Platform では、Claude Sonnet 4.5 以降および Claude Opus 4.5 以降でツール検索がサポートされています。1532v2.1.221 より前は、Claude Code は `ENABLE_TOOL_SEARCH=true` を設定しない限り、Google Cloud の Agent Platform 上のすべてのモデルに対してツール検索を無効にしていました。

1215 1533 

1216`ENABLE_TOOL_SEARCH` 環境変数でツール検索の動作を制御します:1534`ENABLE_TOOL_SEARCH` 環境変数でツール検索の動作を制御します。

1217 1535 

1218| 値 | 動作 |1536| 値 | 動作 |

1219| :------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |1537| :------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1220| (未設定) | すべての MCP ツールが遅延され、オンデマンドでロードされます。Google Cloud の Agent Platform または `ANTHROPIC_BASE_URL` が非ファーストパーティホストの場合は事前ロードにフォールバック |1538| (未設定) | すべての MCP ツールが遅延され、オンデマンドで読み込まれます。Google Cloud の Agent Platform の Claude 4.5 世代より前のモデル、`ANTHROPIC_BASE_URL` が非ファーストパーティホストの場合、または Azure でホストされている Microsoft Foundry デプロイメント上で事前読み込みにフォールバックします |

1221| `true` | すべての MCP ツールが遅延。Claude Code は Google Cloud の Agent Platform およびプロキシ経由でもベータヘッダーを送信します。Google Cloud の Agent Platform モデルが Sonnet 4.5 または Opus 4.5 より前の場合、または `tool_reference` ブロックをサポートしないプロキシの場合、リクエストは失敗します |1539| `true` | すべての MCP ツールが遅延されます。ただし、Azure でホストされている Microsoft Foundry デプロイメント上では、サーバー側の拒否により事前読み込みが強制され、Google Cloud の Agent Platform の Claude 4.5 世代より前のモデル上では、Claude Code はツール読み込みを事前に保ちます。Claude Code はベータヘッダーをプロキシ経由で送信し、`tool_reference` ブロックをサポートしないプロキシではリクエストが失敗します |

1222| `auto` | しきい値モード:ツールがコンテキストウィンドウの 10% 以内に収まる場合は事前ロード、そうでない場合は遅延 |1540| `auto` | しきい値モード。Claude Code は、定義の合計がコンテキストウィンドウの 10% 未満の間は、遅延させるツールを事前に読み込み、定義が 10% に達すると、すべてを遅延させます |

1223| `auto:N` | カスタムパーセンテージ付きしきい値モード。`N` は 0-100(例:5% の場合は `auto:5`) |1541| `auto:N` | カスタムパーセンテージを使用したしきい値モード。`N` は 0~100 です。たとえば、5% の場合は `auto:5` です |

1224| `false` | すべての MCP ツールが事前ロード、遅延なし |1542| `false` | すべての MCP ツールが事前に読み込まれ、遅延はありません |

1225 1543 

1226```bash theme={null}1544```bash theme={null}

1227# カスタム 5% しきい値を使用する1545# カスタム 5% しきい値を使用する


1231ENABLE_TOOL_SEARCH=false claude1549ENABLE_TOOL_SEARCH=false claude

1232```1550```

1233 1551 

1234または、[settings.json `env` フィールド](/docs/ja/settings#available-settings)で値を設定します。1552または [settings.json `env` フィールド](/docs/ja/settings-reference#env)で値を設定します。

1235 1553 

1236`ToolSearch` ツールを特別に無効にすることもできます:1554`ToolSearch` ツールを特別に無効にすることもできます。

1237 1555 

1238```json theme={null}1556```json theme={null}

1239{1557{


1247 サーバーを遅延から除外する1565 サーバーを遅延から除外する

1248</h3>1566</h3>

1249 1567 

1250サーバーのツールが検索ステップなしで常に Claude に表示される場合は、そのサーバーの設定で `alwaysLoad` を `true` に設定します。そのサーバーのすべてのツールは、`ENABLE_TOOL_SEARCH` 設定に関係なく、セッション開始時にコンテキストにロードされます。これは、Claude がすべてのターンで必要とする少数のツールに使用してください。各事前ロードツールはコンテキストを消費するため、会話に利用可能なコンテキストが減少します。1568サーバーのツールが常に Claude に表示され、検索ステップなしで利用可能にする場合は、そのサーバーの設定で `alwaysLoad` を `true` に設定します。そのサーバーのすべてのツールは、`ENABLE_TOOL_SEARCH` 設定に関係なく、セッション開始時にコンテキストに読み込まれます。これは、Claude がすべてのターンで必要とする少数のツール用に使用してください。事前読み込みされた各ツールは、会話に利用可能なコンテキストを消費するためです。

1251 1569 

1252次の `.mcp.json` エントリは、1 つの HTTP サーバーを除外し、他のサーバーは遅延したままにします:1570次の `.mcp.json` エントリは、1 つの HTTP サーバーを除外し、他のサーバーを遅延させたままにします。

1253 1571 

1254```json theme={null}1572```json theme={null}

1255{1573{


1263}1581}

1264```1582```

1265 1583 

1266`alwaysLoad` フィールドはすべてのサーバータイプで利用可能で、Claude Code v2.1.121 以降が必要です。MCP サーバーは、ツールの `_meta` オブジェクトに `"anthropic/alwaysLoad": true` を含めることで、個別のツールを常にロードとしてマークすることもできます。これはそのツールのみに同じ効果があります。1584`alwaysLoad` フィールドはすべてのサーバータイプで利用可能です。MCP サーバーは、ツールの `_meta` オブジェクトに `"anthropic/alwaysLoad": true` を含めることで、個別のツールを常に読み込まれるようにマークすることもできます。これはそのツールのみに同じ効果があります。

1267 1585 

1268`alwaysLoad: true` を設定すると、サーバーが接続されるまでスタートアップもブロックされます。これは標準的な 5 秒の接続タイムアウトでキャップされます。これは MCP スタートアップが[デフォルトではノンブロッキング](/docs/ja/env-vars)である場合でも適用されます。ツールは最初のプロンプトが構築されるときに存在する必要があるためです。他のサーバーはバックグラウンドで接続し続けます。1586`alwaysLoad: true` を設定すると、スタートアップはサーバーのツールを待機します。最初のプロンプトが構築されるときに存在する必要があるため、標準の 5 秒接続タイムアウトでキャップされます。有効な [`cached` エントリ](#server-status-detail)を持つリモートサーバーは、接続せずにキャッシュからツールを供給するため、スタートアップを保持しません。他のサーバーはデフォルトでバックグラウンドで接続します。[`MCP_CONNECTION_NONBLOCKING=0`](/docs/ja/env-vars) を設定して、スタートアップがそれらも待機するようにします。

1269 1587 

1270<h2 id="use-mcp-prompts-as-commands">1588<h2 id="use-mcp-prompts-as-commands">

1271 MCP プロンプトをコマンドとして使用する1589 MCP プロンプトをコマンドとして使用する

1272</h2>1590</h2>

1273 1591 

1274MCP サーバーはプロンプトを公開でき、Claude Code でコマンドとして利用可能になります。1592MCP サーバーは Claude Code でコマンドとして利用可能になるプロンプトを公開できます。

1275 1593 

1276<h3 id="execute-mcp-prompts">1594<h3 id="execute-mcp-prompts">

1277 MCP プロンプトを実行する1595 MCP プロンプトを実行する


1279 1597 

1280<Steps>1598<Steps>

1281 <Step title="利用可能なプロンプトを検出する">1599 <Step title="利用可能なプロンプトを検出する">

1282 `/` を入力して、MCP サーバーからのプロンプトを含むすべての利用可能なコマンドを表示します。MCP プロンプトは `/mcp__servername__promptname` の形式で表示されます。1600 `/` と入力して、MCP サーバーからのプロンプトを含む、利用可能なコマンドを確認します。Claude Code は各 MCP プロンプトを `/servername:promptname (MCP)` として一覧表示します。`/mcp__servername__promptname` と入力して実行することもできます。

1283 </Step>1601 </Step>

1284 1602 

1285 <Step title="引数なしでプロンプトを実行する">1603 <Step title="引数なしでプロンプトを実行する">

1286 ```text theme={null}1604 ```text wrap theme={null}

1287 /mcp__github__list_prs1605 /mcp__github__list_prs

1288 ```1606 ```

1289 </Step>1607 </Step>

1290 1608 

1291 <Step title="引数を使用してプロンプトを実行する">1609 <Step title="引数付きでプロンプトを実行する">

1292 多くのプロンプトは引数を受け入れます。コマンドの後にスペース区切りで渡します:1610 多くのプロンプトは引数を受け入れます。コマンドの後に空白で区切られた引数を渡します。Claude Code は引数を空白で分割するため、各引数は単一のトークンです:

1293 1611 

1294 ```text theme={null}1612 ```text wrap theme={null}

1295 /mcp__github__pr_review 4561613 /mcp__github__pr_review 456

1296 ```1614 ```

1297 1615 

1298 ```text theme={null}1616 ```text wrap theme={null}

1299 /mcp__jira__create_issue "ログインフローのバグ" high1617 /mcp__jira__create_issue login-bug high

1300 ```1618 ```

1301 </Step>1619 </Step>

1302</Steps>1620</Steps>


1304<Tip>1622<Tip>

1305 ヒント:1623 ヒント:

1306 1624 

1307 * MCP プロンプトは接続されているサーバーから動的に検出されます1625 * MCP プロンプトは接続されたサーバーから動的に検出されます

1308 * 引数はプロンプトの定義されたパラメータに基づいて解析されます1626 * 引数はプロンプトの定義されたパラメータに基づいて解析されます

1309 * プロンプト結果は会話に直接注入されます1627 * プロンプト結果は会話に直接注入されます

1310 * サーバーとプロンプト名は正規化されます(スペースはアンダースコアになります)1628 * `/mcp__servername__promptname` の形式では、Claude Code はサーバー名内の `A-Z`、`a-z`、`0-9`、`_`、および `-` 以外の文字を `_` に置き換え、サーバーが宣言したプロンプト名を使用します

1311</Tip>1629</Tip>

1312 1630 

1313<h2 id="managed-mcp-configuration">1631<h2 id="managed-mcp-configuration">

1314 管理対象 MCP 設定1632 管理対象 MCP 設定

1315</h2>1633</h2>

1316 1634 

1317MCP サーバーへのアクセスを集中管理する必要がある組織の場合は、[管理対象 MCP 設定](/docs/ja/managed-mcp)を参照してください。`managed-mcp.json` を使用した固定サーバーセットのデプロイ、`allowedMcpServers` と `deniedMcpServers` によるサーバーの制限、およびサーバーがブロックされた場合にユーザーに表示される内容について説明しています。1635MCP サーバーへの接続をユーザーが行えるかを一元管理する必要がある組織の場合は、[管理対象 MCP 設定](/docs/ja/managed-mcp)を参照してください。`managed-mcp.json` を使用した固定サーバーセットのデプロイ、`managedMcpServers` を使用したすべてのユーザーへのサーバー提供、`allowedMcpServers` と `deniedMcpServers` によるサーバーの制限、およびサーバーがブロックされた場合にユーザーに表示される内容について説明しています。

mobile.md +102 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# モバイルの Claude Code

6 

7> Claude アプリ for iOS と Android を使用して、携帯電話から Claude Code タスクを開始、監視、操作します。

8 

9Claude アプリ for [iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684) と [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude) は、コードが実行される場所ではなく、Claude Code セッションのクライアントです。携帯電話からクラウドインフラストラクチャ上の [クラウドセッション](#start-and-monitor-cloud-sessions)、[リモートコントロール](#continue-a-local-session-with-remote-control) を通じて自分のマシンで実行されているセッション、または [Dispatch](/docs/ja/desktop#sessions-from-dispatch) を通じて Desktop アプリにアクセスできます。

10 

11<Note>

12 Claude Code には別のモバイルアプリはありません。クラウドセッションとリモートコントロールは両方とも Claude アプリの **Code** タブに存在し、Dispatch はアプリでメッセージを送って依頼するタスクです。

13</Note>

14 

15<h2 id="get-the-app">

16 アプリを入手する

17</h2>

18 

19<Steps>

20 <Step title="Claude アプリをダウンロード">

21 Claude アプリを [iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684) または [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude) にインストールします。iPad では同じ iOS アプリをインストールしてください。

22 

23 <Tip>

24 Claude Code セッションで `/mobile` を実行すると、スキャンできるダウンロード QR コードが表示されます。`/ios` と `/android` も同じ機能です。

25 </Tip>

26 </Step>

27 

28 <Step title="サインイン">

29 Claude Code に使用するのと同じ claude.ai アカウントと組織でサインインします。クラウドセッションとリモートコントロールには claude.ai アカウントが必要なため、Anthropic Console API キーまたは Amazon Bedrock などのサードパーティプロバイダーからはアクセスできません。

30 </Step>

31 

32 <Step title="Code タブを開く">

33 アプリのナビゲーションで **Code** をタップしてセッションにアクセスするか、スマートフォンで [claude.ai/code/new](https://claude.ai/code/new) を開いてアプリで新しい Code セッションを開始します。Code タブが表示されない場合、お客様のプランまたは組織にこれらの機能が含まれていない可能性があります。[サブスクリプションプランごとの利用可能性](/docs/ja/feature-availability#availability-by-subscription-plan)を参照してください。

34 </Step>

35</Steps>

36 

37<h2 id="work-from-your-phone">

38 スマートフォンから作業する

39</h2>

40 

41アプリからクラウドセッションを開始したり、コンピュータで実行されている Claude Code セッションを操作したり、Dispatch にタスクをメッセージで送ったりできます。アプリはすべての 3 つで同じですが、作業が行われる場所が異なります。

42 

43| 機能 | 接続先 | 使用時期 |

44| :---------------------------------------------- | :--------------------------------------- | :---------------------------------------------------------------------------------------------------------- |

45| [Web の Claude Code](/docs/ja/claude-code-on-the-web) | Anthropic が管理するクラウドインフラストラクチャ上のクラウドセッション | リポジトリが GitHub 上にあり、スマートフォンを置いた後もタスクが実行され続ける必要がある場合。セットアップについては [Web クイックスタート](/docs/ja/web-quickstart)を参照してください。 |

46| [リモートコントロール](/docs/ja/remote-control) | コンピュータで実行されている Claude Code セッション | 作業にローカルファイルシステム、ツール、または MCP サーバーが必要な場合。 |

47| [Dispatch](/docs/ja/desktop#sessions-from-dispatch) | コンピュータの Desktop アプリ | タスクをメッセージで送信し、Dispatch に実行方法を決定させたい場合。Pro または Max プランが必要です。 |

48 

49コンピュータがオフになる場合は、クラウドセッションを使用してください。クラウドセッションはクラウドで実行され、ラップトップを閉じた後も続行されます。リモートコントロールと Dispatch は自分のマシンを操作するため、Claude Code または Desktop アプリが実行されている状態を保つ必要があります。リモートコントロールセッション中にマシンがスリープ状態になった場合、Claude Code はマシンがオンラインに戻ったときに再接続されます。より詳細な比較については、[ターミナルから離れているときに作業する](/docs/ja/platforms#work-when-you-are-away-from-your-terminal)を参照してください。

50 

51クラウドセッションとリモートコントロールは **Code** タブから実行されます。アプリでタスクとしてメッセージを送る Dispatch については、[Dispatch からのセッション](/docs/ja/desktop#sessions-from-dispatch)を参照してください。

52 

53<h3 id="start-and-monitor-cloud-sessions">

54 クラウドセッションを開始および監視する

55</h3>

56 

57Web 上の Claude Code は Anthropic が管理するクラウドインフラストラクチャでタスクを実行するため、スマートフォンを置いた後もセッションが続行されます。Code タブからリポジトリとブランチを選択し、タスクを説明して送信します。セッションはデバイス間で永続化されます。ラップトップで開始したタスクはスマートフォンから確認できる状態で待機し、スマートフォンから開始したタスクはデスクに戻ったときに待機しています。

58 

59アプリでセッションを開いて進捗を確認したり、Claude の質問に答えたり、新しい方向に操作したりできます。Claude に [プルリクエストを監視](/docs/ja/claude-code-on-the-web#auto-fix-pull-requests)させて、CI の失敗やレビューコメントが到着したときに修正することもできます。GitHub を接続して環境をセットアップするには、[Web クイックスタート](/docs/ja/web-quickstart)に従い、クラウドセッションで実行できるすべてのことについては [Web の Claude Code](/docs/ja/claude-code-on-the-web)を参照してください。

60 

61<h3 id="continue-a-local-session-with-remote-control">

62 リモートコントロールでローカルセッションを続行する

63</h3>

64 

65リモートコントロールは Claude アプリをマシンで実行されている Claude Code セッションに接続するため、コード実行とファイルシステムアクセスはローカルのままで、スマートフォンからセッションを操作できます。コンピュータで `claude remote-control` を使用してセッションを開始するか、既に開いているセッションで `/remote-control` を実行します。その後、ターミナルが表示できるセッション QR コードをスキャンするか、Claude アプリを開いて **Code** をタップし、リストからセッションを選択します。各オプションについては、[別のデバイスから接続](/docs/ja/remote-control#connect-from-another-device)を参照してください。

66 

67Claude アプリで添付ファイルを追加すると、ローカルセッションにも到達します。

68 

69* **写真**: Claude は添付された写真をメッセージの一部として直接見ることができます。Claude Code は各写真を `~/.claude/uploads/` の下に保存し、Claude に保存されたファイルパスを伝えるため、Claude はその画像をそれが作成するファイルにコピーできます。

70* **その他のファイル**: Claude Code はそれらをマシンにダウンロードし、`@` ファイル参照として Claude に渡します。

71 

72要件、呼び出しモード、トラブルシューティングについては、[リモートコントロール概要](/docs/ja/remote-control)を参照してください。

73 

74<h3 id="get-push-notifications">

75 プッシュ通知を取得する

76</h3>

77 

78リモートコントロールがアクティブな場合、Claude はスマートフォンにプッシュ通知を送信できます。通常は、長時間実行されるタスクが完了したときまたは決定が必要なときです。プロンプトで 1 つをリクエストすることもできます。例えば、`notify me when the tests finish` のようにです。2 つの `/config` トグルと配信トラブルシューティングについては、[モバイルプッシュ通知](/docs/ja/remote-control#mobile-push-notifications)を参照してください。

79 

80Dispatch は、生成した Code セッションが完了したときまたは承認が必要なときに独自の通知を送信します。これについては [Dispatch からのセッション](/docs/ja/desktop#sessions-from-dispatch)で説明されています。

81 

82<h2 id="limitations">

83 制限事項

84</h2>

85 

86モバイルクライアントはセッションが必要とするほとんどのことをカバーしていますが、いくつかの制限があります。

87 

88* **ローカルのみのコマンド**: `/plugin` や `/resume` など、ターミナルインターフェイスでのみ実行されるコマンドはアプリから機能しません。[リモートコントロール制限](/docs/ja/remote-control#limitations)には、モバイルから機能するコマンドと動作の違いが記載されています。

89* **権限モード**: クラウドセッションはモードドロップダウンで Accept edits、Plan、Auto を提供し、リモートコントロールセッションは Manual、Accept edits、Plan を提供します。どちらの場合でもアプリから Bypass permissions を選択することはできず、リモートコントロールセッションの Auto を選択することもできません。[権限モードを切り替える](/docs/ja/permission-modes#switch-permission-modes)を参照してください。

90* **Dispatch プラン**: Dispatch には Pro または Max プランが必要であり、Team または Enterprise では利用できません。

91 

92<h2 id="related-resources">

93 関連リソース

94</h2>

95 

96* [プラットフォームと統合](/docs/ja/platforms): Claude Code が実行されるすべてのサーフェスを比較します

97* [Web の Claude Code](/docs/ja/claude-code-on-the-web): クラウドセッションの実行方法とターミナルとの間で作業を移動する方法

98* [クラウド環境を構成する](/docs/ja/cloud-environments): クラウドセッションのネットワークアクセスレベル、環境変数、セットアップスクリプト

99* [リモートコントロール](/docs/ja/remote-control): 任意のデバイスからローカルセッションを続行します

100* [Dispatch からのセッション](/docs/ja/desktop#sessions-from-dispatch): Dispatch タスクが Desktop アプリで Code セッションになる方法

101* [Channels](/docs/ja/channels): 作業がマシンで実行されている間に、Telegram、Discord、または iMessage を通じてスマートフォンから Claude に何かを尋ねます

102* [Slack の Claude Code](/docs/ja/slack): `@Claude` をメンションして Slack ワークスペースからコーディングタスクを委任します

Details

246| `bridge.claudeusercontent.com` | [Chrome の Claude](/docs/ja/chrome) 拡張機能 WebSocket ブリッジ |246| `bridge.claudeusercontent.com` | [Chrome の Claude](/docs/ja/chrome) 拡張機能 WebSocket ブリッジ |

247| `*.frame.claudeusercontent.com` | [Artifact](/docs/ja/artifacts) コンテンツ読み取り。CLI は Claude がアーティファクトを開いたときにこのホストからアーティファクトのファイルを取得し、Artifact ツールがアカウントで[利用可能](/docs/ja/artifacts#availability)な場合のみです。ツールをオフにしてこの要件を削除するには、[`"enableArtifact": false`](/docs/ja/settings-reference#enableartifact) または [`CLAUDE_CODE_DISABLE_ARTIFACT=1`](/docs/ja/env-vars) を設定してください。Claude Code は非推奨の [`disableArtifact`](/docs/ja/settings-reference#disableartifact) 設定も尊重します。これらの設定がどのように相互作用するかについては、[アーティファクトを無効にする](/docs/ja/artifacts#disable-artifacts)を参照してください |247| `*.frame.claudeusercontent.com` | [Artifact](/docs/ja/artifacts) コンテンツ読み取り。CLI は Claude がアーティファクトを開いたときにこのホストからアーティファクトのファイルを取得し、Artifact ツールがアカウントで[利用可能](/docs/ja/artifacts#availability)な場合のみです。ツールをオフにしてこの要件を削除するには、[`"enableArtifact": false`](/docs/ja/settings-reference#enableartifact) または [`CLAUDE_CODE_DISABLE_ARTIFACT=1`](/docs/ja/env-vars) を設定してください。Claude Code は非推奨の [`disableArtifact`](/docs/ja/settings-reference#disableartifact) 設定も尊重します。これらの設定がどのように相互作用するかについては、[アーティファクトを無効にする](/docs/ja/artifacts#disable-artifacts)を参照してください |

248| `raw.githubusercontent.com` | [`/release-notes`](/docs/ja/commands) のチェンジログフィード。対話型セッションでは、Claude Code はキャッシュされたチェンジログがまだ実行中のバージョンをカバーしていない場合(更新後の初回起動など)、スタートアップ時にバックグラウンドでそれを取得します。非対話型およびクラウドセッションは決してそれを取得しません |248| `raw.githubusercontent.com` | [`/release-notes`](/docs/ja/commands) のチェンジログフィード。対話型セッションでは、Claude Code はキャッシュされたチェンジログがまだ実行中のバージョンをカバーしていない場合(更新後の初回起動など)、スタートアップ時にバックグラウンドでそれを取得します。非対話型およびクラウドセッションは決してそれを取得しません |

249| `*-review.googlesource.com` | `googlesource.com` チェックアウトでの Gerrit 変更検索。Claude Desktop Code タブセッションが [信頼済み](/docs/ja/permissions#project-allow-rules-and-workspace-trust)チェックアウトで開始または再開され、その `origin` が `googlesource.com` ホストである場合、Claude Code はそのホストの `-review` サーバーに匿名で、HEAD の `Change-Id` に一致するオープン変更を 1 回(開始または再開ごと)要求します。他のセッションタイプはこの検索をスキップし、他の Gerrit ホストには接続されません。オプション:[`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/ja/env-vars) で無効化 |

249| `http-intake.logs.us5.datadoghq.com` | 運用テレメトリイベント。CLI が Anthropic API を直接使用する場合にのみ送信され、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry では送信されません。オプション:[`DISABLE_TELEMETRY`](/docs/ja/data-usage#telemetry-services) または `DO_NOT_TRACK` で無効化 |250| `http-intake.logs.us5.datadoghq.com` | 運用テレメトリイベント。CLI が Anthropic API を直接使用する場合にのみ送信され、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry では送信されません。オプション:[`DISABLE_TELEMETRY`](/docs/ja/data-usage#telemetry-services) または `DO_NOT_TRACK` で無効化 |

250| `browser-intake-us5-datadoghq.com` | 運用エラーレポート。CLI が Anthropic API を直接使用し、サーバー側のロールアウトゲートがそれらを有効にする場合に送信されます。オプション:`DISABLE_ERROR_REPORTING` または `DISABLE_TELEMETRY` で無効化。[テレメトリサービス](/docs/ja/data-usage#telemetry-services)を参照してください |251| `browser-intake-us5-datadoghq.com` | 運用エラーレポート。CLI が Anthropic API を直接使用し、サーバー側のロールアウトゲートがそれらを有効にする場合に送信されます。オプション:`DISABLE_ERROR_REPORTING` または `DISABLE_TELEMETRY` で無効化。[テレメトリサービス](/docs/ja/data-usage#telemetry-services)を参照してください |

251| `formulae.brew.sh` | Homebrew インストールでのバージョンチェック更新。他のインストール方法はこのホストに接続しません |252| `formulae.brew.sh` | Homebrew インストールでのバージョンチェック更新。他のインストール方法はこのホストに接続しません |

overview.md +13 −13

Details

18 <Tab title="Terminal">18 <Tab title="Terminal">

19 ターミナルで Claude Code を直接操作するための機能豊富な CLI です。ファイルを編集し、コマンドを実行し、コマンドラインからプロジェクト全体を管理できます。19 ターミナルで Claude Code を直接操作するための機能豊富な CLI です。ファイルを編集し、コマンドを実行し、コマンドラインからプロジェクト全体を管理できます。

20 20 

21 To install Claude Code, use one of the following methods:21 Claude Code をインストールするには、以下のいずれかの方法を使用してください。

22 22 

23 <Tabs>23 <Tabs>

24 <Tab title="Native Install (Recommended)">24 <Tab title="ネイティブインストール(推奨)">

25 **macOS, Linux, WSL:**25 **macOS、Linux、WSL:**

26 26 

27 ```bash theme={null}27 ```bash theme={null}

28 curl -fsSL https://claude.ai/install.sh | bash28 curl -fsSL https://claude.ai/install.sh | bash

29 ```29 ```

30 30 

31 **Windows PowerShell:**31 **Windows PowerShell:**

32 32 

33 ```powershell theme={null}33 ```powershell theme={null}

34 irm https://claude.ai/install.ps1 | iex34 irm https://claude.ai/install.ps1 | iex

35 ```35 ```

36 36 

37 **Windows CMD:**37 **Windows CMD:**

38 38 

39 ```batch theme={null}39 ```batch theme={null}

40 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd40 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

41 ```41 ```

42 42 

43 If you see `The token '&&' is not a valid statement separator`, you're in PowerShell, not CMD. If you see `'irm' is not recognized as an internal or external command`, you're in CMD, not PowerShell. Your prompt shows `PS C:\` when you're in PowerShell and `C:\` without the `PS` when you're in CMD.43 `The token '&&' is not a valid statement separator` というエラーが表示される場合は、CMD ではなく PowerShell を使用しています。`'irm' is not recognized as an internal or external command` というエラーが表示される場合は、PowerShell ではなく CMD を使用しています。PowerShell を使用している場合、プロンプトに `PS C:\` と表示され、CMD を使用している場合は `PS` なしで `C:\` と表示されます。

44 44 

45 If the install command fails with `syntax error near unexpected token '<'`, a `403`, or another curl error, see [Troubleshoot installation](/docs/en/troubleshoot-install#find-your-error) to match the error to a fix and for alternative install methods.45 インストールコマンドが `syntax error near unexpected token '<'`、`403`、またはその他の curl エラーで失敗する場合は、[インストールのトラブルシューティング](/docs/ja/troubleshoot-install#find-your-error)を参照して、エラーを修正方法に照合し、代替インストール方法を確認してください。

46 46 

47 [Git for Windows](https://git-scm.com/downloads/win) is recommended on native Windows so Claude Code can use the Bash tool. If Git for Windows is not installed, Claude Code uses PowerShell as the shell tool instead. WSL setups do not need Git for Windows.47 [Git for Windows](https://git-scm.com/downloads/win) は、Claude Code が Bash ツールを使用できるようにネイティブ Windows で推奨されます。Git for Windows がインストールされていない場合、Claude Code はシェルツールとして PowerShell を代わりに使用します。WSL セットアップは Git for Windows を必要としません。

48 48 

49 <Info>49 <Info>

50 Native installations automatically update in the background to keep you on the latest version.50 ネイティブインストールは、最新バージョンに保つために自動的にバックグラウンドで更新されます。

51 </Info>51 </Info>

52 </Tab>52 </Tab>

53 53 


56 brew install --cask claude-code56 brew install --cask claude-code

57 ```57 ```

58 58 

59 Homebrew offers two casks. `claude-code` tracks the stable release channel, which is typically about a week behind and skips releases with major regressions. `claude-code@latest` tracks the latest channel and receives new versions as soon as they ship.59 Homebrew は 2 つの cask を提供しています。`claude-code` は安定リリースチャネルを追跡しており、通常は約 1 週間遅れており、大きな回帰を伴うリリースをスキップします。`claude-code@latest` は最新チャネルを追跡し、新しいバージョンが出荷されるとすぐに受け取ります。

60 60 

61 <Info>61 <Info>

62 Homebrew installations do not auto-update. Run `brew upgrade claude-code` or `brew upgrade claude-code@latest`, depending on which cask you installed, to get the latest features and security fixes.62 Homebrew インストールは自動更新されません。インストールした cask に応じて、`brew upgrade claude-code` または `brew upgrade claude-code@latest` を実行して、最新の機能とセキュリティ修正を取得してください。

63 </Info>63 </Info>

64 </Tab>64 </Tab>

65 65 


69 ```69 ```

70 70 

71 <Info>71 <Info>

72 WinGet installations do not auto-update. Run `winget upgrade Anthropic.ClaudeCode` periodically to get the latest features and security fixes.72 WinGet インストールは自動更新されません。最新の機能とセキュリティ修正を取得するために、定期的に `winget upgrade Anthropic.ClaudeCode` を実行してください。

73 </Info>73 </Info>

74 </Tab>74 </Tab>

75 </Tabs>75 </Tabs>

76 76 

77 You can also install with [apt, dnf, or apk](/docs/en/setup#install-with-linux-package-managers) on Debian, Fedora, RHEL, and Alpine.77 また、Debian、Fedora、RHEL、Alpine で [apt、dnf、または apk](/docs/ja/setup#install-with-linux-package-managers) を使用してインストールすることもできます。

78 78 

79 その後、任意のプロジェクトで Claude Code を開始します。`your-project` をマシン上のプロジェクトディレクトリへのパスに置き換えてください:79 その後、任意のプロジェクトで Claude Code を開始します。`your-project` をマシン上のプロジェクトディレクトリへのパスに置き換えてください:

80 80 

permission-modes.md +125 −125

Details

282プロジェクトのターミナルセッションのデフォルトとして計画モードを設定するには、`.claude/settings.json` で `defaultMode` を `plan` に設定します。[異なる権限モードで開始する](#start-in-a-different-mode)の例が示すように配置します。[VS Code 拡張機能](/docs/ja/vs-code)が開始する会話はプロジェクト設定を開始権限モードに読み込みません。そこで、VS Code ユーザー設定で `claudeCode.initialPermissionMode` を `plan` に設定します。282プロジェクトのターミナルセッションのデフォルトとして計画モードを設定するには、`.claude/settings.json` で `defaultMode` を `plan` に設定します。[異なる権限モードで開始する](#start-in-a-different-mode)の例が示すように配置します。[VS Code 拡張機能](/docs/ja/vs-code)が開始する会話はプロジェクト設定を開始権限モードに読み込みません。そこで、VS Code ユーザー設定で `claudeCode.initialPermissionMode` を `plan` に設定します。

283 283 

284<h2 id="eliminate-prompts-with-auto-mode">284<h2 id="eliminate-prompts-with-auto-mode">

285 auto モードで権限プロンプトをなくす285 auto モードで権限プロンプトを排除する

286</h2>286</h2>

287 287 

288Auto モードでは Claude はルーチンの権限プロンプトなしで実行できます。別の分類器モデルはアクション実行前にアクションをレビューし、リクエストを超えてエスカレートするもの、認識されないインフラストラクチャをターゲットにするもの、または Claude が読んだ敵対的なコンテンツによって駆動されているように見えるものをブロックします。明示的な [ask ルール](/docs/ja/permissions#manage-permissions)は依然としてプロンプトを強制します。288auto モードを使用すると、Claude は日常的な権限プロンプトなしで実行できます。別のクラシファイアモデルが実行前にアクションをレビューし、リクエストを超えるエスカレーション、認識されていないインフラストラクチャをターゲットにしたもの、または Claude が読んだ敵対的なコンテンツによって駆動されているように見えるものをブロックします。明示的な[ask ルール](/docs/ja/permissions#manage-permissions)は依然としてプロンプトを強制します。

289 289 

290Pro、Max、Team プランでは、auto モードは[組み込み開始権限モード](#which-mode-a-session-starts-in)です。290Pro、Max、Team プランでは、auto モードは[セッションが開始する組み込みの開始権限モード](#which-mode-a-session-starts-in)です。

291 291 

292分類器はまた、Claude が [`SendMessage`](/docs/ja/tools-reference)で別のエージェントに送信する各メッセージをレビューします。プレーンテキストまたは構造化 [agent team](/docs/ja/agent-teams)メッセージかどうかに関係なく、auto モードと [分類器がコマンドをレビューする計画モード](#analyze-before-you-edit-with-plan-mode)の両方で、Claude Code がそれを配信する前にレビューします。送信レビューには Claude Code v2.1.222 以降が必要です。292クラシファイアは、auto モードと[プランモードでクラシファイアがコマンドをレビューしている間](#analyze-before-you-edit-with-plan-mode)の両方で、Claude が [`SendMessage`](/docs/ja/tools-reference) を使用して別のエージェントに送信する各メッセージ(プレーンテキストまたは構造化された[エージェントチーム](/docs/ja/agent-teams)メッセージ)をレビューします。送信レビューには Claude Code v2.1.222 以降が必要です。

293 293 

294分類器はまた、`rm` と `rmdir` の削除が[重要なパス](#critical-paths)をターゲットにしている場合(`rm -rf /` や `rm -rf ~` など)をレビューして承認またはブロックします。これはコマンドまたはプロセス置換内にある削除も含まれます。294クラシファイアは、`rm -rf /` や `rm -rf ~` などの[重要なパス](#critical-paths)をターゲットにした `rm` および `rmdir` の削除もレビューおよび承認またはブロックします。これには、削除がコマンドまたはプロセス置換内にある場合も含まれます。

295 295 

296Auto モードはまた Claude に明確化の質問を停止せずに作業を続けるよう促します。ただし、Claude はプロンプトまたはスキルが明示的にそれに依存する場合は依然として質問します。権限プロンプトを保持しながらより強い自律的な動作を取得するには、代わりに [プロアクティブ出力スタイル](/docs/ja/output-styles)を設定してください。296auto モードはまた、Claude が明確な質問のために停止することなく作業を続けるよう促しますが、プロンプトまたはスキルが明示的にそれに依存している場合は、Claude は引き続き質問します。より強力な自律動作を、依然としてプロンプトを表示するモードで実現するには、代わりに[プロアクティブ出力スタイル](/docs/ja/output-styles)を設定してください。

297 297 

298<Warning>298<Warning>

299 Auto モードは権限プロンプトを減らしますが、安全性を保証しません。一般的な方向を信頼するタスクに使用し、機密操作のレビューの代わりとしては使用しないでください。299 auto モードは権限プロンプトを削減しますが、安全性を保証しません。一般的な方向を信頼するタスクに使用してください。機密操作のレビューの代わりとしてではなく使用してください。

300</Warning>300</Warning>

301 301 

302Auto モードはアカウントがこれらすべての要件を満たす場合にのみ利用可能です。302auto モードは、アカウントが以下のすべての要件を満たす場合にのみ利用可能です。

303 303 

304* **プラン**:すべてのプラン。304* **プラン**: すべてのプラン。

305* **組織**:Team と Enterprise では、auto モードはデフォルトで利用可能です。管理者は [管理設定](/docs/ja/managed-settings)で `permissions.disableAutoMode` を `"disable"` に設定することでそれをオフにできます。305* **組織**: Team および Enterprise では、auto モードはデフォルトで利用可能です。管理者は、[管理設定](/docs/ja/managed-settings)で `permissions.disableAutoMode` を `"disable"` に設定することで、組織の auto モードをオフにできます。

306* **モデル**:Anthropic API と [Claude Platform on AWS](/docs/ja/claude-platform-on-aws)では、Claude Opus 4.6 以降、Sonnet 4.6 以降、または [Fable モデル](/docs/ja/model-config#work-with-fable)。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、およびサインイン済みの [Claude apps gateway](/docs/ja/claude-apps-gateway)セッションでは、Claude Sonnet 5、Opus 4.7 以降、および Fable モデルのみ。Sonnet 4.5、Opus 4.5、Haiku、claude-3 モデルを含む古いモデルはどのプロバイダーでもサポートされていません。306* **モデル**: Anthropic API および[AWS 上の Claude Platform](/docs/ja/claude-platform-on-aws) では、Claude Opus 4.6 以降、Sonnet 4.6 以降、または[Fable モデル](/docs/ja/model-config#work-with-fable)。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、およびサインイン済みの[Claude apps gateway](/docs/ja/claude-apps-gateway) セッションでは、Claude Sonnet 5、Opus 4.7 以降、および Fable モデルのみ。Sonnet 4.5、Opus 4.5、Haiku、claude-3 モデルを含む古いモデルは、どのプロバイダーでもサポートされていません。

307* **プロバイダー**:Anthropic API、Claude Platform on AWS、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、およびサインイン済みの Claude apps gateway セッションではデフォルトで利用可能です。307* **プロバイダー**: Anthropic API、AWS 上の Claude Platform、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、およびサインイン済みの Claude apps gateway セッションでデフォルトで利用可能です。

308 308 

309Claude Code が auto モードを利用不可と報告する場合、最初にこれらの要件と設定ファイルが [`disableAutoMode`](/docs/ja/settings-reference#disableautomode)を設定しているかどうかを確認してください。Anthropic はまた、サーバー側で auto モードをオフにしたか、サーバーがアカウントに対して auto モードを拒否した可能性があります。どちらかの回答を受け取ったセッションは、セッションが終了するまで auto モードをオフに保つため、後で新しいセッションを開始してください。309Claude Code が auto モードを利用不可と報告する場合は、まずこれらの要件と、設定ファイルが [`disableAutoMode`](/docs/ja/settings-reference#disableautomode) を設定しているかどうかを確認してください。Anthropic がサーバー側で auto モードをオフにしたか、サーバーがアカウントの auto モードを拒否した可能性があります。いずれかの回答を受け取ったセッションは、セッションが終了するまで auto モードをオフのままにするため、後で新しいセッションを開始してください。

310 310 

311モデルに名前を付けて auto モードが「アクションの安全性を判断できない」と言う別のメッセージは、分類器リクエストが失敗したことを意味します。その失敗は通常一時的ですが、Amazon Bedrock では、アカウントが名前付きモデルを呼び出すことができるまで繰り返される可能性があります。原因と対処方法については、[エラーリファレンス](/docs/ja/errors#auto-mode-cannot-determine-the-safety-of-an-action)を参照してください。311モデルに名前を付けて、auto モードがアクションの安全性を「判定できない」と言う別のメッセージは、クラシファイアリクエストが失敗したことを意味します。その失敗は通常は一時的ですが、Amazon Bedrock では、アカウントが指定されたモデルを呼び出せるようになるまで繰り返される可能性があります。原因と対処方法については、[エラーリファレンス](/docs/ja/errors#auto-mode-cannot-determine-the-safety-of-an-action)を参照してください。

312 312 

313[設定](/docs/ja/settings-reference#all-settings)で `defaultMode: "auto"` を設定し、ターミナルセッションが Manual モードでエラーなしで開始する場合、設定は `.claude/settings.json` または `.claude/settings.local.json` にある可能性があります。`auto` はこれらのファイルから有効にならないため、`~/.claude/settings.json` に移動してください。VS Code 拡張機能が開始した会話の場合、代わりに [権限モードを切り替える](#switch-permission-modes)の拡張機能独自のリストを確認してください。313[設定](/docs/ja/settings-reference#all-settings)で `defaultMode: "auto"` を設定し、ターミナルセッションがエラーなしで Manual モードで開始する場合、設定は `.claude/settings.json` または `.claude/settings.local.json` にある可能性があります。`auto` はこれらのファイルから有効になりません。`~/.claude/settings.json` に移動してください。VS Code 拡張機能が開始した会話の場合は、代わりに拡張機能自体のリストを[権限モードの切り替え](#switch-permission-modes)で確認してください。

314 314 

315<h3 id="enable-auto-mode-on-bedrock-agent-platform-or-foundry">315<h3 id="enable-auto-mode-on-bedrock-agent-platform-or-foundry">

316 Bedrock、Agent Platform、または Foundry で auto モードを有効にする316 Bedrock、Agent Platform、または Foundry での auto モード

317</h3>317</h3>

318 318 

319[Amazon Bedrock](/docs/ja/amazon-bedrock)、[Google Cloud の Agent Platform](/docs/ja/google-vertex-ai)、[Microsoft Foundry](/docs/ja/microsoft-foundry)、およびサインイン済みの [Claude apps gateway](/docs/ja/claude-apps-gateway)セッションでは、auto モードはデフォルトで `Shift+Tab` サイクルに表示されます。サイクルに表示されることはセッションが開始するモードを変更しません。ターミナルセッションはユーザーの [`defaultMode`](/docs/ja/settings-reference#permissions-defaultmode)で開始します。これは変更しない限り Manual です。[VS Code 拡張機能](/docs/ja/vs-code)の会話は、`claudeCode.initialPermissionMode` または拡張機能で選択したモードによって別のモードが設定されない限り、Manual で開始します。これらのプロバイダーでは Claude Sonnet 5、Opus 4.7 以降、および Fable モデルのみがサポートされています。319[Amazon Bedrock](/docs/ja/amazon-bedrock)、[Google Cloud の Agent Platform](/docs/ja/google-vertex-ai)、[Microsoft Foundry](/docs/ja/microsoft-foundry)、およびサインイン済みの[Claude apps gateway](/docs/ja/claude-apps-gateway) セッションでは、auto モードはデフォルトで `Shift+Tab` サイクルに表示されます。サイクルに表示されることは、セッションが開始する権限モードを変更しません。これらのプロバイダーでは、ターミナルセッションは [`defaultMode`](/docs/ja/settings-reference#permissions-defaultmode) で開始します。これは変更しない限り Manual であり、[VS Code 拡張機能](/docs/ja/vs-code)の会話は、`claudeCode.initialPermissionMode` または拡張機能で選択したモードが設定しない限り Manual で開始します。これらのプロバイダーでは、Claude Sonnet 5、Opus 4.7 以降、および Fable モデルのみがサポートされています。

320 320 

321Auto モードをデフォルトの開始権限モードにするには、ユーザーまたは管理設定で `"permissions": {"defaultMode": "auto"}` を設定します。VS Code 拡張機能が開始する会話では、代わりにモード指示器から **Auto** を選択します。[権限モードを切り替える](#switch-permission-modes)は、その選択より優先されるものをカバーしています。321auto モードをデフォルトの開始権限モードにするには、ユーザーまたは管理設定で `"permissions": {"defaultMode": "auto"}` を設定してください。VS Code 拡張機能が開始するセッションでは、代わりにモード指示器から **Auto** を選択してください。[権限モードの切り替え](#switch-permission-modes)は、その選択を上回るものについて説明しています。

322 322 

323[`/doctor`](/docs/ja/commands#all-commands)チェックアップは、Anthropic API と同じ方法でこれらのプロバイダーでこのユーザー設定デフォルトを提案します。323[`/doctor`](/docs/ja/commands#all-commands) チェックアップは、Anthropic API と同じ方法で、これらのプロバイダーのユーザー設定デフォルトを提案します。

324 324 

325開発者が auto モードを使用するのを防ぐには、[管理設定](/docs/ja/managed-settings)で `disableAutoMode` を `"disable"` に設定します。これは `auto` を `Shift+Tab` サイクルから削除し、`--permission-mode auto` で開始されたセッションは Manual で開始します。既に auto モードで実行されているセッションは、[管理者がデプロイしたソース](/docs/ja/managed-settings#which-managed-source-claude-code-uses)から設定に到達すると、それを終了し、`auto mode disabled by settings` を表示します。v2.1.251 より前では、実行中のセッションはセッションが終了するまで auto モードを保持していました。325開発者が auto モードを使用するのを防ぐには、[管理設定](/docs/ja/managed-settings)で `disableAutoMode` を `"disable"` に設定してください。これにより `auto` が `Shift+Tab` サイクルから削除され、`--permission-mode auto` で開始されたセッションは Manual で開始されます。既に auto モードで実行中のセッションは、設定が[管理者がデプロイしたソース](/docs/ja/managed-settings#which-managed-source-claude-code-uses)からそのセッションに到達すると、auto モードを離れ、`auto mode disabled by settings` を表示します。v2.1.251 より前では、実行中のセッションはセッションが終了するまで auto モードを保持していました。

326 326 

327v2.1.158 から v2.1.206 では、auto モードはこれらのプロバイダーでオフでした。`CLAUDE_CODE_ENABLE_AUTO_MODE=1` を設定するまで。Claude Code はこれらのプロバイダーで `defaultMode: "auto"` を無視していました。変数も設定されていない限り。変数は互換性のために依然として受け入れられ、v2.1.207 以降は効果がありません。327v2.1.158 から v2.1.206 では、`CLAUDE_CODE_ENABLE_AUTO_MODE=1` を設定するまで、これらのプロバイダーで auto モードはオフでした。また、Claude Code は変数が設定されていない限り、これらのプロバイダーで `defaultMode: "auto"` を無視していました。変数は互換性のために引き続き受け入れられ、v2.1.207 以降は効果がありません。

328 328 

329<h3 id="what-the-classifier-blocks-by-default">329<h3 id="what-the-classifier-blocks-by-default">

330 分類器がデフォルトでブロックするもの330 クラシファイアがデフォルトでブロックするもの

331</h3>331</h3>

332 332 

333分類器は作業ディレクトリとセッション開始時に設定されたリモートを信頼します。セッション中に `git remote add` または `git remote set-url` で追加またはリポイントされたリモートは信頼されず、[信頼できるインフラストラクチャを設定](/docs/ja/auto-mode-config)するまで他のすべては外部として扱われます。v2.1.200 より前では、セッション中に追加されたリモートも信頼されていました。333クラシファイアは、ワーキングディレクトリとセッション開始時にそれに対して設定されたリモートを信頼します。セッション中に `git remote add` または `git remote set-url` で追加またはリポイントされたリモートは信頼されず、[信頼できるインフラストラクチャを設定](/docs/ja/auto-mode-config)するまで、他のすべてが外部として扱われます。v2.1.200 より前では、セッション中に追加されたリモートも信頼されていました。

334 334 

335**デフォルトでブロック**:335**デフォルトでブロック**:

336 336 

337* `curl | bash` のようなコードのダウンロードと実行337* `curl | bash` などのコードのダウンロードと実行

338* 機密データを外部エンドポイントに送信338* 機密データを外部エンドポイントに送信

339* 本番環境へのデプロイとマイグレーション339* 本番環境へのデプロイとマイグレーション

340* クラウドストレージでの大量削除340* クラウドストレージでの大量削除

341* IAM またはリポジトリ権限の付与341* IAM またはリポジトリ権限の付与

342* 共有インフラストラクチャの変更342* 共有インフラストラクチャの変更

343* セッション前に存在していたファイルを不可逆的に破壊343* セッション前に存在していたファイルを不可逆的に破壊

344* フォースプッシュ344* Force push

345* セッション中に実行されるシークレットまたは機密データを送信するコミットまたはプッシュ。または、デプロイが公開するものを広げる変更。これはシークレットを既に受け取らない宛先に渡す CI ワークフローまたはデプロイ設定、シークレットストアを読み取り、データを送信するスクリプトまたはセットアップステップ、およびレジストリ、可視性、アーティファクト、またはソースマップ設定を広げるコンフィグ変更をカバーしています。チェックはすべてのブランチに適用され、リポジトリがパブリックの場合でも適用され、パイプラインをトリガーするかどうかに関係なく、ランディングが発火するときに発火します。クリアするにはコミットまたはプッシュだけではなく、実行効果に名前を付ける必要があります。v2.1.211 より前では、このチェックはデフォルトブランチにスコープされていました。そこへのプッシュは機密コンテンツを含む場合、変更が隠蔽または誤表示されている場合、コンテンツがリポジトリ外からポートインされている場合、またはあなたが求めたレビューの周りをルーティングする場合にブロックされていました345* 実行時にシークレットまたは機密データをリポジトリの外に送信するか、デプロイが公開するものを拡大する変更をコミットまたはプッシュ。これは、シークレットをまだ受け取っていない宛先にシークレットを渡す CI ワークフローまたはデプロイ設定、シークレットストアを読み取ってデータを送信するスクリプトまたはセットアップステップ、およびデプロイが公開するものを拡大する設定変更(レジストリ、可視性、アーティファクト、またはソースマップ設定など)をカバーします。チェックはすべてのブランチに適用され、リポジトリが公開されている場合でも適用され、ランディングがパイプラインをトリガーするかどうかに関わらず、ランディング時に発火します。クリアするには、コミットまたはプッシュだけでなく、実行効果に名前を付ける必要があります。v2.1.211 より前では、このチェックはデフォルトブランチにスコープされていました。そこへのプッシュは、機密コンテンツを含む場合、リクエストに対して隠蔽または誤説明されたコンテンツ、リポジトリの外からポートされたコンテンツ、またはリクエストしたレビューの周りをルーティングされたコンテンツを含む場合にブロックされました

346* `git reset --hard`、`git checkout -- .`、`git restore .`、`git clean -fd`、`git stash drop`、または `git stash clear`。分類器はこれらがコミットされていない変更を破棄すると推定します346* `git reset --hard`、`git checkout -- .`、`git restore .`、`git clean -fd`、`git stash drop`、または `git stash clear`。クラシファイアはこれらがコミットされていない変更を破棄すると推定します

347* `git commit --amend`。HEAD のコミットがこのセッションで作成されていない場合347* HEAD のコミットがこのセッションで作成されていない場合の `git commit --amend`

348* v2.1.198 から、`git commit --amend`。HEAD のコミットが既にプッシュされている場合。メッセージのみの言い換えはブロックされません。`--amend -m` で新たにステージされたものがなく、Claude がこのセッション中に作成したコミット上348* v2.1.198 から、HEAD のコミットが既にプッシュされている場合の `git commit --amend`。メッセージのみの言い換えはブロックされません。`--amend -m` で新しくステージされたものがなく、Claude がこのセッション中に作成したコミット上

349* `terraform destroy`、`pulumi destroy`、`cdk destroy`、または `terragrunt destroy`。リソースを破壊するプランを適用する場合349* `terraform destroy`、`pulumi destroy`、`cdk destroy`、または `terragrunt destroy`、およびリソースを破壊するプランの適用

350 350 

351Claude Code v2.1.195 以降はデフォルトでより多くのカテゴリをブロックします。いくつかは [環境](/docs/ja/auto-mode-config#define-trusted-infrastructure)エントリに依存します。例えば、機密リモートターゲットと保護された IaC スコープなど。これらを具体的な名前に絞ることができます。351Claude Code v2.1.195 以降は、デフォルトでより多くのカテゴリをブロックします。いくつかは、機密リモートターゲットや保護された IaC スコープなど、具体的な名前に絞り込むことができる[環境](/docs/ja/auto-mode-config#define-trusted-infrastructure)エントリに依存しています。

352 352 

353* シークレットマネージャーへの書き込み、または DNS レコードまたは TLS 証明書の変更353* シークレットマネージャーへの書き込み、または DNS レコードまたは TLS 証明書の変更

354* 人間が承認していないプルリクエストのマージ、Claude 独自のプルリクエストの承認、または CI チェックの無効化354* 人間が承認していないプルリクエストのマージ、Claude 自身のプルリクエストの承認、または CI チェックの無効化

355* それ自体がオートメーションへのコマンドであるコメントの投稿。例えば `atlantis apply` またはボットの `/deploy` または `/merge`355* `atlantis apply` やボットの `/deploy` または `/merge` などのオートメーションへのコマンド自体であるコメントの投稿

356* 本番環境機能フラグの切り替え、ランプアップ、または削除356* 本番環境機能フラグのトグル、ランプ、または削除

357* 保護された IaC スコープへのインフラストラクチャ変更の適用、またはクラスタノードのドレインと削除357* 保護された IaC スコープへのインフラストラクチャ変更の適用、またはクラスタノードのドレインと削除

358* ラベルセレクターまたは `--all` のような、他のユーザーのジョブをキャッチする共有コンピュートクラスタへの書き込み358* ラベルセレクタや `--all` など、他のユーザーのジョブをキャッチする、指定したリソースを超えて到達する共有コンピュートクラスタへの書き込み

359* すべてのノードで実行されるか、クラスタトラフィックをインターセプトする Kubernetes リソースの作成。例えば DaemonSets と admission webhooks359* DaemonSets やアドミッションウェブフックなど、すべてのノードで実行されるか、クラスタトラフィックをインターセプトする Kubernetes リソースの作成

360* 機密リモートターゲットへのインタラクティブシェルまたはポートフォワード360* 機密リモートターゲットへのインタラクティブシェルまたはポートフォワード

361* ローカルサービスをパブリックインターネットから到達可能にするトンネルまたはリバースシェルの開設361* ローカルサービスをパブリックインターネットから到達可能にするトンネルまたはリバースシェルの開設

362* トランスクリプトまたはファイルへのライブ認証情報またはトークンの印刷362* ライブ認証情報またはトークンをトランスクリプトまたはファイルに出力

363* [環境](/docs/ja/auto-mode-config#define-trusted-infrastructure)で機密データロケーションとしてリストされている場所へのアクセス、またはそこからのデータのコピー。v2.1.198 以降、これはエントリが除外する対象者にそこからデータを送信することもブロックします363* [環境](/docs/ja/auto-mode-config#define-trusted-infrastructure)で機密データロケーションとしてリストされている場所へのアクセス、またはそこからのデータのコピー。v2.1.198 以降、これはエントリが除外する対象者へのデータ送信もブロックします

364* パッケージインストールを内部パッケージレジストリの周りからパブリックレジストリにルーティング。v2.1.198 以降、これは会話で Claude に内部レジストリまたはミラーが存在することを伝えた場合にも適用されます。環境にリストされている場合だけではなく364* 内部パッケージレジストリの周りにパッケージインストールをルーティングしてパブリックレジストリに。v2.1.198 以降、これは環境にリストされている場合だけでなく、会話で内部レジストリまたはミラーが存在することを Claude に伝えた場合にも適用されます

365* `--insecure` のようなセーフティガードを解除するフラグを使用したコマンドの実行365* `--insecure` などの安全ガードを解除するフラグを使用してコマンドを実行

366* `--dangerously-skip-permissions` または `--no-sandbox` で開始されたものなど、人間の承認またはサンドボックスなしで実行される自律エージェントループの起動。v2.1.198 以降、これは `--yes-always` で開始されたランナーなど、分離とアクションごとの承認を無効にして実行される第三者エージェントまたは eval ハーネスもカバーします366* `--dangerously-skip-permissions` または `--no-sandbox` で開始されたものなど、人間の承認またはサンドボックスなしで実行される自律エージェントループの起動。v2.1.198 以降、これは `--yes-always` で開始されたランナーなど、分離とアクション単位の承認を無効にして、サードパーティエージェントまたは eval ハーネスを実行することもカバーしています

367* [Claude in Chrome](/docs/ja/chrome)ブラウザアクション。ページコンテンツ、クッキー、または認証情報をオリジン外に送信する可能性があります367* ページコンテンツ、クッキー、または認証情報をオリジン外に送信する可能性のある[Chrome の Claude](/docs/ja/chrome) ブラウザアクション

368 368 

369Claude Code v2.1.198 以降はこれらもデフォルトでブロックします。369Claude Code v2.1.198 以降は、これらもデフォルトでブロックします。

370 370 

371* `/tmp`、`$TMPDIR`、または別の共有スクラッチまたはキャッシュディレクトリ内のファイルを、特定の名前付きパスではなく、ワイルドカード、glob、または年齢フィルターで削除371* ワイルドカード、glob、または年齢フィルタではなく、特定の名前付きパスによって `/tmp`、`$TMPDIR`、または別の共有スクラッチまたはキャッシュディレクトリ内のファイルを削除

372* 自身のメッセージがその受信者にそれらの詳細を認可しなかった場合、送信、アップロード、公開、または他の人または共有システムに書き込まれるコンテンツに機密詳細を含める。PR およびイシュー本文、コミットメッセージ、およびコメントは、リポジトリが信頼境界外またはパブリックである場合、この種の送信コンテンツとしてカウントされます。組織独自のパブリックリポジトリを含む。内部ファイルパス、コード名、メールやアカウント識別子などのライブ API レスポンスデータ、およびインフラストラクチャ識別子は機密詳細としてカウントされます。PR、イシュー、およびコミットメッセージのスコープには Claude Code v2.1.200 以降が必要です。PR またはイシュー本文内のメールアドレス、アカウントまたは組織識別子、または使用メトリックなどのライブ個人データは、リポジトリの可視性または信頼境界に関係なく、それらの詳細と受信者に名前を付ける必要があります。そのチェックには Claude Code v2.1.203 以降が必要です372* 独自のメッセージがその詳細をその受信者に対して認可しなかった場合、送信、アップロード、公開、または他の人または共有システムに書き込まれるコンテンツに機密詳細を含める。リポジトリが信頼境界の外または公開されている場合、PR およびイシュー本文、コミットメッセージ、およびコメントはこの種の送信コンテンツとしてカウントされます。内部ファイルパス、コード名、ライブ API レスポンスデータ(メールやアカウント識別子など)、およびインフラストラクチャ識別子は機密詳細としてカウントされます。PR、イシュー、およびコミットメッセージのスコープには Claude Code v2.1.200 以降が必要です。PR またはイシュー本文の API レスポンスからのライブ個人データ(メールアドレス、アカウントまたは組織識別子、または使用メトリックなど)には、リポジトリの可視性または信頼境界に関わらず、これらの詳細と受信者に名前を付ける必要があります。そのチェックには Claude Code v2.1.203 以降が必要です

373* Claude Code 独自の tmux ペインにキーストロークを送信して独自のインターフェースを駆動。分類器はこれを Claude が独自の権限または監視を変更することとして扱います373* Claude Code 自体の tmux ペインにキーストロークを送信して、独自のインターフェースを駆動します。クラシファイアはこれを Claude が独自の権限または監視を変更することとして扱います

374 374 

375Claude Code v2.1.200 以降はこれらもデフォルトでブロックします。375Claude Code v2.1.200 以降は、これらもデフォルトでブロックします。

376 376 

377* セキュリティ動作を保護するテストまたはアサーションをコメントアウト、削除、または強制パス。例えば認証、アクセス制御、入力検証、またはサンドボックス377* セキュリティ動作を保護するテストまたはアサーション(認証、アクセス制御、入力検証、またはサンドボックスなど)をコメントアウト、削除、または強制的にパス

378* Claude がセッションで作成しなかった状態リソースの削除またはティアダウン。より具体的な削除ルールが適用されず、リソースに名前を付けなかった場合378* セッションで Claude が作成しなかった状態リソースを削除またはティアダウンし、より具体的な削除ルールが適用されず、リソースに名前を付けなかった場合

379* API ベース URL、プロキシエンドポイント、webhook レシーバー、またはレジストリミラーを、タスクに適さない第三者ホストにリポイント。`.env.example` のようなサンプルファイルを含む379* API ベース URL、プロキシエンドポイント、ウェブフックレシーバー、またはレジストリミラーを、タスクに適さないサードパーティホスト(`.env.example` などのサンプルファイルを含む)にリポイント

380* `git remote set-url` または `git remote add` でプッシュ先を変更。新しいリモートに名前を付けた場合を除く380* `git remote set-url` または `git remote add` で pushes の行き先を変更します。新しいリモートに名前を付けない限り

381* パブリックであることが知られているリポジトリにシークレットをプッシュ、またはそのリポジトリ独自の作業の一部ではない他の機密または機密材料をプッシュ。ドットファイルリポジトリ独自の主題は個人情報または信頼されたデータの唯一の例外であり、プライベートリポジトリからのコンテンツがパブリックサーフェスに到達することは同じ方法でブロックされます。両方の改善には Claude Code v2.1.203 以降が必要です。v2.1.203 より前では、個人データは機密材料とグループ化され、そのリポジトリ独自の作業の一部ではない場合にのみブロックされていました。リポジトリの可視性が確立されていない場合、分類器はそれだけではブロックしません。代わりに他のルールに対してコンテンツを判断します381* シークレットまたは個人または信頼されたデータを公開されていることが知られているリポジトリにプッシュ、またはそのリポジトリ自体の作業の一部ではない機密資料をそこにプッシュ。dotfiles リポジトリ自体の主題は個人または信頼されたデータの唯一の例外であり、プライベートリポジトリからのコンテンツがパブリックサーフェスに到達することは同じ方法でブロックされます。両方の改善には Claude Code v2.1.203 以降が必要です。v2.1.203 より前では、個人データは機密資料とグループ化され、そのリポジトリ自体の作業の一部ではない場合にのみブロックされました。リポジトリの可視性が確立されていない場合、クラシファイアはそれだけではブロックしません。代わりに他のルールに対してコンテンツを判定します

382* 異なるリポジトリまたは組織に対するプルリクエストを開く、`gh repo fork` でフォーク、または第三者リポジトリにプッシュ。外部ターゲットに名前を付けた場合を除く382* 別のリポジトリまたは組織に対するプルリクエストの開設、`gh repo fork` でのフォーク、またはサードパーティリポジトリへのプッシュ。その外部ターゲットに名前を付けない限り

383 383 

384Claude Code v2.1.203 以降はこれらもデフォルトでブロックします。384Claude Code v2.1.203 以降は、これらもデフォルトでブロックします。

385 385 

386* 機密ローカルストアからのコンテンツ、またはファイル名、パス、またはタイプが機密としてマークしているファイルからのコンテンツ。コミット、プッシュ、PR またはイシューテキスト、gist またはペースト、またはパッケージ公開に入る。ソースと宛先の両方に名前を付けない限り。セッショントランスクリプトと会話ログ、SSH キー、クラウド認証情報、ブラウザプロファイル、シェル履歴などの認証情報と設定ドットフォルダ、およびユーザーデータエクスポートはすべてカウントされ、リポジトリがプライベートであることはそれをクリアしません386* 機密ローカルストアからのコンテンツ、またはファイル名、パス、またはタイプが機密としてマークしているファイルからのコンテンツが、コミット、プッシュ、PR またはイシューテキスト、gist またはペースト、またはパッケージ公開に入ります。ソースと宛先の両方に名前を付けない限り。セッショントランスクリプトと会話ログ、SSH キー、クラウド認証情報、ブラウザプロファイル、シェル履歴などの認証情報と設定ドットフォルダ、およびユーザーデータエクスポートはすべてカウントされ、リポジトリがプライベートであることはそれをクリアしません

387 387 

388Claude Code v2.1.205 以降はこれらもデフォルトでブロックします。388Claude Code v2.1.205 以降は、これらもデフォルトでブロックします。

389 389 

390* Claude Code セッショントランスクリプト、`~/.claude/projects/` の `.jsonl` 履歴ファイル、または設定ディレクトリへの書き込み。直接またはシェルコマンドを通じて。ルールはまた Claude Code が独自のチェック用に各トランスクリプトエントリに追加するメタデータ行もカバーします。トランスクリプトの読み取りはブロックされません390* Claude Code セッショントランスクリプト、`~/.claude/projects/` またはカスタマイズされた設定ディレクトリの下の `.jsonl` 履歴ファイルへの書き込み。直接またはシェルコマンドを通じて。ルールはまた、Claude Code が独自のチェック用に各トランスクリプトエントリに追加するメタデータ行もカバーしています。トランスクリプトの読み取りはブロックされません

391* `rm -rf "$VAR"` または `Remove-Item -Recurse -Force $dir` のような再帰的な強制削除。ターゲットがシェル変数である場合、または分類器が見る会話のどこにも割り当てられていない変数に根ざしている glob。値は以前のコマンド出力からのみ来ており、分類器は決してコマンド出力を受け取らないため、分類器は削除ターゲットを他の削除ルールに対して検証できません。ブロックは削除されている正確なパスに名前を付けるか、Claude が削除をコマンドに書き込まれた解決済みリテラルパスで再実行するときにクリアされます。分類器が解決できるターゲットを持つ削除は影響を受けません。`Remove-Item` ターゲットが裸の `*` または `/*` または `\*` で終わる場合、分類器に到達しません。Claude Code は[それらを完全に拒否](#remove-item-in-powershell)します391* `rm -rf "$VAR"` または `Remove-Item -Recurse -Force $dir` などのシェル変数であるターゲット、またはそれをルートとする glob を持つ再帰的な強制削除。クラシファイアが見るコンバーセーションのどこにも割り当てられていません。値は以前のコマンド出力からのみ来ました。クラシファイアは決してそれを受け取らないため、クラシファイアは削除ターゲットを他の削除ルールに対して検証できません。削除されるパスに名前を付けるか、Claude が削除をコマンドに書き込まれた解決されたリテラルパスで再実行するとブロックがクリアされます。クラシファイアが解決できるターゲットを持つ削除は影響を受けません。ベア `*` または `/*` または `\*` で終わる `Remove-Item` ターゲットはクラシファイアに到達しません。Claude Code は[それらを直接拒否します](#remove-item-in-powershell)

392 392 

393Claude Code v2.1.257 以降はこれらもデフォルトでブロックします。393Claude Code v2.1.257 以降は、これらもデフォルトでブロックします。

394 394 

395* `169.254.169.254` のようなクラウドインスタンスメタデータエンドポイントから認証情報をリクエスト、またはマシン独自のサービスアカウントまたはノード ID でクラウド、クラスタ、またはレジストリ呼び出しを明示的に認証395* `169.254.169.254` などのクラウドインスタンスメタデータエンドポイントから認証情報をリクエスト、またはマシン自体のサービスアカウントまたはノード ID でクラウド、クラスタ、またはレジストリコールを明示的に認証

396* トンネル、リバースシェル、または書き直されたリゾルバーまたはプロキシ設定を通じて、パブリックホストに直接リクエスト以外のルートで到達396* トンネル、リバースシェル、または外部を指すように書き直されたリゾルバーまたはプロキシ設定など、直接リクエスト以外のルートでパブリックホストに到達

397* ノード証明書やノードのコンテナレジストリ認証など、タスクではなくホストに属する認証情報を読み取る397* ノード証明書やノードのコンテナレジストリ認証など、タスクではなくホストに属する認証情報を読み取る

398* Claude が開始しなかったシブリングコンテナ、ポッド、または VM に接続またはスキャン、またはその下のノード398* Claude が開始しなかったシブリングコンテナ、ポッド、または VM、またはコンテナの下のノードに接続またはスキャン

399 399 

400Claude Code がそれらの 1 つを許可することを意図した場所で実行される場合、[ホスト格納エントリ](/docs/ja/auto-mode-config#define-trusted-infrastructure)で `autoMode.environment` にそのセットアップを説明します。400Claude Code がこれらの 1 つを許可することを意図した場所で実行される場合は、`autoMode.environment` の[ホストコンテインメントエントリ](/docs/ja/auto-mode-config#define-trusted-infrastructure)でそのセットアップを説明してください。

401 401 

402Claude Code v2.1.261 以降はこれらもデフォルトでブロックします。402Claude Code v2.1.261 以降は、これらもデフォルトでブロックします。

403 403 

404* メッセージ、PR またはイシューテキスト、ドキュメント、またはリンクが開かれたり取得されたりする他の場所にパブリックペースト、図、またはデータ共有サービスへのリンクを投稿または書き込み。URL 自体がコンテンツを運ぶ場合。そのサービスに名前を付けない限り404* パブリックペースト、ダイアグラム、またはデータ共有サービスへのリンクをメッセージ、PR またはイシューテキスト、ドキュメント、またはリンクが開かれたり取得されたりする他の場所に投稿または書き込み。URL 自体が共有されるコンテンツを含む場合。そのサービスに名前を付けない限り

405 405 

406**デフォルトで許可**:406**デフォルトで許可**:

407 407 

408* 作業ディレクトリ内のローカルファイル操作408* ワーキングディレクトリ内のローカルファイル操作

409* ロックファイルまたはマニフェストで宣言されている依存関係のインストール409* ロックファイルまたはマニフェストで宣言された依存関係のインストール

410* `.env` を読み取り、認証情報を一致する API に送信410* `.env` の読み取りと、マッチング API への認証情報の送信

411* 読み取り専用 HTTP リクエスト411* 読み取り専用 HTTP リクエスト

412* リポジトリの任意のブランチへのプッシュ。デフォルトブランチを含む。デフォルトブランチ以外のブランチで、`production` または `gh-pages` のようなデプロイまたは公開ターゲットとしてマークされた名前は、カバーされません。分類器はそこへのプッシュを独自の条件で判断します。プッシュのコンテンツは依然として他のルールに対してチェックされ、[`permissions.deny` ルール](/docs/ja/permissions#manage-permissions)は依然としてすべてのモードで [書かれたとおり](/docs/ja/permissions#bash-rule-limits)プッシュコマンドをブロックでき、リモート独自のブランチ保護は依然として適用されます。v2.1.211 より前では、開始したブランチ、Claude が作成したブランチ、およびデフォルトブランチへのルーチンプッシュのみが許可されていました。v2.1.203 より前では、デフォルトブランチへの直接プッシュはすべてブロックされていました412* デフォルトブランチを含む、作業中のリポジトリのすべてのブランチへのプッシュ。`production` や `gh-pages` などのデプロイまたは公開ターゲットとしてマークされた非デフォルトブランチの名前は、カバーされていません。クラシファイアはそこへのプッシュを独自の条件で判定します。プッシュのコンテンツは依然として他のルールに対してチェックされ、[`permissions.deny` ルール](/docs/ja/permissions#manage-permissions)は依然として[書き込まれたとおり](/docs/ja/permissions#bash-rule-limits)すべてのモードでプッシュコマンドをブロックでき、リモート自体のブランチ保護は依然として適用されます。v2.1.211 より前では、開始したブランチへのプッシュ、Claude が作成したブランチ、および定期的なデフォルトブランチへのプッシュのみがデフォルトで許可されていました。v2.1.203 より前では、デフォルトブランチへの直接プッシュはブロックされていました

413 413 

414Claude Code v2.1.195 以降はデフォルトでこれらも許可します。414Claude Code v2.1.195 以降は、これらもデフォルトで許可します。

415 415 

416* Claude が同じセッション内で以前に作成した正確なジョブの削除416* 同じセッションで前に Claude が作成した正確なジョブの削除

417* タスクの一部として、セキュリティ関連のコード、設定、脅威モデルの読み取り、レビュー、または書き込み417* セキュリティ関連のコード、設定、および脅威モデルの読み取り、レビュー、または書き込み。タスクの一部として

418* 同じマルチエージェントセッションで連携しているエージェント間のメッセージ418* 同じマルチエージェントセッションで一緒に作業しているエージェント間のメッセージ

419* [`environment`](/docs/ja/auto-mode-config#define-trusted-infrastructure)にリストされている信頼できるドメイン、バケット、サービスへのデータ送信。これはデータフローのみをカバーし、同じインフラストラクチャ上の破壊的または認証情報操作ではありません419* [`environment`](/docs/ja/auto-mode-config#define-trusted-infrastructure) にリストされている信頼できるドメイン、バケット、およびサービスへのデータ送信。これはデータフローのみをカバーし、同じインフラストラクチャ上の破壊的または認証情報操作ではありません

420* [Claude in Chrome](/docs/ja/chrome)の信頼できる内部ドメイン、localhost、または名前を付けた URL へのナビゲーション420* [Chrome の Claude](/docs/ja/chrome) が信頼できる内部ドメイン、localhost、または指定した URL にナビゲート

421 421 

422サンドボックスネットワークアクセスリクエストはデフォルトで許可されるのではなく、分類器を通じてルーティングされます。v2.1.198 以降、分類器はネットワークホストとポートの判定を再利用し、接続のたびに再実行するのではなく。422サンドボックスネットワークアクセスリクエストは、デフォルトで許可されるのではなく、クラシファイアを通じてルーティングされます。v2.1.198 以降、クラシファイアはネットワークホストとポートの判定を再利用し、すべての接続で再実行するのではなく。

423 423 

424* 許可は新しいコンテンツが会話に入るまで再利用され、その時点でそのホストが再度チェックされます424* 許可は新しいコンテンツが会話に入るまで再利用され、その時点でそのホストが再度チェックされます

425* Claude Code v2.1.234 以降は、会話がコンテキストウィンドウを超えて成長したことによる拒否を再利用します。[コンパクション](/docs/ja/costs#reduce-token-usage)が分類器が読むものを縮小するまで、または新しいコンテンツが会話に入るまで。Claude Code はホストを再度チェックします425* Claude Code v2.1.234 以降は、会話がクラシファイアのコンテキストウィンドウを超えて成長したことによる拒否を再利用し、新しいコンテンツが会話に入るか、[コンパクション](/docs/ja/costs#reduce-token-usage)がクラシファイアが読むものを縮小するまで。Claude Code はホストを再度チェックします

426* 分類器がリクエストを評価することで到達した拒否は、インタラクティブ CLI のターンの間続きます。[非対話的モード](/docs/ja/headless)と Agent SDK セッションでは、Claude Code はターン境界がないため、ランの残りの間その拒否を再利用します426* クラシファイアがリクエストを評価することで到達した拒否は、インタラクティブ CLI のターンに続きます。[非インタラクティブモード](/docs/ja/headless)および Agent SDK セッションでは、Claude Code はセッションの残りの間、その拒否を再利用します。これらのセッションにはターン境界がないため

427* 権限モードまたはルールを変更すると、すべてのキャッシュされた判定がドロップされます427* 権限モードまたはルールを変更すると、すべてのキャッシュされた判定がドロップされます

428 428 

429`claude auto-mode defaults` を実行して完全なルールリストを JSON として印刷します。日常的なアクションがブロックされている場合、管理者は `autoMode.environment` 設定を通じて信頼できるリポジトリ、バケット、サービスを追加できます。[auto モードを設定](/docs/ja/auto-mode-config)を参照してください。429`claude auto-mode defaults` を実行して、完全なルールリストを JSON として出力します。日常的なアクションがブロックされる場合、管理者は `autoMode.environment` 設定を通じて信頼できるリポジトリ、バケット、およびサービスを追加できます。[auto モードの設定](/docs/ja/auto-mode-config)を参照してください。

430 430 

431リポジトリの任意のブランチへのプッシュおよびリクエストに一致するプルリクエストの作成はプロンプトなしで実行されます。ただし、プッシュまたはプルリクエストが[ブロックリスト](#what-the-classifier-blocks-by-default)に該当する場合(シークレットまたは機密データがリポジトリを離れる場合、またはプルリクエストが異なるリポジトリまたは組織をターゲットにする場合など)を除きます。auto モードにとどまりながらこれらのコマンドの前に人間のチェックポイントを要求するには、`permissions.ask` ルールを追加します。このルールは[書かれたとおりの](/docs/ja/permissions#bash-rule-limits)コマンドに一致します。[一般的な境界](/docs/ja/auto-mode-config#common-boundaries)を参照してください。431リポジトリの作業中のすべてのブランチへのプッシュとリクエストに一致するプルリクエストの作成は、プッシュまたはプルリクエストが[ブロックリスト](#what-the-classifier-blocks-by-default)(リポジトリを離れるシークレットまたは機密データ、または別のリポジトリまたは組織をターゲットにするプルリクエストなど)に該当しない限り、プロンプトなしで実行されます。auto モードにとどまりながら、これらのコマンドの前に人間のチェックポイントを要求するには、`permissions.ask` ルールを追加します。これはコマンド[書き込まれたとおり](/docs/ja/permissions#bash-rule-limits)に一致します。[一般的な境界](/docs/ja/auto-mode-config#common-boundaries)を参照してください。

432 432 

433<h3 id="first-read-outside-the-working-directories">433<h3 id="first-read-outside-the-working-directories">

434 作業ディレクトリ外の最初の読み取り434 ワーキングディレクトリの外での最初の読み取り

435</h3>435</h3>

436 436 

437[`permissions.blockReadsOutsideWorkingDirectories`](/docs/ja/settings-reference#permissions-blockreadsoutsideworkingdirectories)がオフの間、ファイル読み取りは auto モードでプロンプトなしで実行されます。[作業ディレクトリ](/docs/ja/permissions#working-directories)外のパスで Read、Grep、または Glob ツールを初めて使用するとき、Claude Code はそれらの読み取りを許可し続けるかどうかを尋ねます。437[`permissions.blockReadsOutsideWorkingDirectories`](/docs/ja/settings-reference#permissions-blockreadsoutsideworkingdirectories) がオフの間、ファイル読み取りは auto モードでプロンプトなしで実行されます。これには[ワーキングディレクトリ](/docs/ja/permissions#working-directories)の外での読み取りも含まれます。Claude が Read、Grep、または Glob ツールを初めて使用するときは、それらの外のパスで、Claude Code はそれらの読み取りを許可し続けるかどうかを尋ねます。

438 438 

439非対話的 `-p` 実行またはバックグラウンドセッションではプロンプトが表示されません。読み取りはそれ以前と同じように実行されます。439プロンプトは非インタラクティブ `-p` 実行またはバックグラウンドセッションには表示されません。そこでの読み取りは以前と同じように実行されます。

440 440 

441あなたが答えることに関係なく、Claude は作業を続けます。441答えに関わらず、Claude は作業を続けます。

442 442 

443* **Keep allowing**:読み取りが実行され、作業ディレクトリ外の後続の読み取りはそれ以前と同じように実行され、Claude Code はあなたの回答を記録するため、プロンプトは再度表示されません443* **許可し続ける**: 読み取りが実行され、ワーキングディレクトリの外での後の読み取りは以前と同じように実行され、Claude Code は答えを記録するため、プロンプトは再度表示されません

444* **Block from now on**:読み取りが拒否され、Claude Code はユーザー設定で [`permissions.blockReadsOutsideWorkingDirectories`](/docs/ja/settings-reference#permissions-blockreadsoutsideworkingdirectories)を `true` に設定します。これにより、ファイルツールはすべての後続セッションおよびすべての権限モードでそのような読み取りを拒否します。後で Claude がそのようなパスを読み取ることを許可するには、`/add-dir` でそのディレクトリを追加するか、設定を削除します444* **今からブロック**: 読み取りが拒否され、Claude Code は [`permissions.blockReadsOutsideWorkingDirectories`](/docs/ja/settings-reference#permissions-blockreadsoutsideworkingdirectories) をユーザー設定で `true` に設定します。これにより、ファイルツールはすべての後のセッションおよびすべての権限モードでそのような読み取りを拒否します。後で Claude がそのようなパスを読み取ることを許可するには、`/add-dir` でディレクトリを追加するか、設定を削除してください。

445* **Ask again next time**:読み取りが拒否され、作業ディレクトリ外の次の読み取りは再度プロンプトを表示します445* **次回また尋ねる**: 読み取りが拒否され、ワーキングディレクトリの外での次の読み取りが再度プロンプトします

446 446 

447<h3 id="boundaries-you-state-in-conversation">447<h3 id="boundaries-you-state-in-conversation">

448 会話で述べる境界448 会話で述べた境界

449</h3>449</h3>

450 450 

451分類器は会話で述べる境界をブロック信号として扱います。Claude に「プッシュしないで」または「デプロイ前にレビューを待って」と言う場合、分類器はデフォルトルールが許可する場合でも一致するアクションをブロックします。境界は後のメッセージで解除するまで有効です。Claude 独自の判断が条件が満たされたことは解除しません。451クラシファイアは、会話で述べた境界をブロック信号として扱います。「プッシュしないで」または「デプロイする前にレビューを待つ」と Claude に伝えた場合、クラシファイアはデフォルトルールが許可する場合でも、マッチングアクションをブロックします。境界は、後のメッセージでそれを解除するまで有効です。Claude 自身の条件が満たされたという判定は、それを解除しません。

452 452 

453境界はルールとして保存されません。分類器はチェックのたびにトランスクリプトから再読み込みするため、[コンテキストコンパクション](/docs/ja/costs#reduce-token-usage)が述べたメッセージを削除する場合、境界は失われる可能性があります。ハード保証の場合、代わりに [deny ルール](/docs/ja/permissions#manage-permissions)を追加します。453境界はルールとして保存されません。クラシファイアはチェックのたびにトランスクリプトから再度読み取るため、[コンテキストコンパクション](/docs/ja/costs#reduce-token-usage)が境界を述べたメッセージを削除すると、境界が失われる可能性があります。ハード保証の場合は、代わりに[deny ルール](/docs/ja/permissions#permission-rule-syntax)を追加してください。

454 454 

455<h3 id="when-auto-mode-falls-back">455<h3 id="when-auto-mode-falls-back">

456 auto モードがフォールバックする場合456 auto モードがフォールバックするとき

457</h3>457</h3>

458 458 

459Auto モードがセッションのアクションを承認できない場合、ケースに依存します。459auto モードがセッションのアクションを承認できない場合、何が起こるかはケースによって異なります。

460 460 

461* **ブロックされたアクション**:Claude Code は通知を表示し、`/permissions` の **Recently denied** タブの下にアクションをリストします。そこで `r` を押して手動承認で再試行できます。分類器が[アクションに判定を出さない](/docs/ja/errors#auto-mode-cannot-determine-the-safety-of-an-action)場合。auto モード以外の安全チェックが分類器独自のリクエストを拒否したか、その応答が解析されなかったため、Claude Code は通知または **Recently denied** エントリなしでアクションを拒否します。461* **ブロックされたアクション**: Claude Code は通知を表示し、`/permissions` の下の **Recently denied** タブにアクションをリストします。そこで `r` を押して、手動承認でそれを再試行できます。クラシファイアが[アクションに判定を出さない](/docs/ja/errors#auto-mode-cannot-determine-the-safety-of-an-action)場合。auto モードとは別の安全チェックがクラシファイアのリクエスト自体を拒否したか、その応答が解析されなかったため、Claude Code は通知または **Recently denied** エントリなしでアクションを拒否します。

462* **繰り返されるブロック**:分類器がアクションを 3 回連続でブロックするか、合計 20 回ブロックする場合、auto モードは一時停止し、Claude Code はプロンプトを再開します。プロンプトされたアクションを承認すると auto モードが再開されます。これらのしきい値は設定不可です。許可されたアクションは連続カウンターをリセットし、合計カウンターはセッション中に保持され、独自の制限がフォールバックをトリガーする場合にのみリセットされます。Claude Code は、[auto モード以外の安全チェックが分類器独自のリクエストを拒否](/docs/ja/errors#auto-mode-cannot-determine-the-safety-of-an-action)する場合、拒否をどちらのしきい値にもカウントしません。リンクされたエントリは Claude Code がそれらの拒否を処理する方法をカバーしています。462* **繰り返されるブロック**: クラシファイアが連続して 3 回またはセッション全体で 20 回アクションをブロックする場合、auto モードは一時停止し、Claude Code はプロンプトを再開します。プロンプトされたアクションを承認すると、auto モードが再開されます。これらのしきい値は設定不可能です。許可されたアクションは連続カウンターをリセットしますが、合計カウンターはセッション用に保持され、独自のリミットがフォールバックをトリガーするときのみリセットされます。Claude Code は、[auto モードとは別の安全チェックがクラシファイアのリクエストを拒否する](/docs/ja/errors#auto-mode-cannot-determine-the-safety-of-an-action)場合、拒否をいずれのしきい値にもカウントしません。リンクされたエントリは、Claude Code がそれらの拒否をどのように処理するかについて説明しています。

463* **プロンプトできないセッション**:[`--permission-prompt-tool`](/docs/ja/cli-reference#cli-flags)のない [非対話的](/docs/ja/headless) `-p` 実行にはプロンプトするユーザーがいません。繰り返されるブロックがしきい値に到達する場合、アクションは実行されず、Claude は作業を続けます。[auto モード以外の安全チェックが分類器のリクエストを拒否](/docs/ja/errors#auto-mode-cannot-determine-the-safety-of-an-action)する場合も同じです。Claude Code はどちらのケースでも実行を停止しません。463* **プロンプトできないセッション**: [`--permission-prompt-tool`](/docs/ja/cli-reference#cli-flags) のない[非インタラクティブ](/docs/ja/headless) `-p` 実行には、フォールバックするプロンプトがありません。繰り返されるブロックがしきい値に到達すると、アクションは実行されず、Claude は作業を続けます。[auto モードとは別の安全チェックがクラシファイアのリクエストを拒否する](/docs/ja/errors#auto-mode-cannot-determine-the-safety-of-an-action)場合も同じことが適用されます。Claude Code はどちらの場合もランを停止しません。

464* **チェック中のモード切り替え**:分類器チェックが保留中の間に権限モードを切り替える場合、Claude Code は新しいモードが要求しなかった判定を破棄します。代わりに、プロンプトが表示されるか、[`dontAsk` モード](#allow-only-pre-approved-tools-with-dontask-mode)でアクションが自動拒否されます。464* **チェック中のモード切り替え**: クラシファイアチェックが保留中に権限モードを切り替える場合、Claude Code は新しいモードが要求しなかった判定を破棄し、それを適用するのではなく。代わりに、プロンプトされるか、[`dontAsk` モード](#allow-only-pre-approved-tools-with-dontask-mode)でアクションが自動拒否されます。

465 465 

466繰り返されるブロックは通常、分類器がインフラストラクチャについてのコンテキストが不足していることを意味します。`/feedback` を使用して誤検知を報告するか、管理者に [信頼できるインフラストラクチャを設定](/docs/ja/auto-mode-config)するよう依頼してください。466繰り返されるブロックは通常、クラシファイアがインフラストラクチャについてのコンテキストを欠いていることを意味します。`/feedback` を使用して誤検知を報告するか、管理者に[信頼できるインフラストラクチャを設定](/docs/ja/auto-mode-config)させてください。

467 467 

468<span id="how-the-classifier-evaluates-actions" />468<span id="how-the-classifier-evaluates-actions" />

469 469 

470<AccordionGroup>470<AccordionGroup>

471 <Accordion title="分類器がアクションを評価する方法">471 <Accordion title="クラシファイアがアクションを評価する方法">

472 各アクションは固定の決定順序を通過します。最初に一致するステップが勝ちます。472 各アクションは固定の決定順序を通過します。最初にマッチするステップが勝ちます。

473 473 

474 1. [allow、ask、または deny ルール](/docs/ja/permissions#manage-permissions)に一致するアクションは即座に解決されます。ただし、[保護されたパス](#protected-paths)への書き込みは、allow ルールが一致する場合でも分類器にルーティングされます。`rm` と `rmdir` の削除が[重要なパス](#critical-paths)をターゲットにしている場合も Claude Code v2.1.218 以降で分類器にルーティングされます。[`requiresUserInteraction`](/docs/ja/mcp#require-approval-for-a-specific-tool)でマークされた MCP ツールは、allow ルールが一致する場合でも直接プロンプトを表示し、[組織が `ask`](/docs/ja/mcp#organization-controls-on-connector-tools)に設定したコネクタツールも同じです。コンテンツスコープの ask ルール(`Bash(git push *)` など)は権限プロンプトにフォールバックします474 1. [allow、ask、または deny ルール](/docs/ja/permissions#manage-permissions)に一致するアクションは直ちに解決されます。[保護されたパス](#protected-paths)への書き込みは allow ルールが一致する場合でもクラシファイアにルーティングされます。また、Claude Code v2.1.218 以降では、[重要なパス](#critical-paths)をターゲットにした `rm` および `rmdir` 削除も同様です。[`requiresUserInteraction`](/docs/ja/mcp#require-approval-for-a-specific-tool) とマークされた MCP ツールは allow ルールが一致する場合でも直接プロンプトします。また、セッションでそのセッティングが Claude Code に到達する[組織が `ask` に設定したコネクタツール](/docs/ja/mcp#organization-controls-on-connector-tools)も同様です。`Bash(git push *)` などのコマンドのコンテンツで一致する ask ルールは、権限プロンプトにフォールバックします

475 2. 読み取り専用アクションと作業ディレクトリ内のファイル編集は自動承認されます。[保護されたパス](#protected-paths)への書き込みと[作業ディレクトリ外の最初の読み取り](#first-read-outside-the-working-directories)を除く。これはプロンプトを表示します475 2. 読み取り専用アクションとワーキングディレクトリ内のファイル編集は自動承認されます。ただし、[保護されたパス](#protected-paths)および[ワーキングディレクトリの外での最初の読み取り](#first-read-outside-the-working-directories)への書き込みは除きます。これはプロンプトします

476 3. その他すべては分類器に送られます。ステップ 1 で直接プロンプトを表示するコネクタツールと`requiresUserInteraction` MCP ツールは分類器に到達しません。そのため、組織が必要とする承認も同意ステップも自動承認されません476 3. その他すべてはクラシファイアに送られます。ステップ 1 で直接プロンプトするコネクタツールおよび` requiresUserInteraction` MCP ツールはクラシファイアに到達しないため、組織が必要とする承認も同意ステップも自動承認されません

477 4. 分類器がブロックする場合、Claude は理由を受け取り、別のアプローチを試みます。ほとんどのセッションでは、理由は書かれた説明ではなく固定テキスト `Blocked by classifier` です。Claude Code v2.1.208 以降。[拒否をレビュー](/docs/ja/auto-mode-config#review-denials)を参照してください477 4. クラシファイアがブロックする場合、Claude は理由を受け取り、代替を試みます。ほとんどのセッションでは、理由は `[Data Exfiltration]` などのクラシファイアが一致したルールに名前を付けます。書き込まれた説明ではなく。[拒否をレビュー](/docs/ja/auto-mode-config#review-denials)を参照してください

478 478 

479 Auto モードに入ると、任意のコード実行を許可する広いルールが削除されます。479 auto モードに入ると、任意のコード実行を許可する広いルールがドロップされます。

480 480 

481 * ブランケット `Bash(*)` または `PowerShell(*)`481 * ブランケット `Bash(*)` または `PowerShell(*)`

482 * `Bash(python*)` のようなワイルドカードインタープリター482 * `Bash(python*)` などのワイルドカードインタープリタ

483 * パッケージマネージャー実行コマンド483 * パッケージマネージャー実行コマンド

484 * `Agent` allow ルール484 * `Agent` allow ルール

485 * [`Monitor`](/docs/ja/tools-reference#monitor-tool) allow ルール。Claude Code は Monitor コマンドをシェルを通じて実行するため485 * [`Monitor`](/docs/ja/tools-reference#monitor-tool) allow ルール。Claude Code は Monitor コマンドをシェルを通じて実行するため

486 486 

487 `Bash(npm test)` のような狭いルールは引き継がれます。Claude Code は削除されたルールを auto モードを終了するときに復元します。v2.1.236 より前では、Claude Code は auto モードで `Monitor` allow ルールを有効なままにしていたため、ツール全体に一致するルールは分類器レビューなしで Monitor コマンドを承認していました。487 `Bash(npm test)` などの狭いルールは有効なままです。Claude Code は auto モードを離れるときにドロップされたルールを復元します。v2.1.236 より前では、Claude Code は auto モードで `Monitor` allow ルールを有効なままにしていたため、ツール全体に一致するルールは分類器レビューなしで Monitor コマンドを承認しました。

488 488 

489 Claude Code はまた、コミットされていない作業を破棄するコマンド(`git reset --hard` または `rm -rf` など)の前に `git status` を実行し、ステージされた、変更された、または追跡されていない作業が存在するかどうかを分類器に表示します。Claude Code はリポジトリの git 設定が `status.showUntrackedFiles=no` を設定している場合でも、そのチェックで追跡されていないファイルを報告します。489 Claude Code はまた、`git reset --hard` や `rm -rf` などのコミットされていない作業を破棄するコマンドの前に `git status` を実行し、ステージされた、変更された、または追跡されていない作業が存在するかどうかをクラシファイアに表示します。Claude Code は、リポジトリの git 設定が `status.showUntrackedFiles=no` を設定する場合でも、そのチェックで追跡されていないファイルを報告します。

490 490 

491 分類器はユーザーメッセージ、ファイル読み取りや検索などの読み取り専用ルックアップ以外のツール呼び出し、および CLAUDE.md コンテンツを見ます。ツール結果は削除されるため、ファイルまたは Web ページの敵対的なコンテンツはそれを直接操作することはできません。[PostToolUse フック](/docs/ja/hooks#annotate-a-result-for-the-auto-mode-classifier)の `classifierContext` フィールドでコールの結果に注釈を付けることができます。分類器はそれをアプリケーション提供コンテキストとして読みます。491 クラシファイアはユーザーメッセージ、ファイル読み取りや検索などの読み取り専用ルックアップ以外のツール呼び出し、および CLAUDE.md コンテンツを見ます。ツール結果は削除されるため、ファイルまたはウェブページの敵対的なコンテンツはそれを直接操作できません。呼び出しの結果に[PostToolUse フック の `classifierContext` フィールド](/docs/ja/hooks#annotate-a-result-for-the-auto-mode-classifier)で注釈を付けることができます。クラシファイアはアプリケーション提供のコンテキストとして読み取ります。

492 492 

493 別のサーバー側プローブは受信ツール結果をスキャンし、Claude がそれを読む前に疑わしいコンテンツにフラグを立てます。これらのレイヤーがどのように連携するかについての詳細については、[auto モードのお知らせ](https://claude.com/blog/auto-mode)および [エンジニアリング深掘り](https://www.anthropic.com/engineering/claude-code-auto-mode)を参照してください。493 別のサーバー側プローブは、受信ツール結果をスキャンし、Claude がそれを読む前に疑わしいコンテンツにフラグを立てます。これらのレイヤーがどのように連携するかについての詳細は、[auto モードアナウンスメント](https://claude.com/blog/auto-mode)および[エンジニアリング深掘り](https://www.anthropic.com/engineering/claude-code-auto-mode)を参照してください。

494 </Accordion>494 </Accordion>

495 495 

496 <Accordion title="auto モードがサブエージェントを処理する方法">496 <Accordion title="auto モードがサブエージェントを処理する方法">

497 分類器は [サブエージェント](/docs/ja/sub-agents)の作業を 3 つのポイントでチェックします。497 クラシファイアは[サブエージェント](/docs/ja/sub-agents)作業を 3 つのポイントでチェックします。

498 498 

499 1. サブエージェント開始前に、委譲されたタスク説明が評価されるため、危険に見えるタスクは生成時にブロックされます。499 1. サブエージェントが開始する前に、委任されたタスク説明が評価されるため、危険に見えるタスクはスポーン時にブロックされます。

500 2. サブエージェント実行中、その各アクションは親セッションと同じルールで分類器を通過し、サブエージェントのフロントマターの任意の `permissionMode` は無視されます。500 2. サブエージェントが実行中の間、その各アクションはクラシファイアを通じて親セッションと同じルールで通過し、サブエージェントのフロントマターの `permissionMode` は無視されます。

501 3. サブエージェント完了時、分類器はその完全なアクション履歴をレビューします。リターンチェックが懸念事項にフラグを立てた場合、セキュリティ警告がサブエージェントの結果の前に付加されます。別の API 安全チェックがレビューリクエスト自体を拒否する場合、Claude Code は依然としてサブエージェントの結果を返し、作業が未レビューで信頼されていないものとして扱うべきであることを警告する前に付加されます。501 3. サブエージェントが完了すると、クラシファイアはその完全なアクション履歴をレビューします。その戻りチェックが懸念にフラグを立てる場合、セキュリティ警告がサブエージェントの結果の前に付加されます。別の API 安全チェックがレビューリクエスト自体を拒否する場合、Claude Code は依然としてサブエージェントの結果を返し、作業がレビューされていないため信頼されていないものとして扱うべきという警告が前に付加されます。

502 502 

503 ステップ 1 には Claude Code v2.1.178 以降が必要です。以前のバージョンはステップ 2 と 3 で分類器を適用しましたが、サブエージェント開始前にタスク説明を評価しませんでした。503 ステップ 1 には Claude Code v2.1.178 以降が必要です。以前のバージョンはステップ 2 と 3 でクラシファイアを適用しましたが、サブエージェントが開始する前にタスク説明を評価しませんでした。

504 </Accordion>504 </Accordion>

505 505 

506 <Accordion title="コストとレイテンシ">506 <Accordion title="コストとレイテンシ">

507 分類器は `/model` 選択ではなく Claude Sonnet 5 でデフォルトで実行されます。Anthropic がサーバー側で設定する分類器モデルがそのデフォルトより優先されます。セッションのモデルが Claude Sonnet 4.6 の場合、または [`availableModels`](/docs/ja/model-config#restrict-model-selection)が Sonnet 5 を除外する場合、分類器はセッションのモデルで実行されます。または [Fable モデル](/docs/ja/model-config#work-with-fable)で実行する場合は Opus モデルで。Anthropic API 以外のプロバイダーでは、その Opus フォールバックはプロバイダーのデフォルト Opus モデルです。507 クラシファイアはデフォルトでは `/model` 選択ではなく Claude Sonnet 5 で実行されます。Anthropic がサーバー側で設定するクラシファイアモデルは、そのデフォルトより優先されます。セッションのモデルが Claude Sonnet 4.6 の場合、または [`availableModels`](/docs/ja/model-config#restrict-model-selection) が Sonnet 5 を除外する場合、クラシファイアは代わりにセッションのモデルで実行されます。またはセッションが[Fable モデル](/docs/ja/model-config#work-with-fable)で実行される場合は Opus モデルで。Anthropic API 以外のプロバイダーでは、その Opus フォールバックはプロバイダーのデフォルト Opus モデルです。

508 508 

509 セッションの最初の auto モードリクエストは Sonnet 5 デフォルトを検証します。リクエストが成功する場合、Sonnet 5 はセッションの分類器モデルのままです。モデルが利用できないため失敗する場合、セッションはフォールバックを使用します。その検証が解決した後、分類器のモデルはセッション中に変更されません。509 セッションの最初の auto モードリクエストは Sonnet 5 デフォルトを検証します。リクエストが成功する場合、Sonnet 5 はセッションのクラシファイアモデルのままであり、モデルが利用不可であるため失敗する場合、セッションは代わりにフォールバックを使用します。その検証が解決した後、クラシファイアのモデルはセッション用に変更されません。

510 510 

511 Enterprise プランおよび Claude API を使用するアカウント、[Claude Platform on AWS](/docs/ja/claude-platform-on-aws)、Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry では、分類器呼び出しはトークン使用量にカウントされます。各チェックはトランスクリプトの一部と保留中のアクションを送信し、実行前にラウンドトリップを追加します。保護されたパス外の読み取りと作業ディレクトリ編集は分類器をスキップするため、オーバーヘッドは主にシェルコマンドとネットワーク操作から発生します。511 Enterprise プランおよび Claude API を使用するアカウント、[AWS 上の Claude Platform](/docs/ja/claude-platform-on-aws)、Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry では、クラシファイア呼び出しはトークン使用量にカウントされます。各チェックはトランスクリプトの一部と保留中のアクションを送信し、実行前にラウンドトリップを追加します。読み取りと保護されたパス外のワーキングディレクトリ編集はクラシファイアをスキップするため、オーバーヘッドは主にシェルコマンドとネットワーク操作から来ます。

512 512 

513 分類器はサンドボックスネットワーク判定をホストとポートに対して再利用するため、同じホストへの繰り返される接続は各チェックを追加しません。[分類器がデフォルトでブロックするもの](#what-the-classifier-blocks-by-default)は許可と拒否がどのくらい続くかを説明しています。513 クラシファイアはホストとポートのサンドボックスネットワーク判定を再利用するため、同じホストへの繰り返された接続は各々チェックを追加しません。[クラシファイアがデフォルトでブロックするもの](#what-the-classifier-blocks-by-default)は、許可と拒否がどのくらい続くかについて説明しています。

514 </Accordion>514 </Accordion>

515</AccordionGroup>515</AccordionGroup>

516 516 


518 dontAsk モードで事前承認済みツールのみを許可する518 dontAsk モードで事前承認済みツールのみを許可する

519</h2>519</h2>

520 520 

521`dontAsk` モードを設定すると、Claude Code はプロンプトが表示されるすべてのツール呼び出しを自動的に拒否します。Claude は `permissions.allow` ルール、[読み取り専用 Bash コマンド](/docs/ja/permissions#read-only-commands)、および [PreToolUse フック](/docs/ja/permissions#extend-permissions-with-hooks)によって承認された呼び出しに一致するアクションのみを実行します。このモードは CI パイプラインまたは Claude が実行を許可されているものを事前に定義する制限環境で使用します。セッションは入力を待つことはありません。このモードがアクティブな間、ステータスバーに `⏵⏵ don't ask on` が表示されます。521`dontAsk` モードを設定すると、Claude Code は本来プロンプトを表示するすべてのツール呼び出しを自動的に拒否します。Claude は Manual モードで承認が不要なアクション(作業ディレクトリ内のファイル読み取りや[読み取り専用 Bash コマンド](/docs/ja/permissions#read-only-commands)など)、および `permissions.allow` ルールに一致するアクション、[PreToolUse フック](/docs/ja/permissions#extend-permissions-with-hooks)によって承認されたコール実行を継続します。このモードは CI パイプラインや制限された環境で使用します。Claude が実行できる内容を事前に定義でき、セッションは入力を待つことはありません。このモードがアクティブな間、ステータスバーに `⏵⏵ don't ask on` が表示されます。

522 522 

523Claude Code は明示的な [`ask` ルール](/docs/ja/permissions#manage-permissions)に一致する呼び出しを、プロンプトを表示するのではなく拒否します。また、組み込みの `AskUserQuestion` ツールは allow ルールが一致する場合でも拒否し、[組織が `ask`](/docs/ja/mcp#organization-controls-on-connector-tools)に設定したコネクタツールも、その設定が Claude Code に届くセッションでは同様に拒否します。[`_meta["anthropic/requiresUserInteraction"]`](/docs/ja/mcp#require-approval-for-a-specific-tool)でマークされた MCP ツールも同じ方法で拒否されます。これは、その承認カードがこのモードが収集することのない回答を必要とするためです。これには Claude Code v2.1.199 以降が必要です。523Claude Code は、プロンプトを表示する代わりに、明示的な[`ask` ルール](/docs/ja/permissions#manage-permissions)に一致するコールを拒否します。また、allow ルールが一致する場合でも組み込みの `AskUserQuestion` ツールを拒否し、その設定が Claude Code に到達するセッションで[組織が `ask` に設定したコネクタツール](/docs/ja/mcp#organization-controls-on-connector-tools)についても同じことを行います。[`_meta["anthropic/requiresUserInteraction"]`](/docs/ja/mcp#require-approval-for-a-specific-tool)でマークされた MCP ツールも同じ方法で拒否します。これは、承認カードがこのモードが収集しない回答を必要とするためです。これには Claude Code v2.1.199 以降が必要です。

524 524 

525`rm` と `rmdir` の削除が[重要なパス](#critical-paths)をターゲットにしている場合(`rm -rf /` や `rm -rf ~` など)は、allow ルールが一致する場合でも、または `PreToolUse` フックが許可する場合でも拒否されます。525[重要なパス](#critical-paths)(`rm -rf /` や `rm -rf ~` など)を対象とした `rm` および `rmdir` の削除は、allow ルールが一致する場合や `PreToolUse` フックが許可する場合でも拒否されます。

526 526 

527[Web 上の Claude Code](/docs/ja/claude-code-on-the-web)は設定ファイルから `defaultMode: "dontAsk"` を無視します。[bypassPermissions](#skip-all-checks-with-bypasspermissions-mode)の詳細を参照してください。527[Claude Code on the web](/docs/ja/claude-code-on-the-web) のクラウドセッションは `defaultMode: "dontAsk"` を無視します。詳細は[bypassPermissions](#skip-all-checks-with-bypasspermissions-mode)を参照してください。

528 528 

529フラグで起動時に設定します。529スタートアップ時にフラグで設定します:

530 530 

531```bash theme={null}531```bash theme={null}

532claude --permission-mode dontAsk532claude --permission-mode dontAsk

platforms.md +10 −10

Details

48 ターミナルから離れているときに作業する48 ターミナルから離れているときに作業する

49</h2>49</h2>

50 50 

51Claude Code offers several ways to work when you're not at your terminal. They differ in what triggers the work, where Claude runs, and how much you need to set up.51Claude Code は、ターミナルにいない時に作業するための複数の方法を提供しています。これらは、何が作業をトリガーするか、Claude がどこで実行されるか、そしてセットアップにどの程度の手間が必要かが異なります。

52 52 

53| | Trigger | Claude runs on | Setup | Best for |53| | トリガー | Claude が実行される場所 | セットアップ | 最適な用途 |

54| :------------------------------------------------------- | :--------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------ |54| :------------------------------------------------------- | :------------------------------------------------------------------------ | :---------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------ | :-------------------------- |

55| [Dispatch](/docs/en/desktop#sessions-from-dispatch) | Message a task from the Claude mobile app | Your machine (Desktop) | [Pair the mobile app with Desktop](https://support.claude.com/en/articles/13947068) | Delegating work while you're away, minimal setup |55| [Dispatch](/docs/ja/desktop#sessions-from-dispatch) | Claude モバイルアプリからタスクをメッセージで送信 | あなたのマシン(Desktop) | [モバイルアプリを Desktop とペアリング](https://support.claude.com/en/articles/13947068) | 外出中の作業委譲、最小限のセットアップ |

56| [Remote Control](/docs/en/remote-control) | Drive a running session from [claude.ai/code](https://claude.ai/code) or the Claude mobile app | Your machine (CLI or VS Code) | Run `claude remote-control` | Steering in-progress work from another device |56| [Remote Control](/docs/ja/remote-control) | [claude.ai/code](https://claude.ai/code) または Claude モバイルアプリから実行中のセッションを操作 | あなたのマシン(CLI または VS Code) | `claude remote-control` を実行 | 別のデバイスから進行中の作業を操舵 |

57| [Channels](/docs/en/channels) | Push events from a chat app like Telegram or Discord, or your own server | Your machine (CLI) | [Install a channel plugin](/docs/en/channels#quickstart) or [build your own](/docs/en/channels-reference) | Reacting to external events like CI failures or chat messages |57| [Channels](/docs/ja/channels) | Telegram や Discord などのチャットアプリ、またはあなた自身のサーバーからイベントをプッシュ | あなたのマシン(CLI) | [チャネルプラグインをインストール](/docs/ja/channels#quickstart)するか、[独自に構築](/docs/ja/channels-reference) | CI 失敗やチャットメッセージなどの外部イベントに対応 |

58| [Slack](/docs/en/slack) | Mention `@Claude` in a team channel | Anthropic cloud | [Install the Slack app](/docs/en/slack#setting-up-claude-code-in-slack) with [Claude Code on the web](/docs/en/claude-code-on-the-web) enabled | PRs and reviews from team chat |58| [Slack](/docs/ja/slack) | チームチャネルで `@Claude` をメンション | Anthropic クラウド | [Slack アプリをインストール](/docs/ja/slack#setting-up-claude-code-in-slack)し、[ウェブ上の Claude Code](/docs/ja/claude-code-on-the-web) を有効化 | チームチャットからの PR とレビュー |

59| [Self-hosted environments](/docs/en/self-hosted-environments) | Start a [cloud session](/docs/en/claude-code-on-the-web) and pick your organization's environment | Your organization's infrastructure | [Deploy runners](/docs/en/self-hosted-environments-quickstart), on Team and Enterprise plans | Cloud sessions that must run inside your network |59| [Self-hosted environments](/docs/ja/self-hosted-environments) | [クラウドセッション](/docs/ja/claude-code-on-the-web)を開始し、組織の環境を選択 | あなたの組織のインフラストラクチャ | [ランナーをデプロイ](/docs/ja/self-hosted-environments-quickstart)、Team および Enterprise プラン | ネットワーク内で実行する必要があるクラウドセッション |

60| [Scheduled tasks](/docs/en/scheduled-tasks) | Set a schedule | [CLI](/docs/en/scheduled-tasks), [Desktop](/docs/en/desktop-scheduled-tasks), or [cloud](/docs/en/routines) | Pick a frequency | Recurring automation like daily reviews |60| [Scheduled tasks](/docs/ja/scheduled-tasks) | スケジュールを設定 | [CLI](/docs/ja/scheduled-tasks)、[Desktop](/docs/ja/desktop-scheduled-tasks)、または[クラウド](/docs/ja/routines) | 頻度を選択 | 日次レビューなどの定期的な自動化 |

61 61 

62どこから始めるべきか不確かな場合は、[CLI をインストール](/docs/ja/quickstart)してプロジェクトディレクトリで実行します。ターミナルを使用したくない場合は、[Desktop](/docs/ja/desktop-quickstart) がグラフィカルインターフェースで同じエンジンを提供します。62どこから始めるべきか不確かな場合は、[CLI をインストール](/docs/ja/quickstart)してプロジェクトディレクトリで実行します。ターミナルを使用したくない場合は、[Desktop](/docs/ja/desktop-quickstart) がグラフィカルインターフェースで同じエンジンを提供します。

63 63 

Details

123 123 

124依存関係のローカルコピーは、エントリがマーケットプレイスを指定している場合でも、プラグインの依存関係エントリを満たします。そのため、マーケットプレイスから依存関係をインストールする必要はありません。Claude Code は、ローカルコピーに対して[バージョン制約](#declare-a-dependency-with-a-version-constraint)をチェックしないため、ローカルの `plugin.json` には `version` が不要です。v2.1.242 より前では、マーケットプレイスを指定する依存関係エントリはローカルコピーと一致せず、Claude Code はロード時にプラグインを無効にしていました。124依存関係のローカルコピーは、エントリがマーケットプレイスを指定している場合でも、プラグインの依存関係エントリを満たします。そのため、マーケットプレイスから依存関係をインストールする必要はありません。Claude Code は、ローカルコピーに対して[バージョン制約](#declare-a-dependency-with-a-version-constraint)をチェックしないため、ローカルの `plugin.json` には `version` が不要です。v2.1.242 より前では、マーケットプレイスを指定する依存関係エントリはローカルコピーと一致せず、Claude Code はロード時にプラグインを無効にしていました。

125 125 

126両方のプラグインが 1 つの親フォルダに存在する場合、そのフォルダを `--plugin-dir` に 1 回渡すことができます。フォルダ自体がプラグインでない場合、Claude Code は `.claude-plugin/plugin.json` を持つ各子フォルダをロードします。Claude Code v2.1.265 以降が必要です。

127 

126マーケットプレイスから依存関係をインストールしていない場合、ローカルコピーがなくなるとプラグインのロードが停止します。128マーケットプレイスから依存関係をインストールしていない場合、ローカルコピーがなくなるとプラグインのロードが停止します。

127 129 

128* **ローカルコピーを無効にした場合**: Claude Code は次のプラグインロード時にプラグインを無効にします。マーケットプレイスを指定する依存関係エントリの場合、Claude Code は `Dependency "<name>@inline" is disabled — enable it or remove the dependency` と報告します。ベアネームエントリの場合は、依存関係をベアネームで報告します。`<name>@inline` は、Claude Code がすべての `--plugin-dir` および `--plugin-url` プラグインを識別する方法です。130* **ローカルコピーを無効にした場合**: Claude Code は次のプラグインロード時にプラグインを無効にします。マーケットプレイスを指定する依存関係エントリの場合、Claude Code は `Dependency "<name>@inline" is disabled — enable it or remove the dependency` と報告します。ベアネームエントリの場合は、依存関係をベアネームで報告します。`<name>@inline` は、Claude Code がすべての `--plugin-dir` および `--plugin-url` プラグインを識別する方法です。

plugin-evals.md +705 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# evals でプラグインをテストする

6 

7> Claude Code プラグイン用の eval ケースを作成し、claude plugin eval で実行し、結果をグレード化し、プラグインなしのベースラインと比較し、CI でスコアをゲートする。

8 

9`claude plugin eval` は [プラグイン](/docs/ja/plugins) をテストケースのスイートに対して実行し、結果をスコア化します。各ケースは現実的なプロンプトと 1 つ以上のグレーダーで構成されます。グレーダーは Claude が生成したものに対する合格/不合格チェックで、返信に対する正規表現、特定のツールが呼び出されたかどうか、または第 2 のモデルが返信を判定するルーブリックなどです。

10 

11スイートを手動で作成する必要はありません。`claude plugin eval init` はプラグインについて質問し、ケースとグレーダーを提案し、それらを試し、ファイルを作成します。既に開いているセッションから Claude に同じことを行うよう依頼することもできます。

12 

13evals を使用して、プラグインがどの程度確実に Claude を正しい結果に導くかを測定し、プラグインを変更したり新しいモデルがリリースされたりしたときの回帰を検出し、プラグインなしの場合と比較してプラグインが何を貢献しているかを確認します。

14 

15このページはプラグインとスキル作成者向けで、動作するプラグインがあり、その動作をテストしたい場合、および CI でプラグイン変更をゲートするチーム向けです。そのケース形式は [skill-creator プラグイン](/docs/ja/skills#run-evals-with-skill-creator) が使用する `evals/evals.json` ファイルとは別です。プラグインを作成するには [プラグインを作成する](/docs/ja/plugins) を参照してください。プラグインの動作ではなく構文とスキーマエラーをチェックするには、[`claude plugin validate`](/docs/ja/plugins-reference#plugin-validate) を使用します。

16 

17<Note>

18 すべての eval 実行とすべてのジャッジグレーダーは、アカウント上の実際のモデル呼び出しで、プランの使用量または API 請求に対してカウントされます。そのため、最初に [要件](#requirements) を確認してください。その後、[最初の eval スイートを作成](#create-your-first-eval-suite) するか、既にスイートがある場合は [CI で evals を実行](#run-evals-in-ci) に進んでください。

19</Note>

20 

21<h2 id="requirements">

22 要件

23</h2>

24 

25プラグイン evals を実行するには、以下が必要です。

26 

27* Claude Code v2.1.269 以降。`claude --version` で確認し、`claude update` でアップグレードしてください。

28* `plugin.json` または `.claude-plugin/plugin.json` マニフェストを含むプラグインディレクトリ、または [skills-directory プラグイン](/docs/ja/plugins-reference#skills-directory-plugins)。

29* 通常の Claude Code セッションで使用するのと同じ認証とモデルプロバイダー。Eval 実行、judge-scored graders、および `claude plugin eval init` はあなたの認証情報でモデルを呼び出すため、プランの使用量制限または API 請求に対してカウントされます。コマンドがコストを報告する場合、その数値はそれらの呼び出しの [定価見積もり](/docs/ja/costs) です。

30 

31<h2 id="how-an-eval-run-works">

32 eval 実行の仕組み

33</h2>

34 

35eval スイートはプラグイン内の `evals/` というディレクトリに存在し、[ケースを作成して改善する](#write-and-refine-cases) に示すようにレイアウトされます。各ケースは [プロンプト](#set-run-limits-and-tools-in-prompt-md) と 1 つ以上の [グレーダー](#grade-the-result) を含む独自のサブディレクトリです。プロンプトは、プラグインを使用している人が入力するようなもので、そのスキルの 1 つが処理すべきリクエストなどです。

36 

37<h3 id="what-happens-in-a-run">

38 実行中に何が起こるか

39</h3>

40 

41ケースの各実行について、Claude Code は新しい [分離された](#how-runs-are-isolated) [非対話型セッション](/docs/ja/headless) を開始し、プラグインのみをロードし、プロンプトを送信し、Claude が完了するか、ケースのターン制限または時間制限に達するまで動作させます。その後、各グレーダーは最終的な返信、トランスクリプト、または Claude が作成したファイルをチェックし、合格または不合格を判定します。

42 

43<h3 id="how-a-case-is-scored">

44 ケースのスコア化方法

45</h3>

46 

47非決定論的なエージェントの 1 回の実行では、ほとんど情報が得られないため、各ケースはデフォルトで 3 回実行されます。実行のスコアは、重み付けを設定した場合は重み付けされた、合格したグレーダーの割合であり、ケースのスコアは実行全体の平均です。ケースは、そのスコアが [`--threshold`](#command-options) (デフォルトは 1.0) を満たすときに合格します。モデル呼び出しでは、スイートはおおよそ cases × runs のエージェント実行をプラグインで行い、[プラグインなしベースライン](#the-no-plugin-baseline) でも同じ数だけ行い、さらに実行ごとに `llm` または `baseline` グレーダーごとに 3 つの短いジャッジ呼び出しを行います。

48 

49<h3 id="the-no-plugin-baseline">

50 プラグインなしベースライン

51</h3>

52 

53プラグインなしでも Claude が同じくらい上手くいく可能性があるため、単独のスコアが高いだけではプラグインが役に立ったことを示しません。この 2 つを分離するために、各ケースの実行はデフォルトでプラグインをロードせずに繰り返され、2 つのスコア `WITH` と `W/OUT` が得られます。その差 `Δ` は、プラグインが貢献したものです。ケースがプラグインの有無にかかわらず 1.0 でスコアされた場合、プラグインはそれが合格した理由ではありません。2 つの実行セットは with-arm と without-arm と呼ばれます。[プラグインなしベースラインと比較する](#compare-against-a-no-plugin-baseline) では、グレーダーがそれらの間でどのようにスコア化されるか、およびベースラインをオフにする方法について説明します。

54 

55<h2 id="create-your-first-eval-suite">

56 最初の eval スイートを作成する

57</h2>

58 

59このチュートリアルは、独自のプラグイン用に 1 つのケースを作成し、実行し、結果を読みます。開始する前に、以下があることを確認してください。

60 

61* Claude Code v2.1.269 以降およびその他の [要件](#requirements)

62* プラグインのルートディレクトリで開いているターミナル(`plugin.json` または `.claude-plugin/plugin.json` を含むディレクトリ)

63* テストしたいプラグイン内の 1 つのスキルと、ユーザーが入力すべきリクエスト(それがスキルをトリガーすべき)

64 

65<Steps>

66 <Step title="ケースを作成する">

67 プラグインルートから、以下を実行します。

68 

69 ```bash theme={null}

70 claude plugin eval init

71 ```

72 

73 Claude Code がこのディレクトリをまだ信頼していない場合、最初に `Trust this plugin directory?` と尋ねます。`y` で答えてください。対話型 Claude Code セッションが開きます。Claude はプラグインを読み、良い結果がどのようなものかを尋ね、プラグインをトリガーすべき、またはトリガーすべきでないプロンプトを提案し、各プロンプト用のグレーダーを設計し、それらを 1 回パイロットして動作を確認し、`evals/` の下に 1 つのケースディレクトリをプロンプトの後に作成します。Claude がスイートの準備ができたことを伝えたら、`/exit` または Ctrl+D でそのセッションを終了してシェルに戻ります。

74 

75 プラグインルートで既に Claude Code セッションが開いている場合は、代わりにそこで Claude に `claude plugin eval init` を実行するよう依頼できます。Claude はコマンドを実行し、その会話で同じ質問をします。

76 

77 ケースを自分で作成して、ファイルが正確に何を含むかを確認したい場合は、[ケースを手動で作成する](#write-a-case-manually) に従い、ここに戻ってそれを実行します。

78 </Step>

79 

80 <Step title="スイートを実行する">

81 プラグインルートのシェルに戻り、`evals/` の下のすべてのケースを実行します。

82 

83 ```bash theme={null}

84 claude plugin eval .

85 ```

86 

87 ステップ 1 でこのディレクトリを既に信頼しているため、実行はすぐに開始されます。代わりにケースを手動で作成した場合、実行は最初に `Trust this plugin directory? [y/N]` と尋ねます。`y` で答えてください。[実行がアクセスできるもの](#security) は、同意していることを説明します。

88 

89 各ケースはプラグイン付きで 3 回、プラグインなしで 3 回実行されるため、1 つのケースは 6 回の実行です。各実行が完了すると、その実行のスコアと各グレーダーの判定を含む進捗行が出力されます。

90 </Step>

91 

92 <Step title="サマリーを読む">

93 スイートが完了すると、サマリーテーブルが表示され、その後にレポートの場所が表示されます。

94 

95 ```text theme={null}

96 CASE WITH W/OUT Δ RUNS COST NOTES

97 first-case 1.00 0.33 +0.67 6 $0.41

98 

99 1 case(s) · mean Δ +0.67 · 74s · $0.41

100 Report: /Users/you/my-plugin/evals/results/2026-09-10T17-02-11-482Z/report.html

101 Published: https://claude.ai/... · keep local next time with --no-publish

102 ```

103 

104 `WITH` はプラグインをロードしたケースのスコア、`W/OUT` はロードしないでのスコア、正の `Δ` はプラグインがスコアを上げたことを意味します。`COST` はモデル呼び出しの定価見積もりで、`NOTES` は最も高い重みの失敗したグレーダーの説明、または with-arm の実行エラーを示します。

105 </Step>

106 

107 <Step title="レポートを開いて反復する">

108 `Published:` URL、または `Published:` 行が表示されない場合は `Report:` パスを開いて、すべての実行のすべてのグレーダーの判定と説明を確認し、`llm` グレーダーについてはジャッジの投票と判定した抜粋を確認します。`Published:` 行は、アカウントが [レポートを公開](#html-report) できる場合にのみ表示されます。

109 

110 最初の一般的な発見は、ケースの `tool_used: Skill` グレーダーが失敗している `Δ` がほぼゼロで、Claude が自然な表現でスキルを選択していないことを意味します。スキルの [`description`](/docs/ja/skills#frontmatter-reference) を調整し、`claude plugin eval .` を再度実行し、比較します。

111 

112 1 つのケースを安く反復するには、1 つの arm を 1 回実行します。1 回の実行はノイズが多いため、信頼する前にデフォルトの 3 回で変更を確認してください。1 つの arm では、テーブルは `WITH`、`W/OUT`、`Δ` の列の代わりに `SCORE` と `PASS%` の列を表示します。

113 

114 ```bash theme={null}

115 claude plugin eval . --case <case-name> --runs 1 --ablation none

116 ```

117 

118 `<case-name>` を `evals/` の下のディレクトリ名の 1 つに置き換えます。

119 </Step>

120</Steps>

121 

122<h2 id="write-and-refine-cases">

123 ケースを作成して改善する

124</h2>

125 

126`claude plugin eval init` が作成するケースは、開いて変更し、追加できるプレーンファイルです。ケースはプラグインの eval ディレクトリの下のディレクトリで、`prompt.md`、`case.yaml`、またはその両方を含みます。ケースをグループ化するには、それ自体がケースではないディレクトリの下にネストします。`graders/` やフィクスチャファイルなど、ケースディレクトリ内のすべてはそのケースに属します。

127 

128これは `claude plugin eval init` が作成するレイアウトで、新しいスイートに使用するレイアウトです。[eval スイートリファレンス](#eval-suite-reference) には、モックと結果を含む完全なツリーがあります。

129 

130```text theme={null}

131my-plugin/

132├── .claude-plugin/plugin.json

133├── skills/...

134└── evals/

135 ├── first-case/

136 │ ├── prompt.md # frontmatter: case fields; body: the prompt

137 │ ├── graders/

138 │ │ ├── criteria.md # frontmatter: type + options; body: rubric or pattern

139 │ │ └── skill-fired.md

140 │ └── case.yaml # optional: only for context.* fields

141 ├── ignores-unrelated-request/

142 │ └── ...

143 └── results/ # written by each run; add to .gitignore

144```

145 

146<h3 id="write-a-case-manually">

147 ケースを手動で作成する

148</h3>

149 

150Claude にケースを `claude plugin eval init` で作成させることが推奨パスです。代わりに自分で作成するには、空のテンプレートから開始します。次のコマンドは、プレースホルダー `prompt.md` と 1 つのプレースホルダーグレーダーを含む `first-case` という名前のケースを作成し、何も実行しません。

151 

152```bash theme={null}

153claude plugin eval init --bare first-case

154```

155 

156```text theme={null}

157evals/first-case/

158├── prompt.md # the prompt sent to Claude, plus run limits

159└── graders/

160 └── criteria.md # one grader: how to score the result

161```

162 

163`prompt.md` では、各実行で Claude が受け取るメッセージを作成し、frontmatter で実行の制限とケースが使用できるツールを設定します。`evals/first-case/prompt.md` を開き、プレースホルダー本文をスキルの 1 つが処理すべきリクエストに置き換えます。ユーザーが入力するであろう方法で表現されます。この例はコミットメッセージを作成するスキル用です。独自のリクエストを使用してください。

164 

165```markdown theme={null}

166---

167max_turns: 10

168allowed_tools: [Read, Glob, Grep, Skill]

169---

170 

171Write me a commit message for this change: I renamed getUser to fetchUser and updated the three call sites.

172```

173 

174各実行は空の作業ディレクトリで開始されるため、タスクに必要なものをプロンプト自体に入れるか、[ワークスペースまたは履歴をセットアップする](#add-setup-or-history-with-case-yaml) 最初に。[frontmatter フィールドの完全なリスト](#prompt-md-fields) は、モデル、タイムアウト、タグ、および環境変数をカバーしています。

175 

176`graders/` の下の各ファイルは、実行後に適用される 1 つのチェックです。`evals/first-case/graders/criteria.md` を開き、プレースホルダーをジャッジモデル用のルーブリックに置き換えます。具体的な PASS および FAIL 条件として作成されます。

177 

178```markdown theme={null}

179---

180type: llm

181---

182 

183PASS if <what a correct response contains>.

184FAIL if <what a wrong or missing response looks like>.

185```

186 

187その後、スキルが答えを生成したかどうかをチェックする 2 番目のグレーダーを追加します。`evals/first-case/graders/skill-fired.md` を作成し、`your-skill-name` をスキルの `SKILL.md` の `name` に置き換えます。

188 

189```markdown theme={null}

190---

191type: tool_used

192tool: Skill

193input_match: '"skill"\s*:\s*"(?:[\w-]+:)?your-skill-name"'

194---

195```

196 

197これは Claude がその実行中にそのスキルを少なくとも 1 回呼び出した場合に合格します。これには、その名前空間付き `plugin-name:skill-name` 形式も含まれます。[グレーダータイプ](#grader-types) は、正規表現のマッチングやファイルが作成されたことの確認など、利用可能な他のチェックをリストします。

198 

199両方のファイルを保存したら、[クイックスタート](#create-your-first-eval-suite) が行うように、プラグインルートから `claude plugin eval .` でケースを実行します。

200 

201<h3 id="set-run-limits-and-tools-in-prompt-md">

202 prompt.md で実行制限とツールを設定する

203</h3>

204 

205`prompt.md` frontmatter でケースの `max_turns`、`timeout_seconds`、`model`、`tags`、および使用可能な `allowed_tools` を設定します。[prompt.md frontmatter](#prompt-md-fields) リファレンスはすべてのフィールドとそのデフォルトをリストします。Claude は本文を正確に作成したとおりに受け取ります。その中の `@path` メンションはファイル添付に展開されないため、Claude がファイルを読む必要がある場合は、`allowed_tools` でツールを付与します。

206 

207<h3 id="grade-the-result">

208 グレーダーを選択して重み付けする

209</h3>

210 

211グレーダーの frontmatter はその `type` を設定し、オプションで実行のスコアでより多くをカウントする `weight` と、ベースラインに対してどのようにスコア化されるかを制御する [`arm`](#compare-against-a-no-plugin-baseline) を設定します。6 つのタイプのうち、`regex`、`tool_used`、`tool_order`、`file_exists` はトランスクリプトとファイルから計算され、コストはかかりませんが、`llm` と `baseline` はジャッジモデルを呼び出し、実行のコストに追加されます。

212 

213カスタムコードグレーダーはありません。[グレーダータイプ](#grader-types) は各タイプのオプションと合格条件をリストし、[グレーダーが見ることができるもの](#what-a-grader-can-look-at) は `target` と `focus` が受け入れる値をリストします。

214 

215`llm` および `baseline` グレーダーのジャッジはデフォルトで小さく高速なモデルです。ニュアンスのあるルーブリックに対してより強力なものを使用するには、`--judge-model sonnet` または完全なモデル ID を渡します。

216 

217<h4 id="choose-graders-that-give-a-stable-signal">

218 安定した信号を与えるグレーダーを選択する

219</h4>

220 

221`llm` グレーダーはモデルに判定を求めるため、その答えは実行間で異なる可能性があり、読む必要があるテキストが長いほど異なります。これらの習慣はスイートのスコアを十分に安定させて信頼できるようにします。

222 

223* 生成されたファイルなどの長い出力については、ファイルの内容に対する `regex` グレーダーでグレード化します。これは毎回同じ方法でファイル全体をチェックします。短い出力には `llm` グレーダーを保持し、ルーブリックを具体的な PASS および FAIL 条件として作成します。

224* 各ケースに、最終メッセージや生成されたファイルなどの結果に対する 1 つのグレーダーと、`tool_used` や `tool_order` など Claude がそこに到達した方法に対する 1 つのグレーダーを付与します。一緒に、答えが正しかったかどうかと、プラグインがそれを生成したかどうかの両方を示します。

225* ケースの `tool_used: Skill` グレーダーが合格しているが `Δ` が負の場合、プラグインの前にジャッジを疑います。小さいジャッジモデルは、ルーブリックが説明する内容と異なる形式であるため、正しい答えを間違いとマークできます。`--judge-model sonnet` で再実行し、形式が判定を決定しないようにルーブリックを厳しくします。

226* ビルドまたはテストが実行内で合格したことを確認するには、プロンプトで Claude にそれを実行し、結果をファイルに書き込むよう依頼し、そのファイルをグレード化し、コマンドが `tool_used` グレーダーで実行されたことを主張します。その `input_match` はコマンドに名前を付けます。

227 

228<h3 id="compare-against-a-no-plugin-baseline">

229 プラグインなしベースラインに対してスコア化する

230</h3>

231 

232プラグインがテスト中の場合、各ケースはデフォルトで 2 つの arm で実行されます。with-arm はプラグインをロードした実行で、without-arm はプラグインなしで同じ数の実行です。サマリーとレポートは両方のスコアと `Δ`(with-arm スコアから without-arm スコアを引いたもの)を表示します。比較が不要な場合(グレーダーを反復するなど)、`--ablation none` を渡してコストを半減させ、with-arm のみを実行します。

233 

2342 つの arm 実行では、一部のグレーダーは `scored: false` で報告されます。「スキルが呼び出された」などのチェックはプラグインなしでは決して合格できないため、カウントすると without-arm がゼロに向かい、`Δ` を膨らませます。2 つの arm を比較可能に保つために、Claude Code はそのようなグレーダーを両方の arm のスコアから除外し、with-arm でそれらを合格/不合格インジケーターのみとして報告します。これには以下が含まれます。

235 

236* `tool` が `Skill` である各 `tool_used` グレーダー

237* `arm: with-only` でマークするグレーダー

238 

239ケース内のすべてのグレーダーがこれらの 1 つである場合、スコア化するものが何も残らないため、代わりに通常スコア化されます。「スキルを呼び出してはいけない」チェックに `min: 0` と `max: 0` を使用する場合は、グレーダーに `arm: both` を設定して、それに関わらず両方の arm でスコア化します。`--ablation none` の下では何も除外されないため、同じスイートは 2 つのモードで異なる絶対スコアを生成できます。

240 

241<h3 id="use-a-different-eval-directory">

242 別の eval ディレクトリを使用する

243</h3>

244 

245`evals/` が既に別のツールで使用されている場合は、スイートを別のディレクトリに保持します。プラグインの `plugin.json` にそのディレクトリを記録して、すべての実行とすべての共同作業者がそれを使用するようにするか、単一の実行のためにコマンドラインで渡すことができます。

246 

247* **`plugin.json` で**: `"experimental": { "evals": "quality/evals" }` を追加します。

248* **コマンドラインで**: `claude plugin eval` と `claude plugin eval init` の両方に `--eval-dir quality/evals` を渡します。

249 

250両方を設定した場合、フラグのディレクトリが使用されます。`qa` または `quality/evals` などのプレーンディレクトリ名の相対パスを指定します。絶対パスまたは `..` を含むパスは受け入れられません。フラグ値としてはエラーで、マニフェスト値として使用できない場合は `Warning:` 行が出力され、実行は `evals/` を使用します。ケース、結果、および `init` 出力はすべてそのディレクトリに移動します。

251 

252<h2 id="set-up-fixtures-and-mocks">

253 フィクスチャとモックをセットアップする

254</h2>

255 

256ケースはプロンプト以上のものが必要な場合があります。ワークスペース内のファイルまたは git リポジトリ、続行する以前の会話、またはプラグインが通信する MCP サーバーからの回答。これらのそれぞれはケースの横にセットアップされるため、実行は繰り返し可能なままです。

257 

258<h3 id="add-setup-or-history-with-case-yaml">

259 ワークスペースまたは会話をシードする

260</h3>

261 

262各実行は空のワークスペースで開始されます。ケースがプロンプト以上のものが必要な場合は、`context` ブロックを含む `case.yaml` を `prompt.md` の横に追加します。

263 

264フィクスチャファイルまたは git リポジトリを最初に作成するには、ケースディレクトリに Bash スクリプトを作成し、`context.scaffold_script` で名前を付けます。スクリプトはエージェントのサンドボックスの外で、あなたとして実行され、`--scaffold` を渡すときのみ実行されるため、そのフラグはあなたまたはあなたの組織が作成したスイートに対してのみ渡します。以前の会話を続行するには、トランスクリプトを `.jsonl` ファイルとして保存し、`context.history_file` で名前を付けます。ケースのプロンプトは次のユーザーターンになります。Claude が実行中にケース内のフィクスチャディレクトリを読むことができるようにするには、`context.add_dirs` にそれらをリストします。

265 

266`case.yaml` には `schema_version: "1.1"` と `name` も必要です。[case.yaml フィールド](#case-yaml-fields) リファレンスには完全なリストがあります。

267 

268この `case.yaml` はスクリプトからワークスペースをシードし、Claude が `resources/` ディレクトリからフィクスチャを読むことができるようにします。

269 

270```yaml theme={null}

271schema_version: "1.1"

272name: changelog-from-diff

273tags: [smoke]

274context:

275 scaffold_script: fixture.sh

276 add_dirs: [resources]

277```

278 

279<h3 id="mock-mcp-servers">

280 MCP サーバーをモックする

281</h3>

282 

283スキルが MCP ツールを呼び出すプラグインを評価できます。その背後にある実際のサービスなしで。スイート全体の場合は `evals/mocks/<server>/<tool>.md` の下に 1 つのツールごとに 1 つの Markdown ファイルを配置するか、1 つのケースの場合はケース独自の `mocks/` ディレクトリの下に配置します。`<server>` はプラグインの [MCP 設定](/docs/ja/plugins-reference#mcp-servers) のサーバーの名前です。

284 

285実行は、要求しない限り、プラグインの実際の MCP サーバーを開始しません。Claude Code は各サーバー独自の名前の下にスタンドインを登録します。モックファイルを持つツールはそれから答え、`--allow-tools` 付与なしで許可され、モックファイルを持たないツールは Claude で利用できません。モックがまったくないサーバーは、ケースの `mocked:` 進捗行に `plugin_<plugin>_<server>[not started: no mock]` として表示されます。

286 

287ファイルの本文は、ツールが Claude に返すものです。このモックは `tracker` という名前のサーバー上の `create_issue` ツールの代わりになり、Claude が送信する入力をチェックし、タイトルをエコーバックします。`evals/mocks/tracker/create_issue.md` として保存します。

288 

289```markdown theme={null}

290---

291expect:

292 title: string

293 priority: [low, medium, high]

294---

295 

296Created issue #4821: {{input.title}}

297```

298 

299`{{input.<field>}}` で呼び出しの入力からフィールドを挿入し、`{{file:fixtures/{input.<field>}.json}}` でモックの横のフィクスチャファイルの内容を挿入します。`expect:` ブロックは入力を保護します。呼び出しがそれに違反する場合、実行はスコア 0 で中止され、理由が記録されます。そのため、ケースはプラグインがサーバーに何を求めたかを主張できます。`error: true` を設定して本文をツールエラーとして返すか、`type: agent` を設定して小さいモデルが本文の指示からサーバーとして答えるようにします。[モックファイルリファレンス](#mock-files) はすべてのキーと `_server.md` および `_tools.json` ファイルをリストします。

300 

301呼び出し自体をグレード化するには、グレーダーを `target: mock_calls` に指します。

302 

303プラグインの実際の MCP サーバーに対して実行するには、これらのフラグの 1 つを渡します。どちらの方法でも、これらのプロセスはあなたとして実行され、実行のサンドボックスの外で、それらのツールは [`--allow-tools` 付与](#grant-tools) が必要です。

304 

305* **`--allow-real-servers`**: モックしていない各サーバーの実際のプロセスを開始し、モックされたツールからの回答を続けます。

306* **`--mocks off`**: `mocks/` を完全に無視し、プラグインが宣言するすべてのサーバーを開始します。

307 

308<h4 id="replay-agent-mock-answers">

309 エージェントモック回答を再生する

310</h4>

311 

312`type: agent` モックは [`--judge-model`](#command-options) への呼び出しで答えるため、その出力は実行間で異なり、ジャッジを変更すると変わります。実行がエラーまたは中止なしで完了すると、Claude Code は各回答をエージェントモックが結果ディレクトリの `mock-recordings/` の下に与えたものを保存します。

313 

314`ADOPT.txt` をそこで開いて、各記録と `.replay/<server>/` ディレクトリを確認し、モックの横にコピーします。記録をそこにコピーした後、後の実行はモデル呼び出しなしで同じ呼び出しから同じ答えを返します。`mocks/.replay/` を `mocks/` の残りと一緒にコミットして、CI 実行が繰り返し可能になるようにします。

315 

316<h2 id="run-evals">

317 evals を実行する

318</h2>

319 

320スイートが存在すると、`claude plugin eval` はそれを実行します。ターゲット引数でどのプラグインとケースを実行するかを選択し、`--allow-tools` でケースが読み取り専用セット以上に必要とするツールを付与し、他のオプションで実行数、モデル、コスト、出力を制御します。

321 

322<h3 id="choose-what-to-evaluate">

323 評価対象を選択する

324</h3>

325 

326ほとんどの場合、プラグインルートから `claude plugin eval .` を実行します。これはスイート内のすべてのケースをロードされたプラグインで実行します。単一のケースファイルを実行するか、開発中のプラグインではなくインストール済みのプラグインを評価するには、別のターゲットを渡します。

327 

328| ターゲット | 実行内容 |

329| :---------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------- |

330| プラグインのルートディレクトリ(`.` など) | その eval ディレクトリの下のすべてのケース(そのプラグインをロード) |

331| 単一の `prompt.md` または `case.yaml` ファイル | そのケース(その囲むプラグインをロード) |

332| インストール済みプラグイン(名前、`name` または `name@marketplace`) | インストール済みコピーの eval ディレクトリのケース(インストール済みコピーをロード)。結果は現在のディレクトリの `./evals/results/` または `--eval-dir` で `./<dir>/results/` に書き込まれます。 |

333| `name@skills-dir` | [skills-directory プラグイン](/docs/ja/plugins-reference#skills-directory-plugins) の場合も同じ |

334| 省略 | 現在のディレクトリをパスとして |

335 

336`--case <glob>` を追加してケース名でフィルタリングし、`--tag <tag>` を使用して指定されたタグのいずれかを持つケースを保持します。ターゲットを `--tag`、`--allow-tools`、`--json` の前に配置します。最初の 2 つはリストを取り、`--json` はオプションのパスを取るため、それぞれは後に続くターゲットを独自の値として読み取ります。

337 

338<h3 id="grant-tools">

339 ツールを付与する

340</h3>

341 

342実行は許可を求めるために停止することはありません。付与しなかった許可が必要な組み込みツール(`Bash`、`Write`、`Edit`、`WebFetch`、`WebSearch` など)はセッションから削除されるため、Claude はそれらをまったく呼び出すことができません。許可リストは、ケースが `allowed_tools` にリストする読み取り専用ツール(`Read`、`Glob`、`Grep`、`NotebookRead`、`Skill`、`Agent`、`TodoWrite`、およびタスクツール `TaskCreate`、`TaskGet`、`TaskList`、`TaskUpdate`、`TaskStop`、`TaskOutput` から)と、`--allow-tools` で付与するもの(スイート内のすべてのケースに適用)です。ケースが `Bash`、`Write`、`Edit`、`WebFetch`、`WebSearch` を使用できるようにするには、自分で付与します。

343 

344```bash theme={null}

345claude plugin eval . --allow-tools Write Edit "Bash(npm test *)"

346```

347 

348ケースが付与しなかったツールを要求した場合、実行は stderr に `not granted` としてリストします。[モックされた](#mock-mcp-servers) MCP サーバー上のツールは許可が不要です。実際のプラグイン MCP サーバー上のツールは、サーバーが開始されている必要があります(`--allow-real-servers` または `--mocks off` で)、および `--allow-tools "mcp__plugin_my-plugin_github__*"` などの名前による付与。プラグインの MCP ツールは `mcp__plugin_<plugin>_<server>__<tool>` という名前です。

349 

350任意の形式で `Bash` を付与すると、すべてのコマンドは Claude Code の [OS レベルサンドボックス](/docs/ja/sandboxing) の下で実行されます。書き込みはランの作業スペースに限定され、ホームディレクトリと Claude Code 設定は読み取り不可で、ネットワークアクセスは `--allow-tools "WebFetch(domain:example.com)"` で付与するドメインに限定されます。サンドボックスバックエンドのないマシンで Bash または PowerShell を付与すると、Claude Code は各実行を拒否し、ケースは実行エラーを表示し、通常はスコア 0 になります。ネイティブ Windows にはバックエンドがないため、WSL2 の下でシェル付与スイートを実行します。Linux では、最初に `bubblewrap` と `socat` をインストールします。[サンドボックスの前提条件](/docs/ja/sandboxing) を参照してください。

351 

352<h3 id="command-options">

353 コマンドオプション

354</h3>

355 

356この表は、実行数、モデル、スコアリング、コスト、ツール付与、モック、出力のオプションをカバーしています。`claude plugin eval --help` を実行して完全なリストを確認します。これには `--case`、`--tag`、`--eval-dir`、`--no-scaffold`、`--report`、`--verbose` も含まれます。

357 

358| オプション | デフォルト | 効果 |

359| :------------------------- | :--------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------- |

360| `--runs <n>` | 各ケースの `runs`、またはそれ以外は 3 | arm ごとのケースごとの実行 |

361| `-j`, `--concurrency <n>` | `1` | 最大 1 から 8 のエージェント実行を同時に実行します。アカウントのレート制限を共有するため、これはそのレート制限を超えるスループットを上げるのではなく、壁時間を短縮します。結果はケース順を保持します。 |

362| `--model <model>` | 各ケースの `model`、またはそれ以外は `ANTHROPIC_MODEL` が設定されている場合はそれ、またはそれ以外は Claude Code のデフォルト | テスト中のエージェント用のモデル。CI でモデルロールアウトがプラグイン回帰と間違われないようにそれを固定します。 |

363| `--judge-model <model>` | 小さく高速なモデル | `llm` および `baseline` グレーダー用のモデル |

364| `--ablation <mode>` | プラグインが解決する場合は `with-without`、それ以外は `none` | 何を追加するかを測定するために、プラグインなしで各ケースを実行するかどうか。`none` は 1 つの arm を実行します。`with-without` はプラグインなしベースラインを追加します。 |

365| `--threshold <0..1>` | `1.0` | ケースが with-arm スコアがこれ以上の場合に合格します。これ以下のケースはコマンドを終了 1 にします。 |

366| `--max-cost-usd <usd>` | 上限なし | 実行の定価コスト見積もりの上限(プラン使用量ではなく)。各実行開始前にチェックされます。使用後、さらに何も開始されません。既に進行中の実行は完了するため、支出は上限を超える可能性があります。未開始の実行が残っている場合、コマンドは部分的な結果で終了 2 になります。 |

367| `--allow-tools <tools...>` | なし | 読み取り専用セット以上のツールを付与します。[ツールを付与する](#grant-tools) を参照してください。 |

368| `--scaffold` | オフ | 各ケースの [`scaffold_script`](#add-setup-or-history-with-case-yaml) を実行します。 |

369| `--trust-plugin` | オフ | 自分で実行するコードとスイートを持つプラグインの最初の実行信頼プロンプトをスキップします。CI でジョブがプロンプトで拒否されたり待機したりしないようにそれを渡します。[実行がアクセスできるもの](#security) を参照してください。 |

370| `--mocks <mode>` | `record` | `record` は [モック](#mock-mcp-servers) から MCP ツール呼び出しに答え、プラグインの実際のサーバーを開始せず、再生用にエージェントモック回答を保存します。`off` はモックを無視し、プラグインの実際の MCP サーバーを開始します。 |

371| `--allow-real-servers` | オフ | `--mocks record` で、モックを持たないサーバーのプラグインの実際の MCP サーバーも開始します。 |

372| `--json [path]` | オフ | [結果ドキュメント](#json-result) を stdout に出力するか、`.json` で終わるパスに書き込みます。実行は静かです。進捗行またはサマリーテーブルはありません。 |

373| `--output-dir <dir>` | `<eval dir>/results/<timestamp>/` | `aggregate-result.json` と `report.html` が行く場所 |

374| `--no-publish` | | HTML レポートをローカルに保持します。[HTML レポート](#html-report) を参照してください。 |

375| `--publish-report` | | Claude Code セッションが開始した実行など、デフォルトではローカルに留まる場所でもレポートを公開します。 |

376| `--keep-temp` | オフ | すべての実行のサンドボックスディレクトリを保持し、そのパスを出力します(Claude が生成したものをデバッグするため)。 |

377 

378<h3 id="run-evals-in-ci">

379 CI で evals を実行する

380</h3>

381 

382CI ジョブで、`--json` でスイートを実行して結果をアーカイブ用に書き込み、終了コードでビルドを失敗させます。ジョブが [最初の実行信頼プロンプト](#security) で待機しないように `--trust-plugin` を渡し、スコアが時間とともに比較可能になるように両方のモデルを固定し、レポートをローカルに保持し、コスト上限を上限として設定します。

383 

384```bash theme={null}

385claude plugin eval . \

386 --trust-plugin \

387 --json results.json \

388 --threshold 0.8 \

389 --model claude-sonnet-5 \

390 --judge-model claude-haiku-4-5 \

391 --no-publish \

392 --max-cost-usd 20

393```

394 

395ジョブの終了コードは何が起こったかを示します。

396 

397| 終了コード | 意味 |

398| :---- | :------------------------------------------------------------------------------------------------------------------- |

399| 0 | すべてのケースが `--threshold` 以上でスコア化され、すべてのケースファイルがロードされました。 |

400| 1 | ケースが閾値以下でスコア化された、ケースファイルがロードに失敗した、ケースが見つからない、実行を開始できない、プラグインディレクトリが信頼されておらず `--trust-plugin` が渡されなかった、またはオプションが無効です。 |

401| 2 | 部分的な実行。`--max-cost-usd` 上限に達した、または認証情報が最初の実行の前または時点で拒否されました。`results.json` は `partial: true` と理由で書き込まれます。 |

402| 130 | 中断。部分的な結果が書き込まれます。 |

403| 143 | 終了(CI タイムアウトなど)。 |

404 

405HTML レポートの書き込みまたは公開の問題は終了コードを変更しません。ケースがなぜ低くスコア化されたかを確認するには、ローカルで `--json` なしで実行して、実行ごとの進捗とグレーダー行が出力されるようにします。

406 

407CI ランナーは Claude Code インストールと [環境の認証情報](/docs/ja/authentication)(`ANTHROPIC_API_KEY` など)が必要です。`--trust-plugin` なしで、チェックアウトディレクトリを Claude Code がまだ信頼していないジョブは、ターミナルがない場合は終了 1 で拒否されるか、ランナーが 1 つを割り当てるときはプロンプトで待機します。`claude plugin eval init` はあなたの質問をするためにターミナルが必要です。CI では、`claude plugin eval init --bare <name>` を実行して空のテンプレートを取得します。

408 

409コストを予測可能に保つために、クイックな毎変更スイートにはジャッジを呼び出さないグレーダーのみを付与し、`Δ` が不要な場所で `--ablation none` を使用し、`partial: true` ドキュメントと `skippedPaidGraders` を持つ実行をあなたがチャートするトレンドから除外します。

410 

411<h2 id="read-the-results">

412 結果を読む

413</h2>

414 

415少なくとも 1 つのケースを持つすべての実行は、eval ディレクトリ内に `results/<timestamp>/` ディレクトリを書き込み、`aggregate-result.json` と `report.html` を含みます。パスターゲットの場合はプラグインの下。プラグインに名前を付けた場合は現在のディレクトリの下。[ターゲットテーブル](#choose-what-to-evaluate) に示すように。サマリーテーブル、JSON、レポートはすべて同じ結果データをレンダリングします。

416 

417<h3 id="html-report">

418 HTML レポート

419</h3>

420 

421`report.html` は単一の自己完結型ファイルで、外部リクエストを行わないため、CI ジョブに添付したり、ディスクから開いたりできます。この例は、`--threshold 0.8` で実行された 3 ケーススイートのレポートの上部です。表示されるコストは定価見積もりで、モデルとケース数によって異なります。

422 

423<img src="https://mintcdn.com/claude-code/qq7LHDi_F0aeFHgk/images/plugin-eval-report.png?fit=max&auto=format&n=qq7LHDi_F0aeFHgk&q=85&s=106eb6e6a70a6565f891ea3a4564f87d" alt="eval レポートの上部。「Plugin effect: +33.3 pts vs baseline, improved 2, flat 1, regressed 0 of 3 cases」と読む判定行、スイートスコア、アブレーション デルタ、ベースラインスコア、閾値を通過するケース、完全な実行の 5 つのサマリータイル、その後、デルタ、スコアバー、2 つのグレーダーが両方とも合格を示す 1 つの実行を持つ最初のケース。" width="1360" height="1032" data-path="images/plugin-eval-report.png" />

424 

425上から下に読みます。

426 

427* **判定行とタイル** は、プラグインがスイート全体で役に立ったかどうかに答えます。スイートスコアはケースごとのプラグイン付きスコアの平均、アブレーション Δ はそれがベースラインスコアの上または下にどの程度座っているか、ケースは何が閾値を満たしたかをカウントします。完全な実行はすべてのグレーダーが合格した with-plugin 実行の共有です。

428* **各ケースカード** はケース独自の `Δ` とプラグイン付きスコアを表示し、バーの閾値にティックを付けます。`Δ` が負のケースは赤い左端を取得するため、スクロール時に回帰が目立ちます。

429* **ケース内** では、プラグイン付き実行が最初に来て、ベースライン実行が後に来ます。各実行はグレーダーを合格または不合格チップでリストします。失敗したグレーダーは既に説明で展開されており、`llm` グレーダーはジャッジの投票と判定した証拠も表示します。これはランがなぜ低くスコア化されたかを見つける場所です。スコアに向かわないグレーダー(`tool_used: Skill` など)は `plugin-fired indicator` バッジを持ちます。

430* **プロンプトとグレーダー** はケースの下に表示され、各グレーダーのルーブリックまたはパターンを表示するため、スイートなしでレポートを読む人は何が尋ねられたか、何が良いとしてカウントされたかを見ることができます。

431 

432claude.ai サブスクリプションでサインインしており、[アーティファクト](/docs/ja/artifacts) がアカウントで利用可能な場合、Claude Code はレポートをプライベートアーティファクトとして公開し、`Published: <url>` を出力します。`--no-publish` を渡してローカルに保持します。`Published:` 行が表示されない場合(API キー認証など)、ローカルファイルがレポートです。

433 

434Claude Code セッションが開始した実行(Claude にスイートを実行するよう依頼するなど)もローカルに留まり、その `Report:` 行は `kept local` と言います。そのコマンドに `--publish-report` を追加して公開します。

435 

436<h3 id="json-result">

437 JSON 結果

438</h3>

439 

440`aggregate-result.json` および `--json` 出力は、CI スクリプトが解析するための `schemaVersion: 1` を持つバージョン付きドキュメントです。フィールド名は camelCase で、新しいフィールドは既存のフィールドを名前変更せずに追加されるため、認識しないフィールドを無視するようにスクリプトを作成します。

441 

442これらはゲートスクリプトが通常読むフィールドです。ドキュメントはスイート設定、すべてのグレーダー定義、および説明と証拠を持つ実行ごとのグレーダー結果も含みます。

443 

444| フィールド | 意味 |

445| :------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------- |

446| `partial`, `partialReason` | `cost_ceiling`、`interrupted`、`auth_failed` で `true` の場合、スイートが完了しませんでした。部分的な結果をトレンドチャートから除外します。 |

447| `aggregates.overallScore` | スイート全体のケーススコアの平均 |

448| `aggregates.casesPassed`, `aggregates.casesTotal` | `--threshold` 以上のケース、および合計 |

449| `aggregates.meanDelta` | ケース全体の平均 `Δ`(2 arm モード下) |

450| `cases[].name` | ケース名 |

451| `cases[].aggregates.score` | ケースの平均 with-arm 実行スコア |

452| `cases[].aggregates.delta` | with-arm スコアから without-arm スコアを引いたもの。arm が比較可能でない場合は省略。 |

453| `cases[].arms.with[].error` | `null`、またはランが異常に終了した理由(`timed out after 300s` など)。開始したが悪く終了した実行は、生成されたものに対してグレード化されるため、null 以外のエラーはスコア 0 を意味しません。 |

454| `cases[].arms.with[].aborted` | [モック](#mock-mcp-servers) の `expect:` または `abort_when` が実行を停止した場合に存在し、`server`、`tool`、`reason` を持ちます。実行はスコア 0 で、`error` は `null` のままです。 |

455| `cases[].arms.with[].skippedPaidGraders` | コスト上限がこの実行のジャッジグレーダーをスキップした場合は `true`。そのスコアは比較可能ではありません。 |

456| `costUsd`, `durationSeconds`, `claudeVersion` | 定価でのジャッジ呼び出しを含む推定コスト、壁時間秒、スイートを実行した Claude Code バージョン |

457 

458<h2 id="security">

459 実行がアクセスできるもの

460</h2>

461 

462`claude plugin eval` はターゲットプラグインのスキルとフックをロードし、マシン上で、あなたとして eval スイートを実行します。プラグインを指すことは `claude --plugin-dir` と同じ信頼決定であるため、信頼するプラグインのみを評価します。このセクションで説明されている分離は、テスト中のエージェントが到達できるものを制限します。これはプラグイン独自のコードに対する境界ではなく、スイートが合格することはプラグインが安全であるかどうかについて何も言いません。

463 

464<h3 id="trust-the-plugin-directory">

465 プラグインディレクトリを信頼する

466</h3>

467 

468プラグインに対して `claude plugin eval` を初めて実行するとき、Claude Code は `Trust this plugin directory?` と尋ねます。ただし、既に対話型 `claude` セッションでそこで信頼プロンプトを受け入れた場合を除きます。git リポジトリ内で、はいと答えるとリポジトリ全体を信頼し、対話型セッションも同様です。stdin または stdout がターミナルでない場合、または `--json` の下では、実行は尋ねることができず、終了 1 で拒否されます。`--trust-plugin` を渡して信頼を自分で主張します。これは自分のマシンで実行するプラグインの場合のみです。パスではなく名前を付けるターゲット(インストール済みプラグインまたは skills-directory プラグイン)はプロンプトをスキップします。

469 

470プラグインとスイートの一部は、その実行のフラグを渡すときのみ実行されます。ケースの [`scaffold_script`](#add-setup-or-history-with-case-yaml) は `--scaffold` で、[読み取り専用セット以上のツール](#grant-tools) は `--allow-tools` で、プラグインの [実際の MCP サーバー](#mock-mcp-servers) は `--allow-real-servers` または `--mocks off` で。ケースの `allowed_tools` とスキル独自の `allowed-tools` frontmatter はそれらのいずれかも広げることはできません。プラグインが作成しなかったフックを出荷する場合、またはその実際の MCP サーバーを開始する場合、グレーダーが読むファイルに触れる可能性があるため、コンテナまたは CI ランナーなどの分離環境で実行しない限り、そのスコアを参考情報として扱います。フックとサーバーはエージェントのサンドボックスの外で実行されます。

471 

472<h3 id="how-runs-are-isolated">

473 実行がどのように分離されるか

474</h3>

475 

476各実行は使い捨てのホームディレクトリ、作業ディレクトリ、Claude Code 設定を取得し、テスト中のエージェントはそこで `claude -p` 子プロセスとして実行され、プラグインのみをロードします。ケースを作成するときにこれらの結果を念頭に置いてください。

477 

478* **個人またはプロジェクトレベルは何もロードされません。** ユーザー設定、フック、`CLAUDE.md` ファイル、MCP サーバー、他のインストール済みプラグイン、メモリ、スキルは存在せず、サンドボックス上のプロジェクトスコープの `.claude/` または `.mcp.json` は読み取られません。ほとんどのシェル環境も保留されます。[許可リスト](#prompt-md-fields) と `EVAL_*` 変数のみが実行に到達します。プラグインがセットアップを必要とする場合は、プラグインに出荷するか、`scaffold_script` で作成するか、`EVAL_*` 変数を渡します。

479* **管理ポリシーは実行を制限できます。** 管理者がマシンに展開した [管理設定](/docs/ja/managed-settings) の制限は実行内に適用されるため、管理マシン上の結果は管理されていないマシンとそのポリシーによって異なる可能性があります。

480* **アーティファクトツールはオフです。** [アーティファクト](/docs/ja/artifacts) を公開するスキルはそのステップの前に生成するものに対してのみグレード化できます。

481* **ケース定義はエージェントから隠されています。** 実行は eval ディレクトリを読むことができないため、Claude はケースのプロンプト、グレーダー、または兄弟ケースを見ることができません。

482* **シェルコマンド外のネットワークサンドボックスはありません。** 付与するシェルコマンドはサンドボックスのネットワークルールの下で実行されます。`WebFetch(domain:…)` 付与はそのドメインに直接到達し、プラグイン独自のフックと開始する実際の MCP サーバーはどのホストにも到達できます。

483 

484<h2 id="eval-suite-reference">

485 Eval スイートリファレンス

486</h2>

487 

488eval スイートが含むすべてのコンテンツは、プラグインの eval ディレクトリ `evals/` の下に存在します。ただし、[別のディレクトリを設定](#use-a-different-eval-directory)している場合を除きます。このツリーは、`claude plugin eval` がそこで読み書きするすべてのファイルを示しています。ケースが存在するには、`prompt.md` または `case.yaml` のいずれかが必須です。

489 

490```text theme={null}

491evals/

492├── <case>/ # ケースごとに 1 つのディレクトリ。グループ化するために非ケースディレクトリの下にネストします

493│ ├── prompt.md # frontmatter: case と run フィールド。本文: プロンプト

494│ ├── case.yaml # オプション: context.* フィールド、または 1 つのファイル内の全ケース

495│ ├── graders/

496│ │ └── <name>.md # ファイルごとに 1 つのグレーダー。frontmatter: type と options。本文: ルーブリック

497│ ├── mocks/ # オプション: このケースのみのモック。以下と同じレイアウト

498│ └── <case.yaml で参照されるフィクスチャ、スクリプト、トランスクリプト>

499├── mocks/ # オプション: スイート全体の MCP モック

500│ ├── <server>/

501│ │ ├── <tool>.md # 1 つのモック化されたツール。本文: ツール結果

502│ │ ├── _server.md # オプション: 複数のツールに答える 1 つのエージェント

503│ │ ├── _tools.json # オプション: 実際の説明とスキーマのために保存された tools/list レスポンス

504│ │ └── fixtures/ # {{file:fixtures/...}} で挿入されるファイル

505│ └── .replay/<server>/ # 採用されたエージェント-モック記録。モデル呼び出しなしで応答

506└── results/<timestamp>/ # 各実行で書き込まれます。results/ を .gitignore に追加してください

507 ├── aggregate-result.json

508 ├── report.html

509 └── mock-recordings/ # クリーン実行からのエージェント-モック応答。ADOPT.txt 付き

510```

511 

512<h3 id="prompt-md-fields">

513 prompt.md frontmatter

514</h3>

515 

516`prompt.md` frontmatter は以下のフィールドを受け入れます。未知のキーはエラーです。

517 

518| フィールド | デフォルト | 目的 |

519| :--------------------- | :----------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

520| `schema_version` | `"1.1"`。自動設定 | ケース形式バージョン。`prompt.md` として記述されたケースは自動的に取得されるため、ほとんど設定しません |

521| `name` | ディレクトリ名 | ケース名。`--case` グロブはこれにマッチし、レポートはこれをキーにします |

522| `description` | | 人間向け。実行時には使用されません |

523| `tags` | `[]` | `--tag` フィルタリング用のラベル。任意のタグがマッチすればケースが実行されます |

524| `plugins` | 最も近い囲むプラグイン | テスト対象のプラグインディレクトリ。ケースディレクトリからの相対パス。自動検出がプラグインを見つけられない場合は `plugins: ["../.."]` を設定してください。[プラグインが読み込まれない](#the-baseline-arm-shows-no-plugin-or-delta-is-zero)を参照 |

525| `runs` | `3` | アーム当たりの実行数。1 から 50。`--runs` でオーバーライドされます |

526| `expected_outcome` | | 人間向け。実行時には使用されません |

527| `model` | 子セッションのデフォルト | テスト対象のエージェント用モデル。`--model` でオーバーライドされます |

528| `max_turns` | `10` | ターンキャップ。最大 200。これに達するとランエラーとして記録され、通常はスコアを低下させるため、寛容に設定してください |

529| `timeout_seconds` | `300` | 実行ごとの壁時間キャップ。最大 3600 |

530| `allowed_tools` | `[]` | ケースが必要とするツール。例えば `[Read, Glob, Grep, Skill]`。読み取り専用ツールはここにリストされると付与されます。その他については、[ツールを付与](#grant-tools)を参照してください |

531| `append_system_prompt` | | 子セッションのシステムプロンプトに追加されるテキスト |

532| `env` | `{}` | 子セッション用の追加環境変数。キーは `EVAL_[A-Z0-9_]*` にマッチする必要があります。その他のキーは実行を失敗させます。実行は、シェルからのホワイトリストのみを継承します。`PATH` とロケール、プロキシと証明書設定、モデルプロバイダーを選択・認証する変数、ほとんどの `ANTHROPIC_*` と `CLAUDE_CODE_*` 設定、および `EVAL_*` です。プラグインに他のもの(ツールチェーン設定など)を渡すには、`EVAL_*` 変数としてエクスポートしてください |

533 

534<h3 id="case-yaml-fields">

535 case.yaml フィールド

536</h3>

537 

538`case.yaml` は YAML で同じケースを説明し、他のファイルを指すフィールドを追加します。`schema_version: "1.1"` と `name` が必須です。`prompt.md` フィールドの `description`、`tags`、`plugins`、`runs`、`expected_outcome` はトップレベルに配置されます。`model`、`max_turns`、`timeout_seconds`、`allowed_tools`、`append_system_prompt`、`env` は `execution:` の下に配置されます。両方のファイルが存在する場合、`prompt.md` frontmatter は一致する `case.yaml` フィールドをオーバーライドし、`prompt.md` 本文がプロンプトになり、`graders/*.md` は `case.yaml` にリストされたグレーダーの後に追加されます。

539 

540これらのフィールドは `case.yaml` にのみ存在します。

541 

542| フィールド | 目的 |

543| :------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------- |

544| `context.scaffold_script` | ケースディレクトリ内の Bash スクリプト。Claude が開始する前に空のワークスペースで実行され、フィクスチャファイルまたは git リポジトリを作成します。[`--scaffold`](#add-setup-or-history-with-case-yaml) を渡すときのみ実行されます |

545| `context.history_file` | ケースディレクトリ内の `.jsonl` トランスクリプト。再開するために使用されます。ケースのプロンプトは次のユーザーターンになります |

546| `context.add_dirs` | ケースディレクトリ内のディレクトリ。Claude が実行中に読み取ることができます。読み取り専用で付与されます |

547| `execution.prompt` | プロンプト。ケース全体を `case.yaml` に保持し、`prompt.md` を省略する場合 |

548| `graders` | グレーダーのリスト。各グレーダーは `name` と `graders/*.md` ファイルが frontmatter で取得するのと同じキーを持ちます。`llm` グレーダーの場合、ルーブリックを `criteria` に配置します |

549 

550<h3 id="grader-frontmatter">

551 グレーダー frontmatter

552</h3>

553 

554`graders/` の下のすべてのグレーダーファイルは、frontmatter でこれらのキーと、そのタイプのオプションを取得します。グレーダーの名前は `.md` なしのファイル名です。

555 

556| キー | デフォルト | 目的 |

557| :------- | :---- | :------------------------------------------------------------------------------------------------------------------------------------------ |

558| `type` | 必須 | [グレーダータイプ](#grader-types)の 1 つ |

559| `weight` | `1` | 実行のスコアにおける相対的な重み。任意の正の数 |

560| `arm` | 未設定 | `with-only` は [2 アーム実行](#compare-against-a-no-plugin-baseline)でグレーダーをスコアリングから除外します。`both` は `tool_used: Skill` グレーダーを両方のアームでスコアリングするよう強制します |

561 

562<h4 id="what-a-grader-can-look-at">

563 グレーダーが見ることができるもの

564</h4>

565 

566`regex` グレーダーは `target` を取得し、`llm` グレーダーは `focus` を取得します。両方とも同じ値を受け入れます。

567 

568| 値 | グレーダーが見るもの |

569| :------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

570| `last_message` | Claude の最終応答テキスト。これがデフォルトです |

571| `trace` | JSON としてのセッション。1 行に 1 つのメッセージ。`regex` グレーダーはすべてのメッセージを見ます。`llm` ジャッジは最初の 12 と最後の 12 を見ます。その中の引用符と改行は JSON エスケープされるため、regex は `"` ではなく `\"` にマッチします |

572| `files` | 実行中に Claude が作成したパスのリスト。1 行に 1 つ。その内容ではなく、スキャフォルドが作成したファイルや Claude が単に変更したファイルではありません |

573| `{ source: file, path: <path> }` | 実行後のワークスペース内の 1 つのファイルの内容。プラグインが生成したものをグレードするために使用します。PNG、JPEG、GIF、または WebP ファイルは `llm` ジャッジに画像として表示されます。`llm` ジャッジは `.pptx` または PDF などの他のバイナリファイルを拒否します。画像にレンダリングするか、テキストとして書き出してグレードしてください |

574| `mock_calls` | Claude が [モック化された MCP ツール](#mock-mcp-servers)に行った各呼び出し。その入力とモックの応答を含みます |

575 

576<h4 id="grader-types">

577 グレーダータイプ

578</h4>

579 

580以下の各グレーダータイプは、そのオプションと合格時を列挙しています。

581 

582| タイプ | オプション | 合格時 |

583| :------------ | :--------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

584| `regex` | `pattern`、`flags`、`match`、`target` | JavaScript regex `pattern` がターゲットで見つかります。`match: not_contains` を設定して不在を要求するか、`match: "count:N"` を設定して正確に N 回のマッチを要求します。大文字小文字を区別しないようにするには `flags: i` に配置します。インライン `(?i)` はサポートされていません |

585| `tool_used` | `tool`、`input_match`、`min`、`max` | JSON エンコードされた入力がオプションの `input_match` regex にマッチする `tool` への呼び出し数が `min`(デフォルト 1)と `max`(デフォルト無制限)の間です。ツールが呼び出されなかったことを主張するには、`min: 0` と `max: 0` の両方を設定します |

586| `tool_order` | `before`、`after` | 両方のツールが呼び出され、最初にマッチする `before` 呼び出しが最初にマッチする `after` 呼び出しより前です。各々はツール名または `{ tool, input_match }` です |

587| `file_exists` | `path`、`exists` | Claude が作成したファイルが `path` グロブにマッチするか、`exists: false` で何もマッチしません。実行中に作成されたファイルのみがカウントされます |

588| `llm` | `criteria`、`focus` | ジャッジモデルが少なくとも 3 回中 2 回のルーブリックで PASS に投票します。`.md` レイアウトではファイル本文が criteria です |

589| `baseline` | `baseline_file`、`criteria` | ジャッジが実行が `baseline_file`(ケースディレクトリ内の `.jsonl`)の参照トランスクリプトと同じくらい criteria を満たしていることを検出します |

590 

591<h3 id="mock-files">

592 モックファイル

593</h3>

594 

595`mocks/<server>/` の下の `<tool>.md` ファイルは 1 つのツールに答えます。その本文はツール結果で、`{{input.<field>}}` と `{{file:fixtures/<name>}}` の置換があります。その frontmatter は以下のキーを受け入れます。

596 

597| キー | デフォルト | 目的 |

598| :----------- | :------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

599| `type` | `fixed` | `fixed` は本文をそのまま返します。`agent` は本文を、実行のためにサーバーをプレイする小さなモデルの指示として扱い、以前の呼び出しを履歴として見ます |

600| `expect` | 未設定 | ドット記法の入力パスから `string`、`number`、`boolean`、`array`、`object` などのタイプ名、`/regex/`、リテラル、または許可されたリテラルのリストへのマップ。それに違反する呼び出しはスコア 0 で実行を中止し、サーバー、ツール、理由を含む `aborted` として報告されます |

601| `error` | `false` | `fixed` のみ。本文をツールエラーとして返します |

602| `abort_when` | 未設定 | `agent` のみ。エージェントが実行を中止できる唯一の条件をリストする散文 |

603 

6042 つのオプションファイルがサーバーのディレクトリ内のツールファイルの横に配置されます。

605 

606* **`_server.md`**: 複数のツールに答える単一の `type: agent` モック。その `tools:` frontmatter キーにリストされています。同じツール用の `<tool>.md` が優先されます。`expect:` ガードを個別の `<tool>.md` に配置し、ここには配置しません

607* **`_tools.json`**: 実際のサーバーから保存された `tools/list` レスポンス。モック化されたツールが許可的なプレースホルダーの代わりに実際の説明と入力スキーマを持つようにします

608 

609ケース独自の `mocks/` ディレクトリは同じレイアウトを使用し、スイートのモックをファイルごとにオーバーライドします。

610 

611<h2 id="troubleshooting">

612 トラブルシューティング

613</h2>

614 

615これらは著者が最も頻繁に遭遇する問題であり、表示される内容に基づいてキーが付けられています。

616 

617<h3 id="plugin-eval-is-currently-in-early-access">

618 「plugin eval is currently in early access」

619</h3>

620 

621ビルドはコマンドの一般提供より前のものです。`claude update` を実行してから、新しいセッションでコマンドを再度実行してください。

622 

623<h3 id="plugin-eval-is-currently-unavailable">

624 「plugin eval is currently unavailable」

625</h3>

626 

627Anthropic がサーバー側でコマンドをオフにしています。マシン上の何もそれをオンに戻すことはできません。`claude update` を実行して、後で新しいセッションで再度試してください。

628 

629<h3 id="is-not-a-trusted-plugin-directory-and-this-run-cannot-stop-to-ask-you-about-it">

630 「is not a trusted plugin directory, and this run cannot stop to ask you about it」

631</h3>

632 

633これは Claude Code がまだ信頼していないディレクトリに対する最初の実行であり、stdin または stdout がターミナルでないか、`--json` を渡したため、質問することができません。ターミナルで `claude plugin eval <dir>` を一度実行してプロンプトに答えるか、プラグインのコードとスイートを信頼する場合は `--trust-plugin` を渡してください。[実行がアクセスできるもの](#security)を参照してください。

634 

635<h3 id="no-eval-cases-found">

636 「No eval cases found」

637</h3>

638 

639eval ディレクトリの下に `<case>/prompt.md` または `<case>/case.yaml` が存在しないか、`--case` および `--tag` フィルターがケースと一致しません。プラグインルートから実行するか、`claude plugin eval init` を実行してスイートを作成してください。

640 

641<h3 id="the-baseline-arm-shows-no-plugin-or-delta-is-zero">

642 ベースラインアームにプラグインが表示されない、またはデルタがゼロ

643</h3>

644 

645サマリーに `W/OUT` 列がない場合、またはケースが「ablation requested but no plugin resolved」で失敗する場合、ケースのプラグインが見つかりませんでした。`plugins: ["../.."]` をケースに追加し、ケースディレクトリからプラグインディレクトリへのパスを指定してください。

646 

647プラグインが読み込まれ、`Δ` が `tool_used: Skill` グレーダーが失敗している場合でもゼロに近い場合、これは通常、スキルの `description` がプロンプトの表現でトリガーされていないことを意味する実際の発見です。説明を調整して、同じスイートを再度実行してください。

648 

649<h3 id="everything-scores-zero-although-the-right-files-were-produced">

650 正しいファイルが生成されたにもかかわらず、すべてがゼロスコアになる

651</h3>

652 

653グレーダーが `files`(作成されたパスのリスト)をターゲットにしているが、ファイルの内容を意図していました。`{ source: file, path: <path> }` を `target` または `focus` として使用してください。別途、`file_exists` は実行中に作成されたファイルのみをカウントするため、スキャフォルドが作成したファイルまたは Claude が編集のみしたファイルは見えません。その内容をグレードするか、`Edit` で `tool_used` を使用してください。

654 

655<h3 id="a-regex-over-the-trace-doesn’t-match-text-i-can-see">

656 トレース上の正規表現が表示されるテキストと一致しない

657</h3>

658 

659デフォルトの `target` はトレースではなく `last_message` です。`target` をトレースにする場合、行ごとに JSON であるため、引用符は `\"` として表示されます。正規表現は JavaScript 構文を使用するため、`(?i)` を記述するのではなく、`flags` に `i` を入れてください。

660 

661<h3 id="tools-are-denied-mcp-tools-are-missing-or-bash-won’t-run">

662 ツールが拒否される、MCP ツールが見つからない、または Bash が実行されない

663</h3>

664 

665読み取り専用セット以外のすべてのものには、`--allow-tools Bash Write` などの許可が必要です。個人用 MCP サーバーは実行中に読み込まれません。プラグイン自体のサーバーは、[オプトイン](#mock-mcp-servers)しない限り開始されず、それらのツールは `--allow-tools "mcp__plugin_<plugin>_<server>__*"` 許可も必要です。モック化されたツールはどちらも必要ありません。

666 

667<h3 id="the-run-exits-1-but-the-results-look-fine">

668 実行が 1 で終了するが、結果は問題ないように見える

669</h3>

670 

671デフォルトの `--threshold` は 1.0 であるため、ケースが完璧以下のスコアを取得するとコマンドは 1 で終了します。バーに一致するしきい値を設定してください。終了 1 は、読み込みに失敗したケースファイルもカバーしており、テーブルの上の stderr で報告されます。

672 

673<h3 id="json-output-path-must-end-in-json">

674 「--json output path must end in .json」

675</h3>

676 

677`--json` の後にターゲットを配置したため、出力パスとして読み取られました。`claude plugin eval . --json` のようにターゲットを最初に配置するか、`--json` に明示的な `.json` パスを指定してください。

678 

679<h3 id="a-grader-shows-passed-false-under-a-run-that-scored-1-0">

680 グレーダーが 1.0 のスコアを取得した実行の下で passed: false を表示する

681</h3>

682 

683そのグレーダーは設計上、2 アーム実行でスコアから除外され、その `scored` フィールドは `false` です。[プラグインなしベースラインと比較](#compare-against-a-no-plugin-baseline)を参照してください。

684 

685<h3 id="runs-fail-with-a-usage-limit-or-rate-limit-error-partway-through">

686 実行がスイートの途中で使用量制限またはレート制限エラーで失敗する

687</h3>

688 

689アカウントがプランの使用量制限に達するか、スイート実行中に API レート制限に達した場合、その後の各実行はそのエラーで終了し、生成されたものに基づいてグレード化され、通常はスコア 0 になります。スイートはまだ完了し、`partial` としてマークされないため、結果は回帰のように見える可能性があります。スコアを信頼する前に `NOTES` 列または JSON の `cases[].arms.with[].error` で制限メッセージを確認してから、制限がリセットされた後に再度実行してください。`--runs 1` または `--case` フィルターを使用して、制限内に留まる必要がある場合は使用してください。

690 

691<h3 id="runs-time-out-or-hit-the-turn-cap">

692 実行がタイムアウトするか、ターンキャップに達する

693</h3>

694 

695デフォルトは 10 ターンと 300 秒です。より多くを必要とするタスクの場合、ケースで `max_turns` と `timeout_seconds` を上げ、厳密な実行ごとの制限ではなく、`--max-cost-usd` をコスト上限として使用してください。

696 

697<h2 id="see-also">

698 関連項目も参照

699</h2>

700 

701* [プラグインを作成する](/docs/ja/plugins): テストしているプラグインを構築し、開発中に `--plugin-dir` でロードします。

702* [プラグインリファレンス](/docs/ja/plugins-reference#plugin-eval): `plugin eval` および `plugin eval init` コマンドエントリとマニフェストの `experimental.evals` キー

703* [スキル](/docs/ja/skills): スキルの説明が Claude がそれを呼び出すときを決定する方法。これはスキルがトリガーされるかどうかをチェックするケースが測定しているものです。

704* [サンドボックス](/docs/ja/sandboxing): 実行に Bash を付与するときに適用される OS レベルサンドボックス

705* [プラグインマーケットプレイスを作成して配布する](/docs/ja/plugin-marketplaces): スイートが合格したら、プラグインを公開します。

plugin-hints.md +7 −7

Details

28Claude Code はプラグインを自動的にインストールすることはありません。ユーザーが常に確認します。28Claude Code はプラグインを自動的にインストールすることはありません。ユーザーが常に確認します。

29 29 

30<h2 id="emit-the-hint">30<h2 id="emit-the-hint">

31 ヒントを出力する31 ヒントを発行する

32</h2>32</h2>

33 33 

34ヒントプロンプトは、公式 Anthropic マーケットプレイスにリストされているプラグインに対してのみ発火します。統合をリリースする前に、[プラグインを公式マーケットプレイスに登録する](#get-your-plugin-into-the-official-marketplace)を参照してください。34ヒントプロンプトは、公式の Anthropic マーケットプレイスにリストされているプラグインに対してのみ発火します。統合をリリースする前に、[プラグインを公式マーケットプレイスに登録する](#get-your-plugin-into-the-official-marketplace)を参照してください。

35 35 

36環境変数でゲートを設定して、マーカーが人間のユーザーが CLI を直接実行するときに表示されないようにします。次に、タグを stderr に独立した行として書き込みます。チェックする変数を選択してください。36環境変数で発行をゲートして、人間が CLI を直接実行する場合にマーカーが表示される可能性を低くしてから、タグを stderr に独立した行として書き込みます。チェックする変数を選択してください。

37 37 

38* `CLAUDECODE`: Claude Code のすべてのバージョンで設定されるため、最も多くのセッションに到達します。Claude Code が起動する tmux セッションと stdio MCP サーバーサブプロセスでも設定され、IDE 拡張機能は統合ターミナルで設定します。人間のユーザーが CLI を直接実行する可能性があります。38* `CLAUDECODE`:すべての Claude Code バージョンで設定されるため、最も多くのセッションに到達します。Claude Code が開始する tmux セッションと stdio MCP サーバーサブプロセスでも設定されます。IDE 拡張機能は、人間が CLI を直接実行する可能性がある統合ターミナルでも設定します。

39* `CLAUDE_CODE_CHILD_SESSION`: Claude Code 自体が生成するサブプロセス(ツール呼び出し、hook コマンド、[status line](/docs/ja/statusline) コマンドなど)でのみ設定されるため、タグは通常、人間のターミナルに到達しません。セッション内で開始された長時間実行されるプロセス(tmux サーバーなど)は変数をキャプチャするため、そのプロセスから後で起動されたシェルは依然として生のタグを表示します。Claude Code v2.1.172 以降が必要なため、古いバージョンのセッションではヒントが表示されません。39* `CLAUDE_CODE_CHILD_SESSION`:Claude Code 自体がスポーンするサブプロセス(ツール呼び出し、フックコマンド、[ステータスライン](/docs/ja/statusline)コマンドなど)でのみ設定されるため、タグは通常、人間のターミナルに到達しません。セッション内で開始された長時間実行プロセス(tmux サーバーなど)は変数をキャプチャするため、そのプロセスから後で起動されたシェルは依然として生のタグを表示します。

40 40 

41以下の例は、最大限のリーチのために `CLAUDECODE` でゲートを設定し、公式マーケットプレイスの `example-cli` という名前のプラグインのヒントを出力します。41以下の例は、最大限のリーチのために `CLAUDECODE` でゲートし、公式マーケットプレイスの `example-cli` という名前のプラグインのヒントを発行します。

42 42 

43<CodeGroup>43<CodeGroup>

44 ```javascript Node.js theme={null}44 ```javascript Node.js theme={null}


73 ```73 ```

74</CodeGroup>74</CodeGroup>

75 75 

76公式マーケットプレイスのプラグイン名で `example-cli` を置き換えます。76公式マーケットプレイスのプラグイン名で `example-cli` を置き換えてください。

77 77 

78<h2 id="choose-where-to-emit">78<h2 id="choose-where-to-emit">

79 出力場所を選択する79 出力場所を選択する

plugins.md +58 −50

Details

179<Warning>179<Warning>

180 **よくある間違い**:`commands/`、`agents/`、`skills/`、`hooks/` を `.claude-plugin/` ディレクトリ内に配置しないでください。`plugin.json` のみが `.claude-plugin/` 内に入ります。他のすべてのディレクトリはプラグインルートレベルにある必要があります。180 **よくある間違い**:`commands/`、`agents/`、`skills/`、`hooks/` を `.claude-plugin/` ディレクトリ内に配置しないでください。`plugin.json` のみが `.claude-plugin/` 内に入ります。他のすべてのディレクトリはプラグインルートレベルにある必要があります。

181 181 

182 プラグインルートは個別プラグイン自体のディレクトリです。`--plugin-dir` に渡すディレクトリ、または `.claude-plugin/plugin.json` を含むディレクトリです。`~/.claude/` ではありません。例えば、Claude Code は `~/.claude/.mcp.json` に配置された `.mcp.json` を読み込みません。182 プラグインルートは個別プラグイン自体のディレクトリです。例えば、[クイックスタート](#quickstart)の `my-first-plugin/` のようなものです。`~/.claude/` ではありません。例えば、Claude Code は `~/.claude/.mcp.json` に配置された `.mcp.json` を読み込みません。

183</Warning>183</Warning>

184 184 

185| ディレクトリ | 場所 | 目的 |185| ディレクトリ | 場所 | 目的 |


204基本的なプラグインに慣れたら、より高度な拡張機能を作成できます。204基本的なプラグインに慣れたら、より高度な拡張機能を作成できます。

205 205 

206<h3 id="add-skills-to-your-plugin">206<h3 id="add-skills-to-your-plugin">

207 プラグインにスキルを追加する207 プラグインに Skills を追加する

208</h3>208</h3>

209 209 

210プラグインには、Claude の機能を拡張する[エージェントスキル](/docs/ja/skills)を含めることができます。スキルはモデル呼び出し型です。Claude はタスクコンテキストに基づいて自動的にそれらを使用します。210プラグインは [Agent Skills](/docs/ja/skills) を含めることで、Claude の機能を拡張できます。Skills はモデルが呼び出すもので、Claude はタスクのコンテキストに基づいて自動的に使用します。

211 211 

212プラグインルートに `skills/` ディレクトリを追加し、`SKILL.md` ファイルを含むスキルフォルダを追加します。212プラグインのルートに `skills/` ディレクトリを追加し、`SKILL.md` ファイルを含む Skill フォルダを配置します。

213 213 

214```text theme={null}214```text theme={null}

215my-plugin/215my-plugin/


220 └── SKILL.md220 └── SKILL.md

221```221```

222 222 

223各 `SKILL.md` には YAML フロントマターと指示が含まれます。Claude がスキルをいつ使用するかを知るように `description` を含めてください。223各 `SKILL.md` には YAML フロントマターと説明が含まれます。Claude がいつ Skill を使用するかを知るために `description` を含めます。

224 224 

225```yaml theme={null}225```yaml theme={null}

226---226---


2344. Test coverage2344. Test coverage

235```235```

236 236 

237プラグインをインストールした後、インストール概要を確認してください。`Run /reload-plugins to activate.` と報告されている場合は、そのコマンドを実行してスキルを読み込みます。段階的な開示とツール制限を含む完全なスキル作成ガイダンスについては、[エージェントスキル](/docs/ja/skills)を参照してください。237プラグインをインストール後、インストール概要を確認します。`Run /reload-plugins to activate.` と表示される場合は、[プラグインの変更を再起動なしで適用する](/docs/ja/discover-plugins#apply-plugin-changes-without-restarting) を参照して、現在のセッションで Skills を読み込みます。段階的な情報開示とツール制限を含む完全な Skill 作成ガイダンスについては、[Agent Skills](/docs/ja/skills) を参照してください。

238 238 

239<h3 id="add-lsp-servers-to-your-plugin">239<h3 id="add-lsp-servers-to-your-plugin">

240 プラグインに LSP サーバーを追加する240 プラグインに LSP サーバーを追加する

241</h3>241</h3>

242 242 

243<Tip>243<Tip>

244 TypeScript、Python、Rust などの一般的な言語については、公式マーケットプレイスから事前構築された LSP プラグインをインストールしてください。既に対応されていない言語のサポートが必要な場合にのみ、カスタム LSP プラグインを作成してください。244 TypeScript、Python、Rust などの一般的な言語については、公式マーケットプレイスから事前構築された LSP プラグインをインストールしてください。カスタム LSP プラグインは、まだカバーされていない言語のサポートが必要な場合にのみ作成してください。

245</Tip>245</Tip>

246 246 

247LSP(Language Server Protocol)プラグインは Claude にリアルタイムコード インテリジェンスを提供します。公式 LSP プラグインがない言語をサポートする必要がある場合は、プラグインに `.lsp.json` ファイルを追加することで、独自のプラグインを作成できます。247LSP(Language Server Protocol)プラグインは Claude にリアルタイムのコード インテリジェンスを提供します。公式 LSP プラグインがない言語をサポートする必要がある場合は、プラグインに `.lsp.json` ファイルを追加することで、独自のプラグインを作成できます。

248 248 

249```json .lsp.json theme={null}249```json .lsp.json theme={null}

250{250{


258}258}

259```259```

260 260 

261プラグインをインストールするユーザーは、言語サーバーバイナリをマシンにインストールしておく必要があります。261プラグインをインストールするユーザーは、言語サーバーのバイナリをマシンにインストールしておく必要があります。

262 262 

263サーバーが起動することを確認するには、プラグインを有効にして Claude Code を起動し、`/plugin` エラータブを確認してください。起動に失敗した言語サーバーはそこに表示されます。例えば、バイナリがインストールされていない場合は `Executable not found in $PATH` と表示されます。無効な設定を持つエントリはスキップされます。理由を確認するには `claude --debug` を実行してください。263サーバーが起動することを確認するには、プラグインを有効にして Claude Code を起動し、`/plugin` Errors タブを確認します。起動に失敗した言語サーバーはそこに表示されます。例えば、バイナリがインストールされていない場合は `Executable not found in $PATH` と表示されます。無効な設定を持つエントリはスキップされます。理由を確認するには `claude --debug` を実行してください。

264 264 

265完全な LSP 設定オプションについては、[LSP サーバー](/docs/ja/plugins-reference#lsp-servers)を参照してください。265完全な LSP 設定オプションについては、[LSP servers](/docs/ja/plugins-reference#lsp-servers) を参照してください。

266 266 

267<h3 id="add-background-monitors-to-your-plugin">267<h3 id="add-background-monitors-to-your-plugin">

268 プラグインにバックグラウンドモニターを追加する268 プラグインにバックグラウンド モニターを追加する

269</h3>269</h3>

270 270 

271バックグラウンドモニターを使用すると、プラグインはログ、ファイル、または外部ステータスをバックグラウンドで監視し、イベントが到着したときに Claude に通知できます。Claude Code はプラグインがアクティブな場合、各モニターを自動的に開始するため、Claude にモニターの開始を指示する必要はありません。271バックグラウンド モニターを使用すると、プラグインはログ、ファイル、または外部ステータスをバックグラウンドで監視し、イベントが到着したときに Claude に通知できます。Claude Code はプラグインがアクティブな場合、各モニターを自動的に起動するため、Claude にウォッチを開始するよう指示する必要はありません。

272 272 

273プラグインルートに `monitors/monitors.json` ファイルを追加し、モニターエントリの配列を含めます。273プラグインのルートに `monitors/monitors.json` ファイルを追加し、モニター エントリの配列を含めます。

274 274 

275```json monitors/monitors.json theme={null}275```json monitors/monitors.json theme={null}

276[276[


282]282]

283```283```

284 284 

285`command` からの各 stdout 行は、セッション中に Claude への通知として配信されます。`when` トリガーと変数置換を含む完全なスキーマについては、[モニター](/docs/ja/plugins-reference#monitors)を参照してください。285`command` からの各 stdout 行は、セッション中に Claude への通知として配信されます。`when` トリガーと変数置換を含む完全なスキーマについては、[Monitors](/docs/ja/plugins-reference#monitors) を参照してください。

286 286 

287<h3 id="ship-default-settings-with-your-plugin">287<h3 id="ship-default-settings-with-your-plugin">

288 プラグインでデフォルト設定を配布する288 プラグインでデフォルト設定を配布する

289</h3>289</h3>

290 290 

291プラグインは、プラグインルートに `settings.json` ファイルを含めて、プラグインが有効になったときにデフォルト設定を適用できます。現在、`agent` と `subagentStatusLine` キーのみがサポートされています。291プラグインはプラグインのルートに `settings.json` ファイルを含めて、プラグインが有効になったときにデフォルト設定を適用できます。現在、`agent` と `subagentStatusLine` キーのみがサポートされています。

292 292 

293`agent` を設定すると、プラグインの[カスタムエージェント](/docs/ja/sub-agents)の 1 つがメインスレッドとしてアクティブになり、そのシステムプロンプト、ツール制限、モデルが適用されます。これにより、プラグインは有効になったときに Claude Code の動作方法をデフォルトで変更できます。293`agent` を設定すると、プラグインの [custom agents](/docs/ja/sub-agents) の 1 つがメイン スレッドとしてアクティブになり、そのシステム プロンプト、ツール制限、およびモデルが適用されます。これにより、プラグインは有効になったときに Claude Code のデフォルトの動作を変更できます。

294 294 

295```json settings.json theme={null}295```json settings.json theme={null}

296{296{


304 複雑なプラグインを整理する304 複雑なプラグインを整理する

305</h3>305</h3>

306 306 

307多くのコンポーネントを持つプラグインの場合、ディレクトリ構造を機能別に整理してください。完全なディレクトリレイアウトと整理パターンについては、[プラグインディレクトリ構造](/docs/ja/plugins-reference#plugin-directory-structure)を参照してください。307多くのコンポーネントを持つプラグインの場合、機能別にディレクトリ構造を整理します。完全なディレクトリ レイアウトと整理パターンについては、[Plugin directory structure](/docs/ja/plugins-reference#plugin-directory-structure) を参照してください。

308 308 

309<h3 id="test-your-plugins-locally">309<h3 id="test-your-plugins-locally">

310 プラグインをローカルでテストする310 プラグインをローカルでテストする

311</h3>311</h3>

312 312 

313開発中にプラグインをテストするには、`--plugin-dir` フラグを使用してください。これにより、インストールを必要とせずにプラグインが直接読み込まれます。313`--plugin-dir` フラグを使用して、開発中にプラグインをテストします。これにより、インストールを必要とせずにプラグインを直接読み込みます。

314 314 

315```bash theme={null}315```bash theme={null}

316claude --plugin-dir ./my-plugin316claude --plugin-dir ./my-plugin

317```317```

318 318 

319このフラグはプラグインディレクトリの `.zip` アーカイブも受け入れます。319このフラグはプラグイン ディレクトリの `.zip` アーカイブも受け入れます。

320 320 

321```bash theme={null}321```bash theme={null}

322claude --plugin-dir ./my-plugin.zip322claude --plugin-dir ./my-plugin.zip

323```323```

324 324 

325`--plugin-dir` プラグインがインストール済みのマーケットプレイスプラグインと同じ名前を持つ場合、そのセッション中はローカルコピーが優先されます。これにより、最初にアンインストールしなくても、既にインストール済みのプラグインへの変更をテストできます。マネージド設定によって強制的に有効にされたマーケットプレイスプラグインは唯一の例外であり、オーバーライドできません。325`--plugin-dir` プラグインがインストール済みのマーケットプレイス プラグインと同じ名前を持つ場合、そのセッションではローカル コピーが優先されます。これにより、最初にアンインストールしなくても、既にインストール済みのプラグインへの変更をテストできます。例外は、管理設定によって強制的に有効にされたまたは強制的に無効にされたプラグインです。`--plugin-dir` はそれらをオーバーライドできません。

326 326 

327プラグインに変更を加えると、`/reload-plugins` を実行して再起動せずに更新を反映させます。これにより、プラグイン、スキル、エージェント、フック、プラグイン MCP サーバー、プラグイン LSP サーバーが再読み込みされます。インタラクティブターミナルのないセッションでは、プラグイン MCP サーバーの変更は[次のセッションを待ちます](/docs/ja/discover-plugins#apply-plugin-changes-without-restarting)。プラグインコンポーネントをテストします。327プラグインに変更を加えると、`/reload-plugins` を実行して、再起動せずに更新を取得します。これにより、プラグイン、Skills、エージェント、hooks、プラグイン MCP サーバー、およびプラグイン LSP サーバーが再読み込みされます。インタラクティブ ターミナルのないセッションでは、プラグイン MCP サーバーの変更は [次のセッションまで待機](/docs/ja/discover-plugins#apply-plugin-changes-without-restarting) します。プラグイン コンポーネントをテストします。

328 328 

329* `/plugin-name:skill-name` でスキルを試す329* `/plugin-name:skill-name` で Skills を試す

330* `/context` でエージェントがカスタムエージェントの下に表示されることを確認するか、スコープ付き名でエージェントを @-mention する330* エージェントが `/context` の Custom Agents に表示されるか、またはスコープ付き名で @-mention できるかを確認する

331* 各フックが一致するイベントをトリガーします。例えば、`PostToolUse` フックの場合はファイルを編集するよう Claude に依頼し、その効果を確認します。Claude Code は、[デバッグログ](/docs/ja/hooks#debug-hooks)で、どのフックが一致したか、終了コード、出力を記録します。331* `PostToolUse` hook の場合は Claude にファイルを編集するよう求めるなど、各 hook が一致するイベントをトリガーし、その効果を確認する。Claude Code は、一致した hooks、終了コード、および出力を [debug log](/docs/ja/hooks#debug-hooks) に記録します。

332 332 

333<Tip>333<Tip>

334 フラグを複数回指定することで、複数のプラグインを一度に読み込むことができます。334 複数のプラグインを一度に読み込むには、フラグを複数回指定します。

335 335 

336 ```bash theme={null}336 ```bash theme={null}

337 claude --plugin-dir ./plugin-one --plugin-dir ./plugin-two337 claude --plugin-dir ./plugin-one --plugin-dir ./plugin-two

338 ```338 ```

339 339 

340 プラグインとそれが依存するプラグインを一緒にテストするには、[プラグインとその依存関係をローカルでテストする](/docs/ja/plugin-dependencies#test-a-plugin-and-its-dependency-locally)を参照してください。340 プラグインとそれが依存するプラグインをテストするには、[プラグインとその依存関係をローカルでテストする](/docs/ja/plugin-dependencies#test-a-plugin-and-its-dependency-locally) を参照してください。

341</Tip>341</Tip>

342 342 

343URL でホストされている `.zip` アーカイブとしてパッケージ化されているプラグイン(CI ビルドアーティファクトなど)をテストするには、代わりに `--plugin-url` を使用してください。Claude Code はスタートアップ時にアーカイブをフェッチし、そのセッションのみ読み込みます。Claude Code がアーカイブをフェッチできない場合、またはアーカイブが無効な場合、プラグインなしで開始し、`/plugin` マネージャーの**エラー**タブで確認できるプラグイン読み込みエラーを記録します。プラグインソースに対して同じ[信頼に関する考慮事項](/docs/ja/discover-plugins#security)が適用されます。このフラグは、制御または信頼するアーカイブのみを指してください。343`--plugin-dir` でプラグインを試すことで、それが機能することがわかります。Claude が実際にどのくらいの頻度でそれに到達し、正しい結果を得るかを確認するには、[`claude plugin eval`](/docs/ja/plugin-evals) を使用してテスト プロンプトのセットに対して実行します。各プロンプトはプラグインが読み込まれた状態と読み込まれていない状態で複数回実行されるため、プラグインが何を貢献しているかを確認し、プラグインを変更したときまたは新しいモデルがリリースされたときの回帰を検出できます。

344 

345複数のプラグインを 1 つの場所から読み込むには、それらを保持するフォルダを渡します(例:`--plugin-dir ./plugins`)。フォルダからプラグインを読み込むには Claude Code v2.1.265 以降が必要です。Claude Code はフォルダのトップ レベルを読み取り、どのプラグインを読み込むかを決定し、インタラクティブ セッションではフォルダの後の変更も監視します。

346 

347* **読み込まれるもの**: フォルダにマニフェストまたはプラグイン コンポーネントがトップ レベルにない場合、Claude Code はそれをプラグインのフォルダとして扱います。`.claude-plugin/plugin.json` マニフェストを持つ各直下のサブフォルダは、別のプラグインとして読み込まれます。Claude Code はフォルダ内の他のすべてをスキップします。マニフェストのないプラグインを含め、エラーを報告せずにスキップします。

348* **インタラクティブ セッション中の変更**: 追加したサブフォルダは、マニフェストが配置されると新しいプラグインとして読み込まれ、サブフォルダを削除するとそのプラグインがアンロードされます。Claude Code は各変更についてセッションに行を出力します。変更を会話の途中で適用すると [プロンプト キャッシュが無効になる](/docs/ja/prompt-caching#enabling-or-disabling-a-plugin) 場合、Claude Code はそれを保持し、行は `/reload-plugins` を実行して適用するよう指示します。

349 

350既に `.zip` アーカイブとしてパッケージ化され、CI ビルド アーティファクトなどの URL でホストされているプラグインをテストするには、代わりに `--plugin-url` を使用します。Claude Code は起動時にアーカイブをフェッチし、そのセッションのみ読み込みます。Claude Code がアーカイブをフェッチできない場合、またはアーカイブが無効な場合、プラグインなしで起動し、`/plugin` マネージャーの **Errors** タブで確認できるプラグイン読み込みエラーを記録します。同じ [信頼に関する考慮事項](/docs/ja/discover-plugins#security) が、任意のプラグイン ソースに適用されます。このフラグは、制御または信頼するアーカイブのみを指します。

344 351 

345複数のプラグインを読み込むには、各 URL に対してフラグを繰り返します。352複数のプラグインを読み込むには、各 URL に対してフラグを繰り返します。

346 353 


358 プラグインの問題をデバッグする365 プラグインの問題をデバッグする

359</h3>366</h3>

360 367 

361プラグインが期待どおりに機能しない場合:368プラグインが期待どおりに機能していない場合:

362 369 

3631. **構造を確認する**:ディレクトリが `.claude-plugin/` 内ではなく、プラグインルートにあることを確認してください3701. **構造を確認する**: ディレクトリが `.claude-plugin/` 内ではなく、プラグイン ルートにあることを確認します。

3642. **コンポーネントを個別にテストする**:各スキル、エージェント、フックを個別に確認してください3712. **コンポーネントを個別にテストする**: 各 Skill、エージェント、および hook を個別に確認します。

3653. **検証とデバッグツールを使用する**:CLI コマンドとトラブルシューティング技術については、[デバッグと開発ツール](/docs/ja/plugins-reference#debugging-and-development-tools)を参照してください3723. **検証とデバッグ ツールを使用する**: CLI コマンドとトラブルシューティング技術については、[Debugging and development tools](/docs/ja/plugins-reference#debugging-and-development-tools) を参照してください。

366 373 

367<h3 id="share-your-plugins">374<h3 id="share-your-plugins">

368 プラグインを共有する375 プラグインを共有する


370 377 

371プラグインを共有する準備ができたら:378プラグインを共有する準備ができたら:

372 379 

3731. **ドキュメントを追加する**:インストールと使用方法の指示を含む `README.md` を含めます3801. **ドキュメントを追加する**: インストールと使用方法の説明を含む `README.md` を含めます。

3742. **バージョン管理戦略を選択する**:明示的な `version` を設定するか、[バージョン管理](/docs/ja/plugins-reference#version-management)で説明されているフォールバックに依存するかを決定してください。3812. **バージョン管理戦略を選択する**: 明示的な `version` を設定するか、[version management](/docs/ja/plugins-reference#version-management) で説明されているフォールバックに依存するかを決定します。

3753. **マーケットプレイスを作成または使用する**:[プラグインマーケットプレイス](/docs/ja/plugin-marketplaces)を通じて配布してインストールします3823. **マーケットプレイスを作成または使用する**: [plugin marketplaces](/docs/ja/plugin-marketplaces) を通じて配布してインストールします。

3764. **他のユーザーでテストする**:より広い配布の前に、チームメンバーにプラグインをテストしてもらいます3834. **他の人でテストする**: より広い配布の前に、チーム メンバーにプラグインをテストしてもらいます。

377 384 

378プラグインがマーケットプレイスに登録されたら、他のユーザーは[プラグインを検出してインストールする](/docs/ja/discover-plugins)の指示を使用してインストールできます。プラグインをチーム内に保つには、[プライベートリポジトリ](/docs/ja/plugin-marketplaces#private-repositories)でマーケットプレイスをホストしてください。385プラグインがマーケットプレイスに登録されたら、他のユーザーは [Discover and install plugins](/docs/ja/discover-plugins) の説明を使用してインストールできます。プラグインをチーム内に保つには、[private repository](/docs/ja/plugin-marketplaces#private-repositories) でマーケットプレイスをホストします。

379 386 

380<h3 id="submit-your-plugin-to-the-community-marketplace">387<h3 id="submit-your-plugin-to-the-community-marketplace">

381 プラグインをコミュニティマーケットプレイスに送信する388 プラグインをコミュニティ マーケットプレイスに送信する

382</h3>389</h3>

383 390 

384Anthropic は Claude Code プラグイン用に 2 つの公開マーケットプレイスを管理しています。391Anthropic は Claude Code プラグイン用に 2 つの公開マーケットプレイスを管理しています。

385 392 

386* **`claude-plugins-official`**:Anthropic によって管理されているキュレーションされたプラグインセット。初めて Claude Code をインタラクティブに起動したときに自動的に登録されます。最初のインタラクティブ起動の前に Claude Code を非インタラクティブに実行した場合、または[マーケットプレイスポリシー](/docs/ja/plugin-marketplaces#managed-marketplace-restrictions)が以前の試みをブロックした場合は、`claude plugin marketplace add anthropics/claude-plugins-official` で自分で登録してください。393* **`claude-plugins-official`**: Anthropic によって管理されるキュレーションされたプラグイン セット。Claude Code は初めて対話的に Claude Code を起動するときに自動的に登録します。初回の対話的な起動の前に Claude Code を非対話的に実行した場合、または [marketplace policy](/docs/ja/plugin-marketplaces#managed-marketplace-restrictions) が以前の試行をブロックした場合は、`claude plugin marketplace add anthropics/claude-plugins-official` で自分で登録します。

387* **`claude-community`**:レビュー後にサードパーティの送信が登録される公開コミュニティマーケットプレイス。ユーザーは `/plugin marketplace add anthropics/claude-plugins-community` で追加し、`@claude-community` としてインストールします。394* **`claude-community`**: レビュー後にサードパーティの送信が行われる公開コミュニティ マーケットプレイス。ユーザーは `/plugin marketplace add anthropics/claude-plugins-community` で追加し、`@claude-community` としてインストールします。

388 395 

389プラグインをコミュニティマーケットプレイスレビュー用に送信するには、アプリ内フォームの 1 つを使用してください。396コミュニティ マーケットプレイスのレビューのためにプラグインを送信するには、アプリ内フォームの 1 つを使用します。

390 397 

391* **claude.ai**:[claude.ai/admin-settings/directory/submissions/plugins/new](https://claude.ai/admin-settings/directory/submissions/plugins/new)398* **claude.ai**: [claude.ai/admin-settings/directory/submissions/plugins/new](https://claude.ai/admin-settings/directory/submissions/plugins/new)

392* **Console**:[platform.claude.com/plugins/submit](https://platform.claude.com/plugins/submit)399* **Console**: [platform.claude.com/plugins/submit](https://platform.claude.com/plugins/submit)

393 400 

394claude.ai フォームには Team または Enterprise 組織とディレクトリ管理アクセスが必要です。組織の所有者はデフォルトでこのアクセス権を持っています。Team または Enterprise 組織に属していない個別の作成者は、代わりに Console フォームを使用できます。401claude.ai フォームには Team または Enterprise 組織とディレクトリ管理アクセスが必要です。組織の所有者はデフォルトでこのアクセス権を持っています。Team または Enterprise 組織に属していない個別の作成者は、代わりに Console フォームを使用できます。

395 402 

396送信する前に、ローカルで `claude plugin validate ./your-plugin` を実行してください。`./your-plugin` をプラグインディレクトリへのパスに置き換えてください。レビューパイプラインはすべての送信に対して同じチェックを実行し、自動化されたセーフティスクリーニングも行います。検証が成功すると、Claude Code は `✔ Validation passed` を出力します。警告がある場合は `✔ Validation passed with warnings` を出力します。警告は検証を失敗させません。`--strict` を追加して、警告をエラーとして扱ってください。403送信する前に、`claude plugin validate ./your-plugin` をローカルで実行します。`./your-plugin` をプラグイン ディレクトリへのパスに置き換えます。レビュー パイプラインはすべての送信に対して同じチェックを実行し、自動化されたセーフティ スクリーニングも実行します。検証が成功すると、Claude Code は `✔ Validation passed` を出力するか、警告がある場合は `✔ Validation passed with warnings` を出力します。警告は検証を失敗させません。警告をエラーとして扱うには `--strict` を追加します。

397 404 

398承認されたプラグインは、[`anthropics/claude-plugins-community`](https://github.com/anthropics/claude-plugins-community) カタログ内の特定のコミット SHA にピン留めされ、CI はリポジトリに新しいコミットをプッシュするたびに自動的にピンをバンプします。公開カタログはレビューパイプラインから毎晩同期されるため、承認と `marketplace.json` にプラグインが表示されるまでの間に遅延が生じる可能性があります。プラグインがインストール可能かどうかを確認するには、[コミュニティカタログ](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json)でその名前を検索してください。405承認されたプラグインは [`anthropics/claude-plugins-community`](https://github.com/anthropics/claude-plugins-community) カタログの特定のコミット SHA にピン留めされ、CI はリポジトリに新しいコミットをプッシュするときに自動的にピンをバンプします。公開カタログは毎晩レビュー パイプラインから同期されるため、承認と `marketplace.json` にプラグインが表示されるまでの間に遅延が生じる可能性があります。プラグインがインストール可能かどうかを確認するには、[community catalog](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json) でその名前を検索します。

399 406 

400公式マーケットプレイス `claude-plugins-official` は別途キュレーションされています。Anthropic はどのプラグインを含めるかを裁量で決定します。申請プロセスはなく、送信フォームは公式マーケットプレイスにプラグインを追加しません。407公式マーケットプレイス `claude-plugins-official` は別途キュレーションされています。Anthropic は、どのプラグインを含めるかを裁量で決定します。申請プロセスはなく、送信フォームは公式マーケットプレイスにプラグインを追加しません。

401 408 

402Anthropic がプラグインを公式マーケットプレイスにリストしている場合、CLI は Claude Code ユーザーにインストールを促すことができます。[CLI からプラグインを推奨する](/docs/ja/plugin-hints)を参照してください。409Anthropic がプラグインを公式マーケットプレイスにリストしている場合、CLI は Claude Code ユーザーにインストールを促すことができます。[CLI からプラグインを推奨する](/docs/ja/plugin-hints) を参照してください。

403 410 

404<h2 id="convert-existing-configurations-to-plugins">411<h2 id="convert-existing-configurations-to-plugins">

405 既存の設定をプラグインに変換する412 既存の設定をプラグインに変換する


510 プラグイン開発者向け517 プラグイン開発者向け

511</h3>518</h3>

512 519 

520* [evals でプラグインをテストする](/docs/ja/plugin-evals):プラグインが何を変更するかを測定し、CI でゲートする

513* [マーケットプレイスを作成して配布する](/docs/ja/plugin-marketplaces):プラグインをパッケージ化して共有521* [マーケットプレイスを作成して配布する](/docs/ja/plugin-marketplaces):プラグインをパッケージ化して共有

514* [プラグインリファレンス](/docs/ja/plugins-reference):完全な技術仕様522* [プラグインリファレンス](/docs/ja/plugins-reference):完全な技術仕様

515* 特定のプラグインコンポーネントをさらに詳しく調べる:523* 特定のプラグインコンポーネントをさらに詳しく調べる:

516 * [スキル](/docs/ja/skills):スキル開発の詳細524 * [Skills](/docs/ja/skills):スキル開発の詳細

517 * [サブエージェント](/docs/ja/sub-agents):エージェント設定と機能525 * [Subagents](/docs/ja/sub-agents):エージェント設定と機能

518 * [フック](/docs/ja/hooks):イベント処理と自動化526 * [Hooks](/docs/ja/hooks):イベント処理と自動化

519 * [MCP](/docs/ja/mcp):外部ツール統合527 * [MCP](/docs/ja/mcp):外部ツール統合

Details

121 121 

122プラグイン hooks は、[ユーザー定義 hooks](/docs/ja/hooks) と同じライフサイクルイベントに応答します。122プラグイン hooks は、[ユーザー定義 hooks](/docs/ja/hooks) と同じライフサイクルイベントに応答します。

123 123 

124| Event | When it fires |124| イベント | 発火するタイミング |

125| :-------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |125| :-------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------ |

126| `SessionStart` | When a session begins or resumes |126| `SessionStart` | セッションが開始または再開されたとき |

127| `Setup` | When you start Claude Code with `--init-only`, or with `--init` or `--maintenance` in `-p` mode. For one-time preparation in CI or scripts |127| `Setup` | `--init-only` で Claude Code を起動するとき、または `-p` モードで `--init` または `--maintenance` を使用するとき。CI またはスクリプトでの 1 回限りの準備用 |

128| `UserPromptSubmit` | When you submit a prompt, before Claude processes it |128| `UserPromptSubmit` | プロンプトを送信するとき、Claude が処理する前 |

129| `UserPromptExpansion` | When a user-typed command expands into a prompt, before it reaches Claude. Can block the expansion |129| `UserPromptExpansion` | ユーザーが入力したコマンドがプロンプトに展開されるとき、Claude に到達する前。展開をブロックできます |

130| `PreToolUse` | Before a tool call executes. Can block it |130| `PreToolUse` | ツール呼び出しが実行される前。ブロックできます |

131| `PermissionRequest` | When a tool call needs a permission decision |131| `PermissionRequest` | ツール呼び出しが権限決定を必要とするとき |

132| `PermissionDenied` | When auto mode denies a tool call, including denials without a classifier verdict. Use JSON `hookSpecificOutput.retry: true` to tell the model it may retry the denied tool call. Claude Code ignores `retry` when the classifier produced no verdict |132| `PermissionDenied` | オートモードがツール呼び出しを拒否するとき、分類器の判定がない拒否を含みます。JSON `hookSpecificOutput.retry: true` を使用して、モデルが拒否されたツール呼び出しを再試行できることを伝えます。Claude Code は分類器が判定を出さなかった場合、`retry` を無視します |

133| `PostToolUse` | After a tool call succeeds |133| `PostToolUse` | ツール呼び出しが成功した後 |

134| `PostToolUseFailure` | After a tool call fails |134| `PostToolUseFailure` | ツール呼び出しが失敗した後 |

135| `PostToolBatch` | After a full batch of parallel tool calls resolves, before the next model call |135| `PostToolBatch` | 並列ツール呼び出しの完全なバッチが解決した後、次のモデル呼び出しの前 |

136| `Notification` | When Claude Code sends a notification |136| `Notification` | Claude Code が通知を送信するとき |

137| `MessageDisplay` | While assistant message text is displayed |137| `MessageDisplay` | アシスタントメッセージテキストが表示されている間 |

138| `SubagentStart` | When a subagent is spawned |138| `SubagentStart` | サブエージェントがスポーンされるとき |

139| `SubagentStop` | When a subagent finishes |139| `SubagentStop` | サブエージェントが終了するとき |

140| `TaskCreated` | When a task is being created via `TaskCreate` |140| `TaskCreated` | `TaskCreate` 経由でタスクが作成されるとき |

141| `TaskCompleted` | When a task is being marked as completed |141| `TaskCompleted` | タスクが完了としてマークされるとき |

142| `Stop` | When Claude finishes responding |142| `Stop` | Claude が応答を終了するとき |

143| `StopFailure` | When the turn ends due to an API error |143| `StopFailure` | API エラーが原因でターンが終了するとき |

144| `TeammateIdle` | When an [agent team](/docs/en/agent-teams) teammate is about to go idle |144| `TeammateIdle` | [エージェントチーム](/docs/ja/agent-teams) のチームメイトがアイドル状態になろうとするとき |

145| `InstructionsLoaded` | When a CLAUDE.md or `.claude/rules/*.md` file is loaded into context. Fires at session start and when files are lazily loaded during a session |145| `InstructionsLoaded` | CLAUDE.md または `.claude/rules/*.md` ファイルがコンテキストに読み込まれるとき。セッション開始時およびセッション中にファイルが遅延読み込みされるときに発火します |

146| `ConfigChange` | When a configuration file changes during a session |146| `ConfigChange` | セッション中に設定ファイルが変更されるとき |

147| `CwdChanged` | When the working directory changes, for example when Claude executes a `cd` command. Useful for reactive environment management with tools like direnv |147| `CwdChanged` | 作業ディレクトリが変更されるとき、例えば Claude が `cd` コマンドを実行するとき。direnv などのツールを使用したリアクティブな環境管理に便利です |

148| `DirectoryAdded` | When a working directory is added mid-session via `/add-dir` or the SDK `register_repo_root` control request |148| `DirectoryAdded` | `/add-dir` または SDK `register_repo_root` コントロールリクエスト経由でセッション中盤に作業ディレクトリが追加されるとき |

149| `FileChanged` | When a watched file changes on disk. The `matcher` field specifies which filenames to watch |149| `FileChanged` | 監視対象ファイルがディスク上で変更されるとき。`matcher` フィールドは監視するファイル名を指定します |

150| `WorktreeCreate` | When a worktree is being created via `--worktree`, `isolation: "worktree"`, or for a background session. Replaces default git behavior |150| `WorktreeCreate` | `--worktree`、`isolation: "worktree"`、またはバックグラウンドセッション経由で worktree が作成されるとき。デフォルトの git 動作を置き換えます |

151| `WorktreeRemove` | When a worktree is being removed at session exit, when a subagent finishes, or when you delete a background session |151| `WorktreeRemove` | セッション終了時、サブエージェント終了時、またはバックグラウンドセッションを削除するときに worktree が削除されるとき |

152| `PreCompact` | Before context compaction |152| `PreCompact` | コンテキスト圧縮の前 |

153| `PostCompact` | After context compaction completes |153| `PostCompact` | コンテキスト圧縮が完了した後 |

154| `PreModelSwitch` | Before Claude Code applies a model switch that you or a client requested. Can block the switch |154| `PreModelSwitch` | Claude Code があなたまたはクライアントがリクエストしたモデルスイッチを適用する前。スイッチをブロックできます |

155| `PostModelSwitch` | After the session's model changes, including changes Claude Code makes on its own, such as restoring the model when you resume a session |155| `PostModelSwitch` | セッションのモデルが変更された後、Claude Code が独自に行う変更(セッションを再開するときのモデル復元など)を含みます |

156| `Elicitation` | When an MCP server requests user input during a tool call |156| `Elicitation` | MCP サーバーがツール呼び出し中にユーザー入力をリクエストするとき |

157| `ElicitationResult` | After a user responds to an MCP elicitation, before the response is sent back to the server |157| `ElicitationResult` | ユーザーが MCP エリシテーションに応答した後、レスポンスがサーバーに送り返される前 |

158| `SessionEnd` | When a session terminates |158| `SessionEnd` | セッションが終了するとき |

159 159 

160**Hook タイプ**:160**Hook タイプ**:

161 161 


488 "lspServers": "./.lsp.json",488 "lspServers": "./.lsp.json",

489 "experimental": {489 "experimental": {

490 "themes": "./themes/",490 "themes": "./themes/",

491 "monitors": "./monitors.json"491 "monitors": "./monitors.json",

492 "evals": "quality/evals"

492 },493 },

493 "dependencies": [494 "dependencies": [

494 "helper-lib",495 "helper-lib",


519 520 

520Claude Code が認識されたフィールドを処理する方法は、値の型が間違っている場合、フィールドによって異なります。521Claude Code が認識されたフィールドを処理する方法は、値の型が間違っている場合、フィールドによって異なります。

521 522 

522* **ほとんどのフィールド**: プラグインは読み込みに失敗します。たとえば、文字列の代わりに配列である `keywords` 値は読み込みエラーであり、`claude plugin validate` はそれをエラーとして報告します。523* **ほとんどのフィールド**: プラグインは読み込みに失敗します。たとえば、配列ではなく文字列である `keywords` 値は読み込みエラーであり、`claude plugin validate` はそれをエラーとして報告します。

523* **`experimental` と `metadata`**: Claude Code は非オブジェクト値を無視し、`claude plugin validate` は警告を報告します。524* **`experimental` と `metadata`**: Claude Code は非オブジェクト値を無視し、`claude plugin validate` は警告を報告します。

524 525 

525`--strict` を渡して、警告をエラーとして扱います。CI で使用して、公開前に別のツールのマニフェストから残されたスペルミスのあるフィールド名またはフィールドをキャッチします。ただし、プラグインは実行時に読み込まれます。526`--strict` を渡して、警告をエラーとして扱います。CI で使用して、公開前に別のツールのマニフェストから残されたスペルミスのあるフィールド名またはフィールドをキャッチします。ただし、プラグインは実行時に読み込まれます。


535| フィールド | 型 | 説明 | 例 |536| フィールド | 型 | 説明 | 例 |

536| :--------------- | :------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------- |537| :--------------- | :------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------- |

537| `$schema` | string | エディタのオートコンプリートと検証用の JSON Schema URL。Claude Code は読み込み時にこのフィールドを無視します。 | `"https://json.schemastore.org/claude-code-plugin-manifest.json"` |538| `$schema` | string | エディタのオートコンプリートと検証用の JSON Schema URL。Claude Code は読み込み時にこのフィールドを無視します。 | `"https://json.schemastore.org/claude-code-plugin-manifest.json"` |

538| `displayName` | string | `/plugin` ピッカーおよび他の UI サーフェスに表示される人間が読める名前。省略した場合は `name` にフォールバックします。`name` とは異なり、スペースと任意の大文字小文字を含むことができます。名前空間またはルックアップには使用されません。 | `"Deployment Tools"` |539| `displayName` | string | `/plugin` ピッカーおよび他の UI サーフェスに表示される人間が読める名前。マーケットプレイスインストール済みプラグインの場合、[マーケットプレイスエントリ](/docs/ja/plugin-marketplaces#optional-plugin-fields)の `displayName` はこの値より優先されます。どちらの場所にも表示名が設定されていない場合、ユーザーは `name` を見ます。`name` とは異なり、スペースと任意の大文字小文字を含むことができます。名前空間またはルックアップには使用されません。 | `"Deployment Tools"` |

539| `version` | string | オプション。セマンティックバージョン。これを設定するとプラグインをそのバージョン文字列にピンします。ユーザーはバージョンをバンプしたときのみ更新を受け取ります。[`command` ソース](/docs/ja/plugin-marketplaces#command-sources)を除きます。[バージョン管理](#version-management)を参照してください。マーケットプレイスエントリにも設定されている場合、`plugin.json` が優先されます。省略した場合、バージョンは[バージョン管理](#version-management)の次のソースから取得されます。 | `"2.1.0"` |540| `version` | string | オプション。セマンティックバージョン。これを設定するとプラグインをそのバージョン文字列にピンします。ユーザーはバージョンをバンプしたときのみ更新を受け取ります。[`command` ソース](/docs/ja/plugin-marketplaces#command-sources)を除きます。[バージョン管理](#version-management)を参照してください。マーケットプレイスエントリにも設定されている場合、`plugin.json` が優先されます。省略した場合、バージョンは[バージョン管理](#version-management)の次のソースから取得されます。 | `"2.1.0"` |

540| `description` | string | プラグインの目的の簡潔な説明 | `"Deployment automation tools"` |541| `description` | string | プラグインの目的の簡潔な説明 | `"Deployment automation tools"` |

541| `author` | object | 著者情報 | `{"name": "Dev Team", "email": "dev@company.com"}` |542| `author` | object | 著者情報 | `{"name": "Dev Team", "email": "dev@company.com"}` |


564</h3>565</h3>

565 566 

566| フィールド | 型 | 説明 | 例 |567| フィールド | 型 | 説明 | 例 |

567| :---------------------- | :-------------------- | :------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------- |568| :---------------------- | :-------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------- |

568| `skills` | string\|array | `<name>/SKILL.md` を含むカスタムスキルディレクトリ。デフォルト `skills/` スキャンに追加されます。マーケットプレイスルート例外については[パス動作ルール](#path-behavior-rules)を参照してください | `"./custom/skills/"` |569| `skills` | string\|array | `<name>/SKILL.md` を含むカスタムスキルディレクトリ。デフォルト `skills/` スキャンに追加されます。マーケットプレイスルート例外については[パス動作ルール](#path-behavior-rules)を参照してください | `"./custom/skills/"` |

569| `commands` | string\|array | カスタムフラット `.md` スキルファイルまたはディレクトリ(デフォルト `commands/` を置き換え) | `"./custom/cmd.md"` または `["./cmd1.md"]` |570| `commands` | string\|array | カスタムフラット `.md` スキルファイルまたはディレクトリ(デフォルト `commands/` を置き換え) | `"./custom/cmd.md"` または `["./cmd1.md"]` |

570| `agents` | string\|array | カスタムエージェントファイル(デフォルト `agents/` を置き換え) | `"./custom/agents/reviewer.md"` |571| `agents` | string\|array | カスタムエージェントファイル(デフォルト `agents/` を置き換え) | `"./custom/agents/reviewer.md"` |


575| `lspServers` | string\|array\|object | コード知能(定義へ移動、参照を検索など)用の[Language Server Protocol](https://microsoft.github.io/language-server-protocol/)コンフィグ | `"./.lsp.json"` |576| `lspServers` | string\|array\|object | コード知能(定義へ移動、参照を検索など)用の[Language Server Protocol](https://microsoft.github.io/language-server-protocol/)コンフィグ | `"./.lsp.json"` |

576| `experimental.themes` | string\|array | カラーテーマファイル/ディレクトリ(デフォルト `themes/` を置き換え)。[テーマ](#themes)を参照してください | `"./themes/"` |577| `experimental.themes` | string\|array | カラーテーマファイル/ディレクトリ(デフォルト `themes/` を置き換え)。[テーマ](#themes)を参照してください | `"./themes/"` |

577| `experimental.monitors` | string\|array | プラグインがアクティブな場合に自動的に開始されるバックグラウンド[Monitor](/docs/ja/tools-reference#monitor-tool)コンフィグ。[モニター](#monitors)を参照してください | `"./monitors.json"` |578| `experimental.monitors` | string\|array | プラグインがアクティブな場合に自動的に開始されるバックグラウンド[Monitor](/docs/ja/tools-reference#monitor-tool)コンフィグ。[モニター](#monitors)を参照してください | `"./monitors.json"` |

579| `experimental.evals` | string\|array | プラグインルートの下のディレクトリ。プラグインの[eval ケース](/docs/ja/plugin-evals#use-a-different-eval-directory)を保持します。デフォルト `evals/` ではない場合。`claude plugin eval --eval-dir` はそれをオーバーライドします | `"quality/evals"` |

578| `userConfig` | object | 有効化時にプロンプトされるユーザー設定可能な値。[ユーザー設定](#user-configuration)を参照してください | 以下を参照 |580| `userConfig` | object | 有効化時にプロンプトされるユーザー設定可能な値。[ユーザー設定](#user-configuration)を参照してください | 以下を参照 |

579| `channels` | array | メッセージ注入用のチャネル宣言(Telegram、Slack、Discord スタイル)。[チャネル](#channels)を参照してください | 以下を参照 |581| `channels` | array | メッセージ注入用のチャネル宣言(Telegram、Slack、Discord スタイル)。[チャネル](#channels)を参照してください | 以下を参照 |

580| `dependencies` | array | このプラグインが必要とする他のプラグイン。オプションで semver バージョン制約付き。[プラグイン依存関係バージョンを制約する](/docs/ja/plugin-dependencies)を参照してください | `[{ "name": "secrets-vault", "version": "~2.1.0" }]` |582| `dependencies` | array | このプラグインが必要とする他のプラグイン。オプションで semver バージョン制約付き。[プラグイン依存関係バージョンを制約する](/docs/ja/plugin-dependencies)を参照してください | `[{ "name": "secrets-vault", "version": "~2.1.0" }]` |


861* **ライフサイクルスクリプトなし:** `--ignore-scripts` は `preinstall`、`install`、および `postinstall` スクリプトが実行されないようにするため、これらのスクリプトでネイティブモジュールをビルドする依存関係はダウンロードされますが、このインストール中にはコンパイルされません。863* **ライフサイクルスクリプトなし:** `--ignore-scripts` は `preinstall`、`install`、および `postinstall` スクリプトが実行されないようにするため、これらのスクリプトでネイティブモジュールをビルドする依存関係はダウンロードされますが、このインストール中にはコンパイルされません。

862* **60 秒のタイムアウト:** Claude Code は実行時間が長いインストールを停止し、失敗として扱います。864* **60 秒のタイムアウト:** Claude Code は実行時間が長いインストールを停止し、失敗として扱います。

863 865 

864npm ソースプラグイン自体をフェッチすると、この依存関係インストールが実行される前に、ライフサイクルスクリプルが有効な状態で `npm install` が実行されます。866npm ソースプラグイン自体をフェッチすると、この依存関係インストールが実行される前に、ライフサイクルスクリプトが有効な状態で `npm install` が実行されます。

865 867 

866失敗またはスキップされたインストールはプラグインをブロックすることはありません。インストールが失敗した場合、または Claude Code が yarn または pnpm ロックファイルをスキップした場合、理由は [デバッグ出力](#debugging-commands)の警告として記録されます。`package.json` とロックファイルがないプラグインはログエントリなしでスキップされます。タイムアウトしたインストールは、キャッシュされたコピーに部分的な `node_modules` ツリーを残すことができます。868失敗またはスキップされたインストールはプラグインをブロックすることはありません。インストールが失敗した場合、または Claude Code が yarn または pnpm ロックファイルをスキップした場合、理由は [デバッグ出力](#debugging-commands)の警告として記録されます。`package.json` とロックファイルがないプラグインはログエントリなしでスキップされます。タイムアウトしたインストールは、キャッシュされたコピーに部分的な `node_modules` ツリーを残すことができます。

867 869 


875 877 

876Claude Code はプラグインが独自のディレクトリ外のファイルを参照することを許可しません。プラグインルートの外に解決されるコンポーネントパスを拒否します。パスが `plugin.json` で宣言されているか、[マーケットプレイスエントリ](/docs/ja/plugin-marketplaces#plugin-entries)で宣言されているかに関わらず。これは、`../shared-utils` などのように書かれたプラグインの外を指すパス、および [1 つのマーケットプレイス内のリンク](#share-files-within-a-marketplace-with-symlinks)以外のプラグインの外につながるシンボリックリンクをカバーします。878Claude Code はプラグインが独自のディレクトリ外のファイルを参照することを許可しません。プラグインルートの外に解決されるコンポーネントパスを拒否します。パスが `plugin.json` で宣言されているか、[マーケットプレイスエントリ](/docs/ja/plugin-marketplaces#plugin-entries)で宣言されているかに関わらず。これは、`../shared-utils` などのように書かれたプラグインの外を指すパス、および [1 つのマーケットプレイス内のリンク](#share-files-within-a-marketplace-with-symlinks)以外のプラグインの外につながるシンボリックリンクをカバーします。

877 879 

880macOS と Linux では、Claude Code はコンポーネントパスにバックスラッシュが含まれている場合も拒否します。バックスラッシュパスで宣言されたコンポーネントは、Windows でのみロードされます。`./commands/deploy.md` などのようにフォワードスラッシュを使用してコンポーネントパスを記述してください。

881 

878Claude Code がパスを拒否すると、[`path escapes plugin directory`](/docs/ja/errors#path-escapes-plugin-directory) エラーを報告し、そのコンポーネントなしでプラグインをロードします。882Claude Code がパスを拒否すると、[`path escapes plugin directory`](/docs/ja/errors#path-escapes-plugin-directory) エラーを報告し、そのコンポーネントなしでプラグインをロードします。

879 883 

880Claude Code はプラグインをインストールするときにプラグインディレクトリ外のファイルをキャッシュにコピーしないため、コピーされたプラグイン内のスクリプトがプラグインルート上のパスを読み取る場合、それらのファイルも見つかりません。884Claude Code はプラグインをインストールするときにプラグインディレクトリ外のファイルをキャッシュにコピーしないため、コピーされたプラグイン内のスクリプトがプラグインルート上のパスを読み取る場合、それらのファイルも見つかりません。


996claude plugin init <name> [options]1000claude plugin init <name> [options]

997```1001```

998 1002 

999**引数:**1003コマンドは以下の引数を取ります:

1000 1004 

1001* `<name>`: プラグイン名。スキル名前空間と `~/.claude/skills/` の下のディレクトリ名になるため、スペースやパス区切り文字を含めることはできません。1005* `<name>`: プラグイン名。スキル名前空間と `~/.claude/skills/` の下のディレクトリ名になるため、スペースやパス区切り文字を含めることはできません。

1002 1006 

1003**オプション:**1007コマンドは以下のオプションを受け入れます:

1004 1008 

1005| オプション | 説明 | デフォルト |1009| オプション | 説明 | デフォルト |

1006| :----------------------- | :------------------------------------------------------------------------------------------ | :---------------------- |1010| :----------------------- | :------------------------------------------------------------------------------------------ | :---------------------- |


1011| `-f, --force` | ターゲットの既存 `.claude-plugin/` を上書きします | |1015| `-f, --force` | ターゲットの既存 `.claude-plugin/` を上書きします | |

1012| `-h, --help` | コマンドのヘルプを表示 | |1016| `-h, --help` | コマンドのヘルプを表示 | |

1013 1017 

1014**エイリアス:** `new`1018`claude plugin new` はこのコマンドのエイリアスです。

1015 1019 

1016各 `--with` 値は、そのコンポーネント用のスターターファイルを追加し、編集可能な状態にします:1020各 `--with` 値は、そのコンポーネント用のスターターファイルを追加し、編集可能な状態にします:

1017 1021 


1027 1031 

1028スキャフォルドされたプラグインは、マーケットプレイスではなく `@skills-dir` ソースを使用します。管理者は `strictKnownMarketplaces` でこのソースをブロックするか、[管理設定](/docs/ja/plugin-marketplaces#managed-marketplace-restrictions)の `blockedMarketplaces` に `{"source": "skills-dir"}` を追加することでブロックできます。ブロックされている場合、`plugin init` は書き込み前に失敗します。1032スキャフォルドされたプラグインは、マーケットプレイスではなく `@skills-dir` ソースを使用します。管理者は `strictKnownMarketplaces` でこのソースをブロックするか、[管理設定](/docs/ja/plugin-marketplaces#managed-marketplace-restrictions)の `blockedMarketplaces` に `{"source": "skills-dir"}` を追加することでブロックできます。ブロックされている場合、`plugin init` は書き込み前に失敗します。

1029 1033 

1030**例:**1034これらの例は一般的な呼び出しを示しています:

1031 1035 

1032```bash theme={null}1036```bash theme={null}

1033# 最小限のプラグインをスキャフォルド1037# 最小限のプラグインをスキャフォルド


1050claude plugin install <plugin> [options]1054claude plugin install <plugin> [options]

1051```1055```

1052 1056 

1053**引数:**1057コマンドは以下の引数を取ります:

1054 1058 

1055* `<plugin>`: プラグイン名、または特定のマーケットプレイス用の `plugin-name@marketplace-name`1059* `<plugin>`: プラグイン名、または特定のマーケットプレイス用の `plugin-name@marketplace-name`

1056 1060 

1057**オプション:**1061コマンドは以下のオプションを受け入れます:

1058 1062 

1059| オプション | 説明 | デフォルト |1063| オプション | 説明 | デフォルト |

1060| :--------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----- |1064| :--------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----- |

1061| `-s, --scope <scope>` | インストールスコープ: `user`、`project`、または `local` | `user` |1065| `-s, --scope <scope>` | インストールスコープ: `user`、`project`、または `local` | `user` |

1062| `--config <key=value>` | プラグインのマニフェストで宣言された[`userConfig`](#user-configuration)オプションを設定します。複数のオプションを設定するにはフラグを繰り返します | |1066| `--config <key=value>` | プラグインのマニフェストで宣言された[`userConfig`](#user-configuration)オプションを設定します。複数のオプションを設定するにはフラグを繰り返します | |

1063| `-y, --yes` | 確認プロンプトなしで、プラグインのマーケットプレイスが宣言するコマンドを受け入れます: [`command` ソース](/docs/ja/plugin-marketplaces#command-sources)を持つプラグインを生成するコマンド、またはアーカイブダウンロードを認証する[`headersHelper`](/docs/ja/plugin-marketplaces#authenticate-archive-downloads)。`headersHelper` を受け入れるには Claude Code v2.1.238 以降が必要です。Claude Code はまずコマンドを出力します。stdin または stdout が TTY でない場合は必須です。Claude Code セッション内では効果がないため、独自のターミナルからコマンドを実行してください | |1067| `-y, --yes` | 確認プロンプトなしで、プラグインのマーケットプレイスが宣言するコマンドを受け入れます: [`command` ソース](/docs/ja/plugin-marketplaces#command-sources)を持つプラグインを生成するコマンド、またはアーカイブダウンロードを認証する[`headersHelper`](/docs/ja/plugin-marketplaces#authenticate-archive-downloads)。`headersHelper` を受け入れるには Claude Code v2.1.238 以降が必要です。Claude Code はまずコマンドを出力します。stdin または stdout が TTY でない場合は必須です。Claude Code セッション内では効果がないため、独自のターミナルからコマンドを実行してください | |

1068| `--json` | 結果を stdout の最後の行に 1 つの JSON オブジェクトとして出力します。スクリプトで使用するための人間が読める形式の代わりに。[JSON 結果形式](#plugin-json-result)を参照してください。Claude Code v2.1.268 以降が必須です | |

1064| `-h, --help` | コマンドのヘルプを表示 | |1069| `-h, --help` | コマンドのヘルプを表示 | |

1065 1070 

1066スコープは、インストールされたプラグインが追加される設定ファイルを決定します。たとえば、`--scope project` は .claude/settings.json の `enabledPlugins` に書き込み、プロジェクトリポジトリをクローンした全員がプラグインを利用できるようにします。1071スコープは、インストールされたプラグインが追加される設定ファイルを決定します。たとえば、`--scope project` は .claude/settings.json の `enabledPlugins` に書き込み、プロジェクトリポジトリをクローンした全員がプラグインを利用できるようにします。

1067 1072 

1068**例:**1073<span id="plugin-json-result" />`--json` を使用すると、stdout の最後の行は 1 つの JSON オブジェクトです。マーケットプレイスが宣言するコマンドが前に出力される可能性があるため、その行のみを解析してください。3 つのフィールドは常に存在します:

1074 

1075* `command`: 実行されたサブコマンド(`install` など)

1076* `outcome`: `ok` または `failed`

1077* `message`: 結果の人間が読める説明

1078 

1079`pluginId`、`scope`、`failureCode` などの他のフィールドは、適用される場合にのみ表示されます。`plugin uninstall`、`plugin update`、`plugin enable`、および `plugin disable` の `--json` オプションは、そのサブコマンド独自のフィールドを持つ同じオブジェクトを出力します。`--scope` が無効な場合などの使用エラーは、結果行を出力せず、終了コード 1 で理由を stderr に出力します。

1080 

1081これらの例は一般的な呼び出しを示しています:

1069 1082 

1070```bash theme={null}1083```bash theme={null}

1071# ユーザースコープにインストール(デフォルト)1084# ユーザースコープにインストール(デフォルト)


1088claude plugin uninstall <plugin> [options]1101claude plugin uninstall <plugin> [options]

1089```1102```

1090 1103 

1091**引数:**1104コマンドは以下の引数を取ります:

1092 1105 

1093* `<plugin>`: プラグイン名、または `plugin-name@marketplace-name`1106* `<plugin>`: プラグイン名、または `plugin-name@marketplace-name`

1094 1107 

1095**オプション:**1108コマンドは以下のオプションを受け入れます:

1096 1109 

1097| オプション | 説明 | デフォルト |1110| オプション | 説明 | デフォルト |

1098| :-------------------- | :----------------------------------------------------------------- | :----- |1111| :-------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------- | :----- |

1099| `-s, --scope <scope>` | スコープからアンインストール: `user`、`project`、または `local` | `user` |1112| `-s, --scope <scope>` | スコープからアンインストール: `user`、`project`、または `local` | `user` |

1100| `--keep-data` | プラグインの[永続データディレクトリ](#persistent-data-directory)を保持します | |1113| `--keep-data` | プラグインの[永続データディレクトリ](#persistent-data-directory)を保持します | |

1101| `--prune` | 他のプラグインが必要としない自動インストール依存関係も削除します。[plugin prune](#plugin-prune) を参照 | |1114| `--prune` | 他のプラグインが必要としない自動インストール依存関係も削除します。[plugin prune](#plugin-prune) を参照 | |

1102| `-y, --yes` | `--prune` 確認プロンプトをスキップします。stdin または stdout が TTY でない場合は必須 | |1115| `-y, --yes` | `--prune` 確認プロンプトをスキップします。stdin または stdout が TTY でない場合は必須 | |

1116| `--json` | 結果を stdout の最後の行に 1 つの JSON オブジェクトとして出力します。[`plugin install --json`](#plugin-json-result)と同じ形式で。`--prune` と組み合わせることはできません。Claude Code v2.1.268 以降が必須です | |

1103| `-h, --help` | コマンドのヘルプを表示 | |1117| `-h, --help` | コマンドのヘルプを表示 | |

1104 1118 

1105**エイリアス:** `remove`、`rm`1119`claude plugin remove` と `claude plugin rm` はこのコマンドのエイリアスです。

1106 1120 

1107デフォルトでは、最後に残ったスコープからアンインストールすると、プラグインの `${CLAUDE_PLUGIN_DATA}` ディレクトリも削除されます。新しいバージョンをテストした後に再インストールする場合など、保持するには `--keep-data` を使用します。1121デフォルトでは、最後に残ったスコープからアンインストールすると、プラグインの `${CLAUDE_PLUGIN_DATA}` ディレクトリも削除されます。新しいバージョンをテストした後に再インストールする場合など、保持するには `--keep-data` を使用します。

1108 1122 


1120claude plugin prune [options]1134claude plugin prune [options]

1121```1135```

1122 1136 

1123**オプション:**1137コマンドは以下のオプションを受け入れます:

1124 1138 

1125| オプション | 説明 | デフォルト |1139| オプション | 説明 | デフォルト |

1126| :-------------------- | :---------------------------------------------- | :----- |1140| :-------------------- | :---------------------------------------------- | :----- |


1129| `-y, --yes` | 確認プロンプトをスキップします。stdin または stdout が TTY でない場合は必須 | |1143| `-y, --yes` | 確認プロンプトをスキップします。stdin または stdout が TTY でない場合は必須 | |

1130| `-h, --help` | コマンドのヘルプを表示 | |1144| `-h, --help` | コマンドのヘルプを表示 | |

1131 1145 

1132**エイリアス:** `autoremove`1146`claude plugin autoremove` はこのコマンドのエイリアスです。

1133 1147 

1134コマンドは孤立した依存関係をリストし、削除前に確認を求めます。プラグインを削除し、その依存関係をワンステップでクリーンアップするには、`claude plugin uninstall <plugin> --prune` を実行します。1148コマンドは孤立した依存関係をリストし、削除前に確認を求めます。プラグインを削除し、その依存関係をワンステップでクリーンアップするには、`claude plugin uninstall <plugin> --prune` を実行します。

1135 1149 


1143claude plugin enable <plugin> [options]1157claude plugin enable <plugin> [options]

1144```1158```

1145 1159 

1146**引数:**1160コマンドは以下の引数を取ります:

1147 1161 

1148* `<plugin>`: プラグイン名、または `plugin-name@marketplace-name`1162* `<plugin>`: プラグイン名、または `plugin-name@marketplace-name`

1149 1163 

1150**オプション:**1164コマンドは以下のオプションを受け入れます:

1151 1165 

1152| オプション | 説明 | デフォルト |1166| オプション | 説明 | デフォルト |

1153| :-------------------- | :-------------------------------------------------------------------------------------- | :---- |1167| :-------------------- | :--------------------------------------------------------------------------------------------------------------------------- | :---- |

1154| `-s, --scope <scope>` | 有効にするスコープ: `user`、`project`、または `local`。省略した場合、Claude Code はプラグインがインストールされているスコープを検出します | 自動検出 |1168| `-s, --scope <scope>` | 有効にするスコープ: `user`、`project`、または `local`。省略した場合、Claude Code はプラグインがインストールされているスコープを検出します | 自動検出 |

1169| `--json` | 結果を stdout の最後の行に 1 つの JSON オブジェクトとして出力します。[`plugin install --json`](#plugin-json-result)と同じ形式で。Claude Code v2.1.268 以降が必須です | |

1155| `-h, --help` | コマンドのヘルプを表示 | |1170| `-h, --help` | コマンドのヘルプを表示 | |

1156 1171 

1157<h3 id="plugin-disable">1172<h3 id="plugin-disable">


1164claude plugin disable [plugin] [options]1179claude plugin disable [plugin] [options]

1165```1180```

1166 1181 

1167**引数:**1182コマンドは以下の引数を取ります:

1168 1183 

1169* `[plugin]`: プラグイン名、または `plugin-name@marketplace-name`。`--all` を使用する場合はオプション1184* `[plugin]`: プラグイン名、または `plugin-name@marketplace-name`。`--all` を使用する場合はオプション

1170 1185 

1171**オプション:**1186コマンドは以下のオプションを受け入れます:

1172 1187 

1173| オプション | 説明 | デフォルト |1188| オプション | 説明 | デフォルト |

1174| :-------------------- | :-------------------------------------------------------------------------------------- | :---- |1189| :-------------------- | :--------------------------------------------------------------------------------------------------------------------------- | :---- |

1175| `-a, --all` | すべての有効なプラグインを無効にします。`--scope` と組み合わせることはできません | |1190| `-a, --all` | すべての有効なプラグインを無効にします。`--scope` と組み合わせることはできません | |

1176| `-s, --scope <scope>` | 無効にするスコープ: `user`、`project`、または `local`。省略した場合、Claude Code はプラグインがインストールされているスコープを検出します | 自動検出 |1191| `-s, --scope <scope>` | 無効にするスコープ: `user`、`project`、または `local`。省略した場合、Claude Code はプラグインがインストールされているスコープを検出します | 自動検出 |

1192| `--json` | 結果を stdout の最後の行に 1 つの JSON オブジェクトとして出力します。[`plugin install --json`](#plugin-json-result)と同じ形式で。Claude Code v2.1.268 以降が必須です | |

1177| `-h, --help` | コマンドのヘルプを表示 | |1193| `-h, --help` | コマンドのヘルプを表示 | |

1178 1194 

1179<h3 id="plugin-update">1195<h3 id="plugin-update">


1186claude plugin update <plugin> [options]1202claude plugin update <plugin> [options]

1187```1203```

1188 1204 

1189**引数:**1205コマンドは以下の引数を取ります:

1190 1206 

1191* `<plugin>`: プラグイン名、または `plugin-name@marketplace-name`1207* `<plugin>`: プラグイン名、または `plugin-name@marketplace-name`

1192 1208 

1193**オプション:**1209コマンドは以下のオプションを受け入れます:

1194 1210 

1195| オプション | 説明 | デフォルト |1211| オプション | 説明 | デフォルト |

1196| :-------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----- |1212| :-------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----- |

1197| `-s, --scope <scope>` | 更新するスコープ: `user`、`project`、`local`、または `managed` | `user` |1213| `-s, --scope <scope>` | 更新するスコープ: `user`、`project`、`local`、または `managed` | `user` |

1198| `-y, --yes` | 確認プロンプトなしで、プラグインのマーケットプレイスが宣言するコマンドを受け入れます: [`command` ソース](/docs/ja/plugin-marketplaces#command-sources)を持つプラグインを生成するコマンド、またはアーカイブダウンロードを認証する[`headersHelper`](/docs/ja/plugin-marketplaces#authenticate-archive-downloads)。`headersHelper` を受け入れるには Claude Code v2.1.238 以降が必要です。Claude Code はまずコマンドを出力します。stdin または stdout が TTY でない場合は必須です。Claude Code セッション内では効果がないため、独自のターミナルからコマンドを実行してください | |1214| `-y, --yes` | 確認プロンプトなしで、プラグインのマーケットプレイスが宣言するコマンドを受け入れます: [`command` ソース](/docs/ja/plugin-marketplaces#command-sources)を持つプラグインを生成するコマンド、またはアーカイブダウンロードを認証する[`headersHelper`](/docs/ja/plugin-marketplaces#authenticate-archive-downloads)。`headersHelper` を受け入れるには Claude Code v2.1.238 以降が必要です。Claude Code はまずコマンドを出力します。stdin または stdout が TTY でない場合は必須です。Claude Code セッション内では効果がないため、独自のターミナルからコマンドを実行してください | |

1215| `--json` | 結果を stdout の最後の行に 1 つの JSON オブジェクトとして出力します。[`plugin install --json`](#plugin-json-result)と同じ形式で。Claude Code v2.1.268 以降が必須です | |

1199| `-h, --help` | コマンドのヘルプを表示 | |1216| `-h, --help` | コマンドのヘルプを表示 | |

1200 1217 

1201<Note>1218<Note>


1214claude plugin list [options]1231claude plugin list [options]

1215```1232```

1216 1233 

1217**オプション:**1234コマンドは以下のオプションを受け入れます:

1218 1235 

1219| オプション | 説明 | デフォルト |1236| オプション | 説明 | デフォルト |

1220| :------------ | :-------------------------------------- | :---- |1237| :------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---- |

1221| `--json` | JSON として出力 | |1238| `--json` | JSON として出力します。読み込み問題またはオーサリング警告を含むプラグイン行は `errors` または `notes` 文字列配列を含みます。Claude Code v2.1.268 以降では、並列 `errorDetails` および `noteDetails` 配列は各エントリの診断 `type` と、プラグイン、マーケットプレイス、サーバー、またはファイルなど、それが参照する名前を提供します | |

1222| `--available` | マーケットプレイスから利用可能なプラグインを含めます。`--json` が必須 | |1239| `--available` | マーケットプレイスから利用可能なプラグインを含めます。`--json` が必須 | |

1223| `-h, --help` | コマンドのヘルプを表示 | |1240| `-h, --help` | コマンドのヘルプを表示 | |

1224 1241 


1240claude plugin details <name>1257claude plugin details <name>

1241```1258```

1242 1259 

1243**引数:**1260コマンドは以下の引数を取ります:

1244 1261 

1245* `<name>`: プラグイン名、または `plugin-name@marketplace-name`1262* `<name>`: プラグイン名、または `plugin-name@marketplace-name`

1246 1263 

1247**オプション:**1264コマンドは以下のオプションを受け入れます:

1248 1265 

1249| オプション | 説明 | デフォルト |1266| オプション | 説明 | デフォルト |

1250| :----------- | :---------- | :---- |1267| :----------- | :---------- | :---- |


1295claude plugin validate <path> [options]1312claude plugin validate <path> [options]

1296```1313```

1297 1314 

1298**引数:**1315コマンドは以下の引数を取ります:

1299 1316 

1300* `<path>`: プラグインディレクトリまたはマーケットプレイスディレクトリへのパス。プラグイン実行がカバーするファイルについては、[マニフェストなしでプラグインまたはディレクトリを検証](/docs/ja/plugin-marketplaces#validate-a-plugin-or-a-directory-without-a-manifest)を参照してください。1317* `<path>`: プラグインディレクトリまたはマーケットプレイスディレクトリへのパス。プラグイン実行がカバーするファイルについては、[マニフェストなしでプラグインまたはディレクトリを検証](/docs/ja/plugin-marketplaces#validate-a-plugin-or-a-directory-without-a-manifest)を参照してください。

1301 1318 

1302**オプション:**1319コマンドは以下のオプションを受け入れます:

1303 1320 

1304| オプション | 説明 | デフォルト |1321| オプション | 説明 | デフォルト |

1305| :----------- | :------------------------------------------------------------------------------------------------- | :---- |1322| :----------- | :------------------------------------------------------------------------------------------------- | :---- |


1319 1336 

1320対話的セッション内では、`/plugin validate <path>` は同じチェックをインラインで実行します。1337対話的セッション内では、`/plugin validate <path>` は同じチェックをインラインで実行します。

1321 1338 

1339<h3 id="plugin-eval">

1340 plugin eval

1341</h3>

1342 

1343プラグインの[eval ケース](/docs/ja/plugin-evals)を実行し、スコア付き結果をレポートします。Claude Code v2.1.269 以降が必須です。各ケースはプロンプトとグレーダーです。Claude Code はターゲットプラグインのみが読み込まれた分離されたセッションで複数回実行し、デフォルトではプラグインなしでも実行するため、レポートは差を示します。ケース形式、グレーダー、結果、および CI 使用については、[プラグインを eval でテストする](/docs/ja/plugin-evals)を参照してください。

1344 

1345```bash theme={null}

1346claude plugin eval [target] [options]

1347```

1348 

1349オプションの `target` は、プラグインディレクトリ、単一の `prompt.md` または `case.yaml` ファイル、`name` または `name@marketplace` としてインストールされたプラグイン、または `name@skills-dir` であり、デフォルトは現在のディレクトリです。`--tag`、`--allow-tools`、および `--json` の前に配置します。

1350 

1351このテーブルは、ほとんどの実行が使用するオプションをリストします。`claude plugin eval --help` を実行して、`--case`、`--tag`、`--output-dir`、`--report`、`--allow-real-servers`、`--keep-temp`、および `--verbose` を含む完全なセットを確認してください。

1352 

1353| オプション | 説明 | デフォルト |

1354| :------------------------- | :---------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------- |

1355| `--runs <n>` | アーム当たりケース当たりの実行 | 各ケースの `runs`、それ以外は 3 |

1356| `-j, --concurrency <n>` | 一度に実行するエージェントセッション、1 から 8。レート制限を共有します | `1` |

1357| `--model <model>` | テスト対象のエージェント用モデル | 各ケースの `model`、それ以外は `ANTHROPIC_MODEL` が設定されている場合はそれ、それ以外は Claude Code のデフォルト |

1358| `--judge-model <model>` | `llm` および `baseline` グレーダー用モデル | 小さく高速なモデル |

1359| `--ablation <mode>` | `none` または `with-without`。[プラグインなしベースラインと比較する](/docs/ja/plugin-evals#compare-against-a-no-plugin-baseline)を参照 | プラグインが解決される場合は `with-without`、それ以外は `none` |

1360| `--threshold <0..1>` | いずれかのケースがこれ以下でスコアされた場合は終了コード 1 | `1.0` |

1361| `--max-cost-usd <usd>` | 支出がこれに達したら次の実行前に停止し、終了コード 2 を返し、部分的な結果をレポート | 上限なし |

1362| `--allow-tools <tools...>` | `Bash`、`Write`、`Edit`、または `"mcp__plugin_<plugin>_<server>__*"` など、読み取り専用セット以外のツールを付与します。[ツールを付与する](/docs/ja/plugin-evals#grant-tools)を参照 | |

1363| `--scaffold` | 各ケースの[`scaffold_script`](/docs/ja/plugin-evals#add-setup-or-history-with-case-yaml)を実行 | オフ |

1364| `--trust-plugin` | 最初の実行信頼プロンプトをスキップします。CI 用。[実行がアクセスできるもの](/docs/ja/plugin-evals#security)を参照 | オフ |

1365| `--mocks <mode>` | `record` または `off`。[MCP サーバーをモック](/docs/ja/plugin-evals#mock-mcp-servers)を参照 | `record` |

1366| `--eval-dir <dir>` | ケースを保持するプラグイン下のディレクトリ | マニフェストの `experimental.evals`、それ以外は `evals` |

1367| `--json [path]` | [結果ドキュメント](/docs/ja/plugin-evals#json-result)を stdout に出力するか、`.json` パスに書き込み | |

1368| `--no-publish` | HTML レポートをローカルに保持 | |

1369| `-h, --help` | コマンドのヘルプを表示 | |

1370 

1371コマンドは、すべてのケースがしきい値を満たす場合は終了コード 0、失敗したケース、読み込みエラー、または信頼されていないプラグインディレクトリの場合は 1、部分的な実行の場合は 2、中断された場合は 130、終了された場合は 143 で終了します。[CI で eval を実行する](/docs/ja/plugin-evals#run-evals-in-ci)を参照してください。

1372 

1373<h3 id="plugin-eval-init">

1374 plugin eval init

1375</h3>

1376 

1377現在のディレクトリのプラグイン用の eval スイートを作成します。Claude Code v2.1.269 以降が必須です。ターミナルでは、これはプラグインを読み取り、ケースとグレーダーを提案し、それらをパイロットし、ファイルを書き込むオーサリングインタビューを開始します。`--bare` を使用するか、ターミナルなしで、代わりに空白の単一ケーステンプレートを書き込みます。対話的な Claude Code セッション内から実行すると、そのセッションが従うべきインタビュー指示を出力します。[最初の eval スイートを作成する](/docs/ja/plugin-evals#create-your-first-eval-suite)を参照してください。

1378 

1379```bash theme={null}

1380claude plugin eval init [name] [options]

1381```

1382 

1383オプションの `name` はケース名です: インタビューは 1 つを必要としませんが、`--bare` とターミナルなしテンプレートパスはそれを必要とします。これらのオプションを受け入れます:

1384 

1385| オプション | 説明 | デフォルト |

1386| :------------------ | :----------------------------------------------------------------------- | :----------------------------------------- |

1387| `--bare` | インタビューを実行する代わりに、`<name>` 用の空白の `prompt.md` と `graders/criteria.md` を書き込み | |

1388| `-i, --interactive` | インタビューを必須にします。テンプレートを書き込む代わりにターミナルなしで失敗 | |

1389| `--eval-dir <dir>` | ケースを書き込む現在のディレクトリ下のディレクトリ | マニフェストの `experimental.evals`、それ以外は `evals` |

1390| `-h, --help` | コマンドのヘルプを表示 | |

1391 

1322<h3 id="plugin-tag">1392<h3 id="plugin-tag">

1323 plugin tag1393 plugin tag

1324</h3>1394</h3>


1329claude plugin tag [path] [options]1399claude plugin tag [path] [options]

1330```1400```

1331 1401 

1332**引数:**1402コマンドは以下の引数を取ります:

1333 1403 

1334* `[path]`: プラグインディレクトリへのパス。デフォルトは現在のディレクトリです。1404* `[path]`: プラグインディレクトリへのパス。デフォルトは現在のディレクトリです。

1335 1405 

1336**オプション:**1406コマンドは以下のオプションを受け入れます:

1337 1407 

1338| オプション | 説明 | デフォルト |1408| オプション | 説明 | デフォルト |

1339| :-------------------- | :------------------------------------------- | :------- |1409| :-------------------- | :------------------------------------------- | :------- |

quickstart.md +13 −13

Details

27 ステップ 1:Claude Code をインストールする27 ステップ 1:Claude Code をインストールする

28</h2>28</h2>

29 29 

30To install Claude Code, use one of the following methods:30Claude Code をインストールするには、以下のいずれかの方法を使用してください。

31 31 

32<Tabs>32<Tabs>

33 <Tab title="Native Install (Recommended)">33 <Tab title="ネイティブインストール(推奨)">

34 **macOS, Linux, WSL:**34 **macOS、Linux、WSL:**

35 35 

36 ```bash theme={null}36 ```bash theme={null}

37 curl -fsSL https://claude.ai/install.sh | bash37 curl -fsSL https://claude.ai/install.sh | bash

38 ```38 ```

39 39 

40 **Windows PowerShell:**40 **Windows PowerShell:**

41 41 

42 ```powershell theme={null}42 ```powershell theme={null}

43 irm https://claude.ai/install.ps1 | iex43 irm https://claude.ai/install.ps1 | iex

44 ```44 ```

45 45 

46 **Windows CMD:**46 **Windows CMD:**

47 47 

48 ```batch theme={null}48 ```batch theme={null}

49 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd49 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

50 ```50 ```

51 51 

52 If you see `The token '&&' is not a valid statement separator`, you're in PowerShell, not CMD. If you see `'irm' is not recognized as an internal or external command`, you're in CMD, not PowerShell. Your prompt shows `PS C:\` when you're in PowerShell and `C:\` without the `PS` when you're in CMD.52 `The token '&&' is not a valid statement separator` というエラーが表示される場合は、CMD ではなく PowerShell を使用しています。`'irm' is not recognized as an internal or external command` というエラーが表示される場合は、PowerShell ではなく CMD を使用しています。PowerShell を使用している場合、プロンプトに `PS C:\` と表示され、CMD を使用している場合は `PS` なしで `C:\` と表示されます。

53 53 

54 If the install command fails with `syntax error near unexpected token '<'`, a `403`, or another curl error, see [Troubleshoot installation](/docs/en/troubleshoot-install#find-your-error) to match the error to a fix and for alternative install methods.54 インストールコマンドが `syntax error near unexpected token '<'`、`403`、またはその他の curl エラーで失敗する場合は、[インストールのトラブルシューティング](/docs/ja/troubleshoot-install#find-your-error)を参照して、エラーを修正方法に照合し、代替インストール方法を確認してください。

55 55 

56 [Git for Windows](https://git-scm.com/downloads/win) is recommended on native Windows so Claude Code can use the Bash tool. If Git for Windows is not installed, Claude Code uses PowerShell as the shell tool instead. WSL setups do not need Git for Windows.56 [Git for Windows](https://git-scm.com/downloads/win) は、Claude Code が Bash ツールを使用できるようにネイティブ Windows で推奨されます。Git for Windows がインストールされていない場合、Claude Code はシェルツールとして PowerShell を代わりに使用します。WSL セットアップは Git for Windows を必要としません。

57 57 

58 <Info>58 <Info>

59 Native installations automatically update in the background to keep you on the latest version.59 ネイティブインストールは、最新バージョンに保つために自動的にバックグラウンドで更新されます。

60 </Info>60 </Info>

61 </Tab>61 </Tab>

62 62 


65 brew install --cask claude-code65 brew install --cask claude-code

66 ```66 ```

67 67 

68 Homebrew offers two casks. `claude-code` tracks the stable release channel, which is typically about a week behind and skips releases with major regressions. `claude-code@latest` tracks the latest channel and receives new versions as soon as they ship.68 Homebrew は 2 つの cask を提供しています。`claude-code` は安定リリースチャネルを追跡しており、通常は約 1 週間遅れており、大きな回帰を伴うリリースをスキップします。`claude-code@latest` は最新チャネルを追跡し、新しいバージョンが出荷されるとすぐに受け取ります。

69 69 

70 <Info>70 <Info>

71 Homebrew installations do not auto-update. Run `brew upgrade claude-code` or `brew upgrade claude-code@latest`, depending on which cask you installed, to get the latest features and security fixes.71 Homebrew インストールは自動更新されません。インストールした cask に応じて、`brew upgrade claude-code` または `brew upgrade claude-code@latest` を実行して、最新の機能とセキュリティ修正を取得してください。

72 </Info>72 </Info>

73 </Tab>73 </Tab>

74 74 


78 ```78 ```

79 79 

80 <Info>80 <Info>

81 WinGet installations do not auto-update. Run `winget upgrade Anthropic.ClaudeCode` periodically to get the latest features and security fixes.81 WinGet インストールは自動更新されません。最新の機能とセキュリティ修正を取得するために、定期的に `winget upgrade Anthropic.ClaudeCode` を実行してください。

82 </Info>82 </Info>

83 </Tab>83 </Tab>

84</Tabs>84</Tabs>

85 85 

86You can also install with [apt, dnf, or apk](/docs/en/setup#install-with-linux-package-managers) on Debian, Fedora, RHEL, and Alpine.86また、Debian、Fedora、RHEL、Alpine で [apt、dnf、または apk](/docs/ja/setup#install-with-linux-package-managers) を使用してインストールすることもできます。

87 87 

88インストールが正常に機能したことを確認するには、以下を実行してください:88インストールが正常に機能したことを確認するには、以下を実行してください:

89 89 

remote-control.md +197 −60

Details

7> Remote Control を使用して、電話、タブレット、または任意のブラウザから Claude Code のローカルセッションを続行します。claude.ai/code と Claude モバイルアプリで動作します。7> Remote Control を使用して、電話、タブレット、または任意のブラウザから Claude Code のローカルセッションを続行します。claude.ai/code と Claude モバイルアプリで動作します。

8 8 

9<Note>9<Note>

10 Remote Control は研究プレビュー段階にあり、すべてのプランで利用可能です。Team および Enterprise では、管理者が [Claude Code 管理設定](https://claude.ai/admin-settings/claude-code) で Remote Control トグルを有効にするまで、デフォルトではオフになっています。10 Remote Control はすべてのプランで利用可能です。Team および Enterprise では、Owner が [Claude Code 管理設定](https://claude.ai/admin-settings/claude-code) で Remote Control トグルを有効にするまで、デフォルトではオフになっています。

11</Note>11</Note>

12 12 

13Remote Control は [claude.ai/code](https://claude.ai/code) または Claude アプリ([iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684) および [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude))をマシン上で実行されている Claude Code セッションに接続します。デスクでタスクを開始してから、ソファの電話またはコンピュータのブラウザで続行できます。13Remote Control は [claude.ai/code](https://claude.ai/code) または Claude アプリ([iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684) および [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude))をマシン上で実行されている Claude Code セッションに接続します。デスクでタスクを開始してから、ソファの電話またはコンピュータのブラウザで続行できます。

14 14 

15マシン上で Remote Control セッションを開始すると、Claude はローカルで実行され続けるため、コード実行とファイルシステムアクセスはマシン上に留まります。Remote Control を使用すると、以下のことができます。15マシン上で Remote Control セッションを開始すると、Claude はローカルで実行され続けるため、コード実行とファイルシステムアクセスはマシン上に留まります。Remote Control を使用すると、以下のことができます。

16 16 

17* **ローカル環境全体をリモートで使用する**: ファイルシステム、[MCP サーバー](/docs/ja/mcp)、ツール、プロジェクト設定がすべて利用可能なままです。また、`@` を入力するとローカルプロジェクトのファイルパスが自動補完されます17* **ローカル環境全体をリモートで使用する**: ファイルシステム、[MCP サーバー](/docs/ja/mcp)、ツール、プロジェクト設定がすべて利用可能なままです。また、`@` を入力するとローカルプロジェクトのファイルパスが自動補完されます。

18* **両方のサーフェスから同時に作業する**: 会話と [subagents](/docs/ja/sub-agents) および [dynamic workflows](/docs/ja/workflows) の進捗がすべての接続されたデバイス間で同期されるため、ターミナル、ブラウザ、電話から相互に交換可能にメッセージを送信できます。v2.1.207 より前では、[Desktop app](/docs/ja/desktop) でホストされたセッションは接続されたデバイスに subagent またはワークフローの進捗を送信しませんでした。18* **両方のサーフェスから同時に作業する**: 会話と [subagents](/docs/ja/sub-agents) および [dynamic workflows](/docs/ja/workflows) の進捗がすべての接続されたデバイス間で同期されるため、ターミナル、ブラウザ、電話から相互に交換可能にメッセージを送信できます。

19* **電話またはブラウザから画像とファイルを送信する**: Claude アプリまたは claude.ai/code に添付ファイルを追加すると、Claude Code はそれをマシンにダウンロードし、キャプション付きまたはキャプションなしで `@` ファイル参照として Claude に渡します。v2.1.202 より前では、キャプションなしで送信された添付ファイルがセッションに到達する前に Claude Code がドロップする可能性がありました。19* **電話またはブラウザから画像とファイルを送信する**: Claude アプリまたは claude.ai/code に写真またはファイルを添付できます。キャプション付きまたはキャプションなしで添付できます。Claude は添付された写真をメッセージの一部として直接見ることができます。Claude Code は他のファイルをマシンにダウンロードし、`@` ファイル参照として Claude に渡します。

20* **中断に対応する**: ラップトップがスリープ状態になったり、ネットワークが切断されたりした場合、マシンがオンラインに戻ると、セッションは自動的に再接続されます。Claude Code は再接続中に subagents およびワークフローからのステータス更新をキューに入れ、復旧後に配信します。v2.1.207 より前では、再接続または認証情報の更新中に送信された更新が失われる可能性があり、接続されたデバイスは完了したタスクが実行中として表示され続けていました。20* **中断に対応する**: ラップトップがスリープ状態になったり、ネットワークが切断されたりした場合、マシンがオンラインに戻ると、Claude Code は自動的に再接続されます。接続が再構築されている間、Claude Code はメッセージ、権限プロンプト、および subagents とワークフローからのステータス更新をキューに入れ、接続が復旧した後に配信します。

21 21 

22クラウドインフラストラクチャで実行される [Web 上の Claude Code](/docs/ja/claude-code-on-the-web) とは異なり、Remote Control セッションはマシン上で直接実行され、ローカルファイルシステムと相互作用します。Web およびモバイルインターフェースは、そのローカルセッションへのウィンドウにすぎません。22クラウドインフラストラクチャで実行される [Web 上の Claude Code](/docs/ja/claude-code-on-the-web) とは異なり、Remote Control セッションはマシン上で直接実行され、ローカルファイルシステムと相互作用します。Web およびモバイルインターフェースは、そのローカルセッションへのウィンドウにすぎません。

23 23 


30Remote Control を使用する前に、環境が以下の条件を満たしていることを確認してください。30Remote Control を使用する前に、環境が以下の条件を満たしていることを確認してください。

31 31 

32* **サブスクリプション**: Pro、Max、Team、および Enterprise プランで利用可能です。API キーはサポートされていません。Team および Enterprise では、Owner が [Claude Code 管理設定](https://claude.ai/admin-settings/claude-code) で Remote Control トグルを最初に有効にする必要があります。32* **サブスクリプション**: Pro、Max、Team、および Enterprise プランで利用可能です。API キーはサポートされていません。Team および Enterprise では、Owner が [Claude Code 管理設定](https://claude.ai/admin-settings/claude-code) で Remote Control トグルを最初に有効にする必要があります。

33* **認証**: `claude` を実行し、まだサインインしていない場合は `/login` を使用して claude.ai 経由でサインインします。33* **認証**: `claude` を実行し、まだサインインしていない場合は `/login` を使用して claude.ai 経由でサインインします。適格なログインがない場合、`claude remote-control` はエラーで終了しますが、`claude --remote-control` は対話型セッションを開始し、起動直後に Remote Control 失敗通知を表示します。

34* **API エンドポイント**: Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry では利用できません。v2.1.196 以降、[`ANTHROPIC_BASE_URL`](/docs/ja/env-vars) が `api.anthropic.com` 以外のホスト([LLM gateway](/docs/ja/llm-gateway) やプロキシなど)を指している場合、Remote Control も無効になります。Remote Control を使用するには、この変数を設定解除してください。34* **API エンドポイント**: 以下のいずれかの構成では利用できません。

35* **ワークスペース信頼**: プロジェクトディレクトリで少なくとも 1 回 `claude` を実行して、ワークスペース信頼ダイアログを受け入れます。35 * Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry を使用している。

36 * [`ANTHROPIC_BASE_URL`](/docs/ja/env-vars) が `api.anthropic.com` 以外のホスト([LLM gateway](/docs/ja/llm-gateway) やプロキシなど)を指している。Remote Control を使用するには、この変数を設定解除してください。v2.1.196 より前では、Claude Code はカスタム `ANTHROPIC_BASE_URL` で Remote Control を許可していました。

37 * エンタープライズ [Claude apps gateway](/docs/ja/claude-apps-gateway) 経由でサインインしている。

38* **機能フラグ評価**: [`DISABLE_TELEMETRY`、`DO_NOT_TRACK`、`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`、および `DISABLE_GROWTHBOOK`](/docs/ja/env-vars) はそれぞれ、Remote Control の可用性が依存する機能フラグ評価を無効にします。Remote Control を使用するには、シェル環境または [`settings.json` ファイル](/docs/ja/settings-reference#all-settings) の `env` ブロックのいずれかで変数が設定されている場所で変数を設定解除してください。

39* **ワークスペース信頼**: プロジェクトディレクトリで少なくとも 1 回 `claude` を実行して、ワークスペース信頼ダイアログを受け入れます。スタートアップ信頼ダイアログはホームディレクトリの信頼を保存しないため、プロジェクトディレクトリから Remote Control を起動してください。

36 40 

37<h2 id="start-a-remote-control-session">41<h2 id="start-a-remote-control-session">

38 Remote Control セッションを開始する42 Remote Control セッションを開始する


48 claude remote-control52 claude remote-control

49 ```53 ```

50 54 

55 Remote Control の一度限りの確認を受け入れるまで、`claude remote-control` は何をするかを説明し、サーバーを開始する前に `Enable Remote Control? (y/n)` と尋ねます。`y` と答えて受け入れ、サーバーを開始します。拒否した場合、Claude Code はサーバーを開始せずに終了し、次回コマンドを実行するときに再度尋ねます。

56 

51 プロセスはサーバーモードでターミナルで実行され続け、リモート接続を待機します。[別のデバイスから接続](#connect-from-another-device)するために使用できるセッション URL が表示され、スペースバーを押して電話からの高速アクセス用の QR コードを表示できます。リモートセッションがアクティブな間、ターミナルは接続ステータスとツールアクティビティを表示します。57 プロセスはサーバーモードでターミナルで実行され続け、リモート接続を待機します。[別のデバイスから接続](#connect-from-another-device)するために使用できるセッション URL が表示され、スペースバーを押して電話からの高速アクセス用の QR コードを表示できます。リモートセッションがアクティブな間、ターミナルは接続ステータスとツールアクティビティを表示します。

52 58 

53 利用可能なフラグ:59 利用可能なフラグ:


56 | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |62 | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

57 | `--name "My Project"` | claude.ai/code のセッションリストに表示されるカスタムセッションタイトルを設定します。 |63 | `--name "My Project"` | claude.ai/code のセッションリストに表示されるカスタムセッションタイトルを設定します。 |

58 | `--remote-control-session-name-prefix <prefix>` | 明示的な名前が設定されていない場合の自動生成セッション名のプレフィックス。デフォルトはマシンのホスト名で、`myhost-graceful-unicorn` のような名前が生成されます。同じ効果のために `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` を設定します。 |64 | `--remote-control-session-name-prefix <prefix>` | 明示的な名前が設定されていない場合の自動生成セッション名のプレフィックス。デフォルトはマシンのホスト名で、`myhost-graceful-unicorn` のような名前が生成されます。同じ効果のために `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` を設定します。 |

59 | `-c`, `--continue` | このディレクトリから開始された最新の Remote Control セッションを再開します。新しいセッションを作成する代わりに使用します。`--session-id`、`--spawn`、`--capacity`、または `--create-session-in-dir` と組み合わせることはできません。Claude Code v2.1.200 以降が必要です。それより前のバージョンはこのフラグを未知の引数として拒否します。 |65 | `-c`, `--continue` | このディレクトリから開始された最後のサーバーが開始したセッションを復帰させます。新しいセッションを作成する代わりに使用します。[サーバーを停止した後のセッションの再開](#resume-sessions-after-stopping-the-server)を参照してください。`--session-id`、`--spawn`、`--capacity`、または `--create-session-in-dir` と組み合わせることはできません。Claude Code v2.1.200 以降が必要です。それより前のバージョンはこのフラグを未知の引数として拒否します。 |

60 | `--session-id <id>` | 特定の Remote Control セッションをその ID で再開します。`--continue`、`--spawn`、`--capacity`、または `--create-session-in-dir` と組み合わせることはできません。Claude Code v2.1.200 以降が必要です。それより前のバージョンはこのフラグを未知の引数として拒否します。 |66 | `--session-id <id>` | 特定のセッションをその ID で復帰させます。[サーバーを停止した後のセッションの再開](#resume-sessions-after-stopping-the-server)を参照してください。`--continue`、`--spawn`、`--capacity`、または `--create-session-in-dir` と組み合わせることはできません。Claude Code v2.1.200 以降が必要です。それより前のバージョンはこのフラグを未知の引数として拒否します。 |

61 | `--spawn <mode>` | サーバーがセッションを作成する方法。<br />• `same-dir`(デフォルト): すべてのセッションが現在の作業ディレクトリを共有するため、同じファイルを編集している場合は競合する可能性があります。<br />• `worktree`: オンデマンドセッションごとに独自の [git worktree](/docs/ja/worktrees) を取得します。git リポジトリが必要です。<br />• `session`: シングルセッションモード。正確に 1 つのセッションを提供し、追加の接続を拒否します。スタートアップ時にのみ設定します。<br />実行時に `w` を押して `same-dir` と `worktree` の間でトグルします。 |67 | `--spawn <mode>` | サーバーがセッションを作成する方法。<br />• `same-dir`(デフォルト): すべてのセッションが現在の作業ディレクトリを共有するため、同じファイルを編集している場合は競合する可能性があります。<br />• `worktree`: オンデマンドセッションごとに独自の [git worktree](/docs/ja/worktrees) を取得します。git リポジトリが必要です。<br />• `session`: シングルセッションモード。正確に 1 つのセッションを提供し、追加の接続を拒否します。スタートアップ時にのみ設定します。<br />実行時に `w` を押して `same-dir` と `worktree` の間でトグルします。 |

62 | `--capacity <N>` | 同時セッションの最大数。デフォルトは 32 です。`--spawn=session` では使用できません。 |68 | `--capacity <N>` | 同時セッションの最大数。デフォルトは 32 です。`--spawn=session` では使用できません。 |

63 | `--[no-]create-session-in-dir` | サーバーの起動時に現在のディレクトリに 1 つのセッションを事前作成し、すぐに入力できる場所を用意します。`worktree` モードでは、このセッションは現在のディレクトリに留まり、オンデマンドセッションは分離された worktree を取得します。デフォルトではオンです。`--no-create-session-in-dir` を渡して、何も作成しない状態で開始します。 |69 | `--[no-]create-session-in-dir` | サーバーの起動時に現在のディレクトリに 1 つのセッションを事前作成し、すぐに入力できる場所を用意します。`worktree` モードでは、このセッションは現在のディレクトリに留まり、オンデマンドセッションは分離された worktree を取得します。デフォルトではオンです。`--no-create-session-in-dir` を渡して、何も作成しない状態で開始する場合、Claude Code はサーバーのセッションをアーカイブするため、[復帰](#resume-sessions-after-stopping-the-server)するものがありません。 |

70 | `--permission-mode <mode>` | サーバーのセッションの開始時の[権限モード](/docs/ja/permission-modes)を設定します。例えば `acceptEdits` など。`manual` を `default` のエイリアスとして受け入れます。認識されないモードはサーバーをスタートアップで停止し、有効なモードをリストします。 |

71 | `--debug-file <path>` | デバッグログを指定されたファイルに書き込みます。 |

64 | `--verbose` | 詳細な接続とセッションログを表示します。 |72 | `--verbose` | 詳細な接続とセッションログを表示します。 |

65 | `--sandbox` / `--no-sandbox` | ファイルシステムとネットワーク分離のための [サンドボックス](/docs/ja/sandboxing)を有効または無効にします。デフォルトではオフです。 |73 | `--sandbox` / `--no-sandbox` | ファイルシステムとネットワーク分離のための[サンドボックス](/docs/ja/sandboxing)を有効または無効にします。デフォルトではオフです。 |

74 

75 これらのフラグは `remote-control` の後に指定します。

76 

77 `remote-control` の前にグローバル `claude` フラグを渡すか、ラッパースクリプトが 1 つを追加する場合、Claude Code はそのフラグをサーバーが作成するセッションに引き継ぎません。Claude Code は `--verbose` や `--model` など、それらのセッションが実行できることを変更しないことが既知のフラグのみを許可します。他のフラグ(例えば `--settings`)の場合、Claude Code は[開始を拒否](/docs/ja/errors#not-carried-over-to-the-sessions-remote-control-starts)し、削除するフラグを名前で指定します。v2.1.248 より前では、`remote-control` の前のオプションは Claude Code が後のフラグを `unknown option` エラーで拒否させていました。

78 

79 Claude Code はヘルプを出力する前に Remote Control の適格性をチェックするため、適格なアカウントでサインインしていない場合、`claude remote-control --help` はこのフラグリストの代わりにエラーを返します。

66 </Tab>80 </Tab>

67 81 

68 <Tab title="対話型セッション">82 <Tab title="対話型セッション">


96 110 

97 これにより、現在の会話履歴を引き継ぎ、Remote Control セッションが開始されます。111 これにより、現在の会話履歴を引き継ぎ、Remote Control セッションが開始されます。

98 112 

113 Remote Control の一度限りの確認を受け入れるまで、`/remote-control` が接続する前にダイアログが表示されます。**Enable Remote Control** を選択して受け入れて接続します。**Never mind** を選択するか Esc を押した場合、Claude Code は接続せず、次回 `/remote-control` を実行するときに再度尋ねます。

114 

99 `--verbose`、`--sandbox`、および `--no-sandbox` フラグはこのコマンドでは利用できません。115 `--verbose`、`--sandbox`、および `--no-sandbox` フラグはこのコマンドでは利用できません。

100 </Tab>116 </Tab>

101 117 

102 <Tab title="VS Code">118 <Tab title="VS Code">

103 [Claude Code VS Code 拡張機能](/docs/ja/vs-code)で、プロンプトボックスに `/remote-control` または `/rc` を入力するか、`/` でコマンドメニューを開いて選択します。119 [Claude Code VS Code 拡張機能](/docs/ja/vs-code)で、プロンプトボックスに `/remote-control` または `/rc` を入力します。

104 120 

105 ```text theme={null}121 ```text theme={null}

106 /remote-control122 /remote-control

107 ```123 ```

108 124 

109 プロンプトボックスの上にバナーが表示され、接続ステータスが示されます。接続されたら、バナーの **Open in browser** をクリックしてセッションに直接移動するか、[claude.ai/code](https://claude.ai/code)のセッションリストで見つけます。セッション URL は会話にも投稿されます。125 Remote Control がオンの間、Claude Code はプロンプトボックスのフッターに **Remote Control** インジケーターを表示します。セッションが接続されたら、インジケーターをクリックしてセッションに直接移動するか、[claude.ai/code](https://claude.ai/code)のセッションリストで見つけます。Claude Code はセッション URL を会話にも投稿します。切断するには、`/remote-control` を再度実行します。

110 

111 切断するには、バナーの閉じるアイコンをクリックするか、`/remote-control` を再度実行します。

112 126 

113 CLI とは異なり、VS Code コマンドは名前引数を受け入れず、QR コードを表示しません。セッションタイトルは会話履歴または最初のプロンプトから派生します。127 CLI とは異なり、VS Code コマンドは名前引数を受け入れず、QR コードを表示しません。セッションタイトルは会話履歴または最初のプロンプトから派生します。

114 </Tab>128 </Tab>


118 接続ステータスを確認する132 接続ステータスを確認する

119</h3>133</h3>

120 134 

121対話型ターミナルセッションでは、接続がアップしている間、入力ボックスの下のフッターに `/rc active` インジケーターが表示され、ターミナルが狭すぎる場合は非表示になります。インジケーターテキストは claude.ai のセッションへのリンクです。下矢印キーで選択して Enter キーを押すか、`/remote-control` を再度実行して、セッション URL と [別のデバイスから接続](#connect-from-another-device)するために使用できる QR コードを含むステータスパネルを開きます。135対話型ターミナルセッションでは、接続がアップしている間、`/rc active` インジケーターが表示され、ターミナルが狭すぎる場合は非表示になります。[フルスクリーンレンダリング](/docs/ja/fullscreen)では、スタートアップヘッダーの作業ディレクトリ行の末尾に配置され、それなしでは、入力ボックスの下のフッターに配置されます。

136 

137インジケーターテキストは claude.ai のセッションへのリンクです。`/remote-control` を再度実行して、セッション URL と [別のデバイスから接続](#connect-from-another-device)するために使用できる QR コードを含むステータスパネルを開きます。インジケーターがフッターにある場合、下矢印キーでインジケーターを選択して Enter キーを押すことでパネルを開くこともできます。パネルは切断オプションも提供し、これにより Remote Control をオフにしながらローカルセッションはターミナルで実行され続けます。

138 

139接続に失敗した場合、Claude Code は失敗の理由を含む通知を表示し、理由を含む警告行を会話に追加し、インジケーターを失敗状態に切り替えます。これは所定の位置に留まります。再接続するには、`/remote-control` を実行します。ただし、[理由がセッションが別の場所で引き継がれたか終了したか、またはサーバーがそれを見つけられないと言っている](#session-ended-elsewhere)場合を除きます。

140 

141<span id="session-ended-elsewhere" />再接続する前に理由を読んでください。セッションが別のデバイス、アプリ、または Claude Code セッションから引き継がれたか、別の場所で終了したか、またはサーバーがそれを見つけられない場合、理由はどちらかを言い、Claude Code は通常の `/remote-control` を実行するアドバイスを省略します。

142 

143* **別のデバイスまたは Claude Code セッションがセッションを引き継いだ**: そのデバイスからセッションを取り戻したい場合のみ `/remote-control` を実行します。

144* **別のデバイスまたはアプリからセッションを終了またはアーカイブした**: それを戻したい場合のみ `/remote-control` を実行します。Claude Code はアーカイブされたセッションを再度開きます。

145* **サーバーがセッションを見つけられない**: 別のデバイスまたはアプリから削除されている可能性があります。

146 

147<h3 id="session-url-reminders">

148 セッション URL リマインダー

149</h3>

150 

151Remote Control が接続されている間、Claude Code は電話またはブラウザに切り替えるのが最も役立つときにセッション URL を思い出させるため、リンクを `/remote-control` で見つける必要がありません。リマインダーは次のいずれかの瞬間にプロンプトボックスの上に表示されます。

122 152 

123接続に失敗した場合、通知が失敗の理由とともに表示され、インジケーターはフッターから消えます。`/remote-control` を再度実行して再試行します。153* **長いターン**: ターン がサーバーチューニングされたしきい値より長く実行される場合、Claude Code は **Still working** 通知と **Check in from your phone** リンクを表示し、ターミナルで待つ代わりに電話またはブラウザからターンをフォローできます。Claude Code はターンが終了するとそれを削除します。

154* **繰り返される権限プロンプト**: セッションで複数の[権限プロンプト](/docs/ja/permissions)に答えた後、**Approve tool calls from your phone** 通知がセッション URL を表示します。Claude Code は次のターンが開始されるとそれを削除します。

155 

156リマインダーは、Remote Control が[自動的に接続](#enable-remote-control-for-all-sessions)する場合を含む、接続されたセッションに表示される可能性があります。これらの条件が発生するたびに表示されるわけではなく、各条件はセッション全体で数回だけ表示されます。それらを設定または無効にすることはできません。各条件は独自にクリアされます。

124 157 

125<h3 id="connect-from-another-device">158<h3 id="connect-from-another-device">

126 別のデバイスから接続する159 別のデバイスから接続する


132* **QR コードをスキャンする**: セッション URL の横に表示される QR コードをスキャンして、Claude アプリで直接開きます。`claude remote-control` を使用する場合は、スペースバーを押して QR コード表示をトグルします。165* **QR コードをスキャンする**: セッション URL の横に表示される QR コードをスキャンして、Claude アプリで直接開きます。`claude remote-control` を使用する場合は、スペースバーを押して QR コード表示をトグルします。

133* **[claude.ai/code](https://claude.ai/code)または Claude アプリを開く**: セッションリストで名前でセッションを見つけます。Claude モバイルアプリでは、ナビゲーションの **Code** をタップしてセッションリストに到達します。Remote Control セッションはオンラインの場合、コンピュータアイコンと緑色のステータスドットを表示します。166* **[claude.ai/code](https://claude.ai/code)または Claude アプリを開く**: セッションリストで名前でセッションを見つけます。Claude モバイルアプリでは、ナビゲーションの **Code** をタップしてセッションリストに到達します。Remote Control セッションはオンラインの場合、コンピュータアイコンと緑色のステータスドットを表示します。

134 167 

135接続すると、デバイスはセッションが既にバックグラウンドで実行しているサブエージェントとワークフローを表示します。v2.1.208 より前では、対話型ターミナルでホストされているセッションに接続するデバイスは、既に実行されていたサブエージェントとワークフローを、それらの 1 つが開始または停止されるまで表示しませんでした。168接続すると、デバイスはセッションが既にバックグラウンドで実行しているサブエージェントとワークフローを表示します。デバイスからそれらの 1 つを停止すると、Claude Code はマシンでそのタスクを停止します。

136 169 

137リモートセッションのタイトルは、この順序で選択されます。170リモートセッションのタイトルは、この順序で選択されます。

138 171 


1413. 既存の会話履歴の最後の意味のあるメッセージ1743. 既存の会話履歴の最後の意味のあるメッセージ

1424. `myhost-graceful-unicorn` のような自動生成名。ここで `myhost` はマシンのホスト名または `--remote-control-session-name-prefix` で設定したプレフィックスです1754. `myhost-graceful-unicorn` のような自動生成名。ここで `myhost` はマシンのホスト名または `--remote-control-session-name-prefix` で設定したプレフィックスです

143 176 

144明示的な名前を設定しなかった場合、プロンプトを送信するとタイトルが更新されて反映されます。Claude Code v2.1.176 以降、自動生成されたタイトルは会話の言語、または設定されている場合は [`language`](/docs/ja/settings#available-settings) 設定に一致します。claude.ai または Claude アプリからセッションの名前を変更すると、`claude --resume` に表示されるローカルタイトルも更新されます。177明示的な名前を設定しなかった場合、Claude Code はプロンプトを送信するとタイトルを更新して反映します。Claude Code は自動生成されたタイトルを会話の言語、または設定されている場合は [`language`](/docs/ja/settings-reference#language) 設定に一致させます。言語マッチングには Claude Code v2.1.176 以降が必要です。

145 178 

146環境に既にアクティブなセッションがある場合は、それを続行するか新しいセッションを開始するかを尋ねられます。179claude.ai または Claude アプリからセッションの名前を変更すると、Claude Code は `claude --resume` に表示されるローカルタイトルも更新します。Claude Code は同じ名前変更をプロンプトバーに表示されるセッション名に適用し、セッションが[バックグラウンドで実行](/docs/ja/agent-view)される場合は `claude agents` リストに適用します。v2.1.221 より前では、claude.ai またはClaudeアプリのセッションリストから名前を変更するとタイトルのみが更新され、CLI は前のセッション名を保持していました。CLI 自体で実行される `/rename` は任意のバージョンで名前を設定します。

147 180 

148Claude アプリをまだ持っていない場合は、Claude Code 内で `/mobile` コマンドを使用して、[iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684)または [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude)のダウンロード QR コードを表示します。181Claude アプリをまだ持っていない場合は、Claude Code 内で `/mobile` コマンドを使用して、[iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684)または [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude)のダウンロード QR コードを表示します。

149 182 

183<h3 id="what-connected-devices-see">

184 接続されたデバイスが見るもの

185</h3>

186 

187接続されたデバイスは、ターミナルの会話をリアルタイムで表示します。これらのケースは通常のメッセージを超えています。

188 

189* **圧縮と `/clear`**: Claude Code が[会話を圧縮](/docs/ja/context-window#what-survives-compaction)している間、接続されたデバイスは進捗を表示し、その後会話が圧縮された場所を表示します。`/clear` を実行すると、会話は接続されたデバイスでもリセットされます。

190* **`/resume` で会話を切り替える**: 接続されたデバイスは切り替えられた会話のタイトルまたは以前の履歴を受け取りませんが、双方向の新しいメッセージはターミナルで開いている会話に対して行き来します。デバイスから元の会話で再度作業するには、ターミナルで `/resume` を実行して戻します。

191* **`/teleport` でセッションをプルする**: [Claude Code on the web セッション](/docs/ja/claude-code-on-the-web#from-web-to-terminal)をターミナルに `/teleport` でプルする場合、接続されたデバイスはプルされた会話の以前の履歴を受け取りません。双方向の新しいメッセージはプルされた会話に対して行き来し、これはターミナルで開いている会話になります。

192* **他のセッションからのメッセージ**: [クロスセッションメッセージング](/docs/ja/cross-session-messaging)では、同じ接続が異なるマシン上の独自のセッション間のメッセージと [Claude Code on the web](/docs/ja/claude-code-on-the-web) セッションからのメッセージを、Remote Control トラフィックの残りのように Anthropic サーバーを通じて運びます。[他のマシンのメッセージセッション](/docs/ja/cross-session-messaging#message-sessions-on-other-machines)は配信ルールをカバーし、[インバウンドメッセージを制御](/docs/ja/cross-session-messaging#control-inbound-messages)はインバウンドコントロールをカバーします。Claude Code v2.1.224 以降が必要です。

193* **ターン中に送信されたプロンプト**: 現在のターンが終了する前に接続されたデバイスからプロンプトを送信する場合、Claude Code はそれをキューに入れ、そのターンが終了した後、デバイスのトランスクリプトに保持します。

194* **変更の差分**: セッションのディレクトリが git リポジトリにある場合、接続されたデバイスの差分ペインはコミットされていない変更の差分を表示します。デバイスは接続を通じて差分をリクエストし、Claude Code はマシンで計算します。作業ツリーがクリーンな場合、Claude Code は代わりにデフォルトブランチから分岐した以来のブランチの変更を提供します。v2.1.247 より前では、Claude Code は `claude remote-control` で提供されるセッションでのみ接続されたデバイスに差分を報告していました。

195* **モデル**: 接続されたデバイスから[モデル](/docs/ja/model-config)を選択する場合、Claude Code はセッションをそのモデルで実行します。ターミナルの `/model` ピッカー、`/status`、および `/config` はそのモデルを表示します。Claude Code v2.1.238 以降が必要です。

196 * デバイスのモデルコントロールから選択したモデルは現在のセッションのみに適用されます。デバイスから対話型セッションに `/model <name>` を送信する場合、Claude Code は新しいセッションのデフォルトも設定します。

197 * Claude Code が認識しない名前(例えば、モデル ID が予期される場所の表示名)を送信する場合、Claude Code は[ピックを拒否](/docs/ja/errors#model-is-not-a-recognized-model-id)し、セッションは現在のモデルを保持します。v2.1.260 より前では、Claude Code はデバイスのモデルコントロールから認識されないピックを保存し、次のメッセージは失敗していました。

198* **努力レベル**: 接続されたデバイスから[努力レベル](/docs/ja/model-config#adjust-effort-level)を設定する場合、`/effort` またはデバイスの努力コントロールで、Claude Code はマシンのセッションに適用し、claude.ai/code はセッションが使用しているレベルを表示します。`CLAUDE_CODE_EFFORT_LEVEL` でレベルをピンした場合、セッションはそのレベルを保持し、Claude Code は努力コントロールから異なるピックを拒否します。努力コントロールからレベルをピックするには、マシンで Claude Code v2.1.234 以降が必要です。

199* **接続失敗後の再接続**: `/remote-control` を実行して再接続します。圧縮が会話を書き直したか、その間に `/resume` で会話を切り替えた場合、Claude Code は使用していたサーバーセッションをアーカイブします。セッションリストに残す代わりに。[アーカイブされたセッションをフィルタリング](/docs/ja/claude-code-on-the-web#archive-sessions)することで見つけることができます。デバイスがまだ接続されている間に会話を切り替えてもセッションはアーカイブされません。

200 

150<h3 id="enable-remote-control-for-all-sessions">201<h3 id="enable-remote-control-for-all-sessions">

151 すべてのセッションで Remote Control を有効にする202 すべてのセッションで Remote Control を有効にする

152</h3>203</h3>

153 204 

154Remote Control のみ、`claude remote-control`、`claude --remote-control`、または `/remote-control` を明示的に実行した場合、またはオートコネクトがオンになっている場合にアクティブになります。すべての対話型セッションで自動的に有効にするには、Claude Code 内で `/config` を実行し、**Enable Remote Control for all sessions** を `true` に設定します。無効にするには `false` に設定するか、組織のデフォルトに従うために設定しないままにします。Desktop アプリでは、**Settings → Claude Code → Enable remote control by default** からこれをトグルすることもできます。[VS Code 拡張機能](/docs/ja/vs-code#use-the-prompt-box)では、同じトグルがコマンドメニューの Settings セクションに **Enable Remote Control for all sessions** として表示されます。Claude Code v2.1.203 以降が必要です。205Remote Control のみ、`claude remote-control`、`claude --remote-control`、または `/remote-control` を明示的に実行した場合、またはオートコネクトがオンになっている場合にアクティブになります。すべての対話型セッションで自動的に接続するには、Claude Code 内で `/config` を実行し、**Enable Remote Control for all sessions** を設定します。トグルは 3 つの値を取ります。

206 

207* **`true`**: 対話型セッションが開始されるときに自動的に接続します。

208* **`false`**: オートコネクトをオフにします。ただし、[管理設定](/docs/ja/managed-settings)からの `true` はそれを上回ります。Claude Code はユーザー設定に選択を保存するためです。プロジェクトまたはローカル設定(`.claude/settings.json`、`.claude/settings.local.json`)の `false` は、管理 `true` の上でもオートコネクトをオフにします。

209* **`default`**: 選択をクリアし、設定されている場合は組織の管理者デフォルトに従うか、そうでない場合は Claude Code の現在のデフォルトに従います。

210 

211同じトグルは CLI の外に表示されます。

212 

213* **デスクトップアプリ**: **Settings > Claude Code > Enable remote control by default**。

214* **VS Code 拡張機能**: [コマンドメニューの](/docs/ja/vs-code#use-the-prompt-box)Settings セクションの **Enable Remote Control for all sessions**。Claude Code v2.1.203 以降が必要です。

215 

216代わりに設定ファイルからオートコネクトをオンにするには、ユーザー `~/.claude/settings.json` または[管理設定](/docs/ja/managed-settings)で [`remoteControlAtStartup`](/docs/ja/settings-reference#remotecontrolatstartup) を `true` に設定します。プロジェクトまたはローカル設定(`.claude/settings.json`、`.claude/settings.local.json`)では、Claude Code は `false` を尊重し、そのリポジトリのオートコネクトをオフにしますが、`true` を無視するため、チェックインされたファイルはリポジトリを開く誰もが Remote Control をオンにすることはできません。

217 

218オートコネクトは独自の claude.ai アカウントでサインインするため、開始するセッションは独自のアカウントの Claude アプリにのみ表示され、他の誰にもアクセスを許可しません。

219 

220この設定がオンの場合、各対話型 Claude Code プロセスは 1 つのリモートセッションを登録します。複数のインスタンスを実行する場合、各インスタンスは独自のリモートセッションを取得します。単一のプロセスから複数の同時セッションを実行するには、[サーバーモード](#start-a-remote-control-session)を使用します。

221 

222<h3 id="resume-sessions-after-stopping-the-server">

223 サーバーを停止した後のセッションの再開

224</h3>

225 

226`claude remote-control` を Ctrl+C で停止すると、提供していたセッションは電話またはブラウザからの応答を停止します。別の `claude remote-control` を同じディレクトリで実行していなかったか、これを `--no-create-session-in-dir` で開始していない限り、Claude Code はそれらをアーカイブしません。復帰させるには、同じディレクトリで次のいずれかのコマンドを実行します。

227 

228* **`claude remote-control`**: サーバーが提供していたすべてのセッションを復帰させます。

229* **`claude remote-control --continue`**: サーバーが開始したセッションのみを復帰させ、そのセッションが終了するときに終了します。このディレクトリにレコードがない場合、Claude Code はこのリポジトリの他の git worktree から最新のものを使用します。

230* **`claude remote-control --session-id <id>`**: 渡した ID のセッションのみを復帰させ、そのセッションが終了するときに終了します。ID はセッションの URL の claude.ai/code の `/code/` と任意の `?` の間の部分です。

231 

232これらのコマンドはサーバーが停止してから約 4 時間機能します。その後、`claude remote-control` を実行して新しいセッションを開始します。その間にセッションをアーカイブした場合、`--continue` と `--session-id` は Claude Code v2.1.228 以降でそれをアーカイブ解除します。

155 233 

156この設定がオンの場合、各対話型 Claude Code プロセスは 1 つのリモートセッションを登録します。複数のインスタンスを実行する場合、各インスタンスは独自の環境とセッションを取得します。単一のプロセスから複数の同時セッションを実行するには、[サーバーモード](#start-a-remote-control-session)を使用します。234`claude --remote-control` または `/remote-control` で開始したセッションを復帰させるには、`claude --continue` または `claude --resume` で会話を再開します。Claude Code が再接続するかどうか、およびどのセッションに再接続するかは、会話の[再接続レコード](#resume-outcomes)に依存します。

235 

236最初のターミナルが Remote Control をオンにしたままで、2 番目のターミナルで会話を再開する場合、Claude Code は 2 番目のターミナルに通知を出力し、セッションを最初から取り去る代わりに Remote Control をオフのままにします。Remote Control がそこでオフのままの間、そのターミナルの Claude は[他のマシンのセッション](/docs/ja/cross-session-messaging#see-which-sessions-claude-can-reach)を見ず、それらはそれに到達できません。2 番目のターミナルで `/remote-control` を実行して Remote Control をそこに移動します。

237 

238Remote Control がオンだった Claude Desktop または IDE 拡張機能で会話を再開する場合、Claude Code は新しいセッションをセッションリストに追加する代わりに、既存の claude.ai セッションに再度接続します。

157 239 

158<h2 id="connection-and-security">240<h2 id="connection-and-security">

159 接続とセキュリティ241 接続とセキュリティ


161 243 

162ローカル Claude Code セッションは、アウトバウンド HTTPS リクエストのみを行い、マシン上のインバウンドポートを開くことはありません。Remote Control を開始すると、Anthropic API に登録され、作業をポーリングします。別のデバイスから接続すると、サーバーは Web またはモバイルクライアントとローカルセッション間のメッセージをストリーミング接続経由でルーティングします。244ローカル Claude Code セッションは、アウトバウンド HTTPS リクエストのみを行い、マシン上のインバウンドポートを開くことはありません。Remote Control を開始すると、Anthropic API に登録され、作業をポーリングします。別のデバイスから接続すると、サーバーは Web またはモバイルクライアントとローカルセッション間のメッセージをストリーミング接続経由でルーティングします。

163 245 

164すべてのトラフィックは TLS 経由で Anthropic API を通じて移動し、Claude Code セッションと同じトランスポートセキュリティです。接続は複数の短命の認証情報を使用し、各認証情報は単一の目的にスコープされ、独立して有効期限が切れます。246すべてのトラフィックは TLS 経由で Anthropic API を通じて移動し、Claude Code セッションと同じトランスポートセキュリティです。接続は複数の短命の認証情報を使用し、各認証情報は単一の目的にスコープされ、独立して有効期限が切れます。`claude remote-control` サーバーの登録認証情報が有効期限切れになると、サーバーは Anthropic API に再度登録され、セッションの提供を継続します。

165 247 

166Remote Control が接続されている間、セッショントランスクリプト(メッセージ、Claude の応答、ツールアクティビティを含む)は Anthropic サーバーに保存されます。保存されたトランスクリプトは、デバイス間で会話を同期させ、ネットワーク障害後にセッションが再接続できるようにします。実行とファイルシステムアクセスはマシン上に留まり、保存されたトランスクリプトは [データ使用](/docs/ja/data-usage) ポリシーに基づいて保持されます。248Remote Control が接続されている間、セッショントランスクリプト(メッセージ、Claude の応答、ツールアクティビティを含む)は Anthropic サーバーに保存されます。保存されたトランスクリプトは、デバイス間で会話を同期させ、ネットワーク障害後にセッションが再接続できるようにします。実行とファイルシステムアクセスはマシン上に留まり、保存されたトランスクリプトは [データ使用](/docs/ja/data-usage) ポリシーに基づいて保持されます。

167 249 

168Remote Control を完全にオフにするには、[`disableRemoteControl`](/docs/ja/settings#available-settings) 設定を使用します。Zero Data Retention などのコンプライアンス要件を持つ組織は Remote Control を有効にすることはできません。250Remote Control を完全にオフにするには、[`disableRemoteControl`](/docs/ja/settings-reference#disableremotecontrol) 設定を使用します。Zero Data Retention などのコンプライアンス要件を持つ組織は Remote Control を有効にすることはできません。

169 251 

170<h2 id="trusted-devices">252<h2 id="trusted-devices">

171 信頼できるデバイス253 信頼できるデバイス


174<Note>256<Note>

175 信頼できるデバイスは現在ベータ版です。エクスペリエンスが改善されるにつれて、機能と機能が進化する可能性があります。257 信頼できるデバイスは現在ベータ版です。エクスペリエンスが改善されるにつれて、機能と機能が進化する可能性があります。

176 258 

177 信頼できるデバイスは Team および Enterprise プランで利用可能です。デフォルトではオフになっており、管理者が有効にするまでオフのままです。259 信頼できるデバイスは Team および Enterprise プランで利用可能です。デフォルトではオフになっており、Owner が有効にするまでオフのままです。

178</Note>260</Note>

179 261 

180信頼できるデバイスは、メンバーが claude.ai、Claude モバイルアプリ、または Claude Desktop から Remote Control セッションを表示または操作する前に、デバイスを確認する必要がある組織全体の設定です。これは、署名されたアカウントだけでなく、既知のデバイスと最近の認証に Remote Control アクセスを結び付けます。262信頼できるデバイスは、メンバーが claude.ai、Claude モバイルアプリ、または Claude Desktop から Remote Control セッションを表示または操作する前に、デバイスを確認する必要がある組織全体の設定です。これは、署名されたアカウントだけでなく、既知のデバイスと最近の認証に Remote Control アクセスを結び付けます。


192 組織で信頼できるデバイスを有効にする274 組織で信頼できるデバイスを有効にする

193</h3>275</h3>

194 276 

195管理者は Claude Code 管理コンソールから設定を有効にします。277Owner は Claude Code 管理コンソールから設定を有効にします。

196 278 

197<Steps>279<Steps>

198 <Step title="Claude Code 管理設定を開く">280 <Step title="Claude Code 管理設定を開く">


234 Remote Control と Web 上の Claude Code316 Remote Control と Web 上の Claude Code

235</h2>317</h2>

236 318 

237Remote Control と [Web 上の Claude Code](/docs/ja/claude-code-on-the-web) の両方が claude.ai/code インターフェースを使用します。主な違いはセッションが実行される場所です。Remote Control はマシン上で実行されるため、ローカル MCP サーバー、ツール、プロジェクト設定が利用可能なままです。Web 上の Claude Code は Anthropic が管理するクラウドインフラストラクチャで実行されます。319Remote Control と [Web 上の Claude Code](/docs/ja/claude-code-on-the-web) の両方が claude.ai/code インターフェースを使用します。主な違いはセッションが実行される場所です。Remote Control はマシン上で実行されるため、ローカル MCP サーバー、ツール、プロジェクト設定が利用可能なままです。Web 上の Claude Code はクラウドで実行されます。

238 320 

239ローカル作業の途中で別のデバイスから続行したい場合は Remote Control を使用します。ローカルセットアップなしでタスクを開始したい場合、クローンしていないリポジトリで作業したい場合、または複数のタスクを並列で実行したい場合は Web 上の Claude Code を使用します。321ローカル作業の途中で別のデバイスから続行したい場合は Remote Control を使用します。ローカルセットアップなしでタスクを開始したい場合、クローンしていないリポジトリで作業したい場合、または複数のタスクを並列で実行したい場合は Web 上の Claude Code を使用します。

240 322 


279</h2>361</h2>

280 362 

281* **対話型プロセスごとに 1 つのリモートセッション**: サーバーモード外では、各 Claude Code インスタンスは一度に 1 つのリモートセッションをサポートします。単一のプロセスから複数の同時セッションを実行するには、[サーバーモード](#start-a-remote-control-session)を使用します。363* **対話型プロセスごとに 1 つのリモートセッション**: サーバーモード外では、各 Claude Code インスタンスは一度に 1 つのリモートセッションをサポートします。単一のプロセスから複数の同時セッションを実行するには、[サーバーモード](#start-a-remote-control-session)を使用します。

282* **ローカルプロセスは実行し続ける必要があります**: Remote Control はローカルプロセスとして実行されます。ターミナルを閉じるか、VS Code を終了するか、または `claude` プロセスを停止すると、セッションは終了します。364* **ローカルプロセスは実行し続ける必要があります**: Remote Control はローカルプロセスとして実行されます。ターミナルを閉じるか、VS Code を終了するか、または `claude` プロセスを停止すると、セッションはオフラインになります。[セッションを復帰させる](#resume-sessions-after-stopping-the-server)まで、セッションはオフラインのままです。Claude がタスクの途中でない限り、claude.ai と Claude アプリはプロセス終了後数秒以内にセッションをオフラインとして表示します。SSH から切断した後もリモートマシンでセッションを実行し続けるには、`tmux` または `screen` 内で起動します。

283* **長時間のネットワーク障害**: マシンが起動しているがおよそ 10 分以上ネットワークに到達できない場合、セッションはタイムアウトしてプロセスは終了します。新しいセッションを開始するには、`claude remote-control` を再度実行します。365* **サーバーモードでのクラッシュしたセッション**: `claude remote-control` で提供されるセッションがクラッシュした場合、接続されたデバイスからメッセージを送信します。Claude Code はそれを再度提供します。サーバーを再起動する必要はありません。Claude Code v2.1.238 以降が必要です。

284* **Ultraplan は Remote Control を切断します**: [ultraplan](/docs/ja/ultraplan) セッションを開始すると、アクティブな Remote Control セッションが切断されます。両方の機能が claude.ai/code インターフェースを占有し、一度に 1 つだけ接続できるためです。366* **接続されたセッションでの HTTP 403 拒否**: 対話型セッションが接続されると、VPN またはネットワークの変更後に発生する可能性があるように、マシンと Anthropic のサーバー間の何かが HTTP 403 で応答する場合、Claude Code は最大 3 分間再試行を続けます。拒否が長く続く場合、Claude Code は切断され、理由は何が拒否したかを示します。ネットワークエッジ、またはユーザー自身のネットワーク上のプロキシ、VPN、またはファイアウォールです。

285* **一部のコマンドはローカルのみです**: ターミナルインターフェースでのみ実行されるコマンド(`/plugin` や `/resume` など)は、引数を渡すかどうかに関わらず、ローカル CLI からのみ機能します。以下がモバイルと Web から機能します:367* **長時間のネットワーク障害**: マシンが起動しているがネットワークに到達できない場合、次に何をするかはモードによって異なります。

286 * テキスト出力コマンド: `/compact`、`/clear`、`/context`、`/usage`、`/exit`、`/usage-credits`(CLI 内ダイアログを開く代わりにテキスト形式を実行します)、`/recap`、`/reload-plugins`368 * **サーバーモード**: Claude Code はおよそ 10 分後に諦め、`claude remote-control` プロセスは終了します。新しいセッションを開始するには、`claude remote-control` を再度実行します。

287 * `/model`、`/effort`、`/fast`、`/color`、`/rename`: 値を引数として渡します。例えば `/model sonnet` または `/effort high` のようにします。モバイルと Web からは、`/model` と `/effort` は、ターミナルピッカーまたはスライダーの代わりに引数を受け取ります。369 * **対話型セッション**: ローカルで作業を続けます。Claude Code は障害が続く限り再試行し、ネットワークが復帰すると自動的に再接続します。

288 * `/mcp`、v2.1.166 以降: モバイルアプリからは、ピッカーを開く代わりにサーバーステータスのテキスト概要を返します。Web では、`/mcp` 単独で概要を返す代わりに [claude.ai コネクタ](/docs/ja/mcp#use-mcp-servers-from-claude-ai)のディレクトリを開きます。`reconnect`、`enable`、`disable` [サブコマンド](/docs/ja/commands#all-commands)は両方から機能します。ローカル CLI と異なり、サーバー名なしで `/mcp reconnect` を実行すると、失敗したか認証が必要なすべてのサーバーを再接続します。370* **プレゼンスハートビートの失敗**: 対話型セッションが `could not reach the Remote Control server for about 30 minutes` で切断された場合、`/remote-control` を実行して再接続します。Claude Code はセッションのプレゼンスハートビートが失敗している場合にのみこのメッセージを表示し、接続の残りの部分は稼働したままです。セッションは約 30 分間再登録されてから切断されます。

289 * `/config`、v2.1.181 以降: モバイルアプリからは、`key=value` を渡して設定を行うか、引数なしで実行して設定できるキーのリストを表示します。Web では、`/config` は設定の Claude Code セクションを開く代わりに、コマンドの後のテキストを無視します。371* **転送されたダイアログの有効期限**: Claude Code は権限プロンプトと `AskUserQuestion` の質問を、ユーザーが回答するまで開いたままにします。Claude Code が別の種類のダイアログをリモートセッションに転送する場合(安全性拒否後に表示されるモデル選択プロンプトなど)、デフォルトでは 5 分待機してからダイアログを閉じ、ダイアログのアクション不要のデフォルトで続行します。[`dialogExpiry`](/docs/ja/settings-reference#dialogexpiry) を設定して期限を調整または無効化します。Claude Code v2.1.224 以降が必要です。

372* **Fable 使用クレジット同意プロンプトは転送されません**: Claude Code はセッション中の [Fable 使用クレジット同意プロンプト](/docs/ja/model-config#fable-and-usage-credits)をセッションが実行される場所にのみ表示し、ユーザーのデバイスには表示しません。セッションがターミナルで実行され、Claude Code がプロンプトを閉じる前に誰もそこで回答しない場合、ターンはリクエストを送信せずに終了します。[確認するプロンプトが未回答でした](/docs/ja/errors#the-prompt-to-confirm-went-unanswered)を参照してください。

373* **一部のコマンドはローカルのみです**: ターミナルインターフェースでのみ実行されるコマンド(`/plugin` や `/resume` など)は、引数を渡すかどうかに関わらず、ローカル CLI からのみ機能します。以下がモバイルと Web から機能します。

374 * テキスト出力コマンド: `/compact`、`/clear`、`/context`、`/usage`、`/exit`、`/usage-credits`、`/recap`、`/reload-plugins`。`/usage-credits` はブラウザを開く代わりに請求 URL を出力します。`/reload-plugins` はセッションが対話型ターミナルで実行されている場合にのみ機能します。セッションがない場合は拒否されます。

375 * `/model`、`/effort`、`/fast`、`/color`、`/rename`: 値を引数として渡します。例えば `/model sonnet` または `/effort high` のようにします。モバイルと Web からは、`/model` と `/effort` はターミナルピッカーまたはスライダーの代わりに引数を受け取ります。

376 * `/mcp`: モバイルアプリからは、ピッカーを開く代わりにサーバーステータスのテキスト概要を返します。Web では、`/mcp` 単独で概要を返す代わりに [claude.ai コネクタ](/docs/ja/mcp#use-mcp-servers-from-claude-ai)のディレクトリを開きます。`reconnect`、`enable`、`disable` [サブコマンド](/docs/ja/commands#all-commands)は両方から機能します。ローカル CLI と異なり、サーバー名なしで `/mcp reconnect` を実行すると、失敗したか認証が必要なすべてのサーバーを再接続します。

377 * `/config`、v2.1.181 以降: モバイルアプリからは、`key=value` を渡して設定を行うか、引数なしで実行して設定できるキーのリストを表示します。Web では、`/config` は代わりに設定の Claude Code セクションを開き、コマンドの後のテキストを無視します。

378 * Team と Enterprise では、モバイルまたは Web から `/usage-credits` を実行しても、[管理者への使用クレジットリクエスト](/docs/ja/costs#add-usage-credits-to-your-subscription)は送信されません。送信には対話型 CLI にのみ表示される確認が必要なため、コマンドはそこで実行するよう指示します。v2.1.211 より前は、テキスト形式は確認なしでリクエストを送信していました。

379 * `/autocompact`、v2.1.221 以降: ウィンドウサイズを引数として渡します。例えば `/autocompact 500k` のようにします。引数がない場合、ターミナルセッションで表示されるダイアログを開く代わりに、現在のウィンドウサイズをテキストとして出力します。

380 * `/advisor`、v2.1.260 以降: モデルを引数として渡します。例えば `/advisor opus` のようにします。または `off` を渡してアドバイザーをオフにします。両方の形式は現在のセッションにのみ適用され、保存されたデフォルトは変わりません。引数がない場合、ピッカーを開く代わりに、現在のアドバイザーをテキストとして出力します。

290 381 

291<h2 id="troubleshooting">382<h2 id="troubleshooting">

292 トラブルシューティング383 トラブルシューティング


296 「Remote Control には claude.ai サブスクリプションが必要です」387 「Remote Control には claude.ai サブスクリプションが必要です」

297</h3>388</h3>

298 389 

299claude.ai アカウントで認証されていません。`claude auth login` を実行して claude.ai オプションを選択してください。`ANTHROPIC_API_KEY` が環境に設定されている場合は、最初に設定を解除してください。390claude.ai アカウントで認証されていないか、別の認証情報がログインより優先されています。メッセージは以下のいずれかの形式になります。

391 

392* サインアウト状態で `/remote-control` または `--remote-control` から:「Remote Control requires a claude.ai subscription.」

393* サインアウト状態で `claude remote-control` から:「You must be logged in to use Remote Control. Remote Control is only available with claude.ai subscriptions.」

394* サインイン状態だが API キーまたはトークンが使用中:「Remote Control requires claude.ai subscription auth.」の後に、`ANTHROPIC_API_KEY is set, so this session is using API-key auth` などの使用中の認証情報が続きます。`apiKeyHelper` 設定と `ANTHROPIC_AUTH_TOKEN` は同じ方法で名前が付けられます。

395 

396`claude auth login` を実行して claude.ai オプションを選択してください。メッセージが `ANTHROPIC_API_KEY` または `ANTHROPIC_AUTH_TOKEN` を名前付けしている場合は、シェル環境または [設定ファイル](/docs/ja/settings-reference#env)の `env` ブロックのいずれかに設定されている場所から削除してください。`apiKeyHelper` を名前付けしている場合は、その設定を削除してください。

300 397 

301v2.1.206 より前では、サインアウト状態で `/remote-control` を実行すると、このメッセージの代わりに `Unknown command: /remote-control` が報告されていました。398v2.1.206 より前では、サインアウト状態で `/remote-control` を実行すると、このメッセージの代わりに `Unknown command: /remote-control` が報告されていました。

302 399 


304 「Remote Control には完全スコープのログイントークンが必要です」401 「Remote Control には完全スコープのログイントークンが必要です」

305</h3>402</h3>

306 403 

307`claude setup-token` または `CLAUDE_CODE_OAUTH_TOKEN` 環境変数からの長命トークンで認証されています。これらのトークンは推論のみに制限されており、Remote Control セッションを確立できません。代わりに `claude auth login` を実行して、完全スコープのセッショントークンで認証してください。404`claude setup-token` または `CLAUDE_CODE_OAUTH_TOKEN` 環境変数からの長命トークンで認証されています。これらのトークンはモデルリクエストのみを実行できるため、Remote Control セッションを確立できません。代わりに `claude auth login` を実行して、完全スコープのセッショントークンで認証してください。

308 405 

309<h3 id="unable-to-determine-your-organization-for-remote-control-eligibility">406<h3 id="unable-to-determine-your-organization-for-remote-control-eligibility">

310 「Remote Control 適格性のための組織を決定できません」407 「Remote Control 適格性のための組織を決定できません」


312 409 

313キャッシュされたアカウント情報が古いまたは不完全です。`claude auth login` を実行して更新してください。410キャッシュされたアカウント情報が古いまたは不完全です。`claude auth login` を実行して更新してください。

314 411 

315<h3 id="remote-control-is-not-yet-enabled-for-your-account">412<h3 id="remote-control-isn’t-enabled-for-this-account">

316 「Remote Control はまだアカウントで有効になっていません」413 「Remote Control はこのアカウントで有効になっていません」

317</h3>414</h3>

318 415 

319Remote Control ロールアウトがアカウントに到達していないか、キャッシュされた権利が古い可能性があります。最近プランを変更した場合は、`claude auth logout` を実行してから `claude auth login` を実行して更新してください。`claude doctor` を実行して、どの個別の適格性チェックが失敗したかを確認してください。環境変数の競合、到達不可能なチェック、および組織ポリシーはそれぞれ独自のメッセージを生成するため、このエラーはロールアウトゲート自体を意味します。416Claude Code はサインインしているアカウントの Remote Control 可用性をチェックし、チェックがオフで返されました。通常の原因は、プラン変更後に期限切れになったキャッシュされた権利です。`claude auth logout` を実行してから `claude auth login` を実行して更新し、古いバージョンを使用している場合は Claude Code を更新してください。

417 

418`claude doctor` を実行して、どの個別の適格性チェックが失敗したかを確認してください。環境変数の競合、到達不可能なチェック、および組織の Remote Control 設定はそれぞれ独自のメッセージを生成するため、このエラーはアカウントレベルのチェック自体を意味します。

419 

420v2.1.239 より前では、このメッセージは「Remote Control is not yet enabled for your account」と表示されていました。v2.1.154 より前では、`DISABLE_TELEMETRY` または `DO_NOT_TRACK` などのフィーチャーフラグ評価を無効にする変数もこのメッセージを生成していました。以下の「Remote Control はフィーチャーフラグ評価を必要とします」エントリがその設定をカバーしています。

320 421 

321<h3 id="couldn’t-verify-remote-control-eligibility">422<h3 id="couldn’t-verify-remote-control-eligibility">

322 「Remote Control 適格性を確認できませんでした」423 「Remote Control 適格性を確認できませんでした」

323</h3>424</h3>

324 425 

325Claude Code は Remote Control がアカウントで有効になっているかどうかを確認するためにフィーチャーフラグサービスに到達できませんでした。通常、オフラインであるか、プロキシがリクエストをブロックしているためです。ネットワークアクセスが可能になったら再度実行するか、詳細については `claude doctor` を実行してください。関連メッセージ「組織の Remote Control ポリシーを確認できませんでした」は同じ原因を持ち、同じ修正があります。両方のメッセージは v2.1.178 で追加されました。426Claude Code は Remote Control がアカウントで有効になっているかどうかをチェックするためにフィーチャーフラグサービスに到達できませんでした。通常、オフラインであるか、プロキシがリクエストをブロックしているためです。ネットワークアクセスが可能になったら再度実行するか、詳細については `claude doctor` を実行してください。関連メッセージ「組織の Remote Control ポリシーを確認できませんでした」は同じ原因を持ち、同じ修正があります。両方のメッセージは v2.1.178 で追加されました。

427 

428<h3 id="remote-control-requires-feature-flag-evaluation">

429 「Remote Control はフィーチャーフラグ評価を必要とします」

430</h3>

431 

432これらの変数のいずれかが設定されています:[`DISABLE_TELEMETRY`、`DO_NOT_TRACK`、`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`、または `DISABLE_GROWTHBOOK`](/docs/ja/env-vars)。これらのそれぞれは Remote Control 可用性が依存するフィーチャーフラグ評価を無効にし、完全なメッセージは Claude Code が見つけた変数を名前付けします。シェル環境または [`settings.json` ファイル](/docs/ja/settings-reference#all-settings)の `env` ブロックのいずれかに設定されている場所から、その変数を設定解除してください。v2.1.154 より前のバージョンでは、同じ設定により「Remote Control is not yet enabled for your account」が代わりに生成されます。

326 433 

327<h3 id="remote-control-is-only-available-when-using-claude-via-api-anthropic-com">434<h3 id="remote-control-is-only-available-when-using-claude-via-api-anthropic-com">

328 「Remote Control は Claude 経由で api.anthropic.com を使用している場合にのみ利用可能です」435 「Remote Control は Claude を api.anthropic.com 経由で使用している場合にのみ利用可能です」

329</h3>436</h3>

330 437 

331セッションが Anthropic API に直接通信していないため、ペアリングする claude.ai バックエンドがありません。これは Amazon Bedrock、Google Cloud の Agent Platform、および Microsoft Foundry で発生します。v2.1.196 以降、[`ANTHROPIC_BASE_URL`](/docs/ja/env-vars) が `api.anthropic.com` 以外のホスト([LLM ゲートウェイ](/docs/ja/llm-gateway)やプロキシなど)を指している場合にも発生します。claude.ai でサインインしている場合でも同様です。`ANTHROPIC_BASE_URL` を設定解除してセッションを再開し、Remote Control を使用してください。438セッションが Anthropic API に直接通信していないため、ペアリングする claude.ai バックエンドがありません。これは Amazon Bedrock、Google Cloud の Agent Platform、および Microsoft Foundry で発生します。また、[`ANTHROPIC_BASE_URL`](/docs/ja/env-vars)が `api.anthropic.com` 以外のホスト([LLM ゲートウェイ](/docs/ja/llm-gateway)やプロキシなど)を指している場合にも発生します。claude.ai でサインインしている場合でも同様です。v2.1.196 より前では、Claude Code はカスタム `ANTHROPIC_BASE_URL` に対してこのメッセージを表示していませんでした。完全な原因リストについては、[エラーリファレンス](/docs/ja/errors#remote-control-requires-the-anthropic-api)を参照してください。

439 

440メッセージは `CLAUDE_CODE_USE_BEDROCK` またはカスタム `ANTHROPIC_BASE_URL` など、セッションを Anthropic API から遠ざけたものを名前付けします。適格な claude.ai ログインがある場合は、名前付けされた変数を設定解除し、[設定](/docs/ja/settings)で `env` キーから削除した場合は削除し、セッションを再開してください。v2.1.219 より前では、メッセージはこのセクションのヘッダーの文のみであったため、古いバージョンでは `CLAUDE_CODE_USE_BEDROCK` や `CLAUDE_CODE_USE_VERTEX` などのプロバイダー変数と `ANTHROPIC_BASE_URL` について環境を自分で確認してください。

332 441 

333<h3 id="remote-control-is-disabled-by-your-organization’s-policy">442<h3 id="remote-control-is-disabled-by-your-organization’s-policy">

334 「Remote Control は組織のポリシーで無効になっています」443 「Remote Control は組織のポリシーで無効になっています」

335</h3>444</h3>

336 445 

337このエラーには 4 つの異なる原因があります。最初に `/status` を実行して、使用しているログイン方法とサブスクリプションを確認してください。446ポリシーが Remote Control をブロックするか、Claude Code がこのマシンで組織のポリシーを読み込めず、その間 Remote Control をオフのままにしています。これらの原因を順番にチェックしてください。

338 447 

339* **API キーまたは Console アカウントで認証されている**: Remote Control は claude.ai OAuth が必要です。`/login` を実行して claude.ai オプションを選択してください。`ANTHROPIC_API_KEY` が環境に設定されている場合は、設定を解除してください。448* **エラーが `disableRemoteControl` を言及している**:IT 管理者が [管理設定](/docs/ja/managed-settings)を通じてこのデバイスで Remote Control を無効にしています。これは組織全体のトグルとは関係なく、サインイン方法とは関係なく行われています。

340* **Team または Enterprise 管理者が有効にしていない**: Remote Control はこれらのプランではデフォルトでオフになっています。管理者は [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) で **Remote Control** トグルをオンにして有効にできます。このトグルはサーバー側の組織設定です。449* **claude.ai プランが Pro または Max である**:Claude Code は以前のログインから Team または Enterprise 組織の下でまだサインインしているため、その組織の Remote Control ポリシーをチェックします。`/status` を実行して、サインインが使用するプランと組織を確認してください。`claude auth logout` を実行してから `claude auth login` を実行して、現在のプランの下で再度サインインしてください。

341* **管理者トグルがグレーアウトしている**: 組織には Remote Control と互換性のないデータ保持またはコンプライアンス設定があります。これは管理パネルから変更することはできません。オプションについて説明するために Anthropic サポートに連絡してください。450* **組織ポリシーがこのマシンで読み込まれなかった**:`claude doctor` を実行して `Organization policy` 行を読んでください。行がポリシーが読み込まれていないことを示している場合、それが Remote Control をオフのままにしているものです。v2.1.261 より前では、`claude doctor` はこの行を出力していませんでした。

342* **エラーに `disableRemoteControl` が記載されている**: IT 管理者が [管理設定](/docs/ja/settings#settings-files)を通じてこのデバイスで Remote Control を無効にしています。これは組織全体のトグルとは関係なく行われています。451* **メッセージが組織管理者に連絡するよう言っていない**:組織には Remote Control と互換性のない HIPAA 設定があり、`/status` は `Compliance` 行に `HIPAA` をリストしています。この状態では、管理パネルの Remote Control トグルはグレーアウトしているため、所有者はそこで変更できません。オプションについて説明するために Anthropic サポートに連絡してください。v2.1.267 より前では、このケースは「Remote Control isn't available for your organization due to its compliance policy」と表示されていました。

452* **それ以外の場合、所有者が組織に対して有効にしていない**:Remote Control は Team および Enterprise プランではデフォルトでオフになっています。所有者は [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) で **Remote Control** トグルをオンにして有効にできます。このトグルはサーバー側の組織設定です。

343 453 

344<h3 id="remote-credentials-fetch-failed">454<h3 id="remote-credentials-fetch-failed">

345 「リモート認証情報の取得に失敗しました」455 「リモート認証情報の取得に失敗しました」


351claude remote-control --verbose461claude remote-control --verbose

352```462```

353 463 

354一般的な原因:464一般的な原因:

465 

466* サインインしていない:`claude` を実行し、`/login` を使用して claude.ai アカウントで認証してください。API キー認証は Remote Control ではサポートされていません。

467* ネットワークまたはプロキシの問題:ファイアウォールまたはプロキシがアウトバウンド HTTPS リクエストをブロックしている可能性があります。Remote Control はポート 443 で Anthropic API へのアクセスが必要です。

468* セッション作成に失敗:`Session creation failed — see debug log` も表示される場合、失敗はセットアップの前の段階で発生しました。サブスクリプションがアクティブであることを確認してください。

355 469 

356* サインインしていない: `claude` を実行し、`/login` を使用して claude.ai アカウントで認証してください。API キー認証は Remote Control ではサポートされていません。470古いログイントークンはこのエラーを引き起こしません。Anthropic API が保存されたトークンを拒否する場合(例えば、別の Claude Code プロセスがすでにそれを更新したため)、Claude Code はトークンを更新して自動的に再試行します。v2.1.224 より前では、古いトークンはこのメッセージで Remote Control スタートアップに失敗し、[自動的に接続するように設定](#enable-remote-control-for-all-sessions)されたセッションは起動時に断続的に失敗する可能性がありました。

357* ネットワークまたはプロキシの問題: ファイアウォールまたはプロキシがアウトバウンド HTTPS リクエストをブロックしている可能性があります。Remote Control はポート 443 で Anthropic API へのアクセスが必要です。

358* セッション作成に失敗: `Session creation failed — see debug log` も表示される場合、失敗はセットアップの前の段階で発生しました。サブスクリプションがアクティブであることを確認してください。

359 471 

360<h3 id="couldn’t-reconnect-to-your-remote-control-session">472<h3 id="couldn’t-reconnect-to-your-remote-control-session">

361 「Remote Control セッションに再接続できませんでした」473 「Remote Control セッションに再接続できませんでした」

362</h3>474</h3>

363 475 

364`claude --resume` または `claude --continue` で会話を再開すると、Claude Code はその会話に記録された Remote Control セッションに再接続します。このメッセージは、ネットワーク中断またはサーバーエラーなど、一時的な理由で再接続に失敗したことを意味します。そのため、Claude Code はリモートセッションがまだ存在するかどうかを確認できません。サーバーが前のセッションがもう存在しないことを確認すると、Claude Code はこのメッセージを表示せずに新しい Remote Control セッションを作成します。476`claude --resume` または `claude --continue` で会話を再開すると、Claude Code はその会話に記録された Remote Control セッションに再接続します。このメッセージは、ネットワーク中断またはサーバーエラーなど、一時的な理由で再接続に失敗したことを意味します。そのため、Claude Code はリモートセッションがまだ存在するかどうかを確認できません。

477 

478`/remote-control` を実行して接続を再試行するか、`claude --remote-control` で新しいセッションを開始して新しい Remote Control セッションを作成してください。ローカルセッションは Remote Control なしで実行を続けます。

479 

480<span id="resume-outcomes" />再開すると、このメッセージの代わりにこれらの結果のいずれかを取得することもできます。

481 

482* **サーバーが記録されたセッションが消えたことを報告するか、再接続レコードが別のアカウントを名前付けする**:Claude Code は会話の再接続レコードが言うことに従います。

483 * **レコードがサインインしているアカウントを名前付けする**:Claude Code は自動生成された名前で置換セッションを開始し、会話の以前のメッセージをそれから除外します。例えば、claude.ai または Claude アプリからセッションを削除した後、これを取得します。

484 * **レコードが別のアカウントを名前付けする**:Claude Code は会話の以前のメッセージなしで新しいセッションを開始し、記録されたセッションがまだ存在するかどうかに関わらずメッセージを表示せずに開始します。

485 * **レコードがセッションを所有していたアカウントを言わないか、Claude Code が保存されたサインインを読むことができない**:Claude Code はこのメッセージの代わりに [`Previous session is unavailable — run /remote-control to start a new one`](#previous-session-is-unavailable)を表示し、何も開始せず、会話からレコードを削除します。

486* **再開する前に Remote Control をオフにした**:Claude Code をホストしているアプリが、アプリが claude.ai セッションを所有していることを通知していない限り、Claude Code は CLI の [ステータスパネル](#check-connection-status)、VS Code 拡張機能、または [Agent SDK](/docs/ja/agent-sdk/overview)に基づいて構築されたホストから Remote Control をオフにしたときに再接続レコードを削除したため、再接続しません。所有アプリがそれをオフにした場合、Claude Code はレコードを保持し、再接続します。

487* **このマシン上の別の Claude Code がまだセッションを持っている**:`Remote Control not started here` で始まる通知が表示され、Claude Code は [再開されたセッションで Remote Control をオフのままにします](#resume-sessions-after-stopping-the-server)。そこで `/remote-control` を実行して移動してください。

488 

489<span id="reconnect-history" />v2.1.232 より前では、Claude Code はサーバーが記録されたセッションが消えたことを報告したときに異なる応答をしました。v2.1.227 から v2.1.231 まで、Claude Code はレコードがアカウントと一致した場合でも置換を開始することを拒否しました。v2.1.226 を通じて、Claude Code はレコードがアカウントと一致したかどうかに関わらず置換を開始し、v2.1.224 から v2.1.226 では、会話の以前のメッセージをアップロードせずに、そのマシンで署名されたアカウントの下で作成し、別のアカウントの下では決して作成しませんでした。v2.1.200 より前では、Claude Code は再接続の失敗後に新しいセッションを作成しました。

490 

491<h3 id="previous-session-is-unavailable">

492 「Previous session is unavailable — run /remote-control to start a new one」

493</h3>

494 

495Claude Code は前の Remote Control セッションを復元できず、自動的に新しいセッションを開始する代わりに停止しました。`claude --resume` または `claude --continue` で会話を再開した後、またはクロード Code が [切断後に自動的に再接続](/docs/ja/errors#remote-control-couldnt-refresh-your-login)した後、このメッセージが表示される場合があります。

365 496 

366ローカルセッションは Remote Control なしで実行を続けます。`/remote-control` を実行して接続を再試行するか、`--resume` なしで Claude Code を開始して新しい Remote Control セッションを作成してください。497`/remote-control` を実行して、現在のログインの下で新しい Remote Control セッションを開始してください。ローカルセッションは Remote Control なしで実行を続けます。関連メッセージ `Remote Control could not verify the signed-in account — run /remote-control to reconnect` は同じ修正を持っています。Claude Code はサインインしているアカウントが変更されたか、検証と再接続の間で読むことができなかった場合に表示します。`Previous session is unavailable` の後に Claude Code を再開する前に `/remote-control` を実行した場合、Claude Code は会話の以前のメッセージを新しいセッションから除外します。

498 

499再開時に、Claude Code は [その場所に新しいセッションを開始します](#resume-outcomes)。会話の再接続レコードがセッションを所有していたアカウントを名前付けしている場合のみです。サーバーは削除したセッションと別のアカウントが所有するセッションを同じ方法で報告するためです。v2.1.227 より前の Claude Code はそのアカウントを記録していなかったため、Claude Code は保存されたサインインを読むことができない場合はレコードをチェックできません。v2.1.232 より前の Claude Code は `Remote Control could not resume the previous session under the current login — run /remote-control to start fresh` を表示していました。[異なるケースセット](#reconnect-history)では。

500 

501<h3 id="remote-control-got-an-unexpected-server-response">

502 「Remote Control は予期しないサーバー応答を受け取りました」

503</h3>

367 504 

368v2.1.200 より前では、再接続の失敗により新しい Remote Control セッションが作成され、このメッセージが表示されず、claude.ai/code のセッションリストに余分なセッションが残されていました。505Remote Control サーバーはリクエストを受け入れましたが、リモートセッションを作成するか、その認証情報を取得する際に、このバージョンの Claude Code が読むことができない形式で応答しました。同じバージョンで再試行すると、同じ方法で失敗します。`claude update` を実行してから、`/remote-control` を実行して再接続してください。このメッセージは v2.1.225 で追加されました。

369 506 

370<h3 id="your-organization-requires-trusted-devices-for-remote-control-but-this-device-is-not-enrolled">507<h3 id="your-organization-requires-trusted-devices-for-remote-control-but-this-device-is-not-enrolled">

371 「組織は Remote Control に信頼できるデバイスを要求していますが、このデバイスは登録されていません」508 「組織は Remote Control に信頼できるデバイスを要求していますが、このデバイスは登録されていません」

372</h3>509</h3>

373 510 

374組織は [信頼できるデバイス](#trusted-devices)を有効にしており、このマシンはまだ登録されていません。Claude Code で `/login` を実行します。登録はサインインの一部として行われ、別の登録コマンドはありません。511組織は [信頼できるデバイス](#trusted-devices)を有効にしており、このマシンはまだ登録されていません。Claude Code で `/login` を実行してください。登録はサインインの一部として行われ、別の登録コマンドはありません。

375 512 

376<h3 id="session-expired-for-trusted-device-check">513<h3 id="session-expired-for-trusted-device-check">

377 「信頼できるデバイスチェックのセッションが期限切れです」514 「信頼できるデバイスチェックのセッションが期限切れです」

378</h3>515</h3>

379 516 

380サインインが 18 時間以上前です。Claude Code で `/login` を実行するか、claude.ai またはモバイルアプリが Face ID、Touch ID、Windows Hello、またはパスキーで確認するよう求めたときに確認します。[信頼できるデバイス](#trusted-devices)を参照してください。517サインインが 18 時間以上前です。Claude Code で `/login` を実行するか、claude.ai またはモバイルアプリが Face ID、Touch ID、Windows Hello、またはパスキーで確認するよう求めたときに確認してください。[信頼できるデバイス](#trusted-devices)を参照してください。

381 518 

382<h2 id="choose-the-right-approach">519<h2 id="choose-the-right-approach">

383 適切なアプローチを選択する520 適切なアプローチを選択する


398 関連リソース535 関連リソース

399</h2>536</h2>

400 537 

401* [Web 上の Claude Code](/docs/ja/claude-code-on-the-web): マシン上ではなく Anthropic が管理するクラウド環境でセッションを実行します538* [Web 上の Claude Code](/docs/ja/claude-code-on-the-web): マシン上ではなくクラウドでセッションを実行します。[クラウド環境](/docs/ja/cloud-environments)を通じて設定します

402* [Ultraplan](/docs/ja/ultraplan): ターミナルからクラウド計画セッションを起動し、ブラウザで計画を確認します539* [クロスセッションメッセージング](/docs/ja/cross-session-messaging): Claude が他のマシンまたは [Web 上の Claude Code](/docs/ja/claude-code-on-the-web) 上のセッションにメッセージを送信できるようにします

403* [チャネル](/docs/ja/channels): Telegram、Discord、または iMessage をセッションに転送して、Claude が離席中にメッセージに反応するようにします540* [チャネル](/docs/ja/channels): Telegram、Discord、または iMessage をセッションに転送して、Claude が離席中にメッセージに反応するようにします

404* [Dispatch](/docs/ja/desktop#sessions-from-dispatch): 電話からタスクをメッセージして、Desktop セッションを生成して処理できます541* [Dispatch](/docs/ja/desktop#sessions-from-dispatch): 電話からタスクをメッセージして、Desktop セッションを生成して処理できます

405* [認証](/docs/ja/authentication): `/login` をセットアップし、claude.ai の認証情報を管理します542* [認証](/docs/ja/authentication): `/login` をセットアップし、claude.ai の認証情報を管理します

Details

181 181 

182[Web 上の Claude Code](/docs/ja/claude-code-on-the-web)は、各セッションを分離された Anthropic 管理の仮想マシンで実行します。ネットワークプロキシはデフォルト許可リストを強制し、別のプロキシはサンドボックス内のリポジトリアクセスのためにスコープ付き認証情報を発行しながら、GitHub トークンをサンドボックスの外に保持します。組織が[セルフホスト環境](/docs/ja/self-hosted-environments)にルーティングするセッションは、代わりにユーザーがプロビジョニングするインフラストラクチャ上で実行され、分離、エグレス制御、および git 認証情報はデプロイメントの責任です。182[Web 上の Claude Code](/docs/ja/claude-code-on-the-web)は、各セッションを分離された Anthropic 管理の仮想マシンで実行します。ネットワークプロキシはデフォルト許可リストを強制し、別のプロキシはサンドボックス内のリポジトリアクセスのためにスコープ付き認証情報を発行しながら、GitHub トークンをサンドボックスの外に保持します。組織が[セルフホスト環境](/docs/ja/self-hosted-environments)にルーティングするセッションは、代わりにユーザーがプロビジョニングするインフラストラクチャ上で実行され、分離、エグレス制御、および git 認証情報はデプロイメントの責任です。

183 183 

184インフラストラクチャを自分でプロビジョニングせずに完全な VM 分離が必要な場合、またはローカル開発環境がないデバイスからタスクを委任する場合に、このアプローチを使用します。Claude サブスクリプションが必要です。Web インターフェースからセッションを起動する場合、サンドボックスがリポジトリをクローンできるように、接続された GitHub アカウントも必要です。`--cloud`を使用して CLI から起動する場合、GitHub が接続されていなければ、Claude Code は代わりに[ローカルリポジトリをバンドルしてアップロード](/docs/ja/claude-code-on-the-web#send-local-repositories-without-github)できます。プラン可用性と GitHub 認証オプションについては、[Web 上の Claude Code](/docs/ja/claude-code-on-the-web)を参照してください。184インフラストラクチャを自分でプロビジョニングせずに完全な VM 分離が必要な場合、またはローカル開発環境がないデバイスからタスクを委任する場合に、このアプローチを使用します。Claude サブスクリプションが必要です。Web インターフェースからセッションを起動する場合、サンドボックスがリポジトリをクローンできるように、接続された GitHub アカウントも必要です。`--cloud`を使用して CLI から起動する場合、Claude Code は代わりに[ローカルリポジトリをバンドルしてアップロード](/docs/ja/claude-code-on-the-web#send-local-repositories-without-github)できます。プラン可用性と GitHub 認証オプションについては、[Web 上の Claude Code](/docs/ja/claude-code-on-the-web)を参照してください。

185 185 

186<h2 id="enforce-isolation-across-an-organization">186<h2 id="enforce-isolation-across-an-organization">

187 組織全体で分離を強制する187 組織全体で分離を強制する

sandboxing.md +6 −0

Details

52 52 

53パネルでモードを選択すると、Claude Code はそれをプロジェクトのローカル設定 `.claude/settings.local.json` に保存します。これは現在のプロジェクトに適用されます。Claude Code はそこに設定を保存する際に、そのファイルをグローバル gitignore に追加します。すべてのプロジェクトでサンドボックスを有効化するには、ユーザー設定 `~/.claude/settings.json` で [`sandbox.enabled`](/docs/ja/settings-reference#sandbox-enabled) を `true` に設定します。組織内のすべての開発者にサンドボックス化を実施するには、[管理設定で実施](#enforce-sandboxing-with-managed-settings)を使用します。53パネルでモードを選択すると、Claude Code はそれをプロジェクトのローカル設定 `.claude/settings.local.json` に保存します。これは現在のプロジェクトに適用されます。Claude Code はそこに設定を保存する際に、そのファイルをグローバル gitignore に追加します。すべてのプロジェクトでサンドボックスを有効化するには、ユーザー設定 `~/.claude/settings.json` で [`sandbox.enabled`](/docs/ja/settings-reference#sandbox-enabled) を `true` に設定します。組織内のすべての開発者にサンドボックス化を実施するには、[管理設定で実施](#enforce-sandboxing-with-managed-settings)を使用します。

54 54 

551 つのセッションのみでサンドボックスを変更し、設定ファイルに書き込まないようにするには、Claude Code を [`--settings`](/docs/ja/settings#change-a-setting-for-one-session) で起動します。たとえば、このコマンドは、Claude がブロックされたコマンドをサンドボックス外で再試行できないサンドボックス化されたセッションを開始します。

56 

57```bash theme={null}

58claude --settings '{"sandbox": {"enabled": true, "allowUnsandboxedCommands": false}}'

59```

60 

55<Warning>61<Warning>

56 デフォルトでは、依存関係が不足しているか、プラットフォームがサポートされていないためにサンドボックスが起動できない場合、Claude Code は警告を表示してサンドボックス化なしでコマンドを実行します。これをハード失敗にするには、[`sandbox.failIfUnavailable`](/docs/ja/settings-reference#sandbox-failifunavailable) を `true` に設定します。これは、セキュリティゲートとしてサンドボックス化を必要とする管理デプロイメント向けです。62 デフォルトでは、依存関係が不足しているか、プラットフォームがサポートされていないためにサンドボックスが起動できない場合、Claude Code は警告を表示してサンドボックス化なしでコマンドを実行します。これをハード失敗にするには、[`sandbox.failIfUnavailable`](/docs/ja/settings-reference#sandbox-failifunavailable) を `true` に設定します。これは、セキュリティゲートとしてサンドボックス化を必要とする管理デプロイメント向けです。

57</Warning>63</Warning>

scheduled-tasks.md +15 −15

Details

8 8 

9スケジュール済みタスクを使用すると、Claude は一定の間隔でプロンプトを自動的に再実行できます。デプロイメントをポーリングしたり、PR を監視したり、長時間実行されるビルドをチェックバックしたり、後でセッション内で何かを実行するようにリマインダーを設定したりするために使用します。イベントが発生したときにポーリングする代わりに反応するには、[Channels](/docs/ja/channels) を参照してください。CI はセッションに直接失敗をプッシュできます。セッションが条件を満たすまで一定の間隔ではなくターンごとに動作し続けるようにするには、[`/goal`](/docs/ja/goal) を参照してください。9スケジュール済みタスクを使用すると、Claude は一定の間隔でプロンプトを自動的に再実行できます。デプロイメントをポーリングしたり、PR を監視したり、長時間実行されるビルドをチェックバックしたり、後でセッション内で何かを実行するようにリマインダーを設定したりするために使用します。イベントが発生したときにポーリングする代わりに反応するには、[Channels](/docs/ja/channels) を参照してください。CI はセッションに直接失敗をプッシュできます。セッションが条件を満たすまで一定の間隔ではなくターンごとに動作し続けるようにするには、[`/goal`](/docs/ja/goal) を参照してください。

10 10 

11タスクはセッションスコープです。現在の会話に存在し、新しい会話を開始すると停止します。`--resume` または `--continue` で再開すると、[有効期限切れ](#seven-day-expiry)になっていないタスクが復元されます。過去 7 日以内に作成された定期的なタスク、またはスケジュール済み時間がまだ経過していない 1 回限りのタスクです。セッションとは独立して存在する永続的なスケジューリングについては、[Routines](/docs/ja/routines) を使用して Anthropic 管理インフラストラクチャ上にルーチンを作成するか、[Desktop スケジュール済みタスク](/docs/ja/desktop-scheduled-tasks) をセットアップするか、[GitHub Actions](/docs/ja/github-actions) を使用してください。11タスクはセッションスコープです。現在の会話に存在し、新しい会話を開始すると停止します。`--resume` または `--continue` で再開すると、Claude Code は [有効期限切れ](#seven-day-expiry) になっていないタスクを復元します。ただし、[制限事項](#limitations) に記載されているタスクは除きます。セッションとは独立して存在する永続的なスケジューリングについては、[Routines](/docs/ja/routines) を使用して Anthropic 管理インフラストラクチャ上にルーチンを作成するか、[Desktop スケジュール済みタスク](/docs/ja/desktop-scheduled-tasks) をセットアップするか、[GitHub Actions](/docs/ja/github-actions) を使用してください。

12 12 

13<h2 id="compare-scheduling-options">13<h2 id="compare-scheduling-options">

14 スケジューリングオプションを比較する14 スケジューリングオプションを比較する

15</h2>15</h2>

16 16 

17Claude Code offers three ways to schedule recurring or one-off work:17Claude Code は、定期的または 1 回限りの作業をスケジュールするための 3 つの方法を提供します。

18 18 

19| | [Cloud](/docs/en/routines) | [Desktop](/docs/en/desktop-scheduled-tasks) | [`/loop`](/docs/en/scheduled-tasks) |19| | [Cloud](/docs/ja/routines) | [Desktop](/docs/ja/desktop-scheduled-tasks) | [`/loop`](/docs/ja/scheduled-tasks) |

20| :------------------------- | :---------------------------------- | :------------------------------------- | :------------------------------------------------------------------------- |20| :-------------- | :------------------------- | :------------------------------------- | :----------------------------------------------------- |

21| Runs on | Cloud, Anthropic-managed by default | Your machine | Your machine |21| 実行場所 | Cloud、デフォルトでは Anthropic 管理 | お客様のマシン | お客様のマシン |

22| Requires machine on | No | Yes | Yes |22| マシンの起動が必要 | いいえ | はい | はい |

23| Requires open session | No | No | Yes |23| オープンセッションが必要 | いいえ | いいえ | はい |

24| Persistent across restarts | Yes | Yes | Restored on `--resume`, with [exceptions](/docs/en/scheduled-tasks#limitations) |24| 再起動後も永続 | はい | はい | `--resume` で復元、[例外](/docs/ja/scheduled-tasks#limitations)あり |

25| Access to local files | No (fresh clone) | Yes | Yes |25| ローカルファイルへのアクセス | いいえ(新規クローン) | はい | はい |

26| MCP servers | Connectors configured per task | [Config files](/docs/en/mcp) and connectors | Inherits from session |26| MCP サーバー | タスクごとに設定されたコネクタ | [設定ファイル](/docs/ja/mcp)とコネクタ | セッションから継承 |

27| Permission prompts | No (runs autonomously) | Configurable per task | Inherits from session |27| 権限プロンプト | いいえ(自律的に実行) | タスクごとに設定可能 | セッションから継承 |

28| Customizable schedule | Via `/schedule` in the CLI | Yes | Yes |28| カスタマイズ可能なスケジュール | CLI の `/schedule` 経由 | はい | はい |

29| Minimum interval | 1 hour | 1 minute | 1 minute |29| 最小間隔 | 1 時間 | 1 分 | 1 分 |

30 30 

31<Tip>31<Tip>

32 Use **cloud tasks** for work that should run reliably without your machine. Use **Desktop tasks** when you need access to local files and tools. Use **`/loop`** for quick polling during a session.32 マシンなしで確実に実行する必要がある作業には**クラウドタスク**を使用します。ローカルファイルとツールへのアクセスが必要な場合は**デスクトップタスク**を使用します。セッション中の迅速なポーリングには\*\*`/loop`\*\*を使用します。

33</Tip>33</Tip>

34 34 

35<h2 id="run-a-prompt-repeatedly-with-/loop">35<h2 id="run-a-prompt-repeatedly-with-/loop">


237 237 

238* タスクは Claude Code が実行中でアイドル状態の場合にのみ実行されます。ターミナルを閉じるか、セッションを終了すると、タスクは実行を停止します。[セッションをバックグラウンドで実行する](/docs/ja/agent-view#from-inside-a-session)と、`/loop` タスクがバックグラウンドセッションに引き継がれ、ターミナルなしで実行を続けます。238* タスクは Claude Code が実行中でアイドル状態の場合にのみ実行されます。ターミナルを閉じるか、セッションを終了すると、タスクは実行を停止します。[セッションをバックグラウンドで実行する](/docs/ja/agent-view#from-inside-a-session)と、`/loop` タスクがバックグラウンドセッションに引き継がれ、ターミナルなしで実行を続けます。

239* 見落とされた実行のキャッチアップはありません。タスクのスケジュール済み時間が Claude が長時間実行されるリクエストでビジーの間に経過した場合、Claude がアイドル状態になったときに 1 回実行され、見落とされた間隔ごとに 1 回ではありません。239* 見落とされた実行のキャッチアップはありません。タスクのスケジュール済み時間が Claude が長時間実行されるリクエストでビジーの間に経過した場合、Claude がアイドル状態になったときに 1 回実行され、見落とされた間隔ごとに 1 回ではありません。

240* 新しい会話を開始すると、すべてのセッションスコープのタスクがクリアされます。`claude --resume` または `claude --continue` で再開すると、[有効期限切れ](#seven-day-expiry)になっていない定期的なタスク、およびスケジュール済み時間がまだ経過していない 1 回限りのタスクが復元されます。バックグラウンド Bash およびモニタータスクは再開時に復元されることはありません。240* 新しい会話を開始すると、すべてのセッションスコープのタスクがクリアされます。`claude --resume` または `claude --continue` でセッションを再開すると、Claude Code は `CronCreate` でスケジュールされたタスクを復元します。ただし、[有効期限切れ](#seven-day-expiry)になっている定期的なタスク、およびスケジュール済み時間がすでに経過している 1 回限りのタスクは除きます。[自分のペースで実行する `/loop`](#let-claude-choose-the-interval)は復元されないため、再度 `/loop` を実行して再開してください。バックグラウンド Bash およびモニタータスクは再開時に復元されることはありません。

241* [フィーチャーフラグ取得がオフ](/docs/ja/env-vars#features-that-need-feature-flag-fetching)の場合、Claude Code はセッション間で保持するよう要求したタスクをプロジェクトの `.claude` ディレクトリに保存します。そのディレクトリまたはその中のタスクファイルがシンボリックリンクの場合、Claude Code はタスクをスケジュールする代わりにエラーを返します。241* [フィーチャーフラグ取得がオフ](/docs/ja/env-vars#features-that-need-feature-flag-fetching)の場合、Claude Code はセッション間で保持するよう要求したタスクをプロジェクトの `.claude` ディレクトリに保存します。そのディレクトリまたはその中のタスクファイルがシンボリックリンクの場合、Claude Code はタスクをスケジュールする代わりにエラーを返します。

242 242 

243無人で実行する必要がある cron 駆動オートメーションの場合は、以下を使用してください。243無人で実行する必要がある cron 駆動オートメーションの場合は、以下を使用してください。

Details

43* `Marketplace "claude-plugins-official" not found`:`/plugin marketplace add anthropics/claude-plugins-official` でマーケットプレイスを追加してから、インストールを再試行してください。43* `Marketplace "claude-plugins-official" not found`:`/plugin marketplace add anthropics/claude-plugins-official` でマーケットプレイスを追加してから、インストールを再試行してください。

44* [プラグインがマーケットプレイスで見つかりません](/docs/ja/discover-plugins#install-plugins):プラグイン名を確認してください。44* [プラグインがマーケットプレイスで見つかりません](/docs/ja/discover-plugins#install-plugins):プラグイン名を確認してください。

45 45 

46インストール概要を確認してください。`Run /reload-plugins to activate.` と報告された場合、再起動なしで保留中の変更を適用してください:46インストール概要を確認してください。`Run /reload-plugins to activate.` と報告された場合、[プラグイン変更を再起動なしで適用](/docs/ja/discover-plugins#apply-plugin-changes-without-restarting)を参照して、現在のセッションでプラグインを有効化してください。

47 

48```text theme={null}

49/reload-plugins

50```

51 47 

52<h3 id="enable-in-cloud-sessions-and-shared-repositories">48<h3 id="enable-in-cloud-sessions-and-shared-repositories">

53 クラウドセッションと共有リポジトリで有効化する49 クラウドセッションと共有リポジトリで有効化する

self-hosted-environments.md +164 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# 自己ホスト環境

6 

7> 自分たちが管理するインフラストラクチャで Claude Code クラウドセッションを実行します。自己ホスト環境をセットアップし、ランナーをデプロイし、セッションを自分たちのコンピュートにルーティングします。

8 

9<Note>

10 自己ホスト環境は Team および Enterprise プランでパブリックベータ版であり、デフォルトではオフになっています。有効化パスと除外される内容については、[利用可能性と制限事項](#availability-and-limitations)を参照してください。

11</Note>

12 

13自己ホスト環境は、組織が運用するインフラストラクチャで Claude Code クラウドセッションを実行します。[クラウドセッション](/docs/ja/claude-code-on-the-web)は、開発者のマシン以外の場所で実行されるセッションです。開発者は claude.ai、モバイルおよびデスクトップアプリ、[`claude --cloud`](/docs/ja/claude-code-on-the-web#from-terminal-to-web)を使用したターミナル、および[スケジュール済みルーチン](/docs/ja/routines)から開始でき、デフォルトでは Anthropic のインフラストラクチャで実行されます。自己ホスト環境では、これらの同じセッションがネットワーク内で実行され、開発者体験は[利用可能性と制限事項](#availability-and-limitations)の違いとデプロイページの[既知の問題](/docs/ja/self-hosted-environments-deploy#known-issues-and-limitations)を除いて同じです。

14 

15チームがクラウドセッションを使用していない場合、ここで設定することはありません。ターミナルまたは IDE のセッションは常に開発者自身のマシンで実行されます。Claude Code を常時稼働しているマシンで実行し、他のデバイスから駆動したい場合は、[リモートコントロール](/docs/ja/remote-control)を使用してください。これは Pro および Max プランでも利用可能です。セットアップの準備ができたら、[クイックスタート](/docs/ja/self-hosted-environments-quickstart)に直接進んでください。セキュリティ体制を最初に確認したい場合は、[本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy)から始めてください。このページの残りの部分では、自己ホスティングの仕組みと、それを選択する時期について説明します。

16 

17<h2 id="how-self-hosted-environments-work">

18 自己ホスト環境の仕組み

19</h2>

20 

21自己ホスティングには 3 つの部分があります。

22 

23* **環境**: クラウドセッションを送信できる名前付きの宛先。組織は claude.ai 管理設定で環境を作成し、各環境はランナーのセットをグループ化します。

24* **ランナー**: ネットワーク内のホストで実行されるプログラム。ランナーはセッションを実行します。概念は自己ホスト CI ランナーと同じです。

25* **セッション**: 開発者が開始した 1 つの Claude Code タスク。

26 

27開発者がクラウドセッションを開始すると、セッション開始 UI に環境ピッカーが表示され、Anthropic ホスト環境と組織が作成した環境が一覧表示されます。組織の環境を選択すると、Anthropic のコントロールプレーンはセッションを環境のキューに配置し、ランナーがそれを要求し、開発者が選択したリポジトリをクローンし、ホストで Claude Code プロセスを開始して実行します。ランナーは設定した認証情報を使用して git ホストに認証します。[git の設定](/docs/ja/self-hosted-environments-deploy#configure-git)では、オプションについて説明しています。セッションはネットワーク内からの内部サービスに到達し、内部の場合は同じ方法で git ホストに到達します。Anthropic へのトラフィック、キューポーリング、セッションのイベントストリーム、およびモデル推論は、`api.anthropic.com`への送信 HTTPS であり、セッションが到達できるホストの短いリストは[ネットワーク要件](/docs/ja/self-hosted-environments-deploy#network-requirements)にあります。Anthropic はネットワークに接続することはありません。

28 

29<div style={{maxWidth: "640px", margin: "0 auto"}}>

30 <Frame>

31 <img src="https://mintcdn.com/claude-code/Y0sJ2uDoOVbOVZrQ/images/self-hosted-network-paths.svg?fit=max&auto=format&n=Y0sJ2uDoOVbOVZrQ&q=85&s=8056103fc1c5564c7f0ef219d260b99d" className="dark:hidden" alt="自己ホスト環境のアーキテクチャ図。ネットワーク境界内にはランナー、その内部の 2 つの Claude Code セッションプロセス、および git ホストが含まれており、api.anthropic.com の外側にはキュー、セッションストリーム、および推論があります。ランナーはキューをポーリングして git ホストに到達し、各セッションプロセスは独自のストリーム、推論、および git 接続を開き、すべての接続はネットワークからの送信であり、受信はありません。" width="680" height="320" data-path="images/self-hosted-network-paths.svg" />

32 

33 <img src="https://mintcdn.com/claude-code/Y0sJ2uDoOVbOVZrQ/images/self-hosted-network-paths-dark.svg?fit=max&auto=format&n=Y0sJ2uDoOVbOVZrQ&q=85&s=fec6aef3b0740d80eaf6d6a7000a2233" className="hidden dark:block" alt="自己ホスト環境のアーキテクチャ図。ネットワーク境界内にはランナー、その内部の 2 つの Claude Code セッションプロセス、および git ホストが含まれており、api.anthropic.com の外側にはキュー、セッションストリーム、および推論があります。ランナーはキューをポーリングして git ホストに到達し、各セッションプロセスは独自のストリーム、推論、および git 接続を開き、すべての接続はネットワークからの送信であり、受信はありません。" width="680" height="320" data-path="images/self-hosted-network-paths-dark.svg" />

34 </Frame>

35</div>

36 

37図の 2 つの Claude Code ボックスはセッションプロセスです。1 つのランナーが最大で設定容量まで 2 つのセッションを同時に実行しています。ランナーは一度に 1 つの[オーナー](#key-concepts)に対応し、最初のセッションを要求するときにそのオーナーにロックされるため、チェックアウトされたコードはオーナー間で混在しません。[ランナーのライフサイクル](#runner-lifecycle)では、このルールについて説明しています。

38 

39ランナーを自分で開始して実行し続けるか、ホストする[オートスケーリングオーケストレーター](/docs/ja/self-hosted-environments-configuration#on-demand-runners)(セッションがキューに入るときにランナーを開始する 2 番目のプロセス)を実行できます。各ランナーは作業が完了すると自動的に終了します。どちらの方法でも、環境を一度セットアップすると、サポートされているすべてのサーフェスのピッカーに表示されます。

40 

41<h2 id="availability-and-limitations">

42 利用可能性と制限事項

43</h2>

44 

45ロールアウトを計画する前に、これらを確認してください。

46 

47* **プラン**: Team および Enterprise 組織向けのパブリックベータ版。自己ホスト環境はデフォルトではオフになっています。[オーナー](/docs/ja/cloud-environments#organization-shared-environments)が[**クラウド環境**管理ページ](https://claude.ai/admin-settings/cloud-environments)で**自己ホスト環境を許可**をオンにします。これには、組織に対して[ウェブ上の Claude Code](/docs/ja/claude-code-on-the-web)が有効になっている必要があります。

48* **ゼロデータ保持**: [ゼロデータ保持](/docs/ja/zero-data-retention)が有効になっている組織では利用できません。

49* **モデル推論**: セッションは Anthropic API を使用し、推論は[Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry](/docs/ja/third-party-integrations)、または[LLM ゲートウェイ](/docs/ja/llm-gateway)を通じてルーティングできません。

50* **サーフェス**: [ウェブ上の Claude Code](/docs/ja/claude-code-on-the-web)、モバイルおよびデスクトップアプリ、[スケジュール済みルーチン](/docs/ja/routines)、およびターミナルから開始されたセッション([`claude --cloud`](/docs/ja/claude-code-on-the-web#from-terminal-to-web)または[`--environment`ディスパッチ](/docs/ja/self-hosted-environments-testing#run-the-test-loop)を使用)は、自己ホスト環境で実行できます。[Claude Tag](https://claude.com/docs/claude-tag/overview)セッションもそれらで実行できますが、Claude はまだそれらのセッションで[アクセスバンドル](https://claude.com/docs/claude-tag/concepts/glossary#access-bundle)を使用できません。[Claude Security](/docs/ja/claude-security)および[Code Review](/docs/ja/code-review)セッションはまだそれらにルーティングされません。これら 2 つのサーフェスのサポートは別途提供されます。

51* **リポジトリ**: セッションは GitHub からリポジトリをチェックアウトします。[GitHub 認証オプション](/docs/ja/claude-code-on-the-web#github-authentication-options)を参照してください。

52* **請求**: 自己ホスト環境のセッションは、Anthropic ホスト環境のセッションと同じ方法で組織の Claude Code 使用量を消費します。

53 

54<h2 id="why-self-host">

55 自己ホスティングを選ぶ理由

56</h2>

57 

58ほとんどのチームは、実行または保守するインフラストラクチャが不要な Anthropic ホスト環境の方が適しています。自己ホスティングは、ネットワーク、ツール、またはコンプライアンス要件により、セッション実行を管理するインフラストラクチャに保つ必要があるチーム向けです。その場合、運用上の所有権を計画してください。ランナーイメージを構築および保守し、フリートを運用し、ネットワークを制御します。

59 

60その代わりに、自己ホスティングはネットワークアクセス、カスタムツール、およびコンプライアンス制御を提供します。

61 

62* **ネットワークアクセス**: セッションはネットワーク内で実行され、内部サービス、データベース、およびレジストリに到達でき、それらをパブリックインターネットに公開する必要がありません。

63* **カスタムツール**: コンパイラ、SDK、および内部 CLI をランナーイメージにプリインストールして、すべてのセッションが構築の準備ができた状態で開始されるようにします。

64* **コンプライアンス**: リポジトリのチェックアウトとビルドアーティファクトは、管理するインフラストラクチャに保たれます。セッションコンテンツは、モデル推論のために`api.anthropic.com`に送信されます。

65 

66<h2 id="environments-runners-and-sessions">

67 環境、ランナー、およびセッション

68</h2>

69 

70環境は claude.ai 管理設定の**クラウド環境**ページで管理されます。ランナーは、自分のインフラストラクチャで開始および管理するプロセスです。

71 

72<h3 id="key-concepts">

73 主要な概念

74</h3>

75 

76これらの用語は自己ホストページ全体に表示されます。

77 

78| 用語 | 説明 |

79| :------- | :-------------------------------------------------------------------------------------------------------------------------------------- |

80| 環境 | claude.ai 設定で作成された、ランナーの名前付きグループ。セッションは個別のランナーではなく、環境にルーティングされます。 |

81| 環境シークレット | ランナーが環境に認証および登録するために使用する単一の共有認証情報。環境作成時に 1 回表示され、管理 UI では**環境キー**とラベル付けされます。 |

82| ランナー | デプロイする長時間実行プロセス。ランナーは環境に登録し、ランナートークンを受け取り、セッションをポーリングします。 |

83| セッション | claude.ai、モバイルアプリ、またはスケジュール済みルーチンやエージェントなどの別の Anthropic サーフェスから開始された 1 つの Claude Code タスク。各セッションは、ランナーが生成する子 Claude Code プロセスとして実行されます。 |

84 

85API フィールド、トークンクレーム、およびメトリック名では、環境は`pool`として表示され、環境 ID は`pool_id`です。[リファレンス](/docs/ja/self-hosted-environments-reference)は 2 つのスペルをマップします。これには、非推奨の`pool`フラグ名も含まれます。

86 

87ランナーは一度に 1 つのオーナーに対応します。ランナーが最初に取得するセッションはランナーをそのセッションのオーナーにロックし、ランナーはそのオーナーのセッションのみを実行し、設定容量まで実行します。オーナーが誰であるかは、セッションがどのように開始されたかによって異なります。

88 

89* **ユーザーが開始するセッション**: オーナーはそのユーザーのアカウントです。

90* **Claude Tag チャネルセッション**: Claude はそれらをユーザーアカウントなしで実行するため、オーナーはセッションを開始した[Claude Tag エージェント](https://claude.com/docs/claude-tag/concepts/glossary#agent-identity)です。そのエージェントが開始するすべてのチャネルセッションは同じオーナーを持ち、Slack メッセージを送信した人です。そのため、`--capacity`が 1 より大きい場合、または正の`--drain-grace-sec`で実行する場合、ランナーはそれにロックされたセッションを提供し、異なる人が開始したセッションを実行します。ユーザーにロックされたランナーはこれらを取得しません。Claude Tag エージェントにロックされたランナーはユーザーのセッションを取得しません。

91 

92したがって、最小フリートサイズは、一度にアクティブであると予想されるオーナーの数です。ユーザーと Claude Tag エージェントをカウントします。

93 

94<h3 id="session-lifecycle">

95 セッションのライフサイクル

96</h3>

97 

98開発者がセッションを開始して環境を選択すると、Anthropic のコントロールプレーンはセッションを環境のキューに配置します。そこから。

99 

1001. 空き容量のあるランナーがセッションを要求し、それに対するリースを保持します。

1012. ランナーはリポジトリを作業ディレクトリにクローンし、子 Claude Code プロセスを生成します。

1023. 子はランナーがポーリングを続ける間、HTTPS 経由でイベントをストリーミングします。各ポーリングはリースをリフレッシュし、ハートビートとしても機能します。

1034. ランナーが約 60 秒間ポーリングを停止すると、サーバーはセッションを別のランナーのキューに戻します。

104 

105ランナーは各ポーリングリクエストに 10 秒を与えます。リクエストがタイムアウト、失われた、またはランナーが解析できない応答を取得した場合、ランナーはライブセッションの提供を続け、次のスケジュール済みポーリングを待つ代わりに、1 ~ 2 秒後に再試行します。たとえば、独自のページでポーリングに応答するインターセプティングプロキシは、ランナーが解析できない応答を生成します。別のリクエストが失敗するたびに、ランナーは次の再試行前のギャップを 2 倍にし、最大 20 秒まで、リースの有効期限が近づくたびにギャップを短縮します。

106 

107<h3 id="runner-lifecycle">

108 ランナーのライフサイクル

109</h3>

110 

111ランナーが最初に取得するセッションはランナーをそのセッションのオーナーにロックし、ランナーはそのオーナーの最大`--capacity`個の同時セッションを実行します。ランナーがアクティブなセッションを持ち、シャットダウン信号を受け取っていない、または退職時間に達していない間、ランナーはロックされたオーナーのキューに入った作業を要求し続けます。完了後の動作は[`--drain-grace-sec`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)によって異なります。

112 

113* **デフォルトの`0`**: ランナーはアクティブなセッションが完了するとすぐに終了し、ポーリングを続けません。デプロイされたオーケストレーター(Kubernetes など)は、新しいディスクで再起動でき、任意のオーナーに対応する準備ができています。

114* **正の値**: ランナーは終了する前に、ロックされたオーナーのキューをその秒数ポーリングし続けます。

115 

116このライフサイクルは、ランナーがオーナー間でディスク状態を削除する必要なく、各オーナーのチェックアウトされたコードを分離します。

117 

118インフラストラクチャがランナーを停止する方法によって、`--retire-at`が必要かどうかが決まります。`SIGTERM`を配信するキルには、フラグは不要です。ランナーは[シャットダウンタイミング](/docs/ja/self-hosted-environments-deploy#shutdown-timing)で説明されているようにドレインするか、[`--defer-shutdown-max-min`](/docs/ja/self-hosted-environments-deploy#defer-the-drain-past-the-first-signal)を設定するときに既に保持しているセッションの提供を続けます。インフラストラクチャが代わりに既知の壁時計時刻でホストを破棄する場合、またはシグナルなしで、またはサンドボックスライフタイムキャップやスポットインスタンス再利用などのドレインに短すぎるグレースピリオドで、`--retire-at <epoch-seconds>`を渡します。その時刻の数分前に設定します。退職時刻に。

119 

1201. ランナーは新しい作業を受け取るのを停止します。

1212. ランナーは、[`--release-idle-session-min`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)フラグが使用する同じリリースパスを通じて各アクティブセッションをリリースするため、セッションはユーザーが次のメッセージを送信するときに新しいランナーで再開されます。ランナーが各セッションをリリースするタイミングはその状態によって異なります。

122 * ランナーはターン中のセッションをそのターンが完了するとすぐにリリースします。

123 * ターンが完了し、バックグラウンドタスクが実行されたままの場合、ランナーは最大 60 秒待機してから、まだ実行中でもセッションをリリースします。タスクが完了しているが、その結果を読む後続のターンがまだ実行されていない場合、ランナーはそのターンが完了するまでセッションを保持し、[`SELF_HOSTED_RUNNER_BG_RESULT_GRACE_MS`](/docs/ja/self-hosted-environments-reference#environment-variable-only-settings)以上待機しません。そのターンが開始されるまで。

1243. ランナーはすべてのセッションがリリースされると、0 で終了します。

125 

126キルを超えるターンはまだ失われています。[シャットダウンタイミング](/docs/ja/self-hosted-environments-deploy#shutdown-timing)では、マージンのサイジングについて説明しています。`--retire-at`がない場合、シグナルレスホストキルはクラッシュと区別できません。コントロールプレーンはクリーンリリースではなく、失われたワーカーを記録し、セッションは別のランナーにキューに戻されます。

127 

128<h3 id="network-paths">

129 ネットワークパス

130</h3>

131 

132ランナーとそのセッションはいくつかの種類の送信接続を行い、Anthropic からのインバウンド接続は不要です。

133 

134* **コントロールプレーン**: ランナーは`api.anthropic.com`をポーリングして作業を取得し、セットアップ進捗とエラーイベントを投稿します。すべて送信 HTTPS です。ポーリングはランナーのハートビートとしても機能します。

135* **SCM コネクタ**: オプションのオーケストレーター[SCM コネクタ](/docs/ja/self-hosted-environments-reference#scm-connector-flags)トンネルは唯一の WebSocket 接続です。

136* **Git**: ランナーは HTTPS または SSH 経由で git ホストからクローンおよびプッシュし、デプロイが提供する認証情報で認証されます。[git の設定](/docs/ja/self-hosted-environments-deploy#configure-git)では、セッションごとにミントされた認証情報や[Anthropic git プロキシ](/docs/ja/self-hosted-environments-deploy#use-the-anthropic-git-proxy)(git を`api.anthropic.com`経由でルーティング)を含むオプションについて説明しています。

137* **セッション子**: 子 Claude Code プロセスはセッションのイベントストリームを`api.anthropic.com`に保持し、モデル推論とセッション中に実行される git コマンドの送信呼び出しを行います。完全な送信リストについては、[ネットワーク要件](/docs/ja/self-hosted-environments-deploy#network-requirements)を参照してください。[上記の図](#how-self-hosted-environments-work)はこれらのパスを示しており、オプションの SCM コネクタを除きます。

138 

139モデル推論は Anthropic API を使用します。コントロールプレーンは各セッションに API エンドポイントを配信し、セッションは Anthropic が発行したセッションスコープの OAuth トークンで認証するため、自己ホスト環境では推論を[Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry](/docs/ja/third-party-integrations)、または[LLM ゲートウェイ](/docs/ja/llm-gateway)を通じてルーティングできません。

140 

141企業の送信プロキシはサポートされています。ランナーとオプションの[オートスケーリングオーケストレーター](/docs/ja/self-hosted-environments-configuration#on-demand-runners)は、[ネットワーク設定](/docs/ja/network-config)で説明されているプロキシと mTLS 環境変数(`HTTPS_PROXY`や`NO_PROXY`など)を尊重します。各プロセスの環境で設定します。変数はコントロールプレーン呼び出し、オーケストレーターの[SCM コネクタ](/docs/ja/self-hosted-environments-reference#scm-connector-flags)WebSocket、および HTTPS リモートの組み込みクローンをカバーし、セッションはランナーからそれらを継承します。セッションストリーミングは HTTPS 経由のサーバー送信イベントを使用するため、パス内のプロキシは応答をバッファリングしてはいけません。

142 

143プロキシが`Proxy-Authorization`ヘッダーも必要とする場合、ランナーはプロキシへの各接続にそれを追加できます。[送信プロキシへの認証](/docs/ja/self-hosted-environments-deploy#authenticate-to-an-egress-proxy)を参照してください。

144 

145<h2 id="what-stays-on-your-infrastructure">

146 インフラストラクチャに保たれるもの

147</h2>

148 

149リポジトリのチェックアウト、ビルドアーティファクト、シークレット、およびセッションが作成または変更するファイルは、プロビジョニングしたマシンに保たれます。会話自体(プロンプト、応答、ツール結果を含む)は、モデル推論のために`api.anthropic.com`に送信され、Anthropic はセッショントランスクリプトを保存して、別の[サポートされているサーフェス](#availability-and-limitations)からセッションを再開できるようにします。

150 

151自己ホスト環境はセッション実行をネットワークに移動させます。コントロールプレーンは Anthropic ホスト型のままです。セッションオーケストレーション、キューイング、および claude.ai インターフェースは Anthropic のインフラストラクチャで実行され続けます。

152 

153<h2 id="get-started">

154 開始する

155</h2>

156 

157自己ホスト環境ページは、実行している内容によって整理されています。

158 

159* [クイックスタート](/docs/ja/self-hosted-environments-quickstart): Claude Code をインストールし、環境を作成し、ランナーを開始し、最初のセッションをルーティングします。

160* [本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy): セキュリティ強化、ネットワーク送信、git 認証情報、Kubernetes および Compose レシピ、既知の問題、およびトラブルシューティング

161* [セッションをカスタマイズ](/docs/ja/self-hosted-environments-configuration): セッションごとの認証情報、ライフサイクルフック、オンデマンドランナー、MCP サーバー、および権限のためのラッパースクリプト

162* [エンドツーエンドをテスト](/docs/ja/self-hosted-environments-testing): ランナーイメージをプロモーション前に検証する CI スモークテスト

163* [リファレンス](/docs/ja/self-hosted-environments-reference): すべての CLI フラグ、環境変数、メトリック、およびヘルスエンドポイント

164* [セッション ID を検証](/docs/ja/self-hosted-environments-identity): 独自のサービスからセッショントークンを検証してから、アクセスを許可します。

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# セルフホストされた環境でセッションをカスタマイズする

6 

7> ラッパースクリプト、ライフサイクルフック、オンデマンドランナースポーニングを使用して、セルフホストされた環境セッションをセッションごとの認証情報、ライフサイクルフック、オンデマンドランナースポーニングでカスタマイズします。

8 

9<Note>

10 セルフホストされた環境は Team および Enterprise プランでパブリックベータ版です。[Owner](/docs/ja/cloud-environments#organization-shared-environments) が [**Cloud environments** 管理ページ](https://claude.ai/admin-settings/cloud-environments) で **Allow self-hosted environments** をオンにすることで有効になります。このページは動作するランナーを前提としています。セットアップについては [クイックスタート](/docs/ja/self-hosted-environments-quickstart) を、フリートレシピについては [本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy) を参照してください。

11</Note>

12 

13[セルフホストされた環境](/docs/ja/self-hosted-environments) は、デプロイするランナープロセスによって実行される独自のインフラストラクチャ上で Claude Code [クラウドセッション](/docs/ja/claude-code-on-the-web) を実行します。設定がない場合、そのランナーはセッションのリポジトリをクローンし、Claude Code をスポーンし、クリーンアップします。このページはランナーを操作するプラットフォームエンジニア向けです。デフォルトが適さない場合の拡張ポイント、セッションごとの認証情報プロビジョニングからチェックアウト全体の置き換えまでをカバーしています。ラッパーとフックはランナーホスト上の実行可能ファイルとして実行され、Linux または macOS であり、このページの例は POSIX シェルを想定しています。

14 

15このページのいくつかのフック環境変数は `pool` を使用しています(例:`CLAUDE_RUNNER_POOL_ID`)。CLI フラグと環境変数名は `environment` を使用しています(例:`--environment-secret-file`)。

16 

17<h2 id="wrapper-scripts">

18 ラッパースクリプト

19</h2>

20 

21各セッションがランナー自体では実行できないセットアップが必要な場合、ラッパースクリプトを使用します。セッション作成者にスコープされた短期認証情報のプロビジョニング、環境固有のシークレットのエクスポート、言語ツールチェーンの準備、または子プロセスの周囲のリソース制限の適用などです。ランナーはセッションごとに 1 回、Claude Code バイナリの代わりにラッパーを起動します。ラッパーを終了するには、`$CLAUDE_RUNNER_CLAUDE_BIN`(ランナー自体のバイナリ)に `exec` することで、シグナルと終了コードが正しく伝播します。

22 

23ランナーを起動するときに `--exec-path` または `SELF_HOSTED_RUNNER_EXEC_PATH` をラッパーに指定します。

24 

25```bash theme={null}

26claude self-hosted-runner --environment-secret-file /etc/claude/environment-secret --exec-path /etc/claude/session-wrapper.sh

27```

28 

29ランナーはラッパーの環境に以下を設定します。

30 

31| 変数 | 説明 |

32| :---------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

33| `CLAUDE_CODE_SESSION_ACCESS_TOKEN` | セッション JWT。プレフィックス `sk-ant-cc-` が付きます。その `act` クレームはセッション作成者を識別し、作成サーフェスが記録した場合、作成者のメールとアップストリーム ID プロバイダーサブジェクトを含みます。値はスポーン時のトークンです。更新はこどもの stdin を介して到着するため、ラッパーは初期値のみを見ます。[セッション ID を検証する](/docs/ja/self-hosted-environments-identity) を参照してください。 |

34| `CCR_SESSION_ACCOUNT_EMAIL` | セッション作成者のメール。ランナーによってトークンの `act.email` クレームから署名検証なしで事前抽出されます。ラベリングなどに適しています。メールが認証情報の発行をゲートする場合、トークンを検証し、代わりにクレームから読み取ります。[セッション作成者にスコープされた認証情報をプロビジョニングする](#provision-credentials-scoped-to-the-session-creator) を参照してください。トークンが作成者メールを含まない場合は設定されません。個人識別情報として扱います。 |

35| `CLAUDE_RUNNER_CLIENT_PLATFORM` | セッションを作成したクライアントサーフェス(`web_claude_ai`、`desktop_app`、`ios`、`claude_code_cli`、`scheduled_trigger` など)。Anthropic はセッション作成時に値を 1 回記録するため、ラッパーとすべてのライフサイクルフックは同じ値を見ます。採用分析とラベリングにのみ使用し、認可シグナルとしては使用しないでください。セッションに記録または認識されたサーフェスがない場合は設定されないため、`set -u` の下で `${CLAUDE_RUNNER_CLIENT_PLATFORM:-}` として参照してください。Claude Code v2.1.229 以降が必要です。 |

36| `CLAUDE_RUNNER_CLAUDE_BIN` | ランナー自体の Claude Code バイナリへの絶対パス。`exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@"` でラッパーを終了して、インストールパスをハードコードせずにピン留めされたバイナリに引き渡します。 |

37| `CLAUDE_CODE_REMOTE_SESSION_ID` | タグ付き `cse_...` 形式のセッション ID。これは [ライフサイクルフック](#lifecycle-hooks) が `session_...` 形式の `CLAUDE_RUNNER_SESSION_ID` として見るのと同じセッションです。UUID 変数は両方で一致し、`cse_` プレフィックスを `session_` に置き換えるとセッション URL に表示される ID が得られます。 |

38| `CLAUDE_CODE_REMOTE_SESSION_UUID` | 正規 UUID 形式の同じセッション ID。UUID をキーとするシステム用です。 |

39| `CLAUDE_SESSION_INGRESS_TOKEN_FILE` | 現在のセッション JWT を保持する、セッションごとのファイルへの絶対パス。トークン更新全体で最新に保たれます。シェルサブプロセスは、ユーザーがセッションに追加した添付ファイルをダウンロードするときに、その `Authorization` ヘッダーに対して読み取ります。`exec` は変数を自動的に保持します。子の環境を再構築するラッパーは変数を引き継ぐ必要があります。そうしないと、添付ファイルのダウンロードが静かに停止します。 |

40| `CLAUDE_CONFIG_DIR` | セッションごとの Claude 設定ディレクトリ。ランナーが起動時にキャプチャするランナーホストの設定のスナップショットからセッション開始時に書き込まれます。[権限とツール承認](#permissions-and-tool-approval) を参照してください。このディレクトリへの書き込みはこのセッションに分離されます。 |

41| `ANTHROPIC_BASE_URL` | こどもが使用する API ベース URL。コントロールプレーンによってセッションごとに配信され、通常は `https://api.anthropic.com` です。オーバーライドしないでください。セッションの推論認証情報は Anthropic が発行した OAuth トークンであり、他のプロバイダーは受け入れないため、セルフホストされた環境での推論は他の場所にルーティングできません。 |

42| `CLAUDE_CODE_OAUTH_TOKEN` | こどもが モデル推論に使用する短期 OAuth アクセストークン。モデル推論とファイルアップロードのみにスコープされ、約 30 分の有効期限があります。ランナーは有効期限前に再発行し、こどもの stdin を介して更新を配信するため、[stdin を接続したままにしない](#keep-stdin-and-file-descriptor-3-attached) ラッパーは初期値のみを見ます。組織の IP 許可リストに依存してこのトークンの使用を制限しないでください。約 30 分間リークした場合に使用可能なままのベアラー認証情報として扱い、ログに記録したり、ディスクに書き込んだり、セッションコンテナの外に転送したりしないでください。 |

43 

44ラッパーはこどもの管理環境の残りの部分も継承します。これには、サーバーが提供する環境変数が含まれます。`exec` はすべてを自動的に伝播します。ラッパーが別の方法でこどもをスポーンする場合、完全な環境を転送します。

45 

46<h3 id="keep-stdin-and-file-descriptor-3-attached">

47 stdin とファイルディスクリプタ 3 を接続したままにする

48</h3>

49 

50こどもの stdin はランナーのコントロールチャネルです。トークン更新とセッション終了シグナルがそこに到着します。ランナーはファイルディスクリプタ 3 でパイプも開き、こどものアクティビティシグナルを読み取ってアイドルおよびスタートアップタイムアウトを駆動します。プレーンな `exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@"` は両方を自動的に保持します。

51 

52ラッパーが裸の `&` でこどもをバックグラウンドにする場合、こどもの stdin が切断されます。セッションは初期 OAuth トークンの約 30 分の有効期限が切れるまで健全に見えますが、その後すべての API 呼び出しが `401 authentication_error` で失敗します。ラッパーがこどもをバックグラウンドにする必要がある場合(例えば、ティアダウントラップを生かしておくため)、stdin をファイルディスクリプタ 4 以上に保存し、明示的に再接続します。

53 

54```bash theme={null}

55exec 4<&0

56"$CLAUDE_RUNNER_CLAUDE_BIN" "$@" <&4 4<&- &

57CHILD=$!

58trap 'teardown' EXIT

59wait "$CHILD"

60```

61 

62ラッパーでファイルディスクリプタ 3 を閉じたり再利用したりしないでください。こどもの stdout と stderr をリダイレクトするのは問題ありません。

63 

64<h3 id="provision-credentials-scoped-to-the-session-creator">

65 セッション作成者にスコープされた認証情報をプロビジョニングする

66</h3>

67 

68`decode-token` サブコマンドを使用してセッション JWT からクレームを読み取ります。引数、`CLAUDE_CODE_SESSION_ACCESS_TOKEN`、または stdin からトークンを読み取ります(この順序で)。[セッション内のトークンを検証する](/docs/ja/self-hosted-environments-identity#verify-the-token-inside-the-session) を参照して、何をチェックするかを確認してください。以下の例は作成者 ID をデコードし、短期 AWS 認証情報と交換し、Claude Code に exec します。

69 

70```bash theme={null}

71#!/bin/bash

72# 安定した Anthropic ユーザー ID をキーにし、人間の作成者を要求します。

73CREATOR_SUB=$("$CLAUDE_RUNNER_CLAUDE_BIN" self-hosted-runner decode-token \

74 | jq -re '.act.sub // "" | select(startswith("user:"))') \

75 || { echo "decode-token: verification failed or no human creator" >&2; exit 1; }

76 

77creds=$(your-sts-helper assume-role --subject "$CREATOR_SUB") \

78 || { echo "credential exchange failed" >&2; exit 1; }

79eval "$creds"

80 

81exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@"

82```

83 

84抽出されたクレームが認可決定をゲートする場合、`jq -r` ではなく `jq -re` を使用して、不在のクレームが下流に文字列 `null` を渡す代わりにゼロ以外で終了するようにします。組織のサービス ID(ボットおよびエージェントセッションなど)によって作成されたセッションは、`user:` サブジェクトではなく `agent:` サブジェクトを持つため、この例はそれらを拒否します。環境がそれらのセッションを提供する場合、ラッパーが終了する代わりにデフォルト認証情報にフォールバックするかどうかを明示的に決定します。認証情報交換が SSO サブジェクトまたはメールが必要な場合、`.act.attested_by.sub` または `.act.email` を読み取り、それらの不在を処理します。トークンは作成サーフェスが記録した場合にのみそれらを持ち、[CLI ディスパッチセッション](/docs/ja/self-hosted-environments-testing#run-the-test-loop) は両方を欠く可能性があります。完全なクレーム参照とランナーの外のサービスからの検証については、[セッション ID を検証する](/docs/ja/self-hosted-environments-identity) を参照してください。

85 

86<h2 id="lifecycle-hooks">

87 ライフサイクルフック

88</h2>

89 

90ライフサイクルフックは、ランナーのセッションごとのパイプラインのステージを独自のスクリプトに置き換えます。`--hooks-dir <path>` または `SELF_HOSTED_RUNNER_HOOKS_DIR` を使用して、ランナーをフックのディレクトリに指定します。ランナーは既知の名前を持つ実行可能ファイルを探します。存在しないフックはすべて組み込み動作にフォールスルーするため、必要なものだけを記述します。フックはランナー自身の権限で実行され、セッション子プロセスはその UID を共有するため、フックディレクトリを読み取り専用でマウントするか、イメージにベイクして、セッションコードが変更できないようにしてください。[強化セクション](/docs/ja/self-hosted-environments-deploy#harden-your-deployment)を参照してください。

91 

92これらのフックは、[Claude Code フック](/docs/ja/hooks)(セッション内で実行される)とは異なります。ライフサイクルフックはランナー上で、セッションの周囲で実行されます。

93 

94<h3 id="checkout">

95 checkout

96</h3>

97 

98リポジトリごとに 1 回実行され、ランナーの組み込みクローンとフェッチの代わりになります。フックを使用して、読み取り専用ミラーからクローンしたり、アーカイブからワーキングツリーをシードしたり、セッションごとの git 認証を適用したりします。ランナーは以下を設定します。

99 

100| 変数 | 説明 |

101| :--------------------------------- | :------------------------------------------------------------------------------------ |

102| `CLAUDE_RUNNER_REPO_URL` | クローンするリポジトリ URL。`--git-host-rewrite` と `--git-ssh-rewrite` が適用された後 |

103| `CLAUDE_RUNNER_REPO_REF` | チェックアウトするリビジョン。ブランチ、タグ、またはコミット SHA。セッションがリクエストしたとおり。空の場合はリポジトリのデフォルトブランチ |

104| `CLAUDE_RUNNER_CHECKOUT_PATH` | ワーキングツリーを配置する必要がある絶対パス |

105| `CLAUDE_RUNNER_SESSION_ID` | ログと相関のための `session_...` 形式のセッション ID |

106| `CLAUDE_RUNNER_SESSION_UUID` | 正規 UUID 形式の同じセッション ID |

107| `CLAUDE_RUNNER_API_BASE_URL` | セッションスコープの呼び出し用の Anthropic API ベース URL |

108| `CLAUDE_RUNNER_CLIENT_PLATFORM` | セッションを作成したクライアント表面。`web_claude_ai`、`desktop_app`、`ios` など。セッションに記録または認識された表面がない場合は未設定 |

109| `CLAUDE_CODE_SESSION_ACCESS_TOKEN` | セッションスコープの API 呼び出し用のセッションアクセストークン |

110 

111スクリプトは `CLAUDE_RUNNER_CHECKOUT_PATH` にワーキングツリーを残し、リクエストされたリビジョンでチェックアウトする必要があります。デタッチド HEAD は問題ありません。ランナーはその上にセッションのワーキングブランチを作成します。ランナーはその後、パスに `.git` が含まれていることを確認します。フックが Perforce やアンパックされたタールボールなどの非 git ソースを具体化する場合は、ランナーの環境で `CLAUDE_RUNNER_SKIP_GIT_VERIFY=1` を設定して、そのチェックをスキップしてください。ワーキングブランチの作成と結果のプッシュなどの git ベースのフローには git チェックアウトが必要なため、非 git ツリーから結果をエクスポートするには [`post-session` フック](#post-session)を使用してください。

112 

113ランナーは git 認証情報をフックに渡しません。代わりに、セッションの ID からセッションごとのクローン認証情報を発行します。`CLAUDE_RUNNER_API_BASE_URL` の下の JWKS エンドポイントに対して標準 JWT ライブラリを使用して `CLAUDE_CODE_SESSION_ACCESS_TOKEN` を検証します。これは [Verify the token from your service](/docs/ja/self-hosted-environments-identity#verify-the-token-from-your-service) で説明されています。その後、認証情報サービスがトークンの `act` クレーム内の ID に対して短期間のクローン認証情報を発行します。`CLAUDE_RUNNER_CLAUDE_BIN` はチェックアウトフック環境では設定されていないため、`decode-token` サブコマンドはここでは利用できません。SSH エージェント、認証情報ヘルパー、`.netrc` など、ホストが既に持っている git 認証にフォールバックすることもオプションです。

114 

115フックが 0 以外で終了するか、0 で終了しても使用可能なチェックアウトを残さない場合、ランナーが実行する処理はリポジトリによって異なります。

116 

117* **セッションが結果をプッシュするリポジトリ**:ランナーはセッションを失敗させ、0 以外の終了時にスクリプトの stderr の末尾をユーザーに表示します。

118* **セッションが読み取り専用のリポジトリ**(実行中のセッションに追加されたリポジトリなど):ランナーは失敗の詳細を含む `[runner:warn]` 行をログに記録し、`Skipped` ステップをセッションにポストし、フックがチェックアウトパスに残したものを削除し、残りのリポジトリで続行します。ランナーがパスをすぐに削除できない場合、セッション終了時に削除を再試行します。スキップによってセッションにリポジトリがまったくなくなった場合、ランナーはとにかくセッションを失敗させます。

119 

120v2.1.228 より前は、ランナーはどのリポジトリでもフック失敗時にセッションを失敗させていたため、フックが提供できない読み取り専用リポジトリは、セッションが再開される新しいランナーのたびに再度セッションを失敗させていました。

121 

122ランナーはセッション終了後、チェックアウトパスを削除します。

123 

124<h3 id="post-session">

125 post-session

126</h3>

127 

128セッションごとに 1 回実行され、Claude Code 子プロセスが終了した後、ランナーがワークスペースを破棄する前に実行されます。このフックはコミットされていない作業を保存する唯一のチャンスです。`--capacity` が 1 より大きい場合、ランナーはフックが返された直後にセッションごとのワーキングツリーを削除し、`--capacity 1` の場合、再利用される[正規クローン](/docs/ja/self-hosted-environments-deploy#reuse-a-pre-warmed-checkout)は次のセッションが開始されるときにハードリセットされるため、コミットされていない追跡変更はどちらのパスでも保存されません。典型的な用途は、コミットされていない変更のスナップショットブランチをプッシュしたり、ログをアーカイブしたり、セッション終了イベントを独自のシステムに発行したりすることです。

129 

130フックは子プロセスがスポーンされたセッション終了のたびに発火します。原因は何でもかまいません。以下の `CLAUDE_RUNNER_EXIT_REASON` 値がケースを列挙しています。ランナーが VM プリエンプションや停電などで突然終了する場合は発火できません。突然の終了に対する保証が必要な場合は、Claude Code `PostToolUse` フックを使用してセッション内から定期的にスナップショットを取得してください。ランナーは以下を設定します。

131 

132| 変数 | 説明 |

133| :--------------------------------- | :--------------------------------------------------------------------------------------------------------------- |

134| `CLAUDE_RUNNER_SESSION_ID` | `session_...` 形式のセッション ID |

135| `CLAUDE_RUNNER_SESSION_UUID` | 正規 UUID 形式の同じセッション ID |

136| `CLAUDE_RUNNER_EXIT_REASON` | セッションがどのように終了したか。テーブル下の値を参照 |

137| `CLAUDE_RUNNER_WORKSPACE_PATHS` | セッションのワーキングツリーのコロン区切り絶対パス。ゼロリポジトリセッションの場合は空 |

138| `CLAUDE_RUNNER_DEBUG_LOG_PATH` | セッションのデバッグログへのパス。フック実行中もディスク上に存在 |

139| `CLAUDE_RUNNER_API_BASE_URL` | セッションスコープの呼び出し用の Anthropic API ベース URL |

140| `CLAUDE_RUNNER_CLIENT_PLATFORM` | セッションを作成したクライアント表面。`web_claude_ai`、`desktop_app`、`ios` など。セッションに記録または認識された表面がない場合は未設定。Claude Code v2.1.229 以降が必要 |

141| `CLAUDE_CODE_SESSION_ACCESS_TOKEN` | セッションスコープの API 呼び出し用のセッションアクセストークン |

142 

143`CLAUDE_RUNNER_EXIT_REASON` は 4 つの値のいずれかを取ります。

144 

145* `completed`:セッションがクリーンに終了しました。Claude Code プロセスが正常に終了したか、セッションがまだ実行中に削除またはアーカイブされました。

146* `failed`:Claude Code プロセスがクラッシュしたか、開始後にセットアップが失敗しました。

147* `interrupted`:ランナーがセッションを停止しました。セッションをリリースしてスロットを解放したか、セッションがスタートアップでタイムアウトしたか、サーバーがセッションをこのランナーから移動したか、ランナーがドレイン中であったか、セッションが [`--kill-session-after-min`](/docs/ja/self-hosted-environments-reference#runner-cli-flags) 制限を超えました。

148* `abandoned`:別のランナーが要求したセッション用に予約されています。フックは現在その場合には発火しません。

149 

150[セッションライフサイクルカウンター](/docs/ja/self-hosted-environments-reference#session-lifecycle-counter-semantics)は、リリース、スタートアップタイムアウト、サーバー移動を `interrupted` ではなく `completed` としてカウントします。ランナーがスロットをクリーンに返したためです。フック受信とカウンターを比較する場合、その違いを予期してください。

151 

152フックの終了ステータスはセッション結果に影響しません。失敗はログに記録され、無視されます。ランナーはセッション終了を含むランナーシャットダウンのたびに、`--post-session-hook-timeout-sec`(デフォルトは 60 秒)まで待機します。この例はコミットされていない作業をレスキューブランチに保存します。

153 

154```bash theme={null}

155#!/usr/bin/env bash

156set -u

157IFS=':'

158# Pin config the session could have planted in the checkout's .git/config:

159# -c overrides beat repo-local settings, blocking session-written fsmonitor,

160# hook-path, and gpg-program config from executing code with the hook's

161# privileges. Repo-local credential.helper, core.sshCommand, and pushurl

162# still apply; if the hook holds credentials the session didn't, pin the

163# push URL and helper too (see the note below the script).

164g() { git -c core.fsmonitor=false -c core.hooksPath=/dev/null \

165 -c commit.gpgsign=false "$@"; }

166for ws in $CLAUDE_RUNNER_WORKSPACE_PATHS; do

167 cd "$ws" 2>/dev/null || continue

168 [ -z "$(g status --porcelain 2>/dev/null)" ] && continue

169 g add -A

170 g commit -q -m "runner snapshot: $CLAUDE_RUNNER_SESSION_ID ($CLAUDE_RUNNER_EXIT_REASON)" || continue

171 g push -q origin "HEAD:refs/heads/rescue/$CLAUDE_RUNNER_SESSION_ID" || true

172done

173```

174 

175フックは、ランナーホスト上の独自の環境で利用可能な git 認証情報を使用してプッシュします。[イメージに認証情報がない姿勢](/docs/ja/self-hosted-environments-deploy#configure-git)の下では、組み込みクローンが Anthropic git プロキシを通過する場合を含めて、認証情報がないため、フック内で短期間のプッシュ認証情報を発行します。フックが受け取る `CLAUDE_CODE_SESSION_ACCESS_TOKEN` のセッショントークンを独自のトークンサービスと交換し、[Verify session identity](/docs/ja/self-hosted-environments-identity) が説明するように検証します。フックがセッションが持たなかった認証情報を保持している場合は、プッシュ先もピンで留めます。`origin` をオペレーター提供の URL に置き換え、`-c credential.helper=` と独自のヘルパーを渡して、セッションが書き込んだリポジトリローカル設定が認証情報付きプッシュをリダイレクトできないようにします。

176 

177<h4 id="hook-timing-when-the-runner-releases-a-session">

178 ランナーがセッションをリリースするときのフックタイミング

179</h4>

180 

181リリースされたセッションは別のランナーで再開できます。v2.1.236 以降のランナーでは、セッションがリリース時に何をしていたかによって、このフックが終了する前に再開できるかどうかが決まります。

182 

183* **ターンの後にアイドル状態、またはスタートアップでタイムアウト**:ランナーは子プロセスを停止し、このフックを完了まで実行します。その後でのみセッションをリリースします。フック実行中に送信されたユーザーメッセージは、フックが終了する前に別のランナーでセッションを再開できません。

184* **ユーザーが権限プロンプトなどのプロンプトに答えるのを待機中**:ランナーは最初にセッションをリリースし、その後このフックを実行します。フック実行中に送信されたユーザーメッセージは、フックが終了する前に別のランナーでセッションを再開できます。

185 

186これはランナーがセッションをリリースするたびに適用されます。アイドルタイムアウト時、[`--retire-at`](/docs/ja/self-hosted-environments-reference#runner-cli-flags) 時、および v2.1.260 以降のランナーでは、セッションの [`--kill-session-after-min`](/docs/ja/self-hosted-environments-reference#runner-cli-flags) 制限時。ターンが終了し、バックグラウンドタスクのみを保持するセッションはここではアイドル状態としてカウントされます。v2.1.236 より前は、ランナーは両方のケースで最初にセッションをリリースし、その後このフックを実行していました。

187 

188`SIGTERM` ドレイン中、ランナーはフックが終了するまでセッションリースを保持します。[Shutdown timing](/docs/ja/self-hosted-environments-deploy#shutdown-timing) を参照してください。

189 

190<h3 id="command">

191 command

192</h3>

193 

194セッションごとに 1 回実行され、チェックアウト後、組み込み子スポーン の代わりになります。フックは [ラッパースクリプト](#wrapper-scripts)と同じ環境を受け取り、同じ方法で `"$CLAUDE_RUNNER_CLAUDE_BIN"` に `exec` する必要があります。`command` フックを使用して、すべてのカスタマイズをフックディレクトリに保持します。ラッパーが別の場所にある場合は `--exec-path` を使用します。`--exec-path` も設定されている場合、フラグが優先され、`command` フックは無視されます。

195 

196PATH で解決された `claude` ではなく、ランナー自身のバイナリに常に `exec` してください。そうしないと、[バージョンピンニング](/docs/ja/self-hosted-environments-deploy#pin-the-version)を無効にしてしまいます。

197 

198<h2 id="on-demand-runners">

199 オンデマンドランナー

200</h2>

201 

202固定フリートを実行する代わりに、セッションごとに 1 つのランナーをブートできます。オーケストレーターは別の、ステートレスなサブコマンドで、Anthropic にスポーン要求をポーリングします。利用可能なランナーがないキューに入っているセッションごとに 1 つの要求をポーリングし、各要求に対して `spawn-runner` フックを実行します。フックは、ワークロードをプラットフォームに送信します。Kubernetes Job、EC2 インスタンス、Nomad dispatch などです。

203 

204オンデマンドランナーは認証情報の衛生状態を改善します。固定フリートでは、環境シークレットはすべてのランナーホストに存在し、これはユーザーセッションを実行するのと同じホストです。オーケストレーターを使用すると、環境シークレットはオーケストレーターホストにのみ存在し、ユーザーコードは実行されません。各スポーンされたランナーは、正確に 1 つのランナーを登録してから期限切れになる単一用途の作業指示を受け取ります。

205 

206オーケストレーターを開始するには、環境シークレットと実行可能な `spawn-runner` スクリプトを含むフックディレクトリを渡します。

207 

208```bash theme={null}

209claude self-hosted-runner orchestrator \

210 --environment-secret-file /etc/claude/environment-secret \

211 --hooks-dir /etc/claude/hooks

212```

213 

214オーケストレーターはポーリング間で状態を保持しないため、可用性のために同じ環境に対して 2 つ以上のレプリカを実行できます。各スポーン要求は、サーバー側で正確に 1 つのレプリカによって要求されます。すべてのレプリカは同じ `--expected-spawn-seconds` 値を使用する必要があります。[フックコントラクト](#the-spawn-runner-hook)を参照してください。

215 

216<h3 id="the-spawn-runner-hook">

217 spawn-runner フック

218</h3>

219 

220オーケストレーターは、スポーン要求ごとに 1 回 `${hooks-dir}/spawn-runner` を実行します。フックは非同期でワークを送信する必要があり、ランナーのブートを待たずに、`--hook-timeout`(デフォルトは 60 秒)以内に戻る必要があります。フックは以下を受け取ります。

221 

222| 変数 | 説明 |

223| :------------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

224| `CLAUDE_RUNNER_WORK_ORDER_FILE` | 新しいランナーが登録する署名済みワークオーダー JWT を含む一時ファイルへのパス。フック終了後に削除されます。ファイルの内容をログに記録しないでください。 |

225| `CLAUDE_RUNNER_ORDER_ID` | 不透明なべき等性キー。スポーン要求ごとに一意で、Kubernetes リソース名に対して安全です。プロビジョナーの重複排除キーとして使用してください。 |

226| `CLAUDE_RUNNER_SESSION_ID` | この要求が対象とするセッション。[`--min-idle`](/docs/ja/self-hosted-environments-reference#orchestrator-cli-flags) が設定されている場合、事前ウォーミング要求(特定のセッションの前にスタンバイランナーをブート)では空です。変数が設定されていると仮定しないでください。 |

227| `CLAUDE_RUNNER_SESSION_UUID` | 正規 UUID 形式の同じセッション ID。事前ウォーミング要求では空です。 |

228| `CLAUDE_RUNNER_ATTEMPT` | このセッションが持つスポーン要求の数。事前ウォーミング要求では 0 です。 |

229| `CLAUDE_RUNNER_ORDER_SERVER_TIME` | ポーリング応答の HTTP `Date` ヘッダーからのサーバー時刻。フックがワークオーダー JWT の `exp` を検証する場合、ローカルクロックの代わりにこの値と比較して、スキューを許容してください。ゲートウェイがヘッダーを省略した場合は空です。 |

230| `CLAUDE_RUNNER_POOL_ID` | 新しいランナーが参加する環境の ID。`ccpool_...` 形式です。 |

231| `CLAUDE_RUNNER_ACCOUNT_ID` | セッションをエンキューしたアカウントのタグ付き ID。アカウントごとのルーティング、クォータ、またはチャージバック用です。利用できない場合は空で、Claude Tag チャネルセッションでは常に空です。どのアカウントもこれらのセッションをエンキューしません。 |

232| `CLAUDE_RUNNER_ACCOUNT_EMAIL` | セッションをエンキューしたアカウントのメール。利用できない場合は空です。メールを個人識別情報として扱い、ログに記録しないでください。 |

233| `CLAUDE_RUNNER_PRIMARY_REPO_URL` | セッションの最初の git ソースの URL。そのリポジトリが事前ウォーミングされたランナーへのルーティング用です。セッションに git ソースがない場合は空です。 |

234| `CLAUDE_RUNNER_PRIMARY_REPO_REVISION` | セッションの最初の git ソースのリビジョン。ブランチ、SHA、またはタグです。指定されていない場合は空です。 |

235| `CLAUDE_RUNNER_REPO_SOURCES` | セッションのすべての git ソースの `{url, revision}` の JSON 配列。セカンダリリポジトリでルーティングするフック用です。ソースがない場合は空です。 |

236| `CLAUDE_RUNNER_CORRELATION_ID` | セッション作成時に提供された相関 ID。フックがこのワークオーダーをセッションを作成した要求にマップできるようにエコーバックされます。セッションに相関 ID がない場合は空です。 |

237| `CLAUDE_RUNNER_CLIENT_PLATFORM` | セッションを作成したクライアント表面。`web_claude_ai`、`desktop_app`、`ios`、`scheduled_trigger` など。採用分析用です。セッションに記録または認識された表面がない場合は未設定で、事前ウォーミング要求の場合も未設定です。`[ -n "${CLAUDE_RUNNER_CLIENT_PLATFORM:-}" ]` で確認してください。これは `set -u` の下で安全なままです。 |

238 

239スポーンされたランナーは、環境シークレットの代わりにワークオーダーで登録します。

240 

241* **ワークオーダーで開始します**。[`--environment-secret-file`](/docs/ja/self-hosted-environments-reference#runner-cli-flags) をワークオーダー JWT を含むファイルに指定するか、`SELF_HOSTED_RUNNER_ENVIRONMENT_SECRET` を JWT 値に設定します。

242* **フック終了前に JWT をコピーします**。オーケストレーターはフック終了後にワークオーダーファイルを削除するため、JWT を送信するワークロード(スポーンされたジョブの Kubernetes Secret など)にコピーし、ファイルパスを渡さないでください。

243* **スポーンされたランナーで `--capacity 1` を使用します**。セッションバウンドワークオーダーは正確に 1 つのランナーをそのセッションにバウンドするため、より高い容量を使用するとスロットが追加されますが、これらのスロットは作業を受け取らず、ランナーはスタートアップで警告をログに記録します。

244* **事前ウォーミングワークオーダーはアンバウンドで登録します**。スタンバイランナーはセッションにバウンドされず、固定フリートランナーのようにキューに入った作業を要求します。

245 

246コントラクトには 4 つのプロビジョナー非依存ルールがあります。

247 

2481. **`CLAUDE_RUNNER_ORDER_ID` でべき等です。** 同じ要求の再配信は、最大 1 つのランナーをスポーンする必要があります。ID から決定論的なリソース名を導出し、プラットフォームに重複を拒否させてください。

2492. **ワークロードを再試行しないでください。** 1 つのオーダー ID は、最大 1 つの作成されたワークロードを意味します。ランナーが登録されない場合、Anthropic は `--expected-spawn-seconds` 後に新しいオーダー ID で再要求します。

2503. **終了コードコントラクトを使用します。** 終了 0 は送信されたことを意味します。終了 1 は再試行可能な失敗を意味します。セッションはバックオフして再度提供されます。終了 2 以上は再試行不可を意味します。セッションは、[Owner](/docs/ja/cloud-environments#organization-shared-environments) が環境の **Activity** タブでそれに対して **Retry** を選択するまで、再度スポーンされることがブロックされます。ゼロ以外の終了時に、フックの stderr の末尾がそこに失敗理由として表示されるため、実行可能なエラーを stderr に書き込み、シークレットは決して書き込まないでください。事前ウォーミング要求の場合、失敗するセッションはありません。オーケストレーターはゼロ以外の終了をローカルでのみログに記録し、サーバーはリース後にスポーンを再要求します。

2514. **`--expected-spawn-seconds` を少なくとも p99 ブート時間に設定します。** これはサーバー側のリースです。すべてのオーケストレーターレプリカは同じ値を使用する必要があります。

252 

253フックが stdout または stderr に書き込むすべてのものは、認証情報が自動的に削除されたオーケストレーターのログに表示されます。セッションがキューに入ったままの場合、オーケストレーターの `/healthz` ボディをチェックしてキュー数を確認し、[**Cloud environments** 管理ページ](https://claude.ai/admin-settings/cloud-environments)で環境の **Activity** タブを開きます。失敗したセッションをそこで展開してスポーンエラーを確認し、**Retry** を選択して再要求してください。

254 

255<h2 id="mcp-servers">

256 MCP サーバー

257</h2>

258 

259[MCP サーバー](/docs/ja/mcp)をすべてのセッションで利用可能にするには、デスクトップインストールで使用する同じ `claude mcp add` コマンドを使用して、イメージビルド時に追加します。ランナーがコンテナではなくベアプロセスの場合は、ホスト上でランナーのユーザーとして同じコマンドを実行してから、ランナーを再起動します。ランナーは起動時に一度だけホスト設定を読み込みます。`--scope user` フラグが必須です。デフォルトのローカルスコープはディレクトリごとのキーの下に書き込まれ、ランナーはセッションにシードしません。例えば、Dockerfile では以下のようになります。

260 

261```dockerfile theme={null}

262RUN claude mcp add --scope user sidecar -- /usr/local/bin/mcp-sidecar

263RUN claude mcp add --scope user --transport http internal http://mcp-gateway.svc.cluster.local:8080

264```

265 

266ランナーはホストの設定を起動時に一度スナップショットします。スナップショットはホストの `.claude.json` から `mcpServers` キーをキャプチャします。`.claude.json` は `~/.claude/` の内部ではなく隣に存在し、ランナーはそのキーのみを各セッションの分離された設定にシードします。アカウント状態とプロジェクト履歴は削除されます。サーバーがセッションに到達したことを確認するには、環境でセッションを開始し、Claude に MCP ツールをリストするよう依頼します。ランナーはまた、キャプチャされたエントリのうち、その `type` を認識しないものについて起動時に警告をログに記録し、エントリを削除するため、そのサーバーがセッションから欠落している理由を確認できます。`SELF_HOSTED_RUNNER_HOST_CONFIG_DIR` が設定されている場合、ランナーはその代わりにそのディレクトリから `.claude.json` を読み込むため、変数を空のディレクトリに指すことで MCP シーディングも無効にできます。

267 

268Claude Code は他のソースからも MCP サーバーを読み込みます。

269 

270* エンタープライズスコープの[管理 MCP ファイル](/docs/ja/managed-mcp)(標準システムパス)。Linux ランナーホストでは `/etc/claude-code/managed-mcp.json`、macOS ホストでは `/Library/Application Support/ClaudeCode/managed-mcp.json`。管理者がリストしたサーバーのみが読み込まれるロックダウンされたフリートに使用します。優先順位ルールについては、[managed-mcp.json による排他的制御](/docs/ja/managed-mcp#exclusive-control-with-managed-mcp-json)を参照してください。このファイルがランナーホスト上にある場合、Claude Code は Anthropic のコントロールプレーンがセッションに配信する MCP サーバー(claude.ai コネクタを含む)をスキップし、セッション子の stderr に警告として名前を付けます。ランナーはこれを `debug` ログレベルで記録します。v2.1.229 より前では、これらのセッションは起動時に `You cannot dynamically configure MCP servers when an enterprise MCP config is present` で終了していました。

271* ランナーホスト上の[管理設定](/docs/ja/managed-settings)の [`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers) キー。排他的制御を取得しないで HTTP および SSE サーバーを提供するため、他のソースからのサーバーは引き続き読み込まれます。Claude Code v2.1.259 以降が必要です。

272* `<repo>/.mcp.json`。プロジェクトスコープ。ファイルをリポジトリにコミットします。そのサーバーはクラウドセッションで自動承認されます。

273 

274組織でコネクタ配信が有効になっている場合、Anthropic のコントロールプレーンは claude.ai で設定したコネクタをインタラクティブに作成されたセッションにサーバー提供の MCP 設定を通じて配信し、`api.anthropic.com` を経由してルーティングされます。[CLI ディスパッチ](/docs/ja/self-hosted-environments-testing#run-the-test-loop)などプログラムで作成されたセッションはコネクタ配信を受け取りません。代わりに、このセクションにリストされている他のソースのいずれかを通じて MCP サーバーを提供します。子の OAuth トークンはコネクタを直接取得するためのスコープを持たないため、子はその取得を試みません。配信はサーバー駆動です。

275 

276`settings.json` は MCP サーバー定義を持たず、設定スキーマに最上位の `mcpServers` フィールドはありません。管理設定では、代わりに [`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers) キーでサーバーを提供します。

277 

278セッションはランナーの環境を継承するため、[`ENABLE_TOOL_SEARCH`](/docs/ja/mcp#scale-with-mcp-tool-search)をそこに設定して、ランナーが生成するすべてのセッションの MCP ツール検索を制御します。MCP ページは値をカバーしています。

279 

280<h2 id="prompt-sessions-to-push-their-work">

281 セッションに作業をプッシュするよう促す

282</h2>

283 

284Anthropic ホストセッションは [`Stop` フック](/docs/ja/hooks#stop)(Claude Code フック。Claude が応答を終了するときに実行)を実行し、Claude にその作業をコミットしてプッシュするよう促します。ランナーはそれをインストールしません。それなしで、コミットされていない変更で終了するセッションはその作業をランナーのディスク上のみに残し、claude.ai/code の **Create PR** ボタンはブランチがリモートに存在するまで非アクティブなままです。

285 

286以下の参照実装には 2 つの部分があります。設定ブロックを `~/.claude/settings.json` にランナーホストにマージし、スクリプトを `~/.claude/hooks/stop-hook-nudge.sh` にランナーホストに保存して実行可能にします。

287 

288```json theme={null}

289{

290 "hooks": {

291 "Stop": [

292 {

293 "hooks": [

294 {

295 "type": "command",

296 "timeout": 10,

297 "command": "\"$CLAUDE_CONFIG_DIR/hooks/stop-hook-nudge.sh\""

298 }

299 ]

300 }

301 ]

302 }

303}

304```

305 

306```sh theme={null}

307#!/bin/sh

308# セルフホストランナー用の Stop フック参照実装。

309#

310# プロジェクトディレクトリにコミットされていない変更または

311# プッシュされていないコミットがある場合、ターンごとに 1 回 Claude を促します。

312# これにより、アイドルセッションがリリースされるときに作業が失われず、

313# claude.ai/code の "Create PR" ボタンが点灯します。

314#

315# ランナーレベル(リポジトリ変更なし):このファイルを

316# ランナーホストの ~/.claude/hooks/ にドロップし、

317# 付属の Stop フック設定ブロックを ~/.claude/settings.json にマージします。

318# ランナーは両方をすべてのセッションにシードします。

319# リポジトリレベルの代替:<repo>/.claude/hooks/ にコミットし、

320# settings.json コマンドパスを $CLAUDE_PROJECT_DIR/.claude/hooks/ に変更します。

321#

322# stdin:フック JSON ペイロード(https://code.claude.com/docs/en/hooks を参照)

323# stdout:{"decision":"block","reason":"..."} で促すか、何もなしで停止を許可。

324 

325# 再入力ガード:ハーネスはブロック後に Stop フックを再呼び出しするときに

326# stop_hook_active=true を設定します。ターンごとに 1 回だけ促すようにベイルします。

327# ハーネスはコンパクト JSON(コロン後にスペースなし)を発行します。

328# このパターンはそれに依存します。スペース許容チェックが必要な場合は jq を使用します。

329in=$(cat)

330case "$in" in *'"stop_hook_active":true'*) exit 0 ;; esac

331 

332d="$CLAUDE_PROJECT_DIR"

333 

334# git リポジトリではない → 促すものはありません。

335git -C "$d" rev-parse --git-dir >/dev/null 2>&1 || exit 0

336 

337# リモートがない → "リモートにプッシュ" は満たせません。ベイルします。

338[ -z "$(git -C "$d" remote 2>/dev/null)" ] && exit 0

339 

340# コミットされていない変更(ステージ、アンステージ、または未追跡)。

341# .claude/ 全体を除外します。オペレーターシード設定と CLI 書き込み

342# ランタイム状態(スケジューラロック、ワークツリー、ルーチン状態)

343# がそこに存在し、どちらも「モデルがプッシュする必要がある

344# コミットされていない作業」ではありません。

345s=$(git -C "$d" status --porcelain -- . ':(exclude).claude/' 2>/dev/null)

346if [ -n "$s" ]; then

347 printf '{"decision":"block","reason":"There are uncommitted changes in the repository. Please commit and push these changes to the remote branch."}'

348 exit 0

349fi

350 

351# プッシュされていないコミット。HEAD 上のコミット数を数えます。

352# リモート追跡参照または FETCH_HEAD から到達不可。これは

353# 以下に対して均一に機能します。

354# - init+fetch チェックアウト(ランナーデフォルト:FETCH_HEAD のみ存在)

355# - クローンベースのチェックアウト(origin/* が存在)

356# - ランナーデフォルト:こどもはセッションの結果ブランチで開始します。

357# ランナーはチェックアウト後にそれを作成します。

358# - デタッチされた HEAD。カスタムセットアップがそのブランチ作成をスキップする場合

359# 参照ポイントがまったくない場合(フェッチされたことがない)、

360# 偽陽性ではなく静かに留まります。

361base=""

362git -C "$d" rev-parse --verify -q FETCH_HEAD >/dev/null && base="FETCH_HEAD"

363if [ -z "$base" ] && [ -z "$(git -C "$d" for-each-ref --count=1 refs/remotes/origin 2>/dev/null)" ]; then

364 exit 0

365fi

366# shellcheck disable=SC2086 # $base は "" または "FETCH_HEAD"。意図的なワード分割

367unpushed=$(git -C "$d" rev-list HEAD --not $base --remotes=origin --count 2>/dev/null) || unpushed=0

368if [ "$unpushed" -gt 0 ]; then

369 branch=$(git -C "$d" symbolic-ref --short -q HEAD)

370 if [ -n "$branch" ]; then

371 # $branch は攻撃者の影響を受けます。git-check-ref-format(1) は

372 # ref 名で "`" を許可します。`\` は禁止されています(ルール 10)

373 # が、安価な多層防御として同様にエスケープされます。

374 # JSON メタ文字をハンドビルドペイロードに補間する前にエスケープして、

375 # x","continue":false のようなブランチがハーネスが解析する

376 # フック出力 JSON にキーを注入できないようにします。

377 # $unpushed は安全です。上記の -gt ガードは平文整数以外を拒否します。

378 branch_esc=$(printf '%s' "$branch" | sed 's/\\/\\\\/g; s/"/\\"/g')

379 printf '{"decision":"block","reason":"There are %s unpushed commit(s) on branch '\''%s'\''. Please push these changes to the remote repository."}' "$unpushed" "$branch_esc"

380 else

381 printf '{"decision":"block","reason":"There are %s unpushed commit(s) on a detached HEAD. Please create a branch and push it to the remote repository."}' "$unpushed"

382 fi

383 exit 0

384fi

385 

386exit 0

387```

388 

389フックはセッション終了前に Claude にコミットしてプッシュするよう促し、ディレクトリが git リポジトリではないか、リモートがない場合は静かに留まります。

390 

391<h2 id="permissions-and-tool-approval">

392 権限とツール承認

393</h2>

394 

395セルフホストセッションには接続されたターミナルがないため、未回答の権限プロンプトはユーザーが UI で応答するまでターンを停止します。Anthropic のコントロールプレーンは各セッションのツールリストと権限ルールをワークペイロードで送信します。デフォルト設定は `Bash` を含むルーチンツール呼び出しを事前承認し、クラウドセッションは [モードに関係なくファイル編集を事前承認](/docs/ja/permission-modes#switch-permission-modes) します。何も事前承認しない呼び出しはセッション UI を通じてプロンプトします。

396 

397<Note>

398 [デフォルト拒否ネットワーク出力](/docs/ja/self-hosted-environments-deploy#default-deny-egress) を実行するセッションコンテナと [強化セクション](/docs/ja/self-hosted-environments-deploy#harden-your-deployment) の残りを備えた環境でのみ、オートモードをピン留めします。ルーチンツール呼び出し(`Bash` ネットワークリクエストを含む)は、デフォルト事前承認ツールセットとオートモードの両方で人間のループなしで実行されるため、ネットワーク境界がそれらの呼び出しが到達できる場所を制限するものです。

399</Note>

400 

401コントロールプレーンが送信するものに関係なくプロンプトを最小限に保つには、ラッパースクリプトまたは [`command` フック](#command) から [オートモード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) をピン留めします。オートモードはセッションがルーチン権限プロンプトなしで実行されるようにします。別の分類器モデルは実行前にアクションをレビューし、拒否するものをブロックし、明示的な ask ルールはまだプロンプトを強制します。権限モードページは分類器がチェックするものをカバーしています。ランナーはラッパーを呼び出す前にサーバー計算フラグを追加し、`--permission-mode` などの単一値フラグの場合、パーサーは最後の出現を尊重するため、`"$@"` の後に追加するフラグはサーバー送信値をオーバーライドします。

402 

403```bash theme={null}

404#!/bin/bash

405exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@" --permission-mode auto

406```

407 

408代わりに特定のツールを事前承認するには、`--allowed-tools` をルールで追加します。例えば `--allowed-tools "Bash(bazel *) Bash(yarn *) mcp__internal__*"`。`--allowed-tools` と `--disallowed-tools` などのリストフラグは出現全体で蓄積され、オーバーライドされないため、ルールはコントロールプレーンが送信するルールの上に適用されます。絞り込むには、`--disallowed-tools` を追加します。これは別のルールがそれらを許可しても、ツールを拒否します。

409 

410<h3 id="how-each-session’s-config-is-assembled">

411 各セッションの設定がどのように組み立てられるか

412</h3>

413 

414ランナーは各セッションに独自の設定ディレクトリを提供します。ランナーが起動時に 1 回キャプチャするホストの `~/.claude/` のメモリ内スナップショットからシードされます。`settings.json`、`CLAUDE.md`、フック、エージェント、コマンド、スキルがランナーイメージにあります。これらはすべてのセッションにユーザーレベルのベースラインとして適用されます。スナップショットは起動時に取得されるため、実行中のホストの設定変更はランナー再起動後にのみ有効になります。`SELF_HOSTED_RUNNER_HOST_CONFIG_DIR` を設定して別のパスからシードするか、空のディレクトリに指定してシーディングを無効にします。

415 

416リポジトリコミット `.claude/settings.json` はプロジェクト設定として上に層状化されます。セッションはランナーイメージの標準システムパスから [`managed-settings.json`](/docs/ja/settings#where-settings-live) も読み取ります。そのキーが [サーバー管理設定](/docs/ja/server-managed-settings) と一緒に適用されるかどうかは、[Claude Code が管理ソースを組み合わせる方法](/docs/ja/managed-settings#how-claude-code-combines-managed-sources) に従います。デフォルトでは、組織が任意のサーバー管理キーを配信する場合、セッションは [Claude Code がすべての管理ソースから読み取るキー](/docs/ja/managed-settings#keys-read-from-every-admin-source)(`env` ブロック、サンドボックスロック、サンドボックスバイナリパス、`forceRemoteSettingsRefresh` など)を除いて、ランナーイメージのファイルを無視します。[設定優先順位](/docs/ja/settings#settings-precedence) を参照してください。

417 

418Anthropic のコントロールプレーンがセッションに [Claude Code フック](/docs/ja/hooks) を提供する場合、ランナーはそれらを独自の設定の上ではなく隣に設定します。Claude Code v2.1.229 以降が必要です。

419 

420* **どこに着地するか**:ランナーは提供された各フックスクリプトをセッションの設定ディレクトリの予約済み `hooks/.ccr-launcher/` サブディレクトリに書き込み、スクリプトを `--settings` で渡す別の設定ファイルに登録し、シードされた `settings.json` と `hooks/<name>` の独自のスクリプトを変更しないままにします。ランナーは各セッションの予約済みサブディレクトリを再作成し、`~/.claude/hooks/.ccr-launcher/` のホストコンテンツをセッションにシードしません。

421* **誰がそれらを作成するか**:コントロールプレーンはセッションごとまたはサードパーティ入力からではなく、独自のデプロイメント内の固定定数からスクリプトを入力します。

422* **何がそれらを管理するか**:`--settings` を通じて配信されるフックは通常のマージされたフック設定に入り、管理層ではないため、管理設定はまだ適用されます。`disableAllHooks` はそれらを無効にし、[`allowManagedHooksOnly`](/docs/ja/settings-reference#allowmanagedhooksonly) が保つカテゴリーには含まれません。

423 

424<h3 id="repository-committed-permission-rules">

425 リポジトリコミット権限ルール

426</h3>

427 

428リポジトリコミット `permissions.allow` にベアな `"Edit"`、`"Write"`、または `"NotebookEdit"` エントリを入れないでください。ベアなファイルツールルールはパスに関係なくツールにマッチし、ワークスペースのみではなくホスト全体への書き込みを許可するため、ランナーの書き込みスコープ閉じ込めガードはセッションにフラグを立てます。[`--confine-repo-settings enforce`](/docs/ja/self-hosted-environments-reference#runner-cli-flags) を使用すると、ログして続行する代わりにセッションのスポーンを拒否します。[強化セクション](/docs/ja/self-hosted-environments-deploy#harden-your-deployment) を参照してください。

429 

430リポジトリはファイルツールルールをまったく必要としません。クラウドセッションは [モードに関係なくファイル編集を事前承認](/docs/ja/permission-modes#switch-permission-modes) します。ルールをコミットする場合、ワークスペースにスコープします。例えば `"Edit(/**)"`。単一の先頭スラッシュはプロジェクトルート(セッションのワークスペース)に相対的です。ベアなファイルツールルールはオペレーターのホストレベル `settings.json` では問題ありません。そのファイルはリポジトリコミットされないため。

431 

432`defaultMode` の `auto` はイメージ全体またはユーザーレベルの設定ファイルからのみ尊重されるため、チェックアウトされたリポジトリはそれ自体にオートモードを許可できません。クラウドセッションが受け入れるモードと完全なルール構文については、[権限モード](/docs/ja/permission-modes) を参照してください。

433 

434<h2 id="what’s-next">

435 次のステップ

436</h2>

437 

438* [リファレンス](/docs/ja/self-hosted-environments-reference):すべての CLI フラグ、環境変数、メトリック

439* [セッション ID を検証する](/docs/ja/self-hosted-environments-identity):ランナーの外のサービスからセッショントークンを検証

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# 本番環境へのセルフホスト環境のデプロイ

6 

7> 本番環境でセルフホストランナーを実行する:セキュリティ強化、ネットワーク出力制御、git 認証情報、Kubernetes と Compose レシピ、トラブルシューティング。

8 

9<Note>

10 セルフホスト環境は Team および Enterprise プランで公開ベータ版です。[利用可能性と制限事項](/docs/ja/self-hosted-environments#availability-and-limitations)では有効化パスについて説明しています。このページではフリートを本番環境で実行する方法について説明します。最初のランナーとセッションについては[クイックスタート](/docs/ja/self-hosted-environments-quickstart)を参照してください。

11</Note>

12 

13[セルフホスト環境](/docs/ja/self-hosted-environments)は、ネットワーク内にデプロイしたランナー上で Claude Code [クラウドセッション](/docs/ja/claude-code-on-the-web)を実行し、本番環境ではそれらのセッションが環境にセッションをディスパッチできるすべてのユーザーに代わってモデル指向のコードを実行します。このページは、動作している環境を本番環境に移行するオペレーター向けです。デプロイメントを順番に説明します:実際のシステムに接続する前にロックダウンすべき内容、フリートが必要とする出力、セッションが git ホストに認証する方法、デプロイメントレシピ自体、セッションが不正に動作する場合に確認すべき内容です。

14 

15<h2 id="harden-your-deployment">

16 デプロイメントを強化する

17</h2>

18 

19セルフホストランナーは、環境にセッションをディスパッチできるすべてのユーザーに代わって、インフラストラクチャ上で任意のモデル指向のコードを実行します。これは Anthropic 組織のすべてのメンバーと、[Claude Tag](https://claude.com/docs/claude-tag/overview) チャネルセッションを環境にルーティングされたスコープで開始できるすべてのユーザーです。本番環境システムに環境を接続する前に、各項目を確認してください:

20 

21* **エフェメラルなセッションごとのコンテナ**:各ランナープロセスを、プロセスが終了するときに破棄される新しいコンテナまたは VM で実行します。`--capacity 1` と デフォルトの `--drain-grace-sec 0` を使用して、各コンテナが正確に 1 つのセッションを処理するようにします。容量が高い場合、またはドレイングレースが正の場合、1 つのコンテナが同じ[ロックされたオーナー](/docs/ja/self-hosted-environments#key-concepts)からの複数のセッションを処理します。[ランナーのライフサイクル](/docs/ja/self-hosted-environments#runner-lifecycle)を参照してください。ランナーの再起動間でファイルシステムを再利用しないでください。ただし、意図的な[プリウォーミングされたチェックアウト](#reuse-a-pre-warmed-checkout)セットアップは除きます。また、オーナー間では再利用しないでください。

22* **イメージに広範な認証情報を含めない**:長期的な SSH キー、クラウドプロバイダーの認証情報、またはセッションが必要とする以上の権限を付与するパーソナルアクセストークンを含めないでください。セッション中に使用される認証情報(プッシュトークンや API トークン)は、[ラッパースクリプト](/docs/ja/self-hosted-environments-configuration#wrapper-scripts)からセッションごとにミントしてください。初期クローンの場合(ラッパーが実行される前に発生)、[`checkout` ライフサイクルフック](/docs/ja/self-hosted-environments-configuration#checkout)または [`--use-anthropic-git-proxy`](#use-the-anthropic-git-proxy) を使用してください。[git を設定する](#configure-git)を参照してください。

23* **セッション実行ホストから環境シークレットを保持する**:環境シークレットはランナーを登録し、環境でキューに入っているセッションを取得できます。固定フリートでは、すべてのランナーホストに存在し、セッションのコードはシークレットファイルを読み取ることができます。[オンデマンドランナー](/docs/ja/self-hosted-environments-configuration#on-demand-runners)を優先してください。ここではシークレットはオーケストレーターホストに留まり、ユーザーコードは実行されず、各ランナーは正確に 1 つのランナーを登録する単一使用の作業指示を受け取ります。固定フリートでは、環境シークレットファイルをすべてのセッションで読み取り可能として扱い、疑わしいセッション侵害後にシークレットをローテーションしてください。

24* **デフォルト拒否ネットワーク出力**:すべての環境でランナーとセッションコンテナのアウトバウンドトラフィックをネットワーク境界で制限してください。[デフォルト拒否出力](#default-deny-egress)では、許可する内容と理由について説明しています。

25* **最小権限ホスト IAM**:ランナーホストに接続されたコンピュート ID(インスタンスプロファイルやノードサービスアカウントなど)は、ランナー自体が必要とするもののみを付与する必要があります。セッションは、ホストの ID を継承するのではなく、ラッパースクリプトを通じて独自の認証情報を取得する必要があります。

26* **セッションからクラウドメタデータエンドポイントをブロックする**:セッションをホスト ID から保持するには、クラウドメタデータエンドポイントへのアクセスをブロックする必要があります。サブネットレベルの出力ポリシーはリンクローカルメタデータトラフィックをインターセプトしないため、コンテナ自体でブロックしてください:

27 

28 * ホップリミットが 1 の IMDSv2

29 * メタデータ隠蔽を備えた GKE Workload Identity

30 * セッションコンテナのネットワーク名前空間で `169.254.169.254` の明示的な拒否

31 

32 ブロックはラッパースクリプトとライフサイクルフックにも適用されます。これらはコンテナを共有するためです。トークン交換を[セッション JWT](/docs/ja/self-hosted-environments-identity)で認証し、許可リストに登録された出力を通じて独自のトークンサービスに対して行うか、Amazon EKS の IAM Roles for Service Accounts(IRSA)などのファイルベースの Web ID を使用してください。

33* **ランナーごとのファイルシステム分離**:各ランナープロセスは、ホスト上の他のプロセスが読み取りまたは書き込みできない独自の作業ディレクトリを取得します。`--hooks-dir`、ラッパースクリプト、ホストの `~/.claude/` をセッションに対して読み取り専用にします。イメージに組み込むか、読み取り専用でマウントしてください。

34* **ディスパッチには環境ごとのアクセス制御がない**:Anthropic 組織のすべてのメンバーは、セッションを任意の環境にディスパッチできます。オーナーが [Claude Tag チャネルを環境にルーティング](/docs/ja/cloud-environments#set-the-environment-a-claude-tag-channel-uses)する場合、[Claude Tag アクセス設定](https://claude.com/docs/claude-tag/admins/restrict-access#restrict-who-can-use-claude)が許可するすべてのユーザーがそこで実行されるチャネルセッションを開始できます。デフォルトでは、Claude アカウントの有無に関わらず、接続された Slack ワークスペース内のすべてのユーザーです。すべてのランナーホストを、それにディスパッチできるすべてのユーザーがコード実行に到達可能として扱い、ランナーホストには、それらのユーザーすべてが読み取ることを許可されているデータと認証情報のみを配置してください。[`--lock-to-account`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)は、特定のホストが実行するアカウントのセッションを制限しますが、環境にディスパッチできるユーザーを絞り込みません。セルフホスト環境を唯一のピッカーオプションにするには、[オーナー](/docs/ja/cloud-environments#organization-shared-environments)が [**クラウド環境**ページ](https://claude.ai/admin-settings/cloud-environments)から組織全体の Anthropic ホスト環境を非表示にできます。

35* **リポジトリ設定ガードを適用する**:[`--confine-repo-settings`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)でガードモードを選択してください。デフォルトの `warn` は違反をログに記録してもセッションを生成し、`enforce` はセッションを拒否し、`off` はスキャンを無効にします。ランナーは各リポジトリのコミットされた設定をスキャンします:

36 

37 * そのセッション独自のワークスペースの外で解決される付与:`additionalDirectories` エントリ、`permissions.allow` の `Edit`、`Write`、または `NotebookEdit` ルール、または `sandbox.filesystem.allowWrite` または `allowRead` エントリ

38 * 空でない `env` ブロック

39 * `sandbox.enabled: false` などのオペレーター姿勢オーバーライド

40 

41 ガードは [`--trust-workspace`](/docs/ja/self-hosted-environments-reference#runner-cli-flags) に関係なく実行され、リポジトリフック、`.mcp.json`、または Bash ルールはカバーしません。[権限とツール承認](/docs/ja/self-hosted-environments-configuration#permissions-and-tool-approval)では、これらの付与がどこに属するかについて説明しています。

42 

43<Note>

44 組織の IP 許可リストはデフォルトではセルフホストランナートラフィックをカバーしません。ランナーまたはセッショントラフィックのネットワーク制御として依存しないでください。代わりに、独自のネットワーク境界でデフォルト拒否出力を適用し、組織の IP 許可リスト適用が必要な場合は Anthropic アカウントチームに連絡してください。

45</Note>

46 

47<h2 id="network-requirements">

48 ネットワーク要件

49</h2>

50 

51ランナーとそれが生成するセッション子は、以下のホストへのアウトバウンド接続を行います。セッションコンテナの出力をこれらのホストとセッションが到達する必要がある特定の内部サービスに制限してください。[デフォルト拒否出力](#default-deny-egress)では、方法と理由について説明しています。

52 

53これらのホストは常に必須です:

54 

55| ホスト | ポート | 用途 |

56| :---------------------------------------------------- | :----------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

57| `api.anthropic.com` | 443、HTTPS;SCM コネクタのみ WSS | ランナーコントロールプレーンとセッションストリーミング、モデル推論、機能フラグ、製品分析、[JWKS](/docs/ja/self-hosted-environments-identity) キーフェッチ、コミット署名、`--use-anthropic-git-proxy` が設定されている場合の git プロキシ、`--scm-connector-host` が設定されている場合のオーケストレーターの [SCM コネクタ](/docs/ja/self-hosted-environments-reference#scm-connector-flags)トンネル |

58| `github.com` またはお客様の GitHub Enterprise ホストなどの git ホスト | 443 または 22 | リポジトリのクローンとプッシュ。ランナーが `--use-anthropic-git-proxy` を使用する場合は不要です。これは git トラフィックを `api.anthropic.com` を通じてルーティングします。 |

59 

60これらのホストが必要かどうかは、設定によって異なります:

61 

62| ホスト | ポート | 必須の場合 |

63| :----------------------------------- | :-- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

64| `downloads.claude.ai` | 443 | インストール時に、ネイティブインストーラーでホストに Claude Code をインストールまたは更新する場合。`install.sh` スクリプト自体は `claude.ai` から提供されます。セッション実行時には、セッションが公式 Anthropic マーケットプレイスからプラグインをインストールする場合のみです。 |

65| `storage.googleapis.com` | 443 | セッション実行時に、`/plugin` に表示されるプラグインインストール数とメタデータの場合。 |

66| `code.claude.com` および `claude.com` | 443 | 組み込みの claude-code-guide エージェントによるドキュメント検索と、セッション中の事前承認された WebFetch リクエストの場合。これらのホストをブロックするとドキュメント検索のみに影響します。 |

67| `*.frame.claudeusercontent.com` | 443 | 組織内のセッションで [Artifact ツール](/docs/ja/artifacts#availability)が利用可能な場合のみ。デフォルトはプランによって異なり、そこの利用可能性テーブルに従います。ランナーで `CLAUDE_CODE_DISABLE_ARTIFACT=1` を設定して、組織設定に関係なくツールを無効に保ちます。 |

68| `registry.npmjs.org` | 443 | セッションがプラグインをインストールする場合、npm ソースプラグインパッケージのフェッチとプラグインの Node.js 依存関係のインストール、または `npx` で起動された MCP サーバーが実行される場合。 |

69| `http-intake.logs.us5.datadoghq.com` | 443 | Anthropic 運用メトリクス。`CLAUDE_CODE_BYOC_ENABLE_DATADOG=1` が設定されている場合のみ。セルフホスト環境ではデフォルトでオフです。 |

70| `browser-intake-us5-datadoghq.com` | 443 | Anthropic エラーレポートアップロード。セッションのアカウントで[エラーレポート](/docs/ja/data-usage#telemetry-services)が有効な場合のみ送信されます。`DISABLE_ERROR_REPORTING=1` または `DISABLE_TELEMETRY=1` で抑制されます。 |

71 

72ランナーは `statsig.anthropic.com`、`*.sentry.io`、`claude.ai`、または `platform.claude.com` に到達しません。これらのホストは古いエンタープライズネットワークチェックリストに表示されますが、ランナーまたはセッショントラフィックのために許可リストに登録する必要はありません:機能フラグフェッチは `api.anthropic.com` に移動し、ランナーはインタラクティブ OAuth ではなく環境シークレットで認証します。 2 つのホスト側フローは `claude.ai` に到達するため、出力を許可するホストから実行してください。セッションコンテナ出力を広げるのではなく:ワンラインインストーラーはインストール時に `claude.ai` から `install.sh` をフェッチし、インタラクティブな `claude auth login`([ガイド付きセットアップ](/docs/ja/self-hosted-environments-quickstart#set-up-an-environment-and-runner)、`doctor` の署名入りモード、[CI ディスパッチ](/docs/ja/self-hosted-environments-testing#authenticate-from-ci)が使用)は `claude.ai`、`claude.com`、`platform.claude.com` を通じてサインインします。`mcp-proxy.anthropic.com` も必須ではありません:セルフホストセッションはそれを使用せず、組織の claude.ai コネクタをセッションに配信する場合(組織で有効な場合)、`api.anthropic.com` を通じてルーティングされます。[MCP サーバー](/docs/ja/self-hosted-environments-configuration#mcp-servers)を参照してください。

73 

74<h3 id="default-deny-egress">

75 デフォルト拒否出力

76</h3>

77 

78ランナーとセッションコンテナを、アウトバウンドトラフィックが[ネットワーク要件テーブル](#network-requirements)のホスト、git ホスト、セッションが到達する必要がある特定の内部サービスに制限されるネットワークセグメントまたは名前空間にデプロイします。製品はこれを検証または適用できないため、すべての環境でネットワーク境界に適用してください。セッションコードはモデル指向であり、任意のホストへの接続を試みることができます。ネットワークレイヤーでのデフォルト拒否出力は、これらの試みが到達できる場所を制限します。これは権限モードに関係なく適用されます:デフォルトの事前承認ツールセットには既に `Bash` が含まれているため、[自動モード](/docs/ja/self-hosted-environments-configuration#permissions-and-tool-approval)がなくてもシェル出力はプロンプトなしで実行されます。

79 

80各セッションが出力するテレメトリとそれをオフにする方法の詳細については、[テレメトリ](/docs/ja/self-hosted-environments-reference#telemetry)を参照してください。

81 

82<h3 id="authenticate-to-an-egress-proxy">

83 出力プロキシに認証する

84</h3>

85 

86一部の企業出力プロキシは、すべての接続で `Proxy-Authorization` ヘッダーを必要とします。そのヘッダーのトークンは、`HTTPS_PROXY` に設定するプロキシ URL に書き込むには速すぎるペースでローテーションすることが多いです。通常どおり `HTTPS_PROXY` または `HTTP_PROXY` をプロキシの URL に設定してから、`--proxy-authorization-command` または `--proxy-authorization-file` を設定して、ランナーにヘッダー値を読み取る場所を指示してください。両方のフラグには Claude Code v2.1.238 以降が必要です。

87 

88<h4 id="choose-where-the-proxy-authorization-value-comes-from">

89 `Proxy-Authorization` 値の出所を選択する

90</h4>

91 

92`Proxy-Authorization` トークンを生成する方法に一致するフラグを選択してください:

93 

94* **[`--proxy-authorization-command <command>`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)**:オンデマンドで生成するトークンの場合はこれを選択してください。ランナーはシェルコマンドを実行し、トリミングされた stdout をヘッダー値として使用します。例えば `Bearer <token>`。

95* **[`--proxy-authorization-file <path>`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)**:別のプロセスがローテーションするトークンの場合はこれを選択してください。ランナーはファイルを読み取り、トリミングされた内容をヘッダー値として使用します。

96 

97<h4 id="configurations-the-runner-refuses-to-start-with">

98 ランナーが起動を拒否する設定

99</h4>

100 

101各フラグには環境変数形式もあり、[ランナー CLI フラグリファレンス](/docs/ja/self-hosted-environments-reference#runner-cli-flags)に記載されています。ランナーがプロキシまたはコントロールプレーンに接続する前に、フラグとその変数をチェックし、3 つの場合に起動を拒否します:

102 

103* **両方のフラグが設定されている**:1 つのフラグと他のフラグの環境変数は、両方を設定することとしてカウントされます。

104* **プロキシ URL がない**:`HTTPS_PROXY` も `HTTP_PROXY` も `http://` または `https://` URL を保持していません。ランナーは両方の変数を大文字または小文字で読み取り、`ALL_PROXY` を参照しません。

105* **フラグがオーケストレーターサブコマンドに渡される**:`self-hosted-runner orchestrator` はフラグまたはそれらの環境変数を受け入れません。代わりに、オーケストレーターが開始する各ランナーにフラグを渡してください。

106 

107<h4 id="what-the-runner-changes-while-a-proxy-authorization-flag-is-set">

108 プロキシ認可フラグが設定されている間にランナーが変更する内容

109</h4>

110 

111いずれかのフラグが設定されている場合、ランナーは独自のリスナーを開始し、プロキシトラフィックをそれ自体、ライフサイクルフック、セッションからそのリスナーを通じて送信します。リスナーはプロキシへの途中で `Proxy-Authorization` ヘッダーを追加します。

112 

113* **リスナー**:リスナーは `127.0.0.1` 上のフォワードプロキシです。ランナーはコントロールプレーンに登録する前にリスナーを開始し、リスナーが開始できない場合は起動時に終了します。

114* **プロキシ変数**:ランナーは、設定した `HTTPS_PROXY` と `HTTP_PROXY` のいずれかをリスナーを指すように書き直します。その書き直された値はランナー自体、ライフサイクルフック、実行するすべてのセッションに到達します。

115* **トークンローテーション**:ローテーションされたトークンは再起動なしで有効になります。リスナーがプロキシに開く各接続について、ランナーはコマンドを実行するか、ファイルを再度読み取り、結果をヘッダーとして追加します。

116* **セッション環境**:セッションはリスナーを通じてのみプロキシに到達します。各セッションの環境で、ランナーは `ALL_PROXY` を削除し、設定しなかった `HTTPS_PROXY` または `HTTP_PROXY` のスペルを削除し、`NO_PROXY` をランナー独自の値にピンします。

117* **ログ**:ランナーはヘッダー値をログに記録しません。

118 

119<h2 id="configure-git">

120 git を設定する

121</h2>

122 

123ランナーはリポジトリチェックアウトを管理しますが、デフォルトでは git ID または認証情報を設定しません。ランナーのイメージとプロセス環境を制御するため、git 設定を制御します。 2 つのアプローチのいずれかを選択してください:

124 

125* **ランナーに git を設定させる**:`--configure-git` でランナーを開始して、Anthropic ホストセッションが使用する同じ ID とコミット署名設定を書き込ませます

126* **イメージに git 設定を含める**:ID とプッシュ認証情報を自分で設定します。例えば、独自のボット ID でコミットするため

127 

128ランナーホストの Git バージョンフロア:[`--configure-git`](#let-the-runner-configure-git) SSH コミット署名には Git 2.34 以降が必要です。[`--use-anthropic-git-proxy`](#use-the-anthropic-git-proxy) には 2.32 以降が必要です。[`--push-outcome-on-release`](/docs/ja/self-hosted-environments-reference#runner-cli-flags) でプッシュされたブランチからセッションを再開するには 2.29 以降が必要です。 3 つすべてを省略して git ID を自分で管理する場合は、Git 2.24 で十分です。

129 

130<h3 id="let-the-runner-configure-git">

131 ランナーに git を設定させる

132</h3>

133 

134`--configure-git` でランナーを開始するか、`SELF_HOSTED_RUNNER_CONFIGURE_GIT=1` を設定して、起動時にグローバル git 設定を書き込ませます:

135 

136* `user.name = Claude` および `user.email = noreply@anthropic.com`。Anthropic ホストセッションと一致します

137* SSH 形式のコミットとタグ署名。ランナー管理のシムを通じてルーティングされ、セッション独自の認証情報を使用して Anthropic の署名サービスを通じて各コミットに署名します。署名は GitHub で Anthropic の公開 SSH 署名キーに対して検証可能です。

138* `push.negotiate = true`。git がプッシュをパックする前に git ホストが既に持っているコミットを尋ねます。Claude Code v2.1.257 以降が必要です。

139* `core.hooksPath` はランナー管理のフックディレクトリを指します。その `commit-msg` および `prepare-commit-msg` フックは、各コミットにセッションの作成者の `Co-authored-by:` トレーラーを追加します。[`CCR_SESSION_ACCOUNT_EMAIL`](/docs/ja/self-hosted-environments-configuration#wrapper-scripts) のメールから構築され、その変数が設定されていない場合は省略されます。イメージが既に `core.hooksPath` を設定している場合、ランナーは設定を保持し、これらのフックのインストールをスキップし、`[runner:git]` 警告を出力します。

140 

141コミット署名には git 2.34 以降が必要です。ランナーは起動時にチェックし、git が古い場合はエラーで終了します。このフラグはプッシュ認証情報を設定しません。これはイメージで提供する必要があります。

142 

143<h3 id="ship-git-config-in-your-image">

144 イメージに git 設定を含める

145</h3>

146 

147git ID はすべてのコミットに必須です。Dockerfile でシステム全体に設定して、ランナープロセスが実行されるユーザーに関係なく設定が適用されるようにします:

148 

149```dockerfile theme={null}

150RUN git config --system user.name "Claude" && \

151 git config --system user.email "noreply@anthropic.com"

152```

153 

154ID がない場合、`git commit` は `Please tell me who you are` で失敗し、セッションは進行できません。代わりに独自のボット ID を使用できます。ランナーはこれらの値をオーバーライドしません。

155 

156長期的または広くスコープされたプッシュ認証情報を共有ランナーイメージにベイクしないでください:イメージの認証情報は、イメージが実行するすべてのセッションで利用可能です。誰が開始したかに関係なく。代わりに、セッション JWT からデコードされたセッション作成者の ID を使用して、[ラッパースクリプト](/docs/ja/self-hosted-environments-configuration#wrapper-scripts)からセッションごとに短期的で最小スコープのトークンをミントしてください。エフェメラルなセッションごとのコンテナと組み合わせます。これには `--capacity 1` が必要です。認証情報がセッションを超えて存続しないようにします。[強化セクション](#harden-your-deployment)を参照してください。

157 

158イメージレベルでプッシュ認証情報を設定する必要がある場合(例えば、読み取り専用デプロイキーの場合)、git ホストが許可する限りスコープを厳しくしてください:

159 

160* `url.<base>.insteadOf` 書き直しで 1 つのリポジトリに制限された SSH デプロイキー

161* 最小限のスコープトークンを返す `credential.helper`

162* 狭くスコープされたキーを指す `GIT_SSH_COMMAND`

163 

164設定するメカニズムは、ランナーの組み込みクローンとフェッチがプロンプトを無効にするため、プロンプトなしで動作する必要があります。git、SSH、Git Credential Manager が表示するプロンプト:

165 

166* ランナーは `GIT_TERMINAL_PROMPT=0` を設定するため、git はユーザー名またはパスワードを要求しません。

167* ランナーは `BatchMode=yes` で SSH を実行します。`GIT_SSH_COMMAND` を設定した場合は追加されます。SSH はパスフレーズまたはホスト確認を要求しません。

168* ランナーは `GCM_INTERACTIVE=never` を設定するため、Git Credential Manager はサインインダイアログを開きません。

169* ランナーは `core.askPass` をクリアするため、askpass ヘルパーを使用する場合は、`GIT_ASKPASS` 環境変数を通じて設定してください。

170 

171git ホストが認証情報を拒否するか、認証情報を設定しなかった場合、ランナーは数回再試行してから失敗します。ランナーはこれらの設定をセッション環境に渡しません。

172 

173チェックアウトディレクトリがランナープロセスと異なる uid で所有されている場合、git は操作を拒否します。`safe.directory` を追加してください:

174 

175```dockerfile theme={null}

176RUN git config --system --add safe.directory '*'

177```

178 

179<h3 id="use-the-anthropic-git-proxy">

180 Anthropic git プロキシを使用する

181</h3>

182 

183`--use-anthropic-git-proxy` でランナーを開始するか、`CLAUDE_RUNNER_USE_GIT_PROXY=1` を設定して、セッション独自の短期トークンで認証された Anthropic の git プロキシを通じてクローンさせます。通常のユーザーセッションの場合、プロキシはセッション作成者用に保存された GitHub または GitHub Enterprise OAuth トークンを使用します。ボットおよびエージェントセッションの場合、組織の GitHub App インストールトークンを使用します。どちらの場合でも、ランナーイメージは git 認証情報をまったく必要としません:SSH キーなし、認証情報ヘルパーなし、`.netrc` なし。これは Anthropic ホスト環境が使用する同じ認証パスです。

184 

185プロキシは `--capacity 1` を必要とします。プロキシ URL はセッションごとであり、git 2.32 以降が必要です。古い git はプロキシがセッションを相互に分離するために使用する設定メカニズムを無視するためです。ランナーは要件のいずれかが満たされない場合、起動を拒否します。プロキシは Anthropic 側からフェッチするため、git ホストは Anthropic インフラストラクチャから到達可能である必要があります。これは Anthropic ホストセッションと同じ要件です。ネットワーク内でのみルーティング可能な git ホストの場合は、代わりに [`checkout` ライフサイクルフック](/docs/ja/self-hosted-environments-configuration#checkout)を使用してください。各ランナープロセスは一度に 1 つのセッションを処理するため、並列処理のためにより多くのレプリカを実行してください。プロキシが有効な場合、`--git-host-rewrite` と `--git-ssh-rewrite` は効果がありません:プロキシ URL は git ホストではなく `api.anthropic.com` を指します。

186 

187ランナーは登録時に Anthropic にオプトインを報告し、起動時に `Registering as opted in to Anthropic-managed git (--use-anthropic-git-proxy)` を出力します。その後、オプトインランナー上の各セッションは、Anthropic 管理の git またはセッションごとのプロキシ URL のいずれかを使用します。セッションがセッションごとのプロキシ URL を使用する場合、ランナーは 1 つの `[runner:warn]` 行をログに記録します。

188 

189<h3 id="rewrite-git-urls-for-private-networks">

190 プライベートネットワークの git URL を書き直す

191</h3>

192 

193リポジトリ URL はコントロールプレーンから HTTPS として到達します。git ホストのホスト名を使用します。GitHub Enterprise の場合、Claude Code 管理設定で [GitHub Enterprise 統合](/docs/ja/github-enterprise-server)用に設定したホスト名です。 2 つの繰り返し可能なフラグはクローン前にこれらの URL を書き直します:

194 

195* `--git-host-rewrite <from>=<to>`:スプリットホライズン DNS の場合。Anthropic は外部ホスト名を通じて git ホストに到達しますが、ランナーは内部ホスト名を使用する必要があります

196* `--git-ssh-rewrite <host>`:SSH のみを受け入れる git ホストの場合。`https://<host>/owner/repo` を `git@<host>:owner/repo` に書き直します

197 

198ホスト書き直しが最初に実行されるため、両方が必要な場合は `--git-ssh-rewrite` に内部ホスト名をリストします。チェックアウトを完全に制御するには、[`checkout` ライフサイクルフック](/docs/ja/self-hosted-environments-configuration#checkout)を使用してください。

199 

200<h2 id="build-the-runner-image">

201 ランナーイメージをビルドする

202</h2>

203 

204Anthropic は事前構築されたランナーイメージを公開していません。`claude` バイナリの周りに独自のイメージをビルドし、リポジトリが必要とするツールチェーンをレイヤーします:言語ランタイム、コンパイラ、パッケージマネージャー、[MCP](/docs/ja/mcp) サイドカー。

205 

206以下のレシピは `--capacity 4` を使用するため、1 つのコンテナは同じロックされたオーナーからの最大 4 つの同時セッションを処理します。これは[強化セクション](#harden-your-deployment)のセッションごとのコンテナ分離を提供しません:本番環境システムに環境を接続する前に、レシピを `--capacity 1` で実行してセッションごとに 1 つのコンテナを使用するか、[オンデマンドランナー](/docs/ja/self-hosted-environments-configuration#on-demand-runners)を使用してください。オンデマンドランナーは、環境シークレットをセッション実行ホストに置かないようにもします。

207 

208このDockerfile は最小限の出発点です:

209 

210```dockerfile theme={null}

211FROM debian:bookworm-slim

212ARG CLAUDE_CODE_VERSION

213RUN apt-get update && apt-get install -y --no-install-recommends git curl ca-certificates openssh-client \

214 && rm -rf /var/lib/apt/lists/*

215RUN curl -fsSL "https://downloads.claude.ai/claude-code-releases/${CLAUDE_CODE_VERSION:?set with --build-arg CLAUDE_CODE_VERSION}/linux-x64/claude" \

216 -o /usr/local/bin/claude && chmod +x /usr/local/bin/claude

217RUN git config --system user.name "Claude" \

218 && git config --system user.email "noreply@anthropic.com" \

219 && git config --system --add safe.directory '*'

220ENTRYPOINT ["claude"]

221```

222 

223ノードが ARM の場合は `linux-x64` を `linux-arm64` に、Alpine などの musl ベースのイメージの場合は `linux-x64-musl` または `linux-arm64-musl` に置き換えます。[Alpine Linux セットアップ](/docs/ja/setup#alpine-linux-and-musl-based-distributions)を参照して、musl イメージが必要とする追加パッケージについて確認してください。URL は標準 Claude Code リリースロケーションであるため、[バイナリ整合性とコード署名](/docs/ja/setup#binary-integrity-and-code-signing)で説明されているように、ダウンロードされたバイナリをリリースの署名されたマニフェストに対して検証できます。Claude Code バージョン 2.1.224 以降でイメージをビルドしてから、レジストリにプッシュし、以下のレシピで参照してください:

224 

225```bash theme={null}

226docker build --build-arg CLAUDE_CODE_VERSION=2.1.224 -t <your-registry>/claude-runner:latest .

227```

228 

229<h2 id="size-cpu-and-memory-for-sessions">

230 セッション用に CPU とメモリをサイズ設定する

231</h2>

232 

233ランナープロセス自体ではなく、ランナーが実行するセッション用にランナーのコンテナまたはホストをサイズ設定してください。ランナー自体は作業をポーリングし、各セッションのチェックアウトを準備し、[ライフサイクルフック](/docs/ja/self-hosted-environments-configuration#lifecycle-hooks)を実行し、セッションプロセスを開始および監視します。負荷はセッションから発生します。各セッションは Claude Code プロセスと、ビルド、テストスイート、パッケージインストール、[MCP サーバー](/docs/ja/mcp)など、それが開始するものです。

234 

2351 つのセッションについて、以下の値から開始してください。Kubernetes のリクエストと制限、またはプラットフォームの同等の値として記載されており、要件ではなく開始点として扱ってください。

236 

237* **メモリ**: 各 4 GiB のリクエストと制限。これは Claude Code の[システム要件](/docs/ja/setup#system-requirements)の 4 GB 最小値を満たします。2 つを等しく保つことで、スケジューラーはコンテナの全メモリを考慮に入れます。コンテナがメモリ制限に達すると、カーネルはその内部のプロセスを強制終了し、セッションをタスクの途中で終了させる可能性があります。

238* **CPU**: 2 CPU のリクエストと 4 CPU の制限。セッションはビルド中にリクエストを超えてバースト可能です。カーネルはコンテナを CPU 制限でスロットルします。その制限でプロセスを強制終了するのではなく、セッションは制限で実行速度が低下しますが、実行を続けます。

239 

240Kubernetes コンテナスペックで、以下の `resources` ブロックを使用してこれらの開始値を設定します。

241 

242```yaml theme={null}

243resources:

244 requests:

245 cpu: "2"

246 memory: 4Gi

247 limits:

248 cpu: "4"

249 memory: 4Gi

250```

251 

252ビルドとテストは通常、セッションの負荷の最大かつ最も変動する部分です。リポジトリの代表的なビルドを実行し、ピーク CPU とメモリを測定し、そのピークの上に Claude Code プロセスの余地を残さない開始値を引き上げてください。

253 

254ランナーは `--capacity` を使用して、一度に実行するセッション数をキャップします。CPU またはメモリをセッション間で分割しないため、ランナー上のセッションはコンテナの CPU とメモリを共有します。1 つのセッションのシェアをキャップするには、[ラッパースクリプト](/docs/ja/self-hosted-environments-configuration#wrapper-scripts)から制限を適用してください。したがって、1 つのコンテナに与える内容は、一度に何個のセッションを提供するかによって異なります。

255 

256* **ランナーあたり 1 つのセッション**: 各コンテナに 1 つのセッションの値を与えます。[強化セクション](#harden-your-deployment)が推奨する `--capacity 1` でこのサイズ設定を使用し、[オンデマンドランナー](/docs/ja/self-hosted-environments-configuration#on-demand-runners)の場合、[`spawn-runner` フック](/docs/ja/self-hosted-environments-configuration#the-spawn-runner-hook)が送信するワークロード(Kubernetes Job のポッドテンプレートなど)に値を設定します。

257* **ランナーあたり複数のセッション**: `--capacity` が 1 より上の場合、1 つのセッションの値に容量を掛けます。その容量まで多くのセッションがコンテナ内で同時に実行できるためです。[Kubernetes](#kubernetes) と [Docker Compose](#docker-compose) レシピは CPU またはメモリ制限なしで `--capacity 4` を実行するため、実行する容量のサイズ設定された制限を追加してください。

258 

259<h2 id="kubernetes">

260 Kubernetes

261</h2>

262 

263ランナーはデフォルトでポート 8080 で `GET /healthz` を提供し、`--health-port` で設定可能です。Kubernetes プローブは追加セットアップなしで動作します。エンドポイントはプロセスが生きている限り `200` を返すため、以下のプローブはデッドプロセスを検出し、スタックしたプロセスは検出しません。ランナーがポーリングを停止したことをキャッチするには、[`/metrics`](/docs/ja/self-hosted-environments-reference#prometheus-metrics)から `last_poll_age_seconds` シリーズでアラートを出してください。以下の Deployment は Kubernetes Secret から環境シークレットをマウントし、liveness および readiness プローブを `/healthz` に指します。90 秒の終了猶予期間を設定します。[シャットダウンタイミング](#shutdown-timing)を参照して、猶予期間が重要な理由を確認してください。

264 

265マニフェストはランナーコンテナに CPU またはメモリ `resources` を設定しません。実行する容量のサイズ設定されたブロックを追加してください。[セッションの CPU とメモリをサイズ設定する](#size-cpu-and-memory-for-sessions)で説明されています。

266 

267```yaml theme={null}

268apiVersion: apps/v1

269kind: Deployment

270metadata:

271 name: claude-runner

272 namespace: claude-runners

273spec:

274 replicas: 3

275 selector:

276 matchLabels:

277 app: claude-runner

278 template:

279 metadata:

280 labels:

281 app: claude-runner

282 app.kubernetes.io/part-of: claude-code-self-hosted-runner

283 spec:

284 terminationGracePeriodSeconds: 90

285 containers:

286 - name: runner

287 image: <your-registry>/claude-runner:latest

288 args:

289 - self-hosted-runner

290 - --environment-secret-file

291 - /etc/claude/environment-secret

292 - --capacity

293 - "4"

294 volumeMounts:

295 - name: environment-secret

296 mountPath: /etc/claude

297 readOnly: true

298 ports:

299 - name: health

300 containerPort: 8080

301 readinessProbe:

302 httpGet:

303 path: /healthz

304 port: 8080

305 initialDelaySeconds: 5

306 periodSeconds: 10

307 livenessProbe:

308 httpGet:

309 path: /healthz

310 port: 8080

311 initialDelaySeconds: 30

312 periodSeconds: 30

313 volumes:

314 - name: environment-secret

315 secret:

316 secretName: claude-runner-environment-secret

317```

318 

319上記の Deployment は `claude-runners` 名前空間に存在します。最初に名前空間を作成してください:

320 

321```bash theme={null}

322kubectl create namespace claude-runners

323```

324 

325管理 UI の [**環境キーをコピー**ステップ](/docs/ja/self-hosted-environments-quickstart#set-up-an-environment-and-runner)でコピーした値を保持するローカルファイルからバッキング Secret を作成してください。シークレットはシェル履歴に表示されません。`(umask 077 && cat > ./environment-secret)` を実行し、シークレットを貼り付け、Enter キーを押してから Ctrl-D を押してください。次に Secret を作成してファイルを削除してください:

326 

327```bash theme={null}

328kubectl create secret generic claude-runner-environment-secret -n claude-runners --from-file=environment-secret=./environment-secret

329```

330 

331<h2 id="docker-compose">

332 Docker Compose

333</h2>

334 

335以下の Compose サービスは、ランナーが終了するたびに再起動します。これはクラッシュと通常のドレイン後の終了の両方をカバーします。Docker 再起動ポリシーは、書き込み可能なレイヤーを保持して同じコンテナを再起動するため、ランナーは[強化姿勢](#harden-your-deployment)が推奨する新しいファイルシステムではなく、再利用されたファイルシステムで戻ります。このレシピを評価に使用し、本番環境ではコンテナを実行ごとに再作成するか、そうするオーケストレーターを使用してください。

336 

337```yaml theme={null}

338services:

339 claude-runner:

340 image: <your-registry>/claude-runner:latest

341 command:

342 - self-hosted-runner

343 - --environment-secret-file

344 - /run/secrets/environment-secret

345 - --capacity

346 - "4"

347 secrets:

348 - environment-secret

349 restart: always

350 stop_grace_period: 90s

351 

352secrets:

353 environment-secret:

354 file: ./environment-secret

355```

356 

357<h2 id="shutdown-timing">

358 シャットダウンタイミング

359</h2>

360 

361`SIGTERM` では、ランナーは新しい作業を受け取るのを停止し、[`--defer-shutdown-max-min`](#defer-the-drain-past-the-first-signal)を設定しない限り、最大 `--drain-wait-sec`(デフォルトはゼロ)待機して、進行中のターンが終了するのを待ちます。各セッションのプロセスツリーを終了し、[`post-session` ライフサイクルフック](/docs/ja/self-hosted-environments-configuration#post-session)を実行します。そのプロセスツリーには、Claude がセッションで実行していたコマンドが含まれます。

362 

363完全なドレインパスには、最大 `--session-stop-grace-sec` + `--drain-wait-sec` + `--post-session-hook-timeout-sec` が必要です。プロセスクリーンアップの固定オーバーヘッド 15 秒と、[`--push-outcome-on-release`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)が設定されている場合はさらに 30 秒が必要です。デフォルトでは 80 秒です。ランナーは起動時に合計をログに記録します。セッションはこの 1 つの予算の下で並列にドレインされるため、合計は `--capacity` で増加しません。

364 

365デフォルトの `--drain-wait-sec 0` では、ローリング再起動は進行中のターンを中断します。各セッションは別のランナーで再開され、[既知の問題](#additional-limitations)で説明されているように、プッシュされていない作業が失われます。`--drain-wait-sec` を設定し、猶予期間を一致させて、ターンが最初に終了するようにします。

366 

367その全体のパス全体を通じて、ランナーはゼロ容量でコントロールプレーンにハートビートを送信し続けるため、セッションリースは期限切れにならず、`post-session` フックがコミットされていない作業を書き出している間に別のランナーに再キューイングされません。ハートビートはランナーが登録解除される直前に停止します。

368 

369ランナーが起動時にログに記録する合計の少なくとも前に、ホストがそれを停止する前に与えてください。設定する場所は、ホストがどのように停止するかによって異なります:

370 

371* **`SIGTERM` 猶予期間付き**:Kubernetes で `terminationGracePeriodSeconds` を設定し、Docker Compose で `stop_grace_period` を設定するか、オーケストレーターの同等物をその合計の少なくとも設定してください。Kubernetes のデフォルト 30 秒はランナーのドレインパスより短いため、Kubernetes はランナーがドレインを終了する前にポッドを停止します。

372* **[`--retire-at`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)付き**:リタイア時間とホストの停止時間の間のマージンを、典型的なターン、[ランナーのライフサイクル](/docs/ja/self-hosted-environments#runner-lifecycle)が説明するバックグラウンドタスク保持、およびその同じ合計をカバーするようにサイズ設定してください。各起動時にリタイア時間を計算します。例えば `date +%s` にランナーの意図された生涯を加えます。

373* **[`--defer-shutdown-max-min`](#defer-the-drain-past-the-first-signal)付き**:ドレインパス合計に 2 つの部分を追加してください。最初は設定する分です。 2 番目は[最初のシグナルを超えてドレインを遅延させる](#defer-the-drain-past-the-first-signal)が説明するリリース後の猶予です。デフォルトでは 75 秒です。フラグが設定されている場合、ランナーは起動時に組み合わせた図も出力します。ドレインパス合計の後。

374 

375<h3 id="defer-the-drain-past-the-first-signal">

376 最初のシグナルを超えてドレインを遅延させる

377</h3>

378 

379再起動しているランナーが最初のシグナルでドレインするのではなく、最大 `n` 分間保持するセッションを提供し続けるようにしたい場合は、[`--defer-shutdown-max-min <n>`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)を設定してください。最初の `SIGTERM` または `SIGINT` では、ランナーは新しい作業を受け取るのを停止し、保持するセッションを提供し続けます。ポーリングを続けるため、コントロールプレーンはそれらのセッションを再キューイングしません。Claude Code v2.1.238 以降が必要です。

380 

381<h4 id="what-happens-to-the-sessions-the-runner-holds-after-the-first-signal">

382 最初のシグナル後にランナーが保持するセッションに何が起こるか

383</h4>

384 

385最初のシグナルに続く最初の 2 つのステージでは、ランナーはセッションをリリースし、リリースされたセッションはユーザーが次のメッセージを送信するときに新しいランナーで再開されます。最初のシグナルからカウントして、ランナーは 3 つのステージを通じて移動します:

386 

387* **最初の `n` 分間**:ランナーは通常セッションを提供し、`--startup-timeout-min` と `--kill-session-after-min` を適用し続けます。[`--release-idle-session-min`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)も設定した場合、ランナーはそのユーザーがアイドル状態だったセッションをリリースします。それなしでは、アイドルセッションはランナーに留まります。

388* **`n` 分が経過したとき**:ランナーはまだ保持しているすべてのセッションをリリースします。アイドルかどうか。ランナーはターン途中のセッションのターンが終了するのを待ち、ターンのバックグラウンドタスクのために最大 60 秒待ってから、そのセッションをリリースします。

389* **リリース後の猶予が経過したとき**:ランナーはまだ保持しているセッションをドレインし、コントロールプレーンは各ドレインされたセッションを別のランナーにすぐに再キューイングします。リリース後の猶予は `n` 分が経過したときに開始され、デフォルトでは 75 秒です。`--drain-wait-sec` を 60 秒以上に設定した場合、リリース後の猶予は `--drain-wait-sec` + 15 秒です。

390 

391任意のステージで、ランナーはセッションを保持しなくなるとすぐに 0 で終了します。 2 番目のシグナルはステージを短縮します:`--defer-shutdown-max-min` なしの最初のシグナルの場合と同様に、ランナーは直ちにドレインします。ドレインが進行中になると、次のシグナルはランナーを強制終了します。これは、ドレインを開始したのが 2 番目のシグナルであっても、リリース後の猶予の経過であっても同じです。

392 

393<h4 id="size-the-stop-timeout">

394 停止タイムアウトをサイズ設定する

395</h4>

396 

397ホストの停止タイムアウトに、少なくとも 3 つの部分の合計を与えてください:設定する `n` 分、リリース後の猶予、[シャットダウンタイミング](#shutdown-timing)が説明する完全なドレインパス。デフォルト設定ではリリース後の猶予は 75 秒、ドレインパスは 80 秒です。`n` 分 + 155 秒を許可してください。ランナーはこの合計を起動時に出力します。`--defer-shutdown-max-min` が設定されている場合。

398 

399ランナーが終了する前に停止タイムアウトが切れると、ホストはランナーを強制終了します。保持するセッションは `post-session` フックを取得しません。ランナーは登録解除されず、コントロールプレーンは約 1 分後にセッションを再キューイングします。停止タイムアウトをその合計に与えることができない場合は、`--defer-shutdown-max-min` を設定しないままにして、ランナーが最初のシグナルでドレインするようにしてください。

400 

401<h3 id="what-reaches-a-running-post-session-hook">

402 実行中の post-session フックに到達するもの

403</h3>

404 

405`post-session` フックと Claude セッション子は、それぞれ独自の POSIX プロセスグループで実行され、ランナーから分離されているため、停止メカニズムは異なる方法で到達します:

406 

407* **ランナーが既にドレイン中の `SIGTERM`**:ランナーを直ちに強制終了し、ドレインパスの残りをスキップします。[`--defer-shutdown-max-min`](#defer-the-drain-past-the-first-signal)なしでは、ランナーが受け取る 2 番目の `SIGTERM` です。何も実行中の `post-session` フックに信号を送信しません。そのため、孤児を採用する init プロセスを持つベアホストでは、それは独自に終了しますが、監視されていません:タイムアウト予算はもはや適用されず、閉じたログパイプへの書き込みは `SIGPIPE` で強制終了できるため、強制終了から生き残る必要があるフックはそこで独自の出力をファイルにリダイレクトする必要があります。このページのコンテナレシピでは、ランナーはコンテナの PID 1 であり、その終了はコンテナを終了し、systemd のデフォルト `KillMode=control-group` の下では、cgroup 全体のキルは **Cgroup 全体のキル**エントリが説明するようにフックにも到達します。どちらでも、強制終了をフックに対して致命的として扱い、猶予期間に依存してください。

408* **プロセスグループ全体のシグナル**。`kill -- -<pid>` をラッパースクリプト、シェルジョブ制御、またはグループ全体のウォッチドッグで:ランナーと mid-`checkout`-hook サブプロセスに到達します。これは意図的にグループに接続されたままですが、実行中の `post-session` フックまたはセッション子には到達しません。

409* **Cgroup 全体のキル**。systemd のデフォルト `KillMode=control-group` または `terminationGracePeriodSeconds` が期限切れになったときに Kubernetes が配信する `SIGKILL` など:すべてに到達します。フックを含む。プロセスグループ分離はこれらに対して保護しません。これが猶予期間が完全なドレインパスをカバーする必要がある理由です。

410* **フック独自のタイムアウト**:フックが `--post-session-hook-timeout-sec` を超えると、ランナーはフックの全体プロセスグループに `SIGTERM` を送信し、2 秒後に `SIGKILL` を送信します。フックがフォークしたワーカー(tar、rsync、git など)はラッパーシェルと一緒に終了し、孤児として生き残りません。ランナーの監視は、フックの stdio が閉じたときに終了します:独自の出力をファイルにリダイレクトし、`SIGTERM` ステージを超えて生き残るワーカーはランナーの到達範囲を超えています。

411 

412ドレインが開始されたとき、および強制終了時に、ランナーはまだ実行中の `post-session` フックの数をログに記録するため、静かなドレインと mid-snapshot のドレインを区別できます。

413 

414<h2 id="keep-the-base-directory-and-capacity-identical-across-runners">

415 ベースディレクトリと容量をランナー全体で同じに保つ

416</h2>

417 

418ランナーがセッション途中で死亡した場合、サーバーはセッションを再キューイングし、環境内の別のランナーがそれを取得します。そのランナーは、独自の `--base-dir` と `--capacity` からチェックアウトパスを導出します:`--capacity 1` は `--base-dir` の直下にチェックアウトし、`--capacity` が 1 を超える場合は代わりにセッションごとの worktrees を使用します。同じ環境内のランナーがこれらのフラグのいずれかに異なる値を使用する場合、再開されたセッションの作業ディレクトリが変更され、エージェントが以前に記録した絶対パス(編集、ツール呼び出し、独自のメモ)は、もはや存在しない場所を指します。

419 

420環境内のすべてのランナーで同じ `--base-dir` と `--capacity` を使用し、インスタンス ID やホスト名などのホストごとの値を使用しないでください。

421 

422ベースディレクトリのデフォルトは `/workspace` です。[`--base-dir` リファレンス行](/docs/ja/self-hosted-environments-reference#runner-cli-flags)が記録する例外を除きます。ランナーは書き込みアクセスが必要です。起動時に登録する前に、ランナーはディレクトリを作成し、書き込みできることを確認し、できない場合は `cannot create or write to base directory` で終了します。ルートとして開始されたランナーはデフォルト `/workspace` を自分で作成します。非ルートランナーの場合、ランナーを開始する前にディレクトリを作成してランナーのユーザーに所有権を与えるか、`--base-dir` をそのユーザーが既に所有しているディレクトリを指してください。

423 

424<h2 id="reuse-a-pre-warmed-checkout">

425 事前にウォームアップされたチェックアウトを再利用する

426</h2>

427 

428大規模なリポジトリの場合、クローンがセッション起動を支配することがあります。`--capacity 1` で [`checkout` フック](/docs/ja/self-hosted-environments-configuration#checkout) がない場合、ランナーは `<base-dir>/<repo-owner>/<repo>` でリポジトリごとに 1 つの正規クローンを保持し、セッション全体で再利用します。要求された ref をフェッチし、`HEAD` をデタッチして、それにハードリセットします。これは変更がほとんどない場合、ほぼ瞬時に完了します。コールドクローンをスキップするには、次の 2 つの方法のいずれかでクローンを提供します。

429 

430* **イメージ内にクローンを配置する**: ランナーイメージをそのパスにビルドしてクローンを含めます。その後、新しいコンテナはすべてディスクを再利用せずにウォームクローンで起動します。

431* **永続ボリューム上にクローンを配置する**: [`--lock-to-account`](/docs/ja/self-hosted-environments-reference#runner-cli-flags) で 1 人のユーザーアカウントにプリロックされたランナーで、`--base-dir` を永続ボリュームに指定すると、ディスクはそのアカウントのみを提供します。プリロックされたランナーは Claude Tag チャネルセッションを取得しないため、このオプションはそれらを提供するランナーには適用されません。

432 

433再利用パスが保証するもの、しないもの:

434 

435* **任意のクローン形状が機能する**: パスの完全、シャロー、または単一ブランチクローンはそのまま使用されます。ランナーは既存のクローンにフェッチするときに `--depth` を渡しません。そのため、完全なプリウォームは完全な履歴を保持し、シャロークローンはシャローのままです。`CLAUDE_RUNNER_FETCH_DEPTH`(`full`、`0`、または数値。デフォルト 50)は、クローンがまだ存在しない場合にランナーが作成するコールドクローンのみを制御します。

436* **追跡された変更はリセットされ、追跡されていないファイルは保持される**: 各セッションはハードリセットから開始され、前のセッションの追跡された変更を削除しますが、ランナーは `git clean` を実行しないため、ロックされたオーナーの以前のセッションからの追跡されていないファイルはツリーに残ります。

437* **git プロキシを使用する場合、リセットはチェックアウトになる**: [`--use-anthropic-git-proxy`](#use-the-anthropic-git-proxy) を使用すると、ランナーは各セッションの前にクローンの `.git/` をサニタイズし、オブジェクトストア、ref、およびシャロー状態を保持しますが、インデックスを削除するため、各セッションはほぼ瞬時のリセットではなく、完全なワーキングツリーチェックアウトを実行します。それでも再クローンは実行されません。プロキシの下ではサブモジュールプリウォームはサポートされていません。

438* **長いクローンは回避策を必要としない**: ランナーは各 git 操作を 120 秒の無進捗ウォッチドッグと 30 分のハードキャップで制限し、フラットタイムアウトではないため、進捗を報告し続けるスローコールドクローンは完了します。

439 

440<h2 id="pin-the-version">

441 バージョンをピンする

442</h2>

443 

444各セッションの子 Claude Code プロセスはランナー独自のバイナリを実行し、ランナーはセッション内でオートアップデートをオフにするため、すべてのセッションはホストにインストールされたか、イメージに組み込まれたバージョンを実行します。ホストレベルのアップデートはランナーが次に開始するときに有効になります。

445 

446* **フリートを 1 つのバージョンに保持するには**:ピンされたバージョンでイメージをビルドするか、ベアホストで特定のバージョンをインストールし、[オートアップデートを無効にしてください](/docs/ja/setup#disable-auto-updates)

447* **アップグレードするには**:新しいバージョンをインストールするか、イメージを再ビルドしてから、ランナーを再起動してください

448* **プラグイン**:プラグインマーケットプレイスもオートアップデートしません。ランナーの環境で `FORCE_AUTOUPDATE_PLUGINS=1` を設定して、バイナリがピンされたままの間、プラグインをオートアップデートさせます

449 

450<h2 id="scale-the-fleet">

451 フリートをスケーリングする

452</h2>

453 

454オーケストレーターは、ランナーを追加または削除するタイミングを決定します。[ランナーのライフサイクル](/docs/ja/self-hosted-environments#runner-lifecycle)に関する 1 つのオーナーごとのロックのため、最小レプリカ数は、同時にアクティブになると予想されるユーザーと Claude Tag エージェントの数です。`--capacity` は、オーナー全体ではなく、1 つのオーナーのセッション内での並列処理を制御します。

455 

4562 つのスケーリングアプローチが利用可能です。

457 

458* **固定フリート**: 静的なランナーレプリカセットを実行し、各ランナーが提供する [Prometheus メトリクス](/docs/ja/self-hosted-environments-reference#prometheus-metrics)に基づいてスケーリングします

459* **オンデマンドランナー**: `claude self-hosted-runner orchestrator` サブコマンドを実行します。このコマンドは、利用可能なランナーがないキューに入っているセッションについて Anthropic をポーリングし、`spawn-runner` フックを呼び出して、セッションごとに 1 つ起動します。[オンデマンドランナー](/docs/ja/self-hosted-environments-configuration#on-demand-runners)を参照してください。

460 

461<h2 id="known-issues-and-limitations">

462 既知の問題と制限事項

463</h2>

464 

465これらはこのリリースの制限事項です。回避策が存在する場合は記載されています。

466 

467<h3 id="connector-traffic-leaves-your-network">

468 コネクタトラフィックはネットワークを離れます

469</h3>

470 

471Anthropic はランナーからではなく、独自のインフラストラクチャからコネクタツールを呼び出します。コネクタツールは claude.ai コネクタです。GitHub、Slack、Linear など。Claude がセルフホストセッションでコネクタを使用する場合、そのトラフィックはネットワーク境界内から発信されるのではなく、`api.anthropic.com` を通じて移動します。

472 

473セルフホストセッションからコネクタを除外するには、[`allowedMcpServers` および `deniedMcpServers` ポリシー設定](/docs/ja/managed-mcp#policy-based-control-with-allowlists-and-denylists)でフィルタリングしてください。Claude Code はこれらの設定をランナーホストからシードするサーバーとユーザーが追加するサーバーと同様に、Anthropic が配信するコネクタに適用します。他のサーバーの URL ベースの許可リストをデプロイする場合、Claude Code は配信されたコネクタもブロックします。配信されたコネクタを他のサーバーと一緒に利用可能に保つには、Anthropic プロキシパスの配信されたコネクタに一致するエントリを追加してください:

474 

475* `https://api.anthropic.com/v2/ccr-sessions/*`

476* `https://api.anthropic.com/v1/code/sessions/*`

477* `https://api.anthropic.com/v1/code/mcp/*`

478 

479ツールトラフィックがネットワーク内に留まる必要がある場合は、代わりにランナーイメージ上でローカル MCP サーバーとして同等のツールを実行してください。[MCP サーバー](/docs/ja/self-hosted-environments-configuration#mcp-servers)を参照してください。

480 

481<h3 id="some-sessions-don’t-count-as-idle">

482 一部のセッションはアイドルとしてカウントされません

483</h3>

484 

485終了しないバックグラウンドタスクを保持するセッションはアイドルとしてカウントされないため、`--release-idle-session-min` はそのセッションのスロットをリリースしません。実行中のツール呼び出し内から要求された承認を待機しているセッションもアイドルとしてカウントされません。常に `--kill-session-after-min` をそれと一緒に設定して、セッションがスロットを無期限に保持できないようにハードバックストップとしてください。

486 

487`--kill-session-after-min` は暴走セッションのバックストップです。v2.1.260 以降のランナーでは、制限に達したセッションは直ちに終了されません。ランナーは猶予ウィンドウを与えます。デフォルトでは 15 分です。[`SELF_HOSTED_RUNNER_MAX_LIFETIME_GRACE_MS`](/docs/ja/self-hosted-environments-reference#environment-variable-only-settings)で変更できます:

488 

489* セッションがユーザーを待機している場合、またはターンが終了してバックグラウンドタスクのみを保持している場合、ランナーはそれを直ちにリリースします。セッションはユーザーが次のメッセージを送信するときに再開されます。

490* ターンがまだ実行中の場合、ランナーはターンが終了するのを待つか、セッションが次にユーザーを待機するのを待ってから、それをリリースします。

491* セッションが猶予ウィンドウの終了時にランナーに留まっている場合、ランナーはそれを終了し、実行中のターンの作業は失われます。実行中のツール呼び出し内から要求された承認を待機しているターンは、セッションがウィンドウを超えて存続する 1 つの方法です。

492 

493リリースされたセッションは新しいクローンから再開されるため、プッシュしていない作業はどちらの方法でも失われます。[再開されたセッションはプッシュされていない作業を失う](#additional-limitations)を参照してください。v2.1.260 より前では、ランナーはすべてのセッションを制限で終了し、実行中のターンが終了するのを最大猶予ウィンドウ待機しました。

494 

495フラグを最長予想セッション(例えば 8 時間の場合は `--kill-session-after-min 480`)の上に設定してください。アイドル状態になった会話からスロットを解放するには、代わりに `--release-idle-session-min` を使用してください。

496 

497<h3 id="additional-limitations">

498 追加の制限事項

499</h3>

500 

501* **再開されたセッションはプッシュされていない作業を失う**:セッションがリリースされるか、ランナーが再起動され、ユーザーが別のメッセージを送信すると、セッションは新しいランナーで再開され、開始ブランチからリポジトリを再度クローンするため、セッションがプッシュしていない作業は失われます。[`--push-outcome-on-release`](/docs/ja/self-hosted-environments-reference#runner-cli-flags)を設定して、ランナーがリリースする前にセッションの結果ブランチをベストエフォートでプッシュするようにします。再開されたセッションはそれらのコミットから開始されます。これはコミットされた作業を保持し、ダーティな作業ツリーではありません。有効にする前に、ソースリモートの `claude/*` refs へのプッシュを制限してください。例えば、ブランチルールセットを使用します:再開時に、ランナーは以前にプッシュされたブランチをフェッチし、誰がプッシュしたかを検証しません。そのため、それらの refs へのプッシュアクセスを持つすべてのユーザーが再開されたワークスペースにコンテンツを配置できます。ランナーは再開時にセッションごとの設定も破棄します。つまり、セッションの Claude 設定ディレクトリとセッションが書き込んだシェル状態です。`--push-outcome-on-release` はそれらをカバーしません。

502* **プライベートリポジトリは mid-session に追加できません**:セッション開始後に追加されたリポジトリは、セルフホストランナーで認証情報でクローンされないため、追加は失敗します。セッションを作成するときに、セッションが必要とするすべてのリポジトリを選択してください。

503* **一部のコネクタはセルフホストセッションに表示されません**:claude.ai 設定でまだ接続していないコネクタはセルフホストセッションにリストされず、セッションはそれを接続するように促しません。最初に設定で接続してから、新しいセッションを開始してください。実行中のセッションにコネクタを追加しても、Claude がそのツールを利用できるようにはなりません。新しく追加されたコネクタを取得するには、新しいセッションを開始してください。

504 

505<h3 id="report-an-issue">

506 問題を報告する

507</h3>

508 

509セルフホスト環境の問題については、Anthropic アカウントチームに連絡してください。

510 

511<h2 id="troubleshooting">

512 トラブルシューティング

513</h2>

514 

515ガイド付き診断については、ランナーホスト上で doctor サブコマンドを実行してください。doctor サブコマンドは、ランナーのログと状態が添付された対話型 Claude Code セッションを開始します。そのホスト上で `claude auth login` でサインインして、セッションが環境、ランナー、キューに入っているセッションをクエリできるようにしてください。そのサインインがない場合、例えばホストが API キーで認証する場合、ローカルヘルスエンドポイント、メトリクス、およびランナーのログに限定され、`--log-file` でランナーを起動した場合のみログを読み取ります。

516 

517```bash theme={null}

518claude self-hosted-runner doctor

519```

520 

521一般的な問題:

522 

523* **ランナーが環境に表示されない**:ホストが HTTPS 経由で `api.anthropic.com` に到達できること、環境シークレットが最新であること、ホストの時刻が実時間の 5 分以内であることを確認してください。より大きなずれは認証失敗を引き起こします。ランナーは認証失敗時に拒否理由を含む `[runner:fatal]` をログに記録します。

524* **ランナーが `cannot create or write to base directory` で起動時に終了する**:ランナーが `--base-dir` を作成または書き込みできません。これはデフォルトで `/workspace` です。ディレクトリの所有権を修正するか、[ランナー全体でベースディレクトリと容量を同じに保つ](#keep-the-base-directory-and-capacity-identical-across-runners)で説明されているように `--base-dir` を書き込み可能なパスに指定してください。ランナーが代わりにベースディレクトリチェックがタイムアウトしたことを示す `[runner:fatal]` をログに記録する場合、ディレクトリはハングしている NFS または CSI マウント上にあります。権限ではなくマウントヘルスを確認してください。ランナーは `--log-file` を開く前にこれらの起動失敗を stderr に出力するため、ログファイルではなくターミナルまたはプラットフォームのコンテナログで探してください。v2.1.225 より前では、ランナーは起動時にベースディレクトリをチェックしておらず、この設定ミスはピックアップ後にセッションを失敗させました。

525* **セッションがキューに留まる**:すべてのオンラインランナーは異なる所有者にロックされている可能性があります。各ランナーの `claude_code_self_hosted_runner_locked_account` [メトリクス](/docs/ja/self-hosted-environments-reference#prometheus-metrics)またはその `[runner:health]` ログ行の `locked_account` フィールドをチェックして、誰がそれを保持しているかを確認してください。どちらも、ランナーが `act.email` クレームを含むセッショントークンを発行された後にのみ所有者のメールアドレスを表示します。これは Claude Tag エージェントのセッションでは決して行われません。クレームがない場合、ランナーは `locked_account` シリーズを出力せず、`locked_account=yes` をログに記録します。これはランナーがロックされていることを示しますが、どの所有者にロックされているかは示しません。レプリカを追加するか、既存のランナーがドレインして再起動するのを待ってください。環境がオンデマンドランナーを使用する場合は、代わりにオーケストレーターをチェックしてください。[オンデマンドランナー](/docs/ja/self-hosted-environments-configuration#on-demand-runners)を参照してください。

526* **セッションがピックアップ直後に失敗する**:claude.ai/code でセッションを開いてエラーを確認してください。最も一般的な原因は、ランナーイメージの [git 認証情報](#configure-git)の欠落とインストールされていないビルドツールです。書き込み不可能なベースディレクトリはセッションを失敗させるのではなく、起動時にランナーを停止させます。このリストの **ランナーが `cannot create or write to base directory` で起動時に終了する** エントリを参照してください。

527* **セッションが認証エグレスプロキシ経由でネットワークに到達できない**:[`--proxy-authorization-command` または `--proxy-authorization-file`](#authenticate-to-an-egress-proxy) で設定したソースが失敗する場合、30 秒後にタイムアウトする場合、または空の値を生成する場合、ランナーはその接続に `502 Bad Gateway` で応答し、理由をログに記録します。ランナーはそのログでコマンドの stderr を編集し、ヘッダー値をログに記録しません。`--proxy-authorization-command` を使用する場合、ホスト上でコマンド自体を実行して、stdout 全体のヘッダー値を出力することを確認してください。ランナーが代わりに `could not start the proxy-authorization listener` で起動時に終了する場合、ループバックリスナーを開くことができませんでした。

528* **ランナーが `rejecting the malformed poll response` を含む `Poll failed` 行をログに記録する**:ランナーは、本体がキューの予期された JSON ではないワークポール応答を受け取りました。最も一般的には、インターセプティングプロキシやキャプティブポータルなど、ランナーと `api.anthropic.com` の間の何かが独自のページで応答したためです。ランナーは応答を拒否し、`claude_code_self_hosted_runner_poll_errors_total` [メトリクス](/docs/ja/self-hosted-environments-reference#prometheus-metrics)の `transport` 種別の下でカウントし、[セッションライフサイクル](/docs/ja/self-hosted-environments#session-lifecycle)で説明されている失敗したポールスケジュールで再試行します。ランナーはライブセッションを提供し続けます。`api.anthropic.com` からの応答を変更されずに通すようにプロキシを設定してください。v2.1.246 より前では、ランナーはそのような応答を空のワークキューとして読み取り、ライブセッションを終了するか、終了させる可能性がありました。

529* **セッションのブランチがリモートに存在しなくなった**:セッションが読み取り専用の git ソースの場合、ランナーはそのソースをスキップして残りのソースで続行します。セッションが結果をプッシュするソースの場合、削除されたブランチ(通常はマージされて自動削除されたため)はセッションを失敗させ、リポジトリとブランチを名前付けするエラーを表示し、ブランチを復元して再試行するよう求めます。ランナーはスキップするとリポジトリがまったくなくなる場合、同じエラーでセッションを失敗させます。v2.1.228 より前では、そのようなセッションは空のディレクトリで開始されました。

530* **セッションの開始に数分かかる**:初期クローンが通常支配的です。`claude_code_self_hosted_runner_session_init_duration_seconds` [メトリクス](/docs/ja/self-hosted-environments-reference#prometheus-metrics)を監視して確認し、[事前にウォーミングされたチェックアウト](#reuse-a-pre-warmed-checkout)またはより小さい `CLAUDE_RUNNER_FETCH_DEPTH` でクローンを削減してください。

531* **ポッドがドレイン中に強制終了される**:`terminationGracePeriodSeconds` をランナーが起動時にログに記録する値以上に引き上げてください。[シャットダウンタイミング](#shutdown-timing)を参照してください。

532 

533ログが初期化されると、ランナーはそのライフサイクルログ(`[runner:fatal]` 行を含む)を stdout に書き込み、デバッグ出力を stderr に書き込みます。すべて JSON ではなくプレーンテキスト行として。上記のトラブルシューティングエントリで説明されている起動失敗はその前に stderr に出力されます。`--log-file` で両方のストリームをキャプチャします。これにより `self-hosted-runner doctor` がそれらをテールできるようになり、またはプラットフォームのログ収集で。各セッションの子プロセスは個別のデバッグログを書き込みます。失敗時、ランナーはログを保持し、ランナーログにログのパスを出力し、ログのテールを claude.ai/code のセッションと一緒に表示します。

534 

535<h2 id="what’s-next">

536 次のステップ

537</h2>

538 

539* [セッションをカスタマイズする](/docs/ja/self-hosted-environments-configuration):ラッパースクリプト、ライフサイクルフック、オンデマンドランナー、MCP サーバー、権限

540* [エンドツーエンドをテストする](/docs/ja/self-hosted-environments-testing):本番環境に昇格させる前に新しいランナーイメージを検証する

541* [リファレンス](/docs/ja/self-hosted-environments-reference):すべての CLI フラグ、環境変数、メトリクス

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# 自己ホスト環境でセッション ID を検証する

6 

7> CLAUDE_CODE_SESSION_ACCESS_TOKEN JWT を検証して、自己ホスト環境内のセッションからのリクエストをネットワーク上のサービスが信頼できるようにします。

8 

9<Note>

10 自己ホスト環境は Team および Enterprise プランでパブリックベータ版です。[オーナー](/docs/ja/cloud-environments#organization-shared-environments)が [**Cloud environments** 管理ページ](https://claude.ai/admin-settings/cloud-environments)で **Allow self-hosted environments** をオンにすることで有効になります。このページではセッション ID 検証について説明します。セットアップについては[クイックスタート](/docs/ja/self-hosted-environments-quickstart)を、フリート構成については[本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy)を参照してください。

11</Note>

12 

13[自己ホスト環境](/docs/ja/self-hosted-environments)では、[ウェブ上の Claude Code](/docs/ja/claude-code-on-the-web) セッションが Anthropic のインフラストラクチャではなく、お客様が運用するインフラストラクチャ上で実行されます。セッションはお客様のネットワーク内で実行されるため、Claude はお客様の内部サービスを直接呼び出すことができます。これらのサービスは、リクエストが環境内の Claude Code セッションから来たことを確認し、そのセッションを作成したユーザーまたはサービス ID を識別する方法が必要です。

14 

15自己ホスト環境内のすべてのセッションは、`CLAUDE_CODE_SESSION_ACCESS_TOKEN` 環境変数に署名付き JSON Web Token(JWT)を受け取ります。セッションはトークンをベアラー認証情報として提示します。たとえば、Claude が実行するスクリプトは `curl -H "Authorization: Bearer $CLAUDE_CODE_SESSION_ACCESS_TOKEN"` を使用してお客様のサービスを呼び出すことができます。Anthropic はトークンに署名し、検証キーを公開 JWKS エンドポイントで公開します。お客様のサービスはこれらのキーを取得し、署名を検証し、クレームを読んでアクセス権を決定します。

16 

17<h2 id="the-session-token">

18 セッショントークン

19</h2>

20 

21検証コードを作成する前に、トークンが何を確立するか、および JWT ライブラリが見る形式を理解してください。

22 

23<h3 id="what-the-token-proves">

24 トークンが証明すること

25</h3>

26 

27有効なトークンは一部の事実を確立し、意図的に他の事実は確立しません。

28 

29* **証明すること**: Anthropic が特定の環境内の特定のセッション用にトークンを発行したこと、およびセッションがどのように作成されたか。組織内のユーザーによって、または組織のサービス ID によって([Claude Tag チャネルセッション](https://claude.com/docs/claude-tag/concepts/agent-identity)の開始方法)

30* **証明しないこと**: ランナーホスト上のどのプロセスがそれを提示するか。トークンはセッション内の環境変数に存在するため、Claude が実行するコード、およびセッションが開始するツールまたは MCP サーバーは、それを読んで提示できます。

31 

32お客様のサービスに対する 2 つの結果:

33 

34* `aud` クレームを環境 ID([**Cloud environments** 管理ページ](https://claude.ai/admin-settings/cloud-environments)で環境と共に表示される `ccpool_...` 値)に対して検証し、他の組織の環境に発行されたトークンを拒否します。

35* トークンから派生させた認証情報を、単一のコーディングセッションが実行できることにスコープします。セッションの作成者ができるすべてのことではなく。[派生認証情報のスコープ](#scope-derived-credentials)を参照してください。

36 

37<h3 id="token-format">

38 トークン形式

39</h3>

40 

41`CLAUDE_CODE_SESSION_ACCESS_TOKEN` の値は `sk-ant-cc-` プレフィックスの後に標準的な 3 部構成の JWT が続きます。

42 

43```text theme={null}

44sk-ant-cc-<base64url header>.<base64url payload>.<base64url signature>

45```

46 

47JWT ライブラリに値を渡す前にプレフィックスを削除します。Anthropic ホスト型クラウドセッションに発行されたトークンは代わりに `sk-ant-si-` プレフィックスを持ち、異なるキーセットで署名されているため、`sk-ant-cc-` で始まらない値は拒否します。

48 

49署名アルゴリズムは `ES256` で、これは P-256 曲線上の ECDSA と SHA-256 です。トークンヘッダーは、それに署名した JWKS 内のキーを識別する `kid` を持ちます。

50 

51<h2 id="verify-the-token">

52 トークンを検証する

53</h2>

54 

55検証は 2 つの場所のいずれかで実行されます。ネットワーク上のサービスは Anthropic の公開キーに対してトークンを暗号的に検証し、セッション内のラッパースクリプトはランナーバイナリの組み込みデコーダーを代わりに使用できます。

56 

57<h3 id="verify-the-token-from-your-service">

58 サービスからトークンを検証する

59</h3>

60 

61Anthropic は検証キーを公開の認証なしエンドポイントで公開します。

62 

63```text theme={null}

64https://api.anthropic.com/v1/code/.well-known/jwks.json

65```

66 

67レスポンスは標準的な [JSON Web Key Set](https://www.rfc-editor.org/rfc/rfc7517) です。Anthropic は署名キーを定期的にローテーションし、ローテーション前のキーはセットに十分な期間残り、それらが署名したトークンが検証を続けるため、単一のキーをピンしないでください。エンドポイントは `Cache-Control: public, max-age=300` を設定するため、キーセットをキャッシュして 5 分ごとに再取得することは安全です。

68 

69これらのチェックに対して各受信トークンを検証します。

70 

71<Steps>

72 <Step title="プレフィックスを確認する">

73 値が `sk-ant-cc-` で始まらない場合は拒否し、そのプレフィックスを削除します。残りは標準的なコンパクト JWT です。

74 </Step>

75 

76 <Step title="署名を検証する">

77 JWKS を取得し、トークンヘッダーの `kid` と一致するキーを選択し、`ES256` 署名を検証します。`alg` ヘッダーが `ES256` でないトークンを拒否します。キャッシュされたキーセットにない `kid` を持つトークンが到着した場合、拒否する前に JWKS を 1 回再取得します。ローテーション後、新しいトークンはキャッシュされたセットにまだないキーで署名されます。

78 </Step>

79 

80 <Step title="発行者を検証する">

81 `iss` が正確に `ccr` でない場合、トークンを拒否します。

82 </Step>

83 

84 <Step title="環境に対してオーディエンスを検証する">

85 `aud` クレームは配列です。環境 ID(`ccpool_...` の形式)を含まない限り、トークンを拒否します。環境 ID は [**Cloud environments** 管理ページ](https://claude.ai/admin-settings/cloud-environments)の環境の詳細ダイアログに表示され、環境のセッショントークンのいずれかに `ccr:pool_id` クレームとして表示されます。このチェックはトークンを環境にスコープし、他の組織に発行されたトークンを拒否するものです。

86 </Step>

87 

88 <Step title="ロールを検証する">

89 `ccr:role` が正確に `session_worker` でない場合、トークンを拒否します。環境シークレット、ランナートークン、ワークオーダーなど、自己ホスト環境用に発行された他のトークンは同じキーセットで署名されていますが、異なるロールを持ちます。

90 </Step>

91 

92 <Step title="有効期限を検証する">

93 `exp` が過去の場合、トークンを拒否します。Anthropic はセッショントークンをデフォルトで 4 時間の有効期限、最大 8 時間で発行します。ランナーは有効期限前にトークンを更新し、新しい値をセッションにプッシュするため、Claude が更新後に開始するサブプロセスはそれを継承します。したがって、1 つのセッションは有効期間中にお客様のサービスに複数の異なる有効なトークンを提示できます。

94 </Step>

95 

96 <Step title="ID を読む">

97 作成ユーザーの ID は `act` クレームにあります。`act.sub` はプレフィックス形式 `user:<id>` の Anthropic ユーザー ID で、`act.email` は作成サーフェスが記録した場合、メールアドレスです。組織のサービス ID が作成するセッション(Claude Tag チャネルセッションを含む)は代わりに `agent:` サブジェクトを持つため、`act.sub` が `user:` プレフィックスを持つ場合にのみセッションをユーザー作成として扱い、ID クレームが存在しないかどうかをテストするのではなく。完全な構造とフラット重複クレームについては、[クレームリファレンス](#claims-reference)を参照してください。

98 </Step>

99</Steps>

100 

101チェックは標準 JWT ライブラリに直接マップされます。以下の例は、JWKS フェッチ、キャッシング、および `kid` 選択を処理する [`jose`](https://www.npmjs.com/package/jose) を使用した Node.js での完全なシーケンスと、[`PyJWT`](https://pyjwt.readthedocs.io/) とその組み込み JWKS クライアントを使用した Python で実装しています。

102 

103<Tabs>

104 <Tab title="Node.js (jose)">

105 ```typescript theme={null}

106 import { createRemoteJWKSet, jwtVerify } from "jose";

107 

108 const JWKS = createRemoteJWKSet(

109 new URL("https://api.anthropic.com/v1/code/.well-known/jwks.json")

110 );

111 

112 const PREFIX = "sk-ant-cc-";

113 const EXPECTED_POOL_ID = "ccpool_...";

114 

115 export async function verifySessionToken(raw: string) {

116 if (!raw.startsWith(PREFIX)) {

117 throw new Error("not a self-hosted runner session token");

118 }

119 const jwt = raw.slice(PREFIX.length);

120 

121 const { payload } = await jwtVerify(jwt, JWKS, {

122 issuer: "ccr",

123 audience: EXPECTED_POOL_ID,

124 algorithms: ["ES256"],

125 });

126 

127 if (payload["ccr:role"] !== "session_worker") {

128 throw new Error("token is not a session_worker token");

129 }

130 

131 const act = payload.act as { email?: string; sub?: string };

132 return {

133 sessionId: payload["ccr:session_id"] as string,

134 poolId: payload["ccr:pool_id"] as string,

135 orgId: payload["ccr:org_id"] as string,

136 creatorEmail: act?.email,

137 creatorSub: act?.sub,

138 };

139 }

140 ```

141 </Tab>

142 

143 <Tab title="Python (PyJWT)">

144 ```python theme={null}

145 import jwt

146 from jwt import PyJWKClient

147 

148 JWKS_URL = "https://api.anthropic.com/v1/code/.well-known/jwks.json"

149 PREFIX = "sk-ant-cc-"

150 EXPECTED_POOL_ID = "ccpool_..."

151 

152 jwks = PyJWKClient(JWKS_URL)

153 

154 

155 def verify_session_token(raw: str) -> dict:

156 if not raw.startswith(PREFIX):

157 raise ValueError("not a self-hosted runner session token")

158 token = raw.removeprefix(PREFIX)

159 

160 signing_key = jwks.get_signing_key_from_jwt(token)

161 payload = jwt.decode(

162 token,

163 signing_key.key,

164 algorithms=["ES256"],

165 issuer="ccr",

166 audience=EXPECTED_POOL_ID,

167 )

168 

169 if payload.get("ccr:role") != "session_worker":

170 raise ValueError("token is not a session_worker token")

171 

172 act = payload.get("act") or {}

173 return {

174 "session_id": payload["ccr:session_id"],

175 "pool_id": payload["ccr:pool_id"],

176 "org_id": payload["ccr:org_id"],

177 "creator_email": act.get("email"),

178 "creator_sub": act.get("sub"),

179 }

180 ```

181 </Tab>

182</Tabs>

183 

184<h3 id="verify-the-token-inside-the-session">

185 セッション内でトークンを検証する

186</h3>

187 

188[ラッパースクリプト](/docs/ja/self-hosted-environments-configuration#wrapper-scripts)はセッション内で Claude が開始する前に実行されます。JWT ライブラリを呼び出す代わりに、ランナーバイナリの `self-hosted-runner decode-token` サブコマンドを実行できます。サブコマンドは位置引数、`CLAUDE_CODE_SESSION_ACCESS_TOKEN`、またはパイプされた stdin からトークンを読み取ります(この順序で)。その後、プレフィックスを削除し、JWKS エンドポイントに対して署名を検証し、有効期限をチェックし、クレームを JSON として出力します。サブコマンドは署名と有効期限チェックのみを実行します。`iss`、`aud`、または `ccr:role` はチェックしません。ラッパーの認証決定がこれらのクレームに依存する場合、出力された JSON からそれらを読み取り、明示的に比較します。

189 

190このコマンドは作成者 ID を抽出し、SSO プロバイダーのサブジェクト、メールアドレス、作成者の `act.sub` サブジェクト(`user:<id>` または `agent:<id>`)の順で優先します。

191 

192```bash theme={null}

193"$CLAUDE_RUNNER_CLAUDE_BIN" self-hosted-runner decode-token | jq -re '.act.attested_by.sub // .act.email // .act.sub'

194```

195 

196ラッパーはランナー自身のバイナリへの絶対パスを `CLAUDE_RUNNER_CLAUDE_BIN` で受け取ります。PATH で解決された `claude` ではなく、そのパスを使用して、デコードがランナー自身が使用するのと同じバイナリで実行されるようにします。

197 

198`jq -r` ではなく `jq -re` を使用して、クレームが見つからない場合は 0 以外の終了コードが発生するようにします。`-r` だけでは、クレームが見つからない場合、リテラル文字列 `null` を出力して 0 で終了し、不正な値を静かに下流に渡します。JWKS エンドポイントに到達できないオフライン検査の場合のみ、`decode-token` に `--no-verify` を渡します。

199 

200<h2 id="claims-reference">

201 クレームリファレンス

202</h2>

203 

204以下の表は、検証に関連するセッショントークンクレームをリストしています。`ccr:*` 名前空間と `act` チェーンから ID を読み取ります。フラット `account_email`、`organization_uuid`、および `account_uuid` クレームは、削除される可能性のある後方互換性の重複です。組織のサービス ID が作成するセッション(Claude Tag チャネルセッションを含む)は、`act.sub` に `agent:` サブジェクトを持ち、`act.email`、`ccr:account_id`、`account_email`、および `account_uuid` を省略します。2 つのメールクレームはユーザー作成セッションでもオプションです。Anthropic はセッション作成時にそれらを記録するのは、作成リクエストの認証情報がメールを持つ場合のみで、CLI からディスパッチされたセッションは両方を欠く可能性があるため、メールではなく `act.sub` または `ccr:account_id` で ID をキーにします。トークンはこのテーブルを超えて追加のクレームを持つこともできます。認識しないクレームは無視します。

205 

206| クレーム | 型 | 説明 |

207| :------------------ | :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

208| `iss` | 文字列 | 常に `ccr`。 |

209| `sub` | 文字列 | `ccr:session:<session_id>`。 |

210| `aud` | 文字列の配列 | 常に `anthropic-api` を含みます。自己ホスト環境内のセッションの場合、配列は `ccpool_...` などの環境 ID も含みます。`anthropic-api` ではなく環境 ID を検証します。 |

211| `exp` | 数値 | Unix タイムスタンプとしての有効期限。4 時間のデフォルト有効期限、8 時間の最大値。 |

212| `iat` | 数値 | Unix タイムスタンプとして発行された時刻。 |

213| `jti` | 文字列 | 一意のトークン識別子。 |

214| `ccr:role` | 文字列 | セッショントークンの場合、常に `session_worker`。 |

215| `ccr:session_id` | 文字列 | セッション ID。`sub` のサフィックスと同じ値。 |

216| `ccr:pool_id` | 文字列 | 環境 ID。`aud` に表示される同じ値。 |

217| `ccr:org_id` | 文字列 | Anthropic 組織 ID。 |

218| `ccr:account_id` | 文字列 | 作成ユーザーの Anthropic アカウント ID。`act.sub` の値から `user:` プレフィックスを除いたもので、タグ付き `user_...` ID。[spawn-runner フック](/docs/ja/self-hosted-environments-configuration#the-spawn-runner-hook)の `CLAUDE_RUNNER_ACCOUNT_ID` が持つ値と同じで、[`--lock-to-account`](/docs/ja/self-hosted-environments-reference#runner-cli-flags) が受け入れるため、3 つは等しい文字列として比較されます。 |

219| `account_email` | 文字列 | `act.email` の重複。`act.email` がない場合は常に存在しません。 |

220| `organization_uuid` | 文字列 | Anthropic 組織 UUID。 |

221| `account_uuid` | 文字列 | 作成ユーザーの Anthropic アカウント UUID。 |

222| `act` | オブジェクト | [RFC 8693](https://www.rfc-editor.org/rfc/rfc8693) 委任チェーン。[`act` チェーン](#the-act-chain)を参照してください。 |

223 

224<h3 id="the-act-chain">

225 `act` チェーン

226</h3>

227 

228`act` クレームは、セッションを作成したユーザーまたはサービス ID から、ランナーを認めた[環境](/docs/ja/self-hosted-environments#key-concepts)のシークレット、およびそのシークレットを作成した ID までの完全な委任パスを記録します。作成者は最も外側のアクターであるため、`act.sub` は直接それらを識別します。

229 

230| パス | 説明 |

231| :---------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- |

232| `act.sub` | 作成ユーザーの Anthropic ユーザー ID(`user:<id>` の形式)、または組織のサービス ID がセッションを作成した場合は `agent:<id>`(Claude Tag チャネルセッションの場合)。 |

233| `act.email` | 作成ユーザーのメールアドレス(セッション作成時に記録された場合)。それを要求しないでください。`act.sub` でキーにします。 |

234| `act.attested_by` | 作成ユーザーのアップストリーム ID プロバイダーの証明(利用可能な場合)。`act.attested_by.sub` は Google や Okta などの SSO プロバイダーが発行したサブジェクトです。独自のシステムの ID にマップする場合、`act.email` よりこれを優先します。 |

235| `act.act` | セッションを生成したランナー。`act.act.sub` は `ccr:runner:<runner_id>`。 |

236| `act.act.act` | 環境。`act.act.act.sub` は `ccr:pool:<pool_id>`。 |

237| `act.act.act.act` | ランナーが登録した環境シークレットを作成した ID。チェーンはここで終わります。 |

238 

239<h2 id="scope-derived-credentials">

240 派生認証情報のスコープ

241</h2>

242 

243セッショントークンはセッションを作成したユーザーまたはサービス ID を識別しますが、それを作成者が直接ログインするのと同等として扱わないでください。トークンはセッション内の環境変数に存在するため、Claude が実行するコード、およびセッションが開始するツールまたは MCP サーバーは、それを読んで提示できます。

244 

245検証もオフラインです。JWKS に対して検証するトークンは、その `exp` まで有効なままで、セッションに何が起こったかに関係なく、Anthropic はセッショントークンの失効フィードを公開しません。トークンから派生させるものはそれに応じてバインドします。

246 

247サービスがトークンを内部認証情報と交換する場合、1 つのコーディングセッションが到達すべきことにスコープされた認証情報を発行します。

248 

249* **機能を制限する**: セッションがコーディングタスクに必要なリソースへの読み取りおよび書き込みアクセスを付与し、作成者が他の場所で保持する管理機能は付与しません。

250* **有効期限を制限する**: 派生認証情報をトークンの `exp` またはそれより短い期間にバインドします。

251* **セッションとして監査する**: `ccr:session_id` と `jti` を作成者 ID と共に記録して、アクションを特定のセッションにトレースバックできるようにします。

252 

253<h2 id="related-environment-variables">

254 関連環境変数

255</h2>

256 

257作成者 ID は、トークンを検証しない 2 つのサーフェスのプレーンテキスト環境変数にも表示されます。

258 

259* **[`spawn-runner` フック](/docs/ja/self-hosted-environments-configuration#the-spawn-runner-hook)(オーケストレーター上)**: フックはキューに入れられたセッションのランナーが存在する前に実行され、`CLAUDE_RUNNER_ACCOUNT_EMAIL` や `CLAUDE_RUNNER_ACCOUNT_ID` などの変数で作成者 ID を受け取ります。オーケストレーターはワークオーダー(1 つのランナーを生成することを認可する署名付き 1 回限りのトークン)からそれらを読み取り、ワークオーダーの署名自体を検証せずに。クレームは環境シークレットが認証するオーケストレーターの Anthropic への接続を介してワークオーダーが到着するため、信頼されます。

260* **[ラッパースクリプト](/docs/ja/self-hosted-environments-configuration#wrapper-scripts)(セッション内)**: ラッパーは `CCR_SESSION_ACCOUNT_EMAIL` を受け取ります。これは作成者のメールで、署名検証なしでトークンから事前に抽出されたものです。変数は認証決定ではなく、コミットトレーラーなどのラベル付けに適しています。

261 

262オーケストレーター側の決定(マシンイメージの選択など)にはプレーンテキスト変数を使用します。ランナーの環境を信頼するのではなく、ダウンストリームサービスが独立した暗号化証明を必要とする場合は `CLAUDE_CODE_SESSION_ACCESS_TOKEN` を使用します。

263 

264<h2 id="what’s-next">

265 次のステップ

266</h2>

267 

268* [自己ホスト環境](/docs/ja/self-hosted-environments): 環境、ランナー、およびセッションモデル。[クイックスタート](/docs/ja/self-hosted-environments-quickstart)と[本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy)はセットアップと運用を保持しています。

269* [セッションをカスタマイズする](/docs/ja/self-hosted-environments-configuration): トークンを使用するラッパースクリプト、および `spawn-runner` フック

270* [リファレンス](/docs/ja/self-hosted-environments-reference): CLI フラグ、環境変数、およびメトリクス

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# セルフホストされた環境のクイックスタート

6 

7> セルフホストされた環境を初めてセットアップします。Claude Code をインストールし、環境を作成し、ランナーを起動し、セッションをルーティングします。

8 

9<Note>

10 セルフホストされた環境は Team および Enterprise プランでパブリックベータ版です。[利用可能性と制限事項](/docs/ja/self-hosted-environments#availability-and-limitations)は有効化パスをカバーしています。このページは最初のセッションを実行します。詳細は[セルフホストされた環境](/docs/ja/self-hosted-environments)を参照し、本番環境へのデプロイについては[本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy)を参照してください。

11</Note>

12 

13[セルフホストされた環境](/docs/ja/self-hosted-environments)は、Claude Code の[クラウドセッション](/docs/ja/claude-code-on-the-web)を、組織が運用するインフラストラクチャ上で実行し、デプロイするランナープロセスによって実行されます。このクイックスタートは最初のセットアップを行います。最小限の構成は、単一ホスト上の 1 つのランナーで 1 つのテストセッションを実行することです。2 つのステップがあります。[環境とランナーを作成し、セッションをルーティングする](#set-up-an-environment-and-runner)、その後[実行中のセッションにターミナルからメッセージを送信する](#send-a-follow-up-message-to-a-running-session)。2 つのサーフェス間を移動します。claude.ai は環境の作成、ステータスの確認、セッションのルーティング用で、ホスト上のターミナルはランナーが行うすべてのことに使用します。

14 

15終了時には、[**Cloud environments** 管理ページ](https://claude.ai/admin-settings/cloud-environments)に環境があり、ランナーが仕事をポーリングしており、セッションがホスト上で実行されています。実際のリポジトリまたは内部システムを接続する前に、[本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy)を実行してください。これはセキュリティ体制、エグレス制御、git 認証情報、およびオーケストレーションをカバーしています。

16 

17<h2 id="prerequisites">

18 前提条件

19</h2>

20 

21<h3 id="organization-and-roles">

22 組織とロール

23</h3>

24 

25claude.ai 側には以下が必要です。

26 

27* **セルフホストされた環境を許可**は、[**Cloud environments** 管理ページ](https://claude.ai/admin-settings/cloud-environments)で[オーナー](/docs/ja/cloud-environments#organization-shared-environments)によってオンにされます。**新規**ボタンはそれがオンになるまで表示されません。ロールを保持していない場合、保持している人が環境を作成してシークレットを渡すことができます。このページのランナーとターミナルのステップには claude.ai ロールは不要です。ステップが管理 UI でステータスをチェックする場合、ランナー自身のログ行が同じシグナルを提供します。

28* 組織の[GitHub 接続](/docs/ja/claude-code-on-the-web#github-authentication-options)。開発者がセッションを開始するときにリポジトリを選択できるようにします。

29 

30<h3 id="host-and-network">

31 ホストとネットワーク

32</h3>

33 

34ランナーホストには以下が必要です。

35 

36* `api.anthropic.com`、`claude.ai` および以下のインストールステップ用のダウンロードホストへのアウトバウンド HTTPS、および git ホストへのクローン用の Linux または macOS ホストまたはコンテナ。[ネットワーク要件テーブル](/docs/ja/self-hosted-environments-deploy#network-requirements)に完全なリストがあります。Windows はランナーホストとしてサポートされていません。代わりに Linux コンテナでランナーを実行してください。セッションは claude.ai のブラウザから開始されるため、開発者ワークステーションは影響を受けません。

37* NTP などで実時間に同期されたクロック。クロックが 5 分以上ずれていると認証が失敗します。[トラブルシューティング](/docs/ja/self-hosted-environments-deploy#troubleshooting)を参照してください。

38 

39<h3 id="software-on-the-runner-host">

40 ランナーホスト上のソフトウェア

41</h3>

42 

43開始する前にホストにインストールしてください。

44 

45* **Claude Code v2.1.224 以降**。[標準インストール方法](/docs/ja/setup)のいずれかを使用します。ランナーは標準 `claude` バイナリの一部であり、以前のバージョンは `self-hosted-runner` サブコマンドを認識しません。ネイティブインストーラーのデフォルト `latest` チャネルは各リリースを公開直後に提供します。`stable` チャネル、Homebrew `claude-code` cask、および安定版 apt、dnf、apk リポジトリは約 1 週間遅れます。フロートが実行する正確なバージョンをピンするには、[特定のバージョンをインストール](/docs/ja/setup#install-a-specific-version)を参照してください。コンテナイメージについては、[本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy#build-the-runner-image)の Dockerfile を参照してください。

46* **Git 2.24 以降**。デプロイページの一部の git オプションはより新しいバージョンが必要です。[git を設定](/docs/ja/self-hosted-environments-deploy#configure-git)は各フロアを記載しています。

47 

48ホストの準備ができていることを確認します。

49 

50```bash theme={null}

51claude self-hosted-runner --help

52```

53 

54準備ができたホストはランナーの使用テキストを出力し、`--environment-secret-file` などのフラグをリストします。2.1.224 より古いバージョンでは、コマンドは代わりに一般的な `claude --help` 出力を出力します。`claude update` でアップグレードするか、`latest` チャネルから再インストールしてください。

55 

56<h2 id="set-up-an-environment-and-runner">

57 環境とランナーをセットアップする

58</h2>

59 

60Claude Code には、ガイド付きセットアップが含まれています。管理 UI で環境を作成する手順を説明するインタラクティブな Claude Code セッション。保存したシークレットファイルでローカルランナーを起動し、ランナーが登録されたことを確認し、`./runner-setup/CHEAT-SHEET.md` にチートシートを書き込みます。`claude auth login` でサインインしたマシンで実行します。オーナーロールを保持するアカウントを使用します。API キーまたはサードパーティモデルプロバイダーでは利用できません。インタラクティブセッションが不可能なホストでは、代わりに以下の手動ステップを使用してください。[バージョンチェック](#software-on-the-runner-host)が最初に合格したことを確認してください。2.1.224 より古いバージョンでは、このコマンドはガイド付きセットアップの代わりに、単語をプロンプトとして通常の Claude セッションを開始します。ガイド付きセットアップを開始するには、セットアップサブコマンドを実行してプロンプトに従います。

61 

62```bash theme={null}

63claude self-hosted-runner setup

64```

65 

66代わりに手動でセットアップするには。

67 

68<Steps>

69 <Step title="環境を作成する">

70 管理設定の[**Cloud environments** ページ](https://claude.ai/admin-settings/cloud-environments)に移動します。**セルフホストされた環境**の下で、**新規**を選択し、環境に名前を付けて、**作成**を選択します。ウィザードの 2 番目のステップで、**環境キーをコピー**を選択して環境シークレットをコピーします。管理 UI はこれを環境キーとしてラベル付けします。claude.ai はシークレットを 1 回表示し、後で取得することはできません。作成から 365 日後に期限切れになります。環境の `ccpool_...` ID は詳細ダイアログに表示されたままです。[トークン検証](/docs/ja/self-hosted-environments-identity)の `aud` チェックおよび[CI からのテストセッションのディスパッチ](/docs/ja/self-hosted-environments-testing#run-the-test-loop)に必要になります。

71 

72 シークレットを失った場合またはローテーションが必要な場合は、環境の**設定**タブから新しいシークレットを作成し、新しいシークレットをランナーにロールアウトしてから、古いシークレットを取り消します。取り消されたシークレットを保持するランナーは次の認証済みポーリングに失敗して終了し、`poll auth failed` をログに記録します。オーケストレーターは新しいシークレットで再起動します。

73 </Step>

74 

75 <Step title="ランナーを起動する">

76 シークレットディレクトリを作成します。このステップと次のステップは `/etc/claude` パスに root が必要です。ランナープロセスが読み取ることができるパスは機能するため、別のパスを使用する場合は両方のコマンドと `--environment-secret-file` 値を一緒に調整してください。

77 

78 ```bash theme={null}

79 mkdir -p /etc/claude

80 ```

81 

82 環境シークレットをファイルに書き込みます。以下のコマンドはターミナルから読み取るため、シークレットはシェル履歴から外れます。コピーした値を貼り付け、Enter キーを押してから Ctrl-D を押します。サブシェルの `umask` はファイルを所有者のみが読み取り可能にします。

83 

84 ```bash theme={null}

85 (umask 077 && cat > /etc/claude/environment-secret)

86 ```

87 

88 ベースディレクトリを選択します。以下のランナーコマンドの `<writable-dir>` を、ランナーが書き込みまたは作成できる絶対パスに置き換えます。ランナーはスタートアップ時にディレクトリを作成し、リポジトリをチェックアウトし、その下にセッションごとのディレクトリを作成します。`--base-dir` がない場合は `/workspace` を使用します。これはそのディレクトリが既に存在し、書き込み可能であるか、ランナーを root として起動する場合にのみ機能します。

89 

90 ランナーがパスを作成または書き込みできない場合、スタートアップ時にディレクトリを名前付けするエラーで終了し、登録されません。[トラブルシューティング](/docs/ja/self-hosted-environments-deploy#troubleshooting)を参照してください。

91 

92 次に、`--environment-secret-file` と `--base-dir` でランナーを起動します。ランナーは環境に登録され、仕事をポーリングし始めます。ランナーが終了した場合、手動で再起動してください。本番環境デプロイメントはランナーをオーケストレーターの下で実行し、通常は再起動ごとに新しいファイルシステムで終了したランナーを再起動します。[事前にウォームアップされたチェックアウトを再利用](/docs/ja/self-hosted-environments-deploy#reuse-a-pre-warmed-checkout)はサポートされている永続ディスクセットアップをカバーしています。

93 

94 ```bash theme={null}

95 claude self-hosted-runner --environment-secret-file '/etc/claude/environment-secret' --base-dir '<writable-dir>'

96 ```

97 </Step>

98 

99 <Step title="ランナーが表示されることを確認する">

100 [**Cloud environments** ページ](https://claude.ai/admin-settings/cloud-environments)に戻ります。環境のステータスはランナーが起動してから数秒以内に**ランナーがデプロイされていません**から**正常**に変わります。環境を開いて**アクティビティ**を選択してランナー自体を確認します。

101 </Step>

102 

103 <Step title="セッションを環境にルーティングする">

104 claude.ai/code でセッションを開始し、環境ピッカーから環境を選択します。セルフホストされた環境は Anthropic ホストされた環境と並んで表示されます。ランナーはホストが既に持っている git 認証情報でクローンするため、このホストが既にクローンできるリポジトリまたはパブリックリポジトリを選択してください。本番環境のプライベートリポジトリの認証情報オプションは[git を設定](/docs/ja/self-hosted-environments-deploy#configure-git)にあります。次に利用可能なランナーはキューに入ったセッションを取得し、`Picked up session <session-id>` をアクティブカウントと容量と共にログに記録します。ランナー自身の出力からどのホストがセッションを取得したかを確認できます。[claude.ai/code](https://claude.ai/code)でセッションの動作を監視し、Claude の返信を読みます。セッションがキューに入ったままの場合は、[トラブルシューティング](/docs/ja/self-hosted-environments-deploy#troubleshooting)を参照してください。

105 </Step>

106</Steps>

107 

108ランナーはアクティブセッションが終了すると設計上終了します。[ランナーのライフサイクル](/docs/ja/self-hosted-environments#runner-lifecycle)を参照してください。本番環境では、終了時に再起動するオーケストレーターの下にデプロイしてください。[本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy)を参照してください。

109 

110<h2 id="send-a-follow-up-message-to-a-running-session">

111 実行中のセッションにフォローアップメッセージを送信する

112</h2>

113 

114セッションが環境で実行されたら、`claude auth login` でログインしているマシンの `claude` CLI からフォローアップを送信します。コマンドはセッションを開始したマシンから実行する必要はありません。コマンドは 1 つのメッセージを投稿します。

115 

116```bash theme={null}

117claude -p "your message" --cloud <session-id>

118```

119 

120`<session-id>` については、ベアの `session_...` または `cse_...` ID またはセッションの claude.ai/code URL を渡します。成功した送信は `Sent to cloud session.` をセッション ID とビューリンク付きで出力します。受け入れられた ID フォーム、JSON 出力、アカウントとポリシー要件、およびエラーリファレンスは[CLI からフォローアップを送信](/docs/ja/claude-code-on-the-web#send-follow-ups-from-the-cli)にあります。コマンドは Anthropic ホストされたセッションに対して同じように機能するためです。

121 

122<h2 id="what’s-next">

123 次のステップ

124</h2>

125 

126* [本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy)。デプロイメントを強化し、エグレスを制御し、git 認証情報を設定し、Kubernetes または Compose の下でフロートを実行します。

127* [セッションをカスタマイズ](/docs/ja/self-hosted-environments-configuration)。ラッパースクリプト、ライフサイクルフック、オンデマンドランナー、MCP サーバー、および権限。

128* [エンドツーエンドをテスト](/docs/ja/self-hosted-environments-testing)。セッションをディスパッチして Claude の返信を読む CI スモークテスト。

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# セルフホスト環境リファレンス

6 

7> セルフホストランナーとオーケストレーターの完全なリファレンス:CLI フラグ、環境変数、Prometheus メトリクス。

8 

9<Note>

10 セルフホスト環境は Team および Enterprise プランでパブリックベータ版です。[Owner](/docs/ja/cloud-environments#organization-shared-environments) が [**Cloud environments** 管理ページ](https://claude.ai/admin-settings/cloud-environments) で **Allow self-hosted environments** をオンにすることで有効になります。このページはフラグとメトリクスのリファレンスです。セットアップについては [クイックスタート](/docs/ja/self-hosted-environments-quickstart) を、フリート構成については [本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy) をご覧ください。

11</Note>

12 

13このページは、[セルフホスト環境](/docs/ja/self-hosted-environments) で実行する 2 つのプロセスのリファレンスです。ランナーはホスト上で Claude Code [クラウドセッション](/docs/ja/claude-code-on-the-web) を実行し、オプションのオートスケーリングオーケストレーターはセッションがキューに入ると同時にランナーを起動します。それぞれ独自のフラグテーブルを持っています。どちらも Linux または macOS ホスト上で実行され、`/workspace` や `~/.claude` などのデフォルトを想定しています。インストール済みバージョンの権限あるリストについては、`claude self-hosted-runner --help` を実行してください。

14 

15メトリクスシリーズと一部の API フィールドは、これらのページが環境と呼ぶものに対して `pool` を使用しています。どちらの用語も同じものを指しています。環境 ID は `pool_id` フィールドで、形式は `ccpool_...` です。これらのページが `pool` 識別子を示す場所では、環境を指しています。CLI フラグと環境変数では `environment` と表記されます。例えば `--environment-secret-file` のように。非推奨の `pool` 表記はまだ機能します。[`--environment-secret-file` 行](#runner-cli-flags) で説明されているとおりです。

16 

17<h2 id="runner-cli-flags">

18 Runner CLI フラグ

19</h2>

20 

21ほとんどのフラグには対応する環境変数があります。両方が設定されている場合、フラグが優先されます。期間フラグは CLI では分または秒を取りますが、対応する環境変数は常にミリ秒単位で、`_MS` サフィックスで示され、デフォルト列はフラグの単位を示します。`--exit-if-unused-min 10` は `SELF_HOSTED_RUNNER_IDLE_SHUTDOWN_MS=600000` と同等であり、`SELF_HOSTED_RUNNER_STARTUP_TIMEOUT_MS: "15"` のような Helm 値は 15 分のデフォルトではなく 15 ミリ秒を意味します。

22 

23| フラグ | 環境変数 | デフォルト | 説明 |

24| :---------------------------------------- | :------------------------------------------------ | :-------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

25| `--api-url <url>` | なし | `https://api.anthropic.com` | API ベース URL。テスト目的でのみオーバーライドしてください。 |

26| `--base-dir <path>` | `SELF_HOSTED_RUNNER_BASE_DIR` | `/workspace`; Windows では なし | リポジトリチェックアウトとセッションごとの作業ディレクトリ用のディレクトリ。ランナーはこのパスまたはその親への書き込みアクセスが必要です。ランナーはスタートアップ時にディレクトリを作成し、作成または書き込みができない場合は `cannot create or write to base directory` で終了します。v2.1.225 より前は、ランナーは最初のセッションが開始されたときにディレクトリを作成していたため、使用不可能なパスはスタートアップではなくセッションを失敗させていました。Windows はサポートされていないランナーホストであり、デフォルトはありません。フラグを渡すか変数を設定しない限り、ランナーはスタートアップ時に終了します。環境内のすべてのランナーで同じ値を使用してください。[ランナー全体でベースディレクトリと容量を同じに保つ](/docs/ja/self-hosted-environments-deploy#keep-the-base-directory-and-capacity-identical-across-runners) を参照してください。 |

27| `--capacity <n>` | なし | `1` | このランナーが処理する最大同時セッション数。すべてのセッションは同じロック済み [オーナー](/docs/ja/self-hosted-environments#key-concepts) に属します。環境内のすべてのランナーで同じ値を使用してください。[ランナー全体でベースディレクトリと容量を同じに保つ](/docs/ja/self-hosted-environments-deploy#keep-the-base-directory-and-capacity-identical-across-runners) を参照してください。 |

28| `--client-label <label>` | `SELF_HOSTED_RUNNER_CLIENT_LABEL` | ホストのホスト名 | ランナーが登録時に送信するラベル。ランナーはこれを [`claude_code_self_hosted_runner_info`](#prometheus-metrics) の `client_label` ラベルとしても報告します。Claude Code v2.1.248 以降が必要です。 |

29| `--configure-git` | `SELF_HOSTED_RUNNER_CONFIGURE_GIT=1` | オフ | スタートアップ時にグローバル git ID を書き込み、Anthropic コミット署名を有効にし、git プッシュネゴシエーションをオンにし、`Co-authored-by:` トレーラーを追加するコミットフックをインストールします。プッシュネゴシエーションには Claude Code v2.1.257 以降が必要です。[git を設定する](/docs/ja/self-hosted-environments-deploy#configure-git) を参照してください。 |

30| `--confine-repo-settings <mode>` | `SELF_HOSTED_RUNNER_CONFINE_REPO_SETTINGS` | `warn` | リポジトリのコミットされた設定がそのセッション独自のワークスペース外への書き込みまたは読み取りアクセスを許可しようとする場合、環境変数を設定する場合、またはオペレーターのサンドボックスまたはフック姿勢をオーバーライドしようとする場合(`sandbox.enabled: false` や `disableAllHooks` など)にセッションにフラグを立てるガードのモードを設定します。デフォルトの `warn` は違反をログに記録してもセッションを開始し、`enforce` はセッションを拒否し、`off` はスキャンを無効にします。[デプロイメントを強化する](/docs/ja/self-hosted-environments-deploy#harden-your-deployment) を参照してください。 |

31| `--debug-token-dir <path>` | `SELF_HOSTED_RUNNER_DEBUG_TOKEN_DIR` | 未設定 | ライブトークンをディスクに書き込んで検査します。デバッグのみ。本番環境では使用しないでください。 |

32| `--defer-shutdown-max-min <n>` | `SELF_HOSTED_RUNNER_DEFER_SHUTDOWN_MAX_MS` | `0` | 最初の `SIGTERM` または `SIGINT` で、ドレインする代わりに既にアタッチされているセッションの提供を続け、その後 N 分後に残っているものをリリースして終了します。これを設定する前に、ホストの停止タイムアウトを上げてください。[最初のシグナルの後のドレインを遅延させる](/docs/ja/self-hosted-environments-deploy#defer-the-drain-past-the-first-signal) を参照してください。`0` は無効にします。Claude Code v2.1.238 以降が必要です。 |

33| `--drain-grace-sec <n>` | `SELF_HOSTED_RUNNER_DRAIN_GRACE_MS` | `0` | ランナーがシャットダウンシグナルを受け取るか、リタイア時間に達するまで、アクティブなセッションが終了した後にランナーが終了するタイミングを制御します。`0` はポーリングなしで即座に終了し、正の値はランナーをアライブに保ち、ロック済みオーナーのキューを最初にその秒数だけ再ポーリングします。これは [強化セクション](/docs/ja/self-hosted-environments-deploy#harden-your-deployment) で説明されているセッションごとのコンテナ分離のコストがかかります。[`--defer-shutdown-max-min`](/docs/ja/self-hosted-environments-deploy#defer-the-drain-past-the-first-signal) で遅延させた最初のシグナルの後、ランナーはセッションを保持していない限り即座に終了し、ここで設定したものは関係ありません。 |

34| `--drain-wait-sec <n>` | `SELF_HOSTED_RUNNER_DRAIN_WAIT_MS` | `0` | ドレインが開始されたら([`--defer-shutdown-max-min`](/docs/ja/self-hosted-environments-deploy#defer-the-drain-past-the-first-signal) を設定していない限り `SIGTERM` で)、各セッションの進行中のターンとバックグラウンドタスクが終了するまで最大 N 秒待機してから子を終了します。この待機中、ランナーは終了したばかりのバックグラウンドタスクを、その結果を読む後続のターンが開始されるまで実行中としてカウントします。最大で [`SELF_HOSTED_RUNNER_BG_RESULT_GRACE_MS`](#environment-variable-only-settings) ウィンドウです。 |

35| `--environment-secret-file <path>` | `SELF_HOSTED_RUNNER_ENVIRONMENT_SECRET` | 必須 | 環境シークレットを含むファイルへのパス、または [オーケストレーター](/docs/ja/self-hosted-environments-configuration#on-demand-runners) によって生成されたランナーの場合は単一使用のワークオーダー JWT。`SELF_HOSTED_RUNNER_ENVIRONMENT_SECRET` はファイルパスではなくシークレット値を直接保持します。古い `--pool-secret-file` フラグと `SELF_HOSTED_RUNNER_POOL_SECRET` 変数はまだ機能し、stderr に非推奨通知を出力します。2.1.216 より前のプレビュープログラムランナービルドはこれらの古い名前のみを認識します。 |

36| `--exec-path <path>` | `SELF_HOSTED_RUNNER_EXEC_PATH` | 独自のバイナリ | 各セッション用に生成するバイナリまたはラッパースクリプト。[ラッパースクリプト](/docs/ja/self-hosted-environments-configuration#wrapper-scripts) を参照してください。 |

37| `--exit-if-unused-min <n>` | `SELF_HOSTED_RUNNER_IDLE_SHUTDOWN_MS` | `0` | 作業が割り当てられたことのない N 分間のポーリング後に終了します。オートスケーラーのスケールダウン用です。`0` は無効にします。 |

38| `--git-host-rewrite <from>=<to>` | なし | 未設定 | クローン前に `https://<from>/...` ソース URL を `https://<to>/...` に書き換えます。スプリットホライズン DNS 用です。繰り返し可能。フラグのみ。 |

39| `--git-ssh-rewrite <host>` | なし | 未設定 | クローン前に `https://<host>/...` ソース URL を `git@<host>:...` に書き換えます。SSH のみの git ホスト用です。繰り返し可能。フラグのみ。 |

40| `--health-port <port>` | `SELF_HOSTED_RUNNER_HEALTH_PORT` | `8080` | `/healthz` と `/metrics` リスナーのポート。`0` に設定して無効にします。 |

41| `--hooks-dir <path>` | `SELF_HOSTED_RUNNER_HOOKS_DIR` | 未設定 | ライフサイクルフックスクリプトのディレクトリ。[ライフサイクルフック](/docs/ja/self-hosted-environments-configuration#lifecycle-hooks) を参照してください。 |

42| `--kill-session-after-min <n>` | `SELF_HOSTED_RUNNER_MAX_LIFETIME_MS` | `0` | セッションを N 分のウォールクロック時間に制限します。スタックセッションの安全制限として機能します。v2.1.260 以降では、ランナーは制限に達したセッションをリリースして、ユーザーの次のメッセージで再開できるようにし、[`SELF_HOSTED_RUNNER_MAX_LIFETIME_GRACE_MS`](#environment-variable-only-settings) グレースウィンドウが終了した時点でまだランナー上にある場合にのみ、そのセッションを終了します。v2.1.260 より前は、ランナーは制限でセッションを終了していました。詳細と値の選択方法については、[一部のセッションはアイドルとしてカウントされない](/docs/ja/self-hosted-environments-deploy#some-sessions-don%E2%80%99t-count-as-idle) を参照してください。`0` は無効にします。 |

43| `--lock-to-account <id>` | `SELF_HOSTED_RUNNER_LOCK_TO_ACCOUNT` | 未設定 | スタートアップ時に最初のセッションでロックする代わりに、ランナーを特定のアカウントに事前ロックします。環境の組織内のメールアドレスまたは `user_...` ID を受け入れます。事前ロックされたランナーは、アカウントを持たない Claude Tag チャネルセッションを決してピックアップしません。 |

44| `--log-file <path>` | `SELF_HOSTED_RUNNER_LOG_FILE` | 未設定 | ランナーログを stdout と stderr に加えてファイルにミラーリングします。`0600` 権限で作成されます。`self-hosted-runner doctor` がローカルでログをテールするために必要です。 |

45| `--log-level <level>` | なし | `info` | `info` または `debug` |

46| `--post-session-hook-timeout-sec <n>` | `SELF_HOSTED_RUNNER_POST_SESSION_HOOK_TIMEOUT_MS` | `60` | すべてのセッション終了時(ランナーシャットダウンを含む)の [`post-session` フック](/docs/ja/self-hosted-environments-configuration#post-session) の予算 |

47| `--proxy-authorization-command <command>` | `SELF_HOSTED_RUNNER_PROXY_AUTHORIZATION_COMMAND` | 未設定 | ランナーがエグレスプロキシへのすべての接続に対して実行するシェルコマンド。トリミングされた stdout を `Proxy-Authorization` ヘッダー値として使用します。`HTTPS_PROXY` または `HTTP_PROXY` が必要で、`--proxy-authorization-file` と組み合わせることはできません。[エグレスプロキシに認証する](/docs/ja/self-hosted-environments-deploy#authenticate-to-an-egress-proxy) を参照してください。Claude Code v2.1.238 以降が必要です。 |

48| `--proxy-authorization-file <path>` | `SELF_HOSTED_RUNNER_PROXY_AUTHORIZATION_FILE` | 未設定 | ランナーがエグレスプロキシへのすべての接続に対して読み取るファイル。トリミングされた内容を `Proxy-Authorization` ヘッダー値として使用します。別のプロセスが所定の位置でローテーションするトークンの場合、このフラグを使用してください。`--proxy-authorization-command` と同じ要件を持ち、それと組み合わせることはできません。[エグレスプロキシに認証する](/docs/ja/self-hosted-environments-deploy#authenticate-to-an-egress-proxy) を参照してください。Claude Code v2.1.238 以降が必要です。 |

49| `--push-outcome-on-release` | `SELF_HOSTED_RUNNER_PUSH_OUTCOME_ON_RELEASE` | オフ | ドレインやアイドルリリースなどのランナー開始セッション終了時に、ワークスペースを削除する前に追跡された結果ブランチを `origin` にプッシュします。進行中のコミットは再起動後も生き残ります。ベストエフォート。シャットダウン予算に 30 秒を追加し、プッシュされたブランチから再開するには git 2.29 以降が必要です。有効にする前に、`claude/*` refs へのプッシュアクセスを制限してください。[再開されたセッションはプッシュされていない作業を失う](/docs/ja/self-hosted-environments-deploy#additional-limitations) を参照してください。`checkout` ライフサイクルフックを介してチェックアウトされたリポジトリはプッシュされません。代わりに [`post-session` フック](/docs/ja/self-hosted-environments-configuration#post-session) からスナップショットしてください。 |

50| `--release-idle-session-min <n>` | `SELF_HOSTED_RUNNER_SESSION_IDLE_MS` | `0` | ターンが終了するか、セッションがユーザーのアクションを待つ後、N 分間の非アクティビティ後にセッションスロットをリリースします。ターン中のセッション(決して終了しないバックグラウンドタスクを保持しているセッション、または実行中のツール呼び出し内から要求された承認を含む)はアイドルとしてカウントされません。`--kill-session-after-min` とペアにして、ハードバックストップとして機能させてください。セッションのバックグラウンドタスクが終了した後、ランナーはセッションをビジーと見なします。その結果を読む後続のターンが開始されるまで、最大で [`SELF_HOSTED_RUNNER_BG_RESULT_GRACE_MS`](#environment-variable-only-settings) ウィンドウです。ランナーがシャットダウンシグナルを受け取るか、リタイア時間に達するまで、ランナーにアクティブなセッションがなくなるリリースは、通常のドレインと同じ終了パスを開始します。`--drain-grace-sec` によって管理されます。[`--defer-shutdown-max-min`](/docs/ja/self-hosted-environments-deploy#defer-the-drain-past-the-first-signal) で遅延させた最初のシグナルの後、ランナーはリリースがセッションを保持していない限り即座に終了します。`0` は無効にします。 |

51| `--retire-at <epoch-seconds>` | `SELF_HOSTED_RUNNER_RETIRE_AT` | 未設定 | ランナーを秒単位の絶対 Unix タイムスタンプでリタイアします。ランナーが既知の時間に強制終了されるインフラストラクチャ用です。[ランナーライフサイクル](/docs/ja/self-hosted-environments#runner-lifecycle) はリリースシーケンスとマージンのサイズ方法を説明しています。2001 より前または 5138 年より後の値はフラグによって拒否され、環境変数によって無視されます。 |

52| `--session-stop-grace-sec <n>` | `SELF_HOSTED_RUNNER_SESSION_STOP_GRACE_MS` | `5` | セッション終了後、Claude プロセスがクリーンに終了するまで待機する時間。強制終了する前に。子独自の `SessionEnd` フックがより多くの時間を必要とする場合は、値を上げてください。 |

53| `--startup-timeout-min <n>` | `SELF_HOSTED_RUNNER_STARTUP_TIMEOUT_MS` | `15` | 子が生成後 N 分以内に [アクティビティチャネル](/docs/ja/self-hosted-environments-configuration#keep-stdin-and-file-descriptor-3-attached) で初期化されたことを通知していない場合、セッションスロットをリリースします。通常の出力ではなく、子の初期化シグナルによってクリアされます。その後、`--release-idle-session-min` が引き継ぎます。`0` は無効にします。 |

54| `--trust-workspace [bool]` | `SELF_HOSTED_RUNNER_TRUST_WORKSPACE` | オン | 各セッションのリポジトリパスの永続化された信頼をシードします。リポジトリコミットされた `permissions.allow` と `additionalDirectories` が尊重されるようにします。`false` に設定して、リポジトリコミットされた権限付与をドロップし、代わりにホスト設定の `settings.json` で許可ルールを設定します。リポジトリコミットされた `sandbox.*` 設定はどちらの方法でも適用されます。これが [リポジトリ設定ガード](/docs/ja/self-hosted-environments-deploy#harden-your-deployment) がこのフラグに関係なくそれらをスキャンする理由です。 |

55| `--use-anthropic-git-proxy` | `CLAUDE_RUNNER_USE_GIT_PROXY=1` | オフ | 顧客管理の git 認証の代わりに [Anthropic git プロキシ](/docs/ja/self-hosted-environments-deploy#use-the-anthropic-git-proxy) 経由でクローンします。`--capacity 1` と git 2.32 以降が必要です。ランナーはそれ以外の場合は起動を拒否します。書き換えフラグに優先します。 |

56 

57ほとんどの期間フラグには最大値があります。各タイムアウトをランタイムの 32 ビットタイマー上限(約 24.85 日)内に保つために選択されています。`--*-min` フラグは 10080 分(7 日)でキャップされます。`--drain-grace-sec` は 604800 秒(7 日)でもキャップされます。`--drain-wait-sec` は 86400 秒(24 時間)でキャップされます。`--session-stop-grace-sec` と `--post-session-hook-timeout-sec` はキャップされていません。キャップを超過する動作は表面ごとに異なります。

58 

59* **フラグ**: スタートアップはエラーで失敗します。

60* **環境変数**: ランナーはそれを拒否するのではなく、値をタイマー上限にクランプします。

61 

62<h2 id="orchestrator-cli-flags">

63 オーケストレーター CLI フラグ

64</h2>

65 

66`self-hosted-runner orchestrator` サブコマンド([オンデマンドランナー](/docs/ja/self-hosted-environments-configuration#on-demand-runners) を生成)は、`--api-url`、`--environment-secret-file`、`--hooks-dir`、`--health-port`、`--log-level` をランナーと同じデフォルトで受け入れます。ランナーのフラグに 1 つある場合は同じ環境変数を使用します。ただし、`--hooks-dir` は必須で、`spawn-runner` フックを含む必要があります。また、独自のフラグも取ります。

67 

68| フラグ | デフォルト | 説明 |

69| :------------------------------- | :---- | :------------------------------------------------------------------------------------------------------------------------------------------------ |

70| `--hook-concurrency <n>` | `4` | 並列で実行される最大 `spawn-runner` フック数。また、ポーリングごとにクレームされるスポーン要求の数もキャップします。 |

71| `--hook-timeout <sec>` | `60` | この多くの秒後にフックのプロセスツリーを終了します。タイムアウトとその 5 秒のキルグレースは `--expected-spawn-seconds` より下にある必要があります。オーケストレーターはスタートアップでこれを強制します。 |

72| `--expected-spawn-seconds <sec>` | `120` | スポーン済みランナーの予想 p99 ブート時間(秒単位)。サーバー強制範囲 10 ~ 3600。すべてのポーリングでサーバー側リースとして送信されます。ランナーが経過前に登録されない場合、セッションは新しいオーダー ID で再提供されます。すべてのレプリカはこの値を共有する必要があります。 |

73| `--min-idle <n>` | `0` | スタンバイランナーを積極的に生成することで、少なくとも N 個のアイドルセッションスロットを無料で保ちます。`0` はプレウォーミングを無効にします。ランナーの `--exit-if-unused-min` とペアにして、余分なスタンバイランナーが自分自身を再利用するようにします。 |

74| `--debug-dir <path>` | 未設定 | 各スポーン要求のワークオーダーとフック stderr をディスクに書き込みます。デバッグのみ。本番環境では設定しないでください。 |

75 

76<h3 id="scm-connector-flags">

77 SCM コネクタフラグ

78</h3>

79 

80オーケストレーターは Anthropic のコントロールプレーンへのスタンディング WebSocket 接続を保持できます。リポジトリピッカーやブランチまたは ref リゾルバーなどのホスト済みプリセッションフローが、ネットワーク内からのみルーティング可能な GitHub Enterprise Server ホストに到達できるようにします。`--scm-connector-host` を設定しない限り、コネクタはオフのままです。

81 

82| フラグ | デフォルト | 説明 |

83| :------------------------------------------------------ | :------------------------- | :------------------------------------------------------------------------------------ |

84| `--scm-connector-host <host[:port]>` | 未設定 | リクエストを転送する GitHub Enterprise Server ホスト名。ポートはデフォルトで `443` です。このフラグを設定するとコネクタが有効になります。 |

85| `--scm-connector-id <n>` | `--scm-connector-host` で必須 | 組織の GitHub Enterprise Server 接続の数値 ID。コネクタを有効にするときは、Anthropic アカウントチームに値を問い合わせてください。 |

86| `--scm-connector-provider <slug>` | `ghe` | プロバイダーを識別するパスセグメント。`^[a-z0-9-]{1,32}$` と一致します。 |

87| `--scm-connector-ca-file <path>` | 未設定 | GitHub Enterprise Server ホストへの TLS 接続用の追加 CA バンドル(PEM 形式)。 |

88| `--scm-connector-host-rewrite <from>=<to_host:to_port>` | 未設定 | エンドツーエンドテスト専用:ホストヘッダーと TLS SNI を `--scm-connector-host` として保ちながら TCP 接続をリダイレクトします。 |

89 

90コネクタはオーケストレーターの既存の環境シークレットで認証し、自動的に再接続します。ドロップされた接続で指数バックオフするか、別のオーケストレーターレプリカが既に保持しているため、コントロールプレーンが接続を閉じるときに固定 30 秒の遅延があります。

91 

92<h2 id="environment-variable-only-settings">

93 環境変数のみの設定

94</h2>

95 

96これらのランナー設定は環境からのみ読み取られ、ほとんどのデプロイメントがデフォルトのままにしておく動作をカバーしています。

97 

98| 環境変数 | デフォルト | 説明 |

99| :----------------------------------------- | :---------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

100| `SELF_HOSTED_RUNNER_BG_RESULT_GRACE_MS` | `30000` | バックグラウンドタスクが終了した後、その結果を読み取る後続ターンが開始されていない間、ランナーがセッションをビジーと見なす時間。[`--drain-wait-sec` および `--release-idle-session-min` 行](#runner-cli-flags) はドレインおよびアイドルリリース時にホールドが適用される場所を説明し、[ランナーライフサイクル](/docs/ja/self-hosted-environments#runner-lifecycle) は `--retire-at` リタイアメント時に適用される場所を説明しています。`0` または使用不可能な値はデフォルトにフォールバックするため、ホールドをオフにすることはできません。Claude Code v2.1.228 以降が必要です。 |

101| `SELF_HOSTED_RUNNER_HOST_CONFIG_DIR` | `~/.claude` | ランナーのスタートアップスナップショットにキャプチャされ、各セッションの `CLAUDE_CONFIG_DIR` にシードされるディレクトリ。ディスク上の変更はランナーの再起動後に適用されます。変数を設定すると、ランナーが [MCP シーディング](/docs/ja/self-hosted-environments-configuration#mcp-servers) 用に `.claude.json` を読み取る場所も移動します。設定すると、独自のデフォルトを含めて、その検索を再配置します。空のディレクトリを指してシーディングを完全に無効にします。 |

102| `SELF_HOSTED_RUNNER_MAX_LIFETIME_GRACE_MS` | `900000` | セッションが `--kill-session-after-min` 制限に達した後、実行中のターンが終了するか、リリースが完了するのを待つ時間。その後、ランナーはセッションを終了します。 |

103| `SELF_HOSTED_RUNNER_SIGKILL_GRACE_MS` | `30000` | ランナーが割り込み不可能な I/O でスタックしている子に `SIGKILL` を配信するのを待つ時間。その後、ランナー自体が終了します。`--post-session-hook-timeout-sec` プラス 15 秒でフロアされ、`--push-outcome-on-release` が設定されている場合は 30 秒追加されます。有効な最小値はデフォルトで 75 秒です。 |

104| `CLAUDE_RUNNER_FETCH_DEPTH` | `50` | 新規クローン用の Git フェッチ深度。正の整数、または完全なフェッチ用に `full` または `0` を設定します。ワークスペースに既に存在するリポジトリは既存の深度を保持します。 |

105| `CLAUDE_RUNNER_SKIP_GIT_VERIFY` | 未設定 | `1` の場合、`checkout` フック実行後の `.git` 存在チェックをスキップします。フックが非 git ソースを具体化する場合は、これを設定します。 |

106| `FORCE_AUTOUPDATE_PLUGINS` | 未設定 | `1` の場合、バイナリがピン留めされていても、プラグインマーケットプレイスの自動更新を許可します。 |

107| `CLAUDE_CODE_DISABLE_ARTIFACT` | 未設定 | `1` の場合、組織の管理者設定に関係なくセッション内の Artifact ツールを無効にし、`*.frame.claudeusercontent.com` エグレス要件をドロップします。 |

108 

109<h2 id="telemetry">

110 テレメトリ

111</h2>

112 

113セッション子は、オフにしない限り、運用テレメトリを Anthropic に送信します。コードまたはリポジトリコンテンツは送信されません。ランナープロセスでテレメトリ変数を設定します。ランナーはサーバー提供の環境変数を適用した後、それらを再アサートするため、オペレーターの設定は常に優先されます。

114 

1151 つのコントロールはセルフホスト環境に固有です。`CLAUDE_CODE_BYOC_ENABLE_DATADOG=1` は Datadog 運用メトリクスにオプトインします。これはセルフホスト環境ではデフォルトでオフです。一般的な Claude Code テレメトリコントロール `DISABLE_TELEMETRY`、`DO_NOT_TRACK`、`DISABLE_ERROR_REPORTING`、`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` は [環境変数リファレンス](/docs/ja/env-vars) に記載されているようにセッション子に適用されます。`DISABLE_GROWTHBOOK` は関連していますが異なります。`DISABLE_GROWTHBOOK=1` を設定するとフィーチャーフラグフェッチが無効になり、`DISABLE_TELEMETRY` も設定されない限りテレメトリはオンのままです。

116 

117`CLAUDE_CODE_ENABLE_TELEMETRY` は無関係です。これは [監視](/docs/ja/monitoring-usage) で説明されているように、独自のコレクターへの OpenTelemetry エクスポートを有効にし、Anthropic のアナリティクスを制御しません。

118 

119<h2 id="health-endpoint">

120 ヘルスエンドポイント

121</h2>

122 

123ランナーは設定されたヘルスポートで `GET /healthz` を提供します。レスポンスは、プロセスが生存している限り、ポーリングループがどの状態にあるかに関係なく `200 OK` です。したがって、このエンドポイントの HTTP プローブはデッドプロセスのみを検出します。JSON ボディは現在の状態を説明します。

124 

125```json theme={null}

126{

127 "status": "ok",

128 "runner_id": "ccrunner_...",

129 "active_sessions": 2,

130 "last_poll_at": "2026-03-31T18:04:11.220Z",

131 "last_poll_age_ms": 842

132}

133```

134 

135カスタムプローブでライブネスシグナルとして `last_poll_age_ms` を使用します。無限に増加する値は、ポーリングループがスタックしていることを示します。`last_poll_at` と `last_poll_age_ms` の両方は、最初のポーリングが完了するまで `null` です。

136 

137オーケストレーターはそのヘルスポートで独自の `/healthz` を提供します。そのエンドポイントは常に `200` を返し、ボディは最新のポーリングが成功したかどうかを報告する `connected` フィールドと、`queue_counts` のスポーン キュー数ごとの状態を持ちます。ステータスコードではなく `connected` でレディネスとアラートをゲートします。

138 

139[SCM コネクタ](#scm-connector-flags) が設定されている場合、オーケストレーターの `/healthz` ボディは `scm_connector_connected` と、`connected`、`last_connected_at`、`last_error`、`reconnects`、`requests_forwarded` を持つ `scm_connector` オブジェクトも持ちます。`--scm-connector-host` が設定されていない場合、両方のフィールドは `null` です。

140 

141<h2 id="prometheus-metrics">

142 Prometheus メトリクス

143</h2>

144 

145各ランナーは `/healthz` と同じポートで `GET /metrics` で Prometheus メトリクスを提供します。主要なシリーズ:

146 

147| シリーズ | 注記 |

148| :-------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

149| `claude_code_self_hosted_runner_info{runner_id,version,client_label}` | 常に `1`。フリートインベントリとバージョンドリフト検出に有用です。 |

150| `claude_code_self_hosted_runner_capacity` | 設定済み `--capacity` |

151| `claude_code_self_hosted_runner_active_sessions` | 現在実行中のセッション |

152| `claude_code_self_hosted_runner_locked_account{email}` | ランナーがユーザーにロックされ、`act.email` クレームを持つセッショントークンが発行された後に存在します。シリーズは Claude Tag エージェントにロックされたランナーには存在しません。そのセッショントークンは `act.email` を持ちません。ラベル値はアカウントメールです。メトリクスストアが広く読み取り可能な場合は、スクレイプ時にラベルをドロップまたはハッシュします。例えば Prometheus `metric_relabel_configs` を使用します。 |

153| `claude_code_self_hosted_runner_last_poll_age_seconds` | 最後の成功したポーリング以降の秒数。60 を超える場合はアラートします。 |

154| `claude_code_self_hosted_runner_poll_errors_total{error_kind}` | 種類別の累積 PollWork 失敗:`transport`、`timeout`、`5xx`、`429`、または `4xx`。すべての 5 つのシリーズはプロセス開始から存在します。`rate(...[5m]) > 0` でアラートします。 |

155| `claude_code_self_hosted_runner_sessions_started_total{client_platform}` | ランナーの生存期間にわたってスポーンされたセッション子プロセス。セッションオリジン(`web_claude_ai`、`ios`、`android`、`desktop_app`、`claude_code_cli` など)ごとに 1 つのシリーズ、またはサーバーが 1 つを送信しなかった場合は `unknown`。Slack セッションは、どの Slack 統合が作成したかに応じて `claude_in_slack` または `claude-in-slack` を持ちます。`{client_platform=~"claude[-_]in[-_]slack"}` などの正規表現セレクターで両方と一致します。フリート合計には `sum()` を使用します。 |

156| `claude_code_self_hosted_runner_sessions_completed_total{client_platform}` | クリーンに終了したセッション。同じ方法でラベル付けされます。より広い範囲:[セッションライフサイクルカウンターセマンティクス](#session-lifecycle-counter-semantics) を参照して、何がカウントされるかを確認してください。 |

157| `claude_code_self_hosted_runner_sessions_failed_total{client_platform}` | 失敗で終了したセッション。同じ注意事項:[セッションライフサイクルカウンターセマンティクス](#session-lifecycle-counter-semantics) を参照してください。 |

158| `claude_code_self_hosted_runner_sessions_interrupted_total{client_platform}` | ランナーがセッション結果ではなく運用上の理由で終了したセッション。同じ方法でラベル付けされます。[セッションライフサイクルカウンターセマンティクス](#session-lifecycle-counter-semantics) を参照してください。 |

159| `claude_code_self_hosted_runner_initializing_sessions` | 初期化フェーズ内のセッション。割り当てから子の初期化イベントまで。 |

160| `claude_code_self_hosted_runner_session_init_duration_seconds` | セッション初期化期間のヒストグラム |

161| `claude_code_self_hosted_runner_session_init_errors_total` | 初期化に到達する前に失敗したセッション:チェックアウトフック失敗、git 準備、トークン問題、または初期化前の子クラッシュ |

162| `claude_code_self_hosted_runner_session_start_hook_errors_total` | エラー結果を報告した `SessionStart` フック。失敗したフック実行ごとに 1 つ。 |

163| `claude_code_self_hosted_runner_session_idle_seconds{session_id,client_platform}` | セッションがアイドル状態になってからの秒数のセッションごとのゲージ。未回答の権限プロンプトでスタックしているセッションを終了するのに有用です。 |

164 

165オーケストレーターは `/healthz` と同じポートで `GET /metrics` で独自のシリーズを提供します。

166 

167| シリーズ | 注記 |

168| :-------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

169| `claude_code_self_hosted_orchestrator_info{version,pool_id,orchestrator_uuid,hostname}` | 常に `1` |

170| `claude_code_self_hosted_orchestrator_connected` | 最新のポーリングが成功した場合は `1`。失敗の種類に関係なく、失敗したポーリング後は `0` にドロップします。 |

171| `claude_code_self_hosted_orchestrator_last_poll_age_seconds` | 最後のポーリング試行(成功または失敗)以降の秒数。最後の成功以降を測定するランナーの同じ名前のメトリクスとは異なります。`connected` とペアにして、失敗したポーリングをキャッチします。オーケストレーターのポーリングループはフック実行で待機するため、デフォルトで約 90 秒の `--hook-timeout` プラス余裕の上でアラートします。フラット 60 ではなく。 |

172| `claude_code_self_hosted_orchestrator_poll_errors_total{error_kind}` | 種類別の累積 PollSpawnHints 失敗:`transport`、`timeout`、`5xx`、`429`、または `4xx`。すべての 5 つのシリーズはプロセス開始から存在します。`rate(...[5m]) > 0` でアラートします。 |

173| `claude_code_self_hosted_orchestrator_queue_pending_sessions` | 今すぐクレーム可能なスポーン要求 |

174| `claude_code_self_hosted_orchestrator_queue_backing_off_sessions` | 再試行可能なフック失敗後の再試行バックオフ内のスポーン要求 |

175| `claude_code_self_hosted_orchestrator_queue_circuit_broken_sessions` | Owner が環境の **Activity** タブから再試行するまでブロックされたスポーン要求。ゼロを超える場合はアラートします。 |

176| `claude_code_self_hosted_orchestrator_pool_pending_sessions` | この環境でランナーを待機している総セッション数。環境全体の集計。すべてのオーケストレーターインスタンスで同一です。インスタンス全体で `SUM` ではなく `MAX` を使用します。 |

177| `claude_code_self_hosted_orchestrator_pool_active_sessions` | この環境内のアライブランナーに現在割り当てられているセッション。環境全体の集計。すべてのオーケストレーターインスタンスで同一です。インスタンス全体で `SUM` ではなく `MAX` を使用します。 |

178| `claude_code_self_hosted_orchestrator_spawn_hooks_total{result}` | 累積 `spawn-runner` フック結果:`ok`、`retryable`、`non_retryable`。オーケストレーターフック呼び出しをカウントします。ランナーがスポーンするセッション子ではありません。容量が 1 を超える場合、ウォームプール、同じセッション用に再度スポーンされたランナーは `sessions_started_total` と比較できないため、2 つが異なります。 |

179| `claude_code_self_hosted_orchestrator_spawn_hook_duration_seconds` | フック期間のヒストグラム |

180| `claude_code_self_hosted_orchestrator_warm_hints_dispatched_total` | プロセス開始以降にディスパッチされたスタンバイスポーン要求 |

181| `claude_code_self_hosted_orchestrator_session_queue_wait_seconds` | 各セッションがオーケストレーターがスポーン用にクレームするまでキューで待機した秒数のヒストグラム。コントロールプレーンが各セッションのスポーン要求で送信するキュー待機タイムスタンプから記録されます。p50/p99 キュー時間アラートに使用します。プレウォーミングスポーンはサンプリングされません。 |

182| `claude_code_self_hosted_orchestrator_clock_skew_seconds` | ローカルマイナスサーバークロックスキュー。診断。測定後に存在します。 |

183| `claude_code_self_hosted_orchestrator_scm_connector_connected` | [SCM コネクタ](#scm-connector-flags) の WebSocket がオープンしている場合は `1`。ダイアルまたはバックオフ中は `0`。`--scm-connector-host` が設定されていない場合は存在しません。 |

184| `claude_code_self_hosted_orchestrator_scm_connector_requests_forwarded_total` | プロセス開始以降に設定された SCM ホストにプロキシされた累積 HTTP リクエスト。`--scm-connector-host` が設定されていない場合は存在しません。 |

185 

186オートスケーリングの場合、スケーリングスタイルに一致するシリーズを選択し、スケーラーに供給する前にゲートします。

187 

188* **キュー深度スケーリング**:`queue_pending_sessions` ではなく `claude_code_self_hosted_orchestrator_pool_pending_sessions` を HPA または KEDA スケーラーに供給します。

189* **容量スケーリング**:ランナーの `active_sessions` と `capacity` の比率でスケーリングします。

190* **`connected` でゲート**:インスタンスごとに `claude_code_self_hosted_orchestrator_connected == 1` でクエリをフィルタリングします。切断されたレプリカの古い値がスケーラーに供給されないようにします。

191 

192完全なポーリング停止中、すべてのレプリカが切断されると、ゲートされたクエリはデータを返しません。HPA は欠落メトリクスで現在のレプリカ数を保持しますが、KEDA の Prometheus スケーラーはデフォルト `ignoreNullValues: "true"` で空の結果をゼロとして読み取り、スケールインします。ScaledObject で `ignoreNullValues: "false"` を設定し、オプションで `fallback` レプリカフロアを設定します。

193 

194次の Prometheus Operator `PodMonitor` は両方のプロセスをカバーしています。`app.kubernetes.io/part-of: claude-code-self-hosted-runner` ラベルと、[Kubernetes レシピ](/docs/ja/self-hosted-environments-deploy#kubernetes) が設定する名前付き `health` ポートでポッドを選択します。デプロイメントに合わせて名前空間を調整します。

195 

196```yaml theme={null}

197# Claude Code セルフホストランナー + オーケストレーター用の Prometheus Operator PodMonitor の例。

198# 名前空間とラベルセレクターをデプロイメントに合わせて調整します。

199# ランナーとオーケストレーターの両方は、その --health-port(デフォルト 8080)で /metrics を提供します。

200apiVersion: monitoring.coreos.com/v1

201kind: PodMonitor

202metadata:

203 name: claude-code-self-hosted-runner

204 namespace: monitoring

205spec:

206 namespaceSelector:

207 matchNames:

208 - claude-runners

209 selector:

210 matchExpressions:

211 # Kubernetes レシピからのランナー Deployment、および同じ方法でラベル付けされた

212 # オンデマンドランナー Job とオーケストレーターポッド、および名前付き 'health' containerPort を持つものと一致します。

213 - key: app.kubernetes.io/part-of

214 operator: In

215 values: [claude-code-self-hosted-runner]

216 podMetricsEndpoints:

217 - port: health

218 path: /metrics

219 interval: 30s

220```

221 

222これらのサンプルアラートルールは出発点です。フリートサイズのしきい値を調整します。

223 

224```yaml theme={null}

225# Claude Code セルフホストランナー + オーケストレーター用の Prometheus アラートルールの例。

226# フリートサイズと SLO のしきい値を調整します。

227groups:

228 - name: claude-code-self-hosted-runner

229 rules:

230 - alert: ClaudeRunnerPollStale

231 expr: claude_code_self_hosted_runner_last_poll_age_seconds > 60

232 for: 2m

233 labels: {severity: warning}

234 annotations:

235 summary: "ランナー {{ $labels.pod }} は 60 秒以上ポーリングしていません"

236 - alert: ClaudeRunnerVersionDrift

237 expr: count(count by (version) (claude_code_self_hosted_runner_info)) > 1

238 for: 30m

239 labels: {severity: info}

240 annotations:

241 summary: "ランナーは混合バージョンを実行しています"

242 - alert: ClaudeRunnerInitErrorsHigh

243 expr: increase(claude_code_self_hosted_runner_session_init_errors_total[10m]) > 3

244 for: 5m

245 labels: {severity: warning}

246 annotations:

247 summary: "ランナー {{ $labels.pod }}:10 分間に 3 回以上のセッション初期化失敗(チェックアウトフック / git / トークン / 初期化前クラッシュ)"

248 - alert: ClaudeRunnerPollErrors

249 expr: sum by (pod) (rate(claude_code_self_hosted_runner_poll_errors_total[5m])) > 0

250 for: 2m

251 labels: {severity: warning}

252 annotations:

253 summary: "ランナー {{ $labels.pod }}:PollWork が失敗しています(5 分間に {{ $value | humanize }}/s)"

254 - alert: ClaudeRunnerSessionStartHookErrors

255 expr: increase(claude_code_self_hosted_runner_session_start_hook_errors_total[10m]) > 3

256 for: 5m

257 labels: {severity: warning}

258 annotations:

259 summary: "ランナー {{ $labels.pod }}:10 分間に 3 回以上の SessionStart フック失敗"

260 

261 - name: claude-code-self-hosted-orchestrator

262 rules:

263 - alert: ClaudeOrchestratorDisconnected

264 expr: claude_code_self_hosted_orchestrator_connected == 0

265 for: 2m

266 labels: {severity: critical}

267 annotations:

268 summary: "オーケストレーター {{ $labels.pod }} は Anthropic コントロールプレーンに到達できません"

269 - alert: ClaudeOrchestratorPollStale

270 expr: claude_code_self_hosted_orchestrator_last_poll_age_seconds > 90

271 for: 2m

272 labels: {severity: warning}

273 annotations:

274 summary: "オーケストレーター {{ $labels.pod }} は 90 秒以上ポーリングしていません(ポーリングループはフック実行で待機)"

275 - alert: ClaudeOrchestratorCircuitBroken

276 expr: claude_code_self_hosted_orchestrator_queue_circuit_broken_sessions > 0

277 for: 1m

278 labels: {severity: critical}

279 annotations:

280 summary: "{{ $value }} セッションがサーキットブレーク — spawn-runner フックが繰り返し非再試行可能。インフラを修正してから Activity タブから再試行してください"

281 - alert: ClaudeOrchestratorPollErrors

282 expr: sum by (pod) (rate(claude_code_self_hosted_orchestrator_poll_errors_total[5m])) > 0

283 for: 2m

284 labels: {severity: warning}

285 annotations:

286 summary: "オーケストレーター {{ $labels.pod }}:PollSpawnHints が失敗しています(5 分間に {{ $value | humanize }}/s)"

287 - alert: ClaudeOrchestratorSpawnHookFailing

288 expr: sum by (pod) (increase(claude_code_self_hosted_orchestrator_spawn_hooks_total{result!="ok"}[5m])) > 3

289 for: 5m

290 labels: {severity: warning}

291 annotations:

292 summary: "オーケストレーター {{ $labels.pod }}:5 分間に 3 回以上の spawn-runner フック失敗"

293```

294 

295<h3 id="pass-through-session-child-metrics">

296 セッション子メトリクスをパススルーする

297</h3>

298 

299各セッションは独自の子プロセスで実行され、独自の OpenTelemetry メトリクスを持ちます。`--capacity` が 1 を超える場合、ランナーはそれらの子メトリクスの公開方法を書き換えます。ランナーホストで `OTEL_METRICS_EXPORTER=prometheus` を設定し、セッションの環境で `CLAUDE_CODE_ENABLE_TELEMETRY=1` を設定します。例えば、[ラッパースクリプト](/docs/ja/self-hosted-environments-configuration#wrapper-scripts) またはセッションが継承するランナー独自の環境から、各子のカウンターとゲージ計器をランナー独自の `/metrics` エンドポイントで再公開します。ランナーのシリーズと並んで。ランナーは子のエクスポーターを書き換えて、ヘルスポートのループバックのみのレシーバーに OTLP 経由でプッシュし、各シリーズに `session_id` および `client_platform` ラベルでタグ付けし、セッションが終了するとセッションのシリーズを削除します。ヒストグラムはパススルーしません。ランナー独自のプレフィックスと衝突する子メトリクスの名前は削除されます。

300 

301デフォルトの `--capacity 1` では、書き換えは適用されません。セッションの子は通常どおりポート 9464 で独自の Prometheus エンドポイントをバインドします。

302 

303<h3 id="session-lifecycle-counter-semantics">

304 セッションライフサイクルカウンターセマンティクス

305</h3>

306 

307`sessions_started_total`、`sessions_completed_total`、`sessions_failed_total`、`sessions_interrupted_total` カウンターは、各セッションがどのように終了したかで分類します。スポーンされたすべてのセッション子はスポーン時に `sessions_started_total` をインクリメントし、終了時に他の 3 つのうち正確に 1 つをインクリメントします。したがって、`sessions_started_total` から他の 3 つの合計を引いたものは、現在実行中のセッション子の数に等しくなります。

308 

309* `completed`:セッションはクリーンに終了しました。これは子がコード `0` で独自に終了する場合、セッションが子がまだ接続されている間にアーカイブまたは削除される場合、およびランナーがスロットをクリーンハンドオフとしてリリースする場合をカバーします。アイドルタイムアウト、リタイア時間、または `--kill-session-after-min` 制限でのリリース、スタートアップタイムアウト、またはポーリングループが子が終了する前に気付いたサーバー側の割り当て解除。`sessions_completed_total` をインクリメントします。

310* `failed`:子がゼロ以外のコードで独自に終了しました。クラッシュまたはスポーン後のセットアップ失敗のいずれか。`sessions_failed_total` をインクリメントします。

311* `interrupted`:ランナーがセッション成功またはランナー障害のいずれでもない運用上の理由で子を終了しました。たとえばドレインや、`--kill-session-after-min` 制限後の [`SELF_HOSTED_RUNNER_MAX_LIFETIME_GRACE_MS`](#environment-variable-only-settings) グレースウィンドウが終了した時点でまだランナー上にあったセッションの終了などです。Kubernetes ローリング再起動が `SIGTERM` を送信することは、ドレインの一例です。`sessions_interrupted_total` をインクリメントします。

312 

313v2.1.260 より前では、ランナーは `--kill-session-after-min` 制限に達したすべてのセッションを終了し、`sessions_interrupted_total` でカウントしました。

314 

315[`post-session` フック](/docs/ja/self-hosted-environments-configuration#post-session) の `CLAUDE_RUNNER_EXIT_REASON` はクリーンハンドオフを異なる方法で分類します。フックはリリース、スタートアップタイムアウト、サーバー割り当て解除をランナーが子を停止したため `interrupted` として報告します。これらのカウンターは、スロットがクリーンに返されたため、`completed` として同じイベントを記録します。

316 

317フック受信を `sessions_completed_total` に対して直接調整する場合、完了をアンダーカウントします。セッションごとの保証にはフックを使用し、集計レートにはカウンターを使用します。

318 

319ワンショット環境では、`--capacity 1` とデフォルト `--drain-grace-sec 0` で、各ランナープロセスは 1 つのセッションが終了した直後に終了します。`sessions_completed_total`、`sessions_failed_total`、`sessions_interrupted_total` はセッション終了時にのみインクリメントされます。その終了の直前に、Prometheus スクレイプが 15 ~ 60 秒ごとの場合、ランナーのシリーズが消える前にインクリメントをキャッチすることはめったにありません。これら 3 つのセッション終了カウンターは、このセクションの残りが参照するターミナルカウンターです。`sessions_started_total` はスポーン時にインクリメントされ、セッションの生存期間中は表示されたままなので、確実に表示されます。ただし、ワンショット環境では、累積カウントよりも「現在実行中のセッション」に近く読み取られます。

320 

321対応する目標の代わりにこのテーブルのシリーズを使用します。

322 

323| 目標 | 使用 |

324| :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

325| スループット | `claude_code_self_hosted_orchestrator_spawn_hooks_total{result="ok"}`。成功した `spawn-runner` フック呼び出しごとに 1 回インクリメントされ、`rate()` の下で意味のある長寿命オーケストレーター上のカウンター。フック呼び出しをカウントします。ランナーがスポーンするセッションではなく、プレウォーミングと同じセッション用の繰り返しスポーンはセッションカウントから異なります。 |

326| 利用率 | `sum(claude_code_self_hosted_runner_active_sessions)` 対 `sum(claude_code_self_hosted_runner_capacity)`。ランナーの生存期間に関係なく、すべてのスクレイプで有効なゲージ。 |

327| バックログ | キュー深度の `claude_code_self_hosted_orchestrator_pool_pending_sessions`、および `claude_code_self_hosted_orchestrator_queue_circuit_broken_sessions`。ゼロを超える場合はアラートします。 |

328| 失敗 | `claude_code_self_hosted_runner_sessions_failed_total`。ベストエフォート。スポーン後の実際のクラッシュはインクリメントされ、`rate()` はセッションを超えて生存するランナーで意味があります。`--drain-grace-sec` が `0` を超える場合。ワンショット環境は他のターミナルカウンターと同じスクレイプウィンドウ問題を持つため、表示される非ゼロ値を調査する価値があるものとして扱います。スポーン前の失敗(チェックアウトフック失敗、git 準備、トークン問題など)は `session_init_errors_total` にのみ表示されます。 |

329 

330`orchestrator_*` 行は [オンデマンドオーケストレーター](/docs/ja/self-hosted-environments-configuration#on-demand-runners) を実行している環境にのみ存在します。セッションを超えて生存するランナーを持つ固定フリートで、`--drain-grace-sec` が `0` を超える場合、スループットに `sum(rate(claude_code_self_hosted_runner_sessions_started_total[5m]))` を使用します。ワンショットフリートではそのシリーズは他のターミナルカウンターと同じスクレイプウィンドウ問題を持つため、キューに入ったセッション数に依存します。バックログを環境の **Activity** タブで確認します。[**Cloud environments** 管理ページ](https://claude.ai/admin-settings/cloud-environments):ランナーはキュー深度シリーズをエクスポートしません。

331 

332セッションごとの結果報告については、代わりに [`post-session` フック](/docs/ja/self-hosted-environments-configuration#post-session) を使用してください。VM プリエンプションなどの突然のランナー終了を除き、子プロセスがスポーンされたすべてのセッション終了で発火します。[フック独自の契約](/docs/ja/self-hosted-environments-configuration#post-session) に従って。

333 

334<h2 id="what’s-next">

335 次のステップ

336</h2>

337 

338* [セルフホスト環境](/docs/ja/self-hosted-environments):環境、ランナー、セッションモデル。[クイックスタート](/docs/ja/self-hosted-environments-quickstart) と [本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy) はセットアップと運用を保持しています。

339* [セッションをカスタマイズする](/docs/ja/self-hosted-environments-configuration):ラッパースクリプト、ライフサイクルフック、オンデマンドランナー。

340* [セッション ID を検証する](/docs/ja/self-hosted-environments-identity):セッショントークン、そのクレーム、検証方法。

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# 自己ホスト環境をエンドツーエンドでテストする

6 

7> CI から自己ホスト実行イメージを検証します。CLI でセッションをディスパッチし、Stop フックを通じて Claude の返信を読み取り、完全なループをスクリプト化します。

8 

9<Note>

10 自己ホスト環境は Team および Enterprise プランでパブリックベータ版です。[利用可能性と制限事項](/docs/ja/self-hosted-environments#availability-and-limitations)に有効化パスが記載されています。このページは CI テストレシピです。セットアップについては[クイックスタート](/docs/ja/self-hosted-environments-quickstart)を、フリートレシピについては[本番環境へのデプロイ](/docs/ja/self-hosted-environments-deploy)をご覧ください。

11</Note>

12 

13[自己ホスト環境](/docs/ja/self-hosted-environments)では、Claude Code の[クラウドセッション](/docs/ja/claude-code-on-the-web)は、ユーザーが構築・管理する実行イメージ上で実行されます。新しいイメージを本番環境にロールアウトする前に、スクリプトからテスト環境に対して完全なセッションを実行します。セッションを作成し、Claude の返信を読み取り、フォローアップを送信し、その返信も読み取ります。これは実行イメージ、git アクセス、カスタムツールを検証する CI スモークテストの形です。

14 

15このレシピは、[環境と実行イメージのセットアップ](/docs/ja/self-hosted-environments-quickstart#set-up-an-environment-and-runner)が完了していることを前提としています。また、CI ジョブがテストスクリプトと同じホスト上で実行イメージプロセスを開始することを想定しています。これは新しい実行イメージをテストするための自然なセットアップです。実行イメージにインストールする Stop フックは、各ターンの最終返信をローカルファイルに書き込み、スクリプトがそこから読み取ります。そのため、Anthropic API への呼び出しは 2 つのディスパッチだけです。テスト実行イメージが別のインフラストラクチャ上にある場合は、[リモートテスト実行イメージ](#remote-test-runners)をご覧ください。

16 

17<h2 id="install-the-capture-hook-on-your-test-runner">

18 テスト実行イメージにキャプチャフックをインストールする

19</h2>

20 

21読み取りは Claude Code の[Stop フック](/docs/ja/hooks#stop)を通じて機能します。Claude がターンを完了すると、フックは最終アシスタントメッセージを stdin JSON の `last_assistant_message` として受け取り、`$E2E_REPLY_DIR/<session_id>.txt` に追加します。[commit-nudge Stop フック](/docs/ja/self-hosted-environments-configuration#prompt-sessions-to-push-their-work)と同じ方法でインストールします。実行イメージホストの `~/.claude/` にインストールします。実行イメージはこれをすべてのセッションにシードします。

22 

23<h3 id="save-the-hook-files">

24 フックファイルを保存する

25</h3>

26 

27実行イメージホストに以下の 2 つのファイルを保存します。

28 

29* 設定ブロック:実行イメージホストの `~/.claude/settings.json` にマージします

30* スクリプト:実行イメージホストに `~/.claude/hooks/e2e-stop-hook-capture.sh` として保存し、実行可能にします

31 

32```json theme={null}

33{

34 "hooks": {

35 "Stop": [

36 {

37 "hooks": [

38 {

39 "type": "command",

40 "timeout": 10,

41 "command": "\"$CLAUDE_CONFIG_DIR/hooks/e2e-stop-hook-capture.sh\""

42 }

43 ]

44 }

45 ]

46 }

47}

48```

49 

50```sh theme={null}

51#!/bin/sh

52# Stop hook for testing a self-hosted environment end to end: writes each

53# turn's final assistant reply to $E2E_REPLY_DIR/<session_id>.txt so a

54# co-located test driver can read it without calling the Anthropic API.

55# Install on the TEST runner only. Requires jq.

56 

57# No-op unless the driver is listening. Never fail the turn.

58[ -n "${E2E_REPLY_DIR:-}" ] && [ -d "$E2E_REPLY_DIR" ] || exit 0

59 

60# CLAUDE_CODE_REMOTE_SESSION_ID is exported in cse_... form; the session

61# id the dispatch CLI prints is in session_... form. Same id, different

62# prefix.

63sid=$(printf '%s' "${CLAUDE_CODE_REMOTE_SESSION_ID:-}" | sed 's/^cse_/session_/')

64[ -n "$sid" ] || exit 0

65 

66# last_assistant_message is absent when the final assistant turn had no

67# text, such as a tool-use-only turn. The `// empty` filter makes that a

68# zero-byte write rather than the literal string "null".

69jq -r '.last_assistant_message // empty' >> "$E2E_REPLY_DIR/$sid.txt" 2>/dev/null

70exit 0

71```

72 

73<h3 id="before-you-start-the-runner">

74 実行イメージを開始する前に

75</h3>

76 

77フックが依存する 2 つのこと:

78 

79* 実行イメージを開始する前にインストールします。実行イメージは起動時に `~/.claude/` をスナップショットするため、実行中の実行イメージに追加されたフックは再起動後にのみ有効になります。

80* 実行イメージプロセスに `E2E_REPLY_DIR` をエクスポートします。フックは変数が未設定または ディレクトリが存在しない場合は no-op です。実行イメージを開始する場所(systemd ユニット、pod spec、CI ステップなど)で設定します。以下のテストスクリプトもこれが必要です。

81 

82このフックはテスト環境にサービスを提供する実行イメージにのみインストールします。`E2E_REPLY_DIR` が存在するたびにすべてのセッションの最終返信をディスクに書き込みます。これは使い捨ての CI 実行イメージでは無害ですが、変数が誤って設定される可能性がある本番環境実行イメージには含めるべきではありません。

83 

84<h2 id="run-the-test-loop">

85 テストループを実行する

86</h2>

87 

88`--environment` および `--ref` ディスパッチフラグには、スクリプトを実行するマシン上の Claude Code v2.1.224 以降が必要です。これは実行イメージ自体と同じ下限です。フックが配置され、このホストで実行イメージが開始されている場合、テストスクリプトは以下を実行します。

89 

901. `claude -p "<prompt>" --environment <environment-id> --output-format json` でテスト環境にセッションを作成します。git チェックアウトから実行して、CLI が `origin` リモートからリポジトリを自動検出できるようにします。オプションの `--ref <branch>` は、ローカル HEAD の代わりに名前付き ref に基づいてセッションのチェックアウトを行います。コマンドはセッションを作成し、`session_id` を含む 1 行の JSON を出力し、Claude の返信を待たずに終了します。

912. Stop フックが実行イメージ上でターンが完了したら `$E2E_REPLY_DIR/<session_id>.txt` に返信が表示されるまで待機します。

923. `claude -p "<message>" --cloud <session_id> --output-format json` でフォローアップを送信します([実行中のセッションにフォローアップメッセージを送信する](/docs/ja/claude-code-on-the-web#send-follow-ups-from-the-cli)を参照)。これは既存のセッションにユーザーイベントをポストし、終了します。

934. ステップ 2 と同じ方法でフォローアップの返信を待機します。

94 

95<h3 id="environment-dispatch-behavior">

96 `--environment` ディスパッチ動作

97</h3>

98 

99Claude Code はセッションを作成し、セッション ID とそのリンクを出力して終了します。

100 

101フラグは [`remote.defaultEnvironmentId`](/docs/ja/settings-reference#remote-defaultenvironmentid) 設定よりも優先されます。`--output-format stream-json` をサポートしておらず、`--resume`、`--continue`、`--teleport`、`--session-id`、`--init-only` など、セッションを再開、アタッチ、または事前設定するフラグと組み合わせることはできません。`--cloud` はセッション ID または URL で拒否され、非対話型実行では説明を含む場合に拒否されます。ベアの `--cloud` は存在しないものとして扱われます。ターミナルから、位置指定プロンプトの代わりに `--cloud` 説明としてタスクを渡すことができます。

102 

103<h2 id="example-script">

104 スクリプト例

105</h2>

106 

107以下のスクリプトは `$CLAUDE_TEST_ENVIRONMENT_ID`(テスト環境の `ccpool_...` ID)に対して完全なループを実行します。これは管理ページの環境詳細ダイアログに表示されるか、[環境作成呼び出し](#create-a-dedicated-test-environment)によって返されます。各返信のセンチネルフレーズをアサートします。キャプチャフックがインストールされ、`E2E_REPLY_DIR` がエクスポートされている実行イメージを使用して、このホストで実行イメージを開始した後、セッションを実行したいリポジトリの git チェックアウトから実行します。

108 

109```bash theme={null}

110#!/usr/bin/env bash

111# End-to-end test against a self-hosted environment, using Stop-hook read-back.

112# Prereqs: `claude auth login` has been run on this machine (see "Authenticate

113# from CI" below); jq is installed; CLAUDE_TEST_ENVIRONMENT_ID names an

114# environment whose runner is the one on this host, with the capture hook

115# installed and E2E_REPLY_DIR in its environment.

116 

117set -euo pipefail

118 

119: "${CLAUDE_TEST_ENVIRONMENT_ID:=${CLAUDE_TEST_POOL_ID:-}}" # CLAUDE_TEST_POOL_ID is the legacy spelling

120: "${CLAUDE_TEST_ENVIRONMENT_ID:?set CLAUDE_TEST_ENVIRONMENT_ID to a ccpool_... id served by a runner on this host}"

121: "${E2E_REPLY_DIR:?set E2E_REPLY_DIR to the directory the Stop hook on your test runner writes to, and export it to the runner process}"

122: "${TEST_REPO_REF:=main}"

123 

124[ -d "$E2E_REPLY_DIR" ] || {

125 echo "FAIL: E2E_REPLY_DIR ($E2E_REPLY_DIR) does not exist. The Stop hook on the runner needs it." >&2

126 exit 1

127}

128 

129# Waits until $E2E_REPLY_DIR/<session_id>.txt contains $2, or fails after

130# 90 seconds. Tune the timeout to your environment's cold-start time. The

131# file is written by the Stop hook on the runner.

132await_reply() {

133 local expect="$2" f="$E2E_REPLY_DIR/$1.txt"

134 local deadline=$(($(date +%s) + 90))

135 while :; do

136 if [ -f "$f" ] && grep -qF -- "$expect" "$f"; then

137 return

138 fi

139 [ "$(date +%s)" -lt "$deadline" ] || {

140 echo "FAIL: '$expect' not in $f within 90s. The Stop hook on the runner did not write it." >&2

141 echo "-- $E2E_REPLY_DIR contents --" >&2; ls -la "$E2E_REPLY_DIR" >&2

142 [ -f "$f" ] && { echo "-- $f --" >&2; cat "$f" >&2; }

143 exit 1

144 }

145 sleep 1

146 done

147}

148 

149# 1. Create the session on the test environment. Run from a git checkout

150# so the CLI can auto-detect the repo. --ref pins the checkout to a named

151# ref regardless of local HEAD.

152TURN1="e2e-probe-$(date +%s)-$$: say exactly 'ok: custom tools are reachable' and nothing else"

153EXPECT1="ok: custom tools are reachable"

154create_json=$(claude -p "$TURN1" --environment "$CLAUDE_TEST_ENVIRONMENT_ID" \

155 --ref "$TEST_REPO_REF" --output-format json)

156echo "create: $create_json"

157SESSION_ID=$(jq -er '.session_id' <<<"$create_json")

158 

159# 2. Wait for the turn-1 reply.

160await_reply "$SESSION_ID" "$EXPECT1"

161echo "turn-1 reply ok"

162 

163# 3. Post a follow-up via the CLI.

164TURN2="e2e-probe-followup-$(date +%s): say exactly 'ok: follow-up delivered' and nothing else"

165EXPECT2="ok: follow-up delivered"

166followup_json=$(claude -p "$TURN2" --cloud "$SESSION_ID" --output-format json)

167echo "followup: $followup_json"

168jq -e '.ok == true' <<<"$followup_json" >/dev/null

169 

170# 4. Wait for the turn-2 reply.

171await_reply "$SESSION_ID" "$EXPECT2"

172echo "turn-2 reply ok"

173 

174echo "PASS: test-environment round-trip (session $SESSION_ID)"

175```

176 

177`TURN1`/`TURN2` プロンプトと `EXPECT1`/`EXPECT2` センチネルを、カスタム MCP ツールの 1 つを実行するよう Claude に依頼し、その出力をアサートするなど、セットアップを実行するものに置き換えます。

178 

179<h2 id="remote-test-runners">

180 リモートテスト実行イメージ

181</h2>

182 

183テスト実行イメージが別のインフラストラクチャ上にある場合(CI ジョブがファイルシステムを共有できない永続的な Kubernetes フリートなど)、Stop フックのファイル書き込みをドライバーがリッスンするエンドポイントへの POST に置き換えます。

184 

185```sh theme={null}

186#!/bin/sh

187# Variant of the capture hook for runners on separate infrastructure.

188# Set E2E_REPLY_URL on the runner to an endpoint the driver controls.

189[ -n "${E2E_REPLY_URL:-}" ] || exit 0

190sid=$(printf '%s' "${CLAUDE_CODE_REMOTE_SESSION_ID:-}" | sed 's/^cse_/session_/')

191[ -n "$sid" ] || exit 0

192jq -r '.last_assistant_message // empty' | \

193 curl -fsS -X POST --data-binary @- "$E2E_REPLY_URL/$sid" >/dev/null 2>&1

194exit 0

195```

196 

197ドライバー側では、POST を受け入れ、テストが要求するまで返信を保持するものを実行します。CI ジョブ内の小さな HTTP リスナーや、既に実行している webhook レシーバーなどです。フックはインフラストラクチャ上で実行されるため、エンドポイントは実行イメージからのみ到達可能である必要があります。

198 

199<h2 id="authenticate-from-ci">

200 CI から認証する

201</h2>

202 

203`claude -p ... --environment` と `claude -p ... --cloud` の両方は claude.ai OAuth トークンで認証します。`sk-ant-xxxxx` などの API キーはどちらの呼び出しでも受け入れられません。2 つのアプローチにより、CI でトークンを利用できるようになります。

204 

205<h3 id="long-lived-ci-host">

206 長期間存続する CI ホスト

207</h3>

208 

209スクリプトを実行するマシン上で、自動化用の専用ユーザーアカウントを使用して、`claude auth login` を 1 回対話的に実行します。Claude Code はトークンを macOS ではOS キーチェーンに、Linux と Windows では `~/.claude/.credentials.json` に保存します。キーチェーンに書き込みできない macOS ホスト(SSH セッションでログインキーチェーンがロックされたままの場合など)では、Claude Code はトークンを `~/.claude/.credentials.json` にも保存します。[認証情報管理](/docs/ja/authentication#credential-management)を参照してください。

210 

211CLI は各呼び出しで短期アクセストークンを自動的に更新しますが、基盤となるリフレッシュトークングラントは初期ログインから 30 日間に制限されているため、そのホストで 30 日ごとに `claude auth login` を対話的に再実行してください。

212 

213<h3 id="ephemeral-ci-runners">

214 エフェメラル CI 実行イメージ

215</h3>

216 

217現在、これに対する長期間存続する CI トークンはありません。リモートセッション制御を付与するスコープ `user:sessions:claude_code` はサーバー側で 30 日間に制限されているため、1 年間の推論のみのトークンを発行する `claude setup-token` はこれをカバーしていません。[環境シークレット](/docs/ja/self-hosted-environments-quickstart#set-up-an-environment-and-runner)も受け入れられません。これは実行イメージが環境に登録することのみを認可し、セッションを作成することは認可しないためです。

218 

219エフェメラル実行イメージに保存されたログインをプロビジョニングするには、[`CLAUDE_CODE_OAUTH_REFRESH_TOKEN` と `CLAUDE_CODE_OAUTH_SCOPES`](/docs/ja/env-vars#variables) を設定して、`claude auth login` がブラウザなしでトークンを交換できるようにします。リフレッシュグラントに対して同じ 30 日間の上限が適用されます。人間のアカウントにバインドされていないマシンアイデンティティパスが必要な場合は、Anthropic アカウントチームにお問い合わせください。

220 

221<h2 id="create-a-dedicated-test-environment">

222 専用テスト環境を作成する

223</h2>

224 

225CI の各実行ごとにクリーンな環境を取得するために、環境をプログラムで作成および削除します。CI ジョブが開始する runner がこのフレッシュな環境に登録されます。以下の作成および削除呼び出しは、claude.ai の **Cloud environments** 管理ページが使用するのと同じエンドポイントであり、`anthropic-beta: ccr-byoc-2025-07-29` ヘッダーが必要です。

226 

227<h3 id="mint-the-admin-token">

228 管理トークンを生成する

229</h3>

230 

231`$ADMIN_TOKEN` は、Owner ロールを保持するアカウントの claude.ai OAuth アクセストークンであり、[CI から認証する](#authenticate-from-ci)と同じ方法で生成されます。

232 

233* **生成する**: Owner ロールを保持するアカウントで `claude auth login` を実行してから、[長期間実行される CI ホスト](#long-lived-ci-host)が Claude Code がそれを保存した場所を示す場所から現在のアクセストークンを読み取ります。

234* **各実行ごとにフレッシュに読み取る**: CLI はアクセストークンをローテーションし、同じ 30 日間のリフレッシュ許可上限が適用されるため、コピーを保存しないでください。

235* **stdin 経由で渡す**: 例が行うように、トークンが curl の引数リストまたはビルドログに記録されないようにします。

236 

237<h3 id="create-the-environment">

238 環境を作成する

239</h3>

240 

241レスポンスをキャプチャして出力しないようにします。`pool_secret` は、runner を環境に登録できる長期間有効な認証情報であるため、マスクされた CI シークレットとして保存し、環境 ID のみを出力します。トークンをプロセスリストから除外する `-H @-` 形式には curl 7.55 以降が必要です。古い curl は `@-` をリテラルヘッダーとして扱い、認可なしでリクエストを送信します。

242 

243```bash theme={null}

244create=$(curl -fsS -X POST -H @- \

245 -H "anthropic-beta: ccr-byoc-2025-07-29" -H "anthropic-version: 2023-06-01" \

246 -H "content-type: application/json" \

247 -d '{"name":"ci-test-environment"}' \

248 https://api.anthropic.com/v1/code/runners/self-hosted/pools \

249 <<<"Authorization: Bearer $ADMIN_TOKEN")

250ENVIRONMENT_ID=$(jq -er .pool.pool_id <<<"$create")

251ENVIRONMENT_SECRET=$(jq -er .pool_secret <<<"$create")

252```

253 

254[Owner が組織に対して **Allow self-hosted environments** をオンにする](/docs/ja/self-hosted-environments#availability-and-limitations)までは、呼び出しは `403` `permission_error` で失敗し、`self-hosted runners are disabled by your organization's policy` と表示されます。

255 

256このホストで runner を開始します。`SELF_HOSTED_RUNNER_ENVIRONMENT_SECRET=$ENVIRONMENT_SECRET` と、[キャプチャフックをテスト runner にインストールする](#install-the-capture-hook-on-your-test-runner)に従う capture hook および `E2E_REPLY_DIR` を使用してから、テストスクリプトを実行します。

257 

258<h3 id="delete-the-environment">

259 環境を削除する

260</h3>

261 

262各 CI 実行がクリーンな状態で開始されるように、実行が終了したときに環境を削除します。

263 

264```bash theme={null}

265curl -fsS -X DELETE -H @- \

266 -H "anthropic-beta: ccr-byoc-2025-07-29" -H "anthropic-version: 2023-06-01" \

267 "https://api.anthropic.com/v1/code/runners/self-hosted/pools/$ENVIRONMENT_ID" \

268 <<<"Authorization: Bearer $ADMIN_TOKEN"

269```

Details

4 4 

5# サーバー管理設定を構成する5# サーバー管理設定を構成する

6 6 

7> デバイス管理インフラストラクチャを必要とせずに、Claude.ai 上のウェブベースインターフェースを通じて、組織全体で Claude Code を一元的に構成します。7> デバイス管理インフラストラクチャを必要とせずに、サーバー配信設定を通じて組織全体で Claude Code を一元的に構成します。

8 8 

9サーバー管理設定により、組織の所有者は claude.ai コンソールの [**Admin Settings > Claude Code > Managed settings**](https://claude.ai/admin-settings/claude-code) から Claude Code を一元的に構成できます。Claude Code クライアントは、ユーザーが組織の OAuth ログインまたは直接構成された API キーで認証すると、これらの設定を自動的に取得します。サーバー管理配信がサポートされているプラットフォームについては、[プラットフォームの可用性](#platform-availability)を参照してください。9サーバー管理設定により、組織の所有者は claude.ai コンソールの [**Admin Settings > Claude Code > Managed settings**](https://claude.ai/admin-settings/claude-code) から Claude Code を一元的に構成できます。Claude Code クライアントは、ユーザーが対象となる認証情報を使用して、サーバー管理配信がサポートされているプラットフォームで認証すると、これらの設定を自動的に取得します。対象となる認証情報とプラットフォームについては、[プラットフォームの可用性](#platform-availability)を参照してください。

10 

11このアプローチは、デバイス管理インフラストラクチャが導入されていない組織、または管理されていないデバイス上のユーザーの設定を管理する必要がある組織向けに設計されています。

12 10 

13<Note>11<Note>

14 サーバー管理設定は [Claude for Teams](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=server_settings_teams#team-&-enterprise) および [Claude for Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=server_settings_enterprise) カスタマー向けに利用可能です。12 サーバー管理設定は [Claude for Teams](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=server_settings_teams#team-&-enterprise) および [Claude for Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=server_settings_enterprise) カスタマー向けに利用可能です。


28 サーバー管理設定とエンドポイント管理設定の選択26 サーバー管理設定とエンドポイント管理設定の選択

29</h2>27</h2>

30 28 

31Claude Code は、一元的な構成のための 2 つのアプローチをサポートしています。サーバー管理設定は Anthropic のサーバーから構成を配信します。[エンドポイント管理設定](/docs/ja/settings#settings-files)は、ネイティブ OS ポリシー(macOS 管理設定、Windows レジストリ)または管理設定ファイルを通じてデバイスに直接配置されます。29Claude Code は、一元的な構成のための 2 つのアプローチをサポートしています。サーバー管理設定は Anthropic のサーバーから構成を配信します。[エンドポイント管理設定](/docs/ja/managed-settings#delivery-mechanisms)は、ネイティブ OS ポリシー(macOS 管理設定、Windows レジストリ)または管理設定ファイルを通じてデバイスに直接配置されます。

32 30 

33| アプローチ | 最適な用途 | セキュリティモデル |31| アプローチ | 最適な用途 | セキュリティモデル |

34| :--------------------------------------------- | :------------------------------ | :------------------------------------------------- |32| :---------------------------------------------------------- | :------------------------------ | :----------------------------------------------------------- |

35| **サーバー管理設定** | MDM がない組織、または管理されていないデバイス上のユーザー | 認証時に Anthropic のサーバーから配信される設定 |33| **サーバー管理設定** | MDM がない組織、または管理されていないデバイス上のユーザー | Claude Code が起動時に Anthropic のサーバーから取得し、セッション中に 1 時間ごとに更新する設定 |

36| **[エンドポイント管理設定](/docs/ja/settings#settings-files)** | MDM またはエンドポイント管理がある組織 | MDM 構成プロファイル、レジストリポリシー、または管理設定ファイルを通じてデバイスに配置される設定 |34| **[エンドポイント管理設定](/docs/ja/managed-settings#delivery-mechanisms)** | MDM またはエンドポイント管理がある組織 | MDM 構成プロファイル、レジストリポリシー、または管理設定ファイルを通じてデバイスに配置される設定 |

37 35 

38デバイスが MDM またはエンドポイント管理ソリューションに登録されている場合、エンドポイント管理設定はより強力なセキュリティ保証を提供します。これは、設定ファイルが OS レベルでユーザーの変更から保護される可能性があるためです。エンドポイント管理設定は[クラウドセッション](/docs/ja/model-config#surface-coverage)に到達しないため、Web 上で Claude Code を使用する組織はサーバー管理設定も構成する必要があります。36デバイスが MDM またはエンドポイント管理ソリューションに登録されている場合、エンドポイント管理設定はより強力なセキュリティ保証を提供します。これは、設定ファイルが OS レベルでユーザーの変更から保護される可能性があるためです。エンドポイント管理設定は Anthropic がホストする環境の[クラウドセッション](/docs/ja/model-config#surface-coverage)に到達しないため、Web 上で Claude Code を使用する組織はサーバー管理設定も構成する必要があります。[自己ホスト環境](/docs/ja/self-hosted-environments)内のセッションも、ランナーイメージ内の管理設定ファイルを読み取ります。以下の[設定の優先順位](#settings-precedence)は、そのファイルが適用される場合を示しています。

39 37 

40<h2 id="configure-server-managed-settings">38<h2 id="configure-server-managed-settings">

41 サーバー管理設定を構成する39 サーバー管理設定を構成する


49 </Step>47 </Step>

50 48 

51 <Step title="設定を定義する">49 <Step title="設定を定義する">

52 構成を JSON として追加します。`settings.json` で利用可能な[すべての設定](/docs/ja/settings#available-settings)がサポートされており、OS レベルのポリシー配信に制限されているものを除きます。[現在の制限事項](#current-limitations)でその短いリストを参照してください。これには[hooks](/docs/ja/hooks)、[環境変数](/docs/ja/env-vars)、および `allowManagedPermissionRulesOnly` などの[管理専用設定](/docs/ja/permissions#managed-only-settings)が含まれます。50 構成を JSON として追加します。`settings.json` で利用可能な[すべての設定](/docs/ja/settings-reference#all-settings)がサポートされており、OS レベルのポリシー配信に制限されているものを除きます。[現在の制限事項](#current-limitations)でその短いリストを参照してください。これには[hooks](/docs/ja/hooks)、[環境変数](/docs/ja/env-vars)、および `allowManagedPermissionRulesOnly` などの[管理専用設定](/docs/ja/managed-settings#managed-only-settings)が含まれます。

53 51 

54 この例は、権限拒否リストを適用し、ユーザーが権限をバイパスするのを防ぎ、権限ルールを管理設定で定義されたものに制限します。52 この例は、権限拒否リストを適用し、ユーザーが権限をバイパスするのを防ぎ、権限ルールを管理設定で定義されたものに制限します。`Bash(curl *)` ルールは、`/usr/bin/curl` や `sh -c 'curl …'` ではなく、[Claude が記述する方法](/docs/ja/permissions#bash-rule-limits)として `curl` にマッチします。コマンドテキストに依存しないネットワーク強制の場合は、[`sandbox` ブロックに `allowManagedDomainsOnly`](/docs/ja/sandboxing#configure-the-sandbox-for-your-organization) を追加してください。

55 53 

56 ```json theme={null}54 ```json theme={null}

57 {55 {


68 }66 }

69 ```67 ```

70 68 

71 hooks は `settings.json` と同じ形式を使用します。69 Hooks は `settings.json` と同じ形式を使用します。

72 70 

73 この例は、組織全体のすべてのファイル編集後に監査スクリプトを実行します。71 この例は、組織全体のすべてのファイル編集後に監査スクリプトを実行します。

74 72 


87 }85 }

88 ```86 ```

89 87 

90 [auto mode](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) 分類器を構成して、組織が信頼するリポジトリ、バケット、ドメインを認識させるには、以下のようにします。88 hooks はシェルコマンドを実行するため、インタラクティブセッション内のユーザーは Claude Code がそれらを適用する前に[セキュリティ承認ダイアログ](#security-approval-dialogs)を表示します。

91 

92 ```json theme={null}

93 {

94 "autoMode": {

95 "environment": [

96 "Source control: github.example.com/acme-corp and all repos under it",

97 "Trusted cloud buckets: s3://acme-build-artifacts, gs://acme-ml-datasets",

98 "Trusted internal domains: *.corp.example.com"

99 ]

100 }

101 }

102 ```

103 89 

104 hooks はシェルコマンドを実行するため、ユーザーは適用される前に[セキュリティ承認ダイアログ](#security-approval-dialogs)を表示します。`autoMode` エントリが分類器がブロックする内容にどのように影響するか、および `environment`、`allow`、`soft_deny`、および `hard_deny` フィールドに関する重要な警告については、[auto mode を構成する](/docs/ja/auto-mode-config)を参照してください。90 [auto mode](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) 分類器を構成して、組織が信頼するリポジトリ、バケット、ドメインを認識させるには、同じ方法で `autoMode` ブロックを配信してください。`autoMode` エントリが分類器がブロックする内容にどのように影響するか、および `environment`、`allow`、`soft_deny`、および `hard_deny` フィールドに関する重要な警告については、[auto mode を構成する](/docs/ja/auto-mode-config)を参照してください。

105 </Step>91 </Step>

106 92 

107 <Step title="保存してデプロイする">93 <Step title="保存してデプロイする">


113 設定配信の確認99 設定配信の確認

114</h3>100</h3>

115 101 

116設定が適用されていることを確認するには、ユーザーに Claude Code を再起動するよう依頼します。構成に[セキュリティ承認ダイアログ](#security-approval-dialogs)をトリガーする設定が含まれている場合、ユーザーは起動時に管理設定を説明するプロンプトを表示します。また、ユーザーに `/permissions` を実行して有効な権限ルールを表示させることで、管理権限ルールがアクティブであることを確認することもできます。102設定が適用されていることを確認するには、ユーザーに Claude Code を再起動するよう依頼します。構成に[セキュリティ承認ダイアログ](#security-approval-dialogs)をトリガーする設定が含まれている場合、ユーザーは Claude Code がそれらを取得する次回時(次回の起動時、またはインタラクティブセッション実行中は 1 時間以内)に管理設定を説明するプロンプトを表示します。また、ユーザーに `/permissions` を実行して有効な権限ルールを表示させることで、管理権限ルールがアクティブであることを確認することもできます。

103 

104特定のマシンでフェッチ結果を確認するには、ユーザーに `claude doctor` を実行させ、`Managed settings (remote)` 行を読んでください。Claude Code v2.1.248 以降が必要です。この行は 4 つの結果のいずれかを報告します。

105 

106* 配信された設定が読み込まれた

107* 組織にサーバー管理設定が構成されていない

108* フェッチが失敗し、原因と キャッシュされたポリシーがまだ適用されているかどうかを表示

109* Claude Code がフェッチをスキップし、理由を表示。[プラットフォーム可用性](#platform-availability)でスキップするプロバイダーと構成を参照してください

110 

111フェッチがまだ進行中の場合、行はそれを報告します。

112 

113実行中のセッションでは、`/status` はフェッチ失敗後に同じ行を表示し、サードパーティプロバイダー変数やユーザーのシェルでエクスポートされたカスタム `ANTHROPIC_BASE_URL` など、スキップされたフェッチの原因によっては表示されます。

117 114 

118<h3 id="access-control">115<h3 id="access-control">

119 アクセス制御116 アクセス制御


130 管理専用設定127 管理専用設定

131</h3>128</h3>

132 129 

133ほとんどの[設定キー](/docs/ja/settings#available-settings)は任意のスコープで機能します。いくつかのキーは管理設定からのみ読み込まれ、ユーザーまたはプロジェクト設定ファイルに配置された場合は効果がありません。完全なリストについては、[管理専用設定](/docs/ja/permissions#managed-only-settings)を参照してください。そのリストにない設定は、管理設定に配置することができ、最高の優先度を持ちます。130ほとんどの[設定キー](/docs/ja/settings-reference#all-settings)は任意のスコープで機能します。いくつかのキーは管理設定からのみ読み込まれ、ユーザーまたはプロジェクト設定ファイルに配置された場合は効果がありません。権限およびプラグイン制御については[管理専用設定](/docs/ja/managed-settings#managed-only-settings)を参照するか、完全なセットについては[すべての設定](/docs/ja/settings-reference#all-settings)インデックスの Scope 列を読んでください。

134 131 

135<h3 id="current-limitations">132<h3 id="current-limitations">

136 現在の制限事項133 現在の制限事項


139サーバー管理設定には、以下の制限があります。136サーバー管理設定には、以下の制限があります。

140 137 

141* 設定は組織内のすべてのユーザーに均一に適用されます。グループごとの構成はまだサポートされていません。138* 設定は組織内のすべてのユーザーに均一に適用されます。グループごとの構成はまだサポートされていません。

142* [`managed-mcp.json`](/docs/ja/managed-mcp) ファイルはサーバー管理設定を通じて配布することはできません。代わりに `allowedMcpServers` および `deniedMcpServers` ポリシーキーをそこに配信してください。139* [`managed-mcp.json`](/docs/ja/managed-mcp) ファイルはサーバー管理設定を通じて配布することはできません。代わりに `allowedMcpServers` および `deniedMcpServers` ポリシーキーをそこに配信してください。Claude Code v2.1.259 以降では、[`managedMcpServers`](/docs/ja/managed-mcp#provide-servers-through-managed-settings) でリモートサーバーを提供することもできます。これは `http` および `sse` サーバーのみを受け入れ、ファイルが行う方法で排他的制御を行いません。

143* `policyHelper` および `wslInheritsWindowsSettings` など、OS レベルのポリシーソースに制限されている設定は、尊重されません。代わりに MDM またはシステム `managed-settings.json` ファイルを通じてデプロイしてください。140 

141 Claude Code は、その[システムパス](/docs/ja/managed-mcp#exclusive-control-with-managed-mcp-json)にデプロイされた `managed-mcp.json` を管理設定層とは別に読み込むため、サーバー管理設定が有効な場合でもファイルが適用されます。

142* `policyHelper` および `wslInheritsWindowsSettings` など、OS レベルのポリシーソースに制限されている設定は、尊重されません。代わりに MDM またはシステム `managed-settings.json` ファイルを通じてデプロイしてください。その方法でデプロイされた `policyHelper` は、その送信元が[管理層内の優先順位](/docs/ja/managed-settings#precedence-within-the-managed-tier)の下で選択されたものである場合にのみ実行されます。

144 143 

145<h2 id="settings-delivery">144<h2 id="settings-delivery">

146 設定配信145 設定配信


150 設定の優先順位149 設定の優先順位

151</h3>150</h3>

152 151 

153サーバー管理設定と[エンドポイント管理設定](/docs/ja/settings#settings-files)は、Claude Code [設定階層](/docs/ja/settings#settings-precedence)の最上位を占めます。コマンドライン引数を含む他の設定レベルはこれらをオーバーライドできません。管理層内では、設定された [`policyHelper`](/docs/ja/settings#compute-managed-settings-with-a-policy-helper) は他のすべての管理ソース(サーバー管理設定を含む)に優先します。その出力は実行のための唯一の管理構成になります。それ以外の場合、Claude Code は空でない構成を配信する最初のソースを使用します。サーバー管理設定が最初にチェックされ、次にエンドポイント管理設定がチェックされます。ソースはマージされません。サーバー管理設定がキーを配信する場合、他のエンドポイント管理設定は無視されます。サーバー管理設定が何も配信しない場合、エンドポイント管理設定が適用されます。152サーバー管理設定と[エンドポイント管理設定](/docs/ja/managed-settings#delivery-mechanisms)は、Claude Code [設定階層](/docs/ja/settings#settings-precedence)の最上位を占めます。コマンドライン引数を含む他の設定レベルはこれらをオーバーライドできません。ただし、[管理設定の優先順位の例外](/docs/ja/settings#exceptions-to-managed-settings-precedence)は除きます。

153 

154管理層内では、Claude Code はデフォルトで、少なくとも 1 つのポリシーキーを配信する最初のソースを使用します。サーバー管理設定が最初にチェックされ、次にエンドポイント管理設定がチェックされます。ただし、[次に説明するキー単位の例外](#per-key-exceptions-across-managed-sources)は除きます。[Claude Code が管理ソースを組み合わせる方法](/docs/ja/managed-settings#precedence-within-the-managed-tier)には、完全なランキング、制御キーの除外、およびすべてのソースに適用されるオプトインが記載されています。

155 

156選択されたソースが MDM ポリシーまたは管理設定ファイルであり、その [`policyHelper`](/docs/ja/settings-reference#policyhelper) が管理設定を提供する場合、ヘルパーの出力はそのソースを置き換え、実行のための唯一の管理構成になります。Claude Code は、サーバー管理設定がポリシーキーを配信している間、MDM またはファイルベースの設定で構成された `policyHelper` を参照しません。

157 

158後続のフェッチでサーバー管理設定が削除されたことが判明した場合、Claude Code は次の起動時ではなく、すぐにそのヘルパーを実行します。[`policyHelper`](/docs/ja/settings-reference#policyhelper) エントリは、その実行が失敗した場合に何が起こるかをカバーしています。

159 

160管理コンソールでサーバー管理構成をクリアして、エンドポイント管理 plist またはレジストリポリシーにフォールバックする意図がある場合、[キャッシュされた設定](#fetch-and-caching-behavior)はクライアントマシンに保持され、次の成功したフェッチまで続きます。また、[次の起動時にのみ適用される](#fetch-and-caching-behavior)キー(`model` など)は、各クライアントが再起動するまで有効なままです。`/status` を実行して、どの管理ソースがアクティブであるかを確認してください。

161 

162<h3 id="per-key-exceptions-across-managed-sources">

163 管理ソース全体でのキー単位の例外

164</h3>

154 165 

1551 つの例外が適用されます。[クロスソースロックキー](/docs/ja/settings#settings-precedence)(サンドボックスホワイトリストロックなど)の小さなセットは、管理者が管理する管理ソースがそれらを設定する場合に尊重されます。ユーザーが書き込み可能な HKCU レジストリ層は除外されます。1662 つの種類のキーがマージなしルールの例外です。

156 167 

157管理コンソールでサーバー管理構成をクリアして、エンドポイント管理 plist またはレジストリポリシーにフォールバックする意図がある場合、[キャッシュされた設定](#fetch-and-caching-behavior)はクライアントマシンに保持され、次の成功したフェッチまで続きます。`/status` を実行して、どの管理ソースがアクティブであるかを確認してください。168* **クロスソースロックキー**:サンドボックスホワイトリストロックなど、[管理設定ページに記載されている](/docs/ja/managed-settings#precedence-within-the-managed-tier)小さなキーセット。Claude Code は、管理者が管理する管理ソースがそれらを設定する場合にそれらを尊重します。ユーザーが書き込み可能な HKCU レジストリ層は除外されます。[`policyHelper`](/docs/ja/settings-reference#policyhelper) が管理設定を提供する場合、その出力はこれらのチェックが読み取る唯一のソースです。ただし、[`forceRemoteSettingsRefresh`](/docs/ja/settings-reference#forceremotesettingsrefresh) は除きます。これは Claude Code が起動時に管理ソースから直接読み取ります。

169* **`env` ブロック**:テレメトリユニットと認証情報キーとペアになったルーティング変数を除き、以下で説明するように、管理者が管理するソース全体でキーごとにマージされます。各環境変数について、それを定義する最優先ソースが優先され、下位の管理ソースは上位のソースが設定しない変数を埋めます。したがって、エンドポイント管理 `env` エントリは、サーバー管理構成がその変数を設定しない場合、またはキャッシュされたサーバー値が[サーバー確認待ちで保留中](#fetch-and-caching-behavior)の場合に適用されます。Claude Code v2.1.223 以降が必要です。v2.1.223 より前は、Claude Code は選択されたソースの全体 `env` ブロックのみを適用します。

170 * **テレメトリユニット**:`OTEL_EXPORTER_OTLP_*` エクスポーターキー、`OTEL_LOG_*` コンテンツキャプチャトグル、`OTEL_LOGS_EXPORTER`、およびベータトレーシング変数 `ENABLE_BETA_TRACING_DETAILED` と `BETA_TRACING_ENDPOINT` は、それらのいずれかを設定する最優先ソースをユニットとして従います。`otelHeadersHelper` 認証情報キーを配信するソースもユニットを要求しますが、これらの変数は選択されたソースである場合にのみ配置されます。選択されていないが、キーを配信するソースはそれらのいずれも提供せず、下位のソースがそれらを埋めるのをブロックします。いずれにせよ、1 つのソースからのエクスポーターエンドポイントは、別のソースからの認証情報とペアになることはできません。

171 * **認証情報ペアのルーティング**:`apiKeyHelper` または `otelHeadersHelper` などの選択されたソースのみの認証情報キーとペアになったルーティング変数を配信するソースは、それがスロットに勝つ場合にのみそれらのルーティング変数を提供します。

158 172 

159<h3 id="fetch-and-caching-behavior">173<h3 id="fetch-and-caching-behavior">

160 フェッチとキャッシング動作174 フェッチとキャッシング動作


162 176 

163Claude Code は起動時に Anthropic のサーバーから設定をフェッチし、アクティブなセッション中は 1 時間ごとに更新をポーリングします。177Claude Code は起動時に Anthropic のサーバーから設定をフェッチし、アクティブなセッション中は 1 時間ごとに更新をポーリングします。

164 178 

179[Claude apps gateway](#platform-availability) を通じてサインインしたクライアントは、ゲートウェイから設定をフェッチし、セッションが開始される前にそのフェッチを待つため、以下のリストのフェッチはそれに適用されません。[フェッチが失敗した場合の処理](#enforce-fail-closed-startup)については、「強制的にクローズされた起動を適用する」を参照してください。

180 

165**キャッシュされた設定なしの初回起動:**181**キャッシュされた設定なしの初回起動:**

166 182 

167* Claude Code は非同期で設定をフェッチします183* 開発者が起動時(初回実行時や `/logout` 後など)にサインインする場合、Claude Code はセッションを開く前にフェッチを最大 5 秒間待ちます。ポリシーが時間内に到着した場合、Claude Code は最初の画面からそれを適用し、[`companyAnnouncements`](/docs/ja/settings-reference#companyannouncements) をそこに表示します。ペイロードが[セキュリティ承認](#security-approval-dialogs)を必要とする場合、Claude Code は待機を終了し、開発者が承認した後にペイロードを適用します。

168* フェッチが失敗した場合、Claude Code は管理設定なしで続行します184* その他の起動時、および 5 秒の待機がタイムアウトした場合、Claude Code はセッションを開き、フェッチが続行されるため、設定が読み込まれ、制限が有効になるまでの短い期間が経過します。

169* 設定が読み込まれるまでの短い期間があり、その間は制限が適用されません185* フェッチが失敗した場合、Claude Code はサーバー管理設定なしで続行し、対話型セッションで遠隔ポリシーが適用されないことを警告します。エンドポイント管理設定は引き続き適用されます。管理ソースが [`forceRemoteSettingsRefresh`](#enforce-fail-closed-startup) を設定している場合、Claude Code は代わりに終了します。

170 186 

171**キャッシュされた設定での後続の起動:**187**キャッシュされた設定での後続の起動:**

172 188 

173* キャッシュされた設定は起動時に直ちに適用されます。ただし、以下で説明するトランスポート、ルーティング、認証環境変数は除きます189* キャッシュされた設定は起動時に直ちに適用されます。ただし、キャッシュされた `modelPricing` と `managedMcpServers` の値、およびサーバーがペイロードを確認するまで Claude Code が保留する環境変数は除きます。

174* Claude Code はバックグラウンドで新しい設定をフェッチします190* キャッシュされた [`modelPricing`](/docs/ja/settings-reference#modelpricing) は、セッションのフェッチがペイロードを確認するまで適用されません。それまで、開発者が `/usage` と状態行で見るコスト数値は定価です。

175* キャッシュされた設定はネットワーク障害を通じて保持されます。保留中の環境変数はフェッチが成功するまで保留されたままです191* キャッシュされた [`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers) ブロックは、セッションのフェッチがペイロードを確認するまで適用されません。Claude Code はそのフェッチを最大 30 秒間待ってから MCP サーバーに接続します。フェッチが失敗またはタイムアウトした場合、セッションは組織のサーバーなしで開始され、`/status` はそう言い、後続のフェッチがそれらを確認すると接続されます。初回起動を含む完全な動作については、[提供されたサーバーが接続する場合](/docs/ja/managed-mcp#when-provided-servers-connect)を参照してください。Claude Code v2.1.259 以降が必要です。

192* Claude Code はバックグラウンドで新しい設定をフェッチします。

193* キャッシュされた設定はネットワーク障害を通じて保持されます。起動フェッチが失敗した場合、Claude Code は対話型セッションでキャッシュされたポリシーが有効であることを警告します。

194* フェッチが成功するまで、起動時に保留された値は保留されたままです。

176 195 

177v2.1.198 以降、Claude Code はセッションのペイロードをサーバーが確認するまで、キャッシュされた `env` ブロック内の 3 つのカテゴリの変数を保留します。これにより、キャッシュされたプロキシ、認証局、エンドポイント、または認証情報の値がペイロードを確認する設定フェッチをリダイレクト、傍受、または再認証することを防ぎます。強化はサーバーがフェッチした設定キャッシュにのみ適用されます。MDM または `managed-settings.json` を通じてデプロイされた[エンドポイント管理設定](/docs/ja/settings#settings-files)は影響を受けません。保留中のカテゴリは以下の通りです。196Claude Code は、セッションのペイロードをサーバーが確認するまで、キャッシュされた `env` ブロック内の複数のカテゴリの変数を保留します。これにより、キャッシュされたプロキシ、認証局、エンドポイント、または認証情報の値がペイロードを確認する設定フェッチをリダイレクト、傍受、または再認証することを防ぎます。強化はサーバーがフェッチした設定キャッシュにのみ適用されます。MDM または `managed-settings.json` を通じてデプロイされた[エンドポイント管理設定](/docs/ja/managed-settings#delivery-mechanisms)は影響を受けません。保留には Claude Code v2.1.198 以降が必要です。v2.1.198 より前は、全体のキャッシュされた `env` ブロックが起動時に適用されます。保留中のカテゴリは以下の通りです。

178 197 

179* `HTTPS_PROXY`、`NODE_EXTRA_CA_CERTS`、mTLS クライアント証明書変数 `CLAUDE_CODE_CLIENT_CERT` および `CLAUDE_CODE_CLIENT_KEY` などのプロキシと TLS 構成198* `HTTPS_PROXY`、`NODE_EXTRA_CA_CERTS`、mTLS クライアント証明書変数 `CLAUDE_CODE_CLIENT_CERT` および `CLAUDE_CODE_CLIENT_KEY` などのプロキシと TLS 構成

180* `ANTHROPIC_BASE_URL`、`CLAUDE_CODE_USE_BEDROCK` および `CLAUDE_CODE_USE_VERTEX` などのプロバイダー選択変数、`ANTHROPIC_BEDROCK_BASE_URL` などのプロバイダーエンドポイント URL を含む API ルーティングとプロバイダー選択199* `ANTHROPIC_BASE_URL`、`CLAUDE_CODE_USE_BEDROCK` および `CLAUDE_CODE_USE_VERTEX` などのプロバイダー選択変数、`ANTHROPIC_BEDROCK_BASE_URL` などのプロバイダーエンドポイント URL を含む API ルーティングとプロバイダー選択

181* `ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN`、`CLAUDE_CODE_OAUTH_TOKEN` などの認証認証情報200* `ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN`、`CLAUDE_CODE_OAUTH_TOKEN` などの認証認証情報

201* 構成ディレクトリセレクター `CLAUDE_CONFIG_DIR`

202* Claude Code v2.1.223 以降の認証情報ソースと構成ディレクトリセレクター:`ANTHROPIC_FEDERATION_RULE_ID` および `ANTHROPIC_IDENTITY_TOKEN` などの Workload Identity Federation 変数、プロファイルと構成ディレクトリセレクター `ANTHROPIC_PROFILE` および `ANTHROPIC_CONFIG_DIR`、およびオペレーティングシステムディレクトリ変数 `HOME`、`XDG_CONFIG_HOME`、`APPDATA`、`USERPROFILE`

203 

204Claude Code は Workload Identity Federation 変数と `ANTHROPIC_PROFILE` および `ANTHROPIC_CONFIG_DIR` セレクターを起動時にのみ読み取るため、サーバー配信値はフェッチが成功した後でもセッションの認証情報ソースを切り替えません。Claude Code v2.1.223 以降でこれらのセレクターを配信するには、MDM または `managed-settings.json` などの[エンドポイント管理設定](/docs/ja/managed-settings#delivery-mechanisms)を使用してください。`CLAUDE_CONFIG_DIR` およびオペレーティングシステムディレクトリ変数については、保留自体が保護です。キャッシュされた値は、サーバーがペイロードを確認するまで環境から外れたままです。

182 205 

183キャッシュされた `env` ブロック内の他のすべてのキー(テレメトリと OpenTelemetry 構成など)は、以前と同様に起動時に適用されます。フェッチが成功すると、保留中の変数はセッションの残りの期間に適用されます。206キャッシュされた `env` ブロック内の他のすべてのキーは起動時に適用されます。サーバーがペイロードを確認し、[セキュリティ承認](#security-approval-dialogs)が必要な場合は承認した後、保留中の変数はセッションの残りの期間に適用されます。

184 207 

185組織が `api.anthropic.com` に到達するためにプロキシが必要な場合、管理 `env` ブロックのみではなく、シェル環境または[ユーザー設定](/docs/ja/settings#settings-files)で設定してください。初回起動にはキャッシュがないため、これらのソースは既に初期フェッチに必要でした。208組織が `api.anthropic.com` に到達するためにプロキシが必要な場合、保留はサーバー配信 `env` ブロック自体にのみ影響します。MDM または `managed-settings.json` を通じた[エンドポイント管理](/docs/ja/managed-settings#delivery-mechanisms) `env` ブロック、シェル環境、または[ユーザー設定](/docs/ja/settings#where-settings-live)で設定されたプロキシは設定フェッチに到達します。エンドポイント管理ソースには Claude Code v2.1.223 以降が必要です。キャッシュされたサーバー管理プロキシ値はフェッチがそれを確認するまで保留されるため、エンドポイント管理値はキー単位で埋まり、フェッチ自体に到達します。v2.1.223 より前は、シェル環境またはユーザー設定を使用して、プロキシがキャッシュされたサーバーペイロードと一緒に適用されるようにしてください。初回起動にはキャッシュがないため、エンドポイント管理ソース、シェル環境、またはユーザー設定は初期フェッチに引き続き必要です。

186 209 

187Claude Code は設定更新を自動的に適用します。ただし、OpenTelemetry 構成などの高度な設定は、有効にするために完全な再起動が必要です。210Claude Code はほとんどの設定更新を実行中のセッションに再起動なしで適用します。OpenTelemetry エクスポーター構成、`model` キー、および `env` ブロックからの変数の削除を含む一部の更新は、次の起動時にのみ適用されます。

188 211 

189<h3 id="invalid-entries-in-delivered-settings">212<h3 id="invalid-entries-in-delivered-settings">

190 配信された設定の無効なエントリ213 配信された設定の無効なエントリ

191</h3>214</h3>

192 215 

193配信されたペイロードは、他の管理ソースと同じルールで寛容にパースされます。ペイロードにスキーマ検証に失敗するエントリが含まれている場合、Claude Code はそのエントリを削除し、検証エラーを表示し、残りのすべての有効な設定を適用します。セキュリティ強制フィールドの処理方法を含むフィールドレベルの動作については、[管理設定の無効なエントリ](/docs/ja/settings#invalid-entries-in-managed-settings)を参照してください。Claude Code v2.1.169 以降が必要です。216ペイロードの一部がスキーマ検証に失敗した場合、Claude Code は検証エラーを表示し、残りのすべての有効な設定を適用します。[管理設定の無効なエントリ](/docs/ja/managed-settings#invalid-entries-in-managed-settings)は、削除されるもの、およびどのキーがより厳密な値にフォールバックするかを説明しています。Claude Code v2.1.169 以降が必要です。

194 217 

195サーバー管理配信は、これらの動作を追加します。218サーバー管理配信は、これらの動作を追加します。

196 219 

197* `~/.claude/remote-settings.json` のキャッシュは、無効なエントリが削除された救済されたペイロードを保存します。生の無効なペイロードは永続化されません。220* `~/.claude/remote-settings.json` のキャッシュは、無効なエントリが削除された救済されたペイロードを保存します。ただし、無効な `cleanupPeriodDays` および `desktopSessionCleanupPeriodDays` 値は除きます。これらはキャッシュされたコピーに留まり、適用されることはありません。

198* ペイロード内のフィールドが救済できない場合、Claude Code は最後に受け入れられたキャッシュされた設定を保持し、致命的なエラーを記録します。221* ペイロード内のフィールドが救済できず、ペイロードがこれらの保持キーのみではない場合、Claude Code はペイロードを拒否し、最後に受け入れられたキャッシュされた設定を保持し、`Remote settings: Settings validation failed - no fields could be salvaged` をデバッグログに書き込みます。`forceRemoteSettingsRefresh` が設定されている場合、CLI は代わりに終了します。

199* [セキュリティ承認ダイアログ](#security-approval-dialogs)は救済されたペイロードを評価するため、削除された無効なエントリは承認のために提示されず、実行されません。222* [セキュリティ承認ダイアログ](#security-approval-dialogs)は救済されたペイロードを評価するため、削除された無効なエントリは承認のために提示されず、実行されません。

200 223 

201配信の問題をデバッグするには、`claude --debug-file <path>` を実行し、ログで `Remote settings` を検索してください。組織にロールアウトする前に、テストマシンで `claude doctor` を使用してペイロード変更を検証してください。224配信の問題をデバッグするには、`claude --debug-file <path>` を実行し、ログで `Remote settings` を検索してください。組織にロールアウトする前に、テストマシンで `claude doctor` を使用してペイロード変更を検証してください。


204 強制的にクローズされた起動を適用する227 強制的にクローズされた起動を適用する

205</h3>228</h3>

206 229 

207デフォルトでは、起動時にリモート設定フェッチが失敗した場合、CLI は管理設定なしで続行します。この短い未適用ウィンドウが許容できない環境では、管理設定で `forceRemoteSettingsRefresh: true` を設定します。230デフォルトでは、起動時にリモート設定フェッチが失敗した場合、CLI は最後の成功したフェッチからキャッシュされた設定で続行します。ただし、[Claude Code が保留する値](#fetch-and-caching-behavior)はフェッチが成功するまで保留されたままです。それを一度もフェッチしたことがないマシンでは、CLI はサーバー管理設定なしで続行し、デバイス上の[エンドポイント管理設定](/docs/ja/managed-settings#delivery-mechanisms)は引き続き適用されます。

231 

232クライアントがキャッシュされたまたは不在のサーバー管理設定で起動するのを防ぐには、管理設定で `forceRemoteSettingsRefresh: true` を設定します。

233 

234[Claude apps gateway](#platform-availability) を通じてサインインしたクライアントは、この設定を設定しているかどうかに関わらず起動フェッチを待ち、失敗したフェッチを次のように処理します。

235 

236* ゲートウェイが出席型対話型起動に `401` で応答し、この設定がオフの場合、ゲートウェイはそのサインインを終了しました。Claude Code は [`Cloud gateway session expired — run /login to reconnect.`](/docs/ja/errors#cloud-gateway-session-expired) を出力し、ユーザーが `/login` を実行するまでゲートウェイからサインアウトしたセッションを開きます。

237* フェッチが他の方法で失敗した場合、または `claude auth` サブコマンド以外の他の種類の起動の場合、クライアントはエラーで終了します。

208 238 

209この設定がアクティブな場合、CLI は起動時にリモート設定が新しくフェッチされるまでブロックされます。フェッチが失敗した場合、CLI はポリシーなしで続行するのではなく、終了します。この設定は自己永続化します。サーバーから配信されると、ローカルにもキャッシュされるため、新しいセッションの最初の成功したフェッチの前でも、後続の起動は同じ動作を適用します。239この設定がサーバー管理設定をフェッチするセッションでアクティブな場合、CLI は起動時にリモート設定が新しくフェッチされるまでブロックされます。フェッチが失敗した場合、CLI はポリシーなしで続行するのではなく、終了します。この設定は自己永続化します。サーバーから配信されると、ローカルにもキャッシュされるため、新しいセッションの最初の成功したフェッチの前でも、後続の起動は同じ動作を適用します。[サーバー管理設定をフェッチしないセッション](#platform-availability)は待機なしで開始されます。

210 240 

211これを有効にするには、管理設定構成にキーを追加します。241これを有効にするには、管理設定構成にキーを追加します。

212 242 


216}246}

217```247```

218 248 

219[エンドポイント管理](/docs/ja/settings#settings-files)MDM プロファイルまたはシステム `managed-settings.json` ファイルでこのキーを設定して、最初の起動時にクローズされた失敗動作を適用することもできます。サーバーペイロードが配信される前です。v2.1.191 以降、このフラグは上記の[優先順位ルール](#settings-precedence)の例外です。キャッシュされたサーバー管理ペイロードも存在する場合でも、任意の管理ソースで設定されている場合は尊重されるため、MDM 配信値はサーバー管理設定が存在する場合は無視されません。設定フェッチは `Cache-Control: no-cache` ヘッダーも送信するため、中間 HTTP プロキシは古い応答を提供しません。249[エンドポイント管理](/docs/ja/managed-settings#delivery-mechanisms)MDM プロファイルまたはシステム `managed-settings.json` ファイルでこのキーを設定して、最初の起動時にクローズされた失敗動作を適用することもできます。サーバーペイロードが配信される前です。Claude Code v2.1.191 以降では、このフラグは上記の[優先順位ルール](#settings-precedence)の例外です。Claude Code は、キャッシュされたサーバー管理ペイロードも存在する場合でも、管理者が管理する管理ソースがそれを設定する場合にそれを尊重するため、MDM 配信値はサーバー管理設定が存在する場合は無視されません。

250 

251[`policyHelper`](/docs/ja/settings-reference#policyhelper) が管理設定を提供する場合、その出力は起動後に Claude Code が読み取るキーのすべての他の管理ソースを置き換えます。Claude Code がこのキーを読み取るソースについては、[その設定エントリ](/docs/ja/settings-reference#forceremotesettingsrefresh)を参照してください。`policyHelper` エントリは、Claude Code がヘルパーを読み取るソースと実行時期を説明しています。

252 

253設定フェッチは `Cache-Control: no-cache` ヘッダーも送信するため、中間 HTTP プロキシは古い応答を提供しません。

220 254 

221この設定を有効にする前に、ネットワークポリシーが `api.anthropic.com` への接続を許可していることを確認してください。そのエンドポイントに到達できない場合、CLI は起動時に終了し、ユーザーは Claude Code を開始できません。255この設定を有効にする前に、ネットワークポリシーが `api.anthropic.com` への接続を許可していることを確認してください。そのエンドポイントに到達できない場合、CLI は起動時に終了し、ユーザーは Claude Code を開始できません。

222 256 

223v2.1.139 以降、`claude auth` サブコマンド(`claude auth login` など)はこのチェックから除外されるため、期限切れの認証情報が設定フェッチが失敗する理由である場合、ユーザーは再認証できます。257`claude auth` サブコマンド(`claude auth login` など)はこのチェックとゲートウェイ起動終了から除外されるため、期限切れの認証情報が設定フェッチが失敗する理由である場合、ユーザーは再認証できます。

224 258 

225<h3 id="security-approval-dialogs">259<h3 id="security-approval-dialogs">

226 セキュリティ承認ダイアログ260 セキュリティ承認ダイアログ

227</h3>261</h3>

228 262 

229セキュリティリスクをもたらす可能性のある特定の設定には、適用される前に明示的なユーザー承認が必要です。263セキュリティリスクをもたらす可能性のある特定の設定には、対話型セッションで Claude Code が適用する前に明示的なユーザー承認が必要です。

230 264 

231* **シェルコマンド設定**:シェルコマンドを実行する設定265* **シェルコマンド設定**:`apiKeyHelper`、`statusLine`、`otelHeadersHelper` などのシェルコマンドを実行する設定

232* **カスタム環境変数**:既知の安全なホワイトリストにない変数266* **サンドボックスバイナリ設定**:`sandbox.bwrapPath`、`sandbox.socatPath`、`sandbox.ripgrep`。これらの各設定は実行可能ファイルを指し、Claude Code はその実行可能ファイルを実行します。

267* **サンドボックスネットワークと分離設定**:[sandbox](/docs/ja/sandboxing) 設定。サンドボックスプロキシがトラフィックを読み取り、再ルーティング、または認証できるようにするか、サンドボックスの分離を弱める設定:`sandbox.network.tlsTerminate`、`sandbox.network.httpProxyPort`、`sandbox.network.socksProxyPort`、`sandbox.credentials`、`sandbox.allowAppleEvents`、`sandbox.enableWeakerNestedSandbox`、`sandbox.enableWeakerNetworkIsolation`、`sandbox.filesystem.disabled`、`sandbox.network.allowAllUnixSockets`、`sandbox.network.allowUnixSockets`、`sandbox.network.allowMachLookup`。`deny` ルールのみを含む `sandbox.credentials` ブロックは、プロキシに認証情報を与えずにサンドボックスを制限するため、承認は必要ありません。v2.1.251 より前は、Claude Code はこれらの設定を承認なしで適用しました。

268* **カスタム環境変数**:プロキシおよびベース URL 変数など、ユーザーの承認を必要とする配信 `env` 変数。[環境変数と承認ダイアログ](#environment-variables-and-the-approval-dialog)を参照してください。

233* **フック構成**:任意のフック定義269* **フック構成**:任意のフック定義

234* **管理 CLAUDE.md コンテンツ**:管理設定を通じて配信される `claudeMd` 値

235 270 

236これらの設定が存在する場合、ユーザーは構成されている内容を説明するセキュリティダイアログを表示します。ユーザーは続行するために承認する必要があります。ユーザーが設定を拒否した場合、Claude Code は終了します。271これらの設定が存在する場合、ユーザーは構成されている内容を説明するセキュリティダイアログを表示します。ユーザーは続行するために承認する必要があります。ユーザーが設定を拒否した場合、Claude Code は終了します。

237 272 

238<Note>273[`claudeMd`](/docs/ja/settings-reference#claudemd) キーを通じて配信される管理 CLAUDE.md は、Claude Code が実行するコマンドではなく Claude の命令テキストであるため、承認は必要ありません。Claude Code は、これらの命令に従う際に Claude が使用するツールの[権限](/docs/ja/permissions)をチェックします。v2.1.260 より前は、`claudeMd` 値は承認も必要でした。

239 `claude -p` または Agent SDK セッションなどの非対話実行では、ダイアログを表示できません。配信された設定が承認を必要とする場合、Claude Code はその実行のためだけにそれらを適用します。[ローカルキャッシュ](#fetch-and-caching-behavior)に承認済みとして記録したり、書き込んだりしません。次の対話セッションではダイアログが表示されます。ユーザーが対話セッションで承認するまで、各非対話実行は起動時に設定を再度フェッチします。v2.1.207 より前は、非対話実行は設定を承認済みとして保存したため、後続の対話セッションはそれらのダイアログを表示しませんでした。274 

240</Note>275<h4 id="approval-memory">

276 承認メモリ

277</h4>

278 

279Claude Code は、設定ディレクトリ `~/.claude`([`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) を設定しない限り)に承認を記録します。記録内容は、設定フェッチが使用する認証情報によって異なります。

280 

281* **`/login` または `claude auth login` で保存された claude.ai ログイン、または[キーレスコンソールサインイン](/docs/ja/authentication#sign-in-without-an-api-key)**:組織ごとに 1 つの承認。最近承認したアカウントが保持します。

282* **[Claude apps gateway](/docs/ja/claude-apps-gateway) サインイン**:ゲートウェイごとに 1 つの承認。

283 

284 同じゲートウェイからサインアウトして再度サインインした場合、承認を必要とする設定が変わらない限り、Claude Code はダイアログを再度表示しません。これらの設定が変わる場合、別のゲートウェイにサインインする場合、および同じゲートウェイの新しい証明書を受け入れる場合、Claude Code はそれを再度表示します。

285 

286 Claude Code は、平文 HTTP を介して到達されるループバック開発ゲートウェイの承認を保存しないため、ダイアログは各サインイン後に再度表示されます。

287* **API キーまたは `CLAUDE_CODE_OAUTH_TOKEN` などの他の認証情報**:配信された設定の承認。その構成ディレクトリ内の設定のキャッシュされたコピーと一緒に保持されます。Claude Code は、承認を必要とする設定が変わる場合、および `/logout` または `claude auth logout` を実行する場合にダイアログを再度表示します。どちらもキャッシュされたコピーを削除します。

288 

289`sandbox.credentials` または `sandbox.network.tlsTerminate` の承認は、同じ配信設定内の [`sandbox.network.allowedDomains`](/docs/ja/settings-reference#sandbox-network-alloweddomains) エントリもカバーします。両方の設定がそのホワイトリストに作用するためです。管理者がそれらのエントリのいずれかを追加または削除する場合、ダイアログが再度表示されます。`sandbox.network.allowedDomains` は独自に承認を必要としませんが。

290 

291保存された claude.ai ログインの場合:

292 

293* サインアウトして再度サインインするか、別の組織に切り替えて後で戻る場合、これらの設定が変わらない限り、Claude Code はダイアログを再度表示しません。ただし、その間に別のアカウントがその構成ディレクトリ内のその組織のためにそれらを承認した場合は除きます。

294* 別のアカウントで同じ組織にサインインする場合、設定が変わらない場合でも Claude Code はダイアログを再度表示します。そのアカウントの承認は前のものを置き換えるため、切り替え直すと Claude Code はもう一度表示します。

295 

296Claude Code は常にダイアログを表示できるわけではありません。以下の各ケースは、表示できない場合に適用される設定と、次にダイアログが表示される場合を説明しています。

297 

298* **ダイアログを表示できない対話型セッション**:Claude Code は配信された設定を適用せず、最後に承認された設定を保持します。ダイアログは、それを表示できる次のセッションに表示されます。Claude Code v2.1.211 以降が必要です。

299* **`claude install` または `claude update`**:Claude Code はどちらのコマンド中もダイアログを表示しません。コマンドは最後に承認された設定で実行され、ダイアログは次の対話型セッションに表示されます。Claude Code が起動時に設定フェッチを待つ場合([`forceRemoteSettingsRefresh`](#enforce-fail-closed-startup) が設定されている場合、または [Claude apps gateway](/docs/ja/claude-apps-gateway) デプロイメント上など)、代わりにコマンド中にダイアログを表示し、パイプからのインストール実行は失敗します。[インストール中の「Raw mode is not supported」](/docs/ja/troubleshoot-install#raw-mode-is-not-supported-during-install)を参照してください。v2.1.246 より前は、Claude Code はこれらのコマンド中もダイアログを表示しようとしました。

300* **エラーがダイアログを閉じる前に答える**:Claude Code は配信された設定を適用せず、最後に承認された設定を保持します。それを表示できる次のセッションでダイアログを再度表示します。

301* **`claude -p` または Agent SDK セッションなどの非対話型実行**:Claude Code はダイアログを表示できないため、配信された設定が承認を必要とする場合、その実行のためだけにそれらを適用します。[ローカルキャッシュ](#fetch-and-caching-behavior)に承認済みとして記録したり、書き込んだりしません。次の対話型セッションはダイアログを表示します。ユーザーが対話型セッションで承認するまで、各非対話型実行は起動時に設定を再度フェッチします。v2.1.207 より前は、非対話型実行は設定を承認済みとして保存したため、後続の対話型セッションはそれらのダイアログを表示しませんでした。

302 

303<h4 id="environment-variables-and-the-approval-dialog">

304 環境変数と承認ダイアログ

305</h4>

306 

307Claude Code は、承認ダイアログを表示せずに配信された一部の `env` 変数を適用します。以下を含みます。

308 

309* 機能とコマンドトグル

310* `ANTHROPIC_MODEL`、`DISABLE_PROMPT_CACHING`、`CLAUDE_CODE_EFFORT_LEVEL` などのモデル選択と動作設定

311* `DISABLE_AUTO_COMPACT` などのコンテキストウィンドウと圧縮設定

312* ターミナル UI とアクセシビリティオプション

313* 数値制限、予算、タイムアウト

314 

315他の配信変数は、有効になる前にユーザーの承認を必要とする場合があります。空でないプロキシ、ベース URL、または `OTEL_EXPORTER_OTLP_ENDPOINT` 値は常にそうです。配信変数が承認を必要とする場合、ダイアログはそれに名前を付けるため、ユーザーはポリシーが設定するよう求めているものを正確に見ます。v2.1.218 より前は、Claude Code は少ない変数を承認なしで適用したため、`DISABLE_AUTO_COMPACT` などの設定は空でない値でダイアログをトリガーしました。

316 

317Claude Code は、変数名ではなく配信値によって 4 つのプライバシートグルが承認を必要とするかどうかを決定します。`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`、`DISABLE_ERROR_REPORTING`、`DISABLE_TELEMETRY`、`DO_NOT_TRACK`。`1` または `true` などの真の値は、トラッキング、レポート、またはその他の非必須トラフィックをオフにするだけなので、Claude Code はユーザーに尋ねずにそれを適用します。他の空でない値の場合、Claude Code はダイアログを表示します。v2.1.218 より前は、`DO_NOT_TRACK` を除くすべてが空でない値で承認なしで適用され、`DO_NOT_TRACK` は空でない値でダイアログをトリガーしました。

318 

319Claude Code は、配信値によって [`API_FORCE_IDLE_TIMEOUT`](/docs/ja/env-vars) が承認を必要とするかどうかも決定します。真の値は[ボディアイドルタイムアウト](/docs/ja/network-config#streaming-idle-watchdogs)をオンにするだけなので、Claude Code はユーザーに尋ねずにそれを適用します。他の空でない値の場合、Claude Code はダイアログを表示します。v2.1.248 より前は、空でない値はダイアログをトリガーしました。

320 

321[`ANTHROPIC_CUSTOM_HEADERS`](/docs/ja/env-vars#variables) が承認を必要とするかどうかも配信値に依存します。`Accept-Language` などのリクエストにタグを付けるだけのヘッダーはダイアログなしで適用されます。認証情報、org または tenant セレクター、ルーティングまたはホストオーバーライド、または `Authorization`、`X-Api-Key`、`Host`、`anthropic-beta`、`X-Amzn-Bedrock-*` ヘッダーなどの API 動作ヘッダーに名前を付ける行は承認を必要とします。有効な HTTP ヘッダートークンではない名前の行、またはその値が HTTP ヘッダーが実行できない文字を含む行も同様です。チェックはヘッダー名内の単語と一致するため、`client` と `version` を含む `X-Client-Version` も承認を必要とします。v2.1.251 より前は、任意の `ANTHROPIC_CUSTOM_HEADERS` 値はそれなしで適用されました。

322 

323[`ENABLE_BETA_TRACING_DETAILED`](/docs/ja/env-vars#variables) または [`OTEL_LOG_RAW_API_BODIES`](/docs/ja/env-vars#variables) の `0` または `false` などの偽の値は、詳細なトレーシングまたは生 API ボディキャプチャをオフにするだけなので、ダイアログなしで適用されます。どちらかの変数の他の空でない値は承認を必要とします。

241 324 

242<h2 id="platform-availability">325<h2 id="platform-availability">

243 プラットフォームの可用性326 プラットフォームの可用性

244</h2>327</h2>

245 328 

246サーバー管理設定は `api.anthropic.com` への直接接続が必要であり、配信にはセッションが組織 OAuth ログインまたは直接設定された API キーで認証される必要があります。[`apiKeyHelper`](/docs/ja/settings#available-settings) スクリプトによって返されたキーは設定フェッチをトリガーしません。329サーバー管理設定は `api.anthropic.com` への直接接続が必要です。配信にはセッションが以下のいずれかの認証情報で認証される必要があります。

330 

331* Team または Enterprise OAuth ログイン

332* `CLAUDE_CODE_OAUTH_TOKEN` を通じて提供される OAuth トークン

333* 直接設定された API キー

334* Anthropic プロファイルの `user_oauth`(\[Anthropic プロファイル]\(/ja/authentication#anthropic-profiles-and-federation-credentials)、ただしプロファイルが Anthropic API 以外の `base_url` を設定していない場合)。Claude Code v2.1.257 以降が必要です。

335 

336[`apiKeyHelper`](/docs/ja/settings-reference#apikeyhelper) スクリプトによって返されたキーも [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) 認証情報も設定フェッチをトリガーしません。

247 337 

248サーバー管理設定は、サードパーティのモデルプロバイダーを使用する場合は利用できません。338Claude Desktop アプリの [Cowork](https://claude.com/docs/cowork/overview) セッションでは、ユーザーが Team または Enterprise アカウントでサインインしている場合でも、Claude Code は claude.ai 管理コンソールからサーバー管理設定をフェッチしません。[ポリシーが適用される場所と時期](/docs/ja/managed-settings#where-and-when-a-policy-applies) では、ユーザーのマシン上の Cowork セッションとリモート Cowork セッションにどのポリシーが適用されるかについて説明しています。

249 339 

250* Amazon Bedrock340シェルで `CLAUDE_CODE_USE_*` プロバイダー変数またはデフォルト以外の `ANTHROPIC_BASE_URL` をエクスポートする場合、Claude Code はセッションの設定フェッチをスキップします。[`claude doctor` と `/status` はスキップされたフェッチとその原因を報告します](#verify-settings-delivery)。

251* Google Cloud の Agent Platform

252* Microsoft Foundry

253* [Claude Platform on AWS](/docs/ja/claude-platform-on-aws)

254* `ANTHROPIC_BASE_URL` または [LLM ゲートウェイ](/docs/ja/llm-gateway)を通じたカスタム API エンドポイント

255 341 

256シェルで `CLAUDE_CODE_USE_*` プロバイダー変数または デフォルト以外の `ANTHROPIC_BASE_URL` をエクスポートする場合、Claude Code はセッションの設定フェッチをスキップします。エクスポートがフェッチを防ぐため、サーバー管理 `env` ブロックでエクスポートをクリアすることはできません。[エンドポイント管理設定](/docs/ja/settings#settings-files) `env` ブロックもフェッチを復元しません。Claude Code は管理 `env` ブロックを適用する前に適格性をチェックするため、オーバーライドはセッションのプロバイダー選択を変更しますが、フェッチはスキップされたままです。342エクスポートがフェッチを防ぐため、サーバー管理 `env` ブロックでエクスポートをクリアすることはできません。[エンドポイント管理設定](/docs/ja/managed-settings#delivery-mechanisms) `env` ブロックもフェッチを復元しません。Claude Code は管理 `env` ブロックを適用する前に適格性をチェックするため、エンドポイント管理値はセッションのプロバイダー選択を変更しますが、フェッチはスキップされたままです。

257 343 

258サーバー管理配信を復元するには、シェルからエクスポートを削除するか、ユーザー設定 `env` ブロックで変数を `""` に設定します。これは適格性チェックの前に適用されます。ユーザーがシェルを変更することに依存せずにポリシーを適用するには、代わりにエンドポイント管理チャネルを通じて設定を配信してください。344サーバー管理配信を復元するには、シェルからエクスポートを削除するか、ユーザー設定 `env` ブロックで変数を `""` に設定します。これは適格性チェックの前に適用されます。ユーザーがシェルを変更することに依存せずにポリシーを適用するには、代わりにエンドポイント管理チャネルを通じて設定を配信してください。

259 345 

260Amazon Bedrock、Google Cloud の Agent Platform、および Microsoft Foundry デプロイメントの場合、自己ホスト型の [Claude apps ゲートウェイ](/docs/ja/claude-apps-gateway)は同等のリモート管理設定配信を提供します。ゲートウェイにサインインしたクライアントは、`api.anthropic.com` の代わりにゲートウェイから管理設定をフェッチします。起動時の失敗セマンティクスは異なります。ゲートウェイに到達できないゲートウェイクライアントはキャッシュされた設定にフォールバックする代わりにエラーで終了しますが、時間ごとのバックグラウンド更新は両方のチャネルで fail-open です。346Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、および [Claude Platform on AWS](/docs/ja/claude-platform-on-aws) デプロイメントの場合、自己ホスト型の [Claude apps ゲートウェイ](/docs/ja/claude-apps-gateway) は同等のリモート管理設定配信を提供します。ゲートウェイにサインインしたクライアントは、`api.anthropic.com` の代わりにゲートウェイから管理設定をフェッチします。起動時の失敗セマンティクスは異なります。ゲートウェイに到達できないゲートウェイクライアントはキャッシュされた設定にフォールバックする代わりにエラーで終了しますが、時間ごとのバックグラウンド更新は両方のチャネルで fail-open です。

261 347 

262<h2 id="audit-logging">348<h2 id="audit-logging">

263 監査ログ349 監査ログ


274サーバー管理設定は一元的なポリシー適用を提供しますが、クライアント側の制御として機能し、セキュリティ境界ではありません。管理されていないデバイスでは、ユーザーは管理者または sudo アクセス権を持つ必要なく、これらをバイパスできます。360サーバー管理設定は一元的なポリシー適用を提供しますが、クライアント側の制御として機能し、セキュリティ境界ではありません。管理されていないデバイスでは、ユーザーは管理者または sudo アクセス権を持つ必要なく、これらをバイパスできます。

275 361 

276| シナリオ | 動作 |362| シナリオ | 動作 |

277| :--------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |363| :--------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

278| ユーザーがキャッシュされた設定ファイルを編集する | 改ざんされたファイルは起動時に適用されますが、次のサーバーフェッチで正しい設定が復元されます。v2.1.198 以降、`env` ブロック内のトランスポート、API ルーティング、および認証環境変数は、[サーバーがペイロードを確認するまで保留されます](#fetch-and-caching-behavior) |364| ユーザーがキャッシュされた設定ファイルを編集する | 改ざんされたファイルは起動時に適用されますが、[サーバーがペイロードを確認するまで Claude Code が保留する値](#fetch-and-caching-behavior)を除きます。次のサーバーフェッチで正しい設定が復元されます。ただし、[次回の起動時にのみ適用されるキー](#fetch-and-caching-behavior)(`model` や `env` ブロックに追加された変数など)は、再起動されるまで有効なままです |

279| ユーザーがキャッシュされた設定ファイルを削除する | 初回起動動作が発生します。設定は非同期でフェッチされ、短い未適用ウィンドウがあります |365| ユーザーがキャッシュされた設定ファイルを削除する | [初回起動動作](#fetch-and-caching-behavior)が発生します |

280| ユーザーが変更された Claude Code バイナリを実行する | 変更されたクライアントを実行できるユーザーは、クライアント側の制御をバイパスできます |366| ユーザーが変更された Claude Code バイナリを実行する | 変更されたクライアントを実行できるユーザーは、クライアント側の制御をバイパスできます |

281| ユーザーが古い Claude Code バージョンを実行する | サーバー管理設定より前のバージョンは、これらをフェッチまたは適用しません |367| ユーザーが古い Claude Code バージョンを実行する | サーバー管理設定より前のバージョンは、これらをフェッチまたは適用しません |

282| API が利用不可 | キャッシュされた設定が利用可能な場合は適用されます。そうでない場合、管理設定は次の成功したフェッチまで適用されません。v2.1.198 以降、キャッシュされた `env` ブロック内のトランスポート、API ルーティング、および認証環境変数は、[フェッチ失敗時に保留されます](#fetch-and-caching-behavior)。キャッシュの残りの部分は引き続き適用されます。`forceRemoteSettingsRefresh: true` の場合、CLI は続行するのではなく終了します。ただし、[`claude auth` サブコマンド](#enforce-fail-closed-startup)を除きます |368| API が利用不可 | キャッシュされた設定が利用可能な場合は適用されます。ただし、[フェッチが成功するまで Claude Code が保留する値](#fetch-and-caching-behavior)を除きます。キャッシュがない場合、Claude Code は次の成功したフェッチまでサーバー管理設定を適用しません。また、デバイス上の[エンドポイント管理設定](/docs/ja/managed-settings#delivery-mechanisms)は引き続き適用されます。`forceRemoteSettingsRefresh: true` の場合、CLI は続行するのではなく終了します。ただし、[`claude auth` サブコマンド](#enforce-fail-closed-startup)を除きます。[Claude apps gateway](#platform-availability)を通じてサインインしているクライアントは、その設定がない場合、起動時に終了します。同じ `claude auth` 除外があります |

283| ユーザーが別の組織で認証する | 管理対象組織外のアカウントには設定が配信されません |369| ユーザーが別の組織で認証する | 管理対象組織外のアカウントには設定が配信されません |

284| ユーザーが[サードパーティモデルプロバイダー](#platform-availability)を構成する | サーバー管理設定はバイパスされます。これには `CLAUDE_CODE_USE_BEDROCK`、`CLAUDE_CODE_USE_MANTLE`、`CLAUDE_CODE_USE_VERTEX`、`CLAUDE_CODE_USE_FOUNDRY`、`CLAUDE_CODE_USE_ANTHROPIC_AWS`、またはデフォルト以外の `ANTHROPIC_BASE_URL` の設定が含まれます |370| ユーザーが[サードパーティモデルプロバイダー](#platform-availability)を構成する | サーバー管理設定はバイパスされます。これには `CLAUDE_CODE_USE_BEDROCK`、`CLAUDE_CODE_USE_MANTLE`、`CLAUDE_CODE_USE_VERTEX`、`CLAUDE_CODE_USE_FOUNDRY`、`CLAUDE_CODE_USE_ANTHROPIC_AWS`、またはデフォルト以外の `ANTHROPIC_BASE_URL` の設定が含まれます |

285| ネットワークトラフィックが傍受またはリダイレクトされる | TLS 検証が無効化されたか、傍受されたトラフィックは、クライアントが受け取る設定を変更できます |371| ネットワークトラフィックが傍受またはリダイレクトされる | TLS 検証が無効化されたか、傍受されたトラフィックは、クライアントが受け取る設定を変更できます |

286 372 

287ランタイム構成の変更を検出するには、[`ConfigChange` フック](/docs/ja/hooks#configchange)を使用して、変更をログに記録するか、変更が有効になる前に不正な変更をブロックしてください。373ローカル設定ファイル(`managed-settings.json` を含む)への編集をログに記録するには、[`ConfigChange` フック](/docs/ja/hooks#configchange)を使用してください。Claude Code は、サーバー管理設定が到着または更新されるとき、または MDM プロファイルまたはレジストリポリシーが変更されるときにこれらを実行しません。また、フックは `policy_settings` の変更をブロックできません。

288 374 

289ユーザーがクライアントが提供する認証情報でアクセスできる組織を制限するには、Claude ヘルプセンターの[テナント制限を使用したネットワークレベルのアクセス制御の適用](https://support.claude.com/en/articles/13198485-enforce-network-level-access-control-with-tenant-restrictions)を参照してください。より強力な適用保証については、MDM ソリューションに登録されているデバイスで[エンドポイント管理設定](/docs/ja/settings#settings-files)を使用してください。375ユーザーがクライアントが提供する認証情報でアクセスできる組織を制限するには、Claude ヘルプセンターの[テナント制限を使用したネットワークレベルのアクセス制御の適用](https://support.claude.com/en/articles/13198485-enforce-network-level-access-control-with-tenant-restrictions)を参照してください。より強力な適用保証については、MDM ソリューションに登録されているデバイスで[エンドポイント管理設定](/docs/ja/managed-settings#delivery-mechanisms)を使用してください。

290 376 

291<h2 id="see-also">377<h2 id="see-also">

292 関連項目378 関連項目


294 380 

295Claude Code 構成を管理するための関連ページ:381Claude Code 構成を管理するための関連ページ:

296 382 

297* [Settings](/docs/ja/settings):すべての利用可能な設定を含む完全な構成リファレンス383* [すべての設定](/docs/ja/settings-reference):すべての設定キー

298* [Endpoint-managed settings](/docs/ja/settings#settings-files):IT によってデバイスに配置される管理設定384* [Endpoint-managed settings](/docs/ja/managed-settings#delivery-mechanisms):IT によってデバイスに配置される管理設定

299* [Authentication](/docs/ja/authentication):Claude Code へのユーザーアクセスのセットアップ385* [Authentication](/docs/ja/authentication):Claude Code へのユーザーアクセスのセットアップ

300* [Security](/docs/ja/security):セキュリティ保護とベストプラクティス386* [Security](/docs/ja/security):セキュリティ保護とベストプラクティス

sessions.md +3 −3

Details

37 37 

38再開されたセッションは、会話とそれに保存された状態を復元します。38再開されたセッションは、会話とそれに保存された状態を復元します。

39 39 

40* 会話履歴:ツール呼び出しと結果を含む完全な履歴。40* 会話履歴:ツール呼び出しと結果を含む完全な履歴。前のプロセスが終了したときに実行中だったツール(例えばクラッシュ)は、再開時に完了または再実行されません。Claude はその出力なしで続行します。

41* モデル:セッションは使用していたモデルで続行されます。モデルが廃止されたか `availableModels` で許可されていない場合、`--model` フラグまたは `ANTHROPIC_MODEL` ファミリー環境変数が起動時に 1 つを選択する場合、または [Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry](/docs/ja/third-party-integrations)などのプロバイダー固有のデプロイ ID を使用するプロバイダーの場合は復元されません。[モデル設定](/docs/ja/model-config#setting-your-model)の解決順序を参照してください。41* モデル:セッションは使用していたモデルで続行されます。モデルが廃止されたか `availableModels` で許可されていない場合、`--model` フラグまたは `ANTHROPIC_MODEL` ファミリー環境変数が起動時に 1 つを選択する場合、または [Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry](/docs/ja/third-party-integrations)などのプロバイダー固有のデプロイ ID を使用するプロバイダーの場合は復元されません。[モデル設定](/docs/ja/model-config#setting-your-model)の解決順序を参照してください。

42* エージェント:[`--agent`](/docs/ja/sub-agents#invoke-subagents-explicitly)または `agent` 設定で開始されたセッションはそのエージェントとして続行され、システムプロンプト、ツール制限、およびモデルを保持します。再開時に `--agent` を渡して別のエージェントを選択します。Claude Code は 2 つの場所でエージェントを検索します。セッションの元のディレクトリ([そのワークスペースを信頼している](/docs/ja/permissions#project-allow-rules-and-workspace-trust)場合)、次に再開するディレクトリ。プロジェクトスコープのエージェントは別のディレクトリから再開する場合でも読み込まれます。Claude Code がどちらの場所でもエージェントを見つけられない場合、セッションはデフォルトのツールとシステムプロンプトで再開され、[エージェントに名前を付けた警告](/docs/ja/errors#session-agent-no-longer-available)が表示されます。42* エージェント:[`--agent`](/docs/ja/sub-agents#invoke-subagents-explicitly)または `agent` 設定で開始されたセッションはそのエージェントとして続行され、ツール制限とモデルを保持します。再開時に `--agent` を渡して別のエージェントを選択します。どちらの場合のシステムプロンプトについては、[再開された会話のシステムプロンプトフラグ](/docs/ja/cli-reference#system-prompt-flags-in-resumed-conversations)を参照してください。Claude Code は 2 つの場所でエージェントを検索します。セッションの元のディレクトリ([そのワークスペースを信頼している](/docs/ja/permissions#project-allow-rules-and-workspace-trust)場合)、次に再開するディレクトリ。プロジェクトスコープのエージェントは別のディレクトリから再開する場合でも読み込まれます。Claude Code がどちらの場所でもエージェントを見つけられない場合、セッションはデフォルトのツールで再開され、[エージェントに名前を付けた警告](/docs/ja/errors#session-agent-no-longer-available)が表示されます。

43* 権限モード:`claude --continue`、`claude --resume <session-id>`、または `claude --resume <name>`(名前が 1 つのセッションと一致する場合)で `-p` なしでターミナルから再開する場合、Claude Code はセッションが存在していた権限モードを復元します。ただし、[再開時の権限モード](#permission-mode-on-resume)の場合は除きます。これはセッションピッカー、`/resume`、および `claude -p` で再開する場合もカバーします。`--permission-mode` または `--dangerously-skip-permissions` を渡して復元されたモードをオーバーライドします。43* 権限モード:`claude --continue`、`claude --resume <session-id>`、または `claude --resume <name>`(名前が 1 つのセッションと一致する場合)で `-p` なしでターミナルから再開する場合、Claude Code はセッションが存在していた権限モードを復元します。ただし、[再開時の権限モード](#permission-mode-on-resume)の場合は除きます。これはセッションピッカー、`/resume`、および `claude -p` で再開する場合もカバーします。`--permission-mode` または `--dangerously-skip-permissions` を渡して復元されたモードをオーバーライドします。

44* アクティブなゴール:セッションが終了したときにまだアクティブだった [ゴール](/docs/ja/goal#resume-with-an-active-goal)は引き継がれます。ターン数、タイマー、およびトークン支出ベースラインはリセットされます。44* アクティブなゴール:セッションが終了したときにまだアクティブだった [ゴール](/docs/ja/goal#resume-with-an-active-goal)は引き継がれます。ターン数、タイマー、およびトークン支出ベースラインはリセットされます。

45* スケジュール済みタスク:[有効期限が切れていない](/docs/ja/scheduled-tasks#limitations)タスクが復元されます。バックグラウンド Bash およびモニタータスクは復元されません。45* スケジュール済みタスク:[有効期限が切れていない](/docs/ja/scheduled-tasks#limitations)タスクが復元されます。バックグラウンド Bash およびモニタータスクは復元されません。

46 46 

47元の起動からのすべての設定フラグが復元されるわけではありません。セッションが `--mcp-config`、`--settings`、`--plugin-dir`、`--fallback-model`、または `--add-dir` で追加されたディレクトリに依存していた場合、再開時に再度渡します。セッション中に `/add-dir` で追加されたディレクトリは復元されませんが、セッションピッカーはセッションを見つけるためにそれらを使用します。`settings.json` や `settings.local.json` などの標準設定ファイルは起動時に再度読み込まれるため、それらに存在する設定を再度渡す必要はありません。47元の起動からのすべての設定フラグが復元されるわけではありません。セッションが `--mcp-config`、`--settings`、`--plugin-dir`、`--fallback-model`、または `--add-dir` で追加されたディレクトリに依存していた場合、再開時に再度渡します。セッション中に `/add-dir` で追加されたディレクトリは復元されませんが、セッションピッカーはセッションを見つけるためにそれらを使用します。`settings.json` や `settings.local.json` などの標準設定ファイルは起動時に再度読み込まれるため、それらに存在する設定を再度渡す必要はありません。`--system-prompt` および `--append-system-prompt` については、[再開された会話のシステムプロンプトフラグ](/docs/ja/cli-reference#system-prompt-flags-in-resumed-conversations)を参照してください。

48 48 

49<h4 id="permission-mode-on-resume">49<h4 id="permission-mode-on-resume">

50 再開時の権限モード50 再開時の権限モード

settings.md +1 −1

Details

794| [`syncClaudeAiSkills`](/docs/ja/settings-reference#syncclaudeaiskills) | 任意の管理ソース、`--settings`、`~/.claude/settings.json`、または `.claude/settings.local.json` からの `false` | 勝利した管理ソースが `true` を設定する場合でも優先されます。`.claude/settings.json` の `false` は無視されます |794| [`syncClaudeAiSkills`](/docs/ja/settings-reference#syncclaudeaiskills) | 任意の管理ソース、`--settings`、`~/.claude/settings.json`、または `.claude/settings.local.json` からの `false` | 勝利した管理ソースが `true` を設定する場合でも優先されます。`.claude/settings.json` の `false` は無視されます |

795| [`maxEffortLevel`](/docs/ja/settings-reference#maxeffortlevel) | `--settings` を含む任意のスコープからの、より低い上限 | Claude Code が適用する管理設定がより高い上限を設定している場合でも優先されます。最も低い上限が適用されます。Claude Code v2.1.267 以降が必要です |795| [`maxEffortLevel`](/docs/ja/settings-reference#maxeffortlevel) | `--settings` を含む任意のスコープからの、より低い上限 | Claude Code が適用する管理設定がより高い上限を設定している場合でも優先されます。最も低い上限が適用されます。Claude Code v2.1.267 以降が必要です |

796 796 

797Claude Code を実行し、[`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/ja/env-vars) を設定するアプリも例外です。Claude Code はそのアプリのモデル構成を、すべての管理ソースからの `model`、`fallbackModel`、および `modelOverrides` キーより優先し、管理 `env` ブロック内のモデル選択変数(`ANTHROPIC_MODEL` および `ANTHROPIC_DEFAULT_*_MODEL` ファミリーなど)より優先します。Claude Code は、アプリが独自のものを提供しない限り、管理 [`availableModels`](/docs/ja/settings-reference#availablemodels) 許可リストを有効に保ちます。797Claude Code を実行し、[`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/ja/env-vars) を設定するアプリも例外です。Claude Code はそのアプリのモデル構成を、すべての管理ソースからの `model`、`fallbackModel`、`modelPicker`、および `modelOverrides` キーより優先し、管理 `env` ブロック内のモデル選択変数(`ANTHROPIC_MODEL` および `ANTHROPIC_DEFAULT_*_MODEL` ファミリーなど)より優先します。Claude Code は、アプリが独自のものを提供しない限り、管理 [`availableModels`](/docs/ja/settings-reference#availablemodels) 許可リストを有効に保ちます。

798 798 

799<h2 id="settings-in-cloud-sessions">799<h2 id="settings-in-cloud-sessions">

800 クラウドセッションの設定800 クラウドセッションの設定

settings-example.md +391 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# 設定ファイルの例

6 

7> 開発者、チーム、組織向けの現実的な settings.json ファイル:1 つをコピーして、必要なキーを保持し、値を変更してください。

8 

9このページには 3 つの例 `settings.json` ファイルがあります。設定を保存する場所ごとに 1 つずつです:

10 

11* 開発者の `~/.claude/settings.json`

12* チームの `.claude/settings.json`(リポジトリにコミットされたもの)

13* 組織の `managed-settings.json`

14 

15それぞれが読者にとって妥当なファイルなので、形状を確認して必要な部分をコピーできます。どれも推奨されるベースラインではありません。すべての値は [設定リファレンス](/docs/ja/settings-reference) のキーのエントリから取得されており、そこには型、デフォルト値、および設定できる場所が記載されています。

16 

17各例には 2 つのタブがあります。**コピー可能な設定ファイル** は保存するファイルです。**各キーの機能** は同じファイルですが、各キーの上にコメントがあります。Claude Code は設定ファイルのコメントを受け入れないため、最初のタブからコピーしてください。

18 

19<h2 id="your-own-settings">

20 独自の設定

21</h2>

22 

231 人の開発者の個人設定です。モデルと努力レベルを選択し、ターミナルを調整し、読み取り専用コマンドと 1 つのファイル読み取りを事前承認します。リストされていないすべてのものはデフォルトを保持します。このようなファイルは `~/.claude/settings.json` に保存され、開くすべてのプロジェクトに適用されます。

24 

25<Tabs>

26 <Tab title="コピー可能な設定ファイル">

27 これを `~/.claude/settings.json` として保存してください。コメントのない有効な JSON なので、そのまま貼り付けて、不要なキーを削除できます。

28 

29 ```json ~/.claude/settings.json theme={null}

30 {

31 "model": "claude-sonnet-5",

32 "effortLevel": "xhigh",

33 "editorMode": "vim",

34 "theme": "light-daltonized",

35 "statusLine": {

36 "type": "command",

37 "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",

38 "padding": 2

39 },

40 "spinnerTipsEnabled": false,

41 "preferredNotifChannel": "terminal_bell",

42 "permissions": {

43 "allow": [

44 "Bash(git diff *)",

45 "Read(~/.zshrc)"

46 ]

47 },

48 "autoUpdatesChannel": "stable",

49 "cleanupPeriodDays": 20

50 }

51 ```

52 </Tab>

53 

54 <Tab title="各キーの機能">

55 同じファイルですが、各キーの上にコメントがあります。ここで読んでください。Claude Code は設定ファイルのコメントを受け入れないため、別のタブからコピーしてください。

56 

57 ```jsonc ~/.claude/settings.json theme={null}

58 {

59 // すべてのセッションを Sonnet 5 で開始

60 "model": "claude-sonnet-5",

61 // 保存されたレベルのないモデルでデフォルトの高レベルより深く推論します。/effort はモデルごとにレベルを保存し、--effort は単一セッションに設定します

62 "effortLevel": "xhigh",

63 // プロンプトの Vim キーバインディング

64 "editorMode": "vim",

65 // 色覚異常対応のライトテーマ

66 "theme": "light-daltonized",

67 // プロンプトの下のステータスライン:モデル名とコンテキスト使用量

68 "statusLine": {

69 "type": "command",

70 "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",

71 "padding": 2

72 },

73 // スピナーの下で回転するヒントを非表示にする

74 "spinnerTipsEnabled": false,

75 // 完了したタスクや待機中の権限プロンプトなどの通知のためにターミナルベルを鳴らす

76 "preferredNotifChannel": "terminal_bell",

77 // Claude Code が git diff を実行し、.zshrc を読み取ることを許可する(確認なし)

78 "permissions": {

79 "allow": [

80 "Bash(git diff *)",

81 "Read(~/.zshrc)"

82 ]

83 },

84 // 安定チャネルから更新を取得

85 "autoUpdatesChannel": "stable",

86 // 20 日以上前のセッショントランスクリプトおよび他のローカルセッションデータを削除

87 "cleanupPeriodDays": 20

88 }

89 ```

90 </Tab>

91</Tabs>

92 

93<h2 id="a-teams-shared-settings">

94 チームの共有設定

95</h2>

96 

971 つのチームの共有設定は、リポジトリにコミットされるため、それをクローンした全員が同じ権限、hooks、テレメトリ、プラグインマーケットプレイスを取得します。リポジトリのトップレベルに `.claude/settings.json` のようなファイルを保存してください。コミットする前に知っておくべきことは以下の通りです。

98 

99* **クラウドセッションもこれを読みます。** Claude Code ウェブ上の[クラウドセッション](/docs/ja/settings#settings-in-cloud-sessions)はリポジトリのクローンから開始されるため、コミットされたファイルはそこにも適用されます。

100* **許可ルールは信頼を待ちます。** 許可ルールと `extraKnownMarketplaces` エントリは、各ユーザーが[このフォルダ自体を信頼](/docs/ja/permissions#project-allow-rules-and-workspace-trust)した後に有効になります。親フォルダだけではなく、このフォルダ自体を信頼する必要があります。拒否ルールと確認ルールは、信頼されているセッションでもそうでないセッションでも、すべてのセッションで適用されます。

101* **hook はリポジトリ内のスクリプトです。** このファイルの hook は `.claude/hooks/block-rm.sh` を実行します。[hook がどのように解決されるか](/docs/ja/hooks#how-a-hook-resolves)では、これを書く方法について説明しています。

102* **ルールはコマンドとパスを記述されたとおりにマッチします。** `Bash(git push *)` は [`git -C . push`](/docs/ja/permissions#bash-rule-limits) にはマッチしません。`Read(./.env)` 単独では、ファイルツールと `cat .env` のようにファイルを名前で指定するコマンドを停止しますが、[`grep -r` をディレクトリ上で実行](/docs/ja/permissions#read-and-edit)することは停止しません。このファイルの `sandbox` ブロックはそのギャップを埋めます。sandbox は[あなたの `Read` 拒否パス](/docs/ja/settings-reference#sandbox-filesystem-denyread)をすべてのサンドボックス化されたコマンドが読み取れないものに追加するためです。

103 

104<Tabs>

105 <Tab title="コピー可能な設定ファイル">

106 これをリポジトリのトップレベルに `.claude/settings.json` として保存してコミットしてください。コメントのない有効な JSON なので、そのまま貼り付けて、不要なキーを削除できます。

107 

108 ```json .claude/settings.json theme={null}

109 {

110 "permissions": {

111 "allow": [

112 "Bash(npm run *)"

113 ],

114 "ask": [

115 "Bash(git push *)"

116 ],

117 "deny": [

118 "Read(./.env)",

119 "Read(./.env.*)",

120 "Read(./secrets/**)"

121 ]

122 },

123 "env": {

124 "CLAUDE_CODE_ENABLE_TELEMETRY": "1",

125 "OTEL_METRICS_EXPORTER": "otlp",

126 "OTEL_EXPORTER_OTLP_PROTOCOL": "grpc",

127 "OTEL_EXPORTER_OTLP_ENDPOINT": "http://collector.example.com:4317"

128 },

129 "hooks": {

130 "PreToolUse": [

131 {

132 "matcher": "Bash",

133 "hooks": [

134 {

135 "type": "command",

136 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"

137 }

138 ]

139 }

140 ]

141 },

142 "extraKnownMarketplaces": {

143 "acme-tools": {

144 "source": {

145 "source": "github",

146 "repo": "acme-corp/claude-plugins"

147 }

148 }

149 },

150 "enabledPlugins": {

151 "code-formatter@acme-tools": true

152 },

153 "sandbox": {

154 "enabled": true,

155 "filesystem": {

156 "allowWrite": [

157 "/tmp/build"

158 ]

159 },

160 "network": {

161 "allowedDomains": [

162 "registry.npmjs.org",

163 "*.example.com"

164 ]

165 }

166 },

167 "plansDirectory": "./plans"

168 }

169 ```

170 </Tab>

171 

172 <Tab title="各キーの機能">

173 各キーの上にコメントが付いた同じファイルです。ここで読んでください。Claude Code は設定ファイルのコメントを受け入れないため、他のタブからコピーしてください。

174 

175 ```jsonc .claude/settings.json theme={null}

176 {

177 "permissions": {

178 // npm スクリプトを確認なしで実行

179 "allow": [

180 "Bash(npm run *)"

181 ],

182 // git push コマンドの前に確認

183 "ask": [

184 "Bash(git push *)"

185 ],

186 // ファイルツールとファイル読み取りコマンドによる env ファイルと secrets フォルダの読み取りを拒否

187 "deny": [

188 "Read(./.env)",

189 "Read(./.env.*)",

190 "Read(./secrets/**)"

191 ]

192 },

193 // OpenTelemetry メトリクスをチームのコレクターに gRPC 経由で送信。エンドポイントをコレクターの URL に置き換えてください

194 "env": {

195 "CLAUDE_CODE_ENABLE_TELEMETRY": "1",

196 "OTEL_METRICS_EXPORTER": "otlp",

197 "OTEL_EXPORTER_OTLP_PROTOCOL": "grpc",

198 "OTEL_EXPORTER_OTLP_ENDPOINT": "http://collector.example.com:4317"

199 },

200 // すべての Bash コマンドの前に、リポジトリ内のスクリプトを実行してそれをブロックできます

201 "hooks": {

202 "PreToolUse": [

203 {

204 "matcher": "Bash",

205 "hooks": [

206 {

207 "type": "command",

208 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"

209 }

210 ]

211 }

212 ]

213 },

214 // すべてのクローンでチームのプラグインマーケットプレイスを登録

215 "extraKnownMarketplaces": {

216 "acme-tools": {

217 "source": {

218 "source": "github",

219 "repo": "acme-corp/claude-plugins"

220 }

221 }

222 },

223 // そのマーケットプレイスから 1 つのプラグインを有効化。GitHub リポジトリなどの外部ソースからのプラグインは、各ユーザーが 1 回インストールする必要があります

224 "enabledPlugins": {

225 "code-formatter@acme-tools": true

226 },

227 // サンドボックスコマンド:書き込み可能なビルドディレクトリ。npm と example.com は事前に許可、他のホストはまだプロンプト表示

228 "sandbox": {

229 "enabled": true,

230 "filesystem": {

231 "allowWrite": [

232 "/tmp/build"

233 ]

234 },

235 "network": {

236 "allowedDomains": [

237 "registry.npmjs.org",

238 "*.example.com"

239 ]

240 }

241 },

242 // プランファイルをリポジトリ内に保持

243 "plansDirectory": "./plans"

244 }

245 ```

246 </Tab>

247</Tabs>

248 

249<h2 id="an-organizations-managed-settings">

250 組織の管理設定

251</h2>

252 

253`managed-settings.json` ファイルは、管理キーの形状を示し、各キーに対して 1 つの妥当な値を含みます。これは推奨ポリシーではありません。自分の要件に合致するキーを選択し、独自の値を設定してください。この例では、以下のキーを設定しています。

254 

255* `forceLoginMethod` と `forceLoginOrgUUID` はログイン方法と組織を固定します

256* `availableModels` と `enforceAvailableModels` はセッションが使用できるモデルを制限します

257* `permissions.deny` は 2 つのファイル読み取りと `curl` コマンドをブロックし([Claude が記述する方法](/docs/ja/permissions#bash-rule-limits))、`disableBypassPermissionsMode` は権限モードのバイパスを削除します

258* [`allowManagedPermissionRulesOnly`](/docs/ja/settings-reference#allowmanagedpermissionrulesonly) と [`allowManagedMcpServersOnly`](/docs/ja/settings-reference#allowmanagedmcpserversonly) は、管理権限と MCP 許可リストのみを適用対象にします

259* `allowedMcpServers` は MCP サーバーを URL で固定します

260* `strictKnownMarketplaces` は 1 つのプラグインマーケットプレイスを許可します

261* `sandbox` はコマンドを固定ネットワーク許可リストでサンドボックス化し、サンドボックス外での再試行を許可しません

262* `requiredMinimumVersion` は最小 Claude Code バージョンを設定します

263* `cleanupPeriodDays` はセッショントランスクリプトおよび他のローカルデータの保持期間を 7 日に短縮します

264* `companyAnnouncements` は起動時にメッセージを表示します

265 

266管理者は、このようなファイルを `managed-settings.json` として、または MDM もしくは [サーバー管理設定](/docs/ja/server-managed-settings) を通じて同じ JSON をデプロイします。デプロイされた 1 つのファイルは、それが到達するすべてのマシンまたはアカウントに適用されます。グループに異なる値を付与するには、そのグループに異なるファイルまたはプロファイルをデプロイしてください。[サーバー管理設定はまだグループごとのポリシーをサポートしていない](/docs/ja/server-managed-settings#current-limitations) ためです。

267 

268<Tabs>

269 <Tab title="コピー可能な設定ファイル">

270 これを `managed-settings.json` としてデプロイするか、MDM または claude.ai コンソールを通じて同じ JSON をデプロイしてください。コメントのない有効な JSON です。例の組織 UUID、サーバー URL、およびマーケットプレイスを自分のものに置き換え、不要なキーを削除してください。

271 

272 ```json managed-settings.json theme={null}

273 {

274 "forceLoginMethod": "claudeai",

275 "forceLoginOrgUUID": [

276 "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

277 ],

278 "availableModels": [

279 "opus",

280 "sonnet"

281 ],

282 "enforceAvailableModels": true,

283 "permissions": {

284 "deny": [

285 "Bash(curl *)",

286 "Read(./.env)",

287 "Read(./secrets/**)"

288 ],

289 "disableBypassPermissionsMode": "disable"

290 },

291 "allowManagedPermissionRulesOnly": true,

292 "allowedMcpServers": [

293 {

294 "serverUrl": "https://api.githubcopilot.com/*"

295 }

296 ],

297 "allowManagedMcpServersOnly": true,

298 "strictKnownMarketplaces": [

299 {

300 "source": "github",

301 "repo": "acme-corp/approved-plugins"

302 }

303 ],

304 "sandbox": {

305 "enabled": true,

306 "failIfUnavailable": true,

307 "allowUnsandboxedCommands": false,

308 "network": {

309 "allowedDomains": [

310 "registry.npmjs.org",

311 "github.com"

312 ],

313 "allowManagedDomainsOnly": true

314 }

315 },

316 "requiredMinimumVersion": "2.1.150",

317 "cleanupPeriodDays": 7,

318 "companyAnnouncements": [

319 "Welcome to Acme Corp! Review our code guidelines at docs.example.com"

320 ]

321 }

322 ```

323 </Tab>

324 

325 <Tab title="各キーの機能">

326 各キーの上にコメントが付いた同じファイルです。ここで読んでください。Claude Code は設定ファイルのコメントを受け入れないため、他のタブからコピーしてください。

327 

328 ```jsonc managed-settings.json theme={null}

329 {

330 // claude.ai ログインのみ、かつこの組織内のみ

331 "forceLoginMethod": "claudeai",

332 "forceLoginOrgUUID": [

333 "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

334 ],

335 // Opus と Sonnet モデルのみ。enforceAvailableModels を使用すると、デフォルトオプションもリストに従います

336 "availableModels": [

337 "opus",

338 "sonnet"

339 ],

340 "enforceAvailableModels": true,

341 "permissions": {

342 // すべてのマシンで curl、プロジェクトの .env ファイル、およびそのシークレットフォルダをブロック

343 "deny": [

344 "Bash(curl *)",

345 "Read(./.env)",

346 "Read(./secrets/**)"

347 ],

348 // すべてのセッションから権限モードのバイパスを削除

349 "disableBypassPermissionsMode": "disable"

350 },

351 // ユーザー、プロジェクト、およびローカル設定からの権限ルールを無視

352 "allowManagedPermissionRulesOnly": true,

353 // GitHub MCP サーバーのみ。ユーザーは任意のサーバーに「github」という名前を付けることができるため、名前ではなく URL で照合されます。リストに一致しないユーザーが追加したサーバーは読み込まれません。リストに URL エントリのみがある場合、すべての stdio サーバーを含みます。以下の allowManagedMcpServersOnly キーは、この管理リストのみが適用される許可リストにします

354 "allowedMcpServers": [

355 {

356 "serverUrl": "https://api.githubcopilot.com/*"

357 }

358 ],

359 "allowManagedMcpServersOnly": true,

360 // プラグインはこのマーケットプレイスからのみ取得可能

361 "strictKnownMarketplaces": [

362 {

363 "source": "github",

364 "repo": "acme-corp/approved-plugins"

365 }

366 ],

367 // Claude が実行するすべてのコマンドをサンドボックス化し、サンドボックスをセットアップできない場合は起動を拒否し、ブロックされたコマンドがサンドボックス外で再試行されることを許可しません。ネットワークは npm と GitHub に制限され、ユーザーはドメインを追加できません

368 "sandbox": {

369 "enabled": true,

370 "failIfUnavailable": true,

371 "allowUnsandboxedCommands": false,

372 "network": {

373 "allowedDomains": [

374 "registry.npmjs.org",

375 "github.com"

376 ],

377 "allowManagedDomainsOnly": true

378 }

379 },

380 // 2.1.150 より古いバージョンでの起動を拒否

381 "requiredMinimumVersion": "2.1.150",

382 // 7 日後にセッショントランスクリプトおよび他のローカルセッションデータを削除

383 "cleanupPeriodDays": 7,

384 // すべてのユーザーが起動時に表示するメッセージ

385 "companyAnnouncements": [

386 "Welcome to Acme Corp! Review our code guidelines at docs.example.com"

387 ]

388 }

389 ```

390 </Tab>

391</Tabs>

setup.md +15 −13

Details

41 ターミナルは初めてですか?[ターミナルガイド](/docs/ja/terminal-guide)で段階的な手順を参照してください。41 ターミナルは初めてですか?[ターミナルガイド](/docs/ja/terminal-guide)で段階的な手順を参照してください。

42</Tip>42</Tip>

43 43 

44To install Claude Code, use one of the following methods:44Claude Code をインストールするには、以下のいずれかの方法を使用してください。

45 45 

46<Tabs>46<Tabs>

47 <Tab title="Native Install (Recommended)">47 <Tab title="ネイティブインストール(推奨)">

48 **macOS, Linux, WSL:**48 **macOS、Linux、WSL:**

49 49 

50 ```bash theme={null}50 ```bash theme={null}

51 curl -fsSL https://claude.ai/install.sh | bash51 curl -fsSL https://claude.ai/install.sh | bash

52 ```52 ```

53 53 

54 **Windows PowerShell:**54 **Windows PowerShell:**

55 55 

56 ```powershell theme={null}56 ```powershell theme={null}

57 irm https://claude.ai/install.ps1 | iex57 irm https://claude.ai/install.ps1 | iex

58 ```58 ```

59 59 

60 **Windows CMD:**60 **Windows CMD:**

61 61 

62 ```batch theme={null}62 ```batch theme={null}

63 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd63 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

64 ```64 ```

65 65 

66 If you see `The token '&&' is not a valid statement separator`, you're in PowerShell, not CMD. If you see `'irm' is not recognized as an internal or external command`, you're in CMD, not PowerShell. Your prompt shows `PS C:\` when you're in PowerShell and `C:\` without the `PS` when you're in CMD.66 `The token '&&' is not a valid statement separator` というエラーが表示される場合は、CMD ではなく PowerShell を使用しています。`'irm' is not recognized as an internal or external command` というエラーが表示される場合は、PowerShell ではなく CMD を使用しています。PowerShell を使用している場合、プロンプトに `PS C:\` と表示され、CMD を使用している場合は `PS` なしで `C:\` と表示されます。

67 67 

68 If the install command fails with `syntax error near unexpected token '<'`, a `403`, or another curl error, see [Troubleshoot installation](/docs/en/troubleshoot-install#find-your-error) to match the error to a fix and for alternative install methods.68 インストールコマンドが `syntax error near unexpected token '<'`、`403`、またはその他の curl エラーで失敗する場合は、[インストールのトラブルシューティング](/docs/ja/troubleshoot-install#find-your-error)を参照して、エラーを修正方法に照合し、代替インストール方法を確認してください。

69 69 

70 [Git for Windows](https://git-scm.com/downloads/win) is recommended on native Windows so Claude Code can use the Bash tool. If Git for Windows is not installed, Claude Code uses PowerShell as the shell tool instead. WSL setups do not need Git for Windows.70 [Git for Windows](https://git-scm.com/downloads/win) は、Claude Code が Bash ツールを使用できるようにネイティブ Windows で推奨されます。Git for Windows がインストールされていない場合、Claude Code はシェルツールとして PowerShell を代わりに使用します。WSL セットアップは Git for Windows を必要としません。

71 71 

72 <Info>72 <Info>

73 Native installations automatically update in the background to keep you on the latest version.73 ネイティブインストールは、最新バージョンに保つために自動的にバックグラウンドで更新されます。

74 </Info>74 </Info>

75 </Tab>75 </Tab>

76 76 


79 brew install --cask claude-code79 brew install --cask claude-code

80 ```80 ```

81 81 

82 Homebrew offers two casks. `claude-code` tracks the stable release channel, which is typically about a week behind and skips releases with major regressions. `claude-code@latest` tracks the latest channel and receives new versions as soon as they ship.82 Homebrew は 2 つの cask を提供しています。`claude-code` は安定リリースチャネルを追跡しており、通常は約 1 週間遅れており、大きな回帰を伴うリリースをスキップします。`claude-code@latest` は最新チャネルを追跡し、新しいバージョンが出荷されるとすぐに受け取ります。

83 83 

84 <Info>84 <Info>

85 Homebrew installations do not auto-update. Run `brew upgrade claude-code` or `brew upgrade claude-code@latest`, depending on which cask you installed, to get the latest features and security fixes.85 Homebrew インストールは自動更新されません。インストールした cask に応じて、`brew upgrade claude-code` または `brew upgrade claude-code@latest` を実行して、最新の機能とセキュリティ修正を取得してください。

86 </Info>86 </Info>

87 </Tab>87 </Tab>

88 88 


92 ```92 ```

93 93 

94 <Info>94 <Info>

95 WinGet installations do not auto-update. Run `winget upgrade Anthropic.ClaudeCode` periodically to get the latest features and security fixes.95 WinGet インストールは自動更新されません。最新の機能とセキュリティ修正を取得するために、定期的に `winget upgrade Anthropic.ClaudeCode` を実行してください。

96 </Info>96 </Info>

97 </Tab>97 </Tab>

98</Tabs>98</Tabs>

99 99 

100You can also install with [apt, dnf, or apk](/docs/en/setup#install-with-linux-package-managers) on Debian, Fedora, RHEL, and Alpine.100また、Debian、Fedora、RHEL、Alpine で [apt、dnf、または apk](/docs/ja/setup#install-with-linux-package-managers) を使用してインストールすることもできます。

101 101 

102インストールが完了したら、作業するプロジェクトでターミナルを開き、Claude Code を起動します。102インストールが完了したら、作業するプロジェクトでターミナルを開き、Claude Code を起動します。

103 103 


296}296}

297```297```

298 298 

299ネイティブまたは npm インストールで、`claude doctor` を実行して変更が有効になったことを確認し、`Auto-updates` 行が `enabled` ではなく `disabled (set by env: DISABLE_AUTOUPDATER)` を表示していることを確認します。

300 

299`DISABLE_AUTOUPDATER` はバックグラウンドチェックのみを停止します。`claude update` と `claude install` は引き続き機能します。手動更新を含むすべての更新パスをブロックするには、代わりに [`DISABLE_UPDATES`](/docs/ja/env-vars)を設定します。独自のチャネルを通じて Claude Code を配布し、ユーザーが提供するバージョンに留まる必要がある場合に使用します。301`DISABLE_AUTOUPDATER` はバックグラウンドチェックのみを停止します。`claude update` と `claude install` は引き続き機能します。手動更新を含むすべての更新パスをブロックするには、代わりに [`DISABLE_UPDATES`](/docs/ja/env-vars)を設定します。独自のチャネルを通じて Claude Code を配布し、ユーザーが提供するバージョンに留まる必要がある場合に使用します。

300 302 

301<h3 id="update-manually">303<h3 id="update-manually">

Details

226 メッセージとインジケーター全体で成功、失敗、警告状態を通知します。226 メッセージとインジケーター全体で成功、失敗、警告状態を通知します。

227 227 

228 | トークン | 制御対象 |228 | トークン | 制御対象 |

229 | :-------- | :-------------------------- |229 | :-------- | :----------------------------- |

230 | `success` | 成功メッセージと合格チェック |230 | `success` | 成功メッセージと合格チェック |

231 | `error` | エラーメッセージと失敗 |231 | `error` | エラーメッセージと失敗 |

232 | `warning` | 警告、注意メッセージ、および auto モードボーダー |232 | `warning` | 警告、注意メッセージ、および auto モードインジケーター |

233 | `merged` | マージされたプルリクエストステータス |233 | `merged` | マージされたプルリクエストステータス |

234 234 

235 <h4 id="input-box-and-mode-indicators">235 <h4 id="input-box-and-mode-indicators">


240 240 

241 | トークン | 制御対象 |241 | トークン | 制御対象 |

242 | :------------- | :-------------------------------------------------------------------------------------------------------------------------------- |242 | :------------- | :-------------------------------------------------------------------------------------------------------------------------------- |

243 | `promptBorder` | Manual モードの入力ボックスボーダー |243 | `promptBorder` | 入力ボックスボーダー |

244 | `planMode` | Plan モードアクセントとボーダー |244 | `planMode` | Plan モードアクセント、プランメッセージ、および Plan モードダイアログ |

245 | `autoAccept` | Accept-edits モードアクセントとボーダー |245 | `autoAccept` | Accept-edits モードアクセント |

246 | `bashBorder` | `!` シェルコマンドを入力するときの入力ボックスボーダー |246 | `bashBorder` | `!` シェルコマンドを入力するときの入力ボックスボーダー |

247 | `ide` | IDE 接続インジケーター |247 | `ide` | IDE 接続インジケーター |

248 | `fastMode` | Fast モードインジケーター |248 | `fastMode` | Fast モードインジケーター |

Details

227 ドキュメントとメモリに投資する227 ドキュメントとメモリに投資する

228</h3>228</h3>

229 229 

230Claude Code がコードベースを理解できるようにドキュメントに投資することを強くお勧めします。組織は複数のレベルで CLAUDE.md ファイルをデプロイできます。230Claude Code がコードベースを理解できるようにドキュメントに投資することを強くお勧めします。組織は複数のレベルで CLAUDE.md ファイルをデプロイできます。[CLAUDE.md ファイルをどこに配置できるか](/docs/ja/memory#choose-where-to-put-claude-md-files)と[組織全体の CLAUDE.md をデプロイする方法](/docs/ja/memory#deploy-organization-wide-claude-md)をご覧ください。

231 

232* **組織全体**: macOS の `/Library/Application Support/ClaudeCode/CLAUDE.md`、Linux と WSL の `/etc/claude-code/CLAUDE.md`、Windows の `C:\Program Files\ClaudeCode\CLAUDE.md` などのシステムディレクトリにデプロイして、会社全体の標準を設定します

233* **リポジトリレベル**: プロジェクトアーキテクチャ、ビルドコマンド、貢献ガイドラインを含むリポジトリルートに `CLAUDE.md` ファイルを作成します。ソース管理にチェックインして、すべてのユーザーが利益を得られるようにします

234 

235[メモリと CLAUDE.md ファイル](/docs/ja/memory)で詳細をご覧ください。

236 231 

237<h3 id="simplify-deployment">232<h3 id="simplify-deployment">

238 デプロイメントを簡素化する233 デプロイメントを簡素化する

tools-reference.md +27 −20

Details

42| `PushNotification` | デスクトップ通知を送信し、[リモートコントロール](/docs/ja/remote-control)が接続されている場合は電話プッシュを送信します。長時間実行されるタスクまたは[スケジュール済みタスク](/docs/ja/scheduled-tasks)が、あなたが離れているときに到達できるようにします。プッシュ配信は Anthropic ホスト型インフラストラクチャを通じて実行されます。これは Amazon Bedrock、AWS 上の Claude Platform、Google Cloud の Agent Platform、または Microsoft Foundry からはアクセスできません | いいえ |42| `PushNotification` | デスクトップ通知を送信し、[リモートコントロール](/docs/ja/remote-control)が接続されている場合は電話プッシュを送信します。長時間実行されるタスクまたは[スケジュール済みタスク](/docs/ja/scheduled-tasks)が、あなたが離れているときに到達できるようにします。プッシュ配信は Anthropic ホスト型インフラストラクチャを通じて実行されます。これは Amazon Bedrock、AWS 上の Claude Platform、Google Cloud の Agent Platform、または Microsoft Foundry からはアクセスできません | いいえ |

43| `Read` | ファイルの内容を読み取ります。[Read ツールの動作](#read-tool-behavior)を参照してください | いいえ |43| `Read` | ファイルの内容を読み取ります。[Read ツールの動作](#read-tool-behavior)を参照してください | いいえ |

44| `ReadMcpResourceTool` | URI で特定の MCP リソースを読み取ります | いいえ |44| `ReadMcpResourceTool` | URI で特定の MCP リソースを読み取ります | いいえ |

45| `RemoteTrigger` | claude.ai で[ルーチン](/docs/ja/routines)を作成、更新、実行、リストします。`/schedule` コマンドをサポートします。[`RemoteTrigger` 入力リファレンス](/docs/ja/agent-sdk/typescript#remotetrigger)は、すべてのアクション と、ツールを削除する組織ポリシーを文書化しています。ルーチンは claude.ai に存在し、Pro、Max、Team、または Enterprise プランが必要です。そのため、このツールは Amazon Bedrock、AWS 上の Claude Platform、Google Cloud の Agent Platform、または Microsoft Foundry からはアクセスできません | いいえ |45| `RemoteTrigger` | claude.ai で[ルーチン](/docs/ja/routines)を作成、更新、実行、リストします。`/schedule` コマンドをサポートします。[`RemoteTrigger` 入力リファレンス](/docs/ja/agent-sdk/typescript#remotetrigger)は、すべてのアクションと、ツールを削除する組織ポリシーを文書化しています。ルーチンは claude.ai に存在し、Pro、Max、Team、または Enterprise プランが必要です。そのため、このツールは Amazon Bedrock、AWS 上の Claude Platform、Google Cloud の Agent Platform、または Microsoft Foundry からはアクセスできません | いいえ |

46| `ReportFindings` | コード レビューの検出結果を構造化リストとしてレポートします。検出結果ごとにファイル、概要、失敗シナリオがあり、Claude Code はテキストとして出力する代わりにレンダリングできます。Claude はアクティブなコード レビュー指示がこれを呼び出すように指示する場合に呼び出します。Claude Code v2.1.196 以降が必要です。v2.1.199 以降、検出結果は `correctness` または `test-coverage` などのオプションの `category` スラッグを含むことができ、レンダリングされたリストのファイルの場所の横に表示されます | いいえ |46| `ReportFindings` | コードレビューの検出結果を構造化リストとしてレポートします。検出結果ごとにファイル、概要、失敗シナリオがあり、Claude Code はテキストとして出力する代わりにレンダリングできます。Claude はアクティブなコードレビュー指示がこれを呼び出すように指示する場合に呼び出します。Claude Code v2.1.196 以降が必要です。v2.1.199 以降、検出結果は `correctness` または `test-coverage` などのオプションの `category` スラッグを含むことができ、レンダリングされたリストのファイルの場所の横に表示されます | いいえ |

47| `ScheduleWakeup` | [自分のペースで進む `/loop`](/docs/ja/scheduled-tasks#let-claude-choose-the-interval) の次の反復をスケジュールし直します。Claude は各反復の終了時にこれを呼び出して、次の反復をいつ実行するかを 1 分後から 1 時間後の間で選択します。ユーザーが直接呼び出すことはありません。代わりにループを終了するには、Claude はこれを `stop: true` で呼び出します。これは保留中のウェイクアップをキャンセルします。`stop` フィールドには Claude Code v2.1.202 以降が必要です。保留中のウェイクアップは[Stop フックの入力](/docs/ja/hooks#stop-input)の `session_crons` に表示されます | いいえ |47| `ScheduleWakeup` | [自分のペースで進む `/loop`](/docs/ja/scheduled-tasks#let-claude-choose-the-interval) の次の反復をスケジュールし直します。Claude は各反復の終了時にこれを呼び出して、次の反復をいつ実行するかを 1 分後から 1 時間後の間で選択します。ユーザーが直接呼び出すことはありません。代わりにループを終了するには、Claude はこれを `stop: true` で呼び出します。これは保留中のウェイクアップをキャンセルします。`stop` フィールドには Claude Code v2.1.202 以降が必要です。保留中のウェイクアップは[Stop フックの入力](/docs/ja/hooks#stop-input)の `session_crons` に表示されます | いいえ |

48| `SendFeedback` | Claude Code に関するフィードバックレポートを作成します。製品の問題または Claude Code セッション内での Claude 自身の動作をカバーします。ユーザーがレビューできるよう、お使いのマシン上のキューに入れます。Claude Code は、ドラフトを送信することを選択するまで何も送信しません。[SendFeedback ツールの動作](#sendfeedback-tool-behavior)を参照してください。Claude Code v2.1.238 以降が必要です | いいえ |48| `SendFeedback` | Claude Code に関するフィードバックレポートを作成します。製品の問題または Claude Code セッション内での Claude 自身の動作をカバーします。ユーザーがレビューできるよう、お使いのマシン上のキューに入れます。Claude Code は、ドラフトを送信することを選択するまで何も送信しません。[SendFeedback ツールの動作](#sendfeedback-tool-behavior)を参照してください。Claude Code v2.1.238 以降が必要です | いいえ |

49| `SendMessage` | 別のエージェントにメッセージを送信します。[エージェントチーム](/docs/ja/agent-teams)チームメイト、[エージェント ID または名前で再開するサブエージェント](/docs/ja/sub-agents#resume-subagents)、またはこのマシン上またはその外にある他の Claude Code セッションのいずれか。他のセッションへのメッセージングには Claude Code v2.1.224 以降が必要です。[クロスセッションメッセージング](/docs/ja/cross-session-messaging)は、Claude が到達できるセッション、[メッセージが到着したときの外観](/docs/ja/cross-session-messaging#what-a-message-looks-like)、および[別のセッションがアイドル状態になったときに Claude が通知を受け取る方法](/docs/ja/cross-session-messaging#get-a-notice-when-another-session-goes-idle)をカバーしています。Claude はオプションの `summary` 入力を含めることができます。通常は 5~10 語で、Claude Code は 1 行のプレビューとして表示します。Claude が[プレーンテキストメッセージ](/docs/ja/cross-session-messaging#limitations)で省略した場合、Claude Code はメッセージの最初の行を概要として使用します。Claude Code は 200 文字を超える概要を省略記号で切り詰めます | いいえ |49| `SendMessage` | 別のエージェントにメッセージを送信します。[エージェントチーム](/docs/ja/agent-teams)チームメイト、[エージェント ID または名前で再開するサブエージェント](/docs/ja/sub-agents#resume-subagents)、またはこのマシン上またはその外にある他の Claude Code セッションのいずれか。他のセッションへのメッセージングには Claude Code v2.1.224 以降が必要です。[クロスセッションメッセージング](/docs/ja/cross-session-messaging)は、Claude が到達できるセッション、[メッセージが到着したときの外観](/docs/ja/cross-session-messaging#what-a-message-looks-like)、および[別のセッションがアイドル状態になったときに Claude が通知を受け取る方法](/docs/ja/cross-session-messaging#get-a-notice-when-another-session-goes-idle)をカバーしています。Claude はオプションの `summary` 入力を含めることができます。通常は 5~10 語で、Claude Code は 1 行のプレビューとして表示します。Claude が[プレーンテキストメッセージ](/docs/ja/cross-session-messaging#limitations)で省略した場合、Claude Code はメッセージの最初の行を概要として使用します。Claude Code は 200 文字を超える概要を省略記号で切り詰めます | いいえ |

50| `SendUserFile` | セッションからファイルをオプションのキャプション付きで送信します。生成されたレポート、図、スクリーンショット、または構築されたアーティファクトがトランスクリプトでのみ言及されるのではなく、デバイスに到達するようにします。v2.1.196 以降、オプションの `display` 入力はプレゼンテーションを制御します。`render` はファイルをクライアントにインラインで開き、`attach` はダウンロードカードのみを表示し、設定されていない場合、クライアントはファイルタイプで決定します。[リモートコントロール](/docs/ja/remote-control)クライアントが接続されている場合、またはセッションが[ウェブ上の Claude Code](/docs/ja/claude-code-on-the-web)などのマネージドクラウド環境で実行されている場合に利用可能です。配信は Anthropic ホスト型インフラストラクチャを通じて実行されるため、このツールは Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry では利用できません | いいえ |50| `SendUserFile` | セッションからファイルをオプションのキャプション付きで送信します。生成されたレポート、図、スクリーンショット、または構築されたアーティファクトがトランスクリプトでのみ言及されるのではなく、デバイスに到達するようにします。v2.1.196 以降、オプションの `display` 入力はプレゼンテーションを制御します。`render` はファイルをクライアントにインラインで開き、`attach` はダウンロードカードのみを表示し、設定されていない場合、クライアントはファイルタイプで決定します。[リモートコントロール](/docs/ja/remote-control)クライアントが接続されている場合、またはセッションが[ウェブ上の Claude Code](/docs/ja/claude-code-on-the-web)などのマネージドクラウド環境で実行されている場合に利用可能です。配信は Anthropic ホスト型インフラストラクチャを通じて実行されるため、このツールは Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry では利用できません | いいえ |

51| `ShareOnboardingGuide` | ガイドが作成された後、`ONBOARDING.md` をアップロードし、チームメイトが Claude Code で開くことができる共有リンクを返します。`/team-onboarding` から呼び出されます。claude.ai サブスクライバーが Pro、Max、Team、Enterprise プランで利用可能です | はい |51| `ShareOnboardingGuide` | ガイドが作成された後、`ONBOARDING.md` をアップロードし、チームメイトが Claude Code で開くことができる共有リンクを返します。`/team-onboarding` から呼び出されます。claude.ai サブスクライバーが Pro、Max、Team、Enterprise プランで利用可能です | はい |

52| `Skill` | メイン会話内で[スキル](/docs/ja/skills#control-who-invokes-a-skill)を実行します | はい |52| `Skill` | メイン会話内で[スキル](/docs/ja/skills#control-who-invokes-a-skill)を実行します | はい |

53| `TaskCreate` | タスクリストに新しいタスクを作成します。Claude Code は、[タスクツール利用可能性](#task-tool-availability)の下にリストされているモデルでこれを除外します。オプトインしない限り | いいえ |53| `TaskCreate` | タスクリストに新しいタスクを作成します。[タスクツール利用可能性](#task-tool-availability)の下にリストされているモデルでデフォルトで提供され、他のモデルではオプトインした場合に提供されます | いいえ |

54| `TaskGet` | 特定のタスクの完全な詳細を取得します。Claude Code は、[タスクツール利用可能性](#task-tool-availability)の下にリストされているモデルでこれを除外します。オプトインしない限り | いいえ |54| `TaskGet` | 特定のタスクの完全な詳細を取得します。[タスクツール利用可能性](#task-tool-availability)の下にリストされているモデルでデフォルトで提供され、他のモデルではオプトインした場合に提供されます | いいえ |

55| `TaskList` | すべてのタスクを現在のステータスでリストします。Claude Code は、[タスクツール利用可能性](#task-tool-availability)の下にリストされているモデルでこれを除外します。オプトインしない限り | いいえ |55| `TaskList` | すべてのタスクを現在のステータスでリストします。[タスクツール利用可能性](#task-tool-availability)の下にリストされているモデルでデフォルトで提供され、他のモデルではオプトインした場合に提供されます | いいえ |

56| `TaskOutput` | バックグラウンドタスクから出力を取得します。タスクの出力ファイルパスで `Read` を優先して廃止されました。ID に一致するタスクがない場合、エラーは実行中のバックグラウンドエージェントを ID と説明でリストします。v2.1.203 より前では、エラーは欠落している ID のみを名前付けていました | いいえ |56| `TaskOutput` | バックグラウンドタスクから出力を取得します。タスクの出力ファイルパスで `Read` を優先して廃止されました。ID に一致するタスクがない場合、エラーは実行中のバックグラウンドエージェントを ID と説明でリストします。v2.1.203 より前では、エラーは欠落している ID のみを名前付けていました | いいえ |

57| `TaskStop` | ID でバックグラウンドタスクを実行中に停止します。また、[エージェントチームチームメイト](/docs/ja/agent-teams)またはエージェント ID または名前でバックグラウンドエージェントを受け入れます。v2.1.198 より前では、バックグラウンドタスク ID のみを受け入れていました。ID に一致するタスクがない場合、エラーは実行中のバックグラウンドエージェントを ID と説明でリストします。別のエージェントが生成したエージェントを含みます。v2.1.203 より前では、エラーは実行中のチームメイトと名前付きエージェントをリストしていましたが、別のエージェントが生成したバックグラウンドエージェントはリストしていなかったため、メイン会話から識別または停止できませんでした | いいえ |57| `TaskStop` | ID でバックグラウンドタスクを実行中に停止します。また、[エージェントチームチームメイト](/docs/ja/agent-teams)またはエージェント ID または名前でバックグラウンドエージェントを受け入れます。v2.1.198 より前では、バックグラウンドタスク ID のみを受け入れていました。ID に一致するタスクがない場合、エラーは実行中のバックグラウンドエージェントを ID と説明でリストします。別のエージェントが生成したエージェントを含みます。v2.1.203 より前では、エラーは実行中のチームメイトと名前付きエージェントをリストしていましたが、別のエージェントが生成したバックグラウンドエージェントはリストしていなかったため、メイン会話から識別または停止できませんでした | いいえ |

58| `TaskUpdate` | タスクステータス、依存関係、詳細を更新するか、タスクを削除します。Claude Code は、[タスクツール利用可能性](#task-tool-availability)の下にリストされているモデルでこれを除外します。オプトインしない限り | いいえ |58| `TaskUpdate` | タスクステータス、依存関係、詳細を更新するか、タスクを削除します。[タスクツール利用可能性](#task-tool-availability)の下にリストされているモデルでデフォルトで提供され、他のモデルではオプトインした場合に提供されます | いいえ |

59| `TodoWrite` | セッションタスクチェックリストを管理します。`TaskCreate`、`TaskGet`、`TaskList`、`TaskUpdate` を優先して、デフォルトで無効になっています。[タスク追跡ツールを持つセッション](#task-tool-availability)で再度有効にするには、`CLAUDE_CODE_ENABLE_TASKS=0` を設定します | いいえ |59| `TodoWrite` | セッションタスクチェックリストを管理します。`TaskCreate`、`TaskGet`、`TaskList`、`TaskUpdate` を優先して、デフォルトで無効になっています。[タスク追跡ツールを持つセッション](#task-tool-availability)で再度有効にするには、`CLAUDE_CODE_ENABLE_TASKS=0` を設定します | いいえ |

60| `ToolSearch` | [ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search)が有効な場合、遅延ツールを検索してロードします | いいえ |60| `ToolSearch` | [ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search)が有効な場合、遅延ツールを検索してロードします | いいえ |

61| `WaitForMcpServers` | バックグラウンドでまだ接続中の 1 つ以上の[MCP サーバー](/docs/ja/mcp)を待機して、セッションを再開しなくてもリクエストがそのツールを使用できるようにします。必要なサーバーがまだ接続されていない場合、Claude はこれを呼び出します。[ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search)が無効な場合にのみ表示されます。有効な場合は `ToolSearch` が待機を処理します | いいえ |61| `WaitForMcpServers` | バックグラウンドでまだ接続中の 1 つ以上の[MCP サーバー](/docs/ja/mcp)を待機して、セッションを再開しなくてもリクエストがそのツールを使用できるようにします。必要なサーバーがまだ接続されていない場合、Claude はこれを呼び出します。[ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search)が無効な場合にのみ表示されます。有効な場合は `ToolSearch` が待機を処理します | いいえ |


73* 設定の [`permissions.allow`](/docs/ja/settings-reference#permissions-allow) と [`permissions.deny`](/docs/ja/settings-reference#permissions-deny)、および `/permissions` インターフェース内73* 設定の [`permissions.allow`](/docs/ja/settings-reference#permissions-allow) と [`permissions.deny`](/docs/ja/settings-reference#permissions-deny)、および `/permissions` インターフェース内

74* [`CLI フラグ`](/docs/ja/cli-reference)の `--allowedTools` と `--disallowedTools`74* [`CLI フラグ`](/docs/ja/cli-reference)の `--allowedTools` と `--disallowedTools`

75* Agent SDK の [`allowedTools` と `disallowedTools`](/docs/ja/agent-sdk/permissions#allow-and-deny-rules) オプション内75* Agent SDK の [`allowedTools` と `disallowedTools`](/docs/ja/agent-sdk/permissions#allow-and-deny-rules) オプション内

76* [サブエージェントの `tools` または `disallowedTools`](/docs/ja/sub-agents#supported-frontmatter-fields) frontmatter 内

77* [スキルの `allowed-tools`](/docs/ja/skills#frontmatter-reference) frontmatter 内76* [スキルの `allowed-tools`](/docs/ja/skills#frontmatter-reference) frontmatter 内

78* フックの [`if` 条件](/docs/ja/hooks-guide#filter-by-tool-name-and-arguments-with-the-if-field)内77* フックの [`if` 条件](/docs/ja/hooks-guide#filter-by-tool-name-and-arguments-with-the-if-field)内

79 78 


154 コマンド間で保持されるもの153 コマンド間で保持されるもの

155</h3>154</h3>

156 155 

157* Claude が メインセッションで `cd` を実行すると、新しい作業ディレクトリは、プロジェクトディレクトリ内に留まっている限り、または `--add-dir`、`/add-dir`、もしくは設定の `additionalDirectories` で追加した[追加の作業ディレクトリ](/docs/ja/permissions#working-directories)内に留まっている限り、後続の Bash コマンドに引き継がれます。サブエージェントセッションは作業ディレクトリの変更を引き継ぎません。156* Claude がメインセッションで `cd` を実行すると、新しい作業ディレクトリは、プロジェクトディレクトリ内に留まっている限り、または `--add-dir`、`/add-dir`、もしくは設定の `additionalDirectories` で追加した[追加の作業ディレクトリ](/docs/ja/permissions#working-directories)内に留まっている限り、後続の Bash コマンドに引き継がれます。これには、後続のメッセージに応答して Claude が実行するコマンドが含まれます。

157 * サブエージェントセッションは作業ディレクトリの変更を引き継ぎません。

158 * `cd` がこれらのディレクトリの外に出た場合、Claude Code はプロジェクトディレクトリにリセットし、ツール結果に `Shell cwd was reset to <dir>` を追加します。158 * `cd` がこれらのディレクトリの外に出た場合、Claude Code はプロジェクトディレクトリにリセットし、ツール結果に `Shell cwd was reset to <dir>` を追加します。

159 * この引き継ぎを無効にして、すべての Bash コマンドがプロジェクトディレクトリで開始されるようにするには、`CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR=1` を設定します。159 * この引き継ぎを無効にして、すべての Bash コマンドがプロジェクトディレクトリで開始されるようにするには、`CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR=1` を設定します。

160* 環境変数は保持されません。1 つのコマンドで `export` しても、次のコマンドでは利用できません。160* 環境変数は保持されません。1 つのコマンドで `export` しても、次のコマンドでは利用できません。


196 196 

197[フォアグラウンドサブエージェント](/docs/ja/sub-agents#run-subagents-in-foreground-or-background)が開始したコマンドは、そのサブエージェントが最終応答を提供するときに停止します。メインの会話またはバックグラウンドサブエージェントが開始したコマンドは、最終応答の後も実行し続けます。`-p` フラグを使用した非対話型モードでは、[バックグラウンドコマンドは実行の最終結果の直後に終了します](/docs/ja/headless#background-tasks-at-exit)。197[フォアグラウンドサブエージェント](/docs/ja/sub-agents#run-subagents-in-foreground-or-background)が開始したコマンドは、そのサブエージェントが最終応答を提供するときに停止します。メインの会話またはバックグラウンドサブエージェントが開始したコマンドは、最終応答の後も実行し続けます。`-p` フラグを使用した非対話型モードでは、[バックグラウンドコマンドは実行の最終結果の直後に終了します](/docs/ja/headless#background-tasks-at-exit)。

198 198 

199コマンドがタイムアウトに達しても完了しない場合、Claude Code はそれを停止する代わりにバックグラウンドに移動します。Claude はコマンドが続行している間、作業を続けます。Claude Code は移動されたコマンドに他のバックグラウンドコマンドと同じライフタイムルールを適用するため、フォアグラウンドサブエージェントのコマンドはそのサブエージェントの最終応答で終了します。[`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS=1`](/docs/ja/env-vars#variables) を設定すると、バックグラウンドタスク機能の残りと共に自動バックグラウンド化を無効にします。199コマンドがタイムアウトに達しても完了しない場合、Claude Code はそれを停止する代わりにバックグラウンドに移動します。ただし、コマンドが `sleep` で始まる場合は除きます。Claude はコマンドが続行している間、作業を続けます。Claude Code は移動されたコマンドに他のバックグラウンドコマンドと同じライフタイムルールを適用するため、フォアグラウンドサブエージェントのコマンドはそのサブエージェントの最終応答で終了します。[`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS=1`](/docs/ja/env-vars#variables) を設定すると、バックグラウンドタスク機能の残りと共に自動バックグラウンド化を無効にします。

200 

201Claude Code は 3 種類のコマンドを自動バックグラウンド化しません。代わりにタイムアウトで停止します。

202 

203* `sleep` で始まるコマンド。

204* どこかで `git` を実行するコマンド。

205* Claude Code が単純なコマンドに完全に解析できない複合コマンド。Claude Code は `${VAR}` などのパラメータ展開を解析不可能として扱うため、`; exit "${PIPESTATUS[0]}"` で終わるコマンドは、コマンドの残りが解析される場合でもタイムアウトで停止します。

206 200 

207バックグラウンドに移動されたコマンドの結果は、何が起こったかを示します。201バックグラウンドに移動されたコマンドの結果は、何が起こったかを示します。

208 202 


218* サイズをバイト数として、または `K`、`M`、`G`、または `T` サフィックス付きで記述します。`0`、`off`、`false`、`no`、または `none` を設定して上限をオフにします。Claude Code は `4e9` などのサイズとして読み取ることができない他の値を無視します。212* サイズをバイト数として、または `K`、`M`、`G`、または `T` サフィックス付きで記述します。`0`、`off`、`false`、`no`、または `none` を設定して上限をオフにします。Claude Code は `4e9` などのサイズとして読み取ることができない他の値を無視します。

219* Claude Code は、各コマンドごとではなく、1 つの上限に対してセッションのすべての Bash、PowerShell、および Monitor コマンドをカウントします。213* Claude Code は、各コマンドごとではなく、1 つの上限に対してセッションのすべての Bash、PowerShell、および Monitor コマンドをカウントします。

220* Claude Code はメモリ cgroup で上限を適用します。cgroup をセットアップできない場合、コマンドは上限なしで実行され、`claude --debug` からのデバッグログは理由を示します。214* Claude Code はメモリ cgroup で上限を適用します。cgroup をセットアップできない場合、コマンドは上限なしで実行され、`claude --debug` からのデバッグログは理由を示します。

221* Claude Code が開始した最初のプロセスが上限をオンにした後、またはオフ値またはcgroup セットアップの失敗のためにオフにした後、Claude Code はその結果を保持します。変更または削除された値、または固定されたセットアップを適用するには、`claude` を再度起動します。215* Claude Code が開始した最初のプロセスが上限をオンにした後、またはオフ値または cgroup セットアップの失敗のためにオフにした後、Claude Code はその結果を保持します。変更または削除された値、または固定されたセットアップを適用するには、`claude` を再度起動します。

222* コマンドが上限の下に留まることができない場合、カーネルはコマンドを強制終了し、その結果に上限を名前で示すものはありません。216* コマンドが上限の下に留まることができない場合、カーネルはコマンドを強制終了し、その結果に上限を名前で示すものはありません。

223 217 

224Claude Code は、開始する他の種類のプロセスも同じ制限に対してカウントできます。[`CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE`](/docs/ja/env-vars#variables) を上限から除外する種類のカンマ区切りリストに設定します。Claude Code はリストにない種類に上限を適用します。`none` に設定してすべての種類に上限を設定するか、`all-new` に設定して Bash、PowerShell、および Monitor ツールコマンドのみに上限を設定します。Claude Code v2.1.246 以降が必要です。名前を付けることができる種類は次のとおりです。218Claude Code は、開始する他の種類のプロセスも同じ制限に対してカウントできます。[`CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE`](/docs/ja/env-vars#variables) を上限から除外する種類のカンマ区切りリストに設定します。Claude Code はリストにない種類に上限を適用します。`none` に設定してすべての種類に上限を設定するか、`all-new` に設定して Bash、PowerShell、および Monitor ツールコマンドのみに上限を設定します。Claude Code v2.1.246 以降が必要です。名前を付けることができる種類は次のとおりです。


291 Glob ツールの動作285 Glob ツールの動作

292</h2>286</h2>

293 287 

294Glob ツールはファイル名パターンでファイルを検索します。`**` を使用した再帰的なディレクトリマッチングを含む標準的な glob 構文をサポートしています。288Glob ツールはファイル名パターンでファイルを検索します。Windows では、デフォルトツールセットの一部です。macOS、Linux、および WSL では、Claude Code は Glob と [Grep](#grep-tool-behavior) をデフォルトツールセットから除外し、Claude は Bash ツールを通じて `find` と `grep` で検索します。Claude のシェルでは、これら 2 つのコマンドは `bfs` と `ugrep` の組み込みバージョンを実行し、検索は Bash 呼び出しとしてフック と権限ルールに到達します。

289 

290macOS、Linux、および WSL では、以下の場合に Glob と Grep ツールが戻ります。

291 

292* セッションを開始するときに [`--tools` または `--allowedTools`](/docs/ja/cli-reference#cli-flags) で `Glob` または `Grep` を指定するか、同等の [Agent SDK](/docs/ja/agent-sdk/overview) オプションで指定します。`--tools` を使用すると、リストしたものが取得され、`--allowedTools` でいずれかのツールを指定すると両方が復元されます。設定ファイルの許可ルールはこの効果を持ちません。

293* 権限 [拒否ルール](/docs/ja/permissions#match-all-uses-of-a-tool)、`--disallowedTools` フラグ、または [`--restricted`](/docs/ja/cli-reference#cli-flags) がセッションから `Bash` を削除します。

294* [サブエージェント](/docs/ja/sub-agents#available-tools) が `tools` フィールドに `Glob` または `Grep` をリストし、`Bash` を除外します。リストされたツールはそのサブエージェントのみ、または [`--agent`](/docs/ja/sub-agents#invoke-subagents-explicitly) またはエージェント設定を通じてメインセッションエージェントとして実行される場合はセッション全体に戻ります。

295 

296Glob は再帰的なディレクトリマッチングのための `**` を含む標準的な glob 構文をサポートしています。

295 297 

296* `**/*.js` は任意の深さにあるすべての `.js` ファイルにマッチします298* `**/*.js` は任意の深さにあるすべての `.js` ファイルにマッチします

297* `src/**/*.ts` は `src/` 以下のすべての `.ts` ファイルにマッチします299* `src/**/*.ts` は `src/` 以下のすべての `.ts` ファイルにマッチします


309 Grep ツールの動作311 Grep ツールの動作

310</h2>312</h2>

311 313 

312Grep ツールはファイルの内容からパターンを検索します。[Glob](#glob-tool-behavior) がファイル名でファイルを検索するのに対し、Grep はそれらの内部の行を検索します。314Grep ツールはファイルの内容からパターンを検索します。[Glob](#glob-tool-behavior) がファイル名でファイルを検索するのに対し、Grep はそれらの内部の行を検索します。macOS、Linux、WSL では、Grep は Glob と同じ条件下ではデフォルトで存在しません。両方のツールが利用可能な場合については、[Glob ツールの動作](#glob-tool-behavior) を参照してください。

313 315 

314Grep は [ripgrep](https://github.com/BurntSushi/ripgrep) に基づいており、POSIX grep ではなく ripgrep の正規表現構文を使用します。正規表現のメタ文字を含むパターンはエスケープが必要です。例えば、Go コードで `interface{}` を検索する場合、パターン `interface\{\}` が必要です。316Grep は [ripgrep](https://github.com/BurntSushi/ripgrep) に基づいており、POSIX grep ではなく ripgrep の正規表現構文を使用します。正規表現のメタ文字を含むパターンはエスケープが必要です。例えば、Go コードで `interface{}` を検索する場合、パターン `interface\{\}` が必要です。

315 317 


580 Task ツールの利用可能性582 Task ツールの利用可能性

581</h2>583</h2>

582 584 

583Claude Code v2.1.233 以降では、以下のツールは Opus 4.8、Sonnet 5、Fable 5、Mythos 5、またはそれ以降のバージョンでは、オプトインしない限り利用できません:`TodoWrite`、`TaskCreate`、`TaskGet`、`TaskUpdate`、および `TaskList`。これらのモデルは書かれたチェックリストなしで複数ステップの作業を追跡でき、ツールの定義とリマインダーはコンテキストを占有するため、Claude Code はそれらを除外します。これらがない場合、Claude は作業中に[タスクリスト](/docs/ja/interactive-mode#task-list)に何も追加しません。Opus 4.7 などの他のモデルでは、Claude Code はデフォルトで 4 つの Task ツールを提供し、[`CLAUDE_CODE_ENABLE_TASKS=0`](/docs/ja/env-vars)を設定した場合のみ `TodoWrite` を提供します。585Task トラッキングツール(`TaskCreate`、`TaskGet`、`TaskUpdate`、`TaskList`、および `TodoWrite`)は、デフォルトでは Claude 3.x モデル、Opus 4 から 4.7、Sonnet 4 から 4.6、および Haiku 4.5 でのみ利用可能です。ツールが利用可能な場所では、4 つの Task ツール、または [`CLAUDE_CODE_ENABLE_TASKS=0`](/docs/ja/env-vars)を設定した場合は `TodoWrite` が提供されます。

586 

587他のすべてのモデルでは、Claude Code はオプトインしない限りツールを除外します。Claude Code が認識しないモデル ID([LLM ゲートウェイ](/docs/ja/llm-gateway)を通じて提供されるカスタムモデル名など)にも同じことが当てはまります。新しいモデルでは、Claude は書かれたチェックリストなしで複数ステップの作業を追跡でき、ツールの定義とリマインダーはコンテキストを占有します。ツールがない場合、Claude は作業中に[タスクリスト](/docs/ja/interactive-mode#task-list)に何も追加しません。

584 588 

585これらのツールをリストされたモデルのいずれかで使用したい場合は、以下のいずれかを実行してください:589デフォルトではこれらのツールを持たないモデルでこれらのツールを使用したい場合は、以下のいずれかを実行してください:

586 590 

587* Claude Code を開始する前に [`CLAUDE_CODE_ENABLE_TODO_TOOLS=1`](/docs/ja/env-vars)をエクスポートします。例えば `CLAUDE_CODE_ENABLE_TODO_TOOLS=1 claude`。Claude Code はすべてのモデルとすべてのプロバイダーで同じツールを提供します591* Claude Code を開始する前に [`CLAUDE_CODE_ENABLE_TODO_TOOLS=1`](/docs/ja/env-vars)をエクスポートします。例えば `CLAUDE_CODE_ENABLE_TODO_TOOLS=1 claude`。Claude Code はすべてのモデルとすべてのプロバイダーで同じツールを提供します

588* [`--allowedTools`](/docs/ja/cli-reference#cli-flags)で、例えば `claude --allowedTools TaskCreate` のようにツールの 1 つを指定します592* [`--allowedTools`](/docs/ja/cli-reference#cli-flags)で、例えば `claude --allowedTools TaskCreate` のようにツールの 1 つを指定します


593 597 

594Claude Code はサブエージェントにツールを提供するのは、セッションがそれらを持っている場合のみです。サブエージェントが異なるモデルを実行している場合でも同じです。プロセス内の[エージェントチーム](/docs/ja/agent-teams)メンバーはセッションと同じ方法で従いますが、独自の[分割ペイン](/docs/ja/agent-teams#choose-a-display-mode)にいるメンバーは別の Claude Code プロセスとして実行されるため、独自のモデルが決定します。Task ツールがない場合、エージェントは[共有タスクリスト](/docs/ja/agent-teams#assign-and-claim-tasks)の代わりにメッセージを通じてチームと調整します。598Claude Code はサブエージェントにツールを提供するのは、セッションがそれらを持っている場合のみです。サブエージェントが異なるモデルを実行している場合でも同じです。プロセス内の[エージェントチーム](/docs/ja/agent-teams)メンバーはセッションと同じ方法で従いますが、独自の[分割ペイン](/docs/ja/agent-teams#choose-a-display-mode)にいるメンバーは別の Claude Code プロセスとして実行されるため、独自のモデルが決定します。Task ツールがない場合、エージェントは[共有タスクリスト](/docs/ja/agent-teams#assign-and-claim-tasks)の代わりにメッセージを通じてチームと調整します。

595 599 

600ここで説明されているデフォルトセットは Claude Code v2.1.268 以降に適用されます。

601 

596<h2 id="webfetch-tool-behavior">602<h2 id="webfetch-tool-behavior">

597 WebFetch ツールの動作603 WebFetch ツールの動作

598</h2>604</h2>


606* HTTP URL は自動的に HTTPS にアップグレードされます。612* HTTP URL は自動的に HTTPS にアップグレードされます。

607* 大きなページは処理前に固定文字数制限に切り詰められます。613* 大きなページは処理前に固定文字数制限に切り詰められます。

608* WebFetch はデフォルトで各レスポンスを 15 分間キャッシュするため、同じ URL の繰り返しフェッチは迅速に返されます。Claude Code v2.1.233 以降では、[`CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS`](/docs/ja/env-vars#variables) を設定して、WebFetch が各レスポンスを保持する期間を変更できます。614* WebFetch はデフォルトで各レスポンスを 15 分間キャッシュするため、同じ URL の繰り返しフェッチは迅速に返されます。Claude Code v2.1.233 以降では、[`CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS`](/docs/ja/env-vars#variables) を設定して、WebFetch が各レスポンスを保持する期間を変更できます。

615* ページが 5 分以内(WebFetch が従うリダイレクトを含む)にダウンロードを完了しない場合、デッドラインエラーで失敗します。Claude Code v2.1.268 以降では、[`CLAUDE_CODE_WEBFETCH_DEADLINE_MS`](/docs/ja/env-vars#variables) を設定して制限を変更するか、`0` に設定して削除できます。

609* URL が別のホストにリダイレクトされる場合、WebFetch はそれに従う代わりに、元の URL とリダイレクト先を名前で示すテキスト結果を返します。その後 Claude は 2 番目の WebFetch 呼び出しで新しい URL をフェッチします。616* URL が別のホストにリダイレクトされる場合、WebFetch はそれに従う代わりに、元の URL とリダイレクト先を名前で示すテキスト結果を返します。その後 Claude は 2 番目の WebFetch 呼び出しで新しい URL をフェッチします。

610* 抽出ステップが過負荷の API にヒットした場合、Claude Code はバックオフで再試行します。それでも失敗するフェッチはエラー結果を返します。v2.1.212 より前では、API エラーテキストが抽出されたページコンテンツであるかのように Claude に到達する可能性がありました。617* 抽出ステップが過負荷の API にヒットした場合、Claude Code はバックオフで再試行します。それでも失敗するフェッチはエラー結果を返します。v2.1.212 より前では、API エラーテキストが抽出されたページコンテンツであるかのように Claude に到達する可能性がありました。

611 618 

Details

110 110 

111パイプされたコマンドが代わりにクリップボードに直接到達できるようにするには、`pbcopy *`、`wl-copy *`、または `xclip *` を [`excludedCommands`](/docs/ja/settings-reference#sandbox-excludedcommands) に追加して、コマンドがサンドボックスの外で実行されるようにします。111パイプされたコマンドが代わりにクリップボードに直接到達できるようにするには、`pbcopy *`、`wl-copy *`、または `xclip *` を [`excludedCommands`](/docs/ja/settings-reference#sandbox-excludedcommands) に追加して、コマンドがサンドボックスの外で実行されるようにします。

112 112 

113<h3 id="copied-text-doesn’t-reach-your-local-clipboard-over-ssh">

114 SSH 経由でコピーされたテキストがローカルクリップボードに到達しない

115</h3>

116 

117Claude Code がリモートマシンで SSH 経由で実行されている場合、ローカルマシンでクリップボードツールを実行できません。tmux の外では、[フルスクリーンレンダリング](/docs/ja/fullscreen)でテキストを選択するか `/copy` を実行すると、Claude Code はテキストを OSC 52 エスケープシーケンスとしてターミナルに送信します。ターミナルがそれをクリップボードに配置するかどうかを決定します。`/copy` は、テキストが到達したかどうかに関わらず `Copied to clipboard` を報告し、tmux の外では選択通知は `sent N chars via OSC 52` と表示されます。

118 

119一部のターミナルは OSC 52 に対応していません。iTerm2 は **Settings > General > Selection > Applications in terminal may access clipboard** をオンにするまで無視し、macOS Terminal.app はそれをサポートしていません。

120 

121OSC 52 なしでテキストを取得するには:

122 

123* ターミナルのネイティブ選択キーを押しながらドラッグしてから、ターミナルの通常のショートカット(`Cmd+C` など)でコピーします。キーは Terminal.app では `Fn`、iTerm2 では `Option` です。[ネイティブテキスト選択を保持](/docs/ja/fullscreen#keep-native-text-selection)で他のターミナルのキーを一覧表示します。

124* リモートマシンで [`CLAUDE_CODE_DISABLE_MOUSE=1`](/docs/ja/env-vars) を設定して、ターミナルがセッション全体の選択を処理するようにします。

125 

113<h3 id="search-and-discovery-issues">126<h3 id="search-and-discovery-issues">

114 検索と発見の問題127 検索と発見の問題

115</h3>128</h3>

vs-code.md +44 −9

Details

56 56 

57 Claude Code を開くその他の方法:57 Claude Code を開くその他の方法:

58 58 

59 * **アクティビティバー**:左サイドバーの Spark アイコンをクリックしてセッションリストを開きます。任意のセッションをクリックしてフルエディタタブとして開くか、新しいセッションを開始します。このアイコンはアクティビティバーに常に表示されます。59 * **アクティビティバー**:左サイドバーの Spark アイコンをクリックしてセッションリストを開きます。任意のセッションをクリックして[優先位置](#extension-settings)で開くか、新しいセッションを開始します。このアイコンはアクティビティバーに常に表示されます。

60 * **コマンドパレット**:`Cmd+Shift+P`(Mac)または `Ctrl+Shift+P`(Windows/Linux)を押し、「Claude Code」と入力して、「Open in New Tab」などのオプションを選択します。60 * **コマンドパレット**:`Cmd+Shift+P`(Mac)または `Ctrl+Shift+P`(Windows/Linux)を押し、「Claude Code」と入力して、「Open in New Tab」などのオプションを選択します。

61 * **ステータスバー**:[`preferredLocation`](#extension-settings) を `sidebar` に設定した場合、または **Claude Code: Open in Side Bar** で Claude を開いた場合、ウィンドウの右下隅の **✱ Claude Code** をクリックします。ファイルが開いていない場合でも機能します。61 * **ステータスバー**:[`preferredLocation`](#extension-settings) を `sidebar` に設定した場合、または **Claude Code: Open in Side Bar** で Claude を開いた場合、ウィンドウの右下隅の **✱ Claude Code** をクリックします。ファイルが開いていない場合でも機能します。

62 62 

63 Claude パネルをドラッグして VS Code 内の任意の場所に移動できます。詳細は [ワークフローをカスタマイズする](#customize-your-workflow) を参照してください。63 Claude パネルをドラッグして VS Code 内の任意の場所に移動できます。詳細は[ワークフローをカスタマイズする](#customize-your-workflow)を参照してください。

64 </Step>64 </Step>

65 65 

66 <Step title="サインイン">66 <Step title="サインイン">


84 </Step>84 </Step>

85 85 

86 <Step title="変更を確認する">86 <Step title="変更を確認する">

87 表示内容は、プロンプトボックスの下部に表示される [権限モード](/docs/ja/permission-modes#which-mode-a-session-starts-in) によって異なります。87 表示内容は、プロンプトボックスの下部に表示される[権限モード](/docs/ja/permission-modes#which-mode-a-session-starts-in)によって異なります。

88 88 

89 * Auto または Edit automatically モードでは、Claude はワークスペース内のほとんどのファイルを確認なしで編集します。89 * Auto または Edit automatically モードでは、Claude はワークスペース内のほとんどのファイルを確認なしで編集します。

90 * Manual モードでは、Claude がファイルを編集したい場合、元のコンテンツと提案された変更の並べて比較を表示し、権限を求めます。受け入れたり、拒否したり、代わりに Claude に何をするかを指示したりできます。受け入れる前に diff ビューで提案されたコンテンツを直接編集した場合、Claude はそれを修正したことが通知されるため、ファイルが元の提案と一致していると想定されません。90 * Manual モードでは、Claude がファイルを編集したい場合、元のコンテンツと提案された変更の並べて比較を表示し、権限を求めます。受け入れたり、拒否したり、代わりに Claude に何をするかを指示したりできます。受け入れる前に diff ビューで提案されたコンテンツを直接編集した場合、Claude はそれを修正したことが通知されるため、ファイルが元の提案と一致していると想定されません。


93 </Step>93 </Step>

94</Steps>94</Steps>

95 95 

96Claude Code でできることについてのアイデアについては、[一般的なワークフロー](/docs/ja/common-workflows) を参照してください。96Claude Code でできることについてのアイデアについては、[一般的なワークフロー](/docs/ja/common-workflows)を参照してください。

97 97 

98<Tip>98<Tip>

99 コマンドパレットから「Claude Code: Open Walkthrough」を実行して、基本的な機能のガイド付きツアーを表示します。99 コマンドパレットから「Claude Code: Open Walkthrough」を実行して、基本的な機能のガイド付きツアーを表示します。


141 141 

142エディターでテキストを選択すると、Claude は強調表示されたコードを自動的に見ることができます。プロンプトボックスのフッターは、選択されている行数を表示します。`Option+K`(Mac)/ `Alt+K`(Windows/Linux)を押して、ファイルパスと行番号を含む @-mention を挿入します(例:`@app.ts#5-10`)。選択指示器をクリックして、Claude が強調表示されたテキストを見ることができるかどうかを切り替えます。目のスラッシュアイコンは、選択が Claude から隠されていることを意味します。142エディターでテキストを選択すると、Claude は強調表示されたコードを自動的に見ることができます。プロンプトボックスのフッターは、選択されている行数を表示します。`Option+K`(Mac)/ `Alt+K`(Windows/Linux)を押して、ファイルパスと行番号を含む @-mention を挿入します(例:`@app.ts#5-10`)。選択指示器をクリックして、Claude が強調表示されたテキストを見ることができるかどうかを切り替えます。目のスラッシュアイコンは、選択が Claude から隠されていることを意味します。

143 143 

144また、`Shift` を押しながらファイルをプロンプトボックスにドラッグして、添付ファイルとして追加することもできます。任意の添付ファイルの X をクリックして、コンテキストから削除します。144画像を添付するには、クリップボードからプロンプトボックスに貼り付けます。また、`Shift` を押しながらファイルをプロンプトボックスにドラッグして、添付ファイルとして追加することもできます。任意の添付ファイルの X をクリックして、コンテキストから削除します。

145 145 

146<h3 id="resume-past-conversations">146<h3 id="resume-past-conversations">

147 過去の会話を再開する147 過去の会話を再開する

148</h3>148</h3>

149 149 

150Claude Code パネルの上部にある **Session history** ボタンをクリックして、会話履歴にアクセスします。キーワードで検索するか、時間で参照できます。任意の会話をクリックして、完全なメッセージ履歴で再開します。セッションの再開の詳細については、[Manage sessions](/docs/ja/sessions) を参照してください。150Claude Code パネルの上部にある **Session history** ボタンをクリックして、会話履歴にアクセスします。キーワードで検索するか、時間で参照できます。

151 151 

152新しいセッションは、最初のメッセージに基づいて AI が生成したタイトルを受け取ります。セッションの上にマウスを置くと、名前変更とアーカイブアクションが表示されます。説明的なタイトルを付けるために名前変更するか、リストの下部にある **Archived sessions** グループに移動するためにアーカイブします。152任意の会話をクリックして、完全なメッセージ履歴で再開します。セッションが現在のウィンドウの別のタブで既に開いている場合、クリックするとそのタブに切り替わります。セッションの再開の詳細については、[Manage sessions](/docs/ja/sessions) を参照してください。

153 

154* **Session titles**: 新しいセッションは、最初のメッセージに基づいて AI が生成したタイトルを受け取ります。

155* **Rename and archive**: セッションの上にマウスを置くと、これらのアクションが表示されます。説明的なタイトルを付けるために名前変更するか、リストの下部にある **Archived sessions** グループに移動するためにアーカイブします。

156 

157デフォルトでは、14 日間アクティビティがないセッションは、開いている、未読、または [group](#organize-sessions-into-groups) にない限り、自動的に **Archived sessions** に移動します。自動アーカイブには Claude Code v2.1.265 以降が必要です。期間を変更するか、オフにするには、[Archive Inactive Sessions setting](vscode://settings/claudeCode.archiveInactiveSessions) を開き、日数を選択するか **Never** を選択します。

153 158 

154アーカイブされたセッションを復元するには、**Archived sessions** を展開して **Unarchive session** をクリックします。v2.1.257 より前では、アクションは **Delete session** でした。これはセッションを隠し、復元する方法がありませんでした。その後削除したセッションは、アップグレード後に **Archived sessions** の下に表示されます。159アーカイブされたセッションを復元するには、**Archived sessions** を展開して **Unarchive session** をクリックします。v2.1.257 より前では、アクションは **Delete session** でした。これはセッションを隠し、復元する方法がありませんでした。その後削除したセッションは、アップグレード後に **Archived sessions** の下に表示されます。

155 160 


212 メイン Claude セッションにはサイドバーを使用し、サイドタスク用に追加タブを開きます。Claude は優先される場所を記憶します。アクティビティバーのセッションリストアイコンは Claude パネルとは別です。セッションリストは常にアクティビティバーに表示されますが、Claude パネルアイコンは左側のサイドバーにドッキングされている場合にのみそこに表示されます。217 メイン Claude セッションにはサイドバーを使用し、サイドタスク用に追加タブを開きます。Claude は優先される場所を記憶します。アクティビティバーのセッションリストアイコンは Claude パネルとは別です。セッションリストは常にアクティビティバーに表示されますが、Claude パネルアイコンは左側のサイドバーにドッキングされている場合にのみそこに表示されます。

213</Tip>218</Tip>

214 219 

220**Developer: Reload Window** を実行するか VS Code を再起動した後、チャットがその会話とともに戻るかどうかは、それがどこで開かれていたかによって異なります。

221 

222* **エディタタブ**: 会話はそのタブとともに戻ります。

223* **サイドバー**: 過去 10 分以内にメッセージを送信したか Claude が応答した場合、会話は戻ります。戻らない場合は、[セッション履歴](#resume-past-conversations)から会話を再開してください。

224 

215<h3 id="run-multiple-conversations">225<h3 id="run-multiple-conversations">

216 複数の会話を実行する226 複数の会話を実行する

217</h3>227</h3>


266* **このプロジェクトのためにインストール**:プロジェクト協力者と共有(プロジェクトスコープ)276* **このプロジェクトのためにインストール**:プロジェクト協力者と共有(プロジェクトスコープ)

267* **ローカルにインストール**:このリポジトリのみ、あなただけ(ローカルスコープ)277* **ローカルにインストール**:このリポジトリのみ、あなただけ(ローカルスコープ)

268 278 

279<h3 id="share-a-plugin-install-link">

280 プラグインインストールリンクを共有する

281</h3>

282 

283特定のプラグインのインストールに直接誘導するリンクを送信するには、拡張機能の `install-plugin` URL を使用します。これを開くと VS Code が起動またはフォーカスされ、Claude Code パネルが開き、**プラグインを管理**ダイアログがそのプラグインのスコープ選択で開きます。ユーザーがスコープを選択するまで、何もインストールされません。プラグインのマーケットプレイスが Claude Code でまだ設定されていない場合、ダイアログはまずそれを追加するよう求めます。

284 

285```text theme={null}

286vscode://anthropic.claude-code/install-plugin?plugin=code-review&marketplace=anthropics/claude-plugins-official

287```

288 

289URL は 2 つのクエリパラメータを受け取ります。

290 

291| パラメータ | 説明 |

292| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

293| `plugin` | マーケットプレイスにリストされているプラグインの名前。必須です。 |

294| `marketplace` | プラグインの出所。[マーケットプレイスタブ](#manage-marketplaces)が受け入れる任意の形式(GitHub の `owner/repo` または git URL など)。`&` などの文字が含まれている場合は URL エンコードしてください。省略した場合は `anthropics/claude-plugins-official` がデフォルトになります。 |

295 

2962 つのケースでは、スコープ選択ではなくダイアログのメッセージで終了します。

297 

298* **マーケットプレイスにその名前のプラグインがリストされていない**:ダイアログはプラグインが見つからなかったことを報告します。`plugin` の値をマーケットプレイスのリストと照合してください。

299* **プラグインが既にインストールされている**:ダイアログはそのことを示し、何も変わりません。

300 

301GitHub README、issue、およびその他の Markdown ホストの一部は、スキームが `http` または `https` ではないリンクを削除するため、`vscode://` リンクはプレーンテキストとしてレンダリングされます。これらのホストではコードブロック内に URL を配置してください。[リンクがクリック可能ではなくプレーンテキストとしてレンダリングされる](/docs/ja/deep-links#the-link-renders-as-plain-text-instead-of-being-clickable)は `claude-cli://` リンクについて説明しています。

302 

269<h3 id="manage-marketplaces">303<h3 id="manage-marketplaces">

270 マーケットプレイスを管理する304 マーケットプレイスを管理する

271</h3>305</h3>


276* 更新アイコンをクリックして、マーケットプレイスのプラグインリストを更新します310* 更新アイコンをクリックして、マーケットプレイスのプラグインリストを更新します

277* ゴミ箱アイコンをクリックして、マーケットプレイスを削除します311* ゴミ箱アイコンをクリックして、マーケットプレイスを削除します

278 312 

279変更を加えた後、Claude Code を再起動して変更を適用するようにバナーが表示されます。313ダイアログで加えたプラグイン変更は、その VS Code ウィンドウで開いている Claude Code セッションにすぐに適用されます。ダイアログを開いたセッションがプラグインをリロードできない場合、ダイアログは再度試すか、そのセッションで Claude を再起動するオプションを提供します。

280 314 

281<Note>315<Note>

282 VS Code のプラグイン管理は、内部的に同じ CLI コマンドを使用しています。拡張機能で設定したプラグインとマーケットプレイスは CLI でも利用でき、その逆も同様です。316 VS Code のプラグイン管理は、内部的に同じ CLI コマンドを使用しています。拡張機能で設定したプラグインとマーケットプレイスは CLI でも利用でき、その逆も同様です。


382vscode://anthropic.claude-code/open?prompt=review%20my%20changes416vscode://anthropic.claude-code/open?prompt=review%20my%20changes

383```417```

384 418 

385VS Code タブの代わりにターミナルセッションを起動するには、CLI の `claude-cli://` ハンドラーを使用します。[リンクからセッションを起動する](/docs/ja/deep-links) を参照してください。419拡張機能はまた `vscode://anthropic.claude-code/install-plugin` を処理します。これは[1 つのプラグインでプラグインダイアログを開きます](#share-a-plugin-install-link)。VS Code タブの代わりにターミナルセッションを起動するには、CLI の `claude-cli://` ハンドラーを使用します。[リンクからセッションを起動する](/docs/ja/deep-links) を参照してください。

386 420 

387<h2 id="configure-settings">421<h2 id="configure-settings">

388 設定を構成する422 設定を構成する


412| `useCtrlEnterToSend` | `false` | Enter の代わりに Ctrl/Cmd+Enter を使用してプロンプトを送信します |446| `useCtrlEnterToSend` | `false` | Enter の代わりに Ctrl/Cmd+Enter を使用してプロンプトを送信します |

413| `enableNewConversationShortcut` | `false` | Cmd/Ctrl+N を有効にして新しい会話を開始します |447| `enableNewConversationShortcut` | `false` | Cmd/Ctrl+N を有効にして新しい会話を開始します |

414| `enableReopenClosedSessionShortcut` | `true` | Cmd/Ctrl+Shift+T を使用して、最近閉じた Claude セッションタブを再度開きます。最後に閉じたタブが Claude セッションではなかった場合、ショートカットは VS Code の通常の再度開く閉じたエディターコマンドを実行します。 |448| `enableReopenClosedSessionShortcut` | `true` | Cmd/Ctrl+Shift+T を使用して、最近閉じた Claude セッションタブを再度開きます。最後に閉じたタブが Claude セッションではなかった場合、ショートカットは VS Code の通常の再度開く閉じたエディターコマンドを実行します。 |

449| `archiveInactiveSessions` | `14` | この日数アクティビティがない場合、[セッションを自動的にアーカイブします](#resume-past-conversations):`1`、`2`、`7`、または `14`。`0` に設定してオフにします。Claude Code v2.1.265 以降が必要です |

415| `hideOnboarding` | `false` | オンボーディングチェックリスト(卒業帽アイコン)を非表示にします |450| `hideOnboarding` | `false` | オンボーディングチェックリスト(卒業帽アイコン)を非表示にします |

416| `focusView` | `false` | ツール呼び出し、ツール結果、思考を展開可能な行の背後に非表示にして、プロンプトと Claude の応答を残します。Claude の最新のやることリストは表示されたままです。これには Claude Code v2.1.225 以降が必要です。コマンドメニューから Focus ビューを切り替えることもできます。Claude Code v2.1.221 以降が必要です |451| `focusView` | `false` | ツール呼び出し、ツール結果、思考を展開可能な行の背後に非表示にして、プロンプトと Claude の応答を残します。Claude の最新のやることリストは表示されたままです。これには Claude Code v2.1.225 以降が必要です。コマンドメニューから Focus ビューを切り替えることもできます。Claude Code v2.1.221 以降が必要です |

417| `respectGitIgnore` | `true` | ファイル検索から .gitignore パターンを除外します |452| `respectGitIgnore` | `true` | ファイル検索から .gitignore パターンを除外します |

web-quickstart.md +45 −29

Details

70 </Step>70 </Step>

71 71 

72 <Step title="GitHub でサインイン">72 <Step title="GitHub でサインイン">

73 サインイン後、claude.ai/code は GitHub を接続するよう促します。プロンプトに従うと、claude.ai/code は GitHub の認可ページに移動します。認可リクエストを承認すると、GitHub は claude.ai/code に戻ります。Cloud セッションは既存の GitHub リポジトリで機能し、GitHub アカウントが見ることができるすべてのリポジトリに到達できます。新しいプロジェクトを開始するには、まず [GitHub に空のリポジトリを作成](https://github.com/new) してください。73 サインイン後、claude.ai/code は GitHub を接続するよう促します。プロンプトに従うと、claude.ai/code は GitHub の認可ページに移動します。認可リクエストを承認すると、GitHub は claude.ai/code に戻ります。Cloud セッションは既存の GitHub リポジトリで機能します。新しいプロジェクトを開始するには、まず [GitHub に空のリポジトリを作成](https://github.com/new) してください。

74 74 

75 Quick web setup がオフの場合(Team および Enterprise プランではデフォルトでオフ)、claude.ai/code はまだインストールされていない場合、リポジトリに Claude GitHub App をインストールするよう求めます。CI の失敗と pull request のレビューコメントに Claude が応答できる [Auto-fix](/docs/ja/claude-code-on-the-web#auto-fix-pull-requests) が必要な場合はインストールしてください。それ以外の場合は **Skip** をクリックします。どちらの場合でも、セッションは同じリポジトリに到達できます。75 この接続により、セッションは任意のパブリックリポジトリをクローンできますが、プライベートリポジトリで機能するのは Claude GitHub App がインストールされている場合のみです。[App をインストール](https://github.com/apps/claude/installations/new) してください。使用したいプライベートリポジトリを持つ各 GitHub アカウントまたは Organization に対してインストールします。GitHub Organization では、Organization オーナーがインストールを承認する必要がある場合があります。App をインストールすると、[Auto-fix](/docs/ja/claude-code-on-the-web#auto-fix-pull-requests) も有効になります。これにより、Claude はこれらのリポジトリの pull request の CI 失敗とレビューコメントに応答できます。

76 

77 オンボーディングがこの時点で App をインストールするよう促し、後で実行したい場合は、**Skip** をクリックします。

76 </Step>78 </Step>

77 79 

78 <Step title="デフォルト環境をセットアップ">80 <Step title="デフォルト環境をセットアップ">


91 ターミナルから接続93 ターミナルから接続

92</h3>94</h3>

93 95 

94既に GitHub CLI(`gh`)を使用している場合は、ブラウザを開かずに Claude Code on the web をセットアップできます。これには [Claude Code CLI](/docs/ja/quickstart) が必要です。`/web-setup` を実行すると、Claude Code はローカルの `gh` トークンを読み取り、claude.ai アカウントにリンクし、cloud 環境がない場合は **Default** cloud 環境を作成します。Team および Enterprise プランでは、`/web-setup` は Owner が [Quick web setup](/docs/ja/claude-code-on-the-web#github-authentication-options) をオンにした後にのみ利用可能です。96既に GitHub CLI(`gh`)を使用している場合は、ブラウザを開かずに Claude Code on the web をセットアップできます。これには [Claude Code CLI](/docs/ja/quickstart) が必要です。Team および Enterprise プランでは、`/web-setup` は Owner が [Quick web setup](/docs/ja/claude-code-on-the-web#github-authentication-options) をオンにした後にのみ利用可能です。

97 

98`/web-setup` を実行すると、Claude Code は `gh auth token` が出力するトークンを読み取り、確認を求め、トークンを Anthropic に送信します。Anthropic はそれを claude.ai アカウントで暗号化して保存し、cloud セッションはそれを GitHub アクセスに使用します。これは [削除](#remove-the-web-setup-token) するまで続きます。Cloud セッションはそのトークンがアクセスできる任意のリポジトリにアクセスでき、Claude GitHub App をインストールする必要はありません。

99 

100既にブラウザで GitHub を接続している場合、`/web-setup` は続行すると cloud セッションの接続が置き換わることを警告します。

95 101 

96<Note>102<Note>

97 [Zero Data Retention](/docs/ja/zero-data-retention) が有効な Organization は `/web-setup` または他の cloud セッション機能を使用できません。GitHub CLI がインストールされていない、または認証されていない場合、Claude Code はブラウザオンボーディングフローを開きます。103 [Zero Data Retention](/docs/ja/zero-data-retention) が有効な Organization は `/web-setup` または他の cloud セッション機能を使用できません。GitHub CLI がインストールされていない、または認証されていない場合、Claude Code はブラウザオンボーディングフローを開きます。


117 /web-setup123 /web-setup

118 ```124 ```

119 125 

120 これにより、`gh` トークンが Claude アカウントに同期されます。成功すると、Claude Code は `Connected as <your-github-username>` を出力し、[claude.ai/code](https://claude.ai/code) をブラウザで開きます。cloud 環境がまだない場合、`/web-setup` は Trusted ネットワークアクセスと setup script なしで環境を作成します。後で [環境を編集したり、変数を追加](/docs/ja/cloud-environments#configure-your-environment) できます。`/web-setup` が完了したら、[`--cloud`](/docs/ja/claude-code-on-the-web#from-terminal-to-web) でターミナルから cloud セッションを開始するか、[`/schedule`](/docs/ja/routines) で定期的なタスクをセットアップできます。126 `gh` トークンを Claude アカウントに送信するプロンプトを確認します。成功すると、Claude Code は `Connected as <your-github-username>` を出力し、[claude.ai/code](https://claude.ai/code) をブラウザで開きます。cloud 環境がまだない場合、`/web-setup` は Trusted ネットワークアクセスと setup script なしで環境を作成します。後で [環境を編集したり、変数を追加](/docs/ja/cloud-environments#configure-your-environment) できます。`/web-setup` が完了したら、[`--cloud`](/docs/ja/claude-code-on-the-web#from-terminal-to-web) でターミナルから cloud セッションを開始するか、[`/schedule`](/docs/ja/routines) で定期的なタスクをセットアップできます。

121 </Step>127 </Step>

122</Steps>128</Steps>

123 129 

130<h4 id="remove-the-web-setup-token">

131 `/web-setup` トークンを削除

132</h4>

133 

134Claude アカウントからトークンを削除するには、[claude.ai/customize/connectors](https://claude.ai/customize/connectors) で GitHub を切断します。切断すると、ブラウザから来たか `/web-setup` から来たかに関わらず、cloud セッションが使用する GitHub 認証情報が削除されるため、cloud セッションは再度接続するまで GitHub アクセスを失います。ローカルの `gh` はサインインしたままで、トークンは GitHub で有効なままです。

135 

136トークン自体を無効にするには、GitHub でそれを取り消します。ブラウザを通じて `gh` にサインインした場合、トークンは GitHub の [**Settings > Applications > Authorized OAuth Apps**](https://github.com/settings/applications) の **GitHub CLI** エントリに属し、そのエントリを取り消すと、マシン上の GitHub CLI もサインアウトします。Cloud セッションは `gh auth login` と `/web-setup` を再度実行するまで GitHub アクセスを失います。

137 

124<h2 id="start-a-task">138<h2 id="start-a-task">

125 タスクを開始139 タスクを開始

126</h2>140</h2>


204 GitHub 接続後にリポジトリが表示されない218 GitHub 接続後にリポジトリが表示されない

205</h3>219</h3>

206 220 

207cloud セッションは、接続された GitHub アカウントが見ることができるすべてのリポジトリを使用できます。Claude GitHub App がインストールされているリポジトリに関係なく。リポジトリが見つからない場合は、接続された GitHub アカウントが GitHub でそれにアクセスできることを確認してください。また、リポジトリの [Auto-fix](/docs/ja/claude-code-on-the-web#auto-fix-pull-requests) が必要な場合は、App をインストールしてください:github.com で **Settings → Applications → Claude → Configure** を開き、リポジトリが **Repository access** の下にリストされていることを確認します。Private リポジトリは public リポジトリと同じ認可が必要です。221ブラウザで GitHub を接続した場合、セッションはすべてのパブリックリポジトリをクローンできますが、プライベートリポジトリは Claude GitHub App がそれを所有するアカウントまたは組織にインストールされており、インストールのリポジトリアクセスにそれが含まれている場合にのみ表示されます。[Claude GitHub App をインストール](https://github.com/apps/claude/installations/new)するか、組織の所有者にインストールまたは承認を依頼してください。

222 

223`/web-setup` で接続した場合、セッションは `gh` トークンがアクセスできるすべてのリポジトリに到達できます。シェルで `gh repo view OWNER/REPO` を実行して、GitHub CLI ログインがリポジトリを見ることができることを確認し、接続以降に `gh` アカウントを切り替えた場合は `/web-setup` を再度実行してください。

208 224 

209<h3 id="the-page-only-shows-a-github-login-button">225<h3 id="the-page-only-shows-a-github-login-button">

210 ページに GitHub ログインボタンのみが表示される226 ページに GitHub ログインボタンのみが表示される

211</h3>227</h3>

212 228 

213Cloud セッションには接続された GitHub アカウントが必要です。上記のブラウザフローで接続するか、GitHub CLI を使用している場合はターミナルから `/web-setup` を実行します。GitHub をまったく接続したくない場合は、[Remote Control](/docs/ja/remote-control) を参照して、独自のマシンで Claude Code を実行し、ウェブから監視します。229クラウドセッションには接続された GitHub アカウントが必要です。上記のブラウザフローで接続するか、GitHub CLI を使用する場合はターミナルから `/web-setup` を実行してください。GitHub をまったく接続したくない場合は、[Remote Control](/docs/ja/remote-control) を参照して、自分のマシンで Claude Code を実行し、ウェブから監視してください。

214 230 

215<h3 id="not-available-for-the-selected-organization">231<h3 id="not-available-for-the-selected-organization">

216 「Not available for the selected organization」232 「選択した組織では利用できません」

217</h3>233</h3>

218 234 

219Enterprise Organization では、Owner が Claude Code on the web を有効にする必要がある場合があります。Anthropic アカウントチームに連絡してください。235エンタープライズ組織では、所有者が Claude Code をウェブで有効にする必要がある場合があります。Anthropic アカウントチームにお問い合わせください。

220 236 

221<h3 id="/web-setup-says-not-signed-in-to-claude">237<h3 id="/web-setup-says-not-signed-in-to-claude">

222 `/web-setup` が「Not signed in to Claude」と表示される238 `/web-setup` が「Claude にサインインしていません」と表示される

223</h3>239</h3>

224 240 

225`/web-setup` が「Not signed in to Claude. Run /login first.」と応答する場合、CLI は有効な claude.ai サインインを持っていません。これは以前のサインインが期限切れになった場合にも発生する可能性があります。`/login` を実行して、claude.ai アカウントでサインインしてから、`/web-setup` を再度実行します。241`/web-setup` が「Not signed in to Claude. Run /login first.」と応答する場合、CLI には有効な claude.ai サインインがありません。これは以前のサインインの有効期限が切れた場合にも発生する可能性があります。`/login` を実行し、claude.ai アカウントでサインインしてから、`/web-setup` を再度実行してください。

226 242 

227<h3 id="/web-setup-warns-that-your-token-doesn’t-have-the-workflow-scope">243<h3 id="/web-setup-warns-that-your-token-doesn’t-have-the-workflow-scope">

228 `/web-setup` が、トークンに `workflow` スコープがないことを警告する244 `/web-setup` がトークンに `workflow` スコープがないことを警告する

229</h3>245</h3>

230 246 

231`/web-setup` が GitHub CLI トークンに `workflow` スコープがないと表示される場合、続行できますが、GitHub はそのトークンで行われた一部のプッシュを拒否する可能性があります。たとえば、GitHub Actions ワークフローファイルを変更するプッシュなどです。スコープを追加するには、シェルで `gh auth refresh -s workflow` を実行してから、`/web-setup` を再度実行します。247`/web-setup` が GitHub CLI トークンに `workflow` スコープがないと表示される場合、続行できますが、GitHub はそのトークンで行われた一部のプッシュ(GitHub Actions ワークフローファイルを変更するプッシュなど)を拒否する可能性があります。スコープを追加するには、シェルで `gh auth refresh -s workflow` を実行してから、`/web-setup` を再度実行してください。

232 248 

233<h3 id="web-setup-shows-no-commands-match-or-unknown-command">249<h3 id="web-setup-shows-no-commands-match-or-unknown-command">

234 `/web-setup` が「No commands match」または「Unknown command」を表示する250 `/web-setup` が「No commands match」または「Unknown command」を表示する

235</h3>251</h3>

236 252 

237`/web-setup` はシェルではなく Claude Code CLI 内で実行されます。まず `claude` を起動し、プロンプトで `/web-setup` を入力します。253`/web-setup` は Claude Code CLI 内で実行され、シェルではありません。まず `claude` を起動してから、プロンプトで `/web-setup` と入力してください。

238 254 

239Claude Code 内で入力してコマンドメニューが `/web-setup` に対して「No commands match "/web-setup"」を表示するか、送信すると「Unknown command: /web-setup」が返される場合、要件が満たされていないため、コマンドは非表示になっています。原因は通常、API キーまたはサードパーティプロバイダーではなく claude.ai サブスクリプションで認証されていることです。`/login` を実行して、claude.ai アカウントでサインインします。255Claude Code 内に入力した場合、コマンドメニューが「No commands match "/web-setup"」を表示するか、送信すると「Unknown command: /web-setup」が返される場合、要件が満たされていないため、コマンドは非表示になっています。通常の原因は、claude.ai サブスクリプションではなく API キーまたはサードパーティプロバイダーで認証されていることです。`/login` を実行して claude.ai アカウントでサインインしてください。

240 256 

241Team および Enterprise プランでは、コマンドはデフォルトで非表示になっています:[Quick web setup toggle](/docs/ja/claude-code-on-the-web#github-authentication-options) は Owner がオンにするまでオフになっています。オフになっている間は、[ブラウザから GitHub を接続](#connect-github) してください。管理者が組織の Claude Code on the web を無効にした場合、またはエンタープライズ組織が [Zero Data Retention](/docs/ja/zero-data-retention) を有効にしている場合、コマンドも非表示になります。これにより Claude Code on the web は利用できなくなります。257Team および Enterprise プランでは、コマンドはデフォルトで非表示になっています。[Quick web setup トグル](/docs/ja/claude-code-on-the-web#github-authentication-options)は、所有者がオンにするまでオフになっています。オフの間は、代わりに[ブラウザから GitHub を接続](#connect-github)してください。管理者が組織の Claude Code をウェブで無効にした場合、または Enterprise 組織が [Zero Data Retention](/docs/ja/zero-data-retention) を有効にしている場合(Claude Code をウェブで利用できなくする)、コマンドも非表示になります。

242 258 

243<h3 id="could-not-create-a-cloud-environment-or-no-cloud-environment-available-when-using-cloud">259<h3 id="could-not-create-a-cloud-environment-or-no-cloud-environment-available-when-using-cloud">

244 `--cloud` を使用する場合に「Could not create a cloud environment」または「No cloud environment available」260 `--cloud` を使用する場合に「Could not create a cloud environment」または「No cloud environment available」が表示される

245</h3>261</h3>

246 262 

247Remote セッション機能は、cloud 環境がない場合、デフォルトの cloud 環境を自動的に作成します。「Could not create a cloud environment」が表示される場合、自動作成に失敗しました。「No cloud environment available」が表示される場合、CLI は自動作成より前のものです。どちらの場合でも、Claude Code CLI で `/web-setup` を実行するか、[environment selector](/docs/ja/cloud-environments#configure-your-environment) から [claude.ai/code](https://claude.ai/code) で環境を追加します。263リモートセッション機能は、環境がない場合、デフォルトのクラウド環境を自動的に作成します。「Could not create a cloud environment」が表示される場合、自動作成に失敗しました。「No cloud environment available」が表示される場合、CLI は自動作成より前のバージョンです。どちらの場合でも、Claude Code CLI で `/web-setup` を実行するか、[claude.ai/code](https://claude.ai/code) の[環境セレクター](/docs/ja/cloud-environments#configure-your-environment)から環境を追加してください。

248 264 

249<h3 id="setup-script-failed">265<h3 id="setup-script-failed">

250 Setup script が失敗266 セットアップスクリプトが失敗した

251</h3>267</h3>

252 268 

253Setup script は 0 以外のステータスで終了し、セッションの開始をブロックします。一般的な原因:269セットアップスクリプトがゼロ以外のステータスで終了し、セッションの開始がブロックされました。一般的な原因は以下の通りです。

254 270 

255* レジストリが [network access level](/docs/ja/cloud-environments#access-levels) にないため、パッケージのインストールに失敗しました。`Trusted` はほとんどのパッケージマネージャーをカバーします。`None` はすべてをブロックします。271* パッケージインストールが失敗しました。レジストリが[ネットワークアクセスレベル](/docs/ja/cloud-environments#access-levels)にないためです。`Trusted` はほとんどのパッケージマネージャーをカバーしており、`None` はすべてをブロックします。

256* スクリプトは新規クローンに存在しないファイルまたはパスを参照しています。272* スクリプトが新しいクローンに存在しないファイルまたはパスを参照しています。

257* ローカルで機能するコマンドは Ubuntu で異なる呼び出しが必要です。273* ローカルで機能するコマンドが Ubuntu では異なる呼び出しが必要です。

258 274 

259デバッグするには、スクリプトの上部に `set -x` を追加して、どのコマンドが失敗したかを確認します。重要でないコマンドの場合は、`|| true` を追加してセッション開始をブロックしないようにします。275デバッグするには、スクリプトの先頭に `set -x` を追加して、どのコマンドが失敗したかを確認してください。重要でないコマンドの場合は、セッション開始をブロックしないように `|| true` を追加してください。

260 276 

261<h3 id="new-sessions-hang-or-time-out-during-setup">277<h3 id="new-sessions-hang-or-time-out-during-setup">

262 新しいセッションがセットアップ中にハングするか、タイムアウトする278 新しいセッションがセットアップ中にハングするか、タイムアウトする

263</h3>279</h3>

264 280 

265新しいセッションが setup script ステップで停止するか、スクリプトが完了する前に一般的なコンテナエラーで失敗する場合、スクリプトは [environment cache](/docs/ja/cloud-environments#environment-caching) を構築するための約 5 分間の時間予算を超えている可能性があります。大きな Docker イメージの取得、完全な依存関係ツリーの同期、またはモデルの重みのダウンロードなどの重い手順は、特に 1 つずつ実行される場合、合計を制限を超えることがよくあります。281新しいセッションがセットアップスクリプトステップで停止するか、スクリプトが完了する前に一般的なコンテナエラーで失敗する場合、スクリプトは[環境キャッシュ](/docs/ja/cloud-environments#environment-caching)を構築するための約 5 分間の時間予算を超えている可能性があります。大きな Docker イメージのプル、完全な依存関係ツリーの同期、モデルの重みのダウンロードなどの重い手順は、特に連続して実行される場合、合計を制限を超えることがよくあります。

266 282 

267これを修正するには、スクリプトをトリミングして、5 分以内に確実に完了するようにします:283これを修正するには、スクリプトを調整して、5 分以内に確実に完了するようにしてください。

268 284 

269* `&` と最終的な `wait` を使用して独立したインストールを並列で実行し、それらを順序立てて実行する代わりに。285* `&` と最終的な `wait` を使用して独立したインストールを並列で実行し、順序に実行する代わりに実行します。

270* 最大のダウンロードを setup script から [SessionStart hook](/docs/ja/cloud-environments#setup-scripts-vs-sessionstart-hooks) に移動して、バックグラウンドで起動するため、セッションは完了中に使用可能になります。286* 最大のダウンロードをセットアップスクリプトから[SessionStart hook](/docs/ja/cloud-environments#setup-scripts-vs-sessionstart-hooks)に移動して、バックグラウンドで起動し、セッションが完了中に使用可能になるようにします。

271* setup script から長い再試行スリープを削除します。停止した再試行ループは予算に対してカウントされるためです。287* セットアップスクリプトから長い再試行スリープを削除してください。停止した再試行ループは予算に対してカウントされるためです。

272 288 

273<h3 id="session-keeps-running-after-closing-the-tab">289<h3 id="session-keeps-running-after-closing-the-tab">

274 タブを閉じた後もセッションが実行され続ける290 タブを閉じた後もセッションが実行され続ける

275</h3>291</h3>

276 292 

277これは仕様です。タブを閉じたり、移動したりしてもセッションは停止しません。Claude が現在のタスクを完了するまでバックグラウンドで実行され、その後アイドル状態になります。サイドバーから、セッションをリストから非表示にするために [archive a session](/docs/ja/claude-code-on-the-web#archive-sessions) するか、永久に削除するために [delete it](/docs/ja/claude-code-on-the-web#delete-sessions) できます。293これは仕様です。タブを閉じたり、移動したりしてもセッションは停止しません。Claude が現在のタスクを完了するまでバックグラウンドで実行され続け、その後アイドル状態になります。サイドバーから、セッションをリストから非表示にするために[セッションをアーカイブ](/docs/ja/claude-code-on-the-web#archive-sessions)するか、永続的に削除するために[削除](/docs/ja/claude-code-on-the-web#delete-sessions)できます。

278 294 

279<h2 id="next-steps">295<h2 id="next-steps">

280 次のステップ296 次のステップ

whats-new/2026-w29.md +70 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# 第 29 週・2026 年 7 月 13~17 日

6 

7> MCP コネクタを通じてライブデータを公開アーティファクトに取り込み、新しいスクリーンリーダーモードで Claude Code をスクリーンリーダーと共に使用します。

8 

9<div className="digest-meta">

10 <span>リリース <a href="/docs/en/changelog#2-1-207">v2.1.207 → v2.1.212</a></span>

11 <span>2 つの機能・7 月 13~17 日</span>

12</div>

13 

14<div className="digest-feature">

15 <div className="digest-feature-header">

16 <span className="digest-feature-title">アーティファクトが MCP コネクタを呼び出す</span>

17 <span className="digest-feature-pill">web</span>

18 </div>

19 

20 <p className="digest-feature-lede">公開されたアーティファクトは、誰かがそれを表示するたびに MCP コネクタを呼び出すことができるようになりました。これにより、ダッシュボードはライブデータを表示し、それを構築したセッションからのスナップショットではなく、オンデマンドでアクションを実行できます。各呼び出しは、表示しているアカウント独自の接続を通じて実行され、ページの最初のコネクタ呼び出しの前に、表示者がアクセスを承認します。今週は、公開共有リンク、Team および Enterprise プランでの共有編集用のエディターロール、Claude Tag セッションから作成されたアーティファクトも追加されます。</p>

21 

22 <Frame>

23 <video autoPlay muted loop playsInline className="w-full" src="https://mintcdn.com/claude-code/ItzF3QVI6L0QypjJ/images/whats-new/artifacts-mcp.mp4?fit=max&auto=format&n=ItzF3QVI6L0QypjJ&q=85&s=ff8b81ed52b26c773899dc28cec959e6" data-path="images/whats-new/artifacts-mcp.mp4" />

24 </Frame>

25 

26 <p className="digest-feature-try">プロンプトでコネクタと必要なデータを指定します:</p>

27 

28 ```text title="Claude Code" wrap theme={null}

29 Build a dashboard artifact of open pull requests that pulls the live list through my GitHub connector when the page loads.

30 ```

31 

32 <a className="digest-feature-link" href="/docs/ja/artifacts#pull-live-data-with-mcp-connectors">MCP コネクタでライブデータを取得する</a>

33</div>

34 

35<div className="digest-feature">

36 <div className="digest-feature-header">

37 <span className="digest-feature-title">スクリーンリーダーモード</span>

38 <span className="digest-feature-pill">CLI</span>

39 </div>

40 

41 <p className="digest-feature-lede">スクリーンリーダーモードは、ビジュアルターミナルインターフェースをプレーンな線形テキストに置き換えます。ボックス、スピナー、インプレース再描画の代わりに、Claude Code はラベル付きの行を出力し、VoiceOver や NVDA などのスクリーンリーダーが順番に読み上げるため、権限を承認し、出力を最初から最後まで確認できます。セッションごとにフラグで有効にするか、<code>CLAUDE\_AX\_SCREEN\_READER</code> 環境変数でシェルごとに有効にするか、<code>axScreenReader</code> 設定でどこでも有効にできます。</p>

42 

43 <p className="digest-feature-try">スクリーンリーダーモードでセッションを開始します:</p>

44 

45 ```bash terminal theme={null}

46 claude --ax-screen-reader

47 ```

48 

49 <a className="digest-feature-link" href="/docs/ja/accessibility#turn-on-screen-reader-mode">スクリーンリーダーモードを有効にする</a>

50</div>

51 

52<div className="digest-wins">

53 <p className="digest-wins-title">その他の改善</p>

54 

55 <div className="digest-wins-grid">

56 <div><code>/fork</code> は、会話を <code>claude agents</code> に独自の行を持つ新しいバックグラウンドセッションにコピーし、作業を続けることができます。以前に起動していたセッション内フォークサブエージェントは、現在 <code>/subtask</code> になっています</div>

57 <div><a href="/docs/ja/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry">Auto モード</a>は、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry で <code>CLAUDE\_CODE\_ENABLE\_AUTO\_MODE</code> オプトインが不要になりました。管理者は <code>disableAutoMode</code> で無効にできます</div>

58 <div>2 分以上実行される MCP ツール呼び出しは、セッションが使用可能な状態を保つため、自動的にバックグラウンドに移動します。<code>CLAUDE\_CODE\_MCP\_AUTO\_BACKGROUND\_MS</code> でしきい値を調整または無効にできます</div>

59 <div>新しい <code>claude auto-mode reset</code> はデフォルトの auto-mode 設定を復元し、`--yes` は確認プロンプトをスキップします</div>

60 <div>新しい <a href="/docs/ja/corporate-launcher">corporate launcher</a> サポート:<code>CLAUDE\_CODE\_PROCESS\_WRAPPER</code> または <code>processWrapper</code> 設定は、Claude Code がその独自のバイナリから起動するプロセス(バックグラウンドサービスやエージェントビューセッションなど)を、必須のラッパー実行可能ファイルを通じて実行します</div>

61 <div><code>vimInsertModeRemaps</code> 設定は、vim モードで <code>jj</code> などの 2 キーの挿入モードシーケンスを Escape にマップします</div>

62 <div>`--forward-subagent-text` と <code>CLAUDE\_CODE\_FORWARD\_SUBAGENT\_TEXT</code> は、サブエージェントテキストと思考ブロックを <a href="/docs/ja/headless">stream-json 出力</a>に含めます</div>

63 <div>セッション全体のキャップは暴走ループを停止します。WebSearch 呼び出しとサブエージェント生成はそれぞれデフォルトで 200 に設定され、<code>CLAUDE\_CODE\_MAX\_WEB\_SEARCHES\_PER\_SESSION</code> と <code>CLAUDE\_CODE\_MAX\_SUBAGENTS\_PER\_SESSION</code> で調整可能です</div>

64 <div>「常に許可」権限ルールはリポジトリルートに保存されるため、git worktree で付与された承認はセッションと worktree 全体で保持されます</div>

65 <div>Amazon Bedrock、Google Cloud の Agent Platform、AWS 上の Claude Platform は、デフォルトで Claude Opus 4.8 になりました</div>

66 <div>折りたたまれたツール概要行は、ライブ経過時間カウンターを表示するため、長時間実行されるツール呼び出しは目に見えてティックし、スタックしているように見えません</div>

67 </div>

68</div>

69 

70[v2.1.207~v2.1.212 の完全なチェンジログ →](/docs/en/changelog#2-1-207)

whats-new/2026-w30.md +91 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# Week 30 · 7月20~24日、2026年

6 

7> Opus 5 が Opus のデフォルトモデルになり、Claude Code Desktop に iOS Simulator ペインが追加され、Claude Security プラグインがコードの脆弱性をスキャンします。

8 

9<div className="digest-meta">

10 <span>Releases <a href="/docs/en/changelog#2-1-214">v2.1.214 → v2.1.219</a></span>

11 <span>3 features · 7月20~24日</span>

12</div>

13 

14<div className="digest-feature">

15 <div className="digest-feature-header">

16 <span className="digest-feature-title">Claude Opus 5</span>

17 <span className="digest-feature-pill">new model</span>

18 </div>

19 

20 <p className="digest-feature-lede">Claude Opus 5 は Claude Code の新しいデフォルト Opus モデルです。Max、Team Premium、Enterprise 従量課金制、Anthropic API、AWS 上の Claude Platform、Amazon Bedrock、Google Cloud の Agent Platform でデフォルトになります。Anthropic API と Max、Team、Enterprise プランでは、Opus 5 は <a href="/docs/ja/model-config#extended-context">1M トークンのコンテキストウィンドウ</a>で実行されます。Amazon Bedrock と Google Cloud の Agent Platform では、1M モデルバリアントを選択してください。Fast mode は Opus 5 に移行し、$10/$50 per MTok になります。v2.1.219 以降が必要です。</p>

21 

22 <Frame>

23 <video autoPlay muted loop playsInline className="w-full" src="https://mintcdn.com/claude-code/N3yEaTYPXMXFrF6k/images/whats-new/opus-5.mp4?fit=max&auto=format&n=N3yEaTYPXMXFrF6k&q=85&s=8536b1cb3180e539008f39930403e47b" data-path="images/whats-new/opus-5.mp4" />

24 </Frame>

25 

26 <p className="digest-feature-try">名前で Opus 5 に切り替えるか、モデルピッカーから選択してください:</p>

27 

28 ```text Claude Code theme={null}

29 > /model claude-opus-5

30 ```

31 

32 <a className="digest-feature-link" href="/docs/ja/model-config#available-models">Model configuration</a>

33</div>

34 

35<div className="digest-feature">

36 <div className="digest-feature-header">

37 <span className="digest-feature-title">Claude Code Desktop の iOS Simulator</span>

38 <span className="digest-feature-pill">Desktop</span>

39 </div>

40 

41 <p className="digest-feature-lede">macOS 上の Claude Code Desktop に iOS Simulator ペインが追加されました。Pro、Max、Team プランでパブリックベータ版として利用できます。Claude がシミュレータでアプリをビルド、起動、またはチェックするとき、ペインは会話の横に開き、デバイス画面をライブストリーミングするため、Claude がアプリをタップして変更を確認するのを見たり、デバイスを自分で操作したりできます。Xcode(iOS プラットフォームがインストール済み)と Claude Desktop v1.24012.0 以降が必要です。</p>

42 

43 <Frame>

44 <img className="w-full" src="https://mintcdn.com/claude-code/N3yEaTYPXMXFrF6k/images/whats-new/ios-simulator.jpg?fit=max&auto=format&n=N3yEaTYPXMXFrF6k&q=85&s=6c88418ed14ed0fb12cc1af75b17f2ee" alt="Claude Code Desktop with the iOS Simulator pane showing an iPhone app next to the conversation" width="2048" height="1152" data-path="images/whats-new/ios-simulator.jpg" />

45 </Frame>

46 

47 <p className="digest-feature-try">Claude にアプリを実行またはテストするよう依頼すると、アプリが起動するときにペインが開きます:</p>

48 

49 ```text Claude Code theme={null}

50 > Build the app and run it in the simulator to check the onboarding flow.

51 ```

52 

53 <a className="digest-feature-link" href="/docs/ja/desktop-ios-simulator#run-your-app-in-the-simulator">Test iOS apps in the simulator</a>

54</div>

55 

56<div className="digest-feature">

57 <div className="digest-feature-header">

58 <span className="digest-feature-title">Claude Security プラグイン</span>

59 <span className="digest-feature-pill">plugin</span>

60 </div>

61 

62 <p className="digest-feature-lede">Claude Security プラグインは Claude Code セッション内でコードベースのマルチエージェント脆弱性スキャンを実行します。エージェントはアーキテクチャをマッピングし、脅威モデルを構築し、脆弱性を探し、すべての検出結果を独立して確認してから、<code>CLAUDE-SECURITY-\<timestamp>/</code> ディレクトリにレポートを書き込みます。リポジトリ全体またはブランチの差分、プルリクエスト、または単一のコミットのみをスキャンしてから、選択した検出結果をレビュー済みパッチに変換して自分で適用できます。</p>

63 

64 <p className="digest-feature-try">公式 Anthropic マーケットプレイスからプラグインをインストールし、<code>/reload-plugins</code> を実行してから、<code>/claude-security</code> でスキャンを開始してください:</p>

65 

66 ```text Claude Code theme={null}

67 > /plugin install claude-security@claude-plugins-official

68 ```

69 

70 <a className="digest-feature-link" href="/docs/ja/claude-security#scan-and-fix-your-codebase">Scan and fix your codebase</a>

71</div>

72 

73<div className="digest-wins">

74 <p className="digest-wins-title">その他の改善</p>

75 

76 <div className="digest-wins-grid">

77 <div><a href="/docs/ja/code-review#review-a-diff-locally"><code>/code-review</code></a> は独自のコンテキストウィンドウを持つバックグラウンドサブエージェントとして実行されるようになったため、レビュー作業は会話から外れ、完了時に検出結果が到着します</div>

78 <div><code>/verify</code>、<code>/code-review</code>、<code>/deep-research</code> は呼び出すときのみ実行されます。Claude は自動的に起動しなくなりました</div>

79 <div><a href="/docs/ja/interactive-mode#emoji-shortcodes">Emoji shortcodes</a> はプロンプト入力で自動補完されます。<code>:heart:</code> を入力して絵文字を挿入するか、<code>:</code> の後に 2 文字以上入力して候補を表示します。<code>emojiCompletionEnabled</code> でオフにできます</div>

80 <div><code>context: fork</code> を持つスキルは <a href="/docs/ja/skills#run-skills-in-a-subagent">バックグラウンドで実行</a>されるようになり、スキルのフロントマターで <code>background: false</code> を設定すると同じターンで結果を待ちます</div>

81 <div>セッションはデフォルトで最大 20 個のサブエージェントを同時に実行できます。<code>CLAUDE\_CODE\_MAX\_CONCURRENT\_SUBAGENTS</code> で <a href="/docs/ja/sub-agents#concurrent-subagent-limit">制限</a>を変更してください</div>

82 <div>`--max-budget-usd` はサブエージェントの上限を強制するようになりました。支出がそれに達すると、Claude はこれ以上起動できず、実行中のバックグラウンドサブエージェントは停止します</div>

83 <div>新しい <a href="/docs/ja/sandboxing#disable-filesystem-isolation"><code>sandbox.filesystem.disabled</code></a> 設定はファイルシステム分離をスキップしながらネットワーク出力制御を維持します</div>

84 <div>自動モードでは、危険な <code>rm</code> コマンド、バックグラウンドジョブ、疑わしい Windows パスのチェックは権限ダイアログを開かなくなります。自動モード分類器が判定します</div>

85 <div>Bash 権限チェックはより多くのシェル形式で失敗するようになりました。ファイルディスクリプタリダイレクト、Zsh 変数サブスクリプト(<code>\[\[ ]]</code> 比較内)、安全でないオプションを実行できる <code>help</code> と <code>man</code> 呼び出し、10,000 文字を超えるコマンドが含まれます</div>

86 <div><a href="/docs/ja/fast-mode">Fast mode</a> は Opus 4.7 をサポートしなくなりました。<code>/fast</code> は Opus 5 と Opus 4.8 に適用されるようになりました</div>

87 <div>長時間実行されるツール呼び出しは沈黙する代わりに定期的な進捗ハートビートを発行します</div>

88 </div>

89</div>

90 

91[Full changelog for v2.1.214–v2.1.219 →](/docs/en/changelog#2-1-214)

whats-new/2026-w32.md +103 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# Week 32 · 8月3日~7日、2026年

6 

7> Claude Code セッションが相互にメッセージを送信でき、自己ホスト環境がクラウドセッションをお客様のインフラストラクチャで実行でき、自動モードがデフォルトの権限モードになります。

8 

9<div className="digest-meta">

10 <span>リリース <a href="/docs/en/changelog#2-1-220">v2.1.220 → v2.1.224</a></span>

11 <span>3 つの機能 · 8月3日~7日</span>

12</div>

13 

14<div className="digest-feature">

15 <div className="digest-feature-header">

16 <span className="digest-feature-title">クロスセッションメッセージング</span>

17 <span className="digest-feature-pill">v2.1.224</span>

18 </div>

19 

20 <p className="digest-feature-lede">Claude Code セッションが相互にメッセージを送信できるようになりました。Claude は <code>ListAgents</code> ツールで他のセッションを検出し、<code>SendMessage</code> で送信します。これはお客様がそれを要求したときか、または 1 つのセッションでの変更が別のセッションが作業している内容に影響を与えた後など、独自に行われます。メッセージは Claude が別のセッション用に書いたテキストであり、お客様の会話履歴またはファイルではありません。macOS と Linux で利用可能です。v2.1.224 以降が必要です。</p>

21 

22 <Frame>

23 <video autoPlay muted loop playsInline className="w-full" src="https://mintcdn.com/claude-code/N3yEaTYPXMXFrF6k/images/whats-new/cross-session-messaging.mp4?fit=max&auto=format&n=N3yEaTYPXMXFrF6k&q=85&s=8f33c3390f78660a4a26dc980f46159f" data-path="images/whats-new/cross-session-messaging.mp4" />

24 </Frame>

25 

26 <p className="digest-feature-try">同じマシンで 2 つのセッションを開いた状態で、そのうちの 1 つに何かを渡すよう依頼してください:</p>

27 

28 ```text title="Claude Code" wrap theme={null}

29 Tell the session working on the payments API that users.name is now users.display_name

30 ```

31 

32 <p className="digest-feature-try">別のセッションには、Claude がメッセージを読んだら <code>Message from</code> 行が表示されます。<code>Ctrl+O</code> を押して展開してください。Claude が到達できるセッションを確認するには、<code>/list-agents</code> を実行してください。</p>

33 

34 <a className="digest-feature-link" href="/docs/ja/cross-session-messaging#message-another-session">別のセッションにメッセージを送信</a>

35</div>

36 

37<div className="digest-feature">

38 <div className="digest-feature-header">

39 <span className="digest-feature-title">自己ホスト環境</span>

40 <span className="digest-feature-pill">v2.1.224</span>

41 </div>

42 

43 <p className="digest-feature-lede">自己ホスト環境は Claude Code クラウドセッションをお客様の組織独自のインフラストラクチャで実行し、Team および Enterprise プランでパブリックベータ版です。マシンまたはコンテナで <code>claude self-hosted-runner</code> を実行して、それらをランナーに変えてください。誰かが claude.ai、モバイルまたはデスクトップアプリ、または `claude --cloud` からセッションを開始するときにお客様の環境を選択すると、そのセッションはお客様のネットワーク内で実行され、お客様の内部サービスにアクセスできます。Owner は <a href="https://claude.ai/admin-settings/cloud-environments">管理設定</a> で最初に <strong>自己ホスト環境を許可</strong> をオンにします。</p>

44 

45 <Frame>

46 <img className="w-full" src="https://mintcdn.com/claude-code/N3yEaTYPXMXFrF6k/images/whats-new/self-hosted-environments.jpg?fit=max&auto=format&n=N3yEaTYPXMXFrF6k&q=85&s=ae9152cb1670c8af517d1aee57689b14" alt="linux-dev や macos-prod などの環境、それらのステータス、およびアクティブなセッション数をリストする自己ホスト環境管理ページ" width="2048" height="1152" data-path="images/whats-new/self-hosted-environments.jpg" />

47 </Frame>

48 

49 <p className="digest-feature-try">Owner としてサインインし、ガイド付きセットアップを実行します。これは環境の作成をガイドし、ランナーを開始します:</p>

50 

51 ```bash terminal theme={null}

52 claude self-hosted-runner setup

53 ```

54 

55 <p className="digest-feature-try">ランナーが登録されると、環境は管理設定で <strong>Healthy</strong> と表示されます。</p>

56 

57 <a className="digest-feature-link" href="/docs/ja/self-hosted-environments-quickstart#set-up-an-environment-and-runner">自己ホスト環境クイックスタート</a>

58</div>

59 

60<div className="digest-feature">

61 <div className="digest-feature-header">

62 <span className="digest-feature-title">自動モードがデフォルトになる</span>

63 <span className="digest-feature-pill">CLI</span>

64 </div>

65 

66 <p className="digest-feature-lede">8月14日から、自動モードは Pro、Max、および Team プランの新しいセッションのデフォルト権限モードです。お客様が自分でデフォルトモードを設定した場合、ワンタイムスイッチプロンプトを受け入れない限りそのままです。お客様の組織が管理するデフォルトは変わりません。いつでもモードを切り替えることができます。既にこれらのプランで有効:自動モードが行う分類器呼び出しはお客様の使用制限にカウントされなくなります。</p>

67 

68 <p className="digest-feature-try">スイッチ前にすべてのセッションを自動モードで開始するには、ユーザー設定でデフォルトとして設定してください:</p>

69 

70 ```json ~/.claude/settings.json {3} theme={null}

71 {

72 "permissions": {

73 "defaultMode": "auto"

74 }

75 }

76 ```

77 

78 <p className="digest-feature-try">新しいセッションはステータスバーに <code>auto mode on</code> と表示されます。</p>

79 

80 <a className="digest-feature-link" href="/docs/ja/permission-modes#eliminate-prompts-with-auto-mode">自動モードの要件と制御</a>

81</div>

82 

83<div className="digest-wins">

84 <p className="digest-wins-title">その他の改善</p>

85 

86 <div className="digest-wins-grid">

87 <div>VS Code 拡張機能は <a href="/docs/ja/vs-code#extension-settings">Focus ビュー</a> を取得します。これはツールアクティビティを 1 ターンあたり 1 つの展開可能な行の背後に隠します。コマンドメニューから、または <code>Ctrl+Alt+F</code>(Mac では <code>Ctrl+Option+F</code>)で切り替えてください</div>

88 <div>Sandbox 認証情報ファイルは Linux と WSL2 で <a href="/docs/ja/sandboxing#mask-credential-files"><code>mode: "mask"</code></a> を受け入れるため、サンドボックス化されたコマンドはセンチネルコピーを読み取り、サンドボックスプロキシは出力時に実際の値を置き換えます。認証情報マスキングは <code>extract</code>、JWT 対応 <code>decode</code>、および AWS SigV4 再署名オプションも取得します</div>

89 <div>マーケットプレイスは新しい <code>archive</code> ソースを使用してプラグインを <a href="/docs/ja/plugin-marketplaces#zip-archives">zip アーカイブ</a> として配布でき、HTTPS 経由でダウンロードされ、オプションの SHA-256 ピンが付いているため、インストールは git または npm なしで機能します</div>

90 <div><code>/review</code> は <a href="/docs/ja/code-review#review-a-diff-locally"><code>/code-review</code></a> のエイリアスになり、努力レベルなしの <code>/code-review</code> は最後に入力したレベルを再利用します</div>

91 <div><a href="/docs/ja/agent-view#copy-the-session-with-%2Ffork"><code>/fork</code></a> でコピーするセッションは、元のセッションのチェックアウトの代わりに、独自の worktree でコード変更を行うようになりました</div>

92 <div><code>/plugin</code> から <a href="/docs/ja/discover-plugins#install-plugins">インストール</a> するプラグインは、安全な場合に現在のセッションで有効になります。インストール概要は <code>Plugin is now active.</code> を報告するか、<code>/reload-plugins</code> を実行するよう指示します</div>

93 <div><a href="/docs/ja/agent-view#how-file-edits-are-isolated">バックグラウンドセッション</a> が worktree でコードを変更した場合、完了前にコミットしてプッシュし、タスクが要求する場合にのみドラフトプルリクエストを開き、お客様の <code>CLAUDE.md</code> の git 指示に従います</div>

94 <div>セッションあたり 200 サブエージェントの上限が削除されたため、長時間実行されるセッションは新しいサブエージェントを拒否しなくなります。<a href="/docs/ja/sub-agents#concurrent-subagent-limit">同時実行</a> と深さの制限は引き続き適用されます</div>

95 <div>リポジトリのチェックイン設定は <a href="/docs/ja/remote-control#enable-remote-control-for-all-sessions">Remote Control 自動接続</a> をオンにできなくなりました。代わりにお客様のユーザーまたは管理設定で <code>remoteControlAtStartup</code> を設定し、プロジェクトとローカル設定はそれをオフにすることのみできます</div>

96 <div><a href="/docs/ja/worktrees#how-claude-code-enforces-isolation">Worktree 分離</a> はファイル編集だけでなく、メインチェックアウトに到達する Bash コマンドと git リダイレクトもブロックするようになり、すべてのセッションタイプとセッションのサブエージェントで行われます</div>

97 <div>Bash コマンドは権限チェックから自身の一部を隠すことができなくなり、タブまたは非表示の Unicode パディングはコマンドの一部を承認ダイアログから隠さなくなります</div>

98 <div>PreToolUse 自動許可フックは、概要やコンパクションなどの Claude Code の内部サイドタスクでツール制限をバイパスしなくなります</div>

99 <div><a href="/docs/ja/ultraplan">Ultraplan</a> リサーチプレビューは削除されました。<code>/ultraplan</code> コマンドと <code>ultraplan</code> キーワードを含めて。代わりにプランモードまたは Web 上の Claude Code を使用してください</div>

100 </div>

101</div>

102 

103[v2.1.220–v2.1.224 の完全なチェンジログ →](/docs/en/changelog#2-1-220)

whats-new/2026-w33.md +87 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# 第 33 週・8 月 10~14 日、2026 年

6 

7> Claude Code Desktop は使用制限がリセットされた後に自動継続し、フォークモードがデフォルトで有効になり、GitLab マージリクエストとマーケットプレイスが GitHub に参加します。

8 

9<div className="digest-meta">

10 <span>リリース <a href="/docs/en/changelog#2-1-225">v2.1.225 → v2.1.233</a></span>

11 <span>3 つの機能・8 月 10~14 日</span>

12</div>

13 

14<div className="digest-feature">

15 <div className="digest-feature-header">

16 <span className="digest-feature-title">Desktop での使用制限後の自動継続</span>

17 <span className="digest-feature-pill">Desktop</span>

18 </div>

19 

20 <p className="digest-feature-lede">Claude Code Desktop のコードタブでセッション制限に達すると、制限カードに <strong>制限がリセットされたときに自動継続</strong> チェックボックスが表示されるようになりました。これをチェックすると、Desktop アプリはリセット後に中断されたターンを再試行します。カードには再試行時刻が表示されます。週間制限カードではこのオプションは提供されません。</p>

21 

22 <Frame>

23 <video autoPlay muted loop playsInline className="w-full" src="https://mintcdn.com/claude-code/2SnAdpL4dJ18nKb3/images/whats-new/desktop-auto-continue.mp4?fit=max&auto=format&n=2SnAdpL4dJ18nKb3&q=85&s=1937f489695feaea715e48ecfd7e62cd" data-path="images/whats-new/desktop-auto-continue.mp4" />

24 </Frame>

25 

26 <p className="digest-feature-try">次にセッション制限カードが表示されたときに、<strong>制限がリセットされたときに自動継続</strong> をチェックしてセッションを開いたままにしてください。カードに <code>Auto-resuming at</code> とリセット時刻が表示され、制限がリセットされるとターンが自動的に再開されます。</p>

27 

28 <a className="digest-feature-link" href="/docs/ja/errors#youve-hit-your-session-limit">使用制限に達したときの対処方法</a>

29</div>

30 

31<div className="digest-feature">

32 <div className="digest-feature-header">

33 <span className="digest-feature-title">フォークモードがデフォルトで有効</span>

34 <span className="digest-feature-pill">v2.1.232</span>

35 </div>

36 

37 <p className="digest-feature-lede">フォークモードはインタラクティブセッションでデフォルトで有効になりました。Claude は <code>fork</code> サブエージェントタイプをリクエストできます。これは完全な会話とプロンプトキャッシュを継承するため、最初からやり直す必要がなく、サイドタスクのコンテキストを再度説明する必要がありません。インタラクティブセッションで Claude が生成するサブエージェント(エージェントチームのチームメイトが生成するもの以外)もデフォルトでバックグラウンドで実行されます。</p>

38 

39 <p className="digest-feature-try">これまでに説明したすべてのコンテキストが必要なタスクでフォークを自分で開始してください:</p>

40 

41 ```text Claude Code theme={null}

42 > /subtask draft unit tests for the parser changes so far

43 ```

44 

45 <p className="digest-feature-try">フォークはプロンプトの下のパネルに表示され、その結果は完了時に会話に到着します。フォークモードをオフにするには、<code>CLAUDE\_CODE\_FORK\_SUBAGENT=0</code> を設定してください。</p>

46 

47 <a className="digest-feature-link" href="/docs/ja/sub-agents#turn-fork-mode-on-or-off">フォークモードをオンまたはオフにする</a>

48</div>

49 

50<div className="digest-feature">

51 <div className="digest-feature-header">

52 <span className="digest-feature-title">GitLab マージリクエストとマーケットプレイス</span>

53 <span className="digest-feature-pill">v2.1.232</span>

54 </div>

55 

56 <p className="digest-feature-lede">プラグインマーケットプレイスはベア <code>gitlab.com</code> URL(ネストされたサブグループを含む)をクローンします。v2.1.233 以降では、GitLab マージリクエスト URL を <code>--worktree</code> に渡してそこからブランチを作成でき、<code>claude agents</code> ビューはマージリクエストにリンクされたセッションを <code>!N</code> としてラベル付けします。Claude Code は <code>glpat-</code> や <code>glrt-</code> などの GitLab トークンファミリーも編集し、<code>glab</code> CLI の設定ストアを <code>gh</code> と同じ方法で保護します。</p>

57 

58 <p className="digest-feature-try">マージリクエストからブランチされたワークツリーでセッションを開始してください:</p>

59 

60 ```bash terminal theme={null}

61 claude --worktree https://gitlab.com/group/project/-/merge_requests/42

62 ```

63 

64 <p className="digest-feature-try"><code>origin</code> が gitlab.com 上にある場合、Claude Code は <code>merge-requests/42/head</code> をフェッチし、そのブランチ上のセッションを独自のワークツリーで開きます。</p>

65 

66 <a className="digest-feature-link" href="/docs/ja/worktrees#branch-from-a-pull-request">プルまたはマージリクエストからワークツリーをブランチする</a>

67</div>

68 

69<div className="digest-wins">

70 <p className="digest-wins-title">その他の改善</p>

71 

72 <div className="digest-wins-grid">

73 <div>プロンプトで <code>@</code> を入力して、別の Claude セッションを名前で <a href="/docs/ja/cross-session-messaging#message-another-session">メンションする</a> と、Claude は <code>SendMessage</code> でそれに直接メッセージを送信します。正確に 1 つのライブセッションと一致するベア名は確認ステップなしで配信されるようになりました</div>

74 <div>1 台のマシン上のインタラクティブセッションは <a href="/docs/ja/cross-session-messaging#see-which-sessions-claude-can-reach">一意の名前</a> を保持します。別のライブセッションが既に使用している名前でセッションを開始または名前変更した場合、Claude Code はあなたのセッションに <code>name-word-word</code> バリアントを付与し、その旨を通知します</div>

75 <div>プラグインマーケットプレイスは <a href="/docs/ja/plugin-marketplaces#command-sources"><code>command</code> ソース</a> を受け入れます。ローカルコマンドはプラグインディレクトリを出力し、Claude Code は各セッションで再解決して再起動なしで適用します</div>

76 <div>Linux と WSL では、<a href="/docs/ja/tools-reference#memory-limit-on-linux-and-wsl"><code>CLAUDE\_CODE\_TOOL\_MEMORY\_LIMIT</code></a> を <code>4G</code> などのサイズに設定して、Bash および PowerShell ツールコマンドが使用できるメモリをキャップできます</div>

77 <div><code>TaskCreate</code>、<code>TaskUpdate</code>、<code>TodoWrite</code> などのタスク追跡ツールは、<a href="/docs/ja/tools-reference#task-tool-availability">Opus 4.8、Sonnet 5、Fable 5、Mythos 5、およびそれ以降のモデルでは利用できなくなりました</a>。<code>CLAUDE\_CODE\_ENABLE\_TODO\_TOOLS=1</code> を設定して再度有効にしてください</div>

78 <div><a href="/docs/ja/code-review#review-a-diff-locally"><code>/code-review</code></a> は高、xhigh、および max 努力レベルで、他のレベルと同様にバックグラウンドエージェントで実行されるようになりました</div>

79 <div><a href="/docs/ja/discover-plugins#install-plugins"><code>/plugin install plugin\@marketplace</code></a> はまずマーケットプレイスをリフレッシュするため、新しく公開されたプラグインは手動マーケットプレイス更新なしでインストールできます</div>

80 <div>設定は <a href="/docs/ja/settings-reference#marketplace-key-aliases"><code>additionalMarketplaces</code> および <code>allowedMarketplaces</code></a> を <code>extraKnownMarketplaces</code> および <code>strictKnownMarketplaces</code> のエイリアスとして受け入れます</div>

81 <div>新しいモデルでは、Claude は <a href="/docs/ja/tools-reference#write-tool-behavior">Write ツールで既存ファイルを上書き</a> できるようになり、このセッションで最初に読み込む必要がなくなり、Edit ツールのルールと一致します。古いモデルは読み込みが必要です</div>

82 <div>VS Code 拡張機能は <a href="/docs/ja/vs-code#organize-sessions-into-groups">セッションリストをグループに整理</a> できます。右クリックしてグループを作成、名前変更、または削除し、Cmd/Ctrl- または Shift- クリックで複数のセッションを一度に移動できます</div>

83 <div>組織が Claude Code を <a href="/docs/ja/claude-apps-gateway-spend-limits">支出制限のある Claude アプリゲートウェイ</a> を通じてルーティングしている場合、Claude Code は制限期間、リセット時刻、および制限に達したときのオペレーターのメッセージを表示します</div>

84 </div>

85</div>

86 

87[v2.1.225~v2.1.233 の完全なチェンジログ →](/docs/en/changelog#2-1-225)

whats-new/2026-w34.md +105 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# Week 34 · 8月17~21日、2026年

6 

7> /design スキルでドラフト可能な UI アートボードを作成し、Concise 出力スタイルを設定し、スマートフォンからマシン上で Claude Code セッションを開始します。

8 

9<div className="digest-meta">

10 <span>リリース <a href="/docs/en/changelog#2-1-234">v2.1.234 → v2.1.239</a></span>

11 <span>3 つの機能 · 8月17~21日</span>

12</div>

13 

14<div className="digest-feature">

15 <div className="digest-feature-header">

16 <span className="digest-feature-title">/design</span>

17 <span className="digest-feature-pill">research preview</span>

18 </div>

19 

20 <p className="digest-feature-lede"><code>/design</code> スキルは Claude Design のアートボードワークフローを CLI と Claude Code Desktop に持ち込み、アーティファクトの上に構築されています。簡潔なブリーフで実行すると、Claude は UI 用の編集可能なアートボードのキャンバスを公開します。1 つを選択し、調整してから、Claude に実装させます。Pro、Max、Team、Enterprise で利用可能です。v2.1.234 以降が必要です。</p>

21 

22 <Frame>

23 <video autoPlay muted loop playsInline className="w-full" src="https://mintcdn.com/claude-code/2SnAdpL4dJ18nKb3/images/whats-new/design-skill.mp4?fit=max&auto=format&n=2SnAdpL4dJ18nKb3&q=85&s=0b376a94227c14a4204af89c4c9fd7ac" data-path="images/whats-new/design-skill.mp4" />

24 </Frame>

25 

26 <p className="digest-feature-try">デザインしたいものを説明し、Claude にオプションをドラフトさせます:</p>

27 

28 ```text Claude Code theme={null}

29 > /design redesign the composer based on what people actually use it for

30 ```

31 

32 <p className="digest-feature-try">Claude は公開されたキャンバスへのリンクを出力します。それを開き、アートボードを選択して、Claude にどのオプションを実装するかを伝えます。</p>

33 

34 <a className="digest-feature-link" href="/docs/ja/artifacts#availability">アーティファクトが利用可能な場所</a>

35</div>

36 

37<div className="digest-feature">

38 <div className="digest-feature-header">

39 <span className="digest-feature-title">Concise 出力スタイル</span>

40 <span className="digest-feature-pill">v2.1.237</span>

41 </div>

42 

43 <p className="digest-feature-lede">Concise は新しい組み込み出力スタイルです。Claude は結果を最初に示し、前置きと説明をスキップしながら、Default スタイルと同じくらい徹底的に作業を行います。説明や詳細を求めると、Claude は完全に答えます。エラーレポート、セキュリティ警告、破壊的なアクションの確認は、完全なコンテンツを保持します。</p>

44 

45 <Frame>

46 <video autoPlay muted loop playsInline className="w-full" src="https://mintcdn.com/claude-code/2SnAdpL4dJ18nKb3/images/whats-new/concise-output-style.mp4?fit=max&auto=format&n=2SnAdpL4dJ18nKb3&q=85&s=dfb40ec8921ed1bc82eb629042a8ec17" data-path="images/whats-new/concise-output-style.mp4" />

47 </Frame>

48 

49 <p className="digest-feature-try"><code>/config</code> の <strong>Output style</strong> で有効にするか、設定ファイルで設定します:</p>

50 

51 ```json ~/.claude/settings.json {2} theme={null}

52 {

53 "outputStyle": "Concise"

54 }

55 ```

56 

57 <p className="digest-feature-try"><code>/clear</code> を実行するか新しいセッションを開始すると、Claude の返信は結果を最初に示します。</p>

58 

59 <a className="digest-feature-link" href="/docs/ja/output-styles#built-in-output-styles">組み込み出力スタイル</a>

60</div>

61 

62<div className="digest-feature">

63 <div className="digest-feature-header">

64 <span className="digest-feature-title">スマートフォンからマシン上でセッションを開始</span>

65 <span className="digest-feature-pill">mobile</span>

66 </div>

67 

68 <p className="digest-feature-lede"><code>claude remote-control</code> を実行しているマシンは、Claude アプリの Code タブの上部にデバイスカードとして表示されるようになりました。Remote Control は research preview から外れました。</p>

69 

70 <Frame>

71 <img className="w-full" src="https://mintcdn.com/claude-code/2SnAdpL4dJ18nKb3/images/whats-new/remote-control-phone-start.jpg?fit=max&auto=format&n=2SnAdpL4dJ18nKb3&q=85&s=9f0ebedab23aa0e1732cc37782573907" alt="Claude モバイルアプリの Code タブ。セッションリストの上に接続された MacBook をデバイスカードとして表示する Devices セクションがあります" width="1206" height="895" data-path="images/whats-new/remote-control-phone-start.jpg" />

72 </Frame>

73 

74 <p className="digest-feature-try">到達したいマシンで Remote Control を開始し、スマートフォンで Code タブを開きます:</p>

75 

76 ```bash terminal theme={null}

77 claude remote-control

78 ```

79 

80 <p className="digest-feature-try">マシンは Code タブの上部にデバイスカードとして表示されます。それをタップしてディレクトリを選択し、そこでセッションを開始します。</p>

81 

82 <a className="digest-feature-link" href="/docs/ja/remote-control#start-a-remote-control-session">Remote Control セッションを開始</a>

83</div>

84 

85<div className="digest-wins">

86 <p className="digest-wins-title">その他の改善</p>

87 

88 <div className="digest-wins-grid">

89 <div>Claude Code は claude.ai の使用制限がリセットされたときにセッションを自動的に続行するようになりました。<code>/config</code> の <strong>Continue automatically at usage limit</strong> 行から無効にできます</div>

90 <div>オプションの <a href="/docs/ja/interactive-mode#check-spelling-as-you-type"><code>spellcheck</code> 設定</a> は、入力時にプロンプト入力内のスペルミスをアンダーラインで示します。インストール済みの <code>aspell</code>、<code>hunspell</code>、または <code>ispell</code> を使用します</div>

91 <div>開いている GitLab マージリクエストを持つブランチで、<code>glab auth login</code> を通じて認証された <code>glab</code> CLI を使用すると、フッターは <a href="/docs/ja/interactive-mode#gitlab-merge-requests"><code>MR !N</code> バッジ</a> を表示します。マージリクエストがドラフト、オープン、またはマージ可能かどうかで色分けされます</div>

92 <div>スマートフォンまたは claude.ai/code から努力レベルを変更すると、<a href="/docs/ja/remote-control#what-connected-devices-see">マシン上のセッションに適用されます</a>。Desktop または VS Code でホストされている Remote Control セッションは、接続されたデバイスに現在の権限モードも表示します</div>

93 <div>Claude が作業中に <a href="/docs/ja/permissions#manage-permissions"><code>/permissions</code></a> を開くか <code>/add-dir \<path></code> を実行できます。権限ルールの変更は現在のターンの残りに適用されます</div>

94 <div>バックグラウンドタスクが <a href="/docs/ja/goal#background-work-defers-evaluation"><code>/goal</code></a> を待機させている場合、Claude は無期限に待つのではなく 30 分後にチェックインし、セッションがアイドル状態の間、より長い間隔でチェックインを続けます。<code>CLAUDE\_CODE\_GOAL\_CHECKIN\_MINUTES=0</code> を設定してオプトアウトします</div>

95 <div>独自のプロンプトはトランスクリプトで markdown をレンダリングするようになりました。ハイライトされたコードブロック、インラインコード、リストは、返信と同じ方法で表示されます</div>

96 <div>新しい <a href="/docs/ja/model-config#set-a-default-model-for-new-sessions"><code>ANTHROPIC\_DEFAULT\_MODEL</code></a> 環境変数は、新しいセッションが開始するモデルを設定します。<code>/model</code> の選択はそれをオーバーライドし、再起動後も保持されます</div>

97 <div><code>SendMessage</code> の <code>notify\_when\_idle</code> 入力を使用すると、Claude は同じマシン上の別の Claude Code セッションに <a href="/docs/ja/cross-session-messaging#get-a-notice-when-another-session-goes-idle">次にアイドル状態になったときに 1 つの通知を送信するよう</a> 要求できます</div>

98 <div><a href="/docs/ja/interactive-mode#make-ctrl-w-delete-back-to-whitespace"><code>keybindingFlavor</code></a> を <code>"readline"</code> に設定して、プロンプトの <code>Ctrl+W</code> を Bash のように前のホワイトスペースまで削除するようにします。<code>/</code> などの句読点で停止する代わりに</div>

99 <div>ネイティブ Windows では、Claude Code セッションは <code>SendMessage</code> で <a href="/docs/ja/cross-session-messaging#availability">互いにメッセージを送信</a> し、<code>ListAgents</code> で互いを見つけることができるようになりました。macOS と Linux と同じです</div>

100 <div>自己ホスト型ランナーは `--defer-shutdown-max-min` を受け入れます。これは <a href="/docs/ja/self-hosted-environments-deploy#defer-the-drain-past-the-first-signal">SIGTERM 後の設定された分数の間、接続されたセッションを提供し続けます</a></div>

101 <div>自己ホスト型ランナーは `--proxy-authorization-command` または `--proxy-authorization-file` を受け入れて、<a href="/docs/ja/self-hosted-environments-deploy#authenticate-to-an-egress-proxy">1 つが必要な出力プロキシの新しい `Proxy-Authorization` ヘッダーを提供します</a></div>

102 </div>

103</div>

104 

105[v2.1.234~v2.1.239 の完全なチェンジログ →](/docs/en/changelog#2-1-234)

workflows.md +84 −76

Details

37 バンドルされたワークフローを実行する37 バンドルされたワークフローを実行する

38</h2>38</h2>

39 39 

40最速の方法でワークフローの動作を確認するには、Claude Code に含まれている組み込みワークフロー `/deep-research` を実行します。これは[バンドルされたワークフロー](#bundled-workflows)で、多くのソースにわたって質問を調査するためのものです。セッションが無料のままで、ターンバイターンのトランスクリプトの代わりに 1 つのレポートを取得しながら、エージェントがバックグラウンドで一連のフェーズを処理するのを見ることができます。40ワークフローの動作を最も簡単に確認する方法は、Claude Code に含まれている[組み込みワークフロー](#bundled-workflows)である `/deep-research` を実行することです。このワークフローは、複数のソースにわたって質問を調査するためのものです。セッションがバックグラウンドで一連のフェーズを処理している間、セッションは自由に使用でき、ターンバイターンのトランスクリプトではなく、最後に 1 つのレポートが得られます。

41 41 

42<Steps>42<Steps>

43 <Step title="ワークフローを実行する">43 <Step title="ワークフローを実行する">

44 調査したい質問で `/deep-research` を実行します。複数の角度にわたって Web 検索をファンアウトし、見つけたソースをフェッチして相互検証し、引用されたレポートを合成します。44 調査したい質問を使用して `/deep-research` を実行します。複数の角度から Web 検索を展開し、見つけたソースを取得してクロスチェックし、引用されたレポートを合成します。

45 45 

46 ```text wrap theme={null}46 ```text wrap theme={null}

47 /deep-research What changed in the Node.js permission model between v20 and v22?47 /deep-research What changed in the Node.js permission model between v20 and v22?


49 </Step>49 </Step>

50 50 

51 <Step title="ワークフローを許可する">51 <Step title="ワークフローを許可する">

52 Claude Code はワークフローを許可するかどうかを尋ねます。**Yes** を選択して続行します。正確なプロンプトは権限モードによって異なります。[実行前に計画を承認する](#approve-the-plan-before-it-runs)でモードごとのオプションを参照してください。52 Claude Code はワークフローを許可するかどうかを尋ねます。**Yes** を選択して続行します。正確なプロンプトは権限モードによって異なります。[実行前にプランを承認する](#approve-the-plan-before-it-runs)を参照して、モード別のオプションを確認してください。

53 </Step>53 </Step>

54 54 

55 <Step title="進捗を監視する">55 <Step title="進捗を監視する">


59 /workflows59 /workflows

60 ```60 ```

61 61 

62 ビューは各フェーズをエージェント数、トークン合計、経過時間とともに表示します。任意のフェーズにドリルダウンして、そのエージェントと各エージェントが見つけたものを確認します。[実行を監視する](#watch-the-run)で完全なコントロールセットを参照してください。62 ビューには、各フェーズがエージェント数、トークン合計、経過時間とともに表示されます。任意のフェーズをドリルダウンして、そのエージェントと各エージェントが見つけたものを確認します。[実行を監視する](#watch-the-run)を参照して、コントロールの完全なセットを確認してください。

63 63 

64 入力ボックスの下のタスクパネルからも監視できます。実行中は 1 行の進捗サマリーが表示されます。下矢印を押してフォーカスし、Enter キーを押して展開します。64 入力ボックスの下のタスクパネルからも監視できます。実行中は、1 行の進捗サマリーがそこに表示されます。下矢印を押してフォーカスし、Enter キーを押して展開します。

65 </Step>65 </Step>

66 66 

67 <Step title="レポートを読む">67 <Step title="レポートを読む">

68 実行が完了すると、レポートがセッションに表示されます。各クレームが由来するソースを引用し、相互検証を生き残らなかったクレームは既にフィルタリングされています。68 実行が完了すると、レポートがセッションに表示されます。各クレームの出所を引用し、クロスチェックで生き残らなかったクレームは既にフィルタリングされています。

69 69 

70 検証エージェントがレート制限や API エラーの後など、クレームを確認できない場合、レポートはそのクレームを未検証として列挙し、反論されたものとしてカウントしません。70 検証エージェントがレート制限や API エラーの後など、クレームをチェックできない場合、レポートはそのクレームを未検証として列挙し、反論されたものとしてカウントしません。

71 </Step>71 </Step>

72</Steps>72</Steps>

73 73 

74独自のタスク用にワークフローを実行するには、[Claude にワークフローを作成させ](#have-claude-write-a-workflow)、実行が必要なことを実行したら、[保存して](#save-the-workflow-for-reuse)独自のコマンドとして使用できます。74独自のタスク用にワークフローを実行するには、[Claude にワークフローを作成させ](#have-claude-write-a-workflow)、実行が目的を達成したら、それを[保存](#save-the-workflow-for-reuse)して独自のコマンドとして使用できます。

75 75 

76<h3 id="bundled-workflows">76<h3 id="bundled-workflows">

77 バンドルされたワークフロー77 バンドルされたワークフロー


79 79 

80Claude Code には、組み込みワークフローとして `/deep-research` が含まれています。80Claude Code には、組み込みワークフローとして `/deep-research` が含まれています。

81 81 

82| コマンド | 実行内容 |82| コマンド | 機能 |

83| :-------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |83| :-------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

84| `/deep-research <question>` | 複数の角度にわたって質問に対する Web 検索をファンアウトし、見つけたソースをフェッチして相互検証し、各クレームに投票し、相互検証を生き残らなかったクレームがフィルタリングされた引用されたレポートを返します。[WebSearch ツール](/docs/ja/tools-reference#websearch-tool-behavior)が利用可能である必要があります |84| `/deep-research <question>` | 複数の角度から質問に対する Web 検索を展開し、見つけたソースを取得してクロスチェックし、各クレームに投票し、クロスチェックで生き残らなかったクレームがフィルタリングされた引用されたレポートを返します。[WebSearch ツール](/docs/ja/tools-reference#websearch-tool-behavior)が利用可能である必要があります |

85 85 

86`/deep-research` は呼び出すときのみ実行されます。86`/deep-research` は、呼び出すときのみ実行されます。

87 87 

88[自分で保存](#save-the-workflow-for-reuse)したワークフローは同じ方法でコマンドになり、バンドルされたものと一緒に `/` オートコンプリートに表示されます。88[自分で保存](#save-the-workflow-for-reuse)したワークフローは同じ方法でコマンドになり、バンドルされたものと一緒に `/` オートコンプリートに表示されます。

89 89 


91 実行を監視する91 実行を監視する

92</h3>92</h3>

93 93 

94ワークフローはバックグラウンドで実行されるため、エージェントが作業している間、セッションは応答性を保ちます。任意の時点で `/workflows` を実行して、実行中および完了したワークフローをリストアップし、1 つを選択して進捗ビューを開きます。94ワークフローはバックグラウンドで実行されるため、エージェントが作業している間、セッションは応答性を保ちます。任意の時点で `/workflows` を実行して、実行中および完了したワークフローをリストアップし、1 つを選択してその進捗ビューを開きます。

95 95 

96進捗ビューは各フェーズをエージェント数、トークン合計、経過時間とともに表示します。フッターは各アクションのキーをリストアップします。96進捗ビューには、各フェーズがエージェント数、トークン合計、経過時間とともに表示されます。フッターには各アクションのキーが表示されます。

97 97 

98| キー | アクション |98| キー | アクション |

99| :-------------- | :--------------------------------------------------------------------------------------- |99| :-------------- | :----------------------------------------------------------------------------------------- |

100| `↑` / `↓` | フェーズまたはエージェントを選択 |100| `↑` / `↓` | フェーズまたはエージェントを選択します |

101| `Enter` または `→` | 選択したフェーズにドリルダウンし、次にエージェントにドリルダウンしてプロンプト、最近のツール呼び出し、結果を読む |101| `Enter` または `→` | 選択したフェーズをドリルダウンし、次にエージェントの詳細をドリルダウンします。詳細では、`Enter` で展開または折りたたみます |

102| `Esc` または `←` | 1 レベル戻る。v2.1.203 から v2.1.205 では、`←` はフェーズまたはエージェントから戻りませんでした。これらのバージョンでは `Esc` を使用してください |102| `Esc` または `←` | 1 レベル戻ります。v2.1.203 から v2.1.205 では、`←` はフェーズまたはエージェントから戻りませんでした。これらのバージョンでは `Esc` を使用してください |

103| `j` / `k` | オーバーフローするときにエージェント詳細内でスクロール |103| `j` / `k` | エージェント詳細がオーバーフローしたときにスクロールします |

104| `f` | 選択したフェーズのエージェントリストをステータスでフィルタリングします。もう一度押すとサイクルします |104| `f` | 選択したフェーズのエージェントリストをステータスでフィルタリングします。もう一度押すとサイクルします |

105| `p` | 実行を一時停止または再開 |105| `p` | 実行を一時停止または再開します |

106| `x` | 選択したエージェントを停止するか、フォーカスが実行にあるときにワークフロー全体を停止 |106| `x` | 選択したエージェントを停止するか、フォーカスが実行にある場合はワークフロー全体を停止します |

107| `r` | 選択した実行中のエージェントを再開始 |107| `r` | 選択した実行中のエージェントを再起動します |

108| `s` | 実行のスクリプトを[保存](#save-the-workflow-for-reuse)してコマンドとして保存 |108| `s` | 実行のスクリプトを[保存](#save-the-workflow-for-reuse)してコマンドにします |

109 

110エージェント詳細には、エージェントのプロンプト、最近のツール呼び出し、および結果が表示されます。各呼び出しは、実行中またはエラーなどの状態を示します。エージェントが独自のタスクリストを保持している場合、詳細にはそれも表示され、各タスクのステータスが表示されます。

111 

112`Enter` を押して詳細を展開します。プロンプトと結果は完全に表示され、リストされた各呼び出しはその入力と結果の開始を表示します。

109 113 

110<h2 id="have-claude-write-a-workflow">114<h2 id="have-claude-write-a-workflow">

111 Claude にワークフローを作成させる115 Claude にワークフローを書かせる

112</h2>116</h2>

113 117 

114Claude にワークフローを作成させるには 2 つの方法があります。118Claude にタスク用のワークフローを書かせるには、2 つの方法があります。

115 119 

116* [プロンプトでワークフローを要求](#ask-for-a-workflow-in-your-prompt)し、キーワード `ultracode` を含めるか、自分の言葉で要求して、Claude がタスク用のワークフローを作成します。120* [プロンプトでワークフローをリクエストする](#ask-for-a-workflow-in-your-prompt)。自分の言葉で、またはキーワード `ultracode` を含めることで、Claude がそのタスク用のワークフローを書きます。

117* [ultracode で Claude に決定させる](#let-claude-decide-with-ultracode)。`/effort ultracode` を設定し、Claude はセッション内のすべての実質的なタスク用にワークフローを計画します。121* [ultracode で Claude に決めさせる](#let-claude-decide-with-ultracode)。`/effort ultracode` を設定すると、Claude がセッション内のすべての実質的なタスク用にワークフローを計画します。

118 122 

119既に存在するワークフローコマンドを実行することもできます。[バンドルされたワークフロー](#bundled-workflows)(`/deep-research` など)、または[保存](#save-the-workflow-for-reuse)したワークフロー。123既に存在するワークフローコマンドを実行することもできます。`/deep-research` のような[バンドルされたワークフロー](#bundled-workflows)、または[保存した](#save-the-workflow-for-reuse)ワークフローです。

120 124 

121<h3 id="ask-for-a-workflow-in-your-prompt">125<h3 id="ask-for-a-workflow-in-your-prompt">

122 プロンプトでワークフローを要求する126 プロンプトでワークフローをリクエストする

123</h3>127</h3>

124 128 

125セッションの努力レベルを変更せずに単一のタスクをワークフローとして実行するには、プロンプトにキーワード `ultracode` を含めます。「ワークフローを使用する」または「ワークフローを実行する」など、自分の言葉で要求することもできます。Claude は直接的な要求を同じオプトインとして扱います。129セッションの努力レベルを変更せずに単一のタスクをワークフローとして実行するには、プロンプトにキーワード `ultracode` を含めます。「ワークフローを使用する」または「ワークフローを実行する」など、自分の言葉で尋ねることも機能します。Claude は直接的なリクエストを同じオプトインとして扱います。

126 130 

127```text wrap theme={null}131```text wrap theme={null}

128ultracode: audit every API endpoint under src/routes/ for missing auth checks132ultracode: audit every API endpoint under src/routes/ for missing auth checks

129```133```

130 134 

131Claude Code はキーワードをプロンプトでハイライトし、Claude はターンバイターンで処理する代わりにタスク用のワークフロースクリプトを作成します。キーワードは Claude の作業の構造化方法のみを選択します。エージェントのツール呼び出しは、セッション内の他のツール呼び出しと同じ権限チェックと[サンドボックス化](/docs/ja/sandboxing)を受け取ります。135Claude Code はあなたの入力でキーワードをハイライトし、Claude はターンバイターンで作業するのではなく、タスク用のワークフロースクリプトを書きます。キーワードは Claude が作業をどのように構成するかのみを選択します。エージェントのツール呼び出しは、セッション内の他のツール呼び出しと同じ権限チェックと[サンドボックス化](/docs/ja/sandboxing)を受けます。

132 136 

133実行が必要なことを実行した場合、その後[コマンドとして保存](#save-the-workflow-for-reuse)できます。別の方法で構築されたオーケストレーター(サブエージェントプロンプトのフォルダーや、作業をファンアウトするスキルなど)が既にある場合は、Claude にそれを指し示し、同じことを行うワークフローを要求できます。137実行が望んだことを実行した場合、その後[コマンドとして保存](#save-the-workflow-for-reuse)できます。別の方法で構築されたオーケストレーターが既にある場合(サブエージェントプロンプトのフォルダーやスキルなど)、Claude にそれを指し示し、同じことを行うワークフローをリクエストできます。

134 138 

135<h4 id="dismiss-or-turn-off-the-keyword">139<h4 id="dismiss-or-turn-off-the-keyword">

136 キーワードを無視するか、オフにする140 キーワードを無視するか、オフにする

137</h4>141</h4>

138 142 

139意図しない場合は、macOS で `Option+W` または Windows と Linux で `Alt+W` を押してこのプロンプトのハイライトを無視するか、ハイライトされたキーワードの直後にカーソルがある状態でバックスペースを押します。キーワードがまったくトリガーされないようにするには、`/config` で Ultracode キーワードトリガーをオフにします。143ワークフローを開始するつもりがなかった場合、macOS では `Option+W`、Windows と Linux では `Alt+W` を押してこのプロンプトのハイライトを無視するか、ハイライトされたキーワードの直後にカーソルがある状態でバックスペースを押します。キーワードがまったくトリガーされないようにするには、`/config` で Ultracode キーワードトリガーをオフにします。

140 144 

141<h4 id="where-the-keyword-works">145<h4 id="where-the-keyword-works">

142 キーワードが機能する場所146 キーワードが機能する場所

143</h4>147</h4>

144 148 

145キーワードはオプトインのみで、自分で入力するプロンプトです。対話的なプロンプト、IDE 拡張機能パネル、[Remote Control](/docs/ja/remote-control) クライアント、または[`origin`](/docs/ja/agent-sdk/typescript#sdkmessageorigin) を `{ kind: "human" }` としてスタンプするエージェント SDK アプリケーション。セッションに別の方法で到達した場合、ワークフローを開始しません。149キーワードは、自分で入力したプロンプトでのみオプトインです。対話型プロンプト、IDE 拡張機能パネル、[Remote Control](/docs/ja/remote-control) クライアント、またはキーボード入力の [`origin`](/docs/ja/agent-sdk/typescript#sdkmessageorigin) を `{ kind: "human" }` としてスタンプする Agent SDK アプリケーションです。セッションに別の方法で到達した場合、ワークフローを開始しません。

146 150 

147* `-p` で渡されたプロンプト151* `-p` で渡されたプロンプト

148* エージェント SDK アプリケーションが人間入力としてスタンプせずに送信するプロンプト152* Agent SDK アプリケーションが人間の入力としてスタンプせずに送信するプロンプト

149* スケジュール済みタスクプロンプト153* スケジュールされたタスクプロンプト

150* ウェブフック ペイロードまたはプルリクエストコメントが会話にリレーされた154* ウェブフック ペイロードまたはプルリクエストコメントが会話にリレーされた場合

151 155 

152<Note>156<Note>

153 v2.1.210 より前は、キーワードはこれらのルートのいずれからでもワークフローを開始しました。ウェブフック ペイロードまたはプルリクエストコメントが会話にリレーされた場合も含みます。157 v2.1.210 より前は、キーワードはこれらのルートのいずれからでもワークフローを開始しました。ウェブフック ペイロードまたはプルリクエストコメントが会話にリレーされた場合も含みます。

154</Note>158</Note>

155 159 

156<h3 id="let-claude-decide-with-ultracode">160<h3 id="let-claude-decide-with-ultracode">

157 ultracode で Claude に決定させる161 ultracode で Claude に決めさせる

158</h3>162</h3>

159 163 

160Ultracode は、`xhigh` [推論努力](/docs/ja/model-config#adjust-effort-level)と自動ワークフローオーケストレーションを組み合わせた Claude Code 設定です。オンにすると、Claude は各実質的なタスク用にワークフローを計画し、あなたが要求するのを待ちません。164Ultracode は Claude Code の設定で、`xhigh` [推論努力](/docs/ja/model-config#adjust-effort-level)と自動ワークフローオーケストレーションを組み合わせます。オンにすると、Claude はあなたが尋ねるのを待つのではなく、各実質的なタスク用にワークフローを計画します。

161 165 

162```text wrap theme={null}166```text wrap theme={null}

163/effort ultracode167/effort ultracode

164```168```

165 169 

166ultracode がオンの状態でセッションを開始するには、`claude --effort ultracode` で起動します。Claude Code v2.1.203 以降が必要です。170ultracode が既にオンの状態でセッションを開始するには、`claude --effort ultracode` で起動します。Claude Code v2.1.203 以降が必要です。

167 171 

168ultracode をオンにしながらモデルを選択するには、矢印キーで `/model` ピッカーの努力スライダーを `ultracode` に移動します。[努力レベルを調整する](/docs/ja/model-config#adjust-effort-level)は ultracode をオンにするルートをリストします。172モデルを選択しながらオンにするには、`/model` ピッカーの努力スライダーを矢印キーで `ultracode` に移動します。[努力レベルを調整する](/docs/ja/model-config#adjust-effort-level)は ultracode をオンにするルートをリストします。

169 173 

170ultracode がオンの場合、Claude はタスクがワークフローを必要とするかどうかを決定します。単一のリクエストは複数のワークフローに変わる可能性があります。コードを理解するためのワークフロー、変更を加えるためのワークフロー、検証するためのワークフロー。これはセッション内のすべてのタスクに適用されるため、各リクエストはより多くのトークンを使用し、より低い努力レベルより長くかかります。174ultracode がオンの場合、Claude はタスクがワークフローを必要とするかどうかを決定します。単一のリクエストは複数のワークフローに変わる可能性があります。コードを理解するためのワークフロー、変更を加えるためのワークフロー、それを検証するためのワークフローです。これはセッション内のすべてのタスクに適用されるため、各リクエストはより多くのトークンを使用し、低い努力レベルよりも長くかかります。

171 175 

172`/effort ultracode` は現在のセッション用に続きます。すべてのセッションをそれで開始するには、[`ultracode`](/docs/ja/settings-reference#ultracode) 設定を設定します。ルーチンワークに戻るときは `/effort high` でドロップバックします。`xhigh` [努力](/docs/ja/model-config#adjust-effort-level)をサポートするモデルで利用可能です。他のモデルでは、`/effort` メニューはそれを提供しません。176`/effort ultracode` は現在のセッション用です。すべてのセッションをそれで開始するには、[`ultracode`](/docs/ja/settings-reference#ultracode) 設定を設定します。日常的な作業に戻るときは `/effort high` で戻ります。`/effort` メニューは [ultracode が利用可能な場合](/docs/ja/model-config#when-ultracode-is-available)のみそれを提供します。

173 177 

174<h3 id="approve-the-plan-before-it-runs">178<h3 id="approve-the-plan-before-it-runs">

175 実行前に計画を承認する179 実行前にプランを承認する

176</h3>180</h3>

177 181 

178CLI では、実行ごとのプロンプトは計画されたフェーズとこれらのオプションを表示します。182CLI では、実行ごとのプロンプトは計画されたフェーズとこれらのオプションを表示します。

179 183 

180* **Yes, run it**: 実行を開始184* **Yes, run it**: 実行を開始する

181* **Yes, and don't ask again for `<name>` in `<path>`**: 開始し、このプロジェクトからこのワークフロー用にこのプロンプトをスキップします。Claude Code は、バンドルされた、保存された、またはプラグインワークフローを名前で実行する場合にこのオプションを提供します。現在のタスク用に Claude が作成したスクリプトではありません。185* **Yes, and don't ask again for `<name>` in `<path>`**: 開始し、このプロジェクトでこのワークフローに対してこのプロンプトをスキップします。Claude Code は、現在のタスク用に Claude が書いたスクリプトではなく、バンドルされた、保存された、またはプラグインワークフローを名前で実行する場合にこのオプションを提供します。

182* **View raw script**: 決定する前にスクリプトを読む186* **View raw script**: 決定する前にスクリプトを読む

183* **No**: キャンセル187* **No**: キャンセル

184 188 

185`Ctrl+G` はエディターでスクリプトを開きます。`Tab` を使用すると、実行開始前にプロンプトを調整できます。189`Ctrl+G` はスクリプトをエディターで開きます。`Tab` を使用すると、実行が開始される前にプロンプトを調整できます。

186 190 

187このプロンプトを表示するかどうかは、[権限モード](/docs/ja/permission-modes)によって異なります。191このプロンプトが表示されるかどうかは、[権限モード](/docs/ja/permission-modes)によって異なります。

188 192 

189| 権限モード | プロンプトが表示される場合 |193| 権限モード | プロンプトが表示される場合 |

190| :-------------------- | :--------------------------------------------------------------------------------- |194| :--------------------- | :--------------------------------------------------------------------------------- |

191| 自動 | 最初の起動のみ。任意の **Yes** はユーザー設定に同意を記録し、後の起動はプロンプトなしで開始します。ultracode がオンの場合は完全にスキップされます |195| Auto | 最初の起動のみ。任意の **Yes** はユーザー設定に同意を記録し、後の起動はプロンプトなしで開始します。ultracode がオンの場合は完全にスキップされます |

192| 手動、編集を受け入れ | すべての実行、そのワークフロー用に**Yes, and don't ask again** を選択していない限り |196| Manual, accept edits | すべての実行。ただし、このプロジェクトでそのワークフローに対して **Yes, and don't ask again** を選択した場合を除きます |

193| 権限をバイパス | Claude Code はプロンプトを表示しません。実行は直ちに開始 |197| Bypass permissions | Claude Code はプロンプトを表示しません。実行は直ちに開始されます |

194| `claude -p`、Agent SDK | Claude Code はプロンプトを表示しません |198| `claude -p`, Agent SDK | Claude Code はプロンプトを表示しません |

195 199 

196`claude -p` と Agent SDK では、Claude Code はこのプロンプトを表示しません。ワークフロー ツール呼び出しをセッションの残りの部分と同じ[権限評価](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)を通じて実行するため、拒否ルール、質問ルール、および `dontAsk` モードはすべてのツール呼び出しに適用されるようにワークフロー起動に適用されます。これらの実行でワークフローを開始させるには、次のいずれかを使用します。200`claude -p` と Agent SDK では、Claude Code はこのプロンプトを表示しません。セッションの残りの部分と同じ[権限評価](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)を通じてワークフロー ツール呼び出しを実行するため、拒否ルール、質問ルール、および `dontAsk` モードはすべてのツール呼び出しに適用されるのと同じように適用されます。これらの実行でワークフローを開始させるには、次のいずれかを使用します。

197 201 

198* **権限ルール**: 許可ルール内の `Workflow` はすべてのワークフローを承認し、`Workflow(<name>)` は保存されたワークフローを名前で承認します。202* **権限ルール**: 許可ルール内の `Workflow` はすべてのワークフローを承認し、`Workflow(<name>)` は名前で 1 つの保存されたワークフローを承認します。

199* **自動権限モード**: [分類器](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)は呼び出しを確認し、それを承認できます。203* **自動権限モード**: [分類器](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)は呼び出しをレビューし、それを承認できます。

200* **権限をバイパスモード**: Claude Code は呼び出しを承認します。204* **バイパス権限モード**: Claude Code は呼び出しを承認します。

201* **`PreToolUse` フック**: 呼び出しに対して `allow` を返す[フック](/docs/ja/hooks#pretooluse)はそれを承認します。205* **`PreToolUse` フック**: 呼び出しに対して `allow` を返す[フック](/docs/ja/hooks#pretooluse)はそれを承認します。

202* **ホスト**: [`--permission-prompt-tool`](/docs/ja/cli-reference#cli-flags)はそれを承認するか、Agent SDK を使用して、[`canUseTool`](/docs/ja/agent-sdk/permissions)コールバックまたは[`PermissionRequest` フック](/docs/ja/hooks#permissionrequest)はそれを承認します。206* **ホスト**: [`--permission-prompt-tool`](/docs/ja/cli-reference#cli-flags)がそれを承認するか、Agent SDK では [`canUseTool`](/docs/ja/agent-sdk/permissions) コールバックまたは [`PermissionRequest` フック](/docs/ja/hooks#permissionrequest)がそれを承認します。

203 207 

204Desktop アプリでは、承認カードはワークフロー名、フェーズリスト、トークン使用量の注意を表示し、**Once**、**Always**、**Deny** アクションがあります。進捗ビューは Background tasks サイドペインに表示されます。208デスクトップアプリでは、承認カードはワークフロー名、フェーズリスト、トークン使用量の注意を表示し、**Once**、**Always**、**Deny** アクションを表示します。進行状況ビューは、バックグラウンドタスクサイドペインに表示されます。

205 209 

206ワークフローが生成するサブエージェントは[権限ルール](/docs/ja/settings-reference#permission-settings)を使用し、Claude Code は[サブエージェントが実行される権限モード](/docs/ja/sub-agents#permission-modes)の下のルールによってサブエージェントの権限モードを選択します。長い実行でプロンプトを回避するには、開始前にエージェントが必要とするツールを許可ルールに追加します。210ワークフローが生成するサブエージェントは、[権限ルール](/docs/ja/settings-reference#permission-settings)を使用し、Claude Code は[サブエージェントが実行される権限モード](/docs/ja/sub-agents#permission-modes)の下のルールによって権限モードを選択します。長い実行でプロンプトを避けるには、エージェントが必要とするツールを開始する前に許可ルールに追加します。

207 211 

208<h3 id="save-the-workflow-for-reuse">212<h3 id="save-the-workflow-for-reuse">

209 再利用用にワークフローを保存する213 再利用するためにワークフローを保存する

210</h3>214</h3>

211 215 

212Claude が繰り返すタスク用にワークフローを作成した場合、その実行のスクリプトをコマンドとして保存できます。すべてのブランチで実行するレビューなどのプロセスは、毎回同じオーケストレーションを実行します。216Claude が繰り返すタスク用のワークフローを書く場合、その実行のスクリプトをコマンドとして保存できます。すべてのブランチで実行するレビューなどのプロセスは、毎回同じオーケストレーションを実行します。

213 217 

214`/workflows` を実行し、保持したい実行を選択し、`s` を押します。保存ダイアログで、Tab は 2 つの保存場所を切り替えます。218`/workflows` を実行し、保持したい実行を選択して、`s` を押します。保存ダイアログで、Tab は 2 つの保存場所を切り替えます。

215 219 

216* `.claude/workflows/` プロジェクト内。リポジトリをクローンする全員と共有220* プロジェクト内の `.claude/workflows/`。リポジトリをクローンする全員と共有されます

217* `~/.claude/workflows/` ホームディレクトリ内。すべてのプロジェクトで利用可能、自分にのみ表示。[`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) を設定した場合、この場所はそのパスの下の `workflows/` ディレクトリです。221* ホームディレクトリ内の `~/.claude/workflows/`。すべてのプロジェクトで利用可能で、あなたにのみ表示されます。[`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) を設定した場合、この場所はそのパスの下の `workflows/` ディレクトリです。

218 222 

219保存ダイアログは個人用の場所の解決されたパスを表示します。223保存ダイアログは個人用の場所の解決されたパスを表示します。

220 224 

221Enter キーを押して保存します。ワークフローは、どちらかの場所から今後のセッションで `/<name>` として実行されます。225Enter を押して保存します。ワークフローは、どちらかの場所からの将来のセッションで `/<name>` として実行されます。

222 226 

223Claude Code は書き込み前に保存場所をシンボリックリンクでチェックし、エラーを表示する代わりに 1 つを通じて書き込みます。チェックする内容は保存場所によって異なります。227Claude Code は書き込み前に保存場所をシンボリックリンクでチェックし、エラーを表示してシンボリックリンクを通じて書き込みません。チェックする内容は、保存する場所によって異なります。

224 228 

225* プロジェクト場所: `.claude`、`.claude/workflows`、またはターゲットファイルがシンボリックリンクの場合、Claude Code は拒否します。229* プロジェクト場所: `.claude`、`.claude/workflows`、またはターゲットファイルがシンボリックリンクの場合、Claude Code は拒否します。

226* 個人場所: ターゲットファイル自体がシンボリックリンクの場合のみ Claude Code は拒否するため、ドットファイルツールで管理される `~/.claude` ディレクトリは引き続き機能します。230* 個人用の場所: Claude Code はターゲットファイル自体がシンボリックリンクの場合のみ拒否するため、ドットファイルツールで管理される `~/.claude` ディレクトリは引き続き機能します。

227 231 

228v2.1.216 より前は、Claude Code はリンクをたどり、ファイルを選択した場所の外に配置する可能性がありました。232v2.1.216 より前は、Claude Code はリンクをたどり、選択した場所の外にファイルを配置する可能性がありました。

229 233 

230複数の `.claude/` ディレクトリを持つモノレポでは、ワークフローをそれが適用されるパッケージの横に保持できます。v2.1.178 以降、プロジェクトの場所に保存すると、作業ディレクトリとリポジトリルートの間に既に存在する最も近い `.claude/workflows/` ディレクトリに書き込まれるか、まだ存在しない場合はリポジトリルートに書き込まれます。プロジェクトワークフローはその経路に沿ったすべての `.claude/workflows/` から読み込まれ、複数が同じ名前を定義する場合、Claude Code は作業ディレクトリに最も近いものを実行します。234複数の `.claude/` ディレクトリを持つモノレポでは、ワークフローを適用するパッケージの横に保持できます。v2.1.178 以降、プロジェクト場所に保存すると、作業ディレクトリとリポジトリルートの間に既に存在する最も近い `.claude/workflows/` ディレクトリに書き込むか、まだ存在しない場合はリポジトリルートに書き込みます。プロジェクトワークフローはそのパスに沿ったすべての `.claude/workflows/` からも読み込まれ、複数が同じ名前を定義する場合、Claude Code は作業ディレクトリに最も近いものを実行します。

231 235 

232プロジェクトワークフローと個人ワークフローが名前を共有する場合、プロジェクトワークフローが実行されます。236プロジェクトワークフローと個人用ワークフローが名前を共有する場合、プロジェクトのものが実行されます。

233 237 

234<h3 id="distribute-a-workflow-in-a-plugin">238<h3 id="distribute-a-workflow-in-a-plugin">

235 プラグインでワークフローを配布する239 プラグインでワークフローを配布する

236</h3>240</h3>

237 241 

238ワークフローをチーム間またはリポジトリ間で共有するには、[プラグイン](/docs/ja/plugins)に含めます。スクリプトをプラグインルートの `workflows/` ディレクトリに配置するか、[`workflows` マニフェストフィールド](/docs/ja/plugins-reference#component-path-fields)で別の場所を指します。242チーム間またはリポジトリ間でワークフローを共有するには、[プラグイン](/docs/ja/plugins)に含めます。スクリプトをプラグインルートの `workflows/` ディレクトリに配置するか、[`workflows` マニフェストフィールド](/docs/ja/plugins-reference#component-path-fields)で別の場所を指します。

239 243 

240プラグインワークフローはプラグイン名でネームスペース化されます。`meta.name` が `release-audit` であるスクリプトを含む `acme-tools` というプラグインは `/acme-tools:release-audit` として実行されます。244プラグインワークフローはプラグイン名でネームスペースされます。`meta.name` が `release-audit` のスクリプトを含む `acme-tools` というプラグインは `/acme-tools:release-audit` として実行されます。

241 245 

242<h3 id="pass-input-to-a-saved-workflow">246<h3 id="pass-input-to-a-saved-workflow">

243 保存されたワークフローに入力を渡す247 保存されたワークフローに入力を渡す

244</h3>248</h3>

245 249 

246保存されたワークフローは、`args` パラメーターを通じて入力を受け入れることができます。スクリプトはそれを `args` という名前のグローバルとして読み取ります。これを使用して、スクリプトを実行するたびに編集する代わりに、呼び出し時に研究質問、ターゲットパスのリスト、または設定オブジェクトを提供します。250保存されたワークフローは `args` パラメーターを通じて入力を受け入れることができます。スクリプトは `args` という名前のグローバルとして読み込みます。スクリプトを編集するのではなく、呼び出し時に研究質問、ターゲットパスのリスト、または構成オブジェクトを提供するために使用します。

247 251 

248次のプロンプトは、問題番号のリストを使用して保存されたワークフローを実行します。252次のプロンプトは、問題番号のリストを使用して保存されたワークフローを実行します。

249 253 


251Run /triage-issues on issues 1024, 1025, and 1030255Run /triage-issues on issues 1024, 1025, and 1030

252```256```

253 257 

254Claude はリストを構造化データとして渡すため、スクリプトは最初に解析することなく、`args` に対して配列とオブジェクトメソッドを直接呼び出すことができます。`args` が省略された場合、グローバルはスクリプト内で `undefined` です。258Claude はリストを構造化データとして渡すため、スクリプトは最初に解析することなく `args` に対して配列とオブジェクトメソッドを直接呼び出すことができます。`args` が省略された場合、グローバルはスクリプト内で `undefined` です。

255 259 

256<h2 id="example-workflow-prompts">260<h2 id="example-workflow-prompts">

257 ワークフローの実行例プロンプト261 ワークフローの実行例プロンプト


344 348 

345本体は最上位の `await` を持つプレーン JavaScript です。`agent()` は 1 つのサブエージェントを生成し、`pipeline()` はリスト内の 1 つのアイテムごとに 1 つを実行し、`parallel()` は一連のエージェント タスクを同時に実行してすべてが完了するのを待ちます。349本体は最上位の `await` を持つプレーン JavaScript です。`agent()` は 1 つのサブエージェントを生成し、`pipeline()` はリスト内の 1 つのアイテムごとに 1 つを実行し、`parallel()` は一連のエージェント タスクを同時に実行してすべてが完了するのを待ちます。

346 350 

347`agent()` 呼び出しは、実行中に停止した場合または回復不可能な API エラーが発生した場合は `null` に解決されます。`pipeline()` はその `null` を結果配列に保持するため、例は `.filter(Boolean)` で終わってそれらのエントリを削除します。351`agent()` 呼び出しは、実行中に停止した場合または回復不可能な API エラーが発生した場合は `null` に解決されます。[auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)では、分類器はサブエージェントが開始される前に `agent()` 呼び出しをブロックできます。ブロックされた呼び出しは `null` に解決され、理由とともに実行の進捗ビューに表示されます。`pipeline()` はその `null` を結果配列に保持するため、例は `.filter(Boolean)` で終わってそれらのエントリを削除します。

348 352 

349`agent()` 呼び出しで `schema` を渡す場合、そのサブエージェントはプローズの代わりに形状に一致する JSON を返します。Claude Code はサブエージェントを開始する前にスキーマをチェックします。スキーマが矛盾していることを証明できる場合、呼び出しは矛盾を名前付けするエラーで失敗し、サブエージェントは開始されません。証明できる 1 つの矛盾は、`additionalProperties: false` が除外する `required` キーです。353`agent()` 呼び出しで `schema` を渡す場合、そのサブエージェントはプローズの代わりに形状に一致する JSON を返します。Claude Code はサブエージェントを開始する前にスキーマをチェックします。スキーマが矛盾していることを証明できる場合、呼び出しは矛盾を名前付けするエラーで失敗し、サブエージェントは開始されません。証明できる 1 つの矛盾は、`additionalProperties: false` が除外する `required` キーです。

350 354 


432* [セッションをバックグラウンドにする](/docs/ja/agent-view#what-carries-over-when-you-background)場合、Claude Code はバックグラウンドセッションで同じ方法で実行を再生し、それを続行します。436* [セッションをバックグラウンドにする](/docs/ja/agent-view#what-carries-over-when-you-background)場合、Claude Code はバックグラウンドセッションで同じ方法で実行を再生し、それを続行します。

433* ワークフローが実行中に Claude Code を終了し、[エージェントビューがオン](/docs/ja/agent-view#from-inside-a-session)の場合、終了ダイアログは `Move to background and exit` を提供し、実行を同じ方法で引き継ぎます。代わりに `Exit and stop tasks` を選択するか、オプションが提供されない場合、実行はセッションで停止します。Claude Code は `~/.claude/projects/` のそのセッションのディレクトリの下に実行の保存された結果を保持するため、`claude --resume` で再開するセッションは Claude にワークフローを再起動するよう依頼するときにそれらを再生でき、新規に開始するセッションは再生するものがなく、ワークフローを最初から開始します。437* ワークフローが実行中に Claude Code を終了し、[エージェントビューがオン](/docs/ja/agent-view#from-inside-a-session)の場合、終了ダイアログは `Move to background and exit` を提供し、実行を同じ方法で引き継ぎます。代わりに `Exit and stop tasks` を選択するか、オプションが提供されない場合、実行はセッションで停止します。Claude Code は `~/.claude/projects/` のそのセッションのディレクトリの下に実行の保存された結果を保持するため、`claude --resume` で再開するセッションは Claude にワークフローを再起動するよう依頼するときにそれらを再生でき、新規に開始するセッションは再生するものがなく、ワークフローを最初から開始します。

434 438 

439[クラウドセッション](/docs/ja/claude-code-on-the-web)では、Claude Code はセッションの会話履歴とともに実行の結果も保存し、セッションの VM が回収されるときに生き残ります。[そのようなセッションを再度開く](/docs/ja/claude-code-on-the-web#environment-expired)ときに Claude にワークフローを再起動するよう依頼すると、完了したエージェントは依然として保存された結果を返します。

440 

441ローカルセッションとクラウドセッションの両方で、Claude が以前の実行を再起動し、Claude Code がその実行の保存された結果をまったく見つけられない場合、再起動は実行を自動的に最初から開始する代わりに `nothing to resume` エラーで失敗します。Claude にワークフローを新しい実行として最初から開始するよう依頼します。

442 

435<h3 id="cost">443<h3 id="cost">

436 コスト444 コスト

437</h3>445</h3>