用途:操作 Caliper,运行某个技能的评测、解读结果,并把每个失败追溯到应修复的位置。前提是 caliper CLI 已在 PATH 上;若缺失可安装:pipx install caliper-eval。caliper <command> --help 是参数权威,REFERENCE.md 覆盖完整 spec 格式、引擎与结果含义。
四个问题:评测分别回答“是否触发”(由 activates 与触发探针衡量,修复点在技能 description frontmatter)、“是否有效”(expect:/assert: 的成功率,修复点在技能正文)、“是否值得”(对照 --ablate 与 caliper compare,若对照也通过说明任务太简单)、“是否稳定”(与上一次完整运行 compare,看技能漂移)。
spec 形状:skills 指向 SKILL.md(安装但不预加载);tasks 含 name、prompt(像真实用户输入、不点名技能)、expect、可选 assert、activates。带 expect 或 assert 的任务也应断言 activates。spec 不含后端/模型或 judge 块,引擎在运行时选择,后端有 claude-code(默认)、codex、pi、hermes。每次尝试在全新空工作目录运行。
运行:先 caliper validate(不联网),再 caliper run <spec> --k 1 排查错误;然后 caliper run <spec> --k 3 --ablate <skill-name> 作为对照并保留结果路径;再 caliper run <spec> --k 3 并用 caliper compare <control.json> <spec-name> 判断是否值得。每次编辑后再与上一次完整运行比较。若报 Not logged in,需征得用户同意后运行其提示的登录命令;hermes model 为交互式选择器,请用户自行在终端运行。
读结果:成功率(successes/usable)是头条,pass@k 与 pass^k 在 --verbose 下为次要视图;激活是独立记分板,不可平均进成功率。失败按信号定位:退出码 2 属环境或钩子配置问题;⊘ 不可用尝试(infra_error、timeout、judge_error)不计分,应重跑;cheat 结果说明任务泄露答案;激活失败看对应技能 description;激活通过但分数低看技能正文;judge 认为 expect 含糊则改任务评分。k=3 时单次尝试即 33 点波动,判定胜负前应 k≥5。
测量范围:默认加载用户自身定制,回答“我的技能在我的智能体里是否有效”;比较后端/模型、数字离开本机或测量裸智能体时应隔离(--no-user-customizations 或 spec 中 user_customizations: false)。应告知用户运行模式及加载内容。尚无评测时可建议 grill-skill 生成 spec。完成标准:每个任务有可观察标准且至少一个确定性 assert;执行任务断言 activates 且 spec 至少一个触发探针;完整运行优于对照且相对上次保持;通过 validate;并提醒用户把 .eval.yaml 与 SKILL.md 一起提交。