Agent Skill 的工程化落地:从“提示词堆砌“到“能力模块化“
2026/7/8 12:30:10 网站建设 项目流程

一、问题的本质:为什么 Prompt 工程不够用了?

大模型有一个被长期忽视的结构性缺陷:每轮对话都是一次"失忆重启"。无论之前聊过多少轮,模型都必须从零开始重建上下文。这催生了 Prompt 工程:把团队规范、技术选型、架构约束写成一份"CLAUDE.md",每次会话启动时自动注入。

但这条路走到深处,会遇到三个天花板:

  • 上下文通胀

项目越复杂,Prompt 越臃肿。所有领域知识一股脑塞进系统提示词,上下文窗口被撑满,关键信息反而被稀释。这就像把整本员工手册塞给新同事,让他一次性读完,真正重要的安全红线反而淹没在细节里。

  • 零复用性

知识和项目深度耦合,换个场景就得重写。A 项目的实验管理流程,到了 B 项目无法直接复用,团队陷入"重复造轮子"的泥潭。

  • 注意力稀释

模型注意力是有限的。当无关信息持续占用 token,真正需要聚焦的任务指令反而被"噪声"淹没。

Agent Skill 的出现,本质上是对上述问题的模块化回应。

二、Skill 的核心设计哲学:渐进性披露

Anthropic 给 Skill 下了一个精准定义:

"Agent Skills are a lightweight, open format for extending AI agent capabilities with specialized knowledge and workflows."

翻译成人话:Skill 是给 AI Agent 的「入职指南」,把特定领域的专业能力打包成可发现、可复用的模块,Agent 按需加载。

但 Skill 体系真正的设计精髓,不是"模块化"本身,而是渐进性披露(Progressive Disclosure),只在需要时才加载需要的知识。

这个机制分三个阶段运转:

阶段

加载内容

资源消耗

Discovery(发现)

name+description

常驻注入,极低成本

Activation(激活)

完整SKILL.md+ 路由表 + 全局规则

命中时加载,中等成本

Execution(执行)

按路由表加载对应模块文件 + 参考文档

按需读取,精准投放

这就是"按需投放知识"的经济学:用最小的上下文成本,换取最大的知识覆盖范围。绝大部分请求只需要部分资源,上下文窗口永远留给"当下真正重要"的信息。

三、Skill 与 System Prompt 不是替代关系,是协同关系

很多团队容易混淆两者的定位。一句话区分:

System Prompt 是"这个项目的规矩",Skill 是"一种可复用的能力"。

维度

System Prompt

Skill

定位

项目级全局规则、编码规范

特定领域能力封装

加载策略

会话启动时全量加载

渐进式按需加载

生效范围

当前项目

可跨项目、跨会话

上下文成本

恒定占用,与任务无关也消耗

仅命中时加载,未命中零成本

组织结构

单文件,扁平

多文件模块化,支持脚本和资源

适用场景

编码风格、项目约定、通用约束

完整工作流、多步骤流程、领域专家知识

最佳实践是两者协同:System Prompt 定义全局编码规范(对所有 Skill 生效),Skill 封装特定领域工作流(激活时叠加内部规则)。

四、Skill 的物理结构:一个文件夹就是一个能力包

Skill 的核心是一个包含 SKILL.md 的文件夹,已被 Claude Code、Cursor、GitHub Copilot、Gemini CLI 等 40+ 主流 Agent 产品采纳,成为事实上的开放标准。

my-skill/ # Skill 名称,短横线分隔 ├── SKILL.md # 唯一入口,也是唯一"触发器" ├── scripts/ # 可执行脚本(突破 LLM 能力边界) ├── references/ # 参考文档(低频查阅知识) ├── assets/ # 模板、资源 └── ... # 任意额外文件

SKILL.md 的两层结构

1. Frontmatter(元信息)决定 Skill 的"身份"和"权限"

最核心的两个字段:

  • name:Skill 的唯一标识符,也是文件夹名。最长 64 字符,只能用小写字母、数字和连字符。
  • description:这是 Skill 能否被正确触发的生命线。Agent 靠这段描述来判断"当前任务该不该调用这个 Skill"。必须同时回答 WHAT(做什么)和 WHEN(什么时候用)。

其他关键字段包括权限控制(allowed-tools、disable-model-invocation)、运行时环境(context、agent)、生命周期钩子(hooks)等。

2. 正文(指令)应该是"路由器",不是"仓库"

SKILL.md 正文的职责是分发任务到正确的模块,而非包含所有业务细节。控制在 500 行以内(约 2000-3000 token),是单个 Skill 激活后比较合理的上下文开销。

五、触发机制:description 是 Skill 的"门面"

Skill 的触发机制比内容本身更重要,再好的 Skill,如果无法被正确激活,就是废代码。

两种触发方式

  • 自动触发(语义匹配):Agent 根据 description 判断"这个任务我有现成的专业流程可以用",然后主动加载。用户无感,像老员工听到需求自动翻出 SOP。
  • 手动触发(斜杠命令):用户通过 /skill-name 显式调用。适合老用户精确控制。

description 的书写公式

Claude Code 推荐:功能定义 + 触发场景 + 核心能力

写好它需要四个原则:

  • 同时回答 WHAT 和 WHEN

不能只说"处理文档",要明确"做什么、在什么场景下调用"。

  • 枚举具体触发词

Agent 做语义匹配时,关键词越具体命中率越高。不仅要写术语,还要写口语化说法。比如:"创建实验"、"新建"、"做个实验"、"建个 AB",全都要写进去。

  • 用第三人称

description 会被注入系统提示词,要写成客观描述。

✅Generates API documentation from source code

❌I can help you generate docs

  • 划定排除边界(可选)

明确标注不适用场景,降低误触发概率。

六、知识分层:如何决定"这段知识该放哪?"

Skill 设计的核心挑战是知识分层。一条经验法则:文件超过 300 行,或某个 Step 的规则超过 100 行,就是拆分信号。

分层决策树如下:

这段知识是否每次激活 Skill 都需要? ├── 是 → 放 SKILL.md(入口文件,每次必读) └── 否 → 是否每次进入该模块时都需要? ├── 是 → 放模块主文件(如 creator.md) └── 否 → 是否仅在某个特定 Step 才需要? ├── 是 → 放对应 phase 文件(如 collect-phase.md) └── 否 → 是否只在特定条件下查阅? ├── 是 → 放参考文件(tools.md / safety.md) └── 否 → 考虑是否需要保留

实战案例:trade-skill 的分层实践

trade-ab-skill/ ├── SKILL.md ← 意图路由表、全局安全红线(每次激活必读) ├── modules/creator/creator.md ← 创建流程 Step 编排、scenarioId 对照表 ├── modules/creator/collect-phase.md ← 参数填充的 11 项执行清单(仅 Step 2 读) ├── modules/creator/validate-phase.md ← 校验规则(仅 Step 3 读) ├── modules/creator/tools.md ← MCP 工具接口列表(调接口时按需查阅) └── modules/creator/safety.md ← 安全约束详细规则(validate 阶段按需加载)

核心原则:越频繁用到的知识,离入口越近;越偶尔查阅的知识,越往深处放。

七、安全实践:模块级工具隔离

当 Skill 涉及多个模块、调用多个 MCP 接口时,必须实施模块级工具隔离,每个模块只能调用白名单中的接口,遵循权限最小化原则。

设计原则:

  • 白名单制:每个模块的 tools.md 明确列出可用接口,白名单外一律禁止。
  • 危险接口显式禁用:万能工具(如直接 HTTP 调用)全局禁止。
  • 工具隔离:不同模块使用不同接口集合,防止误调用。

trade-skill 的隔离实践:

  • 实验创建接口仅在 creator 白名单中
  • modifier 只能用实验修改接口
  • 审批/发布接口在所有模块中均禁止调用
  • modifier 模块明确标注易混淆接口的禁止规则

八、脚本增强:让 Skill 突破 LLM 的能力边界

核心理念:确定性计算逻辑封装为脚本,由 Agent 调用执行,而非自行推导。

什么时候该写成脚本?如果这件事让 LLM 做有概率出错,但脚本能 100% 确定性完成,那就该封装。

场景

LLM 的局限

脚本的优势

配置文件读写

可能写入格式错误的 JSON

保证格式正确,原子写入

环境检测

无法可靠检测系统状态

直接查询,返回结构化结果

日志采集

不应直接处理网络请求

封装 HTTP 调用,异常自处理

复杂计算

算术不可靠

精确计算

脚本设计四原则:

  • 自愈性:内部处理所有异常,始终正常退出,绝不阻断 Skill 主流程
  • 结构化输出:统一输出 JSON,方便 Agent 解析和流转
  • 幂等性:多次执行结果一致,预检脚本只追加缺失项,不覆盖已有配置
  • 安全边界:只操作指定文件,不触碰其他系统资源

trade-skill 实战:

  • MCP 预检脚本:Skill 启动前自动检测 MCP 依赖是否就绪
  • 日志采集脚本:采集实验操作日志,Agent 只需调用脚本、读取返回的 JSON,不用自己"猜"环境状态

九、参数传递与状态持久化

Skill 不是静态指令,支持运行时参数传递和上下文预注入。

参数传递三原则:

  • 显式:参数来源和去向清晰可追溯
  • 可校验:每个阶段有门卡检查参数完整性
  • 防丢失:关键参数在快照中持久化

trade-skill 的快照机制:

每个阶段将产出写入快照,下一阶段从快照读取。阶段门卡确保参数完整性。

用户偏好持久化:

成功操作后,将关键参数写入 user-prefs.json,下次执行时自动注入:

{ "defaultScenarioId": "<场景ID>", "defaultMetricTemplateId": "<模板ID>", "recentExperimentIds": ["<实验ID1>", "<实验ID2>"], "lastUsed": "2026-06-17", "usageCount": 2 }

十、测试与迭代:Skill 也是软件,需要工程化测试

Claude Code 官方推荐三类核心测试:

1. 触发测试

准备 10 个左右的自然语言变体去触发 Skill,检查是否都能正确激活。同时验证不相关输入是否会误触发。

2. 功能走查

用自然语言驱动完整流程,检查每个阶段输出是否符合预期。重点验证:

  • 路由是否准确分发
  • 渐进加载是否按时序工作
  • 红线规则是否被遵守
  • 异常场景是否正确熔断

关键:别只跑 happy path。故意输入边界值、模拟工具不可用、尝试让 Agent 调用禁止接口,才是真正暴露问题的场景。

3. 性能对比

针对同一任务,分别用"无 Skill"和"有 Skill"两种方式各跑 5 次,对比 Token 用量和完成质量。

迭代方法论:与传统软件 bug 修复逻辑一致:发现问题 → 定位原因 → 修复文档 → 验证效果。

最高效的方式是观测驱动迭代,通过日志埋点收集每次执行的状态结果(成功/失败/取消)、耗时、调用的工具列表,用数据定位薄弱环节。

trade-skill 的日志采集机制采用了两阶段 traceId 配对追踪,保障了全链路可观测。

十一、从 0 到 1:用 skill-creator 创建你的第一个 Skill

skill-creator 本身也是一个 Skill,用来创建和打包 Skill。整个流程可以浓缩为:

下载 skill-creator ↓ 告诉 AI:初始化目录 ↓ 告诉 AI:编写 SKILL.md + references ↓ 告诉 AI:打包验证(自动校验 frontmatter、name、description、非法文件) ↓ 告诉 AI:git 提交并推送 ↓ 告诉 AI:迭代修改并推送

从头到尾你没有手动执行过任何命令。只负责描述意图,AI 负责执行,这就是 Vibe Coding 的魅力。

十二、写在最后

Skill 体系的价值,不只是"把 Prompt 拆成文件"这么简单。它本质上是在解决一个更深层的问题:如何让 AI Agent 在复杂业务场景中,像资深工程师一样"知道什么时候该用什么能力"。

从 Prompt 工程到 Skill 工程,不是技术的升级,而是思维方式的升级,从"给模型喂更多知识"转向"让模型更聪明地选择知识"。

当你的团队开始规模化使用 AI Agent 时,Skill 体系就是那张"能力地图"。

学习资源推荐

如果你想更深入地学习大模型,以下是一些非常有价值的学习资源,这些资源将帮助你从不同角度学习大模型,提升你的实践能力。

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!​

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示

​因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取

四、AI大模型商业化落地方案

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询