Anthropic 推出的 “Claude Skills” 模式,允许用户通过包含指令和脚本的文件夹来扩展模型的能力,使其在处理特定任务时更加高效。这种方法不仅 token 效率极高,而且设计简洁,依赖于编码环境。由于其易于分享和跨模型使用的特性,它有望引发通用代理应用的爆发式增长,其潜力可能超越之前的 MCP 模式。
什么是 Claude Skills?
Claude Skills 是一种让模型学习新能力的新模式。本质上,一个 Skill 就是一个文件夹,其中包含了模型在执行特定任务时可以调用的资源。
- 指令文件: 一个 Markdown 文件,告诉模型如何完成某项任务。
- 辅助资源: 可以包含额外的文档或数据。
- 预置脚本: 模型可以运行的脚本,以帮助其更可靠地完成任务。
Claude 只会在处理相关任务时才会调用相应的 Skill。例如,当需要处理 Excel 或遵循特定的品牌指南时,它会自动加载对应的 Skill 来提升表现。
Skills 如何工作?
Skills 的核心在于其高效的触发机制。在会话开始时,系统会扫描所有可用的 Skills,并从每个文件的元数据中读取一个简短的描述。
这个过程非常 节省 token:每个 Skill 只占用几十个 token 的上下文。只有当用户请求的任务与某个 Skill 相关时,系统才会加载完整的 Skill 内容。
以一个用于为 Slack 创建 GIF 动图的 Skill 为例,其元数据会这样描述:
“用于创建针对 Slack 优化的 GIF 动画的工具包……当用户请求‘为我制作一个关于 X 做 Y 的 Slack GIF’时,此 Skill 将适用。”
当用户发出相应指令后,模型会调用该 Skill 附带的 Python 脚本来生成 GIF。这个脚本甚至包含了检查文件大小是否符合 Slack 上传限制的验证功能,如果不符合,模型可以尝试重新生成一个更小的版本。
依赖于编码环境
Skills 的运行机制完全依赖于一个前提:模型必须能够访问文件系统并执行代码。
- 这是当前大语言模型工具的 常见模式,例如 ChatGPT 的代码解释器。
- 这个依赖是 Skills 与 MCP 或 ChatGPT 插件等早期能力扩展方式的 最大区别。
- 它极大地释放了模型的潜力,但也对环境的 安全性 提出了更高要求。
正因为如此,Claude 已经超越了一个单纯的编码工具。它更像一个 通用代理,能够自动化任何可以通过在计算机上输入命令来完成的任务。
想象一下,一个文件夹里装满了关于如何获取和分析人口普查数据、如何将数据可视化、以及如何从中发现新闻故事的 Skills。你就拥有了一个“数据新闻代理”,而这一切只需要一堆 Markdown 文件和几个 Python 脚本就能实现。
Skills 与 MCP 的对比
Model Context Protocol (MCP) 此前备受关注,但其局限性也逐渐显现。
- MCP 的主要缺陷: 消耗大量 token。仅 GitHub 官方的 MCP 就可能占用数万 token 的上下文,留给模型处理实际工作的空间非常有限。
- Skills 的优势: 更加高效。模型可以通过读取简单的 Markdown 文件或调用命令行工具的帮助文档来学习如何使用工具,而无需在提示中消耗大量 token 来描述用法。
几乎所有通过 MCP 实现的功能,都可以用一个命令行工具和一份描述其用法的 Skill 文件来代替,这是一种更简单、更高效的策略。
简单,才是关键
有人认为 Skills 的设计过于简单,算不上一项“功能”。但这恰恰是它最激动人心的地方。
MCP 是一个复杂的协议规范,涵盖了主机、客户端、服务器、资源等多个方面。而 Skills 只是带有少量元数据的 Markdown 文件和一些可选脚本。它更符合大语言模型的精神——提供一些文本,让模型自己去理解和执行。
Skills 的设计将复杂的部分外包给了大语言模型本身和它所处的计算环境。鉴于我们近年来对模型使用工具能力的了解,这无疑是一个非常明智的策略。由于其 简单性和易于分享 的特点,我们很可能会看到 Skills 的应用出现爆炸式增长,其规模将远超之前的 MCP 热潮。