SpyBara
Go Premium

Documentation 2026-10-06 23:59 UTC to 2026-10-07 19:00 UTC

54 files changed +580 −518. View all changes and history on the product overview
2026
Wed 7 20:01 Tue 6 23:59 Mon 5 23:58 Sun 4 23:58 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59

agent-sdk/hooks.md +17 −17

Details

27 SDK は、そのイベントタイプに登録されたフックをチェックします。これには、`options.hooks` に渡すコールバックフックと、対応する [`settingSources`](/docs/ja/agent-sdk/typescript#settingsource) または [`setting_sources`](/docs/ja/agent-sdk/python#settingsource) エントリが有効になっているときの設定ファイルからのシェルコマンドフックが含まれます。これはデフォルトの `query()` オプションで有効になっています。27 SDK は、そのイベントタイプに登録されたフックをチェックします。これには、`options.hooks` に渡すコールバックフックと、対応する [`settingSources`](/docs/ja/agent-sdk/typescript#settingsource) または [`setting_sources`](/docs/ja/agent-sdk/python#settingsource) エントリが有効になっているときの設定ファイルからのシェルコマンドフックが含まれます。これはデフォルトの `query()` オプションで有効になっています。

28 </Step>28 </Step>

29 29 

30 <Step title="マッチャーがどのフックを実行するかをフィルタリングする">30 <Step title="matcher がどのフックを実行するかをフィルタリングする">

31 フックに [`matcher`](#matchers) パターン(`"Write|Edit"` など)がある場合、SDK はそれをイベントのターゲット(たとえば、ツール名)に対してテストします。マッチャーのないフックは、そのタイプのすべてのイベントに対して実行されます。31 フックに [`matcher`](#matchers) パターン(`"Write|Edit"` など)がある場合、SDK はそれをイベントのターゲット(たとえば、ツール名)に対してテストします。matcher のないフックは、そのタイプのすべてのイベントに対して実行されます。

32 </Step>32 </Step>

33 33 

34 <Step title="コールバック関数が実行される">34 <Step title="コールバック関数が実行される">


40 </Step>40 </Step>

41</Steps>41</Steps>

42 42 

43次の例は、これらのステップをまとめたものです。`PreToolUse` フック(ステップ 1)を `"Write|Edit"` マッチャー(ステップ 3)で登録して、コールバックがファイル書き込みツールに対してのみ発火するようにします。トリガーされると、コールバックはツールの入力(ステップ 4)を受け取り、ファイルパスが `.env` ファイルをターゲットにしているかどうかをチェックし、`permissionDecision: "deny"` を返して操作をブロックします(ステップ 5)。43次の例は、これらのステップをまとめたものです。`PreToolUse` フック(ステップ 1)を `"Write|Edit"` matcher(ステップ 3)で登録して、コールバックがファイル書き込みツールに対してのみ発火するようにします。トリガーされると、コールバックはツールの入力(ステップ 4)を受け取り、ファイルパスが `.env` ファイルをターゲットにしているかどうかをチェックし、`permissionDecision: "deny"` を返して操作をブロックします(ステップ 5)。

44 44 

45<CodeGroup>45<CodeGroup>

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


78 options = ClaudeAgentOptions(78 options = ClaudeAgentOptions(

79 hooks={79 hooks={

80 # PreToolUse イベントのフックを登録する80 # PreToolUse イベントのフックを登録する

81 # マッチャーは Write と Edit ツール呼び出しのみにフィルタリングする81 # matcher は Write と Edit ツール呼び出しのみにフィルタリングする

82 "PreToolUse": [HookMatcher(matcher="Write|Edit", hooks=[protect_env_files])]82 "PreToolUse": [HookMatcher(matcher="Write|Edit", hooks=[protect_env_files])]

83 }83 }

84 )84 )


127 options: {127 options: {

128 hooks: {128 hooks: {

129 // PreToolUse イベントのフックを登録する129 // PreToolUse イベントのフックを登録する

130 // マッチャーは Write と Edit ツール呼び出しのみにフィルタリングする130 // matcher は Write と Edit ツール呼び出しのみにフィルタリングする

131 PreToolUse: [{ matcher: "Write|Edit", hooks: [protectEnvFiles] }]131 PreToolUse: [{ matcher: "Write|Edit", hooks: [protectEnvFiles] }]

132 }132 }

133 }133 }


140 ```140 ```

141</CodeGroup>141</CodeGroup>

142 142 

143どちらのスクリプトを実行しても、Claude は `.env` ファイルを作成しようとし、フックはツール呼び出しを拒否し、Claude の最終的な応答は `.env` ファイルを作成できないことを説明します。143どちらのスクリプトを実行しても、Claude は `.env` ファイルを作成しようとし、フックはツール呼び出しを拒否します。

144 144 

145<h2 id="available-hooks">145<h2 id="available-hooks">

146 利用可能なフック146 利用可能なフック


179| `ConfigChange` | いいえ | はい | 設定ファイル変更 | 設定を動的に再ロードする |179| `ConfigChange` | いいえ | はい | 設定ファイル変更 | 設定を動的に再ロードする |

180| `InstructionsLoaded` | いいえ | はい | `CLAUDE.md` またはルールファイルがコンテキストにロードされる | どの命令ファイルがロードされるかを監査する |180| `InstructionsLoaded` | いいえ | はい | `CLAUDE.md` またはルールファイルがコンテキストにロードされる | どの命令ファイルがロードされるかを監査する |

181| `WorktreeCreate` | いいえ | はい | Git ワークツリー作成 | 分離されたワークスペースを追跡する |181| `WorktreeCreate` | いいえ | はい | Git ワークツリー作成 | 分離されたワークスペースを追跡する |

182| `WorktreeRemove` | いいえ | はい | Git ワークツリー削除 | ワークスペースリソースをクリーンアップする |182| `WorktreeRemove` | いいえ | はい | `WorktreeCreate` フックによって作成された worktree が削除されようとしている | ワークスペースリソースをクリーンアップする |

183| `CwdChanged` | いいえ | はい | セッション中に作業ディレクトリが変更される | ディレクトリごとに環境変数を再ロードする |183| `CwdChanged` | いいえ | はい | セッション中に作業ディレクトリが変更される | ディレクトリごとに環境変数を再ロードする |

184| `FileChanged` | いいえ | はい | 監視対象ファイルが変更、作成、または削除される | プロジェクトファイルが変更されたときに設定を再ロードする |184| `FileChanged` | いいえ | はい | 監視対象ファイルが変更、作成、または削除される | プロジェクトファイルが変更されたときに設定を再ロードする |

185| `DirectoryAdded` | いいえ | はい | セッション中に作業ディレクトリが追加される | セッション中に追加されたリポジトリの依存関係をインストールする |185| `DirectoryAdded` | いいえ | はい | セッション中に作業ディレクトリが追加される | セッション中に追加されたリポジトリの依存関係をインストールする |


262* **トップレベルフィールド**はすべてのイベントで受け入れられます。`systemMessage` はユーザーにメッセージを表示し、`continue`(Python では `continue_`)はこのフック後にエージェントが実行を続けるかどうかを決定します。一部のイベントはこれらを破棄するか、別の場所に配信します。各[イベントのセクション](/docs/ja/hooks#hook-events)はフックページでそれらがどこに着地するかを説明しています。262* **トップレベルフィールド**はすべてのイベントで受け入れられます。`systemMessage` はユーザーにメッセージを表示し、`continue`(Python では `continue_`)はこのフック後にエージェントが実行を続けるかどうかを決定します。一部のイベントはこれらを破棄するか、別の場所に配信します。各[イベントのセクション](/docs/ja/hooks#hook-events)はフックページでそれらがどこに着地するかを説明しています。

263* **`hookSpecificOutput`** は現在の操作を制御します。内部に設定するフィールドはフックイベントタイプに依存します。263* **`hookSpecificOutput`** は現在の操作を制御します。内部に設定するフィールドはフックイベントタイプに依存します。

264 * `PreToolUse` フックの場合、ここで `permissionDecision`(`"allow"`、`"deny"`、`"ask"`、または `"defer"`)、`permissionDecisionReason`、および `updatedInput` を設定します。`"defer"` を返すと、`stop_reason` が `"tool_deferred"` である結果メッセージでターンが終了するため、[後で呼び出しを再開](/docs/ja/hooks#defer-a-tool-call-for-later)できます。264 * `PreToolUse` フックの場合、ここで `permissionDecision`(`"allow"`、`"deny"`、`"ask"`、または `"defer"`)、`permissionDecisionReason`、および `updatedInput` を設定します。`"defer"` を返すと、`stop_reason` が `"tool_deferred"` である結果メッセージでターンが終了するため、[後で呼び出しを再開](/docs/ja/hooks#defer-a-tool-call-for-later)できます。

265 * `PostToolUse` フックの場合、`additionalContext` を設定してツール結果に情報を追加できます。Claude がそれを見る前にツールの出力を置き換えるには、`updatedToolOutput` を設定します。これは両方の SDK のすべてのツールで機能します。古い `updatedMCPToolOutput` フィールドは MCP ツール出力のみを置き換え、非推奨です。265 * `PostToolUse` フックの場合、`additionalContext` を設定してツール結果に情報を追加できます。Claude がそれを見る前にツールの出力を置き換えるには、`updatedToolOutput` を設定します。これは両方の SDK のすべてのツールで機能します。古い `updatedMCPToolOutput` フィールドは MCP ツール出力のみを置き換えます。

266 * TypeScript SDK では、`PostToolUse` コールバックは `classifierContext` を返すこともできます。これはツール呼び出しの結果に関する短いメモで、[auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)の権限分類器用です。コールバックはアプリケーション独自のプロセスで実行されるため、分類器はメモで中継するユーザーステートメントをユーザーの意図として重視する可能性があります。このフィールドは TypeScript Agent SDK v0.3.236 以降が必要です。[auto モード分類器の結果に注釈を付ける](/docs/ja/hooks#annotate-a-result-for-the-auto-mode-classifier)は長さの上限、同期のみのルール、およびメモに何を入れないかをカバーしています。266 * TypeScript SDK では、`PostToolUse` コールバックは `classifierContext` を返すこともできます。これはツール呼び出しの結果に関する短いメモで、[auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)の権限分類器用です。コールバックはアプリケーション独自のプロセスで実行されるため、分類器はメモで中継するユーザーステートメントをユーザーの意図として重視する可能性があります。このフィールドは TypeScript Agent SDK v0.3.236 以降が必要です。[auto モード分類器の結果に注釈を付ける](/docs/ja/hooks#annotate-a-result-for-the-auto-mode-classifier)は長さの上限、同期のみのルール、およびメモに何を入れないかをカバーしています。

267 267 

268変更なしで操作を許可するには `{}` を返します。SDK コールバックフックは、[Claude Code シェルコマンドフック](/docs/ja/hooks#json-output)と同じ JSON 出力形式を使用します。これはすべてのフィールドとイベント固有のオプションを文書化しています。SDK 型定義については、[TypeScript](/docs/ja/agent-sdk/typescript#synchookjsonoutput) および [Python](/docs/ja/agent-sdk/python#synchookjsonoutput) SDK リファレンスを参照してください。268変更なしで操作を許可するには `{}` を返します。SDK コールバックフックは、[Claude Code シェルコマンドフック](/docs/ja/hooks#json-output)と同じ JSON 出力形式を使用します。これはすべてのフィールドとイベント固有のオプションを文書化しています。SDK 型定義については、[TypeScript](/docs/ja/agent-sdk/typescript#synchookjsonoutput) および [Python](/docs/ja/agent-sdk/python#synchookjsonoutput) SDK リファレンスを参照してください。

269 269 

270<Note>270<Note>

271 複数のフックまたはパーミッションルールが適用される場合、`deny` は `defer` より優先され、`defer` は `ask` より優先され、`ask` は `allow` より優先されます。いずれかのフックが `deny` を返す場合、他のフックに関係なく操作はブロックされます。271 複数のフックまたは権限ルールが適用される場合、`deny` は `defer` より優先され、`defer` は `ask` より優先され、`ask` は `allow` より優先されます。いずれかのフックが `deny` を返す場合、他のフックに関係なく操作はブロックされます。

272</Note>272</Note>

273 273 

274<h4 id="asynchronous-output">274<h4 id="asynchronous-output">


802</h3>802</h3>

803 803 

804* フックイベント名が正しく、大文字と小文字が区別されていることを確認してください(`preToolUse` ではなく `PreToolUse`)804* フックイベント名が正しく、大文字と小文字が区別されていることを確認してください(`preToolUse` ではなく `PreToolUse`)

805* マッチャーパターンがツール名と正確に一致していることを確認してください805* matcher パターンがツール名と正確に一致していることを確認してください

806* フックが `options.hooks` の正しいイベントタイプの下にあることを確認してください806* フックが `options.hooks` の正しいイベントタイプの下にあることを確認してください

807* マッチャーをサポートする非ツールフック(`Notification` や `SubagentStop` など)の場合、マッチャーは異なるフィールドに対してマッチし、`Stop` はマッチャーを完全に無視します([マッチャーパターン](/docs/ja/hooks#matcher-patterns)を参照)807* matcher をサポートする非ツールフック(`Notification` や `SubagentStop` など)の場合、matcher は異なるフィールドに対してマッチし、`Stop` は matcher を完全に無視します([matcher パターン](/docs/ja/hooks#matcher-patterns)を参照)

808* エージェントが [`max_turns`](/docs/ja/agent-sdk/python#claudeagentoptions) 制限に達した場合、セッションが終了してからフックが実行される前にセッションが終了するため、フックが発火しない可能性があります808* エージェントが [`max_turns`](/docs/ja/agent-sdk/python#claudeagentoptions) 制限に達した場合、フックが実行される前にセッションが終了するため、フックが発火しない可能性があります

809 809 

810<h3 id="matcher-not-filtering-as-expected">810<h3 id="matcher-not-filtering-as-expected">

811 マッチャーが期待通りにフィルタリングしない811 matcher が期待通りにフィルタリングしない

812</h3>812</h3>

813 813 

814マッチャーはツール名のみをマッチし、ファイルパスや他の引数はマッチしません。ファイルパスでフィルタリングするには、フック内で `tool_input.file_path` を確認してください:814matcher はツール名のみをマッチし、ファイルパスや他の引数はマッチしません。ファイルパスでフィルタリングするには、フック内で `tool_input.file_path` を確認してください:

815 815 

816```typescript theme={null}816```typescript theme={null}

817const myHook: HookCallback = async (input, toolUseID, { signal }) => {817const myHook: HookCallback = async (input, toolUseID, { signal }) => {


852 852 

853* すべての `PreToolUse` フックで `permissionDecision: 'deny'` の戻り値を確認してください853* すべての `PreToolUse` フックで `permissionDecision: 'deny'` の戻り値を確認してください

854* フックにログを追加して、返している `permissionDecisionReason` を確認してください854* フックにログを追加して、返している `permissionDecisionReason` を確認してください

855* マッチャーパターンが広すぎないことを確認してください:空のマッチャーはすべてのツールにマッチします855* matcher パターンが広すぎないことを確認してください:空の matcher はすべてのツールにマッチします

856 856 

857<h3 id="modified-input-not-applied">857<h3 id="modified-input-not-applied">

858 変更された入力が適用されない858 変更された入力が適用されない


878 Python でセッションフックが利用できない878 Python でセッションフックが利用できない

879</h3>879</h3>

880 880 

881`SessionStart` と `SessionEnd` は TypeScript で SDK コールバックフックとして登録できますが、その `HookEvent` タイプがそれらを省略しているため、Python SDK では利用できません。Python では、`.claude/settings.json` などの設定ファイルで定義された [シェルコマンドフック](/docs/ja/hooks#hook-events)としてのみ利用できます。SDK アプリケーションからシェルコマンドフックをロードするには、[`setting_sources`](/docs/ja/agent-sdk/python#settingsource) または [`settingSources`](/docs/ja/agent-sdk/typescript#settingsource) で適切な設定ソースを含めてください:881`SessionStart` と `SessionEnd` は TypeScript で SDK コールバックフックとして登録できますが、その `HookEvent` タイプがそれらを省略しているため、Python SDK では利用できません。Python では、`.claude/settings.json` などの設定ファイルで定義された [シェルコマンドフック](/docs/ja/hooks#hook-events)としてのみ利用できます。SDK アプリケーションがどの設定ファイルをロードするかは、[`setting_sources`](/docs/ja/agent-sdk/python#settingsource) または [`settingSources`](/docs/ja/agent-sdk/typescript#settingsource) によって決まります。このオプションを設定する場合は、フックを含むソースを含めてください:

882 882 

883<CodeGroup>883<CodeGroup>

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


900 サブエージェント権限プロンプトが増加する900 サブエージェント権限プロンプトが増加する

901</h3>901</h3>

902 902 

903複数のサブエージェントをスポーンする場合、各サブエージェントは独自のツール呼び出しに対して権限を個別にリクエストする可能性があります。繰り返されるプロンプトを避けるには、`PreToolUse` フックを使用して特定のツールを自動承認するか、権限ルールを設定してください。サブエージェントは [親会話から権限ルールを継承](/docs/ja/sub-agents#permission-modes)します。903複数のサブエージェントをスポーンする場合、各サブエージェントは独自のツール呼び出しに対して権限を個別に求める可能性があります。繰り返されるプロンプトを避けるには、`PreToolUse` フックを使用して特定のツールを自動承認するか、権限ルールを設定してください。サブエージェントは [親会話から権限ルールを継承](/docs/ja/sub-agents#permission-modes)します。

904 904 

905<h3 id="recursive-hook-loops-with-subagents">905<h3 id="recursive-hook-loops-with-subagents">

906 サブエージェントを使用した再帰的フックループ906 サブエージェントを使用した再帰的フックループ

Details

194 `ToolAnnotations`194 `ToolAnnotations`

195</h4>195</h4>

196 196 

197ツールの動作ヒント。[`tool()`](#tool) の `annotations` 引数として渡されます。`ToolAnnotations` は MCP SDK の `mcp.types.ToolAnnotations` を `maxResultSizeChars` フィールドで拡張し、各ヒントを camelCase または snake\_case で記述できます:`ToolAnnotations(readOnlyHint=True)` と `ToolAnnotations(read_only_hint=True)` は同等です。SDK がアノテーションを受け入れる場所であればどこでも、プレーンな `mcp.types.ToolAnnotations` を渡すこともできます。197ツールの動作ヒント。[`tool()`](#tool) の `annotations` 引数として渡されます。`ToolAnnotations` は MCP SDK の `mcp.types.ToolAnnotations` を `maxResultSizeChars` フィールドで拡張し、各ヒントを camelCase または snake\_case で記述できます:`ToolAnnotations(readOnlyHint=True)` と `ToolAnnotations(read_only_hint=True)` は同等です。オブジェクトからヒントを読み取る際は、インストールされている `mcp` パッケージが宣言している表記を使用してください:`mcp` 1.x では `.readOnlyHint`、2.x では `.read_only_hint` を使用し、`.maxResultSizeChars` はどちらでも動作します。SDK がアノテーションを受け入れる場所であればどこでも、プレーンな `mcp.types.ToolAnnotations` を渡すこともできます。

198 198 

199snake\_case 名と型付き `maxResultSizeChars` フィールドには Python Agent SDK 0.2.140 以降が必要です。バージョン 0.1.31 から 0.2.139 は `mcp.types.ToolAnnotations` を変更なしで再エクスポートします。バージョン 0.1.55 から 0.2.139 では、`maxResultSizeChars` をキーワード引数として渡すことができます:MCP クラスは追加フィールドを受け入れ、SDK は値を Claude Code に転送します。199snake\_case 名と型付き `maxResultSizeChars` フィールドには Python Agent SDK 0.2.140 以降が必要です。バージョン 0.1.31 から 0.2.139 は `mcp.types.ToolAnnotations` を変更なしで再エクスポートします。バージョン 0.1.55 から 0.2.139 では、`maxResultSizeChars` をキーワード引数として渡すことができます:MCP クラスは追加フィールドを受け入れ、SDK は値を Claude Code に転送します。

200 200 


1465| `enabled` | `type`、`budget_tokens`、`display` | 特定のトークン予算で思考を有効にします |1465| `enabled` | `type`、`budget_tokens`、`display` | 特定のトークン予算で思考を有効にします |

1466| `disabled` | `type` | 思考を無効にします |1466| `disabled` | `type` | 思考を無効にします |

1467 1467 

1468オプションの`display`フィールドは、思考テキストが`"summarized"`または`"omitted"`で返されるかどうかを制御します。Claude Opus 4.7以降では、APIデフォルトは`"omitted"`であるため、[`ThinkingBlock`](#thinkingblock)出力で思考コンテンツを受け取るには`"summarized"`を設定します。Claude Codeは`ANTHROPIC_BASE_URL`の背後にあるAmazon BedrockまたはGoogle Cloudのエージェントプラットフォームに`display`を送信しないため、これらのプロバイダーではOpus 4.7以降は`display`を`"summarized"`に設定した場合でも空の`ThinkingBlock`出力を返します。1468オプションの`display`フィールドは、思考テキストが`"summarized"`または`"omitted"`で返されるかどうかを制御します。Claude Opus 4.7以降では、APIデフォルトは`"omitted"`であるため、[`ThinkingBlock`](#thinkingblock)出力で思考コンテンツを受け取るには`"summarized"`を設定します。Claude Code は、Amazon Bedrock や Google Cloud の Agent Platform など、一部のプロバイダーへのリクエストから `display` を除外します。これらのプロバイダーでは、`display` を `"summarized"` に設定した場合でも、Opus 4.7 以降は空の `ThinkingBlock` 出力を返します。

1469 1469 

1470これらは`TypedDict`クラスであるため、実行時にはプレーンな辞書です。辞書リテラルとして構築するか、クラスをコンストラクタのように呼び出します。どちらも`dict`を生成します。`config.budget_tokens`ではなく`config["budget_tokens"]`でフィールドにアクセスします:1470これらは`TypedDict`クラスであるため、実行時にはプレーンな辞書です。辞書リテラルとして構築するか、クラスをコンストラクタのように呼び出します。どちらも`dict`を生成します。`config.budget_tokens`ではなく`config["budget_tokens"]`でフィールドにアクセスします:

1471 1471 


1875| `maxOutputTokens` | `int` | このモデルの最大出力トークン制限。 |1875| `maxOutputTokens` | `int` | このモデルの最大出力トークン制限。 |

1876| `canonicalModel` | `str` | 価格ルックアップに使用される正規モデル ID。エントリがキーとなっている生のモデル文字列(プロバイダー固有の ID またはエイリアスなど)と異なる場合があります。常に存在するわけではありません。 |1876| `canonicalModel` | `str` | 価格ルックアップに使用される正規モデル ID。エントリがキーとなっている生のモデル文字列(プロバイダー固有の ID またはエイリアスなど)と異なる場合があります。常に存在するわけではありません。 |

1877| `provider` | `str` | このモデルを提供した API プロバイダー。例:`firstParty`、`bedrock`、`vertex`、`foundry`、`anthropicAws`、`mantle`、または `gateway`。常に存在するわけではありません。 |1877| `provider` | `str` | このモデルを提供した API プロバイダー。例:`firstParty`、`bedrock`、`vertex`、`foundry`、`anthropicAws`、`mantle`、または `gateway`。常に存在するわけではありません。 |

1878| `costBasis` | `str` | このモデルの最新リクエストの価格算出に使用された価格表。定価の場合は `list`、[`modelPricing`](/docs/ja/settings-reference#modelpricing) テーブルの場合は `managed`、どちらもモデル ID に一致しなかった場合は `unknown` です。常に存在するわけではなく、TypedDict で宣言されていないため、`.get()` で読み取ってください。Claude Code v2.1.246 以降が必要です。 |

1878 1879 

1879<h3 id="streamevent">1880<h3 id="streamevent">

1880 `StreamEvent`1881 `StreamEvent`


2166 """Base error for Claude SDK."""2167 """Base error for Claude SDK."""

2167```2168```

2168 2169 

2169単一ショットの `query()` がエラー結果で終了する場合(例えば、ターン制限エラー)、SDK は最終結果メッセージを生成した後に [`ResultError`](#resulterror) を発生させます。Python Agent SDK バージョン 0.2.140 より前は、`ClaudeSDKError` サブクラスではない通常の `Exception` を発生させていました。2170単一ショットの `query()` がエラー結果で終了した場合(例えば、ターン制限エラー)、SDK は [`ResultError`](#resulterror) を発生させます。

2170 2171 

2171<h3 id="clinotfounderror">2172<h3 id="clinotfounderror">

2172 `CLINotFoundError`2173 `CLINotFoundError`


2216 `ResultError`2217 `ResultError`

2217</h3>2218</h3>

2218 2219 

2219Claude Code プロセスが実行を終了し、ターン制限エラーや API エラーなどのエラー結果で実行が終了した場合、最終的な [`ResultMessage`](#resultmessage) の後に発生します。`ResultError` は `ProcessError` のサブクラスであるため、既存の `except ProcessError` ハンドラーもこれをキャッチします。その属性は結果メッセージのフィールドを保持しているため、メッセージテキストを解析することなく、実行が失敗した理由に基づいて分岐できます。Python Agent SDK 0.2.140 以降が必要です。2220ターン制限エラーや API エラーなど、実行がエラーの[結果メッセージ](#resultmessage)で終了したために Claude Code プロセスが終了した場合に発生します。`ResultError` は `ProcessError` のサブクラスであるため、既存の `except ProcessError` ハンドラーもこれをキャッチします。その属性はその結果メッセージのフィールドを保持しているため、メッセージテキストを解析することなく、実行が失敗した理由に基づいて分岐できます。Python Agent SDK 0.2.140 以降が必要です。

2220 2221 

2221```python theme={null}2222```python theme={null}

2222class ResultError(ProcessError):2223class ResultError(ProcessError):


2649 hookEventName: Literal["PostToolUse"]2650 hookEventName: Literal["PostToolUse"]

2650 additionalContext: NotRequired[str]2651 additionalContext: NotRequired[str]

2651 updatedToolOutput: NotRequired[Any]2652 updatedToolOutput: NotRequired[Any]

2652 updatedMCPToolOutput: NotRequired[Any] # Deprecated: use updatedToolOutput, which works for all tools2653 updatedMCPToolOutput: NotRequired[Any] # MCP tools only. Prefer updatedToolOutput, which works for all tools

2653 2654 

2654 2655 

2655class PostToolUseFailureHookSpecificOutput(TypedDict):2656class PostToolUseFailureHookSpecificOutput(TypedDict):


2767 ツール入出力型2768 ツール入出力型

2768</h2>2769</h2>

2769 2770 

2770すべての組み込み Claude Code ツールの入出力スキーマのドキュメント。Python SDK はこれらを型としてエクスポートしませんが、メッセージ内のツール入出力の構造を表します。2771組み込み Claude Code ツールの入出力スキーマのドキュメント。Python SDK はこれらを型としてエクスポートしませんが、メッセージ内のツール入出力の構造を表します。

2771 2772 

2772各出力は、そのツールの [`UserMessage.tool_use_result`](#usermessage) から読み込む値です。キー名は Claude Code が発行する通りに表示されます。「存在する場合」または「オプション」というコメント付きで `| None` と注釈が付けられたキーは、適用されない場合は省略されます。2773各出力は、そのツールの [`UserMessage.tool_use_result`](#usermessage) から読み込む値です。キー名は Claude Code が発行する通りに表示されます。「存在する場合」または「オプション」というコメント付きで `| None` と注釈が付けられたキーは、適用されない場合は省略されます。

2773 2774 

Details

60 60 

61構造化された出力を使用するには、必要なデータの形状を説明する [JSON Schema](https://json-schema.org/understanding-json-schema/about) を定義し、`outputFormat` オプション(TypeScript)または `output_format` オプション(Python)を使用して `query()` に渡します。エージェントが完了すると、結果メッセージにはスキーマに一致する検証済みデータを含む `structured_output` フィールドが含まれます。61構造化された出力を使用するには、必要なデータの形状を説明する [JSON Schema](https://json-schema.org/understanding-json-schema/about) を定義し、`outputFormat` オプション(TypeScript)または `output_format` オプション(Python)を使用して `query()` に渡します。エージェントが完了すると、結果メッセージにはスキーマに一致する検証済みデータを含む `structured_output` フィールドが含まれます。

62 62 

63以下の例は、エージェントに Anthropic を調査し、会社名、設立年、本社を構造化された出力として返すよう求めています。63このページの例を実行する前に、[クイックスタート](/docs/ja/agent-sdk/quickstart#setup)に従って Claude Agent SDK をインストールしてください。以下の例は、エージェントに Anthropic を調査し、会社名、設立年、本社を構造化された出力として返すよう求めています。

64 64 

65<CodeGroup>65<CodeGroup>

66 ```typescript TypeScript theme={null}66 ```typescript TypeScript theme={null}


388 エラーハンドリング388 エラーハンドリング

389</h2>389</h2>

390 390 

391構造化された出力の生成は、エージェントがスキーマに一致する有効な JSON を生成できない場合に失敗する可能性があります。これは通常、スキーマがタスクに対して複雑すぎる場合、タスク自体が曖昧な場合、またはエージェントが検証エラーを修正しようとして再試行制限に達した場合に発生します。また、検証の失敗がなくても発生する可能性があります。[モデルフォールバック](/docs/ja/model-config#automatic-model-fallback)は既に完了した出力をストリーム中に取り消すことができ、再試行がそれを置き換えない場合、実行は同じエラーで終了します。デバッグの前に、結果メッセージの `errors` リストをチェックして、2 つの原因を区別してください。391構造化された出力の生成は、エージェントがスキーマに一致する有効な JSON を生成できない場合に失敗する可能性があります。これは通常、スキーマがタスクに対して複雑すぎる場合、タスク自体が曖昧な場合、またはエージェントが検証エラーを修正しようとして再試行制限に達した場合に発生します。また、検証の失敗がなくても発生する可能性があります。[モデルフォールバック](/docs/ja/model-config#automatic-model-fallback)は既に完了した出力をストリーム中に取り消すことができ、再試行がそれを置き換えない場合、実行は同じエラーで終了します。スキーマをデバッグする前に、エラー結果メッセージの `errors` リストを確認して、2 つの原因を区別してください。

392 392 

393エラーが発生すると、結果メッセージには何が問題かを示す `subtype` があります:393エラーが発生すると、結果メッセージには何が問題かを示す `subtype` があります:

394 394 

395| Subtype | 意味 |395| Subtype | 意味 |

396| - | - |396| - | - |

397| `success` | 出力が正常に生成および検証されました |397| `success` | 出力が正常に生成および検証されました |

398| `error_max_structured_output_retries` | 複数の試行後に有効な出力が生き残りませんでした(検証の失敗、またはモデルフォールバックの取り消しで再試行がない場合) |398| `error_max_structured_output_retries` | 複数の試行後に有効な出力が残りませんでした(検証の失敗、または成功した再試行のないモデルフォールバックによる取り消し) |

399 399 

400結果は `subtype` が `success` でも `structured_output` 値がない場合に終了することもあります。例えば、実行がエージェントによる構造化出力の生成なしに完了した場合です。その場合も失敗として扱ってください。トラブルシューティングエントリ [structured\_output is None but the result says success](/docs/ja/agent-sdk/troubleshooting#structured_output-is-none-but-the-result-says-success) がこのケースをカバーしています。以下の例は、`subtype` が `success` で `structured_output` が存在する場合にのみ結果を成功として扱い、他のすべての結果を失敗として処理します:400結果は `subtype` が `success` でも `structured_output` 値がない場合に終了することもあります。例えば、実行がエージェントによる構造化出力の生成なしに完了した場合です。その場合も失敗として扱ってください。トラブルシューティングエントリ [structured\_output is None but the result says success](/docs/ja/agent-sdk/troubleshooting#structured_output-is-none-but-the-result-says-success) がこのケースをカバーしています。以下の例は、`subtype` が `success` で `structured_output` が存在する場合にのみ結果を成功として扱い、他のすべての結果を失敗として処理します:

401 401 

Details

186 console.error("Claim failed:", error.message);186 console.error("Claim failed:", error.message);

187});187});

188 188 

189for await (const message of claimedQuery) {189try {

190 for await (const message of claimedQuery) {

190 console.log(message);191 console.log(message);

192 }

193} catch (error) {

194 // クレームが拒否された場合、クレームされたクエリはエラー結果を生成した後にスローします

195 console.error(`Session ended with an error: ${error}`);

191}196}

192```197```

193 198 


539| プロパティ | 型 | デフォルト | 説明 |544| プロパティ | 型 | デフォルト | 説明 |

540| :- | :- | :- | :- |545| :- | :- | :- | :- |

541| `abortController` | `AbortController` | `new AbortController()` | 操作をキャンセルするためのコントローラー |546| `abortController` | `AbortController` | `new AbortController()` | 操作をキャンセルするためのコントローラー |

542| `additionalDirectories` | `string[]` | `[]` | Claude がアクセスできる追加のディレクトリ。SDK は各エントリを `--add-dir` として Claude Code に渡すため、`project` 設定ソースを使用している場合、Claude Code は[そのディレクトリのスキル、コマンド、サブエージェントも読み込みます](/docs/ja/permissions#additional-directories-grant-file-access-not-configuration) |547| `additionalDirectories` | `string[]` | `[]` | Claude がアクセスできる追加のディレクトリ。SDK は各エントリを `--add-dir` として Claude Code に渡すため、`project` 設定ソースを使用すると、Claude Code は[そのディレクトリのスキル、コマンド、サブエージェントも読み込みます](/docs/ja/permissions#additional-directories-grant-file-access-not-configuration) |

543| `agent` | `string` | `undefined` | メインスレッドのエージェント名。エージェントは `agents` オプションまたは設定で定義されている必要があります |548| `agent` | `string` | `undefined` | メインスレッドのエージェント名。エージェントは `agents` オプションまたは設定で定義されている必要があります |

544| `agents` | `Record<string, [`AgentDefinition`](#agentdefinition)>` | `undefined` | サブエージェントをプログラムで定義します |549| `agents` | `Record<string, [`AgentDefinition`](#agentdefinition)>` | `undefined` | サブエージェントをプログラムで定義します |

545| `agentProgressSummaries` | `boolean` | `false` | `true` の場合、サブエージェントの 1 行の進捗サマリーを生成し、`summary` フィールドを介して [`task_progress`](#sdktaskprogressmessage) イベントで転送します。フォアグラウンドとバックグラウンドの両方のサブエージェントに適用されます |550| `agentProgressSummaries` | `boolean` | `false` | `true` の場合、サブエージェントの 1 行の進捗サマリーを生成し、`summary` フィールドを介して [`task_progress`](#sdktaskprogressmessage) イベントで転送します。フォアグラウンドとバックグラウンドの両方のサブエージェントに適用されます |

546| `allowDangerouslySkipPermissions` | `boolean` | `false` | 権限のバイパスを有効にします。起動時、または後から `setPermissionMode()` を通じて `permissionMode: 'bypassPermissions'` を使用する場合に必須です。`permissionMode: 'plan'` との相互作用については [plan モード](/docs/ja/agent-sdk/permissions#plan-mode-plan)を参照してください |551| `allowDangerouslySkipPermissions` | `boolean` | `false` | 権限のバイパスを有効にします。起動時、または後から `setPermissionMode()` を介して `permissionMode: 'bypassPermissions'` を使用する場合に必要です。`permissionMode: 'plan'` との相互作用については [plan モード](/docs/ja/agent-sdk/permissions#plan-mode-plan)を参照してください |

547| `allowedTools` | `string[]` | `[]` | プロンプトを表示せずに自動承認するツール。これは Claude をこれらのツールのみに制限するものではありません。ここで[タスク追跡ツール](/docs/ja/agent-sdk/todo-tracking#model-availability)のいずれかを指定すると、Claude Code はセッションでもその機能を有効にします。リストにないその他のツールは `permissionMode` と `canUseTool` にフォールスルーします。ツールをブロックするには `disallowedTools` を使用します。[権限](/docs/ja/agent-sdk/permissions#allow-and-deny-rules)を参照してください |552| `allowedTools` | `string[]` | `[]` | 確認なしで自動承認するツール。これは Claude をこれらのツールのみに制限するものではありません。ここで[タスク追跡ツール](/docs/ja/agent-sdk/todo-tracking#model-availability)のいずれかを指定すると、Claude Code はセッションでもその機能を有効にします。リストにないその他のツールは `permissionMode` と `canUseTool` に処理が委ねられます。ツールをブロックするには `disallowedTools` を使用してください。[権限](/docs/ja/agent-sdk/permissions#allow-and-deny-rules)を参照してください |

548| `betas` | [`SdkBeta`](#sdkbeta)`[]` | `[]` | ベータ機能を有効にします |553| `betas` | [`SdkBeta`](#sdkbeta)`[]` | `[]` | ベータ機能を有効にします |

549| `canUseTool` | [`CanUseTool`](#canusetool) | `undefined` | カスタム権限関数。[権限フロー](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)がプロンプトにフォールスルーした場合にのみ呼び出されます。`allowedTools`、許可ルール、または `permissionMode` によって自動承認された呼び出しでは呼び出されません。許可ルールは[どのモードでも自動承認されないアクション](/docs/ja/permission-modes#actions-no-mode-auto-approves)を事前承認しません。詳細は [`CanUseTool`](#canusetool) を参照してください |554| `canUseTool` | [`CanUseTool`](#canusetool) | `undefined` | カスタム権限関数。[権限フロー](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)がプロンプトの表示に至った場合にのみ呼び出されます。`allowedTools`、許可ルール、または `permissionMode` によって自動承認された呼び出しに対しては呼び出されません。許可ルールは[どのモードでも自動承認されないアクション](/docs/ja/permission-modes#actions-no-mode-auto-approves)を事前承認しません。詳細は [`CanUseTool`](#canusetool) を参照してください |

550| `continue` | `boolean` | `false` | 最新の会話を続行します |555| `continue` | `boolean` | `false` | 最新の会話を続行します |

551| `cwd` | `string` | `process.cwd()` | 現在の作業ディレクトリ |556| `cwd` | `string` | `process.cwd()` | 現在の作業ディレクトリ |

552| `debug` | `boolean` | `false` | Claude Code プロセスのデバッグモードを有効にします |557| `debug` | `boolean` | `false` | Claude Code プロセスのデバッグモードを有効にします |

553| `debugFile` | `string` | `undefined` | デバッグログを特定のファイルパスに書き込みます。暗黙的にデバッグモードを有効にします |558| `debugFile` | `string` | `undefined` | デバッグログを特定のファイルパスに書き込みます。暗黙的にデバッグモードが有効になります |

554| `disallowedTools` | `string[]` | `[]` | 拒否するツール。`"Bash"` のような名前のみの指定は、ツールを Claude のコンテキストから削除します。`"Bash(rm *)"` のようなスコープ付きルールはツールを利用可能なままにし、`bypassPermissions` を含むすべての権限モードで、[記述されたとおりの](/docs/ja/permissions#bash-rule-limits)コマンドに一致する呼び出しを拒否します。[権限](/docs/ja/agent-sdk/permissions#allow-and-deny-rules)を参照してください |559| `disallowedTools` | `string[]` | `[]` | 拒否するツール。`"Bash"` のような単独の名前は、そのツールを Claude のコンテキストから削除します。`"Bash(rm *)"` のようなスコープ付きルールはツールを利用可能なままにし、`bypassPermissions` を含むすべての権限モードで、[記述どおりの](/docs/ja/permissions#bash-rule-limits)コマンドに一致する呼び出しを拒否します。[権限](/docs/ja/agent-sdk/permissions#allow-and-deny-rules)を参照してください |

555| `effort` | `'low' \| 'medium' \| 'high' \| 'xhigh' \| 'max'` | `undefined` | Claude が応答にどれだけの労力をかけるかを制御します。適応型思考と連携して思考の深さを導きます。[effort レベルを調整する](/docs/ja/model-config#adjust-effort-level)を参照してください |560| `effort` | `'low' \| 'medium' \| 'high' \| 'xhigh' \| 'max'` | `undefined` | Claude が応答にかける労力を制御します。adaptive thinking と連携して思考の深さを導きます。[effort レベルを調整する](/docs/ja/model-config#adjust-effort-level)を参照してください |

556| `enableFileCheckpointing` | `boolean` | `false` | 巻き戻しのためのファイル変更追跡を有効にします。[ファイルチェックポイント機能](/docs/ja/agent-sdk/file-checkpointing)を参照してください |561| `enableFileCheckpointing` | `boolean` | `false` | 巻き戻しのためのファイル変更追跡を有効にします。[ファイルのチェックポイント機能](/docs/ja/agent-sdk/file-checkpointing)を参照してください |

557| `env` | `Record<string, string \| undefined>` | `process.env` | 環境変数。設定すると、`process.env` とマージされるのではなくサブプロセスの環境を置き換えるため、`PATH` などの継承された変数を保持するには `{ ...process.env, YOUR_VAR: 'value' }` を渡してください。このパターンの例については[遅い API レスポンスや停止した API レスポンスに対処する](#handle-slow-or-stalled-api-responses)を、基盤となる CLI が読み取る変数については[環境変数](/docs/ja/env-vars)を参照してください。User-Agent ヘッダーでアプリを識別するには `CLAUDE_AGENT_SDK_CLIENT_APP` を設定します |562| `env` | `Record<string, string \| undefined>` | `process.env` | 環境変数。設定すると、`process.env` とマージされるのではなくサブプロセスの環境が置き換えられるため、`PATH` などの継承された変数を保持するには `{ ...process.env, YOUR_VAR: 'value' }` を渡してください。このパターンの例については[遅い、または停止した API レスポンスを処理する](#handle-slow-or-stalled-api-responses)を、基盤となる CLI が読み取る変数については[環境変数](/docs/ja/env-vars)を参照してください。User-Agent ヘッダーでアプリを識別するには `CLAUDE_AGENT_SDK_CLIENT_APP` を設定します |

558| `executable` | `'bun' \| 'deno' \| 'node'` | 自動検出 | 使用する JavaScript ランタイム |563| `executable` | `'bun' \| 'deno' \| 'node'` | 自動検出 | 使用する JavaScript ランタイム |

559| `executableArgs` | `string[]` | `[]` | 実行ファイルに渡す引数 |564| `executableArgs` | `string[]` | `[]` | 実行可能ファイルに渡す引数 |

560| `extraArgs` | `Record<string, string \| null>` | `{}` | 追加の引数 |565| `extraArgs` | `Record<string, string \| null>` | `{}` | 追加の引数 |

561| `fallbackModel` | `string` | `undefined` | プライマリモデルが失敗した場合に使用するモデル。カンマ区切りのリストを受け付けます。順序と上限については[フォールバックモデルチェーン](/docs/ja/model-config#fallback-model-chains)を参照してください。ガイダンスについては[モデルを選択する](/docs/ja/agent-sdk/configuration#choose-a-model)を参照してください |566| `fallbackModel` | `string` | `undefined` | プライマリモデルが失敗した場合に使用するモデル。カンマ区切りのリストを受け付けます。順序と上限については[フォールバックモデルチェーン](/docs/ja/model-config#fallback-model-chains)を参照してください。ガイダンスについては[モデルを選択する](/docs/ja/agent-sdk/configuration#choose-a-model)を参照してください |

562| `forkSession` | `boolean` | `false` | `resume` で再開する際に、元のセッションを続行するのではなく新しいセッション ID にフォークします |567| `forkSession` | `boolean` | `false` | `resume` で再開する際、元のセッションを続行する代わりに新しいセッション ID にフォークします |

563| `forwardSubagentText` | `boolean` | `false` | サブエージェントのテキストと思考ブロックを、`parent_tool_use_id` が設定されたアシスタントメッセージおよびユーザーメッセージとして転送し、コンシューマーがネストされたトランスクリプトをレンダリングできるようにします。このオプションがない場合、Claude Code はサブエージェントの `tool_use` ブロックと `tool_result` ブロックを出力しますが、テキストや思考は出力しません。Claude Code v2.1.219 以降では、すべてのネスト深度のサブエージェントからのメッセージが転送されます。v2.1.219 より前は、深度 1 のサブエージェントからのメッセージのみが表示されていました。フォークされたスキルが生成するサブエージェントのメッセージ、およびネストされたフォークされたスキルのメッセージには v2.1.275 以降が必要です |568| `forwardSubagentText` | `boolean` | `false` | サブエージェントのテキストブロックと思考ブロックを、`parent_tool_use_id` を設定した assistant メッセージおよび user メッセージとして転送し、利用側がネストされたトランスクリプトを表示できるようにします。このオプションがない場合、Claude Code はサブエージェントの `tool_use` ブロックと `tool_result` ブロックを出力しますが、テキストや思考は出力しません。Claude Code v2.1.219 以降では、すべてのネストの深さのサブエージェントからのメッセージが転送されます。v2.1.219 より前は、深さ 1 のサブエージェントからのメッセージのみが表示されていました。フォークされたスキルが起動するサブエージェントのメッセージ、およびネストされたフォークスキルのメッセージには v2.1.275 以降が必要です |

564| `hooks` | `Partial<Record<`[`HookEvent`](#hookevent)`, `[`HookCallbackMatcher`](#hookcallbackmatcher)`[]>>` | `{}` | イベントのフックコールバック |569| `hooks` | `Partial<Record<`[`HookEvent`](#hookevent)`, `[`HookCallbackMatcher`](#hookcallbackmatcher)`[]>>` | `{}` | イベントのフックコールバック |

565| `includeHookEvents` | `boolean` | `false` | フックのライフサイクルイベントを [`SDKHookStartedMessage`](#sdkhookstartedmessage)、[`SDKHookProgressMessage`](#sdkhookprogressmessage)、[`SDKHookResponseMessage`](#sdkhookresponsemessage) としてメッセージストリームに含めます。`SessionStart` フックと `Setup` フックのライフサイクルイベントは常に含まれるため、このオプションは不要です。`Notification`、`SessionEnd`、`PreCompact`、`PostCompact` など一部のフックイベントは、このオプションを指定しても `SDKHookStartedMessage` を生成しません。これらのイベントでも、1 秒以上実行されるコマンドフックが出力を生成している間は Claude Code は `SDKHookProgressMessage` を出力し、`SDKHookResponseMessage` は[バックグラウンドで実行される](/docs/ja/hooks#run-hooks-in-the-background)フックが終了した場合にのみ出力します |570| `includeHookEvents` | `boolean` | `false` | フックのライフサイクルイベントを [`SDKHookStartedMessage`](#sdkhookstartedmessage)、[`SDKHookProgressMessage`](#sdkhookprogressmessage)、[`SDKHookResponseMessage`](#sdkhookresponsemessage) としてメッセージストリームに含めます。`SessionStart` フックと `Setup` フックのライフサイクルイベントは常に含まれるため、このオプションは不要です。`Notification`、`SessionEnd`、`PreCompact`、`PostCompact` などの一部のフックイベントは、このオプションを指定しても `SDKHookStartedMessage` を生成しません。これらのイベントについても、Claude Code は 1 秒以上実行されるコマンドフックが出力を生成している間は `SDKHookProgressMessage` を出力し、[バックグラウンドで実行される](/docs/ja/hooks#run-hooks-in-the-background)フックが終了したときにのみ `SDKHookResponseMessage` を出力します |

566| `includePartialMessages` | `boolean` | `false` | 部分メッセージイベントを含めます |571| `includePartialMessages` | `boolean` | `false` | 部分メッセージイベントを含めます |

567| `loadTimeoutMs` | `number` | `60000` | *アルファ版。* 再開時のマテリアライズ中の各 `sessionStore.load()` および `sessionStore.listSubkeys()` 呼び出しのタイムアウト(ミリ秒)。アダプターがこの時間内に完了しない場合、クエリはハングせずに失敗します。`sessionStore` が設定されていない場合は無視されます |572| `loadTimeoutMs` | `number` | `60000` | *アルファ版。* 再開時の実体化処理における、各 `sessionStore.load()` および `sessionStore.listSubkeys()` 呼び出しのタイムアウト(ミリ秒)。アダプターがこの時間内に完了しない場合、クエリはハングせずに失敗します。`sessionStore` が設定されていない場合は無視されます |

568| `managedSettings` | `Settings` | `undefined` | ホストプロセスが生成されたセッションに提供するポリシー層の設定。管理者がデプロイした管理設定があるマシンでは、管理者の優先順位が最も高い管理ソースが `parentSettingsBehavior: 'merge'` を設定していない限り Claude Code はこれらを無視し、[`policyHelper`](/docs/ja/settings-reference#policyhelper) が管理設定を提供している間は決してマージしません。マージされた値は制限のみを許可するフィルターを通過します。フィルターが許可する内容と `allowManaged*Only` ロックについては[親設定を制限する](/docs/ja/claude-apps-gateway#restrict-parent-settings)で説明しています。[`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/ja/env-vars) を設定するホストでは、次の 3 つのキーが代わりにこのペイロードから直接読み取られます。Claude Code v2.1.222 以降ではその[モデル設定](/docs/ja/model-config#restrict-model-selection)、v2.1.246 以降ではどの管理ソースも設定していない場合の [`modelPricing`](/docs/ja/settings-reference#modelpricing)、v2.1.247 以降ではその `ENABLE_TOOL_SEARCH` env エントリです |573| `managedSettings` | `Settings` | `undefined` | ホストプロセスが起動したセッションに提供する、ポリシー階層の設定。管理者がデプロイした管理設定があるマシンでは、管理者の最も優先度の高い管理ソースが `parentSettingsBehavior: 'merge'` を設定していない限り Claude Code はこれらを無視し、[`policyHelper`](/docs/ja/settings-reference#policyhelper) が管理設定を提供している間は決してマージしません。マージされた値は、制限を強める方向のみを許可するフィルターを通過します。フィルターが受け入れる内容と `allowManaged*Only` ロックについては[親の設定を制限する](/docs/ja/claude-apps-gateway#restrict-parent-settings)で説明しています。[`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/ja/env-vars) を設定するホストでは、代わりに 3 つのキーがこのペイロードから直接読み取られます:Claude Code v2.1.222 以降ではその[モデル設定](/docs/ja/model-config#restrict-model-selection)、v2.1.246 以降ではどの管理ソースも設定していない場合の [`modelPricing`](/docs/ja/settings-reference#modelpricing)、v2.1.247 以降ではその `ENABLE_TOOL_SEARCH` env エントリです |

569| `maxBudgetUsd` | `number` | `undefined` | クライアント側のコスト見積もりがこの USD 値に達したらクエリを停止します。この呼び出し自体の支出のみがカウントされ、再開されたセッションから復元された合計はカウントされません。精度に関する注意点とリセット動作については[コストと使用量を追跡する](/docs/ja/agent-sdk/cost-tracking)を参照してください |574| `maxBudgetUsd` | `number` | `undefined` | クライアント側のコスト見積もりがこの USD 値に達したときにクエリを停止します。その呼び出し自体の支出のみをカウントし、再開されたセッションから復元された合計はカウントされません。精度に関する注意点とリセット時の動作については[コストと使用量を追跡する](/docs/ja/agent-sdk/cost-tracking)を参照してください |

570| `maxThinkingTokens` | `number` | `undefined` | *非推奨:* 代わりに `thinking` を使用してください。思考プロセスの最大トークン数 |575| `maxThinkingTokens` | `number` | `undefined` | *非推奨:* 代わりに `thinking` を使用してください。思考プロセスの最大トークン数 |

571| `maxTurns` | `number` | `undefined` | エージェントの最大ターン数(ツール使用の往復) |576| `maxTurns` | `number` | `undefined` | エージェントの最大ターン数(ツール使用の往復) |

572| `mcpServers` | `Record<string, [`McpServerConfig`](#mcpserverconfig)>` | `{}` | MCP サーバーの設定 |577| `mcpServers` | `Record<string, [`McpServerConfig`](#mcpserverconfig)>` | `{}` | MCP サーバーの設定 |

573| `model` | `string` | CLI のデフォルト | Claude のモデルエイリアスまたは完全なモデル名。[使用可能な値とプロバイダー固有の ID](/docs/ja/model-config#available-models) を参照してください |578| `model` | `string` | CLI のデフォルト | Claude のモデルエイリアスまたは完全なモデル名。[受け付けられる値とプロバイダー固有の ID](/docs/ja/model-config#available-models)を参照してください |

574| `onElicitation` | `(request: ElicitationRequest, options: { signal: AbortSignal }) => Promise<ElicitationResult>` | `undefined` | MCP elicitation リクエストを処理するためのコールバック。MCP サーバーがユーザー入力を要求し、どのフックも先に処理しない場合に呼び出されます。指定しない場合、処理されない elicitation リクエストは自動的に拒否されます |579| `onElicitation` | `(request: ElicitationRequest, options: { signal: AbortSignal }) => Promise<ElicitationResult>` | `undefined` | MCP elicitation リクエストを処理するためのコールバック。MCP サーバーがユーザー入力を要求し、どのフックも先にそれを処理しない場合に呼び出されます。指定しない場合、処理されない elicitation リクエストは自動的に拒否されます |

575| `outputFormat` | `{ type: 'json_schema', schema: JSONSchema }` | `undefined` | エージェントの結果の出力形式を定義します。詳細は[構造化出力](/docs/ja/agent-sdk/structured-outputs)を参照してください |580| `outputFormat` | `{ type: 'json_schema', schema: JSONSchema }` | `undefined` | エージェントの結果の出力形式を定義します。詳細は[構造化出力](/docs/ja/agent-sdk/structured-outputs)を参照してください |

576| `outputStyle` | `string` | `undefined` | `Options` のフィールドではありません。代わりに、インラインの [`settings`](/docs/ja/settings) オブジェクトまたは設定ファイルで `outputStyle` を設定してください。[出力スタイルを有効にする](/docs/ja/agent-sdk/modifying-system-prompts#activate-an-output-style)を参照してください |581| `outputStyle` | `string` | `undefined` | `Options` のフィールドではありません。代わりに、インラインの [`settings`](/docs/ja/settings) オブジェクトまたは設定ファイルで `outputStyle` を設定してください。[出力スタイルを有効にする](/docs/ja/agent-sdk/modifying-system-prompts#activate-an-output-style)を参照してください |

577| `pathToClaudeCodeExecutable` | `string` | バンドルされたネイティブバイナリから自動解決 | Claude Code 実行ファイルへのパス。インストール時にオプションの依存関係がスキップされた場合、またはプラットフォームがサポート対象に含まれていない場合にのみ必要です |582| `pathToClaudeCodeExecutable` | `string` | バンドルされたネイティブバイナリから自動解決 | Claude Code 実行可能ファイルへのパス。インストール時にオプションの依存関係がスキップされた場合、またはプラットフォームがサポート対象に含まれていない場合にのみ必要です |

578| `permissionMode` | [`PermissionMode`](#permissionmode) | `undefined` | セッションの権限モード。省略した場合、セッションは auto モードで開始される可能性があります。Claude Code が開始時の権限モードをどのように選択するかについては[権限モード](/docs/ja/agent-sdk/permissions#permission-modes)を参照してください |583| `permissionMode` | [`PermissionMode`](#permissionmode) | `undefined` | セッションの権限モード。省略すると、セッションは auto モードで開始される場合があります。Claude Code が開始時の権限モードを選択する方法については[権限モード](/docs/ja/agent-sdk/permissions#permission-modes)を参照してください |

579| `permissionPromptToolName` | `string` | `undefined` | 権限プロンプト用の MCP ツール名 |584| `permissionPromptToolName` | `string` | `undefined` | 権限プロンプト用の MCP ツール名 |

580| `permissionPrompts` | `'host' \| 'none'` | `'host'` | 権限プロンプトに誰が応答するかを指定します。`'host'` はプロンプトを [`canUseTool`](#canusetool) コールバックまたは `permissionPromptToolName` ツールにルーティングし、`'none'` は[プロンプトを表示するはずだった呼び出しを拒否します](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)。Claude Code v2.1.259 以降が必要です |585| `permissionPrompts` | `'host' \| 'none'` | `'host'` | 権限プロンプトに誰が応答するかを指定します:`'host'` はプロンプトを [`canUseTool`](#canusetool) コールバックまたは `permissionPromptToolName` ツールにルーティングし、`'none'` は[プロンプトが表示されるはずだった呼び出しを拒否します](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)。Claude Code v2.1.259 以降が必要です |

581| `persistSession` | `boolean` | `true` | `false` の場合、ディスクへのセッションの永続化を無効にします。セッションは後で再開できません |586| `persistSession` | `boolean` | `true` | `false` の場合、ディスクへのセッションの永続化を無効にします。セッションを後で再開することはできません |

582| `planModeInstructions` | `string` | `undefined` | plan モード用のカスタムワークフロー指示。`permissionMode` が `'plan'` の場合、この文字列がデフォルトの plan モードのワークフロー本文を置き換えます。CLI は引き続き、読み取り専用を強制するプリアンブルと ExitPlanMode プロトコルのフッターでこれをラップします |587| `planModeInstructions` | `string` | `undefined` | plan モード用のカスタムワークフロー指示。`permissionMode` が `'plan'` の場合、この文字列がデフォルトの plan モードのワークフロー本文を置き換えます。CLI は引き続き、読み取り専用を強制する前文と ExitPlanMode プロトコルのフッターでこれをラップします |

583| `plugins` | [`SdkPluginConfig`](#sdkpluginconfig)`[]` | `[]` | ローカルパスからカスタムプラグインを読み込みます。詳細は[プラグイン](/docs/ja/agent-sdk/plugins)を参照してください |588| `plugins` | [`SdkPluginConfig`](#sdkpluginconfig)`[]` | `[]` | ローカルパスからカスタムプラグインを読み込みます。詳細は[プラグイン](/docs/ja/agent-sdk/plugins)を参照してください |

584| `projectConfigRoot` | `string` | `undefined` | `cwd` がその worktree となっている信頼済みチェックアウトの絶対パス。Claude Code は、プロジェクト設定、`.mcp.json`、およびプロジェクトの `.claude/` のコマンド、エージェント、スキル、ワークフロー、ルーティン、出力スタイルを `cwd` ではなくこのディレクトリから読み取り、`CLAUDE_PROJECT_DIR` をこのディレクトリに設定します。フック、`apiKeyHelper` などのヘルパースクリプト、stdio MCP サーバーは、このディレクトリを作業ディレクトリとして起動します。`CLAUDE.md` ファイルと `.claude/rules/` は引き続き `cwd` から読み込まれます。Claude Code v2.1.275 以降が必要です |589| `projectConfigRoot` | `string` | `undefined` | `cwd` を worktree として持つ、信頼されたチェックアウトの絶対パス。Claude Code は、プロジェクト設定、`.mcp.json`、およびプロジェクトの `.claude/` にあるコマンド、エージェント、スキル、ワークフロー、ルーティン、出力スタイルを `cwd` ではなくこのディレクトリから読み取り、`CLAUDE_PROJECT_DIR` をこのディレクトリに設定します。フック、`apiKeyHelper` などのヘルパースクリプト、stdio MCP サーバーは、このディレクトリを作業ディレクトリとして起動します。`CLAUDE.md` ファイルと `.claude/rules/` は引き続き `cwd` から読み込まれます。Claude Code v2.1.275 以降が必要です |

585| `promptSuggestions` | `boolean` | `false` | プロンプト候補を有効にします。ターンの後、Claude Code は予測された次のユーザープロンプトを含む `prompt_suggestion` メッセージを出力します。アカウントが使用制限に近づいているか達している間など、一部のターンでは Claude Code は候補を生成しません。[Claude Code が候補をスキップする場合](/docs/ja/interactive-mode#when-claude-code-skips-suggestions)を参照してください |590| `promptSuggestions` | `boolean` | `false` | プロンプト候補を有効にします。ターンの後、Claude Code は予測される次のユーザープロンプトを含む `prompt_suggestion` メッセージを出力します。アカウントが使用制限に近づいている、または達している間など、一部のターンでは Claude Code は候補を生成しません。[Claude Code が候補をスキップする場合](/docs/ja/interactive-mode#when-claude-code-skips-suggestions)を参照してください |

586| `resume` | `string` | `undefined` | 再開するセッション ID |591| `resume` | `string` | `undefined` | 再開するセッション ID |

587| `resumeDropsTurn` | `string` | `undefined` | `resumeSessionAt` と併用します。切り詰めを伴う再開で破棄しようとするターンのプロンプト UUID です。破棄される範囲に、取り込まれたキュー内のメッセージやタスク通知など、そのターンに帰属しないものが含まれている場合、Claude Code は再開を拒否し、拒否メッセージで `--resume-drops-turn` フラグを示します。このペアを読み取るのは Agent SDK と print モードの再開のみです。Claude Code v2.1.223 以降が必要です |592| `resumeDropsTurn` | `string` | `undefined` | `resumeSessionAt` と併用します:切り詰めを伴う再開で破棄する予定のターンのプロンプト UUID。破棄される範囲に、取り込まれたキュー内のメッセージやタスク通知など、そのターンに帰属しないものが含まれている場合、Claude Code は再開を拒否し、拒否メッセージで `--resume-drops-turn` フラグを示します。この組み合わせを読み取るのは、Agent SDK と print モードでの再開のみです。Claude Code v2.1.223 以降が必要です |

588| `resumeSessionAt` | `string` | `undefined` | 特定のメッセージ UUID の時点でセッションを再開します |593| `resumeSessionAt` | `string` | `undefined` | 特定のメッセージ UUID の時点でセッションを再開します |

589| `sandbox` | [`SandboxSettings`](#sandboxsettings) | `undefined` | サンドボックスの動作をプログラムで設定します。詳細は[サンドボックス設定](#sandboxsettings)を参照してください |594| `sandbox` | [`SandboxSettings`](#sandboxsettings) | `undefined` | サンドボックスの動作をプログラムで設定します。詳細は[サンドボックス設定](#sandboxsettings)を参照してください |

590| `sessionId` | `string` | 自動生成 | 自動生成する代わりに、セッションに特定の UUID を使用します |595| `sessionId` | `string` | 自動生成 | 自動生成する代わりに、セッションに特定の UUID を使用します |

591| `sessionStore` | [`SessionStore`](/docs/ja/agent-sdk/session-storage#the-sessionstore-interface) | `undefined` | 別のホストが再開できるように、セッションのトランスクリプトを外部バックエンドにミラーリングします。[外部ストレージにセッションを永続化する](/docs/ja/agent-sdk/session-storage)を参照してください |596| `sessionStore` | [`SessionStore`](/docs/ja/agent-sdk/session-storage#the-sessionstore-interface) | `undefined` | 別のホストが再開できるように、セッションのトランスクリプトを外部バックエンドにミラーリングします。[外部ストレージにセッションを永続化する](/docs/ja/agent-sdk/session-storage)を参照してください |

592| `sessionStoreFlush` | `'batched' \| 'eager'` | `'batched'` | *アルファ版。* `sessionStore` のフラッシュモード。`sessionStore` が設定されていない場合は無視されます |597| `sessionStoreFlush` | `'batched' \| 'eager'` | `'batched'` | *アルファ版。* `sessionStore` のフラッシュモード。`sessionStore` が設定されていない場合は無視されます |

593| `settings` | `string \| Settings` | `undefined` | インラインの[設定](/docs/ja/settings)オブジェクト、設定ファイルのパス、またはインライン JSON 文字列。[優先順位](/docs/ja/settings#settings-precedence)におけるフラグ設定レイヤーに値を設定します。実行時に [`applyFlagSettings()`](#applyflagsettings) で変更できます |598| `settings` | `string \| Settings` | `undefined` | インラインの[設定](/docs/ja/settings)オブジェクト、設定ファイルのパス、またはインライン JSON 文字列。[優先順位](/docs/ja/settings#settings-precedence)におけるフラグ設定レイヤーに値を設定します。実行時には [`applyFlagSettings()`](#applyflagsettings) で変更できます |

594| `settingSources` | [`SettingSource`](#settingsource)`[]` | CLI のデフォルト(すべてのソース) | 読み込むファイルシステム設定を制御します。ユーザー、プロジェクト、ローカルの設定を無効にするには `[]` を渡します。[エンドポイント管理ポリシー](/docs/ja/managed-settings#delivery-mechanisms)はこの指定に関係なく読み込まれます。サーバー管理設定は、セッションが[対象となる設定](/docs/ja/server-managed-settings#platform-availability)で組織の認証情報を使って認証される場合に取得されます。[Claude Code の機能を使用する](/docs/ja/agent-sdk/claude-code-features#what-settingsources-does-not-control)を参照してください |599| `settingSources` | [`SettingSource`](#settingsource)`[]` | CLI のデフォルト(すべてのソース) | 読み込むファイルシステム設定を制御します。ユーザー、プロジェクト、ローカルの設定を無効にするには `[]` を渡します。[エンドポイント管理ポリシー](/docs/ja/managed-settings#delivery-mechanisms)はこの指定に関係なく読み込まれます。サーバー管理設定は、セッションが[対象となる構成](/docs/ja/server-managed-settings#platform-availability)で組織の認証情報を使用して認証した場合に取得されます。[Claude Code の機能を使用する](/docs/ja/agent-sdk/claude-code-features#what-settingsources-does-not-control)を参照してください |

595| `skills` | `string[] \| 'all'` | `undefined` | セッションで使用可能なスキル。検出されたすべてのスキルを有効にするには `'all'` を、またはスキル名のリストを渡します。正確な名前のみを渡してください。Agent SDK v0.3.221 以降では、SDK は Claude Code プロセスを開始する前に、不正な形式の名前とワイルドカード形式の名前をエラーで拒否します。設定すると、SDK は Skill ツールを自動的に `allowedTools` に追加します。`tools` も渡す場合は、そのリストに `'Skill'` を含めてください。[スキル](/docs/ja/agent-sdk/skills)を参照してください |600| `skills` | `string[] \| 'all'` | `undefined` | セッションで利用可能なスキル。検出されたすべてのスキルを有効にするには `'all'` を、または特定のスキル名のリストを渡します。正確な名前のみを渡してください。Agent SDK v0.3.221 以降では、SDK は Claude Code プロセスを開始する前に、不正な形式やワイルドカード形式の名前をエラーとして拒否します。設定すると、SDK は Skill ツールを `allowedTools` に自動的に追加します。`tools` も渡す場合は、そのリストに `'Skill'` を含めてください。[スキル](/docs/ja/agent-sdk/skills)を参照してください |

596| `spawnClaudeCodeProcess` | `(options: SpawnOptions) => SpawnedProcess` | `undefined` | Claude Code プロセスを生成するカスタム関数。VM、コンテナ、またはリモート環境で Claude Code を実行する場合に使用します |601| `spawnClaudeCodeProcess` | `(options: SpawnOptions) => SpawnedProcess` | `undefined` | Claude Code プロセスを起動するためのカスタム関数。VM、コンテナ、またはリモート環境で Claude Code を実行する場合に使用します |

597| `stderr` | `(data: string) => void` | `undefined` | stderr 出力のコールバック |602| `stderr` | `(data: string) => void` | `undefined` | stderr 出力用のコールバック |

598| `strictMcpConfig` | `boolean` | `false` | `mcpServers` で渡されたサーバーのみを使用し、プロジェクトの `.mcp.json`、ユーザー設定、プラグインが提供する MCP サーバー、[claude.ai コネクタ](/docs/ja/mcp#use-mcp-servers-from-claude-ai)を無視します |603| `strictMcpConfig` | `boolean` | `false` | `mcpServers` で渡されたサーバーのみを使用し、プロジェクトの `.mcp.json`、ユーザー設定、プラグインが提供する MCP サーバー、[claude.ai のコネクタ](/docs/ja/mcp#use-mcp-servers-from-claude-ai)を無視します |

599| `systemPrompt` | `string \| string[] \| { type: 'custom'; prompt: string \| string[]; snapshot?: boolean } \| { type: 'preset'; preset: 'claude_code'; append?: string; excludeDynamicSections?: boolean; snapshot?: boolean }` | `undefined`(最小限のプロンプト) | システムプロンプトの設定。カスタムプロンプトには文字列を渡し、Claude Code のシステムプロンプトを使用するには `{ type: 'preset', preset: 'claude_code' }` を渡します。静的部分とリクエストごとの部分の間にエクスポートされた `SYSTEM_PROMPT_DYNAMIC_BOUNDARY` 定数を挟んだ文字列の配列を渡すと、[カスタムプロンプトの静的部分をキャッシュ](/docs/ja/agent-sdk/modifying-system-prompts#cache-the-static-part-of-a-custom-prompt)できます。プリセットオブジェクト形式を使用する場合は、`append` を追加すると追加の指示で拡張でき、`excludeDynamicSections: true` を設定するとセッションごとのコンテキストを最初のユーザーメッセージに移動して[マシン間でのプロンプトキャッシュの再利用を改善](/docs/ja/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines)できます。`snapshot: false` を設定すると、[セッションが最初のリクエストで記録したプロンプトを再利用する](/docs/ja/agent-sdk/modifying-system-prompts#change-the-prompt-of-an-existing-session)代わりに、リクエストごとにプロンプトを再構築します。カスタムプロンプトで `snapshot` を設定するには、`{ type: 'custom', prompt }` 形式を渡します。`{ type: 'custom' }` 形式と `snapshot` フィールドには TypeScript Agent SDK v0.3.257 以降が必要です |604| `systemPrompt` | `string \| string[] \| { type: 'custom'; prompt: string \| string[]; snapshot?: boolean } \| { type: 'preset'; preset: 'claude_code'; append?: string; excludeDynamicSections?: boolean; snapshot?: boolean }` | `undefined`(最小限のプロンプト) | システムプロンプトの設定。カスタムプロンプトには文字列を渡し、Claude Code のシステムプロンプトを使用するには `{ type: 'preset', preset: 'claude_code' }` を渡します。静的な部分とリクエストごとの部分の間にエクスポートされた `SYSTEM_PROMPT_DYNAMIC_BOUNDARY` 定数を挟んだ文字列の配列を渡すと、[カスタムプロンプトの静的な部分をキャッシュ](/docs/ja/agent-sdk/modifying-system-prompts#cache-the-static-part-of-a-custom-prompt)できます。プリセットのオブジェクト形式を使用する場合は、`append` を追加して追加の指示で拡張でき、`excludeDynamicSections: true` を設定するとセッションごとのコンテキストが最初のユーザーメッセージに移動し、[マシン間でのプロンプトキャッシュの再利用が向上します](/docs/ja/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines)。`snapshot: false` を設定すると、[セッションが最初のリクエストで記録したプロンプトを再利用する](/docs/ja/agent-sdk/modifying-system-prompts#change-the-prompt-of-an-existing-session)代わりに、リクエストごとにプロンプトを再構築します。カスタムプロンプトで `snapshot` を設定するには、`{ type: 'custom', prompt }` 形式を渡します。`{ type: 'custom' }` 形式と `snapshot` フィールドには TypeScript Agent SDK v0.3.257 以降が必要です |

600| `taskBudget` | `{ total: number }` | `undefined` | *アルファ版。* トークン単位の API 側のタスク予算。設定すると、モデルに残りのトークン予算が伝えられ、モデルはツールの使用ペースを調整して上限に達する前に作業をまとめられるようになります |605| `taskBudget` | `{ total: number }` | `undefined` | *アルファ版。* API 側のタスク予算(トークン単位)。設定すると、モデルに残りのトークン予算が伝えられ、モデルはツールの使用ペースを調整し、上限に達する前に作業をまとめることができます |

601| `thinking` | [`ThinkingConfig`](#thinkingconfig) | サポートされているモデルでは `{ type: 'adaptive' }` | Claude の思考/推論の動作を制御します。オプションについては [`ThinkingConfig`](#thinkingconfig) を参照してください |606| `thinking` | [`ThinkingConfig`](#thinkingconfig) | サポートされているモデルでは `{ type: 'adaptive' }` | Claude の思考/推論の動作を制御します。オプションについては [`ThinkingConfig`](#thinkingconfig) を参照してください |

602| `title` | `string` | `undefined` | セッションの表示タイトル。`resume` または `continue` で再開する場合は、再開されたセッションに保存されているタイトルが優先されます。既存のセッションのタイトルを変更するには [`renameSession()`](#renamesession) を使用します |607| `title` | `string` | `undefined` | セッションの表示タイトル。`resume` または `continue` で再開する場合は、再開されたセッションに永続化されているタイトルが優先されます。既存のセッションのタイトルを変更するには [`renameSession()`](#renamesession) を使用してください |

603| `toolAliases` | `Record<string, string>` | `undefined` | 組み込みツール名を MCP ツール名にマッピングし、Claude が組み込みツールの代わりに MCP 実装を呼び出すようにします。例: `{ Bash: 'mcp__workspace__bash' }` |608| `toolAliases` | `Record<string, string>` | `undefined` | 組み込みツール名を MCP ツール名にマッピングし、Claude が組み込みツールの代わりに MCP の実装を呼び出すようにします。例:`{ Bash: 'mcp__workspace__bash' }` |

604| `toolConfig` | [`ToolConfig`](#toolconfig) | `undefined` | 組み込みツールの動作の設定。詳細は [`ToolConfig`](#toolconfig) を参照してください |609| `toolConfig` | [`ToolConfig`](#toolconfig) | `undefined` | 組み込みツールの動作に関する設定。詳細は [`ToolConfig`](#toolconfig) を参照してください |

605| `tools` | `string[] \| { type: 'preset'; preset: 'claude_code' }` | `undefined` | ツールの設定。ツール名の配列を渡すか、プリセットを使用して Claude Code のデフォルトツールを取得します |610| `tools` | `string[] \| { type: 'preset'; preset: 'claude_code' }` | `undefined` | ツールの設定。ツール名の配列を渡すか、プリセットを使用して Claude Code のデフォルトツールを取得します |

606| `verbatimPrompts` | `boolean` | `false` | すべてのプロンプトを記述されたとおりに配信します。SDK は各ユーザーメッセージを `client_composed: true` 付きで送信します。これらのメッセージで Claude Code がスキップする処理については [`client_composed`](#sdkusermessage) を参照してください。プロンプトテキストにエンドユーザーが入力していないコンテンツが含まれる場合にこのオプションを使用します。ターンごとに制御するには、このオプションをオフのままにして、代わりに個々のストリーミングされるメッセージで `client_composed` を設定します。TypeScript Agent SDK v0.3.280 以降と Claude Code v2.1.248 以降が必要です。これらの SDK バージョンにバンドルされている Claude Code のバージョンは Claude Code の要件を満たしています |611| `verbatimPrompts` | `boolean` | `false` | すべてのプロンプトを記述どおりに配信します。SDK は各ユーザーメッセージを `client_composed: true` 付きで送信します。これらのメッセージで Claude Code がスキップする処理については [`client_composed`](#sdkusermessage) を参照してください。プロンプトのテキストにエンドユーザーが入力していないコンテンツが含まれる場合にこのオプションを使用します。ターンごとに制御するには、このオプションをオフのままにし、代わりに個々のストリーミングメッセージで `client_composed` を設定します。TypeScript Agent SDK v0.3.280 以降と Claude Code v2.1.248 以降が必要です。これらの SDK バージョンにバンドルされている Claude Code のバージョンは、Claude Code の要件を満たしています |

607 612 

608<h4 id="handle-slow-or-stalled-api-responses">613<h4 id="handle-slow-or-stalled-api-responses">

609 遅い API レスポンスや停止した API レスポンスに対処する614 遅い、または停止した API レスポンスを処理する

610</h4>615</h4>

611 616 

612CLI サブプロセスは、API のタイムアウトと停止検出を制御するいくつかの環境変数を読み取ります。これらは `env` オプションを通じて渡します。617CLI サブプロセスは、API のタイムアウトと停止検出を制御するいくつかの環境変数を読み取ります。これらは `env` オプションを通じて渡します:

613 618 

614```typescript theme={null}619```typescript theme={null}

615import { query } from "@anthropic-ai/claude-agent-sdk";620import { query } from "@anthropic-ai/claude-agent-sdk";


627});632});

628```633```

629 634 

630* `API_TIMEOUT_MS`: Anthropic クライアントのリクエストごとのタイムアウト(ミリ秒)。デフォルトは `600000` です。メインループとすべてのサブエージェントに適用されます。635* `API_TIMEOUT_MS`:Anthropic クライアントのリクエストごとのタイムアウト(ミリ秒)。デフォルトは `600000` です。メインループとすべてのサブエージェントに適用されます。

631* `CLAUDE_CODE_MAX_RETRIES`: API の最大再試行回数。デフォルトは `10` で、上限は `15` です。各再試行にはそれぞれ `API_TIMEOUT_MS` の時間枠が与えられるため、最悪の場合の経過時間はおおよそ `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` にバックオフを加えた値になります。より長い障害を待ち続ける必要がある無人実行では、[`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/ja/errors#tune-retry-behavior) を設定してください。これにより一時的な容量エラーが無期限に再試行され、Claude Code v2.1.199 以降ではその他の一時的なエラーのデフォルトが `300` に引き上げられ、この変数の上限が撤廃されます。636* `CLAUDE_CODE_MAX_RETRIES`:API の最大再試行回数。デフォルトは `10` で、上限は `15` です。各再試行にはそれぞれ独自の `API_TIMEOUT_MS` の時間枠が与えられるため、最悪の場合の経過時間はおおよそ `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` にバックオフを加えた値になります。より長い障害を待ち続ける必要がある無人実行では、[`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/ja/errors#tune-retry-behavior) を設定してください。これにより一時的な容量エラーは無制限に再試行され、Claude Code v2.1.199 以降では、その他の一時的なエラーのデフォルトが `300` に引き上げられ、この変数の上限が撤廃されます。

632* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: サブエージェントの停止ウォッチドッグ。ストリームウォッチドッグが有効な間、デフォルトは `CLAUDE_STREAM_IDLE_TIMEOUT_MS` に 5 分を加えた値で、その変数を引き上げない限り `600000` になります。ストリームウォッチドッグが無効の場合、デフォルトは `600000` です。v2.1.257 より前は、デフォルトは常に `600000` でした。637* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`:サブエージェントの停止ウォッチドッグ。ストリームウォッチドッグが有効な間、デフォルトは `CLAUDE_STREAM_IDLE_TIMEOUT_MS` に 5 分を加えた値で、その変数を引き上げない限り `600000` になります。ストリームウォッチドッグが無効な場合、デフォルトは `600000` です。v2.1.257 より前は、デフォルトは常に `600000` でした。

633 638 

634 タイマーはストリームイベントのたびにリセットされます。停止が発生すると、Claude Code はサブエージェントを中止し、停止を親に報告します。バックグラウンドのサブエージェントの場合は、さらにタスクを失敗としてマークし、部分的な結果があれば添付します。639 タイマーはストリームイベントごとにリセットされます。停止した場合、Claude Code はサブエージェントを中止し、停止を親に報告します。バックグラウンドのサブエージェントの場合は、タスクを失敗としてマークし、部分的な結果があれば添付します。

635* `CLAUDE_ENABLE_STREAM_WATCHDOG` と `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: ヘッダーは到着したもののレスポンスボディのストリーミングが停止した場合にリクエストを中止するストリームウォッチドッグ。ウォッチドッグはすべてのプロバイダーでデフォルトで有効です。無効にするには `CLAUDE_ENABLE_STREAM_WATCHDOG=0` を設定します。`CLAUDE_STREAM_IDLE_TIMEOUT_MS` のデフォルトは `300000` で、この値が最小値として適用されます。中止後に Claude Code がレスポンスの進行状況に応じて何を行うかについては、[自動再試行](/docs/ja/errors#automatic-retries)で説明しています。640* `CLAUDE_ENABLE_STREAM_WATCHDOG` と `CLAUDE_STREAM_IDLE_TIMEOUT_MS`:ヘッダーは到着したもののレスポンス本文のストリーミングが止まった場合にリクエストを中止するストリームウォッチドッグ。ウォッチドッグはすべてのプロバイダーでデフォルトで有効です。無効にするには `CLAUDE_ENABLE_STREAM_WATCHDOG=0` を設定します。`CLAUDE_STREAM_IDLE_TIMEOUT_MS` のデフォルトは `300000` で、この値が最小値として適用されます。中止後に Claude Code がレスポンスの進行状況に応じて何を行うかについては、[自動再試行](/docs/ja/errors#automatic-retries)で説明しています。

636 641 

637 `ANTHROPIC_BASE_URL` の背後にあるゲートウェイがキープアライブ ping でレスポンスを開いたままにしている間、ウォッチドッグはそのレスポンスを待ち続けます。その間も `includePartialMessages` を設定しているホストは `ping` [ストリームイベント](#sdkpartialassistantmessage)を受信し続けるため、無通信を理由にセッションをタイムアウトさせるのではなく、これらのフレームを生存確認として扱ってください。v2.1.257 より前は、最後の実際のストリームイベントから 5 分後にフレームが停止していました。642 `ANTHROPIC_BASE_URL` の背後にあるゲートウェイがキープアライブの ping でレスポンスを開いたまま保持している間、ウォッチドッグがそのレスポンスを待ち続けるとき、`includePartialMessages` を設定しているホストは `ping` [ストリームイベント](#sdkpartialassistantmessage)を受信し続けます。そのため、無応答を理由にセッションをタイムアウトさせるのではなく、これらのフレームを生存確認として扱ってください。v2.1.257 より前は、最後の実際のストリームイベントから 5 分後にフレームが停止していました。

638 643 

639<h3 id="query-object">644<h3 id="query-object">

640 `Query` オブジェクト645 `Query` オブジェクト


696 701 

697| メソッド | 説明 |702| メソッド | 説明 |

698| :- | :- |703| :- | :- |

699| `interrupt()` | クエリを中断します。ストリーミング入力モードでのみ使用できます。CLI が [`SDKSystemMessage.capabilities`](#sdksystemmessage) で `interrupt_receipt_v1` ケイパビリティを通知している場合、中断が到着した時点で保留中だったメッセージを一覧にした [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse) で解決されます。v2.1.205 より前の CLI では `undefined` で解決されます |704| `interrupt()` | クエリを中断します。ストリーミング入力モードでのみ使用できます。CLI が [`SDKSystemMessage.capabilities`](#sdksystemmessage) で `interrupt_receipt_v1` ケイパビリティを通知している場合、中断が届いた時点で保留中だったメッセージを列挙した [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse) で解決されます。v2.1.205 より前の CLI では `undefined` で解決されます |

700| `rewindFiles(userMessageId, options?)` | 指定したユーザーメッセージ時点の状態にファイルを復元します。変更をプレビューするには `{ dryRun: true }` を渡します。`enableFileCheckpointing: true` が必要です。[ファイルチェックポイント機能](/docs/ja/agent-sdk/file-checkpointing)を参照してください |705| `rewindFiles(userMessageId, options?)` | 指定したユーザーメッセージの時点の状態にファイルを復元します。変更をプレビューするには `{ dryRun: true }` を渡します。`enableFileCheckpointing: true` が必要です。[ファイルのチェックポイント機能](/docs/ja/agent-sdk/file-checkpointing)を参照してください |

701| `setPermissionMode()` | 権限モードを変更します(ストリーミング入力モードでのみ使用可能) |706| `setPermissionMode()` | 権限モードを変更します(ストリーミング入力モードでのみ使用可能) |

702| `setModel()` | モデルを変更します(ストリーミング入力モードでのみ使用可能)。`undefined` または文字列 `"default"` を渡すと、[Claude Code のデフォルトモデル](/docs/ja/model-config)にリセットされます |707| `setModel()` | モデルを変更します(ストリーミング入力モードでのみ使用可能)。`undefined` または文字列 `"default"` を渡すと、[Claude Code のデフォルトモデル](/docs/ja/model-config)にリセットされます |

703| `setMaxThinkingTokens()` | *非推奨:* 代わりに `thinking` オプションを使用してください。最大思考トークン数を変更します。`null` を渡すと思考がセッションのデフォルトにリセットされます。セッション途中の上書きはクリアされ、思考が無効になっているセッションでは思考は無効のままです |708| `setMaxThinkingTokens()` | *非推奨:* 代わりに `thinking` オプションを使用してください。最大思考トークン数を変更します。`null` を渡すと、思考がセッションのデフォルトにリセットされます。セッション途中での上書きは解除され、思考が無効になっているセッションでは思考はオフのままです |

704| `applyFlagSettings(settings)` | 実行時にセッションのフラグ設定レイヤーに設定をマージします(ストリーミング入力モードでのみ使用可能)。[`applyFlagSettings()`](#applyflagsettings) を参照してください |709| `applyFlagSettings(settings)` | 実行時にセッションのフラグ設定レイヤーに設定をマージします(ストリーミング入力モードでのみ使用可能)。[`applyFlagSettings()`](#applyflagsettings) を参照してください |

705| `updateSettings(source, settings)` | 許可リストに含まれる 1 つのキーをプロジェクトのローカル設定ファイルまたはユーザー設定ファイルに書き込み、その値を以降のセッションにも保持します。[`updateSettings()`](#updatesettings) を参照してください。TypeScript SDK v0.3.257 以降が必要です(Claude Code v2.1.257 がバンドルされています) |710| `updateSettings(source, settings)` | 許可リストに含まれる 1 つのキーをプロジェクトのローカル設定ファイルまたはユーザー設定ファイルに書き込み、その値が以降のセッションにも保持されるようにします。[`updateSettings()`](#updatesettings) を参照してください。Claude Code v2.1.257 をバンドルした TypeScript SDK v0.3.257 以降が必要です |

706| `initializationResult()` | サポートされているコマンド、モデル、アカウント情報、出力スタイルの設定を含む完全な初期化結果を返します |711| `initializationResult()` | サポートされているコマンド、モデル、アカウント情報、出力スタイルの設定を含む、完全な初期化結果を返します |

707| `reinitialize()` | 実行中の CLI に `initialize` コントロールリクエストを再送信し、キャッシュされた初回接続時の結果ではなく新しい結果を返します。切断後にセッションに再接続する場合など、トランスポートの途絶後に使用すると、保留中の権限リクエストが再び `canUseTool` コールバックに届きます。レスポンスが失われたリクエストは再度ディスパッチされるため、コールバックはリクエスト ID ごとに冪等にしてください。Claude Code v2.1.195 以降が必要です |712| `reinitialize()` | 実行中の CLI に `initialize` コントロールリクエストを再送信し、キャッシュされた初回接続時の結果ではなく新しい結果を返します。切断後にセッションに再接続する場合など、トランスポートの途絶後に使用すると、保留中の権限リクエストが再び `canUseTool` コールバックに届くようになります。レスポンスが失われたリクエストは再度ディスパッチされるため、コールバックはリクエスト ID ごとに冪等にしてください。Claude Code v2.1.195 以降が必要です |

708| `supportedCommands()` | 使用可能なコマンドを返します。Agent SDK v0.3.216 以降、このリストにはセッション途中のコマンドの変更が反映されます。[`SDKCommandsChangedMessage`](#sdkcommandschangedmessage) を参照してください |713| `supportedCommands()` | 利用可能なコマンドを返します。Agent SDK v0.3.216 以降では、リストにセッション途中でのコマンドの変更が反映されます。[`SDKCommandsChangedMessage`](#sdkcommandschangedmessage) を参照してください |

709| `supportedModels()` | 表示情報付きで使用可能なモデルを返します |714| `supportedModels()` | 表示情報付きで利用可能なモデルを返します |

710| `supportedAgents()` | 使用可能なサブエージェントを [`AgentInfo`](#agentinfo)`[]` として返します |715| `supportedAgents()` | 利用可能なサブエージェントを [`AgentInfo`](#agentinfo)`[]` として返します |

711| `mcpServerStatus()` | 接続されている MCP サーバーのステータスを [`McpServerStatus`](#mcpserverstatus)`[]` として返します |716| `mcpServerStatus()` | 接続されている MCP サーバーのステータスを [`McpServerStatus`](#mcpserverstatus)`[]` として返します |

712| `getContextUsage(opts?)` | セッションのコンテキストウィンドウの使用量をカテゴリ、スキル、ツールごとに分類した [`SDKControlGetContextUsageResponse`](#sdkcontrolgetcontextusageresponse) を返します。デフォルトの `detail` では、インタラクティブセッションで `/context` が表示するものと同じデータで、メッセージストリームに現れないトークンカウント API リクエストを使って計算されます。[これらのリクエストの扱い](#sdkcontrolgetcontextusageresponse)を参照してください。[`detail` オプション](#sdkcontrolgetcontextusageresponse)には Agent SDK v0.3.257 以降が必要です |717| `getContextUsage(opts?)` | セッションのコンテキストウィンドウの使用量をカテゴリ、スキル、ツール別に分類した [`SDKControlGetContextUsageResponse`](#sdkcontrolgetcontextusageresponse) を返します。デフォルトの `detail` では、対話型セッションで `/context` が表示するのと同じデータであり、メッセージストリームに表示されないトークンカウント API リクエストを使用して計算されます。[これらのリクエストの扱い](#sdkcontrolgetcontextusageresponse)を参照してください。[`detail` オプション](#sdkcontrolgetcontextusageresponse)には Agent SDK v0.3.257 以降が必要です |

713| `readFile(path, options?)` | セッションのファイルシステムからファイルを読み取ります。Claude Code はパスを `cwd` に対して解決します。提供されるファイルについては [`readFile()` が読み取れるもの](#what-readfile-can-read)に記載しています。読み取り上限(デフォルト 1 MB、最大 10 MB)を変更するには `{ maxBytes }` を、画像などのバイナリファイルには `{ encoding: 'base64' }` を渡します。[`SDKControlReadFileResponse`](#sdkcontrolreadfileresponse) で解決されるか、権限の拒否、ファイルが存在しない場合、またはトランスポートエラーの場合は `null` で解決されます。TypeScript SDK v0.2.121 以降が必要です |718| `readFile(path, options?)` | セッションのファイルシステムからファイルを読み取ります。Claude Code はパスを `cwd` を基準に解決します。提供されるファイルについては [`readFile()` で読み取れるもの](#what-readfile-can-read)に記載しています。読み取り上限を変更するには `{ maxBytes }` を(デフォルトは 1 MB、最大 10 MB)、画像などのバイナリファイルには `{ encoding: 'base64' }` を渡します。[`SDKControlReadFileResponse`](#sdkcontrolreadfileresponse) で解決されるか、権限の拒否、ファイルの欠如、またはトランスポートエラーの場合は `null` で解決されます。TypeScript SDK v0.2.121 以降が必要です |

714| `reloadPlugins(options?)` | ディスクからプラグインを再読み込みし、セッション途中にインストールまたは編集したプラグインを実行中のセッションに反映させます。セッションのコマンド、サブエージェント、プラグイン、MCP サーバーのステータスを一覧にした [`SDKControlReloadPluginsResponse`](#sdkcontrolreloadpluginsresponse) で解決されます。Agent SDK v0.2.85 以降が必要です。[`holdOnCacheImpact` オプション](#sdkcontrolreloadpluginsresponse)には Agent SDK v0.3.268 以降が必要です |719| `reloadPlugins(options?)` | ディスクからプラグインを再読み込みし、セッション途中でインストールまたは編集したプラグインが実行中のセッションに反映されるようにします。セッションのコマンド、サブエージェント、プラグイン、MCP サーバーのステータスを列挙した [`SDKControlReloadPluginsResponse`](#sdkcontrolreloadpluginsresponse) で解決されます。Agent SDK v0.2.85 以降が必要です。[`holdOnCacheImpact` オプション](#sdkcontrolreloadpluginsresponse)には Agent SDK v0.3.268 以降が必要です |

715| `reloadSkills()` | ディスクからスキルを再読み込みし、セッション途中に追加または編集したスキルを実行中のセッションで使用できるようにします。再読み込み後に使用可能なスキルを一覧にした [`SDKControlReloadSkillsResponse`](#sdkcontrolreloadskillsresponse) で解決されます。Agent SDK v0.3.163 以降が必要です |720| `reloadSkills()` | ディスクからスキルを再読み込みし、セッション途中で追加または編集したスキルが実行中のセッションで利用できるようにします。再読み込み後に利用可能なスキルを列挙した [`SDKControlReloadSkillsResponse`](#sdkcontrolreloadskillsresponse) で解決されます。Agent SDK v0.3.163 以降が必要です |

716| `reloadOutputStyles()` | ディスクから[出力スタイル](/docs/ja/output-styles)を再読み込みし、セッション途中に追加または編集したスタイルファイルを実行中のセッションで使用できるようにします。再読み込み後に使用可能なスタイル名を一覧にした [`SDKControlReloadOutputStylesResponse`](#sdkcontrolreloadoutputstylesresponse) で解決されます。Agent SDK v0.3.261 以降が必要です |721| `reloadOutputStyles()` | ディスクから[出力スタイル](/docs/ja/output-styles)を再読み込みし、セッション途中で追加または編集したスタイルファイルが実行中のセッションで利用できるようにします。再読み込み後に利用可能なスタイル名を列挙した [`SDKControlReloadOutputStylesResponse`](#sdkcontrolreloadoutputstylesresponse) で解決されます。Agent SDK v0.3.261 以降が必要です |

717| `accountInfo()` | アカウント情報を返します |722| `accountInfo()` | アカウント情報を返します |

718| `reconnectMcpServer(serverName)` | 名前を指定して MCP サーバーに再接続します。その名前が `.mcp.json` や `~/.claude.json` などの設定ファイル内のエントリにも一致する場合、Claude Code は設定ファイルのエントリではなく、[`mcpServers`](#options) または `setMcpServers()` で設定したサーバーに再接続します。この解決順序には Claude Code v2.1.257 以降が必要です |723| `reconnectMcpServer(serverName)` | 名前を指定して MCP サーバーに再接続します。名前が `.mcp.json` や `~/.claude.json` などの設定ファイル内のエントリにも一致する場合、Claude Code は設定ファイルのエントリではなく、[`mcpServers`](#options) または `setMcpServers()` で設定したサーバーに再接続します。この解決順序には Claude Code v2.1.257 以降が必要です |

719| `toggleMcpServer(serverName, enabled)` | `reconnectMcpServer()` と同じ名前解決で、名前を指定して MCP サーバーを有効化または無効化します。サーバーを無効にすると、接続が切断され、そのツールが削除されます。サーバーの種類ごとに必要な Claude Code のバージョンについては [`toggleMcpServer()`](#togglemcpserver) を参照してください |724| `toggleMcpServer(serverName, enabled)` | `reconnectMcpServer()` と同じ名前解決で、名前を指定して MCP サーバーを有効または無効にします。サーバーを無効にすると、そのサーバーは切断され、そのツールは削除されます。サーバーの種類ごとに必要な Claude Code のバージョンについては [`toggleMcpServer()`](#togglemcpserver) を参照してください |

720| `setMcpServers(servers)` | このセッションの MCP サーバーのセットを動的に置き換えます。追加および削除されたサーバーとエラーを示す [`McpSetServersResult`](#mcpsetserversresult) で解決されます |725| `setMcpServers(servers)` | このメソッドが管理する MCP サーバー(このメソッドで追加したサーバーと[インプロセスの SDK サーバー](#createsdkmcpserver))を置き換えます。追加および削除されたサーバーとエラーを示す [`McpSetServersResult`](#mcpsetserversresult) で解決されます。他のどのサーバーが接続されたままになるかはそのセクションで説明しています |

721| `readMcpResource(serverName, uri)` | *アルファ版。* アプリケーションがツールのウィジェットをレンダリングできるように、接続されている MCP サーバーから MCP Apps の `ui://` リソースを 1 つ読み取ります。[`SDKControlMcpReadResourceResponse`](#sdkcontrolmcpreadresourceresponse) で解決されます。TypeScript Agent SDK v0.3.280 以降が必要です |726| `readMcpResource(serverName, uri)` | *アルファ版。* 接続された MCP サーバーから MCP Apps の `ui://` リソースを 1 つ読み取り、アプリケーションがツールのウィジェットを表示できるようにします。[`SDKControlMcpReadResourceResponse`](#sdkcontrolmcpreadresourceresponse) で解決されます。TypeScript Agent SDK v0.3.280 以降が必要です |

722| `streamInput(stream)` | マルチターンの会話のために、入力メッセージをクエリにストリーミングします |727| `streamInput(stream)` | マルチターン会話のために、入力メッセージをクエリにストリーミングします |

723| `stopTask(taskId)` | 実行中のバックグラウンドタスクを ID で停止します |728| `stopTask(taskId)` | ID を指定して実行中のバックグラウンドタスクを停止します |

724| `close()` | クエリを閉じ、基盤となるプロセスを終了します。クエリを強制的に終了し、すべてのリソースをクリーンアップします |729| `close()` | クエリを閉じ、基盤となるプロセスを終了します。クエリを強制的に終了し、すべてのリソースをクリーンアップします |

725 730 

726<h4 id="applyflagsettings">731<h4 id="applyflagsettings">

727 `applyFlagSettings()`732 `applyFlagSettings()`

728</h4>733</h4>

729 734 

730クエリを再起動せずに、実行中のセッションの[設定](/docs/ja/settings)を変更します。エージェントが信頼できない入力を読み取った後に `permissions` を厳しくする場合など、専用のセッターがない設定項目をセッション途中で変更する必要があるときに使用します。`setModel()` と `setPermissionMode()` はそれぞれのキー専用のセッターです。`applyFlagSettings()` は設定キーの任意のサブセットを受け付ける汎用的な形式で、ここで `model` を渡すと `setModel()` と同じように動作します。735クエリを再起動せずに、実行中のセッションの[設定](/docs/ja/settings)を変更します。エージェントが信頼できない入力を読み取った後に `permissions` を厳しくする場合など、専用のセッターがない設定をセッション途中で変更する必要があるときに使用します。`setModel()` と `setPermissionMode()` はそれら 2 つのキー専用のセッターです。`applyFlagSettings()` は設定キーの任意のサブセットを受け付ける汎用形式であり、ここで `model` を渡すと `setModel()` と同じように動作します。

731 736 

732セッション途中で有効になるのは一部のキーのみです。737セッション途中で有効になるのは一部のキーのみです:

733 738 

734* **次のターンで適用**: `effortLevel`、`ultracode`、`permissions`、`hooks`、`skillOverrides`、`fastMode`、`agent`。`agent` を切り替えると、そのエージェントのモデルの上書きとフックも次のターンで適用されます。そのシステムプロンプトは次のターンで適用されますが、[記録されたシステムプロンプトを再利用する](/docs/ja/agent-sdk/modifying-system-prompts#change-the-prompt-of-an-existing-session)セッションでは、セッションが圧縮された時点で適用されます。739* **次のターンで適用されるもの**:`effortLevel`、`ultracode`、`permissions`、`hooks`、`skillOverrides`、`fastMode`、`agent`。`agent` を切り替えると、そのエージェントのモデルの上書きとフックも次のターンで適用されます。そのシステムプロンプトは次のターンで適用されるか、[記録されたシステムプロンプトを再利用する](/docs/ja/agent-sdk/modifying-system-prompts#change-the-prompt-of-an-existing-session)セッションではセッションが圧縮された時点で適用されます。

735* **現在のターン中に適用**: `model`。Claude がターンの作業中に `model` を切り替えると、Claude がすでに生成中の応答は古いモデルで完了し、Claude Code が次にモデルを呼び出すところから始まるターンの残りの部分では新しいモデルが使用されます。サブエージェントは独自のモデルを維持します。v2.1.212 より前は、ターン途中の切り替えは次のターンまで待機していました。740* **現在のターン中に適用されるもの**:`model`。Claude がターンの処理中に `model` を切り替えた場合、Claude がすでに生成中の応答は古いモデルで完了し、Claude Code がモデルに対して行う次の呼び出しから、ターンの残りの部分では新しいモデルが使用されます。サブエージェントは独自のモデルを保持します。v2.1.212 より前は、ターン途中の切り替えは次のターンまで待機していました。

736* **セッション途中では効果なし**: システムプロンプトのオプション。これらは起動時に 1 回だけ解決されるため、呼び出しが成功しても実行中のセッションは元の値を保持します。変更するには、新しいセッションを開始してください。741* **セッション途中では効果がないもの**:システムプロンプトのオプション。これらは起動時に一度だけ解決されるため、呼び出し自体は成功しても、実行中のセッションは元の値を保持します。変更するには、新しいセッションを開始してください。

737 742 

738`effortLevel` は [effort レベル](/docs/ja/model-config#adjust-effort-level)の名前を受け付けます。また、[ultracode](/docs/ja/workflows#let-claude-decide-with-ultracode) をオンにした状態で `xhigh` の effort を要求する `"ultracode"` も受け付けます。`applyFlagSettings()` は `effortLevel` をこの値なしで宣言しているため、TypeScript で同じ結果を得るには `{ ultracode: true, effortLevel: "xhigh" }` を渡すか、セッションの現在の effort レベルのまま ultracode をオンにするには [`ultracode`](/docs/ja/settings-reference#ultracode) キーのみを渡します。`ultracode` 値には Claude Code v2.1.203 以降が必要で、`applyFlagSettings()` でのみ受け付けられ、設定ファイルの `effortLevel` キーでは受け付けられません。v2.1.284 より前は、`ultracode` キーのみを指定した場合もレベルが `xhigh` に設定されていました。743`effortLevel` は [effort レベル](/docs/ja/model-config#adjust-effort-level)の名前を受け付けます。また、[ultracode](/docs/ja/workflows#let-claude-decide-with-ultracode) をオンにした状態で `xhigh` の effort を要求する `"ultracode"` も受け付けます。`applyFlagSettings()` は `effortLevel` をこの値を含まない形で宣言しているため、TypeScript で同じ結果を得るには `{ ultracode: true, effortLevel: "xhigh" }` を渡すか、セッションの現在の effort レベルのまま ultracode をオンにするには [`ultracode`](/docs/ja/settings-reference#ultracode) キーのみを渡してください。`ultracode` という値には Claude Code v2.1.203 以降が必要であり、`applyFlagSettings()` でのみ受け付けられ、設定ファイルの `effortLevel` キーでは受け付けられません。v2.1.284 より前は、`ultracode` キーのみを渡した場合もレベルが `xhigh` に設定されていました。

739 744 

740値はフラグ設定レイヤーに書き込まれ、起動時に `query()` のインライン `settings` オプションで設定された内容の上にマージされます。これは[このページの優先順位セクション](#settings-precedence)でプログラムによるオプションと呼んでいるのと同じ層です。745値はフラグ設定レイヤーに書き込まれ、`query()` のインライン `settings` オプションが起動時に設定した内容の上にマージされます。これは、[このページの優先順位のセクション](#settings-precedence)でプログラムによるオプションと呼んでいるのと同じ階層です。

741 746 

742連続した呼び出しでは、トップレベルのキーが浅くマージされます。`{ permissions: {...} }` を指定した 2 回目の呼び出しは、前回の呼び出しの `permissions` オブジェクトに深くマージされるのではなく、オブジェクト全体を置き換えます。747連続した呼び出しでは、トップレベルのキーが浅くマージされます。`{ permissions: {...} }` を指定した 2 回目の呼び出しは、前回の呼び出しの `permissions` オブジェクトにディープマージするのではなく、オブジェクト全体を置き換えます。

743 748 

744`applyFlagSettings()` で設定したキーをクリアするには、そのキーに `null` を渡します。ほとんどのキーはその後、まず起動時に `query()` の `settings` オプションで設定された値に、次に優先順位の低いソースにフォールバックします。クリアされた `model` は、設定ファイルで `model` が設定されている場合でも、[Claude Code のデフォルトモデル](/docs/ja/model-config)にリセットされます。`undefined` を渡しても、JSON シリアライズで削除されるため効果はありません。749`applyFlagSettings()` で設定したキーをクリアするには、そのキーに `null` を渡します。ほとんどのキーは、まず `query()` の `settings` オプションが起動時に設定した値にフォールバックし、次に優先順位の低いソースにフォールバックします。クリアされた `model` は、設定ファイルで `model` が設定されている場合でも、[Claude Code のデフォルトモデル](/docs/ja/model-config)にリセットされます。`undefined` を渡しても、JSON シリアライズで削除されるため効果はありません。

745 750 

746`model` 以外に、フォールバックする代わりにセッションの状態をリセットするキーが 3 つあります。751`model` 以外に 3 つのキーは、フォールバックする代わりにセッションの状態をリセットします:

747 752 

748* `effortLevel: null` は、`query()` の `effort` オプションや設定ファイルの `effortLevel` ではなく、セッションをモデルのデフォルトの effort レベルに戻します。753* `effortLevel: null` は、`query()` の `effort` オプションや設定ファイルの `effortLevel` ではなく、セッションをモデルのデフォルトの effort レベルに戻します。

749* `agent: null` は、`query()` の `agent` オプションや設定ファイルの `agent` を復元するのではなく、次のターンからエージェントなしでメインスレッドを実行します。クリアされたエージェントが独自のモデルを適用していた場合、セッションは起動時に解決されたモデルに戻ります。754* `agent: null` は、`query()` の `agent` オプションや設定ファイルの `agent` を復元するのではなく、次のターンからエージェントなしでメインスレッドを実行します。クリアされたエージェントが独自のモデルを適用していた場合、セッションは起動時に解決したモデルに戻ります。

750* `ultracode: null` は、設定ファイルの `ultracode` 値を復元するのではなく、`false` と同様に ultracode をオフにします。セッションは現在の effort レベルを維持するため、変更するには同じ呼び出しで `effortLevel` を渡してください。755* `ultracode: null` は、設定ファイルの `ultracode` の値を復元するのではなく、`false` と同様に ultracode をオフにします。セッションは現在の effort レベルを維持するため、変更するには同じ呼び出しで `effortLevel` を渡してください。

751 756 

752`setModel()` や `setPermissionMode()` と同じ制約で、ストリーミング入力モードでのみ使用できます。757`setModel()` および `setPermissionMode()` と同じ制約で、ストリーミング入力モードでのみ使用できます。

753 758 

754以下の例では、セッション途中でアクティブなモデルを切り替え、その後上書きをクリアしてモデルを [Claude Code のデフォルトモデル](/docs/ja/model-config)にリセットします。759以下の例では、セッション途中でアクティブなモデルを切り替え、その後上書きをクリアしてモデルを [Claude Code のデフォルトモデル](/docs/ja/model-config)にリセットします。

755 760 


766```771```

767 772 

768<Note>773<Note>

769 `applyFlagSettings()` は TypeScript のみで使用できます。Python SDK には同等のメソッドはありません。774 `applyFlagSettings()` は TypeScript 専用です。Python SDK には同等のメソッドはありません。

770</Note>775</Note>

771 776 

772<h4 id="updatesettings">777<h4 id="updatesettings">

773 `updateSettings()`778 `updateSettings()`

774</h4>779</h4>

775 780 

776許可リストに含まれる 1 つのキーをディスク上の設定ファイルに書き込み、そのソースを読み込む以降のセッションにも値を保持します。各ソースは文字列値を持つ 1 つのキーを受け付けます。781許可リストに含まれる 1 つのキーをディスク上の設定ファイルに書き込み、そのソースを読み込む以降のセッションでも値が保持されるようにします。各ソースは、文字列値を持つ 1 つのキーを受け付けます:

777 782 

778* **`"localSettings"`**: `outputStyle` を受け付け、プロジェクトのローカル設定ファイル `.claude/settings.local.json` にマージします。新しいスタイルはセッションの次のリクエストから有効になります。783* **`"localSettings"`**:`outputStyle` を受け付け、プロジェクトのローカル設定ファイル `.claude/settings.local.json` にマージします。新しいスタイルはセッションの次のリクエストで有効になります。

779* **`"userSettings"`**: `effortLevel` を受け付け、セッションの現在のモデルのデフォルトの [effort レベル](/docs/ja/model-config#adjust-effort-level)として、ユーザー設定ファイルの [`modelSettings`](/docs/ja/settings-reference#modelsettings) の下に保存します。`max` はセッション限定であるため、`max` を渡しても何も書き込まれません。いずれの場合も実行中のセッションは現在の effort レベルを維持するため、それも変更したい場合は [`applyFlagSettings()`](#applyflagsettings) を呼び出してください。このソースには TypeScript SDK v0.3.277 以降が必要です(Claude Code v2.1.277 がバンドルされています)。784* **`"userSettings"`**:`effortLevel` を受け付け、ユーザー設定ファイルの [`modelSettings`](/docs/ja/settings-reference#modelsettings) の下に、セッションの現在のモデルのデフォルトの [effort レベル](/docs/ja/model-config#adjust-effort-level)として保存します。`max` はセッション限定のため、`max` を渡しても何も書き込まれません。いずれの場合も実行中のセッションは現在の effort レベルを維持するため、それも変更したい場合は [`applyFlagSettings()`](#applyflagsettings) を呼び出してください。このソースには、Claude Code v2.1.277 をバンドルした TypeScript SDK v0.3.277 以降が必要です。

780 785 

781リクエストにその他のキーが含まれている場合、セッションがリモートトランスポート上で実行されている場合、およびセッションの [`settingSources`](#options) が指定したソースを除外している場合、呼び出しは拒否されます。キーの削除はサポートされていません。786リクエストにその他のキーが含まれている場合、セッションがリモートトランスポート上で実行されている場合、およびセッションの [`settingSources`](#options) が指定したソースを除外している場合、呼び出しは拒否されます。キーの削除はサポートされていません。

782 787 


784 `toggleMcpServer()`789 `toggleMcpServer()`

785</h4>790</h4>

786 791 

787サーバーを無効にすると、接続が切断され、そのツールがセッションから削除されます。セッション途中で追加したサーバーとインプロセスサーバーについては、Claude Code のバージョンによって次のように異なります。792サーバーを無効にすると、そのサーバーは切断され、そのツールはセッションから削除されます。セッション途中で追加したサーバーとインプロセスサーバーについては、これは Claude Code のバージョンに依存します:

788 793 

789* `setMcpServers()` でセッション途中に追加した stdio、SSE、または HTTP サーバー: ツールの削除には Claude Code v2.1.285 以降が必要です。794* `setMcpServers()` でセッション途中に追加した stdio、SSE、または HTTP サーバー:そのツールを削除するには Claude Code v2.1.285 以降が必要です。

790* [`createSdkMcpServer()`](#createsdkmcpserver) で作成したインプロセスサーバー(`mcpServers` で渡したか `setMcpServers()` で渡したかを問わない): 接続の切断とツールの削除には Claude Code v2.1.286 以降が必要です。また、無効にすると実行中のツール呼び出しも失敗するため、Claude はハンドラーが戻るのを待たずに、それぞれについてエラー結果を即座に受け取ります。795* [`createSdkMcpServer()`](#createsdkmcpserver) で作成したインプロセスサーバー(`mcpServers` で渡したか `setMcpServers()` で渡したかを問わない):切断してそのツールを削除するには Claude Code v2.1.286 以降が必要です。無効にすると、まだ実行中のそのサーバーのツール呼び出しも失敗するため、Claude はハンドラーが戻るのを待たずに、それぞれについてエラー結果を直ちに受け取ります。

791 796 

792<h3 id="warmquery">797<h3 id="warmquery">

793 `WarmQuery`798 `WarmQuery`

794</h3>799</h3>

795 800 

796[`startup()`](#startup) が返すハンドルです。サブプロセスはすでに生成および初期化されているため、このハンドルで `query()` を呼び出すと、起動の遅延なしに準備済みのプロセスへプロンプトが直接書き込まれます。801[`startup()`](#startup) が返すハンドルです。サブプロセスはすでに起動および初期化されているため、このハンドルで `query()` を呼び出すと、起動の遅延なしに準備済みのプロセスへプロンプトが直接書き込まれます。

797 802 

798```typescript theme={null}803```typescript theme={null}

799interface WarmQuery extends AsyncDisposable {804interface WarmQuery extends AsyncDisposable {


808 813 

809| メソッド | 説明 |814| メソッド | 説明 |

810| :- | :- |815| :- | :- |

811| `query(prompt)` | 事前にウォームアップされたサブプロセスにプロンプトを送信し、[`Query`](#query-object) を返します。`WarmQuery` ごとに 1 回だけ呼び出せます |816| `query(prompt)` | 事前ウォームアップされたサブプロセスにプロンプトを送信し、[`Query`](#query-object) を返します。`WarmQuery` ごとに 1 回だけ呼び出せます |

812| `close()` | プロンプトを送信せずにサブプロセスを閉じます。不要になったウォームクエリを破棄する場合に使用します |817| `close()` | プロンプトを送信せずにサブプロセスを閉じます。不要になったウォームクエリを破棄する場合に使用します |

813 818 

814`WarmQuery` は `AsyncDisposable` を実装しているため、`await using` と組み合わせて自動クリーンアップに使用できます。819`WarmQuery` は `AsyncDisposable` を実装しているため、`await using` と組み合わせて自動クリーンアップに使用できます。


817 `SpareProcess`822 `SpareProcess`

818</h3>823</h3>

819 824 

820*アルファ版。* [`prewarm()`](#prewarm) が返すハンドルで、まだセッションにバインドされておらず、1 回だけ取得(claim)できる起動済みの Claude Code プロセスです。TypeScript Agent SDK v0.3.282 以降が必要です。825*アルファ版。* [`prewarm()`](#prewarm) が返すハンドルです。まだセッションにバインドされておらず、1 回だけ取得(claim)できる起動済みの Claude Code プロセスです。TypeScript Agent SDK v0.3.282 以降が必要です。

821 826 

822```typescript theme={null}827```typescript theme={null}

823interface SpareProcess extends AsyncDisposable {828interface SpareProcess extends AsyncDisposable {


837 842 

838| メンバー | 説明 |843| メンバー | 説明 |

839| :- | :- |844| :- | :- |

840| `claim({ prompt, options })` | スペアを `options.cwd` 内のセッションにバインドし、最初のメッセージを送信します。`query()` と同様に [`Query`](#query-object) を同期的に返します。1 回だけ呼び出せます |845| `claim({ prompt, options })` | スペアを `options.cwd` のセッションにバインドし、最初のメッセージを送信します。`query()` と同様に、[`Query`](#query-object) を同期的に返します。1 回だけ呼び出せます |

841| `claimed` | Claude Code が claim を受け入れると、セッションの作業ディレクトリと ID で解決されます。Claude Code が claim を拒否した場合、プロセスが先に終了したか閉じられた場合、およびセッションが要求した `model` または `maxThinkingTokens` なしで実行されている場合(`option_not_applied` で始まるメッセージ)に拒否されます |846| `claimed` | Claude Code が claim を受け入れると、セッションの作業ディレクトリと ID で解決されます。Claude Code が claim を拒否した場合、プロセスが先に終了したか閉じられた場合、および(`option_not_applied` で始まるメッセージとともに)要求した `model` または `maxThinkingTokens` なしでセッションが実行されている場合は拒否されます |

842| `exited` | claim されたかどうかにかかわらず、プロセスが終了すると確定します。claim する前に終了したスペアは置き換えてください |847| `exited` | claim されたかどうかにかかわらず、プロセスが終了したときに確定します。claim する前に終了したスペアは置き換えてください |

843| `close()` | プロセスを終了します。claim 前の場合はスペアを破棄し、`claimed` を拒否します |848| `close()` | プロセスを終了します。claim の前であれば、スペアを破棄して `claimed` を拒否します |

844 849 

845`options.cwd` は必須です。claim では、`additionalDirectories`、`model`、`permissionMode`、`maxThinkingTokens`、`settings` でのフラグ設定オーバーレイ、`appendSystemPrompt`、`title`、`agents`、`env` でのセッションごとのトークンも設定できます。850`options.cwd` は必須です。claim では、`additionalDirectories`、`model`、`permissionMode`、`maxThinkingTokens`、`settings` でのフラグ設定のオーバーレイ、`appendSystemPrompt`、`title`、`agents`、および `env` でのセッションごとのトークンも設定できます。

846 851 

847Claude Code は、存在しないフォルダーや、プロジェクト設定で `env`、`agent`、または `model` が設定されているフォルダーなどの場合に claim を拒否することがあります。`claimed` が `option_not_applied` で始まるメッセージで拒否された場合、セッションは要求した `model` または `maxThinkingTokens` なしで実行されています。その他の拒否の場合はプロンプトが実行されていないため、代わりに `query()` でセッションを開始してください。852Claude Code は、存在しないフォルダや、プロジェクト設定で `env`、`agent`、または `model` を設定しているフォルダなどに対して claim を拒否することがあります。拒否された後、`claim()` がすでに送信したプロンプトは `not_claimed` で始まるテキストのエラー結果を受け取り、返されたクエリはその後スローします。スローを越えて処理を続けるには、クエリのループを try ブロックで囲んでください。`claimed` が `option_not_applied` で始まるメッセージとともに拒否された場合、セッションは要求した `model` または `maxThinkingTokens` なしで実行されています。それ以外の拒否の後はプロンプトは実行されていないため、代わりに `query()` でセッションを開始してください。

848 853 

849<h3 id="sdkcontrolinitializeresponse">854<h3 id="sdkcontrolinitializeresponse">

850 `SDKControlInitializeResponse`855 `SDKControlInitializeResponse`


874};879};

875```880```

876 881 

877`hooks_applied` は、`initialize` リクエストに含まれていた `hooks` を Claude Code が登録したかどうかを示します。SDK はこのリクエストをセッション開始時に 1 回送信し、[`reinitialize()`](#query-object) を呼び出すたびに再度送信します。このフィールドには Agent SDK v0.3.238 以降が必要です。882`hooks_applied` は、`initialize` リクエストに含まれていた `hooks` を Claude Code が登録したかどうかを報告します。SDK はこのリクエストをセッション開始時に 1 回送信し、[`reinitialize()`](#query-object) を呼び出すたびに再度送信します。このフィールドには Agent SDK v0.3.238 以降が必要です。

878 883 

879リクエストにフックが含まれていなかった場合、Claude Code はこのフィールドを省略します。リクエストにフックが含まれていた場合、値はそのリクエストがセッションの最初の initialize かどうか、また繰り返しの initialize の場合はどのようにセッションに到達したかによって決まります。884リクエストにフックが含まれていなかった場合、Claude Code はこのフィールドを省略します。リクエストにフックが含まれていた場合、値はそのリクエストがセッションの最初の initialize かどうか、また繰り返しの initialize の場合はそれがどのようにセッションに届いたかによって決まります:

880 885 

881* `true`: Claude Code がフックを登録しました。セッションの最初の initialize はこの値を返します。CLI の stdin を介して送信された繰り返しの initialize も `true` を返します。その場合、新しいリクエストのフックが以前に登録されたフックを置き換えます。886* `true`:Claude Code がフックを登録しました。セッションの最初の initialize はこの値を返します。CLI の stdin を介して送信された繰り返しの initialize も `true` を返します。その場合、新しいリクエストのフックが以前に登録されたフックを置き換えます。

882* `false`: Claude Code はフックを無視しました。リモートセッションに送信された繰り返しの initialize はこの値を返すため、セッションに参加した 2 番目のクライアントは、最初のクライアントが登録したフックを置き換えることができません。887* `false`:Claude Code はフックを無視しました。リモートセッションに送信された繰り返しの initialize はこの値を返すため、セッションに参加した 2 番目のクライアントが最初のクライアントが登録したフックを置き換えることはできません。

883 888 

884Agent SDK v0.3.238 より前は、レスポンスにこのフィールドは含まれず、Claude Code は繰り返しのすべての initialize で `hooks` を無視していました。889Agent SDK v0.3.238 より前は、レスポンスにこのフィールドが含まれることはなく、Claude Code は繰り返しの initialize のたびに `hooks` を無視していました。

885 890 

886リクエストの `sdkMcpServerManifests` フィールドとレスポンスの `sdk_mcp_manifests_parked` フィールドは、[`createSdkMcpServer()`](#createsdkmcpserver) で作成したインプロセスの [SDK MCP サーバー](/docs/ja/agent-sdk/custom-tools)のためのものです。アプリケーションがどちらのフィールドを設定したり読み取ったりすることもありません。891リクエストの `sdkMcpServerManifests` フィールドとレスポンスの `sdk_mcp_manifests_parked` フィールドは、[`createSdkMcpServer()`](#createsdkmcpserver) で作成したインプロセスの [SDK MCP サーバー](/docs/ja/agent-sdk/custom-tools)用です。アプリケーションがこれらのフィールドを設定したり読み取ったりすることはありません。

887 892 

888レスポンスは常に `fast_mode_state` を報告し、何かが [fast mode](/docs/ja/fast-mode) をブロックしている場合は `fast_mode_disabled_reason` がその理由コードを併せて伝えるため、可用性を再導出することなくブロックされた状態を説明できます。どちらの動作にも Claude Code v2.1.219 以降が必要です。v2.1.219 より前は、fast mode が利用できない場合にレスポンスは `fast_mode_state` を省略し、理由を含むことはありませんでした。理由コードとその意味については、結果メッセージの [`fast_mode_disabled_reason`](#sdkresultmessage) を参照してください。893レスポンスは常に `fast_mode_state` を報告し、何かが [fast mode](/docs/ja/fast-mode) をブロックしている場合は、`fast_mode_disabled_reason` がその理由コードを併せて伝えるため、利用可否を改めて導出しなくても、ブロックされた状態を説明できます。どちらの動作にも Claude Code v2.1.219 以降が必要です。v2.1.219 より前は、fast mode が利用できない場合にレスポンスは `fast_mode_state` を省略し、理由を含めることもありませんでした。理由コードとその意味については、結果メッセージの [`fast_mode_disabled_reason`](#sdkresultmessage) を参照してください。

889 894 

890成功した `initialize` のコントロールレスポンスのラッパーには、`pending_permission_requests` 配列も含まれます。このフィールドはレスポンスラッパー自体にあり、上記の `SDKControlInitializeResponse` ペイロード内にはありません。各エントリは完全な `control_request` メッセージで、実行中にセッションが権限リクエストとしてストリーミングするのと同じ `{ type: "control_request", request_id, request }` の形をしています。895成功した `initialize` のコントロールレスポンスのラッパーには、`pending_permission_requests` 配列も含まれます。このフィールドはレスポンスラッパー自体にあり、上記の `SDKControlInitializeResponse` ペイロード内にはありません。各エントリは完全な `control_request` メッセージであり、セッションが実行中に権限リクエストとしてストリーミングするものと同じ `{ type: "control_request", request_id, request }` の形式を持ちます。

891 896 

892この配列には、この Claude Code プロセスが発行してまだ解決されていない権限リクエストが一覧表示されます。SDK はこの配列を読み取り、各エントリを [`canUseTool`](#canusetool) コールバックにディスパッチします。これは、トランスポートの途絶後に [`reinitialize()`](#query-object) がトリガーするのと同じ再配信です。エントリは、接続が切断される前にコールバックがすでに受け取ったリクエストを繰り返す場合があるため、繰り返されるリクエスト ID は冪等に処理してください。897この配列には、この Claude Code プロセスが発行してまだ解決されていない権限リクエストが列挙されます。SDK がこの配列を読み取り、各エントリを [`canUseTool`](#canusetool) コールバックにディスパッチします。これは、トランスポートの途絶後に [`reinitialize()`](#query-object) がトリガーするのと同じ再配信です。エントリは接続が切れる前にコールバックがすでに受け取ったリクエストを繰り返す場合があるため、繰り返されるリクエスト ID は冪等に処理してください。

893 898 

894この配列は成功した `initialize` レスポンスに常に存在し、このプロセスに未解決の権限リクエストがない場合は空になります。Claude Code v2.1.268 以降が必要です。以前のバージョンではこのフィールドが省略される場合があるため、ワイヤープロトコルを自分で解析する場合は、フィールドがないことを保留中のものがない証拠としてではなく、古い CLI であることの表れとして扱ってください。899この配列は成功した `initialize` レスポンスに常に存在し、このプロセスに未解決の権限リクエストがない場合は空です。Claude Code v2.1.268 以降が必要です。それより前のバージョンではこのフィールドが省略される場合があるため、ワイヤープロトコルを自分で解析する場合は、フィールドがないことを保留中のものがない証拠としてではなく、古い CLI であることの表れとして扱ってください。

895 900 

896<h3 id="sdkcontrolinterruptresponse">901<h3 id="sdkcontrolinterruptresponse">

897 `SDKControlInterruptResponse`902 `SDKControlInterruptResponse`

898</h3>903</h3>

899 904 

900中断の受領通知です。[`SDKSystemMessage.capabilities`](#sdksystemmessage) で `interrupt_receipt_v1` ケイパビリティを通知している CLI で、[`interrupt()`](#query-object) が解決される値です。Claude Code v2.1.205 以降が必要です。それ以前の CLI は空の成功ペイロードで中断に応答するため、`interrupt()` は `undefined` に解決されます。905中断の受領通知です。[`SDKSystemMessage.capabilities`](#sdksystemmessage) で `interrupt_receipt_v1` ケイパビリティを通知している CLI において、[`interrupt()`](#query-object) が解決される値です。Claude Code v2.1.205 以降が必要です。それより前の CLI は空の成功ペイロードで中断に応答するため、`interrupt()` は `undefined` に解決されます。

901 906 

902```typescript theme={null}907```typescript theme={null}

903type SDKControlInterruptResponse = {908type SDKControlInterruptResponse = {


906};911};

907```912```

908 913 

909`still_queued` は、中断が到着した時点で保留中だったユーザーメッセージの UUID を一覧表示します。これには、まだキューにあるメッセージと、Claude Code が次のターンのためにすでにキューから取り出していたメッセージが含まれます。セッションの最初のターンが開始された後は、先にキャンセルしない限り、Claude Code は一覧にあるメッセージを中断後に処理し、複数のメッセージを 1 つのターンにまとめることがあります。最初のターンが開始される前に中断した場合、Claude Code はそのターンが開始されるとすぐに中止し、そのターン内の一覧にあるメッセージには応答がありません。914`still_queued` には、中断が届いた時点で保留中だったユーザーメッセージの UUID が列挙されます。これには、まだキューにあるメッセージに加え、Claude Code が次のターンのためにすでにキューから取り出したメッセージも含まれます。セッションの最初のターンが開始された後であれば、Claude Code は先にキャンセルしない限り中断後に列挙されたメッセージを処理し、複数のメッセージを 1 つのターンにまとめることがあります。最初のターンが開始される前に中断した場合、Claude Code はそのターンを開始直後に中止し、そのターンに含まれる列挙されたメッセージは応答を受け取りません。

910 915 

911受領通知を使用して、何かを再送信するかどうかを判断してください。キャンセルしなかった一覧のメッセージは、応答があるかどうかにかかわらず会話に入るため、再送信すると Claude に 2 回配信されることになります。916何かを再送信するかどうかの判断には、この受領通知を使用してください。キャンセルしなかった列挙されたメッセージは、応答を受け取るかどうかにかかわらず会話に入るため、再送信すると Claude に 2 回届くことになります。

912 917 

913一覧を解釈する際は、次の注意点に留意してください。918リストは次の注意点を踏まえて解釈してください:

914 919 

915* UUID 付きでキューに入れられたメッセージのみが表示されます。空の配列は、他に何も実行されないことを意味するわけではありません。920* UUID 付きでキューに入れられたメッセージのみが表示されます。空の配列は、他に何も実行されないことを意味するわけではありません。

916* メインスレッドのメッセージのみが一覧表示されます。サブエージェント宛てのメッセージは対象外です。921* メインスレッドのメッセージのみが列挙されます。サブエージェント宛てのメッセージは対象外です。

917* 一覧には、[スケジュールタスク](/docs/ja/scheduled-tasks)のトリガーなど、クライアントが送信していない UUID が含まれる場合があります。認識できない UUID はエラーとして扱わず、無視してください。922* リストには、[スケジュールタスク](/docs/ja/scheduled-tasks)のトリガーなど、クライアントが送信していない UUID が含まれる場合があります。認識できない UUID はエラーとして扱わず、無視してください。

918 923 

919`interrupt()` を介さずに CLI のコントロールプロトコルを直接操作するクライアントは、`interrupt` コントロールリクエストに `cancel_queued: true` を設定できます。Claude Code v2.1.219 以降は、[`SDKSystemMessage.capabilities`](#sdksystemmessage) の `interrupt_cancel_queued_v1` ケイパビリティでサポートを通知します。古い CLI はこのフィールドを無視し、キュー内のメッセージは通常どおり実行されます。このような中断は、本来 `still_queued` に一覧表示されるはずのすべてのメッセージもキャンセルします。受領通知ではそれらが代わりに `cancelled` に一覧表示され、`still_queued` は空になり、いずれも実行されません。924`interrupt()` を介さずに CLI のコントロールプロトコルを直接操作するクライアントは、`interrupt` コントロールリクエストに `cancel_queued: true` を設定できます。Claude Code v2.1.219 以降は [`SDKSystemMessage.capabilities`](#sdksystemmessage) の `interrupt_cancel_queued_v1` ケイパビリティでサポートを通知します。それより古い CLI はこのフィールドを無視し、キュー内のメッセージを通常どおり実行させます。このような中断では、本来 `still_queued` に列挙されるはずのすべてのメッセージもキャンセルされます。受領通知ではそれらが代わりに `cancelled` に列挙され、`still_queued` は空になり、いずれも実行されません。

920 925 

921`cancelled` の一覧にも `still_queued` と同じ注意点があります。`interrupt()` メソッドは `cancel_queued` を送信しないため、このメソッドが解決する受領通知には `cancelled` は含まれません。926`cancelled` リストには `still_queued` と同じ注意点が当てはまります。`interrupt()` メソッドは `cancel_queued` を送信しないため、このメソッドが解決する受領通知には `cancelled` は含まれません。

922 927 

923受領通知は中断が処理された時点で取得されたスナップショットであり、正常な中断の場合は中断されたターンの [`SDKResultMessage`](#sdkresultmessage) より前に到着します。その結果の後にキューを調べるのではなく、受領通知を読み取ってください。ループは次のキュー内のターンをすぐに開始するため、結果の後に調べるキューはすでに変化しています。928受領通知は中断が処理された時点のスナップショットであり、正常な中断では、中断されたターンの [`SDKResultMessage`](#sdkresultmessage) より前に届きます。その結果の後にキューを調べるのではなく、受領通知を読み取ってください。ループは次のキュー内のターンを直ちに開始するため、結果の後に調べるキューはすでに変化しています。

924 929 

925<h3 id="sdkcontrolgetcontextusageresponse">930<h3 id="sdkcontrolgetcontextusageresponse">

926 `SDKControlGetContextUsageResponse`931 `SDKControlGetContextUsageResponse`

927</h3>932</h3>

928 933 

929[`getContextUsage()`](#query-object) の戻り値の型です。デフォルトの `detail` では、インタラクティブセッションで Claude Code が `/context` コマンドに対してレンダリングするものと同じペイロードであるため、トークン数に加えて、Claude Code が `/context` の使用量グリッドを描画するために使用する `color` や `gridRows` などの表示用フィールドも含まれます。934[`getContextUsage()`](#query-object) の戻り値の型です。デフォルトの `detail` では、これは対話型セッションで Claude Code が `/context` コマンドに対して表示するのと同じペイロードであり、トークン数に加えて、Claude Code が `/context` の使用量グリッドを描画するために使用する `color` や `gridRows` などの表示用フィールドも含まれます。

930 935 

931メソッドのオプションの `detail` 引数で、Claude Code が各カテゴリをどのようにカウントするかを選択します。`detail` 引数には Agent SDK v0.3.257 以降が必要です。936メソッドのオプションの `detail` 引数は、Claude Code が各カテゴリをどのようにカウントするかを選択します。`detail` 引数には Agent SDK v0.3.257 以降が必要です。

932 937 

933* **`'full'`**: デフォルトです。Claude Code は[トークンカウント](https://platform.claude.com/docs/en/build-with-claude/token-counting) API リクエストを使って各カテゴリをカウントします。これらのリクエストはメッセージストリームに現れないため、ストリームを読み取るコスト追跡では把握できません。Anthropic API では、トークンカウントは課金されません。938* **`'full'`**:デフォルトです。Claude Code は [トークンカウント](https://platform.claude.com/docs/en/build-with-claude/token-counting) API リクエストを使用して各カテゴリをカウントします。これらのリクエストはメッセージストリームに表示されないため、ストリームを読み取るコスト追跡ではこれらを把握できません。Anthropic API では、トークンカウントは課金されません。

934* **`'summary'`**: `{ detail: 'summary' }` を渡すと、代わりに最後のレスポンスの使用量とローカルの見積もりから回答を得られます。トークンカウントのリクエストは送信されず、カテゴリごとの数値は概算になります。939* **`'summary'`**:`{ detail: 'summary' }` を渡すと、代わりに最後のレスポンスの使用量とローカルの見積もりから回答を得られます。トークンカウントのリクエストは送信されず、カテゴリごとの数値は概算になります。

935 940 

936メソッドを呼び出す代わりに `/context` をプロンプトとして送信すると、Claude Code は結果を伝えるアシスタントメッセージの `context_usage` フィールドに [`SDKContextUsage`](#sdkcontextusage) ペイロードを添付します。このフィールドには Agent SDK v0.3.232 以降が必要です。941メソッドを呼び出す代わりに `/context` をプロンプトとして送信した場合、Claude Code は結果を届ける assistant メッセージの `context_usage` フィールドに [`SDKContextUsage`](#sdkcontextusage) ペイロードを添付します。このフィールドには Agent SDK v0.3.232 以降が必要です。

937 942 

938```typescript theme={null}943```typescript theme={null}

939type SDKControlGetContextUsageResponse = {944type SDKControlGetContextUsageResponse = {


1030};1035};

1031```1036```

1032 1037 

1033トークンの内訳はコレクションフィールドから読み取ります。1038トークンの内訳はコレクションフィールドから読み取ります:

1034 1039 

1035* `categories` はカテゴリごとの合計を保持します。各エントリの `kind` は、[`SDKContextUsageCategory`](#sdkcontextusagecategory) と同じ値で行を分類します。表示用の `name` ではなく、このフィールドに基づいて行を分類してください。このフィールドには Agent SDK v0.3.268 以降が必要です。1040* `categories` にはカテゴリごとの合計が格納されます。各エントリの `kind` は、[`SDKContextUsageCategory`](#sdkcontextusagecategory) と同じ値で行を分類します。行の分類には表示用の `name` ではなくこのフィールドを使用してください。このフィールドには Agent SDK v0.3.268 以降が必要です。

1036* `mcpTools` と `agents` は、トークンを個々の MCP ツールとサブエージェントに割り当てます。1041* `mcpTools` と `agents` は、トークンを個々の MCP ツールとサブエージェントに割り当てます。

1037* `memoryFiles` は、読み込まれた各メモリファイルとそのコストを一覧表示します。1042* `memoryFiles` には、読み込まれた各メモリファイルとそのコストが列挙されます。

1038* `skills.skillFrontmatter` は、スキル一覧のトークンを含まれている各スキルに割り当てます。スキルごとのカウントは、Claude Code が実際に送信する各スキルの一覧エントリを測定したもので、スキルの完全なフロントマターより短い場合があります。`skills.totalSkills` と `skills.includedSkills` を比較すると、検出されたすべてのスキルが一覧に含まれたかどうかを確認できます。1043* `skills.skillFrontmatter` は、スキル一覧のトークンを含まれている各スキルに割り当てます。スキルごとの数は、Claude Code が実際に送信する各スキルの一覧エントリを測定したものであり、スキルの完全なフロントマターより短い場合があります。検出されたすべてのスキルが一覧に含まれたかどうかを確認するには、`skills.totalSkills` と `skills.includedSkills` を比較してください。

1039 1044 

1040`totalTokens` はセッションの現在のコンテキスト使用量で、`maxTokens` はその使用量を測定する基準となるウィンドウです。このウィンドウはモデルのコンテキストウィンドウ、または自動圧縮のウィンドウが適用される場合はそれより小さいそのウィンドウです。`rawMaxTokens` は `maxTokens` と同じ値を持ち、`percentage` はそのウィンドウに対する `totalTokens` の割合を丸めた値です。`apiUsage` は最新の API レスポンスの使用量を保持し、セッションの累計ではありません。1045`totalTokens` はセッションの現在のコンテキスト使用量であり、`maxTokens` はその使用量の測定基準となるウィンドウです。このウィンドウはモデルのコンテキストウィンドウ、または適用される場合はより小さい自動圧縮のウィンドウです。`rawMaxTokens` は `maxTokens` と同じ値を持ち、`percentage` はそのウィンドウに対する `totalTokens` の割合を四捨五入したものです。`apiUsage` には、セッションの累計ではなく、最新の API レスポンスの使用量が格納されます。

1041 1046 

1042Claude Code はオプションの診断フィールドである `deferredBuiltinTools`、`systemTools`、`systemPromptSections` を設定しないため、型で宣言されていてもこれらは存在しないものと想定してください。1047Claude Code はオプションの診断情報である `deferredBuiltinTools`、`systemTools`、`systemPromptSections` を設定しないため、型で宣言されていてもこれらは存在しないものと考えてください。

1043 1048 

1044<h3 id="sdkcontrolreadfileresponse">1049<h3 id="sdkcontrolreadfileresponse">

1045 `SDKControlReadFileResponse`1050 `SDKControlReadFileResponse`


1056};1061};

1057```1062```

1058 1063 

1059`contents` はファイルのテキスト、または `encoding: 'base64'` を要求した場合は base64 データを保持します。その場合、レスポンスの `encoding` フィールドは `'base64'` に設定されます。`absPath` は解決された絶対パスです。`truncated` は、ファイルが `maxBytes` の上限より長く、内容がその上限で切り詰められた場合に設定されます。1064`contents` にはファイルのテキスト、または `encoding: 'base64'` を要求した場合は base64 データが格納されます。その場合、レスポンスの `encoding` フィールドは `'base64'` に設定されます。`absPath` は解決された絶対パスです。`truncated` は、ファイルが `maxBytes` の上限より長く、内容がその上限で切り詰められた場合に設定されます。

1060 1065 

1061<h4 id="what-readfile-can-read">1066<h4 id="what-readfile-can-read">

1062 `readFile()` が読み取れるもの1067 `readFile()` で読み取れるもの

1063</h4>1068</h4>

1064 1069 

1065`readFile()` が提供するファイルの範囲は Read ツールより狭くなっています。1070`readFile()` が提供するファイルは、Read ツールよりも限定されています:

1066 1071 

1067* `cwd` や `additionalDirectories` など、セッションの作業ディレクトリのいずれかに含まれる通常のファイル1072* `cwd` や `additionalDirectories` など、セッションの作業ディレクトリのいずれかにある通常のファイル

1068* ツールの結果など、そのセッションに関する Claude Code 自身のファイルの一部1073* ツールの結果など、セッションに関する Claude Code 自身のいくつかのファイル

1069 1074 

1070`Read` の拒否ルールと確認ルールは引き続き一致するパスをブロックし、広範な `Read` の許可ルールがあっても、ファイルシステムの残りの部分が `readFile()` に開放されることはありません。それ以外のものについては、呼び出しは `null` で解決されます。1075`Read` の拒否ルールと確認ルールは引き続き一致するパスをブロックし、広範な `Read` 許可ルールがあってもファイルシステムの残りの部分が `readFile()` に開放されることはありません。それ以外のものについては、呼び出しは `null` で解決されます。

1071 1076 

1072<h3 id="sdkcontrolreloadpluginsresponse">1077<h3 id="sdkcontrolreloadpluginsresponse">

1073 `SDKControlReloadPluginsResponse`1078 `SDKControlReloadPluginsResponse`


1096};1101};

1097```1102```

1098 1103 

1099コレクションフィールドは、呼び出し後のセッションを表します。1104コレクションフィールドは、呼び出し後のセッションを表します:

1100 1105 

1101* `commands`、`agents`、`mcpServers`: セッションのコマンド、サブエージェント、MCP サーバーのステータスで、`supportedCommands()`、`supportedAgents()`、`mcpServerStatus()` が返すのと同じ形式です。`supportedAgents()` は初期化時に取得されたリストを返し続けるため、再読み込み後のセットについてはここの `agents` を読み取ってください1106* `commands`、`agents`、`mcpServers`:セッションのコマンド、サブエージェント、MCP サーバーのステータスで、`supportedCommands()`、`supportedAgents()`、`mcpServerStatus()` が返すのと同じ形式です。`supportedAgents()` は初期化時に取得したリストを返し続けるため、再読み込み後のセットを知るにはここで `agents` を読み取ってください

1102* `plugins`: 読み込まれた各プラグインとその `name` およびインストール先の `path`。`version` はプラグインのマニフェストが宣言している内容をそのまま示すもので、プラグインの作成者が制御するため、信頼する前に検証してください。マニフェストが何も宣言していない場合は省略されます1107* `plugins`:読み込まれた各プラグインとその `name` およびインストール先の `path`。`version` はプラグインのマニフェストが宣言している内容をそのまま示すものであり、プラグインの作成者が制御するため、信頼する前に検証してください。マニフェストで宣言されていない場合は省略されます

1103* `error_count`: プラグインの読み込みで発生したエラーの数1108* `error_count`:プラグインの読み込み時に発生したエラーの数

1104 1109 

1105`reloadPlugins()` に `{ holdOnCacheImpact: true }` を渡すと、会話のプロンプトキャッシュを無効にするような再読み込みを適用せずに保留できます。Claude Code は、インタラクティブな `/reload-plugins` コマンドが[キャッシュのコストについて警告する](/docs/ja/prompt-caching#enabling-or-disabling-a-plugin)前に行うチェックを実行します。このオプションには Agent SDK v0.3.268 以降が必要です。`pathToClaudeCodeExecutable` で指定したものなど、v2.1.268 より古い Claude Code 実行ファイルはこのオプションを無視して再読み込みを適用します。1110`reloadPlugins()` に `{ holdOnCacheImpact: true }` を渡すと、会話のプロンプトキャッシュを無効にするような再読み込みを、適用する代わりに保留できます。Claude Code は、対話型の `/reload-plugins` コマンドが[キャッシュのコストについて警告する](/docs/ja/prompt-caching#enabling-or-disabling-a-plugin)前に行うのと同じチェックを実行します。このオプションには Agent SDK v0.3.268 以降が必要です。`pathToClaudeCodeExecutable` で指定したものなど、v2.1.268 より古い Claude Code 実行可能ファイルはこのオプションを無視し、再読み込みを適用します。

1106 1111 

1107このオプションを渡した場合は、`held` を読み取って何が起きたかを確認します。1112このオプションを渡した場合は、`held` を読み取って何が起きたかを確認します:

1108 1113 

1109* `true`: 再読み込みは適用されておらず、コレクションフィールドは現在のままのセッションを表します。`cache_impact` は、適用した場合に何が変わるかを示します。それでも適用するには、オプションなしで `reloadPlugins()` を再度呼び出します。1114* `true`:再読み込みは適用されておらず、コレクションフィールドは現在のままのセッションを表しています。`cache_impact` は、適用した場合に何が変わるかを示します。それでも適用するには、オプションなしで `reloadPlugins()` を再度呼び出してください。

1110* `false`: チェックでキャッシュへの影響が見つからず、再読み込みが適用されました。1115* `false`:チェックでキャッシュへの影響が見つからず、再読み込みが適用されました。

1111* 存在しない: オプションを渡さなかったか、Claude Code 実行ファイルが v2.1.268 より古く、再読み込みを適用しました。1116* 存在しない:オプションを渡していないか、Claude Code 実行可能ファイルが v2.1.268 より古く、再読み込みを適用しました。

1112 1117 

1113`cache_impact` は `held: true` と併せてのみ存在します。`mcp_servers_added` と `mcp_servers_removed` は、再読み込みによって登録または削除されるプラグインの MCP サーバーを、スコープ付きの `plugin:<plugin>:<server>` 名で示します。これらの名前はプラグインの作成者が付けたものであるため、表示する前に検証してください。`lsp_tool_change` は、適用によって LSP ツールが追加されるか削除されるかを示し、どちらでもない場合は `null` です。`may-` 形式は、チェックで保留中のプラグインセットを完全には把握できなかったことを意味します。1118`cache_impact` は `held: true` と一緒の場合にのみ存在します。`mcp_servers_added` と `mcp_servers_removed` は、再読み込みによって登録または削除されるプラグインの MCP サーバーを、スコープ付きの `plugin:<plugin>:<server>` 形式の名前で示します。名前はプラグインの作成者によるものなので、表示する前に検証してください。`lsp_tool_change` は、適用によって LSP ツールが追加されるか削除されるかを示し、どちらでもない場合は `null` になります。`may-` 形式は、チェックが保留中のプラグインのセットを完全には把握できなかったことを意味します。

1114 1119 

1115<h3 id="sdkcontrolreloadskillsresponse">1120<h3 id="sdkcontrolreloadskillsresponse">

1116 `SDKControlReloadSkillsResponse`1121 `SDKControlReloadSkillsResponse`


1124};1129};

1125```1130```

1126 1131 

1127`skills` は、再読み込み後に使用可能なスキルを、`supportedCommands()` が返すのと同じ [`SlashCommand`](#slashcommand) の形式で一覧表示します。1132`skills` には、再読み込み後に利用可能なスキルが、`supportedCommands()` が返すのと同じ [`SlashCommand`](#slashcommand) の形式で列挙されます。

1128 1133 

1129<h3 id="sdkcontrolreloadoutputstylesresponse">1134<h3 id="sdkcontrolreloadoutputstylesresponse">

1130 `SDKControlReloadOutputStylesResponse`1135 `SDKControlReloadOutputStylesResponse`


1138};1143};

1139```1144```

1140 1145 

1141`available_output_styles` は、再読み込み後に使用可能な組み込みおよびカスタムの出力スタイルの名前を一覧表示します。1146`available_output_styles` には、再読み込み後に利用可能な組み込みおよびカスタムの出力スタイルの名前が列挙されます。

1142 1147 

1143<h3 id="sdkcontrolmcpreadresourceresponse">1148<h3 id="sdkcontrolmcpreadresourceresponse">

1144 `SDKControlMcpReadResourceResponse`1149 `SDKControlMcpReadResourceResponse`


1158};1163};

1159```1164```

1160 1165 

1161`readMcpResource()` には、`mcpServerStatus()` が報告するサーバー名と、ツールが [`_meta`](#mcpserverstatus) で宣言する `ui.resourceUri` などの `ui://` URI を渡します。その他の URI スキームの場合、アプリケーション自身がホストする [SDK MCP サーバー](#createsdkmcpserver)の場合、および接続されていないサーバーの場合、呼び出しは拒否されます。init メッセージの [`capabilities`](#sdksystemmessage) に `mcp_read_resource_v1` が含まれている場合に使用できます。1166`readMcpResource()` には、`mcpServerStatus()` が報告するサーバー名と、ツールが [`_meta`](#mcpserverstatus) で宣言する `ui.resourceUri` などの `ui://` URI を渡します。その他の URI スキーム、アプリケーション自身がホストする [SDK MCP サーバー](#createsdkmcpserver)、および接続されていないサーバーに対しては、呼び出しは拒否されます。init メッセージの [`capabilities`](#sdksystemmessage) に `mcp_read_resource_v1` が含まれている場合に利用できます。

1162 1167 

1163各 `contents` エントリは、サーバーが送信したとおりの 1 つのコンテンツ項目ですが、Claude Code 用に予約されている `com.anthropic/` プレフィックス以下の `_meta` キーは除かれます。`blob` はバイナリ項目の base64 データを保持し、`_meta` はその項目自身の `_meta` で、MCP Apps サーバーはリソースの `ui.csp` と `ui.permissions` をここに配置します。1168各 `contents` エントリは、サーバーが送信したままの 1 つのコンテンツアイテムですが、Claude Code 用に予約されている `com.anthropic/` プレフィックス配下の `_meta` キーは除かれます。`blob` にはバイナリアイテムの base64 データが格納され、`_meta` はアイテム自身の `_meta` であり、MCP Apps サーバーはここにリソースの `ui.csp` と `ui.permissions` を配置します。

1164 1169 

1165コンテンツは信頼できないサードパーティの HTML であるため、サンドボックス内でレンダリングしてください。1170内容は信頼できないサードパーティの HTML であるため、サンドボックス内で表示してください。

1166 1171 

1167<h3 id="agentdefinition">1172<h3 id="agentdefinition">

1168 `AgentDefinition`1173 `AgentDefinition`


1192 1197 

1193| フィールド | 必須 | 説明 |1198| フィールド | 必須 | 説明 |

1194| :- | :- | :- |1199| :- | :- | :- |

1195| `description` | はい | このエージェントをいつ使用するかを自然言語で説明したもの |1200| `description` | はい | このエージェントをいつ使用するかについての自然言語による説明 |

1196| `tools` | いいえ | 許可されるツール名の配列。省略した場合、[サブエージェントが使用できるツール](/docs/ja/sub-agents#available-tools)をすべて継承します。スキルをエージェントのコンテキストに事前読み込みするには、ここに `'Skill'` を列挙するのではなく `skills` フィールドを使用してください |1201| `tools` | いいえ | 許可されるツール名の配列。省略すると、[サブエージェントが利用できるすべてのツール](/docs/ja/sub-agents#available-tools)を継承します。スキルをエージェントのコンテキストに事前読み込みするには、ここに `'Skill'` を列挙するのではなく `skills` フィールドを使用してください |

1197| `disallowedTools` | いいえ | このエージェントで明示的に禁止するツール名の配列。MCP サーバーレベルのパターンも使用できます。`mcp__server` または `mcp__server__*` はそのサーバーのすべてのツールを削除し、`mcp__*` はすべてのサーバーのすべての MCP ツールを削除します |1202| `disallowedTools` | いいえ | このエージェントで明示的に禁止するツール名の配列。MCP サーバーレベルのパターンも受け付けます:`mcp__server` または `mcp__server__*` はそのサーバーのすべてのツールを削除し、`mcp__*` はすべてのサーバーのすべての MCP ツールを削除します |

1198| `prompt` | はい | エージェントのシステムプロンプト |1203| `prompt` | はい | エージェントのシステムプロンプト |

1199| `model` | いいえ | このエージェントのモデルの上書き。`'fable'`、`'opus'`、`'sonnet'`、`'haiku'`、`'inherit'` などのエイリアス、または完全なモデル ID を受け付けます。`'inherit'` はメインのモデルを使用します。省略した場合、Claude Code は[サブエージェントのモデルの順序](/docs/ja/sub-agents#choose-a-model)に従ってモデルを選択します |1204| `model` | いいえ | このエージェントのモデルの上書き。`'fable'`、`'opus'`、`'sonnet'`、`'haiku'`、`'inherit'` などのエイリアス、または完全なモデル ID を受け付けます。`'inherit'` はメインモデルを使用します。省略すると、Claude Code は[サブエージェントのモデルの順序](/docs/ja/sub-agents#choose-a-model)に従ってモデルを選択します |

1200| `mcpServers` | いいえ | このエージェントの MCP サーバーの指定 |1205| `mcpServers` | いいえ | このエージェントの MCP サーバーの指定 |

1201| `skills` | いいえ | エージェントのコンテキストに事前読み込みするスキル名の配列 |1206| `skills` | いいえ | エージェントのコンテキストに事前読み込みするスキル名の配列 |

1202| `initialPrompt` | いいえ | このエージェントがメインスレッドのエージェントとして実行されるときに、最初のユーザーターンとして自動送信されます |1207| `initialPrompt` | いいえ | このエージェントがメインスレッドのエージェントとして実行される場合に、最初のユーザーターンとして自動送信されます |

1203| `maxTurns` | いいえ | 停止するまでのエージェントの最大ターン数(API の往復) |1208| `maxTurns` | いいえ | 停止するまでのエージェントの最大ターン数(API の往復) |

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

1205| `omitClaudeMd` | いいえ | サブエージェントとして実行されるときに、ユーザー、プロジェクト、ローカルの CLAUDE.md ファイルなしでこのエージェントを実行します。管理ポリシーファイルは引き続き読み込まれます。必要なものをすべて Agent ツールのプロンプトから受け取るエージェントに使用します。このエージェントがメインスレッドのエージェントとして実行される場合は無視されます。TypeScript Agent SDK v0.3.271 以降が必要です |1210| `omitClaudeMd` | いいえ | このエージェントがサブエージェントとして実行される場合に、ユーザー、プロジェクト、ローカルの CLAUDE.md ファイルなしで実行します。管理ポリシーのファイルは引き続き読み込まれます。必要なものをすべて Agent ツールのプロンプトから受け取るエージェントに使用してください。このエージェントがメインスレッドのエージェントとして実行される場合は無視されます。TypeScript Agent SDK v0.3.271 以降が必要です |

1206| `memory` | いいえ | このエージェントのメモリソース: `'user'`、`'project'`、または `'local'` |1211| `memory` | いいえ | このエージェントのメモリソース:`'user'`、`'project'`、または `'local'` |

1207| `effort` | いいえ | このエージェントの推論の effort レベル。名前付きのレベルまたは整数を受け付けます |1212| `effort` | いいえ | このエージェントの推論の effort レベル。名前付きのレベルまたは整数を受け付けます |

1208| `permissionMode` | いいえ | このエージェント内でのツール実行の権限モード。いつ適用されるかは[サブエージェントの継承ルール](/docs/ja/agent-sdk/permissions#available-modes)によって決まります。[`PermissionMode`](#permissionmode) を参照してください |1213| `permissionMode` | いいえ | このエージェント内でのツール実行の権限モード。いつ適用されるかは[サブエージェントの継承ルール](/docs/ja/agent-sdk/permissions#available-modes)によって決まります。[`PermissionMode`](#permissionmode) を参照してください |

1209| `criticalSystemReminder_EXPERIMENTAL` | いいえ | 実験的: システムプロンプトに追加される重要なリマインダー |1214| `criticalSystemReminder_EXPERIMENTAL` | いいえ | 実験的機能:システムプロンプトに追加される重要なリマインダー |

1210 1215 

1211<h3 id="agentmcpserverspec">1216<h3 id="agentmcpserverspec">

1212 `AgentMcpServerSpec`1217 `AgentMcpServerSpec`

1213</h3>1218</h3>

1214 1219 

1215サブエージェントが使用できる MCP サーバーを指定します。サーバー名(親の `mcpServers` 設定内のサーバーを参照する文字列)、またはサーバー名を設定にマッピングするインラインのサーバー設定レコードを指定できます。1220サブエージェントが利用できる MCP サーバーを指定します。サーバー名(親の `mcpServers` 設定内のサーバーを参照する文字列)、またはサーバー名を設定にマッピングするインラインのサーバー設定レコードのいずれかを指定できます。

1216 1221 

1217```typescript theme={null}1222```typescript theme={null}

1218type AgentMcpServerSpec = string | Record<string, McpServerConfigForProcessTransport>;1223type AgentMcpServerSpec = string | Record<string, McpServerConfigForProcessTransport>;


1224 `SettingSource`1229 `SettingSource`

1225</h3>1230</h3>

1226 1231 

1227SDK が設定を読み込むファイルシステムベースの設定ソースを制御します。1232SDK がどのファイルシステムベースの設定ソースから設定を読み込むかを制御します。

1228 1233 

1229```typescript theme={null}1234```typescript theme={null}

1230type SettingSource = "user" | "project" | "local";1235type SettingSource = "user" | "project" | "local";


1234| :- | :- | :- |1239| :- | :- | :- |

1235| `'user'` | グローバルなユーザー設定 | `~/.claude/settings.json` |1240| `'user'` | グローバルなユーザー設定 | `~/.claude/settings.json` |

1236| `'project'` | 共有プロジェクト設定(バージョン管理対象) | `.claude/settings.json` |1241| `'project'` | 共有プロジェクト設定(バージョン管理対象) | `.claude/settings.json` |

1237| `'local'` | ローカルプロジェクト設定。Claude Code が設定を保存する際に gitignore に追加されます | `.claude/settings.local.json` |1242| `'local'` | ローカルプロジェクト設定。Claude Code がこのファイルに設定を保存する際に gitignore に追加されます | `.claude/settings.local.json` |

1238 1243 

1239<h4 id="default-behavior">1244<h4 id="default-behavior">

1240 デフォルトの動作1245 デフォルトの動作

1241</h4>1246</h4>

1242 1247 

1243`settingSources` が省略されているか `undefined` の場合、`query()` は Claude Code CLI と同じファイルシステム設定(user、project、local)を読み込みます。このオプションに関係なく読み込まれる入力とそれらを無効にする方法については、[settingSources が制御しないもの](/docs/ja/agent-sdk/claude-code-features#what-settingsources-does-not-control)を参照してください。1248`settingSources` が省略されているか `undefined` の場合、`query()` は Claude Code CLI と同じファイルシステム設定(user、project、local)を読み込みます。このオプションに関係なく読み込まれる入力とその無効化方法については、[settingSources で制御されないもの](/docs/ja/agent-sdk/claude-code-features#what-settingsources-does-not-control)を参照してください。

1244 1249 

1245<h4 id="why-use-settingsources">1250<h4 id="why-use-settingsources">

1246 settingSources を使用する理由1251 settingSources を使用する理由


1272});1277});

1273```1278```

1274 1279 

1275CLAUDE.md のプロジェクト指示を読み込むには、`settingSources` に `"project"` を含めてください。CLAUDE.md の読み込みとシステムプロンプトのオプションとの関係については、[システムプロンプトの変更](/docs/ja/agent-sdk/modifying-system-prompts#claude-md-files-for-project-level-instructions)を参照してください。1280CLAUDE.md のプロジェクト指示を読み込むには、`settingSources` に `"project"` を含めてください。CLAUDE.md の読み込みとシステムプロンプトオプションの相互作用については、[システムプロンプトの変更](/docs/ja/agent-sdk/modifying-system-prompts#claude-md-files-for-project-level-instructions)を参照してください。

1276 1281 

1277<h4 id="settings-precedence">1282<h4 id="settings-precedence">

1278 設定の優先順位1283 設定の優先順位


12842. プロジェクト設定(`.claude/settings.json`)12892. プロジェクト設定(`.claude/settings.json`)

12853. ユーザー設定(`~/.claude/settings.json`)12903. ユーザー設定(`~/.claude/settings.json`)

1286 1291 

1287`agents`、`allowedTools`、`settings` などのプログラムによるオプションは、ユーザー、プロジェクト、ローカルのファイルシステム設定を上書きします。管理ポリシー設定はプログラムによるオプションよりも優先されます。1292`agents`、`allowedTools`、`settings` などのプログラムによるオプションは、user、project、local のファイルシステム設定を上書きします。管理ポリシー設定は、プログラムによるオプションよりも優先されます。

1288 1293 

1289<h3 id="permissionmode">1294<h3 id="permissionmode">

1290 `PermissionMode`1295 `PermissionMode`


1306 1311 

1307ツールの使用を制御するためのカスタム権限関数の型です。1312ツールの使用を制御するためのカスタム権限関数の型です。

1308 1313 

1309この関数は、対話型の権限プロンプトを SDK で置き換えるものです。[権限評価フロー](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)の結果がプロンプトになった場合にのみ呼び出されます。`allowedTools` のエントリ、設定の許可ルール、または `acceptEdits` や `bypassPermissions` などの権限モードによってすでに承認されているツール呼び出しでは、この関数は呼び出されません。すべてのツール呼び出しを制御するには、代わりに [`PreToolUse` フック](/docs/ja/agent-sdk/hooks)を使用してください。1314この関数は、対話型の権限プロンプトを SDK で置き換えるものです。[権限の評価フロー](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)がプロンプトに到達した場合にのみ呼び出されます。`allowedTools` のエントリ、設定の許可ルール、または `acceptEdits` や `bypassPermissions` などの権限モードによってすでに承認されているツール呼び出しでは、この関数は呼び出されません。すべてのツール呼び出しを制御するには、代わりに [`PreToolUse` フック](/docs/ja/agent-sdk/hooks)を使用してください。

1310 1315 

1311許可ルールは、[どのモードでも自動承認されないアクション](/docs/ja/permission-modes#actions-no-mode-auto-approves)を事前承認しません。それらのうちどれがコールバックに到達するか、また `dontAsk` モードと `auto` モードで何が起こるかについては、[権限の評価方法](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)を参照してください。1316許可ルールは、[どのモードでも自動承認されないアクション](/docs/ja/permission-modes#actions-no-mode-auto-approves)を事前承認しません。それらのうちどれがコールバックに到達するか、また `dontAsk` モードと `auto` モードでどうなるかについては、[権限の評価方法](/docs/ja/agent-sdk/permissions#how-permissions-are-evaluated)を参照してください。

1312 1317 

1313```typescript theme={null}1318```typescript theme={null}

1314type CanUseTool = (1319type CanUseTool = (


1332| オプション | 型 | 説明 |1337| オプション | 型 | 説明 |

1333| :- | :- | :- |1338| :- | :- | :- |

1334| `signal` | `AbortSignal` | 操作を中止すべき場合にシグナルが送られます |1339| `signal` | `AbortSignal` | 操作を中止すべき場合にシグナルが送られます |

1335| `suggestions` | [`PermissionUpdate`](#permissionupdate)`[]` | このツールについてユーザーに再度プロンプトが表示されないようにするための、提案された権限の更新。Bash のプロンプトには `localSettings` [保存先](#permissionupdatedestination)を持つ提案が含まれるため、それを `updatedPermissions` で返すとルールが `.claude/settings.local.json` に書き込まれ、セッションをまたいで保持されます。 |1340| `suggestions` | [`PermissionUpdate`](#permissionupdate)`[]` | このツールについてユーザーに再度プロンプトを表示しないようにするための、推奨される権限の更新。Bash のプロンプトには `localSettings` [保存先](#permissionupdatedestination)を持つ提案が含まれるため、これを `updatedPermissions` で返すとルールが `.claude/settings.local.json` に書き込まれ、セッションをまたいで保持されます。 |

1336| `blockedPath` | `string` | 権限リクエストをトリガーしたファイルパス(該当する場合) |1341| `blockedPath` | `string` | 権限リクエストのきっかけとなったファイルパス(該当する場合) |

1337| `mcpServer` | `{ name: string; source: string }` | `mcp__*` ツールの場合、そのツールを提供する MCP サーバーと、そのサーバーの定義の取得元。フィールドは [`McpServerProvenance`](#mcpserverprovenance) と同じです。その他のツールでは存在しません。Agent SDK v0.3.274 以降が必要です |1342| `mcpServer` | `{ name: string; source: string }` | `mcp__*` ツールの場合、そのツールを提供する MCP サーバーと、そのサーバーの定義の出所。フィールドは [`McpServerProvenance`](#mcpserverprovenance) と同じです。その他のツールでは存在しません。Agent SDK v0.3.274 以降が必要です |

1338| `decisionReason` | `string` | この権限リクエストがトリガーされた理由の説明 |1343| `decisionReason` | `string` | この権限リクエストがトリガーされた理由の説明 |

1339| `defaultToNo` | `boolean` | `true` の場合、誤って押された 1 回のキー入力でこのリクエストが承認されてはなりません。プロンプトは拒否オプションを選択した状態で開き、承認を事前選択せず、1 キーで承認できるショートカットも提供しないでください。Agent SDK v0.3.268 以降が必要です |1344| `defaultToNo` | `boolean` | `true` の場合、誤った 1 回のキー入力でこのリクエストが承認されてはなりません。プロンプトは拒否の選択肢にフォーカスした状態で開き、承認を事前選択せず、1 キーで承認できるショートカットも提供しないでください。Agent SDK v0.3.268 以降が必要です |

1340| `suppressAlwaysAllowRule` | `boolean` | `true` の場合、このリクエストに対して永続的な「常に許可」の選択肢を提供しないでください。書き込まれるルールが、リクエスト自体のアクションよりも広い権限を付与してしまうためです。Agent SDK v0.3.268 以降が必要です |1345| `suppressAlwaysAllowRule` | `boolean` | `true` の場合、このリクエストに対して永続的な「常に許可」の選択肢を提示しないでください。Agent SDK v0.3.268 以降が必要です |

1341| `toolUseID` | `string` | アシスタントメッセージ内のこの特定のツール呼び出しの一意な識別子 |1346| `toolUseID` | `string` | アシスタントメッセージ内でのこの特定のツール呼び出しの一意な識別子 |

1342| `agentID` | `string` | サブエージェント内で実行されている場合、そのサブエージェントの ID |1347| `agentID` | `string` | サブエージェント内で実行されている場合、そのサブエージェントの ID |

1343| `requestId` | `string` | `control_request` エンベロープの `request_id`。アプリケーションが SDK の外部から送信する `control_response`(署名付き HTTP POST など)は、Claude Code プロセスが応答をリクエストと照合できるよう、この値をそのまま返す必要があります |1348| `requestId` | `string` | `control_request` エンベロープの `request_id`。アプリケーションが SDK の外部で送信する `control_response`(署名付き HTTP POST など)は、Claude Code プロセスが応答をリクエストと照合できるよう、この値をそのまま返す必要があります |

1344 1349 

1345コールバックは通常、[`PermissionResult`](#permissionresult) を返すことでリクエストを解決し、SDK はそれを `control_response` としてトランスポート経由で書き戻します。`null` を返すのは、アプリケーションがすでに独自のチャネル経由で `requestId` を含めてこのリクエストの `control_response` を送信済みの場合に限ってください。その場合、SDK はトランスポートへのレスポンスの書き込みをスキップします。それ以外のケースで `null` を返すと、`control_response` が送信されず、権限プロンプトはタイムアウトしないため、ツール呼び出しが無期限にブロックされたままになります。1350コールバックは通常、[`PermissionResult`](#permissionresult) を返すことでリクエストを解決し、SDK はそれを `control_response` としてトランスポート経由で書き戻します。`null` を返すのは、アプリケーションが独自のチャンネル経由で `requestId` を含めてこのリクエストの `control_response` をすでに送信している場合のみにしてください。その場合、SDK はトランスポートへのレスポンスの書き込みをスキップします。それ以外の場合に `null` を返すと、`control_response` が一切送信されず、権限プロンプトはタイムアウトしないため、ツール呼び出しが無期限にブロックされたままになります。

1346 1351 

1347`requestId` オプションと `null` の戻り値には、Claude Code v2.1.199 以降が必要です。1352`requestId` オプションと `null` の戻り値には Claude Code v2.1.199 以降が必要です。

1348 1353 

1349<h3 id="permissionresult">1354<h3 id="permissionresult">

1350 `PermissionResult`1355 `PermissionResult`


1384 1389 

1385| フィールド | 型 | 説明 |1390| フィールド | 型 | 説明 |

1386| :- | :- | :- |1391| :- | :- | :- |

1387| `askUserQuestion.previewFormat` | `'markdown' \| 'html'` | [`AskUserQuestion`](/docs/ja/agent-sdk/user-input#question-format) のオプションで `preview` フィールドを有効にし、そのコンテンツ形式を設定します。未設定の場合、Claude はプレビューを出力しません |1392| `askUserQuestion.previewFormat` | `'markdown' \| 'html'` | [`AskUserQuestion`](/docs/ja/agent-sdk/user-input#question-format) の選択肢で `preview` フィールドを有効にし、そのコンテンツ形式を設定します。未設定の場合、Claude はプレビューを出力しません |

1388 1393 

1389<h3 id="mcpserverconfig">1394<h3 id="mcpserverconfig">

1390 `McpServerConfig`1395 `McpServerConfig`


1480| :- | :- | :- |1485| :- | :- | :- |

1481| `type` | `'local'` | `'local'` である必要があります(現在はローカルプラグインのみサポート) |1486| `type` | `'local'` | `'local'` である必要があります(現在はローカルプラグインのみサポート) |

1482| `path` | `string` | プラグインディレクトリへの絶対パスまたは相対パス |1487| `path` | `string` | プラグインディレクトリへの絶対パスまたは相対パス |

1483| `skipMcpDiscovery` | `boolean` | `true` の場合、SDK はこのプラグインからスキル、フック、エージェント、コマンドを読み込みますが、`.mcp.json` やマニフェストの `mcpServers` は読み込みません。アプリケーションがプラグインの MCP 接続を管理する場合に設定してください。 |1488| `skipMcpDiscovery` | `boolean` | `true` の場合、SDK はこのプラグインからスキル、フック、エージェント、コマンドを読み込みますが、その `.mcp.json` やマニフェストの `mcpServers` は読み込みません。アプリケーションがプラグインの MCP 接続を管理する場合に設定してください。 |

1484 1489 

1485**例:**1490**例:**

1486 1491 


3788};3793};

3789```3794```

3790 3795 

3791コードレビューの検出結果を構造化リストとしてレポートするため、Claude Code はテキストとして出力する代わりにレンダリングできます。`level` はレビューが実行された努力レベルです。検出結果は最も重大度の高い順に並べられ、呼び出しごとに最大 32 個で、配列は何も生き残らなかった場合は空です。Claude Code v2.1.196 以降が必要です。3796コードレビューの検出結果を構造化リストとしてレポートするため、Claude Code はテキストとして出力する代わりにレンダリングできます。検出結果は最も重大度の高い順に並べられ、呼び出しごとに最大 32 個で、配列は何も生き残らなかった場合は空です。Claude Code v2.1.196 以降が必要です。

3797 

3798`level` はオプションで、Claude がレビューについて報告する effort レベルを保持します。Claude Code はこれをレビューが実際に実行されたレベルと比較しないため、両者が異なる場合があります。

3792 3799 

3793各検出結果には以下のフィールドが含まれます:3800各検出結果には以下のフィールドが含まれます:

3794 3801 


4838};4845};

4839```4846```

4840 4847 

4841報告された検出結果の数、レビューが実行された努力レベル、および結果本体のためにエコーバックされた検出結果を返します。Claude Code v2.1.196 以降が必要です。エコーバックされた `short_summary` フィールドは Claude Code v2.1.212 以降が必要です。4848報告された検出結果の数、Claude が渡した `level` 値、および結果本体のためにエコーバックされた検出結果を返します。Claude Code v2.1.196 以降が必要です。エコーバックされた `short_summary` フィールドは Claude Code v2.1.212 以降が必要です。

4842 4849 

4843<h3 id="artifact-2">4850<h3 id="artifact-2">

4844 Artifact4851 Artifact


5459 | { type: "disabled" }; // No extended thinking5466 | { type: "disabled" }; // No extended thinking

5460```5467```

5461 5468 

5462オプションの `display` フィールドは、思考テキストが `"summarized"` または `"omitted"` で返されるかどうかを制御します。Claude Opus 4.7 以降では、API デフォルトは `"omitted"` なため、思考コンテンツを `thinking` ブロックで受け取るには `"summarized"` を設定してください。Claude Code は Amazon Bedrock または Google Cloud の Agent Platform に `display` を送信しないため、これらのプロバイダーでは Opus 4.7 以降は `display` を `"summarized"` に設定した場合でも空の `thinking` ブロックを返します。5469オプションの `display` フィールドは、思考テキストが `"summarized"` または `"omitted"` で返されるかどうかを制御します。Claude Opus 4.7 以降では、API デフォルトは `"omitted"` なため、思考コンテンツを `thinking` ブロックで受け取るには `"summarized"` を設定してください。Claude Code は、Amazon Bedrock や Google Cloud の Agent Platform など一部のプロバイダーへのリクエストに `display` を含めません。これらのプロバイダーでは、`display` を `"summarized"` に設定した場合でも、Opus 4.7 以降は空の `thinking` ブロックを返します。

5463 5470 

5464<h3 id="spawnedprocess">5471<h3 id="spawnedprocess">

5465 `SpawnedProcess`5472 `SpawnedProcess`


5530 5537 

5531`setMcpServers()` を呼び出すと、Claude Code は以下のルールを適用します。5538`setMcpServers()` を呼び出すと、Claude Code は以下のルールを適用します。

5532 5539 

5533* **呼び出しが名前を付けないサーバー**: Claude Code はプラグイン提供サーバーを実行し続けます。Agent SDK v0.3.210 以降が必要です。5540* **呼び出しが名前を付けないサーバー**: [クラウドセッション](/docs/ja/claude-code-on-the-web)以外では、Claude Code は以前の `setMcpServers()` 呼び出しが追加したサーバーとインプロセス SDK サーバーを切断し、それらを `removed` にリストします。その他のサーバーは実行を続け、`removed` にはリストされません。これには [`mcpServers`](#options) オプションからの stdio、HTTP、SSE サーバー、設定ファイルからのサーバー、プラグイン提供サーバーが含まれます。

5534* **呼び出しが名前を付けるサーバー**: CLI が起動時に開始した組み込みサーバーを除き、Claude Code は実行中のサーバーを、渡した設定と異なる場合にのみ置き換えます。5541* **呼び出しが名前を付けるサーバー**: Claude Code は、以前の `setMcpServers()` 呼び出しが追加した stdio、HTTP、または SSE サーバーを、その設定が渡したものと異なる場合にのみ置き換えます。その名前ですでに登録されているインプロセス SDK サーバーはそのまま残るため、入れ替えるには、ある呼び出しからそれを除外し、次の呼び出しで追加してください。

5535* **CLI が起動時に開始した組み込みサーバー**: 呼び出しが 1 つを名前付けする場合、Claude Code はそのエントリをドロップし、`errors` で報告します。5542* **CLI が起動時に開始した組み込みサーバー**: 呼び出しが 1 つを名前付けする場合、Claude Code はそのエントリをドロップし、`errors` で報告します。

5536 5543 

5537新しく追加された stdio、HTTP、SSE サーバーが接続または失敗した後、プロミスが解決されるため、接続されたサーバーからのツールは次のターンで利用可能です。5544新しく追加された stdio、HTTP、SSE サーバーが接続または失敗した後、プロミスが解決されるため、接続されたサーバーからのツールは次のターンで利用可能です。

agent-view.md +1 −0

Details

819| `claude rm <id> --discard-unpushed <commit>@<worktree-id>` | プッシュされていないコミットで削除が拒否されたセッションを削除し、worktree をそのブランチとコミットとともに破棄します。拒否が出力した正確な値を渡します。[セッションの削除で何が削除されるか](#what-deleting-a-session-removes)を参照してください。v2.1.260 以降が必要です |819| `claude rm <id> --discard-unpushed <commit>@<worktree-id>` | プッシュされていないコミットで削除が拒否されたセッションを削除し、worktree をそのブランチとコミットとともに破棄します。拒否が出力した正確な値を渡します。[セッションの削除で何が削除されるか](#what-deleting-a-session-removes)を参照してください。v2.1.260 以降が必要です |

820| `claude rm <id> --force-remove-worktree <worktree-id>` | git または `WorktreeRemove` フックが worktree を削除できなかったために削除が拒否されたセッションを削除し、worktree ディレクトリを削除してそのブランチをリポジトリに残します。拒否が出力した正確な値を渡します。[セッションの削除で何が削除されるか](#what-deleting-a-session-removes)を参照してください。v2.1.268 以降が必要です |820| `claude rm <id> --force-remove-worktree <worktree-id>` | git または `WorktreeRemove` フックが worktree を削除できなかったために削除が拒否されたセッションを削除し、worktree ディレクトリを削除してそのブランチをリポジトリに残します。拒否が出力した正確な値を渡します。[セッションの削除で何が削除されるか](#what-deleting-a-session-removes)を参照してください。v2.1.268 以降が必要です |

821| `claude daemon status` | [supervisor](#the-supervisor-process) の状態、バージョン、ソケットディレクトリ、およびワーカー数を出力する |821| `claude daemon status` | [supervisor](#the-supervisor-process) の状態、バージョン、ソケットディレクトリ、およびワーカー数を出力する |

822| `claude daemon logs` | supervisor のログファイル [`~/.claude/daemon.log`](#where-state-is-stored) を追跡し、`Ctrl+C` を押すまで新しい行を到着次第出力する |

822| `claude daemon stop --any` | supervisor プロセスとそれがホストするバックグラウンドセッションを停止します。`--keep-workers` を渡して、バックグラウンドセッションを実行したままにして、次の supervisor が再接続できるようにします。次の `claude agents` または `claude --bg` は新しい supervisor を開始します |823| `claude daemon stop --any` | supervisor プロセスとそれがホストするバックグラウンドセッションを停止します。`--keep-workers` を渡して、バックグラウンドセッションを実行したままにして、次の supervisor が再接続できるようにします。次の `claude agents` または `claude --bg` は新しい supervisor を開始します |

823 824 

824`claude attach` と `claude logs` は、`claude logs "auth refactor"` のように、ID の代わりに実行中のセッション名の一部を受け取ることができます。名前を渡すには Claude Code v2.1.290 以降が必要です。825`claude attach` と `claude logs` は、`claude logs "auth refactor"` のように、ID の代わりに実行中のセッション名の一部を受け取ることができます。名前を渡すには Claude Code v2.1.290 以降が必要です。

agents.md +1 −1

Details

20 20 

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

22 22 

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

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

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

26 26 

Details

682 682 

683Amazon Bedrock は `InvokeModelWithResponseStream` レスポンスをバイナリイベントストリーム形式でストリーミングし、ヘッダー `Content-Type: application/vnd.amazon.eventstream` を含みます。Claude Code と Amazon Bedrock の間のゲートウェイまたはプロキシは、Amazon Bedrock が送信したレスポンスボディとそのヘッダー(`Content-Type` を含む)を変更されずに転送する必要があります。683Amazon Bedrock は `InvokeModelWithResponseStream` レスポンスをバイナリイベントストリーム形式でストリーミングし、ヘッダー `Content-Type: application/vnd.amazon.eventstream` を含みます。Claude Code と Amazon Bedrock の間のゲートウェイまたはプロキシは、Amazon Bedrock が送信したレスポンスボディとそのヘッダー(`Content-Type` を含む)を変更されずに転送する必要があります。

684 684 

685ゲートウェイが `Content-Type` を別の値に書き換える場合、Claude Code は `Bedrock streaming response has content-type` で始まるエラーでレスポンスを拒否し、受け取った値を名前付けます。一般的な書き換えは `text/event-stream` で、ストリームをサーバー送信イベントとして再発行する統合からのものです。685ゲートウェイが `Content-Type` を別の値に書き換える場合、Claude Code は `Bedrock streaming response has content-type` で始まるエラーでレスポンスを拒否し、受け取った値を名前付けます。一般的な書き換えは `text/event-stream` で、ストリームをサーバー送信イベントとして再発行する統合からのものです。エラーメッセージに示される `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` 変数については、[Bedrock streaming response has an unexpected content-type](/docs/ja/errors#bedrock-streaming-response-has-an-unexpected-content-type) を参照してください。

686 686 

687ゲートウェイがヘッダーをドロップまたは空白にする代わりに、Claude Code は本体が Amazon Bedrock のイベントストリームであると仮定してデコードするため、ゲートウェイが変更されずに通した本体はストリーミングを続けます。687ゲートウェイがヘッダーをドロップまたは空白にする代わりに、Claude Code は本体が Amazon Bedrock のイベントストリームであると仮定してデコードするため、ゲートウェイが変更されずに通した本体はストリーミングを続けます。

688 688 

Details

12 Claude Code にログインする12 Claude Code にログインする

13</h2>13</h2>

14 14 

15[Claude Code をインストール](/docs/ja/setup#install-claude-code)した後、ターミナルで `claude` を実行します。初回起動時に、Claude Code はログインするためのブラウザウィンドウを開きます。`ANTHROPIC_API_KEY` 環境変数を設定している場合、Claude Code はログインプロンプトをスキップし、代わりにキーを承認するよう求めます。15[Claude Code をインストール](/docs/ja/setup#install-claude-code)した後、ターミナルで `claude` を実行します。初回起動時に、Claude Code はログインするためのブラウザウィンドウを開きます。`ANTHROPIC_API_KEY` 環境変数を設定していて、そのキーを使用するかどうかを Claude Code に尋ねられたときにキーを承認した場合、Claude Code はログインプロンプトをスキップします。

16 16 

17ブラウザが自動的に開かない場合は、`c` を押してログイン URL をクリップボードにコピーし、ブラウザに貼り付けます。17ブラウザが自動的に開かない場合は、`c` を押してログイン URL をクリップボードにコピーし、ブラウザに貼り付けます。

18 18 

Details

351}351}

352```352```

353 353 

354カスタム `allow`、`soft_deny`、`hard_deny` ルールについて AI からのフィードバックを取得します:354カスタムの `allow`、`soft_deny`、`hard_deny`、`environment` エントリについて AI からのフィードバックを取得します:

355 355 

356```bash theme={null}356```bash theme={null}

357claude auto-mode critique357claude auto-mode critique

chrome.md +1 −1

Details

343 343 

344| エラー | 原因 | 修正 |344| エラー | 原因 | 修正 |

345| - | - | - |345| - | - | - |

346| "Browser extension is not connected" | ネイティブメッセージングホストが拡張機能に到達できない、または組織の IP 許可リストが `bridge.claudeusercontent.com` への接続を拒否している | Chrome と Claude Code を再起動してから、`/chrome` を実行して再接続します。組織が IP 許可リストを使用しており、エラーが解決しない場合は、[組織の IP 許可リストとプロキシのエグレス](/docs/ja/network-config#organization-ip-allowlists-and-proxy-egress)を参照してください |346| "Browser extension is not connected" | ネイティブメッセージングホストが拡張機能に到達できない、または組織の IP 許可リストが `bridge.claudeusercontent.com` への接続を拒否している | 拡張機能が Claude Code と同じ claude.ai アカウントにサインインしていることを確認し、Chrome と Claude Code を再起動してから、`/chrome` を実行して再接続します。組織が IP 許可リストを使用しており、エラーが解決しない場合は、[組織の IP 許可リストとプロキシのエグレス](/docs/ja/network-config#organization-ip-allowlists-and-proxy-egress)を参照してください |

347| `/chrome` で拡張機能に「Not detected」と表示される | Chrome 拡張機能がインストールされていないか、無効になっている | `chrome://extensions` で拡張機能をインストールまたは有効にします |347| `/chrome` で拡張機能に「Not detected」と表示される | Chrome 拡張機能がインストールされていないか、無効になっている | `chrome://extensions` で拡張機能をインストールまたは有効にします |

348| "No tab available" | Claude がタブの準備ができる前に動作しようとした | Claude に新しいタブを作成して再度試すよう依頼します |348| "No tab available" | Claude がタブの準備ができる前に動作しようとした | Claude に新しいタブを作成して再度試すよう依頼します |

349| "Receiving end does not exist" | 拡張機能サービスワーカーがアイドル状態になった | `/chrome` を実行して「Reconnect extension」を選択します |349| "Receiving end does not exist" | 拡張機能サービスワーカーがアイドル状態になった | `/chrome` を実行して「Reconnect extension」を選択します |

Details

75| - | - |75| - | - |

76| Claude Code v2.1.195 以降 | `claude gateway` サブコマンドとゲートウェイサインインフローは v2.1.195 で提供されます。以前のパブリックビルドには含まれていません。ゲートウェイサーバーを実行するマシンと各開発者のマシンの両方が v2.1.195 以降である必要があります。`claude update` を実行して最新リリースを取得します。[Claude Platform on AWS アップストリーム](/docs/ja/claude-apps-gateway-config#claude-platform-on-aws)はゲートウェイサーバーで Claude Code v2.1.198 以降が必要です。 |76| Claude Code v2.1.195 以降 | `claude gateway` サブコマンドとゲートウェイサインインフローは v2.1.195 で提供されます。以前のパブリックビルドには含まれていません。ゲートウェイサーバーを実行するマシンと各開発者のマシンの両方が v2.1.195 以降である必要があります。`claude update` を実行して最新リリースを取得します。[Claude Platform on AWS アップストリーム](/docs/ja/claude-apps-gateway-config#claude-platform-on-aws)はゲートウェイサーバーで Claude Code v2.1.198 以降が必要です。 |

77| OpenID Connect(OIDC)ID プロバイダー | Okta、Microsoft Entra ID、Google Workspace、Keycloak、Dex、または PingFederate などの OIDC 準拠の IdP。ゲートウェイは標準 OIDC ディスカバリーと認可コードフローを実行します。SAML と LDAP はサポートされていません。 |77| OpenID Connect(OIDC)ID プロバイダー | Okta、Microsoft Entra ID、Google Workspace、Keycloak、Dex、または PingFederate などの OIDC 準拠の IdP。ゲートウェイは標準 OIDC ディスカバリーと認可コードフローを実行します。SAML と LDAP はサポートされていません。 |

78| PostgreSQL 14 以降 | デバイスサインインフロー(ブラウザコールバックが書き込み、ポーリング CLI が読み取る)とレート制限カウンターをサポートします。最小層を含む任意の管理 Postgres が機能します。支出制限が設定されていない場合、ゲートウェイは数 KB の短期間有効な認証状態を保存します。[支出制限](/docs/ja/claude-apps-gateway-spend-limits)を使用すると、バックアップする必要がある耐久的な支出、監査、およびアイデンティティテーブルも保持します。`?sslmode=require` 経由の TLS が推奨されます。 |78| PostgreSQL 11 以降 | デバイスサインインフローとレート制限カウンターをサポートします。最小層を含むマネージド PostgreSQL サービスが利用できます。[サポートされているデータベース](/docs/ja/claude-apps-gateway-deploy#postgres)を参照してください。[支出制限](/docs/ja/claude-apps-gateway-spend-limits)を使用すると、バックアップする必要がある耐久的な支出、監査、およびアイデンティティテーブルも保持します。`?sslmode=require` 経由の TLS が推奨されます。PostgreSQL 11、12、13 には、ゲートウェイサーバーで Claude Code v2.1.290 以降が必要です。PostgreSQL プロジェクトはこれらのバージョンの保守を終了しているため、可能な場合は新しいバージョンを使用してください。 |

79| モデルアップストリーム | Amazon Bedrock 認証情報、Claude Platform on AWS 認証情報、Google Cloud 認証情報、Microsoft Foundry リソース、または Anthropic API キー。複数のアップストリームがサポートされ、フェイルオーバーがあります。 |79| モデルアップストリーム | Amazon Bedrock 認証情報、Claude Platform on AWS 認証情報、Google Cloud 認証情報、Microsoft Foundry リソース、または Anthropic API キー。複数のアップストリームがサポートされ、フェイルオーバーがあります。 |

80| HTTPS | ゲートウェイは開発者ラップトップとサインインに使用されるブラウザから `https://` 経由で到達可能である必要があります。ゲートウェイは同じリスナーでデバイス検証ページを提供します。`listen.tls` 経由で TLS 証明書を提供するか、TLS 終了イングレスの背後で実行し、`listen.public_url` を外部オリジンに設定します。プレーン `http://` オリジンはゲートウェイホストがループバック(`localhost`、`127.0.0.1`、または `::1`)の場合にのみ受け入れられます。 |80| HTTPS | ゲートウェイは開発者ラップトップとサインインに使用されるブラウザから `https://` 経由で到達可能である必要があります。ゲートウェイは同じリスナーでデバイス検証ページを提供します。`listen.tls` 経由で TLS 証明書を提供するか、TLS 終了イングレスの背後で実行し、いずれの場合も `listen.public_url` を外部オリジンに設定します。`/login` では、Claude Code はゲートウェイホストがループバック(`localhost`、`127.0.0.1`、または `::1`)の場合にのみプレーン `http://` オリジンを受け入れます。 |

81| プライベートネットワークアドレス | `/login` では、Claude Code はゲートウェイのホスト名または IP アドレスがプライベートアドレスのみに解決されることを要求します。RFC 1918、リンクローカル、CGNAT `100.64.0.0/10`、IPv6 ULA `fc00::/7`、またはループバック。ホストするゲートウェイの場合、宣言するブロック外のパブリックアドレスは拒否されます。デプロイメントガイドの[脅威モデル](/docs/ja/claude-apps-gateway-deploy#threat-model-summary)を参照してください。開発者マシンが HTTPS を企業プロキシ経由でルーティングする場合、サインインはプロキシホストもプライベートアドレスに解決されることを要求します。そうでない場合は、ゲートウェイホストを `NO_PROXY` に追加して、CLI が直接接続するようにします。内部ネットワークが組織が所有するパブリック IPv4 スペースから番号付けされている場合は、[これらのブロックを宣言](#allow-a-gateway-on-public-address-space-you-own)して、`/login` がそこでゲートウェイを受け入れるようにします。 |81| プライベートネットワークアドレス | `/login` では、Claude Code はゲートウェイのホスト名または IP アドレスがプライベートアドレスのみに解決されることを要求します。RFC 1918、リンクローカル、CGNAT `100.64.0.0/10`、IPv6 ULA `fc00::/7`、またはループバック。ホストするゲートウェイの場合、宣言するブロック外のパブリックアドレスは拒否されます。デプロイガイドの[脅威モデル](/docs/ja/claude-apps-gateway-deploy#threat-model-summary)を参照してください。開発者マシンが HTTPS を企業プロキシ経由でルーティングする場合、サインインはプロキシホストもプライベートアドレスに解決されることを要求します。そうでない場合は、ゲートウェイホストを `NO_PROXY` に追加して、CLI が直接接続するようにします。内部ネットワークが組織が所有するパブリック IPv4 スペースから番号付けされている場合は、[これらのブロックを宣言](#allow-a-gateway-on-public-address-space-you-own)して、`/login` がそこでゲートウェイを受け入れるようにします。 |

82| Linux ランタイム | ゲートウェイサーバーはネイティブ Linux バイナリでのみ実行されます。macOS はローカル開発用に機能します。Windows はサーバープラットフォームとしてサポートされていません。 |82| Linux ランタイム | ゲートウェイサーバーはネイティブ Linux バイナリでのみ実行されます。macOS はローカル開発用に機能します。Windows はサーバープラットフォームとしてサポートされていません。 |

83 83 

84<h3 id="steps">84<h3 id="steps">


91 </Step>91 </Step>

92 92 

93 <Step title="PostgreSQL データベースをプロビジョニングする">93 <Step title="PostgreSQL データベースをプロビジョニングする">

94 最小管理層を含む任意の Postgres 14 以降が機能します。ゲートウェイは起動時に独自のスキーママイグレーションを実行するため、データベースロールはテーブルを作成および変更する権限が必要です。[`store`](/docs/ja/claude-apps-gateway-config#store)を参照してください。94 PostgreSQL 11 以降を使用します。最小のマネージド層で十分です。ゲートウェイは起動時に独自のスキーママイグレーションを実行するため、データベースロールはテーブルを作成および変更する権限が必要です。[`store`](/docs/ja/claude-apps-gateway-config#store)を参照してください。

95 </Step>95 </Step>

96 96 

97 <Step title="gateway.yaml を書く">97 <Step title="gateway.yaml を書く">


142 </Step>142 </Step>

143 143 

144 <Step title="実行する">144 <Step title="実行する">

145 [イメージ要件](/docs/ja/claude-apps-gateway-deploy#container-image)を満たす `claude` バイナリの周りにコンテナイメージを構築し、Postgres と一緒に実行します。Compose ファイルはイメージを `registry.example.com/claude-gateway:2.1.198` として参照します。独自のレジストリとイメージタグに置き換えます。145 [イメージ要件](/docs/ja/claude-apps-gateway-deploy#container-image)を満たす `claude` バイナリの周りにコンテナイメージをビルドし、Postgres と一緒に実行します。Compose ファイルはイメージを `registry.example.com/claude-gateway:2.1.198` として参照します。独自のレジストリとイメージタグに置き換えます。

146 146 

147 ```yaml docker-compose.yaml theme={null}147 ```yaml docker-compose.yaml theme={null}

148 services:148 services:


172 volumes: { pgdata: }172 volumes: { pgdata: }

173 ```173 ```

174 174 

175 ゲートウェイは、設定を読み取り、Postgres に接続してスキーママイグレーションを適用し、IdP に対して OIDC ディスカバリーを実行し、アップストリームクライアントを構築し、リッスンを開始する単一の Linux バイナリです。起動は設定、Postgres 接続、OIDC ディスカバリー、およびアップストリームクライアント構築に対して失敗時に閉じられます。これらのいずれかが到達不可能または設定が誤っている場合、ゲートウェイは低下した状態でトラフィックを提供するのではなく、エラーで終了します。175 ゲートウェイは、設定を読み取り、Postgres に接続してスキーママイグレーションを適用し、IdP に対して OIDC ディスカバリーを実行し、アップストリームクライアントを構築し、リッスンを開始する単一の Linux バイナリです。

176 

177 起動は設定、Postgres 接続、OIDC ディスカバリー、およびアップストリームクライアント構築に対して失敗時に閉じられます。これらのいずれかが到達不可能または設定が誤っている場合、ゲートウェイは低下した状態でトラフィックを提供するのではなく、エラーで終了します。

176 178 

177 成功した起動は推論パスを検証しません。Amazon Bedrock と Google Cloud の Agent Platform インスタンス認証情報は起動時ではなく最初のリクエストで解決されるためです。179 成功した起動は推論パスを検証しません。Amazon Bedrock と Google Cloud の Agent Platform インスタンス認証情報は起動時ではなく最初のリクエストで解決されるためです。

178 180 


187 [gateway] 2026-06-10T17:03:21.512Z info claude gateway listening on http://0.0.0.0:8080189 [gateway] 2026-06-10T17:03:21.512Z info claude gateway listening on http://0.0.0.0:8080

188 ```190 ```

189 191 

190 ゲートウェイは、`access_control.allow_cidrs` が空であることを示す警告もログに記録します。これはここで予想されています。ゲートウェイがサーブするクライアントアドレスを制限するものがないためです。許可リストを設定するまで。[`access_control` リファレンス](/docs/ja/claude-apps-gateway-config#http-tuning)には推奨範囲があります。192 ゲートウェイは、`access_control.allow_cidrs` が空であることを示す警告もログに記録します。これはここでは想定どおりです。許可リストを設定するまで、ゲートウェイがサーブするクライアントアドレスを制限するものがないためです。[`access_control` リファレンス](/docs/ja/claude-apps-gateway-config#http-tuning)には推奨範囲があります。

191 193 

192 起動が `claude gateway listening on` 行の前に終了する場合、stderr の最後の行は問題を名前付けます。194 起動が `claude gateway listening on` 行の前に終了する場合、stderr の最後の行は問題を名前付けます。

193 195 


223 }225 }

224 ```226 ```

225 227 

226 応答には `response_types_supported` や `scopes_supported` などの追加フィールドが含まれます。228 レスポンスには `response_types_supported` や `scopes_supported` などの追加フィールドが含まれます。

227 229 

228 次に、デバイス認可をリクエストします。これはデバイスサインインフローが機能し、Postgres が到達可能で書き込み可能であることを確認します。230 次に、デバイス認可をリクエストします。これはデバイスサインインフローが機能し、Postgres が到達可能で書き込み可能であることを確認します。

229 231 


253 </Step>255 </Step>

254 256 

255 <Step title="開発者をログインさせる">257 <Step title="開発者をログインさせる">

256 この最後のステップはサーバーではなく開発者マシンで発生します。そのマシンの[管理設定ファイル](/docs/ja/managed-settings#delivery-mechanisms)で `forceLoginMethod` を `"gateway"` に、`forceLoginGatewayUrl` をゲートウェイの `public_url` に設定し、`/login` を実行し、**Cloud gateway** 画面で Enter キーを押し、ブラウザサインインを完了します。以下の[ゲートウェイ URL を設定](#set-the-gateway-url)は、スケール時に両方のキーを配布することをカバーしています。258 この最後のステップはサーバーではなく開発者マシンで発生します。そのマシンの[管理設定ファイル](/docs/ja/managed-settings#delivery-mechanisms)で `forceLoginMethod` を `"gateway"` に、`forceLoginGatewayUrl` をゲートウェイの `public_url` に設定し、`/login` を実行し、**Cloud gateway** 画面で Enter キーを押し、ブラウザサインインを完了します。以下の[ゲートウェイ URL を設定](#set-the-gateway-url)では、両方のキーをすべての開発者マシンに配布する方法を説明しています。

257 </Step>259 </Step>

258</Steps>260</Steps>

259 261 

Details

156ゲートウェイは鍵と証明書をブート時に一度だけ読み込むため、ファイルの変更は再起動後にのみ反映されます。IdP が持っていない証明書をトークンリクエストが提示することがないよう、次の順序でローテーションします:156ゲートウェイは鍵と証明書をブート時に一度だけ読み込むため、ファイルの変更は再起動後にのみ反映されます。IdP が持っていない証明書をトークンリクエストが提示することがないよう、次の順序でローテーションします:

157 157 

1581. 新しい証明書を、古い証明書と並べて IdP にアップロードします。1581. 新しい証明書を、古い証明書と並べて IdP にアップロードします。

1592. `gateway.yaml` が読み込む鍵と証明書のファイルを置き換えてから、ゲートウェイを再起動します。1592. `gateway.yaml` が読み込む鍵と証明書のファイルを置き換えてから、ゲートウェイを再起動します。複数のレプリカを実行している場合は、[ローリング再起動](/docs/ja/claude-apps-gateway-deploy#upgrades)で問題ありません。古い証明書を削除するまで、IdP は両方の証明書を保持しているためです。

1603. 古い証明書を IdP から削除します。1603. すべてのレプリカが再起動した後、古い証明書を IdP から削除します。

161 161 

162<h4 id="idp-requests-through-a-forward-proxy">162<h4 id="idp-requests-through-a-forward-proxy">

163 フォワードプロキシを通じた IdP リクエスト163 フォワードプロキシを通じた IdP リクエスト


225 225 

226| フィールド | 必須 | 説明 |226| フィールド | 必須 | 説明 |

227| - | - | - |227| - | - | - |

228| `postgres_url` | はい | `postgres://` または `postgresql://` URL。必須:ブラウザコールバックが書き込み、ポーリング中の CLI が読み込むデバイスグラントのランデブーには、レプリカ間の状態が必要です。ゲートウェイはブート時およびアップグレード時に独自のスキーママイグレーションを実行するため、ロールはターゲットスキーマでテーブルを作成および変更する権限が必要です。[アップグレード](/docs/ja/claude-apps-gateway-deploy#upgrades)および [Postgres](/docs/ja/claude-apps-gateway-deploy#postgres) を参照してください。 |228| `postgres_url` | はい | `postgres://` または `postgresql://` URL。カンマ区切りのリストではなく、ホストを 1 つだけ指定します。ゲートウェイはブート時およびアップグレード時に独自のスキーママイグレーションを実行するため、ロールはターゲットスキーマでテーブルを作成および変更する権限が必要です。[アップグレード](/docs/ja/claude-apps-gateway-deploy#upgrades)および [Postgres](/docs/ja/claude-apps-gateway-deploy#postgres) を参照してください。 |

229| `username` | いいえ | `postgres_url` のユーザーを上書きします |229| `username` | いいえ | `postgres_url` のユーザーを上書きします |

230| `password` | いいえ | データベース認証情報。`postgres_url` ではなくここに設定して、認証情報を URL から外します。任意の文字を受け入れ、URL 認証情報よりも優先されます。 |230| `password` | いいえ | データベース認証情報。`postgres_url` ではなくここに設定して、認証情報を URL から外します。任意の文字を受け入れ、URL 認証情報よりも優先されます。 |

231| `max_connections` | いいえ | レプリカあたりの Postgres 接続プールサイズ。デフォルト `5`。保守的で共有データベースに優しいです。[支出制限](#admin)が有効な場合、ホットパスは推論リクエストごとに数回の操作を実行するため、専用データベースが負荷の下にある場合はこれを上げ、レプリカ数 × この値をデータベースの `max_connections` 以下に保ちます。 |231| `max_connections` | いいえ | レプリカあたりの Postgres 接続プールサイズ。デフォルト `5`。保守的で共有データベースに優しいです。[支出制限](#admin)が有効な場合、ホットパスは推論リクエストごとに数回の操作を実行するため、専用データベースが負荷の下にある場合はこれを上げ、レプリカ数 × この値をデータベースの `max_connections` 以下に保ちます。 |

Details

249 Postgres249 Postgres

250</h3>250</h3>

251 251 

252ゲートウェイは状態を PostgreSQL データベースに保存します:

253 

254* **データベース**:セルフホストまたはマネージドの PostgreSQL 本体で、[最小バージョン](/docs/ja/claude-apps-gateway#prerequisites) 以降であること。分散 SQL データベースなど、Postgres プロトコルを実装しているだけのデータベースはサポートされていません。

255* **アドレス**:`store.postgres_url` は 1 つのホストを受け取ります。データベースに複数のノードがある場合は、マネージドサービスのエンドポイント、ロードバランサー、仮想 IP など、それらの前段にあるアドレスを使用します。フェイルオーバーにかかる時間より長い [readiness グレースピリオド](#readiness-grace-period) を設定します。

256 

252ゲートウェイは 5 つのデータテーブルと `_migrations` テーブルを保持し、すべてはブート時マイグレーションで作成されます:257ゲートウェイは 5 つのデータテーブルと `_migrations` テーブルを保持し、すべてはブート時マイグレーションで作成されます:

253 258 

254| テーブル | 内容 | 保持期間 |259| テーブル | 内容 | 保持期間 |


396| CLI `/login`: `Could not resolve the configured HTTP proxy` | `HTTPS_PROXY` または `HTTP_PROXY` のホスト名が開発者のマシンから解決されない。通常、企業ネットワークに接続されていないため | 開発者にネットワークまたは VPN に接続させて再試行するか、プロキシ URL を修正してください |401| CLI `/login`: `Could not resolve the configured HTTP proxy` | `HTTPS_PROXY` または `HTTP_PROXY` のホスト名が開発者のマシンから解決されない。通常、企業ネットワークに接続されていないため | 開発者にネットワークまたは VPN に接続させて再試行するか、プロキシ URL を修正してください |

397| CLI `/login`: `Could not resolve gateway host <host>` | マシンが gateway の内部 DNS 名を解決できない。通常、企業ネットワーク上にないため | 開発者にネットワークまたは VPN に接続させてから、`/login` を再試行してください |402| CLI `/login`: `Could not resolve gateway host <host>` | マシンが gateway の内部 DNS 名を解決できない。通常、企業ネットワーク上にないため | 開発者にネットワークまたは VPN に接続させてから、`/login` を再試行してください |

398| ブート時に `store.postgres_url` という名前の設定検証エラーで終了する | Postgres が設定されていない。gateway は Postgres を必要とします | `store.postgres_url` を設定してください。ローカル開発の場合、使い捨てコンテナを使用してください: `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`。 |403| ブート時に `store.postgres_url` という名前の設定検証エラーで終了する | Postgres が設定されていない。gateway は Postgres を必要とします | `store.postgres_url` を設定してください。ローカル開発の場合、使い捨てコンテナを使用してください: `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`。 |

404| ブート時に終了: `store.postgres_url in <path> is not a URL the gateway can read`、または v2.1.290 より前では単に `Invalid URL` または `URI error` | URL を解析できない。例えば、複数のホストが列挙されている、またはパスワードにエンコードされていない `/`、`?`、`#`、`%` が含まれている | [ホストを 1 つ](#postgres)指定し、パスワードを [`store.password`](/docs/ja/claude-apps-gateway-config#store) に移動してください |

399| ブート時に終了: `requires the native binary` | ネイティブバイナリではなく Node で実行されている | Claude Code を[スタンドアロンインストール方法](/docs/ja/setup)のいずれかでインストールしてください |405| ブート時に終了: `requires the native binary` | ネイティブバイナリではなく Node で実行されている | Claude Code を[スタンドアロンインストール方法](/docs/ja/setup)のいずれかでインストールしてください |

400| ブート時に `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 の各エンドポイントへの直接ルートをポッドに提供してください。ポッドが IdP のホスト名を解決できない場合、またはプロキシが IP アドレスへの `CONNECT` を拒否する場合、[プロキシのみの出口](/docs/ja/claude-apps-gateway-config#proxy-only-egress)を参照してください。これには v2.1.277 以降が必要です。 |406| ブート時に `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 の各エンドポイントへの直接ルートをポッドに提供してください。ポッドが IdP のホスト名を解決できない場合、またはプロキシが IP アドレスへの `CONNECT` を拒否する場合、[プロキシのみの出口](/docs/ja/claude-apps-gateway-config#proxy-only-egress)を参照してください。これには v2.1.277 以降が必要です。 |

401| ブート時に Postgres 権限エラーで終了する | データベースロールがそのスキーマに対する DDL 権限を持たない | ロールに gateway のスキーマに対する `CREATE` を付与して、ブート時にテーブルを作成・変更できるようにしてください |407| ブート時に Postgres 権限エラーで終了する | データベースロールがそのスキーマに対する DDL 権限を持たない | ロールに gateway のスキーマに対する `CREATE` を付与して、ブート時にテーブルを作成・変更できるようにしてください |

402| ログ: `could not connect to Postgres at boot, attempt 1 of 3` | gateway が起動したときにデータベースがまだ到達可能ではなかった。例えば、ネットワークがまだ起動中のコールドインスタンス | その後 gateway がブートを完了する場合、アクションは不要です。データベースに到達できない場合、gateway は終了する前に 2 秒間隔で接続を 3 回試行します。`could not connect to Postgres` で終了する場合、`store.postgres_url` とデータベースへのネットワークパスを確認してください。試行が拒否されるのではなくタイムアウトする場合、[`store.connect_timeout_seconds`](/docs/ja/claude-apps-gateway-config#store)を上げて各試行に長い時間を与えてください。 |408| ログ: `could not connect to Postgres at boot, attempt 1 of 3` | gateway が起動したときにデータベースがまだ到達可能ではなかった。例えば、ネットワークがまだ起動中のコールドインスタンス | その後 gateway がブートを完了する場合、アクションは不要です。データベースに到達できない場合、gateway は終了する前に 2 秒間隔で接続を 3 回試行します。`could not connect to Postgres` で終了する場合、`store.postgres_url`(ホストを 1 つだけ指定していることを含む)とデータベースへのネットワークパスを確認してください。試行が拒否されるのではなくタイムアウトする場合、[`store.connect_timeout_seconds`](/docs/ja/claude-apps-gateway-config#store)を上げて各試行に長い時間を与えてください。 |

403| `/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` を設定してください。 |409| `/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` を設定してください。 |

404| ログ: `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` を設定してください。 |410| ログ: `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` を設定してください。 |

405| ログ: `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) でプロビジョニング解除のトレードオフを参照してください。 |411| ログ: `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) でプロビジョニング解除のトレードオフを参照してください。 |

Details

169 </Step>169 </Step>

170 170 

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

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

173 173 

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

175 175 


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

202 ```202 ```

203 203 

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

205 205 

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

207 207 


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

213 ```213 ```

214 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 スタートアップパラメータとして転送します。サーバーはこれを拒否します。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 216 

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

218 </Step>218 </Step>

219 219 

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

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

222 222 

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

224 224 

225 * `public_url`:外部 `https://` オリジン。ロードバランサーの背後で必須です。[`listen` リファレンス](/docs/ja/claude-apps-gateway-config#listen)を参照してください。ゲートウェイは IdP `redirect_uri` と検出ドキュメントをこの値からのみ構築し、`X-Forwarded-*` ヘッダーからは構築しません。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 を記録します。226 * `trusted_proxies`:フロントエンドのソース範囲。ゲートウェイは TCP ピアがこのリストにある場合にのみ `X-Forwarded-For` を尊重し、信頼できるホップを過ぎてチェーンをウォークします。そのため、IP ごとのサインインレート制限と監査イベントは、ロードバランサーの IP ではなく開発者の IP を記録します。

227 227 

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

229 229 


255 255 

256 store:256 store:

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

258 # readiness_grace_seconds: 300 # RDS フェイルオーバーを通じてヘルスチェックを渡し続けます258 # readiness_grace_seconds: 300 # RDS フェイルオーバー中も

259 # ヘルスチェックを通過し続けます

259 260 

260 upstreams:261 upstreams:

261 - provider: bedrock262 - provider: bedrock

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

264 # $AWS_REGION と一致させます

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

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

265 ```267 ```


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

294 </Step>296 </Step>

295 297 

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

297 [コンテナイメージ要件](/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` をマウントするため、埋め込みコピーはそこで使用されません。299 [コンテナイメージ要件](/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` をマウントするため、埋め込みコピーはそこでは使用されません。

298 300 

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

300 302 

301 ```bash theme={null}303 ```bash theme={null}

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


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

311 ```313 ```

312 314 

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

314 316 

315 ```bash theme={null}317 ```bash theme={null}

316 aws ecr create-repository --repository-name claude-gateway \318 aws ecr create-repository --repository-name claude-gateway \


321 "${ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com"323 "${ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com"

322 ```324 ```

323 325 

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

325 327 

326 ```bash theme={null}328 ```bash theme={null}

327 docker build --platform=linux/amd64 \329 docker build --platform=linux/amd64 \


333 <Step title="デプロイ">335 <Step title="デプロイ">

334 <Tabs>336 <Tabs>

335 <Tab title="ECS Fargate">337 <Tab title="ECS Fargate">

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

337 339 

338 ```bash theme={null}340 ```bash theme={null}

339 aws ecs create-cluster --cluster-name claude-gateway341 aws ecs create-cluster --cluster-name claude-gateway


342 --retention-in-days 90344 --retention-in-days 90

343 ```345 ```

344 346 

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

346 348 

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

348 {350 {


399 401 

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

401 403 

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

403 405 

404 ```bash theme={null}406 ```bash theme={null}

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


412 --attributes Key=idle_timeout.timeout_seconds,Value=3600414 --attributes Key=idle_timeout.timeout_seconds,Value=3600

413 ```415 ```

414 416 

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

416 418 

417 ```bash theme={null}419 ```bash theme={null}

418 aws ecs create-service --cluster claude-gateway --service-name claude-gateway \420 aws ecs create-service --cluster claude-gateway --service-name claude-gateway \


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

424 ```426 ```

425 427 

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

427 429 

428 タスクはパブリック 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 はまだインターネットエグレスが必要です。430 ターゲットグループの `GET /readyz` のヘルスチェックはストアが到達可能であることを検証するため、Postgres に到達できないタスクはローテーションに入りません。RDS フェイルオーバーなどの短いデータベース停止中もタスクがチェックを通過し続けるようにするには、[停止動作](/docs/ja/claude-apps-gateway-deploy#outage-behavior)の説明に従って `store.readiness_grace_seconds` を設定します。同セクションでは `/healthz` 代替案についても説明しています。

431 

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

429 433 

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

431 435 

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

433 </Tab>437 </Tab>

434 438 

435 <Tab title="EKS">439 <Tab title="EKS">

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

437 441 

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

439 443 

440 ```bash theme={null}444 ```bash theme={null}

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


451 --approve455 --approve

452 ```456 ```

453 457 

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

455 459 

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

457 461 

458 * `serviceAccountName: gateway`462 * `serviceAccountName: gateway`

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

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

461 465 

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

463 467 

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

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

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

467 * `alb.ingress.kubernetes.io/certificate-arn` と ACM 証明書471 * ACM 証明書を指定した `alb.ingress.kubernetes.io/certificate-arn`

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

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

470 474 

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

472 </Tab>476 </Tab>

473 </Tabs>477 </Tabs>

474 </Step>478 </Step>

475 479 

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

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

478 </Step>482 </Step>

479</Steps>483</Steps>

480 484 

Details

416* **分離された仮想マシン**:各セッションは分離された Anthropic 管理 VM で実行されます。セッションが組織によってルーティングされる[セルフホスト環境](/docs/ja/self-hosted-environments)は、代わりに独自のインフラストラクチャで実行され、分離はデプロイメントの責任です416* **分離された仮想マシン**:各セッションは分離された Anthropic 管理 VM で実行されます。セッションが組織によってルーティングされる[セルフホスト環境](/docs/ja/self-hosted-environments)は、代わりに独自のインフラストラクチャで実行され、分離はデプロイメントの責任です

417* <span id="default-allowed-domains" />**ネットワークアクセス制御**:Anthropic ホスト型環境では、ネットワークアクセスはデフォルトで制限され、無効にできます。[ネットワークアクセス](/docs/ja/cloud-environments#network-access)でアクセスレベル、[デフォルト許可ドメイン](/docs/ja/cloud-environments#default-allowed-domains)、および許可リストを通過しないトラフィックを参照してください。セルフホスト型環境では、独自のネットワーク境界でセッション出力を制限します。ネットワークアクセスを無効にして実行する場合、Claude Code は Anthropic API と通信できます。これにより VM からデータが出ることを許可する可能性があります。417* <span id="default-allowed-domains" />**ネットワークアクセス制御**:Anthropic ホスト型環境では、ネットワークアクセスはデフォルトで制限され、無効にできます。[ネットワークアクセス](/docs/ja/cloud-environments#network-access)でアクセスレベル、[デフォルト許可ドメイン](/docs/ja/cloud-environments#default-allowed-domains)、および許可リストを通過しないトラフィックを参照してください。セルフホスト型環境では、独自のネットワーク境界でセッション出力を制限します。ネットワークアクセスを無効にして実行する場合、Claude Code は Anthropic API と通信できます。これにより VM からデータが出ることを許可する可能性があります。

418* **認証情報保護**:Anthropic ホスト型環境では、git 認証情報と署名キーはサンドボックスの外に留まり、プロキシはスコープ付き認証情報で認証します。セルフホスト型環境では、デプロイメントが git 認証情報を提供します;[git を設定](/docs/ja/self-hosted-environments-deploy#configure-git)を参照してください418* **認証情報保護**:Anthropic ホスト型環境では、git 認証情報と署名キーはサンドボックスの外に留まり、プロキシはスコープ付き認証情報で認証します。セルフホスト型環境では、デプロイメントが git 認証情報を提供します;[git を設定](/docs/ja/self-hosted-environments-deploy#configure-git)を参照してください

419* **API 認証情報**:Anthropic ホスト型環境の Pro および Max プランでは、[クラウド環境に追加](/docs/ja/cloud-environments#add-api-credentials)するキーはサンドボックスの外に留まり、セッションを離れた後、一致するリクエストに添付されます。セルフホスト型環境には API 認証情報がなく、Team および Enterprise プランはまだそれらを持っていません419* **ネットワークシークレット**:Anthropic ホスト型環境の Pro および Max プランでは、[クラウド環境に追加](/docs/ja/cloud-environments#add-api-credentials)したキーも同様にサンドボックスの外に留まり、セッションを離れた後に一致するリクエストに添付されます。セルフホスト型環境にはネットワークシークレットがなく、Team および Enterprise プランではまだ利用できません

420* **セキュアな分析**:コードは PR を作成する前に分離されたセッション環境内で分析および変更されます420* **セキュアな分析**:コードは PR を作成する前に分離されたセッション環境内で分析および変更されます

421 421 

422<h2 id="troubleshooting">422<h2 id="troubleshooting">


442`claude --cloud` と `claude --teleport` には claude.ai アカウントでのサインインが必要です。API キーで認証している場合、または保存されたアカウント詳細が古い場合、次のいずれかが表示されます。442`claude --cloud` と `claude --teleport` には claude.ai アカウントでのサインインが必要です。API キーで認証している場合、または保存されたアカウント詳細が古い場合、次のいずれかが表示されます。

443 443 

444* `Unable to get organization UUID`444* `Unable to get organization UUID`

445* API キー認証では不十分であるというメッセージ445* ``Cloud sessions need a claude.ai sign-in. Run `claude auth login` (or /login in a local session), then try again.``

446* セッション ID なしで `claude --teleport` を実行した場合、セッションピッカーでの `Error loading Claude Code sessions`446* セッション ID なしで `claude --teleport` を実行した場合、セッションピッカーでの `Error loading Claude Code sessions`

447 447 

448`/login` を実行して claude.ai アカウントでサインインし、コマンドを再試行してください。エラーにプロバイダー名が示されている場合は、[エラーテーブル](#errors-when-sending-to-a-cloud-session)を参照してください。クラウドセッションはサードパーティプロバイダーを通じては利用できません。448シェルで [`claude auth login`](/docs/ja/cli-reference#cli-commands) を実行して claude.ai アカウントでサインインし、コマンドを再試行してください。実行中のセッション内では、`/login` でも同じことができます。エラーにプロバイダー名が示されている場合は、[エラーテーブル](#errors-when-sending-to-a-cloud-session)を参照してください。クラウドセッションはサードパーティプロバイダーを通じては利用できません。

449 

450v2.1.274 から v2.1.289 までは、サインインメッセージは `Claude Code cloud sessions require authentication with a Claude.ai account. API key authentication is not sufficient. Please run /login to authenticate, or check your authentication status with /status.` でした。

449 451 

450<h3 id="remote-control-session-expired-or-access-denied">452<h3 id="remote-control-session-expired-or-access-denied">

451 Remote Control セッションの有効期限切れまたはアクセス拒否453 Remote Control セッションの有効期限切れまたはアクセス拒否

Details

34 oneLiner: 'Project instructions Claude reads every session',34 oneLiner: 'Project instructions Claude reads every session',

35 when: 'Loaded into context at the start of every session',35 when: 'Loaded into context at the start of every session',

36 description: 'Project-specific instructions that shape how Claude works in this repository. Put your conventions, common commands, and architectural context here so Claude operates with the same assumptions your team does.',36 description: 'Project-specific instructions that shape how Claude works in this repository. Put your conventions, common commands, and architectural context here so Claude operates with the same assumptions your team does.',

37 tips: ['Target under 200 lines. Longer files still load in full but may reduce adherence', <>CLAUDE.md loads into every session. If something only matters for specific tasks, move it to a <A href="/docs/en/skills">skill</A> or a path-scoped <A href="/docs/en/memory#organize-rules-with-claude/rules/">rule</A> so it loads only when needed</>, 'List the commands you run most, like build, test, and format, so Claude knows them without you spelling them out each time', <>Run <C>/memory</C> to open and edit CLAUDE.md from within a session</>, <>Also works at <C>.claude/CLAUDE.md</C> if you prefer to keep the project root clean</>, <>If your repo already has an <C>AGENTS.md</C> for other coding agents, Claude Code <A href="/docs/en/memory#agents-md">can read that</A> on its own or alongside CLAUDE.md</>],37 tips: ['Target under 200 lines. Longer files still load in full but may reduce adherence', <>CLAUDE.md loads into every session. If something only matters for specific tasks, move it to a <A href="/docs/en/skills">skill</A> or a path-scoped <A href="/docs/en/memory#organize-rules-with-claude/rules/">rule</A> so it loads only when needed</>, 'List the commands you run most, like build, test, and format, so Claude knows them without you spelling them out each time', <>Run <C>/memory</C> to open and edit CLAUDE.md from within a session</>, <>Also works at <C>.claude/CLAUDE.md</C> if you prefer to keep the project root clean</>, <>If your repo already has an <C>AGENTS.md</C> for other coding agents, Claude Code <A href="/docs/en/memory#agents-md">can read that</A> in place of a <C>CLAUDE.md</C></>],

38 exampleIntro: 'This example is for a TypeScript and React project. It lists the build and test commands, the framework conventions Claude should follow, and project-specific rules like export style and file layout.',38 exampleIntro: 'This example is for a TypeScript and React project. It lists the build and test commands, the framework conventions Claude should follow, and project-specific rules like export style and file layout.',

39 example: `# Project conventions39 example: `# Project conventions

40 40 


164 icon: 'folder',164 icon: 'folder',

165 color: '#9B7BC4',165 color: '#9B7BC4',

166 oneLiner: 'Topic-scoped instructions, optionally gated by file paths',166 oneLiner: 'Topic-scoped instructions, optionally gated by file paths',

167 when: <>Rules without <C>paths:</C> load at session start. Rules with <C>paths:</C> load when a matching file enters context</>,167 when: <>Rules without <C>paths:</C> load at session start. Rules with <C>paths:</C> load when Claude reads, writes, or edits a matching file</>,

168 description: [<>Project instructions split into topic files that can load conditionally based on file paths. A rule without <C>paths:</C> frontmatter loads at session start like CLAUDE.md; a rule with <C>paths:</C> loads only when Claude reads, writes, or edits a matching file.</>, <>Like CLAUDE.md, rules are guidance Claude reads, not configuration Claude Code enforces. For guaranteed behavior use <A href="/docs/en/hooks">hooks</A> or <A href="/docs/en/permissions">permissions</A>.</>],168 description: [<>Project instructions split into topic files that can load conditionally based on file paths. A rule without <C>paths:</C> frontmatter loads at session start like CLAUDE.md; a rule with <C>paths:</C> loads only when Claude reads, writes, or edits a matching file.</>, <>Like CLAUDE.md, rules are guidance Claude reads, not configuration Claude Code enforces. For guaranteed behavior use <A href="/docs/en/hooks">hooks</A> or <A href="/docs/en/permissions">permissions</A>.</>],

169 tips: [<>Use <C>paths:</C> frontmatter with globs to scope rules to directories or file types</>, <>Subdirectories work: <C>.claude/rules/frontend/react.md</C> is discovered automatically</>, 'When CLAUDE.md approaches 200 lines, start splitting into rules'],169 tips: [<>Use <C>paths:</C> frontmatter with globs to scope rules to directories or file types</>, <>Subdirectories work: <C>.claude/rules/frontend/react.md</C> is discovered automatically</>, 'When CLAUDE.md approaches 200 lines, start splitting into rules'],

170 docsLink: '/en/memory#organize-rules-with-claude/rules/',170 docsLink: '/en/memory#organize-rules-with-claude/rules/',


176 color: '#9B7BC4',176 color: '#9B7BC4',

177 badge: 'committed',177 badge: 'committed',

178 oneLiner: 'Test conventions scoped to test files',178 oneLiner: 'Test conventions scoped to test files',

179 when: <>Loaded when Claude reads a file matching the <C>paths:</C> globs below</>,179 when: <>Loaded when Claude reads, writes, or edits a file matching the <C>paths:</C> globs below</>,

180 description: <>An example rule that only loads when Claude is working on test files. The <C>paths:</C> globs in the frontmatter define which files trigger it; here, anything ending in .test.ts or .test.tsx. For other files, this rule is not loaded into context.</>,180 description: <>An example rule that only loads when Claude is working on test files. The <C>paths:</C> globs in the frontmatter define which files trigger it; here, anything ending in .test.ts or .test.tsx. For other files, this rule is not loaded into context.</>,

181 example: `---181 example: `---

182paths:182paths:


197 color: '#9B7BC4',197 color: '#9B7BC4',

198 badge: 'committed',198 badge: 'committed',

199 oneLiner: 'API conventions scoped to backend code',199 oneLiner: 'API conventions scoped to backend code',

200 when: <>Loaded when Claude reads a file matching the <C>paths:</C> glob below</>,200 when: <>Loaded when Claude reads, writes, or edits a file matching the <C>paths:</C> glob below</>,

201 description: <>A second example showing a rule scoped to backend code. The <C>paths:</C> glob matches files under src/api/, so these conventions load only when Claude is editing API routes.</>,201 description: <>A second example showing a rule scoped to backend code. The <C>paths:</C> glob matches files under src/api/, so these conventions load only when Claude is working on API routes.</>,

202 example: `---202 example: `---

203paths:203paths:

204 - "src/api/**/*.ts"204 - "src/api/**/*.ts"


605 icon: 'folder',605 icon: 'folder',

606 color: '#9B7BC4',606 color: '#9B7BC4',

607 oneLiner: 'User-level rules that apply to every project',607 oneLiner: 'User-level rules that apply to every project',

608 when: <>Rules without <C>paths:</C> load at session start. Rules with <C>paths:</C> load when a matching file enters context</>,608 when: <>Rules without <C>paths:</C> load at session start. Rules with <C>paths:</C> load when Claude reads, writes, or edits a matching file</>,

609 description: 'Same as project .claude/rules/ but applies everywhere. Use this for conventions you want across all your work, like personal code style or commit message format.',609 description: 'Same as project .claude/rules/ but applies everywhere. Use this for conventions you want across all your work, like personal code style or commit message format.',

610 docsLink: '/en/memory#organize-rules-with-claude/rules/',610 docsLink: '/en/memory#organize-rules-with-claude/rules/',

611 children: []611 children: []


1434 1434 

1435Windows では、`~/.claude` は `%USERPROFILE%\.claude` に解決されます。[`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) を設定した場合、このページのすべての `~/.claude` パスはそのディレクトリの下に存在します。1435Windows では、`~/.claude` は `%USERPROFILE%\.claude` に解決されます。[`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) を設定した場合、このページのすべての `~/.claude` パスはそのディレクトリの下に存在します。

1436 1436 

1437ほとんどのユーザーは `CLAUDE.md` と `settings.json` のみを編集します。リポジトリに他のコーディングエージェント用の `AGENTS.md` が既にある場合、Claude Code は [それを独立して、または `CLAUDE.md` と一緒に読み込むことができます](/docs/ja/memory#agents-md)。ディレクトリの残りはオプションです。必要に応じて skills、rules、または subagents を追加してください。1437ほとんどのユーザーは `CLAUDE.md` と `settings.json` のみを編集します。リポジトリに他のコーディングエージェント用の `AGENTS.md` が既にある場合、Claude Code は `CLAUDE.md` の代わりに[それを読み込むことができます](/docs/ja/memory#agents-md)。ディレクトリの残りはオプションです。必要に応じてスキル、ルール、またはサブエージェントを追加してください。

1438 1438 

1439<h2 id="explore-the-directory">1439<h2 id="explore-the-directory">

1440 ディレクトリを探索する1440 ディレクトリを探索する


1454| - | - | - |1454| - | - | - |

1455| `managed-settings.json` | システムレベル、OS によって異なる | エンタープライズが強制する設定で、[限定的な例外](/docs/ja/settings#security-keys-where-the-stricter-value-applies)を除いてオーバーライドできません。[ファイルの保存場所](/docs/ja/managed-settings#deploy-a-managed-settings-file)と [Claude Code が使用する管理ソース](/docs/ja/managed-settings#precedence-within-the-managed-tier)を参照してください。 |1455| `managed-settings.json` | システムレベル、OS によって異なる | エンタープライズが強制する設定で、[限定的な例外](/docs/ja/settings#security-keys-where-the-stricter-value-applies)を除いてオーバーライドできません。[ファイルの保存場所](/docs/ja/managed-settings#deploy-a-managed-settings-file)と [Claude Code が使用する管理ソース](/docs/ja/managed-settings#precedence-within-the-managed-tier)を参照してください。 |

1456| `CLAUDE.local.md` | プロジェクトルート | このプロジェクトの個人的な設定で、CLAUDE.md と一緒に読み込まれます。手動で作成し、`.gitignore` に追加してください。 |1456| `CLAUDE.local.md` | プロジェクトルート | このプロジェクトの個人的な設定で、CLAUDE.md と一緒に読み込まれます。手動で作成し、`.gitignore` に追加してください。 |

1457| `AGENTS.md` | プロジェクトルート、`.claude/`、または任意のディレクトリ | AI コーディングエージェント向けに作成するプロジェクト指示。Claude Code は[それを読み込む](/docs/ja/memory#agents-md)ことができます。これは独立して、または `CLAUDE.md` と一緒に読み込まれます。 |1457| `AGENTS.md` | プロジェクトルート、`.claude/`、または任意のディレクトリ | AI コーディングエージェント向けに作成するプロジェクト指示。Claude Code は `CLAUDE.md` の代わりに[これを読み込む](/docs/ja/memory#agents-md)ことができます。 |

1458| インストール済みプラグイン | `~/.claude/plugins` | クローンされたマーケットプレイス、インストール済みプラグインバージョン、`installed_plugins.json` インストール記録、およびプラグインごとのデータで、`claude plugin` コマンドで管理されます。[claude.ai アカウントから同期された](/docs/ja/plugins/loading#synced-plugins)プラグインは `~/.claude/plugins/synced/` にダウンロードされます。リンクモードでマーケットプレイス [`command` ソース](/docs/ja/plugins/marketplace-reference#command-plugin-source)からインストールされたプラグインの場合、Claude Code はコピーの代わりにここにリンクを保存し、プラグインのファイルはコマンドが出力するディレクトリに留まります。`command` ソースには Claude Code v2.1.229 以降が必要です。ローカルパスから追加したマーケットプレイスで相対パスによってリストされているプラグインも、キャッシュコピーではなく、ソースディレクトリから[その場で読み込まれます](/docs/ja/plugins/loading#find-plugins-on-disk)。[プラグインキャッシング](/docs/ja/plugins/loading#find-plugins-on-disk)を参照して、孤立したバージョンがどのようにクリーンアップされるかを確認してください。 |1458| インストール済みプラグイン | `~/.claude/plugins` | クローンされたマーケットプレイス、インストール済みプラグインバージョン、`installed_plugins.json` インストール記録、およびプラグインごとのデータで、`claude plugin` コマンドで管理されます。[claude.ai アカウントから同期された](/docs/ja/plugins/loading#synced-plugins)プラグインは `~/.claude/plugins/synced/` にダウンロードされます。リンクモードでマーケットプレイス [`command` ソース](/docs/ja/plugins/marketplace-reference#command-plugin-source)からインストールされたプラグインの場合、Claude Code はコピーの代わりにここにリンクを保存し、プラグインのファイルはコマンドが出力するディレクトリに留まります。`command` ソースには Claude Code v2.1.229 以降が必要です。ローカルパスから追加したマーケットプレイスで相対パスによってリストされているプラグインも、キャッシュコピーではなく、ソースディレクトリから[その場で読み込まれます](/docs/ja/plugins/loading#find-plugins-on-disk)。[プラグインキャッシング](/docs/ja/plugins/loading#find-plugins-on-disk)を参照して、孤立したバージョンがどのようにクリーンアップされるかを確認してください。 |

1459 1459 

1460`~/.claude` はまた、Claude Code があなたが作業する際に書き込むデータも保持しています。トランスクリプト、プロンプト履歴、ファイルスナップショット、キャッシュ、およびログです。下記の[アプリケーションデータ](#application-data)を参照してください。1460`~/.claude` はまた、Claude Code があなたが作業する際に書き込むデータも保持しています。トランスクリプト、プロンプト履歴、ファイルスナップショット、キャッシュ、およびログです。下記の[アプリケーションデータ](#application-data)を参照してください。

Details

56 56 

57* **プロジェクト会話**: Claude がコーディネーターとして機能する 1 つの長時間実行セッション。送信したものを取得し、何がスレッドになるかを決定し、開始したすべてのスレッドを追跡します。スレッドが報告する内容を確認し、実行するすべてのステップは確認しません。57* **プロジェクト会話**: Claude がコーディネーターとして機能する 1 つの長時間実行セッション。送信したものを取得し、何がスレッドになるかを決定し、開始したすべてのスレッドを追跡します。スレッドが報告する内容を確認し、実行するすべてのステップは確認しません。

58* **スレッド**: ワーカー。各スレッドは独自のコンテキストウィンドウを持つ個別のセッションで、1 つの作業を実行し、完了時に会話に報告します。クラウドスレッドは独自のブランチで作業し、作業が必要な場合はプルリクエストを開きます。58* **スレッド**: ワーカー。各スレッドは独自のコンテキストウィンドウを持つ個別のセッションで、1 つの作業を実行し、完了時に会話に報告します。クラウドスレッドは独自のブランチで作業し、作業が必要な場合はプルリクエストを開きます。

59* **すべてのクラウドスレッドが開始する内容**:59* **すべてのクラウドスレッドが開始時に持つもの**:

60 * プロジェクトのリポジトリとファイル、およびその [指示とメモリ](#give-a-project-standing-context)60 * プロジェクトのリポジトリとファイル、およびその [指示とメモリ](#give-a-project-standing-context)

61 * `CLAUDE.md` とスキル、および [プロジェクトの各リポジトリ](#what-threads-pick-up-from-your-repositories) のスキル、および 1 つのリポジトリを持つプロジェクトでは、そのリポジトリの権限ルールと hooks も61 * [プロジェクトの各リポジトリ](#what-threads-pick-up-from-your-repositories) にある `CLAUDE.md` とスキル。リポジトリが 1 つのプロジェクトでは、そのリポジトリの権限ルールとフックも含まれます

62 * [コネクタ](#get-skills-plugins-connectors-and-tools-into-threads) を claude.ai アカウントに62 * claude.ai アカウントの [コネクタ](#get-skills-plugins-connectors-and-tools-into-threads)

63 * ネットワークアクセス、環境変数、API 認証情報、インストール済みツールを設定する [クラウド環境](#choose-an-environment-for-threads)63 * ネットワークアクセス、環境変数、ネットワークシークレット、インストール済みツールを設定する [クラウド環境](#choose-an-environment-for-threads)

64* **Overview ペイン**: [すべてのスレッドを一度に確認](#see-what-needs-you-in-overview) でき、どのスレッドが必要かを確認できる場所。その他のタブは、追加したファイルとスレッドが生成したファイルの **Library**、スレッドが開いたプルリクエストの **Pull requests**、プロジェクトのスケジュール作業の **Routines** です。64* **Overview ペイン**: [すべてのスレッドを一度に確認](#see-what-needs-you-in-overview) でき、どのスレッドが必要かを確認できる場所。その他のタブは、追加したファイルとスレッドが生成したファイルの **Library**、スレッドが開いたプルリクエストの **Pull requests**、プロジェクトのスケジュール作業の **Routines** です。

65 65 

66クラウドスレッドは、独自のマシンの Claude Code セットアップから何も取得しません。[スキル、プラグイン、コネクタ、ツールをスレッドに取得する](#get-skills-plugins-connectors-and-tools-into-threads) は、それらが不足しているものを提供する方法をカバーしています。66クラウドスレッドは、独自のマシンの Claude Code セットアップから何も取得しません。[スキル、プラグイン、コネクタ、ツールをスレッドに取得する](#get-skills-plugins-connectors-and-tools-into-threads) は、それらが不足しているものを提供する方法をカバーしています。


92 92 

93* **プラン**:Pro または Max プランを利用しており、サイドバーに **Projects** が表示されている。93* **プラン**:Pro または Max プランを利用しており、サイドバーに **Projects** が表示されている。

94* **GitHub(プロジェクトがコードで作業する場合)**:コードが GitHub Enterprise Server、GitLab、または Bitbucket ではなく github.com にあり、接続された GitHub アカウントがそれへのプッシュアクセス権を持っており、Claude GitHub App がインストールされている。[`/web-setup`](/docs/ja/web-quickstart#connect-from-your-terminal)で GitHub を接続した場合、そのトークンは他のクラウドセッションがリポジトリに到達することを許可しますが、Claude GitHub App が必要なプロジェクトスレッドには十分ではありません。[GitHub アクセスをセットアップする](#set-up-github-access)に手順があります。94* **GitHub(プロジェクトがコードで作業する場合)**:コードが GitHub Enterprise Server、GitLab、または Bitbucket ではなく github.com にあり、接続された GitHub アカウントがそれへのプッシュアクセス権を持っており、Claude GitHub App がインストールされている。[`/web-setup`](/docs/ja/web-quickstart#connect-from-your-terminal)で GitHub を接続した場合、そのトークンは他のクラウドセッションがリポジトリに到達することを許可しますが、Claude GitHub App が必要なプロジェクトスレッドには十分ではありません。[GitHub アクセスをセットアップする](#set-up-github-access)に手順があります。

95* **ネットワーク、認証情報、ツール**:これらはプロジェクトの [クラウド環境](#choose-an-environment-for-threads)から取得されます。デフォルト環境は既に [一般的なパッケージレジストリ](/docs/ja/cloud-environments#default-allowed-domains)に到達しているため、作業が他のドメイン、シークレット、またはプリインストールされていないツールを必要とする場合のみ確認してください。作業が MCP サーバーを必要とする場合は、[claude.ai connectors](https://claude.ai/customize/connectors)で接続済みとして表示されていることを確認してください。95* **ネットワーク、シークレット、ツール**:クラウドスレッドの場合、これらはプロジェクトの [クラウド環境](#choose-an-environment-for-threads)から取得されます。デフォルト環境は既に [一般的なパッケージレジストリ](/docs/ja/cloud-environments#default-allowed-domains)に到達しているため、作業が他のドメイン、シークレット、またはプリインストールされていないツールを必要とする場合のみ確認してください。作業が MCP サーバーを必要とする場合は、[claude.ai connectors](https://claude.ai/customize/connectors)で接続済みとして表示されていることを確認してください。

96 96 

97<h3 id="start-a-new-project-from-scratch">97<h3 id="start-a-new-project-from-scratch">

98 ゼロからプロジェクトを開始する98 ゼロからプロジェクトを開始する


396 スレッドの環境を選択する396 スレッドの環境を選択する

397</h3>397</h3>

398 398 

399すべての新しいクラウドスレッドはプロジェクトの [クラウド環境](/docs/ja/cloud-environments) で開始します。環境は、スレッドが到達できるドメイン、スレッドが持つ環境変数、リクエストに追加される API 認証情報、Claude が開始する前にセットアップスクリプトがインストールするものを設定します。クラウドスレッドは、**プロジェクト設定 > 環境** で選択するまで、デフォルトの Anthropic ホスト環境を使用します。399すべての新しいクラウドスレッドはプロジェクトの [クラウド環境](/docs/ja/cloud-environments) で開始します。環境は、スレッドが到達できるドメイン、スレッドが持つ環境変数、リクエストに追加されるネットワークシークレット、Claude が開始する前にセットアップスクリプトがインストールするものを設定します。クラウドスレッドは、**プロジェクト設定 > 環境** で選択するまで、デフォルトの Anthropic ホスト環境を使用します。

400 400 

401クラウドスレッドが内部 API またはプライベートパッケージレジストリに到達する必要がある場合、またはマシンが通常保持するトークンが必要な場合は、プロジェクトではなく環境を変更してください:[ネットワークアクセス](/docs/ja/cloud-environments#network-access)、[API 認証情報を追加](/docs/ja/cloud-environments#add-api-credentials)、[セットアップスクリプト](/docs/ja/cloud-environments#setup-scripts) を参照してください。401クラウドスレッドが内部 API またはプライベートパッケージレジストリに到達する必要がある場合、またはマシンが通常保持するトークンが必要な場合は、プロジェクトではなく環境を変更してください:[ネットワークアクセス](/docs/ja/cloud-environments#network-access)、[ネットワークシークレットを追加](/docs/ja/cloud-environments#add-api-credentials)、[セットアップスクリプト](/docs/ja/cloud-environments#setup-scripts) を参照してください。

402 402 

403<h3 id="get-skills-plugins-connectors-and-tools-into-threads">403<h3 id="get-skills-plugins-connectors-and-tools-into-threads">

404 スキル、プラグイン、コネクタ、ツールをスレッドに取得する404 スキル、プラグイン、コネクタ、ツールをスレッドに取得する


590</h2>590</h2>

591 591 

592* [クラウドで Claude Code を使用する](/docs/ja/claude-code-on-the-web): 各クラウドスレッドの背後にあるクラウドセッションがどのように機能するか、GitHub アクセスオプションとプルリクエストの自動修正を含む592* [クラウドで Claude Code を使用する](/docs/ja/claude-code-on-the-web): 各クラウドスレッドの背後にあるクラウドセッションがどのように機能するか、GitHub アクセスオプションとプルリクエストの自動修正を含む

593* [クラウド環境を設定する](/docs/ja/cloud-environments): クラウドスレッドがネットワークで到達できるもの、環境変数と API 認証情報を提供し、セットアップスクリプトでツールをインストール593* [クラウド環境を設定する](/docs/ja/cloud-environments): クラウドスレッドがネットワーク上で到達できる範囲を変更し、環境変数とネットワークシークレットを提供し、セットアップスクリプトでツールをインストール

594* [ルーチンで作業を自動化する](/docs/ja/routines): スケジュール、トリガー、ルーチンの管理。Claude がプロジェクトから作成するものを含む594* [ルーチンで作業を自動化する](/docs/ja/routines): スケジュール、トリガー、ルーチンの管理。Claude がプロジェクトから作成するものを含む

595* [エージェントビューで複数のエージェントを管理する](/docs/ja/agent-view): 作業がマシンのみが到達できるツールまたはサービスが必要な場合、マシンで複数のセッションを実行および追跡します595* [エージェントビューで複数のエージェントを管理する](/docs/ja/agent-view): 作業がマシンのみが到達できるツールまたはサービスが必要な場合、マシンで複数のセッションを実行および追跡します

596* [プロジェクトの再設計: フォルダから会話へ](https://claude.com/blog/projects-redesigned): ローンチアナウンスメント。プロジェクトを Claude との会話にすることの背景にある考え方を含む596* [プロジェクトの再設計: フォルダから会話へ](https://claude.com/blog/projects-redesigned): ローンチアナウンスメント。プロジェクトを Claude との会話にすることの背景にある考え方を含む

Details

31| `claude attach <id\|name>` | このターミナルで [バックグラウンドセッション](/docs/ja/agent-view#manage-sessions-from-the-shell) に接続します。ID の代わりに実行中のセッション名の一部を渡すには、Claude Code v2.1.290 以降が必要です | `claude attach 7c5dcf5d` |31| `claude attach <id\|name>` | このターミナルで [バックグラウンドセッション](/docs/ja/agent-view#manage-sessions-from-the-shell) に接続します。ID の代わりに実行中のセッション名の一部を渡すには、Claude Code v2.1.290 以降が必要です | `claude attach 7c5dcf5d` |

32| `claude auto-mode defaults` | 組み込み [auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) 分類器ルールを JSON として出力します。`claude auto-mode config` を使用して、設定が適用された有効な設定を確認してください。`--label <prefix>` は、ラベルがそのプレフィックスで始まるルールのみを出力します。大文字と小文字を区別しません。Claude Code v2.1.208 以降が必要です | `claude auto-mode defaults --label 'Git Destructive'` |32| `claude auto-mode defaults` | 組み込み [auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) 分類器ルールを JSON として出力します。`claude auto-mode config` を使用して、設定が適用された有効な設定を確認してください。`--label <prefix>` は、ラベルがそのプレフィックスで始まるルールのみを出力します。大文字と小文字を区別しません。Claude Code v2.1.208 以降が必要です | `claude auto-mode defaults --label 'Git Destructive'` |

33| `claude auto-mode reset` | ユーザー設定ファイルから `autoMode` セクションを削除して、デフォルト [auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) 設定を復元します。書き込み前に確認を求めます。`-y`/`--yes` を渡してプロンプトをスキップします。[管理設定](/docs/ja/server-managed-settings) または `--settings` フラグからのルールは引き続き適用されます。Claude Code v2.1.212 以降が必要です。[デフォルトと有効な設定を検査](/docs/ja/auto-mode-config#inspect-the-defaults-and-your-effective-config) を参照してください | `claude auto-mode reset --yes` |33| `claude auto-mode reset` | ユーザー設定ファイルから `autoMode` セクションを削除して、デフォルト [auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) 設定を復元します。書き込み前に確認を求めます。`-y`/`--yes` を渡してプロンプトをスキップします。[管理設定](/docs/ja/server-managed-settings) または `--settings` フラグからのルールは引き続き適用されます。Claude Code v2.1.212 以降が必要です。[デフォルトと有効な設定を検査](/docs/ja/auto-mode-config#inspect-the-defaults-and-your-effective-config) を参照してください | `claude auto-mode reset --yes` |

34| `claude daemon logs` | バックグラウンドセッション [スーパーバイザー](/docs/ja/agent-view#the-supervisor-process) のログファイル `~/.claude/daemon.log` を追跡し、`Ctrl+C` を押すまで新しい行が届くたびに出力します | `claude daemon logs` |

35| `claude daemon run` | バックグラウンドセッション [スーパーバイザー](/docs/ja/agent-view#the-supervisor-process) をこのターミナルのフォアグラウンドで実行し、そのログを出力します | `claude daemon run` |

34| `claude daemon status` | バックグラウンドセッション [スーパーバイザー](/docs/ja/agent-view#the-supervisor-process) の状態、バージョン、ソケットディレクトリ、および診断用のワーカー数を出力します。スーパーバイザーが実行されていない場合は 1 で終了します | `claude daemon status` |36| `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` |37| `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` | セッションを開始せずにターミナルから読み取り専用のインストールおよび設定診断を出力します。インストール正常性、設定ファイル検証エラー、および Remote Control 適格性を含みます。セッション内のセットアップチェックアップで修正を適用することもできます。[`/doctor`](/docs/ja/commands#all-commands) を実行してください | `claude doctor` |38| `claude doctor` | セッションを開始せずにターミナルから読み取り専用のインストールおよび設定診断を出力します。インストール正常性、設定ファイル検証エラー、および Remote Control 適格性を含みます。セッション内のセットアップチェックアップで修正を適用することもできます。[`/doctor`](/docs/ja/commands#all-commands) を実行してください | `claude doctor` |

Details

10 クラウド環境は [クラウドセッション](/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 ユーザー向けです。10 クラウド環境は [クラウドセッション](/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>11</Note>

12 12 

13各 [クラウドセッション](/docs/ja/claude-code-on-the-web) はクラウド環境で実行されます。環境を設定して [ネットワークアクセス](#access-levels) を許可または拒否し、セッション用に [環境変数を設定](#set-environment-variables) し、Pro および Max プランで [API 認証情報](#add-api-credentials) を保存してセッションが認証情報を見ずに使用でき、Claude が作業を開始する前に [セットアップスクリプト](#setup-scripts) を実行できます。13各 [クラウドセッション](/docs/ja/claude-code-on-the-web) はクラウド環境で実行されます。環境を設定して [ネットワークアクセス](#access-levels) を許可または拒否し、セッション用に [環境変数を設定](#set-environment-variables) し、Pro および Max プランではセッションが内容を見ずに使用できる [ネットワークシークレット](#add-api-credentials) を保存し、Claude が作業を開始する前に [セットアップスクリプト](#setup-scripts) を実行できます。

14 14 

15同じ環境は、クラウドセッションを開始する場所に関係なく適用されます。[Desktop アプリ](/docs/ja/desktop)、[Claude モバイルアプリ](/docs/ja/mobile)、[claude.ai/code](https://claude.ai/code) のブラウザ、[`claude --cloud`](/docs/ja/claude-code-on-the-web#from-terminal-to-cloud) を使用したターミナル、[ルーチン](/docs/ja/routines)、[Claude Tag](https://claude.com/docs/claude-tag/overview) です。これらの各サーフェスは [セルフホスト環境](/docs/ja/self-hosted-environments) にもルーティングできます。[利用可能性と制限](/docs/ja/self-hosted-environments#availability-and-limitations) は、Claude Tag セッションがセルフホスト環境で実行される場合に Claude がまだ使用できないものをカバーしています。15同じ環境は、クラウドセッションを開始する場所に関係なく適用されます。[Desktop アプリ](/docs/ja/desktop)、[Claude モバイルアプリ](/docs/ja/mobile)、[claude.ai/code](https://claude.ai/code) のブラウザ、[`claude --cloud`](/docs/ja/claude-code-on-the-web#from-terminal-to-cloud) を使用したターミナル、[ルーチン](/docs/ja/routines)、[Claude Tag](https://claude.com/docs/claude-tag/overview) です。これらの各サーフェスは [セルフホスト環境](/docs/ja/self-hosted-environments) にもルーティングできます。[利用可能性と制限](/docs/ja/self-hosted-environments#availability-and-limitations) は、Claude Tag セッションがセルフホスト環境で実行される場合に Claude がまだ使用できないものをカバーしています。

16 16 


58 <Step title="環境を追加または編集する">58 <Step title="環境を追加または編集する">

59 **Cloud** を選択して環境をリストします。その後、**クラウド環境を追加** を選択するか、既存の環境にホバーして右に表示される設定アイコンを選択します。59 **Cloud** を選択して環境をリストします。その後、**クラウド環境を追加** を選択するか、既存の環境にホバーして右に表示される設定アイコンを選択します。

60 60 

61 ダイアログには名前、ネットワークアクセスレベル、環境変数、セットアップスクリプトが含まれます。Pro または Max プランで既存のクラウド環境を編集する場合、ダイアログには [API 認証情報](#add-api-credentials) も含まれます。61 ダイアログには名前、ネットワークアクセスレベル、環境変数、セットアップスクリプトが含まれます。Pro または Max プランで既存のクラウド環境を編集する場合、ダイアログには [ネットワークシークレット](#add-api-credentials) も含まれます。

62 62 

63 <Frame>63 <Frame>

64 <img src="https://mintcdn.com/claude-code/ZFId6l95856c5LSw/images/cloud-environment-dialog.png?fit=max&auto=format&n=ZFId6l95856c5LSw&q=85&s=30d4478b31d1f879f7ee287ddab32505" alt="新しいクラウド環境ダイアログ。プレースホルダー Default を持つ Name フィールド、ネットワークアクセスセレクターが Trusted に設定され、ネットワークポリシーとアクセスレベルへのリンク、.env 形式プレースホルダーテキストを表示する環境変数ボックス(環境を使用する誰もが値を見ることができるという注記付き)、新しいセッションが開始され Claude Code が起動する前に実行される Bash スクリプトとして説明されるセットアップスクリプトボックス、キャンセルと環境を作成ボタン。" width="874" height="1372" data-path="images/cloud-environment-dialog.png" />64 <img src="https://mintcdn.com/claude-code/ZFId6l95856c5LSw/images/cloud-environment-dialog.png?fit=max&auto=format&n=ZFId6l95856c5LSw&q=85&s=30d4478b31d1f879f7ee287ddab32505" alt="新しいクラウド環境ダイアログ。プレースホルダー Default を持つ Name フィールド、ネットワークアクセスセレクターが Trusted に設定され、ネットワークポリシーとアクセスレベルへのリンク、.env 形式プレースホルダーテキストを表示する環境変数ボックス(環境を使用する誰もが値を見ることができるという注記付き)、新しいセッションが開始され Claude Code が起動する前に実行される Bash スクリプトとして説明されるセットアップスクリプトボックス、キャンセルと環境を作成ボタン。" width="874" height="1372" data-path="images/cloud-environment-dialog.png" />


91 91 

92クラウドセッションは起動時に自身でいくつかの変数も設定します。[`CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`](/docs/ja/claude-code-on-the-web#manage-context) の場合、セッションが設定する値はここで追加した値をオーバーライドするため、ここでそのキーを追加しても効果がありません。92クラウドセッションは起動時に自身でいくつかの変数も設定します。[`CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`](/docs/ja/claude-code-on-the-web#manage-context) の場合、セッションが設定する値はここで追加した値をオーバーライドするため、ここでそのキーを追加しても効果がありません。

93 93 

94環境を使用する誰もが値を読み取ることができます。Pro および Max プランでは、エージェントプロキシがリクエストに添付できるキーに対して [API 認証情報](#add-api-credentials) を代わりに使用してください。[認証情報を取得しないリクエスト](#requests-that-never-get-the-credential) はそこにリストされています。94環境を使用する誰もが値を読み取ることができます。Pro および Max プランでは、エージェントプロキシがリクエストに添付できるキーに対して [ネットワークシークレット](#add-api-credentials) を代わりに使用してください。[シークレットを取得しないリクエスト](#requests-that-never-get-the-credential) はそこにリストされています。

95 95 

96<h3 id="add-api-credentials">96<h3 id="add-api-credentials">

97 API 認証情報を追加する97 ネットワークシークレットを追加する

98</h3>98</h3>

99 99 

100API 認証情報は、クラウド環境に保存する API キーまたはトークンで、Claude が環境内の任意のセッションからそのキーを見ることなく API を呼び出すことができます。Anthropic のエージェントプロキシは、セッションの VM を離れた後、リストしたホストへのリクエストにキーを追加します。キーは Claude、実行するコマンド、またはセッションの環境変数に到達しません。100ネットワークシークレットは、クラウド環境に保存する API キーまたはトークンで、Claude が環境内の任意のセッションからそのキーを見ることなく API を呼び出すことができます。Anthropic のエージェントプロキシは、各リクエストがセッションの VM を離れた後、リストしたホストへのリクエストにキーを追加します。キーは Claude、実行するコマンド、またはセッションの環境変数に到達しません。

101 101 

102API 認証情報は Pro および Max プランで利用可能です。Team および Enterprise プランではまだ利用できないため、**API 認証情報** セクションはこれらのプランの環境ダイアログに表示されません。102ネットワークシークレットは Pro および Max プランで利用可能です。Team および Enterprise プランではまだ利用できないため、**ネットワークシークレット** セクションはこれらのプランの環境ダイアログに表示されません。

103 103 

104<h4 id="requirements">104<h4 id="requirements">

105 要件105 要件

106</h4>106</h4>

107 107 

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

109 109 

110* **ロール**: claude.ai 組織内の組織管理者ロール110* **ロール**: claude.ai 組織内の組織管理者ロール

111 * Team および Enterprise では、Owner がそれを保持し、Admin は保持しません111 * Team および Enterprise では、Owner がそれを保持し、Admin は保持しません

112 * Pro および Max では、独自の組織でそれを保持します112 * Pro および Max では、独自の組織でそれを保持します

113* **環境タイプ**: 既に存在する Anthropic ホスト型クラウド環境。[自己ホスト型環境](/docs/ja/self-hosted-environments) には API 認証情報がありません113* **環境タイプ**: 既に存在する Anthropic ホスト型クラウド環境。[自己ホスト型環境](/docs/ja/self-hosted-environments) にはネットワークシークレットがありません

114* **API 到達可能性**: API がインターネットからの接続を受け入れます。リクエストは Anthropic のネットワークから離れるためです114* **API 到達可能性**: API がインターネットからの接続を受け入れます。リクエストは Anthropic のネットワークから離れるためです

115* **暗号化キー**: 組織がカスタマー管理暗号化キーを使用する場合、認証情報を保存できません115* **暗号化キー**: 組織が顧客管理の暗号化キーを使用する場合、ネットワークシークレットを保存できません

116 116 

117<h4 id="add-a-credential">117<h4 id="add-a-credential">

118 認証情報を追加する118 シークレットを追加する

119</h4>119</h4>

120 120 

121認証情報は一度に 1 つずつ追加し、追加後に認証情報を編集することはできません。認証情報のホストまたは値を変更するには、削除して再度追加します。121シークレットは一度に 1 つずつ追加し、追加後にシークレットを編集することはできません。シークレットのホストまたは値を変更するには、削除して再度追加します。

122 122 

123<Steps>123<Steps>

124 <Step title="環境の API 認証情報を開く">124 <Step title="環境のネットワークシークレットを開く">

125 [claude.ai/code](https://claude.ai/code) で [環境を編集用に開きます](#configure-your-environment)。**環境を編集** ダイアログで、**API 認証情報** セクションを見つけます。環境に既にある認証情報が表示され、それぞれが適用されるホストが表示されます。125 [claude.ai/code](https://claude.ai/code) で [環境を編集用に開きます](#configure-your-environment)。**環境を編集** ダイアログで、**ネットワークシークレット** セクションを見つけます。環境に既にあるシークレットが表示され、それぞれが適用されるホストが表示されます。

126 </Step>126 </Step>

127 127 

128 <Step title="認証情報を追加する">128 <Step title="シークレットを追加する">

129 **認証情報を追加** を選択してフォームに入力します。API キーがリクエストヘッダーで移動する場合はデフォルトの **認証情報タイプ**、**Bearer** を保持し、これらのフィールドに入力します。129 **シークレットを追加** を選択してフォームに入力します。API キーがリクエストヘッダーで移動する場合はデフォルトの **認証情報タイプ**、**Bearer** を保持し、これらのフィールドに入力します。

130 130 

131 * **名前**: `Internal billing API` などの認証情報のラベル131 * **名前**: `Internal billing API` などのシークレットのラベル

132 * **許可されたウェブサイト**: `api.example.com` などの API のホスト。先頭の `*.` はすべてのサブドメインと一致します132 * **許可されたウェブサイト**: `api.example.com` などの API のホスト。先頭の `*.` はすべてのサブドメインと一致します

133 * **カスタムヘッダー**: キーを運ぶヘッダーの 1 行。行は `Authorization` をヘッダーの **名前** として、`Bearer` を **プレフィックス** として開始します。キー自体を **値** として貼り付けます。`X-Api-Key` のようなベア値を取得するヘッダーの場合、名前を変更してプレフィックスをクリアします133 * **カスタムヘッダー**: キーを運ぶヘッダーの 1 行。行は `Authorization` をヘッダーの **名前** として、`Bearer` を **プレフィックス** として開始します。キー自体を **値** として貼り付けます。`X-Api-Key` のようなベア値を取得するヘッダーの場合、名前を変更してプレフィックスをクリアします

134 134 

135 別の方法で認証する API の場合、別の **認証情報タイプ** を選択します。リストは [Claude Tag](https://claude.com/docs/claude-tag/overview)(Team および Enterprise プランの Slack 統合)が [接続](https://claude.com/docs/claude-tag/admins/add-connections) に提供するものと同じです。135 別の方法で認証する API の場合、別の **認証情報タイプ** を選択します。リストは [Claude Tag](https://claude.com/docs/claude-tag/overview)(Team および Enterprise プランの Slack 統合)が [接続](https://claude.com/docs/claude-tag/admins/add-connections) に提供するものと同じです。

136 </Step>136 </Step>

137 137 

138 <Step title="認証情報を保存する">138 <Step title="シークレットを保存する">

139 **接続** を選択します。認証情報はリストにホストと共に表示され、ダイアログの **変更を保存** ボタンなしで保存されます。保存後に値を再度表示することはできません。139 **接続** を選択します。シークレットはリストにホストと共に表示され、ダイアログの **変更を保存** ボタンなしで保存されます。保存後に値を再度表示することはできません。

140 </Step>140 </Step>

141</Steps>141</Steps>

142 142 

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

144 144 

145<h4 id="which-requests-get-the-credential">145<h4 id="which-requests-get-the-credential">

146 どのリクエストが認証情報を取得するか146 どのリクエストがシークレットを取得するか

147</h4>147</h4>

148 148 

149エージェントプロキシは、リクエストのホストがその認証情報にリストしたものと一致する場合、認証情報をリクエストに添付します。セッションは、環境の [ネットワークアクセスレベル](#access-levels) がそれ以外の場合は許可しない場合でも、[認証情報を取得しないホスト](#requests-that-never-get-the-credential) を除いて、これらのホストに到達できます。認証情報は、削除するまで、それを開始した人に関係なく、環境で実行されるすべてのセッションに適用されます。149エージェントプロキシは、リクエストのホストがそのシークレットにリストしたものと一致する場合、シークレットをリクエストに添付します。セッションは、環境の [ネットワークアクセスレベル](#access-levels) がそれ以外の場合は許可しない場合でも、[シークレットを取得しないホスト](#requests-that-never-get-the-credential) を除いて、これらのホストに到達できます。シークレットは、削除するまで、それを開始した人に関係なく、環境で実行されるすべてのセッションに適用されます。

150 150 

151<h4 id="requests-that-never-get-the-credential">151<h4 id="requests-that-never-get-the-credential">

152 認証情報を取得しないリクエスト152 シークレットを取得しないリクエスト

153</h4>153</h4>

154 154 

155エージェントプロキシは、追加した認証情報をこれらのリクエストに添付しません。155エージェントプロキシは、追加したシークレットをこれらのリクエストに添付しません。

156 156 

157* **GitHub**: [GitHub プロキシ](#github-proxy) は代わりに GitHub へのリクエストを認証するため、GitHub に対して API 認証情報は不要です157* **GitHub**: [GitHub プロキシ](#github-proxy) は代わりに GitHub へのリクエストを認証するため、GitHub に対してネットワークシークレットは不要です

158* **Anthropic API およびパブリックパッケージレジストリ**: `api.anthropic.com`、`registry.npmjs.org`、`jsr.io`、`npm.jsr.io`、`pypi.org`、`files.pythonhosted.org`、`index.crates.io`、および `proxy.golang.org`158* **Anthropic API およびパブリックパッケージレジストリ**: `api.anthropic.com`、`registry.npmjs.org`、`jsr.io`、`npm.jsr.io`、`pypi.org`、`files.pythonhosted.org`、`index.crates.io`、および `proxy.golang.org`

159* **セットアップスクリプトリクエスト**: Claude Code は [セットアップスクリプト](#setup-scripts) が実行された後、起動時にエージェントプロキシに接続します159* **セットアップスクリプトリクエスト**: Claude Code は [セットアップスクリプト](#setup-scripts) が実行された後、起動時にエージェントプロキシに接続します

160* **Claude Code のテレメトリエクスポート**: Claude Code は [テレメトリエクスポート](/docs/ja/monitoring-usage#telemetry-from-cloud-sessions-and-claude-tag) を実行するコマンドではなく自身で送信し、そのリクエストはエージェントプロキシを通過しません160* **Claude Code のテレメトリエクスポート**: Claude Code は [テレメトリエクスポート](/docs/ja/monitoring-usage#telemetry-from-cloud-sessions-and-claude-tag) を実行するコマンドではなく自身で送信し、そのリクエストはエージェントプロキシを通過しません


179 179 

180* 環境で既に実行中のセッションは引き続き機能します。180* 環境で既に実行中のセッションは引き続き機能します。

181* 環境はセレクターと `/remote-env` から消えるため、新しいセッション用に選択できません。181* 環境はセレクターと `/remote-env` から消えるため、新しいセッション用に選択できません。

182* 環境の API 認証情報は実行中のセッションに添付されたままです。アーカイブする前に不要なものを削除してください。182* 環境のネットワークシークレットは実行中のセッションに添付されたままです。アーカイブする前に不要なものを削除してください。

183* アーカイブされた環境では、どのサーフェスでも新しいセッションを開始できません。環境が保存された [CLI デフォルト](#select-an-environment-from-the-cli) だった場合、リストに 1 つがある場合は Claude Code は Anthropic ホスト型環境で CLI クラウドセッションを開始し、そうでない場合は [Remote Control ブリッジ環境](#the-default-environment) ではないリスト内の最初の環境で開始します。[ルーチン](/docs/ja/routines#environments-and-network-access) など環境で明示的に設定されたものは、新しいセッションをそこで開始できません。別の環境を指してください。183* アーカイブされた環境では、どのサーフェスでも新しいセッションを開始できません。環境が保存された [CLI デフォルト](#select-an-environment-from-the-cli) だった場合、リストに 1 つがある場合は Claude Code は Anthropic ホスト型環境で CLI クラウドセッションを開始し、そうでない場合は [Remote Control ブリッジ環境](#the-default-environment) ではないリスト内の最初の環境で開始します。[ルーチン](/docs/ja/routines#environments-and-network-access) など環境で明示的に設定されたものは、新しいセッションをそこで開始できません。別の環境を指してください。

184 184 

185<h3 id="organization-shared-environments">185<h3 id="organization-shared-environments">


197 197 

198Owner は [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) で組織の [デフォルト環境](#the-default-environment) を別途選択します。198Owner は [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) で組織の [デフォルト環境](#the-default-environment) を別途選択します。

199 199 

200すべてのメンバーのセッションは共有環境でその変数を読み取るため、シークレットを含めないでください。[API 認証情報](#add-api-credentials)(セッションが読み取ることができないキーを提供)は Team および Enterprise プランではまだ利用できません。200すべてのメンバーのセッションは共有環境でその変数を読み取るため、シークレットを含めないでください。[ネットワークシークレット](#add-api-credentials)(セッションが読み取ることができないキーを提供)は Team および Enterprise プランではまだ利用できません。

201 201 

202<h3 id="set-the-environment-a-claude-tag-channel-uses">202<h3 id="set-the-environment-a-claude-tag-channel-uses">

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


239 239 

240* GitHub([separate proxy](#github-proxy) を通じて)240* GitHub([separate proxy](#github-proxy) を通じて)

241* 有効にした [MCP connectors](#network-access)(トラフィックは Anthropic のサーバーを通じて移動)241* 有効にした [MCP connectors](#network-access)(トラフィックは Anthropic のサーバーを通じて移動)

242* 環境の [API credentials](#add-api-credentials) にリストされたホスト([credential を取得しないホスト](#requests-that-never-get-the-credential) を除く)242* 環境の [ネットワークシークレット](#add-api-credentials) にリストしたホスト([シークレットを取得しないホスト](#requests-that-never-get-the-credential) を除く)

243* Anthropic API(Claude Code 独自のリクエスト用。[Security and isolation](/docs/ja/claude-code-on-the-web#security-and-isolation) に記載されているように **None** でも)243* Anthropic API(Claude Code 独自のリクエスト用。[Security and isolation](/docs/ja/claude-code-on-the-web#security-and-isolation) に記載されているように **None** でも)

244 244 

245<h3 id="allow-specific-domains">245<h3 id="allow-specific-domains">


254registry.example.com254registry.example.com

255```255```

256 256 

257この環境のセッションは、`api.example.com`、`internal.example.com` のすべてのサブドメイン、および `registry.example.com` に到達でき、セッションのネットワークを通じた他のドメインには到達できません。[GitHub traffic](#github-proxy)、[MCP connector traffic](#network-access)、および環境の [API credentials](#add-api-credentials) のホストへのリクエスト([credential を取得しないホスト](#requests-that-never-get-the-credential) を除く)は、この許可リストを通じません。先頭の `*.` はすべてのサブドメインにマッチします。[Trusted domains](#default-allowed-domains) も保持するには、**Also include default list of common package managers** をチェックします。チェックを外すと、リストしたもののみを許可します。257この環境のセッションは、`api.example.com`、`internal.example.com` のすべてのサブドメイン、および `registry.example.com` に到達でき、セッションのネットワークを通じた他のドメインには到達できません。[GitHub traffic](#github-proxy)、[MCP connector traffic](#network-access)、および環境の [ネットワークシークレット](#add-api-credentials) のホストへのリクエスト([シークレットを取得しないホスト](#requests-that-never-get-the-credential) を除く)は、この許可リストを通じません。先頭の `*.` はすべてのサブドメインにマッチします。[Trusted domains](#default-allowed-domains) も保持するには、**Also include default list of common package managers** をチェックします。チェックを外すと、リストしたもののみを許可します。

258 258 

259組織が [artifacts](/docs/ja/artifacts#availability) を使用する場合、セッションがそれらを読み取るために `*.frame.claudeusercontent.com` をリストに含める必要はありません。リストがそのホストを除外する場合、Claude Code はセッションの Anthropic への接続を通じてアーティファクトコンテンツを読み取ります。ホストを許可リストに保持する 2 つの状況があります。259組織が [artifacts](/docs/ja/artifacts#availability) を使用する場合、セッションがそれらを読み取るために `*.frame.claudeusercontent.com` をリストに含める必要はありません。リストがそのホストを除外する場合、Claude Code はセッションの Anthropic への接続を通じてアーティファクトコンテンツを読み取ります。ホストを許可リストに保持する 2 つの状況があります。

260 260 


313| リポジトリの `.claude/skills/`、`.claude/agents/`、`.claude/commands/` | はい | クローンの一部 |313| リポジトリの `.claude/skills/`、`.claude/agents/`、`.claude/commands/` | はい | クローンの一部 |

314| リポジトリの `.claude/settings.json` で宣言されたプラグインとマーケットプレイス | いいえ | クラウドセッションは、リポジトリが [`enabledPlugins`](/docs/ja/settings-reference#enabledplugins) で有効にするプラグインをインストールしません。これには [`extraKnownMarketplaces`](/docs/ja/settings-reference#extraknownmarketplaces) の下にリストされているマーケットプレイスのプラグインも含まれます |314| リポジトリの `.claude/settings.json` で宣言されたプラグインとマーケットプレイス | いいえ | クラウドセッションは、リポジトリが [`enabledPlugins`](/docs/ja/settings-reference#enabledplugins) で有効にするプラグインをインストールしません。これには [`extraKnownMarketplaces`](/docs/ja/settings-reference#extraknownmarketplaces) の下にリストされているマーケットプレイスのプラグインも含まれます |

315| 組織の[サーバー管理設定](/docs/ja/server-managed-settings) | はい、[Claude Tag](https://claude.com/docs/claude-tag/overview) セッションを除く | セッション開始時に Anthropic のサーバーから取得されます。クラウドセッションで `availableModels` がどのように適用されるかについては、[Surface coverage](/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)に従います |315| 組織の[サーバー管理設定](/docs/ja/server-managed-settings) | はい、[Claude Tag](https://claude.com/docs/claude-tag/overview) セッションを除く | セッション開始時に Anthropic のサーバーから取得されます。クラウドセッションで `availableModels` がどのように適用されるかについては、[Surface coverage](/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)に従います |

316| ユーザー `~/.claude/CLAUDE.md` | いいえ | マシンに存在し、リポジトリには存在しません |316| ユーザー `~/.claude/CLAUDE.md` | いいえ | マシンに存在し、リポジトリには存在しません。[リポジトリにコミットせずに個人設定を追加する](#add-personal-preferences-without-committing-to-the-repo)を参照してください |

317| ユーザー `~/.claude/skills/`、`~/.claude/agents/`、`~/.claude/commands/` | いいえ | マシンに存在し、リポジトリには存在しません。代わりにリポジトリの `.claude/` ディレクトリにコミットしてください。クラウドセッションは claude.ai で有効にしたスキルを自動的に読み込みます |317| ユーザー `~/.claude/skills/`、`~/.claude/agents/`、`~/.claude/commands/` | いいえ | マシンに存在し、リポジトリには存在しません。代わりにリポジトリの `.claude/` ディレクトリにコミットしてください。クラウドセッションは claude.ai で有効にしたスキルを自動的に読み込みます |

318| ユーザー設定でのみ有効なプラグイン | いいえ | ユーザースコープの `enabledPlugins` は `~/.claude/settings.json` に存在します |318| ユーザー設定でのみ有効なプラグイン | いいえ | ユーザースコープの `enabledPlugins` はマシンの `~/.claude/settings.json` に存在します |

319| デフォルトのローカルスコープまたはユーザースコープで `claude mcp add` を使用して追加した MCP サーバー | いいえ | これらはマシンの `~/.claude.json` に書き込まれ、リポジトリには書き込まれません。`claude mcp add --scope project` でサーバーを追加します。これはリポジトリの[`.mcp.json`](/docs/ja/mcp#project-scope)に書き込まれ、そのファイルをコミットしてください。1 つのリポジトリを持つセッションはそれを読み込みます |319| デフォルトのローカルスコープまたはユーザースコープで `claude mcp add` を使用して追加した MCP サーバー | いいえ | これらはマシンの `~/.claude.json` に書き込まれ、リポジトリには書き込まれません。`claude mcp add --scope project` でサーバーを追加します。これはリポジトリの[`.mcp.json`](/docs/ja/mcp#project-scope)に書き込まれ、そのファイルをコミットしてください。1 つのリポジトリを持つセッションはそれを読み込みます |

320| リポジトリの `.claude/settings.json` `env` ブロック内のトランスポート変数(`NODE_EXTRA_CA_CERTS` や[mTLS クライアント証明書変数](/docs/ja/network-config#mtls-authentication)など) | いいえ | ホスティング環境がセッションの API 接続を管理するため、Claude Code はこれらのキーを無視し、セッションのデバッグログで無視された各キーを記録します |320| リポジトリの `.claude/settings.json` `env` ブロック内のトランスポート変数(`NODE_EXTRA_CA_CERTS` や[mTLS クライアント証明書変数](/docs/ja/network-config#mtls-authentication)など) | いいえ | ホスティング環境がセッションの API 接続を管理するため、Claude Code はこれらのキーを無視し、セッションのデバッグログで無視された各キーを記録します |

321| Claude が呼び出すサービスの API キーとトークン | Pro および Max プランでは、[API 認証情報](#add-api-credentials)として | キーを環境に一度追加すると、エージェントプロキシがリストしたホストへのリクエストにそれを添付します。エージェントプロキシが[添付できない](#requests-that-never-get-the-credential)キー、または Team または Enterprise プランのキーは環境変数に留まります |321| Claude が呼び出すサービスの API キーとトークン | Pro および Max プランでは、[ネットワークシークレット](#add-api-credentials)として | キーを環境に一度追加すると、エージェントプロキシがリストしたホストへのリクエストにそれを添付します。エージェントプロキシが[添付できない](#requests-that-never-get-the-credential)キー、または Team または Enterprise プランのキーは環境変数に留まります |

322| AWS SSO のようなインタラクティブ認証 | いいえ | サポートされていません。SSO はクラウドセッションで実行できないブラウザベースのログインが必要です |322| AWS SSO のようなインタラクティブ認証 | いいえ | サポートされていません。SSO はクラウドセッションで実行できないブラウザベースのログインが必要です |

323 323 

324クラウドセッションで独自の構成を利用可能にするには、リポジトリにコミットしてください。324クラウドセッションで独自の構成を利用可能にするには、リポジトリにコミットしてください。

325 325 

326環境を使用する誰もが環境変数とセットアップスクリプトを読むことができます。ダイアログの**環境変数**の下のメモはそのことを述べており、シークレットをそこに置かないよう警告しています。Pro および Max プランでは、代わりにエージェントプロキシが添付できるキーを[API 認証情報](#add-api-credentials)として保存してください。326環境を使用する誰もが環境変数とセットアップスクリプトを読むことができます。ダイアログの**環境変数**の下のメモはそのことを述べており、シークレットをそこに置かないよう警告しています。Pro および Max プランでは、代わりにエージェントプロキシが添付できるキーを[ネットワークシークレット](#add-api-credentials)として保存してください。

327 

328<h4 id="add-personal-preferences-without-committing-to-the-repo">

329 リポジトリにコミットせずに個人設定を追加する

330</h4>

331 

332Anthropic ホスト環境では、共有リポジトリに置きたくない設定のために、`~/.claude/CLAUDE.md` を書き込む[セットアップスクリプト](#setup-scripts)を追加してください。Claude Code はそのファイルをセッション内で[ユーザー指示](/docs/ja/memory#choose-where-to-put-claude-md-files)として読み込みます。この例では、コミットメッセージに関する設定を指定します:

333 

334```bash theme={null}

335#!/bin/bash

336mkdir -p ~/.claude

337cat > ~/.claude/CLAUDE.md <<'EOF'

338Use conventional commit messages.

339EOF

340```

341 

342このスクリプトは[共有環境](#organization-shared-environments)ではなく、自分の環境のいずれかに設定してください。

343 

344次のクラウドセッションで `/context` を実行し、**Memory files** の下に `/root/.claude/CLAUDE.md` が表示されることを確認してください。

327 345 

328<h3 id="installed-tools">346<h3 id="installed-tools">

329 インストール済みツール347 インストール済みツール


438 456 

439Anthropic ホスト環境では、ビルド、インストール、テスト実行など、クラウドセッションでの長時間実行作業に対して、これらの時間制限が適用されます。各エントリは制限を定義するセクションにリンクしています。457Anthropic ホスト環境では、ビルド、インストール、テスト実行など、クラウドセッションでの長時間実行作業に対して、これらの時間制限が適用されます。各エントリは制限を定義するセクションにリンクしています。

440 458 

441* **Claude が実行するコマンド**:クラウド環境は独自のコマンドタイムアウトを設定しないため、Bash ツールのデフォルトが適用されます。Claude はデフォルトでコマンドを 2 分間待機し、最大 10 分間要求できます。459* **Claude が実行するコマンド**:クラウド環境は独自のコマンドタイムアウトを設定しないため、Bash ツールのデフォルトが適用されます。Claude はデフォルトでフォアグラウンドコマンドを 2 分間待機し、最大 10 分間要求できます。

442 460 

443 コマンドが[タイムアウト](/docs/ja/tools-reference#timeout-and-output-limits)に達すると、Claude Code は `sleep` で始まるコマンドを除き、それを停止する代わりに[バックグラウンドに移動](/docs/ja/tools-reference#foreground-commands-that-move-to-the-background)します。この方法で移動されたコマンドは、Claude Code がそれを[バックグラウンド時間制限](/docs/ja/tools-reference#time-limit-for-background-commands)で停止する前に、最大 30 分間実行し続けることができます。`BASH_DEFAULT_TIMEOUT_MS` を `1800000` ミリ秒より上に設定すると、その制限とフォアグラウンドデフォルトの両方が長くなります。461 コマンドが[タイムアウト](/docs/ja/tools-reference#timeout-and-output-limits)に達すると、Claude Code は `sleep` で始まるコマンドを除き、それを停止する代わりに[バックグラウンドに移動](/docs/ja/tools-reference#foreground-commands-that-move-to-the-background)します。この方法で移動されたコマンドは、Claude Code がそれを[バックグラウンド時間制限](/docs/ja/tools-reference#time-limit-for-background-commands)で停止する前に、最大 30 分間実行し続けることができます。`BASH_DEFAULT_TIMEOUT_MS` を `1800000` ミリ秒より上に設定すると、その制限とフォアグラウンドデフォルトの両方が長くなります。

444* **SessionStart hooks**:Claude Code は、hook エントリで[`timeout`](/docs/ja/hooks#common-fields)(秒単位)を設定しない限り、600 秒後に `command` hook をキャンセルします。Claude Code は[`async: true`](/docs/ja/hooks#run-hooks-in-the-background)で実行する hook に対してタイムアウトを適用しません。462* **SessionStart hooks**:Claude Code は、hook エントリで[`timeout`](/docs/ja/hooks#common-fields)(秒単位)を設定しない限り、600 秒後に `command` hook をキャンセルします。Claude Code は[`async: true`](/docs/ja/hooks#run-hooks-in-the-background)で実行する hook に対してタイムアウトを適用しません。

Details

1586 1586 

1587セッションは、代表的なトークン数を含む現実的なフローを通じて進みます。1587セッションは、代表的なトークン数を含む現実的なフローを通じて進みます。

1588 1588 

1589* **何も入力する前に**: CLAUDE.md、自動メモリ、MCP ツール名、スキルの説明がすべてコンテキストに読み込まれます。[AGENTS.md ファイル](/docs/ja/memory#agents-md)も読み込まれる可能性があります。CLAUDE.md と一緒に、またはそれ単独で。あなた自身のセットアップは、[出力スタイル](/docs/ja/output-styles)や[`--append-system-prompt`](/docs/ja/cli-reference)からのテキストなど、ここにさらに多くのものを追加する可能性があります。1589* **何も入力する前に**: CLAUDE.md、自動メモリ、MCP ツール名、スキルの説明がすべてコンテキストに読み込まれます。CLAUDE.md の代わりに [AGENTS.md ファイル](/docs/ja/memory#agents-md)が読み込まれる場合もあります。ユーザー自身のセットアップによっては、[出力スタイル](/docs/ja/output-styles)や [`--append-system-prompt`](/docs/ja/cli-reference) からのテキストなど、ここにさらに多くのものが追加される可能性があります。

1590* **Claude が作業するとき**: 各ファイル読み込みがコンテキストに追加され、[パススコープ付きルール](/docs/ja/memory#path-specific-rules)は一致するファイルと一緒に自動的に読み込まれ、[PostToolUse フック](/docs/ja/hooks-guide)は各編集後に発火します。1590* **Claude が作業するとき**: 各ファイル読み込みがコンテキストに追加され、[パススコープ付きルール](/docs/ja/memory#path-specific-rules)は一致するファイルと一緒に自動的に読み込まれ、[PostToolUse フック](/docs/ja/hooks-guide)は各編集後に発火します。

1591* **フォローアップ プロンプト**: [サブエージェント](/docs/ja/sub-agents)は独自の別のコンテキストウィンドウで研究を処理するため、大きなファイル読み込みはあなたのコンテキストウィンドウから外れます。サマリーと小さなメタデータトレーラーだけが戻ってきます。1591* **フォローアップ プロンプト**: [サブエージェント](/docs/ja/sub-agents)は独自の別のコンテキストウィンドウで研究を処理するため、大きなファイル読み込みはあなたのコンテキストウィンドウから外れます。サマリーと小さなメタデータトレーラーだけが戻ってきます。

1592* **最後に**: `/compact` は会話を構造化されたサマリーに置き換えます。ほとんどのスタートアップコンテンツは自動的に再度読み込まれます。以下の表は、各メカニズムに何が起こるかを示しています。1592* **最後に**: `/compact` は会話を構造化されたサマリーに置き換えます。ほとんどのスタートアップコンテンツは自動的に再度読み込まれます。以下の表は、各メカニズムに何が起こるかを示しています。

costs.md +1 −1

Details

397* **複雑なタスクに plan mode を使用する**: Shift+Tab を押して実装前に [plan mode](/docs/ja/permission-modes#analyze-before-you-edit-with-plan-mode) に切り替えます。Claude はコードベースを探索し、承認のためのアプローチを提案し、初期の方向が間違っている場合の高額な再作業を防ぎます。397* **複雑なタスクに plan mode を使用する**: Shift+Tab を押して実装前に [plan mode](/docs/ja/permission-modes#analyze-before-you-edit-with-plan-mode) に切り替えます。Claude はコードベースを探索し、承認のためのアプローチを提案し、初期の方向が間違っている場合の高額な再作業を防ぎます。

398* **早期に方向を修正する**: Claude が間違った方向に向かい始めたら、Escape を押してすぐに停止します。`/rewind` を使用するか、Escape をダブルタップして、会話とコードを以前のチェックポイントに復元します。398* **早期に方向を修正する**: Claude が間違った方向に向かい始めたら、Escape を押してすぐに停止します。`/rewind` を使用するか、Escape をダブルタップして、会話とコードを以前のチェックポイントに復元します。

399* **検証ターゲットを指定する**: テストケースを含める、スクリーンショットを貼り付ける、またはプロンプトで予想される出力を定義します。Claude が独自の作業を検証できる場合、修正をリクエストする必要がある前に問題をキャッチします。399* **検証ターゲットを指定する**: テストケースを含める、スクリーンショットを貼り付ける、またはプロンプトで予想される出力を定義します。Claude が独自の作業を検証できる場合、修正をリクエストする必要がある前に問題をキャッチします。

400* **段階的にテストする**: 1 つのファイルを作成し、テストしてから続行します。これにより、修正が安価なときに早期に問題をキャッチします。400* **段階的にテストする**: 1 つのファイルを作成し、テストしてから続行します。これにより、早期に問題をキャッチします。

401 401 

402<h2 id="background-token-usage">402<h2 id="background-token-usage">

403 バックグラウンドトークン使用量403 バックグラウンドトークン使用量

desktop.md +1 −1

Details

1092実行しているデスクトップアプリのバージョンを確認するには:1092実行しているデスクトップアプリのバージョンを確認するには:

1093 1093 

1094* **macOS**:メニューバーの**Claude**をクリックしてから、**About Claude**をクリック1094* **macOS**:メニューバーの**Claude**をクリックしてから、**About Claude**をクリック

1095* **Windows**:**Help**をクリックしてから、**About**をクリック1095* **Windows**:**Help**をクリックしてから、**About Claude**をクリック

1096 1096 

1097バージョン番号をクリックしてクリップボードにコピーします。1097バージョン番号をクリックしてクリップボードにコピーします。

1098 1098 

Details

92* **Cmd+S** でスクリーンショットを保存するか、**Cmd+R** でスクリーン録画を保存します。ペインのキャプチャボタンまたはショートカットを使用します。ファイルはデスクトップに保存されます92* **Cmd+S** でスクリーンショットを保存するか、**Cmd+R** でスクリーン録画を保存します。ペインのキャプチャボタンまたはショートカットを使用します。ファイルはデスクトップに保存されます

93* **Detach simulator** をクリックしてデバイスをシャットダウンせずにストリーミングを停止します。ペインは **Attach simulator** 状態に戻ります93* **Detach simulator** をクリックしてデバイスをシャットダウンせずにストリーミングを停止します。ペインは **Attach simulator** 状態に戻ります

94 94 

95シミュレータからのビデオストリームを調整するには、ペインの **Display** メニューを開きます。Mac に負荷がかかっている場合は **Frame rate** または **Resolution** を下げます。どちらの設定も、ペインがデバイスを表示する方法を変更し、アプリの実行方法は変更しません。95ペインに **Display** メニューが表示されている場合は、それを使用してシミュレータからのビデオストリームを調整できます。Mac に負荷がかかっている場合は **Frame rate** または **Resolution** を下げます。どちらの設定も、ペインがデバイスを表示する方法を変更し、アプリの実行方法は変更しません。

96 96 

97あなたと Claude は同じデバイスを操作するため、あなたのタップは Claude が見るアプリの状態を変更します。Claude に特定の画面をチェックさせるには、タップして移動してから依頼します。Claude がデバイスを操作している間、ペインは画面の上に **Claude is using this device** バッジを表示します。バッジが消えるまでタップを控えて、結果があなたの入力ではなくアプリを反映するようにします。97あなたと Claude は同じデバイスを操作するため、あなたのタップは Claude が見るアプリの状態を変更します。Claude に特定の画面をチェックさせるには、タップして移動してから依頼します。Claude がデバイスを操作している間、ペインは画面の上に **Claude is using this device** バッジを表示します。バッジが消えるまでタップを控えて、結果があなたの入力ではなくアプリを反映するようにします。

98 98 

env-vars.md +1 −0

Details

354| `CLAUDE_CODE_PERFORCE_MODE` | `1` に設定すると、Perforce 対応の書き込み保護を有効にします。設定すると、対象ファイルに所有者の書き込みビットがない場合、Edit、Write、NotebookEdit は `p4 edit <file>` のヒントとともに失敗します。Perforce は、同期したファイルについて `p4 edit` で開くまでこのビットをクリアします。これにより、Claude Code が Perforce の変更追跡をバイパスすることを防ぎます |354| `CLAUDE_CODE_PERFORCE_MODE` | `1` に設定すると、Perforce 対応の書き込み保護を有効にします。設定すると、対象ファイルに所有者の書き込みビットがない場合、Edit、Write、NotebookEdit は `p4 edit <file>` のヒントとともに失敗します。Perforce は、同期したファイルについて `p4 edit` で開くまでこのビットをクリアします。これにより、Claude Code が Perforce の変更追跡をバイパスすることを防ぎます |

355| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | プラグインのルートディレクトリを上書きします。名前に反して、これはキャッシュ自体ではなく親ディレクトリを設定します。マーケットプレイスとプラグインキャッシュは、このパスの下のサブディレクトリに配置されます。デフォルトは `~/.claude/plugins` です |355| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | プラグインのルートディレクトリを上書きします。名前に反して、これはキャッシュ自体ではなく親ディレクトリを設定します。マーケットプレイスとプラグインキャッシュは、このパスの下のサブディレクトリに配置されます。デフォルトは `~/.claude/plugins` です |

356| `CLAUDE_CODE_PLUGIN_DIRS` | セッションで読み込むプラグインディレクトリ。それぞれ [`--plugin-dir`](/docs/ja/plugins/cli-reference#flags-that-load-a-plugin-for-one-session) フラグと同じ方法で読み込まれます。複数のパスは、Unix では `:`、Windows では `;` で区切ります。Claude Code は相対パスをスキップするため、各パスは絶対パスで指定するか `~` で始めてください。Claude Code v2.1.280 以降が必要です。[1 つのセッションでプラグインを読み込む](/docs/ja/plugins/create#load-a-directory-or-archive-for-one-session) を参照してください |356| `CLAUDE_CODE_PLUGIN_DIRS` | セッションで読み込むプラグインディレクトリ。それぞれ [`--plugin-dir`](/docs/ja/plugins/cli-reference#flags-that-load-a-plugin-for-one-session) フラグと同じ方法で読み込まれます。複数のパスは、Unix では `:`、Windows では `;` で区切ります。Claude Code は相対パスをスキップするため、各パスは絶対パスで指定するか `~` で始めてください。Claude Code v2.1.280 以降が必要です。[1 つのセッションでプラグインを読み込む](/docs/ja/plugins/create#load-a-directory-or-archive-for-one-session) を参照してください |

357| `CLAUDE_CODE_PLUGIN_DIR_WATCH` | [mod](/docs/ja/plugins/mods/overview) のファイルが変更されたときに Claude Code が mod を再読み込みするかどうかを制御します。再読み込みは `--plugin-dir` でディレクトリから読み込んだ mod に適用され、対話セッションではデフォルトでオンです。非対話セッションでもオンにするには `1` に、すべてのセッションでオフにするには `0` に設定します。Claude Code v2.1.287 以降が必要です。[mod の設定と環境変数](/docs/ja/plugins/mods/reference#settings-and-environment-variables) を参照してください |

357| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | プラグインマーケットプレイスのクローンまたは更新のタイムアウト(ミリ秒)(デフォルト: 120000)。大きなリポジトリや低速なネットワーク接続の場合は、この値を増やしてください。[Git clone timed out](/docs/ja/plugins/troubleshooting#git-clone-timed-out-after-120s) を参照してください |358| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | プラグインマーケットプレイスのクローンまたは更新のタイムアウト(ミリ秒)(デフォルト: 120000)。大きなリポジトリや低速なネットワーク接続の場合は、この値を増やしてください。[Git clone timed out](/docs/ja/plugins/troubleshooting#git-clone-timed-out-after-120s) を参照してください |

358| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | `1` に設定すると、マーケットプレイスの更新でリモートに到達できないか認証できない場合に、再クローンの試行をスキップし、既存のマーケットプレイスのチェックアウトを引き続き使用します。再クローンも同様に失敗するオフライン環境やエアギャップ環境で役立ちます。[オフライン環境でマーケットプレイスの更新が失敗する](/docs/ja/plugins/troubleshooting#marketplace-updates-keep-failing-offline) を参照してください |359| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | `1` に設定すると、マーケットプレイスの更新でリモートに到達できないか認証できない場合に、再クローンの試行をスキップし、既存のマーケットプレイスのチェックアウトを引き続き使用します。再クローンも同様に失敗するオフライン環境やエアギャップ環境で役立ちます。[オフライン環境でマーケットプレイスの更新が失敗する](/docs/ja/plugins/troubleshooting#marketplace-updates-keep-failing-offline) を参照してください |

359| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | `1` に設定すると、GitHub の `owner/repo` 短縮形のソースを SSH ではなく HTTPS でクローンします。プラグインのインストールと更新、および `/plugin marketplace add` と `update` に適用されます。CI ランナー、コンテナー、または `github.com` 用の SSH キーが設定されていない環境で役立ちます |360| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | `1` に設定すると、GitHub の `owner/repo` 短縮形のソースを SSH ではなく HTTPS でクローンします。プラグインのインストールと更新、および `/plugin marketplace add` と `update` に適用されます。CI ランナー、コンテナー、または `github.com` 用の SSH キーが設定されていない環境で役立ちます |

errors.md +3 −4

Details

197| `Cloud sessions cannot be created from a --restricted session` | [コマンドラインエラー](#cloud-sessions-cannot-be-created-from-a-restricted-session) |197| `Cloud sessions cannot be created from a --restricted session` | [コマンドラインエラー](#cloud-sessions-cannot-be-created-from-a-restricted-session) |

198| `Cloud sessions are disabled by your organization's policy` | [コマンドラインエラー](#cloud-sessions-are-disabled-by-your-organizations-policy) |198| `Cloud sessions are disabled by your organization's policy` | [コマンドラインエラー](#cloud-sessions-are-disabled-by-your-organizations-policy) |

199| `Couldn't verify your organization's policy for cloud sessions` | [コマンドラインエラー](#cloud-sessions-are-disabled-by-your-organizations-policy) |199| `Couldn't verify your organization's policy for cloud sessions` | [コマンドラインエラー](#cloud-sessions-are-disabled-by-your-organizations-policy) |

200| `Cloud sessions need a claude.ai sign-in` | [Unable to get organization UUID](/docs/ja/claude-code-on-the-web#unable-to-get-organization-uuid) |

200| `Error: --json-schema is not a valid JSON Schema` | [コマンドラインエラー](#the-json-schema-value-is-not-a-valid-json-schema) |201| `Error: --json-schema is not a valid JSON Schema` | [コマンドラインエラー](#the-json-schema-value-is-not-a-valid-json-schema) |

201| `Error: Invalid --agents configuration:` | [コマンドラインエラー](#invalid-agents-configuration) |202| `Error: Invalid --agents configuration:` | [コマンドラインエラー](#invalid-agents-configuration) |

202| `Error: --agents takes a JSON object, or a file path only with --print (-p)` | [コマンドラインエラー](#invalid-agents-configuration) |203| `Error: --agents takes a JSON object, or a file path only with --print (-p)` | [コマンドラインエラー](#invalid-agents-configuration) |


387* リクエストの途中でコンピューターがスリープ状態になったことが原因で Claude Code が検出した接続の破損。Claude Code はこれを上記のルールに基づいて切断された接続としてカウントします。リトライラベルが特定の理由を名前付けすると、`Connection lost while your computer was asleep` と読み、Claude が思考を完了した後、テキストまたはツール呼び出しの前にターンが終了する場合、メッセージは `Your computer went to sleep before a response was produced` と読みます。388* リクエストの途中でコンピューターがスリープ状態になったことが原因で Claude Code が検出した接続の破損。Claude Code はこれを上記のルールに基づいて切断された接続としてカウントします。リトライラベルが特定の理由を名前付けすると、`Connection lost while your computer was asleep` と読み、Claude が思考を完了した後、テキストまたはツール呼び出しの前にターンが終了する場合、メッセージは `Your computer went to sleep before a response was produced` と読みます。

388* 応答ヘッダーが到着したが Claude の応答が到着していない場合、または Claude が思考を完了したがテキストまたはツール呼び出しを開始していない場合の、停止した応答ストリーム。Claude Code は停止した接続を中止し、上記の 10 回の試行予算外で最大 1 回リクエストを再発行します。Claude が思考を完了した後、テキストまたはツール呼び出しの前に応答が 2 回目に停止した場合、Claude Code は `The response stalled before a response was produced` でターンを終了します。389* 応答ヘッダーが到着したが Claude の応答が到着していない場合、または Claude が思考を完了したがテキストまたはツール呼び出しを開始していない場合の、停止した応答ストリーム。Claude Code は停止した接続を中止し、上記の 10 回の試行予算外で最大 1 回リクエストを再発行します。Claude が思考を完了した後、テキストまたはツール呼び出しの前に応答が 2 回目に停止した場合、Claude Code は `The response stalled before a response was produced` でターンを終了します。

389* API が応答ヘッダーで応答しないストリーミングリクエスト。[最初のバイトデッドラインが実行される](/docs/ja/network-config#streaming-idle-watchdogs)接続上:Claude Code はデッドラインで中止し、リトライ予算内でモデルリクエストごとに最大 1 回再送信し、その試行も応答がない場合は [No response from API](#no-response-from-api) でターンを終了します。他の接続では、リクエストは `API_TIMEOUT_MS` を待ちます。`CLAUDE_CODE_RETRY_WATCHDOG` を設定する場合、1 回のリトライ上限は適用されません。390* API が応答ヘッダーで応答しないストリーミングリクエスト。[最初のバイトデッドラインが実行される](/docs/ja/network-config#streaming-idle-watchdogs)接続上:Claude Code はデッドラインで中止し、リトライ予算内でモデルリクエストごとに最大 1 回再送信し、その試行も応答がない場合は [No response from API](#no-response-from-api) でターンを終了します。他の接続では、リクエストは `API_TIMEOUT_MS` を待ちます。`CLAUDE_CODE_RETRY_WATCHDOG` を設定する場合、1 回のリトライ上限は適用されません。

391* Claude が思考を完了するか、テキストまたはツール呼び出しを開始する前に、API の出力コンテンツフィルターが停止したストリーミング応答。Claude Code はリトライ予算内でリクエストを 1 回再送信し、フィルターが 2 回目の応答も停止した場合は [Output blocked by content filtering policy](#output-blocked-by-content-filtering-policy) を表示します。

390* 一時的な 429 スロットル。ただし、ゲートウェイの支出制限 `429` は除きます。これはスロットルではありません。[Spend limit reached](#spend-limit-reached) を参照してください。392* 一時的な 429 スロットル。ただし、ゲートウェイの支出制限 `429` は除きます。これはスロットルではありません。[Spend limit reached](#spend-limit-reached) を参照してください。

391 * claude.ai サブスクリプションでサインインしている場合、これには計画の割り当てヘッダーを含まない 429 スロットルが含まれます。v2.1.199 より前は、Claude Code は API キーおよび Enterprise サインインに対してのみこれらのスロットルをリトライしました。393 * claude.ai サブスクリプションでサインインしている場合、これには計画の割り当てヘッダーを含まない 429 スロットルが含まれます。v2.1.199 より前は、Claude Code は API キーおよび Enterprise サインインに対してのみこれらのスロットルをリトライしました。

392* 入力と `max_tokens` がコンテキスト制限を超えるため拒否されたリクエスト。変更されていない状態で再送信すると同じ方法で失敗するため、Claude Code は削減された `max_tokens` でリトライし、2 つのケースでリトライを停止してコンパクト化する代わりに:394* 入力と `max_tokens` がコンテキスト制限を超えるため拒否されたリクエスト。変更されていない状態で再送信すると同じ方法で失敗するため、Claude Code は削減された `max_tokens` でリトライし、2 つのケースでリトライを停止してコンパクト化する代わりに:


405* [Amazon Bedrock ストリーミング応答に予期しないコンテンツタイプがある](#bedrock-streaming-response-has-an-unexpected-content-type)。ゲートウェイまたはプロキシが応答を書き直すため、リトライも同じ方法で書き直されます。Claude Code v2.1.208 以降が必要です。407* [Amazon Bedrock ストリーミング応答に予期しないコンテンツタイプがある](#bedrock-streaming-response-has-an-unexpected-content-type)。ゲートウェイまたはプロキシが応答を書き直すため、リトライも同じ方法で書き直されます。Claude Code v2.1.208 以降が必要です。

406* 失敗したストリーミングリクエストの非ストリーミングリトライが成功ステータスを取得しますが、[本文に Claude API メッセージがない](#api-returned-an-empty-or-malformed-response)。Claude Code はそのエラーでターンを終了します。408* 失敗したストリーミングリクエストの非ストリーミングリトライが成功ステータスを取得しますが、[本文に Claude API メッセージがない](#api-returned-an-empty-or-malformed-response)。Claude Code はそのエラーでターンを終了します。

407* 組織のポリシーチェックが拒否したリクエスト。これは `API Error:` 行として表示され、拒否メッセージが含まれます。組織の管理者は [Inference hooks](https://platform.claude.com/docs/en/manage-claude/inference-hooks) を使用してチェックを設定します。これは Claude Enterprise 機能であり、メッセージは彼らが設定した指示で終わるか、デフォルトでは彼らに連絡するよう指示します。Claude Code は、拒否がリクエストのコンテンツに関するものであり、モデルに関するものではないため、拒否されたリクエストを同じモデルまたは [fallback model](/docs/ja/model-config#fallback-model-chains) に再送信しません。v2.1.239 より前は、Claude Code は拒否されたリクエストを、ストリーミングなしで、または設定されたフォールバックモデルで再送信してから、拒否を表示する可能性がありました。409* 組織のポリシーチェックが拒否したリクエスト。これは `API Error:` 行として表示され、拒否メッセージが含まれます。組織の管理者は [Inference hooks](https://platform.claude.com/docs/en/manage-claude/inference-hooks) を使用してチェックを設定します。これは Claude Enterprise 機能であり、メッセージは彼らが設定した指示で終わるか、デフォルトでは彼らに連絡するよう指示します。Claude Code は、拒否がリクエストのコンテンツに関するものであり、モデルに関するものではないため、拒否されたリクエストを同じモデルまたは [fallback model](/docs/ja/model-config#fallback-model-chains) に再送信しません。v2.1.239 より前は、Claude Code は拒否されたリクエストを、ストリーミングなしで、または設定されたフォールバックモデルで再送信してから、拒否を表示する可能性がありました。

408* API の出力コンテンツフィルターがブロックした応答。Claude Code は [Output blocked by content filtering policy](#output-blocked-by-content-filtering-policy) をすぐに表示し、そのリクエストをリトライまたは再送信しません。

409 410 

410<h3 id="what-you-see-while-claude-code-retries-or-waits">411<h3 id="what-you-see-while-claude-code-retries-or-waits">

411 Claude Code がリトライまたは待機している間に表示される内容412 Claude Code がリトライまたは待機している間に表示される内容


2299 2300 

2300**対応方法:**2301**対応方法:**

2301 2302 

2302* 貼り付ける前に画像をリサイズしてください。API は単一の画像で最長辺 8000 ピクセルまで、多くの画像がコンテキストにある場合は 2000 ピクセルまでの画像を受け入れます。2303* 貼り付ける前に画像をリサイズしてください。API は単一の画像で最長辺 8000 ピクセルまで、コンテキストに 20 枚を超える画像がある場合は 3000 ピクセルまでの画像を受け入れます。

2303* 全画面ではなく、関連する領域に絞ったスクリーンショットを撮ってください2304* 全画面ではなく、関連する領域に絞ったスクリーンショットを撮ってください

2304 2305 

2305<h3 id="unable-to-resize-image">2306<h3 id="unable-to-resize-image">


2905API Error: Output blocked by content filtering policy2906API Error: Output blocked by content filtering policy

2906```2907```

2907 2908 

2908Claude Code はブロックが届くとすぐにエラーを表示し、その時点でリクエストを終了します。リクエストの再試行、ストリーミングなしでの再送信、[フォールバックモデル](/docs/ja/model-config#fallback-model-chains)への切り替えは行いません。v2.1.285 より前では、Claude Code はブロックされたリクエストを再送信して再試行することがあり、エラーを表示するまでに数分かかる場合もありました。

2909 

2910**対応方法:**2909**対応方法:**

2911 2910 

2912* 最後のメッセージを言い換えるか、別のアプローチを試してください2911* 最後のメッセージを言い換えるか、別のアプローチを試してください

fast-mode.md +1 −1

Details

88 88 

89高速モード価格は完全な 1M トークンコンテキストウィンドウ全体で一定です。比較対象となる標準 Opus レートについては、[Claude 価格リファレンス](https://platform.claude.com/docs/ja/about-claude/pricing)を参照してください。89高速モード価格は完全な 1M トークンコンテキストウィンドウ全体で一定です。比較対象となる標準 Opus レートについては、[Claude 価格リファレンス](https://platform.claude.com/docs/ja/about-claude/pricing)を参照してください。

90 90 

91会話で初めて高速モードを有効にすると、会話コンテキスト全体に対して完全な高速モードキャッシュなし入力トークン価格を支払います。会話が進むほど、このコストは高くなるため、最初から高速モードを有効にする方が安くなります。コストは会話ごとに 1 回適用されるため、後で高速モードをオフにしてからオンに切り替えても、再度請求されることはありません。メカニズムについては、[高速モードがプロンプトキャッシュとどのように相互作用するか](/docs/ja/prompt-caching#turning-on-fast-mode)を参照してください。91会話で初めて fast mode を有効にすると、会話コンテキスト全体に対して、fast mode のキャッシュされていない入力トークンの価格を全額支払います。会話が進んでいるほどこのコストは高くなるため、最初に fast mode を有効にしたときに請求額が最も小さくなります。コストは会話ごとに 1 回だけ適用されるため、後で fast mode をオフにしてから再びオンに切り替えても、再度請求されることはありません。仕組みについては、[fast mode がプロンプトキャッシュとどのように相互作用するか](/docs/ja/prompt-caching#turning-on-fast-mode)を参照してください。

92 92 

93<h3 id="see-where-fast-mode-spend-appears">93<h3 id="see-where-fast-mode-spend-appears">

94 高速モード支出がどこに表示されるかを確認する94 高速モード支出がどこに表示されるかを確認する

glossary.md +21 −21

Details

104 Channel104 Channel

105</h3>105</h3>

106 106 

107イベントを実行中のセッションにプッシュする [MCP サーバー](#mcp-model-context-protocol) で、ターミナルから離れている間に発生したことに Claude が反応できるようにします。チャネルは双方向にすることができます。Claude は受信イベントを読み取り、同じチャネルを通じて返信します。Telegram、Discord、iMessage は研究プレビューに含まれています。107実行中のセッションにイベントをプッシュする [MCP サーバー](#mcp-model-context-protocol)で、ユーザーがターミナルから離れている間に起きた出来事に Claude が反応できるようにします。チャネルは双方向にすることができ、Claude は受信したイベントを読み取り、同じチャネルを通じて返信します。リサーチプレビューには Telegram、Discord、iMessage が含まれています。

108 108 

109詳細情報:[Channels](/docs/ja/channels)109詳細: [チャネル](/docs/ja/channels)

110 110 

111<h3 id="checkpoint">111<h3 id="checkpoint">

112 Checkpoint112 Checkpoint

113</h3>113</h3>

114 114 

115送信するプロンプトごとにターンを開始する復元ポイント。Claude Code はすべての編集の前にファイルをスナップショットするため、チェックポイントはそれらを復元できます。`Esc` キーを 2 回押すか `/rewind` を実行して、コード、会話、またはその両方を以前のポイントに復元するか、選択したメッセージから会話の一部を要約します。チェックポイントは会話とともに保存されるため、再開されたセッションでも `/rewind` でそれらに戻ることができます。これらは git とは別で、Bash ツールを通じて行われた変更は追跡しません。115ターンを開始するプロンプトを送信するたびに作成される復元ポイントです。Claude Code は編集のたびにその前のファイルのスナップショットを取得するため、チェックポイントによってファイルを元に戻すことができます。`Esc` を 2 回押すか `/rewind` を実行すると、コード、会話、またはその両方を以前の時点に復元したり、選択したメッセージ以降の会話の一部を要約したりできます。チェックポイントは会話とともに保存されるため、再開したセッションでも `/rewind` でチェックポイントに戻ることができます。チェックポイントは git とは別のものであり、Bash ツールを通じて行われた変更は追跡しません。

116 116 

117詳細情報:[Checkpointing](/docs/ja/checkpointing)117詳細: [チェックポイント機能](/docs/ja/checkpointing)

118 118 

119<h3 id="claude-directory">119<h3 id="claude-directory">

120 `.claude` ディレクトリ120 `.claude` directory

121</h3>121</h3>

122 122 

123Claude Code がプロジェクトスコープの設定を読み取るディレクトリ。設定、フック、スキル、サブエージェント、ルール、自動メモリが含まれます。プロジェクトはそのルートに `.claude/` を持ち、ユーザーレベルのデフォルトは `~/.claude/` にあります。123Claude Code がプロジェクトスコープの設定(設定、フック、スキル、サブエージェント、ルール、自動メモリ)を読み込むディレクトリです。プロジェクトではルートに `.claude/` があり、ユーザーレベルのデフォルトは `~/.claude/` にあります。

124 124 

125詳細情報:[The `.claude` directory](/docs/ja/claude-directory)125詳細: [`.claude` ディレクトリ](/docs/ja/claude-directory)

126 126 

127<h3 id="claude-md">127<h3 id="claude-md">

128 CLAUDE.md128 CLAUDE.md

129</h3>129</h3>

130 130 

131Claude 用に作成する永続的な指示のマークダウンファイル。システムプロンプトの後、ユーザーメッセージとしてすべてのセッションの開始時に読み込まれます。プロジェクト規約、アーキテクチャノート、「常に X を行う」ルールをここに記述します。プロジェクトルート CLAUDE.md は [compaction](#compaction) を通じて保存され、その後ディスクから新たに読み込まれます。131ユーザーが Claude 向けに記述する永続的な指示の markdown ファイルで、すべてのセッションの開始時にシステムプロンプトの後のユーザーメッセージとして読み込まれます。プロジェクトの規約、アーキテクチャに関するメモ、「常に X を行う」といったルールをここに記述します。プロジェクトルートの CLAUDE.md は[コンテキスト圧縮](#compaction)後も保持され、圧縮後にディスクから改めて読み込まれます。

132 132 

133CLAUDE.md は `./CLAUDE.md` または `./.claude/CLAUDE.md` でプロジェクトスコープに、`~/.claude/CLAUDE.md` でユーザースコープに、または組織の [managed policy](#managed-settings) として配置できます。検出されたすべてのファイルは相互にオーバーライドするのではなく、最も広いスコープから最も具体的なスコープの順に、コンテキストに連結されます。Claude Code は、プロジェクトの [AGENTS.md](#agents-md) ファイルも読み込むことができます。これは単独で、または CLAUDE.md と一緒に読み込まれます。133CLAUDE.md は、プロジェクトスコープでは `./CLAUDE.md` または `./.claude/CLAUDE.md` に、ユーザースコープでは `~/.claude/CLAUDE.md` に、あるいは組織向けの[管理ポリシー](#managed-settings)として配置できます。検出されたすべてのファイルは互いを上書きするのではなく連結されてコンテキストに追加され、最も広いスコープから最も限定的なスコープの順に並べられます。Claude Code は CLAUDE.md の代わりにプロジェクトの [AGENTS.md](#agents-md) ファイルを読み込むこともできます。

134 134 

135詳細情報:[CLAUDE.md files](/docs/ja/memory#claude-md-files)135詳細: [CLAUDE.md ファイル](/docs/ja/memory#claude-md-files)

136 136 

137<h3 id="cloud-session">137<h3 id="cloud-session">

138 Cloud session138 Cloud session

139</h3>139</h3>

140 140 

141claude.ai/code、Claude モバイルアプリ、**Cloud** が選択された Desktop アプリ、`claude --cloud`、または [routine](/docs/ja/routines) から開始する Claude Code セッションで、ラップトップを閉じた後も実行を続けます。これはクラウドインフラストラクチャで実行されるためです。デフォルトでは Anthropic が管理するか、組織が運用する [self-hosted environment](/docs/ja/self-hosted-environments) です。ターミナル、IDE、または **Local** が選択された Desktop アプリ内のセッションはローカルセッションです。別のデバイスからローカルセッションに到達するには、[Remote Control](#remote-control) を使用します。141ユーザーのマシンではなくクラウドインフラストラクチャ上で実行されるため、ノートパソコンを閉じた後も実行され続ける Claude Code セッションです。デフォルトでは Anthropic が管理するインフラストラクチャ上で実行されますが、組織が運用する[セルフホスト環境](/docs/ja/self-hosted-environments)で実行することもできます。クラウドセッションは、claude.ai/code、Claude モバイルアプリ、**Cloud** を選択した Desktop アプリ、`claude --cloud`、または[ルーティン](/docs/ja/routines)から開始します。ターミナル、IDE、または **Local** を選択した Desktop アプリでのセッションはローカルセッションです。別のデバイスからローカルセッションにアクセスするには、[Remote Control](#remote-control) を使用します。

142 142 

143詳細情報:[Use Claude Code in the cloud](/docs/ja/claude-code-on-the-web)143詳細: [クラウドで Claude Code を使用する](/docs/ja/claude-code-on-the-web)

144 144 

145<h3 id="command">145<h3 id="command">

146 Command146 Command

147</h3>147</h3>

148 148 

149プロンプトに `/name` と入力して呼び出す再利用可能な指示。`/clear`、`/model`、`/compact` などの組み込みコマンドはセッションを制御します。`.claude/commands/` のファイルとして独自のコマンドを定義するか、[plugin](#plugin) からインストールできます。[Skills](#skill) は複数ステップのコマンドをパッケージ化するための推奨される方法です。149プロンプトに `/name` と入力して呼び出す、再利用可能な指示です。`/clear`、`/model`、`/compact` などの組み込みコマンドはセッションを制御します。独自のコマンドを `.claude/commands/` 内のファイルとして定義することも、[プラグイン](#plugin)からインストールすることもできます。複数ステップのコマンドをパッケージ化するには、[スキル](#skill)の使用が推奨されます。

150 150 

151この単語の他の 2 つの用途は関連がありません。`claude` CLI サブコマンド(`claude mcp add` など)は [CLI reference](/docs/ja/cli-reference#cli-commands) に記載されており、stdio [MCP server](#mcp-server) エントリの `command` フィールドは、Claude Code が起動するために起動する実行可能ファイルを指定します。151この語には無関係な用法が 2 つあります。1 つは `claude mcp add` などの `claude` CLI サブコマンドで、[CLI リファレンス](/docs/ja/cli-reference#cli-commands)に一覧があります。もう 1 つは stdio [MCP サーバー](#mcp-server)エントリの `command` フィールドで、サーバーを開始するために Claude Code が起動する実行ファイルを指定します。

152 152 

153詳細情報:[Commands](/docs/ja/commands) · [Skills](/docs/ja/skills)153詳細: [コマンド](/docs/ja/commands) · [スキル](/docs/ja/skills)

154 154 

155<h3 id="compaction">155<h3 id="compaction">

156 Compaction156 Compaction

157</h3>157</h3>

158 158 

159[context window](#context-window) がその制限に近づくときの会話の自動要約。古いツール出力が最初にクリアされ、その後会話が要約されます。プロジェクトルート CLAUDE.md と自動メモリは compaction を通じて保存され、ディスクから再度読み込まれます。会話でのみ与えられた指示は失われる可能性があります。`/compact` を手動でトリガーするか、オプションで `/compact focus on the API changes` のようなフォーカスを指定します。159[コンテキストウィンドウ](#context-window)が上限に近づいたときに、会話を自動的に要約する処理です。まず古いツール出力がクリアされ、次に会話が要約されます。プロジェクトルートの CLAUDE.md と自動メモリは圧縮後も保持され、ディスクから再読み込みされますが、会話の中でのみ与えられた指示は失われる可能性があります。手動で実行するには `/compact` を実行します。`/compact focus on the API changes` のように重点を指定することもできます。

160 160 

161詳細情報:[What survives compaction](/docs/ja/context-window#what-survives-compaction) · [When context fills up](/docs/ja/how-claude-code-works#when-context-fills-up)161詳細: [コンテキスト圧縮後も保持されるもの](/docs/ja/context-window#what-survives-compaction) · [コンテキストがいっぱいになったとき](/docs/ja/how-claude-code-works#when-context-fills-up)

162 162 

163<h3 id="connector">163<h3 id="connector">

164 Connector164 Connector

165</h3>165</h3>

166 166 

167Claude Code ではなく claude.ai アカウントに追加される [MCP server](#mcp-server)。そのアカウントで Claude Code にサインインすると、コネクタはローカルに追加したサーバーと一緒に `/mcp` に表示されます。組織はコネクタをプロビジョニングし、それらに対するツール単位の制御を設定することもできます。167Claude Code で設定するのではなく、claude.ai アカウントに追加された [MCP サーバー](#mcp-server)です。そのアカウントで Claude Code にサインインすると、ローカルで追加したサーバーとともにコネクタが `/mcp` に表示されます。組織はコネクタをプロビジョニングし、ツールごとの制御を設定することもできます。

168 168 

169詳細情報:[Use MCP servers from claude.ai](/docs/ja/mcp#use-mcp-servers-from-claude-ai)169詳細: [claude.ai の MCP サーバーを使用する](/docs/ja/mcp#use-mcp-servers-from-claude-ai)

170 170 

171<h3 id="context-window">171<h3 id="context-window">

172 Context window172 Context window

173</h3>173</h3>

174 174 

175セッションの作業メモリ。会話履歴、ファイルコンテンツ、コマンド出力、CLAUDE.md、自動メモリ、読み込まれたスキル、システム指示を保持します。作業を進めると、[compaction](#compaction) がそれを要約するまでコンテキストが満杯になります。`/context` を実行してスペースを使用しているものを確認します。基盤となるモデルの概念については、[platform glossary](https://platform.claude.com/docs/ja/about-claude/glossary#context-window) を参照してください。175セッションの作業メモリで、会話履歴、ファイルの内容、コマンド出力、CLAUDE.md、自動メモリ、読み込まれたスキル、システム指示を保持します。作業を進めるにつれてコンテキストが埋まっていき、やがて[コンテキスト圧縮](#compaction)によって要約されます。何が容量を使用しているかを確認するには、`/context` を実行します。基盤となるモデルの概念については、[プラットフォーム用語集](https://platform.claude.com/docs/en/about-claude/glossary#context-window)を参照してください。

176 176 

177詳細情報:[Explore the context window](/docs/ja/context-window)177詳細: [コンテキストウィンドウを確認する](/docs/ja/context-window)

178 178 

179<h2 id="d">179<h2 id="d">

180 D180 D

Details

210export VERTEX_REGION_CLAUDE_4_6_SONNET=europe-west1210export VERTEX_REGION_CLAUDE_4_6_SONNET=europe-west1

211```211```

212 212 

213ほとんどのモデルバージョンには、対応する `VERTEX_REGION_CLAUDE_*` 変数があります。完全なリストについては、[環境変数リファレンス](/docs/ja/env-vars)を参照してください。どのモデルがグローバルエンドポイントをサポートしているか、または地域別のみをサポートしているかを確認するには、[Google Cloud の Agent Platform Model Garden](https://console.cloud.google.com/vertex-ai/model-garden)を確認してください。213ほとんどのモデルバージョンには、対応する `VERTEX_REGION_CLAUDE_*` 変数があります。完全なリストについては、[環境変数リファレンス](/docs/ja/env-vars#variables)を参照してください。どのモデルがグローバルエンドポイントをサポートしているか、または地域別のみをサポートしているかを確認するには、[Google Cloud の Agent Platform Model Garden](https://console.cloud.google.com/vertex-ai/model-garden)を確認してください。

214 214 

215リージョン値がリージョンまたはロケーション名のような形状でない場合、Claude Code はそれを未設定として扱います。例えば、Claude Code はスラッシュ、ドット、またはスペースを含む値を未設定として扱います。Claude Code は各変数に対して異なるソースにフォールバックします。215リージョン値がリージョンまたはロケーション名のような形状でない場合、Claude Code はそれを未設定として扱います。例えば、Claude Code はスラッシュ、ドット、またはスペースを含む値を未設定として扱います。Claude Code は各変数に対して異なるソースにフォールバックします。

216 216 


366* 指定したロケーションでモデルが利用可能であることを確認してください。一部のモデルは `global` またはマルチリージョンロケーション(`eu` および `us` など)でのみ提供され、特定のリージョンでは提供されていません366* 指定したロケーションでモデルが利用可能であることを確認してください。一部のモデルは `global` またはマルチリージョンロケーション(`eu` および `us` など)でのみ提供され、特定のリージョンでは提供されていません

367* `CLOUD_ML_REGION=global` を使用している場合、[Model Garden](https://console.cloud.google.com/vertex-ai/model-garden)の「サポートされている機能」でモデルがグローバルエンドポイントをサポートしていることを確認してください。グローバルエンドポイントをサポートしていないモデルの場合は、以下のいずれかを実行してください:367* `CLOUD_ML_REGION=global` を使用している場合、[Model Garden](https://console.cloud.google.com/vertex-ai/model-garden)の「サポートされている機能」でモデルがグローバルエンドポイントをサポートしていることを確認してください。グローバルエンドポイントをサポートしていないモデルの場合は、以下のいずれかを実行してください:

368 * `ANTHROPIC_MODEL` または `ANTHROPIC_DEFAULT_HAIKU_MODEL` を通じてサポートされているモデルを指定するか、368 * `ANTHROPIC_MODEL` または `ANTHROPIC_DEFAULT_HAIKU_MODEL` を通じてサポートされているモデルを指定するか、

369 * `VERTEX_REGION_<MODEL_NAME>` 環境変数を使用してリージョンまたはマルチリージョンロケーションを設定してください369 * [環境変数リファレンス](/docs/ja/env-vars#variables)に記載されているモデルの `VERTEX_REGION_CLAUDE_*` 変数を使用して、リージョンまたはマルチリージョンロケーションを設定してください

370 370 

371429 エラーが発生した場合:371429 エラーが発生した場合:

372 372 

hooks.md +4 −5

Details

63| `DirectoryAdded` | `/add-dir` または SDK `register_repo_root` コントロールリクエスト経由でセッション中盤に作業ディレクトリが追加されるとき |63| `DirectoryAdded` | `/add-dir` または SDK `register_repo_root` コントロールリクエスト経由でセッション中盤に作業ディレクトリが追加されるとき |

64| `FileChanged` | 監視対象ファイルがディスク上で変更されるとき。`matcher` フィールドは監視するファイル名を指定します |64| `FileChanged` | 監視対象ファイルがディスク上で変更されるとき。`matcher` フィールドは監視するファイル名を指定します |

65| `WorktreeCreate` | `--worktree`、`isolation: "worktree"`、またはバックグラウンドセッション経由で worktree が作成されるとき。デフォルトの git 動作を置き換えます |65| `WorktreeCreate` | `--worktree`、`isolation: "worktree"`、またはバックグラウンドセッション経由で worktree が作成されるとき。デフォルトの git 動作を置き換えます |

66| `WorktreeRemove` | セッション終了時、サブエージェント終了時、またはバックグラウンドセッションを削除するときに worktree が削除されるとき |66| `WorktreeRemove` | `WorktreeCreate` フックが作成した worktree が削除されるとき |

67| `PreCompact` | コンテキスト圧縮の前 |67| `PreCompact` | コンテキスト圧縮の前 |

68| `PostCompact` | コンテキスト圧縮が完了した後 |68| `PostCompact` | コンテキスト圧縮が完了した後 |

69| `PreModelSwitch` | Claude Code があなたまたはクライアントがリクエストしたモデルスイッチを適用する前。スイッチをブロックできます |69| `PreModelSwitch` | Claude Code があなたまたはクライアントがリクエストしたモデルスイッチを適用する前。スイッチをブロックできます |


3272 WorktreeRemove3272 WorktreeRemove

3273</h3>3273</h3>

3274 3274 

3275worktree が削除されるときに実行されます。これは [WorktreeCreate](#worktreecreate) に対応するクリーンアップ用のイベントです。このイベントは次の場合に発生します。3275Claude Code が、[`WorktreeCreate`](#worktreecreate) フックで作成された worktree をクリーンアップするときに実行されます。このイベントは次の場合に発生します。

3276 3276 

3277* `--worktree` セッションを終了し、削除を選択したとき3277* `--worktree` セッションを終了し、worktree を削除することを選択した場合

3278* `isolation: "worktree"` を指定したサブエージェントが終了したとき3278* その worktree で実行されている[バックグラウンドセッション](/docs/ja/agent-view#what-deleting-a-session-removes)を削除した場合

3279* フックが worktree を作成した[バックグラウンドセッション](/docs/ja/agent-view#what-deleting-a-session-removes)を削除したとき

3280 3279 

3281Git ベースの worktree の場合、Claude Code は `git worktree remove` で自動的にクリーンアップを行います。WorktreeCreate フックを設定した場合は、WorktreeRemove フックと組み合わせて、作成した worktree のクリーンアップを制御してください。3280Git ベースの worktree の場合、Claude Code は `git worktree remove` で自動的にクリーンアップを行います。WorktreeCreate フックを設定した場合は、WorktreeRemove フックと組み合わせて、作成した worktree のクリーンアップを制御してください。

3282 3281 

hooks-guide.md +1 −1

Details

526| `DirectoryAdded` | `/add-dir` または SDK `register_repo_root` コントロールリクエスト経由でセッション中盤に作業ディレクトリが追加されるとき |526| `DirectoryAdded` | `/add-dir` または SDK `register_repo_root` コントロールリクエスト経由でセッション中盤に作業ディレクトリが追加されるとき |

527| `FileChanged` | 監視対象ファイルがディスク上で変更されるとき。`matcher` フィールドは監視するファイル名を指定します |527| `FileChanged` | 監視対象ファイルがディスク上で変更されるとき。`matcher` フィールドは監視するファイル名を指定します |

528| `WorktreeCreate` | `--worktree`、`isolation: "worktree"`、またはバックグラウンドセッション経由で worktree が作成されるとき。デフォルトの git 動作を置き換えます |528| `WorktreeCreate` | `--worktree`、`isolation: "worktree"`、またはバックグラウンドセッション経由で worktree が作成されるとき。デフォルトの git 動作を置き換えます |

529| `WorktreeRemove` | セッション終了時、サブエージェント終了時、またはバックグラウンドセッションを削除するときに worktree が削除されるとき |529| `WorktreeRemove` | `WorktreeCreate` フックが作成した worktree が削除されるとき |

530| `PreCompact` | コンテキスト圧縮の前 |530| `PreCompact` | コンテキスト圧縮の前 |

531| `PostCompact` | コンテキスト圧縮が完了した後 |531| `PostCompact` | コンテキスト圧縮が完了した後 |

532| `PreModelSwitch` | Claude Code があなたまたはクライアントがリクエストしたモデルスイッチを適用する前。スイッチをブロックできます |532| `PreModelSwitch` | Claude Code があなたまたはクライアントがリクエストしたモデルスイッチを適用する前。スイッチをブロックできます |

Details

76* **プロジェクト。** ディレクトリとサブディレクトリ内のファイル、および許可を得た他の場所のファイル。76* **プロジェクト。** ディレクトリとサブディレクトリ内のファイル、および許可を得た他の場所のファイル。

77* **ターミナル。** 実行できるあらゆるコマンド。ビルドツール、git、パッケージマネージャー、システムユーティリティ、スクリプト。コマンドラインからできることなら、Claude もできます。77* **ターミナル。** 実行できるあらゆるコマンド。ビルドツール、git、パッケージマネージャー、システムユーティリティ、スクリプト。コマンドラインからできることなら、Claude もできます。

78* **git の状態。** 現在のブランチ、コミットされていない変更、最近のコミット履歴。78* **git の状態。** 現在のブランチ、コミットされていない変更、最近のコミット履歴。

79* **[CLAUDE.md](/docs/ja/memory)。** プロジェクト固有の指示、規約、Claude が毎回のセッションで知っておくべきコンテキストを保存するマークダウンファイル。リポジトリに他のコーディングエージェント用の AGENTS.md がある場合、Claude は [それを読むことができます](/docs/ja/memory#agents-md)。CLAUDE.md と一緒に、または単独で読むことができます。79* **[CLAUDE.md](/docs/ja/memory)。** プロジェクト固有の指示、規約、Claude が毎回のセッションで知っておくべきコンテキストを保存するマークダウンファイル。リポジトリに他のコーディングエージェント用の AGENTS.md がある場合、Claude は CLAUDE.md の代わりに [それを読むことができます](/docs/ja/memory#agents-md)。

80* **[自動メモリ](/docs/ja/memory#auto-memory)。** 作業中に Claude が自動的に保存する学習。設定など。MEMORY.md の最初の 200 行または 25KB のいずれか先に達した方が、各セッションの開始時に読み込まれます。80* **[自動メモリ](/docs/ja/memory#auto-memory)。** 作業中に Claude が自動的に保存する学習。設定など。MEMORY.md の最初の 200 行または 25KB のいずれか先に達した方が、各セッションの開始時に読み込まれます。

81* **設定した拡張機能。** 外部サービス用の [MCP サーバー](/docs/ja/mcp)、ワークフロー用の [skills](/docs/ja/skills)、委譲作業用の [subagents](/docs/ja/sub-agents)、ブラウザ相互作用用の [Claude in Chrome](/docs/ja/chrome)。81* **設定した拡張機能。** 外部サービス用の [MCP サーバー](/docs/ja/mcp)、ワークフロー用の [skills](/docs/ja/skills)、委譲作業用の [subagents](/docs/ja/sub-agents)、ブラウザ相互作用用の [Claude in Chrome](/docs/ja/chrome)。

82 82 

keybindings.md +3 −2

Details

299| :- | :- | :- |299| :- | :- | :- |

300| `footer:next` | Right | 次のフッター項目 |300| `footer:next` | Right | 次のフッター項目 |

301| `footer:previous` | Left | 前のフッター項目 |301| `footer:previous` | Left | 前のフッター項目 |

302| `footer:up` | Up | フッター内を上に移動(上部で選択解除) |302| `footer:up` | Up、Ctrl+P | フッター内を上に移動(上部で選択解除) |

303| `footer:down` | Down | フッター内を下に移動 |303| `footer:down` | Down、Ctrl+N | フッター内を下に移動 |

304| `footer:openSelected` | Enter | 選択したフッター項目を開く |304| `footer:openSelected` | Enter | 選択したフッター項目を開く |

305| `footer:clearSelection` | Escape | フッター選択をクリア |305| `footer:clearSelection` | Escape | フッター選択をクリア |

306| `footer:close` | x | 選択した [エージェント](/docs/ja/sub-agents#observe-and-steer-running-forks) または [ワークフロー](/docs/ja/workflows#manage-runs) を停止します。すでに実行中でない場合は、その行を閉じます |

306| `footer:dismiss` | (バインドなし) | このアクションにキーをバインドしても効果がなく、それを名前付けする `keybindings.json` は有効なままです。v2.1.281 より前では、Backspace と Delete はフッターから選択したアーティファクトリンクを削除しました。 |307| `footer:dismiss` | (バインドなし) | このアクションにキーをバインドしても効果がなく、それを名前付けする `keybindings.json` は有効なままです。v2.1.281 より前では、Backspace と Delete はフッターから選択したアーティファクトリンクを削除しました。 |

307 308 

308フッター項目が選択されている場合(プロンプトの下のエージェントパネルの行など)、`chat:submit` を `chat:queueSubmit` または `chat:newline` に再バインドしても、`Enter` はそれを開きます。309フッター項目が選択されている場合(プロンプトの下のエージェントパネルの行など)、`chat:submit` を `chat:queueSubmit` または `chat:newline` に再バインドしても、`Enter` はそれを開きます。

Details

216* **管理者によって配布される**:組織が[設定を配布](/docs/ja/llm-gateway-rollout#distribute-through-managed-settings)している場合、デスクトップアプリはゲートウェイを通じてルーティングされ、設定は不要です216* **管理者によって配布される**:組織が[設定を配布](/docs/ja/llm-gateway-rollout#distribute-through-managed-settings)している場合、デスクトップアプリはゲートウェイを通じてルーティングされ、設定は不要です

217* **ローカルで設定される**:管理者配布設定がないデバイスの場合、Help → Troubleshooting → 開発者モードを有効化を開きます。これはアプリを再起動して開発者メニューを表示します。その後、Developer → Configure Third-Party Inference を開き、ゲートウェイベース URL を入力します。管理者配布設定が優先され、このフォームを読み取り専用にします217* **ローカルで設定される**:管理者配布設定がないデバイスの場合、Help → Troubleshooting → 開発者モードを有効化を開きます。これはアプリを再起動して開発者メニューを表示します。その後、Developer → Configure Third-Party Inference を開き、ゲートウェイベース URL を入力します。管理者配布設定が優先され、このフォームを読み取り専用にします

218 218 

219ゲートウェイ設定がアクティブな場合、デスクトップアプリはローカルマシンのみでセッションを実行します。環境ピッカーは SSH セッションまたは Anthropic ホスト型クラウド環境を提供せず、[Remote Control](/docs/ja/remote-control)は利用できません。ゲートウェイを通じてリモートホストで Claude Code を使用するには、そのホストで CLI を実行し、[`ANTHROPIC_BASE_URL` とゲートウェイ認証情報](#set-the-base-url-and-credential)を設定します。219ゲートウェイ設定がアクティブな場合、環境ピッカーは Anthropic ホスト型クラウド環境を提供せず、[Remote Control](/docs/ja/remote-control) は利用できません。

220 

221ゲートウェイ設定での SSH セッションはベータ版であり、Claude Desktop v1.40609.0 以降が必要です。接続する前に、許可リストとゲートウェイのアドレスを確認してください:

222 

223* **許可されたホスト**:SSH セッションはデフォルトでオフです。オンにするには、ユーザーまたは管理者がサードパーティ推論設定の [`sshHostAllowlist`](https://claude.com/docs/third-party/claude-desktop/configuration#sshhostallowlist) キーに許可するホストを列挙します

224* **ゲートウェイのアドレス**:リモートマシンはゲートウェイに直接接続するため、自分のコンピューター上の `localhost` にあるゲートウェイは SSH セッションでは機能しません

225 

226[3P 環境の Claude Desktop における SSH リモートセッション](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions)を参照してください。また、リモートホストで CLI を実行し、そこで [`ANTHROPIC_BASE_URL` とゲートウェイ認証情報](#set-the-base-url-and-credential)を設定することもできます。

220 227 

221デスクトップアプリが `Gateway was unreachable` を表示する場合、アプリは起動時に設定されたベース URL に到達できませんでした。URL とネットワークパスを上記の [curl テスト](#verify-the-connection)で確認してください。228デスクトップアプリが `Gateway was unreachable` を表示する場合、アプリは起動時に設定されたベース URL に到達できませんでした。URL とネットワークパスを上記の [curl テスト](#verify-the-connection)で確認してください。

222 229 

managed-mcp.md +17 −5

Details

347 `serverUrl` エントリのマッチ方法347 `serverUrl` エントリのマッチ方法

348</h4>348</h4>

349 349 

350URL はパターン内の任意の場所(スキームを含む)で `*` ワイルドカードをサポートします。ホスト名のマッチングは大文字と小文字を区別せず、末尾の FQDN ドットを無視するため、`https://Mcp.Example.com/*` は `https://mcp.example.com/api` にマッチします。パスは大文字と小文字を区別したままです。350URL は `*` ワイルドカードをサポートしており、スキーム全体を `*` にすることもできます。ホスト名のマッチングは大文字と小文字を区別せず、末尾の FQDN ドットを無視するため、`https://Mcp.Example.com/*` は `https://mcp.example.com/api` にマッチします。パスは大文字と小文字を区別したままです。ポートを指定しない場合、ホスト名の書き方によって、パターンがスキームのデフォルトポートのみにマッチするか、すべてのポートにマッチするかが決まります。

351 

352* **ホスト名を完全に記述した場合**:デフォルトポートのみ(`https` は 443、`http` は 80)

353* **ホスト名に `*` を含む場合**:すべてのポート

351 354 

352以下の表は、一般的なパターンが許可する内容を示しています。355以下の表は、一般的なパターンが許可する内容を示しています。

353 356 

354| パターン | 許可 |357| パターン | 許可 |

355| :- | :- |358| :- | :- |

356| `https://mcp.example.com/*` | 特定のドメイン上のすべてのパス |359| `https://mcp.example.com/*` | 特定のドメイン上のすべてのパス(ポート 443 のみ) |

357| `https://mcp.example.com` | そのドメイン上のすべてのパスも。パスのないパターンは任意のパスにマッチします |360| `https://mcp.example.com` | そのドメイン上のすべてのパスも(ポート 443 のみ)。パスのないパターンは任意のパスにマッチします |

358| `https://*.example.com/*` | `example.com` の任意のサブドメイン |361| `https://mcp.example.com:8443/*` | そのドメイン上のすべてのパス(ポート 8443 のみ) |

362| `https://mcp.example.com:*/*` | そのドメイン上のすべてのパス(443 を含む任意のポート) |

363| `https://*.example.com/*` | `example.com` の任意のサブドメイン(任意のポート) |

359| `http://localhost:*/*` | localhost 上の任意のポート |364| `http://localhost:*/*` | localhost 上の任意のポート |

360| `*://mcp.example.com/*` | 特定のドメインへの任意のスキーム |365| `*://mcp.example.com/*` | 特定のドメインへの任意のスキーム(各スキームのデフォルトポートのみ) |

366 

367`deniedMcpServers` のエントリも同じ方法でポートにマッチするため、`staging.example.com` のエントリは、ブロックする必要があるポートとスキームに応じて選択します。

368 

369* `https://staging.example.com/*`:そのホスト上の `https` サーバーをポート 443 でのみブロックするため、`https://staging.example.com:8443/api` のサーバーはブロックされません

370* `https://staging.example.com:*/*`:そのホスト上の `https` サーバーをすべてのポートでブロックします

371* `*://staging.example.com:*/*`:そのホストを任意のスキーム、任意のポートでブロックします

361 372 

362<h4 id="how-policy-entries-expand">373<h4 id="how-policy-entries-expand">

363 `serverCommand` および `serverUrl` エントリ内の環境変数374 `serverCommand` および `serverUrl` エントリ内の環境変数


529 | :- | :- |540 | :- | :- |

530 | `https://mcp.example.com/api` の HTTP サーバー | 許可:allowlist URL パターンにマッチ、denylist マッチなし |541 | `https://mcp.example.com/api` の HTTP サーバー | 許可:allowlist URL パターンにマッチ、denylist マッチなし |

531 | `https://staging.example.com/api` の HTTP サーバー | ブロック:両方にマッチしますが、denylist が優先されます |542 | `https://staging.example.com/api` の HTTP サーバー | ブロック:両方にマッチしますが、denylist が優先されます |

543 | `https://staging.example.com:8443/api` の HTTP サーバー | 許可:allowlist URL パターンにマッチ、[このポートでは denylist マッチなし](#how-serverurl-entries-match) |

532 | `https://other.com/mcp` の HTTP サーバー | ブロック:allowlist にマッチしません |544 | `https://other.com/mcp` の HTTP サーバー | ブロック:allowlist にマッチしません |

533</Accordion>545</Accordion>

534 546 

memory.md +2 −2

Details

8 8 

9Claude Code の各セッションは、新しいコンテキストウィンドウで始まります。2 つのメカニズムがセッション間で知識を保持します。9Claude Code の各セッションは、新しいコンテキストウィンドウで始まります。2 つのメカニズムがセッション間で知識を保持します。

10 10 

11* **CLAUDE.md ファイル**: Claude に永続的なコンテキストを与えるために書く指示。Claude はリポジトリの [`AGENTS.md` ファイル](#agents-md)も読むことができます。CLAUDE.md と一緒に使用することも、単独で使用することもできます11* **CLAUDE.md ファイル**: Claude に永続的なコンテキストを与えるために書く指示。Claude は CLAUDE.md の代わりにリポジトリの [`AGENTS.md` ファイル](#agents-md)を読むこともできます

12* **自動メモリ**: あなたの修正と好みに基づいて Claude が自分自身で書くメモ12* **自動メモリ**: あなたの修正と好みに基づいて Claude が自分自身で書くメモ

13 13 

14このページでは、以下の方法について説明します。14このページでは、以下の方法について説明します。

15 15 

16* [CLAUDE.md ファイルを書いて整理する](#claude-md-files)16* [CLAUDE.md ファイルを書いて整理する](#claude-md-files)

17* [既存の AGENTS.md をプロジェクト指示として使用する](#agents-md)。CLAUDE.md と一緒に使用することも、単独で使用することもできます17* [既存の AGENTS.md](#agents-md) をプロジェクト指示として使用する

18* [`.claude/rules/` で特定のファイルタイプにルールをスコープする](#organize-rules-with-claude/rules/)18* [`.claude/rules/` で特定のファイルタイプにルールをスコープする](#organize-rules-with-claude/rules/)

19* [自動メモリを設定する](#auto-memory)ので Claude が自動的にメモを取ります19* [自動メモリを設定する](#auto-memory)ので Claude が自動的にメモを取ります

20* [指示が従われていない場合のトラブルシューティング](#troubleshoot-memory-issues)20* [指示が従われていない場合のトラブルシューティング](#troubleshoot-memory-issues)

Details

551* **サーバー管理設定**: 組織の [サーバー管理設定](/docs/ja/server-managed-settings) の `env` ブロックに追加します。Claude Code は [サーバー管理設定が適用される](/docs/ja/model-config#surface-coverage) 場所(ユーザーのマシンと Claude Tag チャネルセッション以外のクラウドセッションを含む)で起動時にこれらの設定を取得します。Claude Tag セッションはサーバー管理設定を受け取らないため、このルートではそれらを設定できません。551* **サーバー管理設定**: 組織の [サーバー管理設定](/docs/ja/server-managed-settings) の `env` ブロックに追加します。Claude Code は [サーバー管理設定が適用される](/docs/ja/model-config#surface-coverage) 場所(ユーザーのマシンと Claude Tag チャネルセッション以外のクラウドセッションを含む)で起動時にこれらの設定を取得します。Claude Tag セッションはサーバー管理設定を受け取らないため、このルートではそれらを設定できません。

552* **環境の変数**: クラウド環境の [環境変数](/docs/ja/cloud-environments#set-environment-variables) に追加して、その環境で実行されるセッションのみを設定します。これは Claude Tag セッションに到達するルートです。552* **環境の変数**: クラウド環境の [環境変数](/docs/ja/cloud-environments#set-environment-variables) に追加して、その環境で実行されるセッションのみを設定します。これは Claude Tag セッションに到達するルートです。

553 553 

554環境を使用する誰もがその変数を読み取ることができるため、`OTEL_EXPORTER_OTLP_HEADERS` のコレクタートークンなどの認証情報をそこに配置しないでください。環境の [API 認証情報](/docs/ja/cloud-environments#add-api-credentials) も役に立ちません。Claude Code 独自のテレメトリエクスポートは、[認証情報を取得しないリクエスト](/docs/ja/cloud-environments#requests-that-never-get-the-credential) の 1 つだからです。コレクターが認証情報を必要とする場合は、代わりにサーバー管理設定を通じてエクスポート全体を設定してください。認証情報をそこに設定すると、[Claude Code は管理設定外で設定されたエンドポイント変数を削除します](#how-managed-settings-lock-the-otlp-destination)。554環境を使用する誰もがその変数を読み取ることができるため、`OTEL_EXPORTER_OTLP_HEADERS` のコレクタートークンなどの認証情報をそこに配置しないでください。環境の [ネットワークシークレット](/docs/ja/cloud-environments#add-api-credentials) も役に立ちません。Claude Code 独自のテレメトリエクスポートは、[シークレットを取得しないリクエスト](/docs/ja/cloud-environments#requests-that-never-get-the-credential) の 1 つだからです。コレクターが認証情報を必要とする場合は、代わりにサーバー管理設定を通じてエクスポート全体を設定してください。認証情報をそこに設定すると、[Claude Code は管理設定外で設定されたエンドポイント変数を削除します](#how-managed-settings-lock-the-otlp-destination)。

555 555 

556クラウドセッションのテレメトリを設定する際は、これらの制約を念頭に置いてください。556クラウドセッションのテレメトリを設定する際は、これらの制約を念頭に置いてください。

557 557 

overview.md +6 −4

Details

28 curl -fsSL https://claude.ai/install.sh | bash28 curl -fsSL https://claude.ai/install.sh | bash

29 ```29 ```

30 30 

31 Windows では、PowerShell を使用している場合はシェルプロンプトに `PS C:\` と表示され、CMD を使用している場合は `PS` なしで `C:\` と表示されます。

32 

31 **Windows PowerShell:**33 **Windows PowerShell:**

32 34 

33 ```powershell theme={null}35 ```powershell theme={null}


42 44 

43 インストーラーが完了したら、新しいターミナルウィンドウを開いて `claude --version` を実行してください。インストールが正常に完了すると、バージョン番号が表示されます。シェルが `claude` が見つからない、または認識されていないと表示される場合は、インストールディレクトリがまだ PATH に含まれていません。[PATH を修正する](/docs/ja/troubleshoot-install#command-not-found-claude-after-installation)を参照してください。45 インストーラーが完了したら、新しいターミナルウィンドウを開いて `claude --version` を実行してください。インストールが正常に完了すると、バージョン番号が表示されます。シェルが `claude` が見つからない、または認識されていないと表示される場合は、インストールディレクトリがまだ PATH に含まれていません。[PATH を修正する](/docs/ja/troubleshoot-install#command-not-found-claude-after-installation)を参照してください。

44 46 

45 `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:\` と表示されます。47 `The token '&&' is not a valid statement separator` というエラーが表示される場合は、CMD ではなく PowerShell を使用しています。`'irm' is not recognized as an internal or external command` というエラーが表示される場合は、PowerShell ではなく CMD を使用しています。

46 48 

47 インストールコマンドが `syntax error near unexpected token '<'`、`403`、またはその他の curl エラーで失敗する場合は、[インストールのトラブルシューティング](/docs/ja/troubleshoot-install#find-your-error)を参照して、エラーを修正方法に照合し、代替インストール方法を確認してください。49 インストールコマンドが `syntax error near unexpected token '<'`、`403`、またはその他のエラーで失敗する場合は、[インストールのトラブルシューティング](/docs/ja/troubleshoot-install#find-your-error)を参照して、エラーを修正方法に照合し、代替インストール方法を確認してください。

48 50 

49 [Git for Windows](https://git-scm.com/downloads/win) は、Claude Code が Bash ツールを使用できるようにネイティブ Windows で推奨されます。Git for Windows がインストールされていない場合、Claude Code はシェルツールとして PowerShell を代わりに使用します。WSL セットアップは Git for Windows を必要としません。51 [Git for Windows](https://git-scm.com/downloads/win) は、Claude Code が Bash ツールを使用できるようにネイティブ Windows で推奨されます。Git for Windows がインストールされていない場合、Claude Code はシェルツールとして PowerShell を代わりに使用します。WSL セットアップは Git for Windows を必要としません。

50 52 


85 claude87 claude

86 ```88 ```

87 89 

88 初回使用時にログインするよう促されます。`ANTHROPIC_API_KEY` 環境変数を設定している場合、Claude Code はログインプロンプトをスキップし、代わりにキーを承認するよう求めます。これで完了です![クイックスタートに進む →](/docs/ja/quickstart)90 初回使用時に、Claude Code からログインするよう促されます。`ANTHROPIC_API_KEY` 環境変数を設定しており、そのキーを使用するかどうか Claude Code に尋ねられたときに承認すると、Claude Code はログインプロンプトをスキップします。[クイックスタートに進む →](/docs/ja/quickstart)

89 91 

90 <Tip>92 <Tip>

91 インストールオプション、手動更新、またはアンインストール手順については [高度なセットアップ](/docs/ja/setup) を参照してください。問題が発生した場合は [インストールのトラブルシューティング](/docs/ja/troubleshoot-install) にアクセスしてください。93 インストールオプション、手動更新、またはアンインストール手順については [高度なセットアップ](/docs/ja/setup) を参照してください。問題が発生した場合は [インストールのトラブルシューティング](/docs/ja/troubleshoot-install) にアクセスしてください。


171 </Accordion>173 </Accordion>

172 174 

173 <Accordion title="指示、スキル、フックでカスタマイズする" icon="sliders">175 <Accordion title="指示、スキル、フックでカスタマイズする" icon="sliders">

174 [`CLAUDE.md`](/docs/ja/memory) はプロジェクトルートに追加するマークダウンファイルで、Claude Code はすべてのセッションの開始時に読み取ります。コーディング標準、アーキテクチャの決定、推奨ライブラリ、レビューチェックリストを設定するために使用します。リポジトリに他のコーディングエージェント用の `AGENTS.md` が既にある場合、Claude Code は [それを読み取ることができます](/docs/ja/memory#agents-md) 。Claude は [自動メモリ](/docs/ja/memory#auto-memory) も構築し、セッション間で学習内容を保存し、何も書かずに共有します。176 [`CLAUDE.md`](/docs/ja/memory) はプロジェクトルートに追加するマークダウンファイルで、Claude Code はすべてのセッションの開始時に読み取ります。コーディング標準、アーキテクチャの決定、推奨ライブラリ、レビューチェックリストを設定するために使用します。リポジトリに他のコーディングエージェント用の `AGENTS.md` が既にある場合、Claude Code は `CLAUDE.md` の代わりに [それを読み取ることができます](/docs/ja/memory#agents-md)。Claude は作業しながら [自動メモリ](/docs/ja/memory#auto-memory) も構築し、ユーザーが何も書かなくてもセッション間で学習内容を保存します。

175 177 

176 [スキル](/docs/ja/skills) を作成して、チームが共有できる反復可能なワークフローをパッケージ化します(`/review-pr` や `/deploy-staging` など)。178 [スキル](/docs/ja/skills) を作成して、チームが共有できる反復可能なワークフローをパッケージ化します(`/review-pr` や `/deploy-staging` など)。

177 179 

plugin-evals.md +6 −2

Details

79 claude plugin eval init79 claude plugin eval init

80 ```80 ```

81 81 

82 Claude Code がこのディレクトリをまだ信頼していない場合、最初に `Trust this plugin directory?` と尋ねます。`y` で答えてください。対話型 Claude Code セッションが開きます。Claude はプラグインを読み、良い結果がどのようなものかを尋ね、プラグインをトリガーすべき、またはトリガーすべきでないプロンプトを提案し、各プロンプト用のグレーダーを設計し、それらを 1 回パイロットして動作を確認し、`evals/` の下に 1 つのケースディレクトリをプロンプトの後に作成します。Claude がスイートの準備ができたことを伝えたら、`/exit` または Ctrl+D でそのセッションを終了してシェルに戻ります。82 Claude Code がこのディレクトリをまだ信頼していない場合、最初に `Trust this plugin directory?` と尋ねます。`y` で答えてください。

83 

84 その後、対話型 Claude Code セッションが開きます。Claude はプラグインを読み、良い結果がどのようなものかを尋ね、プラグインをトリガーすべき、またはトリガーすべきでないプロンプトを提案し、各プロンプト用のグレーダーを設計し、それらを試行として 1 回実行して動作を確認し、`evals/` の下にプロンプトごとに 1 つのケースディレクトリを作成します。各ディレクトリにはそのプロンプトに基づいた名前が付けられます。

85 

86 Claude がスイートの準備ができたことを伝えたら、`/exit` または Ctrl+D でそのセッションを終了してシェルに戻ります。

83 87 

84 プラグインルートで既に Claude Code セッションが開いている場合は、代わりにそこで Claude に `claude plugin eval init` を実行するよう依頼できます。Claude はコマンドを実行し、その会話で同じ質問をします。88 プラグインルートで既に Claude Code セッションが開いている場合は、代わりにそこで Claude に `claude plugin eval init` を実行するよう依頼できます。Claude はコマンドを実行し、その会話で同じ質問をします。

85 89 


118 122 

119 最初の一般的な発見は、ケースの `tool_used: Skill` グレーダーが失敗している `Δ` がほぼゼロで、Claude が自然な表現でスキルを選択していないことを意味します。スキルの [`description`](/docs/ja/skills#frontmatter-reference) を調整し、`claude plugin eval .` を再度実行し、比較します。123 最初の一般的な発見は、ケースの `tool_used: Skill` グレーダーが失敗している `Δ` がほぼゼロで、Claude が自然な表現でスキルを選択していないことを意味します。スキルの [`description`](/docs/ja/skills#frontmatter-reference) を調整し、`claude plugin eval .` を再度実行し、比較します。

120 124 

121 1 つのケースを安く反復するには、1 つの arm を 1 回実行します。1 回の実行はノイズが多いため、信頼する前にデフォルトの 3 回で変更を確認してください。1 つの arm では、テーブルは `WITH`、`W/OUT`、`Δ` の列の代わりに `SCORE` と `PASS%` の列を表示します。125 実行回数を減らして 1 つのケースを反復するには、1 つの arm を 1 回実行します。1 回の実行はノイズが多いため、信頼する前にデフォルトの 3 回で変更を確認してください。1 つの arm では、テーブルは `WITH`、`W/OUT`、`Δ` の列の代わりに `SCORE` と `PASS%` の列を表示します。

122 126 

123 ```bash theme={null}127 ```bash theme={null}

124 claude plugin eval . --case <case-name> --runs 1 --ablation none128 claude plugin eval . --case <case-name> --runs 1 --ablation none

Details

733You are a security reviewer. Read the changed files and report injection, authentication, and secrets-handling risks.733You are a security reviewer. Read the changed files and report injection, authentication, and secrets-handling risks.

734```734```

735 735 

736このエージェントは `my-plugin:security-reviewer` という名前で、ユーザーは `@agent-my-plugin:security-reviewer` で[明示的に呼び出す](/docs/ja/sub-agents#invoke-subagents-explicitly)ことができます。名前の形式は `<plugin>:<name>` で、`<name>` はフロントマターから、またはファイル名がない場合はファイル名から来ます。736このエージェントは `my-plugin:security-reviewer` という名前で、ユーザーは `@agent-my-plugin:security-reviewer` で[明示的に呼び出す](/docs/ja/sub-agents#invoke-subagents-explicitly)ことができます。名前の形式は `<plugin>:<name>` で、`<name>` はフロントマターの `name` フィールドから取得され、このフィールドがない場合はファイル名から取得されます。

737 737 

738`agents` マニフェストキーは `agents/` スキャンを置き換えます。738`agents` マニフェストキーは `agents/` スキャンを置き換えます。

739 739 

Details

428 428 

429| 要素 | 描画するもの | 使用できる場所 |429| 要素 | 描画するもの | 使用できる場所 |

430| :- | :- | :- |430| :- | :- | :- |

431| `Box` | フレックスコンテナ。`flexDirection`、`columnGap`、`padding`、`borderStyle`、`width` などのレイアウト props を受け取ります。 | すべて |431| `Box` | フレックスコンテナ。`flexDirection`、`columnGap`、`padding`、[`borderStyle`](/docs/ja/plugins/mods/reference#box-border-styles)、`width` などのレイアウト props を受け取ります。 | すべて |

432| `Text` | スタイル付きテキスト。`color`、`bold`、`dimColor`、`italic`、`wrap` を受け取ります。`color` にはテーマキー、または `'red'` などの色を指定します。`wrap` には `'wrap'`、`'truncate'`、`'truncate-start'`、`'truncate-middle'`、`'truncate-end'` のいずれかを指定します。 | すべて |432| `Text` | スタイル付きテキスト。`color`、`bold`、`dimColor`、`italic`、`wrap` を受け取ります。`color` にはテーマキー、または `'red'` などの色を指定します。`wrap` には `'wrap'`、`'truncate'`、`'truncate-start'`、`'truncate-middle'`、`'truncate-end'` のいずれかを指定します。 | すべて |

433| `Button` | `onPress` を呼び出すコントロール | すべて |433| `Button` | `onPress` を呼び出すコントロール | すべて |

434| `Link`、`Code`、`Markdown` | `href` と任意の `label` を持つリンク、コードブロック、Claude の返答と同じ形式で整形されたテキスト。`Markdown` はコンテンツを `children` ではなく `text` props で受け取り、`onLinkPress` を渡す場合は `key` が必要です。 | すべて |434| `Link`、`Code`、`Markdown` | `href` と任意の `label` を持つリンク、コードブロック、Claude の返答と同じ形式で整形されたテキスト。`Markdown` はコンテンツを `children` ではなく `text` props で受け取り、`onLinkPress` を渡す場合は `key` が必要です。 | すべて |


563多くのペインは、テキストフィールドとその下のリストで構成されます。このセクションの例はメモペインです。メモを入力して Enter を押すと追加され、各メモにはそれを削除する `x` ボタンがあります。メモを 2 つ追加すると、ターミナルはペインを次のように描画します。563多くのペインは、テキストフィールドとその下のリストで構成されます。このセクションの例はメモペインです。メモを入力して Enter を押すと追加され、各メモにはそれを削除する `x` ボタンがあります。メモを 2 つ追加すると、ターミナルはペインを次のように描画します。

564 564 

565```text theme={null}565```text theme={null}

566╭──────────────────────────────────────────────────────────╮566╭────────────────────────────────────────────────────────✕─╮

567│ Note: Type a note and press Enter ⏎ add ✕ │567│ Note: Type a note and press Enter ⏎ add │

568│ x buy milk │568│ x buy milk │

569│ x call bob │569│ x call bob │

570╰──────────────────────────────────────────────────────────╯570╰──────────────────────────────────────────────────────────╯

571```571```

572 572 

573上部の枠線にある `✕` は、ペインを閉じるための Claude Code 独自のマークです。

574 

573この例では次の手法を使用しています。575この例では次の手法を使用しています。

574 576 

575* **入力を受け取る**: `Input` は、ユーザーが Enter を押したときにフィールドのテキストを引数として `onSubmit(value)` を呼び出し、変更のたびに `onInput(value)` を呼び出します577* **入力を受け取る**: `Input` は、ユーザーが Enter を押したときにフィールドのテキストを引数として `onSubmit(value)` を呼び出し、変更のたびに `onInput(value)` を呼び出します

Details

242ツリーを描画箇所に合わせるには、フック内で次の props を読み取ります。242ツリーを描画箇所に合わせるには、フック内で次の props を読み取ります。

243 243 

244* **`Pane` またはバンドの幅**:`e.props.bodyColumns` に合わせて描画します244* **`Pane` またはバンドの幅**:`e.props.bodyColumns` に合わせて描画します

245* **トランスクリプトの横にある `Pane` の高さ**:`e.props.placement` が `'dock'` の場合、`e.props.scroll.bodyRows` がペインの行数です245* **トランスクリプトの横にある `Pane` の高さ**:`e.props.placement` が `'dock'` の場合、`e.props.scroll.bodyRows` がペインでツリーに使える行数です

246* **プロンプトの上にある `Pane` の高さ**:`e.props.placement` が `'inline'` の場合、ペインはツリーに合わせて上限まで大きくなり、`bodyRows` はその上限です。[`$.ui.open` の `rows` フィールド](/docs/ja/plugins/mods/interface#open-a-pane-at-the-right-time)で別の上限を指定できます。246* **プロンプトの上にある `Pane` の高さ**:`e.props.placement` が `'inline'` の場合、ペインはツリーに合わせて上限まで大きくなり、`bodyRows` はその上限です。[`$.ui.open` の `rows` フィールド](/docs/ja/plugins/mods/interface#open-a-pane-at-the-right-time)で別の上限を指定できます。

247 247 

248ペインより高いツリーは、全体としてスクロールします。248ペインより高いツリーは、全体としてスクロールします。


255 255 

256| 要素 | 主な props | Terminal | Desktop |256| 要素 | 主な props | Terminal | Desktop |

257| :- | :- | :-: | :-: |257| :- | :- | :-: | :-: |

258| [`Box`](/docs/ja/plugins/mods/interface#build-a-tree-from-elements) | `key`、flex レイアウト、`gap`、`padding`、`margin`、`width`、`height`、`borderStyle`、`backgroundColor`、`position`、`hover` | ✓ | ✓ |258| [`Box`](/docs/ja/plugins/mods/interface#build-a-tree-from-elements) | `key`、flex レイアウト、`gap`、`padding`、`margin`、`width`、`height`、[`borderStyle`](#box-border-styles)、`backgroundColor`、`position`、`hover` | ✓ | ✓ |

259| [`Text`](/docs/ja/plugins/mods/interface#build-a-tree-from-elements) | `color`、`backgroundColor`、`bold`、`italic`、`underline`、`dimColor`、`inverse`、`wrap` | ✓ | ✓ |259| [`Text`](/docs/ja/plugins/mods/interface#build-a-tree-from-elements) | `color`、`backgroundColor`、`bold`、`italic`、`underline`、`dimColor`、`inverse`、`wrap` | ✓ | ✓ |

260| [`Button`](/docs/ja/plugins/mods/interface#respond-to-presses-and-typing) | `key`、`label`、`onPress`、`hotkey`、`plain`、`dimColor`、`autoFocus`、`action` | ✓ | ✓ |260| [`Button`](/docs/ja/plugins/mods/interface#respond-to-presses-and-typing) | `key`、`label`、`onPress`、`hotkey`、`plain`、`dimColor`、`autoFocus`、`action` | ✓ | ✓ |

261| `Link` | `href`、`label` | ✓ | ✓ |261| `Link` | `href`、`label` | ✓ | ✓ |


270 270 

271`Button` のその他のルール:`action` は Claude Code 独自の[キーボードショートカットのアクション](/docs/ja/keybindings)の 1 つを指定し、そのアクションに対するユーザーの割り当てがコードまたは修飾キー付きのキーである場合、その割り当てでボタンが押されます。バンド内のボタンに数字の `hotkey` を指定すると、ユーザーが空のプロンプトにその数字だけを入力して手を止めたときにも発火します。1 つの描画内で 2 つのボタンが同じ `hotkey` を指定した場合は、後のボタンが優先されます。`autoFocus` はどのコントロールでも `true` しか受け付けないため、オフにするには props を省略してください。271`Button` のその他のルール:`action` は Claude Code 独自の[キーボードショートカットのアクション](/docs/ja/keybindings)の 1 つを指定し、そのアクションに対するユーザーの割り当てがコードまたは修飾キー付きのキーである場合、その割り当てでボタンが押されます。バンド内のボタンに数字の `hotkey` を指定すると、ユーザーが空のプロンプトにその数字だけを入力して手を止めたときにも発火します。1 つの描画内で 2 つのボタンが同じ `hotkey` を指定した場合は、後のボタンが優先されます。`autoFocus` はどのコントロールでも `true` しか受け付けないため、オフにするには props を省略してください。

272 272 

273<h3 id="box-border-styles">

274 `Box` の枠線スタイル

275</h3>

276 

277`Box` の周囲に枠線を描画するには、`borderStyle: 'round'` のように、`borderStyle` に次のいずれかの名前を設定します。各行には、その名前でターミナルが描画する内容と、枠線の上辺を示しています。

278 

279| `borderStyle` | ターミナルが描画する内容 | 上辺 |

280| :- | :- | :- |

281| `'single'` | 角が直角の細い線 | `┌──┐` |

282| `'double'` | 二重線 | `╔══╗` |

283| `'round'` | 角が丸い細い線 | `╭──╮` |

284| `'bold'` | 太い線 | `┏━━┓` |

285| `'singleDouble'` | 上下が細い線、左右が二重線 | `╓──╖` |

286| `'doubleSingle'` | 上下が二重線、左右が細い線 | `╒══╕` |

287| `'classic'` | ASCII 文字の `+`、`-`、`\|` | `+--+` |

288| `'arrow'` | `Box` の内側を指す矢印 | `↘↓↓↙` |

289| `'dashed'` | 角が空白の破線 | `╌╌` |

290| `'quote'` | 左側に沿ったバー(`▎`)と、残りの 3 辺の空白セル | 空白 |

291 

292`borderStyle` に `'rounded'` など、これら以外の名前を指定した `Box` は枠線なしで描画されます。

293 

273<h2 id="limits">294<h2 id="limits">

274 制限295 制限

275</h2>296</h2>

Details

15<Note>15<Note>

16 これらのケースは他のページで説明されています。16 これらのケースは他のページで説明されています。

17 17 

18 * **スコープ、キャッシュ、および優先度の動作方法**: [プラグイン読み込みリファレンス](/docs/ja/plugins/loading)を参照してください18 * **スコープ、キャッシュ、および優先順位の動作方法**: [プラグイン読み込みリファレンス](/docs/ja/plugins/loading)を参照してください

19 * **フラグ、フィールド、またはコマンドを検索する**: [プラグインコマンドリファレンス](/docs/ja/plugins/cli-reference)、[マニフェストリファレンス](/docs/ja/plugins/manifest-reference)、または[マーケットプレイスリファレンス](/docs/ja/plugins/marketplace-reference)を使用してください19 * **フラグ、フィールド、またはコマンドを検索する**: [プラグインコマンドリファレンス](/docs/ja/plugins/cli-reference)、[マニフェストリファレンス](/docs/ja/plugins/manifest-reference)、または[マーケットプレイスリファレンス](/docs/ja/plugins/marketplace-reference)を使用してください

20 * **`hooks module not loaded` または `hooks module did not load` メッセージ**: そのプラグインは [mod](/docs/ja/plugins/mods/overview) であるため、[mod が読み込まれない](/docs/ja/plugins/mods/troubleshoot#the-mod-doesn’t-load)を参照してください

20</Note>21</Note>

21 22 

22表示されたメッセージを検索してください。各メッセージは、実行したコマンドではなく、それを生成する段階の下に一覧表示されています。たとえば、マーケットプレイスが見つからないためにインストールが失敗する場合があるため、そのメッセージは[マーケットプレイスを追加する](#add-a-marketplace)の下に表示されます。23表示されたメッセージを検索してください。各メッセージは、実行したコマンドではなく、それを生成する段階の下に一覧表示されています。たとえば、マーケットプレイスが見つからないためにインストールが失敗する場合があるため、そのメッセージは[マーケットプレイスを追加する](#add-a-marketplace)の下に表示されます。

Details

328| メイン会話 | 1 時間 | 5 分 |328| メイン会話 | 1 時間 | 5 分 |

329| その他すべて | 5 分(ただし、サーバー制御のヘルパーリクエストは 1 時間) | 5 分 |329| その他すべて | 5 分(ただし、サーバー制御のヘルパーリクエストは 1 時間) | 5 分 |

330 330 

331プランの使用量制限を超えて、Claude Code が[使用クレジット](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans)を引き出すと、その使用量に対して請求されるため、Claude Code はメイン会話をより安い 5 分の TTL に低下させます。そこで 1 時間の TTL を保つには、[TTL を自分で選択](#choose-the-ttl-yourself)してください。331プランの使用制限を超えて、Claude Code が[使用クレジット](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans)を引き出すと、その使用量に対して課金されるため、Claude Code はメイン会話を、キャッシュ書き込みのレートがより低い 5 分の TTL に低下させます。そこで 1 時間の TTL を保つには、[TTL を自分で選択](#choose-the-ttl-yourself)してください。

332 332 

333<h3 id="choose-the-ttl-yourself">333<h3 id="choose-the-ttl-yourself">

334 TTL を自分で選択する334 TTL を自分で選択する

Details

1252 },1252 },

1253 "draft-from-past-examples": {1253 "draft-from-past-examples": {

1254 title: "過去の例からドキュメントを作成する",1254 title: "過去の例からドキュメントを作成する",

1255 teaches: "スタイルを説明する代わりに、完成した作業のフォルダを指してください。Claude は既に出荷したものからスタイルと声を学ぶため、最初のドラフトはあなたのものの 1 つのように読めます。",1255 teaches: "スタイルを説明する代わりに、完成した作業のフォルダを指してください。Claude は既に出荷したものから構成と文体を学ぶため、最初のドラフトは自分が書いたもののように読めます。",

1256 next: "声をスキルとして保存して、すべてのドラフトがそこから開始されるようにしてください",1256 next: "文体をスキルとして保存して、すべてのドラフトがそこから開始されるようにしてください",

1257 prompt: "{folder} にある{examples}を読んで構成と文体を学び、{topic}について新しいものを作成してください",1257 prompt: "{folder} にある{examples}を読んで構成と文体を学び、{topic}について新しいものを作成してください",

1258 slots: {1258 slots: {

1259 examples: "プライバシー影響評価",1259 examples: "プライバシー影響評価",


1342 },1342 },

1343 "review-your-changes-before": {1343 "review-your-changes-before": {

1344 title: "コミットする前に変更をレビューする",1344 title: "コミットする前に変更をレビューする",

1345 teaches: "問題が修正するのに安い間に問題をキャッチしてください。Claude は差分の行だけでなく、変更されたファイル全体を読むため、迅速な自己レビューが見落とす問題を見つけます。",1345 teaches: "修正の手間が少ないうちに問題を見つけてください。Claude は差分の行だけでなく、変更されたファイル全体を読むため、迅速な自己レビューが見落とす問題を見つけます。",

1346 next: "同じチェックを 1 つのコマンドで実行するために `/code-review` を実行してください",1346 next: "同じチェックを 1 つのコマンドで実行するために `/code-review` を実行してください",

1347 prompt: "コミットしていない変更をレビューして、コミット前に危険そうな箇所があれば指摘してください"1347 prompt: "コミットしていない変更をレビューして、コミット前に危険そうな箇所があれば指摘してください"

1348 },1348 },


1399 },1399 },

1400 "turn-a-correction-into": {1400 "turn-a-correction-into": {

1401 title: "修正をルールに変える",1401 title: "修正をルールに変える",

1402 teaches: "チャットの修正はチーム全体と共有されません。プロジェクトの [CLAUDE.md](/docs/ja/memory)のルールはコミットすると共有され、Claude はすべてのセッションの開始時にそれを読みます。",1402 teaches: "チャットでの修正はチームと共有されません。プロジェクトの [CLAUDE.md](/docs/ja/memory)のルールはコミットすると共有され、Claude はすべてのセッションの開始時にそれを読みます。",

1403 next: "`/memory` を開いて、Claude が書いたものをレビューしてください",1403 next: "`/memory` を開いて、Claude が書いたものをレビューしてください",

1404 prompt: "{mistake}ことが繰り返されています。同じことが起きないように CLAUDE.md にルールを追加してください",1404 prompt: "{mistake}ことが繰り返されています。同じことが起きないように CLAUDE.md にルールを追加してください",

1405 slots: {1405 slots: {

quickstart.md +71 −105

Details

4 4 

5# クイックスタート5# クイックスタート

6 6 

7> Claude Code へようこそ!7> ターミナルに Claude Code をインストールしてサインインし、CLI を使ってコードベースを探索して最初のコード変更を行います。

8 8 

9このクイックスタートガイドを使用すれば、数分で AI を活用したコーディング支援を利用できます。このガイドを終了する頃には、一般的な開発タスクに Claude Code を使用する方法を理解できるようになります。9このクイックスタートでは、ターミナルでの Claude Code の使い方を説明します。CLI のインストール、最初のセッションからのサインイン、そして自分のプロジェクトでの一般的な開発タスクへの活用方法を扱います。

10 10 

11<h2 id="before-you-begin">11<h2 id="before-you-begin">

12 始める前に12 始める前に


15以下を確認してください:15以下を確認してください:

16 16 

17* ターミナルまたはコマンドプロンプトが開いている17* ターミナルまたはコマンドプロンプトが開いている

18 * ターミナルを使用したことがない場合は、[ターミナルガイド](/docs/ja/terminal-guide)をご覧ください

19* 作業するコードプロジェクトがある18* 作業するコードプロジェクトがある

20* [Claude サブスクリプション](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_prereq)(Pro、Max、Team、または Enterprise)、[Claude Console](https://platform.claude.com/) アカウント、または[サポートされているクラウドプロバイダー](/docs/ja/third-party-integrations)経由のアクセスがある19* [Claude サブスクリプション](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_prereq)(Pro、Max、Team、または Enterprise)、[Claude Console](https://platform.claude.com/) アカウント、または[サポートされているクラウドプロバイダー](/docs/ja/third-party-integrations)経由のアクセスがある

21 20 

22<Note>21<Note>

23 このガイドはターミナル CLI について説明しています。Claude Code は[ウェブ](https://claude.ai/code)、[デスクトップアプリ](/docs/ja/desktop)、[VS Code](/docs/ja/vs-code) および [JetBrains IDE](/docs/ja/jetbrains)、[Slack](/docs/ja/slack)、および [GitHub Actions](/docs/ja/github-actions) と [GitLab](/docs/ja/gitlab-ci-cd) を使用した CI/CD でも利用できます。[すべてのインターフェース](/docs/ja/overview#use-claude-code-everywhere)を参照してください。22 以下のケースについては、他のページで説明しています:

23 

24 * **ターミナルを使用したことがない場合**:[ターミナルガイド](/docs/ja/terminal-guide)から始めてください

25 * **ターミナル以外の場所で Claude Code を使用したい場合**:Claude Code は[ウェブ](https://claude.ai/code)、[デスクトップアプリ](/docs/ja/desktop)、[VS Code](/docs/ja/vs-code) および [JetBrains IDE](/docs/ja/jetbrains)、[Slack](/docs/ja/slack)、および [GitHub Actions](/docs/ja/github-actions) と [GitLab](/docs/ja/gitlab-ci-cd) を使用した CI/CD でも利用できます。[すべてのインターフェース](/docs/ja/overview#use-claude-code-everywhere)を参照してください。

24</Note>26</Note>

25 27 

26<h2 id="step-1-install-claude-code">28<h2 id="step-1-install-claude-code">


33 <Tab title="ネイティブインストール(推奨)">35 <Tab title="ネイティブインストール(推奨)">

34 **macOS、Linux、WSL:**36 **macOS、Linux、WSL:**

35 37 

36 ```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}38 ```bash theme={null}

37 curl -fsSL https://claude.ai/install.sh | bash39 curl -fsSL https://claude.ai/install.sh | bash

38 ```40 ```

39 41 

42 Windows では、PowerShell を使用している場合はシェルプロンプトに `PS C:\` と表示され、CMD を使用している場合は `PS` なしで `C:\` と表示されます。

43 

40 **Windows PowerShell:**44 **Windows PowerShell:**

41 45 

42 ```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}46 ```powershell theme={null}

43 irm https://claude.ai/install.ps1 | iex47 irm https://claude.ai/install.ps1 | iex

44 ```48 ```

45 49 

46 **Windows CMD:**50 **Windows CMD:**

47 51 

48 ```batch theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}52 ```batch theme={null}

49 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd53 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

50 ```54 ```

51 55 

52 インストーラーが完了したら、新しいターミナルウィンドウを開いて `claude --version` を実行してください。インストールが正常に完了すると、バージョン番号が表示されます。シェルが `claude` が見つからない、または認識されていないと表示される場合は、インストールディレクトリがまだ PATH に含まれていません。[PATH を修正する](/docs/ja/troubleshoot-install#command-not-found-claude-after-installation)を参照してください。56 インストーラーが完了したら、新しいターミナルウィンドウを開いて `claude --version` を実行してください。インストールが正常に完了すると、バージョン番号が表示されます。シェルが `claude` が見つからない、または認識されていないと表示される場合は、インストールディレクトリがまだ PATH に含まれていません。[PATH を修正する](/docs/ja/troubleshoot-install#command-not-found-claude-after-installation)を参照してください。

53 57 

54 `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:\` と表示されます。58 `The token '&&' is not a valid statement separator` というエラーが表示される場合は、CMD ではなく PowerShell を使用しています。`'irm' is not recognized as an internal or external command` というエラーが表示される場合は、PowerShell ではなく CMD を使用しています。

55 59 

56 インストールコマンドが `syntax error near unexpected token '<'`、`403`、またはその他の curl エラーで失敗する場合は、[インストールのトラブルシューティング](/docs/ja/troubleshoot-install#find-your-error)を参照して、エラーを修正方法に照合し、代替インストール方法を確認してください。60 インストールコマンドが `syntax error near unexpected token '<'`、`403`、またはその他のエラーで失敗する場合は、[インストールのトラブルシューティング](/docs/ja/troubleshoot-install#find-your-error)を参照して、エラーを修正方法に照合し、代替インストール方法を確認してください。

57 61 

58 [Git for Windows](https://git-scm.com/downloads/win) は、Claude Code が Bash ツールを使用できるようにネイティブ Windows で推奨されます。Git for Windows がインストールされていない場合、Claude Code はシェルツールとして PowerShell を代わりに使用します。WSL セットアップは Git for Windows を必要としません。62 [Git for Windows](https://git-scm.com/downloads/win) は、Claude Code が Bash ツールを使用できるようにネイティブ Windows で推奨されます。Git for Windows がインストールされていない場合、Claude Code はシェルツールとして PowerShell を代わりに使用します。WSL セットアップは Git for Windows を必要としません。

59 63 


63 </Tab>67 </Tab>

64 68 

65 <Tab title="Homebrew">69 <Tab title="Homebrew">

66 ```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}70 ```bash theme={null}

67 brew install --cask claude-code71 brew install --cask claude-code

68 ```72 ```

69 73 


75 </Tab>79 </Tab>

76 80 

77 <Tab title="WinGet">81 <Tab title="WinGet">

78 ```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}82 ```powershell theme={null}

79 winget install Anthropic.ClaudeCode83 winget install Anthropic.ClaudeCode

80 ```84 ```

81 85 


95 99 

96このコマンドは、バージョン番号の後に `(Claude Code)` を出力します。100このコマンドは、バージョン番号の後に `(Claude Code)` を出力します。

97 101 

98<h2 id="step-2-log-in-to-your-account">102<h2 id="step-2-start-your-first-session">

99 ステップ 2:アカウントにログインする103 ステップ 2: 最初のセッションを開始する

100</h2>104</h2>

101 105 

102Claude Code を使用するにはアカウントが必要です。`claude` コマンドでインタラクティブセッションを開始すると、初回使用時にログインするよう求められます:106任意のプロジェクトディレクトリでターミナルを開き、Claude Code を起動します。

103 107 

104```bash theme={null}108```bash theme={null}

109cd /path/to/your/project

105claude110claude

106```111```

107 112 

108Claude サブスクリプションまたは Console アカウントの場合は、プロンプトに従ってブラウザで認証を完了してください。`ANTHROPIC_API_KEY` 環境変数を設定している場合、Claude Code はログインプロンプトをスキップし、代わりにキーを承認するよう求めます。後でアカウントを切り替えるか再認証するには、実行中のセッション内で `/login` と入力します:113`/path/to/your/project` は、作業したいプロジェクトのパスに置き換えてください。

109 114 

110```text wrap theme={null}115初回使用時には、Claude Code からログインを求められます。Claude サブスクリプションまたは Console アカウントの場合は、表示される指示に従ってブラウザで認証を完了してください。`ANTHROPIC_API_KEY` 環境変数を設定しており、Claude Code からそのキーを使用するかどうか尋ねられた際に承認した場合、Claude Code はログインプロンプトをスキップします。

111/login

112```

113 116 

114以下のいずれかのアカウントタイプを使用してログインできます:117次のいずれかのアカウントタイプでログインできます。

115 118 

116* [Claude Pro、Max、Team、または Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_login)(推奨)119* [Claude Pro、Max、Team、または Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_login)(推奨)

117* [Claude Console](https://platform.claude.com/)(プリペイドクレジット付き API アクセス)。初回ログイン時に、コスト追跡を一元化するために「Claude Code」ワークスペースが Console に自動的に作成されます。120* [Claude Console](https://platform.claude.com/)(前払いクレジットによる API アクセス)。初回ログイン時に、コストを一元的に追跡するための「Claude Code」ワークスペースが Console に自動的に作成されます。

118* [Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry](/docs/ja/third-party-integrations)(エンタープライズクラウドプロバイダー)121* [Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry](/docs/ja/third-party-integrations)(エンタープライズ向けクラウドプロバイダー)

119* 組織が実行している自己ホスト型の [Claude apps gateway](/docs/ja/claude-apps-gateway):管理者がゲートウェイ URL を事前に設定し、`/login` で **Cloud gateway** 画面が直接開き、企業 SSO でサインインできます122* 組織で運用している場合は、セルフホストの [Claude apps ゲートウェイ](/docs/ja/claude-apps-gateway):管理者がゲートウェイ URL を事前に設定しており、`/login` を実行すると **Cloud gateway** 画面が直接開くので、企業の SSO でサインインします

120 

121ログイン後、認証情報が保存され、再度ログインする必要はありません。詳細は [認証情報管理](/docs/ja/authentication#credential-management) をご覧ください。

122 

123<h2 id="step-3-start-your-first-session">

124 ステップ 3:最初のセッションを開始する

125</h2>

126 

127任意のプロジェクトディレクトリでターミナルを開き、Claude Code を開始します:

128 

129```bash theme={null}

130cd /path/to/your/project

131claude

132```

133 123 

134`/path/to/your/project` を、作業したいプロジェクトのパスに置き換えてください。124一度ログインすると認証情報が保存されるため、再度ログインする必要はありません。詳しくは[認証情報の管理](/docs/ja/authentication#credential-management)を参照してください。

135 125 

136Claude Code プロンプトが表示され、バージョン、現在のモデル、および作業ディレクトリが上に表示されます。利用可能なコマンドについては `/help` を入力するか、前の会話を続行するには `/resume` を入力します。126Claude Code のプロンプトが表示され、その上にバージョン、現在のモデル、作業ディレクトリが表示されます。`/help` と入力すると利用可能なコマンドが表示され、`/resume` と入力すると以前の会話を再開できます。後でアカウントを切り替えたり再認証したりするには、実行中のセッション内で `/login` と入力します。

137 127 

138<h2 id="step-4-ask-your-first-question">128<h2 id="step-3-ask-your-first-question">

139 ステップ 4:最初の質問をする129 ステップ 3: 最初の質問をする

140</h2>130</h2>

141 131 

142コードベースを理解することから始めましょう。以下のコマンドのいずれかを試してください:132次のいずれかのコマンドを試してください:

143 133 

144```text wrap theme={null}134```text wrap theme={null}

145what does this project do?135what does this project do?

146```136```

147 137 

148Claude はファイルを分析して概要を提供します。より具体的な質問をすることもできます:138Claude がファイルを分析し、概要を提示します。より具体的な質問をすることもできます:

149 139 

150```text wrap theme={null}140```text wrap theme={null}

151what technologies does this project use?141what technologies does this project use?


159explain the folder structure149explain the folder structure

160```150```

161 151 

162Claude 自体の機能について質問することもできます:152Claude 自身の機能について質問することもできます:

163 153 

164```text wrap theme={null}154```text wrap theme={null}

165what can Claude Code do?155what can Claude Code do?


174```164```

175 165 

176<Note>166<Note>

177 Claude Code は必要に応じてプロジェクトファイルを読み込みます。コンテキストを手動で追加する必要はありません。167 Claude Code は必要に応じてプロジェクトファイルを読み取ります。コンテキストを手動で追加する必要はありません。

178</Note>168</Note>

179 169 

180<h2 id="step-5-make-your-first-code-change">170<h2 id="step-4-make-your-first-code-change">

181 ステップ 5:最初のコード変更を行う171 ステップ 4: 最初のコード変更を行う

182</h2>172</h2>

183 173 

184次に、Claude Code に実際のコーディングを行わせましょう。簡単なタスクを試してください:174小さなタスクを試してみましょう。

185 175 

186```text wrap theme={null}176```text wrap theme={null}

187メインファイルに hello world 関数を追加してください177add a hello world function to the main file

188```178```

189 179 

190Claude Code は適切なファイルを見つけて、変更内容を表示します。変更を行う前に確認を求める場合は、**Yes** を選択して承認してください。180Claude Code は適切なファイルを見つけ、変更内容を表示します。変更を行う前に確認を求められた場合は、**Yes** を選択して承認します。

191 181 

192Claude Code v2.1.283 以降では、auto モードはインタラクティブターミナルセッションの[組み込みの開始権限モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)です。分類器があなたの代わりにアクションをレビューし、Claude はほとんどのファイルを編集し、ほとんどのコマンドをあなたに尋ねることなく実行します。それより前のバージョンでは、auto モードは Pro、Max、Team プランのみで組み込みの開始権限モードです。インストール直後に開始するセッションについては、[インストールまたはアップグレード後の最初のセッション](/docs/ja/env-vars#first-session-after-an-install-or-upgrade)を参照してください。182セッションの[権限モード](/docs/ja/permission-modes)は、Claude が事前に確認せずに実行できるアクションを決定します。`Shift+Tab` を押すと、いつでも現在のセッションの権限モードを切り替えられます。

193 

194<Note>

195 設定またはお客様の組織が異なる開始権限モードを設定できます。[セッションが開始する権限モード](/docs/ja/permission-modes#which-mode-a-session-starts-in)に、その内容が記載されています。いつでも `Shift+Tab` を押して、現在のセッションの権限モードを切り替えることができます。

196</Note>

197 183 

198<h2 id="step-6-use-git-with-claude-code">184<h2 id="step-5-use-git-with-claude-code">

199 ステップ 6:Claude Code で Git を使用する185 ステップ 5:Claude Code で Git を使用する

200</h2>186</h2>

201 187 

202Claude Code は Git 操作を会話形式にします:188Claude Code を使うと、Git の操作を会話形式で行えます:

203 189 

204```text wrap theme={null}190```text wrap theme={null}

205どのファイルを変更しましたか?191what files have I changed?

206```192```

207 193 

208```text wrap theme={null}194```text wrap theme={null}

209説明的なメッセージで変更をコミットしてください195commit my changes with a descriptive message

210```196```

211 197 

212より複雑な Git 操作を求めることもできます:198より複雑な Git 操作をプロンプトで依頼することもできます:

213 199 

214```text wrap theme={null}200```text wrap theme={null}

215feature/quickstart という名前の新しいブランチを作成してください201create a new branch called feature/quickstart

216```202```

217 203 

218```text wrap theme={null}204```text wrap theme={null}

219最後の 5 つのコミットを表示してください205show me the last 5 commits

220```206```

221 207 

222```text wrap theme={null}208```text wrap theme={null}

223マージコンフリクトの解決を手伝ってください209help me resolve merge conflicts

224```210```

225 211 

226<h2 id="step-7-fix-a-bug-or-add-a-feature">212<h2 id="step-6-fix-a-bug-or-add-a-feature">

227 ステップ 7:バグを修正するか機能を追加する213 ステップ 6: バグを修正する、または機能を追加する

228</h2>214</h2>

229 215 

230Claude はデバッグと機能実装に長けています。216やりたいことを自然言語で説明します。

231 

232自然言語で実現したいことを説明します:

233 217 

234```text wrap theme={null}218```text wrap theme={null}

235ユーザー登録フォームに入力検証を追加してください219add input validation to the user registration form

236```220```

237 221 

238または既存の問題を修正します:222既存の問題を修正することもできます。

239 223 

240```text wrap theme={null}224```text wrap theme={null}

241ユーザーが空のフォームを送信できるバグがあります。修正してください225there's a bug where users can submit empty forms - fix it

242```226```

243 227 

244Claude Code は以下を実行します:228<h2 id="step-7-test-out-other-common-workflows">

245 229 ステップ 7: その他の一般的なワークフローを試す

246* 関連するコードを見つける

247* コンテキストを理解する

248* ソリューションを実装する

249* 利用可能な場合はテストを実行する

250 

251<h2 id="step-8-test-out-other-common-workflows">

252 ステップ 8:他の一般的なワークフローを試す

253</h2>230</h2>

254 231 

255Claude と連携する方法は多数あります:232Claude と連携する方法はいくつもあります。

256 233 

257**コードをリファクタリングする**234**コードのリファクタリング**

258 235 

259```text wrap theme={null}236```text wrap theme={null}

260認証モジュールをリファクタリングして、コールバックの代わりに async/await を使用するようにしてください237refactor the authentication module to use async/await instead of callbacks

261```238```

262 239 

263**テストを書く**240**テストの作成**

264 241 

265```text wrap theme={null}242```text wrap theme={null}

266計算機関数のユニットテストを書いてください243write unit tests for the calculator functions

267```244```

268 245 

269**ドキュメントを更新する**246**ドキュメントの更新**

270 247 

271```text wrap theme={null}248```text wrap theme={null}

272インストール手順で README を更新してください249update the README with installation instructions

273```250```

274 251 

275**コードレビュー**252**コードレビュー**

276 253 

277```text wrap theme={null}254```text wrap theme={null}

278変更をレビューして改善を提案してください255review my changes and suggest improvements

279```256```

280 257 

281<Tip>258<Tip>

282 有能な同僚と話すように Claude と話してください。実現したいことを説明すれば、それを実現するのに役立ちます。259 頼りになる同僚に話しかけるように Claude に話しかけてください。達成したいことを説明すれば、Claude がその実現を手助けします。

283</Tip>260</Tip>

284 261 

285<h2 id="essential-commands">262<h2 id="essential-commands">


357 334 

358基本を学習したので、より高度な機能を探索してください:335基本を学習したので、より高度な機能を探索してください:

359 336 

360<CardGroup cols={2}>337* [Claude Code の仕組み](/docs/ja/how-claude-code-works):エージェント型ループ、組み込みツール、および Claude Code がプロジェクトと相互作用する方法を理解する

361 <Card title="Claude Code の仕組み" icon="microchip" href="/docs/ja/how-claude-code-works">338* [ベストプラクティス](/docs/ja/best-practices):効果的なプロンプティングとプロジェクト設定でより良い結果を得る

362 agentic ループ、組み込みツール、および Claude Code がプロジェクトと相互作用する方法を理解する339* [一般的なワークフロー](/docs/ja/common-workflows):一般的なタスクのステップバイステップガイド

363 </Card>340* [Claude Code を拡張する](/docs/ja/features-overview):CLAUDE.md、スキル、フック、MCP などでカスタマイズする

364 

365 <Card title="ベストプラクティス" icon="star" href="/docs/ja/best-practices">

366 効果的なプロンプティングとプロジェクト設定でより良い結果を得る

367 </Card>

368 

369 <Card title="一般的なワークフロー" icon="graduation-cap" href="/docs/ja/common-workflows">

370 一般的なタスクのステップバイステップガイド

371 </Card>

372 341 

373 <Card title="Claude Code を拡張する" icon="puzzle-piece" href="/docs/ja/features-overview">342インストールオプション、手動アップデート、またはアンインストール手順については、[高度なセットアップ](/docs/ja/setup)を参照してください。

374 CLAUDE.md、スキル、フック、MCP などでカスタマイズする

375 </Card>

376</CardGroup>

377 343 

378<h2 id="getting-help">344<h2 id="getting-help">

379 ヘルプを取得する345 ヘルプを取得する

380</h2>346</h2>

381 347 

382* **Claude Code 内**:`/help` を入力するか、「how do I」という質問をする348* **Claude Code 内**:`/help` を入力するか、「how do I」という質問をする

383* **ドキュメント**:ここにいます!他のガイドを参照してください349* **ドキュメント**:このサイトの他のガイドを参照する

384* **コース**:[Claude Code 101](https://academy.claude.com/courses/claude-code-101) と [Claude Academy](https://academy.claude.com/) の他の無料のセルフペースコースを受講する350* **コース**:[Claude Code 101](https://academy.claude.com/courses/claude-code-101) と [Claude Academy](https://academy.claude.com/) の他の無料のセルフペースコースを受講する

385* **コミュニティ**:[Discord サーバー](https://www.anthropic.com/discord) に参加してヒントとサポートを得る351* **コミュニティ**:[Discord サーバー](https://www.anthropic.com/discord) に参加してヒントとサポートを得る

Details

371</h2>371</h2>

372 372 

373* **インタラクティブプロセスごとに 1 つのリモートセッション**: サーバーモード外では、各 Claude Code インスタンスは一度に 1 つのリモートセッションをサポートします。単一プロセスから複数の同時セッションを実行するには、[サーバーモード](#start-a-remote-control-session)を使用してください。373* **インタラクティブプロセスごとに 1 つのリモートセッション**: サーバーモード外では、各 Claude Code インスタンスは一度に 1 つのリモートセッションをサポートします。単一プロセスから複数の同時セッションを実行するには、[サーバーモード](#start-a-remote-control-session)を使用してください。

374* **ローカルプロセスは実行し続ける必要があります**: Remote Control はローカルプロセスとして実行されます。ターミナルを閉じたり、Desktop アプリまたは VS Code を終了したり、`claude` プロセスを停止したりすると、セッションはオフラインになります。セッションを[復帰](#resume-sessions-after-stopping-the-server)させるまでオフラインのままです。SSH から切断した後もリモートマシンでセッションを実行し続けるには、`tmux` または `screen` 内で開始してください。374* **ローカルプロセスを実行し続ける必要がある**: Remote Control はローカルプロセスとして実行されます。ターミナルを閉じたり、Desktop アプリや VS Code を終了したり、その他の方法で `claude` プロセスを停止したりすると、[再開する](#resume-sessions-after-stopping-the-server)までセッションはオフラインになります。リモートマシン上のターミナルから `claude` を実行する場合は、SSH の接続を切断した後もセッションが実行され続けるように、`tmux` または `screen` の中で起動してください。

375* **サーバーモードでのクラッシュしたセッション**: `claude remote-control` で提供されるセッションがクラッシュした場合、接続されたデバイスからメッセージを送信してください。Claude Code はそれを再度提供します。サーバーを再起動する必要はありません。Claude Code v2.1.238 以降が必要です。375* **サーバーモードでのクラッシュしたセッション**: `claude remote-control` で提供されるセッションがクラッシュした場合、接続されたデバイスからメッセージを送信してください。Claude Code はそれを再度提供します。サーバーを再起動する必要はありません。Claude Code v2.1.238 以降が必要です。

376* **接続されたセッションでの HTTP 403 拒否**: インタラクティブセッションが接続されると、VPN またはネットワークの変更後に発生する可能性があるように、マシンと Anthropic のサーバー間の何かが HTTP 403 で応答する場合、Claude Code は最大 3 分間再試行を続けます。拒否が長く続く場合、Claude Code は切断され、理由は何が拒否したかを示します。ネットワークエッジ、またはユーザー自身のネットワーク上のプロキシ、VPN、またはファイアウォールです。376* **接続されたセッションでの HTTP 403 拒否**: インタラクティブセッションが接続されると、VPN またはネットワークの変更後に発生する可能性があるように、マシンと Anthropic のサーバー間の何かが HTTP 403 で応答する場合、Claude Code は最大 3 分間再試行を続けます。拒否が長く続く場合、Claude Code は切断され、理由は何が拒否したかを示します。ネットワークエッジ、またはユーザー自身のネットワーク上のプロキシ、VPN、またはファイアウォールです。

377* **拡張ネットワーク障害**: マシンが起動しているがネットワークに到達できない場合、次に何をするかはモードによって異なります。377* **拡張ネットワーク障害**: マシンが起動しているがネットワークに到達できない場合、次に何をするかはモードによって異なります。

routines.md +1 −1

Details

93 ルーチン用の [cloud environment](/docs/ja/cloud-environments) を選択します。環境は、クラウドセッションがアクセスできるものを制御します。93 ルーチン用の [cloud environment](/docs/ja/cloud-environments) を選択します。環境は、クラウドセッションがアクセスできるものを制御します。

94 94 

95 * **Network access**: 各実行中に利用可能なインターネットアクセスのレベルを設定します95 * **Network access**: 各実行中に利用可能なインターネットアクセスのレベルを設定します

96 * **Environment variables**: Claude が各実行中に使用できる値を提供します。これらは [環境を使用する誰もが見ることができます](/docs/ja/cloud-environments#what-carries-over-from-your-setup)。Pro および Max プランでは、Claude が実行中に呼び出す API のキーを [API credentials](/docs/ja/cloud-environments#add-api-credentials) として保存してください。そのセクションには、認証情報を取得しないリクエストもリストされています96 * **Environment variables**: Claude が各実行中に使用できる値を提供します。これらは[環境を使用するすべてのユーザーに表示される](/docs/ja/cloud-environments#what-carries-over-from-your-setup)ため、Pro および Max プランでは、Claude が実行中に呼び出す API のキーは代わりに[ネットワークシークレット](/docs/ja/cloud-environments#add-api-credentials)として保存してください。そのセクションには、シークレットが付与されないリクエストも記載されています

97 * **Setup script**: ルーチンが必要とする依存関係とツールをインストールします。結果は [cached](/docs/ja/cloud-environments#environment-caching) されるため、スクリプトはセッションごとに再実行されません97 * **Setup script**: ルーチンが必要とする依存関係とツールをインストールします。結果は [cached](/docs/ja/cloud-environments#environment-caching) されるため、スクリプトはセッションごとに再実行されません

98 98 

99 **Default** 環境は **Trusted** ネットワークアクセスで提供されます。これにより、[default allowlist](/docs/ja/cloud-environments#default-allowed-domains) のパッケージレジストリ、クラウドプロバイダー API、コンテナレジストリ、および一般的な開発ドメインのみがセッションのネットワークを通じて許可されます。ルーチンに追加するコネクタは Anthropic のサーバーを通じてサービスに到達するため、許可リストの変更は必要ありません。ルーチンが独自のサービスに直接到達する必要がある場合、またはそのリスト外のドメインに到達する必要がある場合は、実行前に環境の [network access](/docs/ja/cloud-environments#network-access) を編集してください。別の環境を使用するには、最初に [create one](/docs/ja/cloud-environments#configure-your-environment) してください。99 **Default** 環境は **Trusted** ネットワークアクセスで提供されます。これにより、[default allowlist](/docs/ja/cloud-environments#default-allowed-domains) のパッケージレジストリ、クラウドプロバイダー API、コンテナレジストリ、および一般的な開発ドメインのみがセッションのネットワークを通じて許可されます。ルーチンに追加するコネクタは Anthropic のサーバーを通じてサービスに到達するため、許可リストの変更は必要ありません。ルーチンが独自のサービスに直接到達する必要がある場合、またはそのリスト外のドメインに到達する必要がある場合は、実行前に環境の [network access](/docs/ja/cloud-environments#network-access) を編集してください。別の環境を使用するには、最初に [create one](/docs/ja/cloud-environments#configure-your-environment) してください。

Details

104 スクリプト例104 スクリプト例

105</h2>105</h2>

106 106 

107以下のスクリプトは `$CLAUDE_TEST_ENVIRONMENT_ID`(テスト環境の `ccpool_...` ID)に対して完全なループを実行します。これは管理ページの環境詳細ダイアログに表示されるか、[環境作成呼び出し](#create-a-dedicated-test-environment)によって返されます。各返信のセンチネルフレーズをアサートします。キャプチャフックがインストールされ、`E2E_REPLY_DIR` がエクスポートされている実行イメージを使用して、このホストで実行イメージを開始した後、セッションを実行したいリポジトリの git チェックアウトから実行します。107以下のスクリプトは `$CLAUDE_TEST_ENVIRONMENT_ID`(テスト環境の `ccpool_...` ID)に対して完全なループを実行します。これは管理ページの環境詳細ダイアログに表示されるか、[環境作成呼び出し](#create-a-dedicated-test-environment)によって返されます。各返信のセンチネルフレーズをアサートします。キャプチャフックがインストールされ、`E2E_REPLY_DIR` がエクスポートされている実行イメージを使用して、このホストで実行イメージを開始した後、セッションを実行したいリポジトリの git チェックアウトから実行します。まず、[CI からの認証](#authenticate-from-ci)で説明しているとおり、スクリプトを実行するマシンで claude.ai アカウントにサインインします。このサインインを行わないと、最初のディスパッチが `Unable to get organization UUID for cloud session creation` などのエラーで失敗します。

108 108 

109```bash theme={null}109```bash theme={null}

110#!/usr/bin/env bash110#!/usr/bin/env bash

Details

43 <Step title="管理コンソールを開く">43 <Step title="管理コンソールを開く">

44 claude.ai コンソールで、[**Organization settings > Claude Code > Managed settings**](https://claude.ai/admin-settings/claude-code) に移動します。44 claude.ai コンソールで、[**Organization settings > Claude Code > Managed settings**](https://claude.ai/admin-settings/claude-code) に移動します。

45 45 

46 リンクが Claude Code ページではなく別の Organization settings ページにリダイレクトされる場合、アカウントに必要なロールがありません。Admin およびその他の Owner 以外のロールは管理設定を表示または編集できないため、組織内の Owner または Primary Owner に変更を依頼してください。[アクセス制御](#access-control)を参照してください。46 Team または Enterprise の組織で、このページにアクセス権がないと表示された場合は、[Owner または Primary Owner](#access-control) に変更を依頼してください。

47 </Step>47 </Step>

48 48 

49 <Step title="設定を定義する">49 <Step title="設定を定義する">

50 構成を JSON として追加します。`settings.json` で利用可能な[すべての設定](/docs/ja/settings-reference#all-settings)がサポートされており、OS レベルのポリシー配信に制限されているものを除きます。[現在の制限事項](#current-limitations)でその短いリストを参照してください。これには[フック](/docs/ja/hooks)、[環境変数](/docs/ja/env-vars)、および `allowManagedPermissionRulesOnly` などの[管理専用設定](/docs/ja/managed-settings#managed-only-settings)が含まれます。50 設定を JSON として追加します。OS レベルのポリシー配信に限定された設定を除き、[`settings.json` で使用できるすべての設定](/docs/ja/settings-reference#all-settings)がサポートされます。その短いリストについては[現在の制限事項](#current-limitations)を参照してください。これには、[フック](/docs/ja/hooks)、[環境変数](/docs/ja/env-vars)、および `allowManagedPermissionRulesOnly` などの[管理設定専用の設定](/docs/ja/managed-settings#managed-only-settings)が含まれます。

51 51 

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) を追加してください。52 この例では、権限の拒否リストを強制し、ユーザーが権限をバイパスできないようにし、権限ルールを管理設定で定義されたものに制限します。`Bash(curl *)` ルールは [Claude が記述するとおりの](/docs/ja/permissions#bash-rule-limits) `curl` にマッチし、`/usr/bin/curl` や `sh -c 'curl …'` にはマッチしません。コマンドのテキストに依存しないネットワークの強制には、[`allowManagedDomainsOnly` を含む `sandbox` ブロック](/docs/ja/sandboxing#configure-the-sandbox-for-your-organization)を追加してください。

53 53 

54 ```json theme={null}54 ```json theme={null}

55 {55 {


66 }66 }

67 ```67 ```

68 68 

69 Hooks は `settings.json` と同じ形式を使用します。69 フックは `settings.json` と同じ形式を使用します。

70 70 

71 この例は、組織全体のすべてのファイル編集後に監査スクリプトを実行します。71 この例では、組織全体でファイルが編集されるたびに監査スクリプトを実行します。

72 72 

73 ```json theme={null}73 ```json theme={null}

74 {74 {


85 }85 }

86 ```86 ```

87 87 

88 hooks はシェルコマンドを実行するため、インタラクティブセッション内のユーザーは Claude Code がそれらを適用する前に[セキュリティ承認ダイアログ](#security-approval-dialogs)を表示します。88 フックはシェルコマンドを実行するため、対話型セッションのユーザーには、Claude Code がフックを適用する前に[セキュリティ承認ダイアログ](#security-approval-dialogs)が表示されます。

89 89 

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)を参照してください。90 組織が信頼するリポジトリ、バケット、ドメインを [auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)の分類器が把握できるように設定するには、同じ方法で `autoMode` ブロックを配信します。`autoMode` のエントリが分類器のブロック対象にどのように影響するか、および `environment`、`allow`、`soft_deny`、`hard_deny` フィールドに関する重要な警告については、[auto モードを設定する](/docs/ja/auto-mode-config)を参照してください。

91 </Step>91 </Step>

92 92 

93 <Step title="保存してデプロイする">93 <Step title="保存してデプロイする">


96</Steps>96</Steps>

97 97 

98<h3 id="verify-settings-delivery">98<h3 id="verify-settings-delivery">

99 設定配信の確認99 設定の配信を確認する

100</h3>100</h3>

101 101 

102設定が適用されていることを確認するには、ユーザーに Claude Code を再起動するよう依頼します。構成に[セキュリティ承認ダイアログ](#security-approval-dialogs)をトリガーする設定が含まれている場合、ユーザーは Claude Code がそれらを取得する次回時(次回の起動時、またはインタラクティブセッション実行中は 1 時間以内)に管理設定を説明するプロンプトを表示します。また、ユーザーに `/permissions` を実行して有効な権限ルールを表示させることで、管理権限ルールがアクティブであることを確認することもできます。102設定が適用されていることを確認するには、ユーザーに Claude Code を再起動してもらいます。[セキュリティ承認ダイアログ](#security-approval-dialogs)をトリガーする設定が含まれている場合、Claude Code が次に管理設定を取得したとき(次回の起動時、または実行中の対話型セッションでは 1 時間以内)に、ユーザーには管理設定の内容を説明するプロンプトが表示されます。また、ユーザーに `/permissions` を実行してもらい、有効な権限ルールを表示することで、管理された権限ルールが有効になっていることを確認することもできます。

103 103 

104特定のマシンでフェッチ結果を確認するには、ユーザーに `claude doctor` を実行させ、`Managed settings (remote)` 行を読んでください。Claude Code v2.1.248 以降が必要です。この行は 4 つの結果のいずれかを報告します。104特定のマシンでの取得結果を確認するには、ユーザーに `claude doctor` を実行してもらい、`Managed settings (remote)` の行を確認します。Claude Code v2.1.248 以降が必要です。この行には、次の 4 つの結果のいずれかが表示されます。

105 105 

106* 配信された設定が読み込まれた106* 配信された設定が読み込まれた

107* 組織にサーバー管理設定が構成されていない107* 組織にサーバー管理設定が構成されていない

108* フェッチが失敗し、原因と キャッシュされたポリシーがまだ適用されているかどうかを表示108* 取得に失敗した(原因と、キャッシュされたポリシーが引き続き適用されるかどうかが表示されます)

109* Claude Code がフェッチをスキップし、理由を表示。[プラットフォーム可用性](#platform-availability)でスキップするプロバイダーと構成を参照してください109* Claude Code が取得をスキップした(理由が表示されます)。取得をスキップするプロバイダーと構成については、[プラットフォームの対応状況](#platform-availability)を参照してください

110 110 

111フェッチがまだ進行中の場合、行はそれを報告します。111取得がまだ進行中の場合は、この行にその旨が表示されます。

112 112 

113実行中のセッションでは、`/status` はフェッチ失敗後に同じ行を表示し、サードパーティプロバイダー変数やユーザーのシェルでエクスポートされたカスタム `ANTHROPIC_BASE_URL` など、スキップされたフェッチの原因によっては表示されます。113実行中のセッションでは、取得に失敗した後、および取得スキップの原因の一部(ユーザーのシェルでエクスポートされたサードパーティプロバイダーの変数やカスタムの `ANTHROPIC_BASE_URL` など)について、`/status` に同じ行が表示されます。

114 114 

115<h3 id="access-control">115<h3 id="access-control">

116 アクセス制御116 アクセス制御

117</h3>117</h3>

118 118 

119以下のロールがサーバー管理設定を管理できます。119次のロールがサーバー管理設定を管理できます。

120 120 

121* **Primary Owner**121* **Primary Owner**

122* **Owner**122* **Owner**

123 123 

124設定の変更は組織内のすべてのユーザーに適用されるため、信頼できる担当者へのアクセスを制限してください。124設定の変更は組織内のすべてのユーザーに適用されるため、アクセスは信頼できる担当者に限定してください。

125 125 

126<h3 id="managed-only-settings">126<h3 id="managed-only-settings">

127 管理専用設定127 管理設定専用の設定

128</h3>128</h3>

129 129 

130ほとんどの[設定キー](/docs/ja/settings-reference#all-settings)は任意のスコープで機能します。いくつかのキーは管理設定からのみ読み込まれ、ユーザーまたはプロジェクト設定ファイルに配置された場合は効果がありません。権限およびプラグイン制御については[管理専用設定](/docs/ja/managed-settings#managed-only-settings)を参照するか、完全なセットについては[すべての設定](/docs/ja/settings-reference#all-settings)インデックスの Scope 列を読んでください。130ほとんどの[設定キー](/docs/ja/settings-reference#all-settings)はどのスコープでも機能します。一部のキーは管理設定からのみ読み取られ、ユーザーまたはプロジェクトの設定ファイルに配置しても効果はありません。権限とプラグインの制御については[管理設定専用の設定](/docs/ja/managed-settings#managed-only-settings)を参照するか、完全な一覧については[すべての設定](/docs/ja/settings-reference#all-settings)インデックスの Scope 列を確認してください。

131 131 

132<h3 id="current-limitations">132<h3 id="current-limitations">

133 現在の制限事項133 現在の制限事項

134</h3>134</h3>

135 135 

136サーバー管理設定には、以下の制限があります。136サーバー管理設定には次の制限があります。

137 137 

138* 設定は組織内のすべてのユーザーに均一に適用されます。グループごとの構成はまだサポートされていません。138* 設定は組織内のすべてのユーザーに一律に適用されます。グループごとの構成はまだサポートされていません。

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` サーバーのみを受け入れ、ファイルが行う方法で排他的制御を行いません。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` サーバーのみを受け付け、ファイルのように排他的な制御は行いません。

140 140 

141 Claude Code は、その[システムパス](/docs/ja/managed-mcp#exclusive-control-with-managed-mcp-json)にデプロイされた `managed-mcp.json` を管理設定層とは別に読み込むため、サーバー管理設定が有効な場合でもファイルが適用されます。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)の下で選択されたものである場合にのみ実行されます。142* `policyHelper` や `wslInheritsWindowsSettings` など、OS レベルのポリシーソースに限定された設定は反映されません。代わりに MDM またはシステムの `managed-settings.json` ファイルでデプロイしてください。その方法でデプロイされた `policyHelper` は、そのソースが[管理階層内の優先順位](/docs/ja/managed-settings#precedence-within-the-managed-tier)に従って選択されたものである場合にのみ実行されます。

143 143 

144<h2 id="settings-delivery">144<h2 id="settings-delivery">

145 設定配信145 設定配信

sessions.md +3 −3

Details

83* ターミナル:`claude --continue`、`claude --resume <session-id>`、または `claude --resume <name>`(名前が 1 つのセッションと一致する場合)で `-p` なし。Claude Code はセッションが存在していた権限モードを復元します。ただし、表の場合は除きます。`--permission-mode` または `--dangerously-skip-permissions` を渡して復元されたモードをオーバーライドします。83* ターミナル:`claude --continue`、`claude --resume <session-id>`、または `claude --resume <name>`(名前が 1 つのセッションと一致する場合)で `-p` なし。Claude Code はセッションが存在していた権限モードを復元します。ただし、表の場合は除きます。`--permission-mode` または `--dangerously-skip-permissions` を渡して復元されたモードをオーバーライドします。

84* 非対話型:`claude -p --resume` または `claude -p --continue`。Claude Code は新しい `claude -p` 実行が開始される権限モードで実行を開始します。ただし、プランモードで終了したセッションは [以下の条件](#resume-in-plan-mode-with-p)下でプランモードで再開されます。84* 非対話型:`claude -p --resume` または `claude -p --continue`。Claude Code は新しい `claude -p` 実行が開始される権限モードで実行を開始します。ただし、プランモードで終了したセッションは [以下の条件](#resume-in-plan-mode-with-p)下でプランモードで再開されます。

85* VS Code:拡張機能の会話パネル。表は、プランモードで終了した会話のみをカバーします。その他については、[過去の会話を再開](/docs/ja/vs-code#resume-past-conversations)を参照してください。85* VS Code:拡張機能の会話パネル。表は、プランモードで終了した会話のみをカバーします。その他については、[過去の会話を再開](/docs/ja/vs-code#resume-past-conversations)を参照してください。

86* 起動時のセッションピッカー:[セッションピッカー](#use-the-session-picker)から選択したセッション。`claude --resume` だけで開いたか、`claude --from-pr` で開いたか、複数のセッションと一致する名前で開いたかに関わらず。Claude Code は保存された権限モードを復元しません。同じコマンドラインから新しいセッションを開始する権限モードでセッションを開始します。86* 起動時のセッションピッカー:[セッションピッカー](#use-the-session-picker)から選択したセッション。`claude --resume` だけで開いたか、`claude --from-pr` で開いたか、複数のセッションと一致する名前で開いたかに関わらず。Claude Code は、同じコマンドラインから新しいセッションを開始する場合の権限モードでセッションを開始します。ただし、plan モードで終了したセッションは、`--permission-mode`、`--dangerously-skip-permissions`、または `--fork-session` を渡さない限り plan モードで再開されます。それ以外の保存された権限モードは復元されません。

87* セッション内の `/resume`(引数の有無を問わず):Claude Code は保存された権限モードを復元しません。切り替える会話は、現在のセッションが存在する権限モードで続行されます。87* セッション内の `/resume`(引数の有無を問わず):切り替える会話は、現在のセッションが存在する権限モードで続行されます。ただし、plan モードで終了した会話は、`--permission-mode` または `--dangerously-skip-permissions` で Claude Code を起動した場合でも plan モードで再開されます。その会話がこの Claude Code の実行中にすでに開かれていた場合(開始時の会話や、`/clear` または `/resume` で離れた会話など)は、代わりに現在の権限モードで続行されます。

88 88 

89非対話型および VS Code パスでプランモードを復元するには Claude Code v2.1.246 以降が必要です。各行は、セッションが終了した権限モード、ターミナル、非対話型、および VS Code パスのどれで再開するか、および Claude Code が再開されたセッションを開始する権限モードを示します。89非対話型および VS Code パスでプランモードを復元するには Claude Code v2.1.246 以降が必要です。各行は、セッションが終了した権限モード、ターミナル、非対話型、および VS Code パスのどれで再開するか、および Claude Code が再開されたセッションを開始する権限モードを示します。

90 90 

91| セッションが終了した権限モード | 再開方法 | 再開後の権限モード |91| セッションが終了した権限モード | 再開方法 | 再開後の権限モード |

92| :- | :- | :- |92| :- | :- | :- |

93| `bypassPermissions` | ターミナル | 新しいセッションが開始される権限モード。[権限をバイパス](/docs/ja/permission-modes#skip-all-checks-with-bypasspermissions-mode)するには、起動時に 1 つのフラグまたは [ユーザー、`--settings`、または管理設定](/docs/ja/settings-reference#permissions-defaultmode)の `permissions.defaultMode: "bypassPermissions"` で有効にします |93| `bypassPermissions` | ターミナル | 新しいセッションが開始される権限モード。[権限をバイパス](/docs/ja/permission-modes#skip-all-checks-with-bypasspermissions-mode)するには、起動時に 1 つのフラグまたは [ユーザー、`--settings`、または管理設定](/docs/ja/settings-reference#permissions-defaultmode)の `permissions.defaultMode: "bypassPermissions"` で有効にします |

94| `plan` | ターミナル | 新しいセッションが開始される権限モード |94| `plan` | ターミナル | plan モード。`--fork-session` を使用した場合は、新しいセッションが開始される権限モード |

95| `auto` | ターミナル | `auto`。[オートモード要件](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)をアカウントがまだ満たしている場合のみ |95| `auto` | ターミナル | `auto`。[オートモード要件](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)をアカウントがまだ満たしている場合のみ |

96| Manual | ターミナル | [組み込みデフォルト](/docs/ja/permission-modes#which-mode-a-session-starts-in)から新しいセッションがオートモードで開始される場合は Manual。設定ファイルの `defaultMode` が [有効になる](/docs/ja/permission-modes#which-mode-a-session-starts-in)場合、Claude Code は再開されたセッションをそのモードで開始します |96| Manual | ターミナル | [組み込みデフォルト](/docs/ja/permission-modes#which-mode-a-session-starts-in)から新しいセッションがオートモードで開始される場合は Manual。設定ファイルの `defaultMode` が [有効になる](/docs/ja/permission-modes#which-mode-a-session-starts-in)場合、Claude Code は再開されたセッションをそのモードで開始します |

97| `plan` | 非対話型。[以下の条件](#resume-in-plan-mode-with-p)下 | プランモード |97| `plan` | 非対話型。[以下の条件](#resume-in-plan-mode-with-p)下 | プランモード |

setup.md +5 −3

Details

49 curl -fsSL https://claude.ai/install.sh | bash49 curl -fsSL https://claude.ai/install.sh | bash

50 ```50 ```

51 51 

52 Windows では、PowerShell を使用している場合はシェルプロンプトに `PS C:\` と表示され、CMD を使用している場合は `PS` なしで `C:\` と表示されます。

53 

52 **Windows PowerShell:**54 **Windows PowerShell:**

53 55 

54 ```powershell theme={null}56 ```powershell theme={null}


63 65 

64 インストーラーが完了したら、新しいターミナルウィンドウを開いて `claude --version` を実行してください。インストールが正常に完了すると、バージョン番号が表示されます。シェルが `claude` が見つからない、または認識されていないと表示される場合は、インストールディレクトリがまだ PATH に含まれていません。[PATH を修正する](/docs/ja/troubleshoot-install#command-not-found-claude-after-installation)を参照してください。66 インストーラーが完了したら、新しいターミナルウィンドウを開いて `claude --version` を実行してください。インストールが正常に完了すると、バージョン番号が表示されます。シェルが `claude` が見つからない、または認識されていないと表示される場合は、インストールディレクトリがまだ PATH に含まれていません。[PATH を修正する](/docs/ja/troubleshoot-install#command-not-found-claude-after-installation)を参照してください。

65 67 

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:\` と表示されます。68 `The token '&&' is not a valid statement separator` というエラーが表示される場合は、CMD ではなく PowerShell を使用しています。`'irm' is not recognized as an internal or external command` というエラーが表示される場合は、PowerShell ではなく CMD を使用しています。

67 69 

68 インストールコマンドが `syntax error near unexpected token '<'`、`403`、またはその他の curl エラーで失敗する場合は、[インストールのトラブルシューティング](/docs/ja/troubleshoot-install#find-your-error)を参照して、エラーを修正方法に照合し、代替インストール方法を確認してください。70 インストールコマンドが `syntax error near unexpected token '<'`、`403`、またはその他のエラーで失敗する場合は、[インストールのトラブルシューティング](/docs/ja/troubleshoot-install#find-your-error)を参照して、エラーを修正方法に照合し、代替インストール方法を確認してください。

69 71 

70 [Git for Windows](https://git-scm.com/downloads/win) は、Claude Code が Bash ツールを使用できるようにネイティブ Windows で推奨されます。Git for Windows がインストールされていない場合、Claude Code はシェルツールとして PowerShell を代わりに使用します。WSL セットアップは Git for Windows を必要としません。72 [Git for Windows](https://git-scm.com/downloads/win) は、Claude Code が Bash ツールを使用できるようにネイティブ Windows で推奨されます。Git for Windows がインストールされていない場合、Claude Code はシェルツールとして PowerShell を代わりに使用します。WSL セットアップは Git for Windows を必要としません。

71 73 


204 206 

205Claude Code には、Pro、Max、Team、Enterprise、または Console アカウントが必要です。無料の claude.ai プランには Claude Code アクセスは含まれていません。[Amazon Bedrock](/docs/ja/amazon-bedrock)、[Google Cloud の Agent Platform](/docs/ja/google-vertex-ai)、または[Microsoft Foundry](/docs/ja/microsoft-foundry)などのサードパーティ API プロバイダーで Claude Code を使用することもできます。207Claude Code には、Pro、Max、Team、Enterprise、または Console アカウントが必要です。無料の claude.ai プランには Claude Code アクセスは含まれていません。[Amazon Bedrock](/docs/ja/amazon-bedrock)、[Google Cloud の Agent Platform](/docs/ja/google-vertex-ai)、または[Microsoft Foundry](/docs/ja/microsoft-foundry)などのサードパーティ API プロバイダーで Claude Code を使用することもできます。

206 208 

207インストール後、`claude` を実行してブラウザーのプロンプトに従ってログインします。`ANTHROPIC_API_KEY` 環境変数が設定されている場合、Claude Code はブラウザーを開く代わりに、キーを承認するよう 1 回プロンプトを表示します。すべてのアカウントタイプとチームセットアップオプションについては、[認証](/docs/ja/authentication)を参照してください。209インストール後、`claude` を実行してブラウザーのプロンプトに従ってログインします。`ANTHROPIC_API_KEY` 環境変数を設定しており、そのキーを使用するかどうかを Claude Code に尋ねられたときにキーを承認すると、Claude Code はログインプロンプトをスキップします。すべてのアカウントタイプとチームセットアップオプションについては、[認証](/docs/ja/authentication)を参照してください。

208 210 

209<h2 id="update-claude-code">211<h2 id="update-claude-code">

210 Claude Code を更新212 Claude Code を更新

sub-agents.md +3 −3

Details

310 310 

311| フィールド | 必須 | 説明 |311| フィールド | 必須 | 説明 |

312| :- | :- | :- |312| :- | :- | :- |

313| `name` | はい | 一意の識別子(`code-reviewer` や `reviewer-v2` など)。[フック](/docs/ja/hooks#subagentstart)はこの値を `agent_type` として受け取ります。ファイル名は一致する必要はありません。名前に `:` を含めることはできません。これは [plugin-scoped identifiers](/docs/ja/plugins/overview)(`my-plugin:reviewer` など)用に予約されています。Claude Code は `:` を含む名前のファイルを読み込まず、デバッグログにエラーをログします。v2.1.218 より前では、そのような名前は受け入れられていました |313| `name` | はい | 最大 256 文字の一意の識別子(`code-reviewer` や `reviewer-v2` など)。[フック](/docs/ja/hooks#subagentstart)はこの値を `agent_type` として受け取ります。ファイル名は一致する必要はありません。名前に `:` を含めることはできません。これは [プラグインスコープ付き識別子](/docs/ja/plugins/overview)(`my-plugin:reviewer` など)用に予約されています |

314| `description` | はい | Claude がこのサブエージェントに委任すべき場合 |314| `description` | はい | Claude がこのサブエージェントに委任すべき場合 |

315| `tools` | いいえ | サブエージェントが使用できる[ツール](#available-tools)。`Read, Grep, Glob` や YAML リストなどのカンマ区切り文字列として。省略した場合、サブエージェントで利用可能なすべてのツールを継承します。リスト内のエントリがツールに解決されない場合、サブエージェントは通常、エントリに名前を付けるエラーで[起動に失敗](/docs/ja/errors#agent-would-be-spawned-with-zero-tools)します。スキルをコンテキストにプリロードするには、ここで `Skill` をリストするのではなく、`skills` フィールドを使用します |315| `tools` | いいえ | サブエージェントが使用できる[ツール](#available-tools)。`Read, Grep, Glob` や YAML リストなどのカンマ区切り文字列として。省略した場合、サブエージェントで利用可能なすべてのツールを継承します。リスト内のエントリがツールに解決されない場合、サブエージェントは通常、エントリに名前を付けるエラーで[起動に失敗](/docs/ja/errors#agent-would-be-spawned-with-zero-tools)します。スキルをコンテキストにプリロードするには、ここで `Skill` をリストするのではなく、`skills` フィールドを使用します |

316| `disallowedTools` | いいえ | 継承または指定されたリストから削除するツール。`tools` と同じ形式。`Bash(git push *)` などの指定子を持つエントリは、[ツール全体](#available-tools)を削除します |316| `disallowedTools` | いいえ | 継承または指定されたリストから削除するツール。`tools` と同じ形式。`Bash(git push *)` などの指定子を持つエントリは、[ツール全体](#available-tools)を削除します |


348 348 

349* **`name` がない**。Claude Code はファイルをエージェントの横に保持されたドキュメントとして扱います。349* **`name` がない**。Claude Code はファイルをエージェントの横に保持されたドキュメントとして扱います。

350* **ファイルの最初の行ではない開き `---`**。Claude Code はファイルに frontmatter がないと読み取り、ドキュメントとして扱います。350* **ファイルの最初の行ではない開き `---`**。Claude Code はファイルに frontmatter がないと読み取り、ドキュメントとして扱います。

351* **`-` で始まるか `:` を含む `name`**。Claude Code はファイルをスキップし、デバッグログにエラーを書き込みます。上記の表の `name` 行を参照してください。351* **`-` で始まる、`:` を含む、または 256 文字を超える `name`**。Claude Code はファイルをスキップし、デバッグログにエラーを書き込みます。

352* **`name` があるが `description` がない**。Claude Code はファイルをスキップし、理由をデバッグログに書き込みます。352* **`name` があるが `description` がない**。Claude Code はファイルをスキップし、理由をデバッグログに書き込みます。

353* **解析されない YAML**。Claude Code はファイルからフィールドを読み取らず、スキップして、解析エラーをデバッグログに書き込みます。353* **解析されない YAML**。Claude Code はファイルからフィールドを読み取らず、スキップして、解析エラーをデバッグログに書き込みます。

354 354 


1279| 権限 | プロンプトがターミナルに表示 | [バックグラウンド実行時にメインセッションに表示](#run-subagents-in-foreground-or-background) |1279| 権限 | プロンプトがターミナルに表示 | [バックグラウンド実行時にメインセッションに表示](#run-subagents-in-foreground-or-background) |

1280| プロンプトキャッシュ | メインセッションと共有 | 別のキャッシュ |1280| プロンプトキャッシュ | メインセッションと共有 | 別のキャッシュ |

1281 1281 

1282フォークのシステムプロンプトとツール定義は親と同じであるため、最初のリクエストは親の[プロンプトキャッシュ](/docs/ja/prompt-caching#subagents-and-the-cache)を再利用します。これにより、同じコンテキストが必要なタスクの場合、フォークは新しいサブエージェントをスポーンするよりも安価です。1282フォークのシステムプロンプトとツール定義は親と同じであるため、最初のリクエストは親の[プロンプトキャッシュ](/docs/ja/prompt-caching#subagents-and-the-cache)を再利用します。この再利用により、同じコンテキストが必要なタスクの場合、フォークは新しいサブエージェントよりも安価です。

1283 1283 

1284Claude が Agent ツール経由でフォークをスポーンするときに、`isolation: "worktree"` を渡すことができるため、フォークのファイル編集は、チェックアウトではなく、別の git worktree に書き込まれます。フォークはさらにフォークをスポーンできません。1284Claude が Agent ツール経由でフォークをスポーンするときに、`isolation: "worktree"` を渡すことができるため、フォークのファイル編集は、チェックアウトではなく、別の git worktree に書き込まれます。フォークはさらにフォークをスポーンできません。

1285 1285 

vs-code.md +1 −1

Details

606| `environmentVariables` | `[]` | Claude プロセスの環境変数を設定します。共有構成には Claude Code 設定を使用してください。[`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) エントリは、その値が絶対パスである場合にのみ適用されます。拡張機能は `~` を展開せず、相対パスの値は無視します。 |606| `environmentVariables` | `[]` | Claude プロセスの環境変数を設定します。共有構成には Claude Code 設定を使用してください。[`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) エントリは、その値が絶対パスである場合にのみ適用されます。拡張機能は `~` を展開せず、相対パスの値は無視します。 |

607| `disableLoginPrompt` | `false` | 認証プロンプトをスキップします(サードパーティプロバイダーのセットアップ用) |607| `disableLoginPrompt` | `false` | 認証プロンプトをスキップします(サードパーティプロバイダーのセットアップ用) |

608| `allowDangerouslySkipPermissions` | `false` | モードセレクターに権限をバイパスを追加します。インターネットアクセスのないサンドボックスでのみ使用してください。 |608| `allowDangerouslySkipPermissions` | `false` | モードセレクターに権限をバイパスを追加します。インターネットアクセスのないサンドボックスでのみ使用してください。 |

609| `claudeProcessWrapper` | - | Claude プロセスを起動するために使用される実行可能ファイル。バンドルされたバイナリパスが存在する場合、引数として渡されます。プラットフォーム用のバイナリが拡張機能ビルドに含まれていない場合は、別途インストールされた `claude` バイナリに設定します。ラップされたセットアップでは、`initialPermissionMode` を設定するか、以前の会話で Manual、Edit automatically、または Auto を選択していない限り、会話は Manual モードで開始されます。これは、拡張機能が設定とビルトインデフォルトステップをスキップするためです。[Switch permission modes](/docs/ja/permission-modes#switch-permission-modes) を参照してください。アクティベーション時の「Unsupported platform」エラーは、プラットフォーム用にバイナリがバンドルされていないことを意味します。[npm install 後にネイティブバイナリが見つからない](/docs/ja/troubleshoot-install#native-binary-not-found-after-npm-install) を参照してください。 |609| `claudeProcessWrapper` | - | Claude プロセスを起動するために使用される実行可能ファイル。バンドルされたバイナリパスが存在する場合、引数として渡されます。プラットフォーム用のバイナリが拡張機能ビルドに含まれていない場合は、別途インストールされた `claude` バイナリに設定します。 |

610 610 

611<h2 id="use-a-screen-reader">611<h2 id="use-a-screen-reader">

612 スクリーンリーダーを使用する612 スクリーンリーダーを使用する

worktrees.md +3 −1

Details

6 6 

7> 並列 Claude Code セッションを個別の git worktree に分離して、変更が衝突しないようにします。`--worktree` フラグ、サブエージェントの分離、`.worktreeinclude`、クリーンアップ、および非 git VCS フックについて説明します。7> 並列 Claude Code セッションを個別の git worktree に分離して、変更が衝突しないようにします。`--worktree` フラグ、サブエージェントの分離、`.worktreeinclude`、クリーンアップ、および非 git VCS フックについて説明します。

8 8 

9[git worktree](https://git-scm.com/docs/git-worktree) は、独自のファイルとブランチを持つ別の作業ディレクトリであり、メインのチェックアウトと同じリポジトリ履歴とリモートを共有します。各 Claude Code セッションを独自の worktree で実行すると、1 つのセッションでの編集が別のセッションのファイルに触れることはないため、1 つのセッションで機能を構築しながら、2 つ目のセッションでバグを修正できます。9[git worktree](https://git-scm.com/docs/git-worktree) は、独自のファイルとブランチを持つ別の作業ディレクトリであり、メインのチェックアウトと同じリポジトリ履歴とリモートを共有します。各 Claude Code セッションを独自の worktree で実行すると、各セッションが編集用にファイルの個別のコピーを持つため、1 つのセッションで機能を構築しながら、2 つ目のセッションでバグを修正できます。

10 10 

11<Note>11<Note>

12 worktree には git リポジトリが必要です。その他のバージョン管理システムについては、[git のロジックを置き換えるフックを設定](#non-git-version-control)してください。[デスクトップアプリ](/docs/ja/desktop#work-in-parallel-with-sessions)では、セッションの開始時に **worktree** オプションを選択すると、そのセッション専用の worktree が作成されます。12 worktree には git リポジトリが必要です。その他のバージョン管理システムについては、[git のロジックを置き換えるフックを設定](#non-git-version-control)してください。[デスクトップアプリ](/docs/ja/desktop#work-in-parallel-with-sessions)では、セッションの開始時に **worktree** オプションを選択すると、そのセッション専用の worktree が作成されます。


104* **Git のリダイレクト**: Claude Code は、git をメインチェックアウトにリダイレクトする Bash または Monitor コマンドをブロックします。リダイレクトは、`git -C`、`--git-dir`、`GIT_DIR` または `GIT_WORK_TREE` 変数、あるいは git を実行する前のメインチェックアウトへの `cd` によって発生する可能性があります。104* **Git のリダイレクト**: Claude Code は、git をメインチェックアウトにリダイレクトする Bash または Monitor コマンドをブロックします。リダイレクトは、`git -C`、`--git-dir`、`GIT_DIR` または `GIT_WORK_TREE` 変数、あるいは git を実行する前のメインチェックアウトへの `cd` によって発生する可能性があります。

105* **コマンドの形式**: Claude Code は、コマンドが実行する git が worktree 内にとどまることをコマンドテキストから検証できない場合、Bash または Monitor コマンドをブロックします。これは、たとえばコマンド名が実行時に計算される場合、構文を解析できない場合、または `${!name}` や `${ command; }` などの展開がテキストに明記されていないコマンドを実行する可能性がある場合に発生します。Claude Code は、拒否されたコマンドを単純な個別のコマンドに分割するなど、書き直す方法を Claude に伝えます。このチェックをオフにすることはできません。105* **コマンドの形式**: Claude Code は、コマンドが実行する git が worktree 内にとどまることをコマンドテキストから検証できない場合、Bash または Monitor コマンドをブロックします。これは、たとえばコマンド名が実行時に計算される場合、構文を解析できない場合、または `${!name}` や `${ command; }` などの展開がテキストに明記されていないコマンドを実行する可能性がある場合に発生します。Claude Code は、拒否されたコマンドを単純な個別のコマンドに分割するなど、書き直す方法を Claude に伝えます。このチェックをオフにすることはできません。

106 106 

107これらのチェックが読み取るのは、編集の対象となるパス、コマンドが実行されるディレクトリ、およびコマンドのテキストです。シェルコマンドがどのファイルに書き込むかを追跡するチェックはないため、`cp` やシェルのリダイレクトなど、メインチェックアウトで git を実行せずにメインチェックアウトに書き込むコマンドは、これらのチェックでは拒否されません。Claude Code はそのようなコマンドを他のシェルコマンドと同様に扱うため、実行されるか確認を求められるかは、[権限モード](/docs/ja/permission-modes)とルールによって決まります。

108 

107チェックは、Claude Code を起動したリポジトリに適用されます。リンクされた worktree のリンク元であるメインチェックアウトも対象になります。PowerShell コマンドについては、Claude Code は作業ディレクトリのチェックのみを適用します。109チェックは、Claude Code を起動したリポジトリに適用されます。リンクされた worktree のリンク元であるメインチェックアウトも対象になります。PowerShell コマンドについては、Claude Code は作業ディレクトリのチェックのみを適用します。

108 110 

109Claude は各拒否を、worktree の名前と続行方法を示すツールエラーとして受け取ります。拒否されたコマンドについては、[拒否メッセージの意味とその解消方法](/docs/ja/errors#command-blocked-by-the-worktree-isolation-checks) を参照してください。111Claude は各拒否を、worktree の名前と続行方法を示すツールエラーとして受け取ります。拒否されたコマンドについては、[拒否メッセージの意味とその解消方法](/docs/ja/errors#command-blocked-by-the-worktree-isolation-checks) を参照してください。