---
name: skill-scout
description: 新しいスキルを作成する前に、ローカル・マーケットプレイス・GitHub・Webの既存スキルを検索する。スキルの作成・ビルド・フォーク・検索を行う際に使用。
origin: community
---

# スキルスカウト

新しいスキルを作成する前にこのスキルを使用してください。目的は、既存のコミュニティやマーケットプレイスの成果を重複して作成することを避けながら、外部のものを採用する前にきちんと審査することです。

出典: `redminwang` によるコミュニティの古いPR #1232 から再利用。

## 使用するタイミング

- ユーザーが「スキルを作成する」「スキルをビルドする」「スキルを作る」「新しいスキル」と言ったとき。
- ユーザーが「Xのスキルはありますか？」または「Yを実行するスキルは存在しますか？」と尋ねたとき。
- ユーザーがワークフローを説明し、新しいスキルの作成を提案しようとしているとき。
- ユーザーが既存のスキルをフォークまたは拡張したいとき。

ユーザーが検索をスキップして最初から作成するよう明示的に指示した場合は、それを確認してリクエストされた作成ワークフローを進めてください。

## 動作の仕組み

### ステップ1 - 意図の把握

以下を抽出します：

- スキルが実行すべきタスク。
- スキルを使用するためのトリガー条件。
- 関連するドメイン、ツール、フレームワーク、またはデータソース。
- 3〜5個の検索キーワードと有用な同義語。

### ステップ2 - ローカルソースを検索する

まずインストール済みおよびマーケットプレイスのスキル名を検索します。ローカルソースはすでにユーザーの環境に含まれているため優先されます。

```bash
find ~/.claude/skills -maxdepth 2 -name SKILL.md 2>/dev/null | grep -iE "keyword|synonym"
find ~/.claude/plugins/marketplaces -path '*/skills/*/SKILL.md' 2>/dev/null | grep -iE "keyword|synonym"
```

次にフロントマターの説明を検索します：

```bash
grep -RilE "keyword|synonym" ~/.claude/skills ~/.claude/plugins/marketplaces 2>/dev/null
```

### ステップ3 - リモートソースを検索する

利用可能なGitHubおよびWebの検索ツールを使用します。簡潔なクエリを優先します：

```bash
gh search repos "claude code skill keyword" --limit 10 --sort stars
gh search code "name: keyword" --filename SKILL.md --limit 10
```

Web検索では、最大3つのターゲットクエリを使用します（例）：

```text
"claude code skill" keyword
"SKILL.md" keyword
"everything-claude-code" keyword
```

### ステップ4 - 外部マッチを審査する

採用またはフォークのために外部スキルを推奨する前に：

- `SKILL.md` のフロントマターと手順を読む。
- 予期しないシェルコマンド、ファイル書き込み、ネットワーク呼び出し、クレデンシャル処理、またはパッケージインストールがないか確認する。
- リポジトリがメンテナンスされているかどうかを確認する。
- マーケットプレイスのオリジナルを直接編集するのではなく、新しいローカルブランチにコピーしてdiffを確認することを優先する。

### ステップ5 - 結果をランク付けする

候補を以下の順でランク付けします：

1. スキル名での完全なキーワードマッチ。
2. 説明でのキーワードまたは同義語マッチ。
3. ローカルにインストール済みまたはマーケットプレイスのソース。
4. 最近のアクティビティがあるメンテナンス済みのGitHubソース。
5. Web上の言及のみ。

最終リストは10件に制限します。

### ステップ6 - 判断オプションを提示する

ユーザーに短いテーブルを提示します：

| オプション | 意味 |
| --- | --- |
| 既存を使用 | マッチするスキルをそのまま呼び出すかインストールする。 |
| フォークまたは拡張 | 最も近いスキルをコピーして修正する。 |
| 新規作成 | 近いマッチが存在しないことを確認した後、新しいスキルをビルドする。 |

ユーザーがそのパスを選択した後、または検索で近いマッチが見つからなかった場合にのみ、新しいスキルを作成します。

## 例

### 結果テーブル

```markdown
| # | スキル | ソース | マッチする理由 | ギャップ |
| --- | --- | --- | --- | --- |
| 1 | article-writing | ローカル ECC | 記事とガイドの草稿作成 | リリースノートに特化していない |
| 2 | content-engine | ローカル ECC | マルチフォーマットコンテンツワークフロー | 必要以上に重い |
| 3 | blog-writer | GitHub | 最近のコミットがあるブログ執筆スキル | セキュリティレビューが必要 |
```

### ユーザー向けサマリー

```markdown
2つの近いローカルマッチと1つの外部候補が見つかりました。最も近いのは
`article-writing` です。草稿作成と修正をカバーしていますが、
お求めのリリースノートチェックリストは含まれていません。そのまま使用するか、
リリースノートバリアントにフォークするか、新しいスキルを作成するかを選択できます。
```

## アンチパターン

- 検索が適切な場合に、新しいスキルの作成に直接飛びつかないこと。
- 読まずに外部スキルをインストールしないこと。
- 弱いマッチの長いランク付けされていないリストを提示しないこと。
- Web上の言及のみを信頼できるソースとして扱わないこと。
- インストール済みのマーケットプレイスオリジナルをその場で編集しないこと。

## 関連

- `search-first` - ビルドする前に検索する一般的なワークフロー。
- `skill-stocktake` - インストール済みスキルの健全性、重複、ギャップの監査。
- `agent-sort` - 既存のエージェントとスキルの分類と整理。
