# 精简论文:渐进式披露式 Agent Skills 对上下文效率的影响 作者:示例作者团队(Anthropic 风格 Agent 研究,示例数据) ## 摘要 现代 LLM Agent 需要覆盖越来越多的专业任务,传统做法是把所有指令塞进单一 系统提示词,导致 token 消耗膨胀、注意力被稀释、KV Cache 前缀频繁失效。 本文提出并评估一种「渐进式披露(Progressive Disclosure)」的 Agent Skills 机制:先向 Agent 注入各 Skill 的薄目录(仅 name + description),当任务确实 需要时再按需加载完整的 SKILL.md 与子文档。实验表明,该机制在保持任务成功率的 同时显著降低常驻上下文长度。 ## 1. 研究背景与问题 - 随着 Agent 支持的任务种类增长,单一系统提示词呈线性膨胀。 - 长提示词带来三重代价:token 成本、注意力稀释、缓存前缀失效。 - 核心问题:能否在「Agent 知道自己有哪些能力」与「不为此长期占用上下文」之间取得平衡? ## 2. 方法概述 - **三层渐进式披露**: - 第一层(元数据):启动时只注入每个 Skill 的 name + description(数百 token)。 - 第二层(核心流程):任务触发时加载完整 SKILL.md 作为 tool result。 - 第三层(细则):按需读取 reference.md、脚本源码等子文档。 - **路由决策依赖 description**:描述应写成「路由条件」而非「功能介绍」, 并给出反例(Don't use when),以降低误触发。 - **捆绑可执行脚本**:Skill 不止是文档,还可附带脚本与模板,把知识升级为能力。 ## 3. 关键结果 - 常驻上下文从「全量塞入」的数千 token 降到目录级的数百 token。 - 因为工具数量恒定、前缀稳定,KV Cache 命中率显著提升。 - 在需要专业 Skill 的任务上,成功率与「全量注入」基线持平(无明显下降)。 - 反例(Don't use when)能明显提升路由准确率,减少不相关任务上的误触发。 ## 4. 局限性与讨论 - 触发依赖模型的「元认知」:模型需判断自己何时需要某个 Skill,判断失误会漏加载。 - 第三方 Skill 是新的提示注入面,加载前需审查其内容。 ## 5. 结论 渐进式披露把「一次性塞满」变为「按需加载」,在几乎不损失任务成功率的前提下, 大幅降低常驻上下文并改善缓存友好度,是构建可扩展 Agent 能力体系的实用范式。