SpyBara
Go Premium

Documentation 2026-05-11 23:00 UTC to 2026-05-12 22:57 UTC

31 files changed +972 −350. View all changes and history on the product overview
2026
Sun 31 06:39 Sat 30 06:23 Fri 29 06:38 Thu 28 06:37 Wed 27 06:42 Tue 26 06:33 Sun 24 06:25 Sat 23 06:18 Fri 22 06:33 Thu 21 06:36 Wed 20 06:35 Tue 19 06:34 Mon 18 23:59 Sun 17 01:01 Fri 15 22:58 Thu 14 17:02 Wed 13 23:01 Tue 12 22:57 Mon 11 23:00 Sun 10 23:03 Sat 9 04:57 Fri 8 22:00 Thu 7 22:59 Tue 5 23:00 Mon 4 22:58 Sat 2 18:14 Fri 1 18:19

agent-sdk/hooks.md +17 −17

Details

24 </Step>24 </Step>

25 25 

26 <Step title="SDK が登録されたフックを収集する">26 <Step title="SDK が登録されたフックを収集する">

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

28 </Step>28 </Step>

29 29 

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


225 225 

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

227 227 

228* **入力データ:** イベント詳細を含む型付きオブジェクト。各フック型には独自の入力形状があります(たとえば、`PreToolUseHookInput` には `tool_name` と `tool_input` が含まれ、`NotificationHookInput` には `message` が含まれます)。[TypeScript](/ja/agent-sdk/typescript#hook-input) および [Python](/ja/agent-sdk/python#hook-input) SDK リファレンスで完全な型定義を参照してください。228* **入力データ:** イベント詳細を含む型付きオブジェクト。各フック型には独自の入力形状があります(たとえば、`PreToolUseHookInput` には `tool_name` と `tool_input` が含まれ、`NotificationHookInput` には `message` が含まれます)。[TypeScript](/ja/agent-sdk/typescript#hookinput) および [Python](/ja/agent-sdk/python#hookinput) SDK リファレンスで完全な型定義を参照してください。

229 * すべてのフック入力は `session_id`、`cwd`、および `hook_event_name` を共有します。229 * すべてのフック入力は `session_id`、`cwd`、および `hook_event_name` を共有します。

230 * `agent_id` と `agent_type` は、フックがサブエージェント内で発火するときに入力されます。TypeScript では、これらはベースフック入力にあり、すべてのフック型で利用可能です。Python では、`PreToolUse`、`PostToolUse`、および `PostToolUseFailure` のみにあります。230 * `agent_id` と `agent_type` は、フックがサブエージェント内で発火するときに入力されます。TypeScript では、これらはベースフック入力にあり、すべてのフック型で利用可能です。Python では、`PreToolUse`、`PostToolUse`、および `PostToolUseFailure` のみにあります。

231* **ツール使用 ID**(`str | None` / `string | undefined`):同じツール呼び出しの `PreToolUse` と `PostToolUse` イベントを相関させます。231* **ツール使用 ID**(`str | None` / `string | undefined`):同じツール呼び出しの `PreToolUse` と `PostToolUse` イベントを相関させます。


236コールバックは 2 つのカテゴリのフィールドを持つオブジェクトを返します。236コールバックは 2 つのカテゴリのフィールドを持つオブジェクトを返します。

237 237 

238* **トップレベルフィールド**は会話を制御します。`systemMessage` はモデルに表示される会話にメッセージを注入し、`continue`(Python では `continue_`)はこのフック後にエージェントが実行を続けるかどうかを決定します。238* **トップレベルフィールド**は会話を制御します。`systemMessage` はモデルに表示される会話にメッセージを注入し、`continue`(Python では `continue_`)はこのフック後にエージェントが実行を続けるかどうかを決定します。

239* **`hookSpecificOutput`** は現在の操作を制御します。内部のフィールドはフックイベントタイプに依存します。`PreToolUse` フックの場合、ここで `permissionDecision`(`"allow"`、`"deny"`、または `"ask"`)、`permissionDecisionReason`、および `updatedInput` を設定します。TypeScript SDK では、`permissionDecision` は `"defer"` も受け入れてクエリを終了し[後で再開](/ja/hooks#defer-a-tool-call-for-later)します。この値は Python SDK では利用できません。`PostToolUse` フックの場合、`additionalContext` を設定してツール結果に情報を追加できます。または `updatedToolOutput` を設定して、Claude がそれを見る前にツールの出力全体を置き換えることができます。239* **`hookSpecificOutput`** は現在の操作を制御します。内部のフィールドはフックイベントタイプに依存します。`PreToolUse` フックの場合、ここで `permissionDecision`(`"allow"`、`"deny"`、`"ask"`、または `"defer"`)、`permissionDecisionReason`、および `updatedInput` を設定します。`"defer"` を返すとクエリが終了し、[後で再開](/ja/hooks#defer-a-tool-call-for-later)できます。`PostToolUse` フックの場合、`additionalContext` を設定してツール結果に情報を追加できます。または `updatedToolOutput` を設定して、Claude がそれを見る前にツールの出力全体を置き換えることができます。

240 240 

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

242 242 

243<Note>243<Note>

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


326</CodeGroup>326</CodeGroup>

327 327 

328<Note>328<Note>

329 `updatedInput` を使用する場合、`permissionDecision: 'allow'` も含める必要があります元の `tool_input` を変更するのではなく、常に新しいオブジェクトを返します329 `updatedInput` を使用する場合、`permissionDecision: 'allow'` を含めて変更された入力を自動承認するか、`permissionDecision: 'ask'` を含めてユーザーに表示する必要があります`'defer'` の場合、`updatedInput` は無視されます。常に元の `tool_input` を変更するのではなく、新しいオブジェクトを返します

330</Note>330</Note>

331 331 

332### コンテキストを追加してツールをブロックする332### コンテキストを追加してツールをブロックする


489 489 

490### サブエージェントアクティビティを追跡する490### サブエージェントアクティビティを追跡する

491 491 

492`SubagentStop` フックを使用して、サブエージェントが作業を完了するときを監視します。[TypeScript](/ja/agent-sdk/typescript#hook-input) および [Python](/ja/agent-sdk/python#hook-input) SDK リファレンスで完全な入力型を参照してください。この例は、サブエージェントが完了するたびに概要をログします。492`SubagentStop` フックを使用して、サブエージェントが作業を完了するときを監視します。[TypeScript](/ja/agent-sdk/typescript#hookinput) および [Python](/ja/agent-sdk/python#hookinput) SDK リファレンスで完全な入力型を参照してください。この例は、サブエージェントが完了するたびに概要をログします。

493 493 

494<CodeGroup>494<CodeGroup>

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


621 621 

622### 通知を Slack に転送する622### 通知を Slack に転送する

623 623 

624`Notification` フックを使用して、エージェントからのシステム通知を受け取り、外部サービスに転送します。通知は特定のイベントタイプに対して発火します。`permission_prompt`(Claude がパーミッションを必要とする)、`idle_prompt`(Claude が入力を待機している)、`auth_success`(認証が完了した)、および `elicitation_dialog`(Claude がユーザーにプロンプトを表示している)です。各通知には、人間が読める説明を含む `message` フィールドと、オプションで `title` が含まれます。624`Notification` フックを使用して、エージェントからのシステム通知を受け取り、外部サービスに転送します。通知は特定のイベントタイプに対して発火します。`permission_prompt`(Claude がパーミッションを必要とする)、`idle_prompt`(Claude が入力を待機している)、`auth_success`(認証が完了した)、`elicitation_dialog`(Claude がユーザーにプロンプトを表示している)、`elicitation_response`(ユーザーが質問に答えた)、および `elicitation_complete`(質問が閉じられた)です。各通知には、人間が読める説明を含む `message` フィールドと、オプションで `title` が含まれます。

625 625 

626この例は、すべての通知を Slack チャネルに転送します。[Slack 受信ウェブフック URL](https://api.slack.com/messaging/webhooks) が必要です。これは、Slack ワークスペースにアプリを追加し、受信ウェブフックを有効にすることで作成します。626この例は、すべての通知を Slack チャネルに転送します。[Slack 受信ウェブフック URL](https://api.slack.com/messaging/webhooks) が必要です。これは、Slack ワークスペースにアプリを追加し、受信ウェブフックを有効にすることで作成します。

627 627 


727* マッチャーパターンがツール名と正確にマッチしていることを確認します727* マッチャーパターンがツール名と正確にマッチしていることを確認します

728* フックが `options.hooks` の正しいイベントタイプの下にあることを確認します728* フックが `options.hooks` の正しいイベントタイプの下にあることを確認します

729* `Stop` や `SubagentStop` などの非ツールフックの場合、マッチャーは異なるフィールドに対してマッチングされます([マッチャーパターン](/ja/hooks#matcher-patterns)を参照)729* `Stop` や `SubagentStop` などの非ツールフックの場合、マッチャーは異なるフィールドに対してマッチングされます([マッチャーパターン](/ja/hooks#matcher-patterns)を参照)

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

731 731 

732### マッチャーが期待どおりにフィルタリングしない732### マッチャーが期待どおりにフィルタリングしない

733 733 

734マッチャーは**ツール名**のみをマッチングし、ファイルパスやその他の引数はマッチングしません。ファイルパスでフィルタリングするには、フック内で `tool_input.file_path` をチェックします734マッチャーは**ツール名**のみをマッチングし、ファイルパスやその他の引数はマッチングしません。ファイルパスでフィルタリングするには、フック内で `tool_input.file_path` をチェックします

735 735 

736```typescript theme={null}736```typescript theme={null}

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

738 const preInput = input as PreToolUseHookInput;738 const preInput = input as PreToolUseHookInput;

739 const toolInput = preInput.tool_input as Record<string, unknown>;739 const toolInput = preInput.tool_input as Record<string, unknown>;

740 const filePath = toolInput?.file_path as string;740 const filePath = toolInput?.file_path as string;

741 if (!filePath?.endsWith(".md")) return {}; // マークダウンファイル以外をスキップする741 if (!filePath?.endsWith(".md")) return {}; // マークダウンファイル以外をスキップ

742 // マークダウンファイルを処理する...742 // マークダウンファイルを処理...

743 return {};743 return {};

744};744};

745```745```


751 751 

752### ツールが予期せずブロックされた752### ツールが予期せずブロックされた

753 753 

754* `PreToolUse` フックすべてで `permissionDecision: 'deny'` を返していないかチェックします754* すべての `PreToolUse` フックで `permissionDecision: 'deny'` を返していないかチェックします

755* フックにログを追加して、返している `permissionDecisionReason` を確認します755* フックにログを追加して、返している `permissionDecisionReason` を確認します

756* マッチャーパターンが広すぎないことを確認します(空のマッチャーはすべてのツールにマッチングします)756* マッチャーパターンが広すぎないことを確認します(空のマッチャーはすべてのツールにマッチングします)

757 757 

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

759 759 

760* `updatedInput` が `hookSpecificOutput` の内部にあり、トップレベルにないことを確認します760* `updatedInput` が `hookSpecificOutput` の内部にあり、トップレベルにないことを確認します

761 761 

762 ```typescript theme={null}762 ```typescript theme={null}

763 return {763 return {


769 };769 };

770 ```770 ```

771 771 

772* 入力変更を有効にするには、`permissionDecision: 'allow'` も返す必要があります772* 入力変更を有効にするには、`permissionDecision: 'allow'` または `'ask'` も返す必要があります

773 773 

774* `hookSpecificOutput` に `hookEventName` を含めて、出力がどのフック型用かを識別します774* `hookSpecificOutput` に `hookEventName` を含めて、出力がどのフック型用かを識別します

775 775 

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

777 777 

778`SessionStart` と `SessionEnd` は TypeScript で SDK コールバックフックとして登録できますが、Python SDK では利用できません(`HookEvent` は除外されています)。Python では、設定ファイルで定義された[シェルコマンドフック](/ja/hooks#hook-events)としてのみ利用可能です(たとえば、`.claude/settings.json`)。SDK アプリケーションからシェルコマンドフックをロードするには、[`setting_sources`](/ja/agent-sdk/python#setting-source) または [`settingSources`](/ja/agent-sdk/typescript#setting-source) で適切な設定ソースを含めます778`SessionStart` と `SessionEnd` は TypeScript で SDK コールバックフックとして登録できますが、Python SDK では利用できません(`HookEvent` は除外されています)。Python では、設定ファイルで定義された[シェルコマンドフック](/ja/hooks#hook-events)としてのみ利用可能です(たとえば、`.claude/settings.json`)。SDK アプリケーションからシェルコマンドフックをロードするには、[`setting_sources`](/ja/agent-sdk/python#settingsource) または [`settingSources`](/ja/agent-sdk/typescript#settingsource) で適切な設定ソースを含めます

779 779 

780<CodeGroup>780<CodeGroup>

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

782 options = ClaudeAgentOptions(782 options = ClaudeAgentOptions(

783 setting_sources=["project"], # フックを含む .claude/settings.json をロードする783 setting_sources=["project"], # フックを含む .claude/settings.json をロード

784 )784 )

785 ```785 ```

786 786 

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

788 const options = {788 const options = {

789 settingSources: ["project"] // フックを含む .claude/settings.json をロードする789 settingSources: ["project"] // フックを含む .claude/settings.json をロード

790 };790 };

791 ```791 ```

792</CodeGroup>792</CodeGroup>

Details

1> ## Documentation Index

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

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

4 

5# システムプロンプトの変更

6 

7> `claude_code` プリセットとカスタムシステムプロンプトの間で選択し、CLAUDE.md、出力スタイル、append、または完全にカスタムなプロンプトで動作をカスタマイズします。

8 

9システムプロンプトは Claude の動作、機能、応答スタイルを定義します。人間が作業を監視して操舵する CLI または IDE のようなコーディングツール向けに `claude_code` プリセットから始めます。異なるサーフェス、アイデンティティ、またはパーミッションモデルを持つエージェント向けに独自のプロンプトを作成します。

10 

11このページでは以下をカバーしています:

12 

13* [システムプロンプトの仕組み](#how-system-prompts-work)。プリセット、プリセットと `append` の組み合わせ、カスタムプロンプトの間で選択するための決定テーブル付き

14* [エージェントの動作をカスタマイズ](#customize-agent-behavior)する方法。CLAUDE.md ファイル、出力スタイル、`append`、またはカスタム文字列を使用

15* [4 つのアプローチを比較](#compare-the-four-approaches)する方法。永続性、スコープ、および保持される内容による比較

16* [アプローチを組み合わせ](#combine-approaches)てカスタマイズ方法を重ねる方法

17 

18## システムプロンプトの仕組み

19 

20システムプロンプトは、会話全体を通じて Claude の動作方法を形作る初期命令セットです。Agent SDK には、これに対する 3 つの開始点があります:

21 

22* **最小限のデフォルト**:TypeScript で `systemPrompt` を設定しない、または Python で `system_prompt` を設定しない場合、SDK はツール呼び出しをカバーする最小限のプロンプトを使用しますが、Claude Code のコーディングガイドライン、応答スタイル、プロジェクトコンテキストは省略されています。これは、デフォルトで完全な Claude Code プロンプトを使用する `claude -p` とは異なります。CLI から移行していて、一致する動作を望む場合は、`claude_code` プリセットを設定してください。

23* **`claude_code` プリセット**:Claude Code CLI が使用する完全なシステムプロンプト。ツール使用命令、コードスタイルとフォーマットガイドライン、応答トーンと詳細度ルール、セキュリティと安全性の命令、および作業ディレクトリと環境に関するコンテキストが含まれています。TypeScript で `systemPrompt: { type: "preset", preset: "claude_code" }` を設定するか、Python で `system_prompt={"type": "preset", "preset": "claude_code"}` を設定してください。オプションで `append` を使用して、最後に独自の命令を追加できます。

24* **カスタム文字列**:自分で作成したプロンプト。SDK は提供したものだけを送信します。

25 

26### 開始点を決定する

27 

28決定要因は、エージェントが Claude Code にどの程度似ているかです:リポジトリで動作するコーディングエージェント。人間がストリーミング出力を監視して作業を指導します。製品がそれから遠いほど、独自のプロンプトを作成する必要があります。

29 

30| 構築しているもの | 使用するもの | 得られるもの |

31| :------------------------------------------------------------- | :------------------------------- | :------------------------------------------------------------ |

32| 人間が監視して指導する CLI または IDE のようなコーディングツール。Claude Code のデフォルトが必要なもの | `claude_code` プリセット | 完全な Claude Code プロンプト:ツールガイダンス、安全ルール、ターミナルフレンドリーな応答、リポジトリ規約認識 |

33| 同じ種類のツール、プラス、コーディング標準、出力形式、またはドメインコンテキストなどの製品固有のルール | `claude_code` プリセット(`append` 付き) | 上記のすべて。プリセットの後に命令が追加されます。何も削除されないため、これは最もリスクが低いカスタマイズです |

34| 異なるサーフェス、アイデンティティ、またはアクセス許可モデルを持つエージェント、またはコーディング以外のエージェント | カスタムプロンプト文字列 | 作成したもののみ。エージェントが必要とするツールガイダンスと安全命令を置き換える責任があります |

35| ツール呼び出しループが薄く、エージェントペルソナがなく、ユーザープロンプトですべての動作を提供する | `systemPrompt` オプションなし | 最小限のデフォルト:ツール呼び出しサポートのみ |

36 

37「Claude Code と異なる」は通常、以下のいずれかを意味します:

38 

39* **異なるサーフェス**:出力は、それをトリガーした人によってターミナルで読まれません。チャット UI、構造化出力コンシューマー、およびコーディング以外の自動化は、それぞれ、出力がどのようにレンダリングおよびレビューされるかに一致するプロンプトが必要です。CI ジョブがリントエラーを修正したり、diff をレビューしたりするような無人コーディング自動化は、作業自体がプリセットが書かれているものであるため、プリセットに適合します。

40* **異なるアイデンティティ**:エージェントは Claude Code として自分自身を提示すべきではありません。サポートボット、データ分析アシスタント、またはドメイン固有のエージェントは、独自の名前、スコープ、およびペルソナが必要です。

41* **異なるアクセス許可モデル**:エージェントは人間が各ステップを承認することなく自律的に実行されるか、リソースの限定されたセットで動作します。Claude Code のプロンプトは、人間がループ内にいて、完全なツールセットにアクセスできることを前提としています。

42* **コーディング以外のタスク**:Claude Code のプロンプトのほとんどはコーディングガイダンスです。研究、コンテンツ、または運用エージェントの場合、そのガイダンスは実際に必要な命令と競合します。

43 

44[比較表](#compare-the-four-approaches)は、各カスタマイズ方法が何を保持するかを示しています。

45 

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

47 

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

49 

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

51 

52CLAUDE.md ファイルは Claude に永続的なプロジェクトコンテキストと命令を提供します。SDK は会話に内容を注入し、システムプロンプトには注入しないため、任意のシステムプロンプト設定で機能します。CLAUDE.md に何を入れるか、どこに配置するか、効果的な命令を書く方法については、[Claude がプロジェクトを記憶する方法](/ja/memory)を参照してください。このセクションでは SDK に固有のもの、つまり CLAUDE.md がどのように読み込まれるかについて説明します。

53 

54SDK は、対応する設定ソースが有効な場合に CLAUDE.md を読み込みます。`'project'` は作業ディレクトリから `CLAUDE.md` または `.claude/CLAUDE.md` を読み込み、`'user'` は `~/.claude/CLAUDE.md` を読み込みます。デフォルトの `query()` オプションは両方のソースを有効にするため、CLAUDE.md は自動的に読み込まれます。TypeScript で `settingSources` または Python で `setting_sources` を明示的に設定する場合は、必要なソースを含めてください。CLAUDE.md の読み込みは設定ソースによって制御され、`claude_code` プリセットによっては制御されません。

55 

56#### SDK で CLAUDE.md を読み込む

57 

58CLAUDE.md を読み込むには、`settingSources` を CLAUDE.md が存在するレベルを含むように設定します。以下の例は、プロジェクトレベルの CLAUDE.md を `claude_code` プリセットと共に読み込むため、Claude は完全なコーディングエージェントプロンプトとプロジェクトの規約の両方にアクセスできます。

59 

60<CodeGroup>

61 ```typescript TypeScript theme={null}

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

63 

64 const messages = [];

65 

66 for await (const message of query({

67 prompt: "Add a new React component for user profiles",

68 options: {

69 systemPrompt: {

70 type: "preset",

71 preset: "claude_code" // Use Claude Code's system prompt

72 },

73 settingSources: ["project"] // Loads CLAUDE.md from project

74 }

75 })) {

76 messages.push(message);

77 }

78 

79 // Now Claude has access to your project guidelines from CLAUDE.md

80 ```

81 

82 ```python Python theme={null}

83 from claude_agent_sdk import query, ClaudeAgentOptions

84 

85 messages = []

86 

87 async for message in query(

88 prompt="Add a new React component for user profiles",

89 options=ClaudeAgentOptions(

90 system_prompt={

91 "type": "preset",

92 "preset": "claude_code", # Use Claude Code's system prompt

93 },

94 setting_sources=["project"], # Loads CLAUDE.md from project

95 ),

96 ):

97 messages.append(message)

98 

99 # Now Claude has access to your project guidelines from CLAUDE.md

100 ```

101</CodeGroup>

102 

103CLAUDE.md はプロジェクト内のすべてのセッション全体で永続的であり、git を通じてチームと共有され、コード変更なしで自動的に検出されます。空の `settingSources` 配列を渡す場合は読み込まれません。

104 

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

106 

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

108 

109#### 出力スタイルを作成する

110 

111出力スタイルは、frontmatter に `name` と `description` を持つマークダウンファイルで、その後にプロンプトコンテンツが続きます。すべてのプロジェクトで利用可能なユーザーレベルのスタイルの場合は `~/.claude/output-styles/` に保存するか、チームと共有してコミットできるプロジェクトレベルのスタイルの場合はリポジトリの `.claude/output-styles/` に保存します。

112 

113以下の例はコードレビュー担当者のペルソナを定義しています。プロジェクト全体で利用可能にするために `~/.claude/output-styles/code-reviewer.md` として保存します。

114 

115```markdown ~/.claude/output-styles/code-reviewer.md theme={null}

116---

117name: Code Reviewer

118description: Thorough code review assistant

119---

120 

121You are an expert code reviewer.

122 

123For every code submission:

1241. Check for bugs and security issues

1252. Evaluate performance

1263. Suggest improvements

1274. Rate code quality (1-10)

128```

129 

130#### 出力スタイルをアクティブ化する

131 

132作成後、以下を通じて出力スタイルをアクティブ化します。

133 

134* **CLI**:`/config` を実行し、出力スタイルを選択

135* **設定**:`.claude/settings.local.json` で `outputStyle` を設定

136* **TypeScript SDK**:`options.outputStyle` をスタイルの名前に設定

137 

138Python SDK には、出力スタイルをプログラムで選択するオプションはありません。`.claude/settings.local.json` に書き込めないコードのみのデプロイメントの場合は、`append` またはカスタムプロンプト文字列を代わりに使用してください。

139 

140**SDK ユーザーへの注記:** 出力スタイルは、オプションに `settingSources: ['user']` または `settingSources: ['project']`(TypeScript)/ `setting_sources=["user"]` または `setting_sources=["project"]`(Python)を含める場合に読み込まれます。

141 

142### `claude_code` プリセットに追加する

143 

144Claude Code プリセットを `append` プロパティと共に使用して、カスタム命令を追加しながら、すべての組み込み機能を保持できます。

145 

146<CodeGroup>

147 ```typescript TypeScript theme={null}

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

149 

150 const messages = [];

151 

152 for await (const message of query({

153 prompt: "Help me write a Python function to calculate fibonacci numbers",

154 options: {

155 systemPrompt: {

156 type: "preset",

157 preset: "claude_code",

158 append: "Always include detailed docstrings and type hints in Python code."

159 }

160 }

161 })) {

162 messages.push(message);

163 if (message.type === "assistant") {

164 console.log(message.message.content);

165 }

166 }

167 ```

168 

169 ```python Python theme={null}

170 from claude_agent_sdk import query, ClaudeAgentOptions, AssistantMessage

171 

172 messages = []

173 

174 async for message in query(

175 prompt="Help me write a Python function to calculate fibonacci numbers",

176 options=ClaudeAgentOptions(

177 system_prompt={

178 "type": "preset",

179 "preset": "claude_code",

180 "append": "Always include detailed docstrings and type hints in Python code.",

181 }

182 ),

183 ):

184 messages.append(message)

185 if isinstance(message, AssistantMessage):

186 print(message.content)

187 ```

188</CodeGroup>

189 

190#### ユーザーとマシン全体でプロンプトキャッシングを改善する

191 

192デフォルトでは、同じ `claude_code` プリセットと `append` テキストを使用する 2 つのセッションでも、異なる作業ディレクトリから実行される場合、プロンプトキャッシュエントリを共有することはできません。これは、プリセットが `append` テキストの前のシステムプロンプトにセッションごとのコンテキストを埋め込むためです。作業ディレクトリ、git リポジトリであるかどうか、プラットフォーム、アクティブなシェル、OS バージョン、および自動メモリパスです。そのコンテキストに違いがあると、異なるシステムプロンプトが生成され、キャッシュミスが発生します。CLAUDE.md コンテンツはシステムプロンプトに影響しません。SDK がそれを会話に注入し、システムプロンプトには注入しないためです。

193 

194セッション全体でシステムプロンプトを同じにするには、TypeScript で `excludeDynamicSections: true` を設定するか、Python で `"exclude_dynamic_sections": True` を設定してください。セッションごとのコンテキストは最初のユーザーメッセージに移動し、システムプロンプトには静的プリセットと `append` テキストのみが残るため、同じ設定がユーザーとマシン全体でキャッシュエントリを共有できます。

195 

196<Note>

197 `excludeDynamicSections` には `@anthropic-ai/claude-agent-sdk` v0.2.98 以降、または Python の場合は `claude-agent-sdk` v0.1.58 以降が必要です。プリセットオブジェクト形式にのみ適用され、`systemPrompt` が文字列の場合は効果がありません。

198</Note>

199 

200次の例は、共有 `append` ブロックを `excludeDynamicSections` と組み合わせているため、異なるディレクトリから実行されるエージェントのフリートが同じキャッシュされたシステムプロンプトを再利用できます。

201 

202<CodeGroup>

203 ```typescript TypeScript theme={null}

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

205 

206 for await (const message of query({

207 prompt: "Triage the open issues in this repo",

208 options: {

209 systemPrompt: {

210 type: "preset",

211 preset: "claude_code",

212 append: "You operate Acme's internal triage workflow. Label issues by component and severity.",

213 excludeDynamicSections: true

214 }

215 }

216 })) {

217 // ...

218 }

219 ```

220 

221 ```python Python theme={null}

222 from claude_agent_sdk import query, ClaudeAgentOptions

223 

224 async for message in query(

225 prompt="Triage the open issues in this repo",

226 options=ClaudeAgentOptions(

227 system_prompt={

228 "type": "preset",

229 "preset": "claude_code",

230 "append": "You operate Acme's internal triage workflow. Label issues by component and severity.",

231 "exclude_dynamic_sections": True,

232 },

233 ),

234 ):

235 ...

236 ```

237</CodeGroup>

238 

239**トレードオフ:** 作業ディレクトリ、git リポジトリフラグ、プラットフォーム、アクティブなシェル、OS バージョン、および自動メモリパスは依然として Claude に到達しますが、システムプロンプトではなく最初のユーザーメッセージの一部として到達します。ユーザーメッセージの命令は、システムプロンプトの同じテキストよりもわずかに低い重みを持つため、Claude は現在のディレクトリまたは自動メモリパスについて推論する際にそれらに依存する可能性が低くなります。クロスセッションキャッシュの再利用が最大限に権威あるコンテキストよりも重要な場合は、このオプションを有効にしてください。

240 

241非対話型 CLI モードの同等のフラグについては、[`--exclude-dynamic-system-prompt-sections`](/ja/cli-reference)を参照してください。

242 

243### カスタムシステムプロンプト

244 

245カスタム文字列を `systemPrompt` として提供して、デフォルトを完全に独自の命令に置き換えることができます。

246 

247<CodeGroup>

248 ```typescript TypeScript theme={null}

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

250 

251 const customPrompt = `You are a Python coding specialist.

252 Follow these guidelines:

253 - Write clean, well-documented code

254 - Use type hints for all functions

255 - Include comprehensive docstrings

256 - Prefer functional programming patterns when appropriate

257 - Always explain your code choices`;

258 

259 const messages = [];

260 

261 for await (const message of query({

262 prompt: "Create a data processing pipeline",

263 options: {

264 systemPrompt: customPrompt

265 }

266 })) {

267 messages.push(message);

268 if (message.type === "assistant") {

269 console.log(message.message.content);

270 }

271 }

272 ```

273 

274 ```python Python theme={null}

275 from claude_agent_sdk import query, ClaudeAgentOptions, AssistantMessage

276 

277 custom_prompt = """You are a Python coding specialist.

278 Follow these guidelines:

279 - Write clean, well-documented code

280 - Use type hints for all functions

281 - Include comprehensive docstrings

282 - Prefer functional programming patterns when appropriate

283 - Always explain your code choices"""

284 

285 messages = []

286 

287 async for message in query(

288 prompt="Create a data processing pipeline",

289 options=ClaudeAgentOptions(system_prompt=custom_prompt),

290 ):

291 messages.append(message)

292 if isinstance(message, AssistantMessage):

293 print(message.content)

294 ```

295</CodeGroup>

296 

297## 4 つのアプローチすべての比較

298 

2994 つのカスタマイズ方法は、どこに存在するか、どのように共有されるか、および `claude_code` プリセットから何を保持するかが異なります。

300 

301| 機能 | CLAUDE.md | 出力スタイル | `systemPrompt` を追加 | カスタム `systemPrompt` |

302| -------------- | ------------- | ------------- | ------------------ | ------------------- |

303| **永続性** | プロジェクトごとのファイル | ファイルとして保存 | セッションのみ | セッションのみ |

304| **再利用性** | プロジェクトごと | プロジェクト全体 | コード重複 | コード重複 |

305| **管理** | ファイルシステム上 | CLI + ファイル | コード内 | コード内 |

306| **デフォルトツール** | 保持 | 保持 | 保持 | 失われる(含まれない限り) |

307| **組み込みセキュリティ** | 維持 | 維持 | 維持 | 追加する必要がある |

308| **環境コンテキスト** | 自動 | 自動 | 自動 | 提供する必要がある |

309| **カスタマイズレベル** | 追加のみ | デフォルトを置き換え | 追加のみ | 完全な制御 |

310| **バージョン管理** | プロジェクトと共に | はい | コードと共に | コードと共に |

311| **スコープ** | プロジェクト固有 | ユーザーまたはプロジェクト | コードセッション | コードセッション |

312 

313「追加を使用」は TypeScript で `systemPrompt: { type: "preset", preset: "claude_code", append: "..." }` を使用するか、Python で `system_prompt={"type": "preset", "preset": "claude_code", "append": "..."}` を使用することを意味します。CLAUDE.md はシステムプロンプト自体を変更しません。SDK はそのコンテンツをプロジェクトコンテキストとして会話に注入します。

314 

315## ユースケースとベストプラクティス

316 

317### CLAUDE.md を使用する場合

318 

319CLAUDE.md は、セッションで使用されるシステムプロンプトに関係なく、プロジェクト内のすべてのセッションに適用すべき命令に使用します。コーディング標準、一般的なコマンド、アーキテクチャコンテキスト、チーム規約などです。CLAUDE.md はリポジトリにコミットされるため、それが説明するコードと同期を保ちます。詳細なガイダンスについては、[CLAUDE.md に追加する場合](/ja/memory#when-to-add-to-claude-md)を参照してください。

320 

321CLAUDE.md ファイルは `project` 設定ソースが有効な場合に読み込まれます。これはデフォルトの `query()` オプションの場合です。TypeScript で `settingSources` または Python で `setting_sources` を明示的に設定する場合は、プロジェクトレベルの CLAUDE.md の読み込みを続けるために `'project'` を含めてください。

322 

323### 出力スタイルを使用する場合

324 

325出力スタイルは、アプリケーションコードを変更することなく CLI と SDK 全体で再利用したいペルソナ用です。`.claude/output-styles` 内のファイルとして存在するため、同じペルソナは CLI の `/config` から、および一致する設定ソースを読み込むすべての SDK セッションから利用できます。

326 

327**最適な用途:**

328 

329* セッション全体での永続的な動作変更

330* チーム共有設定

331* コードレビュアー、データサイエンティスト、DevOps アシスタントなどの特殊なアシスタント

332* バージョン管理が必要な複雑なプロンプト変更

333 

334**例:**

335 

336* 専用 SQL 最適化アシスタントの作成

337* セキュリティ重視のコードレビュアーの構築

338* 特定の教育学を持つティーチングアシスタントの開発

339 

340### `systemPrompt` を追加で使用する場合

341 

342`claude_code` プリセットがすでに製品に適合しており、追加の命令をレイヤーするだけで済む場合は、`append` を使用します。プリセットのツールガイダンス、安全ルール、コーディング規約を再実装することなく保持します。

343 

344**最適な用途:**

345 

346* 特定のコーディング標準または設定の追加

347* 出力フォーマットのカスタマイズ

348* ドメイン固有の知識の追加

349* 応答詳細度の変更

350* ツール命令を失わずに Claude Code のデフォルト動作を強化する

351 

352### カスタム `systemPrompt` を使用する場合

353 

354[開始点を決定する](#decide-on-a-starting-point)で説明されているように、エージェントのサーフェス、アイデンティティ、または権限モデルが Claude Code のものと異なる場合は、カスタムプロンプトを使用します。ツールガイダンスと安全ルールを含む、エージェントが必要とする完全な命令セットを定義します。

355 

356**最適な用途:**

357 

358* Claude の動作を完全に制御

359* 特殊なシングルセッションタスク

360* 新しいプロンプト戦略のテスト

361* デフォルトツールが不要な状況

362* ユニークな動作を持つ特殊なエージェントの構築

363 

364## アプローチの組み合わせ

365 

366これらのメソッドは組み合わせることができます。永続的な出力スタイルまたは CLAUDE.md は長期的な動作を設定し、`append` はセッション固有の指示を保存された設定に触れることなく上に重ねます。

367 

368### 出力スタイルとセッション固有の追加を組み合わせる

369 

370以下の例は、Code Reviewer 出力スタイルがすでにアクティブであることを想定しています。`append` ブロックはセッション固有のフォーカス領域をペルソナの上に重ねるため、単一のレビュー セッションで保存された出力スタイルを変更することなく OAuth とトークン ストレージを優先することができます:

371 

372<CodeGroup>

373 ```typescript TypeScript theme={null}

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

375 

376 // Assuming "Code Reviewer" output style is active (via /config or settings)

377 // Add session-specific focus areas

378 const messages = [];

379 

380 for await (const message of query({

381 prompt: "Review this authentication module",

382 options: {

383 systemPrompt: {

384 type: "preset",

385 preset: "claude_code",

386 append: `

387 For this review, prioritize:

388 - OAuth 2.0 compliance

389 - Token storage security

390 - Session management

391 `

392 }

393 }

394 })) {

395 messages.push(message);

396 }

397 ```

398 

399 ```python Python theme={null}

400 from claude_agent_sdk import query, ClaudeAgentOptions

401 

402 # Assuming "Code Reviewer" output style is active (via /config or settings)

403 # Add session-specific focus areas

404 messages = []

405 

406 async for message in query(

407 prompt="Review this authentication module",

408 options=ClaudeAgentOptions(

409 system_prompt={

410 "type": "preset",

411 "preset": "claude_code",

412 "append": """

413 For this review, prioritize:

414 - OAuth 2.0 compliance

415 - Token storage security

416 - Session management

417 """,

418 }

419 ),

420 ):

421 messages.append(message)

422 ```

423</CodeGroup>

424 

425## 関連項目

426 

427* [出力スタイル](/ja/output-styles):CLI の出力スタイルを作成、管理、共有します。ファイル形式とストレージの場所を含みます

428* [Claude がプロジェクトを記憶する方法](/ja/memory):CLAUDE.md に何を入れるか、どこに配置するか、効果的なプロジェクト指示の書き方

429* [TypeScript SDK リファレンス](/ja/agent-sdk/typescript):`systemPrompt`、`settingSources`、`outputStyle` を含む完全な `Options` 型

430* [Python SDK リファレンス](/ja/agent-sdk/python):`system_prompt` と `setting_sources` を含む完全な `ClaudeAgentOptions` 型

431* [設定](/ja/settings):出力スタイルおよび他の設定が保存される場所を含む `settings.json` リファレンス

Details

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

397| `model` | `string` | CLI からのデフォルト | 使用する Claude モデル |397| `model` | `string` | CLI からのデフォルト | 使用する Claude モデル |

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

399| `outputStyle` | `string` | `undefined` | セッションに対してアクティブにする [出力スタイル](/ja/output-styles) の名前。スタイルは `.claude/output-styles/` などのロードされた `settingSources` の場所に存在する必要があります。[出力スタイルをアクティブにする](/ja/agent-sdk/modifying-system-prompts#activate-an-output-style) を参照してください |

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

400| `permissionMode` | [`PermissionMode`](#permissionmode) | `'default'` | セッションのパーミッションモード |401| `permissionMode` | [`PermissionMode`](#permissionmode) | `'default'` | セッションのパーミッションモード |

401| `permissionPromptToolName` | `string` | `undefined` | パーミッションプロンプト用の MCP ツール名 |402| `permissionPromptToolName` | `string` | `undefined` | パーミッションプロンプト用の MCP ツール名 |

Details

12 12 

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

14 14 

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

16 16 

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

18 18 


232 232 

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

234* **変更を加えて承認**:実行前に入力を変更する(例:パスをサニタイズ、制約を追加)234* **変更を加えて承認**:実行前に入力を変更する(例:パスをサニタイズ、制約を追加)

235* **承認して記憶**:提案された許可ルールをエコーバックして、一致する呼び出しが次回プロンプトをスキップするようにする

235* **拒否**:ツールをブロックして Claude に理由を伝える236* **拒否**:ツールをブロックして Claude に理由を伝える

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

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


297 </CodeGroup>298 </CodeGroup>

298 </Tab>299 </Tab>

299 300 

301 <Tab title="承認して記憶">

302 ユーザーが承認し、この種の呼び出しについて再度尋ねられたくない場合。3 番目のコールバック引数は `suggestions` を含み、これは準備完了した [`PermissionUpdate`](/ja/agent-sdk/typescript#permissionupdate) エントリの配列です。`updatedPermissions` で 1 つをエコーバックして適用します。`localSettings` 宛先を持つ提案は、ルールを `.claude/settings.local.json` に書き込むため、将来のセッションは一致する呼び出しのプロンプトをスキップします。

303 

304 Python の例には `claude-agent-sdk` 0.1.80 以降が必要です。

305 

306 <CodeGroup>

307 ```python Python theme={null}

308 async def can_use_tool(tool_name, input_data, context):

309 choice = await ask_user(f"Allow {tool_name}?", ["once", "always", "no"])

310 

311 if choice == "always":

312 persist = [

313 s for s in context.suggestions if s.destination == "localSettings"

314 ]

315 return PermissionResultAllow(

316 updated_input=input_data, updated_permissions=persist

317 )

318 if choice == "once":

319 return PermissionResultAllow(updated_input=input_data)

320 return PermissionResultDeny(message="User declined")

321 ```

322 

323 ```typescript TypeScript theme={null}

324 canUseTool: async (toolName, input, { suggestions = [] }) => {

325 const choice = await askUser(`Allow ${toolName}?`, ["once", "always", "no"]);

326 

327 if (choice === "always") {

328 const persist = suggestions.filter(

329 (s) => s.destination === "localSettings"

330 );

331 return {

332 behavior: "allow",

333 updatedInput: input,

334 updatedPermissions: persist

335 };

336 }

337 if (choice === "once") {

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

339 }

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

341 };

342 ```

343 </CodeGroup>

344 </Tab>

345 

300 <Tab title="拒否">346 <Tab title="拒否">

301 ユーザーはこのアクションが実行されることを望んでいません。ツールをブロックして、理由を説明するメッセージを提供します。Claude はこのメッセージを見て、別のアプローチを試す可能性があります。347 ユーザーはこのアクションが実行されることを望んでいません。ツールをブロックして、理由を説明するメッセージを提供します。Claude はこのメッセージを見て、別のアプローチを試す可能性があります。

302 348 

agent-teams.md +2 −0

Details

129Use Sonnet for each teammate.129Use Sonnet for each teammate.

130```130```

131 131 

132チームメンバーはデフォルトではリーダーの `/model` 選択を継承しません。プロンプトで指定されていない場合に使用されるモデルを変更するには、`/config` で **Default teammate model** を設定してください。チームメンバーがリーダーの現在のモデルに従うようにするには、**Default (leader's model)** を選択してください。

133 

132### チームメンバーのプラン承認を要求する134### チームメンバーのプラン承認を要求する

133 135 

134複雑またはリスクの高いタスクの場合、チームメンバーが実装前にプランを立てることを要求できます。チームメンバーはリーダーがアプローチを承認するまで、読み取り専用プランモードで動作します。136複雑またはリスクの高いタスクの場合、チームメンバーが実装前にプランを立てることを要求できます。チームメンバーはリーダーがアプローチを承認するまで、読み取り専用プランモードで動作します。

agent-view.md +38 −19

Details

38 </Step>38 </Step>

39 39 

40 <Step title="セッションをディスパッチする">40 <Step title="セッションをディスパッチする">

41 入力にプロンプトを入力して `Enter` を押します。新しいセッションが開始され、セッションが作業中か、入力を待機中か、完了しているかを示す行として表示されます。必要なだけ何度も繰り返して、複数のセッションを並行して実行できます。41 入力にプロンプトを入力して `Enter` を押します。新しいセッションが開始され、セッションが作業中か、入力を待機中か、完了しているかを示す行として表示されます。必要なだけ何度も繰り返して、複数のセッションを並行して実行できます。各セッションはサブスクリプションクォータを独立して使用するため、一度に多くをディスパッチする前に[制限事項](#limitations)を参照してください。

42 </Step>42 </Step>

43 43 

44 <Step title="ピーク表示と返信">44 <Step title="ピーク表示と返信">


58 58 

59`claude agents` を実行してエージェントビューを開きます。ターミナル全体を占有し、状態でグループ化されたすべてのセッションをリストします。ピン留めされたセッションと入力が必要なセッションが上部に表示されます。各行はセッションの名前、現在のアクティビティ、最後に変更されてからの経過時間を表示します。59`claude agents` を実行してエージェントビューを開きます。ターミナル全体を占有し、状態でグループ化されたすべてのセッションをリストします。ピン留めされたセッションと入力が必要なセッションが上部に表示されます。各行はセッションの名前、現在のアクティビティ、最後に変更されてからの経過時間を表示します。

60 60 

61リストはマシンに対してグローバルであり、どのプロジェクトまたはワークツリーで作業しているかに関係なく、すべてのバックグラウンドセッションを含みます。他のターミナルで開いているインタラクティブセッションは、[バックグラウンドにする](#from-inside-a-session)までは表示されず、セッション内で実行している [subagents](/ja/sub-agents) は個別の行としてリストされません。61リストは [config ディレクトリ](#how-background-sessions-are-hosted) の下にあるすべてのバックグラウンドセッションを含み、どのプロジェクトまたはワークツリーで作業しているかに関係なく、マシン全体をカバーします1 つのリポジトリで開始されたセッションと別のワークツリーで開始された別のセッションの両方が一緒に表示されます。他のターミナルで開いているインタラクティブセッションは、[バックグラウンドにする](#from-inside-a-session)までは表示されず、セッション内で実行している [subagents](/ja/sub-agents) は個別の行としてリストされません。

62 62 

63```text theme={null}63```text theme={null}

64Pinned64Pinned

65 ✽ clawd walk cycle Write assets/sprites/clawd-walk.png 3m65 ✽ clawd walk cycle Write assets/sprites/clawd-walk.png 3m

66 66 

67Ready for review67Ready for review

68 ∙ jump physics github.com/anthropics/example/pull/2048 2h68 ∙ jump physics github.com/anthropics/example/pull/20482h

69 69 

70Needs input70Needs input

71 ✻ power-up design needs input: double jump or wall climb? 1m71 ✻ power-up design needs input: double jump or wall climb? 1m


80 … 6 more80 … 6 more

81```81```

82 82 

83アイコンはセッションの状態を示します83各行のアイコンは 2 つのシグナルを伝えますインジケーターはセッションの状態を示し、アイコンの形状は基盤となるプロセスがまだ実行しているかどうかを示します。状態は以下の通りです。

84 84 

85| アイコン | 状態 | 意味 |85| インジケーター | 状態 | 意味 |

86| :------ | :---- | :----------------------------------------- |86| :------ | :---- | :----------------------------------------- |

87| アニメーション | 作業中 | Claude がアクティブにツールを実行しているか、応答を生成しています |87| アニメーション | 作業中 | Claude がアクティブにツールを実行しているか、応答を生成しています |

88| 黄色 | 入力が必要 | Claude は入力を待機しており、通常は許可決定または回答です |88| 黄色 | 入力が必要 | Claude は入力を待機しており、通常は許可決定または回答です |


97 97 

98セッションはディスク上に永続化されます。ターミナルを閉じたり、自動更新が行われたりしても失われず、`claude agents` を再度開くとすべてが表示されます。マシンがスリープまたはシャットダウンした場合、実行中のセッションは停止します。`claude respawn --all` で再開します。98セッションはディスク上に永続化されます。ターミナルを閉じたり、自動更新が行われたりしても失われず、`claude agents` を再度開くとすべてが表示されます。マシンがスリープまたはシャットダウンした場合、実行中のセッションは停止します。`claude respawn --all` で再開します。

99 99 

100各行の 1 行の概要は、設定された [Haiku クラスモデル](/ja/model-config) によって生成されるため、行はセッションが何をしているか、何が必要か、または何を生成したかをトランスクリプトを開かずに伝えることができます。各概要は通常のプロバイダーを通じた 1 つの短い Haiku クラスリクエストであり、セッション自体と同じ [データ使用条件](/ja/data-usage) の下で請求および処理されます。100各行の 1 行の概要は、設定された [Haiku クラスモデル](/ja/model-config) によって生成されるため、行はセッションが何をしているか、何が必要か、または何を生成したかをトランスクリプトを開かずに伝えることができます。セッションがアクティブに作業している間、概要は最大 15 秒ごとに 1 回、および各ターンが終了したときに 1 回更新されます。各更新は通常のプロバイダーを通じた 1 つの短い Haiku クラスリクエストであり、セッション自体と同じ [データ使用条件](/ja/data-usage) の下で請求および処理されます。

101 101 

102セッションがプルリクエストを開くと、行は PR リンクと CI チェックのステータスインジケーターを表示します。ほとんどのタスクではこの行が作業を収集する方法ですチェックが成功したときにプルリクエストをレビューしてマージします102セッションがプルリクエストを開くと、ステータスドットが行の右端に表示されハイパーリンクをサポートするターミナルではプルリクエストにリンクされますセッションが複数のプルリクエストを開いた場合、カウントはドットの前に表示され、色はどれが最も注意が必要かを反映します

103 

104| ドットの色 | プルリクエストのステータス |

105| :---- | :------------------------- |

106| 黄色 | チェックまたはレビューを待機中、またはチェックが失敗 |

107| 緑 | チェックが成功し、レビューがブロックされていない |

108| 紫 | マージ済み |

109| グレー | ドラフトまたはクローズ |

110 

111ほとんどのタスクでは、この行が結果を収集する方法です。ドットが緑になったときにプルリクエストをレビューしてマージします。

103 112 

104### ピーク表示と返信113### ピーク表示と返信

105 114 


119 128 

120デタッチはバックグラウンドセッションを停止しません。`←`、`Ctrl+C`、`Ctrl+D`、`Ctrl+Z`、および `/exit` はすべてセッションを実行し続けます。セッション内からセッションを終了するには、`/stop` を実行します。129デタッチはバックグラウンドセッションを停止しません。`←`、`Ctrl+C`、`Ctrl+D`、`Ctrl+Z`、および `/exit` はすべてセッションを実行し続けます。セッション内からセッションを終了するには、`/stop` を実行します。

121 130 

122エージェントビューを使用した後、空のプロンプトで `←` を押すと、アタッチしたセッションだけでなく、任意の Claude Code セッションから機能します。現在のセッションが事前に選択された状態でエージェントビューを開くため、ターミナルを離れずにセッションを切り替えることができます。131エージェントビューを使用してセッションをディスパッチまたはバックグラウンドにした後、空のプロンプトで `←` を押すと、アタッチしたセッションだけでなく、任意の Claude Code セッションから機能します。現在のセッションをバックグラウンドにしそのセッションが事前に選択された状態でエージェントビューを開くため、ターミナルを離れずにセッションを切り替えることができます。このショートカットは `/config` でオフにできます。

123 132 

124### リストを整理する133### リストを整理する

125 134 


181 190 

182`/` を入力して [skill](/ja/skills) をディスパッチします。繰り返しタスクを skill としてパッケージ化すると、プロンプトを再入力せずにエージェントビューから同じワークフローを何度も開始できます。空の入力で `Tab` を押してすべてのディスパッチ可能な subagent を参照するか、提案が表示されているときにハイライトされた提案を適用します。191`/` を入力して [skill](/ja/skills) をディスパッチします。繰り返しタスクを skill としてパッケージ化すると、プロンプトを再入力せずにエージェントビューから同じワークフローを何度も開始できます。空の入力で `Tab` を押してすべてのディスパッチ可能な subagent を参照するか、提案が表示されているときにハイライトされた提案を適用します。

183 192 

193同じ `@name` が subagent と兄弟リポジトリの両方と一致する場合、subagent が優先されます。`@` なしの最初の単語形式も任意の subagent 名に適用されるため、subagent 名の 1 つと一致する単語で始まるプロンプトはその subagent をディスパッチします。明示的にしたい場合は `@` 形式を使用します。

194 

184#### 特定のディレクトリにディスパッチする195#### 特定のディレクトリにディスパッチする

185 196 

186新しいセッションはエージェントビューを開いたディレクトリで実行されます。別のディレクトリをターゲットにするには197新しいセッションはエージェントビューを開いたディレクトリで実行されます。別のディレクトリをターゲットにするには

187 198 

188* そのディレクトリで `claude agents` を開きます。199* そのディレクトリで `claude agents` を開きます。

189* 複数のリポジトリを保持する親ディレクトリで `claude agents` を開き、プロンプトで `@<repo>` を使用して 1 つを言及してセッションをそこで実行します。200* 複数のリポジトリを保持する親ディレクトリで `claude agents` を開き、プロンプトで `@<repo>` を使用して 1 つを言及してセッションをそこで実行します。


191 202 

192エージェントビューがディレクトリでグループ化されている場合、ハイライトされた行のディレクトリがディスパッチターゲットになるため、グループにスクロールしてパスを再入力せずにそこにディスパッチできます。203エージェントビューがディレクトリでグループ化されている場合、ハイライトされた行のディレクトリがディスパッチターゲットになるため、グループにスクロールしてパスを再入力せずにそこにディスパッチできます。

193 204 

194#### ワークツリーでファイル編集を分離する

195 

196エージェントビューからディスパッチされたセッションはデフォルトで作業ディレクトリを共有するため、同じファイルを編集する 2 つのエージェントが競合する可能性があります。これを防ぐため、Claude Code はエージェントビューからディスパッチされたセッションが分離された [git worktree](/ja/worktrees) に移動するまでファイルを書き込むことをブロックします。Claude はファイルを編集する必要があるときにこれを自動的に処理します。ワークツリーはプロジェクトディレクトリ内の `.claude/worktrees/` の下に作成され、セッションを削除するときに削除されます。セッションを削除すると、そのワークツリーも削除されるため、削除する前に保持したい変更をマージまたはプッシュします。

197 

198subagent が開始方法に関係なく常に独自のワークツリーで実行されるようにするには、frontmatter で [`isolation: worktree`](/ja/sub-agents#supported-frontmatter-fields) を設定します。

199 

200### セッション内から205### セッション内から

201 206 

202`/background` またはそのエイリアス `/bg` を実行して現在の会話をデタッチし、実行し続けます。`/bg run the test suite and fix any failures` などのプロンプトを渡してデタッチする前に 1 つの追加命令を送信します。207`/background` またはそのエイリアス `/bg` を実行して現在の会話をデタッチし、実行し続けます。`/bg run the test suite and fix any failures` などのプロンプトを渡してデタッチする前に 1 つの追加命令を送信します。


225 claude stop 7c5dcf5d stop this session230 claude stop 7c5dcf5d stop this session

226```231```

227 232 

233### ファイル編集の分離方法

234 

235エージェントビュー、`/bg`、または `claude --bg` から開始されたすべてのバックグラウンドセッションは、作業ディレクトリで開始されますが、そこにファイルを書き込むことがブロックされています。セッションがファイルを編集する必要がある場合、Claude は自動的にセッションを `.claude/worktrees/` の下の分離された [git worktree](/ja/worktrees) に移動するため、並列セッションは同じチェックアウトを読み取ることができますが、それぞれが独自のものに書き込みます。セッションが既にワークツリー内にある場合、作業ディレクトリが git リポジトリでない場合、または作業ディレクトリの外への書き込みの場合、ブロックは適用されません。

236 

237セッションを削除するとワークツリーが削除されるため、削除する前に保持したい変更をマージまたはプッシュします。セッションのワークツリーパスを見つけるには、セッションをピークするか、アタッチして作業ディレクトリを確認します。

238 

239subagent が開始方法に関係なく常に独自のワークツリーで実行されるようにするには、frontmatter で [`isolation: worktree`](/ja/sub-agents#supported-frontmatter-fields) を設定します。

240 

241### パーミッションモードと設定

242 

243ディスパッチされたセッションは、そこで `claude` を開始した場合と同じように、実行されるディレクトリから [settings](/ja/settings) と [permission mode](/ja/permissions) を読み取ります。エージェントビュー入力からディスパッチしてもパーミッションモードは渡されないため、セッションはそのディレクトリの設定から `defaultMode` を使用するか、ディスパッチされた [subagent の frontmatter](/ja/sub-agents#supported-frontmatter-fields) から `permissionMode` を使用します。

244 

245シェルからモードを設定するには、`claude --bg` で `--permission-mode` を渡します。`bypassPermissions` または `auto` をこの方法で使用することは、それらのモードが監視していないセッションが承認なしで動作することを許可するため、それらのモードを対話的に実行して `claude` で受け入れるまで拒否されます。

246 

228## シェルからセッションを管理する247## シェルからセッションを管理する

229 248 

230すべてのバックグラウンドセッションには、シェルから使用できる短い ID があります。これらのコマンドはスクリプティングまたはエージェントビューを開きたくない場合に便利です。249すべてのバックグラウンドセッションには、シェルから使用できる短い ID があります。これらのコマンドはスクリプティングまたはエージェントビューを開きたくない場合に便利です。


277 296 

278## 制限事項297## 制限事項

279 298 

280エージェントビューはリサーチプレビューです注意すべき現在の制限事項299Agent view はリサーチプレビューです注意すべき現在の制限事項は以下の通りです

281 300 

282* **レート制限が適用される**バックグラウンドセッションはインタラクティブセッションと同じようにサブスクリプション使用量を消費するため、10 個のエージェントを並行して実行するとクォータが 10 倍速く消費されます。301* **レート制限が適用される**バックグラウンドセッションはインタラクティブセッションと同じようにサブスクリプション使用量を消費するため、10 個のエージェントを並行して実行するとクォータが 10 倍速く消費されます。

283* **セッションはローカル**バックグラウンドセッションはマシンで実行され、スリープまたはシャットダウンすると停止します。302* **セッションはローカル**バックグラウンドセッションはマシンで実行され、スリープまたはシャットダウンすると停止します。

284* **ワークツリーはセッションで削除される**。セッションが独自のワークツリーでファイルを編集した場合、削除する前に変更をマージまたはプッシュします。303* **Worktrees はセッションで削除される**:セッションが独自の Worktrees でファイルを編集した場合、削除する前に変更をマージまたはプッシュします。

285 304 

286## 次のステップ305## 次のステップ

287 306 

Details

1465ファイル名をクリックして、上記のエクスプローラーでそのノードを開きます。1465ファイル名をクリックして、上記のエクスプローラーでそのノードを開きます。

1466 1466 

1467| ファイル | スコープ | コミット | 機能 | リファレンス |1467| ファイル | スコープ | コミット | 機能 | リファレンス |

1468| --------------------------------------------------- | -------------- | ---- | -------------------------------------- | -------------------------------------------------------------------- |1468| --------------------------------------------------- | -------------- | ---- | -------------------------------------- | --------------------------------------------------------------- |

1469| [`CLAUDE.md`](#ce-claude-md) | プロジェクトおよびグローバル | ✓ | 毎セッション読み込まれる指示 | [メモリ](/ja/memory) |1469| [`CLAUDE.md`](#ce-claude-md) | プロジェクトおよびグローバル | ✓ | 毎セッション読み込まれる指示 | [メモリ](/ja/memory) |

1470| [`rules/*.md`](#ce-rules) | プロジェクトおよびグローバル | ✓ | トピックスコープの指示、オプションでパスゲート | [ルール](/ja/memory#organize-rules-with-claude/rules/) |1470| [`rules/*.md`](#ce-rules) | プロジェクトおよびグローバル | ✓ | トピックスコープの指示、オプションでパスゲート | [ルール](/ja/memory#organize-rules-with-claude/rules/) |

1471| [`settings.json`](#ce-settings-json) | プロジェクトおよびグローバル | ✓ | パーミッション、hooks、環境変数、モデルデフォルト | [設定](/ja/settings) |1471| [`settings.json`](#ce-settings-json) | プロジェクトおよびグローバル | ✓ | パーミッション、hooks、環境変数、モデルデフォルト | [設定](/ja/settings) |

1472| [`settings.local.json`](#ce-settings-local-json) | プロジェクトのみ | | 個人的なオーバーライド、自動 gitignore | [設定スコープ](/ja/settings#settings-files) |1472| [`settings.local.json`](#ce-settings-local-json) | プロジェクトのみ | | 個人的なオーバーライド、自動 gitignore | [設定スコープ](/ja/settings#settings-files) |

1473| [`.mcp.json`](#ce-mcp-json) | プロジェクトのみ | ✓ | チーム共有 MCP サーバー | [MCP スコープ](/ja/mcp#mcp-installation-scopes) |1473| [`.mcp.json`](#ce-mcp-json) | プロジェクトのみ | ✓ | チーム共有 MCP サーバー | [MCP スコープ](/ja/mcp#mcp-installation-scopes) |

1474| [`.worktreeinclude`](#ce-worktreeinclude) | プロジェクトのみ | ✓ | 新しい worktrees にコピーする gitignore ファイル | [Worktrees](/ja/common-workflows#copy-gitignored-files-to-worktrees) |1474| [`.worktreeinclude`](#ce-worktreeinclude) | プロジェクトのみ | ✓ | 新しい worktrees にコピーする gitignore ファイル | [Worktrees](/ja/worktrees#copy-gitignored-files-into-worktrees) |

1475| [`skills/<name>/SKILL.md`](#ce-skills) | プロジェクトおよびグローバル | ✓ | `/name` で呼び出される、または自動呼び出される再利用可能なプロンプト | [Skills](/ja/skills) |1475| [`skills/<name>/SKILL.md`](#ce-skills) | プロジェクトおよびグローバル | ✓ | `/name` で呼び出される、または自動呼び出される再利用可能なプロンプト | [Skills](/ja/skills) |

1476| [`commands/*.md`](#ce-commands) | プロジェクトおよびグローバル | ✓ | シングルファイルプロンプト。skills と同じメカニズム | [Skills](/ja/skills) |1476| [`commands/*.md`](#ce-commands) | プロジェクトおよびグローバル | ✓ | シングルファイルプロンプト。skills と同じメカニズム | [Skills](/ja/skills) |

1477| [`output-styles/*.md`](#ce-output-styles) | プロジェクトおよびグローバル | ✓ | カスタムシステムプロンプトセクション | [出力スタイル](/ja/output-styles) |1477| [`output-styles/*.md`](#ce-output-styles) | プロジェクトおよびグローバル | ✓ | カスタムシステムプロンプトセクション | [出力スタイル](/ja/output-styles) |


1497| `~/.claude/` の下のパス | コンテンツ |1497| `~/.claude/` の下のパス | コンテンツ |

1498| -------------------------------------------- | ------------------------------------------------------------------------------------ |1498| -------------------------------------------- | ------------------------------------------------------------------------------------ |

1499| `projects/<project>/<session>.jsonl` | 完全な会話トランスクリプト:すべてのメッセージ、ツール呼び出し、ツール結果 |1499| `projects/<project>/<session>.jsonl` | 完全な会話トランスクリプト:すべてのメッセージ、ツール呼び出し、ツール結果 |

1500| `projects/<project>/<session>/subagents/` | [Subagent](/ja/sub-agents) 会話トランスクリプト。親セッショントランスクリプトが古くなると一緒に削除されます |

1500| `projects/<project>/<session>/tool-results/` | 大きなツール出力を別ファイルにこぼしたもの |1501| `projects/<project>/<session>/tool-results/` | 大きなツール出力を別ファイルにこぼしたもの |

1501| `file-history/<session>/` | Claude が変更したファイルの編集前スナップショット。[チェックポイント復元](/ja/checkpointing)に使用 |1502| `file-history/<session>/` | Claude が変更したファイルの編集前スナップショット。[チェックポイント復元](/ja/checkpointing)に使用 |

1502| `plans/` | [プランモード](/ja/permission-modes#analyze-before-you-edit-with-plan-mode)中に書き込まれたプランファイル |1503| `plans/` | [プランモード](/ja/permission-modes#analyze-before-you-edit-with-plan-mode)中に書き込まれたプランファイル |


1512以下のパスは自動クリーンアップの対象ではなく、無期限に保持されます。1513以下のパスは自動クリーンアップの対象ではなく、無期限に保持されます。

1513 1514 

1514| `~/.claude/` の下のパス | コンテンツ |1515| `~/.claude/` の下のパス | コンテンツ |

1515| ------------------ | ------------------------------------------------ |1516| ---------------------- | -------------------------------------------------------------------------------------- |

1516| `history.jsonl` | 入力したすべてのプロンプト(タイムスタンプとプロジェクトパス付き)。上矢印リコール用に使用 |1517| `history.jsonl` | 入力したすべてのプロンプト(タイムスタンプとプロジェクトパス付き)。上矢印リコール用に使用 |

1517| `stats-cache.json` | `/usage` で表示される集計トークンおよびコスト数 |1518| `stats-cache.json` | `/usage` で表示される集計トークンおよびコスト数 |

1519| `remote-settings.json` | 組織の[サーバー管理設定](/ja/server-managed-settings)のキャッシュコピー。組織が設定を構成している場合のみ存在します。各起動時に更新されます。 |

1518| `todos/` | レガシーセッションごとのタスクリスト。現在のバージョンでは書き込まれません。削除しても安全です。 |1520| `todos/` | レガシーセッションごとのタスクリスト。現在のバージョンでは書き込まれません。削除しても安全です。 |

1519 1521 

1520その他の小さなキャッシュおよびロックファイルは、使用する機能に応じて表示され、削除しても安全です。1522その他の小さなキャッシュおよびロックファイルは、使用する機能に応じて表示され、削除しても安全です。


1524トランスクリプトと履歴は保存時に暗号化されません。OS ファイルパーミッションのみが保護です。ツールが `.env` ファイルを読み込むか、コマンドが認証情報を出力する場合、その値は `projects/<project>/<session>.jsonl` に書き込まれます。露出を減らすには:1526トランスクリプトと履歴は保存時に暗号化されません。OS ファイルパーミッションのみが保護です。ツールが `.env` ファイルを読み込むか、コマンドが認証情報を出力する場合、その値は `projects/<project>/<session>.jsonl` に書き込まれます。露出を減らすには:

1525 1527 

1526* `cleanupPeriodDays` を低くしてトランスクリプトの保持期間を短縮します1528* `cleanupPeriodDays` を低くしてトランスクリプトの保持期間を短縮します

1527* [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/ja/env-vars)環境変数を設定して、任意のモードでトランスクリプトとプロンプト履歴の書き込みをスキップします。非対話型モードでは、代わりに `-p` と一緒に `--no-session-persistence` を渡すか、Agent SDK で `persistSession: false` を設定できます。1529* [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/ja/env-vars) 環境変数を設定して、任意のモードでトランスクリプトとプロンプト履歴の書き込みをスキップします。非対話型モードでは、代わりに `-p` と一緒に `--no-session-persistence` を渡すか、Agent SDK で `persistSession: false` を設定できます。

1528* [パーミッションルール](/ja/permissions)を使用して認証情報ファイルの読み込みを拒否します1530* [パーミッションルール](/ja/permissions)を使用して認証情報ファイルの読み込みを拒否します

1529 1531 

1530### ローカルデータをクリアする1532### ローカルデータをクリアする


1570| `~/.claude/history.jsonl` | 上矢印プロンプトリコール |1572| `~/.claude/history.jsonl` | 上矢印プロンプトリコール |

1571| `~/.claude/file-history/` | 過去のセッションのチェックポイント復元 |1573| `~/.claude/file-history/` | 過去のセッションのチェックポイント復元 |

1572| `~/.claude/stats-cache.json` | `/usage` で表示される履歴合計 |1574| `~/.claude/stats-cache.json` | `/usage` で表示される履歴合計 |

1575| `~/.claude/remote-settings.json` | なし。次の起動時に再取得されます。 |

1573| `~/.claude/debug/`、`~/.claude/plans/`、`~/.claude/paste-cache/`、`~/.claude/image-cache/`、`~/.claude/session-env/`、`~/.claude/tasks/`、`~/.claude/shell-snapshots/`、`~/.claude/backups/` | ユーザー向けのもの |1576| `~/.claude/debug/`、`~/.claude/plans/`、`~/.claude/paste-cache/`、`~/.claude/image-cache/`、`~/.claude/session-env/`、`~/.claude/tasks/`、`~/.claude/shell-snapshots/`、`~/.claude/backups/` | ユーザー向けのもの |

1574| `~/.claude/todos/` | なし。現在のバージョンでは書き込まれないレガシーディレクトリ。 |1577| `~/.claude/todos/` | なし。現在のバージョンでは書き込まれないレガシーディレクトリ。 |

1575 1578 

Details

67| `--disallowedTools` | モデルのコンテキストから削除され、使用できないツール | `"Bash(git log *)" "Bash(git diff *)" "Edit"` |67| `--disallowedTools` | モデルのコンテキストから削除され、使用できないツール | `"Bash(git log *)" "Bash(git diff *)" "Edit"` |

68| `--effort` | 現在のセッションの [努力レベル](/ja/model-config#adjust-effort-level) を設定します。オプション:`low`、`medium`、`high`、`xhigh`、`max`。利用可能なレベルはモデルによって異なります。[`effortLevel`](/ja/settings#available-settings) 設定をこのセッションでオーバーライドし、永続化されません | `claude --effort high` |68| `--effort` | 現在のセッションの [努力レベル](/ja/model-config#adjust-effort-level) を設定します。オプション:`low`、`medium`、`high`、`xhigh`、`max`。利用可能なレベルはモデルによって異なります。[`effortLevel`](/ja/settings#available-settings) 設定をこのセッションでオーバーライドし、永続化されません | `claude --effort high` |

69| `--enable-auto-mode` | {/* max-version: 2.1.110 */}v2.1.111 で削除されました。Auto mode は現在 `Shift+Tab` サイクルにデフォルトで含まれています。`--permission-mode auto` を使用して開始してください | `claude --permission-mode auto` |69| `--enable-auto-mode` | {/* max-version: 2.1.110 */}v2.1.111 で削除されました。Auto mode は現在 `Shift+Tab` サイクルにデフォルトで含まれています。`--permission-mode auto` を使用して開始してください | `claude --permission-mode auto` |

70| `--exclude-dynamic-system-prompt-sections` | システムプロンプトからマシンごとのセクション(作業ディレクトリ、環境情報、メモリパス、git ステータス)を最初のユーザーメッセージに移動します。異なるユーザーとマシンで同じタスクを実行する場合、prompt-cache の再利用を改善します。デフォルトシステムプロンプトにのみ適用されます。`--system-prompt` または `--system-prompt-file` が設定されている場合は無視されます。スクリプト化された複数ユーザーのワークロードの場合は `-p` と一緒に使用してください | `claude -p --exclude-dynamic-system-prompt-sections "query"` |70| `--exclude-dynamic-system-prompt-sections` | システムプロンプトからマシンごとのセクション(作業ディレクトリ、環境情報、メモリパス、git リポジトリフラグ)を最初のユーザーメッセージに移動します。異なるユーザーとマシンで同じタスクを実行する場合、prompt-cache の再利用を改善します。デフォルトシステムプロンプトにのみ適用されます。`--system-prompt` または `--system-prompt-file` が設定されている場合は無視されます。スクリプト化された複数ユーザーのワークロードの場合は `-p` と一緒に使用してください | `claude -p --exclude-dynamic-system-prompt-sections "query"` |

71| `--fallback-model` | デフォルトモデルが過負荷の場合、指定されたモデルへの自動フォールバックを有効にします(プリントモードのみ) | `claude -p --fallback-model sonnet "query"` |71| `--fallback-model` | デフォルトモデルが過負荷の場合、指定されたモデルへの自動フォールバックを有効にします(プリントモードのみ) | `claude -p --fallback-model sonnet "query"` |

72| `--fork-session` | 再開時に、元のセッション ID を再利用する代わりに新しいセッション ID を作成します(`--resume` または `--continue` と一緒に使用) | `claude --resume abc123 --fork-session` |72| `--fork-session` | 再開時に、元のセッション ID を再利用する代わりに新しいセッション ID を作成します(`--resume` または `--continue` と一緒に使用) | `claude --resume abc123 --fork-session` |

73| `--from-pr` | 特定のプルリクエストにリンクされたセッションを再開します。PR 番号、GitHub または GitHub Enterprise PR URL、GitLab マージリクエスト URL、または Bitbucket プルリクエスト URL を受け入れます。Claude がプルリクエストを作成するときに、セッションは自動的にリンクされます | `claude --from-pr 123` |73| `--from-pr` | 特定のプルリクエストにリンクされたセッションを再開します。PR 番号、GitHub または GitHub Enterprise PR URL、GitLab マージリクエスト URL、または Bitbucket プルリクエスト URL を受け入れます。Claude がプルリクエストを作成するときに、セッションは自動的にリンクされます | `claude --from-pr 123` |


124 124 

125`--system-prompt` と `--system-prompt-file` は相互に排他的です。追加フラグは、置き換えフラグのいずれかと組み合わせることができます。125`--system-prompt` と `--system-prompt-file` は相互に排他的です。追加フラグは、置き換えフラグのいずれかと組み合わせることができます。

126 126 

127ほとんどのユースケースでは、追加フラグを使用してください。追加することで、Claude Code の組み込み機能を保持しながら要件を追加できます置き換えフラグはシステムプロンプトを完全に制御する必要がある場合にのみ使用してください127Claude Code のデフォルトの ID がタスクに適合しているかどうかに基づいて選択してください。Claude が追加のルールも従うコーディングアシスタントのままである場合は、追加フラグを使用してください:呼び出しごとの指示、出力形式設定、または `-p` スクリプトのドメインコンテキスト。追加することで、デフォルトのツールガイダンス、安全指示、およびコーディング規約が保持されるため、異なる部分のみを提供します。システムプロンプトの表面、ID、または権限モデルが Claude Code のものと異なる場合は置き換えフラグを使用してください例えば人間が監視していないパイプラインの非コーディングエージェント置き換えることで、デフォルトプロンプト全体が削除されます。ツールガイダンスと安全指示を含めて、タスクがまだ必要とするものについて責任を負います。

128 

129これらのフラグは現在の呼び出しにのみ適用されます。プロジェクト全体で切り替えて共有できる永続的なペルソナについては、[出力スタイル](/ja/output-styles) を使用してください。Claude が常に従うべきプロジェクト規約については、[CLAUDE.md](/ja/memory) を使用してください。[Agent SDK ガイドのシステムプロンプト](/ja/agent-sdk/modifying-system-prompts#decide-on-a-starting-point) は、より詳細に同じ決定をカバーしています。

128 130 

129## 関連項目131## 関連項目

130 132 

commands.md +1 −0

Details

103| `/rewind` | 会話またはコードを前の時点に巻き戻すか、選択したメッセージから要約します。[チェックポイント](/ja/checkpointing)を参照してください。エイリアス: `/checkpoint`、`/undo` |103| `/rewind` | 会話またはコードを前の時点に巻き戻すか、選択したメッセージから要約します。[チェックポイント](/ja/checkpointing)を参照してください。エイリアス: `/checkpoint`、`/undo` |

104| `/sandbox` | [サンドボックスモード](/ja/sandboxing)を切り替えます。サポートされているプラットフォームでのみ利用可能です |104| `/sandbox` | [サンドボックスモード](/ja/sandboxing)を切り替えます。サポートされているプラットフォームでのみ利用可能です |

105| `/schedule [description]` | [ルーチン](/ja/routines)を作成、更新、リスト表示、または実行します。Claude がセットアップを会話形式でガイドします。エイリアス: `/routines` |105| `/schedule [description]` | [ルーチン](/ja/routines)を作成、更新、リスト表示、または実行します。Claude がセットアップを会話形式でガイドします。エイリアス: `/routines` |

106| `/scroll-speed` | マウスホイール[スクロール速度](/ja/fullscreen#mouse-wheel-scrolling)をインタラクティブに調整します。ダイアログが開いている間にスクロールできるルーラーで変更をプレビューできます。[フルスクリーンレンダリング](/ja/fullscreen)でのみ利用可能で、JetBrains IDE ターミナルでは利用できません |

106| `/security-review` | 現在のブランチの保留中の変更をセキュリティ脆弱性について分析します。git diff をレビューし、インジェクション、認証の問題、データ露出などのリスクを特定します |107| `/security-review` | 現在のブランチの保留中の変更をセキュリティ脆弱性について分析します。git diff をレビューし、インジェクション、認証の問題、データ露出などのリスクを特定します |

107| `/setup-bedrock` | [Amazon Bedrock](/ja/amazon-bedrock) 認証、リージョン、モデルピンをインタラクティブウィザードで構成します。`CLAUDE_CODE_USE_BEDROCK=1` が設定されている場合のみ表示されます。初回 Bedrock ユーザーはログイン画面からこのウィザードにアクセスすることもできます |108| `/setup-bedrock` | [Amazon Bedrock](/ja/amazon-bedrock) 認証、リージョン、モデルピンをインタラクティブウィザードで構成します。`CLAUDE_CODE_USE_BEDROCK=1` が設定されている場合のみ表示されます。初回 Bedrock ユーザーはログイン画面からこのウィザードにアクセスすることもできます |

108| `/setup-vertex` | [Google Vertex AI](/ja/google-vertex-ai) 認証、プロジェクト、リージョン、モデルピンをインタラクティブウィザードで構成します。`CLAUDE_CODE_USE_VERTEX=1` が設定されている場合のみ表示されます。初回 Vertex AI ユーザーはログイン画面からこのウィザードにアクセスすることもできます |109| `/setup-vertex` | [Google Vertex AI](/ja/google-vertex-ai) 認証、プロジェクト、リージョン、モデルピンをインタラクティブウィザードで構成します。`CLAUDE_CODE_USE_VERTEX=1` が設定されている場合のみ表示されます。初回 Vertex AI ユーザーはログイン画面からこのウィザードにアクセスすることもできます |

data-usage.md +2 −2

Details

33* **No**:何も送信せずに拒否します33* **No**:何も送信せずに拒否します

34* **Don't ask again**:拒否し、今後のセッションでこのフォローアップが表示されなくなります34* **Don't ask again**:拒否し、今後のセッションでこのフォローアップが表示されなくなります

35 35 

36**Yes** を明示的に選択しない限り、何もアップロードされません。[ゼロデータ保持](/ja/zero-data-retention) を設定している組織、または組織ポリシーで製品フィードバックが無効になっている組織は、このフォローアップを表示しません。数値評価プロンプトの後に送信されたセッショントランスクリプトを含む、この調査への応答は、データトレーニング設定に影響を与えず、AI モデルをトレーニングするために使用することはできません。36**Yes** を明示的に選択しない限り、何もアップロードされません。[ゼロデータ保持](/ja/zero-data-retention) を設定している組織、または組織ポリシーで製品フィードバックが無効になっている組織または `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` が設定されている組織は、このフォローアップを表示しません。数値評価プロンプトの後に送信されたセッショントランスクリプトを含む、この調査への応答は、データトレーニング設定に影響を与えず、AI モデルをトレーニングするために使用することはできません。

37 37 

38これらの調査を無効にするには、`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` を設定します。調査は、`DISABLE_TELEMETRY` または `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` が設定されている場合にも無効になります。無効にする代わりに頻度を制御するには、設定ファイルで [`feedbackSurveyRate`](/ja/settings#available-settings) を `0` から `1` の間の確率に設定します。38これらの調査を無効にするには、`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` を設定します。調査は、`DISABLE_TELEMETRY`、`DO_NOT_TRACK`、または `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` が設定されている場合にも無効になります。無効にする代わりに頻度を制御するには、設定ファイルで [`feedbackSurveyRate`](/ja/settings#available-settings) を `0` から `1` の間の確率に設定します。非必須トラフィックをブロックしているが、独自の [OpenTelemetry collector](/ja/monitoring-usage) を通じて調査応答をキャプチャしている組織は、`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL=1` を設定することで調査をオプトバックインできます。調査は、設定されたコレクターのみに数値評価をログします。トランスクリプト共有フォローアップおよび他のすべての Anthropic バウンドフィードバックトラフィックは無効のままです。

39 39 

40### データ保持40### データ保持

41 41 

env-vars.md +4 −1

Details

81| `CLAUDE_CODE_DISABLE_CRON` | [スケジュール済みタスク](/ja/scheduled-tasks) を無効にするには `1` に設定します。`/loop` スキルと cron ツールが利用できなくなり、既にスケジュール済みのタスクはすべて実行を停止します。これには既にセッション中に実行中のタスクも含まれます |81| `CLAUDE_CODE_DISABLE_CRON` | [スケジュール済みタスク](/ja/scheduled-tasks) を無効にするには `1` に設定します。`/loop` スキルと cron ツールが利用できなくなり、既にスケジュール済みのタスクはすべて実行を停止します。これには既にセッション中に実行中のタスクも含まれます |

82| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Anthropic 固有の `anthropic-beta` リクエストヘッダーと beta ツールスキーマフィールド(`defer_loading` や `eager_input_streaming` など)を API リクエストから削除するには `1` に設定します。プロキシゲートウェイが「`anthropic-beta` ヘッダーの予期しない値」や「追加の入力は許可されていません」などのエラーでリクエストを拒否する場合に使用します。標準フィールド(`name`、`description`、`input_schema`、`cache_control`)は保持されます。 |82| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Anthropic 固有の `anthropic-beta` リクエストヘッダーと beta ツールスキーマフィールド(`defer_loading` や `eager_input_streaming` など)を API リクエストから削除するには `1` に設定します。プロキシゲートウェイが「`anthropic-beta` ヘッダーの予期しない値」や「追加の入力は許可されていません」などのエラーでリクエストを拒否する場合に使用します。標準フィールド(`name`、`description`、`input_schema`、`cache_control`)は保持されます。 |

83| `CLAUDE_CODE_DISABLE_FAST_MODE` | [高速モード](/ja/fast-mode) を無効にするには `1` に設定します |83| `CLAUDE_CODE_DISABLE_FAST_MODE` | [高速モード](/ja/fast-mode) を無効にするには `1` に設定します |

84| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | 「Claude の調子はどうですか?」セッション品質調査を無効にするには `1` に設定します。`DISABLE_TELEMETRY` または `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` が設定されている場合も調査は無効になります。サンプルレートを設定する代わりに、[`feedbackSurveyRate`](/ja/settings#available-settings) 設定を使用します。[セッション品質調査](/ja/data-usage#session-quality-surveys) を参照してください |84| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | 「Claude の調子はどうですか?」セッション品質調査を無効にするには `1` に設定します。`DISABLE_TELEMETRY`、`DO_NOT_TRACK`、または `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` が設定されている場合も調査は無効になります。`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` でオプトバックインしない限り。サンプルレートを設定する代わりに、[`feedbackSurveyRate`](/ja/settings#available-settings) 設定を使用します。[セッション品質調査](/ja/data-usage#session-quality-surveys) を参照してください |

85| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | ファイル [チェックポイント](/ja/checkpointing) を無効にするには `1` に設定します。`/rewind` コマンドはコード変更を復元できなくなります |85| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | ファイル [チェックポイント](/ja/checkpointing) を無効にするには `1` に設定します。`/rewind` コマンドはコード変更を復元できなくなります |

86| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Claude のシステムプロンプトから組み込みのコミットと PR ワークフロー命令と git ステータススナップショットを削除するには `1` に設定します。独自の git ワークフロースキルを使用する場合に役立ちます。設定されている場合、[`includeGitInstructions`](/ja/settings#available-settings) 設定よりも優先されます |86| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Claude のシステムプロンプトから組み込みのコミットと PR ワークフロー命令と git ステータススナップショットを削除するには `1` に設定します。独自の git ワークフロースキルを使用する場合に役立ちます。設定されている場合、[`includeGitInstructions`](/ja/settings#available-settings) 設定よりも優先されます |

87| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Anthropic API で Opus 4.0 と 4.1 を現在の Opus バージョンに自動的にリマップすることを防ぐには `1` に設定します。古いモデルを意図的にピンしたい場合に使用します。リマップは Bedrock、Vertex、または Foundry では実行されません |87| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Anthropic API で Opus 4.0 と 4.1 を現在の Opus バージョンに自動的にリマップすることを防ぐには `1` に設定します。古いモデルを意図的にピンしたい場合に使用します。リマップは Bedrock、Vertex、または Foundry では実行されません |


96| `CLAUDE_CODE_EFFORT_LEVEL` | サポートされているモデルの努力レベルを設定します。値:`low`、`medium`、`high`、`xhigh`、`max`、または `auto`(モデルのデフォルトを使用)。利用可能なレベルはモデルによって異なります。`/effort` および `effortLevel` 設定より優先されます。[努力レベルを調整](/ja/model-config#adjust-effort-level) を参照してください |96| `CLAUDE_CODE_EFFORT_LEVEL` | サポートされているモデルの努力レベルを設定します。値:`low`、`medium`、`high`、`xhigh`、`max`、または `auto`(モデルのデフォルトを使用)。利用可能なレベルはモデルによって異なります。`/effort` および `effortLevel` 設定より優先されます。[努力レベルを調整](/ja/model-config#adjust-effort-level) を参照してください |

97| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | [セッションリキャップ](/ja/interactive-mode#session-recap) の利用可能性をオーバーライドします。`/config` トグルに関係なくリキャップを強制的にオフにするには `0` に設定します。[`awaySummaryEnabled`](/ja/settings#available-settings) が `false` の場合にリキャップを強制的にオンにするには `1` に設定します。設定と `/config` トグルより優先されます |97| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | [セッションリキャップ](/ja/interactive-mode#session-recap) の利用可能性をオーバーライドします。`/config` トグルに関係なくリキャップを強制的にオフにするには `0` に設定します。[`awaySummaryEnabled`](/ja/settings#available-settings) が `false` の場合にリキャップを強制的にオンにするには `1` に設定します。設定と `/config` トグルより優先されます |

98| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | [非対話モード](/ja/headless) でバックグラウンドインストールが完了した後、ターン境界でプラグイン状態をリフレッシュするには `1` に設定します。リフレッシュはセッション中にシステムプロンプトを変更するため、デフォルトではオフです。これにより、そのターンの [プロンプトキャッシング](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) が無効になります |98| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | [非対話モード](/ja/headless) でバックグラウンドインストールが完了した後、ターン境界でプラグイン状態をリフレッシュするには `1` に設定します。リフレッシュはセッション中にシステムプロンプトを変更するため、デフォルトではオフです。これにより、そのターンの [プロンプトキャッシング](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) が無効になります |

99| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Anthropic バウンドの非必須トラフィックがブロックされている場合、「Claude の調子はどうですか?」セッション品質調査を独自の [OpenTelemetry コレクター](/ja/monitoring-usage) にルーティングするには `1` に設定します。調査の評価は OTEL イベントとしてのみ設定されたコレクターに出力されます。このモードでは調査データは Anthropic に送信されません。`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`、`DISABLE_TELEMETRY`、または `DO_NOT_TRACK` が設定されている場合に適用され、それ以外の場合は効果がありません。`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` と組織製品フィードバックポリシーが優先されます |

99| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | ツール呼び出し入力が Claude によって生成されるときに API からストリーミングされるかどうかを制御します。これがない場合、大きなツール入力(長いファイル書き込みなど)は Claude が生成を完了した後にのみ到着します。これは、ハングしているように見える可能性があります。Anthropic API 直接接続でデフォルトで有効です。Bedrock と Vertex では、デプロイされたコンテナがサポートしているモデルごとに有効です。`0` に設定してオプトアウトします。`1` に設定して、`ANTHROPIC_BASE_URL`、`ANTHROPIC_VERTEX_BASE_URL`、または `ANTHROPIC_BEDROCK_BASE_URL` を通じてプロキシにルーティングする場合に強制的に有効にします。Foundry と [ゲートウェイ](/ja/llm-gateway) 接続ではデフォルトでオフです |100| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | ツール呼び出し入力が Claude によって生成されるときに API からストリーミングされるかどうかを制御します。これがない場合、大きなツール入力(長いファイル書き込みなど)は Claude が生成を完了した後にのみ到着します。これは、ハングしているように見える可能性があります。Anthropic API 直接接続でデフォルトで有効です。Bedrock と Vertex では、デプロイされたコンテナがサポートしているモデルごとに有効です。`0` に設定してオプトアウトします。`1` に設定して、`ANTHROPIC_BASE_URL`、`ANTHROPIC_VERTEX_BASE_URL`、または `ANTHROPIC_BEDROCK_BASE_URL` を通じてプロキシにルーティングする場合に強制的に有効にします。Foundry と [ゲートウェイ](/ja/llm-gateway) 接続ではデフォルトでオフです |

100| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | `ANTHROPIC_BASE_URL` が LiteLLM、Kong、または内部プロキシなどの Anthropic 互換ゲートウェイを指している場合、ゲートウェイの `/v1/models` エンドポイントから `/model` ピッカーを入力するには `1` に設定します。共有 API キーでバックアップされたゲートウェイはそれ以外の場合、すべてのユーザーにキーがアクセスできるすべてのモデルを表示するため、デフォルトではオフです。検出されたモデルは依然として [`availableModels`](/ja/settings#available-settings) 許可リストでフィルタリングされます |101| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | `ANTHROPIC_BASE_URL` が LiteLLM、Kong、または内部プロキシなどの Anthropic 互換ゲートウェイを指している場合、ゲートウェイの `/v1/models` エンドポイントから `/model` ピッカーを入力するには `1` に設定します。共有 API キーでバックアップされたゲートウェイはそれ以外の場合、すべてのユーザーにキーがアクセスできるすべてのモデルを表示するため、デフォルトではオフです。検出されたモデルは依然として [`availableModels`](/ja/settings#available-settings) 許可リストでフィルタリングされます |

102| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | [高速モード](/ja/fast-mode) を Claude Opus 4.7 で実行するには `1` に設定します。Opus 4.6 の代わりに。変数が設定されている場合、`/fast` は Opus 4.7 に切り替わります。設定されていない場合、`/fast` は引き続き Opus 4.6 を使用します |

101| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | プロンプト提案を無効にするには `false` に設定します(`/config` の「プロンプト提案」トグル)。これらは Claude が応答した後にプロンプト入力に表示される灰色の予測です。[プロンプト提案](/ja/interactive-mode#prompt-suggestions) を参照してください |103| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | プロンプト提案を無効にするには `false` に設定します(`/config` の「プロンプト提案」トグル)。これらは Claude が応答した後にプロンプト入力に表示される灰色の予測です。[プロンプト提案](/ja/interactive-mode#prompt-suggestions) を参照してください |

102| `CLAUDE_CODE_ENABLE_TASKS` | 非対話モード(`-p` フラグ)でタスク追跡システムを有効にするには `1` に設定します。タスクは対話モードではデフォルトでオンです。[タスクリスト](/ja/interactive-mode#task-list) を参照してください |104| `CLAUDE_CODE_ENABLE_TASKS` | 非対話モード(`-p` フラグ)でタスク追跡システムを有効にするには `1` に設定します。タスクは対話モードではデフォルトでオンです。[タスクリスト](/ja/interactive-mode#task-list) を参照してください |

103| `CLAUDE_CODE_ENABLE_TELEMETRY` | OpenTelemetry データ収集をメトリクスとログ用に有効にするには `1` に設定します。OTel エクスポーターを設定する前に必須です。[監視](/ja/monitoring-usage) を参照してください |105| `CLAUDE_CODE_ENABLE_TELEMETRY` | OpenTelemetry データ収集をメトリクスとログ用に有効にするには `1` に設定します。OTel エクスポーターを設定する前に必須です。[監視](/ja/monitoring-usage) を参照してください |


119| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | ほとんどのリクエストの最大出力トークン数を設定します。デフォルトとキャップはモデルによって異なります。[最大出力トークン](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison) を参照してください。この値を増やすと、[オートコンパクション](/ja/costs#reduce-token-usage) がトリガーされる前に利用可能な有効なコンテキストウィンドウが減少します。 |121| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | ほとんどのリクエストの最大出力トークン数を設定します。デフォルトとキャップはモデルによって異なります。[最大出力トークン](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison) を参照してください。この値を増やすと、[オートコンパクション](/ja/costs#reduce-token-usage) がトリガーされる前に利用可能な有効なコンテキストウィンドウが減少します。 |

120| `CLAUDE_CODE_MAX_RETRIES` | 失敗した API リクエストを再試行する回数をオーバーライドします(デフォルト:10) |122| `CLAUDE_CODE_MAX_RETRIES` | 失敗した API リクエストを再試行する回数をオーバーライドします(デフォルト:10) |

121| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | 並列実行できる読み取り専用ツールと subagent の最大数(デフォルト:10)。高い値は並列性を増加させますが、より多くのリソースを消費します |123| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | 並列実行できる読み取り専用ツールと subagent の最大数(デフォルト:10)。高い値は並列性を増加させますが、より多くのリソースを消費します |

124| `CLAUDE_CODE_MAX_TURNS` | 明示的な制限が渡されない場合、agentic ターン数をキャップします。[`--max-turns`](/ja/cli-reference#cli-flags) を渡すのと同等です。両方が設定されている場合、フラグが優先されます。正の整数ではない値は、キャップなしとして扱われるのではなく、スタートアップ時にエラーで拒否されます |

122| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | stdio MCP サーバーをシェル環境を継承する代わりに、安全なベースライン環境とサーバーの設定された `env` のみでスポーンするには `1` に設定します |125| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | stdio MCP サーバーをシェル環境を継承する代わりに、安全なベースライン環境とサーバーの設定された `env` のみでスポーンするには `1` に設定します |

123| `CLAUDE_CODE_NATIVE_CURSOR` | ターミナル独自のカーソルを入力キャレットに表示するには `1` に設定します。描画されたブロックの代わりに。カーソルはターミナルのまばたき、形状、フォーカス設定を尊重します |126| `CLAUDE_CODE_NATIVE_CURSOR` | ターミナル独自のカーソルを入力キャレットに表示するには `1` に設定します。描画されたブロックの代わりに。カーソルはターミナルのまばたき、形状、フォーカス設定を尊重します |

124| `CLAUDE_CODE_NEW_INIT` | `/init` が対話的なセットアップフローを実行するようにするには `1` に設定します。フローは、CLAUDE.md、スキル、フックを含む、生成するファイルを尋ねてから、コードベースを探索して書き込みます。この変数がない場合、`/init` はプロンプトなしに CLAUDE.md を自動的に生成します。 |127| `CLAUDE_CODE_NEW_INIT` | `/init` が対話的なセットアップフローを実行するようにするには `1` に設定します。フローは、CLAUDE.md、スキル、フックを含む、生成するファイルを尋ねてから、コードベースを探索して書き込みます。この変数がない場合、`/init` はプロンプトなしに CLAUDE.md を自動的に生成します。 |

fast-mode.md +51 −18

Details

4 4 

5# 高速モードでレスポンスを高速化5# 高速モードでレスポンスを高速化

6 6 

7> Claude Code で高速モードを切り替えて、Opus 4.6 のレスポンスを高速化します。7> Claude Code で高速モードを切り替えて、Opus のレスポンスを高速化します。

8 8 

9<Note>9<Note>

10 高速モードは[リサーチプレビュー](#research-preview)段階です。機能、価格設定、および利用可能性はフィードバックに基づいて変更される可能性があります。10 高速モードは[リサーチプレビュー](#research-preview)段階です。機能、価格設定、および利用可能性はフィードバックに基づいて変更される可能性があります。

11</Note>11</Note>

12 12 

13高速モードは Claude Opus 4.6 の高速構成で、モデルを 2.5 倍高速化しますが、トークンあたりのコストは高くなります。迅速な反復やライブデバッグなどのインタラクティブな作業で速度が必要な場合は `/fast` でオンにし、コストがレイテンシーより重要な場合はオフにします。13高速モードは Claude Opus の高速構成で、モデルを 2.5 倍高速化しますが、トークンあたりのコストは高くなります。迅速な反復やライブデバッグなどのインタラクティブな作業で速度が必要な場合は `/fast` でオンにし、コストがレイテンシーより重要な場合はオフにします。

14 14 

15高速モードは異なるモデルではありません。同じ Opus 4.6 を使用していますが、コスト効率よりも速度を優先する異なる API 構成です。同じ品質と機能が得られ、レスポンスが高速化されるだけです。15高速モードは異なるモデルではありません。Claude Opus を使用していますが、コスト効率よりも速度を優先する異なる API 構成です。同じ品質と機能が得られ、レスポンスが高速化されるだけです。高速モードは Opus 4.6 および Opus 4.7 でサポートされています。Sonnet、Haiku、または他のモデルでは利用できません。

16 16 

17<Note>17<Note>

18 高速モードには Claude Code v2.1.36 以降が必要です。`claude --version` でバージョンを確認してください。18 高速モードには Claude Code v2.1.36 以降が必要です。`claude --version` でバージョンを確認してください。


21知っておくべきこと:21知っておくべきこと:

22 22 

23* Claude Code CLI で `/fast` を使用して高速モードをオンにします。Claude Code VS Code Extension でも `/fast` で利用可能です。23* Claude Code CLI で `/fast` を使用して高速モードをオンにします。Claude Code VS Code Extension でも `/fast` で利用可能です。

24* Opus 4.6 の高速モード価格は \$30/150 MTok から始まります高速モードは 2 月 16 日午後 11 時 59 分 PT まですべてのプランで 50% 割引で利用可能です24* デフォルトでは、`/fast` は Opus 4.6 で実行されます代わりに Opus 4.7 で高速モードを実行するには、[`CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE`](#use-fast-mode-on-opus-4-7) 環境変数を設定します

25* 高速モード価格は Opus 4.6 と Opus 4.7 の両方で \$30/150 MTok です。

25* サブスクリプションプラン(Pro/Max/Team/Enterprise)の Claude Code ユーザーと Claude Console のすべてのユーザーが利用可能です。26* サブスクリプションプラン(Pro/Max/Team/Enterprise)の Claude Code ユーザーと Claude Console のすべてのユーザーが利用可能です。

26* サブスクリプションプラン(Pro/Max/Team/Enterprise)の Claude Code ユーザーの場合、高速モードは追加使用量のみで利用可能であり、サブスクリプションレート制限に含まれていません。27* サブスクリプションプラン(Pro/Max/Team/Enterprise)の Claude Code ユーザーの場合、高速モードは追加使用量のみで利用可能であり、サブスクリプションレート制限に含まれていません。

27 28 

28このページでは、[高速モードの切り替え](#toggle-fast-mode)、[コストのトレードオフ](#understand-the-cost-tradeoff)、[使用時期の判断](#decide-when-to-use-fast-mode)、[要件](#requirements)、[セッションごとのオプトイン](#require-per-session-opt-in)、および[レート制限の処理](#handle-rate-limits)について説明します。29このページでは、[高速モードの切り替え](#toggle-fast-mode)、[Opus 4.7 で高速モードを使用](#use-fast-mode-on-opus-4-7)、[コストのトレードオフ](#understand-the-cost-tradeoff)、[使用時期の判断](#decide-when-to-use-fast-mode)、[要件](#requirements)、[セッションごとのオプトイン](#require-per-session-opt-in)、および[レート制限の処理](#handle-rate-limits)について説明します。

29 30 

30## 高速モードの切り替え31## 高速モードの切り替え

31 32 


40 41 

41高速モードを有効にすると:42高速モードを有効にすると:

42 43 

43* 別のモデルを使用している場合、Claude Code は自動的に Opus 4.6 に切り替わります44* 別のモデルを使用している場合、Claude Code は自動的に高速モードモデルに切り替わります:デフォルトでは Opus 4.6、または [`CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE`](#use-fast-mode-on-opus-4-7) が設定されている場合は Opus 4.7。

44* 確認メッセージが表示されます:「Fast mode ON」45* 確認メッセージが表示されます:「Fast mode ON」

45* 高速モードがアクティブな間、プロンプトの横に小さい `↯` アイコンが表示されます46* 高速モードがアクティブな間、プロンプトの横に小さい `↯` アイコンが表示されます

46* いつでも `/fast` を再度実行して、高速モードがオンかオフかを確認できます47* いつでも `/fast` を再度実行して、高速モードがオンかオフかを確認できます

47 48 

48`/fast` を再度実行して高速モードを無効にすると、Opus 4.6 に留まります。モデルは以前のモデルに戻りません。別のモデルに切り替えるには、`/model` を使用します。49`/fast` を再度実行して高速モードを無効にすると、高速モードが実行されていた同じ Opus バージョンに留まります。モデルは以前のモデルに戻りません。別のモデルに切り替えるには、`/model` を使用します。

50 

51## Opus 4.7 で高速モードを使用

52 

53<Note>

54 Opus 4.7 での高速モードには Claude Code v2.1.139 以降が必要です。

55</Note>

56 

57Claude Opus 4.7 の高速モードはリサーチプレビュー段階です。Opus 4.6 の高速モードと同じ 2.5 倍の速度と同じ価格で実行され、他の動作変更はありません。

58 

59<Note>

60 2026 年 5 月 14 日に、Opus 4.7 が高速モードのデフォルトモデルになります。それまでは、`CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE=1` を設定してオプトインします。

61</Note>

62 

63オプトインするには、Claude Code を起動する前に `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE=1` を設定します。変数が設定されている場合、`/fast` は Opus 4.7 で実行されます。設定されていない場合、`/fast` は Opus 4.6 で実行され続けます。

64 

65変数をシェルエクスポートとして設定できます:

66 

67```bash theme={null}

68export CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE=1

69```

70 

71または、オプトインのスコープを設定するために、ユーザー、プロジェクト、管理設定を含む任意の Claude Code [設定ファイル](/ja/settings#settings-files)で設定します:

72 

73```json theme={null}

74{

75 "env": {

76 "CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE": "1"

77 }

78}

79```

80 

81Opus 4.6 の高速モードは Opus 4.7 と並行して利用可能なままです。2 つは同じ高速モードレート制限プールを共有します:どちらかのモデルでの使用は同じ制限から引き出されます。

49 82 

50## コストのトレードオフを理解する83## コストのトレードオフを理解する

51 84 

52高速モードは標準 Opus 4.6 よりもトークンあたりの価格が高くなります:85高速モードは標準 Opus よりもトークンあたりの価格が高くなります:

53 86 

54| モード | 入力(MTok) | 出力(MTok) |87| モード | 入力(MTok) | 出力(MTok) |

55| ----------------------- | -------- | -------- |88| --------------- | -------- | -------- |

56| Opus 4.6 の高速モード(\<200K) | \$30 | \$150 |89| Opus 4.6 の高速モード | \$30 | \$150 |

57| Opus 4.6 の高速モード(>200K) | \$60 | \$225 |90| Opus 4.7 の高速モード | \$30 | \$150 |

58 91 

59高速モードは 1M トークン拡張コンテキストウィンドウと互換性があります92高速モード価格は完全な 1M トークンコンテキストウィンドウ全体で一定です

60 93 

61会話の途中で高速モードに切り替えると、会話コンテキスト全体に対して完全な高速モードキャッシュなし入力トークン価格を支払います。これは最初から高速モードを有効にした場合よりもコストが高くなります。94会話の途中で高速モードに切り替えると、会話コンテキスト全体に対して完全な高速モードキャッシュなし入力トークン価格を支払います。これは最初から高速モードを有効にした場合よりもコストが高くなります。

62 95 


90高速モードには以下のすべてが必要です:123高速モードには以下のすべてが必要です:

91 124 

92* **サードパーティクラウドプロバイダーでは利用不可**:高速モードは Amazon Bedrock、Google Vertex AI、または Microsoft Azure Foundry では利用できません。高速モードは Anthropic Console API および追加使用量を使用する Claude サブスクリプションプランで利用可能です。125* **サードパーティクラウドプロバイダーでは利用不可**:高速モードは Amazon Bedrock、Google Vertex AI、または Microsoft Azure Foundry では利用できません。高速モードは Anthropic Console API および追加使用量を使用する Claude サブスクリプションプランで利用可能です。

93* **追加使用量が有効**:アカウントで追加使用量が有効になっている必要があります。これにより、プランに含まれる使用量を超えて請求できます。個人アカウントの場合、[Console 請求設定](https://platform.claude.com/settings/organization/billing)で有効にします。Teams および Enterprise の場合、管理者が組織の追加使用量を有効にする必要があります。126* **追加使用量が有効**:アカウントで追加使用量が有効になっている必要があります。これにより、プランに含まれる使用量を超えて請求できます。個人アカウントの場合、[Console 請求設定](https://platform.claude.com/settings/organization/billing)で有効にします。Team および Enterprise の場合、管理者が組織の追加使用量を有効にする必要があります。

94 127 

95<Note>128<Note>

96 高速モード使用量は、プランに残りの使用量がある場合でも、追加使用量に直接請求されます。これは、高速モードトークンがプランに含まれる使用量にカウントされず、最初のトークンから高速モード料金で請求されることを意味します。129 高速モード使用量は、プランに残りの使用量がある場合でも、追加使用量に直接請求されます。これは、高速モードトークンがプランに含まれる使用量にカウントされず、最初のトークンから高速モード料金で請求されることを意味します。

97</Note>130</Note>

98 131 

99* **Teams および Enterprise の管理者による有効化**:高速モードは Teams および Enterprise 組織ではデフォルトで無効になっています。ユーザーがアクセスできるようにするには、管理者が明示的に[高速モードを有効にする](#enable-fast-mode-for-your-organization)必要があります。132* **Team および Enterprise の管理者による有効化**:高速モードは Team および Enterprise 組織ではデフォルトで無効になっています。ユーザーがアクセスできるようにするには、管理者が明示的に[高速モードを有効にする](#enable-fast-mode-for-your-organization)必要があります。

100 133 

101<Note>134<Note>

102 管理者が組織の高速モードを有効にしていない場合、`/fast` コマンドは「Fast mode has been disabled by your organization.」と表示されます。135 管理者が組織の高速モードを有効にしていない場合、`/fast` コマンドは「Fast mode has been disabled by your organization.」と表示されます。


107管理者は以下で高速モードを有効にできます:140管理者は以下で高速モードを有効にできます:

108 141 

109* **Console**(API カスタマー):[Claude Code preferences](https://platform.claude.com/claude-code/preferences)142* **Console**(API カスタマー):[Claude Code preferences](https://platform.claude.com/claude-code/preferences)

110* **Claude AI**(Teams および Enterprise):[Admin Settings > Claude Code](https://claude.ai/admin-settings/claude-code)143* **Claude AI**(Team および Enterprise):[Admin Settings > Claude Code](https://claude.ai/admin-settings/claude-code)

111 144 

112高速モードを完全に無効にするもう 1 つのオプションは、`CLAUDE_CODE_DISABLE_FAST_MODE=1` を設定することです。[環境変数](/ja/env-vars)を参照してください。145高速モードを完全に無効にするもう 1 つのオプションは、`CLAUDE_CODE_DISABLE_FAST_MODE=1` を設定することです。[環境変数](/ja/env-vars)を参照してください。

113 146 

114### セッションごとのオプトインが必要147### セッションごとのオプトインが必要

115 148 

116デフォルトでは、高速モードはセッション全体で保持されます:ユーザーが高速モードを有効にすると、将来のセッションでもオンのままです。[Teams](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_teams#team-&-enterprise) または [Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_enterprise) プランの管理者は、[管理設定](/ja/settings#settings-files)または[サーバー管理設定](/ja/server-managed-settings)で `fastModePerSessionOptIn` を `true` に設定することでこれを防ぐことができます。これにより、各セッションは高速モードがオフで開始され、ユーザーが `/fast` で明示的に有効にする必要があります。149デフォルトでは、高速モードはセッション全体で保持されます:ユーザーが高速モードを有効にすると、将来のセッションでもオンのままです。[Team](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_teams#team-&-enterprise) または [Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_enterprise) プランの管理者は、[管理設定](/ja/settings#settings-files)または[サーバー管理設定](/ja/server-managed-settings)で `fastModePerSessionOptIn` を `true` に設定することでこれを防ぐことができます。これにより、各セッションは高速モードがオフで開始され、ユーザーが `/fast` で明示的に有効にする必要があります。

117 150 

118```json theme={null}151```json theme={null}

119{152{


125 158 

126## レート制限の処理159## レート制限の処理

127 160 

128高速モードは標準 Opus 4.6 とは別のレート制限があります。高速モードレート制限に達するか、追加使用量クレジットが不足した場合161高速モードは標準 Opus とは別のレート制限があります。Opus 4.6 および Opus 4.7 の高速モードは同じレート制限プールを共有します:どちらかのモデルでの使用は同じ制限から引き出されます。高速モードレート制限に達するか、追加使用量が不足した場合

129 162 

1301. 高速モードは自動的に標準 Opus 4.6 にフォールバックします1631. 高速モードは自動的に同じ Opus バージョンの標準速度にフォールバックします

1312. `↯` アイコンがグレーに変わってクールダウンを示します1642. `↯` アイコンがグレーに変わってクールダウンを示します

1323. 標準速度と価格で作業を続けます1653. 標準速度と価格で作業を続けます

1334. クールダウンが終了すると、高速モードは自動的に再度有効になります1664. クールダウンが終了すると、高速モードは自動的に再度有効になります

fullscreen.md +2 −0

Details

93 93 

94値 `3` は `vim` および同様のアプリケーションのデフォルトと一致します。この設定は 1 から 20 の値を受け入れます。94値 `3` は `vim` および同様のアプリケーションのデフォルトと一致します。この設定は 1 から 20 の値を受け入れます。

95 95 

96スクロール速度を対話的に調整するには、`/scroll-speed` を実行します。ダイアログには、開いている間にスクロールできるルーラーが表示されるため、変更をすぐに感じることができます。`←` と `→` を押して調整し、`r` を押して自動検出されたデフォルトにリセットし、`Enter` を押して保存します。このコマンドは `CLAUDE_CODE_SCROLL_SPEED` 環境変数が設定する同じ値を書き込み、`~/.claude/settings.json` に永続化されます。このコマンドは JetBrains IDE ターミナルでは利用できません。

97 

96### JetBrains IDE ターミナルでのスクロール98### JetBrains IDE ターミナルでのスクロール

97 99 

98JetBrains IDE ターミナルでは、Claude Code は独自のスクロール処理を適用し、`CLAUDE_CODE_SCROLL_SPEED` を無視します。ターミナルは他のエミュレータよりもはるかに高いレートでスクロールイベントを送信するため、他の場所で調整された乗数はここでオーバーシュートします。100JetBrains IDE ターミナルでは、Claude Code は独自のスクロール処理を適用し、`CLAUDE_CODE_SCROLL_SPEED` を無視します。ターミナルは他のエミュレータよりもはるかに高いレートでスクロールイベントを送信するため、他の場所で調整された乗数はここでオーバーシュートします。

glossary.md +1 −1

Details

174 174 

175### Output style175### Output style

176 176 

177Claude のシステムプロンプトを変更して応答動作、トーン、または形式を変更する設定。Output styles は、システムプロンプトの後に配信される [CLAUDE.md](#claude-md) とは異なり、デフォルトシステムプロンプトのソフトウェアエンジニアリング固有の部分をオフにします。組み込みスタイルには Default、Explanatory、Learning が含まれます。177Claude のシステムプロンプトを変更して応答動作、トーン、または形式を変更する設定です。Output styles は、システムプロンプトの後にユーザーメッセージとして配信される [CLAUDE.md](#claude-md) とは異なり、デフォルトシステムプロンプトのソフトウェアエンジニアリング固有の部分をオフにします。組み込みスタイルには Default、Proactive、Explanatory、Learning が含まれます。

178 178 

179詳細情報: [Output styles](/ja/output-styles)179詳細情報: [Output styles](/ja/output-styles)

180 180 

hooks.md +85 −22

Details

70 {70 {

71 "type": "command",71 "type": "command",

72 "if": "Bash(rm *)",72 "if": "Bash(rm *)",

73 "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/block-rm.sh"73 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh",

74 "args": []

74 }75 }

75 ]76 ]

76 }77 }


307[共通フィールド](#common-fields)に加えて、コマンド フックはこれらのフィールドを受け入れます。308[共通フィールド](#common-fields)に加えて、コマンド フックはこれらのフィールドを受け入れます。

308 309 

309| フィールド | 必須 | 説明 |310| フィールド | 必須 | 説明 |

310| :------------ | :-- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |311| :------------ | :-- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

311| `command` | はい | 実行するシェル コマンド |312| `command` | はい | 実行するシェル コマンド。`args` を使用する場合、直接生成する実行可能ファイル。[Exec フォームとシェル フォーム](#exec-form-and-shell-form)を参照してください |

313| `args` | いいえ | 引数リスト。存在する場合、`command` は実行可能ファイルとして解決され、`args` を引数ベクトルとして直接生成されます。シェルは関与しません。[Exec フォームとシェル フォーム](#exec-form-and-shell-form)を参照してください |

312| `async` | いいえ | `true` の場合、ブロックせずにバックグラウンドで実行されます。[バックグラウンドでフックを実行](#run-hooks-in-the-background)を参照してください |314| `async` | いいえ | `true` の場合、ブロックせずにバックグラウンドで実行されます。[バックグラウンドでフックを実行](#run-hooks-in-the-background)を参照してください |

313| `asyncRewake` | いいえ | `true` の場合、バックグラウンドで実行され、終了コード 2 で Claude を起動します。`async` を暗黙的に指定します。フックの stderr、または stderr が空の場合は stdout が、Claude がシステム リマインダーとして長時間実行されるバックグラウンド失敗に反応できるように表示されます |315| `asyncRewake` | いいえ | `true` の場合、バックグラウンドで実行され、終了コード 2 で Claude を起動します。`async` を暗黙的に指定します。フックの stderr、または stderr が空の場合は stdout が、Claude がシステム リマインダーとして長時間実行されるバックグラウンド失敗に反応できるように表示されます |

314| `shell` | いいえ | このフックに使用するシェル。`"bash"`(デフォルト)または `"powershell"` を受け入れます。`"powershell"` を設定すると、Windows 上で PowerShell 経由でコマンドが実行されます。`CLAUDE_CODE_USE_POWERSHELL_TOOL` は不要です。フックは PowerShell を直接生成するため |316| `shell` | いいえ | このフックに使用するシェル。`"bash"`(デフォルト)または `"powershell"` を受け入れます。`"powershell"` を設定すると、Windows 上で PowerShell 経由でコマンドが実行されます。`CLAUDE_CODE_USE_POWERSHELL_TOOL` は不要です。フックは PowerShell を直接生成するため。`args` が設定されている場合は無視されます |

317 

318<a id="exec-form-and-shell-form" />

319 

320##### Exec フォームとシェル フォーム

321 

322コマンド フックは `args` が設定されている場合は exec フォームで実行され、`args` が省略されている場合はシェル フォームで実行されます。フックが[パス プレースホルダー](#reference-scripts-by-path)を参照する場合は常に `args` を設定してください。各要素は引用符なしで 1 つの引数として渡されるためです。パイプや `&&` などのシェル機能が必要な場合、または両方の懸念が適用されない場合は `args` を省略してください。

323 

324**Exec フォーム**は `args` が存在する場合に実行されます。Claude Code は `command` を `PATH` 上の実行可能ファイルとして解決し、`args` を引数ベクトルとして直接生成します。シェルがないため、各 `args` 要素は記述されたとおりに正確に 1 つの引数であり、`${CLAUDE_PLUGIN_ROOT}` などのパス プレースホルダーは `command` と各 `args` 要素にプレーン文字列として置換されます。アポストロフィ、`$`、バッククォートなどの特殊文字は、シェルが解釈しないため、そのまま渡されます。プラットフォーム上でシェル トークン化は発生しません。

325 

326**シェル フォーム**は `args` が存在しない場合に実行されます。`command` 文字列はシェルに渡されます。macOS と Linux では `sh -c`、Windows では Git Bash、または Git Bash がインストールされていない場合は PowerShell。`shell` フィールドを設定して明示的に選択します。シェルは文字列をトークン化し、変数を展開し、パイプ、`&&`、リダイレクト、グロブを解釈します。

327 

328<Note>

329 Windows では、exec フォームは `command` が `.exe` などの実際の実行可能ファイルに解決されることが必要です。npm、npx、eslint、およびその他のツールが `node_modules/.bin` にインストールする `.cmd` と `.bat` シムは実行可能ファイルではなく、シェルなしで生成することはできません。exec フォームでそれらを実行するには、基になるスクリプトを `node` で直接呼び出します。例えば `"command": "node", "args": ["${CLAUDE_PLUGIN_ROOT}/node_modules/eslint/bin/eslint.js"]`。`node` プラス スクリプト パス パターンは、`node.exe` が実際のバイナリであるため、すべてのプラットフォームで機能します。`.cmd` または `.bat` シムを名前で実行するには、シェル フォームを使用します。

330</Note>

331 

332この例は、プラグインにバンドルされた Node スクリプトを実行します。Exec フォームは解決されたスクリプト パスを引用符なしで 1 つの引数として渡します。

333 

334```json theme={null}

335{

336 "type": "command",

337 "command": "node",

338 "args": ["${CLAUDE_PLUGIN_ROOT}/scripts/format.js", "--fix"]

339}

340```

341 

342同等のシェル フォームは、スペースまたは特殊文字を含むパスを処理するために引用符が必要です。

343 

344```json theme={null}

345{

346 "type": "command",

347 "command": "node \"${CLAUDE_PLUGIN_ROOT}\"/scripts/format.js --fix"

348}

349```

350 

351両方のフォームは同じ[パス プレースホルダー](#reference-scripts-by-path)をサポートし、両方とも生成されたプロセスで環境変数 `CLAUDE_PROJECT_DIR`、`CLAUDE_PLUGIN_ROOT`、`CLAUDE_PLUGIN_DATA` としてエクスポートするため、スクリプトは起動方法に関係なく `process.env.CLAUDE_PLUGIN_ROOT` を読み取ることができます。プラグイン フックは追加で `${user_config.*}` 値を置換します。[ユーザー設定](/ja/plugins-reference#user-configuration)を参照してください。

352 

353<Note>

354 Exec フォームでは、`command` は実行可能ファイル名またはパスのみです。`command` が空白を含むパス区切りなしの名前であり、`args` と一緒に空白を含む場合、Claude Code は警告をログします。生成が失敗するためです。`node script.js` という名前の実行可能ファイルはありません。余分なトークンを `args` に移動します。`C:\Program Files\nodejs\node.exe` などのスペースを含む絶対パスは、単一の有効な実行可能ファイルであり、警告をトリガーしません。

355</Note>

315 356 

316#### HTTP フック フィールド357#### HTTP フック フィールド

317 358 


397| `prompt` | はい | モデルに送信するプロンプト テキスト。フック入力 JSON のプレースホルダーとして `$ARGUMENTS` を使用します |438| `prompt` | はい | モデルに送信するプロンプト テキスト。フック入力 JSON のプレースホルダーとして `$ARGUMENTS` を使用します |

398| `model` | いいえ | 評価に使用するモデル。デフォルトは高速モデル |439| `model` | いいえ | 評価に使用するモデル。デフォルトは高速モデル |

399 440 

400すべてのマッチング フックは並列で実行され、同一のハンドラーは自動的に重複排除されます。コマンド フックはコマンド文字列で重複排除され、HTTP フックは URL で重複排除されます。ハンドラーは Claude Code の環境を持つ現在のディレクトリで実行されます。`$CLAUDE_CODE_REMOTE` 環境変数はリモート Web 環境で `"true"` に設定され、ローカル CLI では設定されません。441すべてのマッチング フックは並列で実行され、同一のハンドラーは自動的に重複排除されます。コマンド フックはコマンド文字列と `args` で重複排除され、HTTP フックは URL で重複排除されます。ハンドラーは Claude Code の環境を持つ現在のディレクトリで実行されます。`$CLAUDE_CODE_REMOTE` 環境変数はリモート Web 環境で `"true"` に設定され、ローカル CLI では設定されません。

401 442 

402### パスでフック スクリプトを参照443### パスでフック スクリプトを参照

403 444 

404環境変数を使用して、フックが実行されるときの作業ディレクトリに関係なく、プロジェクトまたはプラグイン ルートを基準にしてフック スクリプトを参照します445フックが実行されるときの作業ディレクトリに関係なく、プロジェクトまたはプラグイン ルートを基準にしてフック スクリプトを参照するには、これらのプレースホルダーを使用します

405 446 

406* `$CLAUDE_PROJECT_DIR`: プロジェクト ルート。スペースを含むパスを処理するために引用符で囲みます。447* `${CLAUDE_PROJECT_DIR}`: プロジェクト ルート。

407* `${CLAUDE_PLUGIN_ROOT}`: プラグイン インストール ディレクトリ、プラグインにバンドルされたスクリプト用。プラグイン更新時に変更されます。448* `${CLAUDE_PLUGIN_ROOT}`: プラグインの インストール ディレクトリ、[プラグイン](/ja/plugins)にバンドルされたスクリプト用。プラグイン更新時に変更されます。

408* `${CLAUDE_PLUGIN_DATA}`: プラグインの[永続データ ディレクトリ](/ja/plugins-reference#persistent-data-directory)、プラグイン更新を通じて存続すべき依存関係と状態用。449* `${CLAUDE_PLUGIN_DATA}`: プラグインの[永続データ ディレクトリ](/ja/plugins-reference#persistent-data-directory)、プラグイン更新を通じて存続すべき依存関係と状態用。

409 450 

451パス プレースホルダーを参照するフックには[exec フォーム](#exec-form-and-shell-form)を優先してください。Exec フォームは各 `args` 要素を引用符なしで 1 つの引数として渡すため、スペースまたは特殊文字を含むパスは引用符が不要です。シェル フォームでは、各プレースホルダーをダブル クォートで囲みます。

452 

410<Tabs>453<Tabs>

411 <Tab title="プロジェクト スクリプト">454 <Tab title="プロジェクト スクリプト">

412 この例は `$CLAUDE_PROJECT_DIR` を使用して、`Write` または `Edit` ツール呼び出しの後、プロジェクトの `.claude/hooks/` ディレクトリからスタイル チェッカーを実行します。455 この例は `${CLAUDE_PROJECT_DIR}` を使用して、`Write` または `Edit` ツール呼び出しの後、プロジェクトの `.claude/hooks/` ディレクトリからスタイル チェッカーを実行します。

413 456 

414 ```json theme={null}457 ```json theme={null}

415 {458 {


420 "hooks": [463 "hooks": [

421 {464 {

422 "type": "command",465 "type": "command",

423 "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/check-style.sh"466 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/check-style.sh",

467 "args": []

424 }468 }

425 ]469 ]

426 }470 }


446 {490 {

447 "type": "command",491 "type": "command",

448 "command": "${CLAUDE_PLUGIN_ROOT}/scripts/format.sh",492 "command": "${CLAUDE_PLUGIN_ROOT}/scripts/format.sh",

493 "args": [],

449 "timeout": 30494 "timeout": 30

450 }495 }

451 ]496 ]


529`--agent` で実行するか、サブエージェント内で実行する場合、2 つの追加フィールドが含まれます。574`--agent` で実行するか、サブエージェント内で実行する場合、2 つの追加フィールドが含まれます。

530 575 

531| フィールド | 説明 |576| フィールド | 説明 |

532| :----------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------- |577| :----------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

533| `agent_id` | サブエージェントの一意の識別子。フックがサブエージェント呼び出し内で発火する場合にのみ存在します。これを使用して、サブエージェント フック呼び出しをメイン スレッド呼び出しから区別します。 |578| `agent_id` | サブエージェントの一意の識別子。フックがサブエージェント呼び出し内で発火する場合にのみ存在します。これを使用して、サブエージェント フック呼び出しをメイン スレッド呼び出しから区別します。 |

534| `agent_type` | エージェント名(例えば、`"Explore"` または `"security-reviewer"`)。セッションが `--agent` を使用するか、フックがサブエージェント内で発火する場合に存在します。サブエージェントの場合、サブエージェントのタイプがセッションの `--agent` 値よりも優先されます。 |579| `agent_type` | エージェント名(例えば、`"Explore"` または `"security-reviewer"`)。セッションが `--agent` を使用するか、フックがサブエージェント内で発火する場合に存在します。サブエージェントの場合、サブエージェントのタイプがセッションの `--agent` 値よりも優先されます。[カスタム サブエージェント](/ja/sub-agents)の場合、これはエージェントのフロントマターの `name` フィールドであり、ファイル名ではありません。 |

580 

581[`SessionStart`](#sessionstart) フックのみが `model` フィールドを受け取ります。`$CLAUDE_MODEL` 環境変数はありません。フック プロセスは親環境を継承するため、シェルで `$ANTHROPIC_MODEL` を設定した場合はそれを読み取ることができますが、セッション中に `/model` でモデルを切り替えるときにその値は変わりません。

535 582 

536例えば、Bash コマンドの `PreToolUse` フックは stdin で以下を受け取ります。583例えば、Bash コマンドの `PreToolUse` フックは stdin で以下を受け取ります。

537 584 


1153| `questions` | 配列 | `[{"question": "Which framework?", "header": "Framework", "options": [{"label": "React"}], "multiSelect": false}]` | 提示する質問。各質問には `question` 文字列、短い `header`、`options` 配列、およびオプションの `multiSelect` フラグがあります |1200| `questions` | 配列 | `[{"question": "Which framework?", "header": "Framework", "options": [{"label": "React"}], "multiSelect": false}]` | 提示する質問。各質問には `question` 文字列、短い `header`、`options` 配列、およびオプションの `multiSelect` フラグがあります |

1154| `answers` | オブジェクト | `{"Which framework?": "React"}` | オプション。質問テキストを選択されたオプション ラベルにマップします。複数選択の回答はラベルをコンマで結合します。Claude はこのフィールドを設定しません。`updatedInput` 経由で提供して、プログラムで回答します |1201| `answers` | オブジェクト | `{"Which framework?": "React"}` | オプション。質問テキストを選択されたオプション ラベルにマップします。複数選択の回答はラベルをコンマで結合します。Claude はこのフィールドを設定しません。`updatedInput` 経由で提供して、プログラムで回答します |

1155 1202 

1203##### ExitPlanMode

1204 

1205Claude が[プラン モード](/ja/permission-modes#analyze-before-you-edit-with-plan-mode)を離れる前にプランを提示し、ユーザーに承認を求めます。Claude はツールを呼び出す前にプランをディスク上のファイルに書き込むため、モデルからのリテラル `tool_input` は `allowedPrompts` のみを含みます。Claude Code はプラン コンテンツとファイル パスをフックに渡す前に注入します。

1206 

1207| フィールド | タイプ | 例 | 説明 |

1208| :--------------- | :-- | :------------------------------------------ | :----------------------------------------------------------------------------------------- |

1209| `plan` | 文字列 | `"## Refactor auth\n1. Extract..."` | Markdown のプラン コンテンツ。ディスク上のプラン ファイルから注入 |

1210| `planFilePath` | 文字列 | `"/Users/.../plans/refactor-auth.md"` | プラン ファイルへのパス。注入 |

1211| `allowedPrompts` | 配列 | `[{"tool": "Bash", "prompt": "run tests"}]` | オプション。Claude がプランを実装するために要求しているプロンプト ベースの権限。各エントリは `tool` 名とアクションのカテゴリを説明する `prompt` を含みます |

1212 

1213`PostToolUse` では、`tool_response` は `plan` と `filePath` フィールドを含むオブジェクトで、承認されたプランと内部ステータス フラグを保持します。ディスクからファイルを再度読み取るのではなく、`tool_response.plan` でプラン コンテンツを読み取ります。

1214 

1156#### PreToolUse 決定制御1215#### PreToolUse 決定制御

1157 1216 

1158`PreToolUse` フックはツール呼び出しが進行するかどうかを制御できます。トップレベル `decision` フィールドを使用する他のフックとは異なり、PreToolUse は `hookSpecificOutput` オブジェクト内に決定を返します。これにより、より豊かな制御が可能になります。4 つの結果(許可、拒否、質問、遅延)と、実行前にツール入力を変更する機能。1217`PreToolUse` フックはツール呼び出しが進行するかどうかを制御できます。トップレベル `decision` フィールドを使用する他のフックとは異なり、PreToolUse は `hookSpecificOutput` オブジェクト内に決定を返します。これにより、より豊かな制御が可能になります。4 つの結果(許可、拒否、質問、遅延)と、実行前にツール入力を変更する機能。


1596 1655 

1597### SubagentStart1656### SubagentStart

1598 1657 

1599Agent ツール経由でサブエージェントが生成されるときに実行されます。エージェント タイプ名でフィルタリングするマッチャーをサポート(`general-purpose`、`Explore`、`Plan` などの組み込みエージェント、または `.claude/agents/` からのカスタム エージェント名)。1658Agent ツール経由でサブエージェントが生成されるときに実行されます。エージェント タイプ名でフィルタリングするマッチャーをサポート(`general-purpose`、`Explore`、`Plan` などの組み込みエージェント、または[カスタム サブエージェント](/ja/sub-agents)の場合はエージェントのフロントマターの `name` フィールド。ファイル名ではありません)。

1600 1659 

1601#### SubagentStart 入力1660#### SubagentStart 入力

1602 1661 


1651}1710}

1652```1711```

1653 1712 

1654SubagentStop フックは[Stop フック](#stop-decision-control)と同じ決定制御形式を使用します。1713SubagentStop フックは[Stop フック](#stop-decision-control)と同じ決定制御形式を使用します。`additionalContext` をサポートしません。`decision: "block"` を `reason` と一緒に返すとサブエージェントを実行し続け、`reason` をサブエージェントの次の命令として配信します。サブエージェントが戻った後に親セッションにコンテキストを注入するには、代わりに `Agent` ツール上の [`PostToolUse`](#posttooluse)フックを使用します。

1655 1714 

1656### TaskCreated1715### TaskCreated

1657 1716 


1905 "hooks": [1964 "hooks": [

1906 {1965 {

1907 "type": "command",1966 "type": "command",

1908 "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/audit-config-change.sh"1967 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/audit-config-change.sh",

1968 "args": []

1909 }1969 }

1910 ]1970 ]

1911 }1971 }


2394```2454```

2395 2455 

2396| フィールド | 必須 | 説明 |2456| フィールド | 必須 | 説明 |

2397| :-------- | :-- | :---------------------------------------------------------------------------------------------------------- |2457| :---------------- | :-- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

2398| `type` | はい | `"prompt"` である必要があります |2458| `type` | はい | `"prompt"` である必要があります |

2399| `prompt` | はい | LLM に送信するプロンプト テキスト。フック入力 JSON のプレースホルダーとして `$ARGUMENTS` を使用します。`$ARGUMENTS` が存在しない場合、入力 JSON がプロンプトに追加されます |2459| `prompt` | はい | LLM に送信するプロンプト テキスト。フック入力 JSON のプレースホルダーとして `$ARGUMENTS` を使用します。`$ARGUMENTS` が存在しない場合、入力 JSON がプロンプトに追加されます |

2400| `model` | いいえ | 評価に使用するモデル。デフォルトは高速モデル |2460| `model` | いいえ | 評価に使用するモデル。デフォルトは高速モデル |

2401| `timeout` | いいえ | タイムアウト(秒単位)。デフォルト:30 |2461| `timeout` | いいえ | タイムアウト(秒単位)。デフォルト:30 |

2462| `continueOnBlock` | いいえ | プロンプトが `ok: false` を返すとき、理由を Claude にフィードバックして、停止する代わりにターンを続行します。デフォルト:`false`。結果の `decision: "block"` に `continue: true` として実装されます。イベント ごとの動作については、[レスポンス スキーマ](#response-schema)を参照してください |

2402 2463 

2403### レスポンス スキーマ2464### レスポンス スキーマ

2404 2465 


2412```2473```

2413 2474 

2414| フィールド | 説明 |2475| フィールド | 説明 |

2415| :------- | :---------------------------- |2476| :------- | :--------------------------------------------------------------------------- |

2416| `ok` | `true` はアクションを許可、`false` は防止 |2477| `ok` | `true` はアクションを許可、`false` は `decision: "block"` を生成します。以下のイベント ごとの動作を参照してください |

2417| `reason` | `ok` が `false` のときに必須。ブロックの説明 |2478| `reason` | `ok` が `false` のときに必須。ブロック理由として使用されます |

2418 2479 

2419`ok: false` で何が起こるかはイベントによって異なります:2480`ok: false` で何が起こるかはイベントによって異なります:

2420 2481 

2421* `Stop` と `SubagentStop`:理由は Claude の次の指示としてフィードバックされ、ターンが続行されます2482* `Stop` と `SubagentStop`:理由は Claude の次の指示としてフィードバックされ、ターンが続行されます

2422* `PreToolUse`:ツール呼び出しが拒否され、理由は Claude にツール エラーとして返されます。これはコマンド フックの `permissionDecision: "deny"` と同等です2483* `PreToolUse`:ツール呼び出しが拒否され、理由は Claude にツール エラーとして返されます。これはコマンド フックの `permissionDecision: "deny"` と同等です

2423* `PostToolUse`、`PostToolBatch`、`UserPromptSubmit`、`UserPromptExpansion`ターンが終了し、理由は警告行としてチャットに表示されます。これはコマンド フックから `"continue": false` を返すことと同等です2484* `PostToolUse`:デフォルトではターンが終了し、理由は警告行としてチャットに表示されます。`continueOnBlock: true` を設定して、理由を Claude にフィードバックし、ターンを続行する代わりに使用します

2485* `PostToolBatch`、`UserPromptSubmit`、`UserPromptExpansion`:ターンが終了し、理由は警告行として表示されます。これらのイベントは `continue` に関係なく `decision: "block"` でターンを終了します

2424* `PostToolUseFailure`、`TaskCreated`、`TaskCompleted`:理由は Claude にツール エラーとして返されます。`PreToolUse` と同様です2486* `PostToolUseFailure`、`TaskCreated`、`TaskCompleted`:理由は Claude にツール エラーとして返されます。`PreToolUse` と同様です

2425* `PermissionRequest`:`ok: false` は効果がありません。フックから承認を拒否するには、[コマンド フック](#command-hook-fields)を使用して `hookSpecificOutput.decision.behavior: "deny"` を返します2487* `PermissionRequest`:`ok: false` は効果がありません。フックから承認を拒否するには、[コマンド フック](#command-hook-fields)を使用して `hookSpecificOutput.decision.behavior: "deny"` を返します

2426 2488 


2579 "hooks": [2641 "hooks": [

2580 {2642 {

2581 "type": "command",2643 "type": "command",

2582 "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/run-tests-async.sh",2644 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/run-tests-async.sh",

2645 "args": [],

2583 "async": true,2646 "async": true,

2584 "timeout": 3002647 "timeout": 300

2585 }2648 }


2616* **入力を検証およびサニタイズ**: 入力データを盲目的に信頼しないでください2679* **入力を検証およびサニタイズ**: 入力データを盲目的に信頼しないでください

2617* **常にシェル変数を引用**: `$VAR` ではなく `"$VAR"` を使用2680* **常にシェル変数を引用**: `$VAR` ではなく `"$VAR"` を使用

2618* **パス トラバーサルをブロック**: ファイル パスで `..` をチェック2681* **パス トラバーサルをブロック**: ファイル パスで `..` をチェック

2619* **絶対パスを使用**: スクリプトの完全なパスを指定し、プロジェクト ルートに `"$CLAUDE_PROJECT_DIR"` を使用2682* **絶対パスを使用**: スクリプトの完全なパスを指定します。exec 形式では、`${CLAUDE_PROJECT_DIR}` を使用し、パスは引用符で囲む必要がありません。シェル形式では、ダブル クォートで囲みます

2620* **機密ファイルをスキップ**: `.env`、`.git/`、キーなどを避ける2683* **機密ファイルをスキップ**: `.env`、`.git/`、キーなどを避ける

2621 2684 

2622## Windows PowerShell ツール2685## Windows PowerShell ツール

hooks-guide.md +3 −3

Details

895 echo '{"tool_name":"Bash","tool_input":{"command":"ls"}}' | ./my-hook.sh895 echo '{"tool_name":"Bash","tool_input":{"command":"ls"}}' | ./my-hook.sh

896 echo $? # 終了コードを確認896 echo $? # 終了コードを確認

897 ```897 ```

898* 「command not found」が表示される場合は、絶対パスを使用するか、スクリプトを参照するために `$CLAUDE_PROJECT_DIR` を使用します898* 「command not found」が表示される場合は、絶対パスを使用するか、スクリプトを参照するために `${CLAUDE_PROJECT_DIR}` を使用します。シェルクォーティングを完全に回避するには、`"args": []` を追加して [exec form](/ja/hooks#exec-form-and-shell-form) に切り替えます。これはシェルなしでスクリプトを直接生成します

899* 「jq: command not found」が表示される場合は、`jq` をインストールするか、JSON 解析に Python/Node.js を使用します899* 「jq: command not found」が表示される場合は、`jq` をインストールするか、JSON 解析に Python/Node.js を使用します

900* スクリプトがまったく実行されていない場合は、実行可能にします:`chmod +x ./my-hook.sh`900* スクリプトがまったく実行されていない場合は、実行可能にします:`chmod +x ./my-hook.sh`

901 901 


909 909 

910### Stop hook が永遠に実行される910### Stop hook が永遠に実行される

911 911 

912Claude は無限ループで作業を続けます。停止する代わりに。912Claude は無限ループで作業を続け、停止する代わりに。

913 913 

914Stop hook スクリプトは、それが既にトリガーされたかどうかをチェックする必要があります。JSON 入力から `stop_hook_active` フィールドを解析し、`true` の場合は早期に終了します:914Stop hook スクリプトは、それが既にトリガーされたかどうかをチェックする必要があります。JSON 入力から `stop_hook_active` フィールドを解析し、`true` の場合は早期に終了します:

915 915 


926 926 

927Claude Code は hook スクリプトが有効な JSON を出力しているにもかかわらず、JSON 解析エラーを表示します。927Claude Code は hook スクリプトが有効な JSON を出力しているにもかかわらず、JSON 解析エラーを表示します。

928 928 

929Claude Code hook を実行するときプロファイル(`~/.zshrc` または `~/.bashrc`)をソースするシェルを生成しますプロファイルに無条件の `echo` ステートメントが含まれている場合、その出力は hook の JSON に前置されます:929Claude Code がシェル形式のコマンド hook(`args` なし)を実行する場合デフォルトで macOS と Linux では `sh -c` を、Windows では Git Bash を生成します。このシェルは非インタラクティブですが、Git Bash と一部の設定(`BASH_ENV` `~/.bashrc` を指すなどは依然としてプロファイルをソースしますそのプロファイルに無条件の `echo` ステートメントが含まれている場合、その出力は hook の JSON に前置されます:

930 930 

931```text theme={null}931```text theme={null}

932Shell ready on arm64932Shell ready on arm64

Details

9## キーボードショートカット9## キーボードショートカット

10 10 

11<Note>11<Note>

12 キーボードショートカットはプラットフォームとターミナルによって異なる場合があります。`?` を押すと、お使いの環境で利用可能なショートカットが表示されます12 キーボードショートカットはプラットフォームとターミナルによって異なる場合があります。[フルスクリーンレンダリング](/ja/fullscreen) では、トランスクリプトビューアで `?` を押すと、利用可能なショートカットが表示されます

13 13 

14 **macOS ユーザー**: Option/Alt キーショートカット(`Alt+B`、`Alt+F`、`Alt+Y`、`Alt+M`、`Alt+P`)を使用するには、ターミナルで Option を Meta として設定する必要があります:14 **macOS ユーザー**: Option/Alt キーショートカット(`Alt+B`、`Alt+F`、`Alt+Y`、`Alt+M`、`Alt+P`)を使用するには、ターミナルで Option を Meta として設定する必要があります:

15 15 


36| `Ctrl+T` | タスクリストを切り替え | ターミナルステータス領域の [タスクリスト](#task-list) を表示または非表示 |36| `Ctrl+T` | タスクリストを切り替え | ターミナルステータス領域の [タスクリスト](#task-list) を表示または非表示 |

37| `Left/Right 矢印` | ダイアログタブを循環 | 権限ダイアログとメニューのタブ間を移動 |37| `Left/Right 矢印` | ダイアログタブを循環 | 権限ダイアログとメニューのタブ間を移動 |

38| `Up/Down 矢印` または `Ctrl+P`/`Ctrl+N` | カーソルを移動またはコマンド履歴を移動 | 複数行入力では、最初にカーソルをプロンプト内で移動します。カーソルが既に上端または下端にある場合、もう一度押すとコマンド履歴を移動します |38| `Up/Down 矢印` または `Ctrl+P`/`Ctrl+N` | カーソルを移動またはコマンド履歴を移動 | 複数行入力では、最初にカーソルをプロンプト内で移動します。カーソルが既に上端または下端にある場合、もう一度押すとコマンド履歴を移動します |

39| `Esc` | Claude を割り込み | 現在の応答またはツール呼び出しを途中で停止して、リダイレクトできます。Claude はこれまでの作業を保持します |

39| `Esc` + `Esc` | 巻き戻しまたは要約 | コードおよび/または会話を前の時点に復元するか、選択したメッセージから要約 |40| `Esc` + `Esc` | 巻き戻しまたは要約 | コードおよび/または会話を前の時点に復元するか、選択したメッセージから要約 |

40| `Shift+Tab` または `Alt+M`(一部の設定) | 権限モードを切り替え | `default`、`acceptEdits`、`plan`、および `auto` や `bypassPermissions` などの有効にしたモード間を循環します。[権限モード](/ja/permission-modes) を参照してください。 |41| `Shift+Tab` または `Alt+M`(一部の設定) | 権限モードを切り替え | `default`、`acceptEdits`、`plan`、および `auto` や `bypassPermissions` などの有効にしたモード間を循環します。[権限モード](/ja/permission-modes) を参照してください。 |

41| `Option+P`(macOS)または `Alt+P`(Windows/Linux) | モデルを切り替え | プロンプトをクリアせずにモデルを切り替え |42| `Option+P`(macOS)または `Alt+P`(Windows/Linux) | モデルを切り替え | プロンプトをクリアせずにモデルを切り替え |


86 87 

87### トランスクリプトビューア88### トランスクリプトビューア

88 89 

89トランスクリプトビューアが開いている場合(`Ctrl+O` で切り替え)、これらのショートカットが利用可能です。`Ctrl+E` は [`transcript:toggleShowAll`](/ja/keybindings) で再バインド可能です。90トランスクリプトビューアが開いている場合(`Ctrl+O` で切り替え)、これらのショートカットが利用可能です。[フルスクリーンレンダリング](/ja/fullscreen) では、`?` を押すとビューア内に完全なショートカットリファレンスパネルが表示されます。`Ctrl+E` は [`transcript:toggleShowAll`](/ja/keybindings) で再バインド可能です。

90 91 

91| ショートカット | 説明 |92| ショートカット | 説明 |

92| :----------------- | :------------------------------------------------------------------------------------------------------------------------------------------------- |93| :----------------- | :------------------------------------------------------------------------------------------------------------------------------------------------- |

94| `?` | キーボードショートカットヘルプパネルを切り替え。[フルスクリーンレンダリング](/ja/fullscreen) が必要 |

95| `{` / `}` | vim パラグラフモーションのように、前のユーザープロンプトまたは次のユーザープロンプトにジャンプ。[フルスクリーンレンダリング](/ja/fullscreen) が必要 |

93| `Ctrl+E` | すべてのコンテンツを表示を切り替え |96| `Ctrl+E` | すべてのコンテンツを表示を切り替え |

94| `[` | 完全な会話をターミナルのネイティブスクロールバックに書き込み、`Cmd+F`、tmux コピーモード、その他のネイティブツールで検索できるようにします。[フルスクリーンレンダリング](/ja/fullscreen#search-and-review-the-conversation) が必要 |97| `[` | 完全な会話をターミナルのネイティブスクロールバックに書き込み、`Cmd+F`、tmux コピーモード、その他のネイティブツールで検索できるようにします。[フルスクリーンレンダリング](/ja/fullscreen#search-and-review-the-conversation) が必要 |

95| `v` | 会話を一時ファイルに書き込み、`$VISUAL` または `$EDITOR` で開きます。[フルスクリーンレンダリング](/ja/fullscreen) が必要 |98| `v` | 会話を一時ファイルに書き込み、`$VISUAL` または `$EDITOR` で開きます。[フルスクリーンレンダリング](/ja/fullscreen) が必要 |

llm-gateway.md +5 −1

Details

42Claude Codeは、すべてのAPI リクエストに以下のヘッダーを含めます:42Claude Codeは、すべてのAPI リクエストに以下のヘッダーを含めます:

43 43 

44| ヘッダー | 説明 |44| ヘッダー | 説明 |

45| :------------------------- | :---------------------------------------------------------------------------------------- |45| :------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------- |

46| `X-Claude-Code-Session-Id` | 現在のClaude Codeセッションの一意の識別子。プロキシはこれを使用して、リクエストボディを解析することなく、単一セッションからのすべてのAPI リクエストを集約できます。 |46| `X-Claude-Code-Session-Id` | 現在のClaude Codeセッションの一意の識別子。プロキシはこれを使用して、リクエストボディを解析することなく、単一セッションからのすべてのAPI リクエストを集約できます。 |

47| `X-Claude-Code-Agent-Id` | リクエストを発行したサブエージェントまたはチームメイトの識別子。プロキシはこれを使用して、リクエストボディを解析することなく、セッション内の個別の並列サブエージェントにAPI コストを属性付けできます。インプロセスサブエージェントまたはチームメイトによって発行されたリクエストの場合のみ存在します。 |

48| `X-Claude-Code-Parent-Agent-Id` | リクエストを行うエージェントを生成したエージェントの識別子。これを `X-Claude-Code-Agent-Id` と共に使用して、プロキシ内のネストされたエージェント全体にAPI コストを属性付けします。リクエストするエージェント自体が別のエージェントによって生成された場合のみ存在します。 |

49 

50両方のエージェントIDヘッダーは、永続的なユーザーまたはデバイスIDではなく、スポーン単位の一時的な識別子です。

47 51 

48Claude Codeはまた、クライアントバージョンと会話から派生したフィンガープリントを含む短い帰属ブロックをシステムプロンプトの前に付加します。Anthropic APIはこのブロックを処理前に削除するため、ファーストパーティプロンプトキャッシングには影響しません。gatewayが完全なリクエストボディをキーとしたプロンプトキャッシュを実装している場合は、[`CLAUDE_CODE_ATTRIBUTION_HEADER=0`](/ja/env-vars)を設定して、それを省略してください。52Claude Codeはまた、クライアントバージョンと会話から派生したフィンガープリントを含む短い帰属ブロックをシステムプロンプトの前に付加します。Anthropic APIはこのブロックを処理前に削除するため、ファーストパーティプロンプトキャッシングには影響しません。gatewayが完全なリクエストボディをキーとしたプロンプトキャッシュを実装している場合は、[`CLAUDE_CODE_ATTRIBUTION_HEADER=0`](/ja/env-vars)を設定して、それを省略してください。

49 53 

mcp.md +36 −220

Details

6 6 

7> Model Context Protocol を使用して Claude Code をツールに接続する方法を学びます。7> Model Context Protocol を使用して Claude Code をツールに接続する方法を学びます。

8 8 

9export const MCPServersTable = ({platform = "all"}) => {

10 const ifYouAreAnAiAgentReadingThisYouShouldInsteadFetch = 'https://api.anthropic.com/mcp-registry/docs';

11 const [servers, setServers] = useState([]);

12 const [loading, setLoading] = useState(true);

13 const [error, setError] = useState(null);

14 useEffect(() => {

15 const fetchServers = async () => {

16 try {

17 setLoading(true);

18 const allServers = [];

19 let cursor = null;

20 do {

21 const url = new URL('https://api.anthropic.com/mcp-registry/v0/servers');

22 url.searchParams.set('version', 'latest');

23 url.searchParams.set('visibility', 'commercial');

24 url.searchParams.set('limit', '100');

25 if (cursor) {

26 url.searchParams.set('cursor', cursor);

27 }

28 const response = await fetch(url);

29 if (!response.ok) {

30 throw new Error(`Failed to fetch MCP registry: ${response.status}`);

31 }

32 const data = await response.json();

33 allServers.push(...data.servers);

34 cursor = data.metadata?.nextCursor || null;

35 } while (cursor);

36 const transformedServers = allServers.map(item => {

37 const server = item.server;

38 const meta = item._meta?.['com.anthropic.api/mcp-registry'] || ({});

39 const worksWith = meta.worksWith || [];

40 const availability = {

41 claudeCode: worksWith.includes('claude-code'),

42 mcpConnector: worksWith.includes('claude-api'),

43 claudeDesktop: worksWith.includes('claude-desktop')

44 };

45 const remotes = server.remotes || [];

46 const httpRemote = remotes.find(r => r.type === 'streamable-http');

47 const sseRemote = remotes.find(r => r.type === 'sse');

48 const preferredRemote = httpRemote || sseRemote;

49 const remoteUrl = preferredRemote?.url || meta.url;

50 const remoteType = preferredRemote?.type;

51 const isTemplatedUrl = remoteUrl?.includes('{');

52 let setupUrl;

53 if (isTemplatedUrl && meta.requiredFields) {

54 const urlField = meta.requiredFields.find(f => f.field === 'url');

55 setupUrl = urlField?.sourceUrl || meta.documentation;

56 }

57 const urls = {};

58 if (!isTemplatedUrl) {

59 if (remoteType === 'streamable-http') {

60 urls.http = remoteUrl;

61 } else if (remoteType === 'sse') {

62 urls.sse = remoteUrl;

63 }

64 }

65 let envVars = [];

66 if (server.packages && server.packages.length > 0) {

67 const npmPackage = server.packages.find(p => p.registryType === 'npm');

68 if (npmPackage) {

69 urls.stdio = `npx -y ${npmPackage.identifier}`;

70 if (npmPackage.environmentVariables) {

71 envVars = npmPackage.environmentVariables;

72 }

73 }

74 }

75 return {

76 name: meta.displayName || server.title || server.name,

77 description: meta.oneLiner || server.description,

78 documentation: meta.documentation,

79 urls: urls,

80 envVars: envVars,

81 availability: availability,

82 customCommands: meta.claudeCodeCopyText ? {

83 claudeCode: meta.claudeCodeCopyText

84 } : undefined,

85 setupUrl: setupUrl

86 };

87 });

88 setServers(transformedServers);

89 setError(null);

90 } catch (err) {

91 setError(err.message);

92 console.error('Error fetching MCP registry:', err);

93 } finally {

94 setLoading(false);

95 }

96 };

97 fetchServers();

98 }, []);

99 const generateClaudeCodeCommand = server => {

100 if (server.customCommands && server.customCommands.claudeCode) {

101 return server.customCommands.claudeCode.replace('--transport streamable-http', '--transport http');

102 }

103 const serverSlug = server.name.toLowerCase().replace(/[^a-z0-9]/g, '-');

104 if (server.urls.http) {

105 return `claude mcp add ${serverSlug} --transport http ${server.urls.http}`;

106 }

107 if (server.urls.sse) {

108 return `claude mcp add ${serverSlug} --transport sse ${server.urls.sse}`;

109 }

110 if (server.urls.stdio) {

111 const envFlags = server.envVars && server.envVars.length > 0 ? server.envVars.map(v => `--env ${v.name}=YOUR_${v.name}`).join(' ') : '';

112 const baseCommand = `claude mcp add ${serverSlug} --transport stdio`;

113 return envFlags ? `${baseCommand} ${envFlags} -- ${server.urls.stdio}` : `${baseCommand} -- ${server.urls.stdio}`;

114 }

115 return null;

116 };

117 if (loading) {

118 return <div>Loading MCP servers...</div>;

119 }

120 if (error) {

121 return <div>Error loading MCP servers: {error}</div>;

122 }

123 const filteredServers = servers.filter(server => {

124 if (platform === "claudeCode") {

125 return server.availability.claudeCode;

126 } else if (platform === "mcpConnector") {

127 return server.availability.mcpConnector;

128 } else if (platform === "claudeDesktop") {

129 return server.availability.claudeDesktop;

130 } else if (platform === "all") {

131 return true;

132 } else {

133 throw new Error(`Unknown platform: ${platform}`);

134 }

135 });

136 return <>

137 <style jsx>{`

138 .cards-container {

139 display: grid;

140 gap: 1rem;

141 margin-bottom: 2rem;

142 }

143 .server-card {

144 border: 1px solid var(--border-color, #e5e7eb);

145 border-radius: 6px;

146 padding: 1rem;

147 }

148 .command-row {

149 display: flex;

150 align-items: center;

151 gap: 0.25rem;

152 }

153 .command-row code {

154 font-size: 0.75rem;

155 overflow-x: auto;

156 }

157 `}</style>

158 

159 <div className="cards-container">

160 {filteredServers.map(server => {

161 const claudeCodeCommand = generateClaudeCodeCommand(server);

162 const mcpUrl = server.urls.http || server.urls.sse;

163 const commandToShow = platform === "claudeCode" ? claudeCodeCommand : mcpUrl;

164 return <div key={server.name} className="server-card">

165 <div>

166 {server.documentation ? <a href={server.documentation}>

167 <strong>{server.name}</strong>

168 </a> : <strong>{server.name}</strong>}

169 </div>

170 

171 <p style={{

172 margin: '0.5rem 0',

173 fontSize: '0.9rem'

174 }}>

175 {server.description}

176 </p>

177 

178 {server.setupUrl && <p style={{

179 margin: '0.25rem 0',

180 fontSize: '0.8rem',

181 fontStyle: 'italic',

182 opacity: 0.7

183 }}>

184 Requires user-specific URL.{' '}

185 <a href={server.setupUrl} style={{

186 textDecoration: 'underline'

187 }}>

188 Get your URL here

189 </a>.

190 </p>}

191 

192 {commandToShow && !server.setupUrl && <>

193 <p style={{

194 display: 'block',

195 fontSize: '0.75rem',

196 fontWeight: 500,

197 minWidth: 'fit-content',

198 marginTop: '0.5rem',

199 marginBottom: 0

200 }}>

201 {platform === "claudeCode" ? "Command" : "URL"}

202 </p>

203 <div className="command-row">

204 <code>

205 {commandToShow}

206 </code>

207 </div>

208 </>}

209 </div>;

210 })}

211 </div>

212 </>;

213};

214 

215Claude Code は、AI ツール統合のためのオープンソース標準である [Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) を通じて、数百の外部ツールとデータソースに接続できます。MCP サーバーは Claude Code にツール、データベース、API へのアクセスを提供します。9Claude Code は、AI ツール統合のためのオープンソース標準である [Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) を通じて、数百の外部ツールとデータソースに接続できます。MCP サーバーは Claude Code にツール、データベース、API へのアクセスを提供します。

216 10 

217別のツール(課題追跡ツールや監視ダッシュボードなど)からチャットにデータをコピーしている場合は、サーバーを接続してください。接続すると、Claude は貼り付けたものから作業する代わりに、そのシステムを直接読み取り、操作できます。11別のツール(課題追跡ツールや監視ダッシュボードなど)からチャットにデータをコピーしている場合は、サーバーを接続してください。接続すると、Claude は貼り付けたものから作業する代わりに、そのシステムを直接読み取り、操作できます。


227* **ワークフローを自動化する**:「新機能に関するフィードバックセッションに招待する 10 人のユーザーに Gmail ドラフトを作成してください。」21* **ワークフローを自動化する**:「新機能に関するフィードバックセッションに招待する 10 人のユーザーに Gmail ドラフトを作成してください。」

228* **外部イベントに対応する**:MCP サーバーは [チャネル](/ja/channels) として機能することもでき、セッションにメッセージをプッシュするため、Claude は離席中に Telegram メッセージ、Discord チャット、または webhook イベントに対応できます。22* **外部イベントに対応する**:MCP サーバーは [チャネル](/ja/channels) として機能することもでき、セッションにメッセージをプッシュするため、Claude は離席中に Telegram メッセージ、Discord チャット、または webhook イベントに対応できます。

229 23 

230## 人気のある MCP サーバー24## MCP サーバーを検索してビルドする

231 25 

232Claude Code に接続できる一般的に使用される MCP サーバーをいくつか紹介します:26[Anthropic Directory](https://claude.ai/directory) でレビュー済みのコネクタを参照してください。Directory コネクタは Claude Code と同じ MCP インフラストラクチャを使用しているため、`claude mcp add` を使用して、そこにリストされているリモートサーバーを追加できます。

233 27 

234<Warning>28<Warning>

235 サードパーティの MCP サーバーは自己責任で使用してくださいAnthropic はこれらすべてのサーバーの正確性またはセキュリティを検証していません29 接続する前に、各サーバーを信頼していることを確認してください外部コンテンツを取得するサーバーは、[プロンプトインジェクションリスク](/ja/security#protect-against-prompt-injection)にさらされる可能性があります

236 インストールする MCP サーバーを信頼していることを確認してください。

237 信頼できないコンテンツを取得する可能性のある MCP サーバーを使用する場合は特に注意してください。これらはプロンプトインジェクションのリスクにさらされる可能性があります。

238</Warning>30</Warning>

239 31 

240<MCPServersTable platform="claudeCode" />32独自のサーバーをビルドするには、プロトコルの基礎については [MCP サーバーガイド](https://modelcontextprotocol.io/docs/develop/build-server) を、認証、テスト、Directory への提出については [Claude コネクタビルディングドキュメント](https://claude.com/docs/connectors/building) を参照してください。

241 33 

242<Note>34公式の [`mcp-server-dev` プラグイン](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/mcp-server-dev) を使用して、Claude にサーバーをスキャフォルドしてもらうこともできます。

243 **特定の統合が必要ですか?** [GitHub で数百以上の MCP サーバーを検索](https://github.com/modelcontextprotocol/servers)するか、[MCP SDK](https://modelcontextprotocol.io/quickstart/server) を使用して独自のサーバーを構築してください。35 

244</Note>36<Steps>

37 <Step title="プラグインをインストールする">

38 Claude Code セッションで、以下を実行します:

39 

40 ```

41 /plugin install mcp-server-dev@claude-plugins-official

42 ```

43 

44 次に `/reload-plugins` を実行して、現在のセッションでアクティブにします。

45 </Step>

46 

47 <Step title="ビルドスキルを実行する">

48 ```

49 /mcp-server-dev:build-mcp-server

50 ```

51 

52 Claude があなたのユースケースについて質問し、リモート HTTP またはローカル stdio サーバーをスキャフォルドします。

53 </Step>

54</Steps>

245 55 

246## MCP サーバーのインストール56## MCP サーバーのインストール

247 57 


287 97 

288Stdio サーバーはマシン上でローカルプロセスとして実行されます。システムへの直接アクセスやカスタムスクリプトが必要なツールに最適です。98Stdio サーバーはマシン上でローカルプロセスとして実行されます。システムへの直接アクセスやカスタムスクリプトが必要なツールに最適です。

289 99 

100Claude Code は、生成されたサーバーの環境に `CLAUDE_PROJECT_DIR` を設定して、プロジェクトルートを指定するため、サーバーは作業ディレクトリに依存することなくプロジェクト相対パスを解決できます。これは hooks が `CLAUDE_PROJECT_DIR` 変数で受け取るのと同じディレクトリです。サーバープロセス内から読み取ります。例えば、Node では `process.env.CLAUDE_PROJECT_DIR`、Python では `os.environ["CLAUDE_PROJECT_DIR"]` です。サーバーは MCP `roots/list` リクエストを呼び出すこともでき、Claude Code が起動されたディレクトリを返します。

101 

102この変数はサーバーの環境に設定され、Claude Code 自体の環境には設定されないため、プロジェクトスコープまたはユーザースコープの `.mcp.json` `command` または `args` で `${VAR}` 展開を使用して参照するには、`${CLAUDE_PROJECT_DIR:-.}` などのデフォルトが必要です。プラグイン提供の MCP 設定は `${CLAUDE_PROJECT_DIR}` を直接置換し、デフォルトは必要ありません。

103 

290```bash theme={null}104```bash theme={null}

291# 基本的な構文105# 基本的な構文

292claude mcp add [options] <name> -- <command> [args...]106claude mcp add [options] <name> -- <command> [args...]


404**プラグイン MCP 機能**:218**プラグイン MCP 機能**:

405 219 

406* **自動ライフサイクル**:セッション起動時に、有効なプラグインのサーバーが自動的に接続されます。セッション中にプラグインを有効または無効にする場合は、`/reload-plugins` を実行して MCP サーバーを接続または切断してください220* **自動ライフサイクル**:セッション起動時に、有効なプラグインのサーバーが自動的に接続されます。セッション中にプラグインを有効または無効にする場合は、`/reload-plugins` を実行して MCP サーバーを接続または切断してください

407* **環境変数**:バンドルされたプラグインファイルに `${CLAUDE_PLUGIN_ROOT}` を使用し、プラグイン更新を通じて保持される [永続的な状態](/ja/plugins-reference#persistent-data-directory) に `${CLAUDE_PLUGIN_DATA}` を使用します221* **環境変数**:バンドルされたプラグインファイルに `${CLAUDE_PLUGIN_ROOT}` を使用し、プラグイン更新を通じて保持される [永続的な状態](/ja/plugins-reference#persistent-data-directory) に `${CLAUDE_PLUGIN_DATA}` を使用し、安定したプロジェクトルートに `${CLAUDE_PROJECT_DIR}` を使用します

408* **ユーザー環境アクセス**:手動で設定されたサーバーと同じ環境変数へのアクセス222* **ユーザー環境アクセス**:手動で設定されたサーバーと同じ環境変数へのアクセス

409* **複数のトランスポートタイプ**:stdio、SSE、HTTP トランスポートをサポート(トランスポートサポートはサーバーによって異なる場合があります)223* **複数のトランスポートタイプ**:stdio、SSE、HTTP トランスポートをサポート(トランスポートサポートはサーバーによって異なる場合があります)

410 224 


644 458 

645多くのクラウドベースの MCP サーバーは認証が必要です。Claude Code は安全な接続のために OAuth 2.0 をサポートしています。459多くのクラウドベースの MCP サーバーは認証が必要です。Claude Code は安全な接続のために OAuth 2.0 をサポートしています。

646 460 

461Claude Code は、サーバーが `401 Unauthorized` と認可サーバーを指す `WWW-Authenticate` ヘッダーで応答するときに、リモートサーバーが認証を必要とするとマークします。その応答を返すカスタムサーバーは、他のリモートサーバーと同じ `/mcp` 認証フローを取得します。

462 

647<Steps>463<Steps>

648 <Step title="認証が必要なサーバーを追加する">464 <Step title="認証が必要なサーバーを追加する">

649 例:465 例:


689 505 

690### 事前設定された OAuth 認証情報を使用する506### 事前設定された OAuth 認証情報を使用する

691 507 

692一部の MCP サーバーは自動 OAuth セットアップをサポートしていません。「Incompatible auth server: does not support dynamic client registration」のようなエラーが表示される場合、サーバーは事前設定された認証情報が必要です。Claude Code は Client ID Metadata Document(CIMD)を使用するサーバーもサポートしており、これらを自動的に検出します。自動検出に失敗した場合は、まずサーバーの開発者ポータルを通じて OAuth アプリを登録し、サーバーを追加するときに認証情報を提供してください。508一部の MCP サーバーは、Dynamic Client Registration を通じた自動 OAuth セットアップをサポートしていません。「Incompatible auth server: does not support dynamic client registration」のようなエラーが表示される場合、サーバーは事前設定された認証情報が必要です。Claude Code は Client ID Metadata Document(CIMD)を使用するサーバーもサポートしており、これらを自動的に検出します。自動検出に失敗した場合は、まずサーバーの開発者ポータルを通じて OAuth アプリを登録し、サーバーを追加するときに認証情報を提供してください。

693 509 

694<Steps>510<Steps>

695 <Step title="サーバーで OAuth アプリを登録する">511 <Step title="サーバーで OAuth アプリを登録する">


1137 953 

1138### ツール検索を設定する954### ツール検索を設定する

1139 955 

1140ツール検索はデフォルトで有効です:MCP ツールは遅延され、オンデマンドで検出されます。Vertex AI ではデフォルトで無効です。これは `tool_reference` ブロックを受け入れないためです。`ANTHROPIC_BASE_URL` が非ファーストパーティホストを指している場合も無効です。ほとんどのプロキシは `tool_reference` ブロックを転送しないためです。`ENABLE_TOOL_SEARCH` を明示的に設定してオプトインしてください。この機能には、`tool_reference` ブロックをサポートするモデルが必要です:Sonnet 4 以降、または Opus 4 以降。Haiku モデルはツール検索をサポートしていません。956ツール検索はデフォルトで有効です:MCP ツールは遅延され、オンデマンドで検出されます。Vertex AI ではデフォルトで無効です。これは `tool_reference` ブロックを受け入れないためです。`ANTHROPIC_BASE_URL` が非ファーストパーティホストを指している場合も無効です。ほとんどのプロキシは `tool_reference` ブロックを転送しないためです。プロキシが `tool_reference` ブロックを転送する場合は、`ENABLE_TOOL_SEARCH` を明示的に設定してフォールバックをオーバーライドしてください。この機能には、`tool_reference` ブロックをサポートするモデルが必要です:Sonnet 4 以降、または Opus 4 以降。Haiku モデルはツール検索をサポートしていません。

1141 957 

1142`ENABLE_TOOL_SEARCH` 環境変数でツール検索の動作を制御します:958`ENABLE_TOOL_SEARCH` 環境変数でツール検索の動作を制御します:

1143 959 

1144| 値 | 動作 |960| 値 | 動作 |

1145| :--------- | :------------------------------------------------------------------------------------------------------- |961| :--------- | :------------------------------------------------------------------------------------------------------------------- |

1146| (未設定) | すべての MCP ツールが遅延され、オンデマンドでロードされます。Vertex AI または `ANTHROPIC_BASE_URL` が非ファーストパーティホストの場合はアップフロントロードにフォールバック |962| (未設定) | すべての MCP ツールが遅延され、オンデマンドでロードされます。Vertex AI または `ANTHROPIC_BASE_URL` が非ファーストパーティホストの場合はアップフロントロードにフォールバック |

1147| `true` | すべての MCP ツールが遅延。Vertex AI および非ファーストパーティ `ANTHROPIC_BASE_URL` を含む |963| `true` | すべての MCP ツールが遅延。Claude Code は Vertex AI およびプロキシ経由でもベータヘッダーを送信します。バックエンドが `tool_reference` ブロックをサポートしない場合、リクエストは失敗します |

1148| `auto` | しきい値モード:ツールがコンテキストウィンドウの 10% 以内に収まる場合はアップフロントロード、そうでない場合は遅延 |964| `auto` | しきい値モード:ツールがコンテキストウィンドウの 10% 以内に収まる場合はアップフロントロード、そうでない場合は遅延 |

1149| `auto:<N>` | カスタムパーセンテージ付きしきい値モード。`<N>` は 0-100(例:5% の場合は `auto:5`) |965| `auto:<N>` | カスタムパーセンテージ付きしきい値モード。`<N>` は 0-100(例:5% の場合は `auto:5`) |

1150| `false` | すべての MCP ツールがアップフロントロード、遅延なし |966| `false` | すべての MCP ツールがアップフロントロード、遅延なし |

memory.md +18 −2

Details

26| :----------- | :---------------------------- | :----------------------------- |26| :----------- | :---------------------------- | :----------------------------- |

27| **誰が書くか** | あなた | Claude |27| **誰が書くか** | あなた | Claude |

28| **何が含まれるか** | 指示とルール | 学習とパターン |28| **何が含まれるか** | 指示とルール | 学習とパターン |

29| **スコープ** | プロジェクト、ユーザー、または組織 | ワーキングツリーごと |29| **スコープ** | プロジェクト、ユーザー、または組織 | リポジトリごと、ワーキングツリー全体で共有 |

30| **読み込まれる場所** | すべてのセッション | すべてのセッション(最初の 200 行または 25KB) |30| **読み込まれる場所** | すべてのセッション | すべてのセッション(最初の 200 行または 25KB) |

31| **用途** | コーディング標準、ワークフロー、プロジェクトアーキテクチャ | ビルドコマンド、デバッグの洞察、Claude が発見する好み |31| **用途** | コーディング標準、ワークフロー、プロジェクトアーキテクチャ | ビルドコマンド、デバッグの洞察、Claude が発見する好み |

32 32 


80 80 

81**サイズ**: CLAUDE.md ファイルあたり 200 行以下を目標にします。より長いファイルはより多くのコンテキストを消費し、遵守を減らします。指示が大きくなっている場合は、[パススコープルール](#path-specific-rules)を使用して、指示が一致するファイルで作業するときにのみ読み込まれるようにして、ノイズを減らしてコンテキストスペースを節約できます。[インポート](#import-additional-files)を使用してコンテンツを分割して整理することもできますが、インポートされたファイルは依然として読み込まれ、起動時にコンテキストウィンドウに入ります。81**サイズ**: CLAUDE.md ファイルあたり 200 行以下を目標にします。より長いファイルはより多くのコンテキストを消費し、遵守を減らします。指示が大きくなっている場合は、[パススコープルール](#path-specific-rules)を使用して、指示が一致するファイルで作業するときにのみ読み込まれるようにして、ノイズを減らしてコンテキストスペースを節約できます。[インポート](#import-additional-files)を使用してコンテンツを分割して整理することもできますが、インポートされたファイルは依然として読み込まれ、起動時にコンテキストウィンドウに入ります。

82 82 

83**構造**: マークダウンヘッダーと箇条書きを使用して関連する指示をグループ化します。Claude は読者と同じ方法で構造をスキャンします。整理されたセクションは密集した段落よりも従いやすいです。83**構造**: マークダウンヘッダーと�条書きを使用して関連する指示をグループ化します。Claude は読者と同じ方法で構造をスキャンします。整理されたセクションは密集した段落よりも従いやすいです。

84 84 

85**具体性**: 検証できるほど具体的な指示を書きます。例えば:85**具体性**: 検証できるほど具体的な指示を書きます。例えば:

86 86 


272 </Step>272 </Step>

273</Steps>273</Steps>

274 274 

275`claudeMd` キーを使用すると、管理 CLAUDE.md コンテンツを別のファイルを展開する代わりに `managed-settings.json` 内に直接配置できます。

276 

277**スコープ**: マシン上のすべての Claude Code セッション、すべてのリポジトリ内。リポジトリ固有のガイダンスについては、代わりにプロジェクト CLAUDE.md をコミットします。

278 

279**優先度**: 管理 CLAUDE.md ファイルと同じ。ユーザーおよびプロジェクト CLAUDE.md の前に読み込まれます。

280 

281**どこで尊重されるか**: 管理および ポリシー設定のみ。ユーザー、プロジェクト、またはローカル設定で `claudeMd` を設定しても効果がありません。

282 

283以下の例は、管理設定ファイル内に行動指示を直接追加します。

284 

285```json theme={null}

286{

287 "claudeMd": "常に `make lint` をコミット前に実行してください。\nメインに直接プッシュしないでください。"

288}

289```

290 

275管理 CLAUDE.md と[管理設定](/ja/settings#settings-files)は異なる目的を果たします。設定を技術的な強制に使用し、CLAUDE.md を行動ガイダンスに使用します。291管理 CLAUDE.md と[管理設定](/ja/settings#settings-files)は異なる目的を果たします。設定を技術的な強制に使用し、CLAUDE.md を行動ガイダンスに使用します。

276 292 

277| 懸念事項 | 設定対象 |293| 懸念事項 | 設定対象 |

Details

171| `gen_ai.system` | 常に `anthropic`。OpenTelemetry GenAI セマンティック規約 | |171| `gen_ai.system` | 常に `anthropic`。OpenTelemetry GenAI セマンティック規約 | |

172| `gen_ai.request.model` | `model` と同じ値。OpenTelemetry GenAI セマンティック規約 | |172| `gen_ai.request.model` | `model` と同じ値。OpenTelemetry GenAI セマンティック規約 | |

173| `query_source` | リクエストを発行したサブシステム。例: `repl_main_thread` またはサブエージェント名 | |173| `query_source` | リクエストを発行したサブシステム。例: `repl_main_thread` またはサブエージェント名 | |

174| `agent_id` | リクエストを発行したサブエージェントまたはチームメイトの識別子。メインセッションでは存在しません | |

175| `parent_agent_id` | このエージェントを生成したエージェントの識別子。メインセッションおよびそこから直接生成されたエージェントでは存在しません | |

174| `speed` | `fast` または `normal` | |176| `speed` | `fast` または `normal` | |

175| `llm_request.context` | 親スパンに応じて `interaction`、`tool`、または `standalone` | |177| `llm_request.context` | 親スパンに応じて `interaction`、`tool`、または `standalone` | |

176| `duration_ms` | 再試行を含む実時間 | |178| `duration_ms` | 再試行を含む実時間 | |


421 423 

422#### プルリクエストカウンター424#### プルリクエストカウンター

423 425 

424Claude Code を介してプルリクエストを作成するときにインクリメントされます426Claude Code を介してシェルコマンドまたは MCP ツールを通じてプルリクエストまたはマージリクエストを作成するときにインクリメントされます

425 427 

426**属性**:428**属性**:

427 429 


446* `query_source`: リクエストを発行したサブシステムのカテゴリ。`"main"`、`"subagent"`、または `"auxiliary"` のいずれか448* `query_source`: リクエストを発行したサブシステムのカテゴリ。`"main"`、`"subagent"`、または `"auxiliary"` のいずれか

447* `speed`: 高速モードを使用した場合は `"fast"`。それ以外の場合は存在しません449* `speed`: 高速モードを使用した場合は `"fast"`。それ以外の場合は存在しません

448* `effort`: リクエストに適用された[努力レベル](/ja/model-config#adjust-effort-level): `"low"`、`"medium"`、`"high"`、`"xhigh"`、または `"max"`。モデルが努力をサポートしない場合は存在しません。450* `effort`: リクエストに適用された[努力レベル](/ja/model-config#adjust-effort-level): `"low"`、`"medium"`、`"high"`、`"xhigh"`、または `"max"`。モデルが努力をサポートしない場合は存在しません。

451* `agent.name`: リクエストを発行したサブエージェントタイプ。組み込みエージェント名と公式マーケットプレイスプラグインのエージェントはそのまま表示されます。その他のユーザー定義エージェント名は `"custom"` に置き換えられます。リクエストが名前付きサブエージェントタイプによって発行されなかった場合は存在しません。

452* `skill.name`: リクエストに対してアクティブなスキル。Skill ツール、`/` コマンド、またはスポーンされたサブエージェントによって継承されます。組み込み、バンドル、ユーザー定義、および公式マーケットプレイスプラグインスキル名はそのまま表示されます。サードパーティプラグインスキル名は `"third-party"` に置き換えられます。アクティブなスキルがない場合は存在しません。

453* `plugin.name`: アクティブなスキルまたはサブエージェントがプラグインによって提供される場合の所有プラグイン。公式マーケットプレイスプラグイン名はそのまま表示されます。サードパーティプラグイン名は `"third-party"` に置き換えられます。スキルもサブエージェントも所有プラグインを持たない場合は存在しません。

454* `marketplace.name`: 所有プラグインがインストールされたマーケットプレイス。公式マーケットプレイスプラグインに対してのみ出力されます。それ以外の場合は存在しません。

449 455 

450#### トークンカウンター456#### トークンカウンター

451 457 


459* `query_source`: リクエストを発行したサブシステムのカテゴリ。`"main"`、`"subagent"`、または `"auxiliary"` のいずれか465* `query_source`: リクエストを発行したサブシステムのカテゴリ。`"main"`、`"subagent"`、または `"auxiliary"` のいずれか

460* `speed`: 高速モードを使用した場合は `"fast"`。それ以外の場合は存在しません466* `speed`: 高速モードを使用した場合は `"fast"`。それ以外の場合は存在しません

461* `effort`: リクエストに適用された[努力レベル](/ja/model-config#adjust-effort-level)。詳細は [コストカウンター](#cost-counter)を参照してください。467* `effort`: リクエストに適用された[努力レベル](/ja/model-config#adjust-effort-level)。詳細は [コストカウンター](#cost-counter)を参照してください。

468* `agent.name`、`skill.name`、`plugin.name`、`marketplace.name`: リクエストのスキル、プラグイン、およびエージェント属性。定義と編集動作については [コストカウンター](#cost-counter)を参照してください。

462 469 

463#### コード編集ツール決定カウンター470#### コード編集ツール決定カウンター

464 471 


469* すべての[標準属性](#standard-attributes)476* すべての[標準属性](#standard-attributes)

470* `tool_name`: ツール名 (`"Edit"`、`"Write"`、`"NotebookEdit"`)477* `tool_name`: ツール名 (`"Edit"`、`"Write"`、`"NotebookEdit"`)

471* `decision`: ユーザーの決定 (`"accept"`、`"reject"`)478* `decision`: ユーザーの決定 (`"accept"`、`"reject"`)

472* `source`: 決定ソース - `"config"`、`"hook"`、`"user_permanent"`、`"user_temporary"`、`"user_abort"`、または `"user_reject"`。詳細は [ツール決定イベント](#tool-decision-event)を参照してください。479* `source`: 決定ソース`"config"`、`"hook"`、`"user_permanent"`、`"user_temporary"`、`"user_abort"`、または `"user_reject"` のいずれか。詳細は [ツール決定イベント](#tool-decision-event)を参照してください。

473* `language`: 編集されたファイルのプログラミング言語。例: `"TypeScript"`、`"Python"`、`"JavaScript"`、`"Markdown"`。認識されないファイル拡張子の場合は `"unknown"` を返します。480* `language`: 編集されたファイルのプログラミング言語。例: `"TypeScript"`、`"Python"`、`"JavaScript"`、`"Markdown"`。認識されないファイル拡張子の場合は `"unknown"` を返します。

474 481 

475#### アクティブ時間カウンター482#### アクティブ時間カウンター


535* `error_type`: ツールが失敗した場合のエラーカテゴリ文字列。例: `"Error:ENOENT"` または `"ShellError"`542* `error_type`: ツールが失敗した場合のエラーカテゴリ文字列。例: `"Error:ENOENT"` または `"ShellError"`

536* `error` (`OTEL_LOG_TOOL_DETAILS=1` の場合): ツールが失敗した場合の完全なエラーメッセージ543* `error` (`OTEL_LOG_TOOL_DETAILS=1` の場合): ツールが失敗した場合の完全なエラーメッセージ

537* `decision_type`: `"accept"` または `"reject"`544* `decision_type`: `"accept"` または `"reject"`

538* `decision_source`: 決定ソース - `"config"`、`"hook"`、`"user_permanent"`、`"user_temporary"`、`"user_abort"`、または `"user_reject"`。詳細は [ツール決定イベント](#tool-decision-event)を参照してください。545* `decision_source`: 決定ソース`"config"`、`"hook"`、`"user_permanent"`、`"user_temporary"`、`"user_abort"`、または `"user_reject"` のいずれか。詳細は [ツール決定イベント](#tool-decision-event)を参照してください。

539* `tool_input_size_bytes`: JSON シリアル化されたツール入力のサイズ (バイト単位)546* `tool_input_size_bytes`: JSON シリアル化されたツール入力のサイズ (バイト単位)

540* `tool_result_size_bytes`: ツール結果のサイズ (バイト単位)547* `tool_result_size_bytes`: ツール結果のサイズ (バイト単位)

541* `mcp_server_scope`: MCP サーバースコープ識別子 (MCP ツール用)548* `mcp_server_scope`: MCP サーバースコープ識別子 (MCP ツール用)


647* `tool_use_id`: このツール呼び出しの一意の識別子。フックに渡される `tool_use_id` と一致し、OTel イベントとフック取得データ間の相関を可能にします。654* `tool_use_id`: このツール呼び出しの一意の識別子。フックに渡される `tool_use_id` と一致し、OTel イベントとフック取得データ間の相関を可能にします。

648* `decision`: `"accept"` または `"reject"`655* `decision`: `"accept"` または `"reject"`

649* `source`: 決定ソース:656* `source`: 決定ソース:

650 * `"config"`: プロジェクト設定、エンタープライズ管理ポリシー、`--allowedTools` または `--disallowedTools` フラグ、アクティブな権限モード、またはツールが本質的に安全であるため、プロンプトなしで自動的に決定されました。657 * `"config"`: プロジェクト設定、ユーザーの個人設定内の許可ルール、エンタープライズ管理ポリシー、`--allowedTools` または `--disallowedTools` フラグ、アクティブな権限モード、同じインタラクティブ CLI セッション内の前のプロンプトからのセッションスコープの許可、またはツールが本質的に安全であるため、プロンプトなしで自動的に決定されました。このイベントは、これらのソースのどれが一致したかを示しません。

651 * `"hook"`: `PreToolUse` または `PermissionRequest` フックが決定を返しました。658 * `"hook"`: `PreToolUse` または `PermissionRequest` フックが決定を返しました。

652 * `"user_permanent"`: ユーザーがプロンプトされたときに常に許可」を選択し、個人設定にルールを保存した場合に出力されますまたそのルールに一致する後の呼び出しに対しても出力されます。受け入れとして扱われます。659 * `"user_permanent"`: ユーザーが権限プロンプトではい、今後も同じ対象に対して聞かないでください」を選択し、個人設定に許可ルールを保存した場合に出力されますインタラクティブ CLI ではその選択自体に対してのみ出力されます後で保存されたルールに一致する呼び出しは代わりに `"config"` を出力します。Agent SDK または非インタラクティブ `-p` セッションでは、初期選択と後のルール一致の両方が `"user_permanent"` を出力します。受け入れとして扱われます。

653 * `"user_temporary"`: ユーザーがプロンプトされたときに「はい」またはこのセッションのみはいを選択しルールを保存しなかった場合に出力されますまたそのセッションスコープの許可に一致する同じセッション内の後の呼び出しに対しても出力されます。受け入れとして扱われます。660 * `"user_temporary"`: ユーザーが権限プロンプトで「はい」を選択した場合、またはファイル編集または読み取りプロンプトでこのセッション中は...オプションのいずれかを選択した場合に出力されます。インタラクティブ CLI ではその選択自体に対してのみ出力されます後でそのセッションスコープの許可に一致する呼び出しは代わりに `"config"` を出力します。Agent SDK または非インタラクティブ `-p` セッションでは選択と後の一致の両方が `"user_temporary"` を出力します。受け入れとして扱われます。

654 * `"user_abort"`: ユーザーが権限プロンプトを回答なしで閉じた場合に出力されます。拒否として扱われます。661 * `"user_abort"`: ユーザーが権限プロンプトを回答なしで閉じた場合に出力されます。拒否として扱われます。

655 * `"user_reject"`: ユーザーがプロンプトされたときに「いいえ」を選択した場合、または呼び出しが個人設定内の拒否ルールに一致した場合に出力されます。拒否として扱われます。662 * `"user_reject"`: ユーザーがプロンプトされたときに「いいえ」を選択した場合、または呼び出しが個人設定内の拒否ルールに一致した場合に出力されます。拒否として扱われます。

656 663 


741* `plugin.version`: マーケットプレイスエントリで宣言されている場合のプラグインバージョン。サードパーティマーケットプレイスの場合、`OTEL_LOG_TOOL_DETAILS=1` の場合のみ含まれます748* `plugin.version`: マーケットプレイスエントリで宣言されている場合のプラグインバージョン。サードパーティマーケットプレイスの場合、`OTEL_LOG_TOOL_DETAILS=1` の場合のみ含まれます

742* `marketplace.name`: プラグインがインストールされたマーケットプレイス。サードパーティマーケットプレイスの場合、`OTEL_LOG_TOOL_DETAILS=1` の場合のみ含まれます749* `marketplace.name`: プラグインがインストールされたマーケットプレイス。サードパーティマーケットプレイスの場合、`OTEL_LOG_TOOL_DETAILS=1` の場合のみ含まれます

743 750 

751#### プラグイン読み込みイベント

752 

753セッション開始時に有効なプラグインごとに 1 回ログされます。このイベントを使用して、フリート全体でどのプラグインがアクティブであるかをインベントリします。これは、インストールアクション自体を記録する `plugin_installed` を補完します。

754 

755**イベント名**: `claude_code.plugin_loaded`

756 

757**属性**:

758 

759* すべての[標準属性](#standard-attributes)

760* `event.name`: `"plugin_loaded"`

761* `event.timestamp`: ISO 8601 タイムスタンプ

762* `event.sequence`: セッション内のイベントを順序付けするための単調増加カウンター

763* `plugin.name`: プラグインの名前。公式マーケットプレイスおよび組み込みバンドルの外部にあるプラグインの場合、`OTEL_LOG_TOOL_DETAILS=1` が設定されていない限り値は `"third-party"` です

764* `marketplace.name`: プラグインがインストールされたマーケットプレイス (既知の場合)。`plugin.name` と同じ条件下で `"third-party"` に編集されます

765* `plugin.version`: プラグインマニフェストからのバージョン。名前が編集されていない場合、およびマニフェストがバージョンを宣言している場合にのみ含まれます

766* `plugin.scope`: プラグインの出所カテゴリ: `"official"`、`"org"`、`"user-local"`、または `"default-bundle"`

767* `enabled_via`: プラグインが有効になった方法: `"default-enable"`、`"org-policy"`、`"seed-mount"`、または `"user-install"`

768* `plugin_id_hash`: プラグイン名とマーケットプレイスの決定論的ハッシュ。設定されたエクスポーターにのみ送信されます。フリート全体で読み込まれているサードパーティプラグインの数をカウントできます。その名前を記録することなく

769* `has_hooks`: プラグインがフックに貢献するかどうか

770* `has_mcp`: プラグインが MCP サーバーに貢献するかどうか

771* `skill_path_count`: プラグインが宣言するスキルディレクトリの数

772* `command_path_count`: プラグインが宣言するコマンドディレクトリの数

773* `agent_path_count`: プラグインが宣言するエージェントディレクトリの数

774 

744#### スキル有効化イベント775#### スキル有効化イベント

745 776 

746スキルが呼び出されるときにログされます。Claude が Skill ツールを通じてそれを呼び出すか、`/` コマンドとして実行するかどうかにかかわらず。777スキルが呼び出されるときにログされます。Claude が Skill ツールを通じてそれを呼び出すか、`/` コマンドとして実行するかどうかにかかわらず。


793* `total_retry_duration_ms`: すべての試行にわたる実時間824* `total_retry_duration_ms`: すべての試行にわたる実時間

794* `speed`: `"fast"` または `"normal"`825* `speed`: `"fast"` または `"normal"`

795 826 

827#### フック登録イベント

828 

829セッション開始時に設定されたフックごとに 1 回ログされます。このイベントを使用して、フリート全体でどのフックがアクティブであるかをインベントリします。これは、実行ごとの `hook_execution_start` および `hook_execution_complete` イベントを補完します。

830 

831**イベント名**: `claude_code.hook_registered`

832 

833**属性**:

834 

835* すべての[標準属性](#standard-attributes)

836* `event.name`: `"hook_registered"`

837* `event.timestamp`: ISO 8601 タイムスタンプ

838* `event.sequence`: セッション内のイベントを順序付けするための単調増加カウンター

839* `hook_event`: フックイベントタイプ。例: `"PreToolUse"` または `"PostToolUse"`

840* `hook_type`: フック実装タイプ: `"command"`、`"prompt"`、`"mcp_tool"`、`"http"`、または `"agent"`

841* `hook_source`: フックが定義されている場所: `"userSettings"`、`"projectSettings"`、`"localSettings"`、`"flagSettings"`、`"policySettings"`、または `"pluginHook"`

842* `hook_matcher` (`OTEL_LOG_TOOL_DETAILS=1` の場合): フック設定から設定されている場合のマッチャー文字列

843* `plugin.name` (`hook_source` が `"pluginHook"` の場合): 貢献するプラグインの名前。公式マーケットプレイスおよび組み込みバンドルの外部にあるプラグインの場合、`OTEL_LOG_TOOL_DETAILS=1` が設定されていない限り値は `"third-party"` です

844* `plugin_id_hash` (`hook_source` が `"pluginHook"` の場合): プラグイン名とマーケットプレイスの決定論的ハッシュ。設定されたエクスポーターにのみ送信されます。その名前を記録することなく、貢献するプラグインの数をカウントできます

845 

796#### フック実行開始イベント846#### フック実行開始イベント

797 847 

7981 つ以上のフックがフックイベントの実行を開始するときにログされます。8481 つ以上のフックがフックイベントの実行を開始するときにログされます。


855* `post_tokens`: 圧縮後のおおよそのトークン数905* `post_tokens`: 圧縮後のおおよそのトークン数

856* `error`: 圧縮が失敗した場合のエラーメッセージ906* `error`: 圧縮が失敗した場合のエラーメッセージ

857 907 

908#### フィードバック調査イベント

909 

910セッション品質調査が表示または回答されるときにログされます。調査が収集する内容と制御方法については、[セッション品質調査](/ja/data-usage#session-quality-surveys)を参照してください。

911 

912**イベント名**: `claude_code.feedback_survey`

913 

914**属性**:

915 

916* すべての[標準属性](#standard-attributes)

917* `event.name`: `"feedback_survey"`

918* `event.timestamp`: ISO 8601 タイムスタンプ

919* `event.sequence`: セッション内のイベントを順序付けするための単調増加カウンター

920* `event_type`: 調査ライフサイクルイベント。例: `"appeared"`、`"responded"`、または `"transcript_prompt_appeared"`

921* `appearance_id`: 1 つの調査インスタンスに対して出力されたイベントをリンクする一意の ID

922* `survey_type`: イベントを生成した調査。`"session"` は「Claude はどのように機能していますか?」という評価プロンプトです

923* `response`: `responded` イベントでのユーザーの選択

924* `enabled_via_override`: [`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL`](/ja/env-vars) が設定されている場合は `true`。文字列ではなくブール値として出力されます。`session` 調査イベントに存在します。この属性をフィルタリングして、フリート全体でオーバーライドが適用されていることを確認します

925 

858## メトリクスとイベントデータの解釈926## メトリクスとイベントデータの解釈

859 927 

860エクスポートされたメトリクスとイベントは、さまざまな分析をサポートします:928エクスポートされたメトリクスとイベントは、さまざまな分析をサポートします:


862### 使用状況監視930### 使用状況監視

863 931 

864| メトリクス | 分析の機会 |932| メトリクス | 分析の機会 |

865| ------------------------------------------------------------- | ---------------------------------- |933| ------------------------------------------------------------- | ---------------------------------------------------------------------------- |

866| `claude_code.token.usage` | `type` (入力/出力)、ユーザー、チーム、またはモデル別に分類 |934| `claude_code.token.usage` | `type` (入力/出力)、ユーザー、チーム、モデル、`skill.name`、`plugin.name`、または `agent.name` 別に分類 |

867| `claude_code.session.count` | 時間経過に伴う採用と関与を追跡 |935| `claude_code.session.count` | 時間経過に伴う採用と関与を追跡 |

868| `claude_code.lines_of_code.count` | コード追加/削除を追跡して生産性を測定 |936| `claude_code.lines_of_code.count` | コード追加/削除を追跡して生産性を測定 |

869| `claude_code.commit.count` & `claude_code.pull_request.count` | 開発ワークフローへの影響を理解 |937| `claude_code.commit.count` & `claude_code.pull_request.count` | 開発ワークフローへの影響を理解 |


874 942 

875* チームまたは個人全体の使用トレンドを追跡する943* チームまたは個人全体の使用トレンドを追跡する

876* 最適化のための高使用セッションを特定する944* 最適化のための高使用セッションを特定する

945* `skill.name`、`plugin.name`、および `agent.name` 属性を介して、特定のスキル、プラグイン、またはサブエージェントタイプへの支出を属性付けする

877 946 

878<Note>947<Note>

879 コストメトリクスは概算です。公式な請求データについては、API プロバイダー (Claude Console、Amazon Bedrock、または Google Cloud Vertex) を参照してください。948 コストメトリクスは概算です。公式な請求データについては、API プロバイダー (Claude Console、Amazon Bedrock、または Google Cloud Vertex) を参照してください。

Details

14 14 

15Claude Code の **Default** 出力スタイルは既存のシステムプロンプトであり、ソフトウェアエンジニアリングタスクを効率的に完了するのに役立つように設計されています。15Claude Code の **Default** 出力スタイルは既存のシステムプロンプトであり、ソフトウェアエンジニアリングタスクを効率的に完了するのに役立つように設計されています。

16 16 

17コードベースと Claude の動作方法を教えることに焦点を当てた、2 つの追加の組み込み出力スタイルがあります。173 つの追加の組み込み出力スタイルがあります。

18 

19* **Proactive**: Claude は即座に実行し、日常的な決定で一時停止する代わりに合理的な仮定を立て、計画よりもアクションを優先します。これは [オートモード](/ja/permission-modes#eliminate-prompts-with-auto-mode) と同じガイダンスを適用しますが、パーミッションモードは変更しないため、ツールが実行される前にパーミッションプロンプトが表示されます。

18 20 

19* **Explanatory**: ソフトウェアエンジニアリングタスクの完了を支援しながら、教育的な「Insights」を提供します。実装の選択肢とコードベースのパターンを理解するのに役立ちます。21* **Explanatory**: ソフトウェアエンジニアリングタスクの完了を支援しながら、教育的な「Insights」を提供します。実装の選択肢とコードベースのパターンを理解するのに役立ちます。

20 22 


88 90 

89### 出力スタイル vs. CLAUDE.md vs. --append-system-prompt91### 出力スタイル vs. CLAUDE.md vs. --append-system-prompt

90 92 

91出力スタイルはソフトウェアエンジニアリング固有の Claude Code のデフォルトシステムプロンプトの部分を完全に「オフ」にします。CLAUDE.md `--append-system-prompt` Claude Code のデフォルトシステムプロンプトを編集しません。CLAUDE.md は内容をユーザーメッセージとして Claude Code のデフォルトシステムプロンプトの「後に」追加します。`--append-system-prompt` はコンテンツをシステムプロンプトに追加します93Claude がコーディングアシスタントとしての役割を停止するかデフォルトの役割を保持してさらに学習するかに基づいて選択してください。出力スタイルは Claude Code のシステムプロンプトのソフトウェアエンジニアリング部分を独自の役割と声に置き換えるため、Claude が執筆エディターやデータ分析アシスタントなど異なるアイデンティティを採用する必要がある場合に使用します。CLAUDE.md `--append-system-prompt` はどちらも Claude Code のデフォルトアイデンティティを保持し、それに追加するため、Claude がコーディングアシスタントのままで、プロジェクト規約や追加の指示にも従う必要がある場合に使用します

94 

95メカニズムも異なります。出力スタイルはシステムプロンプトを直接編集します。CLAUDE.md はその内容をシステムプロンプトの後のユーザーメッセージとして追加します。`--append-system-prompt` は何も削除せずにシステムプロンプトの末尾にコンテンツを追加します。

92 96 

93### 出力スタイル vs. [Agents](/ja/sub-agents)97### 出力スタイル vs. [Agents](/ja/sub-agents)

94 98 

95出力スタイルはメインエージェントループに直接影響し、システムプロンプトのみに影響しますエージェントは特定のタスクを処理するために呼び出され使用するモデル利用可能なツールエージェントをいつ使用するかに関するコンテキストなどの追加設定を含めることができます99メインの会話がすべてのセッションでどのように応答するかを変更するには出力スタイルを使用しますメインの会話が委譲する個別にスコープされたヘルパーが必要な場合は [subagent](/ja/sub-agents) を使用します。出力スタイルはメインエージェントループのシステムプロンプトのみに影響します。エージェントは特定のタスクを処理し独自のモデルツールおよびそれらをいつ呼び出すかに関するコンテキストを持つことができます

96 100 

97### 出力スタイル vs. [Skills](/ja/skills)101### 出力スタイル vs. [Skills](/ja/skills)

98 102 

99出力スタイルは Claude の応答方法(フォーマット、トーン、構造)を変更し、選択されると常にアクティブです。Skills はタスク固有のプロンプトであり、`/skill-name` で呼び出すか、関連する場合に Claude が自動的に読み込みます。一貫したフォーマット設定を使用する場合は出力スタイルを使用します再利用可能なワークフローとタスクの場合は Skills を使用します。103出力スタイルは Claude の応答方法(フォーマット、トーン、構造)を変更し、選択されると常にアクティブです。Skills はタスク固有のプロンプトであり、`/skill-name` で呼び出すか、関連する場合に Claude が自動的に読み込みます。一貫したフォーマット設定の設定には出力スタイルを使用します再利用可能なワークフローとタスクには Skills を使用します。

Details

128 128 

129計画モードを終了するには `Shift+Tab` を再度押し、計画を承認しません。129計画モードを終了するには `Shift+Tab` を再度押し、計画を承認しません。

130 130 

131### 計画をレビューして承認する

132 

131計画の準備ができたら、Claude はそれを提示し、どのように進めるかを尋ねます。そのプロンプトから以下を実行できます。133計画の準備ができたら、Claude はそれを提示し、どのように進めるかを尋ねます。そのプロンプトから以下を実行できます。

132 134 

133* 承認して自動モードで開始135* 承認して自動モードで開始


136* フィードバック付きで計画を続ける138* フィードバック付きで計画を続ける

137* [Ultraplan](/ja/ultraplan) でブラウザベースのレビュー用に改善139* [Ultraplan](/ja/ultraplan) でブラウザベースのレビュー用に改善

138 140 

139各承認オプションは計画コンテキストを最初にクリアするオプションも提供します141計画を承認すると、計画モードを終了し、セッションを各承認オプションが説明するパーミッションモードに切り替えるため、Claude は編集を開始します再度計画するには、`Shift+Tab` で計画モードに戻るか、次のプロンプトに `/plan` をプレフィックスしてください。

142 

143`Ctrl+G` を押して、提案された計画をデフォルトのテキストエディタで開き、Claude が進める前に直接編集できます。[`showClearContextOnPlanAccept`](/ja/settings#available-settings) が有効な場合、各承認オプションは計画コンテキストを最初にクリアするオプションも提供します。

144 

145計画を受け入れると、`--name` または `/rename` で既に名前を設定していない限り、計画コンテンツからセッションに自動的に名前が付けられます。

146 

147### 計画モードをデフォルトとして設定する

148 

149プロジェクトのデフォルトとして計画モードを設定するには、`.claude/settings.json` で `defaultMode` を設定します。

150 

151```json theme={null}

152{

153 "permissions": {

154 "defaultMode": "plan"

155 }

156}

157```

140 158 

141## 自動モードでプロンプトを削除する159## 自動モードでプロンプトを削除する

142 160 


146 164 

147自動モードでは Claude はパーミッションプロンプトなしで実行できます。別の分類器モデルはアクション実行前にアクションをレビューし、リクエストを超えてエスカレートするもの、認識されないインフラストラクチャをターゲットにするもの、または Claude が読んだ敵対的なコンテンツによって駆動されているように見えるものをブロックします。165自動モードでは Claude はパーミッションプロンプトなしで実行できます。別の分類器モデルはアクション実行前にアクションをレビューし、リクエストを超えてエスカレートするもの、認識されないインフラストラクチャをターゲットにするもの、または Claude が読んだ敵対的なコンテンツによって駆動されているように見えるものをブロックします。

148 166 

167自動モードはまた Claude に即座に実行し、明確化の質問を最小化するよう指示します。パーミッションプロンプトを保持しながらその動作を取得するには、代わりに [プロアクティブ出力スタイル](/ja/output-styles)を設定してください。

168 

149<Warning>169<Warning>

150 自動モードはリサーチプレビューです。プロンプトを削除しますが、安全性を保証しません。一般的な方向を信頼するタスクに使用し、機密操作のレビューの代わりとしては使用しないでください。170 自動モードはリサーチプレビューです。プロンプトを削除しますが、安全性を保証しません。一般的な方向を信頼するタスクに使用し、機密操作のレビューの代わりとしては使用しないでください。

151</Warning>171</Warning>


256 276 

257`--dangerously-skip-permissions` フラグは同等です。277`--dangerously-skip-permissions` フラグは同等です。

258 278 

279Linux と macOS では、Claude Code はこのモードで root として実行されている場合、または `sudo` の下で実行されている場合、起動を拒否します。

280 

281```text theme={null}

282--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons

283```

284 

285チェックは認識されたサンドボックス内で自動的にスキップされます。コンテナで自律的に実行するには、[dev container](/ja/devcontainer) 設定を使用してください。これは Claude Code を非 root ユーザーとして実行します。

286 

259<Warning>287<Warning>

260 `bypassPermissions` はプロンプトインジェクションまたは意図しないアクションに対する保護を提供しません。プロンプトなしで背景安全チェックの場合、代わりに[自動モード](#eliminate-prompts-with-auto-mode)を使用してください。管理者は[管理設定](/ja/permissions#managed-settings)で `permissions.disableBypassPermissionsMode` を `"disable"` に設定することでこのモードをブロックできます。288 `bypassPermissions` はプロンプトインジェクションまたは意図しないアクションに対する保護を提供しません。プロンプトなしで背景安全チェックの場合、代わりに[自動モード](#eliminate-prompts-with-auto-mode)を使用してください。管理者は[管理設定](/ja/permissions#managed-settings)で `permissions.disableBypassPermissionsMode` を `"disable"` に設定することでこのモードをブロックできます。

261</Warning>289</Warning>

permissions.md +5 −1

Details

28 28 

29ルールは順序で評価されます。**deny -> ask -> allow**。最初にマッチしたルールが優先されるため、deny ルールは常に優先されます。29ルールは順序で評価されます。**deny -> ask -> allow**。最初にマッチしたルールが優先されるため、deny ルールは常に優先されます。

30 30 

31<Note>

32 権限ルールは Claude Code によって実装されており、モデルによってではありません。プロンプトまたは `CLAUDE.md` の指示は、Claude が何をしようとするかを形作りますが、Claude Code が許可する内容は変わりません。アクセスを付与または取り消すには、`/permissions`、ここで説明されているルール、[permission mode](/ja/permission-modes)、または [PreToolUse hook](#extend-permissions-with-hooks) を使用してください。

33</Note>

34 

31## 権限モード35## 権限モード

32 36 

33Claude Code は、ツールの承認方法を制御するいくつかの権限モードをサポートしています。[権限モード](/ja/permission-modes)を参照して、各モードをいつ使用するかを確認してください。[設定ファイル](/ja/settings#settings-files)で `defaultMode` を設定します。37Claude Code は、ツールの承認方法を制御するいくつかの権限モードをサポートしています。[権限モード](/ja/permission-modes)を参照して、各モードをいつ使用するかを確認してください。[設定ファイル](/ja/settings#settings-files)で `defaultMode` を設定します。


153 157 

154 * **Bash ネットワークツールを制限する**:deny ルールを使用して `curl`、`wget` などのコマンドをブロックし、許可されたドメインに対して `WebFetch(domain:github.com)` 権限で WebFetch ツールを使用します158 * **Bash ネットワークツールを制限する**:deny ルールを使用して `curl`、`wget` などのコマンドをブロックし、許可されたドメインに対して `WebFetch(domain:github.com)` 権限で WebFetch ツールを使用します

155 * **PreToolUse フックを使用する**:Bash コマンドの URL を検証し、許可されていないドメインをブロックするフックを実装します159 * **PreToolUse フックを使用する**:Bash コマンドの URL を検証し、許可されていないドメインをブロックするフックを実装します

156 * CLAUDE.md を通じて Claude Code に許可された curl パターンについて指示します160 * **CLAUDE.md ガイダンスを追加する**:`CLAUDE.md` Claude Code に許可された curl パターンについて説明します。これは Claude が試みることを形作りますが、境界を強制しないため、上記のオプションの 1 つと組み合わせてください

157 161 

158 WebFetch のみを使用しても、ネットワークアクセスは防止されません。Bash が許可されている場合、Claude は `curl`、`wget` または他のツールを使用して任意の URL に到達できます。162 WebFetch のみを使用しても、ネットワークアクセスは防止されません。Bash が許可されている場合、Claude は `curl`、`wget` または他のツールを使用して任意の URL に到達できます。

159</Warning>163</Warning>

plugins.md +6 −0

Details

299claude --plugin-dir ./my-plugin299claude --plugin-dir ./my-plugin

300```300```

301 301 

302このフラグはプラグインディレクトリの `.zip` アーカイブも受け入れます。これには Claude Code v2.1.128 以降が必要です。

303 

304```bash theme={null}

305claude --plugin-dir ./my-plugin.zip

306```

307 

302`--plugin-dir` プラグインがインストール済みのマーケットプレイスプラグインと同じ名前を持つ場合、そのセッション中はローカルコピーが優先されます。これにより、最初にアンインストールしなくても、既にインストール済みのプラグインへの変更をテストできます。マネージド設定によって強制的に有効にされたマーケットプレイスプラグインは唯一の例外であり、オーバーライドできません。308`--plugin-dir` プラグインがインストール済みのマーケットプレイスプラグインと同じ名前を持つ場合、そのセッション中はローカルコピーが優先されます。これにより、最初にアンインストールしなくても、既にインストール済みのプラグインへの変更をテストできます。マネージド設定によって強制的に有効にされたマーケットプレイスプラグインは唯一の例外であり、オーバーライドできません。

303 309 

304プラグインに変更を加えると、`/reload-plugins` を実行して再起動せずに更新を反映させます。これにより、プラグイン、スキル、エージェント、フック、プラグイン MCP サーバー、プラグイン LSP サーバーが再読み込みされます。プラグインコンポーネントをテストします。310プラグインに変更を加えると、`/reload-plugins` を実行して再起動せずに更新を反映させます。これにより、プラグイン、スキル、エージェント、フック、プラグイン MCP サーバー、プラグイン LSP サーバーが再読み込みされます。プラグインコンポーネントをテストします。

Details

97 "hooks": [97 "hooks": [

98 {98 {

99 "type": "command",99 "type": "command",

100 "command": "${CLAUDE_PLUGIN_ROOT}/scripts/format-code.sh"100 "command": "\"${CLAUDE_PLUGIN_ROOT}\"/scripts/format-code.sh"

101 }101 }

102 ]102 ]

103 }103 }


289[289[

290 {290 {

291 "name": "deploy-status",291 "name": "deploy-status",

292 "command": "${CLAUDE_PLUGIN_ROOT}/scripts/poll-deploy.sh ${user_config.api_endpoint}",292 "command": "\"${CLAUDE_PLUGIN_ROOT}\"/scripts/poll-deploy.sh ${user_config.api_endpoint}",

293 "description": "Deployment status changes"293 "description": "Deployment status changes"

294 },294 },

295 {295 {


317| :----- | :---------------------------------------------------------------------------------------------------------------------------------------------- |317| :----- | :---------------------------------------------------------------------------------------------------------------------------------------------- |

318| `when` | monitor がいつ開始するかを制御します。`"always"` はセッション開始時とプラグイン再読み込み時に開始し、デフォルトです。`"on-skill-invoke:<skill-name>"` はこのプラグイン内の名前付き skill が最初にディスパッチされるときに開始します |318| `when` | monitor がいつ開始するかを制御します。`"always"` はセッション開始時とプラグイン再読み込み時に開始し、デフォルトです。`"on-skill-invoke:<skill-name>"` はこのプラグイン内の名前付き skill が最初にディスパッチされるときに開始します |

319 319 

320`command` 値は MCP および LSP サーバー設定と同じ[変数置換](#environment-variables)をサポートします: `${CLAUDE_PLUGIN_ROOT}`、`${CLAUDE_PLUGIN_DATA}`、`${user_config.*}`、および環境からの任意の `${ENV_VAR}`。スクリプトがプラグイン自体のディレクトリから実行される必要がある場合は、コマンドの前に `cd "${CLAUDE_PLUGIN_ROOT}" && ` を付けます。320`command` 値は MCP および LSP サーバー設定と同じ[変数置換](#environment-variables)をサポートします: `${CLAUDE_PLUGIN_ROOT}`、`${CLAUDE_PLUGIN_DATA}`、`${CLAUDE_PROJECT_DIR}`、`${user_config.*}`、および環境からの任意の `${ENV_VAR}`。スクリプトがプラグイン自体のディレクトリから実行される必要がある場合は、コマンドの前に `cd "${CLAUDE_PLUGIN_ROOT}" && ` を付けます。

321 321 

322セッション中にプラグインを無効にしても、既に実行中の monitors は停止しません。セッションが終了するときに停止します。322セッション中にプラグインを無効にしても、既に実行中の monitors は停止しません。セッションが終了するときに停止します。

323 323 


540 540 

541### 環境変数541### 環境変数

542 542 

543Claude Code は、プラグインパスを参照するための 2 つの変数を提供します。どちらも skill コンテンツ、エージェントコンテンツ、hook コマンド、monitor コマンド、MCP または LSP サーバー設定に表示される場所にインラインで置換されます。どちらも hook プロセスおよび MCP または LSP サーバーサブプロセスに環境変数としてエクスポートされます。543Claude Code は、プラグインパスを参照するための 3 つの変数を提供します。すべては skill コンテンツ、エージェントコンテンツ、hook コマンド、monitor コマンド、MCP または LSP サーバー設定に表示される場所にインラインで置換されます。すべては hook プロセスおよび MCP または LSP サーバーサブプロセスに環境変数としてエクスポートされます。

544 544 

545**`${CLAUDE_PLUGIN_ROOT}`**: プラグインのインストールディレクトリへの絶対パス。プラグインにバンドルされたスクリプト、バイナリ、設定ファイルを参照するために使用します。このパスはプラグインが更新されると変更されます。前のバージョンのディレクトリは更新後約 7 日間ディスク上に残りますが、これを一時的なものとして扱い、ここに状態を書き込まないでください。545**`${CLAUDE_PLUGIN_ROOT}`**: プラグインのインストールディレクトリへの絶対パス。プラグインにバンドルされたスクリプト、バイナリ、設定ファイルを参照するために使用します。hook コマンドでは、[exec form](/ja/hooks#exec-form-and-shell-form)を `args` で使用して、パスが 1 つの引数として引用符なしで渡されるようにしてください。shell-form hooks および monitor コマンドでは、`"${CLAUDE_PLUGIN_ROOT}"` のようにダブルクォートで囲みます。このパスはプラグインが更新されると変更されます。前のバージョンのディレクトリは更新後約 7 日間ディスク上に残りますが、これを一時的なものとして扱い、ここに状態を書き込まないでください。

546 546 

547プラグインがセッション中に更新されると、hook コマンド、monitors、MCP サーバー、LSP サーバーは前のバージョンのパスを使用し続けます。`/reload-plugins` を実行して、hook、MCP サーバー、LSP サーバーを新しいパスに切り替えます。monitors はセッション再起動が必要です。547プラグインがセッション中に更新されると、hook コマンド、monitors、MCP サーバー、LSP サーバーは前のバージョンのパスを使用し続けます。`/reload-plugins` を実行して、hook、MCP サーバー、LSP サーバーを新しいパスに切り替えます。monitors はセッション再起動が必要です。

548 548 

549**`${CLAUDE_PLUGIN_DATA}`**: 更新後も保持される永続ディレクトリ。`node_modules` または Python 仮想環境などのインストール済み依存関係、生成されたコード、キャッシュ、およびプラグインバージョン全体で保持する必要があるその他のファイルに使用します。このディレクトリは、この変数が最初に参照されるときに自動的に作成されます。549**`${CLAUDE_PLUGIN_DATA}`**: 更新後も保持される永続ディレクトリ。`node_modules` または Python 仮想環境などのインストール済み依存関係、生成されたコード、キャッシュ、およびプラグインバージョン全体で保持する必要があるその他のファイルに使用します。このディレクトリは、この変数が最初に参照されるときに自動的に作成されます。

550 550 

551**`${CLAUDE_PROJECT_DIR}`**: プロジェクトルート。これは hook が `CLAUDE_PROJECT_DIR` 変数で受け取るのと同じディレクトリです。プロジェクトローカルスクリプトまたは設定ファイルを参照するために使用します。スペースを含むパスを処理するためにクォートで囲みます。たとえば `"${CLAUDE_PROJECT_DIR}/scripts/server.sh"`。MCP サーバーは MCP `roots/list` リクエストを呼び出すこともでき、Claude Code が起動されたディレクトリを返します。

552 

551```json theme={null}553```json theme={null}

552{554{

553 "hooks": {555 "hooks": {


556 "hooks": [558 "hooks": [

557 {559 {

558 "type": "command",560 "type": "command",

559 "command": "${CLAUDE_PLUGIN_ROOT}/scripts/process.sh"561 "command": "\"${CLAUDE_PLUGIN_ROOT}\"/scripts/process.sh"

560 }562 }

561 ]563 ]

562 }564 }


629 631 

630インストールされたプラグインはディレクトリの外側のファイルを参照できません。プラグインルートの外側をトラバースするパス(`../shared-utils` など)は、これらの外部ファイルがキャッシュにコピーされないため、インストール後は機能しません。632インストールされたプラグインはディレクトリの外側のファイルを参照できません。プラグインルートの外側をトラバースするパス(`../shared-utils` など)は、これらの外部ファイルがキャッシュにコピーされないため、インストール後は機能しません。

631 633 

632### 外部依存関係の操作634### マーケットプレイス内でシンボリックリンクを使用してファイルを共有

635 

636プラグインが同じマーケットプレイスの他の部分とファイルを共有する必要がある場合、プラグインディレクトリ内にシンボリックリンクを作成できます。プラグインがキャッシュにコピーされるときにシンボリックリンクがどのように処理されるかは、そのターゲットがどこに解決されるかによって異なります:

637 

638* **プラグイン自体のディレクトリ内:** シンボリックリンクはキャッシュ内の相対シンボリックリンクとして保持されるため、実行時にコピーされたターゲットへの解決を続けます。

639* **同じマーケットプレイス内の他の場所:** シンボリックリンクは逆参照されます。ターゲットのコンテンツはキャッシュにコピーされます。これにより、メタプラグインの `skills/` ディレクトリがマーケットプレイス内の他のプラグインで定義されたスキルにリンクできます。

640* **マーケットプレイス外:** シンボリックリンクはセキュリティのためにスキップされます。これにより、プラグインがシステムパスなどの任意のホストファイルをキャッシュに取り込むことを防ぎます。

633 641 

634プラグインがディレクトリの外側のファイルにアクセスする必要がある場合プラグインディレクトリ内の外部ファイルへのシンボリックリンクを作成できます。シンボリックリンクはキャッシュに保持されるのではなく逆参照され実行時にそのターゲットに解決されます次のコマンドはプラグインディレクトリ内から共有ユーティリティの場所へのリンクを作成します:642`--plugin-dir` でインストールされたプラグインまたはローカルパスからのプラグインの場合プラグイン自体のディレクトリ内で解決されるシンボリックリンクのみが保持されますその他はすべてスキップされます。

643 

644次のコマンドは、マーケットプレイスプラグイン内から兄弟プラグインで定義された共有スキルへのリンクを作成します。Windows では、昇格されたコマンドプロンプトから `mklink /D` を使用するか、開発者モードを有効にします:

635 645 

636```bash theme={null}646```bash theme={null}

637ln -s /path/to/shared-utils ./shared-utils647ln -s ../../shared-plugin/skills/foo ./skills/foo

638```648```

639 649 

640これはキャッシングシステムのセキュリティ上の利点を維持しながら柔軟性を提供します。650これはキャッシングシステムのセキュリティ上の利点を維持しながら柔軟性を提供します。


875| `--available` | マーケットプレイスから利用可能なプラグインを含めます。`--json` が必要です | |885| `--available` | マーケットプレイスから利用可能なプラグインを含めます。`--json` が必要です | |

876| `-h, --help` | コマンドのヘルプを表示 | |886| `-h, --help` | コマンドのヘルプを表示 | |

877 887 

888### plugin details

889 

890プラグインのコンポーネントインベントリと予想トークンコストを表示します。出力には、プラグインが提供するすべてのコンポーネントがリストアップされ、Skills(スキルとコマンド)、Agents、Hooks、MCP サーバーとしてグループ化され、各セッションに追加されるトークン数の推定値が表示されます。

891 

892```bash theme={null}

893claude plugin details <name>

894```

895 

896**引数:**

897 

898* `<name>`: プラグイン名または `plugin-name@marketplace-name`

899 

900**オプション:**

901 

902| オプション | 説明 | デフォルト |

903| :----------- | :---------- | :---- |

904| `-h, --help` | コマンドのヘルプを表示 | |

905 

906出力には、各コンポーネントの 2 つのコスト数値が表示されます。

907 

908* **Always-on:** スキルの説明、エージェントの説明、コマンド名など、プラグインのリスティングテキストによってすべてのセッションに追加されるトークン。コンポーネントが実行されるかどうかに関係なく追加されます。

909* **On-invoke:** コンポーネントが実行されるときのコンポーネントのコスト。プラグイン全体ではなくコンポーネントごとに表示されます。これは、典型的なセッションではコンポーネントのサブセットのみを呼び出すためです。

910 

911この例は、2 つのスキルを持つプラグインの出力がどのように見えるかを示しています。

912 

913```

914security-guidance 1.2.0

915 Real-time security analysis for Claude Code sessions

916 Source: security-guidance@claude-code-marketplace

917 

918Component inventory

919 Skills (2) scan-dependencies, review-changes

920 Agents (0)

921 Hooks (1) (harness-only — no model context cost)

922 MCP servers (0)

923 

924Projected token cost

925 Always-on: ~180 tok added to every session

926 

927Per-component (rounded)

928 component always-on on-invoke

929 scan-dependencies ~100 ~2400

930 review-changes ~80 ~1800

931 

932 On-invoke cost is paid each time a skill or agent fires.

933 Token counts are estimates and may differ from actual usage.

934```

935 

936Always-on の合計は、アクティブなモデルの `count_tokens` API を使用して計算されます。コンポーネントごとの数値は、その合計から比例的にスケーリングされます。API に到達できない場合、コマンドは文字ベースの推定値にフォールバックします。

937 

878### plugin tag938### plugin tag

879 939 

880現在のディレクトリ内のプラグインのリリース git タグを作成します。プラグインのフォルダ内から実行してください。[プラグインリリースにタグを付ける](/ja/plugin-dependencies#tag-plugin-releases-for-version-resolution)を参照してください。940現在のディレクトリ内のプラグインのリリース git タグを作成します。プラグインのフォルダ内から実行してください。[プラグインリリースにタグを付ける](/ja/plugin-dependencies#tag-plugin-releases-for-version-resolution)を参照してください。

quickstart.md +2 −2

Details

307 </Accordion>307 </Accordion>

308 308 

309 <Accordion title="ショートカットで時間を節約する">309 <Accordion title="ショートカットで時間を節約する">

310 * `?` を押してすべての利用可能なキーボードショートカットを表示する310 * `/` を入力してすべてのコマンドとスキルを表示する

311 * Tab キーでコマンド補完を使用する311 * Tab キーでコマンド補完を使用する

312 * ↑ キーでコマンド履歴を表示する312 * ↑ キーでコマンド履歴を表示する

313 * `/` を入力してすべてのコマンドとスキルを表示する313 * `Shift+Tab` を押してパーミッションモードをサイクルさせる

314 </Accordion>314 </Accordion>

315</AccordionGroup>315</AccordionGroup>

316 316 

routines.md +3 −1

Details

318 318 

319ルーティンは接続された MCP コネクタを使用して、各実行中に外部サービスから読み取り、外部サービスに書き込むことができます。たとえば、サポートリクエストをトリアージするルーティンは Slack チャネルから読み取り、Linear で問題を作成する可能性があります。319ルーティンは接続された MCP コネクタを使用して、各実行中に外部サービスから読み取り、外部サービスに書き込むことができます。たとえば、サポートリクエストをトリアージするルーティンは Slack チャネルから読み取り、Linear で問題を作成する可能性があります。

320 320 

321ルーティンを作成するときに現在接続されているすべてのコネクタがデフォルトで含まれます実行中に Claude がアクセスできるツールを制限するために必要でないものを削除しますルーティンフォームの外からコネクタを管理または追加することもできます321コネクタはアカウント上の [claude.ai インテグレーション](/ja/mcp#use-mcp-servers-from-claude-ai) ですCLI `claude mcp add` を使用してローカルに追加した MCP サーバーはマシンに保存されclaude.ai アカウントには保存されないため、コネクタリストに表示されませんルーティンでそれらのサーバーの 1 つを使用するには、[claude.ai/customize/connectors](https://claude.ai/customize/connectors) でコネクタとして追加するか、コミットされた [`.mcp.json`](/ja/mcp#project-scope) で宣言して、クローンされたリポジトリの一部にします

322 

323ルーティンを作成するときに、現在接続されているすべてのコネクタがデフォルトで含まれます。実行中に Claude がアクセスできるツールを制限するために、必要でないものを削除します。ルーティンフォームから直接コネクタを追加することもできます。

322 324 

323ルーティンフォームの外でコネクタを管理または追加するには、claude.ai で **Settings > Connectors** にアクセスするか、CLI で `/schedule update` を使用してください。325ルーティンフォームの外でコネクタを管理または追加するには、claude.ai で **Settings > Connectors** にアクセスするか、CLI で `/schedule update` を使用してください。

324 326 

security.md +1 −1

Details

85 85 

86Claude Code ユーザーは Model Context Protocol(MCP)サーバーを設定できます。許可された MCP サーバーのリストは、エンジニアがソース管理にチェックインする Claude Code 設定の一部として、ソースコードで設定されます。86Claude Code ユーザーは Model Context Protocol(MCP)サーバーを設定できます。許可された MCP サーバーのリストは、エンジニアがソース管理にチェックインする Claude Code 設定の一部として、ソースコードで設定されます。

87 87 

88独自の MCP サーバーを作成するか、信頼できるプロバイダーからの MCP サーバーを使用することをお勧めします。Claude Code パーミッションを MCP サーバー用に設定できます。Anthropic は MCP サーバーを管理または監査しません88独自の MCP サーバーを作成するか、信頼できるプロバイダーからの MCP サーバーを使用することをお勧めします。Claude Code パーミッションを MCP サーバー用に設定できます。Anthropic は MCP サーバーを [リスティング基準](https://claude.com/docs/connectors/building/review-criteria) に照らして確認してから [Anthropic Directory](https://claude.ai/directory) に追加しますが、MCP サーバーのセキュリティ監査または管理は行いません

89 89 

90## IDE セキュリティ90## IDE セキュリティ

91 91 

settings.md +3 −1

Details

178| `awsCredentialExport` | AWS 認証情報を含む JSON を出力するカスタムスクリプト([高度な認証情報構成](/ja/amazon-bedrock#advanced-credential-configuration)を参照) | `/bin/generate_aws_grant.sh` |178| `awsCredentialExport` | AWS 認証情報を含む JSON を出力するカスタムスクリプト([高度な認証情報構成](/ja/amazon-bedrock#advanced-credential-configuration)を参照) | `/bin/generate_aws_grant.sh` |

179| `blockedMarketplaces` | (Managed 設定のみ)マーケットプレイスソースのブロックリスト。マーケットプレイス追加時およびプラグインのインストール、更新、リフレッシュ、自動更新時に適用されるため、ポリシーが設定される前に追加されたマーケットプレイスは使用できません。ブロックされたソースはダウンロード前にチェックされるため、ファイルシステムに触れることはありません。[Managed マーケットプレイス制限](/ja/plugin-marketplaces#managed-marketplace-restrictions)を参照してください | `[{ "source": "github", "repo": "untrusted/plugins" }]` |179| `blockedMarketplaces` | (Managed 設定のみ)マーケットプレイスソースのブロックリスト。マーケットプレイス追加時およびプラグインのインストール、更新、リフレッシュ、自動更新時に適用されるため、ポリシーが設定される前に追加されたマーケットプレイスは使用できません。ブロックされたソースはダウンロード前にチェックされるため、ファイルシステムに触れることはありません。[Managed マーケットプレイス制限](/ja/plugin-marketplaces#managed-marketplace-restrictions)を参照してください | `[{ "source": "github", "repo": "untrusted/plugins" }]` |

180| `channelsEnabled` | (Managed 設定のみ)組織に対して[チャネル](/ja/channels)を許可します。Claude.ai Team および Enterprise プランでは、これが未設定または `false` の場合、チャネルはブロックされます。[Anthropic Console](/ja/authentication#claude-console-authentication)アカウントで API キー認証を使用している場合、チャネルはデフォルトで許可されます。ただし、組織が managed 設定をデプロイしている場合は、このキーを `true` に設定する必要があります | `true` |180| `channelsEnabled` | (Managed 設定のみ)組織に対して[チャネル](/ja/channels)を許可します。Claude.ai Team および Enterprise プランでは、これが未設定または `false` の場合、チャネルはブロックされます。[Anthropic Console](/ja/authentication#claude-console-authentication)アカウントで API キー認証を使用している場合、チャネルはデフォルトで許可されます。ただし、組織が managed 設定をデプロイしている場合は、このキーを `true` に設定する必要があります | `true` |

181| `claudeMd` | (Managed 設定のみ)CLAUDE.md スタイルの命令が組織管理メモリとして注入されます。managed またはポリシー設定で設定されている場合のみ尊重され、ユーザー、プロジェクト、およびローカル設定では無視されます。[組織全体の CLAUDE.md](/ja/memory#deploy-organization-wide-claude-md)を参照してください | `"Always run make lint before committing."` |

181| `claudeMdExcludes` | [メモリ](/ja/memory)を読み込むときにスキップする `CLAUDE.md` ファイルの Glob パターンまたは絶対パス。パターンは絶対ファイルパスに対してマッチします。ユーザー、プロジェクト、およびローカルメモリのみに適用されます。managed ポリシーファイルは除外できません | `["**/vendor/**/CLAUDE.md"]` |182| `claudeMdExcludes` | [メモリ](/ja/memory)を読み込むときにスキップする `CLAUDE.md` ファイルの Glob パターンまたは絶対パス。パターンは絶対ファイルパスに対してマッチします。ユーザー、プロジェクト、およびローカルメモリのみに適用されます。managed ポリシーファイルは除外できません | `["**/vendor/**/CLAUDE.md"]` |

182| `cleanupPeriodDays` | この期間より長く非アクティブなセッションは起動時に削除されます(デフォルト:30 日、最小 1)。`0` に設定するとバリデーションエラーで拒否されます。また、起動時に[孤立した subagent worktrees](/ja/worktrees#clean-up-worktrees)の自動削除の年齢カットオフも制御します。トランスクリプト書き込みを完全に無効にするには、[`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/ja/env-vars)環境変数を設定するか、非インタラクティブモード(`-p`)で `--no-session-persistence` フラグまたは `persistSession: false` SDK オプションを使用します。 | `20` |183| `cleanupPeriodDays` | この期間より長く非アクティブなセッションは起動時に削除されます(デフォルト:30 日、最小 1)。`0` に設定するとバリデーションエラーで拒否されます。また、起動時に[孤立した subagent worktrees](/ja/worktrees#clean-up-worktrees)の自動削除の年齢カットオフも制御します。トランスクリプト書き込みを完全に無効にするには、[`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/ja/env-vars)環境変数を設定するか、非インタラクティブモード(`-p`)で `--no-session-persistence` フラグまたは `persistSession: false` SDK オプションを使用します。 | `20` |

183| `companyAnnouncements` | 起動時にユーザーに表示するアナウンス。複数のアナウンスが提供される場合、ランダムにサイクルされます。 | `["Welcome to Acme Corp! Review our code guidelines at docs.acme.com"]` |184| `companyAnnouncements` | 起動時にユーザーに表示するアナウンス。複数のアナウンスが提供される場合、ランダムにサイクルされます。 | `["Welcome to Acme Corp! Review our code guidelines at docs.acme.com"]` |


253</Note>254</Note>

254 255 

255| キー | 説明 | 例 |256| キー | 説明 | 例 |

256| :------------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------ |257| :------------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------- |

257| `autoConnectIde` | Claude Code が外部ターミナルから起動するときに、実行中の IDE に自動的に接続します。デフォルト:`false`。VS Code または JetBrains ターミナルの外で実行する場合、`/config` に\*\*IDE に自動接続(外部ターミナル)\*\*として表示されます。[`CLAUDE_CODE_AUTO_CONNECT_IDE`](/ja/env-vars)環境変数が設定されている場合、これをオーバーライドします | `true` |258| `autoConnectIde` | Claude Code が外部ターミナルから起動するときに、実行中の IDE に自動的に接続します。デフォルト:`false`。VS Code または JetBrains ターミナルの外で実行する場合、`/config` に\*\*IDE に自動接続(外部ターミナル)\*\*として表示されます。[`CLAUDE_CODE_AUTO_CONNECT_IDE`](/ja/env-vars)環境変数が設定されている場合、これをオーバーライドします | `true` |

258| `autoInstallIdeExtension` | VS Code ターミナルから実行するときに Claude Code IDE 拡張機能を自動的にインストールします。デフォルト:`true`。VS Code または JetBrains ターミナル内で実行する場合、`/config` に**IDE 拡張機能を自動インストール**として表示されます。[`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](/ja/env-vars)環境変数を設定することもできます | `false` |259| `autoInstallIdeExtension` | VS Code ターミナルから実行するときに Claude Code IDE 拡張機能を自動的にインストールします。デフォルト:`true`。VS Code または JetBrains ターミナル内で実行する場合、`/config` に**IDE 拡張機能を自動インストール**として表示されます。[`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](/ja/env-vars)環境変数を設定することもできます | `false` |

259| `externalEditorContext` | `Ctrl+G` で外部エディターを開くときに Claude の前の応答を `#` コメント付きコンテキストとして先頭に追加します。デフォルト:`false`。`/config` に**外部エディターに最後の応答を表示**として表示されます | `true` |260| `externalEditorContext` | `Ctrl+G` で外部エディターを開くときに Claude の前の応答を `#` コメント付きコンテキストとして先頭に追加します。デフォルト:`false`。`/config` に**外部エディターに最後の応答を表示**として表示されます | `true` |

261| `teammateDefaultModel` | [エージェントチーム](/ja/agent-teams)チームメイトのデフォルトモデル。spawn プロンプトが指定しない場合。`"sonnet"` などのモデルエイリアスに設定するか、リーダーの現在の `/model` 選択を継承するために `null` に設定します。`/config` に**デフォルトチームメイトモデル**として表示されます | `"sonnet"` |

260 262 

261### Worktree 設定263### Worktree 設定

262 264 

vs-code.md +9 −7

Details

233</Note>233</Note>

234 234 

235| コマンド | ショートカット | 説明 |235| コマンド | ショートカット | 説明 |

236| -------------------------- | ----------------------------------------------------- | -------------------------------------------------------------------------------------------- |236| -------------------------- | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |

237| Focus Input | `Cmd+Esc`(Mac)/ `Ctrl+Esc`(Windows/Linux) | エディタと Claude 間のフォーカスを切り替える |237| Focus Input | `Cmd+Esc`(Mac)/ `Ctrl+Esc`(Windows/Linux) | エディタと Claude 間のフォーカスを切り替える |

238| Open in Side Bar | - | Claude を左サイドバーで開く |238| Open in Side Bar | - | Claude を左サイドバーで開く |

239| Open in Terminal | - | Claude をターミナルモードで開く |239| Open in Terminal | - | Claude をターミナルモードで開く |

240| Open in New Tab | `Cmd+Shift+Esc`(Mac)/ `Ctrl+Shift+Esc`(Windows/Linux) | 新しい会話をエディタタブとして開く |240| Open in New Tab | `Cmd+Shift+Esc`(Mac)/ `Ctrl+Shift+Esc`(Windows/Linux) | 新しい会話をエディタタブとして開く |

241| Open in New Window | - | 新しい会話を別のウィンドウで開く |241| Open in New Window | - | 新しい会話を別のウィンドウで開く |

242| New Conversation | `Cmd+N`(Mac)/ `Ctrl+N`(Windows/Linux) | 新しい会話を開始する。Claude がフォーカスされている必要があり、`enableNewConversationShortcut` が `true` に設定されている必要があります。 |242| New Conversation | `Cmd+N`(Mac)/ `Ctrl+N`(Windows/Linux) | 新しい会話を開始します。Claude がフォーカスされている必要があり、`enableNewConversationShortcut` が `true` に設定されている必要があります。 |

243| Insert @-Mention Reference | `Option+K`(Mac)/ `Alt+K`(Windows/Linux) | 現在のファイルと選択への参照を挿入する(エディタがフォーカスされている必要があります) |243| Reopen Closed Session | `Cmd+Shift+T`(Mac)/ `Ctrl+Shift+T`(Windows/Linux) | 最近閉じた Claude セッションタブを再度開きます。最後に閉じたタブが Claude セッションではなかった場合、VS Code の通常の再度開く機能にフォールスルーします。`enableReopenClosedSessionShortcut` で無効にできます。 |

244| Show Logs | - | 拡張機能デバッグログを表示する |244| Insert @-Mention Reference | `Option+K`(Mac)/ `Alt+K`(Windows/Linux) | 現在のファイルと選択への参照を挿入します(エディタがフォーカスされている必要があります) |

245| Logout | - | Anthropic アカウントからサインアウトする |245| Show Logs | - | 拡張機能デバッグログを表示します |

246| Logout | - | Anthropic アカウントからサインアウトします |

246 247 

247### 他のツールから VS Code タブを起動する248### 他のツールから VS Code タブを起動する

248 249 

249拡張機能は `vscode://anthropic.claude-code/open` で URI ハンドラーを登録します。これを使用して、独自のツーリングから新しい Claude Code タブを開きます。シェルエイリアス、ブラウザブックマークレット、または URL を開くことができるスクリプト。VS Code がまだ実行されていない場合、URL を開くと最初に起動します。VS Code が既に実行されている場合、URL は現在フォーカスされているウィンドウで開きます。250拡張機能は `vscode://anthropic.claude-code/open` で URI ハンドラーを登録します。これを使用して、独自のツーリングから新しい Claude Code タブを開きます。シェルエイリアス、ブラウザブックマークレット、または URL を開くことができるスクリプトです。VS Code がまだ実行されていない場合、URL を開くと最初に起動します。VS Code が既に実行されている場合、URL は現在フォーカスされているウィンドウで開きます。

250 251 

251オペレーティングシステムの URL オープナーでハンドラーを呼び出します。252オペレーティングシステムの URL オープナーでハンドラーを呼び出します。

252 253 


307### 拡張機能設定308### 拡張機能設定

308 309 

309| 設定 | デフォルト | 説明 |310| 設定 | デフォルト | 説明 |

310| --------------------------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |311| ----------------------------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

311| `useTerminal` | `false` | グラフィカルパネルの代わりにターミナルモードで Claude を起動します。 |312| `useTerminal` | `false` | グラフィカルパネルの代わりにターミナルモードで Claude を起動します。 |

312| `initialPermissionMode` | `default` | 新しい会話の承認プロンプトを制御します。`default`、`plan`、`acceptEdits`、または `bypassPermissions`。[permission modes](/ja/permission-modes) を参照してください。 |313| `initialPermissionMode` | `default` | 新しい会話の承認プロンプトを制御します。`default`、`plan`、`acceptEdits`、または `bypassPermissions`。[permission modes](/ja/permission-modes) を参照してください。 |

313| `preferredLocation` | `panel` | Claude が開く場所:`sidebar`(右)または `panel`(新しいタブ) |314| `preferredLocation` | `panel` | Claude が開く場所:`sidebar`(右)または `panel`(新しいタブ) |

314| `autosave` | `true` | Claude が読み取りまたは書き込みする前にファイルを自動保存します。 |315| `autosave` | `true` | Claude が読み取りまたは書き込みする前にファイルを自動保存します。 |

315| `useCtrlEnterToSend` | `false` | Enter の代わりに Ctrl/Cmd+Enter を使用してプロンプトを送信します。 |316| `useCtrlEnterToSend` | `false` | Enter の代わりに Ctrl/Cmd+Enter を使用してプロンプトを送信します。 |

316| `enableNewConversationShortcut` | `false` | Cmd/Ctrl+N を有効にして新しい会話を開始します。 |317| `enableNewConversationShortcut` | `false` | Cmd/Ctrl+N を有効にして新しい会話を開始します。 |

318| `enableReopenClosedSessionShortcut` | `true` | Cmd/Ctrl+Shift+T を使用して、最近閉じた Claude セッションタブを再度開きます。最後に閉じたタブが Claude セッションではなかった場合、このショートカットは VS Code の通常の reopen-closed-editor コマンドを実行します。 |

317| `hideOnboarding` | `false` | オンボーディングチェックリスト(卒業キャップアイコン)を非表示にします。 |319| `hideOnboarding` | `false` | オンボーディングチェックリスト(卒業キャップアイコン)を非表示にします。 |

318| `respectGitIgnore` | `true` | ファイル検索から .gitignore パターンを除外します。 |320| `respectGitIgnore` | `true` | ファイル検索から .gitignore パターンを除外します。 |

319| `usePythonEnvironment` | `true` | Claude を実行するときにワークスペースの Python 環境をアクティベートします。Python 拡張機能が必要です。 |321| `usePythonEnvironment` | `true` | Claude を実行するときにワークスペースの Python 環境をアクティベートします。Python 拡張機能が必要です。 |