大家好,我是越哥,专注AI 智能体以及企业 AI 落地。

这两天好多读者在问同一个问题:“越哥,最近 Claude Code 挺火, Agent Skill 是什么新科技?跟我平时写的 Prompt 有啥区别?”

今天,越哥就带大家把这个事儿彻底聊透。

我们从什么是 Agent Skill 讲起,剖析它如何解决“上下文爆炸”,如何通过“渐进式披露”优化上下文长度,并手把手教你在 Open Code 中创建你的第一个 Skill。

01

Agent Skill 的诞生背景——对抗上下文爆炸

1.1 什么是 Agent Skill?

简单来说,Agent Skill 是对 Agent 能力的模块化封装。

在 Claude Code 的定义中,Skill 是一种让 Agent 能够通过定义清晰的接口,动态地扩展其执行复杂任务能力的方式。

图片

Skills由说明文档、示例与元数据组成,便于不同智能体实现与复用,从而提高完成复杂任务时的可组合性与可靠性。

如果把 Agent 比作一个新入职的员工:

  • Prompt 是他的入职培训手册(告诉他该干什么)。

  • Tools(MCP/Function Calling) 是他的办公文具(笔、纸、电脑)。

  • Skill 则是他的职业技能认证(例如:他知道如何操作复杂的财务软件,但只有在需要报销时,他才会去翻阅那本厚厚的操作手册)。

图片

对于复杂的技能,SKILL.md 可以引用同一文件夹下的其他文件:脚本、配置文件、参考文档等。

智能体仅在需要时才加载这些资源。

例如,一个 PDF 处理技能的文件结构可能是:


skills/pdf-processing/├── SKILL.md              # 主技能文件├── parse_pdf.py          # PDF 解析脚本├── forms.md              # 表单填写指南(仅在填表任务时加载)└── templates/            # PDF 模板文件    ├── invoice.pdf    └── report.pdf

在 SKILL.md 中,可以这样引用附加资源:

  • 当需要执行 PDF 解析时,智能体会运行 parse_pdf.py 脚本

  • 当遇到表单填写任务时,才会加载 forms.md 了解详细步骤

  • 模板文件只在需要生成特定格式文档时访问

这种设计有两个关键优势:

  • 无限的知识容量:通过脚本和外部文件,技能可以"携带"远超上下文限制的知识。例如,一个数据分析技能可以附带一个 1GB 的数据文件和一个查询脚本,智能体通过执行脚本来访问数据,而无需将整个数据集加载到上下文中。

  • 确定性执行:复杂的计算、数据转换、格式解析等任务交给代码执行,避免了 LLM 生成过程中的不确定性和幻觉问题。

1.2 为什么需要 Skills

在没有 Skills 之前,你可能需要:

  • 每次对话都提供冗长的背景信息和指令。

  • 手动复制粘贴数据或 API 格式。

  • 反复纠正 AI 的输出格式。

有了 Skills,你可以:

  • 标准化流程:将最佳实践固化下来,确保每次执行任务都高质量、格式统一。

  • 提升效率:一键调用复杂功能,节省大量提示词输入和调试时间。

  • 知识复用:将公司内部知识、产品文档、API 规范等嵌入 Skill,让 Claude 记住并使用它们。

  • 能力扩展:通过 API 和工具调用,让 Claude 突破纯文本的限制,与真实世界的系统和数据互动。

02

Agent Skill 执行流程

2.1 核心痛点:Skill 解决了什么

  • 解决上下文爆炸(Context Bloat): 不再需要一次性把所有工具说明塞进 Prompt。

  • 实现渐进式披露(Progressive Disclosure): 只有当 Agent 认为需要某个技能时,才会加载该技能的详细文档和子指令。

  • 提高成功率: 减少冗余信息的干扰,让模型更专注于当前步骤的推理。

  • 复用与共享: 技能可以像 NPM 包或 Python 库一样被定义、存储和跨项目复用。

图片

2.2 Skill执行流程

从用户指令开始,先进行 Skill 意图识别,决定是否进入受控执行路径。

命中 Skill 后,系统加载 SKILL.md,建立工具权限与行为边界,再结合上下文进行推理。

只有在确实需要时才调用被允许的外部工具,否则在规则内完成逻辑。

最终结果经过约束整合后输出,用户的下一次输入触发新一轮完整流程。

图片

03

渐进式披露与上下文优化

3.1 大模型的注意力之重

我们常说大模型有 128K 甚至 1M 的上下文窗口,但在实际应用中,我们发现了一个扎心的事实:给的越多,错得越多。

这就是著名的 “Lost in the Middle”(迷失在中部) 现象。当你把几十个 API 文档、上百条规则、复杂的业务逻辑全部塞进 System Prompt 时,模型的推理能力会随着 Prompt 长度的增加而线性甚至指数级下降。

“Lost in the Middle”(长上下文中间丢失)现象是目前大语言模型(LLM)在处理长文本(Long Context)时的一个核心痛点。

简单来说,模型的性能呈现出一条 “U型曲线”:对位于文档开头和结尾的信息提取效果很好,但如果关键信息藏在中间,模型往往会忽略掉。

图片

3.2 渐进式披露(Progressive Disclosure)的艺术

这是 Agent Skill 的灵魂。

在传统的 Agent 设计中,我们往往在初始化时就把 readfile, writefile, searchdb, callweather_api 等所有工具的 JSON Schema 全丢给模型。

Agent Skill 改变了这种逻辑:它引入了一个“技能索引”。Agent 首先看到的是一组极简的技能描述。

只有当 Agent 明确表示“我要使用‘数据库迁移’技能”时,系统才会把该技能下复杂的参数定义、逻辑约束和示例代码加载进来。

这种“按需加载”的思想,极大地节省了 Token,也保护了模型的逻辑连贯性。

图片

在一个真实场景中:

  • 传统 MCP 方式:直接连接一个包含大量工具定义的 MCP 服务器,初始加载消耗 16,000 个 token

  • Skills 包装后:创建一个简单的 Skill 作为"网关",仅在 Frontmatter 中描述功能,初始消耗仅 500 个 token

当智能体确定需要使用该技能时,才会加载详细指令并按需调用底层的 MCP 工具。

这种架构不仅大幅降低了初始成本,还使得对话过程中的上下文管理更加精准和高效。

3.3 Skill 与 Prompt 的区别

  • Prompt 是静态约束: 它定义了 Agent 的性格、语气和全局规则。Prompt 过长会导致模型执行力下降。

  • Skill 是动态能力: 它是原子化的、确定性的功能块。你可以拥有 1000 个 Skill,但每次对话只激活其中的 2 个。

3.4 Skill 与 MCP (Model Context Protocol) 的区别

很多人会混淆两者。

其实它们处于不同的维度:

  • MCP 是“通信协议”: 它定义了模型如何连接到外部数据源(如 GitHub, Slack, Postgres)的标准接口。它解决的是“连接”问题。

  • Skill 是“逻辑封装”: 它更偏向于应用层。一个 Skill 内部可以调用多个 MCP 服务,也可以包含复杂的业务逻辑代码。

打个比方: MCP 是 USB 接口标准,而 Skill 是安装在电脑上的打印驱动程序或 Photoshop 插件。

04

实战演练——创建你的第一个 Skill

参考 Claude Code 的标准,我们将演示如何从零创建一个 Skill。

4.1 环境准备

目前,Agent Skill 的最佳实践场景是 Claude Code。

这是 Anthropic 推出的命令行工具,能够直接在你的本地代码库中运行,并根据需求自动调用 Skill。

但是呢,Claude 不对国内开放,对大众使用有门槛。

这里推荐大家使用,开源的 OpenCode。

4.2 OpenCode 如何安装

官方网址:

https://opencode.ai/

支持Mac OS、Windows、Linux。

不仅有命令行Cli,也有客户端。

推荐用命令行,以Mac为例,打开电脑终端(或Warp),输入下面命令,回车:

curl -fsSL https://opencode.ai/install | bash

图片

安装好以后,输入opencode回车,就能看到界面。

图片

如果你用过Claude Code可能会比较熟悉。

如果没用过也不要慌,你可以输入/model,就能看到大量免费模型,比如GLM-4.7等。

图片

你如果订阅了GPT、Gemini可以输入/connect

选中OpenAI或Google,打开浏览器登录账号授权后就能用Codex和Gemini模型。

4.3 安装使用Skill

安装Skill非常简单。

比如Obsidian CEO写的Skills最近超级火。

只需要打开Opencode,输入:

安装这里的skillshttps://github.com/kepano/obsidian-skills

模型 GLM-4.7 会自己下载安装。

图片

4.4 创建第一个Skill

最简单的Skill,可以只有一段提示词。

比如,创建一个能够根据图书名称生成canvas拆书笔记的skill

图片

图片

图片

图片

图片

测试下效果:

请帮我为《人类简史》创建一个拆书笔记 canvas

最后生成的效果如图:

图片

图片

05

总结

Agent Skill 不是一个简单的技术组件,它是一种新的 AI 编程范式。

它通过模块化解决了模型能力的边界问题,通过渐进式披露解决了长上下文的性能损耗问题。

核心要点复盘:

  • Skill vs Prompt: 别把所有东西都写在 Prompt 里,学会封装 Skill。

  • 渐进式披露: 保护你的上下文,只在需要时展示细节。

  • Open Code: 目前体验 Skill 机制的最佳入口。

  • 标准化: 尽量遵循类似 MCP 的标准,让你的 Skill 具备跨平台潜力。

📢 加入AI共创社群!

我们的AI社群聚集了一线AI高手, 每月一期AI训练营,社群陪跑,专属直播,专注于 扣子、Dify、n8n 等主流智能体平台的实战落地。

为了帮大家更快上手,我整理了《2025 AI 智能体实战手册》,包含100个智能体搭建教程以及智能体开发工具合集,价值超千元,限时免费分享。

图片

如果你想在今年真正学会用 AI,而不是每天收藏工具却不会落地,这份手册你一定要拿。 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐