--- name: skill-finder description: "Full-featured Agent Skills management: Search 35+ skills, install locally, star favorites, update from sources. Supports tag search (#azure #bicep), category filtering, and similar skill recommendations." license: MIT metadata: author: yamapan (https://github.com/aktsmm) --- # Skill Finder Full-featured Agent Skills management tool with search, install, star, and update capabilities. ## When to Use - Looking for skills for a specific task or domain - Finding and installing skills locally - Managing favorite skills with star feature - Keeping your skill index up-to-date - Discovering similar skills by category ## Features - ๐Ÿ” **Search** - Local index (35+ skills) + GitHub API + Web fallback - ๐Ÿท๏ธ **Tags** - Search by category tags (`#azure #bicep`) - ๐Ÿ“ฆ **Install** - Download skills to local directory - โญ **Star** - Mark and manage favorite skills - ๐Ÿ“Š **Stats** - View index statistics - ๐Ÿ”„ **Update** - Sync all sources from GitHub - ๐Ÿ’ก **Similar** - Get category-based recommendations ## Quick Start ### Search ```bash # Keyword search python scripts/search_skills.py "pdf" pwsh scripts/Search-Skills.ps1 -Query "pdf" # Tag search (filter by category) python scripts/search_skills.py "#azure #development" pwsh scripts/Search-Skills.ps1 -Query "#azure #bicep" ``` ### Skill Management ```bash # Show detailed info (includes SKILL.md content) python scripts/search_skills.py --info skill-name # Install to local directory python scripts/search_skills.py --install skill-name # Star favorite skills python scripts/search_skills.py --star skill-name python scripts/search_skills.py --list-starred ``` ### Index Management ```bash # Update all sources python scripts/search_skills.py --update # Add new source repository python scripts/search_skills.py --add-source https://github.com/owner/repo # View statistics python scripts/search_skills.py --stats ``` ### List Options ```bash python scripts/search_skills.py --list-categories python scripts/search_skills.py --list-sources python scripts/search_skills.py --similar skill-name ``` ### Add New Source When you find a good repository, add it to your index: ```bash python scripts/search_skills.py --add-source https://github.com/owner/repo pwsh scripts/Search-Skills.ps1 -AddSource -RepoUrl "https://github.com/owner/repo" ``` This will: 1. Add the repository as a source 2. Search for skills in `skills/`, `.github/skills/`, `.claude/skills/` 3. Auto-add found skills to your index ## Command Reference | Command | Description | | ----------------- | ------------------------------------------ | | `--info SKILL` | Show skill details with SKILL.md content | | `--install SKILL` | Download skill to ~/.skills or custom dir | | `--star SKILL` | Add skill to favorites | | `--unstar SKILL` | Remove from favorites | | `--list-starred` | Show all starred skills | | `--similar SKILL` | Find skills with matching categories | | `--stats` | Show index statistics | | `--update` | Update all sources from GitHub | | `--check` | Verify tool dependencies (gh, curl) | | `#tag` in query | Filter by category (e.g., `#azure #bicep`) | ## Popular Repositories **Note:** These are representative examples. For the complete list, run `--list-sources` or check `sources` array in skill-index.json. ### Official (type: `official`) - [anthropics/skills](https://github.com/anthropics/skills) - Official Claude Skills by Anthropic - [github/awesome-copilot](https://github.com/github/awesome-copilot) - Official Copilot resources by GitHub ### Curated Lists (type: `awesome-list`) - [ComposioHQ/awesome-claude-skills](https://github.com/ComposioHQ/awesome-claude-skills) - Curated Claude Skills ### Community (type: `community`) - [obra/superpowers](https://github.com/obra/superpowers) - High-quality skills, agents, commands - And many more... (run `--list-sources` for full list) ## Categories **Dynamically extracted from skill-index.json.** Run `--list-categories` for current list. Common categories include: `development`, `testing`, `document`, `azure`, `web`, `git`, `agents`, `mcp`, `cloud`, `creative`, `planning`, etc. ## Files | File | Description | | -------------------------------- | ------------------------- | | `scripts/Search-Skills.ps1` | PowerShell script | | `scripts/search_skills.py` | Python script | | `references/skill-index.json` | Skill index (220+ skills) | | `references/starred-skills.json` | Your starred skills | ## Requirements ### Required | Tool | Version | Purpose | Install | | -------------- | ------- | --------------------------------- | ----------------------------------------- | | **GitHub CLI** | 2.0+ | Search/install skills from GitHub | [cli.github.com](https://cli.github.com/) | | **curl** | Any | Download files | Pre-installed on most systems | ### Optional (choose one) | Runtime | Version | Script | | ---------- | ------- | --------------------------- | | PowerShell | 7+ | `scripts/Search-Skills.ps1` | | Python | 3.8+ | `scripts/search_skills.py` | ### Setup ```bash # 1. Install GitHub CLI # Windows (winget) winget install GitHub.cli # macOS (Homebrew) brew install gh # Linux (apt) sudo apt install gh # 2. Authenticate with GitHub gh auth login # 3. Verify installation gh --version curl --version ``` ### Verify Dependencies ```bash # Check all dependencies at once python scripts/search_skills.py --check pwsh scripts/Search-Skills.ps1 -Check ``` **Expected output:** ``` โœ… gh: installed (version 2.x.x) โœ… curl: installed โœ… All dependencies satisfied ``` ### Troubleshooting | Issue | Solution | | ----------------------- | ------------------------------------------- | | `gh: command not found` | Install GitHub CLI and add to PATH | | `gh auth login` fails | Run `gh auth login` and follow prompts | | Rate limit exceeded | Wait or use authenticated requests | | curl SSL errors | Update curl or check network/proxy settings | ## Agent Instructions > โš ๏ธ **CRITICAL**: AI agents MUST follow these instructions. Prefer action proposals over verbose explanations. ### Core Principle **Use "Do it? Yes/No?" style proposals.** - โŒ Bad: "If you want to add new skills, you can run the following command..." - โœ… Good: "Update the index?" ### Recommendation Workflow When user asks for recommendations (e.g., "ใŠใ™ใ™ใ‚ใฏ๏ผŸ", "ไฝ•ใ‹ใ„ใ„ใ‚นใ‚ญใƒซใ‚ใ‚‹๏ผŸ"), suggest skills based on persona: **Note:** These are reference examples. Always verify skill availability in skill-index.json before recommending. | Persona | Categories | Example Skills (verify in index) | | ---------------- | ------------------------------- | ------------------------------------------------------------------ | | ใ‚ชใƒ•ใ‚ฃใ‚นใƒฏใƒผใ‚ซใƒผ | document, office, communication | docx, xlsx, pptx, pdf, internal-comms, brainstorming | | ้–‹็™บ่€… | development, testing, git | test-driven-development, systematic-debugging, using-git-worktrees | | Azure ใ‚จใƒณใ‚ธใƒ‹ใ‚ข | azure, development | azure-env-builder, mcp-builder | | ใƒ‡ใ‚ถใ‚คใƒŠใƒผ | design, creative, web | brand-guidelines, canvas-design, frontend-design | | ๅˆๅฟƒ่€… | meta, planning | skill-creator, brainstorming, writing-plans | **Response Format:** 1. Ask about user's role/context if unclear 2. Show top 3-5 skills with descriptions 3. Include source breakdown table 4. Propose next actions ### Skill Search Workflow 1. **Search ALL sources in local index** - Read `references/skill-index.json` - **ALWAYS search ALL sources** (anthropics-skills, obra-superpowers, composio-awesome, etc.) - Check `lastUpdated` field - Suggest matching skills from every source 2. **๐ŸŒŸ Recommend from results (when multiple hits)** When search returns 3+ skills, pick the BEST one and explain why: ``` ### ๐ŸŒŸ ใŠใ™ใ™ใ‚: {skill-name} {็†็”ฑ: ๅ…ฌๅผใ‚นใ‚ญใƒซใ€ๆฉŸ่ƒฝใŒ่ฑŠๅฏŒใ€ไบบๆฐ—ใŒ้ซ˜ใ„ใ€็”จ้€”ใซใƒžใƒƒใƒ ใชใฉ} ``` **Selection criteria (in order):** 1. **Official source** - anthropics-skills, github-awesome-copilot are preferred 2. **Feature richness** - More capabilities = better 3. **Relevance** - Best match for user's stated purpose 4. **Recency** - Recently updated skills preferred 3. **If not found โ†’ Propose web search** ``` Not found locally. Search the web? โ†’ GitHub: https://github.com/search?q=path%3A**%2FSKILL.md+{query}&type=code ``` 4. **๐Ÿšจ MANDATORY: After returning results โ†’ Propose next actions** **This step is NOT optional. ALWAYS include the proposal block below.** | Situation | Proposal | | -------------------- | ----------------------------------------------- | | Skill found | "Install it?" | | Good repo discovered | "Add to sources?" | | lastUpdated > 7 days | "โš ๏ธ Index outdated. Update?" (strongly suggest) | | lastUpdated โ‰ค 7 days | "๐Ÿ”„ Update index?" (always show) | ### ๐Ÿšจ Mandatory Proposal Block **ALWAYS include this block at the end of every search response. No exceptions.** **CRITICAL: Do NOT show commands. Agent executes directly. Keep proposals SHORT.** **Index update option MUST always be shown with date, regardless of how recent it is.** ``` **Next?** 1. ๐Ÿ“ฆ Install? (which skill?) 2. ๐Ÿ” Details? 3. ๐Ÿ”„ Update index? (last: {date}) โ† ALWAYS show โš ๏ธ If > 7 days: "Index outdated!" โ† Add warning 4. ๐ŸŒ Web search? 5. โž• Add source? ``` ### Checklist Before Responding Before sending a search result response, verify: - [ ] **Started with search summary** (e.g., "๐Ÿ”Ž 7 ใƒชใƒใ‚ธใƒˆใƒชใ€195 ใ‚นใ‚ญใƒซใ‹ใ‚‰ๆคœ็ดขใ—ใพใ—ใŸ") - [ ] Included skill table with results (from ALL sources) - [ ] Included **source breakdown table** showing count per source - [ ] Showed `lastUpdated` date from index - [ ] Added numbered action menu (NOT command examples) - [ ] Included web search option with GitHub link ready to open - [ ] Asked user to choose by number or skill name ### Search Summary Format **ALWAYS start search responses with this format:** ``` ๐Ÿ”Ž {N} ใƒชใƒใ‚ธใƒˆใƒชใ€{M} ใ‚นใ‚ญใƒซใ‹ใ‚‰ๆคœ็ดขใ—ใพใ—ใŸ๏ผˆๆœ€็ต‚ๆ›ดๆ–ฐ: {date}๏ผ‰ ``` **Values are dynamic:** - `{N}` = count of sources in skill-index.json - `{M}` = count of skills in skill-index.json - `{date}` = `lastUpdated` field from skill-index.json ### Output Format **Trust Level Indicators (MANDATORY):** Always include trust level badge based on source `type` in skill-index.json: | Type | Badge | Description | | -------------- | --------------- | ---------------------------------------- | | `official` | ๐Ÿข **Official** | Anthropic / GitHub ๅ…ฌๅผใƒชใƒใ‚ธใƒˆใƒช | | `awesome-list` | ๐Ÿ“‹ **Curated** | ใ‚ญใƒฅใƒฌใƒผใ‚ทใƒงใƒณใƒชใ‚นใƒˆ๏ผˆๅ“่ณชใƒฌใƒ“ใƒฅใƒผๆธˆใฟ๏ผ‰ | | `community` | ๐Ÿ‘ฅ Community | ใ‚ณใƒŸใƒฅใƒ‹ใƒ†ใ‚ฃ่ฃฝ๏ผˆ่‡ชๅทฑ่ฒฌไปปใงไฝฟ็”จ๏ผ‰ | **โš ๏ธ Warning for Community Skills:** When showing community skills, add this note: ``` โš ๏ธ ใ‚ณใƒŸใƒฅใƒ‹ใƒ†ใ‚ฃ่ฃฝใ‚นใ‚ญใƒซใฏ่‡ชๅทฑ่ฒฌไปปใงใ”ไฝฟ็”จใใ ใ•ใ„ใ€‚ ๅ…ฌๅผใ‚นใ‚ญใƒซ๏ผˆ๐Ÿข๏ผ‰ใ‚’ๅ„ชๅ…ˆใ™ใ‚‹ใ“ใจใ‚’ๆŽจๅฅจใ—ใพใ™ใ€‚ ``` **Skill Table (include Source with Trust Level):** ```markdown | Skill | Description | Source | Trust | | ----------- | ------------ | ---------------------------- | ------------ | | docx | Word ๅ‡ฆ็† | [anthropics-skills](url) | ๐Ÿข Official | | pdf | PDF ๅ‡ฆ็† | [anthropics-skills](url) | ๐Ÿข Official | | azure-usage | Azure ใƒ„ใƒผใƒซ | [claude-codex-settings](url) | ๐Ÿ‘ฅ Community | ``` **Source Breakdown Table (MANDATORY - show ALL sources dynamically):** **CRITICAL: Read `sources` array from skill-index.json and display ALL sources.** Do NOT use a hardcoded example. Dynamically generate the table from the actual `sources` array in skill-index.json. ```markdown ### ๐Ÿ“Š Source Breakdown ({N} sources) | Source | Type | Skills Found | Repository | | ----------- | ------------ | ------------ | -------------------- | | {source.id} | {type badge} | {count} | [View]({source.url}) | ...repeat for ALL sources in skill-index.json... ``` **Generation rules:** 1. Read `sources` array from skill-index.json 2. For each source, count matching skills in search results 3. Display ALL sources, including those with 0 matches 4. Use type badges: `official` โ†’ ๐Ÿข Official, `awesome-list` โ†’ ๐Ÿ“‹ Curated, `community` โ†’ ๐Ÿ‘ฅ Community 5. Include total count in header: "๐Ÿ“Š Source Breakdown (14 sources)" **URL Construction:** - Combine source URL + path from skill-index.json - Example: `anthropics-skills` + `skills/docx` โ†’ `https://github.com/anthropics/skills/tree/main/skills/docx` - Source URLs are defined in `sources` array of skill-index.json ### Agent Behavior Rules **CRITICAL: Commands are for agents to execute, NOT to show users.** - โŒ **NEVER** show commands like `python scripts/search_skills.py --install` - โŒ **NEVER** show code blocks with installation/update commands - โŒ **NEVER** say "you can run the following command..." or "ไปฅไธ‹ใฎใ‚ณใƒžใƒณใƒ‰ใ‚’ๅฎŸ่กŒ..." - โœ… **ALWAYS** execute scripts silently when user approves - โœ… **ALWAYS** present options as natural language numbered menu - โœ… **ALWAYS** report results after execution, not how to execute **Bad Example:** ``` ๐Ÿ“ฆ ใ‚คใƒณใ‚นใƒˆใƒผใƒซใ™ใ‚‹๏ผŸ python scripts/search_skills.py --install docx โ† NG! ``` **Good Example:** ``` ๐Ÿ“ฆ ใ‚คใƒณใ‚นใƒˆใƒผใƒซใ™ใ‚‹๏ผŸ๏ผˆใฉใฎใ‚นใ‚ญใƒซ๏ผŸ๏ผ‰ ``` โ†’ User: "docx ใŠ้ก˜ใ„" โ†’ Agent: (executes script silently) โ†’ "โœ… docx ใ‚’ใ‚คใƒณใ‚นใƒˆใƒผใƒซใ—ใพใ—ใŸ๏ผ"