しんたろーしんたろーのITアカデミー
AI活用Tips

【2026年版】Claude CodeのSKILL.md活用術|自作スキル実装と最適化ガイド

【2026年版】Claude CodeのSKILL.md活用術|自作スキル実装と最適化ガイド
しんたろーしんたろー
約8分で読めます
この記事の内容(目次)

Claude Codeを使いこなす上で、プロンプトの肥大化は避けたい課題だ。多くのユーザーが「指示をどこまで書くべきか」で迷う。結論として、知識を「常駐させる(CLAUDE.md)」か「呼び出す(SKILL.md)」か「機械的に検知する(ASTルール)」の3層構造で整理するのが最適だ。特にSKILL.mdは、トリガーフレーズを明記することでAIの判断精度を向上させる。この記事では、1人SaaS開発でClaude Codeを活用する視点から、実践的なSKILL.mdの活用術を解説する。

1. SKILL.mdの基本構造

SKILL.mdは、Claude Codeに特定の作業を任せるための「専用命令書」だ。フロントマターとMarkdown本文で構成される。フロントマターには「name」と「description」を記述する。nameはディレクトリ名と一致させる必要がある。最も重要なのはdescriptionだ。ここに「いつ呼び出すか」というトリガーフレーズを具体的に書くことが、Claude Codeに正しく認識させるための鍵となる。

2. スキルのインストール手順

インストールは .claude/skills/<スキル名>/SKILL.md にファイルを配置するだけで完了する。複雑な設定は不要だ。認識されるとsystem-reminderにスキル名が表示され、スラッシュコマンドで明示的に呼び出せるようになる。ディレクトリ名がそのままコマンド名になるため、命名には注意が必要だ。

3. CLAUDE.mdとSKILL.mdの役割分担

CLAUDE.mdはプロジェクト全体に常時適用されるルールを記述する。一方、SKILL.mdは特定のタスク実行時にのみ読み込まれる専門命令書だ。この役割分担がプロンプトの肥大化を防ぐ。プロジェクト全体で守るべき規約はCLAUDE.mdへ、特定の目的がある作業手順はSKILL.mdに記述するのがベストプラクティスだ。

4. descriptionによる呼び出し精度の向上

単なる機能説明では不足だ。descriptionに「〜と言われたら必ず使う」というトリガーフレーズを含める。これにより、Claude Codeの呼び出し漏れを減らせる。AIの判断に依存せず、意図したタイミングで確実に発動させるための工夫だ。

プロジェクト全体に適用する規約と、タスク単位の専門命令書の使い分け。
プロジェクト全体に適用する規約と、タスク単位の専門命令書の使い分け。

5. 知識の階層化(A1/A2/A3)

守らせたい知識はタスクの抽象度で3つに分類する。機械検知可能な規約はLinterへ、構造的な判断はコンテキストへ、という切り分けが生産性を最大化する。知識の階層化を意識することで、AIの指示遵守率は向上する。

6. AI向けLinterとしてのAST活用

機械的にチェック可能なルールは、 .claude/ast-rules/ でYAML管理し、hooksから実行する。違反時にエラーメッセージをコンテキストに注入することで、AIに直接ルールを学習させる。これは人間向けのLinterでは拾えないAI特有の悪手を防ぐための武器だ。

7. DEVIATEマーカーによる逸脱の管理

ルールを意図的に破る必要がある場合、理由を添えて「// AI: DEVIATE(...)」とコメントを残す。これでAIの再警告を抑制しつつ、レビュー時に妥当性を精査できる。ルールを柔軟に運用しつつ、品質を担保するための仕組みだ。

8. エラーメッセージのプロンプト化

エラーメッセージには禁止事項だけでなく「なぜダメか」「代わりに何を使うか」を記載する。AIへの指摘は単なる警告ではなく、次の行動を導くプロンプトとして機能させるのがコツだ。

AIの指示遵守率を高めるための知識の切り分けと伝達手法。
AIの指示遵守率を高めるための知識の切り分けと伝達手法。
しんたろーしんたろー:
Claude Codeでコードを書く際、SKILL.mdの管理は非常に有効だ。プロンプトを分厚くするのではなく、必要な時に必要な知識だけを読み込ませる設計は、1人SaaS開発の理想形と言える。

比較表:設定ファイルの使い分け

ファイル名適用範囲用途おすすめ度
CLAUDE.mdプロジェクト全体常時適用ルール★★★★★
SKILL.md特定タスクのみ専門的な作業手順★★★★★
ASTルールファイル編集時機械的な構文チェック★★★★☆

しんたろーのTips

エラーメッセージをプロンプトにする手法が有効だ。AIに「ダメだ」と伝えるだけでは、別の悪手を選ぶ可能性がある。必ず「代わりに何を使うか」をセットで記述する。これだけで手戻りが減る。

しんたろーしんたろー:
Claude Codeの拡張性の高さは唯一無二だ。自分の開発スタイルに合わせてルールを育てていく感覚は、優秀な相棒を育成する過程に近い。
SKILL.md導入によるプロンプト肥大化の抑制効果。
SKILL.md導入によるプロンプト肥大化の抑制効果。

FAQ

Q1: SKILL.mdがうまく読み込まれません。原因は何ですか?

A1: 最も多い原因はdescriptionの記述不足だ。Claude Codeはdescriptionの内容を判断基準にしているため、「いつ呼び出すか」を具体的に書く必要がある。「〜と言われたら必ず使う」という指示を追記し、ディレクトリ名が正しいか、 .claude/skills/ 配下にあるかを確認する。

Q2: CLAUDE.mdとSKILL.md、どちらに書くべきか迷います。

A2: 判断基準は「常時適用か、タスク限定か」だ。プロジェクト全体で守るべきコーディング規約や禁止事項はCLAUDE.mdへ、特定の目的がある作業手順はSKILL.mdに記述するのがベストプラクティスだ。

Q3: SKILL.mdのdescriptionには何を書くべきですか?

A3: スキルの目的と、呼び出しのトリガーとなる言葉を列挙する。例えば「記事生成指示書を作成する」だけでなく、「記事を書いて」「指示書を作って」といった具体的なフレーズを入れ、「必ず使う」と明記することで、AIが迷わずスキルを選択できるようになる。

Q4: ASTルール(.claude/ast-rules/)は必須ですか?

A4: 必須ではない。まずはSKILL.mdで運用を効率化し、それでもAIが同じミスを繰り返すようになった段階で導入を検討する。機械的にチェックできるルールを分離することで、プロンプトの肥大化を防ぎ、AIの指示遵守率を安定させることができる。

Q5: スキル名にルールはありますか?

A5: ディレクトリ名がそのままスキル名になる。ハイフン区切りの半角英数字(例: zenn-article-generator)が推奨されており、この名前がそのままスラッシュコマンドのトリガーになる。シンプルで推測しやすい名前にする。

まとめ

Claude CodeのSKILL.md活用は、開発の生産性を変える。知識を整理し、適切なタイミングでAIに渡す。この仕組みを整えるだけで、AIは頼れる存在になる。まずは「よく使う定型作業」を1つ選び、SKILL.mdを作成して呼び出す体験から始める。

ThreadPost — SNS投稿をAIが自動化

この記事が参考になったら、ThreadPostを試してみませんか?投稿作成・画像生成・スケジュール管理まで、AIがサポートします。

無料で始める

この記事をシェア

XはてブLINE
しんたろー

ThreadPost開発者・個人開発エンジニア

AI × SaaS個人開発者。Cursor / Claude Code を使った効率的開発、SNS自動化について実体験から発信。

おすすめ記事