Claude には「エージェント的に動く」ための 5 つの部品があるらしいんだわ
この 5 つ、名前だけ聞いても「で、どう違うん?」ってなるよね
実際、ワイも最初は混乱してた
でも、それぞれの役割と使い分けを理解すると、Claude の使い方が一気に広がるんよ
公式ブログの「Skills Explained」って記事がめちゃ分かりやすくまとめてくれてたので、それを元に整理していく。5つの部品の解説と導入方法をまとめてみた
まず全体像を押さえておこう
Claude には以下の 5 つの仕組みがある
それぞれ役割が完全に別で、組み合わせることで強力なワークフローを作れる
公式ブログでも"The real power emerges when you combine these building blocks"(これらの部品を組み合わせることで本当の力が発揮される)って言ってて、単独で使うよりも組み合わせることで本当の力を発揮するんよね
じゃあ、それぞれ詳しく見ていこう
Skills はClaude が自動で読み込む専門知識のフォルダ やな
コード、文書、ガイドラインなんかを入れておける
特徴としては以下
まぁ、エコよね
AI っぽいデザインは、Skills を使うことで回避できる。例えば、「Inter フォントを使わないで」とか「紫のグラデーションを避けて」とか、そんな指示を Skills に書いておけば、Claude が自動的にその指示を参照してくれる
すると、画一的なデザインじゃなくなるから個性的なデザインになるんや
公式ブログでは"organizational workflows, domain expertise, personal preferences"(組織のワークフロー、専門知識、個人の好み)に最適って書かれてた
たとえば、毎回「この形式で議事録をまとめて」って言うのが面倒やったら、議事録フォーマットを Skill にしておく
そうすれば、Claude が自動的にその形式を参照してくれる
公式ブログでは"If you find yourself typing the same prompt repeatedly across multiple conversations, it's time to create a Skill"(複数の会話で同じプロンプトを繰り返し入力していることに気づいたら、それは Skill を作成すべき時だ)って言われてる
同じ指示を何度も繰り返してるなら、それは Skill にすべきタイミングってこと
つまり、Skills は「再利用可能な専門知識」 として機能する
Prompts は会話中に自然言語で与える指示
一時的で、その場限りの対応に使う
特徴としては以下
公式ブログでは"ephemeral and reactive"(一時的で反応的な)って表現されてて、一時的で反応的なものってことよね
たとえば「この文章を要約して」とか「エラーを修正して」みたいな、その場で必要な指示は Prompts として与える
Skills が「ルールブック」なら、Prompts は「今やってほしいこと」ってイメージやな
どう?だいぶ簡単やろ
Projects は会話 + 知識ベース + 指示が全部入った専用ワークスペース
特徴としては以下
公式ブログでは"independent workspace with its own chat history and knowledge base"(独自のチャット履歴とナレッジベースを持つ独立したワークスペース)って説明されてる
たとえば、特定のプロジェクトに関するドキュメント、過去の会話履歴、プロジェクト固有のルールを全部まとめておきたいときに使う
Projects は「複数会話間で永続的なコンテキストが必要な場合」 に有効ってことよね
Subagents は独自のコンテキストとシステムプロンプトを持つ専門 AI
別人格の Claude って考えると分かりやすい
特徴としては以下
公式ブログでは"specialized AIs with their own context and system prompt"(独自のコンテキストとシステムプロンプトを持つ特化型 AI)って説明されてて、Claude Code や Agent SDK で利用可能らしい
みたいに、独立したタスクを並列化したいときに使う
たとえば、コードレビューだけを担当する Subagent を作っておけば、コードを書くたびに自動的にレビューしてくれる
Subagents は「特定ワークフロー向けの独立した目的別エージェント」 ってことやな
MCP(Model Context Protocol)はClaude を現実世界のシステムに接続するプロトコル
公式ブログでは"universal connection layer"(普遍的な接続レイヤー)って表現されてる
特徴としては以下
たとえば、Google Drive のスプレッドシートを読み込んで分析したり、GitHub のコードをレビューしたりできる
ここ重要なんやけど、Skills と MCP の役割は明確に違う
たとえば、「データベース照会時は必ず日付範囲でフィルタする」は Skills で定義して、データベース自体へのアクセスは MCP で実装する
Skills が「やり方」、MCP が「接続」って役割分担になってるんよね
じゃあ、実際にどう使い分けるのか
公式ブログでは以下みたいな判断軸が示されてた
| 判断ポイント | 対応するツール |
|---|---|
| 繰り返し使う専門知識 | Skills |
| 今この瞬間の指示 | Prompts |
さらに、使い分けの軸は「永続性」(どのくらい長く使うか)と「範囲」(どのくらい広く適用するか)やな
公式ブログで紹介されてた「研究エージェント」の例がめちゃ分かりやすかったので、それを元に説明する
このワークフローは、競合分析を行うための構成になってる
この構成だと、各ツールが協働する
こうやって組み合わせることで、単独では実現できない高度なワークフローが作れるんよね
自分でも実践できそうな例を考えてみた
この構成だと
みたいな感じで、各ツールの役割が明確になってる
最後に、Skills と他の要素の違いをもう一度整理しておこう
こうやって整理すると、それぞれの役割がかなり明確になる
理論は分かったけど、じゃあ実際にどうやって使い始めるのか
ここからは、Skills、Projects、MCP の具体的な導入方法を説明していく
Skills を作るには、まず保存場所を決める必要がある
保存場所は 2 つ
~/.claude/skills/ に保存(全プロジェクトで利用可能).claude/skills/ に保存(チーム全体で共有)個人用は自分だけが使う汎用的な Skills、プロジェクト用はチームで共有する専用 Skills って使い分けやな
ファイル構成
Skills はディレクトリ構成で、必須ファイルはSKILL.md やな
SKILL.md の書き方
YAML フロントマターと Markdown で記述する
ポイントはdescription に「何をするか」と「いつ使うか」の両方を書く こと
これによって、Claude が適切に発見・活用してくれる
Projects は Claude Code のプロジェクト機能やな
初期化方法
プロジェクトディレクトリで以下を実行
これで.claude/ ディレクトリが作成される
CLAUDE.md の設定
プロジェクトのルートにCLAUDE.md ファイルを作成すると、Claude にプロジェクトの方針を教えられる
設定の階層
Claude Code の設定は 3 階層になってる
~/.claude/ で定義(全プロジェクトに適用).claude/ またはCLAUDE.md で定義下の階層が上書きするので、プロジェクト設定がグローバル設定より優先される
MCP を使うと、外部ツールやデータソースに接続できる
インストール方法は 3 つ
クラウドベースのサービスに最適
※ SSE は非推奨らしい。可能な限り HTTP を使う方が良さそう
-- の後ろに実際のコマンドを記載する
管理コマンド
Claude Code 内では/mcp で認証状態を確認できる
設定スコープ
.mcp.json でチーム全体と共有チームで使う MCP サーバーは Project スコープで設定すると便利やな
人気のサーバー例
Stripe、Notion、GitHub、Sentry などの主要サービスが対応してる
ただし、公式ドキュメントにも書かれてるけど、サードパーティ MCP サーバーは自己責任で使用 すること
Anthropic は全サーバーの正確性やセキュリティを保証してないから、信頼できるサーバーを選ぶのが大事
Subagents は特定のタスクや役割に特化したカスタム AI アシスタント
雑に言うと「メインと別で動いてくれる専門的なアシスタント」やな
雑にさらに分かりやすく言うと
メイン Claude に対して、
みたいな “別人格の AI エージェント” を横に置いて、必要な時だけ呼び出したり、 Claude 本体が自動で振り分けたりする仕組み。
つまり、専門家を集めてチーム編成できるってことやね
繰り返しの作業なんかに威力を発揮する
プロンプトの指示が減るので、メインの作業に集中できる
メインの Claude とは別のコンテキストで実行されて、それぞれが独自のシステムプロンプトとツール権限を持てる
Subagents の強み
公式ドキュメントでは、以下の 4 つのメリットが強調されてる
作成方法
Claude Code を起動した後に/agents コマンドを入力する
すると、対話形式でサブエージェントを作成できる
事前に CLAUDE md を書いていたら、それを元に作ってくれる
作成手順は 5 ステップ
.claude/agents)または個人単位(~/.claude/agents)公式ドキュメントでは「Claude で生成してからカスタマイズする」 のが推奨されてる
これによって、しっかりした基盤を得てから、自分のニーズに合わせて調整できるんよね
設定ファイルの構造
生成された設定ファイルは、YAML フロントマター形式のマークダウンファイルになる
主な設定項目
inherit でメイン会話と同じモデルを使用使い方
サブエージェントの呼び出し方は 2 つ
@code-reviewer でメンションたとえば、コードレビュー専用のサブエージェントを作っておけば、「このコードをレビューして」と言うだけで自動的にそのサブエージェントが起動する
ビルトインの Subagents
Claude Code には、最初から用意されてる Subagent もある
特にPlan subagent は、プランモード(実行しないモード)で使われる専用のサブエージェント
コードベースを調査して、実行前に計画を立てるときに自動的に起動するんよね
tools の制限が重要
Subagents の強みは、ツール権限を分離できる こと
たとえば、コードレビュー専用のサブエージェントには Read、Grep、Bash だけを許可して、Write や Edit は許可しない
こうすることで、勝手にコードを書き換えることを防げる
逆に、tools を指定しないと全てのツールが使えるので、勝手なことをすることになるから注意やな
Claude の 5 つの部品を一言でまとめるとこうなる
この 5 つを組み合わせることで、Claude を「エージェント的に動く」システムとして使えるようになる
公式ブログでも強調されてたけど、単独で使うよりも組み合わせることで本当の力を発揮するんよね
特に、Skills はプロンプトのモジュール化として機能するから、まず Skills を整えることから始めるのが良さそう
同じ指示を何度も繰り返してるなら、それは Skills にすべきタイミングってことやな