从对话到协作,Skills 如何改变我们与 AI 共事

张开发
2026/4/3 11:18:42 15 分钟阅读
从对话到协作,Skills 如何改变我们与 AI 共事
一、什么是Skills1.1 一个直观的理解想象你要把一项工作交给新同事。如果不能用口口相传的方式只能通过文档一次性交接清楚你会准备什么你大概会准备一个交接大礼包里面包含这件事大致怎么做执行SOP和背景知识用什么工具、怎么操作工具说明要用到的模板、素材、历史案例可能遇到的问题和解决方案Skills 的架构几乎就是这个交接大礼包的数字版本。一个典型的 Skill 结构如下skill-name/ ├── SKILL.md # 核心指令文档必需 ├── scripts/ # 可执行的代码脚本可选 ├── references/ # 参考文档和规范可选 └── assets/ # 模板、素材等资源可选1.2 SKILL.md 是核心可以看到其他文件都是可选的只有SKILL.md是必需的。因为SKILL.md是整个 Skill 的大脑和说明书。它告诉Agent三件最重要的事第一什么时候用这个Skill--- name: word-to-markdown description: 将Word文档转换为Markdown格式支持智能格式识别、图片处理和批量转换 ---开头的这段元数据只有几十个 tokenAgent 启动时就会加载它。当用户输入例如把这个文档转成markdown时Agent就是通过匹配 description 来判断应该调用word-to-markdown这个Skill。第二具体怎么做SKILL.md的主体部分会详细说明任务的分步骤执行流程每个步骤的注意事项什么时候需要调用scripts里的脚本什么时候需要查阅references里的文档常见问题和解决方案第三做到什么标准好的SKILL.md可能还会包含输出格式规范质量检查标准边界情况的说明最佳实践建议...所以最简单的Skill可能只有一个SKILL.md文件用自然语言把一件事说清楚就够了。复杂的Skill则会在SKILL.md的指引下协调scripts、references、assets中的各种资源完成多步骤的复杂任务。这就是SKILL.md的核心地位它是Skill的指挥官其他文件都是它调度的资源。1.3 渐进式披露让AI既博学又专注那这里会有个问题。既然 Agent 在启动的时候就会加载 Skills如果给 Agent 装了上百个 Skills 会不会把它撑爆如果每次运行都要加载所有 Skills 会不会太慢答案是不会。Skills 有个很妙的设计叫渐进式披露Progressive Disclosure。这个概念大白话讲就像我们人类学习知识一样不可能同时把所有细节都记在脑子里而是先记住有什么知识需要时再深入学习具体内容。Skills采用了三层信息加载机制第一层元数据层始终加载只加载SKILL.md开头的name和description大约50-100个token。这部分就像是Skill的名片Agent启动时就会加载所有Skills的名片。这样做的好处是即使你有100个Skills也只需要几千个token来维持认知。Agent就像有个索引知道我会哪些技能但不需要记住每个技能的所有细节。第二层指令层触发时加载当Agent判断某个Skill与当前任务相关时才会读取完整的SKILL.md内容大约500-5000个token。这就像你遇到具体问题时才打开相关的操作手册详细阅读。不需要的Skills它们的详细指令就不会占用宝贵的上下文窗口。第三层资源层按需动态加载scripts、references、assets这些文件只有在SKILL.md明确指示时才会被读取。而且它们的大小没有限制因为不会一次性全部加载到上下文中。比如Agent在处理文档转换时读到SKILL.md中说对于复杂表格参考references/table-handling.md才会去读取那个参考文档。如果这个任务不涉及表格那个文档就永远不会被加载。这种设计的美妙之处在于你可以给Agent装备海量的知识库但每次运行时只会用到当前真正需要的那部分。就像图书馆藏书万册但你每次只会借阅几本。1.4 Skills与MCP各司其职的好搭档Skills和MCPModel Context Protocol经常被混淆甚至被当成竞争对手。但它们其实是互补关系解决的是完全不同的问题。维度MCPSkills核心痛点上下文膨胀严重渐进式披露按需加载上下文占用一次性加载所有工具定义可能占用数千到数万tokens初始仅30-50 tokens按需加载详细内容加载方式全量预加载所有工具schema一次性加载到上下文三层渐进加载元数据→指令→资源扩展性工具越多上下文占用越大受限于窗口大小可装备数百个Skills而不影响性能本质开放标准协议知识封装格式解决的问题连接性让Agent能访问外部工具和数据专业性让Agent知道如何使用这些能力提供的内容WHAT有什么能力可用HOW如何使用这些能力典型内容API接口、数据库连接、文件系统工作流程、最佳实践、领域知识形象比喻Agent的手脚工具箱Agent的大脑记忆经验库使用方式Agent调用MCP提供的工具Agent加载Skill中的知识开发门槛需要编程定义接口只需写文档描述方法为什么上下文占用差异这么大MCP的设计哲学是连接优先。为了让Agent知道有哪些工具可用MCP需要在启动时就把所有工具的定义包括参数、schema、使用说明全部加载到上下文中。这导致了一个问题在 MCP 工具很多的情况下会消耗大量的 tokens。比如一个包含22个工具的MCP服务器仅工具定义就需要约15,000 tokens在较小的上下文窗口中MCP工具定义可能占用35%以上的空间还没开始工作就已经撑了。而Skills采用完全不同的思路。通过渐进式披露每个Skill初始只暴露30-50个tokens的元数据name和description只有当Agent判断需要某个Skill时才会加载完整的SKILL.md约500-5000 tokensscripts和references则更是按需读取。这意味着即使是给Agent装备100个Skills上下文占用也只有约5,000 tokens的元数据远小于一个中等规模的MCP服务器。更重要的是这些元数据始终值得因为它们让Agent知道我能做什么而不是浪费在冗长的工具定义上。用一句话总结MCP让Agent能够做到更多事Skills让Agent能够做好这些事而且更高效。举个实际的例子让Agent写一份竞品分析报告。MCP的作用连接到Google Drive获取数据、访问GitHub读取竞品代码、调用Slack获取内部讨论Skills的作用指导Agent如何进行SWOT分析、报告结构应该是什么样的、数据可视化用什么配色方案两者配合能既有办法又有方法同时保持上下文的高效利用。这也是为什么2025年后越来越多人开始重视Skills —— 不是因为MCP不好而是因为上下文效率太重要了。二、如何使用Skills2.1 Claude Code本地运行的AI助理默认在本地已经安装好了 Claude Code直接从如何使用Skills开始。安装Skills有三种方式可以给Claude Code安装Skills方式一自然语言安装这种方式是最简单的找到对应 skill 的 github 地址直接在Claude Code中输入例如帮我安装skill项目地址是https://github.com/anthropics/skills/tree/main/skills/pptxClaude Code会自动下载、解压、配置好一切。新手推荐。方式二手动安装Claude Code 专门有一个文件夹来管理所有的Skill文件可以手动安装从GitHub或其他来源下载Skill文件包通常是.zip或直接clone项目解压后放到Skills目录不同操作系统的路径不一样Windows系统项目级你的项目路径\.claude\skills\例如E:\my-project\.claude\skills\全局级C:\Users\你的用户名\.claude\skills\Linux/macOS系统项目级./.claude/skills/全局级~/.claude/skills/项目级只对当前项目有效全局级则所有项目都能使用。建议把通用的Skills放在全局级项目相关的Skills放在项目级。Claude Code 2.1 版本更新了 skills 热加载功能修改或新创建的 skill 能及时生效。即以前修改~/.claude/skills下的工具文件必须重启会话才能生效若要调试还蛮痛苦的痛苦的。2.1 版本之后修改了即可生效允许开发者像编写脚本一样动态“编程”自己的 AI 助手。方式三插件市场官方推荐Claude Code支持插件市场功能可以像应用商店一样浏览和安装Skills。在Claude Code中输入/plugin marketplace add anthropics/skills这会注册Anthropic官方的Skills市场让你可以访问官方维护的所有Skills。使用如下命令/plugin这会打开一个交互式菜单这时候可以浏览所有可用的Skills查看Skill的描述和功能直接选择安装选择想要安装的 Skill 的名称输入一下命令安装/plugin install skill-name例如/plugin install pptx /plugin install brand-guidelines如果是 Claude Code 2.1 以及之后的版本安装完输入/查看所有可用的 slash 命令已安装的 Skills 应该会出现在自动补全列表中除了官方市场还有第三方市场可以添加Claude Code Skills Hub - 包含550个SkillsSkillsMP Marketplace - 社区驱动的Skills市场使用Skills安装好Skills后可以直接显示调用使用 /pptx 这个skill创建一个关于AI的演示文稿也可以说明需求Agent会自动选择合适的Skill帮我把这份报告做成PPT格式因为 SKILL.md 中的 description 不仅用于分类还会被Agent用来理解什么情况下应该用这个Skill。当需求描述与某个Skill的描述高度相关时Agent就会自动调用它。2.2 Coze云端协作的AI平台Coze 是字节跳出的AI Agent平台也支持Skills功能。前段时间刚出浅浅提一下。主要是云端 vs 本地的区别。维度Claude CodeCoze运行环境本地电脑云端服务器安装复杂度需要安装软件打开网页即用文件访问可访问所有本地文件只能访问上传的文件隐私性数据不离开本地数据在云端处理分享便利性需要打包分发分享链接即可定时任务电脑必须开机云端自动运行商业化难以直接变现可上架技能商店收费典型场景本地文件处理、隐私敏感任务团队协作、公开分享、自动化任务在Coze中使用Skills访问 https://space.coze.cn/左侧栏选择扣子编程可以直接上传skill文件.skill或.zip结尾文件或者在对话框中描述你的Skill需求Coze会自动生成Skill文件在右侧预览区测试Skill效果点击部署发布Skill可以选择上架到技能商店让其他人使用甚至可以设置付费Coze 适合那些需要分享给他人的Skills或者需要定时运行的任务比如每天早上自动生成资讯日报。如果你的Skills主要是个人的生产力工具需要操作本地文件Claude Code可能更合适。三、实战案例创建一个Word转Markdown的Skill浅浅的通过一个实际的例子看看创建一个skill是什么过程。3.1 从一个真实的需求开始假设你需要把Word文档转换成Markdown格式但是作为一个非开发者不懂什么 pandoc 工具也觉得使用这些工具很麻烦无法满足更细节的要求。你希望有一个真正懂你的转换工具它知道你喜欢什么样的标题层级表格应该怎么处理才好看图片要放在哪个目录批量转换时如何保持一致性这时候就可以选择创建一个专属的Skill。3.2 用skill-creator自动生成首先安装一个特殊的 Skill叫 skill-creator。它是专门用来创建其他Skill的Skill有点像工具制造厂。从GitHub安装帮我安装skill-creator地址https://github.com/anthropics/skills/tree/main/skills/skill-creator或从插件市场安装/plugin install skill-creator安装完成后告诉它你想要什么创建一个skill能够将Word文档.docx转换为Markdown格式 要求 1. 智能识别文档结构标题、段落、列表、表格 2. 正确处理图片提取到本地images目录 3. 保留超链接和文本格式加粗、斜体 4. 支持批量转换整个文件夹 5. 输出符合CommonMark标准的Markdownskill-creator会自动生成一个完整的Skill包包含例如以下结构word-to-markdown/ ├── SKILL.md # 核心指令文档 ├── scripts/ │ └── convert.py # Word转Markdown的Python脚本 └── references/ └── commonmark-spec.md # CommonMark格式规范参考3.3 生成的Skill是什么样的SKILL.md的内容概要开头是元数据部分--- name: word-to-markdown description: 将Word文档转换为格式良好的Markdown文件支持智能格式识别、图片处理和批量转换 --- # Word转Markdown Skill ## 何时使用 当用户需要将.docx文件转换为.md格式时然后是详细的执行流程文档分析如何识别标题、列表、表格格式转换不同Word样式对应的Markdown语法图片处理如何提取和引用图片质量检查转换后如何验证结果还有使用示例和注意事项确保Agent知道在各种情况下应该如何处理。scripts/convert.py 的作用这是一个Python脚本使用python-docx库读取Word文档按照SKILL.md中的规范进行转换。它处理那些靠自然语言描述不够精确的细节——比如表格的Markdown语法、图片的命名规则等。references/commonmark-spec.md的作用这是一个参考文档详细说明了CommonMark标准的语法规范。当Agent遇到复杂的格式问题时可以查阅这个文档来确保输出符合标准。所以具体流程就是当 Agent 在执行转换任务时会读取SKILL.md了解整体流程调用convert.py执行实际的转换工作如果遇到特殊格式查阅commonmark-spec.md根据转换结果生成最终的Markdown文件3.4 使用和迭代Skill创建完成后就可以直接使用了将report.docx转换为markdown或者批量转换将docs文件夹下所有Word文档转换为MarkdownAgent会自动识别这个需求应该调用word-to-markdown Skill然后按照SKILL.md中的指引完成转换。如果第一次转换的结果不理想怎么办你可以继续和Agent对话表格转换有问题列对齐不对Agent会基于你的反馈调整convert.py脚本中的表格处理逻辑或者更新SKILL.md中的转换规范。经过几轮迭代这个Skill就会越来越符合你的需求。当这个 Skill 优化完稳定后可以把它分享给任何一个有 word 转 markdown 需求的人他们不需要了解任何技术细节就能用上你总结出来的最佳实践。或者更进一步可以再基于这个Skill再创建新的Skills比如一个专门处理学术论文格式的Skill它继承word-to-markdown的能力再增加参考文献的特殊处理逻辑。这就是Skills的可组合性每个Skill都是独立的但可以相互嵌套、相互引用构建出越来越强大的能力体系。四、Skill的设计哲学知识的可移植性Skills把知识显式化为文件。这意味着可以用Git进行版本控制可以通过GitHub或文件共享可以在不同平台间迁移可以持续迭代优化这听起来很技术化但换个角度想这意味着你的经验不再是你个人的私有财产而变成了可以传承、可以复用、可以不断完善的团队资产。就像一本不断更新的操作手册每个使用者都可以贡献自己的改进。渐进式复杂度很多技术框架的问题是门槛太高。你想做一个简单的功能却要先理解一大堆概念、配置一堆环境、学习一堆语法。还没开始做热情就已经被磨灭了。而 Skills 的理念是极简起步按需扩展。最简单的Skill只有一个SKILL.md文件用自然语言把一件事说清楚就够了。不需要学编程不需要理解复杂的概念就像给新同事写工作邮件一样简单。当发现自然语言不够用时可以继续添加一个Python脚本来自动化某个步骤。当脚本变复杂时可以拆分成多个子脚本。当文档太长时可以把某些部分抽离成独立的参考文档。即使是非开发人员也可以做到这点因为这些脚本可以不用自己编写AI 会帮忙搞定。这种渐进式的复杂度让Skill的创建者能够边做边学而不是一开始就被庞大的架构吓退。更重要的是它让Skills能够有机生长——从一个小萌芽逐步发展成一个功能完善的系统。人机协作的新范式Skills很有意思的一个地方是是它重新定义了人机协作的方式。原先的 AI 应用要么把一切都预设好Workflow、规则引擎要么完全依赖AI的智能ChatGPT 那样的通用对话。前者太死板后者太不可控。Skills走的是一条中间路人类提供知识和方法AI提供推理和执行。这种协作方式充分发挥了各自的优势人类擅长积累经验、总结方法、设定规范AI擅长执行细节、处理变数、快速迭代。结果就是一个既专业又灵活的AI应用。从预设到响应式再深入一点这其实是从预设所有可能到响应实际情况的范式转变。传统的编程思维是我需要预想所有可能的情况为每种情况编写处理逻辑。但现实总是超出预期于是就不断地打补丁、加特例代码越来越复杂维护越来越困难。Skills 赋能的 Agent 采用响应式设计你告诉它目标和原则它根据实际情况动态调整策略。举个例子。一个文档转换的Skill你不需要预设所有可能的Word格式。你只需要告诉它标题应该转换为#开头、表格要保持对齐这些基本原则。遇到特殊的格式时Agent会基于它的理解进行推理给出最可能的处理方式。如果不确定它甚至会问你这个格式不太常见我这样处理可以吗这种从预设到响应的转变让AI应用具备了真正的适应性。它不再是僵化的工具而更像是一个能够学习和成长的合作伙伴。知识的模块化与组合性Skills 的本质是知识的模块化。这听起来很技术但其实和乐高积木的原理一样。每个Skill都是一个独立的知识模块它可以单独使用可以和其他Skills组合可以被嵌套在更大的Skill中可以作为其他Skill的基础这种组合性意味着N个Skills可以应对远超N种场景brand-guidelines pptx 符合品牌规范的PPT生成器web-scraping >五、Skills 到底有多强最简单的Skill只需要一个SKILL.md文件用自然语言把一件事说清楚。这意味着那些最懂业务的人——产品经理、分析师、律师、医生、教师等等可以直接创建AI应用而不需要把需求翻译给开发工程师。而开发工程师可以从重复性的翻译工作中解放出来专注于更有挑战性的技术问题。领域专家的经验和知识可以直接转化为生产力。这意义就很重大。而且 Skills 的智能上限是很高的因为 Skills 依托的是通用 Agent 的推理能力而不是预设的规则。当遇到超出预期的情况时使用 Skills 的 Agent 会基于对任务的理解进行推理可能会调用其他Skills可能即兴编写一段脚本可能向你询问确认。这种适应性和学习能力让它的应用场景远超传统AI应用。Skills 也很灵活只需要修改文档甚至直接告诉Agent下次这样做下次任务就会应用新的方法。这种快速迭代的能力让Skills特别适合那些还在探索阶段的场景。快速尝试不同的方法找到最优解后再固化下来极大地降低了验证想法的成本。当AI应用开发的门槛降低竞争不再是谁能开发而是谁有更好的方法论、更深的领域知识、更优的工作流程。这对有经验的人来说是好消息。核心竞争力变成对业务的理解、解决问题的方法、积累的经验。这些是AI短期内无法替代的。六、写在最后Skills的出现确实改变了我们与AI协作的方式。过去每次和AI对话都要从零开始反复解释同样的规则。现在这些知识和经验可以被封装、被复用、被传承。这种转变不仅是效率的提升更是对知识积累方式的重新思考。那些老员工脑子里的经验之谈那些团队多年摸索出的最佳实践不再随着人员流动而消失而是变成了可以传承的显性资产。一个人的能力总是有限的但当无数人的经验和知识通过Skills组合在一起时就能产生远超个体之和的集体智慧。就像乐高积木每个Skill都是独立的模块但可以自由组合应对各种复杂场景。

更多文章