做 Agent 开发一段时间后大部分人都会遇到同一个问题Prompt 越写越长模型执行越来越飘。你把所有规范、流程、示例一股脑塞进系统 Prompttoken 蹭蹭涨模型的注意力却被稀释了——它在同时看着几十件事结果每件事都做得不够准。Agent Skill 就是在解决这个问题。核心思路按需加载把不同能力拆成独立的技能包Agent 根据当前任务只加载需要的那一个。就像你电脑装了几十个软件但你只打开当前要用的那个其他的不占内存。Context Window 就是 Agent 的内存留给当前任务的空间越干净执行越稳定。一个 Skill 的三层结构第一层Metadata元信息技能的身份证——叫什么、能干什么、什么时候触发。name: code-review description: 审查代码识别安全风险、逻辑问题、性能瓶颈 triggers: - 帮我看一下这段代码 - review 一下 input: - code_snippet: string output: - review_report: stringMetadata 很轻系统可以把所有技能的 Metadata 一起加载让 Agent 先选用哪个技能而不需要把完整内容全暴露出来。第二层Instruction执行指令真正告诉 Agent 这件事怎么做只在执行这个技能时才加载进上下文。## Code Review 执行指南 按优先级审查以下维度 1. 安全性SQL 注入、XSS、敏感信息硬编码 → 标记 [HIGH] 2. 逻辑正确性边界条件、空值处理、并发问题 3. 性能循环内重复计算、不必要的数据库查询 4. 可读性命名是否清晰复杂逻辑是否有注释 每条问题注明 [HIGH/MEDIUM/LOW]说明位置、问题、修改建议。第三层Resources外部资源有些技能执行时还需要额外的东西规则库、模板、脚本、外部工具调用等。这些放在 Resources 层Agent 按需拉取用完即走。/skills/code-review/ metadata.yaml ← 索引常驻 instruction.md ← 执行时加载 resources/ security_rules.json ← 按需拉取 review_template.md三层各司其职层级作用加载时机Metadata技能索引用于路由选择始终在上下文Instruction执行指南指导 Agent 行为技能被选中时Resources外部数据/脚本/模板执行过程中按需这就是所谓的渐进式披露——信息随执行进度逐步展开而不是一开始全部堆在上下文里。设计 Skill 时最容易踩的坑粒度问题。一个技能对应一个完整的用户意图不要太粗也不要太细。code-review✅ 对应帮我 review 代码这个完整意图backend-development❌ 太粗一个技能管了太多事check-variable-naming❌ 太细组合起来很麻烦描述要精准。Agent 靠 Metadata 的 description 来判断用不用这个技能描述模糊就容易选错。举例比如我们现在需要生成一个视频但是并不知道怎么做这时候可以借助这个skillhttps://skills.sh/vercel-labs/agent-skills/vercel-react-best-practices我们把这个 skill 安装到本地然后直接向ai提问ai会自动寻找这个skill并利用这个skill生成视频帮我生成一个前端行业报告使用remotion-best-practices这个skill可以看到ai最后直接帮我创建了一个前端项目执行看看效果为了较少大小我调整为4倍速可以看到效果还不错如果不借助skill很难实现这个效果最后Agent Skill 的本质是对执行能力的结构化管理。三层结构解决的问题很实际让 Context Window 里只出现当前任务需要的内容让模型更专注执行更稳定技能库更好维护。