AI agent skill · by @google
Find Skills
Discover/install NEW agent skills from external sources (skills.sh). Use for capabilities you lack, e.g. "find a skill for X". Do NOT use to list skills you already have; see `<available_skills>`.
Archived 2026-10-23 · Source updated 2026-10-10 · License: Apache-2.0. Check the original repository for the latest version.
SKILL.md instructions
# Find skills
## When to use this skill
- The user asks "find a skill for X", "is there a skill that does X"
- The user asks "how do I do X" where X is a common task with a likely existing skill
- The user wants to extend Horizon's capabilities with a new skill
Before searching externally, check the `<available_skills>` block in your
context — the user may already have a relevant skill installed.
## Step 1 — check the leaderboard
Before running any CLI command, check [skills.sh](https://skills.sh/) to see
whether a well-known skill already covers the domain. The leaderboard ranks by
total installs, surfacing the most popular and battle-tested options.
## Step 2 — search for skills
If the leaderboard doesn't cover the user's need, search via the Skills CLI:
```
bash(command="npx --yes skills find <query>")
```
Examples:
| User says | Search |
|---|---|
| "make my React app faster" | `npx --yes skills find react performance` |
| "help with PR reviews" | `npx --yes skills find pr review` |
| "create a changelog" | `npx --yes skills find changelog` |
If `npx` is unavailable the command will fail — fall back to browsing
skills.sh manually and pasting the SKILL.md content.
## Step 3 — verify quality before recommending
Never recommend a skill based solely on search results.
- **Install count** — prefer 1 000+ installs; treat anything under 100 with skepticism
- **Source reputation** — official organisations (`vercel-labs`, `anthropics`,
`microsoft`) are more trustworthy than unknown authors
- **GitHub stars** — check the source repo; a skill from a repo with <100 stars
is a yellow flag
## Step 4 — present the option to the user
```
I found a skill that might help: "react-best-practices" from Vercel Engineering
provides React and Next.js performance guidelines (185K installs).
Shall I install it?
```
Only proceed to installation after the user confirms.
## Step 5 — install
### Option A — write SKILL.md directly (always works)
If you have the skill content (pasted by the user, retrieved from skills.sh,
or constructed from the search result):
```
write(".agents/skills/<name>/SKILL.md", content)
load_skill(action="reload")
```
`write` creates the directory if it does not exist. `load_skill(action="reload")`
refreshes the `<available_skills>` catalog (plus extensions and manifest) on
the next turn.
### Option B — install via npx (requires Node.js)
First check whether npx is available:
```
bash(command="which npx")
```
If it is, install the skill. Select a single skill from a multi-skill repo with
the `@<skill>` suffix (omit it to take the whole repo):
```
bash(command="npx --yes skills add <owner/repo>@<skill-name> -y")
```
The Skills CLI stages the skill (with its `references/`, `assets/`, and
`scripts/` subdirs) under `.agents/skills/<skill-name>/` — exactly where Horizon
loads skills from — so no move is needed. Just refresh:
```
load_skill(action="reload")
```
The staged directory name MUST match the `name:` field in the SKILL.md
frontmatter — `_load_skill_from_dir` validates that and skips mismatched
skills.
## Step 6 — confirm activation
After `load_skill(action="reload")` returns (look for the new skill in
`loaded`), tell the user:
```
The "<name>" skill is now installed. It will appear in your
<available_skills> catalog on the next turn.
```
## When no skills are found
1. Acknowledge that no existing skill was found
2. Offer to help directly using general capabilities
3. Offer to write a custom skill for them:
```
bash(command="npx --yes skills init my-skill-name")
```
Or skip the CLI and author one manually — write a SKILL.md following the
`policy` or `workspace` skills as examples.
## Common skill categories
| Category | Search terms |
|---|---|
| Web development | react, nextjs, typescript, css, tailwind |
| Testing | testing, jest, playwright, e2e |
| DevOps | deploy, docker, kubernetes, ci-cd |
| Documentation | docs, readme, changelog, api-docs |
| Code quality | review, lint, refactor, best-practices |
| Design | ui, ux, design-system, accessibility |