SpyBara
Go Premium

Documentation 2026-10-08 22:58 UTC to 2026-10-09 15:58 UTC

41 files changed +298 −128. View all changes and history on the product overview
2026
Fri 9 16:59 Thu 8 22:58 Wed 7 23:59 Tue 6 23:59 Mon 5 23:58 Sun 4 23:58 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59
Details

216| オプション | 制御内容 | デフォルト |216| オプション | 制御内容 | デフォルト |

217| :- | :- | :- |217| :- | :- | :- |

218| 最大ターン(`max_turns` / `maxTurns`) | 最大ツール使用往復数 | 制限なし |218| 最大ターン(`max_turns` / `maxTurns`) | 最大ツール使用往復数 | 制限なし |

219| 最大予算(`max_budget_usd` / `maxBudgetUsd`) | 停止前の最大コスト | 制限なし |219| 最大予算(`max_budget_usd` / `maxBudgetUsd`) | ループが停止する推定支出額 | 制限なし |

220 220 

221どちらかの制限に達すると、SDK は対応するエラーサブタイプ(`error_max_turns` または `error_max_budget_usd`)を含む `ResultMessage` を返します。これらのサブタイプをチェックする方法については[結果を処理する](#handle-the-result)を、構文については[`ClaudeAgentOptions`](/docs/ja/agent-sdk/python#claudeagentoptions) / [`Options`](/docs/ja/agent-sdk/typescript#options)を参照してください。221どちらかの制限に達すると、SDK は対応するエラーサブタイプ(`error_max_turns` または `error_max_budget_usd`)を含む `ResultMessage` を返します。これらのサブタイプをチェックする方法については[結果を処理する](#handle-the-result)を、構文については[`ClaudeAgentOptions`](/docs/ja/agent-sdk/python#claudeagentoptions) / [`Options`](/docs/ja/agent-sdk/typescript#options)を参照してください。

222 222 


224 224 

225[ストリーミング入力](/docs/ja/agent-sdk/streaming-vs-single-mode)を使用する場合、ターンが最大ターン制限で終了するときにまだキューに入っているメッセージは、キューに入ったままになります。Claude Code はそれをそのターンの最後のモデル呼び出しに追加しません。メッセージの新しいターンを開始し、そのターンの最大ターン数がリセットされます。予算合計はメッセージ全体で累積し続け、支出が `maxBudgetUsd` に達すると、同じ会話内の後続メッセージは `error_max_budget_usd` 結果で終了します。[`/clear`](/docs/ja/agent-sdk/cost-tracking)は予算をリセットします。225[ストリーミング入力](/docs/ja/agent-sdk/streaming-vs-single-mode)を使用する場合、ターンが最大ターン制限で終了するときにまだキューに入っているメッセージは、キューに入ったままになります。Claude Code はそれをそのターンの最後のモデル呼び出しに追加しません。メッセージの新しいターンを開始し、そのターンの最大ターン数がリセットされます。予算合計はメッセージ全体で累積し続け、支出が `maxBudgetUsd` に達すると、同じ会話内の後続メッセージは `error_max_budget_usd` 結果で終了します。[`/clear`](/docs/ja/agent-sdk/cost-tracking)は予算をリセットします。

226 226 

227<h4 id="budget-headroom">

228 予算の余裕

229</h4>

230 

231Claude Code は、モデルの応答が届いた後に支出を `max_budget_usd` / `maxBudgetUsd` の上限と比較します。各応答のコストは、API がその応答とともに返すトークン使用量から算出されるためです。上限に達した応答もそのまま完了し、[`total_cost_usd`](/docs/ja/agent-sdk/cost-tracking#get-the-total-cost-of-a-query) に計上されます。そのため、支出は最大でその 1 つの応答のコスト分に加え、その時点でまだ実行中のサブエージェントが停止するまでに費やした分だけ上限を超える可能性があります。上限を設定する際は、この分の余裕を見込んでください。

232 

227<h3 id="effort-level">233<h3 id="effort-level">

228 努力レベル234 努力レベル

229</h3>235</h3>

Details

146| `auto` | モデル分類承認 | モデル分類器がシェルコマンドやネットワークリクエストなどのアクションをレビューし、レビューする各アクションを許可またはブロックします。利用可能性と決定順序については [自動モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) を参照してください |146| `auto` | モデル分類承認 | モデル分類器がシェルコマンドやネットワークリクエストなどのアクションをレビューし、レビューする各アクションを許可またはブロックします。利用可能性と決定順序については [自動モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) を参照してください |

147 147 

148<Warning>148<Warning>

149 **サブエージェント継承:** サブエージェントは、その [`AgentDefinition`](/docs/ja/agent-sdk/typescript#agentdefinition) で `permissionMode` を設定し、親セッションが `default`、`dontAsk`、または `plan` モードにある場合を除き、親セッションの権限モードで実行されます。その場合でも、Claude Code は `"bypassPermissions"` 値を適用しません。サブエージェントは、親セッション自体が `bypassPermissions` モードにある場合にのみ、`bypassPermissions` モードで実行されます。`bypassPermissions` 例外には Claude Code v2.1.267 以降が必要です。149 **サブエージェント継承:** サブエージェントは、その [`AgentDefinition`](/docs/ja/agent-sdk/typescript#agentdefinition) で `permissionMode` を設定し、親セッションが `default`、`dontAsk`、または `plan` モードにある場合を除き、親セッションの権限モードで実行されます。その場合でも、Claude Code は `"bypassPermissions"` 値を適用せず、`"auto"` 値はそのサブエージェントで [auto モードが利用可能](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode) な場合にのみ適用します。サブエージェントは、親セッション自体が `bypassPermissions` モードにある場合にのみ、`bypassPermissions` モードで実行されます。`bypassPermissions` 例外には Claude Code v2.1.267 以降が必要です。

150 150 

151 サブエージェントは、メインエージェントとは異なるシステムプロンプトを持つ可能性があり、動作がより制約されていないため、`bypassPermissions` を継承すると、完全で自律的なシステムアクセスが付与されます。[モードが自動承認しないアクション](/docs/ja/permission-modes#actions-no-mode-auto-approves) は引き続き適用されます。151 サブエージェントは、メインエージェントとは異なるシステムプロンプトを持つ可能性があり、動作がより制約されていないため、`bypassPermissions` を継承すると、完全で自律的なシステムアクセスが付与されます。[モードが自動承認しないアクション](/docs/ja/permission-modes#actions-no-mode-auto-approves) は引き続き適用されます。

152</Warning>152</Warning>

Details

928| `resume` | `str \| None` | `None` | 再開するセッションID |928| `resume` | `str \| None` | `None` | 再開するセッションID |

929| `session_id` | `str \| None` | `None` | 自動生成されたIDの代わりに特定のセッションIDを使用します。有効なUUIDである必要があります。`fork_session`も設定されていない限り、`continue_conversation`または`resume`と組み合わせることはできません |929| `session_id` | `str \| None` | `None` | 自動生成されたIDの代わりに特定のセッションIDを使用します。有効なUUIDである必要があります。`fork_session`も設定されていない限り、`continue_conversation`または`resume`と組み合わせることはできません |

930| `max_turns` | `int \| None` | `None` | 最大agentic ターン(ツール使用ラウンドトリップ) |930| `max_turns` | `int \| None` | `None` | 最大agentic ターン(ツール使用ラウンドトリップ) |

931| `max_budget_usd` | `float \| None` | `None` | クライアント側のコスト推定がこのUSD値に達したときにクエリを停止します。呼び出し自体の支出のみをカウントします。再開されたセッションから復元された合計はカウントされません。精度の注意事項とリセット動作については、[コストと使用状況を追跡](/docs/ja/agent-sdk/cost-tracking)を参照してください |931| `max_budget_usd` | `float \| None` | `None` | クライアント側のコスト推定がこのUSD値に達したときにクエリを停止します。推定値はこの値を超える場合があるため、[余裕を持たせてください](/docs/ja/agent-sdk/agent-loop#budget-headroom)。呼び出し自体の支出のみをカウントします。再開されたセッションから復元された合計はカウントされません。精度の注意事項とリセット動作については、[コストと使用状況を追跡](/docs/ja/agent-sdk/cost-tracking)を参照してください |

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

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

934| `model` | `str \| None` | `None` | Claudeモデルエイリアスまたは完全なモデル名。[受け入れられた値とプロバイダー固有のID](/docs/ja/model-config#available-models)を参照してください |934| `model` | `str \| None` | `None` | Claudeモデルエイリアスまたは完全なモデル名。[受け入れられた値とプロバイダー固有のID](/docs/ja/model-config#available-models)を参照してください |


987```987```

988 988 

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

990* `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`に引き上げ、この変数の上限を削除します。990* `CLAUDE_CODE_MAX_RETRIES`:最大APIリトライ。デフォルト`10`、上限`15`。各リトライは独自の`API_TIMEOUT_MS`ウィンドウを取得します。

991 

992 無人実行で長い停止を待つ必要がある場合は、[`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/ja/errors#tune-retry-behavior)を設定します:一時的な容量エラーを無限に再試行し、Claude Code v2.1.199以降では、他の一時的なエラーのデフォルトを`300`に引き上げ、この変数の上限を削除します。

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

992 994 

993 タイマーは各ストリームイベントでリセットされます。停止時、Claude Codeはサブエージェントを中止し、停止を親に報告します。バックグラウンドサブエージェントの場合、タスクも失敗とマークし、部分的な結果を添付します。995 タイマーは各ストリームイベントでリセットされます。停止時、Claude Codeはサブエージェントを中止し、停止を親に報告します。バックグラウンドサブエージェントの場合、タスクも失敗とマークし、部分的な結果を添付します。


2877 2879 

2878サブエージェントからの結果を返します。出力は `status` フィールドで判別されます。完了したタスクの場合は `"completed"`、バックグラウンドタスクの場合は `"async_launched"`、Claude Code がクラウドセッションにディスパッチしたタスクの場合は `"remote_launched"`。`sessionUrl` はそのセッションにリンクし、`taskId` がそれを識別します。Claude Code が [サブエージェントの分離 worktree を保持した](/docs/ja/worktrees#isolate-subagents-with-worktrees) 場合、`completed` バリアントの `worktreePath` はそれを見つける場所であり、`worktreeBranch` は Claude Code が git で worktree を作成した場合のそのブランチです。2880サブエージェントからの結果を返します。出力は `status` フィールドで判別されます。完了したタスクの場合は `"completed"`、バックグラウンドタスクの場合は `"async_launched"`、Claude Code がクラウドセッションにディスパッチしたタスクの場合は `"remote_launched"`。`sessionUrl` はそのセッションにリンクし、`taskId` がそれを識別します。Claude Code が [サブエージェントの分離 worktree を保持した](/docs/ja/worktrees#isolate-subagents-with-worktrees) 場合、`completed` バリアントの `worktreePath` はそれを見つける場所であり、`worktreeBranch` は Claude Code が git で worktree を作成した場合のそのブランチです。

2879 2881 

2880`completed` バリアントでは、`resolvedModel` はサブエージェントが開始したモデルを名付けます。これは [`availableModels`](/docs/ja/model-config#restrict-model-selection) または別のオーバーライドが適用される場合、リクエストされた `model` 入力と異なる場合があります。このフィールドには Claude Code v2.1.174 以降が必要です。`async_launched` バリアントでは、`resolvedModel` はエージェントがバックグラウンドに移動したときに使用中のモデルを名付けるため、バックグラウンド化前に発生したスワップがそこに反映されます。両方のバリアントの `modelsUsed` フィールドは、使用されたモデルを順序で列挙し、連続する繰り返しは折りたたまれます。モデルが実行中にスワップされた場合にのみ設定されます。`modelsUsed` とバックグラウンド化時の `resolvedModel` 動作には Claude Code v2.1.212 以降が必要です。2882`completed` バリアントでは、`resolvedModel` はサブエージェントが開始したモデルを名付けます。これは [`availableModels`](/docs/ja/model-config#restrict-model-selection) または別の上書きが適用される場合、リクエストされた `model` 入力と異なる場合があります。このフィールドには Claude Code v2.1.174 以降が必要です。`async_launched` バリアントでは、`resolvedModel` はエージェントがバックグラウンドに移動したときに使用中のモデルを名付けるため、バックグラウンド化前に発生したスワップがそこに反映されます。両方のバリアントの `modelsUsed` フィールドは、使用されたモデルを順序で列挙し、連続する繰り返しは折りたたまれます。モデルが実行中にスワップされた場合にのみ設定されます。`modelsUsed` とバックグラウンド化時の `resolvedModel` 動作には Claude Code v2.1.212 以降が必要です。

2881 2883 

2882Claude Code は `usage` と `totalTokens` をサブエージェントの最終 API リクエストから入力します。実行全体からではありません。存在する場合、`usage` 内の `output_tokens_details` の下の `thinking_tokens` はそのリクエストの出力トークンのうち思考トークンであった数です。`output_tokens_details` キーには Python SDK v0.2.136 以降が必要です。これは Claude Code v2.1.228 をバンドルしています。`fallback_credit` キーには Python SDK v0.2.162 以降が必要です。これは Claude Code v2.1.285 をバンドルしています。2884Claude Code は `usage` と `totalTokens` をサブエージェントの最終 API リクエストから入力します。実行全体からではありません。存在する場合、`usage` 内の `output_tokens_details` の下の `thinking_tokens` はそのリクエストの出力トークンのうち思考トークンであった数です。`output_tokens_details` キーには Python SDK v0.2.136 以降が必要です。これは Claude Code v2.1.228 をバンドルしています。`fallback_credit` キーには Python SDK v0.2.162 以降が必要です。これは Claude Code v2.1.285 をバンドルしています。

2883 2885 


2908 }2910 }

2909 ],2911 ],

2910 "answers": dict[str, str] | None,2912 "answers": dict[str, str] | None,

2911 # パーミッションシステムによって入力されたユーザーの回答。マルチセレクト2913 # 権限システムによって入力されたユーザーの回答。マルチセレクト

2912 # 回答は選択されたラベルのカンマ区切り文字列です。入力時はラベルのリストが受け入れられ、その形式に強制されます2914 # 回答は選択されたラベルのカンマ区切り文字列です。入力時はラベルのリストが受け入れられ、その形式に強制されます

2913 "annotations": dict[str, dict] | None,2915 "annotations": dict[str, dict] | None,

2914 # 質問テキストでキーされたユーザーからの質問ごとのアノテーション。2916 # 質問テキストでキーされたユーザーからの質問ごとのアノテーション。


2979 2981 

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

2981 2983 

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

2983 2985 

2984**入力:**2986**入力:**

2985 2987 


3326{3328{

3327 "url": str, # コンテンツを取得する URL3329 "url": str, # コンテンツを取得する URL

3328 "prompt": str, # 取得したコンテンツで実行するプロンプト3330 "prompt": str, # 取得したコンテンツで実行するプロンプト

3331 "offset": int | None, # ページの先頭からスキップする文字数。Python Agent SDK 0.2.164 以降が必要

3329}3332}

3330```3333```

3331 3334 


3547 3550 

3548Claude Code v2.1.277 で削除されました。以前は実行中または完了したバックグラウンドタスクから出力を取得し、`BashOutput` はエイリアスとして受け入れられていました。Claude はバックグラウンドタスクの出力ファイルを `Read` で読み込みます。3551Claude Code v2.1.277 で削除されました。以前は実行中または完了したバックグラウンドタスクから出力を取得し、`BashOutput` はエイリアスとして受け入れられていました。Claude はバックグラウンドタスクの出力ファイルを `Read` で読み込みます。

3549 3552 

3550`disallowed_tools` エントリまたはいずれかの名前をまだ名付けている拒否ルールは、警告なしに無視されます。3553`disallowed_tools` エントリまたはいずれかの名前をまだ指定している拒否ルールは、警告なしに無視されます。

3551 3554 

3552<h3 id="taskstop">3555<h3 id="taskstop">

3553 TaskStop3556 TaskStop

Details

323 サブエージェント呼び出しの検出323 サブエージェント呼び出しの検出

324</h2>324</h2>

325 325 

326Claude はエージェントツールを通じてサブエージェントを呼び出します。サブエージェントが呼び出されたときを検出するには、`name` が `"Agent"` である `tool_use` ブロックをチェックしてください。サブエージェントのコンテキスト内からのメッセージには、`parent_tool_use_id` フィールドが含まれます。326Claude はエージェントツールを通じてサブエージェントを呼び出します。サブエージェントが呼び出されたときを検出するには、`name` が `"Agent"` である `tool_use` ブロックをチェックしてください。

327 

328サブエージェントのコンテキスト内からのメッセージには、`parent_tool_use_id` フィールドが含まれます。TypeScript では、サブエージェントが生成する各アシスタントメッセージおよびユーザーメッセージに [`agent_id`](/docs/ja/agent-sdk/typescript#sdkassistantmessage) も含まれます。これは、そのサブエージェントの[タスクイベント](/docs/ja/agent-sdk/typescript#sdktaskstartedmessage)の `task_id` です。`agent_id` には TypeScript Agent SDK v0.3.292 以降が必要です。

327 329 

328<Note>330<Note>

329 このツールは `tool_use` ブロックでは `"Agent"` として表示されますが、`system:init` ツールリストでは `"Task"` として表示されます。Claude Code v2.1.63 より前では、`tool_use` ブロックもこれを `"Task"` と名付けていました。SDK バージョン間で検出が機能し続けるようにするには、`block.name` で両方の値に一致させてください。331 このツールは `tool_use` ブロックでは `"Agent"` として表示されますが、`system:init` ツールリストでは `"Task"` として表示されます。Claude Code v2.1.63 より前では、`tool_use` ブロックもこれを `"Task"` と名付けていました。SDK バージョン間で検出が機能し続けるようにするには、`block.name` で両方の値に一致させてください。


331 333 

332メッセージ構造は SDK 間で異なります。Python では、`message.content` を通じてコンテンツブロックに直接アクセスします。TypeScript では、`SDKAssistantMessage` が Claude API メッセージをラップするため、`message.message.content` を通じてコンテンツにアクセスします。334メッセージ構造は SDK 間で異なります。Python では、`message.content` を通じてコンテンツブロックに直接アクセスします。TypeScript では、`SDKAssistantMessage` が Claude API メッセージをラップするため、`message.message.content` を通じてコンテンツにアクセスします。

333 335 

334この例は、ストリーミングされたメッセージを反復処理し、サブエージェントが呼び出されたときと、その後のメッセージがそのサブエージェントの実行コンテキスト内から発信されたときをログに記録します。336この例は、ストリーミングされたメッセージを反復処理し、サブエージェントが呼び出されたときと、その後のメッセージがそのサブエージェントの実行コンテキスト内から発信されたときをログに記録します。TypeScript 版では、`agent_id` を持つ各サブエージェントメッセージについて、その `agent_id` もログに記録します。

335 337 

336<CodeGroup>338<CodeGroup>

337 ```python Python theme={null}339 ```python Python theme={null}


403 // Check if this message is from within a subagent's context405 // Check if this message is from within a subagent's context

404 if (msg.parent_tool_use_id) {406 if (msg.parent_tool_use_id) {

405 console.log(" (running inside subagent)");407 console.log(" (running inside subagent)");

408 // On assistant and user messages, agent_id matches the task_id

409 // on that subagent's task_started and other task events

410 if (msg.agent_id) {

411 console.log(` agent_id: ${msg.agent_id}`);

412 }

406 }413 }

407 414 

408 if ("result" in message) {415 if ("result" in message) {

Details

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

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

571| `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 エントリです |571| `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 エントリです |

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

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

574| `maxTurns` | `number` | `undefined` | エージェントの最大ターン数(ツール使用のラウンドトリップ) |574| `maxTurns` | `number` | `undefined` | エージェントの最大ターン数(ツール使用のラウンドトリップ) |

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


631```631```

632 632 

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

634* `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` に引き上げられ、この変数の上限が撤廃されます。634* `CLAUDE_CODE_MAX_RETRIES`: API の最大再試行回数。デフォルトは `10` で、上限は `15` です。再試行ごとに独自の `API_TIMEOUT_MS` の時間枠が与えられます。

635 

636 より長い障害の間も待機し続ける必要がある無人実行では、[`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/ja/errors#tune-retry-behavior) を設定します。これにより一時的な容量エラーは無期限に再試行され、Claude Code v2.1.199 以降では、その他の一時的なエラーのデフォルトが `300` に引き上げられ、この変数の上限も撤廃されます。

635* `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` でした。

636 638 

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


1561 parent_tool_use_id: string | null;1563 parent_tool_use_id: string | null;

1562 error?: SDKAssistantMessageError;1564 error?: SDKAssistantMessageError;

1563 aborted?: true;1565 aborted?: true;

1566 agent_id?: string;

1564 timestamp?: string;1567 timestamp?: string;

1565 context_usage?: SDKContextUsage;1568 context_usage?: SDKContextUsage;

1566 user_message_uuid?: string;1569 user_message_uuid?: string;


1580 1583 

1581`aborted` は、ストリームが完了する前に中断または中止によってアシスタントメッセージが切り詰められた場合に `true` になります。このときメッセージには `stop_reason` がなく、内容が単語の途中で終わっている可能性があります。正常に完了したメッセージにはこのフィールドはありません。Agent SDK v0.3.214 以降が必要です。1584`aborted` は、ストリームが完了する前に中断または中止によってアシスタントメッセージが切り詰められた場合に `true` になります。このときメッセージには `stop_reason` がなく、内容が単語の途中で終わっている可能性があります。正常に完了したメッセージにはこのフィールドはありません。Agent SDK v0.3.214 以降が必要です。

1582 1585 

1586`agent_id` はメッセージを生成したサブエージェントを識別し、メインスレッドのメッセージには存在しません。値は、そのサブエージェントの [`task_started`](#sdktaskstartedmessage) およびその他のタスクイベントの `task_id` と同じで、サブエージェントが[再開](/docs/ja/agent-sdk/subagents#resume-subagents)されても変わりません。このフィールドには Agent SDK v0.3.292 以降が必要です。

1587 

1588サブエージェントのメッセージをタスクイベントと対応付けるには、メッセージの `parent_tool_use_id` とタスクイベントの `tool_use_id` を組み合わせるのではなく、`agent_id` で照合してください。ツール呼び出しがサブエージェントを再開すると、タスクイベントにはその呼び出しの `tool_use_id` が含まれますが、メッセージはサブエージェントを最初に開始したツール呼び出しの `parent_tool_use_id` を保持するため、両者は一致しなくなります。

1589 

1583Claude Code は、[`user_message_uuid`](#user_message_uuid) に記載された条件のもとで、ターンの最初のアシスタントメッセージに `user_message_uuid` と `user_message_uuids` を設定します。再起動によって中断されたターンを Claude Code が再実行する場合、再実行でこれらのフィールドを持つアシスタントメッセージには [`resume_reason`](#resume_reason) も含まれます。1590Claude Code は、[`user_message_uuid`](#user_message_uuid) に記載された条件のもとで、ターンの最初のアシスタントメッセージに `user_message_uuid` と `user_message_uuids` を設定します。再起動によって中断されたターンを Claude Code が再実行する場合、再実行でこれらのフィールドを持つアシスタントメッセージには [`resume_reason`](#resume_reason) も含まれます。

1584 1591 

1585`timestamp` は、メッセージを生成したプロセス上でそのメッセージの内容の生成が完了した時刻を ISO 8601 形式で表します。値はそのマシンの時計に基づくため、表示目的にのみ使用し、メッセージの並べ替えには使用しないでください。1 回の API ターンで、同じ `message.id` を共有する複数のアシスタントメッセージが生成されることがあり、それぞれが独自の `timestamp` を持ちます。このフィールドがない場合は、メッセージを受信した時刻で代用してください。1592`timestamp` は、メッセージを生成したプロセス上でそのメッセージの内容の生成が完了した時刻を ISO 8601 形式で表します。値はそのマシンの時計に基づくため、表示目的にのみ使用し、メッセージの並べ替えには使用しないでください。1 回の API ターンで、同じ `message.id` を共有する複数のアシスタントメッセージが生成されることがあり、それぞれが独自の `timestamp` を持ちます。このフィールドがない場合は、メッセージを受信した時刻で代用してください。


1597 type: "user";1604 type: "user";

1598 uuid?: UUID;1605 uuid?: UUID;

1599 session_id?: string;1606 session_id?: string;

1607 agent_id?: string;

1600 message: MessageParam; // From Anthropic SDK1608 message: MessageParam; // From Anthropic SDK

1601 pasted_content?: MessageParam["content"][];1609 pasted_content?: MessageParam["content"][];

1602 parent_tool_use_id: string | null;1610 parent_tool_use_id: string | null;


1636};1644};

1637```1645```

1638 1646 

1647サブエージェントが生成するユーザーメッセージ(自身のツール呼び出しの `tool_result` など)には `agent_id` が含まれます。このフィールドとそのバージョン要件を定義している [`SDKAssistantMessage`](#sdkassistantmessage) を参照してください。

1648 

1639`tool_result` ブロックを含むメッセージでは、`tool_use_result` はモデルに送信されるテキストではなく、ツールの構造化された出力オブジェクトです。その形状は対応する `tool_use` ブロックで指定されたツールによって異なるため、このフィールドの型は `unknown` です。組み込みの形状は [Tool Output Types](#tool-output-types) に記載されています。次の結果には、記載された形状以上の処理が必要です。1649`tool_result` ブロックを含むメッセージでは、`tool_use_result` はモデルに送信されるテキストではなく、ツールの構造化された出力オブジェクトです。その形状は対応する `tool_use` ブロックで指定されたツールによって異なるため、このフィールドの型は `unknown` です。組み込みの形状は [Tool Output Types](#tool-output-types) に記載されています。次の結果には、記載された形状以上の処理が必要です。

1640 1650 

1641* `Agent` ツール: `tool_use_result` は [`AgentOutput`](#agent-2) です。`tool_result` のテキストを解析するのではなく、これを元に表示してください。`completed` の結果の `content` にはサブエージェントのレポートが含まれます。ただし、レポートを `SubagentHandback` ツール呼び出しで渡すサブエージェントの場合は、レポートの代わりにその引き渡しに関する短い注記が含まれます。Claude Code v2.1.271 以降の [auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)では、`completed` の結果を生成するすべてのサブエージェントは、[フォーク](/docs/ja/sub-agents#fork-the-current-conversation)でない限りこの方法でレポートし、Claude はレポートをサブエージェントからの別のメッセージとして受け取ります。1651* `Agent` ツール: `tool_use_result` は [`AgentOutput`](#agent-2) です。`tool_result` のテキストを解析するのではなく、これを元に表示してください。`completed` の結果の `content` にはサブエージェントのレポートが含まれます。ただし、レポートを `SubagentHandback` ツール呼び出しで渡すサブエージェントの場合は、レポートの代わりにその引き渡しに関する短い注記が含まれます。Claude Code v2.1.271 以降の [auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)では、`completed` の結果を生成するすべてのサブエージェントは、[フォーク](/docs/ja/sub-agents#fork-the-current-conversation)でない限りこの方法でレポートし、Claude はレポートをサブエージェントからの別のメッセージとして受け取ります。


1992 `SDKPartialAssistantMessage`2002 `SDKPartialAssistantMessage`

1993</h3>2003</h3>

1994 2004 

1995ストリーミングの部分メッセージです(`includePartialMessages` が true の場合のみ)。`parent_tool_use_id` フィールドは常に `null` です。ストリームイベントはメインセッションに対してのみ出力されます。サブエージェントへの帰属を判定するには、`parent_tool_use_id` を持つ完全なメッセージを使用するか、[`forwardSubagentText`](#options) を有効にしてサブエージェントのテキストと思考を完全なメッセージとして受け取ってください。2005ストリーミングの部分メッセージです(`includePartialMessages` が true の場合のみ)。

2006 

2007`parent_tool_use_id` フィールドは常に `null` です。ストリームイベントはメインセッションに対してのみ出力されます。サブエージェントへの帰属を判断するには、[`agent_id`](#sdkassistantmessage) と `parent_tool_use_id` を含む完全なメッセージを使用するか、[`forwardSubagentText`](#options) を有効にしてサブエージェントのテキストと思考を完全なメッセージとして受け取ってください。

1996 2008 

1997```typescript theme={null}2009```typescript theme={null}

1998type SDKPartialAssistantMessage = {2010type SDKPartialAssistantMessage = {


3416type WebFetchInput = {3428type WebFetchInput = {

3417 url: string;3429 url: string;

3418 prompt: string;3430 prompt: string;

3431 offset?: number;

3419};3432};

3420```3433```

3421 3434 

3422URL からコンテンツを取得し、AI モデルで処理します。3435URL からコンテンツを取得し、AI モデルで処理します。

3423 3436 

3437`offset` はページの先頭からスキップする文字数です。Claude は長いページを読み進めるためにこれを設定します。このフィールドには Agent SDK v0.3.290 以降が必要です。

3438 

3424<h3 id="websearch">3439<h3 id="websearch">

3425 WebSearch3440 WebSearch

3426</h3>3441</h3>


5775 task_type?: string;5790 task_type?: string;

5776 is_backgrounded?: boolean;5791 is_backgrounded?: boolean;

5777 spawn_depth?: number;5792 spawn_depth?: number;

5793 parent_task_id?: string;

5778 ambient?: boolean;5794 ambient?: boolean;

5779 uuid: UUID;5795 uuid: UUID;

5780 session_id: string;5796 session_id: string;


5792 5808 

5793[再開されたサブエージェント](/docs/ja/agent-sdk/subagents#resume-subagents) は常に `is_backgrounded: true` を報告します。Claude Code はすべての再開されたサブエージェントをバックグラウンドで実行するためです。フォアグラウンドタスクが後でバックグラウンドに移動する場合、Claude Code は 2 番目の `task_started` を送信するのではなく、新しい `is_backgrounded` 値を [`task_updated`](#sdktaskupdatedmessage) メッセージで報告します。5809[再開されたサブエージェント](/docs/ja/agent-sdk/subagents#resume-subagents) は常に `is_backgrounded: true` を報告します。Claude Code はすべての再開されたサブエージェントをバックグラウンドで実行するためです。フォアグラウンドタスクが後でバックグラウンドに移動する場合、Claude Code は 2 番目の `task_started` を送信するのではなく、新しい `is_backgrounded` 値を [`task_updated`](#sdktaskupdatedmessage) メッセージで報告します。

5794 5810 

5811`parent_task_id` は、このタスクを起動したサブエージェントの `task_id` を保持します。これを使用して、各タスクをそれを開始したサブエージェントの下にグループ化してください。Claude Code はサブエージェント、Bash、[Monitor](#monitor) タスクでこれを設定します。フィールドには Agent SDK v0.3.292 以降が必要です。以下の場合は存在しません。

5812 

5813* メインスレッドがタスクを起動した場合

5814* Claude Code が親タスクを追跡しなくなった場合

5815* [チームメイト](/docs/ja/agent-teams) またはワークフロー内のエージェントがタスクを起動した場合

5816 

5817親はフォアグラウンドタスクの場合や、すでに終了したタスクの場合もあるため、認識しない ID は親なしとして扱ってください。

5818 

5795<h3 id="sdktaskprogressmessage">5819<h3 id="sdktaskprogressmessage">

5796 `SDKTaskProgressMessage`5820 `SDKTaskProgressMessage`

5797</h3>5821</h3>


5848 `SDKBackgroundTasksChangedMessage`5872 `SDKBackgroundTasksChangedMessage`

5849</h3>5873</h3>

5850 5874 

5851ライブバックグラウンドタスクのセットが変わるたびに発行されます。タスクの開始、完了、キル、フォアグラウンドエージェントのバックグラウンド化、またはタスクの `description` または `ambient` フィールドの変更などです。5875ライブバックグラウンドタスクのセットが変わるたびに発行されます。タスクの開始、完了、キル、フォアグラウンドエージェントのバックグラウンド化、またはタスクの `description`、`ambient`、`parent_task_id` フィールドの変更などです。各エントリの `parent_task_id` フィールドについては、それとそのバージョン要件を定義している [`SDKTaskStartedMessage`](#sdktaskstartedmessage) を参照してください。

5852 5876 

5853`tasks` 配列はライブセット全体です。`task_started` および `task_notification` イベントをペアリングするのではなく、各ペイロードでキャッシュされたセットを置き換えてください。そうすれば、次のメンバーシップ変更で逃したイベントが修正されます。5877`tasks` 配列はライブセット全体です。`task_started` および `task_notification` イベントをペアリングするのではなく、各ペイロードでキャッシュされたセットを置き換えてください。そうすれば、次のメンバーシップ変更で逃したイベントが修正されます。

5854 5878 

5855これらのタスクごとのイベントに対する順序付けは指定されていないため、2 つのストリームを相関させないでください。5879タスクが終了すると、その [`task_updated`](#sdktaskupdatedmessage) と [`task_notification`](#sdktasknotificationmessage) は、それをリストから削除する `background_tasks_changed` より前に到着します。それ以外の場合、タスクごとのイベントに対する順序付けは指定されていません。

5856 5880 

5857起動時には何も発行されません。セッションの CLI プロセスが開始または再開されるたびに空のセットにリセットし、次のメンバーシップ変更でそれを再入力させてください。5881起動時には何も発行されません。セッションの CLI プロセスが開始または再開されるたびに空のセットにリセットし、次のメンバーシップ変更でそれを再入力させてください。

5858 5882 


5869 task_type: string;5893 task_type: string;

5870 subagent_type?: string;5894 subagent_type?: string;

5871 description: string;5895 description: string;

5896 parent_task_id?: string;

5872 ambient?: boolean;5897 ambient?: boolean;

5873 }[];5898 }[];

5874 uuid: UUID;5899 uuid: UUID;

Details

36 ```36 ```

37 37 

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

39 async function handleToolRequest(toolName, input, options) {39 import type { CanUseTool } from "@anthropic-ai/claude-agent-sdk";

40 

41 const handleToolRequest: CanUseTool = async (toolName, input, options) => {

40 // options には { signal: AbortSignal, suggestions?: PermissionUpdate[] } が含まれます42 // options には { signal: AbortSignal, suggestions?: PermissionUpdate[] } が含まれます

41 // ユーザーにプロンプトを表示して、許可または拒否を返す43 // ここでユーザーにプロンプトを表示してから、許可または拒否を返す

42 }44 return { behavior: "deny", message: "User declined" };

45 };

43 46 

44 const options = { canUseTool: handleToolRequest };47 const options = { canUseTool: handleToolRequest };

45 ```48 ```


440 // ツールリストに AskUserQuestion を含める443 // ツールリストに AskUserQuestion を含める

441 tools: ["Read", "Glob", "Grep", "AskUserQuestion"],444 tools: ["Read", "Glob", "Grep", "AskUserQuestion"],

442 canUseTool: async (toolName, input) => {445 canUseTool: async (toolName, input) => {

443 // ここで確認質問を処理する446 // すべての呼び出しを許可するプレースホルダー。「AskUserQuestion を検出する」ステップでこれを置き換えます。

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

444 }448 }

445 }449 }

446 })) {450 })) {


763 767 

764 ```typescript TypeScript theme={null}768 ```typescript TypeScript theme={null}

765 import { query } from "@anthropic-ai/claude-agent-sdk";769 import { query } from "@anthropic-ai/claude-agent-sdk";

770 import type { PermissionResult } from "@anthropic-ai/claude-agent-sdk";

766 import * as readline from "readline/promises";771 import * as readline from "readline/promises";

767 772 

768 // ターミナルでユーザー入力を求めるヘルパー773 // ターミナルでユーザー入力を求めるヘルパー


783 }788 }

784 789 

785 // Claude の質問を表示してユーザーの回答を収集する790 // Claude の質問を表示してユーザーの回答を収集する

786 async function handleAskUserQuestion(input: any) {791 async function handleAskUserQuestion(input: any): Promise<PermissionResult> {

787 const answers: Record<string, string> = {};792 const answers: Record<string, string> = {};

788 793 

789 for (const q of input.questions) {794 for (const q of input.questions) {


803 answers[q.question] = parseResponse(response, options);808 answers[q.question] = parseResponse(response, options);

804 }809 }

805 810 

806 // Claude に回答を返す(ツール処理に元の質問を含める必須)811 // Claude に回答を返す(元の質問を含める必要があります)

807 return {812 return {

808 behavior: "allow",813 behavior: "allow",

809 updatedInput: { questions: input.questions, answers }814 updatedInput: { questions: input.questions, answers }

agent-view.md +7 −4

Details

603 603 

604git リポジトリの外では、セッションは作業ディレクトリに直接書き込み、互いに分離されないため、同じファイルを編集する並列セッションのディスパッチは避けてください。別のバージョン管理システムを使用している場合は、[`WorktreeCreate` フック](/docs/ja/worktrees#non-git-version-control) を設定すると、Claude は git の場合と同じ方法で編集を分離します。604git リポジトリの外では、セッションは作業ディレクトリに直接書き込み、互いに分離されないため、同じファイルを編集する並列セッションのディスパッチは避けてください。別のバージョン管理システムを使用している場合は、[`WorktreeCreate` フック](/docs/ja/worktrees#non-git-version-control) を設定すると、Claude は git の場合と同じ方法で編集を分離します。

605 605 

606git リポジトリではないディレクトリでフックが失敗した場合、Claude はそのディレクトリの分離をスキップし、作業ディレクトリをその場で編集します。git リポジトリ内では、編集前に Claude が worktree に移動させるセッションは、その移動が行われるまで共有チェックアウト内のファイルを編集できません。606git リポジトリではないディレクトリでフックが失敗した場合、Claude はそのディレクトリの分離をスキップし、作業ディレクトリをその場で編集します。git リポジトリ内では、編集前に Claude が worktree に移動させるセッションは、その移動が行われるまで共有チェックアウトに対して `Edit`、`Write`、`NotebookEdit` ツールを使用できません。

607 607 

608セッションの worktree のパスを確認するには、アタッチしてその作業ディレクトリを確認します。608セッションの worktree のパスを確認するには、アタッチしてその作業ディレクトリを確認します。

609 609 


979 セッションを開くと、保存されたトランスクリプトがないと表示される979 セッションを開くと、保存されたトランスクリプトがないと表示される

980</h3>980</h3>

981 981 

982[別の会話からバックグラウンド化された](#from-inside-a-session)停止したセッションが最初の応答が完了する前に停止した場合、再開するものはありません。最初の応答が完了するまで、会話はバックグラウンド化された会話にのみ存在します。`claude attach` は `This session has no saved transcript` で開くことを拒否します。982[別の会話からバックグラウンド化した](#from-inside-a-session)セッションのうち、独自のターンを実行する前に停止したセッションを開くと、Claude Code はその会話を再開します。Claude Code がその会話を見つけられない場合、セッションを開くことを拒否します:

983 983 

984エージェントビューでは、その行を開くとリストの下に `Press enter again to restart this session fresh` が表示されます。同じ行で再度 `Enter` を押して、空の会話でセッションを再開するか、シェルから `claude respawn <id>` を実行します。984* `claude attach` は `This session has no saved transcript` を出力します。

985* エージェントビューでは、リストの下に `Press enter again to restart this session fresh` が表示されます。

985 986 

986元の会話は無傷です。`claude --resume` で再開するか、それで作業を続けます。詳細については、[エラーリファレンス](/docs/ja/errors#this-session-has-no-saved-transcript)を参照してください。987同じ行で再度 `Enter` を押して空の会話でセッションを再開するか、シェルから `claude respawn <id>` を実行します。

988 

989詳細については、[エラーリファレンス](/docs/ja/errors#this-session-has-no-saved-transcript)を参照してください。

987 990 

988<h3 id="the-terminal-host-died-or-the-session-stopped-responding">991<h3 id="the-terminal-host-died-or-the-session-stopped-responding">

989 ターミナルホストが停止したか、セッションが応答しなくなった992 ターミナルホストが停止したか、セッションが応答しなくなった

Details

1235 1235 

1236CLI はメトリクス、ログ、および有効な場合はトレースをゲートウェイに送信し、ゲートウェイはそれらをそのまま各設定済みの宛先にリレーします。エクスポートは HTTP 上の OpenTelemetry Protocol(OTLP)を使用します。リレーをスキップしてセッションからコレクターに直接エクスポートするには、[ポリシーでコレクターを指定](#export-directly-to-your-collector) します。CLI が出力するメトリクスとイベントについては [使用状況の監視](/docs/ja/monitoring-usage) を参照してください。1236CLI はメトリクス、ログ、および有効な場合はトレースをゲートウェイに送信し、ゲートウェイはそれらをそのまま各設定済みの宛先にリレーします。エクスポートは HTTP 上の OpenTelemetry Protocol(OTLP)を使用します。リレーをスキップしてセッションからコレクターに直接エクスポートするには、[ポリシーでコレクターを指定](#export-directly-to-your-collector) します。CLI が出力するメトリクスとイベントについては [使用状況の監視](/docs/ja/monitoring-usage) を参照してください。

1237 1237 

1238`/login` でサインインしたセッションでは、CLI はゲートウェイが発行した JWT から読み取った認証済みユーザーのアイデンティティ(`user.id`、`user.email`、`user.groups` 属性)を各エクスポートに付与します。そのため、デベロッパー側の設定なしで、デベロッパーごとのコストと使用状況の帰属が機能します。1238`/login` でサインインしたセッションでは、CLI はゲートウェイが発行した JWT から読み取った認証済みユーザーのアイデンティティ(`user.id`、`user.email`、`user.groups` 属性)を各エクスポートに付与します。そのため、デベロッパー側の設定なしで、デベロッパーごとのコストと使用状況の帰属が機能します。デベロッパーがサインインする前に Claude Code がログに記録するイベントには、[このアイデンティティは含まれません](/docs/ja/monitoring-usage#standard-attributes)。

1239 1239 

1240ゲートウェイでサインインした [Claude Desktop](#claude-desktop-overlay) と Cowork のセッションは、テレメトリに `enduser.id` とともに `user.email` と `user.groups` を付与するため、`user.email` または `user.groups` に対する 1 つのクエリでターミナル、Desktop、Cowork の使用状況をカバーできます。`user.groups` はコンマ区切りの IdP グループリストです。1240ゲートウェイでサインインした [Claude Desktop](#claude-desktop-overlay) と Cowork のセッションは、テレメトリに `enduser.id` とともに `user.email` と `user.groups` を付与するため、`user.email` または `user.groups` に対する 1 つのクエリでターミナル、Desktop、Cowork の使用状況をカバーできます。`user.groups` はコンマ区切りの IdP グループリストです。

1241 1241 

Details

516 テレメトリ516 テレメトリ

517</h2>517</h2>

518 518 

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

520 520 

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

522 522 

Details

489* **Routines**: プロジェクトでスケジュール済みの作業を要求すると、Claude はそのプロジェクト内のスレッドとして実行され、その **Routines** タブに表示される [routine](/docs/ja/routines) を作成します。プロジェクト外で作成した Routines は独立して動作し続けます。489* **Routines**: プロジェクトでスケジュール済みの作業を要求すると、Claude はそのプロジェクト内のスレッドとして実行され、その **Routines** タブに表示される [routine](/docs/ja/routines) を作成します。プロジェクト外で作成した Routines は独立して動作し続けます。

490* **Remote Control**: [Remote Control](/docs/ja/remote-control) は claude.ai をマシン上で実行している Claude Code セッションに接続します。プロジェクトで Claude にコンピュータ上でスレッドを実行するよう要求すると、プロジェクトは [Remote Control を使用してそれを実行します](#run-a-thread-on-your-own-computer)。490* **Remote Control**: [Remote Control](/docs/ja/remote-control) は claude.ai をマシン上で実行している Claude Code セッションに接続します。プロジェクトで Claude にコンピュータ上でスレッドを実行するよう要求すると、プロジェクトは [Remote Control を使用してそれを実行します](#run-a-thread-on-your-own-computer)。

491* **Local sessions と agent view**: ターミナル、IDE、またはデスクトップアプリのローカル環境で自分で開始したセッションはプロジェクトに追加できません。[Agent view](/docs/ja/agent-view) は複数のローカルセッションを並べて追跡するための画面であり、各セッションを自分で開始してタスクを割り当てます。491* **Local sessions と agent view**: ターミナル、IDE、またはデスクトップアプリのローカル環境で自分で開始したセッションはプロジェクトに追加できません。[Agent view](/docs/ja/agent-view) は複数のローカルセッションを並べて追跡するための画面であり、各セッションを自分で開始してタスクを割り当てます。

492* **Worktrees**: [worktree](/docs/ja/worktrees) は各ローカルセッションにリポジトリの独自の作業コピーを提供するため、マシン上の並列セッションが互いに上書きしません。Cloud スレッドはそれらを必要としません。各スレッドはリポジトリを独自のクラウドサンドボックスにクローンし、独自のブランチで作業します。492* **worktree**: [worktree](/docs/ja/worktrees) は各ローカルセッションにリポジトリの独自の作業コピーを提供します。クラウドスレッドはそれらを必要としません。各スレッドはリポジトリを独自のクラウドサンドボックスにクローンし、独自のブランチで作業します。

493* **Agent teams**: [agent team](/docs/ja/agent-teams) は、マシン上またはクラウドセッション内で単一のタスク用にチームメイトセッションを開始し、そのタスクで終了する 1 つのセッションです。493* **Agent teams**: [agent team](/docs/ja/agent-teams) は、マシン上またはクラウドセッション内で単一のタスク用にチームメイトセッションを開始し、そのタスクで終了する 1 つのセッションです。

494* **Subagents**: [subagent](/docs/ja/sub-agents) は 1 つのセッション内で実行され、独自のコンテキストウィンドウで副次的なタスクを実行し、そのセッションに概要を返します。プロジェクトのスレッドは Claude が開始し、プロジェクト会話に報告する完全なセッションであり、スレッドは独自の副次的なタスク用に subagents を使用することができます。494* **Subagents**: [subagent](/docs/ja/sub-agents) は 1 つのセッション内で実行され、独自のコンテキストウィンドウで副次的なタスクを実行し、そのセッションに概要を返します。プロジェクトのスレッドは Claude が開始し、プロジェクト会話に報告する完全なセッションであり、スレッドは独自の副次的なタスク用に subagents を使用することができます。

495* **Projects in claude.ai chat and Cowork**: [以前の Projects エクスペリエンス](https://support.claude.com/en/articles/9517075-what-are-projects)。これはスレッドやコーディネーターなしで会話と参照ファイルをグループ化します。これらのプロジェクトは、再設計されたエクスペリエンスがそれらに到達するまで、今日のように動作し続けます。495* **Projects in claude.ai chat and Cowork**: [以前の Projects エクスペリエンス](https://support.claude.com/en/articles/9517075-what-are-projects)。これはスレッドやコーディネーターなしで会話と参照ファイルをグループ化します。これらのプロジェクトは、再設計されたエクスペリエンスがそれらに到達するまで、今日のように動作し続けます。

Details

106| `--input-format` | プリントモードの入力形式を指定します(オプション:`text`、`stream-json`) | `claude -p --output-format json --input-format stream-json` |106| `--input-format` | プリントモードの入力形式を指定します(オプション:`text`、`stream-json`) | `claude -p --output-format json --input-format stream-json` |

107| `--json-schema` | エージェントがワークフローを完了した後、JSON スキーマに一致する検証済み JSON 出力を取得します(プリントモードのみ)。[構造化出力](/docs/ja/agent-sdk/structured-outputs)を参照してください。Claude Code は無効なスキーマでエラーで終了し、`format` キーワードをクライアント側検証なしの注釈として受け入れます | `claude -p --json-schema '{"type":"object","properties":{...}}' "query"` |107| `--json-schema` | エージェントがワークフローを完了した後、JSON スキーマに一致する検証済み JSON 出力を取得します(プリントモードのみ)。[構造化出力](/docs/ja/agent-sdk/structured-outputs)を参照してください。Claude Code は無効なスキーマでエラーで終了し、`format` キーワードをクライアント側検証なしの注釈として受け入れます | `claude -p --json-schema '{"type":"object","properties":{...}}' "query"` |

108| `--maintenance` | セッションの前に `maintenance` マッチャーで[セットアップフック](/docs/ja/hooks#setup)を実行します(プリントモードのみ) | `claude -p --maintenance "query"` |108| `--maintenance` | セッションの前に `maintenance` マッチャーで[セットアップフック](/docs/ja/hooks#setup)を実行します(プリントモードのみ) | `claude -p --maintenance "query"` |

109| `--max-budget-usd` | 停止する前に API 呼び出しに費やす最大金額(ドル)(プリントモードのみ)。Claude Code は上限を[クライアント側のコスト見積もり](/docs/ja/agent-sdk/cost-tracking#estimates-not-billing)と照合するため、実際の請求額と異なる場合があります。[サブエージェント](/docs/ja/sub-agents)による支出も上限にカウントされます。`--continue` または `--resume` で会話に戻るとき、[以前の実行から復元された](/docs/ja/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls)合計は上限にカウントされません。支出が上限に達すると、別のサブエージェントの生成は `Budget limit reached` で失敗し、Claude Code はまだ実行中のバックグラウンドサブエージェントを停止します。上限の適用動作には Claude Code v2.1.217 以降が必要です | `claude -p --max-budget-usd 5.00 "query"` |109| `--max-budget-usd` | API 呼び出しの推定支出がこの金額に達した時点で実行を停止します(プリントモードのみ)。Claude Code は上限を[クライアント側のコスト見積もり](/docs/ja/agent-sdk/cost-tracking#estimates-not-billing)と照合するため、実際の請求額と異なる場合があります。[サブエージェント](/docs/ja/sub-agents)による支出も上限にカウントされます。支出は上限を超えることがあるため、[余裕を持たせてください](/docs/ja/agent-sdk/agent-loop#budget-headroom)。`--continue` または `--resume` で会話に戻るとき、[以前の実行から復元された](/docs/ja/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls)合計は上限にカウントされません。支出が上限に達すると、別のサブエージェントの生成は `Budget limit reached` で失敗し、Claude Code はまだ実行中のバックグラウンドサブエージェントを停止します。上限の適用動作には Claude Code v2.1.217 以降が必要です | `claude -p --max-budget-usd 5.00 "query"` |

110| `--max-turns` | エージェンティックターンの数を制限します(プリントモードのみ)。制限に達するとエラーで終了します。デフォルトでは制限がありません。`--input-format stream-json` を使用する場合、制限がターンを終了するときにキューに入れられたメッセージは引き続きキューに入れられ、独自の制限で新しいターンを開始します | `claude -p --max-turns 3 "query"` |110| `--max-turns` | エージェンティックターンの数を制限します(プリントモードのみ)。制限に達するとエラーで終了します。デフォルトでは制限がありません。`--input-format stream-json` を使用する場合、制限がターンを終了するときにキューに入れられたメッセージは引き続きキューに入れられ、独自の制限で新しいターンを開始します | `claude -p --max-turns 3 "query"` |

111| `--mcp-config` | JSON ファイルまたは文字列から MCP サーバーを読み込みます(スペース区切り)。このフラグを `-p` で渡すと、Claude Code は最初のターンを実行する前に、まだ保留中のサーバーが接続されるまで待機します。デフォルトでは [`MCP_TIMEOUT`](/docs/ja/env-vars) スタートアップタイムアウト 30 秒まで待機します。[キャッシュされたツールリスト](/docs/ja/mcp#managing-your-servers)を持つサーバーは待機をスキップし、最初の使用時に接続します。待機には Claude Code v2.1.221 以降が必要です | `claude --mcp-config ./mcp.json` |111| `--mcp-config` | JSON ファイルまたは文字列から MCP サーバーを読み込みます(スペース区切り)。このフラグを `-p` で渡すと、Claude Code は最初のターンを実行する前に、まだ保留中のサーバーが接続されるまで待機します。デフォルトでは [`MCP_TIMEOUT`](/docs/ja/env-vars) スタートアップタイムアウト 30 秒まで待機します。[キャッシュされたツールリスト](/docs/ja/mcp#managing-your-servers)を持つサーバーは待機をスキップし、最初の使用時に接続します。待機には Claude Code v2.1.221 以降が必要です | `claude --mcp-config ./mcp.json` |

112| `--model` | `sonnet`、`opus`、`haiku`、`fable` などの[モデルエイリアス](/docs/ja/model-config#model-aliases)またはモデルの完全な名前を使用して、現在のセッションのモデルを設定します。[`model`](/docs/ja/settings-reference#model) 設定と [`ANTHROPIC_MODEL`](/docs/ja/model-config#environment-variables) をオーバーライドします | `claude --model claude-sonnet-5` |112| `--model` | `sonnet`、`opus`、`haiku`、`fable` などの[モデルエイリアス](/docs/ja/model-config#model-aliases)またはモデルの完全な名前を使用して、現在のセッションのモデルを設定します。[`model`](/docs/ja/settings-reference#model) 設定と [`ANTHROPIC_MODEL`](/docs/ja/model-config#environment-variables) をオーバーライドします | `claude --model claude-sonnet-5` |

Details

307| | クラウドセッションで利用可能 | 理由 |307| | クラウドセッションで利用可能 | 理由 |

308| :- | :- | :- |308| :- | :- | :- |

309| リポジトリの `CLAUDE.md` | はい | クローンの一部 |309| リポジトリの `CLAUDE.md` | はい | クローンの一部 |

310| リポジトリの `.claude/settings.json` hooks と権限ルール | はい、1 つのリポジトリを持つセッションの場合 | クローンの一部。複数のリポジトリを持つセッション([プロジェクト](/docs/ja/claude-projects#what-threads-pick-up-from-your-repositories)スレッドを含む)はクローンの上で開始され、それらを読み取りません |310| リポジトリの `.claude/settings.json` フックと権限ルール | はい、1 つのリポジトリを持つセッションの場合 | クローンの一部。複数のリポジトリを持つセッションについては、[読み取られる設定](/docs/ja/settings#settings-in-cloud-sessions)を参照してください |

311| リポジトリの `.mcp.json` MCP サーバー | はい、1 つのリポジトリを持つセッションの場合 | クローンの一部、セッションの作業ディレクトリから検出されます |311| リポジトリの `.mcp.json` MCP サーバー | はい、1 つのリポジトリを持つセッションの場合 | クローンの一部、セッションの作業ディレクトリから検出されます。セルフホスト環境については、[どのリポジトリの設定が適用されるか](/docs/ja/self-hosted-environments-configuration#repository-settings-in-sessions-with-several-repositories)を参照してください |

312| リポジトリの `.claude/rules/` | はい | クローンの一部 |312| リポジトリの `.claude/rules/` | はい | クローンの一部 |

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) の下にリストされているマーケットプレイスのプラグインも含まれます |


575 575 

576SessionStart フックはクラウドでローカルと同じように動作しますが、これらの注意事項があります。576SessionStart フックはクラウドでローカルと同じように動作しますが、これらの注意事項があります。

577 577 

578* **セッションごとに 1 つのリポジトリ**:複数のリポジトリを持つセッションは、リポジトリの `.claude/settings.json` からフックをロードしないため、そこで定義した SessionStart フックは実行されません。これらのセッションの依存関係は [セットアップスクリプト](#setup-scripts) でインストールしてください。578* **セッションごとに 1 つのリポジトリ**:Anthropic ホスト環境では、複数のリポジトリを持つセッションはどのリポジトリの `.claude/settings.json` からもフックをロードしないため、そこで定義した SessionStart フックは実行されません。これらのセッションの依存関係は、代わりに [セットアップスクリプト](#setup-scripts) でインストールしてください。セルフホスト環境については、[どのリポジトリの設定が適用されるか](/docs/ja/self-hosted-environments-configuration#repository-settings-in-sessions-with-several-repositories) を参照してください。

579* **クラウドのみのスコープなし**:フックはローカルとクラウドセッションの両方で実行されます。ローカル実行をスキップするには、[依存関係インストールスクリプト](#install-dependencies-with-a-sessionstart-hook) のように `CLAUDE_CODE_REMOTE` 環境変数が `true` でない限り早期に終了します。579* **クラウドのみのスコープなし**:フックはローカルとクラウドセッションの両方で実行されます。ローカル実行をスキップするには、[依存関係インストールスクリプト](#install-dependencies-with-a-sessionstart-hook) のように `CLAUDE_CODE_REMOTE` 環境変数が `true` でない限り早期に終了します。

580* **ネットワークアクセスが必要**:インストールコマンドはパッケージレジストリに到達する必要があります。環境が **None** ネットワークアクセスを使用する場合、これらのフックは失敗します。**Trusted** の下の [デフォルト許可リスト](#default-allowed-domains) は npm、PyPI、RubyGems、crates.io をカバーします。580* **ネットワークアクセスが必要**:インストールコマンドはパッケージレジストリに到達する必要があります。環境が **None** ネットワークアクセスを使用する場合、これらのフックは失敗します。**Trusted** の下の [デフォルト許可リスト](#default-allowed-domains) は npm、PyPI、RubyGems、crates.io をカバーします。

581* **プロキシ互換性**:Anthropic ホスト環境では、すべての送信トラフィックは [セキュリティプロキシ](#security-proxy) を通じて渡されます。一部のパッケージマネージャーはこのプロキシで正しく機能しません。Bun は既知の例です。[セルフホスト環境](/docs/ja/self-hosted-environments-deploy#default-deny-egress) では、送信トラフィックは代わりに独自のネットワーク境界を通じて行きます。581* **プロキシ互換性**:Anthropic ホスト環境では、すべての送信トラフィックは [セキュリティプロキシ](#security-proxy) を通じて渡されます。一部のパッケージマネージャーはこのプロキシで正しく機能しません。Bun は既知の例です。[セルフホスト環境](/docs/ja/self-hosted-environments-deploy#default-deny-egress) では、送信トラフィックは代わりに独自のネットワーク境界を通じて行きます。

desktop.md +1 −1

Details

396 セッションで並列に作業する396 セッションで並列に作業する

397</h3>397</h3>

398 398 

399サイドバーの\*\*+ New session**をクリックするか、macOS で**Cmd+N**を、Windows で**Ctrl+N**を押して、複数のタスクを並列で作業します。**Ctrl+Tab**と**Ctrl+Shift+Tab**を押してサイドバーのセッションをサイクルします。Git リポジトリの場合、ブランチ名の横の**worktree\*\*オプションを選択して、[Git worktrees](/docs/ja/worktrees)を使用してセッションにプロジェクトの独立した分離コピーを与えるため、1 つのセッションの変更は、コミットするまで他のセッションに影響しません。399サイドバーの\*\*+ New session**をクリックするか、macOS で**Cmd+N**を、Windows で**Ctrl+N**を押して、複数のタスクを並列で作業します。**Ctrl+Tab**と**Ctrl+Shift+Tab**を押してサイドバーのセッションをサイクルします。Git リポジトリの場合、ブランチ名の横の**worktree\*\*オプションを選択すると、[Git worktrees](/docs/ja/worktrees)を使用して、セッションにプロジェクトの独立した分離コピーを与えることができます。

400 400 

4012 つのセッションを同時に表示するには、macOS で**Cmd**を、Windows で**Ctrl**を押しながらサイドバーのセッションをクリックします。セッションは既に開いているセッションの横の 2 番目のペインで開きます。分割がアクティブな間、別のサイドバーセッションをクリックすると、フォーカスがあるペインが置き換わります。macOS で\*\*Cmd+\\**を、Windows で**Ctrl+\\\*\*を押して、フォーカスされたペインを閉じて、単一のセッションに戻ります。4012 つのセッションを同時に表示するには、macOS で**Cmd**を、Windows で**Ctrl**を押しながらサイドバーのセッションをクリックします。セッションは既に開いているセッションの横の 2 番目のペインで開きます。分割がアクティブな間、別のサイドバーセッションをクリックすると、フォーカスがあるペインが置き換わります。macOS で\*\*Cmd+\\**を、Windows で**Ctrl+\\\*\*を押して、フォーカスされたペインを閉じて、単一のセッションに戻ります。

402 402 

env-vars.md +2 −2

Details

204| `CLAUDE_AFK_TIMEOUT_MS` | 未応答の [`AskUserQuestion`](/docs/ja/tools-reference) ダイアログが、ユーザーの応答なしで自動続行するまでのアイドル時間(ミリ秒)。自動続行はデフォルトでオフです。[`askUserQuestionTimeout`](/docs/ja/settings-reference#askuserquestiontimeout) 設定でオプトインします。この変数はデモや自動テスト用の上書きです。設定すると、その設定より優先され、設定が未設定または `never` の場合でも自動続行をオンにします。`0` を設定してもタイムアウトはオフになりません。ダイアログが即座に閉じます。[プロジェクト設定とローカル設定](/docs/ja/settings-reference#variables-claude-code-ignores-in-env)では無視されます。v2.1.200 より前は、自動続行はデフォルトでオンで、タイムアウトは `60000`(60 秒)でした。Claude Code v2.1.198 以降が必要です |204| `CLAUDE_AFK_TIMEOUT_MS` | 未応答の [`AskUserQuestion`](/docs/ja/tools-reference) ダイアログが、ユーザーの応答なしで自動続行するまでのアイドル時間(ミリ秒)。自動続行はデフォルトでオフです。[`askUserQuestionTimeout`](/docs/ja/settings-reference#askuserquestiontimeout) 設定でオプトインします。この変数はデモや自動テスト用の上書きです。設定すると、その設定より優先され、設定が未設定または `never` の場合でも自動続行をオンにします。`0` を設定してもタイムアウトはオフになりません。ダイアログが即座に閉じます。[プロジェクト設定とローカル設定](/docs/ja/settings-reference#variables-claude-code-ignores-in-env)では無視されます。v2.1.200 より前は、自動続行はデフォルトでオンで、タイムアウトは `60000`(60 秒)でした。Claude Code v2.1.198 以降が必要です |

205| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | `1` に設定すると、Explore や Plan などの組み込みの[サブエージェント](/docs/ja/sub-agents)タイプをすべて無効にします。非対話モード(`-p` フラグ)でのみ適用されます。白紙の状態から始めたい SDK ユーザーに便利です。これにより、Agent ツールの呼び出しで `subagent_type` が省略されたときに Claude Code が実行するサブエージェントである `general-purpose` も削除されます。そのような呼び出しは [`subagent_type is required`](/docs/ja/errors#subagent-type-is-required) で失敗します |205| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | `1` に設定すると、Explore や Plan などの組み込みの[サブエージェント](/docs/ja/sub-agents)タイプをすべて無効にします。非対話モード(`-p` フラグ)でのみ適用されます。白紙の状態から始めたい SDK ユーザーに便利です。これにより、Agent ツールの呼び出しで `subagent_type` が省略されたときに Claude Code が実行するサブエージェントである `general-purpose` も削除されます。そのような呼び出しは [`subagent_type is required`](/docs/ja/errors#subagent-type-is-required) で失敗します |

206| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | `1` に設定すると、SDK で作成された MCP サーバーのツール名に付く `mcp__<server>__` プレフィックスを省略します。ツールは元の名前を使用します。SDK での使用のみ |206| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | `1` に設定すると、SDK で作成された MCP サーバーのツール名に付く `mcp__<server>__` プレフィックスを省略します。ツールは元の名前を使用します。SDK での使用のみ |

207| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | サブエージェントの停滞タイムアウト(ミリ秒)。デフォルトは `600000`(10 分)です。ストリームウォッチドッグがオンのときに `CLAUDE_STREAM_IDLE_TIMEOUT_MS` を引き上げると、[低速または停滞した API レスポンスを処理する](/docs/ja/agent-sdk/typescript#handle-slow-or-stalled-api-responses)で説明されているように、デフォルトもそれに合わせて引き上げられます。タイマーはストリーミングの進捗イベントごとにリセットされます。ウィンドウ内に進捗がない場合、Claude Code はサブエージェントを中止し、停滞を親に報告します |207| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | サブエージェントのストールタイムアウト(ミリ秒)。Claude Code v2.1.286 以降では[ワークフローエージェント](/docs/ja/workflows#when-an-agent-stalls-and-restarts)にも適用されます。デフォルトは `600000`(10 分)です。ストリームウォッチドッグがオンの状態で `CLAUDE_STREAM_IDLE_TIMEOUT_MS` を引き上げると、[低速または停止した API レスポンスを処理する](/docs/ja/agent-sdk/typescript#handle-slow-or-stalled-api-responses)で説明されているように、デフォルトもそれに合わせて引き上げられます |

208| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | 自動圧縮がトリガーされる、自動圧縮ウィンドウに対する割合(1-100)を設定します。早めに圧縮するには `50` などの低い値を使用します。この変数でしきい値を引き上げることはできないため、デフォルトの割合を超える値は無視されます。[モデルのコンテキスト上限より前に圧縮する](/docs/ja/model-config#context-window-and-auto-compaction)セッションでのみ適用されます。メインの会話とサブエージェントの両方に適用されます |208| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | 自動圧縮がトリガーされる、自動圧縮ウィンドウに対する割合(1-100)を設定します。早めに圧縮するには `50` などの低い値を使用します。この変数でしきい値を引き上げることはできないため、デフォルトの割合を超える値は無視されます。[モデルのコンテキスト上限より前に圧縮する](/docs/ja/model-config#context-window-and-auto-compaction)セッションでのみ適用されます。メインの会話とサブエージェントの両方に適用されます |

209| `CLAUDE_AUTO_BACKGROUND_TASKS` | `1` に設定すると、長時間実行されるエージェントタスクの自動バックグラウンド化を強制的に有効にします。有効にすると、サブエージェントは約 2 分間実行された後にバックグラウンドに移動されます。Claude Code v2.1.212 以降では、非対話モードで[長時間の MCP ツール呼び出しの自動バックグラウンド化](/docs/ja/mcp#automatic-backgrounding-of-long-tool-calls)も有効にします |209| `CLAUDE_AUTO_BACKGROUND_TASKS` | `1` に設定すると、長時間実行されるエージェントタスクの自動バックグラウンド化を強制的に有効にします。有効にすると、サブエージェントは約 2 分間実行された後にバックグラウンドに移動されます。Claude Code v2.1.212 以降では、非対話モードで[長時間の MCP ツール呼び出しの自動バックグラウンド化](/docs/ja/mcp#automatic-backgrounding-of-long-tool-calls)も有効にします |

210| `CLAUDE_AX_PREPARK_MS` | [スクリーンリーダーモード](/docs/ja/accessibility)で、Claude Code が新しい行または変更された行を書き込む前に待機するミリ秒数。デフォルトは `0` で、Claude Code は待機しません。v2.1.287 より前は、デフォルトは `50` でした。Claude Code は待機時間の上限を `5000` とします。Claude Code v2.1.233 以降が必要です |210| `CLAUDE_AX_PREPARK_MS` | [スクリーンリーダーモード](/docs/ja/accessibility)で、Claude Code が新しい行または変更された行を書き込む前に待機するミリ秒数。デフォルトは `0` で、Claude Code は待機しません。v2.1.287 より前は、デフォルトは `50` でした。Claude Code は待機時間の上限を `5000` とします。Claude Code v2.1.233 以降が必要です |


378| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | ターンの途中で終了したセッションが再開時に自動的に続行されるための、最後のトランスクリプトメッセージの最大経過時間(ミリ秒)。最後のメッセージがこの制限より古い場合、Claude Code は `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` による自動再開と、その `CLAUDE_CODE_RESUME_PROMPT` 継続メッセージをスキップし、セッションはアイドル状態で開始されるため、明示的に続行することになります。未設定または `0` は制限なしを意味します。ただし、最後のリクエストが API エラーで失敗したターンは、そのエラーの発生から 6 時間未満の場合にのみ再開されます。正の値はそのようなターンを含むすべてのターンに制限を適用し、負の値や数値以外の値は 1 時間の制限を適用します。長時間実行されるエージェントの起動スクリプトでこれを設定すると、古いトランスクリプトに対して再起動したときに古いプロンプトが再実行されるのを防げます。対話セッションから会話を引き継いだ [エージェントビュー](/docs/ja/agent-view) セッションがクラッシュして再起動する場合は、Claude Code 自身が 1 時間の制限を設定します。Claude Code v2.1.211 以降が必要です |378| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | ターンの途中で終了したセッションが再開時に自動的に続行されるための、最後のトランスクリプトメッセージの最大経過時間(ミリ秒)。最後のメッセージがこの制限より古い場合、Claude Code は `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` による自動再開と、その `CLAUDE_CODE_RESUME_PROMPT` 継続メッセージをスキップし、セッションはアイドル状態で開始されるため、明示的に続行することになります。未設定または `0` は制限なしを意味します。ただし、最後のリクエストが API エラーで失敗したターンは、そのエラーの発生から 6 時間未満の場合にのみ再開されます。正の値はそのようなターンを含むすべてのターンに制限を適用し、負の値や数値以外の値は 1 時間の制限を適用します。長時間実行されるエージェントの起動スクリプトでこれを設定すると、古いトランスクリプトに対して再起動したときに古いプロンプトが再実行されるのを防げます。対話セッションから会話を引き継いだ [エージェントビュー](/docs/ja/agent-view) セッションがクラッシュして再起動する場合は、Claude Code 自身が 1 時間の制限を設定します。Claude Code v2.1.211 以降が必要です |

379| `CLAUDE_CODE_RESUME_PROMPT` | `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` が中断されたターンをプロンプトの再送信ではなく続行によって再開する場合、または `-p` で [延期されたツール呼び出し](/docs/ja/hooks#defer-a-tool-call-for-later) を再開する場合に、Claude Code が Claude に送信する継続メッセージを上書きします。デフォルトは `Continue from where you left off.` です。空文字列の場合はデフォルトが使用されます |379| `CLAUDE_CODE_RESUME_PROMPT` | `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` が中断されたターンをプロンプトの再送信ではなく続行によって再開する場合、または `-p` で [延期されたツール呼び出し](/docs/ja/hooks#defer-a-tool-call-for-later) を再開する場合に、Claude Code が Claude に送信する継続メッセージを上書きします。デフォルトは `Continue from where you left off.` です。空文字列の場合はデフォルトが使用されます |

380| `CLAUDE_CODE_RETRY_WATCHDOG` | eval ハーネス、CI ジョブ、リモートワーカーなどの無人セッションでは `1` に設定します。`429` および `529` の容量エラーを、`CLAUDE_CODE_MAX_RETRIES` 回の試行後に失敗させるのではなく、無期限に再試行します。標準速度のリクエストが、支出上限や使用クレジットの枯渇を報告する `429` を受け取った場合は、それがスケジュールでリセットされる [ゲートウェイの支出上限](/docs/ja/errors#spend-limit-reached) によるものであっても、Claude Code は即座に失敗します。v2.1.239 より前は、ウォッチドッグはこれらを無期限に再試行していました。fast mode のリクエストについては、[レート制限を処理する](/docs/ja/fast-mode#handle-rate-limits) を参照してください。ウォッチドッグは試行の間に最大 5 分間、またはレスポンスにレート制限のリセット時刻が含まれている場合は制限がリセットされるまでバックオフするため、使用制限に達したセッションは残りの時間枠が経過するまで待機します。v2.1.199 以降では、サーバーエラー、タイムアウト、接続の切断などのその他の一時的なエラーに対するデフォルトの再試行回数も 300(約 3 時間分のバックオフ)に引き上げ、`CLAUDE_CODE_MAX_RETRIES` を明示的に設定した場合の上限 15 を撤廃します。Claude Code v2.1.186 以降が必要です |380| `CLAUDE_CODE_RETRY_WATCHDOG` | eval ハーネス、CI ジョブ、リモートワーカーなどの無人セッションでは `1` に設定します。`429` および `529` の容量エラーを、`CLAUDE_CODE_MAX_RETRIES` 回の試行後に失敗させるのではなく、無期限に再試行します。標準速度のリクエストが、支出上限や使用クレジットの枯渇を報告する `429` を受け取った場合は、それがスケジュールでリセットされる [ゲートウェイの支出上限](/docs/ja/errors#spend-limit-reached) によるものであっても、Claude Code は即座に失敗します。v2.1.239 より前は、ウォッチドッグはこれらを無期限に再試行していました。fast mode のリクエストについては、[レート制限を処理する](/docs/ja/fast-mode#handle-rate-limits) を参照してください。ウォッチドッグは試行の間に最大 5 分間、またはレスポンスにレート制限のリセット時刻が含まれている場合は制限がリセットされるまでバックオフするため、使用制限に達したセッションは残りの時間枠が経過するまで待機します。v2.1.199 以降では、サーバーエラー、タイムアウト、接続の切断などのその他の一時的なエラーに対するデフォルトの再試行回数も 300(約 3 時間分のバックオフ)に引き上げ、`CLAUDE_CODE_MAX_RETRIES` を明示的に設定した場合の上限 15 を撤廃します。Claude Code v2.1.186 以降が必要です |

381| `CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS` | `CLAUDE_CODE_RETRY_WATCHDOG` が設定されている場合に、各 API リクエストが `429` および `529` エラーの解消を待つ最大時間(ミリ秒)。その時間を使い切ると、次に同様のエラーが発生した時点でリクエストが終了します。30 分なら `1800000` のように、正の整数を数字のみで指定します。未設定の場合、待機時間に制限はありません。Claude Code v2.1.295 以降が必要です |

381| `CLAUDE_CODE_SAFE_MODE` | `1` に設定すると、セーフモードで起動します。壊れた設定のトラブルシューティングのために、CLAUDE.md、スキル、プラグイン、フック、MCP サーバー、カスタムコマンドとエージェント、出力スタイル、ワークフロー、カスタムテーマ、カスタムキーボードショートカット、ステータスラインとファイル候補のコマンド、LSP サーバー、自動メモリを読み込みません。ポリシーで設定されたフック、ステータスライン、ファイル候補のコマンドを含め、管理設定のポリシーは引き続き適用されます。管理プラグイン、管理スキル、管理 CLAUDE.md、ポリシーで設定された MCP サーバーは適用されません。[`--safe-mode`](/docs/ja/cli-reference#cli-flags) を渡すのと同じです。直接起動された子プロセスはこの変数を継承します |382| `CLAUDE_CODE_SAFE_MODE` | `1` に設定すると、セーフモードで起動します。壊れた設定のトラブルシューティングのために、CLAUDE.md、スキル、プラグイン、フック、MCP サーバー、カスタムコマンドとエージェント、出力スタイル、ワークフロー、カスタムテーマ、カスタムキーボードショートカット、ステータスラインとファイル候補のコマンド、LSP サーバー、自動メモリを読み込みません。ポリシーで設定されたフック、ステータスライン、ファイル候補のコマンドを含め、管理設定のポリシーは引き続き適用されます。管理プラグイン、管理スキル、管理 CLAUDE.md、ポリシーで設定された MCP サーバーは適用されません。[`--safe-mode`](/docs/ja/cli-reference#cli-flags) を渡すのと同じです。直接起動された子プロセスはこの変数を継承します |

382| `CLAUDE_CODE_SCRIPT_CAPS` | `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` が設定されている場合に、特定のスクリプトをセッションごとに呼び出せる回数を制限する JSON オブジェクト。キーはコマンドテキストと照合される部分文字列で、値は整数の呼び出し制限です。たとえば、`{"deploy.sh": 2}` では `deploy.sh` を最大 2 回まで呼び出せます。照合は部分文字列ベースのため、`./scripts/deploy.sh $(evil)` のようなシェル展開のトリックも上限にカウントされます。`xargs` や `find -exec` による実行時のファンアウトは検出されません。これは多層防御のための制御です |383| `CLAUDE_CODE_SCRIPT_CAPS` | `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` が設定されている場合に、特定のスクリプトをセッションごとに呼び出せる回数を制限する JSON オブジェクト。キーはコマンドテキストと照合される部分文字列で、値は整数の呼び出し制限です。たとえば、`{"deploy.sh": 2}` では `deploy.sh` を最大 2 回まで呼び出せます。照合は部分文字列ベースのため、`./scripts/deploy.sh $(evil)` のようなシェル展開のトリックも上限にカウントされます。`xargs` や `find -exec` による実行時のファンアウトは検出されません。これは多層防御のための制御です |

383| `CLAUDE_CODE_SCROLL_SPEED` | [フルスクリーンレンダリング](/docs/ja/fullscreen#mouse-wheel-scrolling) でのマウスホイールのスクロール倍率を設定します。20 までの任意の正の値を受け付けます。ホイールイベントをすでに増幅するターミナルで、加速されたトラックパッドやホイールのスクロールを遅くするための `0.5` など、1 未満の小数値も指定できます。ターミナルが増幅せずにノッチごとに 1 つのホイールイベントを送信する場合、`vim` に合わせるには `3` に設定します。Claude Code が独自のスクロール処理を使用する JetBrains IDE のターミナルでは無視されます |384| `CLAUDE_CODE_SCROLL_SPEED` | [フルスクリーンレンダリング](/docs/ja/fullscreen#mouse-wheel-scrolling) でのマウスホイールのスクロール倍率を設定します。20 までの任意の正の値を受け付けます。ホイールイベントをすでに増幅するターミナルで、加速されたトラックパッドやホイールのスクロールを遅くするための `0.5` など、1 未満の小数値も指定できます。ターミナルが増幅せずにノッチごとに 1 つのホイールイベントを送信する場合、`vim` に合わせるには `3` に設定します。Claude Code が独自のスクロール処理を使用する JetBrains IDE のターミナルでは無視されます |


590* [アドバイザーツール](/docs/ja/advisor#requirements)を使用する591* [アドバイザーツール](/docs/ja/advisor#requirements)を使用する

591* [アーティファクトへのコメント](/docs/ja/artifacts#collect-comments-on-an-artifact)を読む、または返信する592* [アーティファクトへのコメント](/docs/ja/artifacts#collect-comments-on-an-artifact)を読む、または返信する

592* Claude に[別の組織の公開アーティファクト](/docs/ja/artifacts#read-an-artifact-shared-with-you)を読ませる593* Claude に[別の組織の公開アーティファクト](/docs/ja/artifacts#read-an-artifact-shared-with-you)を読ませる

593* `MCP_PROTOCOL_NEGOTIATION=auto` を設定しない限り、Claude Code に claude.ai コネクタサーバーに対して [MCP プロトコルリビジョン 2026-07-28](/docs/ja/mcp#mcp-client-runtimes) をプローブさせる

594* Git Bash がインストールされた Windows 上の claude.ai アカウントおよび Console アカウントで、[PowerShell ツール](/docs/ja/tools-reference#powershell-tool)をデフォルトで利用する。`CLAUDE_CODE_USE_POWERSHELL_TOOL=1` を設定しない限り、Claude Code はシェルコマンドを Git Bash 経由で実行します。Git Bash のない Windows では、このツールはオンのままです594* Git Bash がインストールされた Windows 上の claude.ai アカウントおよび Console アカウントで、[PowerShell ツール](/docs/ja/tools-reference#powershell-tool)をデフォルトで利用する。`CLAUDE_CODE_USE_POWERSHELL_TOOL=1` を設定しない限り、Claude Code はシェルコマンドを Git Bash 経由で実行します。Git Bash のない Windows では、このツールはオンのままです

595* [Claude が下書きするフィードバック](/docs/ja/tools-reference#sendfeedback-tool-behavior)を利用する。この機能は、Claude Code が取得したフラグによってオンにします595* [Claude が下書きするフィードバック](/docs/ja/tools-reference#sendfeedback-tool-behavior)を利用する。この機能は、Claude Code が取得したフラグによってオンにします

596* Claude に[大きな貼り付けを、入力したテキストではなく貼り付けたテキストとして扱わせる](/docs/ja/terminal-config#how-claude-treats-pasted-text)。`[Pasted text #N]` プレースホルダーの背後にあるコンテンツは、マークなしで Claude に届きます596* Claude に[大きな貼り付けを、入力したテキストではなく貼り付けたテキストとして扱わせる](/docs/ja/terminal-config#how-claude-treats-pasted-text)。`[Pasted text #N]` プレースホルダーの背後にあるコンテンツは、マークなしで Claude に届きます

errors.md +3 −4

Details

386* Claude が思考を終えた後、テキストやツール呼び出しを開始する前に発生したサーバーエラーまたは過負荷レスポンス。その時点でのサーバーエラーについて、Claude Code は最大 2 回まで再試行します。v2.1.284 より前は、Claude Code はその時点でエラーとともにターンを終了していました。386* Claude が思考を終えた後、テキストやツール呼び出しを開始する前に発生したサーバーエラーまたは過負荷レスポンス。その時点でのサーバーエラーについて、Claude Code は最大 2 回まで再試行します。v2.1.284 より前は、Claude Code はその時点でエラーとともにターンを終了していました。

387* 切断された接続。Claude が思考を含む応答のいずれの部分も完了する前にリクエストの途中で接続が切断された場合、Claude Code は同じバックオフでリクエストを再発行し、一部のテキストがすでにストリーミングを開始していてもターンは継続します。Claude が思考を終えた後、テキストやツール呼び出しを開始する前に切断された場合は、代わりに Claude Code は短い間隔で最大 2 回までリクエストを再発行し、その時点で接続の切断が続く場合は `Connection lost before a response was produced` でターンを終了します。387* 切断された接続。Claude が思考を含む応答のいずれの部分も完了する前にリクエストの途中で接続が切断された場合、Claude Code は同じバックオフでリクエストを再発行し、一部のテキストがすでにストリーミングを開始していてもターンは継続します。Claude が思考を終えた後、テキストやツール呼び出しを開始する前に切断された場合は、代わりに Claude Code は短い間隔で最大 2 回までリクエストを再発行し、その時点で接続の切断が続く場合は `Connection lost 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 Code が検出した接続。Claude Code はこれを上記のルールに従い切断された接続として扱います。再試行ラベルが具体的な理由を示すようになると `Connection lost while your computer was asleep` と表示され、Claude が思考を終えた後、テキストやツール呼び出しの前にターンが終了した場合、メッセージは `Your computer went to sleep 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* 停止した応答ストリーム。レスポンスヘッダーは届いたものの Claude の応答がまったく届いていない場合、または Claude が思考を終えたもののテキストやツール呼び出しを開始していない場合です。Claude Code は停止した接続を中断し、最大 1 回だけリクエストを再度ストリーミングします。Claude が思考を終えた後、テキストやツール呼び出しの前に応答が 2 回目に停止した場合、Claude Code は `The response stalled before a response was produced` でターンを終了します。

390* [ファーストバイトの期限が適用される](/docs/ja/network-config#streaming-idle-watchdogs)接続で、API がレスポンスヘッダーを返さないストリーミングリクエスト。Claude Code は期限の時点でそれを中断し、再試行回数の範囲内で、モデルリクエストごとに最大 1 回だけ再送信します。その試行にも応答がない場合は、[No response from API](#no-response-from-api) でターンを終了します。その他の接続では、リクエストは `API_TIMEOUT_MS` まで待機します。`CLAUDE_CODE_RETRY_WATCHDOG` を設定している場合、1 回の再試行という上限は適用されません。390* [ファーストバイトの期限が適用される](/docs/ja/network-config#streaming-idle-watchdogs)接続で、API がレスポンスヘッダーを返さないストリーミングリクエスト。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) を表示します。391* Claude が思考を終えるか、テキストやツール呼び出しを開始する前に、API の出力コンテンツフィルターによって停止されたストリーミングレスポンス。Claude Code は再試行回数の範囲内でリクエストを 1 回再送信し、フィルターが 2 回目の応答も停止した場合は [Output blocked by content filtering policy](#output-blocked-by-content-filtering-policy) を表示します。

392* 一時的な 429 スロットリング。ただし、ゲートウェイの支出上限による `429` はスロットリングではないため含まれません。[Spend limit reached](#spend-limit-reached) を参照してください。392* 一時的な 429 スロットリング。ただし、ゲートウェイの支出上限による `429` はスロットリングではないため含まれません。[Spend limit reached](#spend-limit-reached) を参照してください。


4064 マーケットプレイスは既に別のソースから追加されています4064 マーケットプレイスは既に別のソースから追加されています

4065</h3>4065</h3>

4066 4066 

4067[`/plugin install <plugin> --marketplace <source>`](/docs/ja/plugins/install#add-a-marketplace-and-install-in-one-command)を通じてマーケットプレイスの追加を確認し、そのソースから Claude Code が取得したカタログは、既に別のソースから追加したマーケットプレイスと同じ名前で自分自身に名前を付けます。Claude Code は既存のマーケットプレイスを保持し、それを置き換えず、プラグインはインストールされません。4067セッション内またはシェルから、[インストールコマンドの `--marketplace <source>`](/docs/ja/plugins/install#add-a-marketplace-and-install-in-one-command) で新しいマーケットプレイスソースを指定しました。Claude Code がそのソースから取得したカタログは、既に別のソースから追加したマーケットプレイスと同じ名前を持っています。Claude Code は既存のマーケットプレイスを置き換えずに保持し、プラグインはインストールされません。

4068 4068 

4069```text theme={null}4069```text theme={null}

4070Marketplace "acme-tools" is already added from a different source (github:acme/plugins). To use this source instead, remove that marketplace first with /plugin marketplace remove acme-tools.4070Marketplace "acme-tools" is already added from a different source (github:acme/plugins). To use this source instead, remove that marketplace first with /plugin marketplace remove acme-tools.


4817 This session has no saved transcript4817 This session has no saved transcript

4818</h3>4818</h3>

4819 4819 

4820停止した[バックグラウンドセッション](/docs/ja/agent-view)に接続しました。このセッションは `←` または `/background` で別の会話からバックグラウンドに移動され、最初の応答が完了する前に停止しました。その最初の応答が完了するまで、会話はバックグラウンドに移動した元のセッションにのみ存在するため、`claude attach` は停止したセッションの開始を拒否し、同じセッション ID で空白の会話を開始しません。メッセージは、このセッションの `claude respawn` コマンドで終わります:4820`←` または `/background` で[バックグラウンドに移動](/docs/ja/agent-view#from-inside-a-session)し、自身のターンを実行する前に停止したセッションに接続しました。Claude Code は移動元の会話を見つけられなかったため、このセッションには再開するものがありません。メッセージは、このセッションの `claude respawn` コマンドで終わります:

4821 4821 

4822```text theme={null}4822```text theme={null}

4823This session has no saved transcript — it was stopped before its first response finished. If it was backgrounded from another conversation, that one is still intact; `claude respawn <id>` starts this one fresh.4823This session has no saved transcript — it was stopped before its first response finished. If it was backgrounded from another conversation, that one is still intact; `claude respawn <id>` starts this one fresh.


4827 4827 

4828**対処方法:**4828**対処方法:**

4829 4829 

4830* バックグラウンドに移動した会話は無傷です:[`claude --resume`](/docs/ja/sessions) で再開するか、そこで作業を続けます

4831* 停止したセッションを新しく開始するには、メッセージの ID で `claude respawn <id>` を実行するか、エージェントビューの行で `Enter` を 2 回押します4830* 停止したセッションを新しく開始するには、メッセージの ID で `claude respawn <id>` を実行するか、エージェントビューの行で `Enter` を 2 回押します

4832* セッションが応答を完了し、v2.1.214 より前のバージョンでこの拒否が表示される場合、`~/.claude/projects` の読み取り不可フォルダがトランスクリプトスキャンが保存された会話を見つけるのを妨げる可能性があります。v2.1.214 以降にアップグレードしてください。これはスキャン中に読み取り不可フォルダを許容します4831* セッションが応答を完了し、v2.1.214 より前のバージョンでこの拒否が表示される場合、`~/.claude/projects` の読み取り不可フォルダがトランスクリプトスキャンが保存された会話を見つけるのを妨げる可能性があります。v2.1.214 以降にアップグレードしてください。これはスキャン中に読み取り不可フォルダを許容します

4833 4832 

glossary.md +1 −1

Details

511 Worktree isolation511 Worktree isolation

512</h3>512</h3>

513 513 

514Claude を `.claude/worktrees/` の別の git worktree で実行する分離モード。`-w` フラグまたは subagent 設定の `isolation: worktree` で有効にされます。変更は別のブランチの別のディレクトリに留まるため、並列エージェントはお互いのファイルを上書きしません。514Claude を `.claude/worktrees/` の別の git worktree で実行する分離モード。`-w` フラグまたはサブエージェント設定の `isolation: worktree` で有効にされます。変更は別のディレクトリの別のブランチに留まるため、並列エージェントはそれぞれ自分用のファイルのコピーを編集します。

515 515 

516詳細情報: [git worktrees を使用した並列セッションの実行](/docs/ja/worktrees)516詳細情報: [git worktrees を使用した並列セッションの実行](/docs/ja/worktrees)

517 517 

goal.md +1 −1

Details

127claude -p "/goal CHANGELOG.md has an entry for every PR merged this week"127claude -p "/goal CHANGELOG.md has an entry for every PR merged this week"

128```128```

129 129 

130デフォルトのテキスト出力では、実行が終了するまで何も出力されないため、多くのターンを実行するゴールは停止しているように見える場合があります。`--output-format stream-json --verbose` を追加して、ループの実行時に各メッセージを出力します。130デフォルトのテキスト出力では、ループが終了したときに Claude の最終応答が出力されるため、多くのターンを実行するゴールは停止しているように見える場合があります。`--output-format stream-json --verbose` を追加して、ループの実行時に各メッセージを出力します。

131 131 

132Ctrl+C でプロセスを中断して、解決前に非対話的なゴールを停止します。132Ctrl+C でプロセスを中断して、解決前に非対話的なゴールを停止します。

133 133 

headless.md +12 −10

Details

35Claude Code は成功時にコード 0 で終了し、実行が失敗した場合は 0 以外のコードで終了するため、スクリプトは終了ステータスで分岐できます。無効なフラグを渡すと、Claude Code は実行開始前にエラーを stderr に報告します。実行内で認証の欠落など障害が発生した場合、Claude Code は障害を stdout の結果として出力します。35Claude Code は成功時にコード 0 で終了し、実行が失敗した場合は 0 以外のコードで終了するため、スクリプトは終了ステータスで分岐できます。無効なフラグを渡すと、Claude Code は実行開始前にエラーを stderr に報告します。実行内で認証の欠落など障害が発生した場合、Claude Code は障害を stdout の結果として出力します。

36 36 

37<h3 id="start-faster-with-bare-mode">37<h3 id="start-faster-with-bare-mode">

38 ベアモードで高速に開始する38 bare モードで高速に開始する

39</h3>39</h3>

40 40 

41`--bare` を追加して、hooks、skills、カスタムコマンド、[subagents](/docs/ja/sub-agents)、インストール済みプラグイン、MCP サーバー、自動メモリ、CLAUDE.md の自動検出をスキップすることで、起動時間を短縮します。これがない場合、`claude -p` は対話的セッションと同じ [コンテキスト](/docs/ja/how-claude-code-works#the-context-window) を読み込みます。これには、作業ディレクトリまたは `~/.claude` で設定されたすべてが含まれます。41`--bare` を追加して、フック、スキル、カスタムコマンド、[サブエージェント](/docs/ja/sub-agents)、インストール済みプラグイン、MCP サーバー、自動メモリ、CLAUDE.md の自動検出をスキップすることで、起動時間を短縮します。これがない場合、`claude -p` は対話的セッションと同じ [コンテキスト](/docs/ja/how-claude-code-works#the-context-window) を読み込みます。これには、作業ディレクトリまたは `~/.claude` で設定されたすべてが含まれます。

42 42 

43ベアモードは、すべてのマシンで同じ結果が必要な CI とスクリプトに役立ちます。チームメイトの `~/.claude` のフック、またはプロジェクトの `.mcp.json` の MCP サーバーは実行されません。ベアモードはそれらを読み込まないためです。`--add-dir` で指定するディレクトリは部分的な例外です。ベアモードはその `.claude/skills/` フォルダから skills を読み込みますが、その `.claude/commands/` と `.claude/agents/` フォルダはスキップします。[追加ディレクトリからの Skills](/docs/ja/skills#skills-from-additional-directories) は、何が読み込まれ、何が読み込まれないかについて説明しています。43bare モードは、すべてのマシンで同じ結果が必要な CI とスクリプトに役立ちます。チームメイトの `~/.claude` のフック、またはプロジェクトの `.mcp.json` の MCP サーバーは実行されません。bare モードはそれらを読み込まないためです。`--add-dir` で指定するディレクトリは部分的な例外です。bare モードはその `.claude/skills/` フォルダからスキルを読み込みますが、その `.claude/commands/` と `.claude/agents/` フォルダはスキップします。[追加ディレクトリからのスキル](/docs/ja/skills#skills-from-additional-directories) は、何が読み込まれ、何が読み込まれないかについて説明しています。

44 44 

45`--bare` がない場合、`-p` セッションはプロジェクトの `.claude/settings.json` のフックを実行し、その `.mcp.json` のサーバーに接続します。これは、信頼したことのないフォルダでも同様です。`-p` セッションはワークスペース信頼ダイアログもサーバーごとの承認プロンプトも表示しません。[フォルダを信頼する前に実行されるもの](/docs/ja/permissions#what-runs-before-you-trust-a-folder) は、`-p` の下での各種リポジトリコンテンツと、それを除外する方法について説明しています。45`--bare` がない場合、`-p` セッションはプロジェクトの `.claude/settings.json` のフックを実行し、その `.mcp.json` のサーバーに接続します。これは、信頼したことのないフォルダでも同様です。`-p` セッションはワークスペース信頼ダイアログもサーバーごとの承認プロンプトも表示しません。[フォルダを信頼する前に実行されるもの](/docs/ja/permissions#what-runs-before-you-trust-a-folder) は、`-p` の下での各種リポジトリコンテンツと、それを除外する方法について説明しています。

46 46 

47この例は、ベアモードで 1 回限りの要約タスクを実行し、Read ツールを事前承認して、権限プロンプトなしで呼び出しが完了するようにします。ベアモードはサブスクリプションログインを使用しないため、実行前に `ANTHROPIC_API_KEY` を設定してください。47この例は、bare モードで 1 回限りの要約タスクを実行し、Read ツールを事前承認して、権限プロンプトなしで呼び出しが完了するようにします。bare モードはサブスクリプションログインを使用しないため、実行前に `ANTHROPIC_API_KEY` を設定してください。

48 48 

49```bash theme={null}49```bash theme={null}

50claude --bare -p "Summarize README.md" --allowedTools "Read"50claude --bare -p "Summarize README.md" --allowedTools "Read"

51```51```

52 52 

53ベアモードでは、Claude Code は OAuth 認証情報またはシステムキーチェーンを読み込みません。Anthropic API の場合、環境で `ANTHROPIC_API_KEY` を設定します。[Claude Console](https://platform.claude.com) で作成されたキーを使用するか、`--settings` JSON で `apiKeyHelper` を指定します。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry は、通常どおり独自のプロバイダー認証情報を読み込み続けます。53bare モードでは、Claude Code は OAuth 認証情報またはシステムキーチェーンを読み込みません。Anthropic API の場合、環境で `ANTHROPIC_API_KEY` を設定します。[Claude Console](https://platform.claude.com) で作成されたキーを使用するか、`--settings` JSON で `apiKeyHelper` を指定します。Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry は、通常どおり独自のプロバイダー認証情報を読み込み続けます。

54 54 

55ベアモードでは、Claude は Bash、ファイル読み取り、ファイル編集ツールにアクセスできます。フラグで必要なコンテキストを渡します。55bare モードでは、Claude は Bash、ファイル読み取り、ファイル編集ツールにアクセスできます。フラグで必要なコンテキストを渡します。

56 56 

57| 読み込むもの | 使用 |57| 読み込むもの | 使用 |

58| - | - |58| - | - |


84 84 

85実行は、バックグラウンドコマンド、サブエージェントとワークフロー、Monitor ウォッチ、保留中の `/loop` ウェイクアップなどのバックグラウンド作業を待機します。85実行は、バックグラウンドコマンド、サブエージェントとワークフロー、Monitor ウォッチ、保留中の `/loop` ウェイクアップなどのバックグラウンド作業を待機します。

86 86 

87* **[バックグラウンドコマンド](/docs/ja/tools-reference#background-commands)**: メイン会話が開始したコマンド(例えば開発サーバーやウォッチビルド)の場合、実行はコマンドが終了するか [時間制限](/docs/ja/tools-reference#time-limit-for-background-commands) に達するまで待機します。その後、Claude はその結果を受けてもう 1 ターン実行し、そのターンの結果が実行の最後の結果となります。これが `text` および `json` 出力で出力される結果です。コマンドの実行中は、10 分の上限によって待機が終了することはありません。87* **[バックグラウンドコマンド](/docs/ja/tools-reference#background-commands)**: メイン会話が開始したコマンド(例えば開発サーバーやウォッチビルド)の場合、実行はコマンドが終了するか [時間制限](/docs/ja/tools-reference#time-limit-for-background-commands) に達するまで待機します。その後、Claude はその結果を受けてもう 1 ターン実行します。コマンドの実行中は、10 分の上限によって待機が終了することはありません。

88* **バックグラウンドの [サブエージェント](/docs/ja/sub-agents) とワークフロー**: その結果は最終出力の一部であるため、実行はその作業が完了するまで開いたままになります。88* **バックグラウンドの [サブエージェント](/docs/ja/sub-agents) とワークフロー**: その結果は最終出力の一部であるため、実行はその作業が完了するまで開いたままになります。

89* **[Monitor](/docs/ja/tools-reference#monitor-tool) ウォッチ**: 実行は、ウォッチがタイムアウトするか 10 分の上限が待機を終了するか、どちらか先に来た方まで待機します。待機中、Claude はウォッチが報告することに応答し続けます。デフォルトでは、ウォッチは Claude が開始してから 5 分後にタイムアウトします。89* **[Monitor](/docs/ja/tools-reference#monitor-tool) ウォッチ**: 実行は、ウォッチがタイムアウトするか 10 分の上限が待機を終了するか、どちらか先に来た方まで待機します。待機中、Claude はウォッチが報告することに応答し続けます。デフォルトでは、ウォッチは Claude が開始してから 5 分後にタイムアウトします。

90* **保留中のウェイクアップ**: プロンプトを `--input-format stream-json` ではなくテキストとして渡した実行で、Claude が [自己ペースの `/loop` ウェイクアップ](/docs/ja/scheduled-tasks#let-claude-choose-the-interval) をスケジュールした場合、実行は各ウェイクアップが発生するのを待ち、[ループが終了する](/docs/ja/scheduled-tasks#stop-a-loop) までその反復を実行します。これは 10 分の上限を超えても続きます。90* **保留中のウェイクアップ**: プロンプトを `--input-format stream-json` ではなくテキストとして渡した実行で、Claude が [自己ペースの `/loop` ウェイクアップ](/docs/ja/scheduled-tasks#let-claude-choose-the-interval) をスケジュールした場合、実行は各ウェイクアップが発生するのを待ち、[ループが終了する](/docs/ja/scheduled-tasks#stop-a-loop) までその反復を実行します。これは 10 分の上限を超えても続きます。

91 91 

92実行が [`--max-budget-usd`](/docs/ja/cli-reference#cli-flags) の上限に達した場合、Claude Code は待機せずに残りのバックグラウンド作業を停止します。92実行が [`--max-budget-usd`](/docs/ja/cli-reference#cli-flags) の上限に達した場合、Claude Code は待機せずに残りのバックグラウンド作業を停止します。

93 93 

94バックグラウンド作業によって別のターンが開始された場合、デフォルトの `text` 出力では各ターンの結果が出力され、`json` 出力では最後のターンの結果が出力されます。v2.1.295 より前は、`text` 出力でも最後のターンの結果のみが出力されていました。

95 

94<h3 id="stop-a-run-with-sigterm">96<h3 id="stop-a-run-with-sigterm">

95 SIGTERM で実行を停止する97 SIGTERM で実行を停止する

96</h3>98</h3>

97 99 

98`claude -p` 実行を SIGTERM で停止した場合(例えば、`kill` またはプロセススーパーバイザーから)、Claude Code はコード 143 で終了します。Claude Code は進行中のターンを未完了のままにし、そのための結果を記録しません。ターンを終了するには、SIGINT を送信するか、Agent SDK の `interrupt()` を呼び出してから、プロセスを停止します。100`claude -p` 実行を SIGTERM で停止した場合(例えば、`kill` またはプロセススーパーバイザーから)、Claude Code はコード 143 で終了します。Claude Code は進行中のターンを未完了のままにし、そのための結果を記録しません。ターンを終了するには、SIGINT を送信するか、Agent SDK の `interrupt()` を呼び出してから、プロセスを停止します。

99 101 

100SIGTERM では、Claude Code はまだ実行中の Bash コマンドのプロセスツリーを終了します。Claude Code は [`SessionEnd` hooks](/docs/ja/hooks#sessionend) を実行して終了します。終了中、Claude Code は新しいツール呼び出しを開始せず、新しいモデルリクエストを送信せず、`SessionEnd` 以外のフックを実行しません。実行が権限プロンプトへの回答を待機しているコマンドの途中にあった場合、Claude Code はそのステップを次のように処理します。102SIGTERM では、Claude Code はまだ実行中の Bash コマンドのプロセスツリーを終了します。Claude Code は [`SessionEnd` フック](/docs/ja/hooks#sessionend) を実行して終了します。終了中、Claude Code は新しいツール呼び出しを開始せず、新しいモデルリクエストを送信せず、`SessionEnd` 以外のフックを実行しません。シグナルを受け取ったときに実行がコマンドの途中にあった場合、または権限プロンプトへの回答を待機していた場合、Claude Code はそのステップを次のように処理します。

101 103 

102* **コマンドを実行中**: Claude Code はコマンドをセッションで強制終了として記録します。104* **コマンドを実行中**: Claude Code はコマンドをセッションで強制終了として記録します。

103* **権限プロンプトへの回答を待機中**: SIGTERM をプロセスに送信した場合、Claude Code はプロンプトを未回答のままにします。プログラムが Agent SDK を通じてセッションを閉じた場合、SDK はシグナルを送信する前に Claude Code の入力を終了し、Claude Code は入力が終了するとすぐにプロンプトをキャンセルします。105* **権限プロンプトへの回答を待機中**: SIGTERM をプロセスに送信した場合、Claude Code はプロンプトを未回答のままにします。プログラムが Agent SDK を通じてセッションを閉じた場合、SDK はシグナルを送信する前に Claude Code の入力を終了し、Claude Code は入力が終了するとすぐにプロンプトをキャンセルします。


262| `type` | `"system"` | メッセージタイプ |264| `type` | `"system"` | メッセージタイプ |

263| `subtype` | `"api_retry"` | これを再試行イベントとして識別 |265| `subtype` | `"api_retry"` | これを再試行イベントとして識別 |

264| `attempt` | integer | 現在の試行番号(1 から開始) |266| `attempt` | integer | 現在の試行番号(1 から開始) |

265| `max_retries` | integer | このエラーの原因に許可される再試行の合計(セッション全体の予算より少ない場合がある) |267| `max_retries` | integer | この失敗の原因に対して許可される再試行の合計 |

266| `retry_delay_ms` | integer | 次の試行までのミリ秒 |268| `retry_delay_ms` | integer | 次の試行までのミリ秒 |

267| `error_status` | integer または null | 失敗した試行の HTTP ステータスコード、または試行が API から HTTP レスポンスを受け取らなかった場合は `null` |269| `error_status` | integer または null | 失敗した試行の HTTP ステータスコード、または試行が API から HTTP レスポンスを受け取らなかった場合は `null` |

268| `no_response` | object、optional | 失敗した試行が [no response headers in time](/docs/ja/errors#no-response-from-api) を受け取った場合にのみ存在します。`waited_ms` はその試行が待機した時間で、`retry_wait_ms` は再試行が待機する時間です。これらのイベントでは、`max_retries` はセッション全体の予算ではなく、この原因が通常受け取る 1 回の再試行を反映しています。Claude Code v2.1.261 以降が必要です |270| `no_response` | object、optional | 失敗した試行が[時間内にレスポンスヘッダーを受け取らなかった](/docs/ja/errors#no-response-from-api)場合にのみ存在します。`waited_ms` はその試行が待機した時間で、`retry_wait_ms` は再試行が待機する時間です。Claude Code v2.1.261 以降が必要です |

269| `error` | string | エラーカテゴリ:`authentication_failed`、`oauth_org_not_allowed`、`account_on_hold`、`billing_error`、`rate_limit`、`overloaded`、`invalid_request`、`model_not_found`、`server_error`、`max_output_tokens`、`cloud_credential_error`、または `unknown` |271| `error` | string | エラーカテゴリ:`authentication_failed`、`oauth_org_not_allowed`、`account_on_hold`、`billing_error`、`rate_limit`、`overloaded`、`invalid_request`、`model_not_found`、`server_error`、`max_output_tokens`、`cloud_credential_error`、または `unknown` |

270| `uuid` | string | 一意のイベント識別子 |272| `uuid` | string | 一意のイベント識別子 |

271| `session_id` | string | イベントが属するセッション |273| `session_id` | string | イベントが属するセッション |

hooks.md +19 −8

Details

1237 SessionStart の判定制御1237 SessionStart の判定制御

1238</h4>1238</h4>

1239 1239 

1240Claude Code は、[プレーンテキストとして扱う](#exit-code-0)標準出力を Claude のコンテキストに追加します。すべてのフックで利用できる [JSON 出力フィールド](#json-output)に加えて、以下のイベント固有のフィールドを返すことができます。1240SessionStart フックは、Claude へのコンテキストの追加、最初のユーザーメッセージの指定、セッションタイトルの設定、ファイルの監視、スキルの再読み込みを行えます。すべてのフックで利用できる [JSON 出力フィールド](#json-output)に加えて、それぞれに対応するフィールドを返してください。

1241 1241 

1242| フィールド | 説明 |1242| フィールド | 説明 |

1243| :- | :- |1243| :- | :- |

1244| `additionalContext` | 会話の開始時、最初のプロンプトの前に Claude のコンテキストに追加される文字列。テキストがどのように渡されるか、何を含めるべきかについては [Claude にコンテキストを追加する](#add-context-for-claude)を参照してください |1244| `additionalContext` | 会話の開始時、最初のプロンプトの前に Claude のコンテキストに追加される文字列。テキストがどのように渡されるか、何を含めるべきかについては [Claude にコンテキストを追加する](#add-context-for-claude)を参照してください |

1245| `initialUserMessage` | セッションの最初のユーザーメッセージとして使用される文字列。`-p` フラグを使用した[非対話モード](/docs/ja/headless)で適用され、プロンプトが指定されていなくても最初のターンになります。プロンプトが指定されている場合は、その次のターンとして続きます。既存のターンに付加される `additionalContext` とは異なり、これはターンを作成します |1245| `initialUserMessage` | `-p` フラグを使用した[非対話モード](/docs/ja/headless)で、セッションの最初のユーザーメッセージとして使用される文字列。プロンプトを渡さなくても最初のターンになります。プロンプトを渡した場合は、次のターンとして続きます |

1246| `sessionTitle` | セッションタイトルを設定します。`/rename` と同じ効果があります。起動フォルダ、git ブランチ、worktree 名からセッションに自動で名前を付ける場合に使用します。`source` が `"startup"`、`"resume"`、`"fork"` の場合に適用され、`"clear"` と `"compact"` では無視されます |1246| `sessionTitle` | セッションタイトルを設定します。`/rename` と同じ効果があります。`source` が `"startup"`、`"resume"`、または `"fork"` の場合に適用されます |

1247| `watchPaths` | このセッション中に [FileChanged](#filechanged) イベントを監視する絶対パスの配列 |1247| `watchPaths` | このセッション中に [FileChanged](#filechanged) イベントを監視する絶対パスの配列 |

1248| `reloadSkills` | ブール値。`true` の場合、Claude Code は SessionStart フックの完了後に[スキル](/docs/ja/skills)とコマンドのディレクトリを再スキャンするため、フックがインストールしたスキルは同じセッションの最初のプロンプトから利用できます |1248| `reloadSkills` | ブール値。`true` の場合、Claude Code は SessionStart フックの完了後に[スキル](/docs/ja/skills)とコマンドのディレクトリを再スキャンします。[フックがインストールしたスキルを再読み込みする](#reload-skills-that-a-hook-installs)を参照してください |

1249 

1250次の出力はコンテキストを追加し、セッションに名前を付けます。

1249 1251 

1250```json theme={null}1252```json theme={null}

1251{1253{


1257}1259}

1258```1260```

1259 1261 

1260このイベントでは通常の標準出力がすでに Claude に届くため、コンテキストを読み込むだけのフックは JSON を組み立てずに直接標準出力に出力できます。コンテキストを `sessionTitle` などの他のフィールドと組み合わせる必要がある場合は JSON 形式を使用してください。1262Claude Code は SessionStart フックの[プレーンテキストの stdout](#exit-code-0) を Claude のコンテキストに追加するため、コンテキストを追加するだけのフックは JSON を組み立てずにそのまま出力できます。

1263 

1264プラグインの SessionStart フックが `initialUserMessage` または `sessionTitle` を指定する場合は、セッションの開始前にプラグインをインストールしてください。SessionStart フックの実行後にインストールが完了したプラグインからのこれら 2 つのフィールドは、Claude Code によって無視されます。

1265 

1266<h4 id="reload-skills-that-a-hook-installs">

1267 フックがインストールしたスキルを再読み込みする

1268</h4>

1269 

1270SessionStart フックがインストールしたスキルを同じセッションで利用できるようにするには、`reloadSkills` を返します。スキルの検出は通常 SessionStart フックの完了前に実行されるため、これがないと、フックが `~/.claude/skills/` や `.claude/skills/` に書き込んだファイルが最初のプロンプトの実行時に見つからない場合があります。

1261 1271 

1262SessionStart フックがスキルをインストールまたは更新する場合は `reloadSkills` を使用してください。スキルの検出は通常 SessionStart フックの完了前に実行されるため、フックが `~/.claude/skills/` や `.claude/skills/` に書き込んだファイルは、そうしないと次のセッションでしか表示されません。次の例では、共有スキルリポジトリを同期し、再スキャンを要求します。1272次の例は、共有スキルのリポジトリを同期し、再スキャンを要求します。

1263 1273 

1264```bash theme={null}1274```bash theme={null}

1265#!/bin/bash1275#!/bin/bash


1270echo '{"hookSpecificOutput": {"hookEventName": "SessionStart", "reloadSkills": true}}'1280echo '{"hookSpecificOutput": {"hookEventName": "SessionStart", "reloadSkills": true}}'

1271```1281```

1272 1282 

1273リポジトリの URL はプレースホルダーです。独自のスキルリポジトリに置き換えてください。プレースホルダーのままではクローンが失敗し、標準エラー出力に `fatal:` メッセージが出力されます。終了コード 0 で終了した SessionStart フックの標準エラー出力は情報提供のみを目的としているため、`reloadSkills` の要求は引き続き適用されます。1283リポジトリの URL はプレースホルダーです。独自のスキルリポジトリに置き換えてください。

1274 1284 

1275<h4 id="persist-environment-variables">1285<h4 id="persist-environment-variables">

1276 環境変数を永続化する1286 環境変数を永続化する


1860| :- | :- | :- | :- |1870| :- | :- | :- | :- |

1861| `url` | string | `"https://example.com/api"` | コンテンツを取得する URL |1871| `url` | string | `"https://example.com/api"` | コンテンツを取得する URL |

1862| `prompt` | string | `"Extract the API endpoints"` | 取得したコンテンツに対して実行するプロンプト |1872| `prompt` | string | `"Extract the API endpoints"` | 取得したコンテンツに対して実行するプロンプト |

1873| `offset` | number | `100000` | ページの先頭からスキップする文字数(オプション)。Claude は長いページの続きを読むためにこれを設定します。Claude Code v2.1.290 以降が必要です |

1863 1874 

1864<h5 id="websearch">1875<h5 id="websearch">

1865 WebSearch1876 WebSearch


4278非同期フックは同期フックと比べていくつかの制約があります。4289非同期フックは同期フックと比べていくつかの制約があります。

4279 4290 

4280* フック出力は次の会話ターンで配信されます。セッションがアイドル状態の場合、レスポンスは次のユーザー操作まで待機します。例外: `asyncRewake` フックが終了コード 2 で終了すると、セッションがアイドル状態でも Claude を直ちに起動します。4291* フック出力は次の会話ターンで配信されます。セッションがアイドル状態の場合、レスポンスは次のユーザー操作まで待機します。例外: `asyncRewake` フックが終了コード 2 で終了すると、セッションがアイドル状態でも Claude を直ちに起動します。

4281* 各実行は個別のバックグラウンド プロセスを作成します。同じ非同期フックの複数の発火全体で重複排除はありません。4292* 各実行は個別のバックグラウンド プロセスを作成します。

4282 4293 

4283<h2 id="security-considerations">4294<h2 id="security-considerations">

4284 セキュリティに関する考慮事項4295 セキュリティに関する考慮事項

mcp.md +1 −1

Details

367 367 

368v2 では、Claude Code も:368v2 では、Claude Code も:

369 369 

370* HTTP サーバーと stdio サーバーに新しいリビジョンをサポートするかどうかを尋ね、それをサポートするサーバーで使用します。フィーチャーフラグを取得するセッションでは、claude.ai コネクタサーバーにも尋ねます。他のすべてのサーバーには v1 と同様に接続します。370* HTTP、stdio、claude.ai コネクタの各サーバーに新しいリビジョンをサポートするかどうかを尋ね、それをサポートするサーバーで使用します。他のすべてのサーバーには v1 と同様に接続します。

371* 新しいリビジョンのサーバーから [保持するストリーム](#notification-streams-on-the-v2-runtime) 上で `list_changed` 通知を受け取ります。371* 新しいリビジョンのサーバーから [保持するストリーム](#notification-streams-on-the-v2-runtime) 上で `list_changed` 通知を受け取ります。

372* 新しいリビジョンで接続する [チャネル](#push-messages-with-channels) サーバーを登録しません。そのリビジョンはチャネルメッセージを運ぶことができないためです。372* 新しいリビジョンで接続する [チャネル](#push-messages-with-channels) サーバーを登録しません。そのリビジョンはチャネルメッセージを運ぶことができないためです。

373* 予期しない発行者を示す認可応答の [MCP OAuth サインイン](#authenticate-with-remote-mcp-servers) を失敗させます。373* 予期しない発行者を示す認可応答の [MCP OAuth サインイン](#authenticate-with-remote-mcp-servers) を失敗させます。

Details

599 599 

600`/login` を通じて [Claude apps gateway](/docs/ja/claude-apps-gateway) にサインインしたセッションでは、CLI は認証済みの ID をエクスポートに付与します。`user.id` は IdP のサブジェクト、`user.email` はサインインしたメールアドレスで、`user.groups` は IdP のグループメンバーシップをカンマ区切りの文字列として保持します。各エクスポートには `identity.source: gateway-oidc` も付与されます。ゲートウェイの ID は最後に適用されるため、これらのセッションでは `OTEL_RESOURCE_ATTRIBUTES` で設定した `user.*` および `identity.*` キーは無視されます。600`/login` を通じて [Claude apps gateway](/docs/ja/claude-apps-gateway) にサインインしたセッションでは、CLI は認証済みの ID をエクスポートに付与します。`user.id` は IdP のサブジェクト、`user.email` はサインインしたメールアドレスで、`user.groups` は IdP のグループメンバーシップをカンマ区切りの文字列として保持します。各エクスポートには `identity.source: gateway-oidc` も付与されます。ゲートウェイの ID は最後に適用されるため、これらのセッションでは `OTEL_RESOURCE_ATTRIBUTES` で設定した `user.*` および `identity.*` キーは無視されます。

601 601 

602<Note>

603 開発者がサインインする前に Claude Code がログに記録するイベントには、ゲートウェイの ID は含まれません。Claude Code がゲートウェイからサインアウトした状態でセッションを開始する場合(たとえば[ゲートウェイがサインインを終了](/docs/ja/errors#cloud-gateway-session-expired)した後など)、サインイン前にログに記録された起動イベントには匿名の `user.id` が含まれ、`identity.source` は含まれません。これには [`managed_settings_resolved`](#managed-settings-resolved-event)、[`plugin_loaded`](#plugin-loaded-event)、[`mcp_server_connection`](#mcp-server-connection-event) が含まれます。

604</Note>

605 

602ゲートウェイ経由で接続する Claude Desktop および Cowork セッションの ID 属性については、[ゲートウェイの `telemetry` リファレンス](/docs/ja/claude-apps-gateway-config#telemetry)を参照してください。606ゲートウェイ経由で接続する Claude Desktop および Cowork セッションの ID 属性については、[ゲートウェイの `telemetry` リファレンス](/docs/ja/claude-apps-gateway-config#telemetry)を参照してください。

603 607 

604イベントには、さらに以下の属性が含まれます。これらはカーディナリティが無制限に増大する原因となるため、メトリクスには付与されません。608イベントには、さらに以下の属性が含まれます。これらはカーディナリティが無制限に増大する原因となるため、メトリクスには付与されません。


917* `error`: エラーメッセージ921* `error`: エラーメッセージ

918* `status_code`: 数値としての HTTP ステータスコード。接続の失敗など、HTTP 以外のエラーの場合は含まれません。922* `status_code`: 数値としての HTTP ステータスコード。接続の失敗など、HTTP 以外のエラーの場合は含まれません。

919* `duration_ms`: リクエストの所要時間(ミリ秒)923* `duration_ms`: リクエストの所要時間(ミリ秒)

920* `attempt`: 最初のリクエストを含む試行の合計回数(`1` は再試行が発生しなかったことを意味します)924* `attempt`: 最初のリクエストを含む試行回数。カウントが再開されるタイミングについては[再試行の上限到達を検出する](#detect-retry-exhaustion)を参照してください

921* `request_id`: API リクエスト ID(例: `"req_011..."`)。[イベント相関属性](#event-correlation-attributes)で説明しています。925* `request_id`: API リクエスト ID(例: `"req_011..."`)。[イベント相関属性](#event-correlation-attributes)で説明しています。

922* `client_request_id`: `x-client-request-id` リクエストヘッダーとして送信される、クライアントが生成した UUID。タイムアウトや接続エラーなどの失敗によってサーバーの `request_id` が生成されなかった場合でも利用できます。含まれる条件については[イベント相関属性](#event-correlation-attributes)の表を参照してください。Claude Code v2.1.214 以降が必要です926* `client_request_id`: `x-client-request-id` リクエストヘッダーとして送信される、クライアントが生成した UUID。タイムアウトや接続エラーなどの失敗によってサーバーの `request_id` が生成されなかった場合でも利用できます。含まれる条件については[イベント相関属性](#event-correlation-attributes)の表を参照してください。Claude Code v2.1.214 以降が必要です

923* `speed`: `"fast"` または `"normal"`。fast mode が有効だったかどうかを示します927* `speed`: `"fast"` または `"normal"`。fast mode が有効だったかどうかを示します


1528 1532 

1529Claude Code は失敗した API リクエストを内部的に再試行し、あきらめた後にのみ単一の `claude_code.api_error` イベントを出力するため、イベント自体がそのリクエストの終端信号です。中間再試行試行は個別のイベントとしてログされません。1533Claude Code は失敗した API リクエストを内部的に再試行し、あきらめた後にのみ単一の `claude_code.api_error` イベントを出力するため、イベント自体がそのリクエストの終端信号です。中間再試行試行は個別のイベントとしてログされません。

1530 1534 

1531イベントの `attempt` 属性は、試行の総数を記録します。`CLAUDE_CODE_MAX_RETRIES` はデフォルトで 10 で、15 で上限です。v2.1.199 以降では、`CLAUDE_CODE_RETRY_WATCHDOG` を設定してデフォルトを引き上げ、上限を削除できます。1535イベントの `attempt` 属性は、試行回数を記録します。`CLAUDE_CODE_MAX_RETRIES` はデフォルトで 10 で、15 で上限です。v2.1.199 以降では、`CLAUDE_CODE_RETRY_WATCHDOG` を設定してデフォルトを引き上げ、上限を削除できます。

1536 

1537リクエストが一時的なエラーのすべての再試行を枯渇させた場合、`attempt` は最大でもその有効な制限より 1 つ多い値になります: デフォルトでは 11 です。

1532 1538 

1533リクエストが一時的なエラーのすべての再試行を枯渇させた場合、`attempt` はその有効な制限より 1 つ多くなります: デフォルトでは 11、ウォッチドッグが設定されていない限り 16 を超えることはありません。より低い値は、`400` レスポンスなどの再試行不可能なエラー、または独自のより小さい再試行予算を持つ原因を示します。たとえば、Claude Code は AWS または Google Cloud 認証情報の読み込み失敗を最大 2 回再試行します。1539より低い値でも再試行が尽きたことを意味する場合があります: Claude Code がストリーミングの失敗後にリクエストを再発行するたびに、`attempt` は `1` から再び開始されるためです。

1534 1540 

1535セッションが回復したものと停止したものを区別するには、イベントを `session.id` でグループ化し、エラーの後に後続の `api_request` イベントが存在するかどうかを確認します。1541セッションが回復したものと停止したものを区別するには、イベントを `session.id` でグループ化し、エラーの後に後続の `api_request` イベントが存在するかどうかを確認します。

1536 1542 

Details

91| `-y, --yes` | `Run this command now?` プロンプトなしで表示されたインストールコマンドを受け入れます。Bash ツールまたはフックからなど、Claude Code セッション内で実行されるコマンドでは無視されます。Claude Code v2.1.229 以降が必要です |91| `-y, --yes` | `Run this command now?` プロンプトなしで表示されたインストールコマンドを受け入れます。Bash ツールまたはフックからなど、Claude Code セッション内で実行されるコマンドでは無視されます。Claude Code v2.1.229 以降が必要です |

92| `--accept-command <sha256>` | 前の [`--json` 実行](#plugin-json-result)が `shownCommand` で報告した `sha256` を持つ表示されたインストールコマンドを受け入れます。`-y` の代わりに使用します。`-y` と組み合わせることはできません。[表示されたインストールコマンドを受け入れる](#accept-a-displayed-install-command)を参照してください。Claude Code v2.1.271 以降が必要です |92| `--accept-command <sha256>` | 前の [`--json` 実行](#plugin-json-result)が `shownCommand` で報告した `sha256` を持つ表示されたインストールコマンドを受け入れます。`-y` の代わりに使用します。`-y` と組み合わせることはできません。[表示されたインストールコマンドを受け入れる](#accept-a-displayed-install-command)を参照してください。Claude Code v2.1.271 以降が必要です |

93| `--json` | スクリプトで使用するために、人間が読める形式のメッセージの代わりに、stdout の最後の行に 1 つの JSON オブジェクトとして結果を出力します。[JSON 結果形式](#plugin-json-result)を参照してください。Claude Code v2.1.268 以降が必要です |93| `--json` | スクリプトで使用するために、人間が読める形式のメッセージの代わりに、stdout の最後の行に 1 つの JSON オブジェクトとして結果を出力します。[JSON 結果形式](#plugin-json-result)を参照してください。Claude Code v2.1.268 以降が必要です |

94| `--marketplace <source>` | ベア名で指定した `<plugin>` を `<source>` のマーケットプレイスからインストールします。そのマーケットプレイスをまだ追加していない場合は、先に追加します。[1 つのコマンドでマーケットプレイスを追加してインストールする](/docs/ja/plugins/install#add-a-marketplace-and-install-in-one-command)を参照してください。Claude Code v2.1.292 以降が必要です |

94 95 

95使用しているバージョンがサポートするすべてのオプションを確認するには、シェルで `claude plugin install --help` を実行してください。96使用しているバージョンがサポートするすべてのオプションを確認するには、シェルで `claude plugin install --help` を実行してください。

96 97 

Details

189 189 

190* **Scope**: デフォルトではユーザースコープ。`--scope project` または `--scope local` を渡して変更します。190* **Scope**: デフォルトではユーザースコープ。`--scope project` または `--scope local` を渡して変更します。

191* **プラグインが読み込まれるとき**: インストールするプラグインは、Claude Code を次に開始するときか、既に開いているセッションで `/reload-plugins` を実行するときに読み込まれます。191* **プラグインが読み込まれるとき**: インストールするプラグインは、Claude Code を次に開始するときか、既に開いているセッションで `/reload-plugins` を実行するときに読み込まれます。

192* **マーケットプレイスは最初に追加する必要があります**: 誰も対話的な Claude Code セッションを開いていないマシンでは、公式マーケットプレイスが登録されていないため、そこからインストールするスクリプトは、インストール前に `claude plugin marketplace add anthropics/claude-plugins-official` を実行します。192* **新しいマシンでのマーケットプレイス**: まだ誰も対話的な Claude Code セッションを開いていないマシンでは、公式マーケットプレイスが登録されていないため、そこからインストールするスクリプトは、インストール前に `claude plugin marketplace add anthropics/claude-plugins-official` を実行します。[シェルから追加してインストールする](#add-and-install-from-your-shell)を参照してください。

193 193 

194```bash theme={null}194```bash theme={null}

195claude plugin install formatter@your-org --scope project195claude plugin install formatter@your-org --scope project


232 マーケットプレイスを追加してインストール(1 つのコマンド)232 マーケットプレイスを追加してインストール(1 つのコマンド)

233</h3>233</h3>

234 234 

235まだ追加していないマーケットプレイスからプラグインをインストールするには、Claude Code セッション内で `/plugin install` を実行し、`--marketplace` でマーケットプレイスソースを指定します。Claude Code v2.1.275 以降が必要です。235まだ追加していないマーケットプレイスからプラグインをインストールするには、セッション内またはシェルから、インストールコマンドで `--marketplace` を使ってマーケットプレイスのソースを指定します。ソースは [`/plugin marketplace add` と同じ形式](#add-a-marketplace)を取ります。例えば、GitHub `owner/repo`、git URL、またはローカルパスです。プラグイン名は `@marketplace` サフィックスなしで単独で指定します。

236 

237<h4 id="add-and-install-in-a-session">

238 セッション内で追加してインストールする

239</h4>

240 

241Claude Code セッション内で、プラグインとソースを指定して `/plugin install` を実行します。Claude Code v2.1.275 以降が必要です。セッション内では、ソースにスペースを含めることはできません。

236 242 

237```text theme={null}243```text theme={null}

238/plugin install deploy-helper --marketplace your-org/plugins244/plugin install deploy-helper --marketplace your-org/plugins

239```245```

240 246 

241ソースは [/plugin marketplace add](#add-a-marketplace) と同じ形式を取ります。例えば、GitHub `owner/repo`、git URL、またはローカルパス。ただし、スペースを含むことはできません。プラグイン名を `@marketplace` サフィックスなしで指定します。

242 

243そのマーケットプレイスをまだ追加していない場合、Claude Code は解決したソースを表示し、追加する前に確認するよう求めます。マーケットプレイスが追加されると、プラグインの詳細が開き、[インストール範囲](#install-a-plugin)を選択します。ソースが既に追加したマーケットプレイスと一致する場合、Claude Code は確認をスキップし、そのマーケットプレイスでプラグインの詳細を開きます。247そのマーケットプレイスをまだ追加していない場合、Claude Code は解決したソースを表示し、追加する前に確認するよう求めます。マーケットプレイスが追加されると、プラグインの詳細が開き、[インストール範囲](#install-a-plugin)を選択します。ソースが既に追加したマーケットプレイスと一致する場合、Claude Code は確認をスキップし、そのマーケットプレイスでプラグインの詳細を開きます。

244 248 

249<h4 id="add-and-install-from-your-shell">

250 シェルから追加してインストールする

251</h4>

252 

253シェルで、セッションを開始せずに、プラグインとソースを指定して `claude plugin install` を実行します。Claude Code v2.1.292 以降が必要です。

254 

255```bash theme={null}

256claude plugin install deploy-helper --marketplace your-org/plugins

257```

258 

259シェルコマンドは確認ステップなしでマーケットプレイスを追加します。そのソースから既に追加したマーケットプレイスは再利用されます。新しいマーケットプレイスは `claude plugin marketplace add` と同じ[組織ポリシーチェック](/docs/ja/plugins/org#restrict-what-users-can-install)のもとで追加され、`--scope project` を渡した場合でもユーザー設定で宣言されます。

260 

245<h3 id="add-a-private-marketplace">261<h3 id="add-a-private-marketplace">

246 プライベートマーケットプレイスを追加する262 プライベートマーケットプレイスを追加する

247</h3>263</h3>

Details

138| `$.mcp.call` | 接続された MCP サーバーのツールを呼び出し、セッションの権限ルールの下で実行します |138| `$.mcp.call` | 接続された MCP サーバーのツールを呼び出し、セッションの権限ルールの下で実行します |

139| `$.model.complete` | ユーザーのプランまたは API キーをモデル呼び出しに使用します |139| `$.model.complete` | ユーザーのプランまたは API キーをモデル呼び出しに使用します |

140| `$.prompt.submit` | プロンプトを送信し、ユーザー独自の言葉として送信できます |140| `$.prompt.submit` | プロンプトを送信し、ユーザー独自の言葉として送信できます |

141| `$.session.send` | 別のセッションまたはサブエージェントの Claude が読む メッセージを送信します |141| `$.session.send` | 別のセッション、サブエージェント、または [チームメイト](/docs/ja/agent-teams) の Claude が読むメッセージを送信します |

142 142 

143`hooks:` 行では、[`tool.call`](/docs/ja/plugins/mods/reference#tools) と [`prompt.submit`](/docs/ja/plugins/mods/reference#prompts-and-what-claude-reads) は mod がすべてのツール呼び出しとすべてのプロンプトを見ることができ、それらを変更できることを意味しています。[`session.append`](/docs/ja/plugins/mods/reference#session) は mod が保存される前に会話の各行を書き直すことができることを意味しています。[`ui.render{component=AskUserQuestion}`](/docs/ja/plugins/mods/interface#change-what-claude-code-already-draws) は mod が Claude がユーザーに質問するために使用するダイアログを再描画できることを意味しています。`tool.check` は mod が権限プロンプトが表示される前にツール呼び出しを承認または拒否できることを意味しています。[デフォルトで何が起こるかを理解する](#know-what-happens-by-default) は、その答えに優先する規則とフックを一覧表示しています。143`hooks:` 行では、[`tool.call`](/docs/ja/plugins/mods/reference#tools) と [`prompt.submit`](/docs/ja/plugins/mods/reference#prompts-and-what-claude-reads) は mod がすべてのツール呼び出しとすべてのプロンプトを見ることができ、それらを変更できることを意味しています。[`session.append`](/docs/ja/plugins/mods/reference#session) は mod が保存される前に会話の各行を書き直すことができることを意味しています。[`ui.render{component=AskUserQuestion}`](/docs/ja/plugins/mods/interface#change-what-claude-code-already-draws) は mod が Claude がユーザーに質問するために使用するダイアログを再描画できることを意味しています。`tool.check` は mod が権限プロンプトが表示される前にツール呼び出しを承認または拒否できることを意味しています。[デフォルトで何が起こるかを理解する](#know-what-happens-by-default) は、その答えに優先する規則とフックを一覧表示しています。

144 144 

Details

140| 呼び出し | ユーザーが見るもの |140| 呼び出し | ユーザーが見るもの |

141| :- | :- |141| :- | :- |

142| `$.ui.status(text)` | プロンプトの下の 1 行で、変更するまで残ります。`⚠` と mod の名前で始まります。`⚠ my-mod: checks: 3 passing` など。 |142| `$.ui.status(text)` | プロンプトの下の 1 行で、変更するまで残ります。`⚠` と mod の名前で始まります。`⚠ my-mod: checks: 3 passing` など。 |

143| `$.ui.toast(text)` | 右上に表示されるトースト通知で、mod の名前がテキストの上にあり、数秒後に消えます |143| `$.ui.toast(text)` | mod の名前を含むトースト通知で、数秒後に消えます。[フルスクリーンレンダリング](/docs/ja/fullscreen)では右上のボックスとして、クラシックレンダラーではプロンプトの下の右側に 1 行で表示されます。 |

144| `$.ui.log(text)` | Claude が読まない、トランスクリプト内の薄い行。`●` と mod の名前で始まります。`● my-mod: build finished` など。 |144| `$.ui.log(text)` | Claude が読まない、トランスクリプト内の薄い行。`●` と mod の名前で始まります。`● my-mod: build finished` など。 |

145 145 

146<h3 id="start-a-turn-from-a-background-job">146<h3 id="start-a-turn-from-a-background-job">


159 セッション間でメッセージを送受信する159 セッション間でメッセージを送受信する

160</h2>160</h2>

161 161 

162mod は、別のセッションまたはこのセッションのサブエージェントの 1 つにプレーンテキストメッセージを送信し、到着して離れるメッセージを観察できます。`$.session.send({ to, text })` は 1 つを送信し、SendMessage ツールが行う配信と同じです。`to` は、セッションの場合は `{ sessionId }`、`$.agent.list()` からのサブエージェントの場合は `{ agentId }`、または受信したメッセージが来たアドレスです。呼び出しはメッセージがキューに入ったら解決し、`{ isDelivered: true }` で解決します。何も配信されなかった場合、`{ isDelivered: false, reason }` で解決し、`reason` は理由を述べます。162mod は、自分の別のセッション、このセッションのサブエージェントの 1 つ、またはその[エージェントチーム](/docs/ja/agent-teams)のチームメイトにプレーンテキストメッセージを送信できます。また、到着して離れるメッセージを観察することもできます。

163 

164メッセージを送信するには、`$.session.send({ to, text })` を呼び出します。これは SendMessage ツールが行う配信と同じです。`to` は受信者に応じて設定します。

165 

166* **自分の別のセッション**: `{ sessionId }`

167* **サブエージェントまたはチームメイト**: `{ agentId }`(`$.agent.list()` から取得した ID を使用)

168* **受信したメッセージの送信者**: そのメッセージの送信元の文字列アドレス

169 

170呼び出しはメッセージがキューに入ったら解決し、`{ isDelivered: true }` で解決します。何も配信されなかった場合、`{ isDelivered: false, reason }` で解決し、`reason` は理由を述べます。

163 171 

164このフックは、[コマンドとして登録された](#add-a-command) `/ping` コマンドに答え、その後に入力したセッション ID のセッションにステータスを尋ねます。172このフックは、[コマンドとして登録された](#add-a-command) `/ping` コマンドに答え、その後に入力したセッション ID のセッションにステータスを尋ねます。

165 173 

Details

281 281 

282`result.usage` は、Claude API がリクエストについて報告するトークン数(`input_tokens`、`output_tokens`、`cache_read_input_tokens`、`cache_creation_input_tokens`)と、応答した `model` を保持します。フックはサブエージェントのリクエストでも実行されるため、メインの会話だけを対象にしたい場合は `e.agentId` を確認してください。282`result.usage` は、Claude API がリクエストについて報告するトークン数(`input_tokens`、`output_tokens`、`cache_read_input_tokens`、`cache_creation_input_tokens`)と、応答した `model` を保持します。フックはサブエージェントのリクエストでも実行されるため、メインの会話だけを対象にしたい場合は `e.agentId` を確認してください。

283 283 

284リクエスト中に API 自身が実行したツール呼び出し([advisor ツール](/docs/ja/advisor)への呼び出しなど)を確認するには、`result.serverToolUses` を読み取ります。Claude Code はこれらの呼び出しを実行しないため、これらに対して `tool.call` フックや `tool.check` フックは発火しません。レスポンスにそのような呼び出しが含まれない場合、このフィールドは存在しません。また、このフィールドには Claude Code v2.1.290 以降が必要です。

285 

284<h3 id="hook-the-settings-hook-events">286<h3 id="hook-the-settings-hook-events">

285 設定フックのイベントを処理する287 設定フックのイベントを処理する

286</h3>288</h3>

Details

10 10 

11次の図は、ターミナルセッション内で mod が描画できる場所を示しています。11次の図は、ターミナルセッション内で mod が描画できる場所を示しています。

12 12 

13<img src="https://mintcdn.com/claude-code/dgiVO_Od1X1faduV/images/mods-screen-map.svg?fit=max&auto=format&n=dgiVO_Od1X1faduV&q=85&s=5fda26b6609c62b68c6f9e528c1590ea" className="dark:hidden" alt="Claude Code のターミナルセッションの図。mod は、右側のサイドバーとしてのペイン、トランスクリプト右上のトースト、トランスクリプト内のログ行、プロンプト上部の帯、プロンプト下のステータスラインを追加できます。mod はメッセージ、ツール呼び出しの行、スピナーを再描画できます。プロンプトは Claude Code 自身のものです。" width="600" height="336" data-path="images/mods-screen-map.svg" />13<img src="https://mintcdn.com/claude-code/dgiVO_Od1X1faduV/images/mods-screen-map.svg?fit=max&auto=format&n=dgiVO_Od1X1faduV&q=85&s=5fda26b6609c62b68c6f9e528c1590ea" className="dark:hidden" alt="フルスクリーン描画での Claude Code のターミナルセッションの図。mod は、右側のサイドバーとしてのペイン、トランスクリプト右上のトースト、トランスクリプト内のログ行、プロンプト上部の帯、プロンプト下のステータスラインを追加できます。mod はメッセージ、ツール呼び出しの行、スピナーを再描画できます。プロンプトは Claude Code 自身のものです。" width="600" height="336" data-path="images/mods-screen-map.svg" />

14 14 

15<img src="https://mintcdn.com/claude-code/dgiVO_Od1X1faduV/images/mods-screen-map-dark.svg?fit=max&auto=format&n=dgiVO_Od1X1faduV&q=85&s=5b4161581a1bd2c0450b0c8b57bc1225" className="hidden dark:block" alt="Claude Code のターミナルセッションの図。mod は、右側のサイドバーとしてのペイン、トランスクリプト右上のトースト、トランスクリプト内のログ行、プロンプト上部の帯、プロンプト下のステータスラインを追加できます。mod はメッセージ、ツール呼び出しの行、スピナーを再描画できます。プロンプトは Claude Code 自身のものです。" width="600" height="336" data-path="images/mods-screen-map-dark.svg" />15<img src="https://mintcdn.com/claude-code/dgiVO_Od1X1faduV/images/mods-screen-map-dark.svg?fit=max&auto=format&n=dgiVO_Od1X1faduV&q=85&s=5b4161581a1bd2c0450b0c8b57bc1225" className="hidden dark:block" alt="フルスクリーン描画での Claude Code のターミナルセッションの図。mod は、右側のサイドバーとしてのペイン、トランスクリプト右上のトースト、トランスクリプト内のログ行、プロンプト上部の帯、プロンプト下のステータスラインを追加できます。mod はメッセージ、ツール呼び出しの行、スピナーを再描画できます。プロンプトは Claude Code 自身のものです。" width="600" height="336" data-path="images/mods-screen-map-dark.svg" />

16 16 

17幅の狭いターミナルでは、ペインはトランスクリプトの横ではなくプロンプトの上に配置されます。17幅の狭いターミナルでは、ペインはトランスクリプトの横ではなくプロンプトの上に配置されます。

18 18 


324| `title` | 複数のペインが開いているときのペインのタブラベル |324| `title` | 複数のペインが開いているときのペインのタブラベル |

325| `focus` | [キーボードフォーカス](#know-which-keys-your-mod-can-receive)を要求する |325| `focus` | [キーボードフォーカス](#know-which-keys-your-mod-can-receive)を要求する |

326| `closeOnEscape` | Esc キーでペインを閉じられるようにする |326| `closeOnEscape` | Esc キーでペインを閉じられるようにする |

327| `holdToasts` | [`$.ui.toast`](/docs/ja/plugins/mods/api#show-something-without-starting-a-turn) による小さな通知であるトーストを、ペインが閉じるまで保留する |327| `holdToasts` | ターミナルでは、このペインが表示されている間トーストを保留する。[ダイアログの背後でトーストを保留する](#hold-toasts-behind-a-dialog)を参照してください。 |

328| `rows` | ペインがプロンプトの上に配置されるときに求める高さ。デフォルトは領域の 3 分の 1 です。 |328| `rows` | ペインがプロンプトの上に配置されるときに求める高さ。デフォルトは領域の 3 分の 1 です。 |

329| `columns` | ペインがトランスクリプトの横に配置されるときに求める幅 |329| `columns` | ペインがトランスクリプトの横に配置されるときに求める幅 |

330 330 


337 337 

338Claude の作業中にコマンドでペインを開けるようにするには、[コマンドを登録する](/docs/ja/plugins/mods/api#add-a-command)際に `immediate: true` を追加します。これがない場合、ターン中に入力されたコマンドはターンが終わるまで待機します。338Claude の作業中にコマンドでペインを開けるようにするには、[コマンドを登録する](/docs/ja/plugins/mods/api#add-a-command)際に `immediate: true` を追加します。これがない場合、ターン中に入力されたコマンドはターンが終わるまで待機します。

339 339 

340<h4 id="hold-toasts-behind-a-dialog">

341 ダイアログの背後でトーストを保留する

342</h4>

343 

344ペインがユーザーが回答して閉じるダイアログである場合は、`$.ui.open` に `holdToasts: true` を渡すと、ユーザーが判断している間にトーストが表示されなくなります。ターミナルでは、そのペインが表示されている間は保留が続き、その間に発生したトーストは保留が終わるまで待機します。

345 

346Claude Code は、自分の mod が [`$.ui.toast`](/docs/ja/plugins/mods/api#show-something-without-starting-a-turn) で発生させるトーストだけでなく、他の mod のトーストや Claude Code 自身の短時間の通知も保留します。開いたままにするペインではこのフィールドを省略し、ユーザーがそれらを引き続き確認できるようにしてください。

347 

340<h4 id="when-a-pane-waits-for-a-wider-terminal">348<h4 id="when-a-pane-waits-for-a-wider-terminal">

341 ペインが幅の広いターミナルを待つ場合349 ペインが幅の広いターミナルを待つ場合

342</h4>350</h4>

Details

209| [`$.ui`](/docs/ja/plugins/mods/interface#pick-where-to-draw) | `resolve`、`invalidate`、`open`、`close`、`panes`、`focus`、`scroll`、`toast`、`status`、`log`、`notice`、`ask`、`copy`、`selection`、`blit` |209| [`$.ui`](/docs/ja/plugins/mods/interface#pick-where-to-draw) | `resolve`、`invalidate`、`open`、`close`、`panes`、`focus`、`scroll`、`toast`、`status`、`log`、`notice`、`ask`、`copy`、`selection`、`blit` |

210| [`$.command`](/docs/ja/plugins/mods/api#add-a-command) | `register`、`run`、`list` |210| [`$.command`](/docs/ja/plugins/mods/api#add-a-command) | `register`、`run`、`list` |

211| [`$.tool`](/docs/ja/plugins/mods/api#add-a-tool) | `register`、`call`、`check`、`list` |211| [`$.tool`](/docs/ja/plugins/mods/api#add-a-tool) | `register`、`call`、`check`、`list` |

212| `$.agent` | `register`、`spawn`、`list` |212| `$.agent` | `register`、`spawn`、`list`。`list()` はこのセッションのサブエージェントとチームメイトを返します。それぞれに `pending`、`running`、`waiting`、`idle`、`completed`、`failed`、`killed` のいずれかの `status` があり、`idle` と `waiting` には Claude Code v2.1.289 以降が必要です。 |

213| [`$.model`](/docs/ja/plugins/mods/api#call-a-model) | `complete`、`fork`、`classify` |213| [`$.model`](/docs/ja/plugins/mods/api#call-a-model) | `complete`、`fork`、`classify` |

214| [`$.prompt`](/docs/ja/plugins/mods/api#start-a-turn-from-a-background-job) | `submit`、`read`、`fill`、`suggest`、`compose`。Claude は、`submit({ text })` のテキストを、その mod を送信者として示す文の後に読みます。`submit({ text, asUser: true })` は、その文なしで、テキストをユーザー自身の言葉として送信します。 |214| [`$.prompt`](/docs/ja/plugins/mods/api#start-a-turn-from-a-background-job) | `submit`、`read`、`fill`、`suggest`、`compose`。Claude は、`submit({ text })` のテキストを、その mod を送信者として示す文の後に読みます。`submit({ text, asUser: true })` は、その文なしで、テキストをユーザー自身の言葉として送信します。 |

215| `$.turn` | `abort` |215| `$.turn` | `abort` |


317| `$.process.run` のタイムアウト | デフォルトは 30 秒、最大 10 分 |317| `$.process.run` のタイムアウト | デフォルトは 30 秒、最大 10 分 |

318| `$.model.complete` の `maxTokens` | デフォルトは 1024、最大 64,000 またはモデルの出力上限 |318| `$.model.complete` の `maxTokens` | デフォルトは 1024、最大 64,000 またはモデルの出力上限 |

319| `$.fs.read` と `$.fs.write` | 1 ファイルあたり 4 MiB |319| `$.fs.read` と `$.fs.write` | 1 ファイルあたり 4 MiB |

320| フックの `drop` の理由、または `config.set` の `deny` の理由 | 4,096 文字。これより長い理由は末尾が切り詰められ、drop または deny はそのまま適用されます。切り詰めには Claude Code v2.1.292 以降が必要で、それより前のバージョンではフックが代わりに[失敗](/docs/ja/plugins/mods/events#handle-a-hook-that-fails)します。 |

320| 1 つのツリー内のテキスト | 最初の 100,000 文字が描画されます |321| 1 つのツリー内のテキスト | 最初の 100,000 文字が描画されます |

321| `Code` の `language` または `path`、`Select` オプションの `value`、または `Client` の `module` | 10,000 文字。これより長い場合、Claude Code は[その箇所を独自の表示で描画します](/docs/ja/plugins/mods/interface#build-a-tree-from-elements)。 |322| `Code` の `language` または `path`、`Select` オプションの `value`、または `Client` の `module` | 10,000 文字。これより長い場合、Claude Code は[その箇所を独自の表示で描画します](/docs/ja/plugins/mods/interface#build-a-tree-from-elements)。 |

322| `Link` の `href` | 2,048 文字。これより長い `href` があると、ツリー全体が描画されません。 |323| `Link` の `href` | 2,048 文字。これより長い `href` があると、ツリー全体が描画されません。 |

Details

110* `returned neither { value } nor { deny }`: mods API 呼び出し用のスタブが値をそのまま返した。この場合、テストは失敗する110* `returned neither { value } nor { deny }`: mods API 呼び出し用のスタブが値をそのまま返した。この場合、テストは失敗する

111* `no implementation for` の後に名前が続く: mod がその呼び出しを行ったが、応答するスタブがない111* `no implementation for` の後に名前が続く: mod がその呼び出しを行ったが、応答するスタブがない

112 112 

113キットは、名前空間全体に応答するインメモリのモックもエクスポートしています。`mock.clock(on)` は [`$.clock`](/docs/ja/plugins/mods/api#run-work-in-the-background) に応答し、`mock.store(on, { count: 7 })` は指定したエントリで始まるストアから `$.store` に応答し、`mock.env(on, { CI: 'true' })` は指定した変数から `$.env.get` に応答します。`mock.clock` はテストが進めるモッククロックを返すため、タイマーのテストで待つ必要がありません。`mock.store` は何も返さないため、mod が何を保存したかを確認するには、[描画のテスト](#test-a-drawing)のように 2 つの `store` スタブを自分で書きます。113キットは、クロック、ストア、環境変数、会話に追加された行のための既製のモックもエクスポートしています。

114 

115* **`mock.clock(on)`**: [`$.clock`](/docs/ja/plugins/mods/api#run-work-in-the-background) に応答し、テストが進めるモッククロックを返すため、タイマーのテストで待つ必要がありません。

116* **`mock.store(on, { count: 7 })`**: 指定したエントリで始まるストアから `$.store` に応答します。何も返さないため、mod が何を保存したかを確認するには、[描画のテスト](#test-a-drawing)のように 2 つの `store` スタブを自分で書きます。

117* **`mock.env(on, { CI: 'true' })`**: 指定した変数から `$.env.get` に応答します。

118* **`mock.session(on)`**: モックセッションを返します。その `appended()` メソッドは、mod が [`$.session.append`](/docs/ja/plugins/mods/reference#session) で追加した行を古い順に一覧表示します。Claude Code v2.1.293 以降が必要です。

114 119 

115<h3 id="follow-the-test-kit’s-rules">120<h3 id="follow-the-test-kit’s-rules">

116 テストキットのルールに従う121 テストキットのルールに従う


168 スタブが返す値を調べる173 スタブが返す値を調べる

169</h3>174</h3>

170 175 

171テスト内で mod が行うすべての mods API 呼び出しには、Claude Code の代わりに応答するスタブが必要です。ただし、キット自身が応答する少数の呼び出し、つまり [`$.ui.invalidate`](/docs/ja/plugins/mods/interface#redraw-when-something-changes) と [`$.state`](/docs/ja/plugins/mods/interface#keep-state) の呼び出しは例外です。`$.clock` の呼び出しには `mock.clock(on)` を使用してください。そうしないと、mod の `$.clock.now()` が `no implementation for clock.now` で失敗します。176テスト内で mod が行うすべての mods API 呼び出しには、Claude Code の代わりに応答するスタブが必要です。ただし、キット自身が応答する少数の呼び出し、つまり [`$.ui.invalidate`](/docs/ja/plugins/mods/interface#redraw-when-something-changes)、[`$.state`](/docs/ja/plugins/mods/interface#keep-state)、`$.session.append` の呼び出しは例外です。`$.clock` の呼び出しには `mock.clock(on)` を使用してください。そうしないと、mod の `$.clock.now()` が `no implementation for clock.now` で失敗します。

172 177 

173この表は、mod で最もよく使われるものを示しています。1 列目は、mod が行う呼び出し、または `next(e)` で渡すイベントです。2 列目は、その名前で `on` に渡す関数です。たとえば `$.store.get` の行は `on('store.get', ($, e) => ({ value: saved.get(e.key) }))` になります。スタブ内の `'...'` は、自分で埋めるテキストを示します。178この表は、mod で最もよく使われるものを示しています。1 列目は、mod が行う呼び出し、または `next(e)` で渡すイベントです。2 列目は、その名前で `on` に渡す関数です。たとえば `$.store.get` の行は `on('store.get', ($, e) => ({ value: saved.get(e.key) }))` になります。スタブ内の `'...'` は、自分で埋めるテキストを示します。

174 179 

Details

209 描画が表示されないか応答しない209 描画が表示されないか応答しない

210</h2>210</h2>

211 211 

212mod が読み込まれ、そのペイン、バンド、またはコントロールが期待どおりに動作しません。212mod が読み込まれ、そのペイン、バンド、トースト、またはコントロールが期待どおりに動作しません。

213 213 

214<h3 id="a-pane-or-band-is-empty-or-shows-claude-code’s-usual-content">214<h3 id="a-pane-or-band-is-empty-or-shows-claude-code’s-usual-content">

215 ペインまたはバンドが空であるか、Claude Code の通常のコンテンツを表示する215 ペインまたはバンドが空であるか、Claude Code の通常のコンテンツを表示する


247 247 

248コマンドまたはボタンからペインを開くか、呼び出しの `isPlaced` 結果を確認します。[適切なタイミングでペインを開く](/docs/ja/plugins/mods/interface#open-a-pane-at-the-right-time) を参照してください。248コマンドまたはボタンからペインを開くか、呼び出しの `isPlaced` 結果を確認します。[適切なタイミングでペインを開く](/docs/ja/plugins/mods/interface#open-a-pane-at-the-right-time) を参照してください。

249 249 

250<h3 id="a-toast-doesn’t-appear">

251 トーストが表示されない

252</h3>

253 

254mod がインタラクティブなターミナルセッションで [`$.ui.toast`](/docs/ja/plugins/mods/api#show-something-without-starting-a-turn) を呼び出しても、トーストが表示されません。呼び出しが実行されたことを確認するには、[デバッグログ](#read-the-debug-log) で mod の名前とトーストのテキストを含む行を探します。例えば `$.ui.toast (first-mod): build finished` のような行です。次に、以下のような原因を確認してください。

255 

256* **呼び出しの行がない**: Claude Code が呼び出しを拒否した理由を示す行を探します。例えば `first-mod: $.ui.toast dropped: timeoutMs is a whole number of ms, 1 to 60000` のような行です。

257* **ペインがトーストを保留している**: 表示中のペインを開く際に、自分の mod または別の mod が [`holdToasts`](/docs/ja/plugins/mods/interface#hold-toasts-behind-a-dialog) を渡しています。ペインを閉じると保留が終了します。そのペインが自分のもので、開いたままにしておく必要がある場合は、その `$.ui.open` 呼び出しから `holdToasts` を削除し、ペインを開き直してください。

258* **トーストがプロンプトの下にある**: [クラシックレンダラー](/docs/ja/fullscreen#enable-fullscreen-rendering) では、プロンプトの下の右側を確認します。そこに表示されるトーストは、右上のボックスではなく、mod の名前で始まる 1 行です。

259* **mod がより新しいトーストを出した**: クラシックレンダラーでは、mod からのより新しいトーストが、表示中または表示待ちのトーストに取って代わることがあります。デバッグログには古いトーストについての別の行があり、表示中だった場合は `gave way, cut short`、表示されなかった場合は `gave way, unseen` で終わります。両方のメッセージを表示するには、1 つのトーストにまとめてください。

260* **トーストが描画されないまま時間切れになった**: フルスクリーンレンダリングでは、Claude Code は一度に最大 3 つのトーストしか描画しないため、トーストが描画される前に時間切れになることがあります。デバッグログにはそのトーストについての別の行があり、`left the stack, never drawn` で終わります。mod が一度に複数のトーストを出す場合は、メッセージを 1 つのトーストにまとめてください。

261 

262v2.1.290 より前では、Claude Code は、mod に対して最後に表示したトーストから 2 秒以内に出されたトーストを破棄しており、破棄されたトーストのデバッグログの行には `within 2000ms of the last; dropped` と表示されていました。

263 

250<h3 id="hotkeys-do-nothing">264<h3 id="hotkeys-do-nothing">

251 ホットキーが何もしない265 ホットキーが何もしない

252</h3>266</h3>

Details

129* マーケットプレイスを 1 回追加する: `claude plugin marketplace add your-org/your-marketplace`。引数は GitHub の `owner/repo` 短縮形、URL、またはパスです129* マーケットプレイスを 1 回追加する: `claude plugin marketplace add your-org/your-marketplace`。引数は GitHub の `owner/repo` 短縮形、URL、またはパスです

130* プラグインをインストールする: `claude plugin install deploy-helper@your-marketplace`130* プラグインをインストールする: `claude plugin install deploy-helper@your-marketplace`

131* またはセッション内から両方を実行する: `/plugin install deploy-helper --marketplace your-org/your-marketplace`。Claude Code v2.1.275 以降が必要です。[マーケットプレイスを追加して 1 つのコマンドでインストールする](/docs/ja/plugins/install#add-a-marketplace-and-install-in-one-command)を参照してください131* またはセッション内から両方を実行する: `/plugin install deploy-helper --marketplace your-org/your-marketplace`。Claude Code v2.1.275 以降が必要です。[マーケットプレイスを追加して 1 つのコマンドでインストールする](/docs/ja/plugins/install#add-a-marketplace-and-install-in-one-command)を参照してください

132* またはシェルから 1 つのコマンドで両方を実行する: `claude plugin install deploy-helper --marketplace your-org/your-marketplace`。Claude Code v2.1.292 以降が必要です

132 133 

133<h3 id="ship-updates-to-users">134<h3 id="ship-updates-to-users">

134 ユーザーに更新を配布する135 ユーザーに更新を配布する

Details

163 `Invalid marketplace source format`163 `Invalid marketplace source format`

164</h3>164</h3>

165 165 

166`/plugin marketplace add <source>` または `claude plugin marketplace add <source>` を実行し、Claude Code は `Invalid marketplace source format. Try: owner/repo, https://..., or ./path` で返信しました。166`/plugin marketplace add <source>`、`claude plugin marketplace add <source>`、または `claude plugin install <plugin> --marketplace <source>` を実行し、Claude Code は `Invalid marketplace source format. Try: owner/repo, https://..., or ./path` で返信しました。

167 167 

168Claude Code は、次のいずれかの形式でソースを受け入れます:168Claude Code は、次のいずれかの形式でソースを受け入れます:

169 169 


568 `Marketplace "<name>" is already added from a different source`568 `Marketplace "<name>" is already added from a different source`

569</h3>569</h3>

570 570 

571[`/plugin install <plugin> --marketplace <source>`](/docs/ja/plugins/install#add-a-marketplace-and-install-in-one-command)を通じてマーケットプレイスの追加を確認し、Claude Code がそのソースからフェッチしたカタログは、別のソースから既に追加したマーケットプレイスと同じ名前を持っています。Claude Code は既存のマーケットプレイスを保持し、プラグインをインストールしません。571セッションまたはシェルから、[インストールコマンドの `--marketplace <source>`](/docs/ja/plugins/install#add-a-marketplace-and-install-in-one-command) で新しいマーケットプレイスソースを指定しました。Claude Code がそのソースからフェッチしたカタログは、別のソースから既に追加したマーケットプレイスと同じ名前を持っています。Claude Code は既存のマーケットプレイスを置き換えずに保持し、プラグインはインストールされません。

572 572 

573完全なメッセージは次のようになります:573完全なメッセージは次のようになります:

574 574 

Details

403 403 

404* 標準のシステムパスにあるエンタープライズスコープの[管理 MCP ファイル](/docs/ja/managed-mcp):Linux のランナーホストでは `/etc/claude-code/managed-mcp.json`、macOS のホストでは `/Library/Application Support/ClaudeCode/managed-mcp.json` です。管理者が列挙したサーバーのみを読み込めるようにする、ロックダウンされたフリートで使用します。優先順位のルールについては、[managed-mcp.json による排他的な制御](/docs/ja/managed-mcp#exclusive-control-with-managed-mcp-json)を参照してください。このファイルがランナーホスト上にある場合、Claude Code は claude.ai のコネクタを含め、Anthropic のコントロールプレーンがセッションに配信する MCP サーバーをスキップし、セッションの子プロセスの stderr に出力される警告でそれらの名前を示します。ランナーはこの警告を `debug` ログレベルで記録します。v2.1.229 より前は、これらのセッションは起動時に `You cannot dynamically configure MCP servers when an enterprise MCP config is present` というメッセージを出して終了していました。404* 標準のシステムパスにあるエンタープライズスコープの[管理 MCP ファイル](/docs/ja/managed-mcp):Linux のランナーホストでは `/etc/claude-code/managed-mcp.json`、macOS のホストでは `/Library/Application Support/ClaudeCode/managed-mcp.json` です。管理者が列挙したサーバーのみを読み込めるようにする、ロックダウンされたフリートで使用します。優先順位のルールについては、[managed-mcp.json による排他的な制御](/docs/ja/managed-mcp#exclusive-control-with-managed-mcp-json)を参照してください。このファイルがランナーホスト上にある場合、Claude Code は claude.ai のコネクタを含め、Anthropic のコントロールプレーンがセッションに配信する MCP サーバーをスキップし、セッションの子プロセスの stderr に出力される警告でそれらの名前を示します。ランナーはこの警告を `debug` ログレベルで記録します。v2.1.229 より前は、これらのセッションは起動時に `You cannot dynamically configure MCP servers when an enterprise MCP config is present` というメッセージを出して終了していました。

405* ランナーホスト上の[管理設定](/docs/ja/managed-settings)にある [`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers) キー:排他的な制御を行わずに HTTP および SSE サーバーを提供するため、ほかのソースからのサーバーも引き続き読み込まれます。Claude Code v2.1.259 以降が必要です。405* ランナーホスト上の[管理設定](/docs/ja/managed-settings)にある [`managedMcpServers`](/docs/ja/settings-reference#managedmcpservers) キー:排他的な制御を行わずに HTTP および SSE サーバーを提供するため、ほかのソースからのサーバーも引き続き読み込まれます。Claude Code v2.1.259 以降が必要です。

406* `<repo>/.mcp.json`:プロジェクトスコープです。このファイルをリポジトリにコミットしてください。そのサーバーはクラウドセッションで自動承認されます。406* `<repo>/.mcp.json`:プロジェクトスコープです。このファイルをリポジトリにコミットしてください。そのサーバーはクラウドセッションで自動承認されます。複数のリポジトリを含むセッションでは、[読み込まれるのは最大 1 つのリポジトリのファイルのみです](#repository-settings-in-sessions-with-several-repositories)。

407 407 

408組織でコネクタ配信が有効になっている場合、Anthropic のコントロールプレーンは、claude.ai で設定したコネクタを、サーバーが提供する MCP 設定を通じて対話的に作成されたセッションに配信します。この配信は `api.anthropic.com` を経由します。[CLI からのディスパッチ](/docs/ja/self-hosted-environments-testing#run-the-test-loop)のようにプログラムで作成されたセッションには、コネクタは配信されません。そうしたセッションには、このセクションで挙げたほかのいずれかのソースを通じて MCP サーバーを提供してください。子プロセスの OAuth トークンにはコネクタを直接取得するためのスコープが含まれていないため、子プロセスが自らその取得を試みることはありません。配信はサーバー主導で行われます。408組織でコネクタ配信が有効になっている場合、Anthropic のコントロールプレーンは、claude.ai で設定したコネクタを、サーバーが提供する MCP 設定を通じて対話的に作成されたセッションに配信します。この配信は `api.anthropic.com` を経由します。[CLI からのディスパッチ](/docs/ja/self-hosted-environments-testing#run-the-test-loop)のようにプログラムで作成されたセッションには、コネクタは配信されません。そうしたセッションには、このセクションで挙げたほかのいずれかのソースを通じて MCP サーバーを提供してください。子プロセスの OAuth トークンにはコネクタを直接取得するためのスコープが含まれていないため、子プロセスが自らその取得を試みることはありません。配信はサーバー主導で行われます。

409 409 


546exit 0546exit 0

547```547```

548 548 

549フックはセッション終了前に Claude にコミットしてプッシュするよう促し、ディレクトリが git リポジトリではないか、リモートがない場合は静かに留まります。549フックはセッション終了前に Claude にコミットしてプッシュするよう促し、ディレクトリが git リポジトリではないか、リモートがない場合は静かに留まります。複数のリポジトリを含むセッションについては、[`$CLAUDE_PROJECT_DIR` が指すもの](#repository-settings-in-sessions-with-several-repositories)を参照してください。

550 550 

551<h2 id="permissions-and-tool-approval">551<h2 id="permissions-and-tool-approval">

552 権限とツール承認552 権限とツール承認


575 575 

576`SELF_HOSTED_RUNNER_HOST_CONFIG_DIR` を設定して別のパスからシードするか、空のディレクトリに指定してシーディングを無効にします。576`SELF_HOSTED_RUNNER_HOST_CONFIG_DIR` を設定して別のパスからシードするか、空のディレクトリに指定してシーディングを無効にします。

577 577 

578リポジトリコミット `.claude/settings.json` はプロジェクト設定として上に層状化されます。セッションはランナーイメージの標準システムパスから [`managed-settings.json`](/docs/ja/settings#where-settings-live) も読み取ります。そのキーが [サーバー管理設定](/docs/ja/server-managed-settings) と一緒に適用されるかどうかは、[Claude Code が管理ソースを組み合わせる方法](/docs/ja/managed-settings#how-claude-code-combines-managed-sources) に従います。デフォルトでは、組織が任意のサーバー管理キーを配信する場合、セッションは [Claude Code がすべての管理ソースから読み取るキー](/docs/ja/managed-settings#keys-read-from-every-admin-source)(`env` ブロック、サンドボックスロック、サンドボックスバイナリパス、`forceRemoteSettingsRefresh` など)を除いて、ランナーイメージのファイルを無視します。[設定優先順位](/docs/ja/settings#settings-precedence) を参照してください。578リポジトリコミット `.claude/settings.json` はプロジェクト設定として上に層状化されます。複数のリポジトリを含むセッションでは、[有効になるのは最大 1 つのリポジトリのファイルのみです](#repository-settings-in-sessions-with-several-repositories)。セッションはランナーイメージの標準システムパスから [`managed-settings.json`](/docs/ja/settings#where-settings-live) も読み取ります。そのキーが [サーバー管理設定](/docs/ja/server-managed-settings) と一緒に適用されるかどうかは、[Claude Code が管理ソースを組み合わせる方法](/docs/ja/managed-settings#how-claude-code-combines-managed-sources) に従います。デフォルトでは、組織が任意のサーバー管理キーを配信する場合、セッションは [Claude Code がすべての管理ソースから読み取るキー](/docs/ja/managed-settings#keys-read-from-every-admin-source)(`env` ブロック、サンドボックスロック、サンドボックスバイナリパス、`forceRemoteSettingsRefresh` など)を除いて、ランナーイメージのファイルを無視します。[設定優先順位](/docs/ja/settings#settings-precedence) を参照してください。

579 579 

580Anthropic のコントロールプレーンがセッションに [Claude Code フック](/docs/ja/hooks) を提供する場合、ランナーはそれらを独自の設定の上ではなく隣に設定します。Claude Code v2.1.229 以降が必要です。580Anthropic のコントロールプレーンがセッションに [Claude Code フック](/docs/ja/hooks) を提供する場合、ランナーはそれらを独自の設定の上ではなく隣に設定します。Claude Code v2.1.229 以降が必要です。

581 581 


587 587 

588ランナーによるホストの `~/.claude/` のスナップショットには `projects/` ディレクトリは含まれません。自動メモリのデフォルトの保存場所はこのディレクトリの下にあります。そこにメモリファイルを置いても、ランナーはそれらをセッションにシードせず、自動メモリがオンになることもありません。588ランナーによるホストの `~/.claude/` のスナップショットには `projects/` ディレクトリは含まれません。自動メモリのデフォルトの保存場所はこのディレクトリの下にあります。そこにメモリファイルを置いても、ランナーはそれらをセッションにシードせず、自動メモリがオンになることもありません。

589 589 

590<h3 id="repository-settings-in-sessions-with-several-repositories">

591 複数のリポジトリを含むセッションでのリポジトリ設定

592</h3>

593 

594複数のリポジトリを含むセッションでは、Claude Code はセッションの開始ディレクトリからプロジェクト設定を読み取るため、プロジェクト設定として有効になるのは最大 1 つのリポジトリの `.claude/settings.json` のみです。別のリポジトリのファイルで定義されたフックは実行されず、そのファイル内の拒否ルールは適用されず、その `env` も設定されません。

595 

596* **`--capacity 1`(デフォルト)と組み込みのチェックアウトを使用する場合**:セッションはリポジトリリストの最初のリポジトリで開始します。そのリポジトリの `.claude/settings.json` がプロジェクト設定として有効になり、その `.mcp.json` が読み込まれますが、他のリポジトリのものは有効にならず、読み込まれません。

597* **1 より大きい `--capacity`、または [`checkout` フック](#checkout) を使用する場合**:セッションはチェックアウトを含むセッションごとのディレクトリで開始します。どのリポジトリの `.claude/settings.json` もプロジェクト設定として有効にならず、どのリポジトリの `.mcp.json` も読み込まれず、フックコマンド内の [`$CLAUDE_PROJECT_DIR`](/docs/ja/hooks#reference-scripts-by-path) はチェックアウトではなくそのディレクトリになります。

598 

599各リポジトリの `CLAUDE.md` とスキルは、セッションがどこで開始しても読み込まれます。ランナーはすべてのリポジトリを [追加ディレクトリ](/docs/ja/permissions#additional-directories-grant-file-access-not-configuration) として Claude Code に渡すため、Claude Code は各リポジトリの `.claude/settings.json` から `enabledPlugins` キーと `extraKnownMarketplaces` キーも読み取ります。

600 

601すべてのセッションでフックを実行したり権限ルールを適用したりするには、ランナーホストの `~/.claude/settings.json` に記述します。ランナーは、セッションがどこで開始しても、[ホストのファイルをすべてのセッションにシードします](#how-each-session’s-config-is-assembled)。`Read` ルールまたは `Edit` ルールのパスは、`//` による絶対パスまたは `~/` によるホーム相対の [パターン](/docs/ja/permissions#read-and-edit) として記述してください。それ以外のパターンは設定ソースまたは現在のディレクトリを基準とするためです。

602 

590<h3 id="repository-committed-permission-rules">603<h3 id="repository-committed-permission-rules">

591 リポジトリコミット権限ルール604 リポジトリコミット権限ルール

592</h3>605</h3>

Details

92 92 

93 <Step title="保存してデプロイする">93 <Step title="保存してデプロイする">

94 変更を保存します。Claude Code クライアントは、次回の起動時または 1 時間ごとのポーリングサイクルで更新された設定を受け取ります。94 変更を保存します。Claude Code クライアントは、次回の起動時または 1 時間ごとのポーリングサイクルで更新された設定を受け取ります。

95 

96 エディターは、公開されている Claude Code 設定の JSON スキーマに照らして JSON をチェックします。解析可能な JSON に問題が見つかった場合は、警告が表示され、保存ボタンのラベルが変わります。設定がすでに保存されている場合のラベルは **Update with errors**、まだ設定が保存されていない場合は **Add with errors** です。スキーマの警告は保存をブロックしないため、このボタンでも保存は行われます。

97 

98 スキーマは[最新リリースに追従していない場合がある](/docs/ja/settings#edit-a-settings-file)ため、エディターが[設定リファレンス](/docs/ja/settings-reference#all-settings)に記載されているキーや値を警告することがあります。Claude Code は保存されたキーと値を受け取り、読み込む際に[独自の検証](#invalid-entries-in-delivered-settings)を実行します。

95 </Step>99 </Step>

96</Steps>100</Steps>

97 101 

settings.md +35 −35

Details

404 404 

405| スコープ | ファイル | 誰に影響するか | 用途 |405| スコープ | ファイル | 誰に影響するか | 用途 |

406| :- | :- | :- | :- |406| :- | :- | :- | :- |

407| ユーザー | `~/.claude/settings.json` | あなた、このマシン上のすべてのプロジェクト | 個人設定:テーマ、エディターモード、デフォルトモデル、独自の権限ルール |407| ユーザー | `~/.claude/settings.json` | 自分自身、このマシン上のすべてのプロジェクト | 個人設定:テーマ、エディターモード、デフォルトモデル、独自の権限ルール |

408| 共有プロジェクト | `.claude/settings.json` | このフォルダを含むフォルダで作業しているすべての人。git リポジトリでは、コミットしてチームメイトが取得できるようにします | チーム権限、hooks、プラグイン、およびプロジェクトが必要とする環境変数 |408| 共有プロジェクト | `.claude/settings.json` | このファイルを含むフォルダで作業しているすべての人。git リポジトリでは、コミットしてチームメイトが取得できるようにします | チーム権限、フック、プラグイン、およびプロジェクトが必要とする環境変数 |

409| プロジェクトローカル | `.claude/settings.local.json` | あなた、このプロジェクトのみ。Claude Code はファイルを作成するときに git から除外します。手動で作成する場合は、自分で `.gitignore` に追加してください | 1 つのプロジェクトの個人的なオーバーライド、および共有する前のテスト |409| プロジェクトローカル | `.claude/settings.local.json` | 自分自身、このプロジェクトのみ。Claude Code はファイルを作成するときに git から除外します。手動で作成する場合は、自分で `.gitignore` に追加してください | 1 つのプロジェクトでの個人的な上書き、および共有する前のテスト |

410| 管理 | `managed-settings.json` およびその他の[管理ソース](/docs/ja/managed-settings#delivery-mechanisms) | 組織がデプロイするすべての人。何がこれを上書きできるかは[設定の優先順位](#settings-precedence)を参照してください | セキュリティポリシーおよびコンプライアンス要件 |410| 管理 | `managed-settings.json` およびその他の[管理ソース](/docs/ja/managed-settings#delivery-mechanisms) | 組織がデプロイするすべての人。何がこれを上書きできるかは[設定の優先順位](#settings-precedence)を参照してください | セキュリティポリシーおよびコンプライアンス要件 |

411 411 

412ファイル列では、`~/.claude` はホームディレクトリの `.claude` フォルダ、ベアの `.claude` はプロジェクト内の `.claude` フォルダです。412ファイル列では、`~/.claude` はホームディレクトリの `.claude` フォルダ、パスなしの `.claude` はプロジェクト内の `.claude` フォルダです。

413 413 

414<span id="where-each-file-applies" />414<span id="where-each-file-applies" />

415 415 


425 425 

426<SettingsScope />426<SettingsScope />

427 427 

428* **`~/.claude/settings.json`**:マシン上のすべてのプロジェクト、チームメイトまたはクラウドセッションには何もありません428* **`~/.claude/settings.json`**:自分のマシン上のすべてのプロジェクト。チームメイトのクローンやクラウドセッションには適用されません

429* **`acme-app/.claude/settings.json`**:あなたの `acme-app/`。バージョン管理にファイルをコミットする場合のみ、チームメイトのクローンとクラウドセッションに到達します。それまでは、他のファイルのようにディスク上のファイルであり、誰も持っていません429* **`acme-app/.claude/settings.json`**:自分の `acme-app/`。バージョン管理にファイルをコミットした場合のみ、チームメイトのクローンとクラウドセッションに到達します。それまでは、ディスク上の他のファイルと同じ単なるファイルであり、他の誰も持っていません

430* **`acme-app/.claude/settings.local.json`**:あなたの `acme-app/` のみ。Claude Code はファイルを初めて書き込むときに、グローバル git 除外に追加するため、コミットから除外されます。手動でファイルを作成する場合は、[自分で `.gitignore` に追加してください](#keep-personal-settings-out-of-a-repository)430* **`acme-app/.claude/settings.local.json`**:自分の `acme-app/` のみ。Claude Code はファイルを初めて書き込むときに、グローバル git 除外に追加するため、コミットから除外されます。手動でファイルを作成する場合は、[自分で `.gitignore` に追加してください](#keep-personal-settings-out-of-a-repository)

431* **管理設定**。`managed-settings.json` ファイル、MDM ポリシー、または claude.ai コンソールからの[サーバー管理設定](/docs/ja/server-managed-settings):組織がデプロイするすべてのマシン上のすべてのプロジェクト、またはあなたの組織アカウントでサインインするマシン。サーバー管理設定のみがクラウドセッションに到達します431* **管理設定**。`managed-settings.json` ファイル、MDM ポリシー、または claude.ai コンソールからの[サーバー管理設定](/docs/ja/server-managed-settings):組織がデプロイするすべてのマシン、または組織アカウントでサインインするマシン上のすべてのプロジェクト。クラウドセッションに到達するのはサーバー管理設定のみです

432 432 

433<span id="which-files-you-have" />433<span id="which-files-you-have" />

434 434 


436 設定ファイルを見つけるか作成する436 設定ファイルを見つけるか作成する

437</h3>437</h3>

438 438 

439Claude Code をインストールしても、設定ファイルは作成されません。マシンまたはプロジェクトに既に 1 つある場合は、これらのソースの 1 つから来ました:439Claude Code をインストールしても、設定ファイルは作成されません。マシンまたはプロジェクトに既に設定ファイルがある場合は、次のいずれかのソースから来たものです:

440 440 

441* **管理**:組織がデプロイします。作成または編集しません。441* **管理**:組織がデプロイします。自分で作成または編集することはありません。

442* **共有プロジェクト**:Claude Code を既に使用しているプロジェクトにはコミットされたものがあるかもしれません。ない場合は、プロジェクトフォルダに `.claude/settings.json` で作成してください。442* **共有プロジェクト**:Claude Code を既に使用しているプロジェクトには、コミットされたものがあるかもしれません。ない場合は、プロジェクトフォルダに `.claude/settings.json` として作成してください。

443* **ユーザー**および**プロジェクトローカル**:自分で作成するか、Claude Code に作成させます。テーマなどのユーザー設定に保存する `/config` メニューのオプションを初めて変更するときに `~/.claude/settings.json` を書き込み、Bash コマンドに対して「はい、今後は聞かないでください」などの権限プロンプトで立ったままの承認を初めて与えるときに `.claude/settings.local.json` を書き込みます。**ヒントを表示**を含むいくつかの `/config` オプションは、ユーザーファイルの代わりに `.claude/settings.local.json` に保存されます。443* **ユーザー**および**プロジェクトローカル**:自分で作成するか、Claude Code に作成させます。テーマなど、ユーザー設定に保存される `/config` メニューのオプションを初めて変更するときに `~/.claude/settings.json` を書き込み、Bash コマンドに対する「はい、今後は聞かないでください」など、権限プロンプトで恒久的な承認を初めて与えるときに `.claude/settings.local.json` を書き込みます。**ヒントを表示**を含むいくつかの `/config` オプションは、ユーザーファイルではなく `.claude/settings.local.json` に保存されます。

444 444 

445<Info>445<Info>

446 Windows では、`~/.claude` は `%USERPROFILE%\.claude` を意味します。ホームディレクトリファイルを別の場所に保つには、[`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) を設定してください。Claude Code はその代わりに設定、セッション履歴、およびプラグインをそこに保存します。446 Windows では、`~/.claude` は `%USERPROFILE%\.claude` を意味します。ホームディレクトリのファイルを別の場所に保存するには、[`CLAUDE_CONFIG_DIR`](/docs/ja/env-vars) を設定してください。Claude Code は設定、セッション履歴、およびプラグインを代わりにそこに保存します。

447</Info>447</Info>

448 448 

449Claude Code は、[`~/.claude.json`](/docs/ja/claude-directory#ce-claude-json) という 5 番目のファイルも保持します。これは自分で書き込みます。編集する必要はありません。サインインセッション、[MCP サーバー](/docs/ja/mcp)構成、信頼決定などのプロジェクトごとの状態、および `/config` があなたのために書き込む[グローバル構成キー](/docs/ja/settings-reference#global-config-settings)を保持します。449Claude Code は、[`~/.claude.json`](/docs/ja/claude-directory#ce-claude-json) という 5 番目のファイルも保持します。これは Claude Code 自身が書き込むもので、編集する必要はありません。サインインセッション、[MCP サーバー](/docs/ja/mcp)の設定、信頼の決定などのプロジェクトごとの状態、および `/config` が書き込む[グローバル設定キー](/docs/ja/settings-reference#global-config-settings)を保持します。

450 450 

451<h3 id="share-settings-with-your-team">451<h3 id="share-settings-with-your-team">

452 チームと設定を共有する452 チームと設定を共有する

453</h3>453</h3>

454 454 

455`.claude/settings.json` をコミットして、リポジトリをクローンするすべての人が同じ権限、hooks、およびプラグインを取得するようにします。各チームメイトは、個人的な例外がコミットを必要としないように、独自の `.claude/settings.local.json` でそれをオーバーライドできます。完全なチームファイルについては、[チームの共有設定](/docs/ja/settings-example#a-teams-shared-settings)を参照してください。455`.claude/settings.json` をコミットして、リポジトリをクローンするすべての人が同じ権限、フック、およびプラグインを取得するようにします。各チームメイトは、独自の `.claude/settings.local.json` で自分用にそれを上書きできるため、個人的な例外にコミットは必要ありません。完全なチームファイルについては、[チームの共有設定](/docs/ja/settings-example#a-teams-shared-settings)を参照してください。

456 456 

457コミットするものの一部は、各チームメイトが[フォルダを信頼する](/docs/ja/permissions#project-allow-rules-and-workspace-trust)まで待機し、いくつかのキーはリポジトリファイルから効果を発揮しません。[適用されない設定をトラブルシューティングする](#common-cases)は両方をカバーしています。457コミットするものの一部は、各チームメイトが[フォルダを信頼する](/docs/ja/permissions#project-allow-rules-and-workspace-trust)まで待機し、いくつかのキーはリポジトリファイルからは決して有効になりません。[適用されない設定をトラブルシューティングする](#common-cases)で両方を説明しています。

458 458 

459<span id="local-settings-file" />459<span id="local-settings-file" />

460 460 


468 リポジトリから個人設定を除外する468 リポジトリから個人設定を除外する

469</h3>469</h3>

470 470 

471プロジェクト内で自分の設定を変更し、チームメイトの設定を変更しないようにするには、プロジェクト内の `.claude/settings.local.json` に保存してください。Claude Code はそのファイルをコミットされた `.claude/settings.json` に適用するため、チームのファイルが `"model": "claude-sonnet-5"` を設定し、Opus が必要な場合は、ローカルファイルに `"model": "claude-opus-5-5"` を入れて、セッションのみを変更します。4711 つのプロジェクトで、チームメイトの設定を変えずに自分の設定だけを変更するには、プロジェクト内の `.claude/settings.local.json` に保存してください。Claude Code はそのファイルをコミットされた `.claude/settings.json` の上に適用するため、チームのファイルが `"model": "claude-sonnet-5"` を設定していて Opus を使いたい場合は、ローカルファイルに `"model": "claude-opus-5-5"` を入れれば、自分のセッションだけが変わります。

472 472 

473Claude Code もこのファイルに書き込み、コミットから除外し、信頼ステップなしに allow ルールを適用します:473Claude Code もこのファイルに書き込み、コミットから除外し、信頼ステップなしでその許可ルールを適用します:

474 474 

475* **Claude Code もそれを書き込みます。** Claude が Bash コマンドを実行する権限を求め、「はい、今後は聞かないでください」を選択すると、Claude Code はその[権限承認](/docs/ja/permissions#permission-system)をここに `allow` ルールとして保存します。475* **Claude Code もこのファイルに書き込みます。** Claude が Bash コマンドを実行する権限を求め、「はい、今後は聞かないでください」を選択すると、Claude Code はその[権限の承認](/docs/ja/permissions#permission-system)をここに `allow` ルールとして保存します。

476* **手動で作成した場合を除き、自分で gitignore する必要はありません。** Claude Code がリポジトリでファイルを初めて書き込むときに、既にそれを無視していない場合、グローバル git 除外ファイルに `**/.claude/settings.local.json` を追加するため、ファイルはすべてのリポジトリのコミットから除外されます。そのファイルは、グローバル git 構成がそれを絶対パスまたは `~` プレフィックス付きパスに設定する場合は `core.excludesFile`。それ以外の場合は `$XDG_CONFIG_HOME/git/ignore`、または `XDG_CONFIG_HOME` が設定されていない場合は `~/.config/git/ignore`。手動でファイルを作成し、Claude Code がまだそれに書き込んでいない場合は、自分で `.gitignore` に追加してください。476* **手動で作成した場合を除き、自分で gitignore する必要はありません。** Claude Code が、まだこのファイルを無視していない git リポジトリでファイルを初めて書き込むときに、グローバル git 除外ファイルに `**/.claude/settings.local.json` を追加するため、ファイルはすべてのリポジトリでコミットから除外されます。そのファイルは、グローバル git 設定で `core.excludesFile` が絶対パスまたは `~` で始まるパスに設定されている場合はそのファイル、それ以外の場合は `$XDG_CONFIG_HOME/git/ignore`、`XDG_CONFIG_HOME` が設定されていない場合は `~/.config/git/ignore` です。手動でファイルを作成し、Claude Code がまだそれに書き込んでいない場合は、自分で `.gitignore` に追加してください。

477* **ファイルが追跡されていない間、その allow ルールは信頼を待ちません。** ファイルはリポジトリのものではなくあなたのものであるため、Claude Code はコミットされたファイルが必要とする[ワークスペース信頼](/docs/ja/permissions#project-allow-rules-and-workspace-trust)ステップなしにその `allow` ルールを適用します。ファイルが git で追跡されている場合、信頼ステップもそれに適用されます。[ローカル設定ファイルが信頼を必要とする場合](/docs/ja/permissions#when-your-local-settings-file-needs-trust)を参照してください。477* **ファイルが追跡されていない間、その許可ルールは信頼を待ちません。** ファイルはリポジトリのものではなく自分のものであるため、Claude Code はコミットされたファイルに必要な[ワークスペースの信頼](/docs/ja/permissions#project-allow-rules-and-workspace-trust)ステップなしで、その `allow` ルールを適用します。ファイルが git で追跡されている場合は、信頼ステップがこのファイルにも適用されます。[ローカル設定ファイルが信頼を必要とする場合](/docs/ja/permissions#when-your-local-settings-file-needs-trust)を参照してください。

478 478 

479<span id="where-claude-code-looks-for-each-file" />479<span id="where-claude-code-looks-for-each-file" />

480 480 


486 Claude Code が git リポジトリでローカルファイルを保持する場所486 Claude Code が git リポジトリでローカルファイルを保持する場所

487</h4>487</h4>

488 488 

489Claude が Bash コマンドを実行する権限を求め、「はい、今後は聞かないでください」を選択すると、Claude Code はその承認を `.claude/settings.local.json` の `allow` ルールとして保存します。git リポジトリのサブディレクトリから Claude Code を開始する場合、リポジトリルートでそのファイルを読み取り、書き込み、リポジトリ全体に承認を適用します。[worktree](/docs/ja/worktrees) では、メインチェックアウトのルートのファイルを使用します。489Claude が Bash コマンドを実行する権限を求め、「はい、今後は聞かないでください」を選択すると、Claude Code はその承認を `.claude/settings.local.json` の `allow` ルールとして保存します。git リポジトリのサブディレクトリで Claude Code を開始した場合、リポジトリルートにあるそのファイルを読み書きし、承認をリポジトリ全体に適用します。[worktree](/docs/ja/worktrees) では、メインチェックアウトのルートにあるファイルを使用します。

490 490 

4912 つのルールがルートの場所を適格にします:491ルートの場所には 2 つの条件があります:

492 492 

493* **ファイルが `.claude/settings.json` の代わりに留まる場合**:git リポジトリの外、リポジトリルートがホームディレクトリ、Windows、またはリポジトリルート、その `.git` またはその `.claude` エントリがユーザーによって所有されていない場合。493* **ファイルが代わりに `.claude/settings.json` と同じ場所に置かれる場合**:git リポジトリの外、リポジトリルートがホームディレクトリである場合、Windows の場合、またはリポジトリルートやその `.git` または `.claude` エントリの所有者が自分のユーザーでない場合。

494* **ファイル内のパスはリポジトリルートに固定されません**:`/` で始まる権限ルール、または相対サンドボックスパスは、[セッションのプライマリ作業ディレクトリ](/docs/ja/permissions#read-and-edit)に固定されます。494* **ファイル内のパスはリポジトリルートを基準にしません**:`/` で始まる権限ルールや相対サンドボックスパスは、代わりに[セッションのプライマリ作業ディレクトリを基準にします](/docs/ja/permissions#read-and-edit)。

495 495 

496v2.1.211 より前では、Claude Code は開始ディレクトリにファイルを保持していました。以前のバージョンが残したファイルをルートファイルと並行して読み込みます。両方が同じキーを設定する場合、ルートの値が適用され、両方のファイルからの権限ルールが適用されます。Agent SDK の [`resolveSettings()`](/docs/ja/agent-sdk/typescript#resolvesettings) ヘルパーは常に開始ディレクトリからファイルを読み込みます。496v2.1.211 より前では、Claude Code は開始ディレクトリにファイルを保持していました。以前のバージョンがそこに残したファイルも、ルートのファイルと併せて読み込みます。両方が同じキーを設定している場合はルートの値が適用され、権限ルールは両方のファイルのものが適用されます。Agent SDK の [`resolveSettings()`](/docs/ja/agent-sdk/typescript#resolvesettings) ヘルパーは常に開始ディレクトリからファイルを読み込みます。

497 497 

498Claude Code は共有 `.claude/settings.json` をセッションの[プライマリ作業ディレクトリ](/docs/ja/permissions#working-directories)から読み込むため、リポジトリルートにコミットされたファイルを使用するには、そこから Claude Code を開始してください。[`/cd`](/docs/ja/permissions#move-the-session-to-another-directory) でセッションを移動した後、Claude Code は代わりに新しいディレクトリから両方のプロジェクトファイルを読み込み、同じルールでローカルファイルを配置します。移動したディレクトリから読み込むには Claude Code v2.1.246 以降が必要です。498Claude Code は共有 `.claude/settings.json` をセッションの[プライマリ作業ディレクトリ](/docs/ja/permissions#working-directories)から読み込むため、リポジトリルートにコミットされたファイルを使用するには、そこで Claude Code を開始してください。[`/cd` でセッションを移動した](/docs/ja/permissions#move-the-session-to-another-directory)後は、Claude Code は代わりに新しいディレクトリから両方のプロジェクトファイルを読み込み、ローカルファイルは同じルールで配置します。移動先のディレクトリから読み込むには Claude Code v2.1.246 以降が必要です。

499 499 

500<span id="managed-settings-delivery" />500<span id="managed-settings-delivery" />

501 501 


511 組織が強制する内容を確認する511 組織が強制する内容を確認する

512</h3>512</h3>

513 513 

514組織が Claude Code を管理する場合、いくつかの設定はあなたのために決定され、独自のファイルに入れるものは何もそれらを変更しません。どれを確認するには、`/status` を実行してください。`Setting sources` 行は、あなたに適用される管理ソースの名前を付けます。管理設定はこのマシンで Claude Code が実行される場所に到達します。[開発者が変更できる内容](/docs/ja/managed-settings#what-a-developer-can-change)はローカル管理者権限と Claude Code 以外のツールをカバーしています。514組織が Claude Code を管理している場合、一部の設定はあらかじめ決定されており、自分のファイルに何を書いても変更できません。どの設定が該当するかを確認するには、`/status` を実行してください。`Setting sources` 行に、適用される管理ソースの名前が表示されます。管理設定は、このマシン上で Claude Code が実行されるすべての場所に適用されます。ローカル管理者権限と Claude Code 以外のツールについては、[開発者が変更できる内容](/docs/ja/managed-settings#what-a-developer-can-change)を参照してください。

515 515 

516管理設定は[管理設定ページ](/docs/ja/managed-settings#delivery-mechanisms)の配信メカニズムを通じてあなたに到達します。最も一般的には:516管理設定は、管理設定ページで説明している[配信メカニズム](/docs/ja/managed-settings#delivery-mechanisms)を通じて届きます。最も一般的なものは次のとおりです:

517 517 

518* [サーバー管理設定](/docs/ja/server-managed-settings)。Claude Code が claude.ai 管理コンソールまたは自己ホスト型[Claude apps gateway](/docs/ja/claude-apps-gateway) から取得します518* [サーバー管理設定](/docs/ja/server-managed-settings)。Claude Code が claude.ai 管理コンソールまたはセルフホストの [Claude apps gateway](/docs/ja/claude-apps-gateway) から取得します

519* MDM または OS レベルのポリシー、およびシステムディレクトリの `managed-settings.json` ファイル519* MDM または OS レベルのポリシー、およびシステムディレクトリ内の `managed-settings.json` ファイル

520* Claude Desktop などの埋め込みホスト。SDK `managedSettings` オプション経由。[埋め込みホストからポリシーを制御する](/docs/ja/managed-settings#parent-settings-from-embedding-hosts)を参照してください520* Claude Desktop などの埋め込みホスト。SDK の `managedSettings` オプションを通じて配信されます。[埋め込みホストからポリシーを制御する](/docs/ja/managed-settings#parent-settings-from-embedding-hosts)を参照してください

521 521 

522Claude Desktop アプリで実行される[Cowork](https://claude.com/docs/cowork/overview) セッションでは、Claude Code は claude.ai 管理コンソールからサーバー管理設定を取得しません。組織の Claude Desktop 構成が `requireCoworkFullVmSandbox` を設定しない限り、デバイスにデプロイされたポリシーを読み込みます。[ポリシーが適用される場所と時期](/docs/ja/managed-settings#where-and-when-a-policy-applies)は Cowork とクラウドセッションをカバーしています。522Claude Desktop アプリで自分のマシン上で実行される [Cowork](https://claude.com/docs/cowork/overview) セッションでは、Claude Code は claude.ai 管理コンソールからサーバー管理設定を取得しません。また、組織の Claude Desktop 設定で `requireCoworkFullVmSandbox` が設定されていない限り、デバイスにデプロイされたポリシーを読み込みます。Cowork とクラウドセッションについては、[ポリシーが適用される場所と時期](/docs/ja/managed-settings#where-and-when-a-policy-applies)を参照してください。

523 523 

524管理者の場合、[組織向けに Claude Code をセットアップする](/docs/ja/admin-setup)は何を強制するかを選択する手順を説明し、[管理設定をデプロイする](/docs/ja/managed-settings)は配信と、ポリシーが有効であることを確認する方法をカバーしています。524管理者の場合、[組織向けに Claude Code をセットアップする](/docs/ja/admin-setup)で何を強制するかを選択する手順を、[管理設定をデプロイする](/docs/ja/managed-settings)で配信方法とポリシーが有効であることを確認する方法を説明しています。claude.ai 管理コンソールの管理設定エディターに表示されることがある警告については、[サーバー管理設定を構成する](/docs/ja/server-managed-settings#configure-server-managed-settings)を参照してください。

525 525 

526<h2 id="change-a-setting">526<h2 id="change-a-setting">

527 設定を変更する527 設定を変更する


809 809 

810[クラウドセッション](/docs/ja/claude-code-on-the-web)は[クラウド環境](/docs/ja/cloud-environments)で実行され、マシン上ではなくリポジトリの新しいクローンで実行されます。これにより、どの設定がそこに到達するかが変わります:810[クラウドセッション](/docs/ja/claude-code-on-the-web)は[クラウド環境](/docs/ja/cloud-environments)で実行され、マシン上ではなくリポジトリの新しいクローンで実行されます。これにより、どの設定がそこに到達するかが変わります:

811 811 

812* **共有プロジェクト設定**(`.claude/settings.json`):1 つのリポジトリを持つセッションで読み込まれます。ファイルはクローンの一部であり、セッションはその内部で開始されるためです。その設定をコミットして、それらのセッションに適用してください。複数のリポジトリを持つセッションはクローンの上で開始され、各リポジトリの `.claude/settings.json` から `enabledPlugins` と `extraKnownMarketplaces` キーのみを読み込み、権限ルール、hooks、`env`、またはその他のキーは読み込みません。これら 2 つのキーが宣言するマーケットプレイスとプラグインは、それでも[クラウドセッションでは読み込まれません](/docs/ja/cloud-environments#what-carries-over-from-your-setup)。812* **共有プロジェクト設定**(`.claude/settings.json`):1 つのリポジトリを持つセッションで読み込まれます。ファイルはクローンの一部であり、セッションはその内部で開始されるためです。その設定をコミットして、それらのセッションに適用してください。Anthropic がホストする環境では、複数のリポジトリを持つセッションはクローンの上で開始され、各リポジトリの `.claude/settings.json` から `enabledPlugins` と `extraKnownMarketplaces` キーのみを読み込み、権限ルール、フック、`env`、またはその他のキーは読み込みません。これら 2 つのキーが宣言するマーケットプレイスとプラグインは、それでも[クラウドセッションでは読み込まれません](/docs/ja/cloud-environments#what-carries-over-from-your-setup)。自己ホスト型環境については、[どのリポジトリの設定が適用されるか](/docs/ja/self-hosted-environments-configuration#repository-settings-in-sessions-with-several-repositories)を参照してください。

813* **ユーザーおよびプロジェクトローカル設定**(`~/.claude/settings.json` および `.claude/settings.local.json`):読み込まれません。両方ともマシンに留まり、ローカルファイルはクローンにありません。813* **ユーザーおよびプロジェクトローカル設定**(`~/.claude/settings.json` および `.claude/settings.local.json`):読み込まれません。両方ともマシンに留まり、ローカルファイルはクローンにありません。

814* **管理設定**:デバイスの `managed-settings.json` ファイルまたは MDM プロファイルはクラウドセッションに到達しません。組織の[サーバー管理設定](/docs/ja/server-managed-settings)は到達します。[サーフェスカバレッジ](/docs/ja/model-config#surface-coverage)はどのクラウドセッションがそれらを受け取るかをリストします。[自己ホスト型環境](/docs/ja/self-hosted-environments)もランナーイメージの管理設定ファイルを読み込みます。[Claude Code が管理ソースを結合する方法](/docs/ja/managed-settings#how-claude-code-combines-managed-sources)はそのファイルがいつ適用されるかを説明します。814* **管理設定**:デバイスの `managed-settings.json` ファイルまたは MDM プロファイルはクラウドセッションに到達しません。組織の[サーバー管理設定](/docs/ja/server-managed-settings)は到達します。[サーフェスカバレッジ](/docs/ja/model-config#surface-coverage)はどのクラウドセッションがそれらを受け取るかをリストします。[自己ホスト型環境](/docs/ja/self-hosted-environments)もランナーイメージの管理設定ファイルを読み込みます。[Claude Code が管理ソースを結合する方法](/docs/ja/managed-settings#how-claude-code-combines-managed-sources)はそのファイルがいつ適用されるかを説明します。

815* **`/config`**:ブラウザの claude.ai/code では、値を変更する代わりに Claude Code セクションの claude.ai 設定を開きます。クラウドセッションの設定を変更するには、環境で[環境変数](/docs/ja/cloud-environments#set-environment-variables)を設定するか、1 つのリポジトリを持つセッションでは、そのリポジトリの `.claude/settings.json` にキーをコミットしてください。815* **`/config`**:ブラウザの claude.ai/code では、値を変更する代わりに Claude Code セクションの claude.ai 設定を開きます。クラウドセッションの設定を変更するには、環境で[環境変数](/docs/ja/cloud-environments#set-environment-variables)を設定するか、1 つのリポジトリを持つセッションでは、そのリポジトリの `.claude/settings.json` にキーをコミットしてください。

skills.md +2 −0

Details

94| `migrate` | 既存の Claude API コードを新しいモデルに更新する | v2.1.221 より前 |94| `migrate` | 既存の Claude API コードを新しいモデルに更新する | v2.1.221 より前 |

95| `upgrade` | プロジェクトの Anthropic SDK 依存関係をメジャーバージョン間で移動します。現在は Python `anthropic` パッケージを 0.x から 1.x に移動します | v2.1.236 以降 |95| `upgrade` | プロジェクトの Anthropic SDK 依存関係をメジャーバージョン間で移動します。現在は Python `anthropic` パッケージを 0.x から 1.x に移動します | v2.1.236 以降 |

96| `managed-agents-onboard` | 新しい Managed Agent の作成をウォークスルーする | v2.1.221 より前 |96| `managed-agents-onboard` | 新しい Managed Agent の作成をウォークスルーする | v2.1.221 より前 |

97| `managed-agents-onboard <url>` | URL のページが説明する Managed Agent を構築する。たとえば [Managed Agents ドキュメント](https://platform.claude.com/docs/en/managed-agents/overview) 内のページなど | v2.1.290 以降 |

98| `managed-agents-onboard <quickstart-name>` | `deep-researcher` など、Console のクイックスタートテンプレートの 1 つを構築する。テンプレート名ではない単語を 1 つ指定した場合、Claude は有効な名前を一覧表示します | v2.1.290 以降 |

97| `prompt-audit` | プロンプト、スキル、ツール説明に書かれた古いモデル向けの指示にフラグを立て、差分として修正を提案する | v2.1.221 以降 |99| `prompt-audit` | プロンプト、スキル、ツール説明に書かれた古いモデル向けの指示にフラグを立て、差分として修正を提案する | v2.1.221 以降 |

98| `cost-optimize` | プロジェクトの Claude API 支出がどこに行くかをプロファイルし、プロンプトキャッシング、不要な入出力トークンの削減、バッチ処理、努力、モデル選択などのオプションから節約を提案します。一度に 1 つの変更 | v2.1.247 以降 |100| `cost-optimize` | プロジェクトの Claude API 支出がどこに行くかをプロファイルし、プロンプトキャッシング、不要な入出力トークンの削減、バッチ処理、努力、モデル選択などのオプションから節約を提案します。一度に 1 つの変更 | v2.1.247 以降 |

99| `build-eval` | Claude を搭載したアプリ用の eval セットをビルドする | v2.1.259 以降 |101| `build-eval` | Claude を搭載したアプリ用の eval セットをビルドする | v2.1.259 以降 |

sub-agents.md +4 −2

Details

609メイン会話の権限モードは、Claude Code が設定した値を使用するかどうかを決定します。609メイン会話の権限モードは、Claude Code が設定した値を使用するかどうかを決定します。

610 610 

611* メイン会話が `bypassPermissions`、`acceptEdits`、または[自動モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)にある場合、サブエージェントはそのモードで実行され、Claude Code は設定した `permissionMode` を無視します。自動モードでは、分類器はメイン会話のブロックおよび許可ルールでサブエージェントのツール呼び出しを評価します。サブエージェントが終了すると、分類器はその作業と最終レポートもレビューしてから、レポートが配信されます。[自動モードがサブエージェントを処理する方法](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)を参照してください。611* メイン会話が `bypassPermissions`、`acceptEdits`、または[自動モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)にある場合、サブエージェントはそのモードで実行され、Claude Code は設定した `permissionMode` を無視します。自動モードでは、分類器はメイン会話のブロックおよび許可ルールでサブエージェントのツール呼び出しを評価します。サブエージェントが終了すると、分類器はその作業と最終レポートもレビューしてから、レポートが配信されます。[自動モードがサブエージェントを処理する方法](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)を参照してください。

612* メイン会話が `default`、`dontAsk`、または `plan` モードにある場合、サブエージェントは設定した権限モードで実行されます。ただし `bypassPermissions` を除きます。`bypassPermissions` を宣言するサブエージェントはメイン会話のモードを保持します。`bypassPermissions` 例外には Claude Code v2.1.267 以降が必要です。612* メイン会話が `default`、`dontAsk`、または `plan` モードの場合、サブエージェントは設定した権限モードで実行されます。次の場合は、代わりにメイン会話の権限モードを維持します。

613 * `bypassPermissions` を設定した場合。`bypassPermissions` の例外には Claude Code v2.1.267 以降が必要です。

614 * `auto` を設定し、サブエージェントで [auto モードが利用できない](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)場合。例えば、設定ファイルで [`disableAutoMode`](/docs/ja/settings-reference#disableautomode) が設定されている場合や、サブエージェントのモデルが auto モードをサポートしていない場合です。

613 615 

614`permissionMode` はこれらの値を受け入れ、`default` のエイリアスとして `manual` を受け入れます。616`permissionMode` はこれらの値を受け入れ、`default` のエイリアスとして `manual` を受け入れます。

615 617 


640Implement API endpoints. Follow the conventions and patterns from the preloaded skills.642Implement API endpoints. Follow the conventions and patterns from the preloaded skills.

641```643```

642 644 

643リストされた各スキルの完全なコンテンツは起動時にサブエージェントのコンテキストに注入されます。このフィールドはプリロードされるスキルを制御し、サブエージェントがアクセスできるスキルではありません。なしで、サブエージェントは実行中に Skill ツールを通じてプロジェクト、ユーザー、およびプラグインスキルを発見して呼び出すことができます。スキルを完全に呼び出すことを防ぐには、[`tools`](#available-tools)リストから `Skill` を省略するか、`disallowedTools` に追加します。645リストされた各スキルの完全なコンテンツは、リスト内の最初の 32 個の異なる名前まで、起動時にサブエージェントのコンテキストに注入されます。このフィールドはプリロードされるスキルを制御するものであり、サブエージェントがアクセスできるスキルを制御するものではありません。このフィールドがなくても、サブエージェントは実行中に Skill ツールを通じてプロジェクト、ユーザー、およびプラグインスキルを発見して呼び出すことができます。サブエージェントがスキルを呼び出すことを完全に防ぐには、[`tools`](#available-tools) リストから `Skill` を省略するか、`disallowedTools` に追加します。

644 646 

645[`disable-model-invocation: true`](/docs/ja/skills#control-who-invokes-a-skill)を設定するスキルはプリロードできません。プリロードは Claude が呼び出すことができるスキルと同じセットから取得されるためです。これには、Claude が単独で実行できないバンドルされた `/verify` スキルが含まれます。647[`disable-model-invocation: true`](/docs/ja/skills#control-who-invokes-a-skill)を設定するスキルはプリロードできません。プリロードは Claude が呼び出すことができるスキルと同じセットから取得されるためです。これには、Claude が単独で実行できないバンドルされた `/verify` スキルが含まれます。

646 648 

Details

666 666 

667* WebFetch は `localhost` およびドットのない他のホスト名(ベアなイントラネット名など)をリクエストを行う前に拒否します。[返されるエラー](/docs/ja/errors#webfetch-cannot-fetch-localhost) は Claude に Bash 経由で `curl` を使用してローカルサーバーに到達するよう指示します。667* WebFetch は `localhost` およびドットのない他のホスト名(ベアなイントラネット名など)をリクエストを行う前に拒否します。[返されるエラー](/docs/ja/errors#webfetch-cannot-fetch-localhost) は Claude に Bash 経由で `curl` を使用してローカルサーバーに到達するよう指示します。

668* HTTP URL は自動的に HTTPS にアップグレードされます。668* HTTP URL は自動的に HTTPS にアップグレードされます。

669* 大きなページは処理前に固定文字数制限に切り詰められます。669* WebFetch は 1 回の呼び出しにつき、ページのコンテンツを最大 100,000 文字まで読み取ります。Claude Code v2.1.290 以降では、より長いページの結果で読み取られなかった量が Claude に伝えられるため、Claude は次の部分をフェッチできます。

670* WebFetch はデフォルトで各レスポンスを 15 分間キャッシュするため、同じ URL の繰り返しフェッチは迅速に返されます。Claude Code v2.1.233 以降では、[`CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS`](/docs/ja/env-vars#variables) を設定して、WebFetch が各レスポンスを保持する期間を変更できます。670* WebFetch はデフォルトで各レスポンスを 15 分間キャッシュするため、同じ URL の繰り返しフェッチは迅速に返されます。Claude Code v2.1.233 以降では、[`CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS`](/docs/ja/env-vars#variables) を設定して、WebFetch が各レスポンスを保持する期間を変更できます。

671* ページが 5 分以内(WebFetch が従うリダイレクトを含む)にダウンロードを完了しない場合、デッドラインエラーで失敗します。Claude Code v2.1.268 以降では、[`CLAUDE_CODE_WEBFETCH_DEADLINE_MS`](/docs/ja/env-vars#variables) を設定して制限を変更するか、`0` に設定して削除できます。671* ページが 5 分以内(WebFetch が従うリダイレクトを含む)にダウンロードを完了しない場合、デッドラインエラーで失敗します。Claude Code v2.1.268 以降では、[`CLAUDE_CODE_WEBFETCH_DEADLINE_MS`](/docs/ja/env-vars#variables) を設定して制限を変更するか、`0` に設定して削除できます。

672* URL が別のホストにリダイレクトされる場合、WebFetch はそれに従う代わりに、元の URL とリダイレクト先を名前で示すテキスト結果を返します。その後 Claude は 2 番目の WebFetch 呼び出しで新しい URL をフェッチします。672* URL が別のホストにリダイレクトされる場合、WebFetch はそれに従う代わりに、元の URL とリダイレクト先を名前で示すテキスト結果を返します。その後 Claude は 2 番目の WebFetch 呼び出しで新しい URL をフェッチします。

ultrareview.md +6 −6

Details

56 プルリクエストをレビューする56 プルリクエストをレビューする

57</h3>57</h3>

58 58 

59GitHub プルリクエストをレビューするには、PR 番号を渡します。59ローカルブランチではなく `github.com` 上のプルリクエストをレビューするには、PR 番号を渡します。

60 60 

61```text theme={null}61```text theme={null}

62/code-review ultra 123462/code-review ultra 1234


64 64 

65このコマンドは `#1234`、`PR 1234`、および貼り付けられた PR URL も受け入れます。貼り付けられた URL は現在のディレクトリ内のリポジトリを指す必要があります。65このコマンドは `#1234`、`PR 1234`、および貼り付けられた PR URL も受け入れます。貼り付けられた URL は現在のディレクトリ内のリポジトリを指す必要があります。

66 66 

67PR モードでは、クラウドサンドボックスはローカルの作業ツリーをバンドルするのではなく、ホストから直接プルリクエストをクローンします。PR モードは `github.com` 上のリポジトリおよび Claude Code に接続されている Owner が設定した [GitHub Enterprise Server](/docs/ja/github-enterprise-server) インスタンスで機能します。67PR モードには `github.com` 上のリポジトリが必要です。[GitHub Enterprise Server](/docs/ja/github-enterprise-server) インスタンス上のリポジトリの場合は、PR 番号なしで `/code-review ultra` を実行し、代わりにローカルブランチをレビューしてください。

68 68 

69`github.com` 上のリポジトリの場合、サンドボックスは Claude アカウントに接続された GitHub アカウントでクローンするため、そのアカウントは PR のリポジトリを読み取ることができる必要があります。69PR モードでは、クラウドサンドボックスは作業ツリーをアップロードするのではなく、`github.com` からプルリクエストをクローンします。その際には Claude アカウントに接続された GitHub アカウントを使用するため、そのアカウントにはリポジトリへの読み取りアクセス権が必要です。

70 70 

71[`/web-setup`](/docs/ja/web-quickstart#connect-from-your-terminal) を実行して、GitHub CLI ログインを Claude アカウントに接続します。71[`/web-setup`](/docs/ja/web-quickstart#connect-from-your-terminal) を実行して、GitHub CLI ログインを Claude アカウントに接続します。

72 72 


74 プルリクエストに検出結果を投稿する74 プルリクエストに検出結果を投稿する

75</h3>75</h3>

76 76 

77Claude Code v2.1.227 以降では、`github.com` 上のプルリクエストをレビューするときに、Claude が完成した検出結果を PR に自分の GitHub アカウントからの単一のプレーンコメントとして投稿するようにできます。コメントはレビューまたは承認ではなく、「Generated by Claude Code」という注記で終わります。ブランチまたは GitHub Enterprise Server プルリクエストをレビューする場合、Claude Code はセッションにのみ検出結果を表示します。77Claude Code v2.1.227 以降では、`github.com` 上のプルリクエストをレビューするときに、Claude が完成した検出結果を PR に自分の GitHub アカウントからの単一のプレーンコメントとして投稿するようにできます。コメントはレビューまたは承認ではなく、「Generated by Claude Code」という注記で終わります。ブランチをレビューする場合、Claude Code はセッションにのみ検出結果を表示します。

78 78 

79Claude Code は選択しない限り投稿しません。`--no-post` がデフォルトです。投稿は実行ごとに行う選択です。79Claude Code は選択しない限り投稿しません。`--no-post` がデフォルトです。投稿は実行ごとに行う選択です。

80 80 


106Claude Code はテキストが複数の単語を持ち、ブランチ名または PR 参照ではない場合にのみ、テキストをメモとして扱います。単一の単語を読み取ると、ブランチ名または PR 参照として読み取られるため、タイプミスされたブランチ名は [異なるベースに対してレビューする](#review-against-a-different-base)からの最も近いブランチエラーを取得します。テキストが `check PR 123 again` などの PR 参照と他の単語を組み合わせる場合、Claude Code も起動しません。PR 番号のみで再実行してその PR をレビューするか、参照なしで現在のブランチをレビューするよう求めます。106Claude Code はテキストが複数の単語を持ち、ブランチ名または PR 参照ではない場合にのみ、テキストをメモとして扱います。単一の単語を読み取ると、ブランチ名または PR 参照として読み取られるため、タイプミスされたブランチ名は [異なるベースに対してレビューする](#review-against-a-different-base)からの最も近いブランチエラーを取得します。テキストが `check PR 123 again` などの PR 参照と他の単語を組み合わせる場合、Claude Code も起動しません。PR 番号のみで再実行してその PR をレビューするか、参照なしで現在のブランチをレビューするよう求めます。

107 107 

108<Tip>108<Tip>

109 リポジトリが大きすぎてバンドルできない場合、Claude Code は代わりに PR モードを使用するよう促します。ブランチをプッシュしてドラフト PR を開き、`/code-review ultra <PR-number>` を実行してください。109 リポジトリが大きすぎてバンドルできない場合、Claude Code は代わりに PR モードを使用するよう促します。`github.com` 上のリポジトリの場合は、ブランチをプッシュしてドラフト PR を開き、`/code-review ultra <PR-number>` を実行してください。

110</Tip>110</Tip>

111 111 

112<h3 id="diff-limits-and-fallbacks">112<h3 id="diff-limits-and-fallbacks">


173claude ultrareview origin/main173claude ultrareview origin/main

174```174```

175 175 

176引数なしの場合、サブコマンドは現在のブランチとデフォルトブランチ間の差分をレビューします。マージベースが存在しない場合は、`/code-review ultra` と同じ[リポジトリ全体フォールバック](#diff-limits-and-fallbacks)を使用します。PR 番号を渡してプルリクエストをレビューするか、ベースブランチを渡してそれに対してレビューします。[ベースブランチ処理](#review-against-a-different-base)は対話的コマンドと一致します。176引数なしの場合、サブコマンドは現在のブランチとデフォルトブランチ間の差分をレビューします。マージベースが存在しない場合は、`/code-review ultra` と同じ[リポジトリ全体フォールバック](#diff-limits-and-fallbacks)を使用します。PR 番号を渡して [`github.com` 上のプルリクエストをレビュー](#review-a-pull-request)するか、ベースブランチを渡してそれに対してレビューします。[ベースブランチ処理](#review-against-a-different-base)は対話的コマンドと一致します。

177 177 

178サブコマンドを実行すると、リポジトリ全体フォールバックと課金および利用規約プロンプトに同意したことになるため、入力を待たずに実行が開始されます。自分で実行することが同意としてカウントされます。Claude がたとえば Bash ツールを通じてサブコマンドを代わりに実行する場合、Claude Code はリポジトリ全体レビューを拒否します。178サブコマンドを実行すると、リポジトリ全体フォールバックと課金および利用規約プロンプトに同意したことになるため、入力を待たずに実行が開始されます。自分で実行することが同意としてカウントされます。Claude がたとえば Bash ツールを通じてサブコマンドを代わりに実行する場合、Claude Code はリポジトリ全体レビューを拒否します。

179 179 

workflows.md +27 −1

Details

354 354 

355本体は最上位の `await` を持つプレーン JavaScript です。`agent()` は 1 つのサブエージェントを生成し、`pipeline()` はリスト内の 1 つのアイテムごとに 1 つを実行し、`parallel()` は一連のエージェント タスクを同時に実行してすべてが完了するのを待ちます。355本体は最上位の `await` を持つプレーン JavaScript です。`agent()` は 1 つのサブエージェントを生成し、`pipeline()` はリスト内の 1 つのアイテムごとに 1 つを実行し、`parallel()` は一連のエージェント タスクを同時に実行してすべてが完了するのを待ちます。

356 356 

357`agent()` 呼び出しは、実行中に停止した場合または回復不可能な API エラーが発生した場合は `null` に解決されます。`pipeline()` はその `null` を結果配列に保持するため、例は `.filter(Boolean)` で終わってそれらのエントリを削除します。357`agent()` 呼び出しは、実行中に停止した場合または回復不可能な API エラーが発生した場合は `null` に解決されます。`pipeline()` はその `null` を結果配列に保持するため、例は `.filter(Boolean)` で終わり、[すべての試行で停止したエージェント](#when-an-agent-stalls-and-restarts)のスロットを含め、それらのエントリを削除します。

358 358 

359[auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)では、スクリプトが `agent()` に渡すプロンプトは、分類器がそのサブエージェントのアクションをレビューするときにあなたからのリクエストとしてカウントされません。Claude Code はそれをスクリプトが計算したテキストとしてマークするためです。359[auto モード](/docs/ja/permission-modes#eliminate-prompts-with-auto-mode)では、スクリプトが `agent()` に渡すプロンプトは、分類器がそのサブエージェントのアクションをレビューするときにあなたからのリクエストとしてカウントされません。Claude Code はそれをスクリプトが計算したテキストとしてマークするためです。

360 360 


463* 制限は 24 時間以内にリセットされます。週単位の制限はさらに先にリセットされる可能性があります。463* 制限は 24 時間以内にリセットされます。週単位の制限はさらに先にリセットされる可能性があります。

464* ランはまだ 2 回待機していません。3 回目に制限に達すると、エージェントは失敗します。464* ランはまだ 2 回待機していません。3 回目に制限に達すると、エージェントは失敗します。

465 465 

466<h3 id="when-an-agent-stalls-and-restarts">

467 エージェントが停滞して再起動するとき

468</h3>

469 

470出力が十分長い時間届かなくなったエージェントは、同じプロンプトから最初からやり直します。[`/workflows`](#watch-the-run) では、その名前に `(retry 1)` サフィックスが付き、詳細に `attempt 2 (stalled)` と表示されます。再起動は自動で行われるため、何もする必要はありません。

471 

472新しい試行は、停滞した試行のトランスクリプトなしで開始されます。停滞した試行が既に変更したファイルは変更されたままで、その試行が消費したトークンはランの合計に残ります。停滞ウィンドウとは、Claude Code が試行を終了する前にエージェントからの出力を待つ時間です。エージェントが自身のツール呼び出しや[使用制限のリセット](#when-a-run-hits-your-usage-limit)を待っている時間は、停滞ウィンドウにカウントされません。

473 

474エージェントの再起動は、`r` で要求した再起動も含めて最大 5 回です。6 回目の試行も停滞した場合、`agent()` 呼び出しは失敗し、エラーの冒頭にその理由が示されます。

475 

476* `agent stalled on all 6 attempts`: すべての試行がウィンドウ全体の間、出力なしで経過しました。エージェントの作業がそれほど長く出力を伴わないものである場合は、ウィンドウを長くしてください

477* `agent lost its reply on all 6 attempts`: すべての試行の応答ストリームが途絶え、Claude Code がその待機を諦めました。[ストリーミングアイドルウォッチドッグ](/docs/ja/network-config#streaming-idle-watchdogs)が先に応答を終了させたため、停滞ウィンドウを長くしても効果はありません。そのウォッチドッグのタイムアウトは `CLAUDE_STREAM_IDLE_TIMEOUT_MS` で設定します

478* `agent abandoned after 6 attempts`: 試行がそれぞれ異なる方法で終了しました。エラーにはそれらが順番に列挙されます

479 

480ウィンドウが終了する前に出力を生成するための時間をエージェントに多く与えるには:

481 

482* **1 つのエージェント**: その `agent()` 呼び出しでミリ秒単位の `stallMs` を渡します。たとえば 30 分なら `agent(prompt, { stallMs: 1800000 })` です

483* **すべてのエージェント**: [`CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`](/docs/ja/env-vars#variables) を設定します。これはワークフロー外のサブエージェントにも適用されます

484 

485失敗後にランが続行されるかどうかは、スクリプトがエージェントをどのように呼び出したかによって異なります。

486 

487* **[`parallel()` または `pipeline()`](#what-the-saved-script-looks-like) 内**: ランはエージェントの結果の代わりに `null` を使用して続行されます

488* **直接 await した場合**: ランはエラーで終了します

489 

490再試行するには、Claude にワークフローを再起動するよう依頼してください。何が再度実行されるかについては、[一時停止後に再開する](#resume-after-a-pause)を参照してください。

491 

466<h3 id="cost">492<h3 id="cost">

467 コスト493 コスト

468</h3>494</h3>

worktrees.md +1 −1

Details

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)とルールによって決まります。107これらのチェックが読み取るのは、編集の対象となるパス、コマンドが実行されるディレクトリ、およびコマンドのテキストです。シェルコマンドがどのファイルに書き込むかを追跡するチェックはないため、`cp` やシェルのリダイレクトなど、メインチェックアウトで git を実行せずにメインチェックアウトに書き込むコマンドは、これらのチェックでは拒否されません。Claude Code はそのようなコマンドを、[権限](/docs/ja/permissions)と[サンドボックス化](/docs/ja/sandboxing)の設定のもとで他のシェルコマンドと同様に扱います。

108 108 

109チェックは、Claude Code を起動したリポジトリに適用されます。リンクされた worktree のリンク元であるメインチェックアウトも対象になります。PowerShell コマンドについては、Claude Code は作業ディレクトリのチェックのみを適用します。109チェックは、Claude Code を起動したリポジトリに適用されます。リンクされた worktree のリンク元であるメインチェックアウトも対象になります。PowerShell コマンドについては、Claude Code は作業ディレクトリのチェックのみを適用します。

110 110