Claude Code スキル

Claude Code の Skills を作成・利用するガイドです。SKILL.md の構成、frontmatter、配置場所、呼び出し方を解説します(2026年)。

最終更新 2026-10-20

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 が期待通りにアクティブ化されない場合:

  1. description を確認:トリガーフレーズがユーザー入力と一致することを確認

  2. フォーマットを検証:YAML frontmatter が正しくフォーマットされていることを確認

  3. トリガーをテスト:description からの正確なフレーズを試す

次のステップ

QCode を始める

API キーひとつで Claude Code・Codex などに対応。トークン単位の課金で、各モデルの単価は qcode.cc/models に掲載

企業版 →