最近半年,"Agent"这个词出现的频率越来越高。

OpenAI 在讲 Agent,Anthropic 在讲 Agent,Google 在讲 Agent,飞书也在讲 Agent。

然后紧跟着就是一堆新词:Skill、MCP、工作流、多模型路由、工具调用……

我相信很多人的状态和我一开始一样:每个词都听过,但凑到一起就分不清了。

  • Agent 和 Chatbot 有什么区别?
  • Skill 和 Prompt 有什么区别?
  • MCP 到底是什么,为什么突然到处都是?
  • 工作流和 Agent 又是什么关系?

这些问题我也困惑过。后来我做了一件事:把我每天在用的几个 AI 产品拆开看架构。

拆完之后发现,不管是 Claude Code、OpenClaw、飞书 CLI 还是 Figma AI,它们虽然形态不同,底层都在做同一件事。

搞懂了这个共同模式,Agent、Skill、MCP 的区别自然就清楚了。


01. 先用一个比方把三个概念讲清楚

在拆产品之前,先用一个最直观的比方把关系理清。

想象一个餐厅后厨的运作方式:

  • Agent = 主厨(懂菜系、能判断客人点的"随便来点好吃的"到底该上什么菜)
  • Skill = 菜谱(红烧肉:焯水 → 炒糖色 → 加料 → 炖40分钟,标准化的执行步骤)
  • MCP = 厨房里的设备和食材库(烤箱、炒锅、冰柜、调料架——主厨通过这些完成每一道菜)

这三者的关系是:

客人下单后,主厨(Agent)判断该做什么菜、按哪个菜谱(Skill)来做,做的过程中需要用什么设备和食材(MCP)就调用什么。

重点来了:

  • 同一口炒锅(MCP)可以被川菜厨师和粤菜厨师(不同 Agent)共用
  • 同一份菜谱(Skill)可以被不同厨师复用
  • 主厨的价值不在于他会用烤箱,而在于他能判断"这桌客人该上什么菜"

用餐厅后厨理解Agent架构

翻译成 AI 的语言:

概念 一句话定义 核心能力
Agent 一个面向具体目标的角色 理解意图 + 做决策 + 选择调什么能力
Skill 一套可复用的标准化执行流程 把业务逻辑封装成"输入 → 步骤 → 输出"
MCP 连接外部工具和数据的标准协议 让 AI 的手能"够到"真实的系统和数据

如果你记不住这张表,就记住这一句:

Agent 决定"做什么",Skill 决定"怎么做",MCP 决定"用什么工具做"。


02. 为什么你一定要分清这三个概念?

你对这三个概念的理解深度,直接决定了你能把 AI 用到什么程度。

很多人用 AI 的方式还停留在"问一句答一句"——这本质上是在用 Chatbot,不是在用 Agent。

Agent 和 Chatbot 的核心区别只有一个:

Chatbot Agent
能不能调工具 ❌ 只能对话 ✅ 能查数据库、操作文档、调用 API
能不能多步执行 ❌ 一问一答 ✅ 自己规划步骤、按顺序执行
有没有决策能力 ❌ 你问什么答什么 ✅ 自己判断该调什么能力

举个例子:

你问 ChatGPT"帮我查一下上个月德国市场的销量",它只能说"抱歉我没有你的数据"。

但如果是一个 Agent,它会:

  1. 先理解你要查什么(意图识别)
  2. 自动调用销量数据库的接口(MCP)
  3. 拿到数据后按模板整理成报表(Skill)
  4. 返回给你一份可以直接用的分析结果

从"能聊天"到"能干活",中间差的就是 Skill 和 MCP。


03. 第一个产品:Claude Code —— 目前最成熟的 Agent

我每天都在用 Claude Code,一开始只当它是个写代码的工具。

后来越用越深,才发现它本身就是目前最成熟的 Agent 产品——不是因为模型强,而是因为它的 Agent 架构设计得非常完整。

把它的架构拆开看:

CLAUDE.md(指令层:全局规范 + 项目规则 + 目录级指令,越近越优先)
    ↓
Skills(能力层:/commit、/review、/qa 等可复用工作流)
    ↓
MCP Server(连接层:Notion、Google Workspace、Figma 等外部工具)
    ↓
Hooks(守护层:工具调用前/后自动执行检查脚本)
    ↓
多模型切换(模型层:Opus / Sonnet / Haiku,按任务复杂度路由)

3.1 CLAUDE.md = 指令分层系统

Claude Code 有一个设计让我印象很深:指令是分层的。

它支持三级 CLAUDE.md 文件:

  • 全局级(~/.claude/CLAUDE.md):适用于你所有项目的通用规则
  • 项目级(项目根目录/CLAUDE.md):适用于当前项目的规则
  • 目录级(某个子目录/CLAUDE.md):只适用于特定模块的规则

越近的规则优先级越高。 比如你全局写了"用英文注释",但某个项目的 CLAUDE.md 里写了"用中文注释",那在这个项目里就会用中文。

这个设计对做 AI 产品的启发是:

Agent 的行为规范不能一刀切,要分层管理。全局约束管大方向,场景规则管具体行为,单次指令管临时调整。

3.2 Skills = 工作流封装

Claude Code 的 Skills 不是一个简单的 Prompt 模板,而是把一整套业务流程封装成一个可复用的命令

比如 /review 这个 Skill,它不是"帮我看看代码"这么简单。它背后包含了:

  • 审查哪些维度(安全、性能、可维护性)
  • 按什么标准判断(通过/需修改/拒绝)
  • 调用什么工具(读文件、跑测试、查 diff)
  • 输出什么格式(结构化的审查报告)

Skill 和 Prompt 的区别就在这里:

Prompt Skill
本质 一段文字指令 一整套业务流程
复杂度 单次对话 多步骤 + 工具调用 + 格式约束
复用性 每次重新输入 封装好后一个命令调用
质量稳定性 每次输出不一样 按标准流程执行,输出一致

我自己也封装了好几个 Skill。比如"文章改写"——以前每次改文章都要重新说"保持我的风格、融入过往案例、优化 SEO",现在直接一个命令搞定。

核心价值就一句话:把重复的提示词变成可复用的工作流。

3.3 MCP = 让 AI 的手能够到真实工具

MCP(Model Context Protocol)是 Anthropic 推出的一个标准协议,用一句话说:让 AI 能安全地调用外部工具和数据。

Claude Code 通过 MCP 接入了各种外部服务:

  • 接 Notion → AI 能读写你的文档和数据库
  • 接 Google Workspace → AI 能操作表格和文档
  • 接 Figma → AI 能读取设计稿甚至操作画布

MCP 的价值不在协议本身,而在于它让 AI 从"只能聊天"变成了"能操作真实业务工具"。

我现在搭的工作流里,AI 可以自己去 Notion 里查资料、往 Google Sheets 里写数据、读取 Figma 设计稿生成代码。这些操作以前都需要我手动做,现在全部是 AI 通过 MCP 自动完成的。

3.4 Hooks = 自动化守护

这是 Claude Code 里一个容易被忽略但非常重要的设计:Hooks 机制。

你可以配置"在某个工具调用前/后,自动执行一段脚本"。比如:

  • 代码提交前自动跑格式检查
  • 文件写入后自动跑测试
  • 任何破坏性操作前弹出确认

这给了我一个很大的启发:Agent 的输出质量不能只靠 Prompt 约束,还需要自动化的守护机制。

光告诉 AI"请你仔细检查"是不够的,你需要在流程层面加上自动化的"安全网"。

3.5 多模型路由 = 按任务分配资源

Claude Code 支持在 Opus(最强但最贵)、Sonnet(均衡)、Haiku(最快最便宜)之间切换。

成本差异巨大——Opus 的价格可能是 Haiku 的 10 倍以上。

但产品设计上做得很聪明:不是让用户自己选,而是按任务复杂度动态推荐。 复杂的架构设计用 Opus,简单的格式调整用 Haiku。

模型选择不是"用最好的",而是"按任务匹配最合适的"。 这个思路在做任何 AI 产品时都适用。


04. 第二个产品:OpenClaw —— Agent 运行的最小完整框架

OpenClaw 是一个可以自己部署的 Agent 框架。我在一台 68 块钱/年的阿里云 VPS 上跑起来了,接了飞书消息通道和浏览器自动化。

如果说 Claude Code 是一个成熟的 Agent 产品,那 OpenClaw 就是一个让你自己搭 Agent 的框架

它的架构非常清晰,三层:

消息入口层:飞书 / / / Web(统一消息网关)
    ↓
AI Agent 运行层:模型路由 + Skill/MCP 调用编排
    ↓
工具执行层:浏览器自动化 / 定时任务 / API 调用 / 网页抓取

4.1 消息网关 = 把所有入口统一

OpenClaw 最让我印象深刻的设计是:它先解决的不是"AI 怎么回答",而是"用户从哪里来"。

你可以同时接飞书和 /。用户在飞书群里 @ 机器人,和在 / 里私聊机器人,背后调用的是同一套 Agent 能力。

这个设计在企业场景里特别有价值——不同团队可能用不同的沟通工具,但 Agent 的能力只需要建设一套。

4.2 Skills 和 MCP 在 OpenClaw 里的关系

OpenClaw 把 Skills 和 MCP 的分工讲得很清楚:

  • Skills = 可直接复用的小能力包(浏览器抓取、内容生成、定时任务等)
  • MCP = 连接外部系统的协议层(飞书 API、数据库等)

两者组合使用:一个 Skill 内部可能调用多个 MCP 工具来完成任务。

比如"帮我总结今天群里聊了什么"这个任务:

  • Skill(流程编排):读取消息 → 筛选时间范围 → 摘要生成 → 格式化输出
  • MCP(工具连接):调用飞书 API 拉群消息

Skill 定义了"做什么、怎么做",MCP 解决了"怎么连、怎么拿数据"。

4.3 对比 Claude Code:通用框架 vs 成熟产品

维度 OpenClaw Claude Code
定位 自己搭的 Agent 框架 开箱即用的 Agent 产品
灵活性 高,什么都能改 中,在框架内定制
上手门槛 需要部署 VPS 装个 CLI 就行
适用场景 想完全自控 Agent 能力 想快速用上 Agent 能力

但它们验证了同一件事:Agent 的价值不在模型本身,在于你连接了什么工具、编排了什么流程。


05. 第三个产品:飞书 CLI —— Agent-first Design 的典型

飞书官方出了个 CLI 工具(lark-cli),6 天拿了 5000 star,200+ 命令,19 个 AI 技能包。

我之前写过一篇详细的实测文章。这次换个角度,从架构层面聊聊它为什么值得关注。

5.1 一个颠覆认知的设计哲学

lark-cli 最让我意外的不是它有多少命令,而是它的设计哲学:

这个工具不是给人用的,是给 AI Agent 用的。

安装的时候它会自动扫描你电脑上的 AI 工具——Claude Code、Cursor、Windsurf、Codex 等——然后把 19 个技能包自动注入到所有这些工具里。

你不需要记任何命令。装完之后跟 Claude Code 说"帮我查今天有什么会议",AI 自己就会调用飞书的日历 API 查询。

这意味着什么?意味着工具设计的"第一用户"正在从人变成 AI Agent。

5.2 Agent-friendly 的 API 设计

lark-cli 的命令设计天然对 Agent 友好:

  • 结构化输入/输出:不是自由文本,而是明确的参数和 JSON 返回
  • dry-run 预览:执行前先预览结果,Agent 确认后再真正执行
  • 权限自动管理:安装时自动申请合理权限,不需要人工配置
  • 安全扫描:每个 Skill 都有独立的安全评分

我测试的时候,跟 Claude Code 说了一句"帮我给某个群发条消息",AI 自己做了三件事:

  1. 搜索群名找到目标群
  2. 用 dry-run 预览要发的内容
  3. 确认后发出消息

全程我没查过文档,没手动拼过参数。

5.3 这对我们做产品的启发

如果你在做企业内部系统,或者做任何会被 AI Agent 调用的工具,lark-cli 的设计思路值得参考:

  1. API 的第一用户可能不再是人,而是 AI Agent — 接口设计要对 Agent 友好
  2. 结构化 > 自由文本 — Agent 需要明确的输入格式和输出格式
  3. 支持预览和确认 — 给 Agent 一个"试一试再正式执行"的能力
  4. 权限要明确 — Agent 调用时需要知道自己能做什么、不能做什么

我把这个趋势总结为 Agent-first Design——未来越来越多的工具,设计时要优先考虑 AI Agent 怎么调用,其次才是人怎么操作。


06. 第四个产品:Figma AI Agent —— 从"辅助"到"执行"

Figma 最近推出了 AI Agents on Canvas。这个更新的力度比我预想的大很多。

6.1 之前 vs 现在

旧模式 新模式
AI 出建议,人来执行 AI 直接在画布上操作
生成的是图片或描述 生成的是可编辑的 Figma 图层
不感知你的设计系统 读取你的组件库和变量

底层是通过 MCP 协议实现 AI 和 Figma 的双向通信——AI 调用的是 Figma 的操作 API,不是生成图片贴进去,而是真的在操控图层

6.2 Skills 决定一切

Figma AI Agent 好不好用,很大程度上取决于你的 Skills 写得好不好。

Skills 在这里是一个 Markdown 文件,本质上是给 AI 的"设计规则说明书"。你在里面写清楚:用什么颜色、用哪些组件、间距怎么定义、按钮圆角多少,AI 就会照着来做。

不写 Skills,AI 就是在乱猜。写好 Skills,AI 才能真正用你的设计系统生成一致的设计。

这个经验跟所有 Agent 产品都相通:

Agent 的输出质量 = 模型能力 × Skills 的质量。 模型是公共品,大家用的都差不多。真正拉开差距的是 Skills——也就是你把业务知识、流程规范、质量标准封装得多好。

6.3 MCP 的价值不只是"读",更在于"写"

之前 AI 和 Figma 的集成,基本上是单向的——AI 读取设计稿,然后在外面生成代码。

现在通过 MCP,变成了双向的——AI 不仅能读,还能往 Figma 里写。这意味着 AI 从"参谋"变成了"执行者"。

这是 AI 产品化的一个重要趋势:从"提供建议"到"直接执行"。


07. 拆完四个产品,我发现了同一套底层模式

把 Claude Code、OpenClaw、飞书 CLI、Figma AI 放在一起看,它们虽然产品形态完全不同,但底层架构惊人地一致。

我把它总结为 6 层 Agent 架构模型

6层Agent架构模型

┌──────────────────────────────────────────┐
│  第1层:指令层                            │
│  全局规范 + 场景规则 + 单次指令            │
│  越近越优先,分层覆盖                      │
├──────────────────────────────────────────┤
│  第2层:Agent 层                          │
│  按角色/场景拆分                           │
│  每个 Agent 有明确的能力边界               │
├──────────────────────────────────────────┤
│  第3层:Skill 层                          │
│  把业务流程封装成可复用的标准化模块          │
│  一个 Skill 可以被多个 Agent 调用          │
├──────────────────────────────────────────┤
│  第4层:MCP 层                            │
│  连接外部工具和数据源                      │
│  先开放读操作,再开放写操作                 │
├──────────────────────────────────────────┤
│  第5层:模型层                            │
│  多模型路由,按任务复杂度动态选择           │
│  不是用最好的,是用最合适的                 │
├──────────────────────────────────────────┤
│  第6层:守护层                            │
│  自动化质量检查                            │
│  Hooks / 评分反馈 / 人工确认               │
└──────────────────────────────────────────┘

每个产品对这 6 层的侧重点不同:

产品 最突出的层 设计亮点
Claude Code 指令层 + 守护层 CLAUDE.md 三级分层,Hooks 自动化守护
OpenClaw MCP 层 + 模型层 消息网关统一入口,多模型自由切换
飞书 CLI Skill 层 + MCP 层 19 个标准化技能包,Agent-first API 设计
Figma AI Skill 层 Skills 质量直接决定输出质量,MCP 双向通信

但 6 层都不可少。 缺了指令层,Agent 不知道该遵守什么规则;缺了 Skill 层,Agent 只能闲聊不能干活;缺了 MCP 层,Agent 的手够不到真实数据;缺了守护层,Agent 的输出质量无法保证。


08. 一张图讲清楚 Agent、Skill、MCP 的关系

怕你前面看完还是有点模糊,用一个具体场景把三者串起来:

场景:用户问"帮我查一下 A 产品在德国市场上个月的销量,顺便生成一段促销文案"

Agent·Skill·MCP协作全流程

用户发出请求
    ↓
Agent(产品方案专家)接收后判断:
    "这里有两个任务——一个是数据查询,一个是内容生成"
    ↓
任务1:调用 Skill「销量查询」
    ├── 步骤1:解析意图 → 产品A、德国、上个月
    ├── 步骤2:调用 MCP → 连接销量数据库,查询结果
    ├── 步骤3:调用 MCP → 连接库存数据库,补充库存信息
    └── 步骤4:按模板格式化数据
    ↓
任务2:调用 Skill「促销文案生成」
    ├── 步骤1:把任务1的销量数据作为上下文注入
    ├── 步骤2:调用 MCP → 检索产品知识库,获取卖点信息
    └── 步骤3:按促销文案模板生成输出
    ↓
Agent 组装两个任务的结果,返回给用户

三者各自的角色:

  • Agent 做了判断和编排——识别出两个任务,决定先查后写,最后组装结果
  • Skill 做了执行——每个任务有标准化的步骤
  • MCP 做了连接——实际去查数据库、检索知识库

如果没有 Agent:用户得自己把任务拆开,分别去两个系统操作
如果没有 Skill:Agent 每次都要重新"想"怎么做,输出不稳定
如果没有 MCP:Agent 只能编故事,没法查到真实数据


09. 三个我越来越确信的判断

拆完这四个产品,加上自己实际搭 Agent 工作流的经验,有三个判断越来越清晰:

判断一:AI 产品的壁垒不在模型,在于连接和编排

模型是公共品——GPT、Claude、Gemini,大家都能用。

但你的 Milvus 向量库里有什么数据、你的 Skill 编排了什么业务流程、你的 MCP 连接了哪些内部系统——这些别人复制不了。

一个只用通用模型的 Chatbot,和一个接了内部数据库 + 知识库 + 业务 API 的 Agent,解决问题的能力完全不在一个量级。

判断二:Agent 的能力边界必须在设计阶段就定义

很多人做 AI 产品的思路是:先上一个通用模型,让用户随便问,看看能不能答对。

这个思路的问题是:模型什么都能"答",但不是什么都能"答对"。

更好的方式是:

  1. 先定义 Agent 能做什么、不能做什么(能力边界)
  2. 对于能做的,用 Skill + MCP 保障执行质量
  3. 对于不能做的,明确拒绝或引导到人工
  4. 对于不确定的,标注置信度或加人工确认

Claude Code 的 Hooks、Figma AI 的 Skills 规范、OpenClaw 的权限系统,本质上都是在做同一件事:给 Agent 划定能力边界,让它在边界内做到最好,而不是在边界外胡说。

判断三:从"提供信息"到"提供可执行的行动建议"

以前 AI 产品的输出标准是"回答准确"。

现在顶级 Agent 产品的输出标准已经变了——不是给你一个准确的知识点,而是给你一个可以直接拿去用的东西

  • 不是"这两个产品的参数如下",而是"面对客户时你可以这样说"
  • 不是"翻译结果如下",而是"已按品牌规范翻译并通过术语检查"
  • 不是"代码有这些问题",而是"已修复并通过测试"

从"提供信息"到"提供可直接执行的行动建议"——这是 AI 产品输出标准的根本转变。


10. 如果你想自己搭一个 Agent 工作流

看完这些,如果你也想动手试试,我的建议是从最简单的开始:

入门路径:Claude Code + Skills + MCP

  1. 先装 Claude Code,用起来再说
  2. 封装一个你自己的 Skill——找一个你每天重复做的任务(写周报、整理笔记、审查文档),把流程封装成一个 Skill
  3. 接一个 MCP Server——Notion、Google Workspace 都有现成的 MCP,接上后 AI 就能操作你的文档和表格
  4. 写好 CLAUDE.md——把你的工作规范、偏好、常用术语写进去,让 AI 按你的标准来

进阶路径:OpenClaw + 自定义 Agent

如果你想完全自己控制 Agent 的行为:

  1. 租一台最便宜的 VPS(我用的 68/年的阿里云)
  2. 装 OpenClaw
  3. 接消息通道
  4. 配置模型和 Skills
  5. 逐步扩展 MCP 工具

不管走哪条路径,核心都是同一件事:

找到一个真实的、高频的、有数据支撑的场景,用 Agent + Skill + MCP 跑通它。


最后

回到开头的问题:Agent、Skill、MCP 到底怎么分?

答案很简单:

  • Agent = 谁来做(角色 + 判断 + 决策)
  • Skill = 做什么(流程 + 步骤 + 标准)
  • MCP = 用什么做(工具 + 数据 + 连接)

这三个概念不是三个独立的东西,而是 Agent 产品的三个必要组成部分

缺了任何一个,Agent 要么不知道该做什么(缺 Skill),要么做不了真正的事(缺 MCP),要么没有判断力只能机械执行(缺 Agent 的决策能力)。

搞懂了这个,你再看任何 AI Agent 产品,都能快速看到它的架构在哪、长板在哪、短板在哪。

这比记住一堆术语有用得多。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐