vercel-labs:基于开放代理技能生态的 CLI 工具项目

https://github.com/vercel-labs/skills的镜像

分支98Tags44
当前项目代码仓暂无内容

skills

开放 Agent 技能生态系统的 CLI。

支持 OpenCodeClaude CodeCodexCursor 以及 另外 75 款

skills.sh

安装 Skill

npx skills add vercel-labs/agent-skills

无需安装即可使用 Skill

为单个 Skill 生成提示词,或交互式启动受支持的编码智能体:

npx skills use vercel-labs/agent-skills@web-design-guidelines | claude
npx skills use vercel-labs/agent-skills --skill web-design-guidelines --agent claude-code

skills use 以与 skills add 相同的方式解析来源,将所选技能文件写入临时目录,并且除非提供 --agent,否则仅将生成的提示词输出到 stdout。提供 --agent 时,它会以交互方式启动一个受支持的 agent,并使用生成的提示词。

来源格式

# 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

私有仓库

无论公开仓库还是私有仓库,均可使用相同的命令。CLI 会直接使用已为该仓库 URL 配置的认证信息:

# GitHub shorthand or HTTPS (Git credential helper, GitHub CLI, then SSH fallback)
npx skills add acme/private-skills

# SSH on GitHub, GitLab, or another Git host
npx skills add git@github.com:acme/private-skills.git
npx skills add ssh://git@git.example.com/acme/private-skills.git

# HTTPS on any Git host (uses your configured Git credential helper)
npx skills add https://git.example.com/acme/private-skills.git

对于 GitHub HTTPS 和简写来源,skills 会优先使用常规 Git 凭据。如果失败并且 GitHub CLI 已完成身份验证,则尝试 gh repo clone,随后尝试 SSH。它不会执行 gh auth token,也不会将已存储的 GitHub CLI 凭据复制到 Node.js 进程中。

对于 GitHub 树查询,skills 会先以匿名方式调用 API,然后使用显式提供的环境变量令牌,最后尝试 gh api。GitHub CLI 会应用其自身保存的认证信息,并仅返回 API 响应;该凭据不会被输出,也不会被 skills 读取。如果 API 访问仍然失败,更新检查将回退到经过身份验证的 Git 克隆。

GITHUB_TOKENGH_TOKEN 可显式设置,用于访问 GitHub API,包括下载私有仓库和执行更新检查。如果已经配置了 Git、GitHub CLI 或 SSH 身份验证,则安装时无需设置。

选项

选项 描述
-g, --global 安装到用户目录,而不是项目目录
-a, --agent <agents...> 指定特定代理(例如 claude-codecodex)。参见支持的代理
-s, --skill <skills...> 按名称安装特定技能(使用 '*' 安装所有技能)
-l, --list 列出可用技能,而不进行安装
--copy 复制文件,而不是将文件符号链接到代理目录
-y, --yes 跳过所有确认提示
--all 不提示地将所有技能安装到所有代理

示例

# 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

# Install all skills to specific agents
npx skills add vercel-labs/agent-skills --skill '*' -a claude-code

# Install specific skills to all agents
npx skills add vercel-labs/agent-skills --agent '*' --skill frontend-design

# Install from a direct SKILL.md or archive download URL
npx skills add https://example.com/download/my-skill

在完成约定式发现后,会尝试直接下载 URL。它们可以指向单个有效的 SKILL.md 文件,或 .zip.tar.tar.gz.tgz 压缩包;URL 无需包含文件扩展名。默认情况下,下载大小限制为 10 MiB,解压后内容限制为 25 MiB,压缩包限制为 1000 个文件。如果信任来源,可使用 SKILLS_DOWNLOAD_MAX_BYTESSKILLS_EXTRACT_MAX_BYTESSKILLS_EXTRACT_MAX_FILES 覆盖默认限制。

安装范围

范围 参数 位置 使用场景
项目 (默认) ./<agent>/skills/ 随项目提交,供团队共享
全局 -g ~/<agent>/skills/ 可跨所有项目使用

安装方式

交互式安装时,你可以选择:

方式 说明
符号链接(推荐) 为每个 agent 创建指向同一标准副本的符号链接。单一事实来源,便于更新。
复制 为每个 agent 创建独立副本。当不支持符号链接时使用。

其他命令

命令 说明
npx skills use <source> 使用单个技能而无需安装
npx skills list 列出已安装的技能(别名:ls
npx skills find [query] 以交互方式或按关键词搜索技能
npx skills remove [skills] 从 agent 中移除已安装的技能
npx skills update [skills] 将已安装的技能更新到最新版本
npx skills init [name] 创建新的 SKILL.md 模板

skills list

列出所有已安装的 skills。类似于 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 find

交互式查找 skills,或按关键词查找。

# Interactive search (fzf-style)
npx skills find

# Search by keyword
npx skills find typescript

# Search across every repository owned by an organization or user
npx skills find react --owner vercel

skills update

# Update all skills (interactive scope prompt)
npx skills update

# Update a single skill by name
npx skills update my-skill

# Update multiple specific skills
npx skills update frontend-design web-design-guidelines

# Update only global or project skills
npx skills update -g
npx skills update -p

# Non-interactive (auto-detects scope: project if in a project, else global)
npx skills update -y
选项 说明
-g, --global 仅更新全局 skills
-p, --project 仅更新项目 skills
-y, --yes 跳过范围提示(自动检测:在项目目录中时为项目,否则为全局)
[skills...] 按名称更新指定 skills,而不是全部

skills init

# Create SKILL.md in current directory
npx skills init

# Create a new skill in a subdirectory
npx skills init my-skill

skills remove

从智能体中移除已安装的技能。

# 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

# Remove all skills from a specific agent
npx skills remove --skill '*' -a cursor

# Remove a specific skill from all agents
npx skills remove my-skill --agent '*'

# Use 'rm' alias
npx skills rm my-skill
选项 描述
-g, --global 从全局作用域(~/)而非项目作用域中移除
-a, --agent 从特定 Agent 中移除(使用 '*' 表示全部)
-s, --skill 指定要移除的技能(使用 '*' 表示全部)
-y, --yes 跳过确认提示
--all --skill '*' --agent '*' -y 的简写形式

什么是 Agent 技能?

Agent 技能是可复用的指令集,用于扩展你的编码 Agent 的能力。它们定义在 SKILL.md 文件中,并包含带有 namedescription 的 YAML frontmatter。

技能可让 Agent 执行以下专门任务:

  • 从 git 历史记录中生成发布说明
  • 按照你的团队约定创建 PR
  • 与外部工具(Linear、Notion 等)集成

可前往 skills.sh 发现技能

支持的 Agent

技能可以安装到以下任一 Agent 中:

Agent --agent 项目路径 全局路径
AiderDesk aider-desk .aider-desk/skills/ ~/.aider-desk/skills/
Amp, Replit, Universal amp, replit, universal .agents/skills/ ~/.config/agents/skills/
Antigravity antigravity .agents/skills/ ~/.gemini/antigravity/skills/
Antigravity CLI antigravity-cli .agents/skills/ ~/.gemini/antigravity-cli/skills/
AstrBot astrbot data/skills/ ~/.astrbot/data/skills/
Autohand Code CLI autohand-code .autohand/skills/ ~/.autohand/skills/
Augment augment .augment/skills/ ~/.augment/skills/
IBM Bob bob .bob/skills/ ~/.bob/skills/
Claude Code claude-code .claude/skills/ ~/.claude/skills/
OpenClaw openclaw skills/ ~/.openclaw/skills/
Cline, Dexto, Kimi Code CLI, Loaf, Sarvam Code, Warp, Zed cline, dexto, kimi-code-cli, loaf, sarvam-code, warp, zed .agents/skills/ ~/.agents/skills/
CodeArts Agent codearts-agent .codeartsdoer/skills/ ~/.codeartsdoer/skills/
CodeBuddy codebuddy .codebuddy/skills/ ~/.codebuddy/skills/
Codemaker codemaker .codemaker/skills/ ~/.codemaker/skills/
Code Studio codestudio .codestudio/skills/ ~/.codestudio/skills/
Codex codex .agents/skills/ ~/.codex/skills/
Command Code command-code .commandcode/skills/ ~/.commandcode/skills/
Continue continue .continue/skills/ ~/.continue/skills/
Cortex Code cortex .cortex/skills/ ~/.snowflake/cortex/skills/
Crush crush .crush/skills/ ~/.config/crush/skills/
Cursor cursor .agents/skills/ ~/.cursor/skills/
Deep Agents deepagents .agents/skills/ ~/.deepagents/agent/skills/
Devin for Terminal devin .devin/skills/ ~/.config/devin/skills/
Droid droid .agents/skills/ ~/.factory/skills/
Eve eve agent/skills/ 不适用(仅限项目)
Firebender firebender .agents/skills/ ~/.firebender/skills/
ForgeCode forgecode .forge/skills/ ~/.forge/skills/
fx fx .fx/skills/ ~/.fx/skills/
Gemini CLI gemini-cli .agents/skills/ ~/.gemini/skills/
GitHub Copilot github-copilot .agents/skills/ ~/.copilot/skills/
Goose goose .goose/skills/ ~/.config/goose/skills/
Grok Build grok .grok/skills/ ~/.grok/skills/
Hermes Agent hermes-agent .hermes/skills/ ~/.hermes/skills/
inference.sh inference-sh .inferencesh/skills/ ~/.inferencesh/skills/
Jazz jazz .jazz/skills/ ~/.jazz/skills/
Junie junie .junie/skills/ ~/.junie/skills/
iFlow CLI iflow-cli .iflow/skills/ ~/.iflow/skills/
Kilo Code kilo .agents/skills/ ~/.kilo/skills/
Kimchi kimchi .kimchi/skills/ ~/.config/kimchi/harness/skills/
Kiro CLI kiro-cli .kiro/skills/ ~/.kiro/skills/
Kode kode .kode/skills/ ~/.kode/skills/
Lingma lingma .lingma/skills/ ~/.lingma/skills/
MCPJam mcpjam .mcpjam/skills/ ~/.mcpjam/skills/
MiniMax Code minimax-code .minimax/skills/ ~/.minimax/skills/
Mistral Vibe mistral-vibe .vibe/skills/ ~/.vibe/skills/
Moxby moxby .moxby/skills/ ~/.moxby/skills/
Mux mux .mux/skills/ ~/.mux/skills/
OpenCode opencode .agents/skills/ ~/.config/opencode/skills/
OpenHands openhands .openhands/skills/ ~/.openhands/skills/
Ona ona .ona/skills/ ~/.ona/skills/
Pi pi .pi/skills/ ~/.pi/agent/skills/
Posit Assistant posit-assistant .posit/assistant/skills/ ~/.posit/assistant/skills/
Qoder qoder .qoder/skills/ ~/.qoder/skills/
Qoder CN qoder-cn .qoder/skills/ ~/.qoder-cn/skills/
Qwen Code qwen-code .qwen/skills/ ~/.qwen/skills/
Reasonix reasonix .reasonix/skills/ ~/.reasonix/skills/
Rovo Dev rovodev .rovodev/skills/ ~/.rovodev/skills/
Roo Code roo .roo/skills/ ~/.roo/skills/
Tabnine CLI tabnine-cli .tabnine/agent/skills/ ~/.tabnine/agent/skills/
Terramind terramind .terramind/skills/ ~/.terramind/skills/
Tinycloud tinycloud .tinycloud/skills/ ~/.tinycloud/skills/
Trae trae .trae/skills/ ~/.trae/skills/
Trae CN trae-cn .trae/skills/ ~/.trae-cn/skills/
Windsurf windsurf .windsurf/skills/ ~/.codeium/windsurf/skills/
ZCode zcode .zcode/skills/ ~/.zcode/skills/
Zencoder, Zenflow zencoder, zenflow .zencoder/skills/ ~/.zencoder/skills/
Neovate neovate .neovate/skills/ ~/.neovate/skills/
Pochi pochi .pochi/skills/ ~/.pochi/skills/
PromptScript promptscript .agents/skills/ 不适用(仅限项目)
AdaL adal .adal/skills/ ~/.adal/skills/

Note

Kiro CLI 用户: 默认 Agent 会自动从 .kiro/skills/~/.kiro/skills/ 加载技能——无需 任何配置。如果使用自定义 Agent,请在 .kiro/agents/<agent>.jsonresources 中添加技能:

{
  "resources": ["skill://.kiro/skills/**/SKILL.md"]
}

CLI 会自动检测你已安装了哪些编码 Agent。如果未检测到任何 Agent,系统会提示你选择要将技能安装到哪些 Agent。

创建 Skills

Skills 是包含 SKILL.md 文件的目录,该文件带有 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:唯一标识符(小写,允许使用连字符)
  • description:对技能功能的简要说明

可选字段

  • metadata.internal:设置为 true 后,可将该技能从常规发现中隐藏。内部技能仅在设置 INSTALL_INTERNAL_SKILLS=1 时可见并可安装。适用于开发中的技能,或仅面向内部工具链的技能。
---
name: my-internal-skill
description: An internal skill not shown by default
metadata:
  internal: true
---

技能发现

CLI 会在仓库的以下位置查找技能。每个 技能容器目录最多向下遍历三层,覆盖扁平布局 (skills/<name>/SKILL.md)以及包含一两级分类的目录布局 (skills/<category>/<name>/SKILL.mdskills/<category>/<category>/<name>/SKILL.md)。在更浅层级发现的 SKILL.md 会遮蔽其下方嵌套的内容。使用 --full-depth 还可发现这些容器目录之外的 SKILL.md 文件(例如位于 examples/tests/ 下)。

  • 根目录(如果其中包含 SKILL.md
  • skills/
  • skills/.curated/
  • skills/.experimental/
  • skills/.system/
  • .aider-desk/skills/
  • .agents/skills/
  • data/skills/
  • .autohand/skills/
  • .augment/skills/
  • .bob/skills/
  • .claude/skills/
  • .codeartsdoer/skills/
  • .codebuddy/skills/
  • .codemaker/skills/
  • .codestudio/skills/
  • .commandcode/skills/
  • .continue/skills/
  • .cortex/skills/
  • .crush/skills/
  • .devin/skills/
  • agent/skills/
  • .forge/skills/
  • .fx/skills/
  • .goose/skills/
  • .grok/skills/
  • .hermes/skills/
  • .inferencesh/skills/
  • .jazz/skills/
  • .junie/skills/
  • .iflow/skills/
  • .kimchi/skills/
  • .kiro/skills/
  • .kode/skills/
  • .lingma/skills/
  • .mcpjam/skills/
  • .minimax/skills/
  • .vibe/skills/
  • .moxby/skills/
  • .mux/skills/
  • .openhands/skills/
  • .ona/skills/
  • .pi/skills/
  • .posit/assistant/skills/
  • .qoder/skills/
  • .qwen/skills/
  • .reasonix/skills/
  • .rovodev/skills/
  • .roo/skills/
  • .tabnine/agent/skills/
  • .terramind/skills/
  • .tinycloud/skills/
  • .trae/skills/
  • .windsurf/skills/
  • .zcode/skills/
  • .zencoder/skills/
  • .neovate/skills/
  • .pochi/skills/
  • .adal/skills/

插件清单发现

如果 .claude-plugin/marketplace.json.claude-plugin/plugin.json 存在,则这些文件中声明的技能也会被发现:

// .claude-plugin/marketplace.json
{
  "metadata": { "pluginRoot": "./plugins" },
  "plugins": [
    {
      "name": "my-plugin",
      "source": "my-plugin",
      "skills": ["./skills/review", "./skills/test"]
    }
  ]
}

This enables compatibility with the Claude Code 插件市场 生态系统。清单中声明的技能路径会按照其声明的深度进行搜索,并且不受上述有界深度 3 目录遍历的限制。

如果在标准位置未找到任何技能,则会执行递归搜索。

兼容性

由于技能遵循共享的 Agent Skills 规范,通常可在不同 Agent 之间保持兼容。不过,某些功能可能仅适用于特定 Agent:

功能 OpenCode OpenHands Claude Code Cline CodeBuddy Codex Command Code Kiro CLI Cursor Antigravity Roo Code Github Copilot Amp OpenClaw Neovate Pi Qoder Zencoder
基础技能
allowed-tools
context: fork
Hooks

故障排查

"未找到技能"

请确保仓库中包含有效的 SKILL.md 文件,并且 frontmatter 中同时包含 namedescription

Skill 未能在 agent 中加载

  • 确认该 Skill 已安装到正确路径
  • 查阅 agent 文档中关于 Skill 加载的要求
  • 确保 SKILL.md 的 frontmatter 是有效的 YAML

权限错误

请确认你具有目标目录的写入权限。

环境变量

变量 说明
INSTALL_INTERNAL_SKILLS 设置为 1true,以显示并安装标记为 internal: true 的 Skill
DISABLE_TELEMETRY 设置后禁用匿名使用遥测
DO_NOT_TRACK 禁用遥测的替代方式
GITHUB_TOKEN 用于已认证 GitHub API 请求的可选显式令牌
GH_TOKEN 用于已认证 GitHub API 请求的回退显式令牌
# Install internal skills
INSTALL_INTERNAL_SKILLS=1 npx skills add vercel-labs/agent-skills --list

遥测

此 CLI 会收集匿名使用数据,以改进该工具。不会收集任何个人信息。

GitHub 仓库和 skill 标识符仅针对 GitHub 明确确认公开的仓库发送。对于其他远程源类型,由于其可见性无法通过 GitHub 检查,安装遥测中可能包含源标识符和 skill 标识符。安全审计请求仍仅限于已确认公开的 GitHub 仓库。设置 DISABLE_TELEMETRY=1DO_NOT_TRACK=1 可完全禁用这两项。

相关链接

许可证

本项目基于 MIT 许可证 授权。

项目介绍

https://github.com/vercel-labs/skills的镜像

定制我的领域