早在2024年,人们还倾向于给Agent提供海量的工具(例如通过MCP协议连接的API、搜索引擎、代码解释器等)。但是,“拥有工具”并不等于“知道如何使用工具”。当任务变得复杂且长周期时,要求Agent每次都从头开始推理“该用哪个工具、何时用、怎么组合、出错怎么办”,会导致系统极度脆弱、延迟极高且不可靠。为了弥补这一鸿沟,到了2025年,Agent Skills应运而生。这一概念最早由Anthropic提出,香港中文大学近期发布的这篇论文是对Agent Skills领域的系统性综述,论文将Agent Skills的生命周期分为表示、获取、检索、进化4个环节,本文也将以此依序展开。


Skill的表示形式:Skill是如何构建的?
一个成熟的Skill并不仅仅是一段提示词。形式上,论文将Skill建模为一个三元组:

- M(Main Document):智能体可以加载和遵循的根指令文档(例如SOP、检查表)。
- R(Resources):辅助资源,如参考文档、可重用模板、可执行脚本等。
- C(Conditions):适用条件,规定了何时应该检索和应用该Skill(通常以元数据或嵌入向量的形式存在)。
根据资源(R)的不同配置,论文将Skill划分为三种主要表示形式:
- 文本驱动型Skill(Text-backed skills):辅助资源主要由文本对象构成,如示例、评估标准或数据库模式(Schema)。它们在不引入复杂代码依赖的情况下提高了重用性。
- 代码驱动型Skill(Code-backed skills):辅助资源包含可执行的脚本、辅助函数或Python Notebook等。经典代表是Voyager。这种形式大大提高了操作的确定性,但也引入了软件工程的维护成本(如版本控制和测试)。
- 混合型Skill(Hybrid-resource skills):结合了文本和可执行代码的优势,既保留了自然语言的可解释性,又具备代码的确定性执行能力。不过,维护文本和代码之间的一致性也带来了最高的协调负担。

论文用四个典型任务展示Skill的可复用程序结构:每个Skill都不是孤立提示词,而是由多步推理、工具调用、证据整理和结果生成共同构成的操作流程。
Skill的获取:Agent如何学习新Skill?
获取是构建或生成新Skill的过程。研究者根据Skill的主要直接来源,将现有文献分为四大类。

论文将Skill获取拆成四条来源路径:专家编写、历史轨迹蒸馏、当前任务即时生成,以及从外部文档、代码库、竞赛资料或界面痕迹中抽取。
人驱动获取(Human-Derived Acquisition)
直接从领域专家和人工策划中获取Skill。
- 专家(如医生、工程师)明确编写可重用的程序,定义适用范围,并附加支持材料。
- 其核心优势在于极高的精确度:人类可以对默认规则、安全关键约束进行精细的语义控制。
- 局限性在于可扩展性较差,手动策划的速度难以跟上大规模应用的需求。

基于SkillsMP统计,人工构建的Skill在数量和类型上持续扩张,说明专家知识正在被更系统地纳入Agent平台。
经验驱动获取(Experience-Derived Acquisition)
将智能体过去的运行记录(执行轨迹、交互历史和反馈)视为原材料,从中抽象出可转移的Skill。这是目前研究最广泛的领域。研究者将该过程拆解为四个处理操作:
- 选择(Selection):过滤历史轨迹,仅保留成功、有用或具有代表性的部分。例如,VoyagerSkill和SkillSkillCraftSkill系统保留成功的执行轨迹作为后续构建的基础。
- 抽象与总结(Abstraction):将具体轨迹压缩为可重用的启发式规则或声明性描述。ReflexionSkill从失败尝试中提取语言反思;ExpeLSkill从成败中抽象出高级教训;Buffer of ThoughtsSkill提取可重用的推理模板。
- 记忆组织(Memory Organization):将分散的经验重新组织为结构化的记忆图谱。G-MemorySkill将经验组织为支持不同抽象级别重用的层次记忆图;NemoriSkill将交互提炼为稳定的语义记忆。
- 程序化打包(Procedural Packaging):将重复的成功执行转化为工作流、APISkill或代码模块。Agent Workflow MemorySkill直接从轨迹中归纳工作流;PolySkillSkill将成功经验抽象为可直接调用的编程Skill。

论文按选择、抽象、记忆组织和程序化打包四类处理操作,对经验驱动Skill获取的代表方法进行了对照。
任务驱动获取(Task-Derived Acquisition)
根据当前任务的要求直接构建Skill。
- 任务本身充当生成的触发器:系统提出候选的工作流、脚本或工具封装,执行结果决定其是否被保留或修改。
- CREATORSkill根据任务需求直接生成可调用的工具;CradleSkill和SkillCodeActSkill综合程序工件以实现即时控制和行动。
- 这种方式在智能体面临无法等待专家编写或长期经验积累的全新任务时非常关键。
语料库驱动获取(Corpus-Derived Acquisition)
从外部文本或结构化资源(如文档、软件库、数据集、界面痕迹)中提取Skill。
- AppAgentSkill从界面结构中提取程序信号;ToolLLMSkill从SkillAPISkill描述中编译程序指南。
- DS-AgentSkill挖掘外部竞赛资源(如SkillKaggleSkill解决方案),提取重复出现的解决模式,并将其转化为程序性指导。
Skill的检索与选择:如何在正确的时间使用正确的Skill?
随着智能体系统积累的Skill成百上千,瓶颈从“Skill获取”转移到了“Skill访问”。研究者强调,Skill不同于静态文档,调用它们会触发外部副作用和计算成本。因此,使用Skill被划分为检索(候选召回)和选择(执行决策)两个阶段。

系统先通过语义、关键词、生成式或结构感知方法召回候选Skill,再结合上下文、组合关系、成本效用和历史反馈决定最终执行方案。
Skill检索阶段(Skill Retrieval)
此阶段的主要任务是将庞大的Skill池缩减为可管理的候选集。
- 密集嵌入检索(Dense Embedding):将当前任务和候选Skill映射到共享向量空间,通过相似度匹配。这是最常用的策略,例如SkillVoyagerSkill将语义检索应用于文本Skill描述。
- 稀疏与关键字检索(Sparse and Keyword Retrieval):利用明确的符号字段和元数据进行词汇匹配。当库公开了稳定的名称或接口字段时,这种方法比密集检索更可靠。SkillWeaverSkill和SkillSkillNetSkill在结构化工件中高度依赖此方法。
- 生成式检索(Generative Retrieval):模型在解码过程中直接生成目标Skill的标识符,如SkillToolGenSkill所示。这种方法消除了检索和操作生成之间的界限。
- 结构感知检索(Structure-Aware Retrieval):基于Skill库的内层结构(如层次结构或依赖关系图)来引导召回。SkillRLSkill使用显式层次结构从宽泛领域缩小到特定Skill;ToolExpNetSkill根据依赖关系过滤掉违反先决条件的候选对象。
Skill选择阶段(Skill Selection)
此阶段决定最终执行哪个Skill或如何组合多个Skill。
- 上下文感知动态选择(Context-Aware Selection):根据当前观察、子目标和交互历史在线修订决策。AutoGuideSkill和SkillMemSkillSkill根据不断变化的环境和内部状态路由Skill。
- Skill组合(Skill Composition):将Skill选择视为组织多个模块的问题,而非单一的最佳候选。HuggingGPT、AWMSkill和SkillAgentSkillOSSkill决定如何将可重用模块排序、分组或嵌套为更宏大的执行行为。
- 成本与效用感知选择(Cost & Utility-Aware Selection):考虑预期收益与成本、风险或副作用的权衡。SkillOrchestraSkill根据Skill需求、预期能力和部署成本进行路由决策,避免执行具备负效用的精选Skill。
- 反馈驱动重排(Feedback-Driven Reranking):使用历史执行信号更新Skill优先级。SkillRLSkill和SkillCUA-SkillSkill将过往的执行成败转化为后续的排名权重,改变了系统的偏好排序。

论文从方法类别、核心设计、结构先验、决策输入和发表时间等维度,对检索与选择阶段的代表系统进行了归纳。
Skill的进化:Skill如何实现持续精进?
人类Skill通过纠正、巩固和重用来不断改进,智能体系统也需要相同的递进优化机制。研究者将Skill进化定义为现有Skill伪影如何被修订、验证和治理的后续过程。

论文用人类通过实践、反馈和纠错不断打磨技能的过程,类比Agent Skill在部署后持续修订、验证和治理的必要性。
Skill修订(Skill Revision)
这是进化中改变内容的阶段。系统的反馈会修改持久化的Skill对象,并决定该修改是否应保留。
- EvoSkillSkill在执行失败时触发决策,决定是完善现有Skill还是创建缺失的Skill。
- Memento-SkillsSkill强调修订的可逆性:它读取Skill文件、执行、归因失败,然后重写供后续使用的代码,同时使用单元测试网关和回滚步骤保障安全。
- AutoSkillSkill通过添加、合并或放弃决策来更新可编辑的
SKILL.md工件。
Skill验证(Skill Validation)
经过修订的Skill必须通过生存检查才能被作为未来的能力去信任。
- SkillWeaverSkill通过生成的测试和实践结果来打磨SkillWeb Agent Skills。
- ASISkill要求归纳出的程序必须针对测试轨迹进行验证后,才能进入改进循环。
- Audited Skill-GraphSkill规定候选Skill只有在可重放的证据束支持下,才能被提升至有向Skill图中。
策略耦合(Policy Coupling)
Skill基底被视为智能体控制器训练状态的一部分,两者共同适应。
- SkillRLSkill在强化学习期间执行递归的Skill进化,验证失败会暴露Skill缺失的区域,而策略更新会改变系统接下来遭遇的挑战。
- ARISESkill构建了分层的管理者-工作者架构,Skill的生成、添加、更新和驱逐与策略的运作深度融合。
仓库进化(Repository Evolution)
这一步骤探讨接受的Skill更改如何扩展到单个工件之外,形成同步的生态系统。
- SkillXSkill将多层次Skill知识库作为改进对象,通过经验引导的探索提炼和过滤Skill。
- SkillNetSkill通过动态本体构建、关系图和多维度评估(安全性、可执行性、可维护性等)来组织庞大的共享基础设施。
- SkillClawSkill聚合不同用户的轨迹,在用户环境中验证候选更新,并将被接受的更改同步回共享存储库。
运行时治理(Runtime Governance)
治理机制解决执行安全和权限问题。
- 进化后的Skill只有在正确的条件下被检索和使用,才能改变行为。
- PoisonedSkillsSkill警告说,第三方Skill文档可能隐藏恶意逻辑,智能体会将其作为受信任的指令执行。
- 系统需要处理来源追踪、权限边界、污染检测和退役,以确保生态系统不会积累具备高风险的可执行代码。

修订阶段产生候选更新,验证阶段决定其是否保留,可信Skill被索引、检索、执行,并在新的反馈中进入下一轮改进。

论文按修订、验证、策略耦合和仓库进化四个层面,比较了不同系统的演化对象、更新触发器、演化操作、验证检查和复用范围。
生态系统面临的开放挑战
尽管Agent Skills的生命周期已初步建立,但在实际部署中,研究者指出仍有诸多关键挑战亟待解决。

目前获取Skills的5个主要渠道
Skill获取的挑战
- 抽象质量的把控:从噪声轨迹中提取经验时,过于局部的Skill只能当作偶发记忆,而过度抽象的Skill会丧失操作价值。
- 触发条件界定薄弱:许多获取管道产生了一套合理的程序,但未能精确界定该程序的适用条件,导致Skill在部署时因错误路由而失败。
- 长期资源漂移:随着Skill库的成熟,附加的脚本、参考资料可能过时,导致与主文档不一致。
Skill检索的挑战
- 可扩展性的维护:随着Skill随着时间的推移被添加、合并或弃用,现有的系统仍缺乏通用机制来保持索引和元数据的一致同步。
- 约束感知的组合:找到相关的单一Skill是不够的,系统需要找出可以连接成可行执行路径的Skill组合。目前缺乏跨系统的共享抽象来对这些依赖关系建模。
- 执行中心的评价缺失:传统的召回率指标无法衡量最终的Skill选择是否真正提高了端到端任务成功率、节约了成本或避免了负面效应。
Skill进化的挑战
- 非对称的修订能力:当前的系统更擅长添加新Skill,但在安全地重写或淘汰不良Skill方面表现较弱,Skill库的“清理”难题仍未解决。
- 治理权责不清晰:当Skill成为可共享资源时,谁有权发布、验证和弃用Skill,以及Skill出错时谁承担责任,仍缺乏明确的基础设施支持。
- 长周期的信任归因:性能的提升可能来源于底层模型的升级或测试时间计算的增加,而并非Skill工件本身的进化。目前很难实现因果层面的严格剥离与评估。
迈向未来的研究方向
基于现有的瓶颈,研究者为该领域规划了五条清晰的前进路线:
- 构建统一的Skill规范架构(Unified Skill Schema):建立标准化协议,为适用范围、触发条件、依赖关系、版本控制和安全约束定义通用字段,让Skill在不同的智能体生态系统中能够无缝共享和治理。
- 资源感知的端到端优化(Resource-Aware Joint Optimization):目前的系统倾向于将检索、规划和执行分立。未来需针对推理延迟、TokenSkill成本和工具调用风险等核心约束,在实用性、延迟和执行成本之间开展联合优化与动态调度。
- 应对非平稳环境的生存机制(Non-Stationarity):APISkill会被弃用,工具行为会改变。Skill库需要配备生命周期级别的鲁棒性检测机制,如漂移检测、兼容性检查、安全的在线更新以及多版本回滚操作。
- 多模态与领域专用的评估基准(Multimodal Benchmarks):现有基准集中于文本场景。未来需针对感知与动作深度整合的具身智能、自动驾驶和无人机场景开发基准,评估Skill在长视野决策中的安全性与延迟表现。
- 因果驱动的故障诊断(Causality-Driven Skill Diagnosis):当跨越检索、选择和执行的长流程发生崩溃时,智能体需要追踪溯源,准确定位失败是源于检索不匹配、策略选择失误还是不安全的Skill组合,并触发针对性的自我修复。
Skill系统的广泛应用场景
为便于您更直观地理解,研究者梳理了Agent Skills在八个主要维度的落地应用。

论文将Agent Skills的落地场景概括为代码、Web/GUI、对话、机器人、金融、医疗、游戏和社会模拟八类。
- 代码与软件工程(Code):将代码生成、调试和存储库感知重构打包为可复用的例程,让智能体直接应用经过验证的逻辑,而无需每次都从零开始诊断。
- 网页与图形界面(Web/GUI):封装对动态界面的多步交互路径。通过Skill,智能体能轻松应对导航、表单填写,并从SkillUISkill元素变更中迅速恢复。
- 对话系统(Chatbots):为长周期的对话框稳定核心流程,通过编码记忆更新策略、工具路由和故障恢复程序来维持上下文的连贯性。
- 机器人控制(Robotics):作为连接感知、动作与奖励优化的可重用控制例程。让具身智能体能够跨任务组合运动行为基元。
- 金融分析(Finance):将海量的市场经验提炼为决策启发式Skill。用于不断变化的市场环境下的数据分析、交易规划和投资组合动态调整。
- 医疗健康(Healthcare):将繁复的医疗知识结构化,形成一致的临床诊断推理与治疗规划操作规程,提供稳健的医疗决策支持。
- 游戏环境(Game):在交互式沙盒中通过持续探索发现可组合的行为单元。智能体能够在长视野任务中构建并重用复杂的行为库。
- 社会模拟(Social Simulation):编码可重用的社会交互习惯,协调多智能体环境下的规划、行动和反思约束。
结语
智能体生态系统的成熟,绝不仅限于赋予大语言模型更多基础工具。正如研究所展现的那样,将程序性知识显式化为可重用的Skill,并对其进行从获取、检索到进化的全生命周期管理,是解决智能体脆弱性和高延迟的关键所在。将Skill作为智能体架构的一等公民加以对待,必将大幅提升未来复杂人工智能系统的可扩展性、稳健性与可治理性。
用户评论