给 Agent Skill 写 description 不再靠猜:触发率量化 + 自动修复闭环

一个扎心的问题

你花了半天写了一个完美的 Agent Skill:步骤清晰、防护栏齐全、还附赠脚本。

然后用户说"发个xhs",agent 理都没理它。

问题大概率不在你的流程写得多烂,而在 description ------agent 决定加载哪个 skill 时,看到的只有每个 skill 的 name + description 这一行。这一行没写中用户的说法,后面几千字的精心指令根本没机会被读到。

更糟的是,这件事完全没有反馈:你不会收到任何"未触发"的报错。

我做了一个实验

我写了两个版本的同一个 skill(小红书文案改写):一个 description 只有一句话(朴素版),一个把用户真实说法都嵌了进去(优化版)。然后用 10 条用例(6 条该触发、4 条相邻但不该触发)、再放 6 个竞品 skill 同场抢路由,拿 8 个模型分别当"路由器"测了一遍:

路由模型 朴素 description 优化后
gpt-4o-mini 67% 83%
gpt-4o 100% 100%
claude-haiku-4-5 100% 100%
claude-sonnet-4-6 100% 100%
gemini-2.5-flash 100% 100%
qwen3.7-plus 100% 100%
deepseek-v4-flash(推理模型) 83% 100%
kimi-k2.5(推理模型) 100% 100%

两个结论:

1. 强模型会原谅烂文案,弱模型不会。 如果你的 agent 跑在小模型上(成本考虑很多人就是这么干的),description 质量直接决定 skill 的生死。

2. 剩下的失败是真信号。 所有模型没触发的那条用例("帮我把这个产品介绍改成种草文案"),都被一个 description 有重叠的竞品 skill(product-copy-generator)抢走了。这是 skill 边界问题,不量化一下根本发现不了。

(原始数据在仓库 results/ 目录,可复现)

所以有了 skilldoctor

一个 Python CLI,五个命令:

复制代码
pip install skill-inspect
  • skilldoctor new:脚手架,交互式问你"用户会怎么说这件事",生成时就把说法嵌进 description
  • skilldoctor validate:对照 SKILL.md 规范逐条校验(命名、截断上限、引用文件存在性......),--json 可接 CI
  • skilldoctor lint:最佳实践(有没有写"何时使用"、正文是否该拆 references/......)
  • skilldoctor test核心。用任意 OpenAI 兼容模型模拟路由决策,量化触发率和误触率
  • skilldoctor improve自修复闭环(下面细说)

test 的用例就是一个 YAML,像单元测试一样声明式:

yaml 复制代码
cases:
  - input: "帮我把这篇笔记改成小红书风格"
    expect: trigger
  - input: "帮我写公众号推文"
    expect: no_trigger   # 相邻需求,必须不触发

跑一次成本不到一分钱(gpt-4o-mini),支持 DeepSeek / Kimi / 本地模型任何兼容接口。

亮点:improve 闭环

光测量还不够------我让它自己修:

bash 复制代码
skilldoctor improve ./my-skill --with ./competitor-skill

每一轮:跑测试 → 把没触发的说法交给 LLM → 改写 description → 用全部用例重新评分 (包括 no_trigger 护栏,防止靠堆关键词骗分)→ 直到全过或达到轮数上限。确认没问题再加 --write 写回 SKILL.md

实测朴素版小红书 skill:baseline 67% → 一轮改写后 100%,误触率 0%

开发过程中踩的两个坑(也变成功能了)

  1. 推理模型全报 0% 触发率,吓得我以为发现了什么大问题------结果是 deepseek-v4-flash / kimi-k2.5 这类推理模型把 20 个 token 的输出预算全花在隐式思考上了,回答一个字没吐出来。现在默认预算 1024,截断自动 4096 重试。
  2. macOS 终端把输出重定向到文件就崩(C locale 下 stdout 变 ascii,rich 打印中文直接 UnicodeEncodeError)。现在 CLI 启动强制 UTF-8。

诚实声明

模拟路由 ≠ 真实 agent 行为。这个工具是用来迭代 description 的,不是保证线上表现的。和 skillcheck(静态校验)、skillbench(端到端评估)是互补关系。

链接

如果你也在写 Agent Skill,欢迎试用、提 issue。觉得有用的话,一个 star 就是最大的支持 🙏

相关推荐
野三关彭于晏2 小时前
Agent 时代,如何用 AI 重塑教育信息化
人工智能·agent
gyx_这个杀手不太冷静2 小时前
高级前端开发职业规划(2026—2035)
前端·面试·agent
阿弱2 小时前
graph-core 策略合并机制的设计与用法
后端·agent
八岁小孩学编程3 小时前
一切皆插件:DeepSeek Harness 想重新定义 Agent 的“骨架”
agent·ai编程·deepseek
古茗前端团队3 小时前
代码越改越乱?来试试前端领域模型驱动设计(DDD)
前端·agent·ai编程
CoovallyAIHub3 小时前
系统越上越多、问题越查越慢,制造业厂长的真实痛点
人工智能·agent·数据可视化
Vuji4 小时前
Pi 插件解剖|git-checkpoint.ts:只用 53 行,让 fork 恢复代码状态
前端·agent
安逸sgr4 小时前
循环神经网络 RNN、LSTM、GRU 是什么?为什么能处理序列?
人工智能·ai·大模型·agent·智能体