Claude Code スキル徹底解説:完全ガイド(2026年版)
Claude Code スキルとは、SKILL.md ファイルを含むフォルダのことです。フロントマターに書かれた短い description と、マークダウンの手順(および任意のスクリプト)が、diff のレビュー、画像の最適化、変更履歴(changelog)の作成といった一つの特定の作業のやり方を Claude Code に教えます。リクエストがその説明に一致すると Claude は自動的にスキルを呼び出し、あるいは /skill-name で手動で呼び出すこともできます。スキルはオープンな Agent Skills 標準に準拠しており、2025年10月16日に一般提供が開始されました。巧妙な点は、コンテキストに残るのは1行の説明だけなので、実際に使うまでは大量のスキルライブラリを抱えても負担が小さいことです。
公式ドキュメント code.claude.com/docs/en/skills(2026-08-09 に参照)で検証済み。
Claude Code スキルとは?
Claude Code をしばらく使っていると、繰り返し行う作業を自分好みのやり方で覚えておいてほしい—「コードをレビューするときはこのチェックリストに従って」とか「画像を最適化するときはちょうどこのコマンドを実行して」といったふうに—と思ったことがあるはずです。スキルはまさにその問題を解決します。
Claude Code スキルとは、再利用可能でモデルから呼び出せる指示パックです。それぞれが SKILL.md ファイルを持つフォルダで、いつ使うのか、そしてどのように作業をこなすのかを Claude に伝えます。スキルは、壁にピン留めされたラミネート加工の「この作業のやり方」カードだと考えてください。Claude はまずタイトルを読んでどんなカードがあるかを把握し、作業が必要になったときに初めて1枚を取り出して詳細を読みます。
すべてのスキルには2つの中心的な要素があります。
descriptionフロントマター — スキルが何をするのか、いつ起動するのかを示す短い1行です。これは Claude が常に「見ている」部分です。- マークダウン本文 — 詳細な手順、規約、例です。スキルが実際に呼び出されたときにのみ読み込まれます。
スキルは Claude 専用の発明ではありません。オープンな Agent Skills 標準(agentskills.io)に準拠しており、同じ SKILL.md 形式がさまざまな Claude の環境で、そして原理的にはこの標準を採用した他のツールでも動作します。スキルは一度書けば、プロジェクトをまたいで再利用したり、チームメンバーと共有したり、あらかじめ作られたパックをまとめてインストールしたりできます。
最初に強調しておきたい2026年の変更が1つあります。カスタムスラッシュコマンドはスキルに統合されました。古い .claude/commands/*.md ファイルも引き続き動作しますが、いまや SKILL.md が両方の役割を果たします—Claude は説明に基づいて自動的に呼び出せますし、対応する /skill-name コマンドも作成されます。2025年初頭に書かれたチュートリアルで「コマンド」と「スキル」が2つの別々の仕組みとして扱われていたら、それは統合前のモデルです。
Claude Code スキルの仕組み(プログレッシブディスクロージャー)
これは、スキルが単なる「プロンプトをきれいに保管する方法」ではなく、なぜそれだけの価値があるのかを理解するうえで最も重要な部分です。この仕組みはプログレッシブディスクロージャー(段階的開示)と呼ばれます。
Claude Code は起動時に、すべてのスキルの内容全体をコンテキストウィンドウに読み込むわけではありません。代わりに各スキルの短い description だけを読み込み—「code-review スキル、deploy スキル、image-optimizer スキルがある」と分かる程度です。作業がそのいずれかの説明に一致すると、Claude はそのスキル1つの本文全体を読んで実行します。補助ファイル(テンプレート、リファレンス文書、スクリプト)は、スキルが明示的に参照したときにだけ読み込まれます。
トークンコストの直感的な説明です。あらゆる規約を CLAUDE.md に詰め込むと、そのすべてが毎ターン、コンテキストに居座ります—めったに必要としない90%のガイダンスも含めてです。しかも毎ターンそのトークン代を支払うことになります。スキルなら「常時発生するコスト」はスキルごとの数行の description だけで、重い本文が必要になった瞬間にだけコンテキストに入ります。こうしてスキルは、コンテキストウィンドウを膨らませることなく大量の指示ライブラリを保てるのです。
スキルは次の2つの方法のいずれかで起動されます。
- 自動的に — Claude はあなたのリクエストをすべてのスキルの
descriptionと照合し、どれを呼び出すか判断します。あなたは作業を説明するだけで、他には何もしません。スキルの側は明快な説明さえあれば十分です。 /skill-nameで手動で — 特定のスキルを直接呼び出します。例えば/code-reviewです。決まったワークフローを Claude に強制したいときに便利です。
Claude は自動選択にこの description を頼りにするため、その1行の質がスキルが適切な瞬間に発動するかどうかを決めます。「画像を扱うのに役立つ」のような曖昧な説明は Claude をためらわせますが、「PNG を WebP に変換して 200KB 未満に圧縮するときに使う」のようなトリガーの豊富な説明はほぼ毎回発動します。
スキル vs コマンド、サブエージェント、フック、MCP
ここが初心者のつまずきどころです—Claude Code には似た響きの概念のファミリーが一式あります。位置づけを把握できるよう、それぞれ1〜2行の手早い比較を挙げます。
| 概念 | 正体 | スキルとの関係 |
|---|---|---|
| コマンド | カスタムスラッシュコマンド(/deploy…) | 2026年にスキルへ統合:いまや SKILL.md が /skill-name コマンドも作成します。旧式のコマンドファイルも引き続き動作します。 |
| サブエージェント | 独自の隔離されたコンテキストを持つ補助エージェント | コンテキストを分離しておく「作業役」です。スキルはサブエージェントの内部で実行でき、メインのコンテキストを圧迫しません。 |
| フック | イベントの前後で発火するスクリプト | イベント(ツール呼び出しの前後)によって起動されます。スキルのようにリクエストの意味によって起動するのではありません。 |
| MCP | 外部のツールやデータを接続するプロトコル | 外部システムへの「パイプ」です。スキルは作業のやり方の指示であり、MCP は接続です。スキル ≠ MCP。 |
核心的な違いはこうです。スキルはClaude の働き方を形づくるマークダウンとスクリプトであり、一方 MCP は外部システムから新しい能力を Claude に与えるツールプロトコルです。両者は補い合います—スキルは MCP で接続されたツールをうまく使う方法を記述できます。それぞれの概念がどこから始まりどこで終わるのか、その全容を知りたい方のために、専用の詳しい解説を書きました:スキル vs サブエージェント vs フック vs MCP。
スキルの置き場所(個人、プロジェクト、プラグイン、エンタープライズ)
スキルフォルダをどこに置くかで、その適用範囲が決まります。Claude Code は次の複数の場所を、優先順位の高い順にスキルを探します。
| 範囲 | パス | 適用対象 |
|---|---|---|
| エンタープライズ | (組織の管理者が管理) | 組織全体に適用。最優先。 |
| 個人 | ~/.claude/skills/ | 自分のマシン上のすべてのプロジェクトで利用可能 |
| プロジェクト | .claude/skills/ | そのリポジトリ内のみ。コミットすればチーム全体と共有できます |
| プラグイン | (インストール済みプラグインに同梱) | インストールしたプラグインが提供します |
すべての作業に共通する自分の習慣には個人スキルを、特定のリポジトリに属する規約にはプロジェクトスキルを使いましょう(.claude/skills/ をコミットすれば、チームの全員がそれを手に入れます)。うれしい細かな点が1つ:Claude Code はスキルファイルの変更をライブで検知します—SKILL.md を編集すると、再起動なしで新しいバージョンを取り込むので、スキルの改良が速く進みます。
SKILL.md ファイルの構造
ファイルのレベルで見ると、スキルは驚くほど単純です。スキルのスラッグを名前にしたフォルダで、必須の SKILL.md を1つ含むだけです。実行時にスキルが参照する任意の補助ファイル—テンプレート、スクリプト、例—を追加できます。
~/.claude/skills/optimize-web-image/
├── SKILL.md (required)
├── template.md (optional - output template)
├── examples/ (optional - reference examples)
└── scripts/convert.sh (optional - helper script)
SKILL.md そのものは、YAML フロントマターとそれに続くマークダウン本文です。実際に動く本物のスキルを示します。
---
name: optimize-web-image
description: Convert a PNG to WebP and compress under 200KB. Use when the user needs to optimize an image for the web.
allowed-tools: Bash, Read
---
# Optimize web image
When asked to optimize an image:
1. Run `cwebp -q 80 input.png -o output.webp`.
2. Check the output file size. If it is still over 200KB,
drop quality to `-q 70` and run again.
3. Report the new file path and its final size.
これで全部です。フロントマターはいつスキルを使うかを Claude に伝え、本文はどのように使うかを伝えます。よく使うことになるフロントマターのフィールドを挙げます(全一覧は公式ドキュメントを参照してください)。
| フィールド | 役割 |
|---|---|
name | スキルの識別子。入力する /skill-name でもあります。 |
description | Claude がスキルを自動選択するのに使う1行。最も重要な単一のフィールドで、明快なトリガーを書きましょう。 |
allowed-tools | スキルが使えるツールを制限します(例:Bash, Read)。安全のために有効です。 |
disable-model-invocation | true にすると Claude が自動で発火できなくなり、手動で呼び出す必要があります。副作用のあるアクションに使います。 |
context | fork に設定すると、スキルを隔離されたサブエージェントで実行します(応用セクションを参照)。 |
実用的なルールが1つ:SKILL.md はおおよそ500行未満に保ちましょう。スキルは一度呼び出されると本文がコンテキストに入り、そのセッションのあいだ残り続けます。ですから肥大化した本文はトークンの無駄です—長いリファレンス資料は補助ファイルに移し、必要なときだけそれを指し示しましょう。
5分で作る最初のスキル(ステップバイステップ)
小さくても本当に役立つスキルを作ってみましょう:summarize-changes は、最近の git diff を分かりやすい日常語の要約に変えます。3ステップです。
- フォルダを作成します(個人スコープなので、どのプロジェクトでも機能します):
mkdir -p ~/.claude/skills/summarize-changes SKILL.mdを書きます:場所は~/.claude/skills/summarize-changes/SKILL.mdです:--- name: summarize-changes description: Summarize the current git changes in plain English, grouped by area. Use when the user asks what changed or wants a PR summary. allowed-tools: Bash, Read --- # Summarize changes 1. Run `git diff --stat` and `git diff` for uncommitted changes. 2. Group edits by area (feature, fix, docs, tests, chore). 3. Write 3-6 bullet points in plain English - what changed and why it matters - short enough to paste into a pull request.- 2通りの方法でテストします。コミットしていない編集があるリポジトリで Claude Code を開き、コマンドを直接入力するか—
/summarize-changes—あるいは自然に「変更した内容を要約して」と頼むだけです。descriptionが明快なら、自然な指示だけでスキル名を挙げなくても自動発火します。
Claude Code はスキルファイルをライブで検知するので、再起動は不要です—ファイルを保存した瞬間にスキルが使えるようになります。
スキルの実践例(リアルな例と率直な感想)
上の summarize-changes スキルは、私が実際に個人フォルダに置いているもので、スキルが真価を発揮する場面—そしてそうでない場面—を示す良い例です。
以前は:セッションの終わりに Claude へ「PR の説明文を書いて」と頼むと、コミットメッセージに寄りかかった一般的な文章が返ってきて、なぜが抜け落ちていました。今は:このスキルがあると、手順によって実際の diff を読み、領域ごとにまとめるよう強制されるので、要約は自分がコミットにどうラベル付けしたかではなく、本当に変わった内容を反映します。手順が前回どう表現したかの記憶ではなくスキルの中にあるので、出力は毎回一貫しています。
最初にうまくいかなかったこと:私の最初の description はただの「summarize git changes」で、Claude はそれを無視して代わりにコミット履歴から答えることがありました。具体的なトリガー—「ユーザーが何が変わったかを尋ねる、または PR の要約を求めるときに使う」—を加えると、自動呼び出しが直りました。これが率直な教訓です:スキルはその説明の良し悪しがすべてで、その1行は数回は手直しするものだと考えておきましょう。
もう1つの率直な注意点:これは小さく、タスクの形をした仕事であり、まさにスキルに向いています。もしリポジトリのコーディングスタイル全体をスキルに詰め込もうとしたら、それは置き場所を間違えています—すべてのターンに適用されるスタイルは、呼び出し時にだけ読み込まれるスキルではなく CLAUDE.md に属します。
応用:動的コンテキストとスキルのサブエージェント実行
基本に慣れてくると、スキルをさらに強力にする2つの機能があります。
動的コンテキスト注入。SKILL.md の中に ` !`command` ` という構文でシェルコマンドを埋め込むと、Claude Code がそれを実行し、Claude が本文を読む前にその出力を注入します。つまりスキルは静的なテキストではなくライブの状態に対して働けるのです。
---
name: summarize-changes
description: Summarize the current git diff in plain English.
---
# Summarize changes
Here is the current diff:
!`git diff HEAD`
Summarize the changes above, grouped by area, in 3-6 bullets.
` !`git diff HEAD` ` の行はスキルの読み込み時に実行されるので、Claude は実際の diff がすでにインライン展開された状態で目にします—別途ツールを呼び出す必要はありません。
スキルをサブエージェントとして実行する。フロントマターで context: fork を設定すると、スキルは独自のコンテキストウィンドウを持つ隔離されたサブエージェントで実行され、結果だけをメインのセッションに返します。
---
name: summarize-changes
description: Summarize the current git diff in an isolated subagent.
context: fork
---
これはトークンを大量に消費する仕事に最適です—巨大な diff のレビューや多数のファイルの走査などです—かさばる中間作業がフォークされたコンテキストに留まり、メインの会話を散らかすことがありません。フォークされたスキルと本格的なサブエージェントの関係を理解したい方は、その境界を スキル vs サブエージェント vs フック vs MCP の比較で扱っています。
すべてを自作しない—あらかじめ用意されたスキルパック
正確なワークフローを自分好みに仕立てたいなら、手作業でスキルを書くのは素晴らしい方法です。ですが、よくある作業—フロントエンド、バックエンド、データベース、DevOps、コードレビュー—のための確かなライブラリが欲しいだけなら、SKILL.md をすべて自分で書く必要はありません。厳選されたスキルパックをインストールできます。
人気の選択肢の1つが AgentKit、Claude Code 向けのあらかじめ用意されたスキルパックで(ak CLI 経由でインストール)、108以上の既製スキルを備えています。(ここでの AgentKit は Claude Code 向けのキット—CLI は ak、agentkit.best—を指し、OpenAI の AgentKit ではありません。)その Engineer Kit は99ドルで掲載されており、生涯アップデートと返金保証が付きます。ページに定期課金の記載はありません。まず複数の選択肢を比べたいなら、私がまとめた2026年のベスト Claude Code キットで横並びに比較しています。AgentKit スキルパックを見てみる(リンク経由で20%オフ)のもよいでしょう。ご自身で判断してください。
ニーズが小さいうちは、まず自分でスキルを書きましょう。キットが元を取れるのは、大量のライブラリを一から作る手間を省きたいときだけです。
ベストプラクティスと制約
スキルは便利ですが、「入れれば完璧」というものではありません。率直なところを示します。
- 説明は常にコンテキストにあります。すべてのスキルの1行の説明は、常時コンテキストウィンドウに居座ります。そのコストはスキル1つあたりはごくわずかですが、重複する数十のスキルをインストールすると積み重なり、Claude が正しいものを選びにくくなることがあります—名前と説明は互いに区別できるようにしましょう。
- モデルはスキルを無視することがあります。スキルが自動発火しないなら、その説明はほぼ間違いなく曖昧すぎます。具体的なトリガー(「〜のときに使う」)で強化するか、
/skill-nameで手動で呼び出しましょう。 - 呼び出されたスキルはターンをまたいで残ります。プログレッシブディスクロージャーは「まだ使っていない」部分のトークンを節約しますが、いったんスキルが読み込まれると、その本文はそのセッションのあいだコンテキストに残ります。本文は短く保ち、長いリファレンス資料は補助ファイルに移しましょう。
- 副作用のあるアクションは守りを固めましょう。デプロイ、削除、本番への書き込みを行うスキルには
disable-model-invocationを設定し、Claude が独断で発火できないようにします—意図的に呼び出すのです。 - 何でもスキルにしないこと。すべてのターンに適用される規約(リポジトリ全般のコーディングスタイル)は依然として CLAUDE.md に属します。スキルはタスクごとのワークフロー向けです。正しい置き場所を選ぶことがトークン効率を保ちます。
skill-creatorツールを使えば、コミットする前にスキルの合格率をトークンコストと照らして評価することもできます。
FAQ
Claude Code スキルは無料ですか?
はい—スキルは Claude Code の組み込み機能なので、既存の Claude Code プラン(例えば Pro は月額20ドル)以外に、使ったり自作したりする費用はかかりません。費用が発生するのは、サードパーティ製のあらかじめ用意されたスキルパックを購入することを選んだ場合だけです。
スキル vs MCP—違いは何ですか?
スキルは、Claude が作業をどのように行うかを形づくるマークダウンの指示(および任意のスクリプト)です。MCP は、Claude を外部のツールやデータに接続するプロトコルです。スキルは振る舞いを変え、MCP は能力を加えます。両者は連携します—スキルは MCP で接続されたツールをうまく使う方法を記述できます。
スキルはどこに置きますか?
個人スキルは ~/.claude/skills/(マシン上のどこでも利用可能)に、プロジェクトスキルはリポジトリ内の .claude/skills/(コミットしてチームと共有)に置きます。各スキルは SKILL.md を含む独自のフォルダです。
Claude はスキルを自動的に呼び出せますか?
はい。Claude はあなたのリクエストを各スキルの description と照合し、最も合うものを自動で呼び出します—名前を挙げる必要はありません。/skill-name で手動で呼び出したり、disable-model-invocation を設定して手動呼び出しを必須にしたりすることもできます。
スキルは Claude アプリや API でも動きますか?
はい。スキルはオープンな Agent Skills 標準に準拠しているので、Claude アプリ(Pro、Max、Team、Enterprise)でも、Developer Platform / Skills API 経由でも動作します。Claude Code は、呼び出しの制御、サブエージェント実行、動的コンテキスト注入といったターミナル固有の追加機能を備えています。
スキルは CLAUDE.md とどう違いますか?
CLAUDE.md はすべてのターンに適用される規約を保持し、常にコンテキストに残ります。スキルは特定のタスク向けの指示を保持し、プログレッシブディスクロージャーのおかげで、呼び出されたときにのみ本文全体を読み込みます。常時有効なルールには CLAUDE.md を、タスクごとのワークフローにはスキルを使いましょう。
まとめと次のステップ
Claude Code スキルは、Claude に一度に1つのタスクずつ仕事を教えるすっきりした方法です:1つのフォルダ、1つの SKILL.md、自動または /skill-name で発火し、プログレッシブディスクロージャーによって低コストに保たれます。ここから先は、概念のファミリー全体を位置づけるために スキル vs サブエージェント vs フック vs MCP の完全な解説を読み、まだ全体像をつかんでいる途中なら Claude Code とは何か を読み返し、白紙のファイルより出来合いのライブラリから始めたいなら、一から自作する前に AgentKit スキルパックを試して(リンク経由で20%オフ)みてください。