cursor 安装和使用openskills
OpenSkills 是一个通用的 AI 编码代理技能加载器,将 Anthropic 的技能系统带到多个平台,包括 Cursor、Claude Code、Windsurf、Aider 和 Codex。它允许代理在不同编码环境中使用标准化的 SKILL.md 文件。本文将介绍如何在 Cursor 中安装和使用 OpenSkills。
官方资源: - OpenSkills GitHub - OpenSkills 文档 - Cursor Skills 文档
什么是 OpenSkills?
OpenSkills 是一个跨平台的技能管理系统,具有以下特点:
- 通用兼容性 - 支持 Cursor、Claude Code、Windsurf、Aider、Codex 等多个 AI 代理
- 渐进式加载 - 只在需要时加载技能,保持上下文干净,防止 token 膨胀
- 仓库友好 - 技能可以在项目中版本控制
- 私有友好 - 可以从本地路径或私有 Git 仓库安装
- 精确兼容 - 与 Claude Code 完全兼容,相同的提示格式和文件夹结构
Skills 是什么?
Skills(技能)是包含领域特定知识的文档,帮助 AI 代理更好地完成特定任务。每个技能都是一个 SKILL.md 文件,包含:
- YAML 前置元数据 - 定义技能名称、描述、许可证等
- 指令内容 - 告诉代理如何使用该技能
- 可选脚本和模板 - 代理可以执行的脚本和模板
系统要求
- Node.js - 版本 14 或更高(用于安装 OpenSkills CLI)
- Cursor IDE - 版本 2.4 或更高
- npm 或 yarn - 包管理器
安装 OpenSkills
方法一:全局安装(推荐)⭐
全局安装 OpenSkills CLI 工具:
npm install -g openskills
# 或
yarn global add openskills
验证安装:
openskills --version
方法二:使用 npx(无需安装)
如果不想全局安装,可以直接使用 npx:
npx openskills install anthropics/skills
Cursor 中的技能目录
Cursor 会自动从以下目录发现技能:
.agents/skills/- 项目级别.cursor/skills/- 项目级别(Cursor 专用)~/.cursor/skills/- 全局/用户级别.claude/skills/- 兼容性目录(也支持)
安装位置选项
使用 OpenSkills 安装技能时,可以选择安装位置:
项目本地安装(默认):
openskills install anthropics/skills
# 安装到 ./.claude/skills/ 或 ./.cursor/skills/
全局安装:
openskills install anthropics/skills --global
# 安装到 ~/.cursor/skills/
通用安装:
openskills install anthropics/skills --universal
# 安装到 ./.agent/skills/
基本使用
安装技能
从 Anthropic 官方技能库安装:
openskills install anthropics/skills
这会安装 Anthropic 官方维护的所有技能。
安装特定技能:
openskills install owner/skill-name
例如:
openskills install obra/superpowers
openskills install glittercowboy/get-shit-done
从本地路径安装:
openskills install ./path/to/skill
从私有 Git 仓库安装:
openskills install git+https://github.com/owner/repo.git
同步技能
安装后,同步技能以确保所有文件正确:
openskills sync
列出已安装的技能
openskills list
查看技能内容
openskills read <skill-name>
例如:
openskills read superpowers
卸载技能
openskills uninstall <skill-name>
在 Cursor 中使用技能
自动使用
Cursor 会自动发现并应用相关技能。当你询问涉及已安装技能的任务时,Cursor 会自动加载并使用该技能。
例如,如果你安装了 superpowers 技能,当你询问关于测试驱动开发的问题时,Cursor 会自动应用该技能。
手动调用
在 Cursor 的 Agent 聊天中,你可以手动调用技能:
方法 1:使用斜杠命令
在聊天中输入 /,然后搜索技能名称:
/learn @owner/skill-name
例如:
/learn @obra/superpowers
方法 2:直接引用
在对话中直接提到技能:
使用 @superpowers 技能来帮我进行测试驱动开发
查看可用技能
在 Cursor 中,你可以询问:
列出所有可用的技能
或者查看技能目录:
ls ~/.cursor/skills/
# 或
ls ./.cursor/skills/
SKILL.md 文件结构
每个技能都是一个 SKILL.md 文件,包含 YAML 前置元数据和指令内容:
---
name: "技能名称"
description: "技能描述"
version: "1.0.0"
license: "MIT"
compatibility:
- cursor
- claude-code
---
# 技能名称
## 何时使用
当需要 [特定场景] 时使用此技能。
## 工作流程
1. 第一步
2. 第二步
3. 第三步
## 示例
示例代码或使用场景。
必需的元数据字段
- name - 技能名称
- description - 技能描述
可选的元数据字段
- version - 版本号
- license - 许可证
- compatibility - 兼容的平台列表
- author - 作者
- tags - 标签列表
创建自定义技能
步骤 1:创建技能目录
mkdir -p .cursor/skills/my-custom-skill
cd .cursor/skills/my-custom-skill
步骤 2:创建 SKILL.md 文件
nano SKILL.md
添加内容:
---
name: "我的自定义技能"
description: "这是一个自定义技能示例"
version: "1.0.0"
compatibility:
- cursor
---
# 我的自定义技能
## 何时使用
当需要处理 [特定任务] 时使用此技能。
## 工作流程
1. 分析需求
2. 创建实现计划
3. 执行并验证
## 注意事项
- 注意点 1
- 注意点 2
步骤 3:测试技能
在 Cursor 中测试你的技能:
使用 @my-custom-skill 技能来处理这个任务
步骤 4:分享技能(可选)
如果你想分享技能,可以:
- 创建 GitHub 仓库
- 推送技能文件
- 其他人可以通过
openskills install your-username/repo-name安装
常用技能推荐
1. Superpowers
一个完整的软件开发工作流工具包:
openskills install obra/superpowers
提供测试驱动开发、系统化调试、代码审查等工作流。
2. Get Shit Done (GSD)
规范驱动开发系统:
openskills install glittercowboy/get-shit-done
提供项目生命周期管理的完整工作流。
3. Anthropic 官方技能
Anthropic 维护的官方技能集合:
openskills install anthropics/skills
包含多个经过验证的技能。
技能管理最佳实践
1. 项目级别 vs 全局级别
- 项目级别 - 特定项目需要的技能,放在
.cursor/skills/ - 全局级别 - 所有项目都用的技能,放在
~/.cursor/skills/
2. 版本控制
将项目级别的技能添加到 Git:
# .gitignore 中不需要忽略
git add .cursor/skills/
git commit -m "Add project skills"
3. 定期更新
定期更新技能以获取最新功能:
openskills sync
openskills update
4. 技能组织
按功能或类别组织技能:
.cursor/skills/
├── testing/
│ ├── tdd/
│ └── integration-testing/
├── debugging/
│ └── systematic-debugging/
└── code-review/
└── pr-review/
高级功能
1. 技能组合
可以组合使用多个技能:
使用 @superpowers 的 TDD 技能和 @get-shit-done 的规划技能来处理这个任务
2. 技能依赖
技能可以依赖其他技能。在 SKILL.md 的元数据中声明:
---
name: "高级技能"
dependencies:
- superpowers
- get-shit-done
---
3. 技能脚本
技能可以包含可执行的脚本:
## 脚本
技能目录中可以包含 `scripts/` 文件夹,包含可执行的脚本文件。
4. 技能模板
技能可以提供代码模板:
## 模板
技能目录中可以包含 `templates/` 文件夹,包含代码模板。
故障排除
Q: 技能安装后无法使用?
A: 检查以下几点:
- 确认安装位置 - 检查技能是否安装在 Cursor 能发现的目录
- 重启 Cursor - 安装后重启 Cursor 以重新加载技能
- 检查文件结构 - 确保
SKILL.md文件存在且格式正确 - 查看日志 - 检查 Cursor 的日志文件
# 检查技能是否存在
ls ~/.cursor/skills/
ls ./.cursor/skills/
# 验证 SKILL.md 格式
cat .cursor/skills/skill-name/SKILL.md
Q: 技能自动加载失败?
A:
- 明确引用 - 在对话中明确提到技能名称
- 使用斜杠命令 - 使用
/learn @owner/skill-name - 检查兼容性 - 确保技能支持 Cursor
Q: 如何更新技能?
A:
# 同步所有技能
openskills sync
# 更新特定技能
openskills install owner/skill-name --force
Q: 技能占用太多上下文?
A:
OpenSkills 使用渐进式加载,只在需要时加载技能。如果仍然占用太多:
- 精简技能内容 - 只保留必要的指令
- 拆分技能 - 将大技能拆分为多个小技能
- 使用引用 - 在技能中使用文件引用而不是内联内容
实际应用示例
示例 1:安装并使用 Superpowers
# 安装
openskills install obra/superpowers --global
# 在 Cursor 中使用
# 输入:使用测试驱动开发的方式实现用户认证功能
# Cursor 会自动应用 superpowers 的 TDD 技能
示例 2:创建项目特定技能
# 创建技能目录
mkdir -p .cursor/skills/project-conventions
# 创建 SKILL.md
cat > .cursor/skills/project-conventions/SKILL.md <<EOF
---
name: "项目约定"
description: "本项目特定的编码约定和规范"
---
# 项目约定
## 代码风格
- 使用 TypeScript
- 遵循 ESLint 规则
- 使用 Prettier 格式化
## 测试要求
- 所有新功能必须有测试
- 测试覆盖率 > 80%
EOF
# 在 Cursor 中使用
# 输入:按照项目约定创建新的 API 端点
示例 3:组合使用多个技能
使用 @superpowers 的测试驱动开发技能和 @get-shit-done 的规划技能来实现用户管理系统
总结
OpenSkills 是一个强大的技能管理系统,为 Cursor 提供了:
- 跨平台兼容 - 支持多个 AI 代理平台
- 渐进式加载 - 高效使用上下文
- 易于管理 - 简单的 CLI 工具
- 灵活扩展 - 可以创建和分享自定义技能
关键要点:
使用
npm install -g openskills全局安装使用
openskills install安装技能Cursor 会自动发现
.cursor/skills/和~/.cursor/skills/中的技能技能可以通过自动或手动方式使用
可以创建自定义技能来满足特定需求
相关资源:
OpenSkills GitHub:https://github.com/numman-ali/openskills
OpenSkills 文档:https://lzw.me/docs/opencodedocs/numman-ali/openskills/start/quick-start/
Cursor Skills 文档:https://cursor.com/docs/skills
Anthropic Skills:https://github.com/anthropics/skills