Claude Code スキル
Claude Code の Skills を作成・利用するガイドです。SKILL.md の構成、frontmatter、配置場所、呼び出し方を解説します(2026年)。
API キーが必要ですか? 登録する →エンドポイントと Base URL →
目次
最終確認:2026-10-20 · 📄 公式ドキュメント準拠(Claude Code Skills)
Skill は 1 つの SKILL.md ファイルです。--- で囲んだ YAML frontmatter が Claude にいつ使うかを伝え、その後の Markdown が実行時に従う指示になります。Claude は関連する場面で Skill を自動的に使い、/skill-name で直接呼び出すこともできます。
Skills は Claude Code の知識レイヤーコンポーネントで、Claude に特定ドメインの専門知識とガイダンスを提供します。関連する場面では自動的に読み込まれ、/skill-name で直接呼び出すこともできます。
Skills とは?¶
Skills は SKILL.md ファイルに保存された専門知識モジュールです:
-
自動アクティブ化:Claude がタスクコンテキストに基づいて関連する Skill を自動的に使用
-
ドメイン知識:特定ドメインのベストプラクティスとガイダンスを提供
-
拡張可能:特定のニーズに合わせてカスタム Skills を作成可能
-
コンテキスト認識:関連するシナリオでのみ呼び出される
Skills vs Commands vs Agents¶
| コンポーネント | トリガー | 目的 |
|---|---|---|
| Commands | ユーザーが手動で呼び出し(/command) |
特定のタスクを実行 |
| Skills | 自動、または /skill-name |
ドメイン知識を提供 |
| Agents | 委任呼び出し | 複雑なワークフローを処理 |
Skills とコマンド、CLAUDE.md(2026-10-20 確認)¶
Claude Code の Skills は Agent Skills オープン標準に従っており、複数の AI ツールで利用できます。カスタムコマンドは Skills に統合されました。.claude/commands/deploy.md と .claude/skills/deploy/SKILL.md はどちらも /deploy を作成し、同じように動作します。CLAUDE.md の内容と異なり、Skill の本文は使われるときだけ読み込まれるため、長い参考資料も必要になるまでほとんどコストがかかりません。
ビルトイン Skills の使用¶
Claude Code プラグインには通常、複数のビルトイン Skills が含まれています。タスクが Skill の説明と一致すると、Claude は自動的にそれを使用します。
Claude Code には bundled skills も同梱されています。たとえば /doctor、/code-review、/batch、/debug、/loop、/claude-api です(2026-10-20 確認)。呼び出し方は他の Skill と同じで、/ に続けて Skill 名を入力します。
例:コードレビュー¶
「このコードのセキュリティをレビューして」と言うと、セキュリティレビュー Skill を含むプラグインがインストールされている場合、Claude はその Skill の知識を自動的に適用してレビューを行います。
利用可能な Skills の確認¶
Skills は通常、プラグインと一緒にインストールされます:
# プラグインをインストール(プラグインには複数の Skills が含まれる場合があります)
/plugin install plugin-name@marketplace
カスタム Skills の作成¶
基本構造¶
最もシンプルな Skill には SKILL.md ファイルのみが必要です:
my-skill/
└── SKILL.md
SKILL.md フォーマット¶
---
name: コードスタイルガイド
description: ユーザーが「コードスタイル」「命名規則」「コードフォーマット」について質問したり、コーディング規約について議論したりする場合にこの Skill を使用
---
# コードスタイルガイド
## 命名規則
- 変数は camelCase を使用
- 定数は UPPER_SNAKE_CASE を使用
- クラスは PascalCase を使用
- プライベートメンバーはアンダースコアプレフィックスを使用
## フォーマットルール
- インデントには 2 スペースを使用
- 行幅は 80 文字を超えない
- 末尾カンマを使用
## ベストプラクティス
- 関数は単一責任であるべき
- 深いネストを避ける
- 意味のある変数名を使用
Frontmatter フィールド¶
すべてのフィールドは任意です。公式が推奨するのは description だけで、Claude がいつ Skill を使うかを判断する材料になります。name は省略でき、既定値はディレクトリ名です。フィールド名は公式の frontmatter リファレンスと完全に一致させる必要があります(ハイフンも含む)。下の表は主なフィールドのみで、公式には model、effort、hooks、user-invocable などもあります。Claude Code は認識しないフィールドをエラーを出さずに無視します(2026-10-20 確認)。
| フィールド | 必須 | 説明 |
|---|---|---|
name |
いいえ | / メニューに表示されるコマンド名。既定値はディレクトリ名 |
description |
推奨 | Skill の内容と、いつ使うか。Claude はこれを見て適用するかどうかを決める |
when_to_use |
いいえ | Claude が Skill を呼び出すべき場面の補足(トリガーフレーズやリクエスト例)。Skill 一覧では description の後に追加される |
argument-hint |
いいえ | 入力候補に表示される引数のヒント。例:[issue-number]、[filename] [format] |
disable-model-invocation |
いいえ | true にすると Claude がこの Skill を自動で読み込まなくなる。/name で手動実行するワークフロー向け |
allowed-tools |
いいえ | この Skill を呼び出したターンで、確認なしに Claude が使えるツール |
paths |
いいえ | この Skill を有効にする条件を絞る glob パターン。一致するファイルを扱うときだけ自動で読み込まれる |
context |
いいえ | fork にすると、フォークしたサブエージェントのコンテキストで実行される |
version はこの表のフィールドではありません。Claude Code は認識しないフィールドをエラーを出さずに無視します(2026-10-20 確認)。
効果的な Description の書き方¶
description フィールドは Skill がいつアクティブ化されるかを決定し、具体的なトリガーフレーズを含める必要があります:
良い例:
description: ユーザーが「hook を作成」「PreToolUse hook を追加」「ツール使用を検証」と言ったり、hook イベントに言及した場合にこの Skill を使用
悪い例:
description: hooks についてのガイド # 曖昧すぎる
完全な Skill 構造¶
複雑な Skills には、より多くのリソースを含めることができます:
my-skill/
├── SKILL.md # メイン知識ドキュメント
├── references/ # 詳細なリファレンス
│ ├── patterns.md # デザインパターン
│ └── advanced.md # 高度なテクニック
├── examples/ # サンプルコード
│ ├── basic.ts # 基本的な例
│ └── advanced.ts # 高度な例
└── scripts/ # ヘルパースクリプト
└── validate.sh # 検証スクリプト
リソースの参照¶
SKILL.md で他のリソースを参照:
---
name: API 開発ガイド
description: ユーザーが「API 設計」「REST インターフェース」「API ベストプラクティス」について質問した場合に使用
---
# API 開発ガイド
詳細な API 設計パターンは @references/patterns.md を参照
## クイック例
基本的な使い方は @examples/basic.ts を参照
動的コンテキスト注入¶
!`git diff HEAD` のような行は動的コンテキスト注入を使います。Claude Code がコマンドを実行し、その出力で行を置き換えてから Claude に Skill の内容を渡すため、指示が届く時点で現在の diff がすでに埋め込まれています(2026-10-20 確認)。
Skill の配置場所¶
- 個人 Skill は
~/.claude/skills/<skill-name>/SKILL.mdに置きます。 - プロジェクト Skill はリポジトリ内の
.claude/skills/<skill-name>/SKILL.mdに置きます。 - プラグイン Skill はプラグイン内の
<plugin>/skills/<skill-name>/SKILL.mdに置きます。
プラグインでの Skills 使用¶
ディレクトリ構造¶
Skills はプラグインの skills/ ディレクトリに配置:
my-plugin/
├── .claude-plugin/
│ └── plugin.json
├── commands/ # コマンドレイヤー
├── agents/ # エージェントレイヤー
└── skills/ # 知識レイヤー
├── code-style/
│ └── SKILL.md
└── api-docs/
├── SKILL.md
└── references/
コマンドでの Skill 参照¶
コマンドは Skill の知識を明示的に参照できます:
---
description: 規格準拠の API ドキュメントを生成
argument-hint: [api-file]
---
@$1 の API ドキュメントを生成。
api-docs Skill を使用して、ドキュメントに以下が含まれることを確認:
- 完全なエンドポイント説明
- パラメータ仕様
- レスポンス形式
- エラーコード
- 使用例
実用的な例¶
例 1:プロジェクト規約 Skill¶
---
name: プロジェクト規約
description: ユーザーが「プロジェクト構造」「ファイル構成」「ディレクトリ規約」について質問した場合に使用
---
# プロジェクト規約
## ディレクトリ構造
\`\`\`
src/
├── components/ # React コンポーネント
├── hooks/ # カスタム Hooks
├── services/ # API サービス
├── utils/ # ユーティリティ関数
└── types/ # TypeScript 型
\`\`\`
## ファイル命名
- コンポーネント:PascalCase(例:`UserProfile.tsx`)
- ユーティリティ:camelCase(例:`formatDate.ts`)
- 定数:UPPER_SNAKE_CASE(例:`API_ENDPOINTS.ts`)
## インポート順序
1. React 関連
2. サードパーティライブラリ
3. 内部モジュール
4. 型定義
5. スタイルファイル
例 2:Git ワークフロー Skill¶
---
name: Git ワークフロー
description: ユーザーが「ブランチ戦略」「コミット規約」「Git プロセス」について質問した場合に使用
---
# Git ワークフロー規約
## ブランチ命名
- 機能:`feature/説明`
- 修正:`fix/説明`
- 緊急修正:`hotfix/説明`
## コミットメッセージ形式
\`\`\`
<type>(<scope>): <subject>
<body>
<footer>
\`\`\`
### Type 値
- `feat`: 新機能
- `fix`: バグ修正
- `docs`: ドキュメント更新
- `style`: コードフォーマット
- `refactor`: リファクタリング
- `test`: テスト
- `chore`: ビルド/ツール
例 3:セキュリティレビュー Skill¶
---
name: セキュリティレビュー
description: ユーザーが「セキュリティチェック」「脆弱性スキャン」「セキュリティベストプラクティス」について質問したり、コードセキュリティをレビューする場合に使用
---
# セキュリティレビューガイド
## 一般的な脆弱性チェック
### SQL インジェクション
- パラメータ化クエリの使用を確認
- SQL での文字列連結を避ける
### XSS 攻撃
- ユーザー入力がエスケープされているか確認
- CSP ヘッダーを使用
### 機密データ
- パスワードが平文で保存されていないことを確認
- API キーをハードコードしない
- ログに機密データが漏れていないか確認
## レビューチェックリスト
- [ ] 入力検証
- [ ] 出力エンコーディング
- [ ] 認証メカニズム
- [ ] 認可チェック
- [ ] 暗号化の使用
- [ ] エラー処理
ベストプラクティス¶
1. 明確なトリガー説明¶
曖昧な説明ではなく、具体的なトリガーフレーズを使用:
# 良い
description: ユーザーが「コンポーネント作成」「React コンポーネントテンプレート」「コンポーネントベストプラクティス」について質問した場合に使用
# 悪い
description: React コンポーネント関連
2. 構造化された知識¶
知識を明確な階層に整理:
-
見出しレベルを使用
-
コード例を提供
-
チェックリストを含める
3. 最新の状態を維持¶
-
Skill コンテンツを定期的に更新
-
バージョン番号で変更を反映
-
重要な更新を記録
4. モジュラー設計¶
-
各 Skill は1つのドメインに集中
-
references ディレクトリに詳細資料を保存
-
実用的な例を提供
Skills のデバッグ¶
Skill が期待通りにアクティブ化されない場合:
-
description を確認:トリガーフレーズがユーザー入力と一致することを確認
-
フォーマットを検証:YAML frontmatter が正しくフォーマットされていることを確認
-
トリガーをテスト:description からの正確なフレーズを試す
次のステップ¶
QCode を始める
API キーひとつで Claude Code・Codex などに対応。トークン単位の課金で、各モデルの単価は qcode.cc/models に掲載