Claude Codeを使っていると、同じような作業を何度も繰り返すことがありませんか? デプロイ手順やコードレビューのルール、特定のフレームワーク固有の知識など、毎回プロンプトに書くのは面倒ですよね。
そこで登場するのが「スキル(Skills)」機能です。Markdownファイルにルールを書いておくだけで、Claudeが自動的にそれを読み込んで専門知識として活用してくれます。
みなさんこんにちは! 今日はClaude Codeの「スキル」機能について解説するよ。
スキルって名前からしてワクワクしない? RPGみたいで。Claudeに新しいスキルを覚えさせるってこと…だよね?
概ねその理解で合っています。スキルとは、Claude Codeに特定の専門知識や手順を教えるための仕組みです。SKILL.mdというMarkdownファイルに指示を書きます。
スキル(Skills)とは?
スキルは、Claude Codeの能力を拡張するためのカスタム機能モジュールです。具体的には、SKILL.mdファイルにMarkdown形式で指示を記述し、特定のディレクトリに保存するだけ。Claudeは必要な場面で自動的にそのスキルを読み込み、専門知識として活用します。
たとえば「このプロジェクトでは必ずPythonのblackフォーマッターを使う」「デプロイ前にテストを3回実行する」といったルールをスキルに書いておけば、毎回説明する必要がなくなります。
スキルの基本構造: ディレクトリ/SKILL.md。SKILL.mdにはYAMLフロントマター(メタデータ)+ Markdown本文(指示内容)を記述します。
保存場所は3種類: (1) ~/.claude/skills/(個人用・全プロジェクト共通)、(2) .claude/skills/(プロジェクト専用)、(3) エンタープライズ設定(組織全体)。
う〜ん、保存場所が3つもあるのか。個人用とプロジェクト用って何が違うの?
個人用(~/.claude/skills/)は、どのプロジェクトを開いても常に使えるスキルです。例えば「コミットメッセージは日本語で書く」のような個人の好み。プロジェクト用(.claude/skills/)はそのリポジトリ固有のルールです。チームメンバーとgitで共有できます。
あ、gitで共有できるんだ! それなら新しく入ったメンバーも同じルールでClaude使えるね。
その通りです。チームの暗黙知をスキルとしてコード化する、という使い方が最も効果的です。
スキルの作り方
スキルの作成はとてもシンプルです。必要なのはディレクトリとSKILL.mdファイルだけ。
最小構成
my-skill/
├── SKILL.md # 必須: スキルの指示内容
├── reference.md # 任意: 詳細なリファレンス
└── examples/ # 任意: サンプル出力
└── sample.md
SKILL.mdの書き方
ファイルの先頭にYAMLフロントマター(メタデータ)を記述し、その下にMarkdownで指示内容を書きます。
---
name: deploy-checker
description: デプロイ前のチェックリストを実行するスキル
---
# デプロイ前チェック
デプロイ前に以下の項目を確認してください:
1. テストが全件パスしているか
2. lint エラーがないか
3. 環境変数が正しく設定されているか
4. マイグレーションが最新か
え、これだけ!? Markdownで書くだけでClaudeが覚えてくれるの? すごくない?
はい。YAMLフロントマターのnameがスラッシュコマンド名になります。この例なら/deploy-checkerで実行できます。
YAMLフロントマターの主なフィールド:
name(必須): スラッシュコマンド名。小文字・数字・ハイフンのみ。
description(推奨): スキルの説明文。Claudeが自動読み込みの判断に使用。250文字以内推奨。
disable-model-invocation: true を設定すると、Claudeの自動実行を無効にして手動実行(/name)のみに制限できます。デプロイなど危険な操作に推奨。
スラッシュコマンドとの統合
2026年のアップデートで、従来の.claude/commands/に置いていたスラッシュコマンドとスキルが統合されました。既存のコマンドファイルもそのまま動作しますが、新規作成はスキル形式が推奨されています。
ん? じゃあ前からあった.claude/commands/のファイルはどうなるの? 書き直さないとダメ?
既存のコマンドファイルはそのまま動作します。ただし新規に作る場合はスキル形式(SKILL.md + ディレクトリ)が推奨です。スキル形式の方が、参考資料やサンプルファイルを同梱できるなど拡張性があります。
ふぅ〜、よかった。全部書き直すのかと思った。
CLAUDE.mdとスキルの違い
Claude Codeにはもう一つ、プロジェクトの知識を共有する仕組みとしてCLAUDE.mdがあります。スキルとCLAUDE.mdは似ているようで、役割が明確に分かれています。
CLAUDE.mdとスキル、両方ともMarkdownで書くルールだよね? 何が違うんだろう…
決定的な違いは「いつ読み込まれるか」です。CLAUDE.mdは毎セッション自動で読み込まれます。スキルは必要な場面でのみ読み込まれます。
CLAUDE.md vs スキルの使い分け:
CLAUDE.md向き: プロジェクト全体のコーディング規約、常に適用されるルール、セキュリティポリシー。短く、常に真であること。
スキル向き: 特定タスクの手順(デプロイ、レビューなど)、API仕様のリファレンス、ドメイン固有の専門知識。長くても良い、必要な時だけ読まれる。
原則: CLAUDE.mdは「このプロジェクトのルールブック」、スキルは「専門家のマニュアル」。
あっ、わかった! CLAUDE.mdに全部詰め込むとコンテキスト圧迫しちゃうから、専門的な知識はスキルに分離するってことだ!
…正確にその通りです。珍しく正しい理解ですね。
ふふん、やるでしょ?
…前回3回間違えたことは記録に残っていますが。
ぷぅ〜! それは言わないでよ!
実践例: こんなスキルが作れる
では実際にどんなスキルを作れるのか、いくつか具体例を見てみましょう。
例1: コード解説スキル
---
name: explain-code
description: コードをアナロジーと図で分かりやすく解説する
---
# コード解説ルール
コードを説明する際は以下の手順で:
1. 日常生活のアナロジーから始める
2. ASCII図でフローや構造を可視化
3. ステップバイステップで処理を追う
4. よくある間違いや落とし穴を指摘
例2: Git操作スキル
---
name: safe-deploy
description: 本番デプロイ前の安全チェックと実行
---
# デプロイスキル
## 事前チェック
1. mainブランチとの差分を確認
2. テストが全パスしているか確認
3. .envに本番値が入っていないか検証
## デプロイ手順
1. git stash で未コミット変更を退避
2. git pull --rebase origin main
3. npm run build && npm test
4. 全パス後に git push
デプロイ手順のような「毎回同じだけど間違えると怖い操作」をスキル化しておくと、手順漏れを防げます。
例3: 動的コンテキストの活用
スキルの面白い機能の一つが、シェルコマンドの実行結果を自動で埋め込む「動的コンテキスト」です。
---
name: pr-review
description: PRの差分を読んで改善点を提案
context: fork
agent: Explore
---
## PRコンテキスト
- 差分: !`gh pr diff`
- コメント: !`gh pr view --comments`
## タスク
この差分をレビューして改善点を提案してください
わぁ…! !`コマンド`でシェルの実行結果を埋め込めるの? これすごく便利じゃない?
はい。前処理としてコマンドが実行され、結果がスキル本文に注入されます。Claudeにはコマンドではなく実行結果のみが渡されます。PRレビューやデプロイ確認に非常に有効です。
よし、自分のプロジェクトでもスキル作ってみよう! 燃えてきた!
推奨します。まずは小さなスキルから始めて、徐々に拡充してください。1スキルに詰め込みすぎないことが重要です。
まとめ
Claude Codeのスキル機能は、繰り返し使う知識や手順をMarkdownで書いて保存するだけで、Claudeの能力を拡張できる強力な仕組みです。
- 作り方はシンプル:
SKILL.mdにYAMLフロントマター + Markdownで指示を書く - 保存場所は3種類: 個人用、プロジェクト用、エンタープライズ
- スラッシュコマンド統合:
/skill-nameで直接実行可能 - CLAUDE.mdとの棲み分け: 常時適用ルールはCLAUDE.md、専門知識はスキル
- 動的コンテキスト: シェルコマンド結果の自動埋め込みが可能
まずは自分のプロジェクトで1つスキルを作ってみることをおすすめします。小さく始めて、効果を実感したら徐々に増やしていく。それがスキル活用の最良のスタート地点です。
今日はここまで! スキル機能、思ったよりシンプルで使いやすそうだったね。みんなもぜひ試してみてね!
お疲れさまでした。スキルのベストプラクティスとして、1スキルは500行以内を推奨します。詳細はAnthropic公式ドキュメントを参照してください。
それじゃ、また次の記事で会おうね! ばいばい〜!