Skill 创建工具
使用场景
当用户需要:
-
创建新的 Cursor Skill
-
更新或改进现有 Skill
-
验证 Skill 文件结构
-
打包 Skill 用于分发
-
理解 Skill 的最佳实践
Skill 结构
每个 Skill 应包含以下结构:
skill-name/ ├── SKILL.md (必需) │ ├── YAML frontmatter (必需) │ │ ├── name: (必需) │ │ └── description: (必需) │ └── Markdown 指令内容 (必需) └── 可选资源 ├── scripts/ # 可执行代码 ├── references/ # 参考文档 └── assets/ # 资源文件
SKILL.md 模板
Frontmatter(必需)
name: skill-name description: 清晰描述技能的功能和使用场景。这是主要的触发机制,应包含技能做什么以及何时使用它。描述应包含所有"何时使用"的信息,而不是放在正文中。
描述编写指南
-
包含功能:明确说明技能做什么
-
包含触发条件:说明何时使用此技能
-
具体场景:列举具体的使用场景
-
避免冗余:不要在正文中重复描述信息
正文内容
-
使用命令式/不定式形式编写指令
-
保持简洁,避免不必要的解释
-
提供清晰的步骤和示例
-
引用相关资源文件(如 scripts、references)
创建流程
- 理解需求
-
明确技能要解决的问题
-
识别具体的使用场景
-
确定需要的资源和工具
- 规划资源
-
Scripts:需要重复执行的代码
-
References:参考文档和知识库
-
Assets:模板、图标等资源文件
- 编写 SKILL.md
-
编写清晰的 frontmatter
-
组织指令内容
-
添加使用示例和最佳实践
- 验证和测试
-
检查 YAML 格式
-
验证文件结构
-
测试技能触发和使用
最佳实践
命名规范
-
使用小写字母、数字和连字符
-
名称应简短且描述性(< 64 字符)
-
使用动词开头的短语(如 create-web-app )
描述质量
-
描述应全面且具体
-
包含所有触发场景
-
避免在正文中重复描述信息
内容组织
-
保持 SKILL.md 简洁(< 500 行)
-
将详细内容移到 references 文件
-
使用渐进式披露原则
资源管理
-
只包含必要的文件
-
避免创建辅助文档(README、CHANGELOG 等)
-
保持目录结构清晰
验证检查清单
-
YAML frontmatter 格式正确
-
name 和 description 字段存在
-
描述包含功能和使用场景
-
文件结构符合规范
-
资源文件引用正确
-
代码示例可执行(如适用)
注意事项
-
Skill 应该专注于 AI 代理的工作,而不是用户文档
-
避免在 Skill 中包含安装指南、变更日志等
-
保持内容简洁,充分利用上下文窗口
-
根据任务复杂度设置适当的自由度