本书作者:测试开发刚哥,文章版权归个人所有,未经授权请勿转载。

Anthropic 官方专门写了一篇文章来解释。看完之后你会发现,这几个概念不仅不重复,反而各有分工,组合起来才能发挥完整的 AI 能力。

先搞懂五个概念分别是什么

Skills:一本随时能翻的操作手册

Skills 是一个文件夹,里面装着指令、脚本和资源文件。Claude 会在需要时自动发现并加载它。

你可以把 Skills 理解成给 Claude 准备的专业培训手册。比如你写一个"Excel 报表生成"Skill,里面包含公司要求的固定格式、公式模板和 Python 脚本。以后每次让 Claude 做报表,它就知道该按什么标准来。

什么时候用 Skills? 当你发现自己在多个对话里反复输入同样的指令时,就该把它做成 Skill 了。Skills 是可复用的、跨对话持久存在的。

Prompts:你当场说的一句话

Prompts 就是你在对话框里输入的那段话。它是一次性的、临时的,对话结束就没了。比如你让 Claude"帮我总结这篇文章"或者"把这段代码改成 Python 风格",都属于 Prompts。

什么时候用 Prompts? 当你只是临时给个指令、提供即时上下文,或者在进行一轮对话时,用 Prompts 就够了。

什么时候用 Skills 替代 Prompts? 如果你发现自己跨多个对话反复输入同样的指令,就该把它做成 Skill 了。比如"按团队代码规范检查空指针、并发安全、SQL 注入"、“周报按本周进展、风险问题、下周计划三段式输出"这类经常要重复的要求,做成 Skill 之后就不用每次都重新解释一遍,也能保证输出更稳定。

Projects:一个项目的专属资料室

Projects 是一个带有自己知识库和对话历史的"项目空间”。你可以在里面上传文档、设置自定义指令,进入这个项目后的所有对话都能访问这些背景知识。

什么时候用 Projects? 当你需要为某个特定项目提供固定的背景资料时,比如产品规格书、市场调研报告、竞品文档等。Projects 提供的是静态的背景知识,进入项目就始终加载。

什么时候用 Skills 替代 Projects? Projects 给 Claude 提供特定工作领域的持久上下文——比如公司代码库、一个研究项目、一个长期客户合作。Skills 则是教 Claude 怎么做某件事。一个 Project 可以包含你产品发布的全部背景,而一个 Skill 可以教 Claude 团队的写作标准或代码审查流程。如果你发现自己跨多个 Project 复制同样的指令,那就是该创建 Skill 的信号。

Subagents:一个专职的 AI 同事

Subagents 是独立的任务执行助手,只在 Claude Code 和 SDK 中可用。每个 Subagent 有自己的上下文窗口、自定义提示词和特定的工具权限。

什么时候用 Subagents? 当你需要把某个复杂任务交给一个专门的"AI 员工"独立处理时。比如你可以创建一个只读权限的代码审查 Subagent,它能看代码但不能改代码,既安全又专注。

什么时候用 Skills 替代 Subagents? 如果多个 Agent 或对话需要同样的专业知识——比如安全审查流程或数据分析方法——那就创建 Skill,而不是把这些知识硬编码到各个 Subagent 里。Skills 可移植、可复用,而 Subagents 是为特定工作流量身定制的。用 Skills 教任何 Agent 都能用的专长;用 Subagents 当你需要独立的、带特定工具权限和上下文隔离的任务执行。

MCP:连接外部世界的万能插头

MCP(Model Context Protocol)是 Claude 连接外部系统的开放标准。想让 Claude 访问 Google Drive、Slack、GitHub、数据库等外部工具,就得靠 MCP。

什么时候用 MCP? 当你需要 Claude 访问外部数据或工具时。如果你在解释"如何使用某个工具"或"遵循什么流程",那是 Skill 的事;但如果你需要 Claude 首先能连接到数据库或文件,那就是 MCP 的事。

什么时候用 Skills 替代 MCP? MCP 负责让 Claude 连接到数据;Skills 教 Claude 拿到数据后该做什么。如果你在解释"如何使用某个工具"或"遵循什么流程"——比如"查数据库时先按日期范围过滤"或"Excel 报表用这些特定公式格式化"——那是 Skill 的事。但如果你需要 Claude 首先能连接到数据库或文件,那就是 MCP 的事。两者配合使用:MCP 负责连接,Skill 负责流程知识。

一张表看懂区别

维度 Skills Prompts Projects Subagents MCP
提供什么 流程知识 即时指令 背景知识 任务委派 工具连接
持久性 跨对话 单次对话 项目内 跨会话 持续连接
包含什么 指令+代码+资源 自然语言 文档+上下文 完整代理逻辑 工具定义
何时加载 动态按需 每轮对话 项目中始终 被调用时 始终可用
能包含代码 是 否 否 是 是
最适合 专业专长 快速请求 集中上下文 专业任务 数据访问

实际场景:什么时候该用哪个?

场景一:统一团队的代码审查标准

你希望每次代码审查都遵循同样的规范——检查安全性、命名风格、注释完整性。如果你每次都手动写一遍要求,太累了。

解决方案: 创建一个"代码审查"Skill,把审查标准、检查清单和自动化脚本打包进去。以后 Claude 看到代码审查任务,就会自动调用这个 Skill。

场景二:让 Claude 连接公司数据库查数据

你需要 Claude 查询数据库中的订单信息,并且查询时必须先按日期范围过滤。

解决方案: 用 MCP 连接数据库(让 Claude 能访问数据),再用 Skill 定义查询流程(告诉 Claude 怎么查、怎么过滤)。两者配合使用:MCP 负责连接,Skill 负责流程。

场景三:管理一个产品开发项目的全部背景

你有一个产品开发项目,里面有产品规格书、用户研究报告、设计稿等大量资料。你希望 Claude 在讨论这个项目时始终能参考这些资料。

解决方案: 创建一个 Project,把所有项目文档上传进去。这样每次在这个项目里对话,Claude 都能自动获取背景知识。如果还需要生成技术文档或分析用户反馈,可以搭配相应的 Skills。

场景四:让一个专门的 AI 助手处理数据分析

你需要定期做数据分析,但不希望每次都在主对话里处理,而是希望有一个独立的"数据分析师"来处理。

解决方案: 创建一个数据分析 Subagent,给它配置专门的提示词和数据访问权限。这个 Subagent 还可以调用 pandas-analysis Skill 来按照团队约定的方式处理数据。

场景五:MCP + Skills 组合拳

你想让 Claude 自动从 Google Drive 读取竞品简报,用标准框架分析,然后生成一份 Excel 报告。

解决方案:

  1. 用 MCP 连接 Google Drive,让 Claude 能读取文件
  2. 创建一个"竞品分析"Skill,定义分析框架和输出格式
  3. 创建一个"Excel 报表"Skill,确保输出符合公司模板

Claude 会自动识别需要哪些 Skills,通过 MCP 获取数据,然后按 Skills 定义的流程完成整个任务。

常见问题

Skills 是怎么工作的?

Skills 使用一种叫"渐进式加载"的机制来保持高效。

Claude 不会一次性把所有 Skills 的内容都加载进来,而是分三步:

  1. 扫描元数据:Claude 先快速浏览所有 Skills 的名称和简介(每个只占约 100 个 token),判断哪些和当前任务相关。
  2. 加载完整指令:如果某个 Skill 匹配,Claude 才会加载它的详细指令文件(SKILL.md)。
  3. 按需加载资源:如果 Skill 包含可执行代码或参考文件,只有在真正需要时才加载。

这意味着你可以安装几十个甚至上百个 Skills,平时完全不占上下文空间,需要时瞬间激活。

Skills 和 Subagents 怎么选?

  • 用 Skills:当你希望任何 Claude 会话都能加载和使用的能力。Skills 像培训材料,让 Claude 在特定任务上变得更专业。
  • 用 Subagents:当你需要独立的、自包含的 AI 助手来独立处理任务。Subagents 像有自己上下文和工具权限的专职员工。
  • 一起用:你可以让 Subagent 调用 Skills。比如一个代码审查 Subagent 可以使用语言特定的最佳实践 Skill,把 Subagent 的独立性和 Skills 的可移植专长结合起来。

Skills 和 Prompts 怎么选?

  • 用 Prompts:当你给一次性指令、提供即时上下文,或者在进行对话来回时。Prompts 是反应式的、临时的。
  • 用 Skills:当你有需要反复使用的流程或专长时。Skills 是主动式的——Claude 知道什么时候该用它——而且跨对话持久存在。
  • 一起用:Prompts 和 Skills 天然互补。用 Skills 提供基础专长,用 Prompts 为每个具体任务提供上下文和细化要求。

Skills 和 Projects 怎么选?

  • 用 Projects:当你需要为某个特定项目提供固定的背景知识和上下文时。Projects 提供始终加载的静态参考资料。
  • 用 Skills:当你需要只在相关时才激活的流程知识和可执行代码时。Skills 提供按需加载的动态专长,节省上下文窗口。
  • 一起用:比如一个"产品开发"Project 包含产品规格和用户研究,搭配用于创建技术文档和分析用户反馈数据的 Skills。

核心区别: Projects 说的是"这是你需要知道的",Skills 说的是"这是做事的方法"。Projects 提供你工作的知识基地,Skills 提供在任何对话、任何项目中都能用的能力。

Subagents 能使用 Skills 吗?

可以。在 Claude Code 和 Agent SDK 中,Subagents 可以像主 Agent 一样访问和使用 Skills。这让专职 Subagent 能够利用可移植的专长,形成强大的组合。

总结一下

把这五个概念串起来,可以用一句话概括各自的定位:

  • Prompts = 当场吩咐一句
  • Skills = 把做事的方法写进操作手册
  • Projects = 给 AI 搭一个项目档案室
  • Subagents = 请来专职的 AI 同事
  • MCP = 打通所有外部系统的总线

它们不是互相替代的关系,而是互补的积木。Prompts 解决即时沟通,Skills 解决可复用流程,Projects 解决项目背景,Subagents 解决任务隔离,MCP 解决外部连接。搞清楚各自的边界,你就能像搭乐高一样,组合出适合自己的 AI 使用方案。

参考:https://claude.com/resources/articles/skills-explained