什么是 Skills?
在 AI 与智能编程工具中,Skill(技能) 可以理解为对某一类任务的'能力封装'或'可复用指令单元'。它不是一次性的 Prompt,而是经过抽象、总结、可以反复使用的能力描述。
简单来说,Prompt 是单次提问,而 Skill 则是可以反复调用的'能力模板'。比如生成一个 Java Getter 方法、根据接口文档生成 Controller 代码、把自然语言需求转换成 SQL,或者为已有方法补充 Javadoc 注释,这些都可以被定义为一个 Skill。
为什么要使用 Skills?
在实际开发中,我们常遇到这些问题:每次都要重新描述需求、AI 输出风格不统一、Prompt 越写越复杂、团队成员使用方式不一致。Skill 的核心价值在于标准化 + 复用 + 稳定输出。
使用 Skills 的好处很明显:
- 提高效率:一次编写,多次使用
- 降低心智负担:不用反复组织 Prompt
- 输出更稳定:有明确规则约束
- 方便团队协作:可共享、可沉淀
如何编写一个 Skill?
一个好的 Skill,本质是把隐性经验变成显性规则。它通常包含以下基本结构:
- Skill 名称:清晰标识功能
- Skill 目标:用于完成什么类型任务
- 输入参数:如方法名、参数列表、业务描述等
- 约束规则:遵循编码规范、不生成无关内容
- 输出格式:指定结果格式,这里可以融入你的代码风格
比如在输出格式里,你可以规定每个方法的开始加上日志,格式是 log.xxx 用来记录入参。这样团队内的代码风格就能保持一致。
通用模板参考
Skill 名称:XXX
目标:用于完成 XXX 类型任务
输入参数:
- 参数 1
- 参数 2
规则:
- 遵循编码规范
- 不生成无关内容
输出:
- 指定格式结果
- 示例
实战示例:用 Skill 生成一个 Java 方法
下面我们以'生成标准 Java 方法'为例,看看具体怎么落地。
Skill 配置
- 描述:根据给定信息生成符合 Java 编码规范的业务方法。
- 输入参数:
- 方法名(methodName)
- 返回类型(returnType)
- 参数列表(parameters)
- 业务描述(description)
- 每行加上 log 日志,格式是 log.xxx 打印入参
- 约束规则:
- 使用 Java 命名规范
- 包含方法注释
- 逻辑清晰、可读
示例输入
方法名:calculateTotalPrice
返回类型:BigDecimal
参数:BigDecimal unitPrice, int quantity
业务描述:根据单价和数量计算总价


