6 6
7> CLAUDE.md、Skills、subagents、hooks、MCP、plugins をいつ使用するかを理解します。7> CLAUDE.md、Skills、subagents、hooks、MCP、plugins をいつ使用するかを理解します。
8 8
9Claude Code は、コードについて推論するモデルと、ファイル操作、検索、実行、ウェブアクセス用の[組み込みツール](/docs/ja/how-claude-code-works.md#tools)を組み合わせています。組み込みツールはほとんどのコーディングタスクをカバーしています。このガイドは拡張レイヤーについて説明します。つまり、Claude が何を知るかをカスタマイズし、外部サービスに接続し、ワークフローを自動化するために追加する機能です。9Claude Code は、コードについて推論するモデルと、ファイル操作、検索、実行、ウェブアクセス用の[組み込みツール](https://code.claude.com/docs/ja/how-claude-code-works.md#tools)を組み合わせています。組み込みツールはほとんどのコーディングタスクをカバーしています。このガイドは拡張レイヤーについて説明します。つまり、Claude が何を知るかをカスタマイズし、外部サービスに接続し、ワークフローを自動化するために追加する機能です。
10 10
11> [!NOTE]11> [!NOTE]
12>12>
13> コア agentic ループがどのように機能するかについては、[How Claude Code works](/docs/ja/how-claude-code-works.md) を参照してください。13> コア agentic ループがどのように機能するかについては、[How Claude Code works](https://code.claude.com/docs/ja/how-claude-code-works.md) を参照してください。
14 14
15**Claude Code は初めてですか?** [CLAUDE.md](/docs/ja/memory.md) でプロジェクト規約を開始します。その後、[特定のトリガーが発生したときに](#build-your-setup-over-time)他の拡張機能を追加してください。15**Claude Code は初めてですか?** [CLAUDE.md](https://code.claude.com/docs/ja/memory.md) でプロジェクト規約を開始します。その後、[特定のトリガーが発生したときに](#build-your-setup-over-time)他の拡張機能を追加してください。
16 16
17## 概要17## 概要
18 18
19拡張機能は agentic ループのさまざまな部分に接続します。19拡張機能は agentic ループのさまざまな部分に接続します。
20 20
21* **[CLAUDE.md](/docs/ja/memory.md)** は、Claude がすべてのセッションで見る永続的なコンテキストを追加します21* **[CLAUDE.md](https://code.claude.com/docs/ja/memory.md)** は、Claude がすべてのセッションで見る永続的なコンテキストを追加します
22* **[Output styles](/docs/ja/output-styles.md)** はすべてのセッションのすべての応答に対して Claude の役割、トーン、応答形式を設定します22* **[Output styles](https://code.claude.com/docs/ja/output-styles.md)** はすべてのセッションのすべての応答に対して Claude の役割、トーン、応答形式を設定します
23* **[Skills](/docs/ja/skills.md)** は再利用可能な知識と呼び出し可能なワークフローを追加します23* **[Skills](https://code.claude.com/docs/ja/skills.md)** は再利用可能な知識と呼び出し可能なワークフローを追加します
24* **[Code intelligence](/docs/ja/tools-reference.md#lsp-tool-behavior)** は Claude を言語サーバーに接続し、シンボルレベルのナビゲーションとライブ型エラーを実現します24* **[Code intelligence](https://code.claude.com/docs/ja/tools-reference.md#lsp-tool-behavior)** は Claude を言語サーバーに接続し、シンボルレベルのナビゲーションとライブ型エラーを実現します
25* **[MCP](/docs/ja/mcp.md)** は Claude を外部サービスとツールに接続します25* **[MCP](https://code.claude.com/docs/ja/mcp.md)** は Claude を外部サービスとツールに接続します
26* **[Subagents](/docs/ja/sub-agents.md)** は独立したコンテキストで独自のループを実行し、サマリーを返します26* **[Subagents](https://code.claude.com/docs/ja/sub-agents.md)** は独立したコンテキストで独自のループを実行し、サマリーを返します
27* **[Dynamic workflows](/docs/ja/workflows.md)** は Claude が書いたスクリプトから多くの subagents を実行し、1 つの結果を返します27* **[Dynamic workflows](https://code.claude.com/docs/ja/workflows.md)** は Claude が書いたスクリプトから多くの subagents を実行し、1 つの結果を返します
28* **[Cross-session messaging](/docs/ja/cross-session-messaging.md)** により、Claude はあなたのセッションの 1 つから別のセッションにメッセージを渡すことができます28* **[Cross-session messaging](https://code.claude.com/docs/ja/cross-session-messaging.md)** により、Claude はあなたのセッションの 1 つから別のセッションにメッセージを渡すことができます
29* **[Hooks](/docs/ja/hooks-guide.md)** はライフサイクルイベントで発火し、スクリプト、HTTP リクエスト、MCP ツール呼び出し、プロンプト、または subagent を実行できます29* **[Hooks](https://code.claude.com/docs/ja/hooks-guide.md)** はライフサイクルイベントで発火し、スクリプト、HTTP リクエスト、MCP ツール呼び出し、プロンプト、または subagent を実行できます
30* **[Plugins](/docs/ja/plugins/overview.md)** と **[marketplaces](/docs/ja/plugins/overview.md)** はこれらの機能をパッケージ化して配布します30* **[Plugins](https://code.claude.com/docs/ja/plugins/overview.md)** と **[marketplaces](https://code.claude.com/docs/ja/plugins/overview.md)** はこれらの機能をパッケージ化して配布します
31 31
32[Skills](/docs/ja/skills.md) は最も柔軟な拡張機能です。スキルは知識、ワークフロー、または指示を含むマークダウンファイルです。`/deploy` のようなコマンドでスキルを呼び出すことができます。または Claude は関連する場合に自動的にスキルをロードできます。スキルは現在の会話で実行することも、subagents を介して独立したコンテキストで実行することもできます。32[Skills](https://code.claude.com/docs/ja/skills.md) は最も柔軟な拡張機能です。スキルは知識、ワークフロー、または指示を含むマークダウンファイルです。`/deploy` のようなコマンドでスキルを呼び出すことができます。または Claude は関連する場合に自動的にスキルをロードできます。スキルは現在の会話で実行することも、subagents を介して独立したコンテキストで実行することもできます。
33 33
34## 目的に合わせて機能を選ぶ34## 目的に合わせて機能を選ぶ
35 35
38| 機能 | 機能の内容 | 使用する場面 | 例 |38| 機能 | 機能の内容 | 使用する場面 | 例 |
39| - | - | - | - |39| - | - | - | - |
40| **CLAUDE.md** | すべての会話で読み込まれる永続的なコンテキスト | プロジェクトの規約、「常に X を行う」ルール | 「npm ではなく pnpm を使用する。コミット前にテストを実行する。」 |40| **CLAUDE.md** | すべての会話で読み込まれる永続的なコンテキスト | プロジェクトの規約、「常に X を行う」ルール | 「npm ではなく pnpm を使用する。コミット前にテストを実行する。」 |
41| **[出力スタイル](/docs/ja/output-styles.md)** | セッション全体にわたって Claude の役割、トーン、応答形式を設定する指示 | すべての応答に適用したい口調、長さ、形式、またはソフトウェアエンジニア以外の役割で Claude を動作させる場合 | 応答を短くする組み込みの Concise スタイル、すべての質問にまず図で答えるカスタムスタイル |41| **[出力スタイル](https://code.claude.com/docs/ja/output-styles.md)** | セッション全体にわたって Claude の役割、トーン、応答形式を設定する指示 | すべての応答に適用したい口調、長さ、形式、またはソフトウェアエンジニア以外の役割で Claude を動作させる場合 | 応答を短くする組み込みの Concise スタイル、すべての質問にまず図で答えるカスタムスタイル |
42| **スキル** | Claude が使用できる指示、知識、ワークフロー | 再利用可能なコンテンツ、リファレンスドキュメント、繰り返し可能なタスク | `/deploy` でデプロイチェックリストを実行する、エンドポイントのパターンを含む API ドキュメントのスキル |42| **スキル** | Claude が使用できる指示、知識、ワークフロー | 再利用可能なコンテンツ、リファレンスドキュメント、繰り返し可能なタスク | `/deploy` でデプロイチェックリストを実行する、エンドポイントのパターンを含む API ドキュメントのスキル |
43| **サブエージェント** | 要約された結果を返す分離された実行コンテキスト | コンテキストの分離、並列タスク、専門化されたワーカー | 多数のファイルを読み込むものの、主要な調査結果のみを返すリサーチタスク |43| **サブエージェント** | 要約された結果を返す分離された実行コンテキスト | コンテキストの分離、並列タスク、専門化されたワーカー | 多数のファイルを読み込むものの、主要な調査結果のみを返すリサーチタスク |
44| **[動的ワークフロー](/docs/ja/workflows.md)** | 多数のサブエージェントをバックグラウンドで実行する、Claude が作成するスクリプト | 少数のサブエージェントでは収まりきらない作業、またはクロスチェックしたい調査結果 | コードベース全体を監査し、2 つ目のエージェント群が各調査結果を検証する |44| **[動的ワークフロー](https://code.claude.com/docs/ja/workflows.md)** | 多数のサブエージェントをバックグラウンドで実行する、Claude が作成するスクリプト | 少数のサブエージェントでは収まりきらない作業、またはクロスチェックしたい調査結果 | コードベース全体を監査し、2 つ目のエージェント群が各調査結果を検証する |
45| **[セッション間メッセージング](/docs/ja/cross-session-messaging.md)** | Claude がユーザーのあるセッションから別のセッションにメッセージを届ける | ユーザー自身が実行している複数のセッションで、タスクの途中で互いの調査結果が必要な場合 | あるセッションが、自分の加えた変更によって別のセッションの作業の前提が壊れることを警告する |45| **[セッション間メッセージング](https://code.claude.com/docs/ja/cross-session-messaging.md)** | Claude がユーザーのあるセッションから別のセッションにメッセージを届ける | ユーザー自身が実行している複数のセッションで、タスクの途中で互いの調査結果が必要な場合 | あるセッションが、自分の加えた変更によって別のセッションの作業の前提が壊れることを警告する |
46| **[コードインテリジェンス](/docs/ja/tools-reference.md#lsp-tool-behavior)** | 言語サーバーによるナビゲーションと診断 | 型付き言語、grep では遅いまたは不正確な大規模コードベース | ファイル全体を読む代わりにシンボルの定義へジャンプする |46| **[コードインテリジェンス](https://code.claude.com/docs/ja/tools-reference.md#lsp-tool-behavior)** | 言語サーバーによるナビゲーションと診断 | 型付き言語、grep では遅いまたは不正確な大規模コードベース | ファイル全体を読む代わりにシンボルの定義へジャンプする |
47| **MCP** | 外部サービスに接続する | 外部データやアクション | データベースへのクエリ、Slack への投稿、ブラウザーの操作 |47| **MCP** | 外部サービスに接続する | 外部データやアクション | データベースへのクエリ、Slack への投稿、ブラウザーの操作 |
48| **フック** | イベントによってトリガーされるスクリプト、HTTP リクエスト、MCP ツール呼び出し、プロンプト、またはサブエージェント | 一致するすべてのイベントで必ず実行する必要がある自動化 | ファイルを編集するたびに ESLint を実行する |48| **フック** | イベントによってトリガーされるスクリプト、HTTP リクエスト、MCP ツール呼び出し、プロンプト、またはサブエージェント | 一致するすべてのイベントで必ず実行する必要がある自動化 | ファイルを編集するたびに ESLint を実行する |
49| **[アーティファクト](/docs/ja/artifacts.md)** | セッションの出力を非公開のインタラクティブな Web ページとして公開する | ターミナルのテキストではなく視覚的に確認または共有したい出力 | Claude の調査に合わせて更新されるインシデントのタイムライン |49| **[アーティファクト](https://code.claude.com/docs/ja/artifacts.md)** | セッションの出力を非公開のインタラクティブな Web ページとして公開する | ターミナルのテキストではなく視覚的に確認または共有したい出力 | Claude の調査に合わせて更新されるインシデントのタイムライン |
50 50
51**[プラグイン](/docs/ja/plugins/overview.md)** はパッケージングのレイヤーです。プラグインは、スキル、フック、サブエージェント、MCP サーバーを 1 つのインストール可能な単位にまとめます。プラグインのスキルには名前空間が付けられる(`/my-plugin:review` のように)ため、複数のプラグインを共存させることができます。同じセットアップを複数のリポジトリで再利用したい場合や、**[マーケットプレイス](/docs/ja/plugins/overview.md)** を通じて他のユーザーに配布したい場合は、プラグインを使用します。51**[プラグイン](https://code.claude.com/docs/ja/plugins/overview.md)** はパッケージングのレイヤーです。プラグインは、スキル、フック、サブエージェント、MCP サーバーを 1 つのインストール可能な単位にまとめます。プラグインのスキルには名前空間が付けられる(`/my-plugin:review` のように)ため、複数のプラグインを共存させることができます。同じセットアップを複数のリポジトリで再利用したい場合や、**[マーケットプレイス](https://code.claude.com/docs/ja/plugins/overview.md)** を通じて他のユーザーに配布したい場合は、プラグインを使用します。
52 52
53### セットアップを段階的に構築する53### セットアップを段階的に構築する
54 54
56 56
57| きっかけ | 追加するもの |57| きっかけ | 追加するもの |
58| :- | :- |58| :- | :- |
59| Claude が規約やコマンドを 2 回間違えた | [CLAUDE.md](/docs/ja/memory.md) に追加する |59| Claude が規約やコマンドを 2 回間違えた | [CLAUDE.md](https://code.claude.com/docs/ja/memory.md) に追加する |
60| Claude に短くする、もっと説明する、同じ形式で答えるよう何度も求めている | [出力スタイル](/docs/ja/output-styles.md)を設定する |60| Claude に短くする、もっと説明する、同じ形式で答えるよう何度も求めている | [出力スタイル](https://code.claude.com/docs/ja/output-styles.md)を設定する |
61| タスクを開始するために同じプロンプトを何度も入力している | ユーザーが呼び出せる[スキル](/docs/ja/skills.md)として保存する |61| タスクを開始するために同じプロンプトを何度も入力している | ユーザーが呼び出せる[スキル](https://code.claude.com/docs/ja/skills.md)として保存する |
62| 同じプレイブックや複数ステップの手順をチャットに貼り付けるのが 3 回目になった | [スキル](/docs/ja/skills.md)としてまとめる |62| 同じプレイブックや複数ステップの手順をチャットに貼り付けるのが 3 回目になった | [スキル](https://code.claude.com/docs/ja/skills.md)としてまとめる |
63| Claude が参照できないブラウザーのタブからデータを何度もコピーしている | そのシステムを [MCP サーバー](/docs/ja/mcp.md)として接続する |63| Claude が参照できないブラウザーのタブからデータを何度もコピーしている | そのシステムを [MCP サーバー](https://code.claude.com/docs/ja/mcp.md)として接続する |
64| Claude がシンボルの定義箇所や使用箇所を見つけるために多数のファイルを読んでいる | 使用している言語向けの[コードインテリジェンスプラグイン](/docs/ja/plugins/code-intelligence.md)をインストールする |64| Claude がシンボルの定義箇所や使用箇所を見つけるために多数のファイルを読んでいる | 使用している言語向けの[コードインテリジェンスプラグイン](https://code.claude.com/docs/ja/plugins/code-intelligence.md)をインストールする |
65| 付随的なタスクが、後で参照しない出力で会話を埋め尽くしている | [サブエージェント](/docs/ja/sub-agents.md)経由で実行する |65| 付随的なタスクが、後で参照しない出力で会話を埋め尽くしている | [サブエージェント](https://code.claude.com/docs/ja/sub-agents.md)経由で実行する |
66| 指示しなくても毎回何かを実行させたい | [フック](/docs/ja/hooks-guide.md)を作成する |66| 指示しなくても毎回何かを実行させたい | [フック](https://code.claude.com/docs/ja/hooks-guide.md)を作成する |
67| 2 つ目のリポジトリで同じセットアップが必要になった | [プラグイン](/docs/ja/plugins/overview.md)としてパッケージ化する |67| 2 つ目のリポジトリで同じセットアップが必要になった | [プラグイン](https://code.claude.com/docs/ja/plugins/overview.md)としてパッケージ化する |
68 68
69同じきっかけは、既存の設定を更新すべきタイミングも教えてくれます。繰り返される間違いや何度も出てくるレビューコメントは、チャットでのその場限りの修正ではなく、CLAUDE.md を編集すべきものです。手作業で何度も調整しているワークフローは、改訂が必要なスキルです。69同じきっかけは、既存の設定を更新すべきタイミングも教えてくれます。繰り返される間違いや何度も出てくるレビューコメントは、チャットでのその場限りの修正ではなく、CLAUDE.md を編集すべきものです。手作業で何度も調整しているワークフローは、改訂が必要なスキルです。
70 70
83| - | - | - |83| - | - | - |
84| **概要** | 再利用可能な指示、知識、またはワークフロー | 独自のコンテキストを持つ分離されたワーカー |84| **概要** | 再利用可能な指示、知識、またはワークフロー | 独自のコンテキストを持つ分離されたワーカー |
85| **主な利点** | コンテキスト間でコンテンツを共有できる | コンテキストの分離。作業は別の場所で行われ、要約のみが返される |85| **主な利点** | コンテキスト間でコンテンツを共有できる | コンテキストの分離。作業は別の場所で行われ、要約のみが返される |
86| **[コンテキストウィンドウ](/docs/ja/context-window.md)への影響** | メインのウィンドウに追加される | 独自の入力トークンと出力トークンを持つ別のウィンドウを使用する |86| **[コンテキストウィンドウ](https://code.claude.com/docs/ja/context-window.md)への影響** | メインのウィンドウに追加される | 独自の入力トークンと出力トークンを持つ別のウィンドウを使用する |
87| **最適な用途** | 参考資料、呼び出し可能なワークフロー | 多数のファイルを読むタスク、並列作業、専門化されたワーカー |87| **最適な用途** | 参考資料、呼び出し可能なワークフロー | 多数のファイルを読むタスク、並列作業、専門化されたワーカー |
88 88
89**スキルには参照型とアクション型があります。** 参照型スキルは、Claude がセッション全体で使用する知識(API スタイルガイドなど)を提供します。アクション型スキルは、Claude に特定の処理を実行させます(デプロイワークフローを実行する `/deploy` など)。89**スキルには参照型とアクション型があります。** 参照型スキルは、Claude がセッション全体で使用する知識(API スタイルガイドなど)を提供します。アクション型スキルは、Claude に特定の処理を実行させます(デプロイワークフローを実行する `/deploy` など)。
90 90
91コンテキストの分離が必要な場合や、コンテキストウィンドウがいっぱいになりつつある場合は、**サブエージェントを使用します**。サブエージェントは数十のファイルを読んだり広範な検索を実行したりすることがありますが、メインの会話が受け取るのは要約のみです。サブエージェントの作業はメインのコンテキストを消費しないため、途中の作業を表示したままにする必要がない場合にも便利です。カスタムサブエージェントは独自の指示を持つことができ、スキルを事前に読み込むこともできます。91コンテキストの分離が必要な場合や、コンテキストウィンドウがいっぱいになりつつある場合は、**サブエージェントを使用します**。サブエージェントは数十のファイルを読んだり広範な検索を実行したりすることがありますが、メインの会話が受け取るのは要約のみです。サブエージェントの作業はメインのコンテキストを消費しないため、途中の作業を表示したままにする必要がない場合にも便利です。カスタムサブエージェントは独自の指示を持つことができ、スキルを事前に読み込むこともできます。
92 92
93**両者は組み合わせられます。** サブエージェントは特定のスキルを事前に読み込むことができます(`skills:` フィールド)。スキルは `context: fork` を使用して分離されたコンテキストで実行できます。詳細については[スキル](/docs/ja/skills.md)を参照してください。93**両者は組み合わせられます。** サブエージェントは特定のスキルを事前に読み込むことができます(`skills:` フィールド)。スキルは `context: fork` を使用して分離されたコンテキストで実行できます。詳細については[スキル](https://code.claude.com/docs/ja/skills.md)を参照してください。
94 94
95**CLAUDE.md とスキル**95**CLAUDE.md とスキル**
96 96
107 107
108Claude が時々必要とする参考資料(API ドキュメント、スタイルガイド)や、`/<name>` でトリガーするワークフロー(デプロイ、レビュー、リリース)であれば、**スキルに記述します**。108Claude が時々必要とする参考資料(API ドキュメント、スタイルガイド)や、`/<name>` でトリガーするワークフロー(デプロイ、レビュー、リリース)であれば、**スキルに記述します**。
109 109
110**目安:** CLAUDE.md は 200 行以内に収めます。長くなってきたら、参照用のコンテンツをスキルに移すか、[`.claude/rules/`](/docs/ja/memory#organize-rules-with-claude/rules/) ファイルに分割します。110**目安:** CLAUDE.md は 200 行以内に収めます。長くなってきたら、参照用のコンテンツをスキルに移すか、[`.claude/rules/`](https://code.claude.com/docs/ja/memory#organize-rules-with-claude/rules/) ファイルに分割します。
111 111
112**CLAUDE.md と出力スタイル**112**CLAUDE.md と出力スタイル**
113 113
116| 観点 | CLAUDE.md | 出力スタイル |116| 観点 | CLAUDE.md | 出力スタイル |
117| - | - | - |117| - | - | - |
118| **保持する内容** | プロジェクトに関する事実とルール | 役割、トーン、応答形式 |118| **保持する内容** | プロジェクトに関する事実とルール | 役割、トーン、応答形式 |
119| **切り替え** | 常に読み込まれる | 一度に有効なのは 1 つ。いつでも[スタイルを切り替え](/docs/ja/output-styles.md#change-your-output-style)られる |119| **切り替え** | 常に読み込まれる | 一度に有効なのは 1 つ。いつでも[スタイルを切り替え](https://code.claude.com/docs/ja/output-styles.md#change-your-output-style)られる |
120| **最適な用途** | ビルドコマンド、規約、「X は決して行わない」ルール | 短い応答、コードに添えた説明、エンジニアリング以外の役割 |120| **最適な用途** | ビルドコマンド、規約、「X は決して行わない」ルール | 短い応答、コードに添えた説明、エンジニアリング以外の役割 |
121 121
122どのスタイルを使用していてもプロジェクトに当てはまること(コーディング規約、ビルドコマンド、プロジェクト構造)であれば、**CLAUDE.md に記述します**。122どのスタイルを使用していてもプロジェクトに当てはまること(コーディング規約、ビルドコマンド、プロジェクト構造)であれば、**CLAUDE.md に記述します**。
123 123
124応答そのものに関すること(長さ、形式、Claude がどの程度説明するか、あるいはライティングアシスタントのような別の役割)で、後でオフに戻す可能性があるものであれば、**出力スタイルを使用します**。Claude Code には[組み込みスタイル](/docs/ja/output-styles.md#built-in-output-styles)が用意されており、独自のスタイルを作成することもできます。124応答そのものに関すること(長さ、形式、Claude がどの程度説明するか、あるいはライティングアシスタントのような別の役割)で、後でオフに戻す可能性があるものであれば、**出力スタイルを使用します**。Claude Code には[組み込みスタイル](https://code.claude.com/docs/ja/output-styles.md#built-in-output-styles)が用意されており、独自のスタイルを作成することもできます。
125 125
126**両者は組み合わせられます。** どのスタイルを選んでも、CLAUDE.md は読み込まれたままです。Claude はどちらも指示として従うため、どちらも強制されるものではありません。毎回必ず実行する必要があることには、[フック](/docs/ja/hooks-guide.md)を使用してください。126**両者は組み合わせられます。** どのスタイルを選んでも、CLAUDE.md は読み込まれたままです。Claude はどちらも指示として従うため、どちらも強制されるものではありません。毎回必ず実行する必要があることには、[フック](https://code.claude.com/docs/ja/hooks-guide.md)を使用してください。
127 127
128**CLAUDE.md とルールとスキル**128**CLAUDE.md とルールとスキル**
129 129
137 137
138すべてのセッションで必要な指示(ビルドコマンド、テストの規約、プロジェクトのアーキテクチャ)には **CLAUDE.md を使用します**。138すべてのセッションで必要な指示(ビルドコマンド、テストの規約、プロジェクトのアーキテクチャ)には **CLAUDE.md を使用します**。
139 139
140CLAUDE.md を要点に絞るには**ルールを使用します**。[`paths` フロントマター](/docs/ja/memory#path-specific-rules)を持つルールは、Claude が一致するファイルを扱うときにのみ読み込まれるため、コンテキストを節約できます。140CLAUDE.md を要点に絞るには**ルールを使用します**。[`paths` フロントマター](https://code.claude.com/docs/ja/memory#path-specific-rules)を持つルールは、Claude が一致するファイルを扱うときにのみ読み込まれるため、コンテキストを節約できます。
141 141
142Claude が時々しか必要としないコンテンツ(API ドキュメントや、`/<name>` でトリガーするデプロイチェックリストなど)には**スキルを使用します**。142Claude が時々しか必要としないコンテンツ(API ドキュメントや、`/<name>` でトリガーするデプロイチェックリストなど)には**スキルを使用します**。
143 143
146どちらもメインの会話の外で作業を行います。サブエージェントの場合、次に何を実行するかは Claude がターンごとに決定します。ワークフローの場合は、スクリプトが決定します。146どちらもメインの会話の外で作業を行います。サブエージェントの場合、次に何を実行するかは Claude がターンごとに決定します。ワークフローの場合は、スクリプトが決定します。
147 147
148* **サブエージェント**は Claude が生成するワーカーで、それぞれが生成元の会話に要約を返します148* **サブエージェント**は Claude が生成するワーカーで、それぞれが生成元の会話に要約を返します
149* **[動的ワークフロー](/docs/ja/workflows.md)** は Claude が作成するスクリプトで、多数のサブエージェントをバックグラウンドで実行し、1 つの結果を返します149* **[動的ワークフロー](https://code.claude.com/docs/ja/workflows.md)** は Claude が作成するスクリプトで、多数のサブエージェントをバックグラウンドで実行し、1 つの結果を返します
150 150
151質問の調査、主張の検証、ファイルのレビューなど、素早く集中して作業するワーカーが必要な場合は、**サブエージェントを使用します**。サブエージェントが作業を行って要約を返すため、メインの会話はすっきりしたままです。Claude が生成時に[名前を付けた](/docs/ja/sub-agents.md#subagent-names)サブエージェントは、[互いにメッセージを送る](/docs/ja/sub-agents.md#what-loads-at-startup)こともできます。151質問の調査、主張の検証、ファイルのレビューなど、素早く集中して作業するワーカーが必要な場合は、**サブエージェントを使用します**。サブエージェントが作業を行って要約を返すため、メインの会話はすっきりしたままです。Claude が生成時に[名前を付けた](https://code.claude.com/docs/ja/sub-agents.md#subagent-names)サブエージェントは、[互いにメッセージを送る](https://code.claude.com/docs/ja/sub-agents.md#what-loads-at-startup)こともできます。
152 152
153コードベース全体の監査、大規模な移行、複数の観点から作成する計画など、ジョブが[少数のサブエージェントでは収まりきらない](/docs/ja/workflows.md#when-to-use-a-workflow)場合や、調査結果を確認する前にクロスチェックしたい場合は、**動的ワークフローを使用します**。開始するには、[プロンプトでワークフローを依頼します](/docs/ja/workflows.md#ask-for-a-workflow-in-your-prompt)。153コードベース全体の監査、大規模な移行、複数の観点から作成する計画など、ジョブが[少数のサブエージェントでは収まりきらない](https://code.claude.com/docs/ja/workflows.md#when-to-use-a-workflow)場合や、調査結果を確認する前にクロスチェックしたい場合は、**動的ワークフローを使用します**。開始するには、[プロンプトでワークフローを依頼します](https://code.claude.com/docs/ja/workflows.md#ask-for-a-workflow-in-your-prompt)。
154 154
155**あるセッションの調査結果を別のセッションに渡すには**、最初のセッションの Claude に送信を依頼します。Claude は[セッション間メッセージング](/docs/ja/cross-session-messaging.md)でそれを届けます。[エージェントを並列実行する](/docs/ja/agents.md)では、作業を任せて後で確認するセッションを含め、複数の Claude を同時に実行するその他の方法を比較しています。155**あるセッションの調査結果を別のセッションに渡すには**、最初のセッションの Claude に送信を依頼します。Claude は[セッション間メッセージング](https://code.claude.com/docs/ja/cross-session-messaging.md)でそれを届けます。[エージェントを並列実行する](https://code.claude.com/docs/ja/agents.md)では、作業を任せて後で確認するセッションを含め、複数の Claude を同時に実行するその他の方法を比較しています。
156 156
157**MCP とスキル**157**MCP とスキル**
158 158
177| 観点 | フック | スキル |177| 観点 | フック | スキル |
178| - | - | - |178| - | - | - |
179| **実行するもの** | シェルコマンド、HTTP リクエスト、MCP ツール呼び出し、LLM プロンプト、またはサブエージェント | Claude が読んで従う指示 |179| **実行するもの** | シェルコマンド、HTTP リクエスト、MCP ツール呼び出し、LLM プロンプト、またはサブエージェント | Claude が読んで従う指示 |
180| **トリガー** | `PostToolUse` や `SessionStart` などの[ライフサイクルイベント](/docs/ja/hooks.md#hook-events) | ユーザーが `/<name>` と入力するか、Claude が説明をタスクに一致すると判断したとき |180| **トリガー** | `PostToolUse` や `SessionStart` などの[ライフサイクルイベント](https://code.claude.com/docs/ja/hooks.md#hook-events) | ユーザーが `/<name>` と入力するか、Claude が説明をタスクに一致すると判断したとき |
181| **決定性** | Claude の判断なしにイベントで発火する | Claude が指示を解釈するため、結果は変わり得る |181| **決定性** | Claude の判断なしにイベントで発火する | Claude が指示を解釈するため、結果は変わり得る |
182| **コンテキストのコスト** | フックが出力を返さない限りゼロ | 説明は各セッションで読み込まれ、全内容は使用時に読み込まれる |182| **コンテキストのコスト** | フックが出力を返さない限りゼロ | 説明は各セッションで読み込まれ、全内容は使用時に読み込まれる |
183| **最適な用途** | 編集後の lint、安全でないコマンドのブロック、ログ記録、通知 | 推論が必要なワークフロー、参考資料、複数ステップのタスク |183| **最適な用途** | 編集後の lint、安全でないコマンドのブロック、ログ記録、通知 | 推論が必要なワークフロー、参考資料、複数ステップのタスク |
194 194
195機能は、ユーザー全体、プロジェクトごと、プラグイン経由、または管理ポリシーを通じてなど、複数のレベルで定義できます。また、CLAUDE.md ファイルをサブディレクトリにネストしたり、モノレポの特定のパッケージにスキルを配置したりすることもできます。同じ機能が複数のレベルに存在する場合、次のように階層化されます。195機能は、ユーザー全体、プロジェクトごと、プラグイン経由、または管理ポリシーを通じてなど、複数のレベルで定義できます。また、CLAUDE.md ファイルをサブディレクトリにネストしたり、モノレポの特定のパッケージにスキルを配置したりすることもできます。同じ機能が複数のレベルに存在する場合、次のように階層化されます。
196 196
197* **CLAUDE.md ファイル**は加算的です。すべてのレベルが同時に Claude のコンテキストにコンテンツを提供します。作業ディレクトリとその上位のファイルは起動時に読み込まれ、サブディレクトリのファイルはそこで作業するときに読み込まれます。指示が矛盾する場合、Claude は判断してそれらを調整します。[CLAUDE.md ファイルの読み込み方法](/docs/ja/memory.md#how-claude-md-files-load)を参照してください。197* **CLAUDE.md ファイル**は加算的です。すべてのレベルが同時に Claude のコンテキストにコンテンツを提供します。作業ディレクトリとその上位のファイルは起動時に読み込まれ、サブディレクトリのファイルはそこで作業するときに読み込まれます。指示が矛盾する場合、Claude は判断してそれらを調整します。[CLAUDE.md ファイルの読み込み方法](https://code.claude.com/docs/ja/memory.md#how-claude-md-files-load)を参照してください。
198* **スキルとサブエージェント**は名前で上書きされます。同じ名前が複数のレベルに存在する場合、優先順位に基づいて 1 つの定義が採用されます(スキルは managed > user > project、サブエージェントは managed > CLI フラグ > project > user > plugin)。プラグインのスキルは競合を避けるために[名前空間が付けられます](/docs/ja/plugins/components.md#skills)。[スキルの検出](/docs/ja/skills.md#resolve-skills-that-share-a-name)と[サブエージェントのスコープ](/docs/ja/sub-agents.md#choose-the-subagent-scope)を参照してください。198* **スキルとサブエージェント**は名前で上書きされます。同じ名前が複数のレベルに存在する場合、優先順位に基づいて 1 つの定義が採用されます(スキルは managed > user > project、サブエージェントは managed > CLI フラグ > project > user > plugin)。プラグインのスキルは競合を避けるために[名前空間が付けられます](https://code.claude.com/docs/ja/plugins/components.md#skills)。[スキルの検出](https://code.claude.com/docs/ja/skills.md#resolve-skills-that-share-a-name)と[サブエージェントのスコープ](https://code.claude.com/docs/ja/sub-agents.md#choose-the-subagent-scope)を参照してください。
199* **MCP サーバー**は名前で上書きされます(local > project > user)。[MCP のスコープ](/docs/ja/mcp.md#scope-hierarchy-and-precedence)を参照してください。199* **MCP サーバー**は名前で上書きされます(local > project > user)。[MCP のスコープ](https://code.claude.com/docs/ja/mcp.md#scope-hierarchy-and-precedence)を参照してください。
200* **フック**はマージされます。登録されたすべてのフックは、ソースに関係なく一致するイベントで発火します。[フック](/docs/ja/hooks.md)を参照してください。200* **フック**はマージされます。登録されたすべてのフックは、ソースに関係なく一致するイベントで発火します。[フック](https://code.claude.com/docs/ja/hooks.md)を参照してください。
201 201
202### 機能を組み合わせる202### 機能を組み合わせる
203 203
214 214
215## コンテキストコストを理解する215## コンテキストコストを理解する
216 216
217追加する各機能は Claude のコンテキストの一部を消費します。多すぎるとコンテキストウィンドウがいっぱいになる可能性がありますが、Claude の効果を低下させるノイズを追加することもできます。スキルが正しくトリガーされない場合や、Claude が規約を失う場合があります。これらのトレードオフを理解することで、効果的なセットアップを構築するのに役立ちます。実行中のセッションでこれらの機能がどのように組み合わされるかのインタラクティブビューについては、[コンテキストウィンドウを探索する](/docs/ja/context-window.md) を参照してください。217追加する各機能は Claude のコンテキストの一部を消費します。多すぎるとコンテキストウィンドウがいっぱいになる可能性がありますが、Claude の効果を低下させるノイズを追加することもできます。スキルが正しくトリガーされない場合や、Claude が規約を失う場合があります。これらのトレードオフを理解することで、効果的なセットアップを構築するのに役立ちます。実行中のセッションでこれらの機能がどのように組み合わされるかのインタラクティブビューについては、[コンテキストウィンドウを探索する](https://code.claude.com/docs/ja/context-window.md) を参照してください。
218 218
219### 機能別のコンテキストコスト219### 機能別のコンテキストコスト
220 220
222 222
223| 機能 | ロード時期 | ロード内容 | コンテキストコスト |223| 機能 | ロード時期 | ロード内容 | コンテキストコスト |
224| - | - | - | - |224| - | - | - | - |
225| **CLAUDE.md** | セッション開始 | 完全なコンテンツ | すべてのリクエスト |225| **CLAUDE.md** | セッション開始 | セッション開始時にロードされる各ファイルの完全なコンテンツ | すべてのリクエスト |
226| **Output styles** | セッション開始、およびスタイルを切り替えるときに再度 | アクティブなスタイルの完全な指示。デフォルトスタイルの場合は何もロードされない | すべてのリクエスト |226| **Output styles** | セッション開始、およびスタイルを切り替えるときに再度 | アクティブなスタイルの完全な指示。デフォルトスタイルの場合は何もロードされない | すべてのリクエスト |
227| **Skills** | セッション開始 + 使用時 | 開始時の説明、使用時の完全なコンテンツ | 低い(毎リクエスト説明)\* |227| **Skills** | セッション開始 + 使用時 | 開始時の説明、使用時の完全なコンテンツ | 低い(毎リクエスト説明)\* |
228| **MCP サーバー** | セッション開始 | ツール名。完全なスキーマはオンデマンド | 低い(ツール使用まで) |228| **MCP サーバー** | セッション開始 | ツール名。完全なスキーマはオンデマンド | 低い(ツール使用まで) |
229| **Code intelligence** | ファイル編集後およびオンデマンド | 編集後の診断。シンボル検索時の定義、参照、型情報 | 低い。ファイル読み取りを削減 |229| **Code intelligence** | ファイル編集後およびオンデマンド | 編集後の診断。シンボル検索時の定義、参照、型情報 | 低い。ファイル読み取りを削減 |
230| **Subagents** | スポーン時 | 指定されたスキルを持つ新しいコンテキスト、または [fork](/docs/ja/sub-agents.md#fork-the-current-conversation) の親会話 | メインセッションから分離 |230| **Subagents** | スポーン時 | 指定されたスキルを持つ新しいコンテキスト、または [fork](https://code.claude.com/docs/ja/sub-agents.md#fork-the-current-conversation) の親会話 | メインセッションから分離 |
231| **Hooks** | トリガー時 | なし(外部で実行) | ゼロ(フックが追加コンテキストを返さない限り) |231| **Hooks** | トリガー時 | なし(外部で実行) | ゼロ(フックが追加コンテキストを返さない限り) |
232 232
233\*スキルのフロントマターで [`disable-model-invocation: true`](/docs/ja/skills#control-who-invokes-a-skill) を設定すると、その説明を Claude のコンテキストから除外できます。書いていないスキルの場合は、ファイルを編集せずに同じことを行うために設定で [`skillOverrides`](/docs/ja/skills#override-skill-visibility-from-settings) を設定します。233\*スキルのフロントマターで [`disable-model-invocation: true`](https://code.claude.com/docs/ja/skills#control-who-invokes-a-skill) を設定すると、その説明を Claude のコンテキストから除外できます。書いていないスキルの場合は、ファイルを編集せずに同じことを行うために設定で [`skillOverrides`](https://code.claude.com/docs/ja/skills#override-skill-visibility-from-settings) を設定します。
234 234
235### 機能がどのようにロードされるかを理解する235### 機能がどのようにロードされるかを理解する
236 236
242 242
243**時期:** セッション開始243**時期:** セッション開始
244 244
245**ロード内容:** すべての CLAUDE.md ファイル(管理、ユーザー、プロジェクトレベル)の完全なコンテンツ。245**ロード内容:** セッション開始時にロードされる各 CLAUDE.md ファイル(管理、ユーザー、プロジェクトレベル)の完全なコンテンツ。
246 246
247**継承:** Claude は作業ディレクトリからルートまで CLAUDE.md ファイルを読み取り、サブディレクトリにネストされたものを、それらのファイルにアクセスするときに検出します。詳細は [CLAUDE.md ファイルがどのようにロードされるか](/docs/ja/memory.md#how-claude-md-files-load) を参照してください。247**継承:** Claude は作業ディレクトリからルートまで CLAUDE.md ファイルを読み取り、サブディレクトリにネストされたものを、それらのファイルにアクセスするときに検出します。詳細は [CLAUDE.md ファイルがどのようにロードされるか](https://code.claude.com/docs/ja/memory.md#how-claude-md-files-load) を参照してください。ネストされた CLAUDE.md が[ファイルごとのサイズ制限](https://code.claude.com/docs/ja/memory.md#claude-ignores-the-end-of-my-subdirectory-claude-md)を超えている場合、Claude はファイルの先頭部分のみを受け取ります。
248 248
249> [!TIP]249> [!TIP]
250>250>
251> CLAUDE.md を 200 行以下に保ちます。リファレンスマテリアルをスキルに移動します。スキルはオンデマンドでロードされます。[チェックインされた CLAUDE.md のトリム提案を取得する](/docs/ja/memory.md#my-claude-md-is-too-large) には、`/doctor` を実行します。251> CLAUDE.md を 200 行以下に保ちます。リファレンスマテリアルをスキルに移動します。スキルはオンデマンドでロードされます。[チェックインされた CLAUDE.md のトリム提案を取得する](https://code.claude.com/docs/ja/memory.md#my-claude-md-is-too-large) には、`/doctor` を実行します。
252 252
253**Skills**253**Skills**
254 254
255スキルは Claude のツールキットの追加機能です。リファレンスマテリアル(API スタイルガイドなど)または `/<name>` でトリガーする呼び出し可能なワークフロー(`/deploy` など)です。Claude Code は `/code-review`、`/batch`、`/debug` などの[バンドルされたスキル](/docs/ja/commands.md) を備えており、すぐに機能します。独自のスキルを作成することもできます。255スキルは Claude のツールキットの追加機能です。リファレンスマテリアル(API スタイルガイドなど)または `/<name>` でトリガーする呼び出し可能なワークフロー(`/deploy` など)です。Claude Code は `/code-review`、`/batch`、`/debug` などの[バンドルされたスキル](https://code.claude.com/docs/ja/commands.md) を備えており、すぐに機能します。独自のスキルを作成することもできます。
256 256
257**時期:** スキルの設定によって異なります。デフォルトでは、説明はセッション開始時にロードされ、完全なコンテンツは使用時にロードされます。ユーザーのみのスキル(`disable-model-invocation: true`)の場合、呼び出すまで何もロードされません。257**時期:** スキルの設定によって異なります。デフォルトでは、説明はセッション開始時にロードされ、完全なコンテンツは使用時にロードされます。ユーザーのみのスキル(`disable-model-invocation: true`)の場合、呼び出すまで何もロードされません。
258 258
274 274
275**ロード内容:** 接続されたサーバーからのツール名とサーバー指示。完全な JSON スキーマは Claude が特定のツールを必要とするまで遅延されます。275**ロード内容:** 接続されたサーバーからのツール名とサーバー指示。完全な JSON スキーマは Claude が特定のツールを必要とするまで遅延されます。
276 276
277**コンテキストコスト:** [ツール検索](/docs/ja/mcp.md#scale-with-mcp-tool-search) はデフォルトで有効になっているため、アイドル MCP ツールは最小限のコンテキストを消費します。277**コンテキストコスト:** [ツール検索](https://code.claude.com/docs/ja/mcp.md#scale-with-mcp-tool-search) はデフォルトで有効になっているため、アイドル MCP ツールは最小限のコンテキストを消費します。
278 278
279> [!TIP]279> [!TIP]
280>280>
281> `/mcp` を実行して各サーバーの接続ステータスを確認します。`/context all` を実行して、ロードされた各 MCP ツールが使用するトークン数を確認します。Claude Code は、リモートサーバーが切断された場合は[自動的に再接続](/docs/ja/mcp.md#automatic-reconnection) し、積極的に使用していないサーバーを切断できます。281> `/mcp` を実行して各サーバーの接続ステータスを確認します。`/context all` を実行して、ロードされた各 MCP ツールが使用するトークン数を確認します。Claude Code は、リモートサーバーが切断された場合は[自動的に再接続](https://code.claude.com/docs/ja/mcp.md#automatic-reconnection) し、積極的に使用していないサーバーを切断できます。
282 282
283**Code intelligence**283**Code intelligence**
284 284
290 290
291> [!TIP]291> [!TIP]
292>292>
293> LSP ツールは、言語の[コード intelligence プラグイン](/docs/ja/plugins/code-intelligence.md) をインストールするまで非アクティブです。293> LSP ツールは、言語の[コード intelligence プラグイン](https://code.claude.com/docs/ja/plugins/code-intelligence.md) をインストールするまで非アクティブです。
294 294
295**Subagents**295**Subagents**
296 296
300 300
301* エージェント独自のシステムプロンプト(Claude Code システムプロンプトではない)301* エージェント独自のシステムプロンプト(Claude Code システムプロンプトではない)
302* エージェントの `skills:` フィールドにリストされているスキルの完全なコンテンツ302* エージェントの `skills:` フィールドにリストされているスキルの完全なコンテンツ
303* CLAUDE.md と git ステータス。組み込みの Explore および Plan エージェントは[どちらもなしで開始](/docs/ja/sub-agents.md#what-loads-at-startup) し、定義で [`omitClaudeMd`](/docs/ja/sub-agents#supported-frontmatter-fields) を設定したエージェントは、ユーザー、プロジェクト、ローカル CLAUDE.md ファイルなしで開始します。303* CLAUDE.md と git ステータス。組み込みの Explore および Plan エージェントは[どちらもなしで開始](https://code.claude.com/docs/ja/sub-agents.md#what-loads-at-startup) し、定義で [`omitClaudeMd`](https://code.claude.com/docs/ja/sub-agents#supported-frontmatter-fields) を設定したエージェントは、ユーザー、プロジェクト、ローカル CLAUDE.md ファイルなしで開始します。
304* リードエージェントがプロンプトで渡すコンテキスト304* リードエージェントがプロンプトで渡すコンテキスト
305 305
306[fork](/docs/ja/sub-agents.md#fork-the-current-conversation) の場合、Claude Code は親の会話(これまでのところ)、システムプロンプト、ツールをロードします。306[fork](https://code.claude.com/docs/ja/sub-agents.md#fork-the-current-conversation) の場合、Claude Code は親の会話(これまでのところ)、システムプロンプト、ツールをロードします。
307 307
308**コンテキストコスト:** メインセッションから分離。308**コンテキストコスト:** メインセッションから分離。
309 309
313 313
314**Hooks**314**Hooks**
315 315
316**時期:** トリガー時。Claude Code はツール実行、セッション境界、プロンプト送信、権限リクエスト、コンパクション などの特定のライフサイクルイベントで hooks を実行します。完全なリストは [Hooks](/docs/ja/hooks.md) を参照してください。316**時期:** トリガー時。Claude Code はツール実行、セッション境界、プロンプト送信、権限リクエスト、コンパクション などの特定のライフサイクルイベントで hooks を実行します。完全なリストは [Hooks](https://code.claude.com/docs/ja/hooks.md) を参照してください。
317 317
318**ロード内容:** デフォルトではなし。フックは外部で実行されます。318**ロード内容:** デフォルトではなし。フックは外部で実行されます。
319 319
327 327
328各機能には、セットアップ指示、例、設定オプションを含む独自のガイドがあります。328各機能には、セットアップ指示、例、設定オプションを含む独自のガイドがあります。
329 329
330> **[CLAUDE.md](/docs/ja/memory.md)**330> **[CLAUDE.md](https://code.claude.com/docs/ja/memory.md)**
331>331>
332> プロジェクトコンテキスト、規約、指示を保存332> プロジェクトコンテキスト、規約、指示を保存
333 333
334> **[Skills](/docs/ja/skills.md)**334> **[Skills](https://code.claude.com/docs/ja/skills.md)**
335>335>
336> Claude にドメイン専門知識と再利用可能なワークフローを提供336> Claude にドメイン専門知識と再利用可能なワークフローを提供
337 337
338> **[Subagents](/docs/ja/sub-agents.md)**338> **[Subagents](https://code.claude.com/docs/ja/sub-agents.md)**
339>339>
340> 独立したコンテキストに作業をオフロード340> 独立したコンテキストに作業をオフロード
341 341
342> **[Dynamic workflows](/docs/ja/workflows.md)**342> **[Dynamic workflows](https://code.claude.com/docs/ja/workflows.md)**
343>343>
344> 1 つのスクリプトから多くのサブエージェントを実行344> 1 つのスクリプトから多くのサブエージェントを実行
345 345
346> **[Cross-session messaging](/docs/ja/cross-session-messaging.md)**346> **[Cross-session messaging](https://code.claude.com/docs/ja/cross-session-messaging.md)**
347>347>
348> Claude が他のセッションにメッセージを送信できるようにする348> Claude が他のセッションにメッセージを送信できるようにする
349 349
350> **[MCP](/docs/ja/mcp.md)**350> **[MCP](https://code.claude.com/docs/ja/mcp.md)**
351>351>
352> Claude を外部サービスに接続352> Claude を外部サービスに接続
353 353
354> **[Hooks](/docs/ja/hooks-guide.md)**354> **[Hooks](https://code.claude.com/docs/ja/hooks-guide.md)**
355>355>
356> フックでアクションを自動化356> フックでアクションを自動化
357 357
358> **[Plugins](/docs/ja/plugins/overview.md)**358> **[Plugins](https://code.claude.com/docs/ja/plugins/overview.md)**
359>359>
360> 機能セットをバンドルして共有360> 機能セットをバンドルして共有
361 361
362> **[Marketplaces](/docs/ja/plugins/create-marketplace.md)**362> **[Marketplaces](https://code.claude.com/docs/ja/plugins/create-marketplace.md)**
363>363>
364> プラグインコレクションをホストして配布364> プラグインコレクションをホストして配布