人工智能|大模型—— 开发 ——Agent Skills设计详解

人工智能|大模型—— 开发 ——Agent Skills设计详解

一、什么是Agent Skills

        在与 AI Agent 协作开发时,我们常常希望它能遵循一些特定的、可复用的操作流程,比如按照固定格式创建 Git Release、执行项目代码检查、或是生成符合团队规范的文档。OpenCode Agent Skill 提供了一种机制,允许我们将这些可复用的指令和行为封装起来,供 Agent 在需要时发现并调用。

        一个 Skill 本质上是一份包含了特定指令的 Markdown 文件,它定义了一项任务的名称、描述以及具体的执行步骤。通过这种方式,我们可以将复杂的、重复性的工作流程标准化,让 Agent 能够像调用工具一样,精确、一致地执行这些预定义的任务。这不仅提升了协作效率,也确保了输出结果的规范性。

        总而言之,Skills的核心价值在于:把重复的指令打包,按需加载

二、opencode配置skill

创建一个 Skill 的过程非常直接,核心是在指定的目录中放置一个名为 SKILL.md 的文件。
        OpenCode 会在特定路径下搜索 SKILL.md 文件。这些路径分为项目本地和全局两种,方便我们将 Skill 应用于特定项目或是在所有项目中共享。

        项目本地路径允许我们将 Skill 与代码仓库绑定在一起,当其他开发者克隆项目后,也能立即使用这些为项目定制的 Skill。OpenCode 会从当前工作目录向上搜索,直到 Git 仓库的根目录,并加载所有符合以下模式的 Skill 文件:

  • .opencode/skill/<skill-name>/SKILL.md
  • .claude/skills/<skill-name>/SKILL.md

        全局路径则用于存放那些通用的、与具体项目无关的 Skill。这些 Skill 定义在用户的主目录下,对所有项目都可见(windows下全局路径实测下来为:C:\Users\用户名\.config\opencode\skills):

  • ~/.config/opencode/skill/<skill-name>/SKILL.md
  • ~/.claude/skills/<skill-name>/SKILL.md
  • ~/.agents/skills/<skill-name>/SKILL.md

        这里的 <skill-name> 是一个目录名,它必须与 Skill 本身的名称保持一致。这种目录结构使得每个 Skill 的定义都清晰地隔离在自己的文件夹内。如下:

三、skills内容设计

        下面我解释一下Skill的结构,目的是让你理解逻辑,知道该给AI提什么需求,不是教你手写代码。

3.1 核心概念

几个关键词需要解释:

(1)"模块化":Skills是一个个独立的文件夹,每个Skill做一件事。比如"生成PPT"是一个Skill,"审校文章"是另一个Skill。
(2)"能力包":每个Skill文件夹里可以包含:
  • SKILL.md(核心指令文件,必需。)
  • scripts/(可执行脚本,可选。当SKILL.md中引用脚本时,opencode会执行它。脚本代码不进入上下文,只有执行结果进入。这意味着可以写复杂脚本处理确定性任务,而不占Token。)
  • references/(参考文档,可选。当任务需要更多信息时,opencode会读取这些文档。采用渐进式披露,平时不加载。)
  • assets/(模板和资源,可选。比如报告模板、配置文件、样例数据。)
(3)"自动加载":你不需要手动告诉Claude"现在用XX Skill"。Claude会根据你的任务描述,自动判断需要哪个Skill,然后加载。
(4)渐进式披露:分阶段、按需加载。一个Skill包含很多内容:核心指令、参考文档、执行脚本、模板资源。但Claude\OpenCode等不会一次性把所有内容都加载进上下文。它采用三层加载机制:

第一层:元数据(Metadata)—— 总是加载

  • 内容:SKILL.md文件开头的YAML部分,就两个字段:name和description。
  • 加载时机:opencode启动时就加载所有Skills的元数据。
  • Token成本:每个Skill大约100 tokens。就算装50个Skills,也就5000 tokens。
  • 作用:让opencode知道有哪些Skills可用,什么时候该用哪个。
--- name: ai-proofreading description: 系统化降低AI检测率,增加人味。使用场景:审校文章、降低AI味、初稿完成后。 ---

第二层:指令(Instructions)—— 触发时加载

  • 内容:SKILL.md的主体部分,详细的操作指南。
  • 加载时机:当用户请求匹配某个Skill的description时,opencode才加载这个Skill的完整内容。
  • Token成本:通常在3000-5000 tokens。
  • 作用:告诉Claude具体怎么做。

第三层:资源(Resources)—— 引用时加载

  • 内容:scripts/目录里的脚本、references/目录里的参考文档、assets/目录里的模板。
  • 加载时机:只有当SKILL.md中的指令引用这些文件时才加载。
  • Token成本:几乎无限——脚本执行后只有输出进入上下文,代码本身不占Token。
  • 作用:提供确定性的执行能力和详细的参考资料。
        这一设计非常聪明。

传统方式:所有规则写在一个xx.md文件中,每次对话都加载,若有3000多行内容,大约4万tokens。每次对话都烧40000 tokens,不管需不需要。

Skills方式:

  • 平时只加载元数据:50个Skills × 100 tokens = 5000 tokens
  • 需要审校时,额外加载审校Skill:+3000 tokens
  • 需要配图时,额外加载配图Skill:+2000 tokens
  • 一次对话通常只用1-2个Skills:总共约10000 tokens

节省了75%的Token消耗。而且,这还没算脚本的优势。

       脚本的魔法

Skills可以包含可执行脚本。比如我的"图片配图与上传"Skill里有一个Python脚本,负责把图片上传到图床。

当Opencode执行这个脚本时:

  1. opencode生成一条bash命令:python scripts/upload_image.py image.png
  2. 脚本在本地执行
  3. 只有执行结果(图床URL)返回给opencode

脚本代码本身不进入上下文。

所以你可以写一个500行的Python脚本,处理各种边界情况、错误处理、日志记录。opencode只需要知道"执行这个脚本",不需要理解每一行代码。

这是Skills比传统Prompt方式更强的地方:可以封装确定性的执行能力

3.2 如何创建

创建的方法主要有两种:
  1. 直接手撸,不推荐,因为费时费力,质量因人而异波动较大;
  2. 利用opencode,借助官方开源的skill(skill-creator)创建。(例如:直接告诉opencode:"帮我创建一个Skill,用来审校学术论文初稿。要检查事实准确性、去掉AI味、控制句子长度、像学术用语"。它会帮你生成符合格式的文件,生成的过程及结果如下:)

但是,无论采用哪种方式,你在创建skills之前都需要明确以下几点内容,这是前提:

  1. 想清楚要解决什么问题?这个问题是不是重复性的?有没有必要写skills
  2. 把工作流程写清楚
  3. 提供足够的context和参考资料

3.3 基本结构

一个Skill就是一个文件夹,里面至少有一个SKILL.md文件,且文件夹的命名要与SKILL.md中YAML Frontmatter的name字段完全一致

3.4 关键内容

        每个 SKILL.md 文件都由两部分组成:YAML Frontmatter Markdown 正文

3.4.1 YAML Frontmatter

        Frontmatter 位于文件的最顶端,使用 --- 分隔,用于定义 Skill 的元数据。Agent 正是通过这些元数据来发现和理解 Skill 的用途。一个合法的 SKILL.md 文件必须包含 name 和 description 两个字段。
--- name: git-release description: Create consistent releases and changelogs license: MIT compatibility: opencode metadata: audience: maintainers workflow: github --- ## What I do - Draft release notes from merged PRs - Propose a version bump - Provide a copy-pasteable `gh release create` command ## When to use me Use this when you are preparing a tagged release. Ask clarifying questions if the target versioning scheme is unclear.

在上面的例子中,name 和 description 是必填项,它们直接影响 Agent 如何识别和选择 Skill。而 licensecompatibility 和 metadata 等字段是可选的,用于提供额外的信息。

name 字段的值必须符合特定的命名规范:
  • 长度在 1 到 64 个字符之间。
  • 只能包含小写字母、数字和单个连字符 -
  • 不能以连字符开头或结尾。
  • 不能包含连续的连字符。
  • 最重要的一点是,它必须与存放 SKILL.md 文件的目录名完全相同。
description 字段作用是向 Agent 清晰地描述这个 Skill 的功能,以便 Agent 在众多可用 Skill 中做出正确的选择:
  • 长度限制在 1 到 1024 个字符之间。
  • 描述应该具体、明确,准确传达 Skill 的核心用途。
  • 触发关键词很重要。

3.4.2 Markdown正文

        文件的正文部分则使用标准的 Markdown 语法,详细说明 Skill 的:
  • 使用场景
  • 核心目标
  • 执行逻辑
  • 示例输入/输出
  • 注意事项等
  • 建议控制在500行以内,如需更多内容,放到references/目录下。

        类似Prompt的设计规则。这部分内容是 Agent 加载 Skill 后获取的核心指令,因此编写得越清晰,Agent 的执行效果就越好。

四、skills案例拆解

为了更好的理解skills,就以官方anthropics公布的、经过充分测试的其中一个skills(skill-creator)进行详细的拆解,便拆解、边理解skills的构建:(以下内容由opencode基于配置的若干skills共同生成

4.1 skill-creator概述

        skill-creator 是一个元技能(meta-skill),专门指导如何创建其他技能。它将 Claude 从通用人工智能代理转变为具备特定领域专业知识的专业代理。该技能提供了完整的技能创建框架、设计原则和实践指南,是 opencode 技能系统的核心组成部分。

技能的主要功能包括:

  1. 提供skills创建的工作流程和最佳实践
  2. 定义skills的结构和组成要素
  3. 实施渐进式披露设计原则以优化上下文使用
  4. 包含工具脚本和模板文件
  5. 提供验证和打包功能

4. 2 核心设计原则

4.2.1 简洁性原则

上下文窗口是公共资源,skills应该只添加 claude真正需要的信息。每个信息片段都需要评估其token成本是否合理。技能设计应偏好简洁的示例而非冗长的解释。

4.2.2 适当的自由度

根据任务的脆弱性和可变性设置不同级别的自由度:
  • 高自由度(基于文本的指令):多种方法有效,决策依赖上下文
  • 中自由度(带参数的伪代码或脚本):存在首选模式,允许一定变化
  • 低自由度(特定脚本,少量参数):操作脆弱易错,一致性至关重要

4.2.3 渐进式披露

采用三级加载系统管理上下文效率:
  1. 元数据(名称+描述):始终在上下文中(约100词)
  2. SKILL.md 正文:技能触发时加载(<5000词)
  3. 捆绑资源:根据需要加载(无限,因为脚本可不读入上下文)

4.3 技能结构分析

4.3.1 SKILL.md(必需文件)

每个技能必须包含 SKILL.md 文件,由两部分组成:
  • 前导码(YAML):包含 name 和 description 字段,是技能触发的主要机制
  • 正文(Markdown):技能的使用说明和指南,仅在技能触发后加载

4.3.2 捆绑资源(可选)

技能可以包含三种类型的捆绑资源:

资源类型

描述与用途

scripts/

可执行代码(Python/Bash等),用于需要确定性可靠性或重复编写的任务

references/

文档和参考材料,根据需要加载到上下文中,如数据库模式、API文档、公司政策等

assets/

输出中使用的文件(模板、图标、字体、示例文档等),不加载到上下文中

4.4 渐进式披露设计

渐进式披露是 skill-creator 的核心设计原则,通过三级加载系统优化上下文使用效率:

4.4.1 三级加载系统

  1. 第一级:元数据(名称+描述) - 始终保持在上下文中,约100词,用于技能触发判断
  2. 第二级:SKILL.md 正文 - 仅在技能触发后加载,限制在5000词以内,包含核心工作流程
  3. 第三级:捆绑资源 - 根据任务需要按需加载,脚本可直接执行而不读入上下文

4.4.2 设计模式

skill-creator 提供了三种主要的渐进式披露模式:
  • 高级指南与参考文件模式:在 SKILL.md 中提供核心工作流程,详细内容放在参考文件中
  • 特定领域组织模式:按领域组织内容,避免加载不相关上下文
  • 条件详细信息模式:显示基本内容,链接到高级内容,按需加载

4.5 技能创建流程

skill-creator 定义了六个步骤的skills创建流程:

步骤1:通过具体示例理解skills

通过用户示例或生成并验证的示例,明确skills应支持的功能和使用场景。

步骤2:规划可重用skills内容

分析每个示例,识别重复性工作,规划 scripts、references 和 assets 资源。

步骤3:初始化skills

运行 init_skill.py 脚本创建skills目录结构,生成模板文件。

步骤4:编辑skills

实现规划的资源,更新 SKILL.md 文件,遵循设计模式和最佳实践。

步骤5:打包skills

运行 package_skill.py 脚本进行验证并创建可分发的 .skill 文件。

步骤6:迭代优化

基于实际使用反馈,持续改进skills内容和设计。

4.6 设计模式与最佳实践

4.6.1 技能文件组织

关键组织原则:
  • 避免深度嵌套引用:参考文件应直接从 SKILL.md 链接,保持一级深度
  • 结构化长文件:超过100行的文件应在顶部包含目录
  • 避免重复:信息应位于 SKILL.md 或参考文件中,不能同时存在

4.6.2 写作指南

技能文档应使用命令式/不定式形式,保持简洁直接:
  • 前导码 description 字段应包含所有'何时使用此技能'的信息
  • 正文中不应包含'何时使用'部分,因为仅在触发后加载
  • 避免使用不必要的辅助文档文件(README.md、CHANGELOG.md等)

4.7 总结

skill-creator 技能提供了一个系统化、可扩展的技能创建框架,具有以下核心价值:
  • 模块化设计:通过渐进式披露优化上下文使用效率
  • 标准化流程:六步创建流程确保技能质量一致性
  • 资源重用:scripts、references、assets 资源减少重复工作
  • 质量控制:验证和打包脚本确保技能符合标准

该技能体现了软件工程的最佳实践,包括关注点分离、渐进式披露、资源优化和迭代开发,为创建高质量、可维护的技能提供了完整解决方案.

Read more

夸克网盘免费资源电子书籍安卓软件经典游戏音乐歌曲精品教程AI绘画学习资料合集

夸克网盘免费资源电子书籍安卓软件经典游戏音乐歌曲精品教程AI绘画学习资料合集

一、夸克网盘免费资源说明 夸克网盘免费资源,来自全网整理二次精选,涵盖了几乎所有资源类型,网盘资源目录的分享链接,仅限一级目录和二级目录,一级目录是网盘资源的根目录,包括电子书籍、软件资源、游戏资源、视频资源、音乐音频、美食技术和学习资料等,二级目录是一级目录的子目录,均为资源专题形式,比如,Kindle原版书籍合集、U盘车载音乐歌曲、DeepSeek全套资源、全网专业摄影书籍、TikTok全球解锁版本、IOS巨魔专用资源、TED演讲视频合集、剪映教学全套资源、全网热门漫画精选,等等,相信其中会有你所需要的。 特别说明: 1、夸克网盘与百度网盘不同,不仅支持查看分享链接的资源大小,而且支持在分享链接页面里搜索资源,可以查询其中是否有你所需要的。 2、夸克官方一直都有福利活动,新用户可以免费领取1TB空间,具体操作方法请查看文本文件(在分享链接里)。 3、一级目录《全网精选2000T优质资料》,提供了很有价值的海量夸克资源,分享链接存放在电子表格里,整个目录大小只有9.7M,建议转存收藏。 二、夸克网盘一级目录资源 电子书籍+

VLA机器人革命:解析当下10篇最关键的视觉-语言-动作模型论文

VLA机器人革命:解析当下10篇最关键的视觉-语言-动作模型论文

VLA机器人革命:解析当下10篇最关键的视觉-语言-动作模型论文 概览 2024-2026年,机器人领域正经历一场范式转换:从传统的任务特定编程转向视觉-语言-动作(Vision-Language-Action, VLA)模型。这些模型将视觉感知、自然语言理解和动作执行统一在单一框架中,让机器人能够像人类一样理解指令、推理场景并执行复杂操作。 本文精选5篇最fundamental的基础性论文和5篇热度最高的前沿论文,深入剖析VLA领域的核心思想、技术演进和未来方向。这些论文代表了从Google DeepMind、NVIDIA、斯坦福、Physical Intelligence等顶尖机构的最新突破,涵盖了从单臂操作到双臂人形机器人、从模拟环境到真实家庭场景的全方位进展。 Part I: 五篇Fundamental基础性论文 这些论文奠定了VLA领域的理论基础和技术范式,是理解整个领域发展脉络的关键。 1. RT-2: New Model Translates Vision and Language into Action 发表机构:Google DeepMind 时间:

2025.10.17 更新 AI绘画秋葉aaaki整合包 Stable Diffusion整合包v4.10 +ComfyUI整合包下载地址

2025.10.17 更新 AI绘画秋葉aaaki整合包 Stable Diffusion整合包v4.10 +ComfyUI整合包下载地址

2025.10.17 更新 AI绘画秋葉aaaki整合包 Stable Diffusion整合包v4.10 +ComfyUI整合包下载地址 * @[TOC](2025.10.17 更新 AI绘画秋葉aaaki整合包 Stable Diffusion整合包v4.10 +ComfyUI整合包下载地址) * 🌈 Stable Diffusion整合包(秋葉aaaki整合版) * 📦 【下载链接】 * 💡 英特尔 CPU 用户特别提醒 * 🔧 AMD 显卡专用方案 * ⚙️ 常见问题与解决方案 * 🧠 ComfyUI 整合包(秋葉aaaki定制优化版) * 📥 【下载链接】 * 🚀 更新日志(2025.2.4 v1.6) * 🧩 报错解决 关键词建议(自动覆盖百度、必应等搜索) AI绘画整合包下载、Stable Diffusion整合包、ComfyUI整合包、秋葉aaaki整合包、AI绘图工具、AI绘画模型、

皮带输送机巡检机器人 7×24h 全域无死角智能巡检方案

皮带输送机巡检机器人 7×24h 全域无死角智能巡检方案

在工业生产领域,皮带输送机是各行业产线物料输送的核心装备,其稳定连续运行直接关乎生产效率与企业经济效益。针对工业皮带输送线长距离布置、多高空作业、人工巡检难度大、异常发现不及时等行业共性痛点,皮带输送机巡检机器人应运而生,以全维度智能检测、高适配随线运行、高精度数据分析的核心能力,全面替代人工巡检模式,实现工业皮带输送线的无人化、智能化、全时段巡检,为各行业产线运维升级提供专业、高效的一体化解决方案。 一、高适配随线巡检,全工况实现全域无死角覆盖 武汉雾都巡检机器人采用紧凑化定制尺寸设计,可精准匹配不同工业产线轨道的宽度、高度限制,顺利通过提升机、T 型、L 型、十字型等各类异形轨道,完美适配多规格轨道布局需求,无需对现有产线进行大规模改造,适配性拉满。 巡检机器人可与皮带输送机同步匀速运行,能自适应轨道不平、导向板精度有限等各类工业实际工况,运行过程无卡滞、无轨迹偏移,实现随线不间断巡检。同时可全面覆盖人工难以抵达的高空区域、设备死角、皮带两侧等传统巡检盲区,真正实现工业皮带输送线的全域、无死角巡检,让设备异常无处遁形。 二、全维度智能检测,分级精准实现异常提前预警 武