The CLI for the open agent skills ecosystem.
Supports Opencode, Claude Code, Codex, Cursor, and 25 more.
npx skills add vercel-labs/agent-skills# GitHub shorthand (owner/repo)
npx skills add vercel-labs/agent-skills
# Full GitHub URL
npx skills add https://github.com/vercel-labs/agent-skills
# Direct path to a skill in a repo
npx skills add https://github.com/vercel-labs/agent-skills/tree/main/skills/frontend-design
# GitLab URL
npx skills add https://gitlab.com/org/repo
# Any git URL
npx skills add [email protected]:vercel-labs/agent-skills.git
# Local path
npx skills add ./my-local-skills| Option | Description |
|---|---|
-g, --global |
Install to user directory instead of project |
-a, --agent <agents...> |
Target specific agents (e.g., claude-code, codex). See Available Agents |
-s, --skill <skills...> |
Install specific skills by name |
-l, --list |
List available skills without installing |
-y, --yes |
Skip all confirmation prompts |
--all |
Install all skills to all agents without prompts |
# List skills in a repository
npx skills add vercel-labs/agent-skills --list
# Install specific skills
npx skills add vercel-labs/agent-skills --skill frontend-design --skill skill-creator
# Install to specific agents
npx skills add vercel-labs/agent-skills -a claude-code -a opencode
# Non-interactive installation (CI/CD friendly)
npx skills add vercel-labs/agent-skills --skill frontend-design -g -a claude-code -y
# Install all skills from a repo to all agents
npx skills add vercel-labs/agent-skills --all| Scope | Flag | Location | Use Case |
|---|---|---|---|
| Project | (default) | ./<agent>/skills/ |
Committed with your project, shared with team |
| Global | -g |
~/<agent>/skills/ |
Available across all projects |
When installing interactively, you can choose:
| Method | Description |
|---|---|
| Symlink (Recommended) | Creates symlinks from each agent to a canonical copy. Single source of truth, easy updates. |
| Copy | Creates independent copies for each agent. Use when symlinks aren't supported. |
| Command | Description |
|---|---|
npx skills find [query] |
Search for skills interactively or by keyword |
npx skills check |
Check for available skill updates |
npx skills update |
Update all installed skills to latest versions |
npx skills init [name] |
Create a new SKILL.md template |
npx skills generate-lock |
Match installed skills to sources for update tracking |
Search for skills interactively or by keyword.
# Interactive search (fzf-style)
npx skills find
# Search by keyword
npx skills find typescript# Check if any installed skills have updates
npx skills check
# Update all skills to latest versions
npx skills update# Create SKILL.md in current directory
npx skills init
# Create a new skill in a subdirectory
npx skills init my-skill# Match installed skills to sources for update tracking
npx skills generate-lock
# Preview without writing
npx skills generate-lock --dry-runAgent skills are reusable instruction sets that extend your coding agent's capabilities. They're defined in SKILL.md files with YAML frontmatter containing a name and description.
Skills let agents perform specialized tasks like:
- Generating release notes from git history
- Creating PRs following your team's conventions
- Integrating with external tools (Linear, Notion, etc.)
Discover skills at skills.sh
Skills can be installed to any of these agents:
| Agent | --agent |
Project Path | Global Path |
|---|---|---|---|
| Amp | amp |
.agents/skills/ |
~/.config/agents/skills/ |
| Antigravity | antigravity |
.agent/skills/ |
~/.gemini/antigravity/global_skills/ |
| Claude Code | claude-code |
.claude/skills/ |
~/.claude/skills/ |
| Clawdbot | clawdbot |
skills/ |
~/.clawdbot/skills/ |
| Cline | cline |
.cline/skills/ |
~/.cline/skills/ |
| CodeBuddy | codebuddy |
.codebuddy/skills/ |
~/.codebuddy/skills/ |
| Codex | codex |
.codex/skills/ |
~/.codex/skills/ |
| Command Code | command-code |
.commandcode/skills/ |
~/.commandcode/skills/ |
| Continue | continue |
.continue/skills/ |
~/.continue/skills/ |
| Crush | crush |
.crush/skills/ |
~/.config/crush/skills/ |
| Cursor | cursor |
.cursor/skills/ |
~/.cursor/skills/ |
| Droid | droid |
.factory/skills/ |
~/.factory/skills/ |
| Gemini CLI | gemini-cli |
.gemini/skills/ |
~/.gemini/skills/ |
| GitHub Copilot | github-copilot |
.github/skills/ |
~/.copilot/skills/ |
| Goose | goose |
.goose/skills/ |
~/.config/goose/skills/ |
| Kilo Code | kilo |
.kilocode/skills/ |
~/.kilocode/skills/ |
| Kiro CLI | kiro-cli |
.kiro/skills/ |
~/.kiro/skills/ |
| MCPJam | mcpjam |
.mcpjam/skills/ |
~/.mcpjam/skills/ |
| Mux | mux |
.mux/skills/ |
~/.mux/skills/ |
| OpenCode | opencode |
.opencode/skills/ |
~/.config/opencode/skills/ |
| OpenHands | openhands |
.openhands/skills/ |
~/.openhands/skills/ |
| Pi | pi |
.pi/skills/ |
~/.pi/agent/skills/ |
| Qoder | qoder |
.qoder/skills/ |
~/.qoder/skills/ |
| Qwen Code | qwen-code |
.qwen/skills/ |
~/.qwen/skills/ |
| Roo Code | roo |
.roo/skills/ |
~/.roo/skills/ |
| Trae | trae |
.trae/skills/ |
~/.trae/skills/ |
| Windsurf | windsurf |
.windsurf/skills/ |
~/.codeium/windsurf/skills/ |
| Zencoder | zencoder |
.zencoder/skills/ |
~/.zencoder/skills/ |
| Neovate | neovate |
.neovate/skills/ |
~/.neovate/skills/ |
Note
Kiro CLI users: After installing skills, manually add them to your custom agent's resources in .kiro/agents/<agent>.json:
{
"resources": ["skill://.kiro/skills/**/SKILL.md"]
}The CLI automatically detects which coding agents you have installed. If none are detected, you'll be prompted to select which agents to install to.
Skills are directories containing a SKILL.md file with YAML frontmatter:
---
name: my-skill
description: What this skill does and when to use it
---
# My Skill
Instructions for the agent to follow when this skill is activated.
## When to Use
Describe the scenarios where this skill should be used.
## Steps
1. First, do this
2. Then, do thatname: Unique identifier (lowercase, hyphens allowed)description: Brief explanation of what the skill does
metadata.internal: Set totrueto hide the skill from normal discovery. Internal skills are only visible and installable whenINSTALL_INTERNAL_SKILLS=1is set. Useful for work-in-progress skills or skills meant only for internal tooling.
---
name: my-internal-skill
description: An internal skill not shown by default
metadata:
internal: true
---The CLI searches for skills in these locations within a repository:
- Root directory (if it contains
SKILL.md) skills/skills/.curated/skills/.experimental/skills/.system/.agents/skills/.agent/skills/.claude/skills/./skills/.cline/skills/.codebuddy/skills/.codex/skills/.commandcode/skills/.continue/skills/.crush/skills/.cursor/skills/.factory/skills/.gemini/skills/.github/skills/.goose/skills/.kilocode/skills/.kiro/skills/.mcpjam/skills/.mux/skills/.opencode/skills/.openhands/skills/.pi/skills/.qoder/skills/.qwen/skills/.roo/skills/.trae/skills/.windsurf/skills/.zencoder/skills/.neovate/skills/
If no skills are found in standard locations, a recursive search is performed.
Skills are generally compatible across agents since they follow a shared Agent Skills specification. However, some features may be agent-specific:
| Feature | OpenCode | OpenHands | Claude Code | Cline | CodeBuddy | Codex | Command Code | Kiro CLI | Cursor | Antigravity | Roo Code | Github Copilot | Amp | Clawdbot | Neovate | Pi | Qoder | Zencoder |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Basic skills | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
allowed-tools |
Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
context: fork |
No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
| Hooks | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
Ensure the repository contains valid SKILL.md files with both name and description in the frontmatter.
- Verify the skill was installed to the correct path
- Check the agent's documentation for skill loading requirements
- Ensure the
SKILL.mdfrontmatter is valid YAML
Ensure you have write access to the target directory.
| Variable | Description |
|---|---|
INSTALL_INTERNAL_SKILLS |
Set to 1 or true to show and install skills marked as internal: true |
DISABLE_TELEMETRY |
Set to disable anonymous usage telemetry |
DO_NOT_TRACK |
Alternative way to disable telemetry |
# Install internal skills
INSTALL_INTERNAL_SKILLS=1 npx skills add vercel-labs/agent-skills --listThis CLI collects anonymous usage data to help improve the tool. No personal information is collected.
Telemetry is automatically disabled in CI environments.
- Agent Skills Specification
- Skills Directory
- Amp Skills Documentation
- Antigravity Skills Documentation
- Factory AI / Droid Skills Documentation
- Claude Code Skills Documentation
- Clawdbot Skills Documentation
- Cline Skills Documentation
- CodeBuddy Skills Documentation
- Codex Skills Documentation
- Command Code Skills Documentation
- Crush Skills Documentation
- Cursor Skills Documentation
- Gemini CLI Skills Documentation
- GitHub Copilot Agent Skills
- Kiro CLI Skills Documentation
- OpenCode Skills Documentation
- Qwen Code Skills Documentation
- OpenHands Skills Documentation
- Pi Skills Documentation
- Qoder Skills Documentation
- Roo Code Skills Documentation
- Trae Skills Documentation
- Vercel Agent Skills Repository
MIT