mcpField
C
creating-skills

creating-skills

github.com/fvadicamoエージェントワークフロー72206 回インストール7 週間前に更新
リポジトリ

creating-skills について

Claude Code skill の作成と管理に取り組む開発者向けのガイドです。Anthropic の公式ベストプラクティスに沿って、SKILL.md の構成、呼び出し制御、段階的な読み込み、リソース整理を説明します。

主な機能

  1. 01SKILL.md のメタデータと構成の定義
  2. 02ユーザーとモデルの呼び出し設定
  3. 03内容やリソースの必要時読み込み
  4. 04スクリプト、参考資料、素材の整理
  5. 05サブエージェントと動的機能の設定

活用シーン

  1. 01Claude Code skill の新規作成
  2. 02skill の自動呼び出し設定の調整
  3. 03長いガイドのオンデマンド分割
  4. 04skill のディレクトリと関連ファイルの設計

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/fvadicamo/dev-agent-skills --skill creating-skills

インストール後、Claude Code で/creating-skillsを入力して読み込まれたか確認します。

同梱ファイルreferences/official_best_practices.mdreferences/skill_examples.md

詳細

スキルの作成

Anthropic の公式ベストプラクティスに沿って Claude Code スキルを作成するためのガイドです。

クイックスタート

# 1. Create skill directory
mkdir -p ~/.claude/skills/<skill-name>

# 2. Create SKILL.md with frontmatter
cat > ~/.claude/skills/<skill-name>/SKILL.md << 'EOF'
---
name: <skill-name>
description: <What it does>. Use when <trigger phrases>. <Key capabilities>.
---

# <Skill title>

<Instructions for the skill workflow>
EOF

# 3. Add optional resources as needed
mkdir -p ~/.claude/skills/<skill-name>/{scripts,references,assets}

SKILL.md の構成

フロントマター(--- マーカーの間に記述する YAML)
フィールド必須説明
nameいいえ表示名です。デフォルトはディレクトリ名です。小文字、ハイフンを使用し、最大 64 文字です。
description推奨内容、使用するタイミング、機能を記述します。最大 1024 文字です。Claude がスキルを有効にするタイミングを決定します。
allowed-toolsいいえスキルが有効なとき、許可を求めずに Claude が使用できるツールです。
argument-hintいいえ引数の自動補完ヒントです。例:[issue-number]
disable-model-invocationいいえ自動呼び出しを防ぐには true を指定します(手動での /name のみ)。
user-invocableいいえ/ メニューに表示しない場合は false を指定します(バックグラウンド知識のみ)。
modelいいえスキルが有効なときに使用するモデルの上書き設定です。
contextいいえ分離されたサブエージェントのコンテキストで実行するには fork を指定します。
agentいいえcontext: fork のときのサブエージェントの種類です。組み込み:Explore、Plan、general-purpose。
hooksいいえこのスキルに限定されたライフサイクルフックです。
呼び出し制御マトリックス
設定ユーザーが呼び出せるClaude が呼び出せる
(デフォルト)はいはい
disable-model-invocation: trueはいいいえ
user-invocable: falseいいえはい
説明の構成式
<What it does>. Use when <trigger phrases>. <Key capabilities>.

行動を表す動詞(「作成する」「処理する」)、ユーザーの意図(「したい」「必要がある」)、ユーザーが使う分野のキーワードを含めます。

ディレクトリ構成

skill-name/
├── SKILL.md              # Required: instructions (keep under 500 lines)
├── scripts/              # Optional: executable code (deterministic, token-efficient)
├── references/           # Optional: docs loaded into context on demand
└── assets/               # Optional: files used in output, NOT loaded into context
                          #   (templates, images, fonts, boilerplate)
段階的な情報開示(3 段階の読み込み)
  1. メタデータ(名前+説明)- 常にコンテキストに含まれます(スキルあたり約 100 トークン)
  2. SKILL.md 本文 - スキルが呼び出されたときに読み込まれます(5,000 語未満に収めます)
  3. 同梱リソース - Claude が必要に応じて読み込みます

Claude がファイルの存在を把握できるよう、SKILL.md から補助ファイルを参照します。参照は 1 階層までにします。100 行を超えるファイルには目次を含めます。

スクリプト、リファレンス、アセットの使い分け
種類目的コンテキストに読み込まれるか
scripts/決定論的な操作、複雑な処理いいえ(bash 経由で実行)
references/Claude が作業中に読むドキュメントはい、必要に応じて
assets/出力に使うテンプレート、画像、フォントいいえ(出力にコピー/使用)

スクリプトを作成するのは、複雑な複数ステップの処理、コード生成の繰り返し、決定論的な信頼性など、価値がある場合のみにします。単一コマンドのラッパーには使用しません。

動的機能

コンテキストへの挿入

読み込み前に、シェルコマンドの出力をスキルの内容に挿入します。

## Recent commits
!`git log --oneline -5 2>/dev/null`

スキルの読み込み時に、このディレクティブが出力に置き換えられます。

文字列の置換

/skill-name arg1 arg2 で呼び出すスキルに引数を渡します。

変数値
$ARGUMENTS引数文字列全体
$ARGUMENTS[0]、$ARGUMENTS[1]個々の引数
$1、$2$ARGUMENTS[N] の省略形
サブエージェントでの実行

context: fork を使って、分離されたコンテキストでスキルを実行します。

---
name: deep-research
description: Research a topic thoroughly.
context: fork
agent: Explore
---

自由度

タスクの壊れやすさに応じて、具体性を調整します。

レベル使用する場面例
高(テキスト指示)有効なアプローチが複数あり、コンテキストに依存する「コードを分析して改善点を提案する」
中(パラメーター付きの疑似コード/スクリプト)推奨されるパターンがあり、ある程度の変更は許容される設定可能なパラメーターを備えたスクリプト
低(特定のスクリプト、少数のパラメーター)壊れやすい操作、一貫性が重要API 呼び出しの正確な順序

命名規則

  • 小文字を使用し、単語の間にはハイフンを入れ、最大 64 文字にします
  • 形式:動名詞(processing-pdfs)、名詞句(github-pr-creation)、接頭辞付きグループ(github-pr-*)

重要なルール

  • 必ず、WHAT+実行されるタイミング+機能を含む説明を書いてください
  • 必ず、SKILL.md を 500 行未満に保ち、上限に近づいたらリファレンスに分割してください
  • 必ず、Claude が参照ファイルを見つけられるよう、SKILL.md からバンドルされたファイルを参照してください
  • 決して、SKILL.md とリファレンスファイルの間で情報を重複させないでください
  • 決して、単一のコマンドのためにラッパースクリプトを作成しないでください
  • 決して、余分なファイル(README.md、CHANGELOG.md、INSTALLATION_GUIDE.md、QUICK_REFERENCE.md)を含めないでください
  • 決して、Claude がすでに知っていること(標準ライブラリ、一般的なツール、基本的なパターン)を説明しないでください

リファレンス

  • references/official_best_practices.md - 原則、アンチパターン、品質チェックリスト、テスト
  • references/skill_examples.md - 新機能を使った具体的なスキルの例

コメント