Command-line interface for searching, installing, and managing Skills & Agents from the WittyHub repository.
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 25 天前 | ||
| 25 天前 | ||
| 25 天前 | ||
| 25 天前 | ||
| 25 天前 | ||
| 19 天前 | ||
| 22 天前 | ||
| 25 天前 | ||
| 25 天前 | ||
| 25 天前 | ||
| 23 天前 | ||
| 24 天前 | ||
| 25 天前 | ||
| 19 天前 | ||
| 25 天前 | ||
| 25 天前 |
wittyhub-cli
开放式智能体技能生态系统的命令行界面。
支持 OpenCode、Claude Code、Codex、Cursor 以及其他 68 种智能体。
安装技能
npx wittyhub add vercel-labs/agent-skills
无需安装即可使用技能
为单个技能生成提示,或交互式启动受支持的编码代理:
npx wittyhub use vercel-labs/agent-skills@web-design-guidelines | claude
npx wittyhub use vercel-labs/agent-skills --skill web-design-guidelines --agent claude-code
wittyhub use 与 wittyhub add 采用相同的方式解析来源,将所选技能文件写入临时目录,并且默认仅将生成的提示输出到标准输出,除非提供 --agent 参数。使用 --agent 时,它会结合生成的提示以交互方式启动一个受支持的智能体。
来源格式
# GitHub shorthand (owner/repo)
npx wittyhub add vercel-labs/agent-skills
# Full GitHub URL
npx wittyhub add https://github.com/vercel-labs/agent-skills
# Direct path to a skill in a repo
npx wittyhub add https://github.com/vercel-labs/agent-skills/tree/main/skills/web-design-guidelines
# GitLab URL
npx wittyhub add https://gitlab.com/org/repo
# Any git URL
npx wittyhub add git@github.com:vercel-labs/agent-skills.git
# Local path
npx wittyhub add ./my-local-skills
选项
| 选项 | 描述 |
|---|---|
-g, --global |
安装到用户目录而非项目目录 |
-a, --agent <agents...> |
指定目标智能体(例如:claude-code、codex)。详见支持的智能体 |
-s, --skill <skills...> |
通过名称安装特定技能(使用 '*' 表示所有技能) |
-l, --list |
列出可用技能但不进行安装 |
--copy |
复制文件而非创建指向智能体目录的符号链接 |
-y, --yes |
跳过所有确认提示 |
--all |
无提示地将所有技能安装到所有智能体 |
示例
# List skills in a repository
npx wittyhub add vercel-labs/agent-skills --list
# Install specific skills
npx wittyhub add vercel-labs/agent-skills --skill frontend-design --skill skill-creator
# Install a skill with spaces in the name (must be quoted)
npx wittyhub add owner/repo --skill "Convex Best Practices"
# Install to specific agents
npx wittyhub add vercel-labs/agent-skills -a claude-code -a opencode
# Non-interactive installation (CI/CD friendly)
npx wittyhub add vercel-labs/agent-skills --skill frontend-design -g -a claude-code -y
# Install all skills from a repo to all agents
npx wittyhub add vercel-labs/agent-skills --all
# Install all skills to specific agents
npx wittyhub add vercel-labs/agent-skills --skill '*' -a claude-code
# Install specific skills to all agents
npx wittyhub add vercel-labs/agent-skills --agent '*' --skill frontend-design
安装范围
| 范围 | 标志 | 位置 | 使用场景 |
|---|---|---|---|
| 项目 | (默认) | ./<agent>/skills/ |
随项目提交,供团队共享 |
| 全局 | -g |
~/<agent>/skills/ |
可在所有项目中使用 |
安装方式
交互式安装时,您可以选择:
| 方式 | 说明 |
|---|---|
| 符号链接(推荐) | 从每个代理创建指向标准副本的符号链接。单一事实来源,便于更新。 |
| 复制 | 为每个代理创建独立副本。在不支持符号链接时使用。 |
其他命令
| 命令 | 说明 |
|---|---|
npx wittyhub use <source> |
使用某个技能而不安装 |
npx wittyhub list |
列出已安装的技能(别名:ls) |
npx wittyhub find [query] |
通过交互方式或关键词搜索技能 |
npx wittyhub remove [skills] |
从代理中移除已安装的技能 |
npx wittyhub update [skills] |
将已安装的技能更新到最新版本 |
npx wittyhub init [name] |
创建新的 SKILL.md 模板 |
wittyhub list
列出所有已安装的技能。类似于 npm ls。
# List all installed skills (project and global)
npx wittyhub list
# List only global skills
npx wittyhub ls -g
# Filter by specific agents
npx wittyhub ls -a claude-code -a cursor
wittyhub find
以交互方式或按关键字搜索技能。
# Interactive search (fzf-style)
npx wittyhub find
# Search by keyword
npx wittyhub find typescript
# Search across every repository owned by an organization or user
npx wittyhub find react --owner vercel
wittyhub update
# Update all skills (interactive scope prompt)
npx wittyhub update
# Update a single skill by name
npx wittyhub update my-skill
# Update multiple specific skills
npx wittyhub update frontend-design web-design-guidelines
# Update only global or project skills
npx wittyhub update -g
npx wittyhub update -p
# Non-interactive (auto-detects scope: project if in a project, else global)
npx wittyhub update -y
| 选项 | 描述 |
|---|---|
-g, --global |
仅更新全局技能 |
-p, --project |
仅更新项目技能 |
-y, --yes |
跳过范围提示(自动检测:若在项目目录中则为项目,否则为全局) |
[skills...] |
按名称更新特定技能,而非更新所有技能 |
wittyhub init
# Create SKILL.md in current directory
npx wittyhub init
# Create a new skill in a subdirectory
npx wittyhub init my-skill
wittyhub remove
从代理中移除已安装的技能。
# Remove interactively (select from installed skills)
npx wittyhub remove
# Remove specific skill by name
npx wittyhub remove web-design-guidelines
# Remove multiple skills
npx wittyhub remove frontend-design web-design-guidelines
# Remove from global scope
npx wittyhub remove --global web-design-guidelines
# Remove from specific agents only
npx wittyhub remove --agent claude-code cursor my-skill
# Remove all installed skills without confirmation
npx wittyhub remove --all
# Remove all skills from a specific agent
npx wittyhub remove --skill '*' -a cursor
# Remove a specific skill from all agents
npx wittyhub remove my-skill --agent '*'
# Use 'rm' alias
npx wittyhub rm my-skill
| 选项 | 描述 |
|---|---|
-g, --global |
从全局作用域(~/) 移除,而非项目中 |
-a, --agent |
从特定智能体中移除(使用 '*' 表示全部) |
-s, --skill |
指定要移除的技能(使用 '*' 表示全部) |
-y, --yes |
跳过确认提示 |
--all |
--skill '*' --agent '*' -y 的简写形式 |
什么是智能体技能?
智能体技能是可重用的指令集,用于扩展您的编码智能体的功能。它们在 SKILL.md 文件中定义,包含带有 name(名称)和 description(描述)的 YAML 前置元数据。
技能使智能体能够执行特定任务,例如:
- 从 git 历史记录生成发布说明
- 按照团队约定创建 PR
- 与外部工具集成(Linear、Notion 等)
访问 skills.sh 发现更多技能
支持的智能体
技能可以安装到以下任意智能体:
| 智能体 | --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, Warp, Zed | cline, dexto, kimi-code-cli, loaf, 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 |
.factory/skills/ |
~/.factory/skills/ |
| Eve | eve |
agent/skills/ |
N/A (仅限项目) |
| Firebender | firebender |
.agents/skills/ |
~/.firebender/skills/ |
| ForgeCode | forgecode |
.forge/skills/ |
~/.forge/skills/ |
| Gemini CLI | gemini-cli |
.agents/skills/ |
~/.gemini/skills/ |
| GitHub Copilot | github-copilot |
.agents/skills/ |
~/.copilot/skills/ |
| Goose | goose |
.goose/skills/ |
~/.config/goose/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 |
.kilocode/skills/ |
~/.kilocode/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/ |
| 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/ |
| 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/ |
| Zencoder, Zenflow | zencoder, zenflow |
.zencoder/skills/ |
~/.zencoder/skills/ |
| Neovate | neovate |
.neovate/skills/ |
~/.neovate/skills/ |
| Pochi | pochi |
.pochi/skills/ |
~/.pochi/skills/ |
| PromptScript | promptscript |
.agents/skills/ |
N/A (仅限项目) |
| AdaL | adal |
.adal/skills/ |
~/.adal/skills/ |
Note
Kiro CLI 用户注意: 默认智能体会自动从 .kiro/skills/ 和 ~/.kiro/skills/ 加载技能 — 无需额外配置。如果您使用自定义智能体,请在 .kiro/agents/<agent>.json 的 resources 中添加技能:
{
"resources": ["skill://.kiro/skills/**/SKILL.md"]
}
CLI 会自动检测您已安装的编码智能体。如果未检测到任何智能体,系统会提示您选择要安装技能的智能体。
创建技能
技能是包含带有 YAML 前置元数据的 SKILL.md 文件的目录:
---
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.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/.factory/skills/agent/skills/.forge/skills/.goose/skills/.hermes/skills/.inferencesh/skills/.jazz/skills/.junie/skills/.iflow/skills/.kilocode/skills/.kiro/skills/.kode/skills/.lingma/skills/.mcpjam/skills/.vibe/skills/.moxby/skills/.mux/skills/.openhands/skills/.ona/skills/.pi/skills/.qoder/skills/.qwen/skills/.reasonix/skills/.rovodev/skills/.roo/skills/.tabnine/agent/skills/.terramind/skills/.tinycloud/skills/.trae/skills/.windsurf/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"]
}
]
}
这实现了与 Claude Code plugin marketplace 生态系统的兼容性。清单中声明的技能路径会按其声明的深度进行搜索,不受上述深度为 2 的目录遍历限制。
如果在标准位置未找到任何技能,则会执行递归搜索。
兼容性
由于技能遵循共享的 Agent Skills specification,因此通常可在不同代理之间兼容。不过,某些功能可能特定于某个代理:
| 功能 | 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 |
否 | 否 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
| 钩子 | 否 | 否 | 是 | 是 | 否 | 否 | 否 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
故障排除
“未找到技能”
确保仓库包含有效的 SKILL.md 文件,且在前置元数据中同时包含 name 和 description。
技能未在代理中加载
- 验证技能是否安装到正确路径
- 查看代理文档了解技能加载要求
- 确保
SKILL.md前置元数据是有效的 YAML
权限错误
确保您对目标目录具有写入权限。
环境变量
| 变量 | 描述 |
|---|---|
INSTALL_INTERNAL_SKILLS |
设置为 1 或 true 可显示并安装标记为 internal: true 的技能 |
DISABLE_TELEMETRY |
设置后可禁用匿名使用情况遥测 |
DO_NOT_TRACK |
禁用遥测的另一种方式 |
# Install internal skills
INSTALL_INTERNAL_SKILLS=1 npx wittyhub add vercel-labs/agent-skills --list
遥测数据
本 CLI 会收集匿名使用数据以帮助改进工具。不会收集任何个人信息。
在 CI 环境中,遥测功能会自动禁用。
相关链接
- Agent Skills Specification
- Skills Directory
- Amp Skills Documentation
- Antigravity Skills Documentation
- Factory AI / Droid Skills Documentation
- Claude Code Skills Documentation
- OpenClaw Skills Documentation
- Cline Skills Documentation
- CodeBuddy Skills Documentation
- Codex Skills Documentation
- Command Code Skills Documentation
- Crush Skills Documentation
- Cursor Skills Documentation
- Firebender Skills Documentation
- Gemini CLI Skills Documentation
- GitHub Copilot Agent Skills
- iFlow CLI Skills Documentation
- Kimi Code CLI Skills Documentation
- Kiro CLI Skills Documentation
- Kode Skills Documentation
- OpenCode Skills Documentation
- Qwen Code Skills Documentation
- OpenHands Skills Documentation
- Pi Skills Documentation
- Qoder Skills Documentation
- Replit Skills Documentation
- Roo Code Skills Documentation
- Trae Skills Documentation
- Vercel Agent Skills Repository
致谢
本项目基于 vercel-labs/skills 分叉开发。我们感谢 Vercel 团队及原贡献者在智能体技能生态系统方面所做的出色工作。
许可证
MIT
项目介绍
Command-line interface for searching, installing, and managing Skills & Agents from the WittyHub repository.
定制我的领域