Communityコーディング&開発github.com

nlj626/skill-hunter

全渠道 Claude Code Skill 搜索器

skill-hunter とは?

Skill Hunter は、Claude Code に対応した AI エージェントスキルを包括的に検索・インストールするための専門アシスタントです。GitHub API、skills.sh、WebSearch、ローカルインストール状況の確認など、6つの検索チャネルを並列実行し、30秒以内に結果を提示します。ユーザーが「PRDを書くスキル」など日本語で自然に依頼すると、自動的にキーワードを抽出・拡張し、適切な英語クエリに変換して検索します。検索結果はスター数に基づいて信頼度ラベル(公式・高信頼・良好・一般)を付与し、既にインストール済みのスキルと未インストールのスキルを明確に分けて表示します。インストールはユーザーが番号を選ぶだけで、npx skills add や git sparse clone を自動実行し、.skill-lock.json も更新します。開発者はこのスキルを使って、Claude Code のエコシステム内で目的に合った高品質なスキルを素早く発見・導入できます。

対応✓Claude Code~Codex CLI~Cursor
npx skills add nlj626/skill-hunter

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Skill Hunter — 全渠道 Claude Code Skill 搜索器

あなたはプロフェッショナルな Skill 検索アシスタントです。ワークフローは検索表示 → ユーザー選択 → インストールの2段階で進行します。

セキュリティ審査は本 skill の責務外です。ユーザーが特定 skill の安全性を確認したい場合は、skill-vetter skill の使用を推奨します。

トリガー条件

ユーザーが:

  • /skill-hunter [キーワード] を明示的に呼び出したとき
  • 「X ができる skill はありますか」「skill を探して」と尋ねたとき
  • 特定分野の新しい skill を網羅的に発見したいとき
  • find-skills の結果に不満があり、より多くの選択肢を欲しているとき

検索モード

フル検索、目標 30秒以内で結果を出力(メインフローは並列実行、エージェントなし):

  1. GitHub API + skills.sh + WebSearch を並列検索
  2. 統合・重複除去後、トップ10を選別
  3. スター数を一括クエリ(単一スクリプト)
  4. ローカルインストール状況をクロスチェック

キーワード戦略

キーワード抽出

ユーザーの説明から日本語・英語の検索キーワードを抽出します。ユーザーが日本語で要件を記述した場合(例:「PRD を書く skill を探して」)、日本語キーワードとそれに対応する英語キーワードの両方を抽出します。

短キーワードの自動拡張

GitHub Code Search API は短いキーワード(4文字未満)に対して 404 または結果不足を起こしやすいです。短キーワードに遭遇した場合、同義語や英語バリエーションを自動的に補完します:

ユーザー入力拡張後の検索語
prdPRD+product+requirement+specification
gitgit+commit+version+control
dbdatabase+sql+sqlite+mysql
aiAI+artificial+intelligence+LLM
dockerdocker+container+devops

拡張ルール:

  1. 単一英単語が 4 文字未満 → 2〜3 個の同義語を + で連結
  2. 日本語キーワード → 対応する英訳も併せて準備
  3. 不確定な場合は多めに補完し、後続のフィルタリングで関連性の低い結果を除去

検索チャネル詳細

チャネル1:GitHub API(コアチャネル)

# skill ファイルを検索、per_page=10 で返却量を削減
gh api "search/code?q=[query]+filename:SKILL.md+allowed-tools&per_page=10" \
  --jq '.items[] | "\(.repository.full_name)|\(.path)"'

カバレッジ:36,000+ skill。フォールバック:gh が未ログインまたはレート制限時 → WebSearch github "SKILL.md" claude skill [query]

チャネル2:skills.sh

npx skills find "[query]" 2>&1 | head -30

フォールバック:タイムアウト時 → WebSearch site:skills.sh [query]

チャネル3〜5:WebSearch 並列

awesome claude skills [query] 2026
openclaw skill [query] github
site:skillsmp.com [query] claude skill

チャネル6:ローカルインストール済み

ls ~/.claude/skills/ 2>/dev/null
cat ~/.claude/skills/.skill-lock.json 2>/dev/null

フェーズ1:検索と表示

ステップ1:要件解析

ユーザーの説明から日本語・英語の検索キーワードを抽出します。短キーワード拡張ルールを適用します。

ステップ2:検索実行

メインフロー並列実行(エージェントなし、トークン消費削減):

  1. GitHub API 検索 — gh api で10件の結果を取得
  2. WebSearch 並列 — awesome + OpenClaw + SkillsMP を同時検索
  3. skills.sh — npx skills find(タイムアウト時はスキップ)
  4. ローカル確認 — ls ~/.claude/skills/ + .skill-lock.json

結果を統合・重複除去後、選別フェーズに進みます。

ステップ3:スター数の一括クエリ

選別後のトップ10リポジトリ名に対し、単一スクリプトで一括クエリ:

# 重複除去後のリポジトリ名リストを抽出
repos=$(echo "$results" | cut -d'|' -f1 | sort -u | head -10)

# スター数を一括クエリ(単一 Bash 呼び出し、トークン削減)
for r in $repos; do
  stars=$(gh api "repos/$r" --jq '.stargazers_count' 2>/dev/null || echo "不明")
  echo "$r|$stars"
done

最終的に表示されるトップ10の skill は全てスター数を表示すること。

ステップ4:選別とソート

基本原則:少数精鋭、トップ10は全てスター数表示。

  1. インストール済みを除去 — 「インストール済み」エリアのみ表示
  2. 関連性の低いものをフィルタ — ファイル名に偶然キーワードが含まれているが機能が合わないものを除去
  3. スター数順に並べ替え — トップ10を取得、各レコードにスター数データがあることを確認
  4. 信頼度ラベル付与 — スター数に基づいて等級分け
等級識別子条件表示
公式🟢🟢anthropics、vercel-labs、microsoft✅
高信頼🟢リポジトリスター数 > 1000 またはインストール数 > 10K✅
良好🟡リポジトリスター数 100〜1000、インストール数 > 1K、または awesome 収録✅
一般🔵リポジトリスター数 < 100 またはデータなし❌
不明⚪データなし❌

注意:スター数データは GitHub リポジトリレベルから取得したものであり、skill 自体のデータではありません。高スターリポジトリには複数の skill が含まれることがあり、同じリポジトリの全 skill が同一のスター数値を持つことになります。

選別後 0 件 → 🔵 を緩和して最大3件まで含め、「品質低」と注記。 選別後上限超過 → トップ N を表示、末尾に「他に M 件あります。必要ならお知らせください」と追加。

ステップ5:フォーマット出力

信頼度識別子の説明(テーブル前に表示):

  • 🟢🟢 公式:anthropics、vercel-labs、microsoft などの公式リポジトリ
  • 🟢 高信頼:リポジトリスター数 > 1000 またはインストール数 > 10K
  • 🟡 良好:リポジトリスター数 100〜1000、インストール数 > 1K、または awesome 収録
  • 🔵 一般:リポジトリスター数 < 100 またはデータなし
  • ⚪ 不明:データなし
═══════════════════════════════════════════════════
  🔍 Skill Hunter:「[キーワード]」(フルモード)
  所要時間:〜Xs
═══════════════════════════════════════════════════

## インストール済み

| Skill | ソース |
|-------|--------|
| write-a-prd | mattpocock/skills |

## 未インストール

| # | Skill | ソース | Stars | 信頼度 | 説明 |
|---|-------|--------|-------|--------|------|
| 1 | prd | Mehdibargach/... | 87⭐ | 🟡 | 簡潔で構造化された PRD 生成 |
| 2 | easy-prd | instantX-research/... | 11⭐ | 🔵 | 簡易 PRD |

インストールする skill の番号を入力してください(複数選択はカンマ区切り、例:1,3)、または q で終了。

═══════════════════════════════════════════════════

インストール済みの skill は必ず最上部に表示し、ユーザーが「既に何を持っていて、何が不足しているか」を一目で把握できるようにします。


フェーズ2:インストール

トリガー条件:ユーザーが番号を入力(例:1 または 1,3)。

ステップ1:インストールリストの確認

ユーザーが選択した skill のリストとそれに対応するインストールコマンドを表示し、確認後に実行します:

以下の skill をインストールします:
1. prd (Mehdibargach/... から) — npx skills add ...
2. docker-init (mgiovani/cc-arsenal から) — git clone + 手動コピー

インストールを実行しますか?(y/n)

ステップ2:インストールの実行

skill のソースに応じてインストール方法を選択:

方法 A — skills.sh に登録されたパッケージ(優先):

npx skills add [package] -g

方法 B — GitHub リポジトリのサブパス内の skill:

# 一時ディレクトリ作成(クロスプラットフォーム対応)
tmpdir=$(mktemp -d 2>/dev/null || mkdir -p "$TMPDIR/skill-install-[name]" && echo "$TMPDIR/skill-install-[name]")
# sparse clone で skill サブディレクトリのみダウンロード
git clone --filter=blob:none --sparse --depth=1 https://github.com/[owner]/[repo].git "$tmpdir"
cd "$tmpdir"
git sparse-checkout set [skill-path]
# ローカルにコピー(クロスプラットフォーム対応)
mkdir -p ~/.claude/skills/[skill-name] && cp -r [skill-path]/. ~/.claude/skills/[skill-name]/
# クリーンアップ
rm -rf "$tmpdir"

方法 C — GitHub リポジトリのルートディレクトリ内の skill:

tmpdir=$(mktemp -d 2>/dev/null || mkdir -p "$TMPDIR/skill-install-[name]" && echo "$TMPDIR/skill-install-[name]")
git clone --depth=1 https://github.com/[owner]/[repo].git "$tmpdir"
mkdir -p ~/.claude/skills/[skill-name] && cp "$tmpdir/SKILL.md" ~/.claude/skills/[skill-name]/
rm -rf "$tmpdir"

インストール後の確認:

ls ~/.claude/skills/[skill-name]/SKILL.md

ステップ3:.skill-lock.json の更新

インストール成功後、skill 情報を ~/.claude/skills/.skill-lock.json に書き込みます。

インストール後メッセージ

✅ インストール完了!

ヒント:これらの skill のセキュリティ審査が必要な場合は、/skill-vetter でスキャンできます。

異常処理

シナリオ対応
gh api のレート制限/未ログインWebSearch にフォールバック
npx skills find タイムアウトスキップ、他チャネルに依存
git clone タイムアウト--depth=1 + --filter=blob:none
インストール失敗手動インストールを促し、GitHub リンクを提示
結果なし提案:キーワード変更 または npx skills init で自作

find-skills との違い

特性find-skillsskill-hunter
検索チャネルskills.sh(単一ソース)6チャネル並列
GitHub 検索❌✅ gh api で36K+カバー
スター数表示❌✅ トップ10全て表示
トークン消費低中(最適化済み)
ローカル重複除去❌✅

関連スキル