1004 words
5 minutes
skill

Skill 开发规范与最佳实践#

引言#

在 Claude Code 生态系统中,Skill 是扩展代理能力的重要组件。一个设计良好的 Skill 可以被其他代理调用,实现能力的复用和组合。然而,在实际开发过程中,我们发现了一个关键问题:Skill 的 description 字段应该如何编写?本文基于 CSO(Claude Search Optimization)规范,深入探讨 Skill 描述的编写原则。

描述字段的核心原则#

描述应该描述触发条件,而非工作流程#

Skill 的 description 字段是 Claude 理解何时应该调用该 Skill 的关键依据。经过多次测试,我们发现一个重要的规律:description 应该只描述触发条件,而不应该总结工作流程

原因在于,当 description 包含工作流程总结时,Claude 会倾向于直接遵循描述中的简化流程,而不是阅读完整的 Skill 内容。这可能导致关键实现细节被忽略。

错误示例#

{
"name": "planner",
"description": "Use when executing plans - dispatches subagent per task with code review between tasks"
}

这个描述的问题在于,它总结了 planner 的工作流程(dispatch subagent、code review 等),这会引导 Claude 直接遵循这个流程,而不是阅读 planner 的完整技能定义。

正确示例#

{
"name": "planner",
"description": "Use when executing implementation plans with independent tasks"
}

这个描述只说明了触发条件(执行具有独立任务的实现计划),而没有透露任何实现细节。Claude 会因此主动阅读完整的 Skill 内容,从而获得准确的执行逻辑。

Skill 的结构#

一个完整的 Skill 通常包含以下字段:

{
"name": "skill-name",
"description": "Trigger condition only - what situations to use this skill in",
"args": {
"arg1": "Description of first argument",
"arg2": "Description of second argument"
}
}

关键字段说明:

  • name: Skill 的名称,用于调用时的标识符
  • description: 触发条件描述,应简洁明了,只说明何时使用
  • args: 技能执行所需的参数定义

Skill 的发布与分发#

个人 Skill 存储位置#

个人开发的 Skill 存放在 ~/.claude/skills/ 目录下。这个位置允许用户创建私有技能,满足个人工作流的定制需求。

社区贡献#

如果你希望将 Skill 贡献给社区,需要通过 Pull Request 的方式提交。社区 Skill 采用 MIT License,这意味着任何人都可以自由使用、修改和分发。

在提交 PR 之前,请确保:

  1. Skill 的 description 符合 CSO 规范
  2. 代码遵循现有的编码风格
  3. 包含必要的文档和使用示例

实践建议#

1. 保持描述简洁#

description 字段应该尽可能简短。一个好的经验法则是,描述不应该超过一句话。如果发现描述变得复杂,考虑将其拆分为多个 Skill。

2. 避免实现细节#

描述中不应该包含:

  • 具体的执行步骤
  • 中间过程的说明
  • 实现使用的技术栈
  • 子代理的调度方式

3. 专注于触发场景#

思考这个问题:当用户处于什么情况时,应该调用这个 Skill?将答案浓缩为一句话,就是好的 description。

4. 测试验证#

编写完成后,进行实际测试:

  1. 观察 Claude 是否会阅读完整的 Skill 内容
  2. 验证执行结果是否符合预期
  3. 如果 Claude 跳过了 Skill 内容阅读,说明 description 可能过于详细

常见错误与修正#

过度描述#

错误:

"description": "Analyzes code using multi-pass review - first pass for structure, second for patterns, third for security issues"

正确:

"description": "Use when performing comprehensive code analysis"

包含工作流程#

错误:

"description": "Uses tdd-guide agent first, then dispatches code-reviewer after implementation"

正确:

"description": "Use for test-driven development workflow"

总结#

Skill 描述的编写看似简单,实则对 Skill 的实际效果有着重要影响。遵循 CSO 规范,专注于触发条件而非实现细节,可以确保 Claude 正确理解和使用 Skill。希望本文的规范和示例能够帮助开发者创建更高质量的 Skill。

skill
https://sgjki547.top/posts/skill/
Author
SGJki
Published at
2026-04-07
License
CC BY-NC-SA 4.0