一句话摘要:Agent Skills 是 AI 在编程工具(Cursor、Claude、CodeX)的使用,掌握其工具生态、安装使用流程及自建方法。
关键词:Agent Skills、openskills、skill.sh、Cursor、Composio
背景
Agent Skills 是当前 AI Agent生态中不可或缺的能力扩展机制,一直不知道怎么使用。
针对以下问题,调研和整理成本文。
- 检索?
- 安装?
- 使用?
- 自建?
- 扩展?
步骤
安装环境
- openskills 负责的是索引和跨工具分发(团队同步、工具技能索引同步)
- skill.sh负责下载管理特定skill(当前使用)
npx和npm的区别
提示 :
npx是临时执行命令(不污染安装环境),使用npm install -g则是全局安装
npm install -g skills.sh
-
搜索Skill
有两种搜索方式,可根据场景灵活选择:
- 网页搜索 :访问 skills.sh 在线浏览和搜索可用技能
- 命令行搜索:根据当前需求,使用关键词或会话上下文搜索
arduino
npx skills find <关键词>

使用Skill
- 安装skill
sql
# 安装skills
# npx skills add <owner/repo> 从skills.sh中找到安装命令行
npx skills add https://github.com/anthropics/skills --skill slack-gif-creator
# 安装时,选择要安装的平台如cursor、Global/Project安装
# cursor的 skills内,出现了新add的skill
# 选择"快捷方式"创建的~/.cursor/skills下的链接 skill cursor可能发现不了,最好copy
说明:新的skills,快捷使用方法
使用LLM(如gemini上传skill.md,写一个使用demo的prompt)

-
使用
- 自动调用

- 手动调用
objectivec# cursor对话框中,"/"+"skillname" 选中写prompt /slack-gif-creator 制作一个 128x128 的 Emoji GIF。要求:中心点向外喷发 20 个五彩斑斓的小圆点粒子,每个粒子具有随机的角度和初速度。粒子在运动过程中受重力加速度影响向下坠落,并逐渐透明消失(Fade out)。背景设为深色渐变,粒子描边宽度设为 2 以保持精致感。 /slack-gif-creator 创建文字gif,内容为:"Bryce Happy New Year"- 成果展示


- 其它案例
bash
# file-organizer整理项目目录
/file-organizer 整理@outputs 目录
# 没有出现
bash
# outputs/ 目录分析
# 当前状态:
# 4 个文件
# 2 个 Python 脚本(. py ):particle_burst. py ( 6. 3K), text_gif. py ( 5. 9K)
# 2 个 GIF 图片(. gif ):bryce_happy_new_year. gif (547K), particle_burst. gif (23K)
# 总大小:约 582K
# 问题:
# 脚本与输出文件混在一起
# outputs/ 应只存放输出文件,不应包含源代码
outputs/
└── gifs/ # GIF 输出文件
├── bryce_happy_new_year.gif
└── particle_burst.gif
scripts/ # Python 脚本
├── manage_submodules.sh
├── particle_burst.py # 已更新路径
├── text_gif.py # 已更新路径
└── update_all.sh
bash
/theme-factory 切换Forest Canopy风格的主题

自建Skill
步骤:
- cursor辅助创建

- 更改skill.md文档细节
- 发布/拷贝
给多个项目使用,如下复制到.cursor/skills下为全局应用
shell
#!/bin/zsh
# 根据脚本目录,获取skills目录
skills_dir=$(dirname $(dirname $(realpath $0)))/.cursor/skills
echo "skills_dir: $skills_dir"
# 打印当前所有的skills,供选择(格式如下):
# 1. mece-classifier
# 2. my-skill
# 3. ...
skills=($(ls $skills_dir))
echo "可用的技能列表:"
for i in {1..$#skills}; do
echo " $i. ${skills[$i]}"
done
echo ""
# 选择技能
select skill in $skills; do
if [ -n "$skill" ]; then
break
fi
done
echo "选择的技能: $skill"
# 目标目录
target_dir=~/.cursor/skills
# 区分本地项目技能(如 mece-classifier[project1]),全局技能名拼接 -global
if [[ "$skill" =~ [.*]$ ]]; then
base_skill=${skill%%[*}
target_skill_name="${base_skill}-global"
else
target_skill_name="${skill}-global"
fi
target_path=$target_dir/$target_skill_name
source_path=$(realpath $skills_dir/$skill)
# 确保目标目录存在
mkdir -p $target_dir
# 方法1:复制到全局技能目录
cp -r $source_path $target_path
echo "skills: ${target_skill_name} 发布/更新成功🎉"
扩展能力
自研Agent,集成Skills
Claude-AgentSkills给的流程
A skills-compatible agent needs to:
- Discover skills in configured directories
- Load metadata (name and description) at startup
- Match user tasks to relevant skills
- Activate skills by loading full instructions
- Execute scripts and access resources as needed
为什么要用 skill-ref?
- 省钱/省 Context:不用的文档不加载,节省上下文空间。
- 防幻觉:让 AI 专注于当前的指令,减少无关信息的干扰。
- 模块化 :你可以让多个不同的 Skills 引用同一个
references里的规范文件。
外部能力,Composio(连接器~付费的~)
"万能适配器",AI Agent(智能体)生态中功能最强大的 "技能与连接中心"
skills能力:awesome-claude-skills
参考
Skill管理工具
- Openskills 和skill.sh
| 特性 | OpenSkills (npx openskills) | skills.sh (npx skills) |
|---|---|---|
| 开发者 | Numman Ali (社区开源项目) | Vercel Labs (官方/半官方背景) |
| 主要目标 | 通用性:让任何能读取 AGENTS.md 的 AI 工具(如 Cursor, Windsurf, Claude Code)都能用上技能。 | 标准性:作为管理技能的标准 CLI,侧重于从官方/社区仓库快速添加技能。 |
| 核心优势 | 支持从本地路径、私有 Git 仓库安装,且能自动生成 AGENTS.md 供非 Claude 代理使用。 | 简洁、符合直觉,拥有排行榜和发现机制,深度集成 Vercel 的 AI 生态。 |
| 适用场景 | 你在使用 Cursor、Aider 或本地开发的私有技能。 | 你希望从社区快速获取成熟技能,并与 Vercel 相关的 AI 工作流配合。 |
| 安装命令 | openskills install anthropics/skills | # -g 全局安装 npm install -g skills.sh |
| npx使用 | npx openskills | npx skills |
npx和npm的区别
| 特性 | npm install | npx |
|---|---|---|
| 本质 | 软件包管理工具(安装/卸载)。 | 包执行工具(运行命令)。 |
| 存储 | 将工具下载到你的硬盘(全局或项目本地)。 | 通常将工具下载到临时缓存,运行完即销毁(或检查本地是否存在)。 |
| 场景 | 你每天都要用的工具(如 git, docker, skills)。 | 你偶尔才用一次,或者不想污染全局环境的工具。 |
| 更新 | 需要手动运行 npm update 来获取新版本。 | 每次运行都会拉取最新的版本(除非指定版本)。 |
Skill使用问题
- Cursor
javascript
~/.cursor/skills下的链接 skill 不能发现
