Claude Code の拡張機能、結局どれを使えばいいのか — 公式ドキュメントの判断基準を整理する
まず全体像:7つの拡張は役割が違う
| 拡張 | 何をするもの |
|---|---|
| CLAUDE.md | すべてのセッションで読み込まれる永続的なコンテキスト |
| Skills | 再利用可能な知識と、呼び出せるワークフロー |
| Code intelligence | 言語サーバーに接続し、シンボル単位の移動と型エラーを取得 |
| MCP | 外部サービス・ツールへの接続 |
| Subagents | 独立したコンテキストで別ループを回し、サマリーだけ返す |
| Agent teams | 複数の独立セッションを、共有タスクとメッセージングで協調させる |
| Hooks | ライフサイクルイベントで発火し、スクリプトやHTTPリクエストを実行 |
| Plugins | 上記をまとめて配布するパッケージング層 |
公式は「Claude Code が初めてなら、まず CLAUDE.md でプロジェクト規約から始める」としています。全部を最初から設定する必要はありません。
実務での判断基準:「この症状が出たらこれを足す」
公式ドキュメントに、追加すべきタイミングが症状ベースで書かれた表があります。ここが一番使えます。
| こういう状態になったら | 足すもの |
|---|---|
| Claude が規約やコマンドを2回間違える | CLAUDE.md に追記 |
| 同じプロンプトを何度も打っている | ユーザー呼び出し可能な Skill として保存 |
| 同じ手順書をチャットに3回目に貼っている | Skill としてキャプチャ |
| Claude が見られないブラウザタブからデータをコピーし続けている | そのシステムを MCP server として接続 |
| シンボルの定義箇所を探すために大量のファイルを読んでいる | Code intelligence plugin を導入 |
| 本筋に関係ない出力で会話が埋まっている | Subagent に逃がす |
| 毎回聞かれずに実行してほしいことがある | Hook を書く |
| 2つ目のリポジトリで同じ設定が必要になった | Plugin にまとめる |
公式は「同じトリガーは、既に持っているものを更新すべき時期も示す」としています。繰り返す間違いは、チャットでの一回限りの修正ではなく CLAUDE.md の編集にすべき、という考え方です。
混同しやすい組み合わせを4つ整理する
Skill と Subagent はまったく別物
| Skill | Subagent | |
|---|---|---|
| 正体 | 再利用可能な指示・知識・ワークフロー | 独自コンテキストを持つ独立ワーカー |
| コンテキストへの影響 | メインウィンドウに追加される | 別ウィンドウを使う(分離される) |
| 向いている用途 | リファレンス、呼び出し可能なワークフロー | 大量のファイルを読むタスク、並列作業 |
判断基準は単純で、コンテキストを分離したいなら Subagent、知識を共有したいなら Skill です。両者は組み合わせられます(Subagent の skills: フィールドでスキルをプリロードできる)。
CLAUDE.md と Skill
- 常に知っておいてほしいこと → CLAUDE.md(コーディング規約、ビルドコマンド、「Xするな」ルール)
- 時々必要なリファレンス、`/名前` で起動するワークフロー → Skill
公式の経験則として「CLAUDE.md は200行以下に保つ」と明記されています。増えてきたらリファレンス部分を Skill か .claude/rules/ に移す、という指針です。
Hook と Skill ― ここが一番の落とし穴
公式の表現をそのまま引くと、判断はこうです。
「CLAUDE.md またはスキルの『.envを編集しない』のような指示はリクエストであり、保証ではありません。編集をブロックするPreToolUseフックは強制です」
| Hook | Skill | |
|---|---|---|
| 決定性 | イベントで必ず発火 | Claude が解釈するため結果は変わりうる |
| コンテキストコスト | ゼロ(出力を返さない限り) | 説明が毎セッション読み込まれる |
守られないと困るルールは、プロンプトへの指示ではなく Hook にする。 これが公式の指針です。
Subagent と Agent team
| Subagent | Agent team | |
|---|---|---|
| 通信 | メインエージェントにのみ報告 | チームメイト同士が直接メッセージ |
| トークンコスト | 低い(結果が要約される) | 高い(各々が個別のClaudeインスタンス) |
移行の目安も書かれています。「並列 Subagent を走らせていてコンテキスト制限に当たった場合、または Subagent 同士が通信する必要が出た場合」。
なお Agent teams は実験的機能で、既定では無効です。
見落とされがちな「コンテキストコスト」
拡張を足すほどコンテキストを食います。しかも公式は、単に容量の問題ではないと書いています。
「多すぎるとコンテキストウィンドウがいっぱいになる可能性がありますが、Claude の効果を低下させるノイズを追加することもできます。スキルが正しくトリガーされない場合や、Claude が規約を失う場合があります」
| 機能 | 読み込み時期 | コンテキストコスト |
|---|---|---|
| CLAUDE.md | セッション開始 | 全リクエストに乗る |
| Skills | 開始時に説明、使用時に本体 | 低い(説明分は毎回) |
| MCPサーバー | セッション開始 | 低い(ツール名のみ、スキーマは遅延) |
| Subagents | スポーン時 | メインから分離 |
| Hooks | トリガー時 | ゼロ |
実務的に効くテクニックが2つ書かれています。
- 自分でしか起動しないスキルは frontmatter に
disable-model-invocation: trueを付ける → コンテキストコストがゼロになる /mcpを実行するとサーバーごとのトークンコストが見える → 使っていないサーバーは切断する
優先順位の付け方
公式の記述を踏まえると、導入順はこうなります。
- CLAUDE.md(200行以内)でプロジェクト規約
- 同じ指示を繰り返していると気づいたら Skill に切り出す
- 絶対に守らせたいガードレールが出てきたら Hook に移す
- 会話が副次的な出力で埋まってきたら Subagent に逃がす
- 外部データが必要になったら MCP
- 別リポジトリでも使いたくなったら Plugin 化
「先に全部設定する」のではなく「症状が出てから足す」。これが公式の推している進め方です。
一次ソース
- Claude Code を拡張する — Claude Code Docs(判断表・コンテキストコスト表・各機能の比較)
この記事は、本文末尾に挙げた各社の公式発表・公式ドキュメントを突き合わせて AI(Anthropic Claude)が下書きし、運営者が数値と内容を確認したうえで掲載しています。 数値は掲載時点の公式資料にもとづきます。最新の条件は各社の公式ページをご確認ください。
主な一次情報(公式発表)を開く


