スキル(スラッシュコマンド)

スキルは Claude Code に「新しい能力」を追加できる仕組みです。対話中に /スキル名 と入力するだけで呼び出せる、いわば「マクロ」のようなもの。たとえば /commit と打てばコミットメッセージの自動生成、/debug と打てばトラブルシュート — といった具合に、繰り返し行う作業をワンコマンドに集約できます。さらに、自分だけのオリジナルスキルを作成することも可能です。

スキルの実行フロー

図の各ステップにマウスを乗せると、処理の詳細が表示されます。

ユーザーが /コマンド を入力
SKILL.md を読み込み
Claude が指示に従い実行
ホバーして各ステップの詳細を確認

組み込みスキル

Claude Code には、すぐに使える組み込みスキルが用意されています。対話中に / を入力するとスキル一覧が表示されます。

スキル説明
/batch [指示]大規模な並列変更。5〜30のエージェントを worktree で起動し PR を自動作成
/claude-apiClaude API / SDK のリファレンスを会話コンテキストに読み込み
/debug [説明]デバッグログを分析して、現在のセッションの問題をトラブルシュート
/loop [間隔] [コマンド]指定した間隔(例: 5m)でプロンプトを繰り返し実行
/simplify [対象]変更されたファイルの品質・効率を自動レビューして修正

オリジナルスキルの作成方法

自分のプロジェクトに合わせたスキルを作ることで、チーム全体のワークフローを標準化できます。スキルは SKILL.md という Markdown ファイルに指示を書くだけで作成できます。

ディレクトリ構成

text
~/.claude/skills/my-skill/
├── SKILL.md          # 必須: Claudeへの指示(フロントマター + 本文)
├── template.md       # オプション: 出力テンプレート
├── examples/         # オプション: 参考となる出力例
└── scripts/          # オプション: 補助スクリプト

SKILL.md の書き方

SKILL.md は YAML フロントマター(設定部分)と Markdown 本文(指示部分)で構成されます。フロントマターでスキルの動作を制御し、本文で Claude に何をすべきか具体的に指示します。

yaml
---
name: my-skill
description: このスキルの目的と使うべき場面
disable-model-invocation: true
user-invocable: true
allowed-tools: Read, Grep
model: claude-sonnet
effort: high
context: fork
---

ここにスキルの指示を Markdown で記述します。

## やること
1. まずファイルを読み取る
2. 内容を分析する
3. 結果を報告する

フロントマターの設定項目

各フィールドの詳細です。namedescription は必ず設定しましょう。

フィールド説明
nameスキル名。小文字・ハイフンのみ、最大64文字。/name で呼び出される
descriptionスキルの説明。Claude が自動呼び出しの判断に使用する重要なフィールド
argument-hint引数のヒント(例: [ファイル名])。補完時に表示
disable-model-invocationtrue にすると、Claude が自動で呼び出すことを禁止(ユーザー手動のみ)
user-invocablefalse にすると / メニューに非表示。Claude からの内部利用専用に
allowed-toolsこのスキル実行時に許可するツール(カンマ区切り)
modelこのスキル専用のモデルを指定(セッション全体のモデルを上書き)
effort努力レベルの上書き: low / medium / high / max
contextfork を指定すると隔離されたサブエージェントで実行

スキルの配置場所と優先順位

スキルは複数の場所に配置でき、上位が優先されます。個人用スキルはホームディレクトリ、チーム共有スキルはプロジェクトディレクトリに配置するのが一般的です。

Enterprise(組織全体)

管理者が組織全体に配布するスキル。最も優先度が高い

Personal: ~/.claude/skills/

あなたのすべてのプロジェクトで使える個人用スキル

Project: .claude/skills/

プロジェクト固有のスキル。Git にコミットしてチームで共有可能

スキル内で使える変数

SKILL.md の中では、呼び出し時の引数やセッション情報を変数として参照できます。

変数内容
$ARGUMENTSユーザーが入力した全引数
$0, $1...位置引数(スペース区切り)
${CLAUDE_SESSION_ID}現在のセッション固有ID
${CLAUDE_SKILL_DIR}スキルファイルがあるディレクトリの絶対パス

実践例: コミットスキル

以下は、変更内容に基づいてコミットメッセージを自動生成するスキルの例です。

yaml
---
name: commit
description: 変更をコミットする
argument-hint: [メッセージ]
---

## 手順
1. git status で変更を確認
2. git diff で差分を確認
3. 適切なコミットメッセージを作成
4. git commit を実行

呼び出し方:

text
/commit バグ修正
公式スキルガイド ↗