6 6
7> CLAUDE.md、Skills、subagents、hooks、MCP、plugins をいつ使用するかを理解します。7> CLAUDE.md、Skills、subagents、hooks、MCP、plugins をいつ使用するかを理解します。
8 8
9Claude Code は、コードについて推論するモデルと、ファイル操作、検索、実行、ウェブアクセス用の[組み込みツール](/ja/how-claude-code-works#tools)を組み合わせています。組み込みツールはほとんどのコーディングタスクをカバーしています。このガイドは拡張レイヤーについて説明します。つまり、Claude が何を知るかをカスタマイズし、外部サービスに接続し、ワークフローを自動化するために追加する機能です。9Claude Code は、コードについて推論するモデルと、ファイル操作、検索、実行、ウェブアクセス用の[組み込みツール](/docs/ja/how-claude-code-works#tools)を組み合わせています。組み込みツールはほとんどのコーディングタスクをカバーしています。このガイドは拡張レイヤーについて説明します。つまり、Claude が何を知るかをカスタマイズし、外部サービスに接続し、ワークフローを自動化するために追加する機能です。
10 10
11<Note>11<Note>
12 コア agentic ループがどのように機能するかについては、[How Claude Code works](/ja/how-claude-code-works) を参照してください。12 コア agentic ループがどのように機能するかについては、[How Claude Code works](/docs/ja/how-claude-code-works) を参照してください。
13</Note>13</Note>
14 14
15**Claude Code は初めてですか?** [CLAUDE.md](/ja/memory) でプロジェクト規約を開始します。その後、[特定のトリガーが発生したときに](#build-your-setup-over-time)他の拡張機能を追加してください。15**Claude Code は初めてですか?** [CLAUDE.md](/docs/ja/memory) でプロジェクト規約を開始します。その後、[特定のトリガーが発生したときに](#build-your-setup-over-time)他の拡張機能を追加してください。
16 16
17<h2 id="overview">17<h2 id="overview">
18 概要18 概要
20 20
21拡張機能は agentic ループのさまざまな部分に接続します。21拡張機能は agentic ループのさまざまな部分に接続します。
22 22
23* **[CLAUDE.md](/ja/memory)** は、Claude がすべてのセッションで見る永続的なコンテキストを追加します23* **[CLAUDE.md](/docs/ja/memory)** は、Claude がすべてのセッションで見る永続的なコンテキストを追加します
24* **[Skills](/ja/skills)** は再利用可能な知識と呼び出し可能なワークフローを追加します24* **[Skills](/docs/ja/skills)** は再利用可能な知識と呼び出し可能なワークフローを追加します
25* **[Code intelligence](/ja/tools-reference#lsp-tool-behavior)** は Claude を言語サーバーに接続し、シンボルレベルのナビゲーションとライブ型エラーを実現します25* **[Code intelligence](/docs/ja/tools-reference#lsp-tool-behavior)** は Claude を言語サーバーに接続し、シンボルレベルのナビゲーションとライブ型エラーを実現します
26* **[MCP](/ja/mcp)** は Claude を外部サービスとツールに接続します26* **[MCP](/docs/ja/mcp)** は Claude を外部サービスとツールに接続します
27* **[Subagents](/ja/sub-agents)** は独立したコンテキストで独自のループを実行し、サマリーを返します27* **[Subagents](/docs/ja/sub-agents)** は独立したコンテキストで独自のループを実行し、サマリーを返します
28* **[Agent teams](/ja/agent-teams)** は、共有タスクとピアツーピアメッセージングを使用して複数の独立したセッションを調整します28* **[Dynamic workflows](/docs/ja/workflows)** は Claude が書いたスクリプトから多くの subagents を実行し、1 つの結果を返します
29* **[Hooks](/ja/hooks-guide)** はライフサイクルイベントで発火し、スクリプト、HTTP リクエスト、プロンプト、または subagent を実行できます29* **[Cross-session messaging](/docs/ja/cross-session-messaging)** により、Claude はあなたのセッションの 1 つから別のセッションにメッセージを渡すことができます
30* **[Plugins](/ja/plugins)** と **[marketplaces](/ja/plugin-marketplaces)** はこれらの機能をパッケージ化して配布します30* **[Hooks](/docs/ja/hooks-guide)** はライフサイクルイベントで発火し、スクリプト、HTTP リクエスト、MCP ツール呼び出し、プロンプト、または subagent を実行できます
31* **[Plugins](/docs/ja/plugins)** と **[marketplaces](/docs/ja/plugin-marketplaces)** はこれらの機能をパッケージ化して配布します
31 32
32[Skills](/ja/skills) は最も柔軟な拡張機能です。スキルは知識、ワークフロー、または指示を含むマークダウンファイルです。`/deploy` のようなコマンドでスキルを呼び出すことができます。または Claude は関連する場合に自動的にスキルをロードできます。スキルは現在の会話で実行することも、subagents を介して独立したコンテキストで実行することもできます。33[Skills](/docs/ja/skills) は最も柔軟な拡張機能です。スキルは知識、ワークフロー、または指示を含むマークダウンファイルです。`/deploy` のようなコマンドでスキルを呼び出すことができます。または Claude は関連する場合に自動的にスキルをロードできます。スキルは現在の会話で実行することも、subagents を介して独立したコンテキストで実行することもできます。
33 34
34<h2 id="match-features-to-your-goal">35<h2 id="match-features-to-your-goal">
35 機能をあなたの目標に合わせる36 機能をあなたの目標に合わせる
38機能は、Claude がすべてのセッションで見る常時オンのコンテキストから、あなたまたは Claude が呼び出すことができるオンデマンド機能、特定のイベントで実行されるバックグラウンド自動化まで、さまざまです。以下の表は、利用可能な機能と各機能が適切な場合を示しています。39機能は、Claude がすべてのセッションで見る常時オンのコンテキストから、あなたまたは Claude が呼び出すことができるオンデマンド機能、特定のイベントで実行されるバックグラウンド自動化まで、さまざまです。以下の表は、利用可能な機能と各機能が適切な場合を示しています。
39 40
40| 機能 | 機能 | 使用する場合 | 例 |41| 機能 | 機能 | 使用する場合 | 例 |
41| -------------------------------------------------------------- | --------------------------------------------- | -------------------------------- | ------------------------------------------------------------ |42| -------------------------------------------------------------- | --------------------------------------------------------- | ----------------------------------- | ------------------------------------------------------------ |
42| **CLAUDE.md** | すべての会話で読み込まれる永続的なコンテキスト | プロジェクト規約、「常に X を実行する」ルール | 「pnpm を使用し、npm は使用しない。コミット前にテストを実行する。」 |43| **CLAUDE.md** | すべての会話で読み込まれる永続的なコンテキスト | プロジェクト規約、「常に X を実行する」ルール | 「pnpm を使用し、npm は使用しない。コミット前にテストを実行する。」 |
43| **Skill** | Claude が使用できる指示、知識、ワークフロー | 再利用可能なコンテンツ、リファレンスドキュメント、繰り返しタスク | `/deploy` はデプロイメントチェックリストを実行します。エンドポイントパターンを持つ API ドキュメントスキル |44| **Skill** | Claude が使用できる指示、知識、ワークフロー | 再利用可能なコンテンツ、リファレンスドキュメント、繰り返しタスク | `/deploy` はデプロイメントチェックリストを実行します。エンドポイントパターンを持つ API ドキュメントスキル |
44| **Subagent** | サマリー結果を返す独立した実行コンテキスト | コンテキスト分離、並列タスク、専門的なワーカー | 多くのファイルを読み取るが、主要な結果のみを返す研究タスク |45| **Subagent** | サマリー結果を返す独立した実行コンテキスト | コンテキスト分離、並列タスク、専門的なワーカー | 多くのファイルを読み取るが、主要な結果のみを返す研究タスク |
45| **[Agent teams](/ja/agent-teams)** | 複数の独立した Claude Code セッションを調整 | 並列研究、新機能開発、競合する仮説でのデバッグ | セキュリティ、パフォーマンス、テストを同時にチェックするレビュアーをスポーン |46| **[Dynamic workflow](/docs/ja/workflows)** | 複数の subagents をバックグラウンドで実行するスクリプト Claude が記述 | 複数の subagents を超えて成長する作業、または検証したい結果 | コードベース全体を監査し、2 番目のエージェントセットが各結果を検証 |
46| **[Code intelligence](/ja/tools-reference#lsp-tool-behavior)** | 言語サーバーナビゲーションと診断 | 型付き言語、grep が遅いまたは不正確な大規模コードベース | ファイル全体を読む代わりにシンボルの定義にジャンプ |47| **[Cross-session messaging](/docs/ja/cross-session-messaging)** | Claude がセッションの 1 つから別のセッションにメッセージを配信 | 実行するセッションがタスク途中で互いの結果を必要とする | 1 つのセッションが別のセッションに警告し、変更が別のセッションが構築しているものを破壊する |
48| **[Code intelligence](/docs/ja/tools-reference#lsp-tool-behavior)** | 言語サーバーナビゲーションと診断 | 型付き言語、grep が遅いまたは不正確な大規模コードベース | ファイル全体を読む代わりにシンボルの定義にジャンプ |
47| **MCP** | 外部サービスに接続 | 外部データまたはアクション | データベースをクエリ、Slack に投稿、ブラウザを制御 |49| **MCP** | 外部サービスに接続 | 外部データまたはアクション | データベースをクエリ、Slack に投稿、ブラウザを制御 |
48| **Hook** | イベントで実行されるスクリプト、HTTP リクエスト、プロンプト、または subagent | すべてのマッチングイベントで実行する必要がある自動化 | すべてのファイル編集後に ESLint を実行 |50| **Hook** | イベントで実行されるスクリプト、HTTP リクエスト、MCP ツール呼び出し、プロンプト、または subagent | すべてのマッチングイベントで実行する必要がある自動化 | すべてのファイル編集後に ESLint を実行 |
49| **[Artifact](/ja/artifacts)** | セッション出力をプライベートでインタラクティブな Web ページとして公開 | ターミナルテキストではなく視覚的に見たり共有したい出力 | Claude が調査するにつれて更新されるインシデントタイムライン |51| **[Artifact](/docs/ja/artifacts)** | セッション出力をプライベートでインタラクティブな Web ページとして公開 | ターミナルテキストではなく視覚的に見たり共有したい出力 | Claude が調査するにつれて更新されるインシデントタイムライン |
50 52
51**[Plugins](/ja/plugins)** はパッケージングレイヤーです。プラグインはスキル、フック、subagents、MCP サーバーを単一のインストール可能なユニットにバンドルします。プラグインスキルは名前空間化されています(`/my-plugin:review` のように)ため、複数のプラグインが共存できます。同じセットアップを複数のリポジトリで再利用したい場合、または **[marketplace](/ja/plugin-marketplaces)** を通じて他のユーザーに配布したい場合はプラグインを使用します。53**[Plugins](/docs/ja/plugins)** はパッケージングレイヤーです。プラグインはスキル、フック、subagents、MCP サーバーを単一のインストール可能なユニットにバンドルします。プラグインスキルは名前空間化されています(`/my-plugin:review` のように)ため、複数のプラグインが共存できます。同じセットアップを複数のリポジトリで再利用したい場合、または **[marketplace](/docs/ja/plugin-marketplaces)** を通じて他のユーザーに配布したい場合はプラグインを使用します。
52 54
53<h3 id="build-your-setup-over-time">55<h3 id="build-your-setup-over-time">
54 セットアップを時間をかけて構築する56 セットアップを時間をかけて構築する
58 60
59| トリガー | 追加 |61| トリガー | 追加 |
60| :-------------------------------------------- | :------------------------------------------------------------------------------ |62| :-------------------------------------------- | :------------------------------------------------------------------------------ |
61| Claude が規約またはコマンドを 2 回間違える | [CLAUDE.md](/ja/memory) に追加 |63| Claude が規約またはコマンドを 2 回間違える | [CLAUDE.md](/docs/ja/memory) に追加 |
62| 同じプロンプトをタスクを開始するために何度も入力している | ユーザーが呼び出し可能な [skill](/ja/skills) として保存 |64| 同じプロンプトをタスクを開始するために何度も入力している | ユーザーが呼び出し可能な [skill](/docs/ja/skills) として保存 |
63| 同じプレイブックまたは複数ステップの手順をチャットに 3 回目に貼り付けている | [skill](/ja/skills) としてキャプチャ |65| 同じプレイブックまたは複数ステップの手順をチャットに 3 回目に貼り付けている | [skill](/docs/ja/skills) としてキャプチャ |
64| Claude が見ることができないブラウザタブからデータをコピーし続けている | そのシステムを [MCP server](/ja/mcp) として接続 |66| Claude が見ることができないブラウザタブからデータをコピーし続けている | そのシステムを [MCP server](/docs/ja/mcp) として接続 |
65| Claude が多くのファイルを読み取ってシンボルが定義または使用されている場所を見つける | 言語用の [code intelligence plugin](/ja/discover-plugins#code-intelligence) をインストール |67| Claude が多くのファイルを読み取ってシンボルが定義または使用されている場所を見つける | 言語用の [code intelligence plugin](/docs/ja/discover-plugins#code-intelligence) をインストール |
66| サイドタスクが会話に再度参照しない出力で満杯になっている | [subagent](/ja/sub-agents) を通じてルーティング |68| サイドタスクが会話に再度参照しない出力で満杯になっている | [subagent](/docs/ja/sub-agents) を通じてルーティング |
67| 何かが毎回聞かずに起こることを望んでいる | [hook](/ja/hooks-guide) を記述 |69| 何かが毎回聞かずに起こることを望んでいる | [hook](/docs/ja/hooks-guide) を記述 |
68| 2 番目のリポジトリが同じセットアップを必要としている | [plugin](/ja/plugins) としてパッケージ化 |70| 2 番目のリポジトリが同じセットアップを必要としている | [plugin](/docs/ja/plugins) としてパッケージ化 |
69 71
70同じトリガーは、既に持っているものを更新する時期を示します。繰り返される間違いまたは繰り返されるレビューコメントは、チャットでの 1 回限りの修正ではなく、CLAUDE.md の編集です。手動で何度も調整するワークフローは、別の改訂が必要なスキルです。72同じトリガーは、既に持っているものを更新する時期を示します。繰り返される間違いまたは繰り返されるレビューコメントは、チャットでの 1 回限りの修正ではなく、CLAUDE.md の編集です。手動で何度も調整するワークフローは、別の改訂が必要なスキルです。
71 73
86 | --------------------------------------------- | ------------------------- | ------------------------------ |88 | --------------------------------------------- | ------------------------- | ------------------------------ |
87 | **それは何か** | 再利用可能な指示、知識、またはワークフロー | 独自のコンテキストを持つ独立したワーカー |89 | **それは何か** | 再利用可能な指示、知識、またはワークフロー | 独自のコンテキストを持つ独立したワーカー |
88 | **主な利点** | コンテキスト全体でコンテンツを共有 | コンテキスト分離。作業は別々に行われ、サマリーのみが返される |90 | **主な利点** | コンテキスト全体でコンテンツを共有 | コンテキスト分離。作業は別々に行われ、サマリーのみが返される |
89 | **[Context window](/ja/context-window) への影響** | メインウィンドウに追加 | 独自の入力トークンと出力トークンを持つ別のウィンドウを使用 |91 | **[Context window](/docs/ja/context-window) への影響** | メインウィンドウに追加 | 独自の入力トークンと出力トークンを持つ別のウィンドウを使用 |
90 | **最適な用途** | リファレンスマテリアル、呼び出し可能なワークフロー | 多くのファイルを読み取るタスク、並列作業、専門的なワーカー |92 | **最適な用途** | リファレンスマテリアル、呼び出し可能なワークフロー | 多くのファイルを読み取るタスク、並列作業、専門的なワーカー |
91 93
92 **スキルはリファレンスまたはアクションです。** リファレンススキルは Claude がセッション全体で使用する知識を提供します(API スタイルガイドなど)。アクションスキルは Claude に特定の操作を実行するよう指示します(デプロイメントワークフローを実行する `/deploy` など)。94 **スキルはリファレンスまたはアクションです。** リファレンススキルは Claude がセッション全体で使用する知識を提供します(API スタイルガイドなど)。アクションスキルは Claude に特定の操作を実行するよう指示します(デプロイメントワークフローを実行する `/deploy` など)。
93 95
94 **コンテキスト分離が必要な場合、またはコンテキストウィンドウがいっぱいになっている場合は subagent を使用します。** subagent は数十のファイルを読み取るか、広範な検索を実行する可能性がありますが、メイン会話はサマリーのみを受け取ります。subagent の作業はメインコンテキストを消費しないため、中間作業を表示したままにする必要がない場合にも便利です。カスタム subagents は独自の指示を持つことができ、スキルをプリロードできます。96 **コンテキスト分離が必要な場合、またはコンテキストウィンドウがいっぱいになっている場合は subagent を使用します。** subagent は数十のファイルを読み取るか、広範な検索を実行する可能性がありますが、メイン会話はサマリーのみを受け取ります。subagent の作業はメインコンテキストを消費しないため、中間作業を表示したままにする必要がない場合にも便利です。カスタム subagents は独自の指示を持つことができ、スキルをプリロードできます。
95 97
96 **それらは組み合わせることができます。** subagent は特定のスキルをプリロードできます(`skills:` フィールド)。スキルは `context: fork` を使用して独立したコンテキストで実行できます。詳細は [Skills](/ja/skills) を参照してください。98 **それらは組み合わせることができます。** subagent は特定のスキルをプリロードできます(`skills:` フィールド)。スキルは `context: fork` を使用して独立したコンテキストで実行できます。詳細は [Skills](/docs/ja/skills) を参照してください。
97 </Tab>99 </Tab>
98 100
99 <Tab title="CLAUDE.md vs Skill">101 <Tab title="CLAUDE.md vs Skill">
110 112
111 **Claude が時々必要とするリファレンスマテリアル(API ドキュメント、スタイルガイド)の場合、またはあなたが `/<name>` でトリガーするワークフロー(デプロイ、レビュー、リリース)の場合は、スキルに入れます。**113 **Claude が時々必要とするリファレンスマテリアル(API ドキュメント、スタイルガイド)の場合、またはあなたが `/<name>` でトリガーするワークフロー(デプロイ、レビュー、リリース)の場合は、スキルに入れます。**
112 114
113 **経験則:** CLAUDE.md を 200 行以下に保ちます。増加している場合は、リファレンスコンテンツをスキルに移動するか、[`.claude/rules/`](/ja/memory#organize-rules-with-claude%2Frules%2F) ファイルに分割します。115 **経験則:** CLAUDE.md を 200 行以下に保ちます。増加している場合は、リファレンスコンテンツをスキルに移動するか、[`.claude/rules/`](/docs/ja/memory#organize-rules-with-claude%2Frules%2F) ファイルに分割します。
114 </Tab>116 </Tab>
115 117
116 <Tab title="CLAUDE.md vs Rules vs Skills">118 <Tab title="CLAUDE.md vs Rules vs Skills">
124 126
125 **すべてのセッションが必要とする指示には CLAUDE.md を使用します。** ビルドコマンド、テスト規約、プロジェクトアーキテクチャ。127 **すべてのセッションが必要とする指示には CLAUDE.md を使用します。** ビルドコマンド、テスト規約、プロジェクトアーキテクチャ。
126 128
127 **CLAUDE.md を焦点を当てたままにするためにルールを使用します。** [`paths` frontmatter](/ja/memory#path-specific-rules) を持つルールは、Claude がマッチングファイルで作業するときのみロードされ、コンテキストを節約します。129 **CLAUDE.md を焦点を当てたままにするためにルールを使用します。** [`paths` frontmatter](/docs/ja/memory#path-specific-rules) を持つルールは、Claude がマッチングファイルで作業するときのみロードされ、コンテキストを節約します。
128 130
129 **Claude が時々必要とするコンテンツ(API ドキュメントまたは `/<name>` でトリガーするデプロイメントチェックリスト)にはスキルを使用します。**131 **Claude が時々必要とするコンテンツ(API ドキュメントまたは `/<name>` でトリガーするデプロイメントチェックリスト)にはスキルを使用します。**
130 </Tab>132 </Tab>
131 133
132 <Tab title="Subagent vs Agent team">134 <Tab title="Subagent vs Dynamic workflow">
133 どちらも作業を並列化しますが、アーキテクチャ的には異なります。135 どちらもメイン会話の外で作業を行います。subagents では Claude がターンごとに次に実行するものを決定します。ワークフローではスクリプトが決定します。
134 136
135 * **Subagents** はセッション内で実行され、結果をメインコンテキストに報告します137 * **Subagents** は Claude がスポーンするワーカーであり、各ワーカーはそれをスポーンした会話にサマリーを返します
136 * **Agent teams** は独立した Claude Code セッションであり、互いに通信します138 * **[Dynamic workflows](/docs/ja/workflows)** は Claude が記述するスクリプトであり、バックグラウンドで多くの subagents を実行し、1 つの結果を返します
137 139
138 | 側面 | Subagent | Agent team |140 **クイックで焦点を絞ったワーカーが必要な場合は subagent を使用します。** 質問を研究する、主張を検証する、ファイルをレビューする。subagent は作業を実行し、サマリーを返します。メイン会話はクリーンなままです。Claude が名前を付けてスポーンした subagents は、互いに [メッセージを送信](/docs/ja/sub-agents#what-loads-at-startup) することもできます。
139 | ----------- | ---------------------------- | ---------------------------- |
140 | **コンテキスト** | 独自のコンテキストウィンドウ。結果は呼び出し元に返される | 独自のコンテキストウィンドウ。完全に独立 |
141 | **通信** | 結果をメインエージェントのみに報告 | チームメイトが直接互いにメッセージを送信 |
142 | **調整** | メインエージェントがすべての作業を管理 | 共有タスクリストと自己調整 |
143 | **最適な用途** | 結果のみが重要な焦点を絞ったタスク | 議論と協力が必要な複雑な作業 |
144 | **トークンコスト** | 低い。結果がメインコンテキストに要約される | 高い。各チームメイトは個別の Claude インスタンス |
145 141
146 **クイックで焦点を絞ったワーカーが必要な場合は subagent を使用します。** 質問を研究する、主張を検証する、ファイルをレビューする。subagent は作業を実行し、サマリーを返します。メイン会話はクリーンなままです。142 \*\*ジョブが [複数の subagents を超えて成長する](/docs/ja/workflows#when-to-use-a-workflow) 場合、または結果を見る前に検証したい場合は dynamic workflow を使用します。たとえば、コードベース全体の監査、大規模な移行、または複数の角度から作成されたプラン。開始するには、[プロンプトでワークフローを要求](/docs/ja/workflows#ask-for-a-workflow-in-your-prompt) してください。
147 143
148 **チームメイトが結果を共有し、互いに異議を唱え、独立して調整する必要がある場合は agent team を使用します。** Agent teams は競合する仮説での研究、並列コードレビュー、各チームメイトが個別の部分を所有する新機能開発に最適です。144 **セッションの 1 つから別のセッションに結果を渡すには、** 最初のセッションの Claude に送信するよう依頼してください。Claude は [cross-session messaging](/docs/ja/cross-session-messaging) で配信します。[複数の Claude を並列実行](/docs/ja/agents) は、複数の Claude を実行する他の方法を比較します。これには、後で確認するために引き継ぐセッションが含まれます。
149
150 **遷移ポイント:** 並列 subagents を実行しているがコンテキスト制限に達している場合、または subagents が互いに通信する必要がある場合、agent teams は自然な次のステップです。
151
152 <Note>
153 Agent teams は実験的であり、デフォルトで無効になっています。セットアップと現在の制限については [agent teams](/ja/agent-teams) を参照してください。
154 </Note>
155 </Tab>145 </Tab>
156 146
157 <Tab title="MCP vs Skill">147 <Tab title="MCP vs Skill">
168 **MCP** は Claude に外部システムと相互作用する能力を与えます。MCP がなければ、Claude はデータベースをクエリしたり、Slack に投稿したりできません。158 **MCP** は Claude に外部システムと相互作用する能力を与えます。MCP がなければ、Claude はデータベースをクエリしたり、Slack に投稿したりできません。
169 159
170 **スキル** は Claude にこれらのツールを効果的に使用する方法についての知識を与え、さらに `/<name>` でトリガーできるワークフローを提供します。スキルには、チームのデータベーススキーマとクエリパターン、または `/post-to-slack` ワークフローとチームのメッセージフォーマットルールが含まれる場合があります。160 **スキル** は Claude にこれらのツールを効果的に使用する方法についての知識を与え、さらに `/<name>` でトリガーできるワークフローを提供します。スキルには、チームのデータベーススキーマとクエリパターン、または `/post-to-slack` ワークフローとチームのメッセージフォーマットルールが含まれる場合があります。
171
172 例:MCP サーバーは Claude をデータベースに接続します。スキルは Claude にデータモデル、一般的なクエリパターン、さまざまなタスクに使用するテーブルを教えます。
173 </Tab>161 </Tab>
174 162
175 <Tab title="Hook vs Skill">163 <Tab title="Hook vs Skill">
176 フックはライフサイクルイベントで発火します。スキルはコンテキストにロードされて Claude が適用します。164 Claude Code はライフサイクルイベントでフックを実行します。スキルをコンテキストにロードして Claude が適用します。
177 165
178 | 側面 | Hook | Skill |166 | 側面 | Hook | Skill |
179 | ------------- | ------------------------------------------------------------------------------ | ----------------------------------- |167 | ------------- | ------------------------------------------------------------------------------ | ----------------------------------- |
180 | **実行** | シェルコマンド、HTTP リクエスト、LLM プロンプト、または subagent | Claude が読み取って従う指示 |168 | **実行** | シェルコマンド、HTTP リクエスト、MCP ツール呼び出し、LLM プロンプト、または subagent | Claude が読み取って従う指示 |
181 | **トリガー** | [Lifecycle events](/ja/hooks#hook-events)(`PostToolUse` または `SessionStart` など) | `/<name>` を入力するか、Claude がタスクに説明を照合 |169 | **トリガー** | [Lifecycle events](/docs/ja/hooks#hook-events)(`PostToolUse` または `SessionStart` など) | `/<name>` を入力するか、Claude がタスクに説明を照合 |
182 | **決定論性** | イベントで常に発火。トリガーは保証される | Claude が指示を解釈。結果は異なる可能性 |170 | **決定論性** | イベントで常に発火。トリガーは保証される | Claude が指示を解釈。結果は異なる可能性 |
183 | **コンテキストコスト** | ゼロ(フックが出力を返さない限り) | 説明は毎セッションロード。使用時に完全なコンテンツをロード |171 | **コンテキストコスト** | ゼロ(フックが出力を返さない限り) | 説明は毎セッションロード。使用時に完全なコンテンツをロード |
184 | **最適な用途** | リント後の編集、安全でないコマンドのブロック、ロギング、通知 | 推論が必要なワークフロー、リファレンスマテリアル、複数ステップのタスク |172 | **最適な用途** | リント後の編集、安全でないコマンドのブロック、ロギング、通知 | 推論が必要なワークフロー、リファレンスマテリアル、複数ステップのタスク |
199 187
200機能は複数のレベルで定義できます。ユーザー全体、プロジェクトごと、プラグイン経由、または管理ポリシーを通じて。また、CLAUDE.md ファイルをサブディレクトリにネストしたり、スキルをモノレポの特定のパッケージに配置したりすることもできます。同じ機能が複数のレベルに存在する場合、ここでそれらがどのようにレイヤーするかを示します。188機能は複数のレベルで定義できます。ユーザー全体、プロジェクトごと、プラグイン経由、または管理ポリシーを通じて。また、CLAUDE.md ファイルをサブディレクトリにネストしたり、スキルをモノレポの特定のパッケージに配置したりすることもできます。同じ機能が複数のレベルに存在する場合、ここでそれらがどのようにレイヤーするかを示します。
201 189
202* **CLAUDE.md ファイル** は加算的です。すべてのレベルがコンテンツを同時に Claude のコンテキストに提供します。作業ディレクトリ以上のファイルは起動時にロードされます。サブディレクトリは作業時にロードされます。指示が競合する場合、Claude は判断を使用してそれらを調整し、より具体的な指示が通常優先されます。[CLAUDE.md ファイルがどのようにロードされるか](/ja/memory#how-claude-md-files-load) を参照してください。190* **CLAUDE.md ファイル** は加算的です。すべてのレベルがコンテンツを同時に Claude のコンテキストに提供します。作業ディレクトリ以上のファイルは起動時にロードされます。サブディレクトリは作業時にロードされます。指示が競合する場合、Claude は判断を使用してそれらを調整し、より具体的な指示が通常優先されます。[CLAUDE.md ファイルがどのようにロードされるか](/docs/ja/memory#how-claude-md-files-load) を参照してください。
203* **スキルと subagents** は名前でオーバーライドします。同じ名前が複数のレベルに存在する場合、優先度に基づいて 1 つの定義が勝ちます(スキルの場合は管理 > ユーザー > プロジェクト。subagents の場合は管理 > CLI フラグ > プロジェクト > ユーザー > プラグイン)。プラグインスキルは競合を避けるために[名前空間化](/ja/plugins#add-skills-to-your-plugin)されています。[スキル検出](/ja/skills#where-skills-live) と [subagent スコープ](/ja/sub-agents#choose-the-subagent-scope) を参照してください。191* **スキルと subagents** は名前でオーバーライドします。同じ名前が複数のレベルに存在する場合、優先度に基づいて 1 つの定義が勝ちます(スキルの場合は管理 > ユーザー > プロジェクト。subagents の場合は管理 > CLI フラグ > プロジェクト > ユーザー > プラグイン)。プラグインスキルは競合を避けるために [名前空間化](/docs/ja/plugins#add-skills-to-your-plugin) されています。[スキル検出](/docs/ja/skills#resolve-skills-that-share-a-name) と [subagent スコープ](/docs/ja/sub-agents#choose-the-subagent-scope) を参照してください。
204* **MCP サーバー** は名前でオーバーライドします。ローカル > プロジェクト > ユーザー。[MCP スコープ](/ja/mcp#scope-hierarchy-and-precedence) を参照してください。192* **MCP サーバー** は名前でオーバーライドします。ローカル > プロジェクト > ユーザー。[MCP スコープ](/docs/ja/mcp#scope-hierarchy-and-precedence) を参照してください。
205* **Hooks** はマージされます。すべての登録されたフックは、ソースに関係なく、マッチングイベントに対して発火します。[Hooks](/ja/hooks) を参照してください。193* **Hooks** はマージされます。すべての登録されたフックは、ソースに関係なく、マッチングイベントに対して発火します。[Hooks](/docs/ja/hooks) を参照してください。
206 194
207<h3 id="combine-features">195<h3 id="combine-features">
208 機能を組み合わせる196 機能を組み合わせる
223 コンテキストコストを理解する211 コンテキストコストを理解する
224</h2>212</h2>
225 213
226追加する各機能は Claude のコンテキストの一部を消費します。多すぎるとコンテキストウィンドウがいっぱいになる可能性がありますが、Claude の効果を低下させるノイズを追加することもできます。スキルが正しくトリガーされない場合や、Claude が規約を失う場合があります。これらのトレードオフを理解することで、効果的なセットアップを構築するのに役立ちます。実行中のセッションでこれらの機能がどのように組み合わされるかのインタラクティブビューについては、[コンテキストウィンドウを探索する](/ja/context-window) を参照してください。214追加する各機能は Claude のコンテキストの一部を消費します。多すぎるとコンテキストウィンドウがいっぱいになる可能性がありますが、Claude の効果を低下させるノイズを追加することもできます。スキルが正しくトリガーされない場合や、Claude が規約を失う場合があります。これらのトレードオフを理解することで、効果的なセットアップを構築するのに役立ちます。実行中のセッションでこれらの機能がどのように組み合わされるかのインタラクティブビューについては、[コンテキストウィンドウを探索する](/docs/ja/context-window) を参照してください。
227 215
228<h3 id="context-cost-by-feature">216<h3 id="context-cost-by-feature">
229 機能別のコンテキストコスト217 機能別のコンテキストコスト
232各機能には異なるロード戦略とコンテキストコストがあります。220各機能には異なるロード戦略とコンテキストコストがあります。
233 221
234| 機能 | ロード時期 | ロード内容 | コンテキストコスト |222| 機能 | ロード時期 | ロード内容 | コンテキストコスト |
235| --------------------- | ---------------- | ------------------------ | ----------------------- |223| --------------------- | ---------------- | ---------------------------------------------------------------------------------- | ----------------------- |
236| **CLAUDE.md** | セッション開始 | 完全なコンテンツ | すべてのリクエスト |224| **CLAUDE.md** | セッション開始 | 完全なコンテンツ | すべてのリクエスト |
237| **Skills** | セッション開始 + 使用時 | 開始時の説明、使用時の完全なコンテンツ | 低い(毎リクエスト説明)\* |225| **Skills** | セッション開始 + 使用時 | 開始時の説明、使用時の完全なコンテンツ | 低い(毎リクエスト説明)\* |
238| **MCP サーバー** | セッション開始 | ツール名。完全なスキーマはオンデマンド | 低い(ツール使用まで) |226| **MCP サーバー** | セッション開始 | ツール名。完全なスキーマはオンデマンド | 低い(ツール使用まで) |
239| **Code intelligence** | ファイル編集後およびオンデマンド | 編集後の診断。シンボル検索時の定義、参照、型情報 | 低い。ファイル読み取りを削減 |227| **Code intelligence** | ファイル編集後およびオンデマンド | 編集後の診断。シンボル検索時の定義、参照、型情報 | 低い。ファイル読み取りを削減 |
240| **Subagents** | スポーン時 | 指定されたスキルを持つ新しいコンテキスト | メインセッションから分離 |228| **Subagents** | スポーン時 | 指定されたスキルを持つ新しいコンテキスト、または [fork](/docs/ja/sub-agents#fork-the-current-conversation) の親会話 | メインセッションから分離 |
241| **Hooks** | トリガー時 | なし(外部で実行) | ゼロ(フックが追加コンテキストを返さない限り) |229| **Hooks** | トリガー時 | なし(外部で実行) | ゼロ(フックが追加コンテキストを返さない限り) |
242 230
243\*デフォルトでは、スキル説明はセッション開始時にロードされるため、Claude はそれらを使用する時期を決定できます。スキルの frontmatter で `disable-model-invocation: true` を設定して、手動で呼び出すまで Claude から完全に非表示にします。これにより、自分でのみトリガーするスキルのコンテキストコストをゼロに削減します。書いていないスキルの場合は、ファイルを編集せずに同じことを行うために settings で [`skillOverrides`](/ja/skills#override-skill-visibility-from-settings) を設定します。231\*デフォルトでは、スキル説明はセッション開始時にロードされるため、Claude はそれらを使用する時期を決定できます。スキルの frontmatter で `disable-model-invocation: true` を設定して、手動で呼び出すまで Claude から完全に非表示にします。書いていないスキルの場合は、ファイルを編集せずに同じことを行うために settings で [`skillOverrides`](/docs/ja/skills#override-skill-visibility-from-settings) を設定します。
244 232
245<h3 id="understand-how-features-load">233<h3 id="understand-how-features-load">
246 機能がどのようにロードされるかを理解する234 機能がどのようにロードされるかを理解する
248 236
249各機能はセッション内の異なるポイントでロードされます。以下のタブは、各機能がいつロードされるか、およびコンテキストに何が入るかを説明しています。237各機能はセッション内の異なるポイントでロードされます。以下のタブは、各機能がいつロードされるか、およびコンテキストに何が入るかを説明しています。
250 238
251<img src="https://mintcdn.com/claude-code/ikqp3_70mqIahteV/images/context-loading.svg?fit=max&auto=format&n=ikqp3_70mqIahteV&q=85&s=aab139e750494a237ae2e0c8f9139b0a" alt="コンテキストロード:CLAUDE.md はセッション開始時にロードされ、すべてのリクエストに留まります。MCP ツール名は開始時にロードされ、完全なスキーマは使用時に遅延されます。スキルは開始時に説明をロードし、呼び出し時に完全なコンテンツをロードします。Subagents は独立したコンテキストを取得します。Hooks は外部で実行されます。" width="720" height="382" data-path="images/context-loading.svg" />239<img src="https://mintcdn.com/claude-code/ikqp3_70mqIahteV/images/context-loading.svg?fit=max&auto=format&n=ikqp3_70mqIahteV&q=85&s=aab139e750494a237ae2e0c8f9139b0a" className="dark:hidden" alt="コンテキストロード:CLAUDE.md はセッション開始時にロードされ、すべてのリクエストに留まります。MCP ツール名は開始時にロードされ、完全なスキーマは使用時に遅延されます。スキルは開始時に説明をロードし、呼び出し時に完全なコンテンツをロードします。Subagents は独立したコンテキストを取得します。Hooks は外部で実行されます。" width="720" height="382" data-path="images/context-loading.svg" />
240
241<img src="https://mintcdn.com/claude-code/_xqph1dUOslCOwsj/images/context-loading-dark.svg?fit=max&auto=format&n=_xqph1dUOslCOwsj&q=85&s=b274089ef9612d9c760bca9838557626" className="hidden dark:block" alt="コンテキストロード:CLAUDE.md はセッション開始時にロードされ、すべてのリクエストに留まります。MCP ツール名は開始時にロードされ、完全なスキーマは使用時に遅延されます。スキルは開始時に説明をロードし、呼び出し時に完全なコンテンツをロードします。Subagents は独立したコンテキストを取得します。Hooks は外部で実行されます。" width="720" height="382" data-path="images/context-loading-dark.svg" />
252 242
253<Tabs>243<Tabs>
254 <Tab title="CLAUDE.md">244 <Tab title="CLAUDE.md">
256 246
257 **ロード内容:** すべての CLAUDE.md ファイル(管理、ユーザー、プロジェクトレベル)の完全なコンテンツ。247 **ロード内容:** すべての CLAUDE.md ファイル(管理、ユーザー、プロジェクトレベル)の完全なコンテンツ。
258 248
259 **継承:** Claude は作業ディレクトリからルートまで CLAUDE.md ファイルを読み取り、サブディレクトリにネストされたものを、それらのファイルにアクセスするときに検出します。詳細は [CLAUDE.md ファイルがどのようにロードされるか](/ja/memory#how-claude-md-files-load) を参照してください。249 **継承:** Claude は作業ディレクトリからルートまで CLAUDE.md ファイルを読み取り、サブディレクトリにネストされたものを、それらのファイルにアクセスするときに検出します。詳細は [CLAUDE.md ファイルがどのようにロードされるか](/docs/ja/memory#how-claude-md-files-load) を参照してください。
260 250
261 <Tip>CLAUDE.md を 200 行以下に保ちます。リファレンスマテリアルをスキルに移動します。スキルはオンデマンドでロードされます。</Tip>251 <Tip>CLAUDE.md を 200 行以下に保ちます。リファレンスマテリアルをスキルに移動します。スキルはオンデマンドでロードされます。[チェックインされた CLAUDE.md のトリム提案を取得する](/docs/ja/memory#my-claude-md-is-too-large) には、`/doctor` を実行します。</Tip>
262 </Tab>252 </Tab>
263 253
264 <Tab title="Skills">254 <Tab title="Skills">
265 スキルは Claude のツールキットの追加機能です。リファレンスマテリアル(API スタイルガイドなど)または `/<name>` でトリガーする呼び出し可能なワークフロー(`/deploy` など)です。Claude Code は `/code-review`、`/batch`、`/debug` などの[バンドルされたスキル](/ja/commands) を備えており、すぐに機能します。独自のスキルを作成することもできます。Claude は適切な場合にスキルを使用するか、直接呼び出すことができます。255 スキルは Claude のツールキットの追加機能です。リファレンスマテリアル(API スタイルガイドなど)または `/<name>` でトリガーする呼び出し可能なワークフロー(`/deploy` など)です。Claude Code は `/code-review`、`/batch`、`/debug` などの[バンドルされたスキル](/docs/ja/commands) を備えており、すぐに機能します。独自のスキルを作成することもできます。
266 256
267 **時期:** スキルの設定によって異なります。デフォルトでは、説明はセッション開始時にロードされ、完全なコンテンツは使用時にロードされます。ユーザーのみのスキル(`disable-model-invocation: true`)の場合、呼び出すまで何もロードされません。257 **時期:** スキルの設定によって異なります。デフォルトでは、説明はセッション開始時にロードされ、完全なコンテンツは使用時にロードされます。ユーザーのみのスキル(`disable-model-invocation: true`)の場合、呼び出すまで何もロードされません。
268 258
280 <Tab title="MCP servers">270 <Tab title="MCP servers">
281 **時期:** セッション開始。271 **時期:** セッション開始。
282 272
283 **ロード内容:** 接続されたサーバーからのツール名。完全な JSON スキーマは Claude が特定のツールを必要とするまで遅延されます。273 **ロード内容:** 接続されたサーバーからのツール名とサーバー指示。完全な JSON スキーマは Claude が特定のツールを必要とするまで遅延されます。
284 274
285 **コンテキストコスト:** [ツール検索](/ja/mcp#scale-with-mcp-tool-search) はデフォルトで有効になっているため、アイドル MCP ツールは最小限のコンテキストを消費します。275 **コンテキストコスト:** [ツール検索](/docs/ja/mcp#scale-with-mcp-tool-search) はデフォルトで有効になっているため、アイドル MCP ツールは最小限のコンテキストを消費します。
286 276
287 <Tip>`/mcp` を実行してサーバーごとのトークンコストを確認します。積極的に使用していないサーバーを切断します。</Tip>277 <Tip>`/mcp` を実行して各サーバーの接続ステータスを確認します。`/context all` を実行して、ロードされた各 MCP ツールが使用するトークン数を確認します。Claude Code は、リモートサーバーが切断された場合は[自動的に再接続](/docs/ja/mcp#automatic-reconnection) し、積極的に使用していないサーバーを切断できます。</Tip>
288 </Tab>278 </Tab>
289 279
290 <Tab title="Code intelligence">280 <Tab title="Code intelligence">
294 284
295 **コンテキストコスト:** 低い。シンボル検索は多くの場合、広範なファイル読み取りを置き換えるため、ネットコンテキスト使用量は減少する可能性があります。285 **コンテキストコスト:** 低い。シンボル検索は多くの場合、広範なファイル読み取りを置き換えるため、ネットコンテキスト使用量は減少する可能性があります。
296 286
297 <Tip>LSP ツールは、言語の[コード intelligence プラグイン](/ja/discover-plugins#code-intelligence) をインストールするまで非アクティブです。</Tip>287 <Tip>LSP ツールは、言語の[コード intelligence プラグイン](/docs/ja/discover-plugins#code-intelligence) をインストールするまで非アクティブです。</Tip>
298 </Tab>288 </Tab>
299 289
300 <Tab title="Subagents">290 <Tab title="Subagents">
301 **時期:** オンデマンド、タスクのためにあなたまたは Claude がスポーンするとき。291 **時期:** オンデマンド、タスクのためにあなたまたは Claude がスポーンするとき。
302 292
303 **ロード内容:** 以下を含む新しい独立したコンテキスト。293 **ロード内容:** 以下を含む新しい独立したコンテキスト:
304 294
305 * エージェント独自のシステムプロンプト(完全な Claude Code システムプロンプトではない)295 * エージェント独自のシステムプロンプト(Claude Code システムプロンプトではない)
306 * エージェントの `skills:` フィールドにリストされているスキルの完全なコンテンツ296 * エージェントの `skills:` フィールドにリストされているスキルの完全なコンテンツ
307 * CLAUDE.md と git ステータス(ただし、組み込みの Explore および Plan エージェントは[両方を省略](/ja/sub-agents#what-loads-at-startup))297 * CLAUDE.md と git ステータス(ただし、組み込みの Explore および Plan エージェントは[両方を省略](/docs/ja/sub-agents#what-loads-at-startup))
308 * リードエージェントがプロンプトで渡すコンテキスト298 * リードエージェントがプロンプトで渡すコンテキスト
309 299
310 **コンテキストコスト:** メインセッションから分離。Subagents は会話履歴または呼び出されたスキルを継承しません。300 [fork](/docs/ja/sub-agents#fork-the-current-conversation) の場合、Claude Code は親の会話(これまでのところ)、システムプロンプト、ツールをロードします。
301
302 **コンテキストコスト:** メインセッションから分離。
311 303
312 <Tip>フルな会話コンテキストが必要ない作業に subagents を使用します。それらの分離はメインセッションの膨張を防ぎます。</Tip>304 <Tip>フルな会話コンテキストが必要ない作業に subagents を使用します。それらの分離はメインセッションの膨張を防ぎます。</Tip>
313 </Tab>305 </Tab>
314 306
315 <Tab title="Hooks">307 <Tab title="Hooks">
316 **時期:** トリガー時。フックはツール実行、セッション境界、プロンプト送信、権限リクエスト、コンパクション などの特定のライフサイクルイベントで発火します。完全なリストは [Hooks](/ja/hooks) を参照してください。308 **時期:** トリガー時。Claude Code はツール実行、セッション境界、プロンプト送信、権限リクエスト、コンパクション などの特定のライフサイクルイベントで hooks を実行します。完全なリストは [Hooks](/docs/ja/hooks) を参照してください。
317 309
318 **ロード内容:** デフォルトではなし。フックは外部で実行されます。310 **ロード内容:** デフォルトではなし。フックは外部で実行されます。
319 311
330各機能には、セットアップ指示、例、設定オプションを含む独自のガイドがあります。322各機能には、セットアップ指示、例、設定オプションを含む独自のガイドがあります。
331 323
332<CardGroup cols={2}>324<CardGroup cols={2}>
333 <Card title="CLAUDE.md" icon="file-lines" href="/ja/memory">325 <Card title="CLAUDE.md" icon="file-lines" href="/docs/ja/memory">
334 プロジェクトコンテキスト、規約、指示を保存326 プロジェクトコンテキスト、規約、指示を保存
335 </Card>327 </Card>
336 328
337 <Card title="Skills" icon="brain" href="/ja/skills">329 <Card title="Skills" icon="brain" href="/docs/ja/skills">
338 Claude にドメイン専門知識と再利用可能なワークフローを提供330 Claude にドメイン専門知識と再利用可能なワークフローを提供
339 </Card>331 </Card>
340 332
341 <Card title="Subagents" icon="users" href="/ja/sub-agents">333 <Card title="Subagents" icon="users" href="/docs/ja/sub-agents">
342 独立したコンテキストに作業をオフロード334 独立したコンテキストに作業をオフロード
343 </Card>335 </Card>
344 336
345 <Card title="Agent teams" icon="network" href="/ja/agent-teams">337 <Card title="Dynamic workflows" icon="network" href="/docs/ja/workflows">
346 複数のセッションを並列で調整338 1 つのスクリプトから多くのサブエージェントを実行
339 </Card>
340
341 <Card title="Cross-session messaging" icon="terminal" href="/docs/ja/cross-session-messaging">
342 Claude が他のセッションにメッセージを送信できるようにする
347 </Card>343 </Card>
348 344
349 <Card title="MCP" icon="plug" href="/ja/mcp">345 <Card title="MCP" icon="plug" href="/docs/ja/mcp">
350 Claude を外部サービスに接続346 Claude を外部サービスに接続
351 </Card>347 </Card>
352 348
353 <Card title="Hooks" icon="bolt" href="/ja/hooks-guide">349 <Card title="Hooks" icon="bolt" href="/docs/ja/hooks-guide">
354 フックでワークフローを自動化350 フックでアクションを自動化
355 </Card>351 </Card>
356 352
357 <Card title="Plugins" icon="puzzle-piece" href="/ja/plugins">353 <Card title="Plugins" icon="puzzle-piece" href="/docs/ja/plugins">
358 機能セットをバンドルして共有354 機能セットをバンドルして共有
359 </Card>355 </Card>
360 356
361 <Card title="Marketplaces" icon="store" href="/ja/plugin-marketplaces">357 <Card title="Marketplaces" icon="store" href="/docs/ja/plugin-marketplaces">
362 プラグインコレクションをホストして配布358 プラグインコレクションをホストして配布
363 </Card>359 </Card>
364</CardGroup>360</CardGroup>