Claude Codeは、プラグインを1つ入れるだけで「分業(サブエージェント)」「安全対策(フック)」「独自の作業手順(スキル)」「外部サービス連携(MCP)」をまるっと手に入れられます。この4つはどれも自作できますが、正体と作り方さえ分かれば数分で用意できるものばかりです。この記事では、プラグインとその中身である4つの拡張機能を、コピペできるファイル例つきで解説します。

<動画:冒頭にこのYouTube動画(https://youtu.be/zOtDiXqUkiI?si=VgdwWIgvQbFjyOK4)を埋め込みブロックで設置してください>

▶ この記事の内容を動画で見る(YouTube)|動画で見たい方はこちら、記事で読む方はこのまま続きへどうぞ。

なお、この記事はVS Codeの拡張機能版Claude Codeを前提に進めます。プラグインの導入だけはCLI版を使いますが、そこは後半でていねいに説明するのでご安心ください。

もくじ

プラグインは4つの拡張を配る「箱」だ

最初に、この記事の背骨になる関係を押さえておきましょう。

プラグインとは、スキル・MCP・サブエージェント・フックといった拡張機能を、まとめて配布・導入するための「箱」です。 MCP単体で配られているものもあれば、MCPとスキルとサブエージェントがセットになったものもあり、中身はさまざまです。

つまり、順番としてはこうです。まず「サブエージェント」「フック」「スキル」「MCP」という4つの部品があって、それらを誰かがひとまとめにして配れるようにしたものがプラグイン、という関係になっています。

<画像:中央に「プラグイン」の箱、その中にスキル/MCP/サブエージェント/フックの4つが入っている図>

なぜこの関係を先に説明したかというと、4つの部品それぞれの正体が分かっていないと、プラグインで何が手に入るのかも分からないからです。逆に、部品の役割さえ理解できれば、「このプラグインを入れると自分の環境に何が増えるのか」が一目で判断できるようになります。

そこでこの記事では、まず4つの部品を1つずつ「何をするものか」と「どう作るか」まで見ていき、最後にそれらをプラグインでまるっと導入する方法を紹介します。自作の手順まで知っておくと、他人が作ったプラグインの中身を読めるようになり、安全に使う目も養えます。

なお、これから紹介するサブエージェント・フック・スキルは、いずれもマークダウンやシェルスクリプト1枚から作れる手軽なものです。身構えずに読み進めてください。

サブエージェント:別のClaudeに分業させて速くする

まず1つ目の部品、サブエージェントです。

サブエージェントとは、メインの会話とは別に、独立したClaudeをもう1人立ち上げてタスクを任せる仕組みです。あなたが社長で、部長のClaude Codeに仕事を頼むと、部長が部下(サブエージェント)を呼んで作業を振り、成果物を持ち帰ってくれる——そんなイメージです。

<画像:「メインClaude → 複数のサブエージェント」の階層図>

これの何が嬉しいかというと、複雑なタスクを速く・精度高く処理できる点です。1人で設計・実装・確認を全部やると時間がかかり、見落としも出ます。役割を分担すれば、並列で動くので速く、Claude同士でチェックし合うので精度も上がります!

最初から使える組み込みサブエージェント

サブエージェントには、最初から用意されているものがいくつかあります。代表的なのは次の3つです。

  • Explore:コードベースの検索と分析に特化した、高速な読み取り専用エージェント
  • Plan:プランを提示する前に、必要な情報を集めるリサーチ用エージェント
  • General-purpose:探索と実行の両方が必要な、複雑なマルチステップタスク向けの万能エージェント

使い方は2パターンあります。1つは、Claude Codeが「この作業は任せた方が効率的だ」と自動で判断して使ってくれるパターン。もう1つは、こちらから日本語で明示的に頼むパターンです。

以下の3つの調査を、それぞれサブエージェントに任せて並列で進めてください。

1. 現在のデータ保存形式を確認し、フィールドを追加する場合の互換性を調査
2. 現在の型定義を確認し、変更が必要な箇所を洗い出し
3. 新機能のUI設計案を検討

「絶対にここで使ってほしい」という場面では、こうして明示的に指示すると確実です。

カスタムサブエージェントの作り方

組み込み以外に、自分専用のサブエージェントも簡単に作れます。中身はマークダウンファイル1枚。名前とやってほしい内容を書くだけです。

作り方は2通り。1つは、Claudeに「こんなサブエージェントが欲しい」と自然言語で頼んで、ファイルを生成してもらう方法。もう1つは、自分でマークダウンファイルを作って .claude/agents/ フォルダに保存する方法です。CLI版なら /agents コマンドで、登録済みのサブエージェント一覧の確認や管理もできます。

例えば、コードレビュー専用のサブエージェントはこう書きます。

---
name: code-reviewer
description: コード変更後に品質とセキュリティをレビューする。コード変更の直後に積極的に使用する。
tools: Read, Glob, Grep, Bash
model: sonnet
---

あなたはシニアコードレビュアーです。
呼び出されたら、git diff で最近の変更を確認し、以下の観点でレビューしてください。

- コードの可読性と命名の適切さ
- 重複コードの有無
- エラーハンドリングの適切さ
- セキュリティリスク(API鍵の露出、入力バリデーション)

問題は優先度別(Critical / Warning / Suggestion)に整理して報告してください。

各項目の意味は次のとおりです。

  • name(必須):サブエージェントの名前。呼び出すときに使うので分かりやすく。ファイル名と揃えておく(この例なら code-reviewer.md)と管理しやすいです。
  • description(必須):どんなエージェントかの要約。Claudeはこの説明を読んで「今のタスクで使うべきか」を判断します。いつ使ってほしいかを具体的に書くのがコツです。
  • tools(任意):使わせるツール。迷ったら Read, Glob, Grep, Bash の4つを指定しておけばOKです。
  • model(任意):使うモデル。単純作業ならHaiku、複雑ならSonnet、さらに難しければOpus。とりあえずSonnetにしておけば万能選手になります。

保存場所によって効果範囲が変わります。

保存場所

効果範囲

.claude/agents/(プロジェクト内)

そのプロジェクトだけで使える。Gitで共有も可能

~/.claude/agents/(ホームディレクトリ)

全プロジェクトで使える個人用

このレビュアーを作っておくと、実装のたびに「レビューして」と頼むだけで、Claude自身が改善点を見つけて直してくれます。AIが生成したコードは一発で完璧になることは少なく、微妙なバグを含みがちなので、自分でセルフチェックさせるこの使い方は特におすすめです。

フック:お願いではなく強制でツールの暴走を止める

2つ目の部品はフックです。少し難しく聞こえるかもしれませんが、セキュリティ対策として一番大事な機能なので、ぜひ押さえてください。

前提から話します。Claude Codeに「このファイルは絶対に編集しないで」と指示すると、Claudeは「わかりました」と守ろうとします。でも、100%守ってくれる保証はありません。プロンプトの指示はあくまで「お願い」であって、強制力がないからです。文脈次第で「この場面では触らないといけないかも」と判断し、意図せず編集してしまうことがあります。

そこで使うのがフックです。フックとは、Claudeが何かをする前や後に、自動で別の処理を差し込む仕組みで、プロンプトと違って強制力があります。

例えるなら玄関のオートロックです。「出るとき鍵を閉めてね」とお願いするのがプロンプト。忘れることもあります。一方オートロックは、ドアが閉まった瞬間に機械が自動でロックします。相手が忘れていても関係なく作動する——これがフックです。

<画像:「プロンプト=お願い/フック=オートロック」の対比イラスト>

フックが反応するタイミング

フックには反応するタイミングがいくつかあります。代表的なものは次のとおりです。

タイミング

意味

使い所

PreToolUse

ツールを使う

危険な操作をブロックする

PostToolUse

ツールを使った

自動でコード整形、通知

UserPromptSubmit

ユーザーが指示を送った瞬間

指示の監査ログを残す

Stop

Claudeが作業を終えた瞬間

完了通知、テスト実行

セキュリティで特に重要なのが PreToolUse、つまり「ツールを使う前」です。Claudeが操作を起こそうとした瞬間に割り込んで、許可するかしないかを決められます。ここでいうツールとは、ファイルの編集・作成やコマンド実行など、Claudeが外部に働きかける機能全般のことです。

実装:機密ファイルを守るフック

実際に1つ作ってみましょう。作るのは、.envpackage-lock.json.git/ といった機密ファイルへの編集を強制的にブロックするフックです。やることは2ステップだけです。

ステップ1:スクリプトファイルを作る

.claude/hooks/ フォルダを作り、その中に protect-files.sh を置きます。

#!/bin/bash
INPUT=$(cat)
FILE_PATH=$(echo "$INPUT" | jq -r '.tool_input.file_path // empty')

PROTECTED_PATTERNS=(".env" "package-lock.json" ".git/")

for pattern in "${PROTECTED_PATTERNS[@]}"; do
  if [[ "$FILE_PATH" == *"$pattern"* ]]; then
    echo "Blocked: $FILE_PATH matches protected pattern '$pattern'" >&2
    exit 2
  fi
done

exit 0

やっていることはシンプルです。Claudeから「これから編集するファイルのパス」をJSONで受け取り、PROTECTED_PATTERNS の名前とマッチしたら終了コード2で強制終了します。終了コード2が返ると、Claude Code側で「その操作はブロックされた」と判定されます。触らせたくないファイルは、この PROTECTED_PATTERNS に足していけばOKです。

Macの方は、実行権限を付けるのを忘れずに。

chmod +x .claude/hooks/protect-files.sh

ステップ2:settings.jsonに登録する

スクリプトを作っただけではClaudeは気づきません。.claude/settings.json に登録して教えます。

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/protect-files.sh"
          }
        ]
      }
    ]
  }
}

"matcher": "Edit|Write" は、ファイルの編集(Edit)と作成(Write)のときだけ発動させる指定です。これで「.env読むのは許可、書き換えるのはNG」という使い分けができます。

設定後は、有効化のためにセッションを再起動してください。試しに「.env ファイルを作って」と頼むと、フックが働いてブロックされます。これで、プロンプトのお願いが強制に変わったわけです。安心感がまるで違います。

手で設定するのが難しければ、この作業自体をClaude Codeに頼んでも構いません。「機密ファイルをブロックするスクリプトをフックとして設定して」とお願いし、スクリプトの内容を渡せば、設置まで代わりにやってくれます。

AIを使った開発を、独学で止まらず進めたい方へ
ここまでのサブエージェントやフックのように、「知っていれば数分、知らないとずっと自己流のまま」という機能はたくさんあります。AIプログラミングスクールSiiDでは、こうしたAI開発の実務スキルを、現役エンジニアの伴走つきで体系的に学べます。気になる方はSiiDの無料説明・申込ページをのぞいてみてください。

スキル:独自の知識と手順をClaudeに覚えさせる

3つ目の部品はスキルです。用途は大きく2つあります。

  1. Claudeに独自の知識や作業手順を教える。例えば、HTML/CSSを書くときに絶対守らせたいコーディングルールや、非エンジニアにも伝わる仕様書の書き方を、スキルとして覚えさせられます。
  2. スラッシュコマンドで呼び出せる機能を作る。例えば「このコードの意味をサクッと説明して」「この部分をリファクタして」といった操作を、コマンド一発で呼び出せるようにできます。

スキルの作り方

作り方はサブエージェントとよく似ていて、とても簡単です。マークダウンで書き、.claude/skills/<スキル名>/SKILL.md というパスに置くだけ。プロジェクト固有なら .claude/skills/、全プロジェクト共通なら ~/.claude/skills/ に保存します。

例えば「図解や例え話でコードを解説してもらうスキル」なら、中身はこうなります。

---
name: explain-code
description: 図解や例え話を使ってコードを解説します。コードの仕組みを説明する際、コードベースについて教える際、またはユーザーから「これはどう動くの?」と質問された際に使用します。
---

コードを説明する際は、必ず以下の点を含めてください:

1. **例え話から始める**:コードを日常生活の何かと比較する
2. **図を描いて説明する**:ASCIIアートを使って、流れ、構造、または関係性を示す
3. **コードを順を追って解説する**:何が起きているかをステップバイステップで説明する
4. **落とし穴を指摘する**:よくある間違いや誤解は何ですか?

説明は会話調を心がけてください。

各項目の意味は次のとおりです。

  • name:スキルの名前。分かりやすく付けます。置き場所のフォルダ名と揃えておくと管理しやすいです。
  • description:どんなスキルかの要約。Claudeはこれを読んで「今のタスクで使うべきか」を判断します。サブエージェントと同じく、いつ使ってほしいかを具体的に書くのがコツです。
  • --- 以降:スキルの中身。Claudeに教えたい知識や手順を自由に書きます。

作ったスキルは自動で発動する

スキルの便利なところは、呼び出しを意識しなくてもいい点です。上の例を置いておけば、チャットで「このコードどう動くの?」と聞いたときに、Claudeがdescriptionを見て「explain-codeを使う場面だ」と判断し、自動で発動します。結果は、例え話→ASCII図→ステップ解説という、スキルに書いた形式で返ってきます。

つまり、.claude/skills/ にファイルを1枚置くだけで、以降はいつもの会話の中でその知識や手順が自然に効いてくる、というわけです。

なお、スキルを手で書くのが難しそうなら、後半で紹介するSuperpowersというプラグインに含まれる /writing-skills を使うと、質問に答えるだけでスキルのファイルを自動生成してくれます。まずはこれで叩き台を作るのも手です。

MCP:Claudeを外部サービスの接続口につなぐ

4つ目の部品はMCPです。MCP(Model Context Protocol)とは、Claudeを外部サービスとつなぐ接続口のこと。GitHub、Slack、Notion、Figma、Webブラウザなど、つなげる相手は多岐にわたります。

MCPを入れると、Claudeから直接こんなことが、自然言語の指示だけでできるようになります。

  • ブラウザを操作して動作確認やデバッグを任せる
  • Figmaを操作してデザインさせる
  • Slackに投稿させる

ここまで紹介したサブエージェント・フック・スキルと違い、MCPは自作のハードルが高いのが特徴です。Figmaのように、外部サービス側が公式にMCPを提供しているケースがほとんどで、自分でゼロから作るものではありません。

ではどう入れるかというと、答えは次の章です。MCPも、この後説明する「プラグイン」という形式で導入するのが一番簡単です。スキルやサブエージェントと違って自作しない分、MCPこそプラグイン経由での導入が現実的な選択になります。

プラグインでまるっと導入する

ここまで4つの部品を見てきました。最後に、それらをまとめて配っている「箱」=プラグインの入れ方です。

プラグインの導入は、CLI版のClaude Code経由が一番簡単です。一度導入してしまえばVS Codeの拡張機能版でも使えるようになるので、CLI版に抵抗がある人も、導入作業だけはCLI版でやるのがおすすめです。

インストールはコマンド一発です。

claude plugin install インストールしたいプラグインの名前

どんなプラグインがあるかは、公式のプラグインページで探せます。

誰が作ったか分からないプラグインはセキュリティ的に怖いので、まずは公式ページに載っている信頼できるものから入れましょう。ページで目当てのプラグインを開き、「Install in Claude Code」からコマンドをコピーして、ターミナルに貼り付けてエンターを押すだけです。

<画像:claude.com/plugins のプラグイン詳細ページと「Install in Claude Code」ボタン>

入れたプラグインは「Manage Plugins」で確認・削除できます。認識されないときは、セッションを開き直すか、VS Code自体を再起動してみてください。

まず入れておきたいプラグイン3選

数あるプラグインの中から、「入れておくだけで体験が変わる」ものを3つに絞って紹介します。

  • Superpowers:開発・設計・レビューなど、あらゆる場面でベストな進め方をスキル化し、さらにサブエージェントを駆使して品質を底上げするプラグイン。全体的に出力のクオリティが上がるので、最初の1つに最適です。
  • Context7:ライブラリの最新公式ドキュメントをClaudeが参照できるようになるプラグイン。「知識が古くて昔のAPIで書いてしまう」というAIあるあるを解消してくれます。
  • Playwright:Claudeがブラウザを開いて、クリック・フォーム入力・スクリーンショットまで自動で行うプラグイン。作ったアプリをClaude自身にブラウザで動作確認させることができます。

このほか、GitHub操作用の公式プラグインや、言語別のLSP(型エラーや構文ミスをその場で検知するプラグイン)なども便利です。まずは上の3つから試して、必要に応じて足していきましょう!

まずは1つ、自分の手で作ってみる

プラグインは4つの拡張を配る「箱」でしたが、いちばん力がつくのは、マークダウン1枚から自分でサブエージェントやスキルを作ってみることです。この記事のコードレビュー用サブエージェントか、機密ファイルを守るフックのどちらか1つを、まず自分の環境に置いてみてください。それだけでClaude Codeの使い心地は一段変わります。

こうした「AIを使った開発の実務スキル」を独学で止まらず体系的に身につけたい方は、AIプログラミングスクールSiiDをのぞいてみてください。現役エンジニアの伴走のもと、AIを前提にした開発の進め方を学べます。

もし、

「プログラミングを体系的に学びたい」
「エンジニア転職を頑張りたい」
「独学に限界を感じてきた...」
「コミュニティで仲間と共に学びたい」

などと感じられたら、ぜひ検討してみてください。

個別面談・説明会はこちら!


まずは様子見...という方は、公式LINEにぜひご登録下さい。
学習や転職ノウハウに関する豪華特典11個を無料配布しています!
LINE紹介ページで特典を確認する


■YouTube(SiiD受講生さま実績)

■YouTube(セイト先生メイン)

■X(旧Twitter)