mcpField
S
skill-creator

skill-creator

github.com/mrgoonieエージェントワークフロー2.2k358 回インストール30 週間前に更新
リポジトリ

skill-creator について

skill-creatorは、Claudeスキルの作成を案内するスキルです。Claude Code向けの再利用可能なワークフローを作る人を対象に、簡潔なメインファイル、段階的な情報開示、スクリプトや資料の階層化を扱います。

主な機能

  1. 01スキルの構成とディレクトリ設計
  2. 02簡潔なSKILL.mdの作成
  3. 03メタデータと起動条件の設定
  4. 04参照資料やアセットの分割配置
  5. 05スクリプトのテスト作成と実行

活用シーン

  1. 01反復する開発作業向けのスキル作成
  2. 02業務フローの再利用可能な手順化
  3. 03長い説明を分割してコンテキストを管理
  4. 04スキルへのスクリプトや資料の同梱

インストール

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

$npx skills add https://github.com/mrgoonie/claudekit-skills --skill skill-creator

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

LICENSE.txt
references/
metadata-quality-criteria.md
plugin-marketplace-hosting.md
plugin-marketplace-overview.md
plugin-marketplace-schema.md
plugin-marketplace-sources.md
plugin-marketplace-troubleshooting.md
script-quality-criteria.md
structure-organization-criteria.md
token-efficiency-criteria.md
validation-checklist.md
scripts/
encoding_utils.py
init_skill.py
package_skill.py
quick_validate.py

詳細

スキルクリエイター

このスキルでは、効果的なスキルを作成するためのガイダンスを提供します。

スキルについて

スキルは、Claude の機能を拡張する、モジュール式で自己完結したパッケージです。専門知識、ワークフロー、ツールを提供します。特定の分野やタスクのための「オンボーディングガイド」と考えてください。手順に関する知識を備えた専門エージェントへと Claude を変身させます。その知識は、どのモデルも完全には持ち得ないものです。

重要:

  • スキルはドキュメントではありません。Claude Code がタスクを達成するためにツール、パッケージ、プラグイン、API を使う際の実践的な手順です。
  • 各スキルでは、ツールが何をするかではなく、特定の開発タスクの実行方法を Claude に教えます。
  • Claude Code は、ユーザーのリクエストを達成するために複数のスキルを自動的に有効化できます。
スキルで提供するもの
  1. 専門的なワークフロー - 特定分野における複数ステップの手順
  2. ツール連携 - 特定のファイル形式や API を扱うための手順
  3. 分野の専門知識 - 企業固有の知識、スキーマ、ビジネスロジック
  4. バンドルされたリソース - 複雑で繰り返し発生するタスクのためのスクリプト、リファレンス、アセット
スキルの構成

すべてのスキルには、必須の SKILL.md ファイルと、任意のバンドルリソースが含まれます。

.claude/skills/
└── skill-name/
    ├── SKILL.md (required)
    │   ├── YAML frontmatter metadata (required)
    │   │   ├── name: (required)
    │   │   ├── description: (required)
    │   │   ├── license: (optional)
    │   │   └── version: (optional)
    │   └── Markdown instructions (required)
    └── Bundled Resources (optional)
        ├── scripts/          - Executable code (Python/Bash/etc.)
        ├── references/       - Documentation intended to be loaded into context as needed
        └── assets/           - Files used in output (templates, icons, fonts, etc.)
要件(重要)
  • スキルは、たとえば cloudflare、cloudflare-r2、cloudflare-workers、docker、gcloud のような特定のトピックを、devops のようにまとめてください。
  • SKILL.md は 150 行未満にし、関連する Markdown ファイルやスクリプトへの参照を含めてください。
  • 各スクリプトまたは参照先の Markdown ファイルも 150 行未満にしてください。複数のファイルに分割することもできます(段階的な情報開示の原則)。
  • SKILL.md ファイルのメタデータにある説明は簡潔(200 文字未満)でありながら、参照先のファイルやスクリプトのユースケースを十分に含めてください。これにより、Claude Code の実装プロセス中にスキルが自動的に有効化されやすくなります。
  • 参照先の Markdown ファイル:
    • これらのファイルを書くときは、簡潔さを優先し、文法にはこだわりすぎないでください。
    • 他の Markdown ファイルやスクリプトも参照できます。
  • 参照先のスクリプト:
    • bash スクリプトは Windows で十分にサポートされていないため、bash の代わりに nodejs または python のスクリプトを優先してください。
    • python スクリプトを書く場合は、requirements.txt を用意してください。
    • スクリプトが .env ファイルを次の優先順位で参照するようにしてください:process.env > $HOME/.claude/skills/${SKILL}/.env(グローバル)> $HOME/.claude/skills/.env(グローバル)> $HOME/.claude/.env(グローバル)> ./.claude/skills/${SKILL}/.env(作業ディレクトリ)> ./.claude/skills/.env(作業ディレクトリ)> ./.claude/.env(作業ディレクトリ)
    • 必要な環境変数を示す .env.example ファイルを作成してください。
    • これらのスクリプトには必ずテストを書いてください。

重要:

  • SKILL.md と参照ファイルはトークン消費を効率化し、段階的な情報開示を最大限に活用できるようにしてください。
  • SKILL.md は 150 行未満にしてください。
  • 参照先の Markdown ファイルも 150 行未満にしてください。複数のファイルに分割することもできます(段階的な情報開示の原則)。
  • 参照先のスクリプト:長さに制限はありません。正常に動作し、コンパイルエラー、実行時エラー、依存関係の問題、環境の問題、プラットフォームの問題がないことを確認してください。

理由

より優れた コンテキストエンジニアリング:段階的な情報開示の手法を活用します。エージェントスキルが有効化されると、Claude Code は長い SKILL.md 全体を読むのではなく、関連するファイルのみをコンテキストに読み込むようになります。

SKILL.md(必須)

ファイル名: SKILL.md(大文字) ファイルサイズ: 150 行未満にしてください。それ以上必要な場合は、references フォルダ内の複数のファイル(それぞれ 150 行未満)に分割してください。 SKILL.md は常に短く簡潔で、要点を押さえたものにしてください。クイックリファレンスガイドとして扱ってください。

メタデータの品質: YAML フロントマター内の name と description(200 文字未満でなければなりません)が、Claude がいつこのスキルを使用するかを決定します。スキルが何を行うのか、いつ使用すべきかを具体的に記述してください。一般的、曖昧、または教育的な表現にしないでください。三人称を使用してください(例:「Use this skill when...」ではなく「This skill should be used when...」)。

バンドルされたリソース(オプション)
スクリプト(scripts/)

決定的な信頼性を必要とするタスクや、繰り返し書き直されるタスク向けの実行可能コード(Python/Bash など)。

  • 含める場合:同じコードが繰り返し書き直されている場合、または決定的な信頼性が必要な場合
  • 例:PDF 回転タスク用の scripts/rotate_pdf.py
  • 利点:トークン効率が良く、決定的であり、コンテキストに読み込まずに実行できる可能性がある
  • 注意:スクリプトは、パッチ適用や環境固有の調整のために Claude が読み取る必要がある場合があります

重要:

  • スクリプトのテストを書いてください。
  • テストを実行して動作することを確認してください。テストが失敗した場合は修正して再度テストを実行し、テストが通るまで繰り返してください。
  • いくつかのユースケースでスクリプトを手動実行し、動作することを確認してください。
  • スクリプトが .env ファイルを次の順序で尊重することを確認してください:process.env > $HOME/.claude/skills/${SKILL}/.env(グローバル) > $HOME/.claude/skills/.env(グローバル) > $HOME/.claude/.env(グローバル) > ./.claude/skills/${SKILL}/.env(cwd) > ./.claude/skills/.env(cwd) > ./.claude/.env(cwd)
リファレンス(references/)

Claude の処理と思考に情報を与えるために、必要に応じてコンテキストに読み込まれることを目的としたドキュメントおよび参考資料。

  • 含める場合:Claude が作業中に参照すべきドキュメント
  • 例:財務スキーマ用の references/finance.md、会社の NDA テンプレート用の references/mnda.md、会社のポリシー用の references/policies.md、API 仕様用の references/api_docs.md
  • ユースケース:データベーススキーマ、ベストプラクティス、一般的なワークフロー、チートシート、ツールの手順、API ドキュメント、ドメイン知識、会社のポリシー、詳細なワークフローガイド
  • 利点:SKILL.md をスリムに保ち、Claude が必要と判断したときにのみ読み込まれ、コンテキストウィンドウを占有せずに情報を発見可能にします。
  • ベストプラクティス:ファイルが大きい場合(150 行超)、references フォルダ内の複数のファイル(それぞれ 150 行未満)に分割し、SKILL.md に grep 検索パターンを含めてください
  • 重複を避ける:情報は SKILL.md または references ファイルのいずれかに置くべきで、両方に置かないでください。詳細情報には references ファイルを優先してください。ただし、それがスキルの真に核心である場合を除きます。これにより SKILL.md をスリムに保ちながら、コンテキストウィンドウを占有せずに情報を発見可能にできます。SKILL.md には必須の手順説明とワークフローガイダンスのみを残し、詳細な参考資料、スキーマ、例は references ファイルに移動してください。

重要:

  • 参照される markdown ファイルも150 行未満にしてください。複数のファイルに分割できることを常に覚えておいてください(プログレッシブディスクロージャーの原則)。
  • 参照される markdown ファイルは、タスクを達成するためにツール、パッケージ、プラグイン、または API を使用するための Claude Code 向けの実践的な手順です。
  • 各スキルは、ツールが何をするかではなく、特定の開発タスクを実行する方法を Claude に教えるものです。
アセット(assets/)

コンテキストに読み込むことを目的とせず、Claude が生成する出力内で使用するファイルです。

  • 含めるタイミング:スキルで最終出力に使用するファイルが必要な場合
  • 例:ブランドアセット用の assets/logo.png、PowerPoint テンプレート用の assets/slides.pptx、HTML/React のひな形用の assets/frontend-template/、タイポグラフィ用の assets/font.ttf
  • 用途:コピーまたは変更するテンプレート、画像、アイコン、ひな形コード、フォント、サンプルドキュメント
  • メリット:出力用リソースをドキュメントから分離し、コンテキストに読み込まずに Claude がファイルを使用できるようにします
段階的開示の設計原則

スキルでは、コンテキストを効率的に管理するために、3 段階の読み込みシステムを使用します。

  1. メタデータ(名前+説明) - 常にコンテキストに含まれます(200 文字未満)
  2. SKILL.md 本文 - スキルが呼び出されたとき(5,000 語未満)
  3. バンドルされたリソース - Claude が必要に応じて使用します(無制限*)

*スクリプトはコンテキストウィンドウに読み込まずに実行できるため、無制限です。

スキルの作成プロセス

スキルを作成するには、明確に該当しない理由がある場合にのみ手順を省略し、「スキルの作成プロセス」に沿って順番に進めてください。

ステップ 1:具体例を通じたスキルの理解

スキルの使用パターンがすでに明確に理解できている場合にのみ、このステップを省略してください。既存のスキルを扱う場合でも、このステップには価値があります。

効果的なスキルを作成するには、そのスキルがどのように使われるか、具体例を通じて明確に理解してください。この理解は、ユーザーから直接得た例、またはユーザーのフィードバックで検証した生成例から得られます。

ユーザーのフィードバックを集め、理解を検証するには、AskUserQuestion ツールを使用してください。

たとえば、画像エディタースキルを作成する場合、次のような質問が役立ちます。

  • 「画像エディタースキルでは、どのような機能に対応する必要がありますか?編集、回転、ほかにはありますか?」
  • 「このスキルの使用例をいくつか挙げてもらえますか?」
  • 「『この画像の赤目を修正して』や『この画像を回転して』のような依頼があると思います。ほかにどのような使われ方が考えられますか?」
  • 「どのような依頼があったら、このスキルを呼び出すべきでしょうか?」

ユーザーに負担をかけないよう、1 回のメッセージで質問しすぎないでください。最も重要な質問から始め、効果を高めるために必要に応じて追加で質問してください。

スキルが対応すべき機能を明確に把握できたら、このステップを完了してください。

ステップ 2:インターネットで調査する

効果的なスキルは、専門的なワークフローや事例に基づく、実際のワークフローの一部です。そのため、最新の技術水準やベストプラクティスを把握するために、インターネットで調査することが重要です。

必要に応じて /docs-seeker スキルを有効にし、ドキュメントを検索してください。

URL やファイルを大量に受け取った場合は、複数の WebFetch ツールと Explore サブエージェントを使って並行して調査し、その結果をメインエージェントに報告してください。

/research スキルを有効にして、次の内容を調査してください。

  • ベストプラクティスと業界標準
  • 既存の CLI ツール(npx、bunx、pipx で実行可能なもの)とその使用パターン
  • ワークフローと成功事例
  • 一般的なパターン、ユースケース、例
  • エッジケース、潜在的な落とし穴、および回避策

次のステップで使用するため、調査レポートを書き留めてください。

ステップ 3:再利用可能なスキルの内容を計画する

具体的な例を効果的なスキルにするには、各例を次のように分析します。

  1. 例の作業をゼロから実行する方法を検討します
  2. カスタムコードを書くよりも、既存の CLI ツール(npx、bunx、pipx 経由)の実行を優先します
  3. これらのワークフローを繰り返し実行する際に役立つスクリプト、リファレンス、アセットを特定します
  4. 機能の重複を避け、可能な限り既存のスキルを再利用するために、現在のスキルカタログを分析します。

例:「この PDF を回転してください」のような依頼に対応する pdf-editor スキルを作成する場合、分析から次のことがわかります。

  1. PDF の回転には、毎回同じコードを書き直す必要があります
  2. スキルに保存する scripts/rotate_pdf.py スクリプトが役立ちます

例:「ToDo アプリを作って」や「歩数を記録するダッシュボードを作って」のような依頼に対応する frontend-webapp-builder スキルを設計する場合、分析から次のことがわかります。

  1. フロントエンドの Web アプリの作成には、毎回同じ HTML/React のボイラープレートが必要です
  2. ボイラープレートの HTML/React プロジェクトファイルを含む assets/hello-world/ テンプレートをスキルに保存すると便利です

例:「今日は何人のユーザーがログインしましたか?」のような依頼に対応する big-query スキルを作成する場合、分析から次のことがわかります。

  1. BigQuery のクエリを実行するには、毎回テーブルのスキーマと関係を調べ直す必要があります
  2. テーブルのスキーマを記載した references/schema.md ファイルをスキルに保存すると便利です

スキルに含める内容を決めるには、具体的な例をそれぞれ分析し、含める再利用可能なリソース(スクリプト、リファレンス、アセット)の一覧を作成します。

  • スクリプトでは、.env ファイルを次の順序で読み込むようにしてください:process.env > $HOME/.claude/skills/${SKILL}/.env(グローバル) > $HOME/.claude/skills/.env(グローバル) > $HOME/.claude/.env(グローバル) > ./.claude/skills/${SKILL}/.env(cwd) > ./.claude/skills/.env(cwd) > ./.claude/.env(cwd)
  • スクリプトにテストを用意し、すべてのテストを実行して合格することを確認してください。この手順は絶対に省略しないでください。
ステップ 4:スキルを初期化する

ここで、実際にスキルを作成します。

開発対象のスキルがすでに存在し、反復やパッケージ化が必要な場合に限り、この手順を省略してください。その場合は、次のステップに進みます。

新しいスキルをゼロから作成する場合は、必ず init_skill.py スクリプトを実行してください。このスクリプトは、スキルに必要な要素がすべて含まれた新しいテンプレートディレクトリを手軽に生成するため、スキル作成のプロセスを大幅に効率化し、信頼性を高めます。

使用方法:

scripts/init_skill.py <skill-name> --path <output-directory>

このスクリプトは次の処理を行います。

  • 指定したパスにスキルディレクトリを作成します
  • 適切なフロントマターと TODO のプレースホルダーを含む SKILL.md テンプレートを生成します
  • サンプルのリソースディレクトリ(scripts/、references/、assets/)を作成します
  • 各ディレクトリにカスタマイズまたは削除できるサンプルファイルを追加します

初期化後、必要に応じて、生成された SKILL.md やサンプルファイルをカスタマイズするか削除してください。

ステップ 5:スキルを編集する

(新しく生成したスキルまたは既存のスキルを)編集する際は、別の Claude が使用するためにスキルを作成していることを忘れないでください。Claude にとって有益で、すぐにはわからない情報を含めることに重点を置きます。別の Claude がこれらのタスクをより効果的に実行するうえで役立つ、手順に関する知識、ドメイン固有の詳細、再利用可能なアセットを検討してください。

再利用可能なスキルの内容から始める

実装を始めるには、上記で特定した再利用可能なリソースである scripts/、references/、assets/ のファイルから着手します。この手順では、ユーザーからの情報提供が必要になる場合があります。たとえば、brand-guidelines スキルの実装では、assets/ に保存するブランドアセットやテンプレート、または references/ に保存するドキュメントをユーザーから提供してもらう必要があるかもしれません。

また、そのスキルに不要なサンプルファイルやディレクトリは削除してください。初期化スクリプトは構成を示すために scripts/、references/、assets/ にサンプルファイルを作成しますが、ほとんどのスキルでそれらすべてが必要になるわけではありません。

SKILL.md を更新する

文体: スキル全体を二人称ではなく、命令形/不定詞形(動詞から始める指示)で記述します。客観的で指示的な言葉遣いにします(例:「X を達成するには、Y を実行する」とし、「Y を実行してください」や「X を実行する必要がある場合は」としない)。これにより、AI が理解しやすい一貫性と明確さを保てます。

SKILL.md を完成させるため、次の質問に答えます。

  1. このスキルの目的は何ですか。数文で説明してください。
  2. どのような場合にこのスキルを使うべきですか。
  3. 実際に Claude はこのスキルをどのように使うべきですか。これまでに作成した再利用可能なスキルの内容をすべて参照し、Claude が使い方を把握できるようにしてください。
ステップ 5:スキルをパッケージ化する

スキルの準備ができたら、配布用の zip ファイルにパッケージ化してユーザーと共有します。パッケージ化のプロセスでは、要件を満たしていることを確認するため、まずスキルが自動的に検証されます。

scripts/package_skill.py <path/to/skill-folder>

出力ディレクトリの指定(任意):

scripts/package_skill.py <path/to/skill-folder> ./dist

パッケージ化スクリプトは、次の処理を行います。

  1. 検証:スキルを自動的に検証し、次の項目を確認します。

    • YAML フロントマターの形式と必須フィールド
    • スキルの命名規則とディレクトリ構造
    • 説明の完全性と品質(200 文字未満であることが必須)
    • ファイル構成とリソース参照
  2. パッケージ化:検証に合格した場合、スキル名を付けた zip ファイル(例:my-skill.zip)を作成します。このファイルにはすべてのファイルが含まれ、配布に適したディレクトリ構造が維持されます。

検証に失敗すると、スクリプトはエラーを報告し、パッケージを作成せずに終了します。検証エラーを修正し、パッケージ化コマンドを再実行してください。

ステップ 6:反復する

スキルをテストした後、ユーザーから改善を求められることがあります。スキルを使った直後など、スキルの動作に関する情報が新鮮なうちに依頼されることがよくあります。

反復ワークフロー:

  1. 実際のタスクでスキルを使う
  2. 難しかった点や非効率な点に気づく
  3. トークンの使用量とパフォーマンスに注目する
  4. SKILL.md または同梱リソースの更新方法を特定する
  5. 変更を実装し、再度テストする

検証基準

スキルを評価するための詳細な検証基準:

  • クイックチェックリスト:references/validation-checklist.md
  • メタデータの品質:references/metadata-quality-criteria.md
  • トークン効率:references/token-efficiency-criteria.md
  • スクリプトの品質:references/script-quality-criteria.md
  • 構造と構成:references/structure-organization-criteria.md

プラグインマーケットプレイス

マーケットプレイスを通じてスキルをプラグインとして配布する方法については、以下を参照してください。

  • 概要:references/plugin-marketplace-overview.md
  • スキーマ:references/plugin-marketplace-schema.md
  • ソース:references/plugin-marketplace-sources.md
  • ホスティング:references/plugin-marketplace-hosting.md
  • トラブルシューティング:references/plugin-marketplace-troubleshooting.md

参考資料

コメント