mcpField
S
skill-creator

skill-creator

github.com/curiositechエージェントワークフロー258183 回インストール1 日前に更新
リポジトリ

skill-creator について

skill-creatorは、Claude向けスキルの設計、実装、検証、パッケージ化を案内するスキルです。タスク固有の指示やリソースを作る人を対象に、例の検討からスクリプト、参考資料、アセットの計画までを扱います。

主な機能

  1. 01スキル構成とメタデータの指針
  2. 02要件整理から反復までの手順
  3. 03スクリプト、参考資料、アセットの計画
  4. 04初期化とパッケージ化のコマンド

活用シーン

  1. 01具体的なタスクに沿ったスキル設計
  2. 02再利用するスクリプトや参考ファイルの選定
  3. 03スキルの検証とパッケージ化

インストール

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

$npx skills add https://github.com/curiositech/some_claude_skills --skill skill-creator

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

同梱ファイル

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

DEPRECATED.md
LICENSE.txt
.claude-plugin/
plugin.json
scripts/
quick_validate.py
package_skill.py
init_skill.py

詳細

スキル作成ツール

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

スキルについて

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

スキルが提供するもの
  1. 専門的なワークフロー — 特定の分野向けの複数ステップの手順
  2. ツール連携 — 特定のファイル形式や API を扱うための手順
  3. ドメインの専門知識 — 企業固有の知識、スキーマ、ビジネスロジック
  4. 同梱リソース — 複雑で繰り返し発生するタスク向けのスクリプト、リファレンス、アセット
スキルの構成

すべてのスキルは、必須の SKILL.md ファイルと、任意の同梱リソースで構成されます。

skill-name/
├── SKILL.md (required)
│   ├── YAML frontmatter metadata (required)
│   │   ├── name: (required)
│   │   └── description: (required)
│   └── 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.)
SKILL.md(必須)

メタデータの品質: YAML フロントマターの name と description によって、Claude がそのスキルを使用するタイミングが決まります。スキルの機能と使用すべき状況を具体的に記述してください。「このスキルは次の場合に使用されます」のように、三人称で記述してください。「次の場合にこのスキルを使用してください」のような表現は避けてください。

同梱リソース(任意)
スクリプト(scripts/)

確定的な信頼性が求められるタスクや、繰り返し書き直すタスク向けの実行可能なコード(Python/Bash など)です。

  • 含めるタイミング:同じコードを繰り返し書き直す場合や、確定的な信頼性が必要な場合
  • 例:PDF の回転タスク用の scripts/rotate_pdf.py
  • 利点:トークン効率が高く、確定的に動作し、コンテキストに読み込まずに実行できる場合があります
  • 注記:パッチ適用や環境固有の調整のため、Claude がスクリプトを読む必要がある場合もあります
リファレンス(references/)

Claude の作業や思考の参考となる、必要に応じてコンテキストに読み込むドキュメントや参考資料です。

  • 含めるタイミング:Claude が作業中に参照する必要があるドキュメントの場合
  • 例:財務スキーマ向けの references/finance.md、企業の NDA テンプレート向けの references/mnda.md、企業ポリシー向けの references/policies.md、API 仕様向けの references/api_docs.md
  • 用途:データベーススキーマ、API ドキュメント、ドメイン知識、企業ポリシー、詳細なワークフローガイド
  • 利点:SKILL.md を簡潔に保ち、Claude が必要と判断した場合にのみ読み込めます
  • ベストプラクティス:ファイルが大きい場合(>10k words)は、SKILL.md に grep の検索パターンを記載してください
  • 重複を避ける:情報は SKILL.md またはリファレンスファイルのどちらか一方に記載し、両方には記載しないでください。スキルの中核に関わる情報でない限り、詳細情報にはリファレンスファイルを使用してください。これにより、コンテキストウィンドウを圧迫せずに情報を見つけやすくしながら、SKILL.md を簡潔に保てます。SKILL.md には重要な手順とワークフローのガイダンスだけを残し、詳細な参考資料、スキーマ、例はリファレンスファイルに移してください。
アセット(assets/)

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

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

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

  1. メタデータ(name + description) — 常にコンテキスト内にあります(約 100 語)
  2. SKILL.md 本文 — スキルが起動したときに読み込まれます(<5k words)
  3. 同梱リソース — Claude が必要に応じて読み込みます(無制限*)

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

スキル作成プロセス

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

ステップ 1:具体例を通じてスキルを理解する

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

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

たとえば、画像編集スキルを作成する場合、次のような質問が考えられます。

  • 「画像編集スキルでは、どのような機能をサポートすべきですか?編集、回転、それ以外にもありますか?」
  • 「このスキルがどのように使われるか、いくつか例を挙げてもらえますか?」
  • 「『この画像の赤目を修正して』や『この画像を回転して』といった依頼が考えられます。他にも、このスキルの使い方として思い当たるものはありますか?」
  • 「どのような依頼があれば、このスキルを使うべきでしょうか?」

ユーザーに一度に多くの質問をして負担をかけないようにしてください。最も重要な質問から始め、必要に応じて効果を高めるための質問を続けてください。

このステップは、スキルがサポートすべき機能を明確に把握できた時点で完了です。

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

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

  1. その例を一から実行する方法を検討する
  2. これらのワークフローを繰り返し実行する際に役立つスクリプト、リファレンス、アセットを特定する

例:「この PDF を回転するのを手伝って」という依頼に対応する pdf-editor スキルを作成する場合、分析結果は次のようになります。

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

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

  1. フロントエンドのウェブアプリを作成するには、毎回同じ HTML/React のボイラープレートを書く必要がある
  2. ボイラープレートを含む HTML/React プロジェクトファイルを格納した assets/hello-world/ テンプレートが役立つ

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

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

スキルの内容を決めるため、各具体例を分析し、含める再利用可能なリソース(スクリプト、リファレンス、アセット)のリストを作成してください。

ステップ 3:スキルを初期化する

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

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

新しいスキルをゼロから作成する場合は、必ず init_skill.py スクリプトを実行してください。このスクリプトは、スキルに必要なものがすべて含まれた新しいスキルのテンプレートディレクトリを生成し、スキルの作成をより効率的かつ確実にします。

使い方:

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

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

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

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

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

新しく生成したスキル、または既存のスキルを編集するときは、別の 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 フロントマターの形式と必須フィールド
    • スキルの命名規則とディレクトリ構成
    • 説明の完全性と品質
    • ファイルの整理とリソースの参照
  2. パッケージ化:検証に合格した場合、スキル名を付けた zip ファイル(例:my-skill.zip)を作成します。このファイルには、配布に適したディレクトリ構成を維持したまま、すべてのファイルが含まれます。

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

ステップ 6:反復する

スキルをテストした後、ユーザーから改善を求められる場合があります。多くの場合、スキルの使用直後に、実際の動作を新鮮な文脈で確認したうえで依頼されます。

反復のワークフロー:

  1. 実際のタスクでスキルを使用する
  2. 問題や非効率な点に気づく
  3. SKILL.md または同梱リソースのどこを更新するか特定する
  4. 変更を実装し、再度テストする

コメント