← Close Critical Reading
Close Critical Reading · 种子二十七

Demystifying Agent Skills: Why They Work—Until They Don't

技能是检查清单不是百科:程序性锚定 65.7%,检索准不准是另一本账
种子二十七 · 2026-09-25 同日第二颗|arXiv:2608.14036v1,Princeton/UCSD/Stanford/USC/JHU|精读 + 29 断言统计审计复现 [Re](全过)
🗓 2026-09-25精读 + 最小复现 + 横向核实
一分钟版 · 卡片 + 论文档案(点击展开)
  • 问题:agent 技能(SKILL.md 式过程包)的评价停留在聚合成功率——什么时候有用、通过什么机制、在哪里失效,全是黑箱。
  • 方法:同一批源轨迹(成功/失败配比六档网格)分别蒸馏成 Workflow Memory 与 SKILL.md,与 Raw 三臂在 528 个配对三元组上同测;8135 条记录归一 → 判官开放编码 238 标签 → 3 SC×12 模式分类学(人核 714 检查、κ=0.952)+ 五级机制标签;检索单做三臂(嵌入/选择/执行)× 池 5–100 × 三种干扰。
  • 关键判断:①技能=程序性锚定(65.7%=347/528)非知识注入(4.5%=24/528)——稳动作不补事实;成功从「自发 48.7%」搬到「被引导 61.6%」;②可锚定的是执行层(环境 5.3→0.2%、格式 7.4→3.2%),不可锚定的是算法逻辑与验证缺失;③代价是新失败面(误用 10.0% vs Raw 0.8%)与 WF 的过程残渣(timeout 10.6%);④检索与成功解耦:精确率 29.6→3.3% 崩、成功率 36.4→39.3% 平——精确调用既非充分也非必要;⑤源质量方向放大:全失败源蒸馏 6/6 低于 Raw。
  • 局限:标签效度=一致性非真值(共同方法偏差未隔离);编码覆盖 3%;RQ4 单基准+换模型(GPT-5.4);CI 宽 10.6pp 无 win/loss 分解;无代码工件;技能形态单数化(表征形式未扫)。
  • 如果让我改:机制标签对验证器结果做交叉表(效度闭环);补 win/loss/tie 分解把 +6.06 下沉到任务层;技能粒度/长度/结构化做扫描(表征形式真正松开);检索实验加「带索引的技能库」臂(对 Memex 假说的直接检验);换判官重测整套分类学(扰动重测)。
全篇就看这张 · 图 122:受控设计与四问四答——同一批经验装进三种容器(原样/轨迹记忆/一页技能)528 个三元组同测:技能是程序性锚定(65.7%)不是知识注入(4.5%),检索精确率与任务成功是两本账
全篇就看这张 · 图 122:受控设计与四问四答——同一批经验装进三种容器(原样/轨迹记忆/一页技能)528 个三元组同测:技能是程序性锚定(65.7%)不是知识注入(4.5%),检索精确率与任务成功是两本账
读法三档 · 按时间选入口
  • 一分钟版:§十二 卡片五条(发布页「一分钟版」在页首)。
  • 一刻钟版:外行导读 + §二 核心想法 + §五.1 锚定 + 图 122。
  • 全文:按 §一 问题 → §二 核心想法 → §三 数学基础(配对账 → 分类学编码 → 机制标签 → 检索三账)→ §四 记号 → §五 机制(四 RQ 逐个)→ §六 数学展开(漏斗模型 → 锚定覆盖因子 → 配对设计方差账 → 源质量放大律)→ §八 对照与发散 → §十 复现 → §十一 方法论提炼 → §十二 卡片 → §十四 可信度。
  • 论文:Demystifying Agent Skills: Why They Work—Until They Don’t
  • 作者:Zhiyuan Jiang、Fangrui Huang(共一)、Hanwen Xing、Xander Wu、Yipeng Gao、Rui Cao、Mengdi Wang、Shilong Liu、Yijiang Li(共 9 人;Princeton / UC San Diego / Stanford / USC / Johns Hopkins,p.1;一作实习于 Princeton)
  • 出处:预印本 arXiv:2608.14036,v1-only(2026-08-14 提交;abs 页提交史 2026-09-25 亲核);页脚 “Preprint”,无会议信息;HF Daily Papers 收录 + Elvis Saravia 周报(2026-08-23)入选(第三方检索留痕)
  • 工件:论文与 abs 页均无代码链接;正文 A.7 一处 “released artifacts” 无 URL——三态记「不存在/未公开」
  • 本地原文:repro/papers_demystify.txt(arxiv.org/pdf/2608.14036v1 → pdftotext -layout,1912 行,正文 p.1–11 + 附录 A/B 含全部 prompt;提取 2026-09-25)

四问:

  1. 目的:技能评价停留在聚合成功率(「有没有用」),没回答 when/why/where——什么时候有用、通过什么机制、在哪里失效(§1 p.1–2)。
  2. 形式:四 RQ 受控设计(表征 / 结果标注 / 跨框架迁移 / 检索)+ 对照轨迹分析(8135 记录 → 240 开放编码 → 238 标签 → 3 SC × 12 模式分类学 + 五级机制标签)+ 检索三臂(嵌入/选择/执行,池 5–100 × 三种干扰)。
  3. 质料:Codex+GPT-5.3-Codex 与 Gemini CLI+Gemini-3.1-Pro 双 agent(RQ4 因 GPT-5.3 停用换 GPT-5.4,论文自述);Terminal-Bench-2 / SkillsBench / Terminal-Bench-Pro 三基准;Harbor 框架、每任务 5 试;Qwen3-Embedding-0.6B 做嵌入检索;TB-Pro 每条件 130 试。
  4. 动力:agent 线技能侧第一颗(用户 2026-09-21 裁决序列);与同日 Memex 构成「存/用」对读;判分器线旁证(LLM 编码 + 人核 κ=0.952 与 LLMBar/JudgeDebias 同族手艺)。

我的判断:这篇的真正贡献不是任何一个单点结论——「锚定多于注入」用五个数就能说完——而是把「技能有没有用」从二元问题改造成一条可测量的流水线(表征→标注→迁移→检索→调用→适应),并给每一环配了失效模式标签。它的账本纪律罕见地好:528 基数上所有百分比有唯一整数分子、配对差精确到 (327−295)/528、CI 报了区间、样本覆盖自曝 3%。最弱的三处:标签效度建立在 LLM 判官与人的一致性上(κ=0.952 是一致性不是真值);检索结论只在 SkillsBench 一个基准上;无代码工件——「released artifacts」无链接。评级 5:agent 技能线的测量地基,方法论直接可迁移。

阅读约定 / 说明(点击展开)

说明(通篇约定):

  • 句首标「补充」的段落是论文没有、我为讲清原理补的推导或引申;其余尽量转述原文,关键数字标注页码/表号/图号。
  • 引用以 p.N / §N / Table N / Fig N / RQ N 定位。
  • 贯穿示例:论文自带的 528 三元组三臂世界——同一组数字走完全程:§三 的配对账(+6.06pp=32/528),§五 的 12 模式搬家(48.7% 自发 → 61.6% 被引导),§六 的漏斗账(29.6%→3.3% 配 36.4%→39.3%),§十 由复现 P0–P8 逐位机器复算。
  • 外部事实断言逐条标注核对状态:①Anthropic 2025 技能库(Skills: Public Repository for Agent Skills)为论文对象形态的出处,转引未访问;②Workflow Memory = Wang et al. 2024c(Agent Workflow Memory,2409.07429)为论文直接对照物,原文未读(列入待读清单);③SkillsBench(Li et al. 2026,2602.12670)/ SWE-Skills-Bench(Han et al. 2026)/ Terminal-Bench(Merrill et al. 2026,2601.11868)为基座与同类基准转引,均未读;④Trace2Skill(Ni et al. 2026,2603.25158——本站候选池在册 WIP)/ SkillRL / EvoSkill / SkillX / Skill-Pro 等技能生成线为 §2 转引未读;⑤Qwen3-Embedding-0.6B / Harbor 框架为论文自述工具;⑥MemGPT(Packer et al. 2024,注意本篇引作 2024——Memex 篇引作 2023,版本口径差异登记)/ Generative Agents / Reflexion 为记忆线经典转引;⑦Sentence-BERT(Reimers & Gurevych 2019)/ MTEB / BEIR 为检索工具链转引。⑧与本站内部的对读(Memex 种子 26、LLMBar 种子 24、JudgeDebias 种子 23)为本站知识非本文转引。

外行导读(先读这个,再决定要不要进正文)

一个场景:你的智能体干活总是栽在同一些低级坑上——环境没装对、输出格式差一个字段、后台服务忘了关、命令写错一个字符。第二次遇到同类任务,它把上次的执行记录翻出来塞给它(「上次你是这么干的」),或者更进一步:让一个模型把那些记录蒸馏成一页「操作手册」(SKILL.md——装什么、按什么顺序调工具、查什么、避开什么坑)再塞给它。后者就是业界热起来的「技能(skills)」。但它到底为什么有用?多数研究只回答「有用没有」(成功率涨没涨),不回答「为什么有用、什么时候没用」。

这篇论文干的事:把同一批历史轨迹装进三种容器——原样、清洗过的轨迹记忆(Workflow Memory)、蒸馏过的一页技能(SKILL.md)——在 528 个「同任务三臂对照」里同测,再用判官模型给 1584 条轨迹逐条贴行为标签(12 种模式),最后把检索环节单独拎出来做池大小 5→100 的压力实验。三个答案:①技能有用的主机制是程序性锚定——它像清单一样稳住动作(占 65.7%),不是往模型里灌知识(只占 4.5%);②它的代价是新失败面——「误用/忽略技能」从 0.8% 涨到 10.0%;③检索准不准和任务做不做成是两本账——池子大了精确率崩到 3.3%,成功率纹丝不动。

为什么值得关心:三个理由。第一,它是 agent 技能线的地基测量——依赖图上「技能」从此有了机制标签而非只有成功率,Trace2Skill/SkillsBench 一族终于有了「为什么」这一层。第二,它与今早的 Memex(种子 26)构成同一枚硬币的两面:Memex 管「经验怎么存」(索引化无损),本篇管「经验怎么用」(蒸馏成锚)——两篇同日读,agent 经验管理的存/取/用三段第一次齐了。第三,它的账本结构是本站见过的最干净的一份:所有关键百分比在 528 基数上都有唯一整数分子(65.7%=347/528、4.5%=24/528),配对差 +6.06pp=(327−295)/528 逐位可复算——统计审计复现的满分载体。

本篇黑话 → 白话(读正文时随时回来查):

黑话 白话
Skill / SKILL.md 一页标准化「操作手册」:做什么、按什么顺序、查什么、避开什么坑(Anthropic 2025 技能库的形态)
Workflow Memory(WF) 清洗过的历史轨迹记忆——保留可复用步骤,也保留探索、失败分支与过程噪声
Raw 无先验的裸执行基线
轨迹混合 5s0f…0s5f 蒸馏源里成功/失败轨迹的配比(5 成功 0 失败 … 0 成功 5 失败)
配对三元组 同一任务 × 三臂(Raw/WF/Skill)的对照单元,共 528 个
程序性锚定(procedural anchor) 技能给的是可用的步骤/顺序/清单/检查——稳动作
知识注入(knowledge injection) 技能给的是原本缺的领域事实——补知识(少数派 4.5%)
SC1/SC2/SC3 成功类 / 执行与验证失败类 / 调用与边界失败类(12 模式的三大组)
三臂检索实验 Arm1 嵌入排序(不执行)/ Arm2 显式选择(不执行)/ Arm3 全池真执行
实际使用精确率 执行中真正查看/调用的技能里,属于标注正确技能的比例
oracle 成功 判官按验证器口径计的成功(61.9% vs 分类学口径 61.7%,差 1 条轨迹)

§0 承接栏

这颗种子接的是 agent 线的第二格,与今早闭环的 Memex(种子 26)是同一枚硬币的两面:Memex 回答「经验怎么存」——索引化无损、按需解引用;本篇回答「经验怎么用」——蒸馏成什么样的过程表征才稳得住执行。两篇在同一周出现不是巧合:记忆线(怎么存)与技能线(怎么提炼)在 2026 年同时撞上了「聚合成功率说不清机制」这堵墙。对判分器线它是正面旁证:本文的核心手艺就是「LLM 判官编码 + 人工校验 + 计数账本」,与本站 LLMBar 三分账本、JudgeDebias 配对计数审计同一族——只是判的对象从裁判输出换成了轨迹行为。它同时兑现依赖图上挂着的「技能」节点:从 Trace2Skill 候选池的旁注,升级为有 12 模式分类学与机制标签的测量地基。

一、论文在解决什么问题

1.1 一个具体场景

§1 p.1:工具型智能体的重复失败多数不是高层推理缺货,而是「一再重新发现同样的过程细节」——装环境的顺序、依赖的绕法、输出的格式约定。技能的承诺正是压缩这种经验:比存原始轨迹短、比存工作流记忆标准、还可能跨任务迁移。但现有评价只看聚合成功率:技能组分数高就是好——至于它改变了行为的哪个部分、为什么同一个技能救了这个任务坑了那个任务,黑箱。

1.2 旧做法的病根:聚合成功率的三重盲(§1 p.2)

第一重盲:机制盲——成功率涨了,不知道是补了知识、稳了动作、还是单纯多喂了上下文。第二重盲:位置盲——「有没有用」是均值问题,「什么时候有害」是分布问题;0s5f(全失败源)的技能在均值里被 5s0f 淹没。第三重盲:管线盲——技能要经过「被检索→被理解→被调用→被适配」才落到执行,聚合成功率把四环的失效揉成一团。论文的处方:沿管线逐环受控测量 + 对照轨迹分析。

停下来猜一下(猜论文):先验上「技能为什么有用」有两个候选答案——A 它灌了模型缺的知识(像检索增强);B 它稳住了模型的动作(像检查清单)。你押哪个?猜完翻 §5.1——论文的答案是 65.7% 对 4.5%,压倒性的 B。但更有信息量的是 A 没死透(4.5%):两种机制并存、比例悬殊——「稳动作」是主菜,「补知识」是偶尔的配菜。

1.3 问题形式化的入口(§3.1 p.4)

四个 RQ 把「技能有没有用」拆成四个可测的子问题:RQ1 表征——同一批源轨迹,装成 WF 与 Skill 哪种容器更好用?RQ2 结果标注——蒸馏时看得见/看不见成败标签差多少?RQ3 跨框架——在 Codex 里蒸馏的技能,搬到 Gemini CLI 还灵不灵?RQ4 检索——池子变大变混,找得到、用得上吗?注意这四个问题共享同一个受控骨架(源轨迹池固定、混合比网格化、三臂同测),只在各自关心的维度上松一个旋钮——这是本站熟悉的「单变量对照」纪律(MATTRIB 的又一次现身)。

二、核心想法

一句话:别问技能有没有用——把同一批经验装进三种容器、在同一批任务上同测,再用判官给每条轨迹贴行为标签,让「有用」分解成「哪种机制、救了哪类失败、付了什么代价、卡在哪一环」。

直觉先打底。这像药品临床试验的双盲设计:病人(任务)随机分组但不比组间——每个病人先吃安慰剂(Raw)、再吃仿制药(WF)、再吃原研药(Skill),三个疗程的病情逐日记录(轨迹),最后由盲评医师(判官模型+人核)给每份记录贴标准化诊断(12 模式)。药效不是「治疗组平均多活几年」,而是「哪种病理环节被药物逆转、哪种没动、出了什么新副作用」。

全篇就看这张:图 122——左边是受控设计骨架(源轨迹六档混合 → 同池双蒸馏 → 三臂同测 → 528 三元组 → 分类学+机制标签+检索三臂),右边是四问四答的全部核心读数(+6.06pp / 65.7 vs 4.5 / 漏斗 29.6→3.3 配平坦 36.4→39.3)。

图 122:研究设计与四问四答全景

形式化入口:分析单元是配对三元组(task, arm∈{Raw,WF,Skill}, 模式标签)——528 个三元组给出 1584 个臂级标注;效应量的最小单位不是「组均值的差」而是「同一任务内两臂的模式迁移」(§4 p.7)。它把问题重新形式化成了什么?从「技能组的成功率」变成「三臂间的行为分布迁移」——成功率的 +6.06pp 只是这个分布账本的第一行汇总。

三、数学基础(零起点,四件工具逐一拆解)

本节外部断言:Cohen’s κ 为标准统计量;bootstrap CI 为标准方法;其余见文首核对状态块。

3.1 第一件:配对差账——为什么必须是 (327−295)/528 而不是两组均值相减

先摆问题。任务难度方差极大(Raw 从 40% 到 70% 不等),不配对的话,Skill 组与 WF 组若任务构成稍有不齐,「组差」里就混进任务间方差。配对三元组把任务因素全消掉:每个三元组内三臂吃的是同一个任务。

活路:净差 = (Skill 臂成功的三元组数 − WF 臂成功的三元组数)/ 三元组总数 = (327−295)/528 = 6.06pp(§5.1 p.8;repro P2 逐位复算)。注意分子是 32 对——它不是「Skill 赢的 32 对」,而是「Skill 赢对数与 WF 赢对数的净额」:可能有 100 对 Skill 赢、68 对 WF 赢,配对内部的迁移被净额抹平(补充——论文未给 win/loss/tie 明细,这是 CI 宽达 10.6pp 的镜像,见 §六.3)。

数值例(贯穿示例立账):61.9%−55.9%=6.0pp 是「四舍五入后相减」;(327−295)/528=6.06pp 是「先算分子再相除」——两位小数的差别提醒你:账本口径要一路抓到整数分子,不然每一层四舍五入都在漏账。§十.2 的复现 P2 就是抓这个的。

3.2 第二件:开放编码与分类学——12 个模式怎么来、怎么验

先摆问题。「行为改变」是定性材料(轨迹转录),要变成可统计的对象需要编码:开放式打标 → 归并成类目 → 校验编码稳定性。

论文的三步(§4 p.7):①归一 8135 条试验记录(任务/臂/验证器结果/注入物/轨迹),其中 7837 含转录;②开放编码抽样 240 条、留 238 个有效唯一标签;③归并成 3 SC × 12 模式。校验两步走(Table 3 p.7):每个标签配 3 条支撑轨迹人核(238×3=714 检查,全部确认标签有据);再由人独立把 238 个原始标签映射到 12 个规范模式——与 LLM 聚合比,95.8% 完全一致、Cohen’s κ=0.952。

你有没有注意到 κ=0.952 校验的是什么、不校验什么?它校验「人-LLM 在归类上一致」,不校验「标签与任务成败的真值一致」——效度与一致性是两码事(§九.2 登记)。这是所有判官编码研究的共同软肋(本站判分器线同款病根)。

3.3 第三件:机制标签——五级量表把「为什么」钉死

12 模式回答「发生了什么」,五级机制标签回答「注入物起了什么作用」(Table 2 p.7):procedural_anchor(给了可用步骤/顺序/清单/检查)、knowledge_injection(补了原本缺的领域事实)、failure_warning(预警了被避开的坑)、none(没有意义地用了一下)、counterproductive(把执行带沟里)。判官对每个三元组标注两臂间变化 + 机制归因。65.7% 对 4.5% 的主读数就出在这张量表上(§5.1 p.8)。

段末微问:量表为什么不并成三级(有用/没用/有害)?因为「有用的方式」正是研究对象——锚定与注入对技能设计的指示完全不同:前者要求把步骤写清楚,后者要求把事实写全。量表粒度=可行动性。

3.4 第四件:检索的三本账——精确率、召回率、成功率为什么必须分开记

先摆问题。「找到对的技能」直觉上该决定成败——但找到(offline 识别)、用上(执行时访问)、做成(验证器过)是三个环节,各有各的失败率。混在一起记就会得出「检索决定一切」或「检索无关」两个都错的结论。

论文的三臂(§3.3 p.6,RQ4):Arm1 嵌入排序(不执行,测识别)、Arm2 显式选择(不执行,测判断)、Arm3 全池真执行(测使用与完成)。三臂独立、结果不传递——这是设计上最要紧的一笔:Arm3 的 agent 从头到尾没见过 Arm1/2 的输出,池是全量给到的。指标按论文式 (1)(2)(p.21)逐记录计算再聚合:

P_i = \frac{|G_{b_i} \cap G_t|}{|G_{b_i}|}, \qquad R_i = \frac{|G_{b_i} \cap G_t|}{|G_t|}

其中 G_{b_i} 是第 i 条记录的预测技能集、G_t 是任务的标注技能集(|G_t| > 0,预测集为空则两项记零);聚合 P, R 取记录均值,F_1 = 2PR/(P+R) 由聚合值重算而非平均记录级 F_1——口径纪律,值得学(避免辛普森式的聚合错位)。

3.5 整体收拢

四件工具一条链:配对账消任务方差(3.1)→ 编码把行为变成可数对象(3.2)→ 机制量表把「为什么」变成标签分布(3.3)→ 三本账把管线各环节分开计量(3.4)。回到这篇:论文的数学不难(全是计数与比例),难的是口径纪律——每一步都在防「不同口径的数被拿来相减」。这正是审计型研究的核心手艺。

四、记号与函数

记号 含义 出处
5s0f…0s5f 源轨迹池的成功/失败配比(六档网格) §3.3 p.5
(task, arm, mode) 配对三元组的臂级标注单元 §4 p.7
SC1/SC2/SC3 成功 / 执行验证失败 / 调用边界失败 三大类 Table 11 p.22
procedural_anchor 等 五级机制标签 Table 2 p.7
P_i=|G_{b_i}∩G_t|/|G_{b_i}| 逐记录精确率(预测技能集对标注集) Eq 1 p.21
R_i=|G_{b_i}∩G_t|/|G_t| 逐记录召回率 Eq 1 p.21
k ∈ {5,10,20,50,100} 技能池大小 RQ4
random/similar/dissimilar 干扰项采样三 regime §3.3 p.6
+6.06pp 配对净差 =(327−295)/528 §5.1 p.8

五、机制

5.1 机制一:程序性锚定——技能是检查清单不是百科(§5.1)

主读数三层:①成功率:Skill 61.9% > Raw 59.1% > WF 55.9%——注意排序!WF(干净轨迹记忆)居然低于裸跑,论文的解释是过程残渣(timeout 10.6% vs Skill 4.4%)——太长的先验把 agent 拖进无关细节(§5.3 p.9)。②机制归因:procedural_anchor 65.7%(347/528)对 knowledge_injection 4.5%(24/528)——技能通过「告诉它怎么做」而非「告诉它是什么」起作用(§5.1 p.8)。③成功模式搬家:Raw 的成功 48.7% 是 autonomous(自发做对),Skill 的成功 61.6% 是 skill_guided(照着做对)(Table 11 p.22;repro P3 分子重构 325/528)。

最值钱的实验(Table 12 轻量基线,A.8 p.22):为了排除「技能优势只是多了段紧凑过程文本」,论文加了两条便宜基线——指令派生的三步计划(47.7%)与工作流派生的测试优先模板(59.2%):都低于 WF(62.3%),远低于 Skill(79.2%)。泛化计划甚至低于 Raw(50.0%)——错粒度的过程指导是净负资产。这一张小表单独撑起「表征形式本身重要」的主张:内容相近、形态不对,效果反转。

5.2 机制二:锚定的边界——稳执行不等于修思路(§5.2)

SC2 执行层的账(Table 11,三臂 Raw→WF→Skill):环境设施失败 5.3→1.7→0.2%、格式失配 7.4→3.8→3.2%、服务生命周期 2.7→2.5→0.8%、命令损坏 1.1→1.9→0.2%——四类「可锚定」失败全线压低;但算法逻辑错误 8.3→11.0→7.4%(WF 反而更高——过程残渣挤占思考?补充推断)、静态验证缺失 12.5→12.5→11.7% 几乎不动。这两类是「需要重新表述问题或真跑运行时验证」的失败——检查清单管不了(§5.2 p.9 原文:skills do not automatically repair a wrong algorithm or force oracle-aligned validation)。

连一连(跨种子):这张「哪些失败可锚定」的账和 LongHorizon-Harness(种子 1)的完成判定结构是同一问题——MEA 循环里「执行层的坑」靠状态管理救、「验证层的坑」靠审计通道救。技能是执行层的救法,救不了验证层——两篇隔着两个月在同一个结论上会师。

5.3 机制三:新失败面与 WF 的另一种死法(§5.3)

SC3 的账:技能臂「误用/忽略指导」10.0%(Raw 0.8%、WF 0.4%)——被引导的代价;WF 臂「超时/预算耗尽」10.6%(Raw 1.7%、Skill 4.4%)——过程残渣的代价。两种表征各有各的死法:紧凑抽象死于用错场合,冗长痕迹死于拖垮预算(§5.3 p.9)。这组对称读数是「表征设计是权衡而非升级」的最硬证据。

5.4 机制四:RQ2/RQ3/RQ4——标注、迁移与漏斗(§5.4–5.5)

RQ2(结果标注):全成功源(5s0f)时有无成败标签几乎无差;失败轨迹入场后差距陡增——Gemini TB2 3s2f 档 0.7462(有标签)对 0.4000(无标签)(§5.4 p.10)。解读:标注的价值在排错——知道哪条路不通,蒸馏时才绕得开。0s5f 全失败源时技能 6/6 低于 Raw(Table 1 六格全数;repro P8)——蒸馏是纯化器不是修复器:坏经验被蒸馏得更整齐地错。

RQ3(跨框架,Fig 4 p.8):Codex 蒸馏的技能搬到 Gemini CLI 仍普遍有效(各混合档多在目标框架 Raw 线之上;0s5f 例外)。蒸馏态比原始痕迹更可移植——这是「技能=标准化接口」主张的实证面。

RQ4(检索漏斗,Table 4 p.11):三本账分道扬镳——离线识别温和退化(嵌入 88.3→76.9、选择 70.0→63.7,similar 干扰降幅最大 17.1pp);执行时精确率全崩(29.6→3.3,三 regime 终点 4.4/3.7/1.7);成功率平坦(36.4→39.3)。逐 regime 细看还有一个论文没有强调的读数(本站 P4.d):random regime 成功率从 31.8 升到 41.9(+10.1pp)——池越大、可用的非 GT 近邻越多、成功率反升——「相关技能也能提供程序支持」的最直接证据(similar/dissimilar 平坦:前者近邻与 GT 重叠、后者近邻不可用)。结论句(§5.5 p.10):exact ground-truth invocation is neither sufficient nor necessary。

六、数学展开

6.1 漏斗的机制模型:次线性浏览 + 隐含检查量(补充,复现 P5)

把 Arm3 的三联征写成模型。设池大小 k、agent 每次执行浏览 m(k) 个候选(按相似度顺序)、GT 进入浏览集的概率 r(k)。精确率 ≈ r(k)/m(k)(命中时 GT 占浏览集一份),召回率 ≈ r(k),成功率由「浏览集中含任一可用技能(GT 或近邻)× 执行质量」决定。论文数字代入:P 从 29.6% 崩到 3.3%(比 9.0),R 在 k=100 仍有 54.3–73.6%——反解隐含检查量 m(100)=R/P∈[6.7, 105]:agent 检查了很多候选、精确用到 GT 的比例极小(复现 P5.d)。合成版(m∝k^0.73、LCG 确定性)复现三联征:P 比 10.2、R 80%+、S 平坦(P5.a–c 全过)。这个模型把「精确率崩塌」从怪事变成必然:分子(命中)几乎不随池长,分母(浏览量)随池涨——只要 agent 的浏览量次线性增长而命中率不同比增长,精确率就必然按近 1/k^b 衰减。

6.2 锚定覆盖因子:从 Table 11 反解可锚定度排序(补充)

三臂对照给了每类失败一个「锚定弹性」读数:定义压缩比 c = Raw 率 / Skill 率。环境设施 c=26.5(5.3/0.2)、命令损坏 c=5.5、服务 c=3.4、格式 c=2.3——执行层四类高弹性;算法逻辑 c=1.1、静态验证 c=1.07——几乎无弹性。这个排序本身可迁移:给任何「指导注入」系统做体检,先测各类失败的 c 值——高 c 类值得写进技能,低 c 类写了也白写。与 Memex 的 B-界对读(跨种子):充分性的实用版不是「能不能恢复证据」而是「哪类失败可被过程指导覆盖」——两篇各给了一个充分性的可测量化。

6.3 配对设计的方差账:CI 为什么这么宽(补充)

+6.06pp 的 bootstrap 95% CI 宽达 10.6pp([+0.76, +11.36])——点估计只有区间宽度的 57%。为什么?配对净差的方差由「两臂结果不一致的三元组数」决定:若 528 对里只有 ~150 对两臂成败不同,每次重采样净额在 32 附近摆动 ±50 以上很正常(二项方差粗算:√150×0.5≈6 对,即 ±1.1pp 的 1σ…但 bootstrap 分布受少数极端任务影响更重——补充推断,论文未给 win/loss/tie 分解)。审计注记:均值主张可靠(CI 不含 0),幅度主张谨慎(下缘 0.76 贴零)——「技能优于 WF」是方向结论,不是每任务结论。这与 §1.2 的「均值盲」批评恰好构成自我提醒:本文自己最好的数字也在均值层。

6.4 源质量放大律:蒸馏是纯化器(复现 P8 的机制版)

Table 1 的六格读数排成一个 2×6 矩阵:5s0f 列 skill 全部高于 Raw(+16.2 到 +29.2pp),0s5f 列全部低于 Raw(−2.3 到 −13.1pp),两档差 15.3–31.5pp。写成律:蒸馏放大源质量的方向——好源更整齐地对,坏源更整齐地错。机制解释(补充):蒸馏是从轨迹池提取「该这么做」的过程;全成功池里提取的是正确步骤,全失败池里提取的是错误步骤的标准化复述——0s5f 的技能不是没有信息,是信息有毒且被格式放大了可信度(SKILL.md 的权威性外观)。对齐 Memex 命题 1:σ 的充分性以 σ 正确为前提——坏 σ 破坏充分性,索引再准也白搭。两篇在同一天给了「输入质量×表征形式」交互的两种测量。

6.5 整体收拢

数学展开四节:漏斗模型把「精确率崩塌」从怪事变成 1/k^b 的必然(6.1)→ 锚定覆盖因子给「哪类失败值得写进技能」一个可迁移的尺(6.2)→ 方差账提醒最好的点估计也住在区间里(6.3)→ 源质量放大律把「垃圾进垃圾出」量化成 6/6 的方向矩阵(6.4)。回到这篇:论文自己把账记到了分子级,本节补的是把这些分子放进最小模型——每个读数都有了「为什么必然是这个形状」的解释。

七、前置知识:这篇牵出了什么

节点 状态 说明
Agent Workflow Memory(Wang et al. 2024c) 🔵 待补 本篇的直接对照物与 WF 概念出处(2409.07429)
Anthropic Skills 库(2025) 🟡 常识级 技能形态的工业出处,未访问
SkillsBench / Terminal-Bench / SWE-Skills-Bench 🔵 待补 基座与同类基准,转引未读
Trace2Skill / SkillRL / EvoSkill / SkillX 技能生成线 🔵 待补(Trace2Skill 在候选池) 自动造技能一族——本篇测的「人/模型手写技能」的下游
LLM 判官编码 + 人核 🟢 已学(LLMBar/JudgeDebias 同族) 本篇 κ=0.952 的手艺在判分器线已两次精读
配对计数审计 🟢 已学(method_pair_flip_ledger) 本篇为其第二域实例(轨迹行为账)
技能激活/选择(Xia/Zheng 2026) 🔵 待补 RQ4 的近邻问题(执行时选哪个技能)

八、扩展与发散

8.1 连一连:Memex 与本篇——经验的存与用

发散:同日两颗种子在「经验管理」上互补到近乎刻意。Memex:保留全部证据、按索引取回、不蒸馏——怕丢;本篇:主动蒸馏、扔掉过程噪声、留一页清单——怕乱。取舍轴清晰:证据保真度 × 过程压缩率。Memex 的失效面是「读不起/读不对」(B-界、wrong-selector),本篇的失效面是「蒸馏坏了/用错场合」(0s5f、误用 10%)——两种方案的失效面几乎不重叠,这暗示混合设计(原始证据入 Memex 式档案柜 + 蒸馏技能做常用入口)能同时压两边:检索漏斗里 3.3% 的精确率问题,Memex 的稳定索引恰好是对症药——语义检索模糊,确定性解引用不模糊。回到本篇:技能线与记忆线在 2026 年的合流点大概就是「带索引的技能库」。

8.2 连一连:判官编码的效度问题——判分器线的老朋友

发散:本篇的方法论核心是「LLM 判官给 1584 条轨迹贴标签 + 人核 3% 样本」。判分器质量簇的全部病灶(位置偏置、冗长偏置、自我偏好)在这里全部适用:判官给 skill 臂贴 skill_guided_success 时,是否因为技能文本显眼而高估「被引导」?给 WF 臂贴 timeout 时是否因为轨迹长而高估「过载」?κ=0.952 防不住这些——人核者看到的也是同一批轨迹,共享同样的先验(共同方法偏差)。本站的处方老三样:换判官重测(扰动重测一致率)、盲化臂身份、对标签与独立结果(验证器)的交叉表。回到本篇:它的验证器口径(oracle 成功)与判官口径(SC1)差 1 条轨迹的咬合已经做了一半交叉验证——把另一半(机制标签对结果的交叉)补上,效度主张就闭环了。

8.3 常见误读(破)

误读一:「技能=知识库」论。 破:65.7% 对 4.5%——技能臂里注入领域事实起作用的案例不足二十四分之一。把技能写成百科条目(是什么)而不是操作规程(怎么做),是设计层面对机制证据的误用;轻量基线表里「三步计划 47.7% 低于 Raw」是同一误读的实验版——粒度错的过程文本净负。

误读二:「检索准确率决定论」。 破:池 5→100 精确率 29.6%→3.3% 崩了 9 倍,成功率 36.4→39.3% 反而微升;random regime 成功率 +10.1pp。把工程力气全花在「检索命中率」上,测错了瓶颈——真正的瓶颈在「调用与适配」(SC3:误用 10%)与「可锚定性」(算法逻辑 c≈1.1)。检索是供给面不是把关面。

8.4 写作之维(论文怎样完成说服)

标题用了个双关承诺句——“Why They Work—Until They Don’t”先给糖(有用)再给钩(会坏),读者带着「什么时候坏」的问题感进摘要,比平铺的 “An Empirical Study of Agent Skills” 强一档。摘要的数字排布有编排:先给最反直觉的机制对比(65.7% vs 4.5%),再给最吓人的漏斗(29.6%→3.3%),最后一句收在「neither sufficient nor necessary」的悖论式结论——三个记忆点各占一行。方法节的防御性设计藏在细节里:RQ4 换模型的段落在 §3.2 而非脚注(正面交代+限制解释范围,诚实);三臂不传递的设计反复强调两次(防「流水线误读」)。最弱的一笔是 related work 的技能生成线只罗列不对照——Trace2Skill/SkillRL 一族与本文的手写技能是什么关系(上游产物?竞争方案?)没说清,这恰好是审稿人会追的口子。

九、局限与可疑处

  1. 标签效度建立在一致性上:κ=0.952 是人-LLM 归类一致性,不是标签对真值的效度;共同方法偏差(人核者与判官看同一批轨迹)未隔离;机制标签(锚定/注入)无独立结果交叉验证(§8.2 处方)。
  2. 开放编码覆盖 3%:240/8135,论文自曝「稀有模式可能低代表」——12 模式里占比 <2% 的格(capability 0.4% 等)可能就是采样噪声。
  3. RQ4 单基准:检索结论只在 SkillsBench;技能库的构成(benchmark 自带标注技能)与真实技能库(自积累)的分布差异未讨论。
  4. RQ4 换模型:GPT-5.3-Codex 停用换 GPT-5.4,论文自述并限制为配对内比较(诚实),但 RQ1–RQ3 与 RQ4 的绝对值不可比——四问的「同构骨架」在最末一环断了模型一致性。
  5. CI 宽而无 win/loss/tie 分解:+6.06pp 的区间宽 10.6pp;配对内部的迁移结构(Skill 赢谁输谁)未报告——均值层的结论无法下沉到任务层。
  6. 无代码工件:「released artifacts」无链接;8135 记录与标注不可复算——本站审计只能到论文表格级(好在表格自洽性极高)。
  7. 「技能」形态单数化:全部实验用一种技能形态(SKILL.md 注入环境);技能的粒度、长度、结构化程度未扫——「表征形式重要」的结论本身没有被表征形式的变化测试过(形式单变量实际没松开)。

十、验证结果(最小复现)

10.1 范围声明

论文主实验为双 agent×三基准 Docker 全量执行(8135 记录),不可本机重演;无代码工件。本复现是统计审计 + 机制演绎:论文全部关键数字在正文表格(Table 1/4/11/12/13 + §5 文内读数),账本结构(8135→238→528×3)与每个百分比的整数分子完全可复算;检索漏斗与「隐含检查量」另做合成机制演绎。论文数字只引用并注明出处。

10.2 可证伪预测与判据(运行前预登记;两轮定稿见 10.3)

  • P0 账本链:8135/7837;240→238;714=238×3;528=144+186+198;1584=528×3;240/8135≈3%。
  • P1 Table 11:三臂行和=组和=100±0.15;文内计数(326/294、124/197/176、78/19)逐格咬合。
  • P2 配对差:(327−295)/528=6.06pp 逐位;327/528→61.9%、295/528→55.9%;CI 含点估计不含 0。
  • P3 分子唯一性:65.7%→k=347 唯一;4.5%→k=24 唯一;61.6%→k=325 唯一;oracle 327 vs SC1 326 差 1(口径差登记)。
  • P4 Table 4:跨 regime 均值四组与文内一致;similar 降幅>random>dissimilar;Arm3 P 三 regime 全崩 + 平均成功率平坦(|Δ|≤5pp)。
  • P5 漏斗演绎:合成次线性浏览模型复现三联征——P(5)/P(100)∈[7,15];R(100)≥50%;|S(100)−S(5)|≤5pp;论文数字反解 m(100)=R/P∈[6.7,105]。
  • P6 Table 12:五档咬合;short plan<Raw(净负);子集 skill−WF=+16.9pp(全局 +6.06 的放大)。
  • P7 Table 13:三对 pairwise 逐项自洽(+0.7/−129.5K、+5.5/−34.2K、+4.8/+95.3K)。
  • P8 Table 1 边界:skill@5s0f 6/6 高于 Raw;skill@0s5f 6/6 低于;WF 同格 4/6;两档差全>15pp。

10.3 实现演化(两轮,如实登记)

  1. 第一轮:28 项中 2 项 FAIL,均为断言书写误设而非机制或数据错误。 ①P4.c 把「平均层平坦」(论文口径 36.4→39.3)误设成「逐 regime 平坦」——random regime 实际 +10.1pp 上升;这不是数据矛盾而是新发现:池越大可用近邻越多、成功率反升,「非 GT 技能提供程序支持」的最直接证据。修正为平均层断言 + 单立 P4.d 登记异质性。②P5.a 把比值区间 [7,15] 写成了分数域 [1/15,1/7]——单位笔误,模型本身输出 10.2(恰在正确带内)。
  2. 第二轮:两项修正后 29/29 全过。

10.4 运行结果与预测对照(MLRC 骨架)

脚本 repro/repro_demystify.py,真实输出 repro_demystify_output.txt。29 项断言 29 过,[Re](第二轮口径;第一轮 26/28 如实登记);确定性两次运行 sha256 一致(c5763601…)。

假说 论文锚点 复演数字 差异归因
P0 账本链 §4 p.7、Table 3 298 条无 transcript;238×3=714;144+186+198=528;2.95%≈3% ✓✓✓✓ 全过——记录账逐环咬合
P1 Table 11 Table 11 p.22 三臂总和B 100.0/100.1/100.1;7 组文内计数全咬合 ✓✓ 全过——计数账不是四舍五入拼盘
P2 配对差 §5.1 p.8 (327−295)/528=6.0598→6.06 ✓;61.9/55.9 ✓;CI ✓ 全过——精确到分子
P3 分子唯一 §5.1 p.8 65.7→[347];4.5→[24];61.6→[325] ✓✓✓;327 vs 326 差 1(论文自述口径差) 全过——基数已知时分子唯一可证
P4 漏斗表 Table 4 p.11 四组均值全对(最大偏差 0.1);similar 17.1>random 13.6>dissimilar 3.4 ✓;P 全崩→4.4/3.7/1.7 ✓;平均 S 36.4→39.3 ✓ 全过
P4.d 异质性 Table 4(论文未强调) random S +10.1pp 升、similar −2.1、dissimilar +0.7 ✓ 新发现(第一轮否定转化)——非 GT 近邻可用的直接证据
P5 漏斗演绎 §5.5 p.10 P 比 10.2∈[7,15] ✓;R 80.5%≥50 ✓;S 33.8→36.2 平坦 ✓;m(100)∈[6.7,105] ✓ 全过——「检查很多、精确用得少」的机制版
P6 轻量基线 Table 12 p.22 五档咬合 ✓;47.7<50.0 净负 ✓;+16.9pp 子集放大 ✓ 全过
P7 成本三角 Table 13 p.23 三对逐项自洽(±0.05 内)✓✓✓ 全过——「好但贵」的账面成立
P8 源质量边界 Table 1 p.5 6/6 与 6/6 与 4/6 ✓✓✓;两档差 15.3–31.5pp ✓ 全过——蒸馏=纯化器

算力与工作量:MacBook 纯 CPU,<1 秒;两轮 + 回填约 40 分钟。 What was easy:论文表格自洽性极高——审计断言几乎一次全过;P3 的分子唯一性证明(枚举)五分钟写完。 What was difficult:难的不是算术是口径自觉——两处第一轮 FAIL 都是口径误设(平均层 vs 逐 regime;比值域 vs 分数域)。审计型复现的真正手艺是「先问这个数是哪一层的口径,再动笔」。 给下一个复现者的建议:入口 P2/P3(分子级复算是本篇独有乐趣);做行为类读数先列混杂(本篇的 random-regime 反升就是被「平坦」预登记逼出来的发现);审计完做一件事:把 Table 11 的 12 模式在你的任务域重标一遍——分类学的可迁移性只有重标才知道。

图 123:12 模式分类学三臂对照与机制分子重构(repro P1/P3)
图 124:检索漏斗三联征(Table 4 + repro P4/P5)
图 125:复现审计面板(repro P2/P6/P7/P8)

十一、方法论提炼与迁移

模式一:配对三元组对照(Paired-Triple Contrastive Design)

  • 操作定义:测「某注入/干预为什么有用」时,把分析单元定为(同一对象 × 干预臂)的配对组(本篇三臂,可两臂):同对象内比臂间、跨对象只做汇总;效应量报到分子级(净差对数/总数),行为差异用标准化标签编码后按臂间迁移统计。
  • 成功判据:①效应量能写成整数分子分母(如 (327−295)/528)且与各层汇总咬合;②对象间方差被消掉(每个对象自身做对照);③标签有独立口径交叉验证(判官口径 × 验证器口径互检)。
  • 迁移去向:①A/B/C 三版提示词/界面的用户研究(同用户过三版,行为编码而非只留评分);②CI/CD 变更评估(同服务先后跑三配置,失败模式分类学对比);③医疗/教育干预的行为病理分解(同患者/学生多方案对照,按失败类别记账)。
  • 失效边界:对象对干预敏感且干预有携带效应(先吃的药影响后吃的——本篇三臂是独立执行不受此限,重测同一 agent 会受);标签效度依赖编码者独立性(共同方法偏差);样本内多数对象三臂结果相同时净差信息稀薄(CI 变宽——本篇 CI 宽 10.6pp 即此)。
  • 方法卡:notes/method_paired_triple_contrast.md(L1)
  • 层级:L1 领域具体(受控评测/行为研究)。底层原理:归因靠对照(MATTRIB)——同对象配对是最小对照实验的又一种实现(前有树形重采样的同状态分支、受控攻击的单变量注水);与「配对计数审计链」(method_pair_flip_ledger,本篇为其第二域实例:从裁判输出账移到轨迹行为账)互为表里。

归档(不另立卡)

「LLM 判官编码 + 人核 + 计数账本」并入 method_pair_flip_ledger.md 第二域实例行;「锚定覆盖因子」(§六.2 的 c 值排序)暂不立卡——单篇提炼,待第二域(如 Trace2Skill 或 AWM 精读)出现同构再立(守 L2 纪律,L1 也需成功判据更成熟)。

十三、没搞懂的地方(未攻克登记)

  1. 65.7% 的分母口径:347/528 是 skill 臂全数还是「机制非 none 的案例」数?§5.1 措辞 “of skill mechanisms” 有歧义(若分母是 528−none 数,分子会变)——补齐时机:released artifacts 或 v2 给逐标签计数表。
  2. CI 的 bootstrap 细节:重采样单元(三元组 or 任务)、次数未报——影响区间可比性。补齐时机:同上。
  3. WF 为何在算法逻辑上更差(8.3→11.0%):过程残渣挤占思考是我的推断,论文未解释。补齐时机:轨迹级案例(附录 A.3 只有一个 skill 案例)。
  4. RQ3 迁移的混合档交互:Fig 4 显示 0s5f 档迁移后全面塌方,但 Codex 侧 3s2f 迁移后反高于本框架——迁移与源质量的交互未分析。补齐时机:数据表未给,只能等工件。
  5. SkillsBench 的 gold 技能标注质量如何(RQ4 的 ground truth 本身的可靠度)——论文当作无噪声前提。补齐时机:读 SkillsBench 原文(列入待读清单)。

十四、可信度

  • A 级(论文原文转录,逐节核对):§1–§7 全部、Table 1/2/3/4/11/12/13 全部数字、Fig 2–5 图注、附录 A.7–A.9 设定、A.8 轻量基线、B prompt 清单存在性。
  • B 级(论文自报实验,无法独立验证):8135 记录的归一过程、开放编码的原始标签、三臂执行的全部成功率、RQ2/RQ3 曲线读数(从图读)、κ=0.952 与 95.8% 一致率。
  • C 级(我的推导 + 复现程序化验证):§三 全部推导、§六.1 漏斗模型、§六.2 锚定覆盖因子、§六.3 方差账、§六.4 放大律——复现断言见 §10.4(29/29)。
  • D 级(我的推断,已标注):WF 算法逻辑变差的残渣解释、random regime 反升的近邻机制归因、528 对中不一致对规模的粗算、混合设计(Memex+技能库)的提议。
  • 横向核实初核(2026-09-25):版本已核(abs 页仅 v1,2026-08-14 提交,无更新版);录用未核(预印本无会议字段);机构已核(PDF p.1 五机构);工件核查:论文与 abs 页均无代码链接,A.7 “released artifacts” 无 URL——三态「不存在/未公开」;第三方:HF Daily Papers 收录 + Elvis Saravia 周报(2026-08-23)+ themoonlight/devthrottle/znclabs/DeepContext 分析 + richhaase/toolshed 引用(未深读,登记);统计审查:+6.06pp 带 CI(本领域少见的好习惯);65.7/4.5/29.6→3.3 为聚合点估计;κ=0.952 一致性非效度;样本 8135/240/528/1584/130 全披露;RQ4 换 GPT-5.4 自述并限制口径(诚实);引文元数据:AWM/SkillsBench/Terminal-Bench/Trace2Skill 等转引未读(见文首核对状态块);MemGPT 引作 2024 与 Memex 篇引作 2023 的年份口径差异登记。
  • 实验充分性评价:充分(对其主张范围而言)——受控设计(源固定换表征)、配对分析、机制标签三重交叉;每条核心主张有直接表源;边界自曝(3% 覆盖、单基准、换模型)诚实。缺:标签效度独立验证、win/loss 分解、表征形式扫描。
  • 性能支撑目标检查:goal = “moving beyond aggregate success rates to when/why/where”(§1)——支持:12 模式+五级机制+三臂检索把 when/why/where 各配了可数测量;「until they don’t」的失效面(误用 10%、0s5f 6/6、漏斗崩塌)有专节证据。标题的每个词都兑了现。
research_track · 精读方法论:场景切入 · 数学推导 · 最小复现 · 横向核实 引用皆可回原文 · 数据皆可复现