name: create-ultimate-skill description: 使用Anthropic官方最佳实践和最新API文档创建、审查和迭代Claude Code技能。在创建技能、审查现有技能、编写技能描述、设计技能架构或用户提到"创建技能"、“审查我的技能”、“技能最佳实践”、"技能描述帮助"时使用。不要用于创建插件、命令、代理或钩子 - 对这些请使用插件开发技能。 user-invocable: true argument-hint: <技能目的> [–review 路径/到/技能] allowed-tools: Read, Write, Edit, Glob, Grep, Bash, Task, AskUserQuestion, WebFetch
创建终极技能
创建工作流
根据用户请求创建新技能时:$ARGUMENTS
阶段1:定义使用场景
询问用户:
- 使用场景:“描述2-3个具体场景,您希望此技能在何时激活。您会对Claude说什么,它应该做什么?”
- 非使用场景:“此技能不应该用于什么?”(定义负面触发)
阶段2:选择原型和范围
询问用户:
- 原型(见下面的原型部分)
- 触发:哪些短语应该激活此技能?
- 范围:什么在范围内vs范围外?
阶段3:获取最新文档
获取最新官方技能文档,以验证当前字段和约束:
WebFetch: https://markdown.new/https://code.claude.com/docs/en/skills.md
阶段4:选择保存位置
使用AskUserQuestion:
- 个人(主文件夹):
~/.claude/skills/<技能名称>/- 在所有项目中可用 - 项目文件夹:
.claude/skills/<技能名称>/- 项目特定 - 现有插件:询问哪个插件,然后
plugins/<插件名称>/skills/
阶段5:创建技能
使用init_skill.py或手动搭建脚手架:
python .claude/skills/create-ultimate-skill/scripts/init_skill.py <技能名称> --path <位置>
然后编写SKILL.md,应用以下所有规则。在呈现给用户之前,使用检查清单进行审查。
阶段6:总结
完成后提供:
- 技能位置以及如何触发它
- 它的功能
- 改进建议
- 用户可以尝试的测试提示
前导符硬性规则
description必须是单行纯字符串。切勿使用YAML多行指示符(>-、|、>、|-)。多行描述会破坏前导符解析。allowed-tools必须是单行逗号分隔字符串(例如allowed-tools: Read, Write, Edit)。切勿使用YAML列表语法。
必填字段
| 字段 | 约束 |
|---|---|
name |
最多64个字符,仅限[a-z0-9-],不得包含"anthropic"/“claude” |
description |
最多1024个字符,非空,无XML标签 |
可选字段
| 字段 | 目的 | 示例 |
|---|---|---|
allowed-tools |
限制工具访问 | Read, Grep, Glob |
model |
覆盖模型 | sonnet, opus |
context |
隔离 | fork |
agent |
子代理类型 | Explore, Plan |
hooks |
生命周期事件 | PreToolUse, PostToolUse, Stop |
user-invocable |
斜杠菜单可见性 | false 以隐藏 |
disable-model-invocation |
阻止技能工具 | true |
有关完整字段文档,请参阅references/api-reference.md。
原型
| 原型 | 最佳用途 | 结构 |
|---|---|---|
| CLI参考 | 工具文档 | 按功能分组的命令,最小化散文 |
| 方法论 | 工作流、过程 | 哲学 + 确切提示 + 示例 |
| 安全工具 | 验证、安全 | 威胁模型 + 风险层级 + 规则 |
| 编排 | 多代理协调 | 快速入门 + API + 集成 |
有关模板,请参阅references/archetypes.md。
描述规则
- 始终使用第三人称(例如"处理文件"而非"我帮助你")
- 包含它做什么以及何时触发
- 用户可能说的具体触发短语
- 添加负面触发(“不要用于…”)以防止过度触发
- 最多1024个字符
模板:
description: [它做什么]。在[触发]时使用。不要用于[排除]。
示例:
description: 从PDF文件中提取文本和表格,填充表单,合并文档。在处理PDF文件或用户提到PDF、表单或文档提取时使用。
description: 处理和转换CSV数据文件。在CSV导入、导出或数据清洗时使用。不要用于Excel文件(.xlsx)或数据库查询。
SKILL.md正文规则
- 使用命令式语气(“提取数据”、“运行验证”)
- 切勿使用第二人称(“你应该…”)
- 简洁 - 挑战每一行:“Claude需要这个吗?”
- 少于500行,少于5,000字(约2,000字理想)
- 将关键说明放在文件顶部
- 尽可能使用脚本进行验证 - 代码是确定性的,语言解释不是
- 在用户提示中说"花时间彻底完成"比在SKILL.md中更有效
结构规则
技能名称/
├── SKILL.md # 核心指导
├── references/ # 详细文档(按需)
├── examples/ # 工作代码示例
└── scripts/ # 可执行工具
- 引用仅一级深 - 无链
- 长文件(>100行):包含目录
- 技能文件夹中绝不包含README.md(SKILL.md就是说明文档)
- 仅使用正斜杠(无Windows路径)
反模式
| 反模式 | 修复 |
|---|---|
| 模糊描述 | 具体触发 + 负面触发 |
| 深度嵌套引用 | 一级深 |
| 技能文件夹中的README.md | 删除它 - SKILL.md就是说明文档 |
>- 或 ` |
` 在描述中 |
| 使用YAML列表表示allowed-tools | 逗号分隔字符串 |
测试
在构建前定义成功标准:
- 定量:触发率 >90%的相关查询,正确的工具序列,任务完成无需用户干预
- 定性:输出匹配预期格式,无幻觉命令,会话间一致
调试技术: 问Claude “你什么时候会使用[技能名称]技能?” - 响应揭示Claude如何解释描述。
测试三个领域:
- 触发:直接触发短语、转述请求以及不应该触发的边缘案例
- 功能:端到端运行每个使用场景,检查输出格式和准确性
- 性能:比较技能辅助vs手动 - 技能是否节省时间并提高质量?
专业建议: 迭代单个挑战性任务,直到Claude成功,然后将成功方法提取到技能中。这使设计基于已验证模式而非理论。
迭代信号
| 信号 | 修复 |
|---|---|
| 技能从未激活 | 在描述中添加更多触发短语 |
| 激活错误技能 | 添加"不要用于…"负面触发 |
| 输出错误 | 优化SKILL.md说明,添加示例 |
| 输出不一致 | 减少自由度,更规范 |
实用脚本
init_skill.py
python .claude/skills/create-ultimate-skill/scripts/init_skill.py <技能名称> --path <位置>
使用模板创建SKILL.md,加上scripts/、references/、assets/目录。
package_skill.py
python .claude/skills/create-ultimate-skill/scripts/package_skill.py <路径/到/技能> [输出目录]
验证并创建可分发的zip。检查前导符、命名,确保无TODO保留。
技能审查模式
在审查现有技能时(由--review或"review my skill"触发):
- 阅读SKILL.md前导符、正文和支持目录
- 按严重性分类问题:
- 关键:无法触发或输出错误(缺少描述、模糊触发、断链引用)
- 主要:显著降低效果(>5,000字,无渐进披露)
- 次要:抛光(术语不一致,缺少目录,无负面触发)
- 生成结构化审查报告:
## 技能审查:[技能名称]
### 总结
[评估、字数、结构]
### 描述分析
**当前:** [描述]
**问题:** [带严重性]
**建议:** "[改进版本]"
### 按严重性问题
#### 关键([数量])
- [文件]:[问题] - [修复]
#### 主要([数量])
- [文件]:[问题] - [修复]
#### 次要([数量])
- [文件]:[问题] - [建议]
### 评级:[通过 / 需要改进 / 需要重大修订]
### 优先级修复
1. [最高影响]
2. [第二]
3. [第三]
审查检查清单
- [ ] 使用场景:定义了2-3个具体场景
- [ ] name:小写、连字符、≤64个字符
- [ ] description:单行纯字符串、第三人称、具体触发、≤1024个字符
- [ ] description:如需添加负面触发
- [ ] SKILL.md正文:<500行、<5,000字
- [ ] 技能文件夹中无README.md
- [ ] 引用:一级深
- [ ] 仅正斜杠
- [ ] 示例具体,非抽象
最新文档
在最终确定任何技能的前导符之前,获取最新官方文档,以检查新字段、更改约束或更新规则:
WebFetch: https://markdown.new/https://code.claude.com/docs/en/skills.md