返回笔记首页

标准答案参考

主题配置

在实践中,一般可以通过Skill创建器(例如Codex自带的 Skill Creator),来协助创建Skill,但是高质量的Skill的标准需要我们自己来把关,推荐通过下面五个流程来创建Skill:

  • 判断这个任务值不值得封装
  • 提取专家决策和常见****反模式
  • 把指令写得简洁且约束合适
  • 配齐模板、参考资料和脚本
  • 用真实任务反复验证执行效果

编写高质量skill流程详解

一、判断任务值不值得做成skill

1. 任务里有没有“专家直觉”

如果一个任务里,熟手和新手的差距主要体现在边界判断、风险识别、优先级取舍,那它就很适合做成 Skill。

2. 任务是不是足够复杂

如果一个任务一句 Prompt 就能说清,或者三步以内就能完成,通常没必要专门做成 Skill。Skill 不是越多越好。它有维护成本,要写说明、配资源、做测试、反复迭代。

3. 任务会不会反复出现

Skill 的价值在复用。如果你的团队每周都会做类似的分析、审核、发布、改写或生成任务,那么把它沉淀成 Skill,长期收益通常很高。

当一个任务同时具备以上这三个特征时,建议投入去做成Skill。

二、提取 Skill 该写什么

确定任务需要做成skill后,按照下面步骤来提取Skill需要做什么

你的Agent系统里面Skill是怎么编写的?如何保证高质量的Skill

1. 提取决策树

高质量的 Skill 应该告诉 Agent:

  • 什么条件下走方案 A
  • 什么条件下切到方案 B
  • 什么情况下应该停止、降级或者补充信息

2. 提取反模式和不要做的事情

在工程里,反模式往往非常重要,比如:

  • 不要把来源不明的内容当成事实写进输出
  • 不要在高风险操作里直接执行修改,应该先生成计划再验证
  • 不要为了把结果写完整,擅自编造缺失信息

3. 提取模板和示例

如果任务对输出结构要求很高,那么可以使用模板来描述;如果任务对表达风格、组织方式要求很高,那就使用示例来说明。

三、写清楚指令

Skill里面的指令要符合三个原则:

1. 简洁

Skill不是独占上下文的,还要和 system prompt、对话历史、其他技能信息一起共享窗口,所以每一句话都要值回它的 token 成本。

原则很简单:模型本来就知道的东西,不要重复教;只有任务特有的判断、约束、入口和资源导航,才值得写进 Skill。

2. 自由度匹配

如果任务本身风险很高,比如批量改文件、数据库迁移、部署执行,那就应该给低自由度约束,必要时直接要求调用固定脚本。

如果任务本身需要分析、判断、归纳,比如代码审查、内容策划、方案评估,那就应该保留更高自由度,只给流程边界和质量标准。

3. 渐进式披露

不要把所有细节都塞进SKILL.md,按照下面这些原则组织

  • 主文件里只保留核心流程、触发条件和资源导航
  • 详细规则放到references/
  • 需要确定性执行的动作放到scripts/

四、配好工具和资源

对一些具有标准流程的子任务,不要让大模型来猜,用工作流来写清楚任务要求。

1. 给 Agent建立工作流

在复杂任务里,checklist非常重要,因为任务链一长,如果没有中间进度和阶段目标,Agent 很容易漏步骤,一个工作流示例如下:先抽取输入、再运行检查、然后整理问题、修复后重新验证、最后再生成结果。

2. 把验证做成闭环

如果任务需要校验,Skill 里不要只写“执行完即可”,写成反馈循环:运行验证器、读取结果、修复问题、再次运行验证器、通过后再进入下一步。

3. 高风险操作先过计划,再执行

如果任务涉及大规模修改、高成本调用或者不可逆操作,最好再加一层“先验证计划”的前置检查。

4. 脚本要对 Agent 友好

Skill如果有脚本,要符合以下要求:

  • 输出最好结构化,优先 JSON
  • 错误信息里要带修复线索,不要只返回一个exit code
  • 能降级就降级,不要一出错就直接崩
  • 尽量幂等,避免 Agent 重复调用时把结果越做越乱

五、用真实任务验证,再迭代 Skill

在应用实践中,我推荐一套很实用的迭代方式,如下图所示:

你的Agent系统里面Skill是怎么编写的?如何保证高质量的Skill

1. 先建立基线

先不用任何 Skill,让 Agent 直接做一次真实任务。

记录它会犯哪些典型错误,哪些信息需要你反复补充,这些失败样本,后面就是 Skill 的评测用例。

2. 再提取 Skill 初稿

根据上面提到的内容标准,整理Skill 的首版:哪些是固定流程;哪些是判断标准;哪些是常见错误;哪些应该由脚本负责

3. 用新会话重新测试

换一个全新的会话,按真实使用方式重新跑评测用例,如果在新会话里任务效果明显更好,说明 Skill 真正起作用了。

4. 持续迭代,直到结果稳定

这一步主要是验证不同场景,多次执行任务观察效果,当然也可以建立测评集,持续优化。