Skills本质面面观

53 阅读4分钟

0-背景

26年元旦至春节期间,AI自媒体突然涌现出大量Skills的吹捧文章和视频,一度让人觉得Skills就是AI走进千家万户的终极方案。

那么Skills到底是什么?它真有互联网上说的那么神奇么?本文使用最精简的图文,带大家了解Skills的本质。

一句话结论:Skills是一种连接AI与个人知识库、个人软件、个人工作流的胶水,更专业的工作还是要结合工具、MCP、RAG等专家级方案;

1-什么是Skills

1.1-Skills是什么?

Skills是Anthropic(编程语言模型Claude的所属公司)提出的一种工作流程文档+脚本的组成规范,用于增强自家AI助手与编程工具的本地长程任务执行能力;
它定义了如何组织“文档+脚本+代码”,以便让大模型&AI代理“渐近式”地获取工具能力、调用合适的工具。

Skills具有如下目录结构:

.claude/
├── AGENTS.md                 # OpenSkills提供给其它AI代理的技能集说明,Claude系AI代理通常不需要
└── skills/                   # 技能目录(每个子目录对应一个独立的 Skill)
    ├── greeting/             # 问候技能(示例1,简单技能)
    │   └── skill.md          # 技能元数据:名称、描述、触发关键词、技能具体逻辑描述/多步的执行步骤
    │
    ├── personal-profile/     # 我的个人资料(示例2,资料库技能)
    │   ├── skill.md          # 技能元数据:名称、描述、触发关键词、资料库的组成和使用说明
    │   └── asserts/          # 代码目录
    │       ├── basic-info.md
    │       ├── address.md
    │       ├── education.md
    │       └── work.md
    │
    ├── datetime/             # 时间技能(示例3,命令行脚本技能)
    │   ├── skill.md          # 技能元数据:名称、描述、触发关键词、脚本入参、出参说明等
    │   └── scripts/          # 代码目录
    │       └── tool.cmd      # 技能的windows脚本代码,名称随意
    │       └── linux.sh      # 技能的linux脚本代码,可选——如果要兼容多种操作系统
    │
    ├── calculator/           # 计算器技能(示例4,带python脚本的技能)
    │   ├── skill.md          # 技能元数据:名称、描述、触发关键词、python脚本入参、出参说明等
    │   └── scripts/          # 代码目录
    │       └── calc.py       # 技能的python代码
    │
    └── react-code-review/    # 前端代码检视技能(示例5,更复杂的技术)
        ├── SKILL.md          # 技能元数据:名称、描述、触发关键词、目录结构说明等
        ├── templates/        # 常用模板(Claude 按需读取)
        │   ├── functional.tsx.md
        │   └── class-component.md
        ├── examples/         # 优秀/反例(给 Claude 看标准)
        │   ├── good.md
        │   └── anti-pattern.md
        ├── references/       # 规范、规则、禁用词表
        │   ├── hooks-rules.md
        │   └── naming-convention.md
        └── scripts/          # 可执行脚本(需开启 code execution)
            ├── validate-props.py
            └── check-cycle-deps.sh

1.2-Skills如何发挥作用?

得益于Skills的自组织结构,大模型/AI代理可以渐近式地使用Skills完成复杂的任务:

skills-using-progress.png
图1: 大模型/AI代理对Skills的渐近式使用过程

1.3-Skills适合做什么?

  1. 连接AI与个人知识库;
  2. 连接AI与本地软件;
  3. 个人工作流的智能化与自动化;

2-对比分析

2.1-Skills与工具、MCP的区别

Skills、工具、MCP都可以用于扩展AI大模型的能力,但它们的侧重点和适用场景不同。

表2: Skills与工具、MCP的对比:

Skills工具MCP
适用场景经验/工作流的沉淀与分享本地化AI助手AI能力共享/复用
运行环境个人电脑个人电脑互联网/局域网/个人电脑
面向人群普通人普通人/开发者开发者
个性化★★★★★★★★
通用性★★★★★★★★★★★★
开发难度★文档编写能力★★★★工具编程能力★★★★★后端编程能力

2.2-Skills优点

  1. 更适合运行个性化、本地化、或长程(多步骤)任务;
  2. 创建门槛低,简单任务编写MARKDOWN文档即可;
  3. 渐近式地向AI提供工具能力,减少Token消耗、提升任务执行效率;

2.3-Skills的不足

  1. 使用门槛略高:使用skills需要安装的AI工具、运行环境比工具和MCP高,具备一定门槛;
  2. 创建任务门槛不够低:编写复杂任务需要一定脚本、代码基础,且在跨平台、开发工具上并不完善;
  3. 错误率:非结构化的任务描述方式,增加了模型输出的错误概率,且错误率会在多步任务中累积;

3-推荐资料&工具