add-skill について
`agent-skills` リポジトリに外部スキルを追加するワークフロースキルです。統合型と CLI 型のスキルの雛形作成、公開ワークフローへの登録、シンボリックリンク作成、検証を案内します。
主な機能
- 01統合型またはツール型の手順選択
- 02スキルのファイルとディレクトリ作成
- 03publish.yml へのスキル登録
- 04外部スキルのシンボリックリンク作成
- 05スキル構造の検証
活用シーン
- 01SDK 統合スキルの追加
- 02CLI ラッパースキルの追加
- 03公開する外部スキルの登録
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ youdotcom-oss/ agent-skills --skill add-skillインストール後、Claude Code で/add-skillを入力して読み込まれたか確認します。
詳細
スキルの追加
agent-skills リポジトリに新しい外部スキルを追加する手順をまとめています。雛形の作成、公開ワークフローへの登録、シンボリックリンクの作成を行います。
使用する場面
次の場合にこのスキルを使用します:
skills/に新しい SDK/フレームワーク統合スキルを追加する場合skills/に新しい CLI ツールのラッパースキルを追加する場合skills/<skill-name>/ディレクトリを作成して登録する必要がある場合
判断ポイント
まず確認します:
統合スキル(エージェントが実際の API を呼び出すコードとテストを生成する)ですか、それともツールスキル(エージェントが CLI コマンドを実行する)ですか?
統合スキルのワークフロー
統合スキルは、エージェントが実行可能なコードと統合テストを生成する SDK やフレームワークを対象とします。
例: ydc-ai-sdk-integration、teams-anthropic-integration、ydc-openai-agent-sdk-integration
ステップ 1(統合)— create-seed-skill を実行する
create-seed-skill スキルを有効にします。次の処理が行われます:
- スキル情報(名前、パッケージ、言語 — TypeScript、Python、または両方、パス A/B、環境変数、テストクエリ)の収集
skills/<skill-name>/SKILL.mdとassets/の生成.gitkeepファイルを含むtests/<skill-name>/ディレクトリの作成(両方の言語を使用する場合は言語ごとに 1 つ)- 言語ごとに 1 件の
prompts.jsonlエントリをdata/prompts/prompts.jsonlに追加
ステップ 2 に進む前に、create-seed-skill のワークフローを最後まで完了してください。
ツールスキルのワークフロー
ツールスキルは、コードを書くのではなく、エージェントがコマンドを実行する CLI ラッパーです。
例: youdotcom-cli
ステップ 1 — スキルディレクトリの雛形を作成する
skills/<skill-name>/SKILL.md にスキルディレクトリと SKILL.md を作成します。
必須のフロントマター:
---
name: <skill-name>
description: |
One-line summary. When to activate.
license: <ISC|MIT|Apache-2.0>
compatibility: <runtime requirements, e.g. "Requires Bun 1.3+">
metadata:
author: youdotcom-oss
version: "1.0.0"
category: <tool|integration|scaffolding>
keywords: <comma-separated>
---
すぐに検証します:
bunx @plaited/development-skills validate-skill skills/<skill-name>
ステップ 2 — publish.yml に登録する
.github/workflows/publish.yml を 2 か所編集します:
2a — 入力を追加する
on.workflow_dispatch.inputs の下に追加します:
<skill-name>:
description: "<skill-name>"
required: false
type: choice
default: skip
options:
- skip
- patch
- minor
- major
2b — ジョブを追加する
jobs: セクションの末尾に追加します。push の順序を維持するため、新しいジョブの needs には現在の最後のジョブを指定する必要があります:
publish-<skill-name>:
needs: <current-last-job>
if: ${{ always() && inputs['<skill-name>'] != 'skip' }}
uses: ./.github/workflows/_publish.yml
with:
skill_name: "<skill-name>"
bump_type: ${{ inputs['<skill-name>'] }}
secrets:
PUBLISH_TOKEN: ${{ secrets.PUBLISH_TOKEN }}
実行時に現在の最後のジョブを確認してください — 固定リストに依存しないでください。needs に指定するジョブ ID を取得するには、次を実行します:
grep '^ publish-' .github/workflows/publish.yml | tail -1
出力は publish-youdotcom-cli: のような行になります。末尾のコロンを除いたジョブ ID を <current-last-job> として使用します。
if: の always() は必須です。これがないと、先行ジョブがスキップされた場合、このスキルが選択されていても依存するジョブもスキップされます。
ステップ 3 — シンボリックリンクを作成する
外部スキルは .claude/skills/ から skills/ へシンボリックリンクを作成します:
ln -s ../../skills/<skill-name> .claude/skills/<skill-name>
注:内部スキル(.agents/skills/ 内)は異なるリンク先を使用します:
../../.agents/skills/<skill-name> — ただし、このスキルが扱うのは外部スキルのみです。
ステップ 4 — 最終検証
bunx @plaited/development-skills validate-skill skills/<skill-name>
コミットする前に、出力が valid: true を報告していることを確認してください。
関連スキル
create-seed-skill— 統合タイプのスキル向けの完全な雛形作成ワークフロー(SKILL.md + assets + prompts.jsonl)validate-skill— AgentSkills 仕様に照らして、任意のスキルの構成を検証します