The CLI for the open agent skills ecosystem.
Supports OpenCode, Claude Code, Codex, Cursor, and 29 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/web-design-guidelines
# GitLab URL
npx skills add https://gitlab.com/org/repo
# Any git URL
npx skills add git@github.com: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 (quote multi-word names: --skill "My Skill") |
-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 a skill with spaces in the name (must be quoted)
npx skills add owner/repo --skill "Convex Best Practices"
# 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 |
|---|---|---|---|
| undefinedProjectundefined | (default) | ./<agent>/skills/ |
Committed with your project, shared with team |
| undefinedGlobalundefined | -g |
~/<agent>/skills/ |
Available across all projects |
When installing interactively, you can choose:
| Method | Description |
|---|---|
| undefinedSymlink (Recommended) | Creates symlinks from each agent to a canonical copy. Single source of truth, easy updates. |
| undefinedCopyundefined | Creates independent copies for each agent. Use when symlinks aren’t supported. |
| Command | Description |
|---|---|
npx skills list |
List installed skills (alias: ls) |
npx skills find [query] |
Search for skills interactively or by keyword |
npx skills remove [skills] |
Remove installed skills from agents |
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 |
skills listList all installed skills. Similar to npm ls.
# List all installed skills (project and global)
npx skills list
# List only global skills
npx skills ls -g
# Filter by specific agents
npx skills ls -a claude-code -a cursor
skills findSearch for skills interactively or by keyword.
# Interactive search (fzf-style)
npx skills find
# Search by keyword
npx skills find typescript
skills check / skills update# Check if any installed skills have updates
npx skills check
# Update all skills to latest versions
npx skills update
skills init# Create SKILL.md in current directory
npx skills init
# Create a new skill in a subdirectory
npx skills init my-skill
skills generate-lock# Match installed skills to sources for update tracking
npx skills generate-lock
# Preview without writing
npx skills generate-lock --dry-run
skills removeRemove installed skills from agents.
# Remove interactively (select from installed skills)
npx skills remove
# Remove specific skill by name
npx skills remove web-design-guidelines
# Remove multiple skills
npx skills remove frontend-design web-design-guidelines
# Remove from global scope
npx skills remove --global web-design-guidelines
# Remove from specific agents only
npx skills remove --agent claude-code cursor my-skill
# Remove all installed skills without confirmation
npx skills remove --all -y
# Use 'rm' alias
npx skills rm my-skill
| Option | Description |
|---|---|
-g, --global |
Remove from global scope (~/) instead of project |
-a, --agent |
Remove from specific agents only |
-y, --yes |
Skip confirmation prompts |
--all |
Remove all installed skills |
Agent 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:
Discover skills at skills.shundefined
Skills can be installed to any of these agents:
| Agent | --agent |
Project Path | Global Path |
|---|---|---|---|
| Amp, Kimi Code CLI | amp, kimi-cli |
.agents/skills/ |
~/.config/agents/skills/ |
| Antigravity | antigravity |
.agent/skills/ |
~/.gemini/antigravity/global_skills/ |
| Claude Code | claude-code |
.claude/skills/ |
~/.claude/skills/ |
| Moltbot | moltbot |
skills/ |
~/.moltbot/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/ |
| Junie | junie |
.junie/skills/ |
~/.junie/skills/ |
| Kilo Code | kilo |
.kilocode/skills/ |
~/.kilocode/skills/ |
| Kiro CLI | kiro-cli |
.kiro/skills/ |
~/.kiro/skills/ |
| Kode | kode |
.kode/skills/ |
~/.kode/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/ |
| Pochi | pochi |
.pochi/skills/ |
~/.pochi/skills/ |
[!NOTE]
undefinedKiro CLI users: After installing skills, manually add them to your custom agent’sresourcesin
.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 that
name: Unique identifier (lowercase, hyphens allowed)description: Brief explanation of what the skill doesmetadata.internal: Set to true to hide the skill from normal discovery. Internal skills are only visible andINSTALL_INTERNAL_SKILLS=1 is set. Useful for work-in-progress skills or skills meant only for---
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:
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/.junie/skills/.kilocode/skills/.kiro/skills/.kode/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/.pochi/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.
SKILL.md frontmatter is valid YAMLEnsure 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 --list
This CLI collects anonymous usage data to help improve the tool. No personal information is collected.
Telemetry is automatically disabled in CI environments.
MIT
We use cookies
We use cookies to analyze traffic and improve your experience. You can accept or reject analytics cookies.