> ## Content Index
> Fetch the complete content index at: https://www.hubwiz.com/blog/llms.txt
> Use this file to discover other available public pages before exploring further.

# Claude Skills: 迈向通用代理之路
- URL: https://www.hubwiz.com/blog/claude-skills-toward-general-purpose-agents/
- Published: 2025-12-18T02:43:09.000Z
- Updated: 2025-12-18T02:43:09.000Z
- Description: Claude Code不仅仅是编码工具：任何你可以通过在计算机上输入命令实现的事情，都可以通过它自动化。技能使这一点更加明显和明确。
- Author: admin
- Tags: AGENT, CLAUDE SKILLS, #Import 2026-10-14 14:41

Anthropic[推出了Claude Skills](https://www.anthropic.com/news/skills?ref=hubwiz.com)，这是一种新的模式，用于向他们的模型提供新功能：

> Claude现在可以使用*Skills*来提升其执行特定任务的能力。Skills是包含说明、脚本和资源的文件夹，Claude可以在需要时加载这些内容。 Claude只会在任务相关时访问一个技能。使用时，技能会使Claude在专业任务上表现得更好，比如处理Excel或遵循您组织的品牌指南。

他们的工程博客有[更详细的解释](https://www.anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills?ref=hubwiz.com)。还有一个新的[anthropics/skills](https://github.com/anthropics/skills?ref=hubwiz.com) GitHub仓库。

我无意中提前发布了这个功能的公告，当时我逆向工程并[在写了关于它的文章](https://simonwillison.net/2025/Oct/10/claude-skills/?ref=hubwiz.com)！

从概念上讲，Skills极其简单：一个Skill是一个Markdown文件，告诉模型如何做某事，可选地附带额外的文档和预写的脚本，模型可以运行这些脚本来帮助完成由该Skill描述的任务。

Claude的新[文档创建能力](https://www.anthropic.com/news/create-files?ref=hubwiz.com)，伴随着[他们9月份的新代码解释器功能](https://simonwillison.net/2025/Sep/9/claude-code-interpreter/?ref=hubwiz.com)，实际上完全通过skills实现。这些现在可在[Anthropic的仓库](https://github.com/anthropics/skills/tree/main/document-skills?ref=hubwiz.com)中找到，涵盖.pdf、.docx、.xlsx和.pptx文件。

有一个额外的细节使这成为一个功能，而不仅仅是一堆磁盘上的文件。在会话开始时，Claude的各种工具可以扫描所有可用的技能文件，并从Markdown文件的frontmatter YAML中读取每个技能的简短说明。这非常节省token：每个技能只占用几十个额外的token，只有在用户请求技能能帮助解决的任务时才会加载完整细节。

## 1、尝试slack-gif-creator技能

这里是Anthropic今天发布的[slack-gif-creator技能](https://github.com/anthropics/skills/blob/main/slack-gif-creator/SKILL.md?ref=hubwiz.com)的元数据：

> 用于创建针对Slack优化的动画GIF的工具包，包括大小限制验证器和可组合的动画原语。当用户请求有关“让Skills比MCP酷得多”的Slack动画GIF或表情符号动画时，此技能适用。

我刚刚在Claude的移动网页应用中对Sonnet 4.5进行了测试。首先我[在设置中启用了slack-gif-creator技能](https://claude.ai/settings/capabilities?ref=hubwiz.com)，然后提示：

> `给我一个关于Skills比MCP酷得多的Slack GIF`

Claude[为我制作了这个GIF](https://claude.ai/share/eff7ae7b-b386-417b-9fa0-213fa76ace6e?ref=hubwiz.com)。点击播放（几乎会让人癫痫发作，因此采用了点击播放机制）：

![](https://www.hubwiz.com/blog/content/images/2025/12/image-279.png)

好的，这个特定的GIF很糟糕，但技能的优点在于它们很容易迭代以变得更好。

这里有一些来自[它编写的Python脚本](https://gist.github.com/simonw/ef35bb9e6c514d1d596dac9227da482b?ref=hubwiz.com)的值得注意的片段，评论是我的：

```
# 首先将技能目录添加到Python路径
import sys
sys.path.insert(0, '/mnt/skills/examples/slack-gif-creator')

from PIL import Image, ImageDraw, ImageFont
# 这个类位于技能的核心/目录中
from core.gif_builder import GIFBuilder

# ...构建GIF的代码...

# 保存到磁盘：
info = builder.save('/mnt/user-data/outputs/skills_vs_mcps.gif', 
                    num_colors=128, 
                    optimize_for_emoji=False)

print(f"GIF创建成功！")
print(f"大小: {info['size_kb']:.1f} KB ({info['size_mb']:.2f} MB)")
print(f"帧数: {info['frame_count']}")
print(f"持续时间: {info['duration_seconds']:.1f}s")

# 使用check_slack_size()函数确认它足够小以适合Slack:
passes, check_info = check_slack_size('/mnt/user-data/outputs/skills_vs_mcps.gif', is_emoji=False)
if passes:
    print("✓ 准备好发送给Slack！")
else:
    print(f"⚠ 文件大小: {check_info['size_kb']:.1f} KB (限制: {check_info['limit_kb']} KB)")

```

这非常棒。Slack GIF最大为2MB，所以技能包含了一个验证函数，模型可以用来检查文件大小。如果太大，模型可以再次尝试使其更小。

### 2、技能依赖于编程环境

技能机制*完全依赖于*模型能够访问文件系统、导航它的工具以及在该环境中执行命令的能力。

这是当今LLM工具的一个常见模式——ChatGPT代码解释器是这一模式的首次重大示例[早在2023年初](https://simonwillison.net/2023/Apr/12/code-interpreter/?ref=hubwiz.com)，随后通过编码代理工具如Cursor、Claude Code、Codex CLI和Gemini CLI扩展到本地机器。

这个要求是技能与其他之前尝试扩展LLM能力的方法（如MCP和[ChatGPT插件](https://simonwillison.net/tags/chatgpt-plugins/?ref=hubwiz.com)）之间最大的区别。这是一个重要的依赖项，但令人困惑的是它解锁了多少新的能力。

技能的强大和易于创建的特性，又是支持为LLM提供安全编程环境的另一个论据。这里的“安全”一词承担了*大量*的工作！我们真的需要弄清楚如何最好地沙箱化这些环境，以将像提示注入这样的攻击限制在可接受的损害范围内。

## 3、Claude Code作为通用代理

一月份我[对AI/LLMs做出了一些鲁莽的预测](https://simonwillison.net/2025/Jan/10/ai-predictions/?ref=hubwiz.com)，其中包括“代理”再次失败：

> 我认为我们在2025年将会看到很多关于代理的喧嚣，但我预计结果会让大多数对此感到兴奋的人失望。我会看到很多钱被浪费在追逐几个定义不明确的梦想上，这些梦想共享这个名字。

我完全错了。2025年真的是“代理”的一年，无论你选择使用哪个[相互冲突的定义](https://simonwillison.net/tags/agent-definitions/?ref=hubwiz.com)（我最终选择了[“工具在环”](https://simonwillison.net/2025/Sep/18/agents/?ref=hubwiz.com)）。

[Claude Code](https://www.claude.com/product/claude-code?ref=hubwiz.com)从后见之明来看，名称很差。它不仅仅是编码工具：它是通用计算机自动化的工具。*任何*你可以通过在计算机上输入命令实现的事情，现在都可以通过Claude Code自动化。它最好被描述为一个**通用代理**。技能使这一点更加明显和明确。

我发现这种技巧的潜在应用有些头晕目眩。仅凭我的数据新闻帽思考：想象一个包含各种技能的文件夹，涵盖了以下任务：

- 如何获取美国人口普查数据及其结构的理解
- 如何使用适当的Python库将不同格式的数据加载到SQLite或DuckDB中
- 如何在线发布数据，作为S3中的Parquet文件或推送到Datasette Cloud的表
- 由经验丰富的数据记者定义的技能，讲述如何在新数据集中发现有趣的故事
- 描述如何使用D3构建干净、易读的数据可视化技能

恭喜，你刚刚建立了一个“数据新闻代理”，它可以发现并帮助发布最新的美国人口普查数据。你只需一个包含多个Markdown文件和一些示例Python脚本的文件夹即可。

## 4、与MCP相比的技能

[Model Context Protocol](https://modelcontextprotocol.io/?ref=hubwiz.com)自去年11月首次发布以来就引起了巨大的关注。我喜欢开玩笑说，其中一个原因就是每家公司都知道他们需要一个“AI战略”，而构建（或宣布）一个MCP实现是满足这个目标的简单方式。

随着时间的推移，MCP的局限性开始显现。最显著的是在令牌使用方面：GitHub官方的MCP本身以其消耗数万个上下文令牌而闻名，一旦你添加了几个更多的内容，留给LLM实际执行有用工作的空间就所剩无几了。

自从我认真对待编码代理以来，我对MCP的兴趣已经减弱。几乎所有我可能通过MCP实现的事情都可以通过CLI工具来处理。LLM知道如何调用`cli-tool --help`，这意味着你不需要花费许多令牌来描述如何使用它们——模型可以在需要时自己弄清楚。

技能具有同样的优势，只是我现在甚至不需要实现一个新的CLI工具。我可以放一个Markdown文件来描述如何完成一项任务，如果它们能帮助使事情更可靠或更高效，再添加一些额外的脚本。

## 5、技能来了

技能最令人兴奋的一点之一是它们非常容易分享。我预计许多技能将作为单个文件实现——更复杂的技能将是一个包含几个更多文件的文件夹。

Anthropic有[Agent Skills文档](https://docs.claude.com/en/docs/agents-and-tools/agent-skills/overview?ref=hubwiz.com)和一个[Claude Skills Cookbook](https://github.com/anthropics/claude-cookbooks/tree/main/skills?ref=hubwiz.com)。我已经开始考虑自己可能会构建的技能，比如[如何构建Datasette插件](https://simonwillison.net/2025/Oct/8/claude-datasette-plugins/?ref=hubwiz.com)。

我还喜欢技能设计的另一点是，没有任何东西阻止它们被其他模型使用。

你现在就可以获取一个技能文件夹，指向Codex CLI或Gemini CLI，并说“读取pdf/SKILL.md，然后为我创建一个描述这个项目的PDF”，即使这些工具和模型没有内置的技能系统知识，它也能正常工作。

我预计我们会看到一场“寒武纪大爆发”式的技能，这将使今年的MCP热潮显得相形见绌。

## 6、简单就是重点

我看到一些人对技能持反对意见，认为它们如此简单，几乎不能算作一个功能。许多人已经尝试过将额外的指令放入Markdown文件，并告诉编码代理在继续任务前阅读该文件。[AGENTS.md](https://agents.md/?ref=hubwiz.com)是一个已确立的模式，该文件已经可以包含“[在尝试创建PDF前阅读PDF.md](http://xn--pdfpdf-hn3j5mw68auomouh8v9lkoat47i.md/?ref=hubwiz.com)”的指令。

技能设计的核心简单性是我如此兴奋的原因。

MCP是一个完整的[协议规范](https://modelcontextprotocol.io/specification/2025-06-18?ref=hubwiz.com)，涵盖主机、客户端、服务器、资源、提示、工具、采样、根、引出和三种不同的传输方式（stdio、流式HTTP和最初SSE）。

技能是带有少量YAML元数据和一些可执行脚本的Markdown文件，无论你能在环境中执行什么。它们感觉更接近LLM的精神——扔一些文本进去，让模型自己去理解。

它们将困难的部分外包给LLM的工具和相关的计算机环境。鉴于过去几年我们对LLM运行工具的能力所了解到的一切，我认为这是一个非常明智的策略。

---

原文链接：[Claude Skills are awesome, maybe a bigger deal than MCP](https://simonwillison.net/2025/Oct/16/claude-skills/?ref=hubwiz.com)

汇智网翻译整理，转载请标明出处