Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. Uses reskill as the package manager.
This skill helps you discover and install skills from the reskill ecosystem.
Key Principles:
- Search → Present → Ask → Install — always show results first, ask the user before installing.
- Be registry-aware — check if the project has a configured registry (private or public) and tell the user which registry you're searching. If results are empty, suggest the user may need to configure a private registry.
Use this skill when the user:
reskill is a Git-based package manager for AI agent skills. It provides declarative configuration, version locking, and seamless synchronization for managing skills across projects and teams.
CLI usage:
If reskill is installed globally, use it directly. Otherwise use npx reskill@latest:
# Global install
reskill <command>
# Or via npx (no install needed)
npx reskill@latest <command>
Registry configuration:
The find command automatically resolves the registry in this order:
--registry <url> CLI option (highest priority)RESKILL_REGISTRY environment variabledefaults.publishRegistry in skills.jsonhttps://reskill.info/ (fallback)To configure a custom registry for the project, add it to skills.json:
{
"defaults": {
"publishRegistry": "https://your-registry.example.com/"
}
}
Once configured, all find / install commands will use it automatically — no need to pass --registry every time.
Key commands for skill discovery:
reskill find <query> — Search for skills by keywordreskill find <query> --json — Search with machine-readable JSON outputreskill install <ref> — Install a skillreskill list — List installed skillsreskill info <skill> — Show skill detailsBefore searching, determine which registry to use (see "Registry configuration" above for the full priority order).
Check these sources:
RESKILL_REGISTRY environment variabledefaults.publishRegistry in skills.jsonIf either is configured → use it, and tell the user which registry you're searching.
If neither is configured → ask the user before proceeding:
No private registry is configured for this project.
Do you want to search a private registry? If so, provide the URL
(e.g. --registry https://your-registry.example.com/).
Otherwise, I'll search the public registry (reskill.info).
Once the user responds:
--registry <url>https://reskill.info/)When a user asks for help with something, identify:
Use --json for structured results:
npx reskill@latest find "<query>" --json
The JSON output has this structure:
{
"total": 2,
"items": [
{
"name": "@scope/skill-name",
"description": "What this skill does",
"latest_version": "1.0.0",
"keywords": ["keyword1", "keyword2"],
"publisher": { "handle": "author" },
"updated_at": "2025-01-01T00:00:00Z"
}
]
}
IMPORTANT: Use progressive search to maximize results. The registry may not support multi-word fuzzy matching, so follow this strategy:
npx reskill@latest find "frontend design" --json
If total > 0, proceed to Step 3 (present results).
Skill names often use hyphens. If Round 1 returns 0 results, try connecting keywords with a hyphen:
npx reskill@latest find "frontend-design" --json
If still 0 results, pick the most specific keyword from the user's query and search with that alone:
npx reskill@latest find "frontend" --json
Choose the keyword that best narrows the domain (e.g., prefer "frontend" over "design" because "design" is too broad).
If still no results, try synonyms or related terms:
When broader searches return multiple results, read each item's description field and filter by relevance to the user's original request. Only present skills whose description genuinely matches what the user needs. Do not present all results blindly.
Example flow — user asks "help me with frontend design":
1. find "frontend design" → 0 results
2. find "frontend-design" → 0 results
3. find "frontend" → 3 results
4. Read descriptions → filter → 1 result is relevant to UI design
5. Present that 1 result to user
Search query examples:
| User says | Round 1 | Round 2 (hyphenated) | Round 3 (single keyword) |
|---|---|---|---|
| "How do I make my React app faster?" | "react performance" | "react-performance" | "react" |
| "Can you help me with PR reviews?" | "pr review" | "pr-review" | "review" |
| "I need to create a changelog" | "changelog" | — | — |
| "Help me write better TypeScript" | "typescript practices" | "typescript-practices" | "typescript" |
Stop as soon as you get relevant results — no need to run all rounds.
When you find relevant skills, present them clearly:
Then ask the user which one(s) they want to install.
Example response:
I found a skill that might help! (from public registry: reskill.info)
**@scope/react-best-practices** (v1.2.0)
React and performance optimization guidelines.
To install:
npx reskill@latest install @scope/react-best-practices -y
Would you like me to install it?
If multiple results are found, present the top 2-3 most relevant ones and let the user choose. Once the user confirms (e.g., "install it", "yes", "install 1 and 3"), proceed to install all confirmed skills — no need to ask again for each one.
# Install to the current project
npx reskill@latest install <name> -y
# Install globally (user-level, available in all projects)
npx reskill@latest install <name> -y -g
The -y flag skips CLI confirmation prompts.
After installation, let the user know the skill is ready and briefly describe what new capabilities it provides.
When constructing search queries, consider these categories:
| Category | Example Queries |
|---|---|
| Web Development | react, nextjs, typescript, css, tailwind, vue |
| Testing | testing, jest, playwright, e2e, unit-test |
| DevOps | deploy, docker, kubernetes, ci-cd, github-actions |
| Documentation | docs, readme, changelog, api-docs |
| Code Quality | review, lint, refactor, best-practices, clean-code |
| Design | ui, ux, design-system, accessibility, figma |
| Productivity | workflow, automation, git, project-management |
| Data | database, sql, data-analysis, visualization |
If no relevant skills exist after exhausting all search rounds (multi-word → hyphenated → single keyword → synonyms):
Example:
I searched the registry with several queries ("frontend design", "frontend-design", "frontend")
but didn't find a matching skill.
I can still help you with this task directly! Would you like me to proceed?
If this is something you do often, you could also create your own skill and share it:
mkdir my-skill && echo "---\nname: my-skill\n---\n# My Skill" > my-skill/SKILL.md
Before searching for new skills, you can check what's already installed:
# List all installed skills
npx reskill@latest list
# Get details about a specific skill
npx reskill@latest info <skill-name>
This avoids suggesting skills the user already has.