mcpField
M
make-skill-template

make-skill-template

github.com/githubエージェントワークフロー40.5k8.9k 回インストール今日更新
リポジトリ

make-skill-template について

GitHub Copilot の Agent Skill を作成するためのテンプレートで、Agent Skills 仕様の理解にも役立ちます。SKILL.md の構成、メタデータ、同梱リソース、検証方法を案内します。

主な機能

  1. 01スキルフォルダーと SKILL.md の作成
  2. 02メタデータと説明文の要件解説
  3. 03同梱リソースの配置案内
  4. 04検証チェックリストとコマンド

活用シーン

  1. 01GitHub Copilot 用スキルの新規作成
  2. 02スクリプトやリファレンスを含むスキルの構成
  3. 03利用前のスキル検証

インストール

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

$npx skills add https://github.com/github/awesome-copilot --skill make-skill-template

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

詳細

Make Skill Template

新しい Agent Skills を作成するためのメタスキルです。新しいスキルのフォルダーを雛形から作成する必要がある場合、SKILL.md ファイルを生成する場合、またはユーザーが Agent Skills 仕様を理解できるように支援する場合に、このスキルを使用します。

このスキルを使用する場合

  • ユーザーが「スキルを作成する」「新しいスキルを作る」「スキルを雛形から作成する」と依頼した場合
  • ユーザーが GitHub Copilot のセットアップに専門的な機能を追加したい場合
  • ユーザーがバンドルされたリソースを含むスキルを構造化するための支援を必要としている場合
  • ユーザーがこのテンプレートを出発点として複製したい場合

前提条件

  • そのスキルが何を達成すべきかの理解
  • 機能とトリガーに関する、明確でキーワードに富んだ説明
  • 必要なバンドルリソース(スクリプト、リファレンス、アセット、テンプレート)に関する知識

新しいスキルの作成

ステップ 1: スキルディレクトリを作成する

小文字とハイフンを使用した名前で新しいフォルダーを作成します:

skills/<skill-name>/
└── SKILL.md          # Required
ステップ 2: フロントマター付きの SKILL.md を生成する

すべてのスキルには、name と description を含む YAML フロントマターが必要です:

---
name: <skill-name>
description: '<What it does>. Use when <specific triggers, scenarios, keywords users might say>.'
---
フロントマターフィールドの要件
フィールド必須制約
nameはい1〜64 文字、小文字・数字・ハイフンのみ、フォルダー名と一致する必要があります
descriptionはい1〜1024 文字、何をするのか AND いつ使用するのかを説明する必要があります
licenseいいえライセンス名、またはバンドルされた LICENSE.txt への参照
compatibilityいいえ1〜500 文字、必要に応じて環境要件
metadataいいえ追加プロパティ用のキーと値のペア
allowed-toolsいいえ事前承認されたツールのスペース区切りリスト(実験的)
description のベストプラクティス

重要: description は、スキルの自動検出における主要な仕組みです。以下を含めてください:

  1. そのスキルが何をするのか(機能)
  2. いつ使用するのか(トリガー、シナリオ、ファイルの種類)
  3. ユーザーがプロンプトで言及する可能性のあるキーワード

良い例:

description: 'Toolkit for testing local web applications using Playwright. Use when asked to verify frontend functionality, debug UI behavior, capture browser screenshots, or view browser console logs. Supports Chrome, Firefox, and WebKit.'

悪い例:

description: 'Web testing helpers'
ステップ 3: スキル本文を記述する

フロントマターの後に、Markdown の指示を追加します。推奨されるセクション:

セクション目的
# Title簡単な概要
## When to Use This Skilldescription のトリガーを補強します
## Prerequisites必要なツール、依存関係
## Step-by-Step Workflowsタスクの番号付きステップ
## Troubleshooting一般的な問題と解決策
## Referencesバンドルされたドキュメントへのリンク
ステップ 4: オプションのディレクトリを追加する(必要な場合)
フォルダー目的使用する場合
scripts/実行可能なコード(Python、Bash、JS)操作を実行する自動化
references/エージェントが読むドキュメントAPI リファレンス、スキーマ、ガイド
assets/そのまま使用する静的ファイル画像、フォント、テンプレート
templates/エージェントが変更するスターターコード拡張するための雛形

例: 完全なスキル構造

my-awesome-skill/
├── SKILL.md                    # Required instructions
├── LICENSE.txt                 # Optional license file
├── scripts/
│   └── helper.py               # Executable automation
├── references/
│   ├── api-reference.md        # Detailed docs
│   └── examples.md             # Usage examples
├── assets/
│   └── diagram.png             # Static resources
└── templates/
    └── starter.ts              # Code scaffold

クイックスタート: このテンプレートを複製する

  1. make-skill-template/ フォルダーをコピーします
  2. スキル名(小文字、ハイフン)に名前を変更します
  3. SKILL.md を更新します:
    • name: をフォルダー名に一致するように変更します
    • キーワードに富んだ description: を記述します
    • 本文の内容を自分の指示に置き換えます
  4. 必要に応じてバンドルリソースを追加します
  5. npm run skill:validate で検証します

検証チェックリスト

  • フォルダー名が小文字とハイフンになっている
  • name フィールドがフォルダー名と完全に一致している
  • description が 10〜1024 文字である
  • description が何をいつ使用するのかを説明している
  • description が単一引用符で囲まれている
  • 本文の内容が 500 行未満である
  • バンドルされたアセットがそれぞれ 5MB 未満である

トラブルシューティング

問題解決策
スキルが検出されないより多くのキーワードとトリガーで description を改善します
name で検証が失敗する小文字、連続するハイフンがないこと、フォルダーと一致することを確認します
description が短すぎる機能、トリガー、キーワードを追加します
アセットが見つからないスキルルートからの相対パスを使用します

リファレンス

コメント