Skills 于 2024 年底由 Anthropic 正式推出,2025 年底突然爆火。但 Skill 到底是什么?Claude Skills 是真生产力,还是新瓶装旧酒?本文从基本概念、安装配置到项目实战,全流程拆解,验证它到底行不行。”

关注同名公众号及时获取更多技术资讯!

往期内容链接:

MCP应用开发实战:把大模型接到现实世界

别再堆 Prompt 了:用 LangChain 1.0 搭建“深度思考 Agent”

拒绝复制粘贴!我用多 Agent 搭了个“全平台文章同步助手”(附架构源码)

本期代码运行实例详见github:https://github.com/SWUSTcyt/langchain-travel-agent

01 大模型的“手”与“脑”——Skills、MCP与Claude Skills详解

在构建大模型应用时,我们经常听到“Agent(智能体)”、“Tools(工具)”这些词。但随着技术栈的演进,出现了更细分的层级:Skills(技能)MCP(Model Context Protocol)

很多开发者容易混淆这两者,或者认为它们是同一回事。其实,它们解决的是大模型落地的两个不同维度的问题。

1. 什么是 Skills (技能)?

定义:Skills 本质上是大模型的程序性知识(Procedural Knowledge)或标准作业程序(SOP)。它不是单纯的代码,而是告诉模型“在遇到特定任务时,应该按照什么步骤、使用什么策略去解决问题”的说明书。

通俗理解:如果把大模型比作一个刚入职的“高材生实习生”:

  • 他很聪明,读过很多书(预训练知识),但他不知道你公司的具体业务流程。

  • Skills 就是你写给他的《员工手册》或《操作指南》。比如:“当客户要求退款时,第一步先查订单状态,第二步核对金额,第三步调用退款接口”。

在技术实现上,Skills 通常是一组Prompt(提示词)模板编排逻辑或者轻量级的脚本,它赋予了模型处理特定场景(如“写代码”、“分析财报”、“订票”)的专业能力。

2. 什么是 MCP (Model Context Protocol)?

定义:MCP 是由 Anthropic 等机构推出的一种开放标准协议。它的核心目的是标准化大模型与外部世界的连接方式。它规定了模型如何“看到”外部数据(Context)以及如何“调用”外部工具(Tools)。

通俗理解:继续用那个“实习生”做比喻:

  • 虽然他有了《操作指南》(Skills),但他没有公司系统的账号,也连不上打印机。

  • MCP 就是那个“通用接口”或“万能插座”

  • 它给了实习生一把通用的钥匙,让他能安全地连接到本地的数据库、GitHub 仓库、Slack 消息记录,或者是你的文件系统。

为什么需要 MCP?在 MCP 出现之前,如果你想让 ChatGPT 连数据库,你得写一套插件;想让 Claude 连 GitHub,又得写另一套。MCP 让所有模型和所有工具之间有了一种“通用语言”,写一次接口,到处都能用。

3. Skills 与 MCP 的区别与联系

这是最容易混淆的部分,我们可以用“大厨做菜”来做类比:

维度 Skills (技能) MCP (模型上下文协议)
角色比喻 菜谱 / 烹饪技法 食材库 / 厨具接口
核心作用 How (怎么做):教模型如何拆解任务、决策逻辑、步骤顺序。 What (用什么):给模型提供数据(食材)和工具(锅碗瓢盆)的访问权限。
存在形式 Markdown 文档、System Prompts、逻辑脚本。 Server 服务、API 接口、标准化的数据流。
典型例子 “如何进行代码 Code Review 的步骤说明”。 “连接 GitHub 获取代码仓库内容的 API 接口”。

**它们的联系(协同工作):**一个强大的 Agent 往往是 Skills + MCP 的结合。

  • 场景:你要让 AI 帮你“重构某个 Python 项目的代码”。

  • MCP 提供能力:通过 MCP Server,AI 获得了读取本地文件、运行 Python 解释器的能力。

  • Skill 提供智慧:通过 Refactor Skill,AI 知道了“先读懂架构,再写测试用例,最后修改代码”的最佳实践流程。

一句话总结MCP 给了模型“手”,让它能触碰世界;Skills 给了模型“脑回路”,教它如何灵巧地使用这双手。

02 什么是Claude Skills

什么是 Claude Skills?

**定义:**Claude Skills 是 Anthropic 在其生态系统(如 Claude Desktop App 或 Claude Code)中对“Skills”概念的具体落地实现。

它不仅仅是一个抽象概念,而是一个具体的功能特性。开发者可以通过编写简单的 Markdown 文件脚本,将其放入特定的配置文件夹中。Claude 在运行时会自动读取这些文件,从而瞬间“学会”特定的工作流。

Claude Skills 的特点:

  • 轻量级:不需要像微调模型那样麻烦,写个 .md 文件就能生效。

  • 上下文感知:它能动态地被加载到对话中。

  • 可移植:作为一个文件,很容易在开发者社区中分享(比如分享一个“自动写 Git Commit Message”的 Skill)。

03 Claude Code安装流程

知道了原理,我们直接进入实战。在终端中安装 Claude Code 其实非常简单,只需要一行命令。

:由于每个人的电脑环境(Windows/Mac)不同,具体的 Node.js 环境搭建大家可以参考网络上的详细教程,这里只介绍核心步骤。

1. 核心安装命令

无论你是 Windows 还是 Mac 用户,在配置好环境后,只需要在终端执行以下命令即可完成安装:

npm install -g @anthropic-ai/claude-code
2. 关键配置:API 中转站的使用(避坑指南)

这里重点说一下鉴权配置

官方默认的登录方式是跳转浏览器授权,但众所周知,由于 Claude 对账号的风控极为严格(极其容易封号),且对网络环境要求极高。

为了稳定使用,我没有使用官方账号直连,而是选择了购买中转站的 API Key 进行配置。

这样做的好处显而易见:

  1. 更稳定:不用担心号突然没了。

  2. 按量付费:通过中转站管理额度,通过 API Key 的方式让 Claude Code 在终端运行。

通过配置好 API Key 和 Base URL 后,我们就可以绕过复杂的官方登录验证,直接让终端连上“大脑”。

3. 运行成功展示

配置完成后,在终端输入 claude,看到如下界面,就说明这一步已经大功告成了!

(如图所示,终端已经成功初始化,并且可以进行交互)

04 Hello World —— 纯指令 Skill

这是最基础的形式,本质上是把一段 Prompt(提示词)变成了一个系统级的命令。

文件结构:在 .claude/skills 目录下创建一个文件夹(文件夹名字即 Skill 名字)。

.claude/
└── skills/
    └── hello/
        └── SKILL.md      # 唯一的必需文件

**SKILL.md 的内容:**这个文件由两部分组成:

  1. YAML 头(Frontmatter):位于 --- 之间,告诉系统这个 Skill 叫什么,以及什么情况下触发(Description 至关重要)。

  2. Markdown 指令:告诉 Claude 具体怎么做。

---
name: hello
description: 当用户打招呼或者想要测试 skill 功能是否正常时使用。
---

# Hello Skill

## Instructions
当用户调用此 skill 时:
1. 热情地向用户打招呼 "Hello World! 🌍"
2. 告诉用户这是一个通过 Claude Skills 自定义的功能。
3. 加一个有趣的 emoji。
  • 触发机制:用户不需要每次都输 /hello。只要用户的提问匹配了 description 里的描述(比如问“你有哪些功能?”或者“打个招呼”),Claude 就会智能判断并自动挂载这个 Skill。

  • 零代码:这个阶段不需要写任何 Python 或 Bash 代码,纯靠自然语言编程。

05 引入“外挂” —— 添加可执行文件

除了让 Claude “说话”,我们还可以让它“做事”。这就是 Skill 强大的地方:它可以携带脚本。

文件结构:我们通常会建立一个 scripts 子目录来保持整洁。

.claude/skills/
└── date-calculator/
    ├── SKILL.md
    └── scripts/
        └── calc_days.py  # 具体的 Python 脚本

SKILL.md 的变化:在指令中,我们需要明确告诉 Claude “去运行这个脚本”,而不是自己瞎猜。

---
name: date-calculator
description: 计算两个日期之间的天数差。
---

# Date Calculator

## Instructions
当用户想要计算日期差时:
1. 提取用户提供的起始日期和结束日期。
2. 运行以下脚本来获得精确结果(不要自己计算):

   ```bash
   python scripts/calc_days.py <start_date> <end_date>

脚本文件(calc_days.py):

#!/usr/bin/env python3
"""
计算两个日期之间的天数差的脚本。
用法: python calc_days.py <start_date> <end_date>
日期格式: YYYY-MM-DD
"""
import sys
from datetime import datetime
def calculate_days_between(start_date_str, end_date_str):
    """
    计算两个日期之间的天数差。
    Args:
        start_date_str: 起始日期字符串 (YYYY-MM-DD)
        end_date_str: 结束日期字符串 (YYYY-MM-DD)
    Returns:
        天数差(绝对值)
    """
    try:
        start_date = datetime.strptime(start_date_str, "%Y-%m-%d")
        end_date = datetime.strptime(end_date_str, "%Y-%m-%d")
        days_difference = abs((end_date - start_date).days)
        return days_difference
    except ValueError as e:
        print(f"错误: 日期格式不正确。请使用 YYYY-MM-DD 格式。")
        print(f"详细错误: {e}")
        sys.exit(1)
def main():
    if len(sys.argv) != 3:
        print("用法: python calc_days.py <start_date> <end_date>")
        print("日期格式: YYYY-MM-DD")
        print("示例: python calc_days.py 2024-01-01 2024-12-31")
        sys.exit(1)
    start_date = sys.argv[1]
    end_date = sys.argv[2]
    days = calculate_days_between(start_date, end_date)
    print(f"从 {start_date}{end_date} 相差 {days} 天")
if __name__ == "__main__":
    main()

计算今天(2026年1月26日)到春节还有多少天,回答很准确:

学会了让 Claude 运行简单的 Python 脚本后,我们不仅能算日期,还能让它参与到核心的代码开发中。接下来,我们将用 Skills 构建一个拥有高级工程师思维的Agent。

06 项目实操-“架构师”、资深开发Skill

在复杂的 AI Agent 开发中,复现能力(或称"迁移学习能力")是区分初级工程师和高级工程师的关键。初级工程师只会从零写代码,而高级工程师懂得:

  • 📖 阅读现有架构 - 理解项目的设计思想和技术选型

  • 🎯 遵循设计模式 - 确保新代码与现有框架一致

  • 🔄 复用到新场景 - 快速将成熟框架应用到新项目

这正是Claude AI 工程师 Agent 应该具备的核心能力。为了实现这一点,我们使用 Claude Code 的 Skills 实现一套自定义的、可复用的工程实践规范。

1.Skills 文件结构概览

.claude/skills/
  ├── understand/          # 架构师 Skill
  │   ├── SKILL.md        # Skill 定义
  │   └── template.md     # 架构文档模板
  └── feature/            # 资深开发 Skill
      └── SKILL.md        # Skill 定义

核心理念:先理解(Understand)再实现(Feature),确保代码变更始终遵循已确立的架构规范。

  1. Understand Skill - 架构师的眼睛
作用:深度分析项目架构,生成结构化的架构文档。

运行命令/understand

![](https://mmbiz.qpic.cn/mmbiz_png/ZHWALfBGFkmQQib3oyYeA15gAB1bnIOtKDOpA4c5ibkSqib9luMSOCYYkiaU4oa05mgNe3nrPO8b0JFYywGeec9Vyw/640?wx_fmt=png&from=appmsg)

Skill 定义:深度分析当前项目的架构、Agent 配置及 MCP 集成,生成中文架构文档。

执行流程:

  1. 信息搜集(侦探模式)
  • 浏览项目文件结构和依赖关系。

  • 使用 grep 寻找关键字:mcp, LangChain, agent, middleware 等。

  • 提取核心配置和设计决策。

  1. 撰写报告(中文输出)
  • 基于项目实际代码生成架构文档。

  • 必须引用真实代码片段和行号(拒绝幻觉)。

  • 包含:技术栈、系统架构、MCP 集成、中间件机制等。

  1. 强制存档
  • 自动生成 docs/ARCHITECTURE.md 文件。

  • :这个文件将成为后续所有开发的“宪法”。

输出示例(以当前项目-旅游助手为例):

# 项目架构文档

## 核心技术栈
| 技术 | 版本 | 用途 |
|-----|------|------|
| LangChain | >=1.0.0 | Agent 框架 |
| langchain-mcp-adapters | >=0.0.8 | MCP 工具适配 |
| Qwen | qwen-turbo | AI 推理 |
| Gradio | >=4.1.0 | Web UI |

## 系统架构
┌─────────────────────┐
│    Gradio Web UI    │
└──────────┬──────────┘
           ▼
┌─────────────────────┐
│    Agent 核心层     │  (agent.py)
│   ├─ ChatTongyi     │
│   └─ Middleware     │  (middleware.py)
└──────────┬──────────┘
           ▼
┌─────────────────────┐                                                                     
│    MCP 工具层       │  (tools.py)
│    └─ 高德地图 API  │
└─────────────────────┘

3. Feature Skill:资深工程师的手术刀

作用:在 ARCHITECTURE.md 的指导下,安全地实现新功能或优化代码。

运行命令/feature

Skill 定义:基于 docs/ARCHITECTURE.md 的规范,安全地实现新功能或优化现有代码。

执行流程:

  1. 加载上下文(必读)
  • 优先读取 docs/ARCHITECTURE.md
  • 理解核心技术栈和设计模式。
  • 确认代码变更符合现有规范。
  1. 定位与规划
  • 使用 grep 找到相关代码文件。
  1. 先理解现有逻辑,再制定修改计划
  • 不要直接修改代码,先向用户汇报修改方案。
  1. 代码实现
  • 保持与现有项目的代码风格一致。

  • 参考架构文档中的模式示例(如 MCP 工具包装、中间件拦截)。

  1. 自我验证
  • 检查修改是否破坏现有配置结构。

  • 确保没有违反架构文档中的设计原则。

最终我们通过Claude Skills 完成了对项目代码的进一步优化,新增了深度思考的思考过程展示

修改结果:


Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐