Agent Skill(Agent Skills)是什么?如何构建?从使用到原理一次讲清 2026-01-12 生活,记录 暂无评论 43 次阅读 # Agent Skill(Agent Skills)是什么?如何构建?从使用到原理一次讲清 随着 Cursor、VS Code、Claude Code、Codex 等开发工具把「AI 代理(Agent)」带进日常工作,一个现实问题越来越突出:AI **能不能干活**不再稀缺,稀缺的是 AI **能不能把活干好、且稳定地干好**。Agent Skill(也常被称为 Agent Skills)正是为此而生的一种“可复用工作规范”与“渐进式披露”机制。 --- ## 1. Agent Skill 解决的核心痛点:把“好”的标准固定下来 很多任务(行业分析、会议总结、周报、客服话术、合规审查等)不是“写得通顺”就能交付的。你往往还需要: - 符合团队/公司的固定格式与口径 - 符合老板/客户的关注点(重点、边界、禁区) - 可审核、可复现、质量稳定(不是碰运气) 传统的做法是:每次对话都粘贴一大段要求或反复纠错。Agent Skill 的思路更工程化:**把标准提前写清楚并固化为技能包**,让模型每次按同一套规则执行,从而稳定输出。 一句话概括: - MCP / Agent 更多在解决“AI 能调用哪些工具、能不能干活”; - Agent Skill 更侧重“AI 如何把活干好、结果如何稳定”。 --- ## 2. Agent Skill 到底是什么:概念与落地形态 **概念上**:Agent Skill 是一套可复用的做事规范与经验(像“随时可翻阅的说明文档”)。 **技术上**:Agent Skill 通常就是一个文件夹,至少包含一个 `skill.md`,可选包含参考资料与脚本。 一个典型 Skill 目录可以长这样: ``` 会议总结助手/ skill.md # 必需:技能说明与执行规则 集团财务手册.md # 可选:Reference(按条件触发读取) upload.py # 可选:Script(按条件触发执行) ``` `skill.md` 一般由两部分组成: 1) **元数据(metadata)**:写在顶部 YAML 区块里,至少包含 `name`、`description` 2) **指令(instructions)**:正文部分,定义流程、规则、格式、注意事项、示例等 示例(模板级): ```md --- name: 会议总结助手 description: 总结会议录音文本,按“参会人员/议题/决定”格式输出,并按需给出合规提醒或执行上传。 --- ## 输出结构 - 参会人员: - 议题: - 决定: ## 规则 1. 不臆测;缺失信息写“未提及” 2. 必须列出可执行的决定项(负责人/截止时间如有) 3. 当出现“钱/预算/采购/费用”等,触发【财务提醒】并读取 Reference:集团财务手册.md 4. 当用户要求“上传/同步/发送到服务器”等,触发【上传】并运行 Script:upload.py ``` --- ## 3. 从使用到原理:渐进式披露(Progressive Disclosure) Agent Skill 最关键的机制是:**渐进式披露 / 按需加载**,用更少 token 换更稳定的行为。 你可以把它理解为三层结构: ### 第 1 层:元数据层(目录) - 模型在每次任务开始前,会看到“所有 Skill 的 `name` + `description`” - 作用:让模型判断“这次请求该用哪个 Skill” - 成本:很轻量,相当于技能目录 ### 第 2 层:指令层(skill.md 正文) - 只有当模型/宿主工具判断“命中了某个 Skill”后,才会把该 Skill 的完整 `skill.md` 正文加载给模型 - 作用:把“怎么做、按什么标准做”明确落地 - 这一步就是经典的“按需加载” ### 第 3 层:资源层(Reference / Script 等) 在指令层基础上进一步“按需中的按需”: - **Reference(读)**:条件触发后才读取文件内容,并放入模型上下文作为依据 - 例:只有会议内容涉及费用时,才加载《集团财务手册.md》 - **Script(跑)**:条件触发后执行脚本,但通常**不需要把脚本内容放进上下文** - 例:用户要求上传时,执行 `upload.py`,模型主要关注“如何执行 + 执行结果” 这让 Skill 可以既“很懂规则”,又不会因为规则/资料/代码太多而把上下文撑爆。 --- ## 4. 基础用法:用 Skill 把格式与标准一次讲清 以“会议总结”为例,不用每次都重复要求,你把规则写进 Skill: - 固定输出结构:参会人员、议题、决定 - 固定质量标准:不臆测、信息缺失要标注、决定要可执行(负责人/时间) - 可提供示例输入输出,减少模型误解 宿主工具(如 Claude Code 等)的典型交互是: 1) 你发出请求:“请总结以下会议内容” 2) 工具把“用户请求 + 技能目录(元数据)”发给模型 3) 模型判断命中 Skill,工具询问是否启用 4) 同意后才加载该 Skill 的正文指令并生成结果 --- ## 5. 高级用法一:Reference,让资料在“需要时才出现” 当你希望总结不仅复述,还要在某些条件下做“专业提醒”(财务/法务/安全/品牌口径),直接把所有条款塞进 `skill.md` 会导致文件臃肿,且很多会议根本用不上。 Reference 的方式是: - 把资料独立成文件(如 `集团财务手册.md`) - 在 `skill.md` 写清楚**触发条件**与**读取后的处理规则** 效果是: - 无关会议不加载财务资料,token 消耗为 0 - 一旦命中条件,才读取并据此输出“是否超标、需谁审批”等提醒 --- ## 6. 高级用法二:Script,让 Skill 能“动手执行” 如果你希望总结生成后还能自动化做事(上传、同步、写入数据库、生成文件等),可以在 Skill 里配置脚本能力: - 在目录中放脚本(如 `upload.py`) - 在 `skill.md` 写明:何时必须运行、如何运行、输入输出约定 关键点: - Script 典型是“执行而非阅读”,即脚本再长也不显著占用上下文 - 但前提是你把运行方式、参数、预期输出写清楚,否则工具可能回头去读代码来“理解怎么跑”,反而消耗上下文 --- ## 7. 如何构建自己的 Agent Skills:以“写周报”为例 你可以用“复制目录结构 + 写清规则”的方式快速扩展技能库。 一个可操作的流程: 1) 新建技能目录:`skills/写周报/`(或遵循你所用工具的 Skill 发现路径,例如某些工具要求放在用户目录的特定隐藏目录下) 2) 创建 `skill.md`,写元数据: - `name`:建议与文件夹名一致 - `description`:让模型能在“技能目录”阶段正确命中 3) 在正文写清: - 周报结构(本周完成/进行中/风险/下周计划/需要支持) - 口径要求(数据要量化、避免空话、风险要给方案) - 输出规范(标题、项目符号、长度限制) 4) 如果你有模板、优秀案例:放入 Reference(按需读取) 5) 如果你要自动生成/归档:放入 Script(按需执行) 最终目标不是“更复杂”,而是“更稳定”:让每次生成都像团队里最懂规范的同事写出来的一样。 --- ## 8. Agent Skill vs MCP:该选谁?如何配合? 一个很经典的区分是: - **MCP:连接数据与工具(connect to data)** - **Skill:教模型如何处理数据(teach what to do)** 现实中两者确实有重叠:Skill 也能通过 Script “连数据”。但“能做”不等于“适合做”: - MCP 更像独立程序/服务,适合更复杂、更稳定、更安全的对接与执行 - Skill 更像“说明文档 + 轻量自动化”,适合把流程、格式、标准沉淀下来,并在必要时跑一些小脚本 常见最佳实践是**组合使用**: - 用 MCP 负责取数、查状态、读写业务系统 - 用 Skill 负责“拿到这些数据后应该按什么格式输出、按什么规则检查、哪些情况要追问或提示风险” --- ## 9. 写好 Skill 的实用建议(让它真的“可交付”) - `description` 写得像“路由规则”:让模型容易命中 - 正文以“流程 + 约束 + 输出格式 + 示例”组织,避免散文式要求 - 明确“禁止项”和“边界条件”(不臆测、不得承诺、缺失信息处理) - Reference 一定写清触发条件,避免无脑加载 - Script 一定写清运行方式与预期输出,减少模型/工具反向读代码的概率 - 优先沉淀“你们团队的审核标准”,而不是泛泛的提示词技巧 --- ## 结语 Agent Skill 的价值不在于让模型“更聪明”,而在于把组织经验工程化:**把可复用的标准、流程、资料与轻量自动化封装成技能**,并通过渐进式披露做到“该加载时才加载”。当你的技能库逐渐完善,AI 才能从“能帮忙”走向“可交付、可复现、可规模化”。 打赏: 微信, 支付宝 标签: none 本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。