AI Skill是什么?

AI Skill

今天第一次开周会 听同事分享了一些自己开发的skill,感觉是ai发展一个很重要的点,学习一下怎么开发一个简单的skill。

是什么?

Skill(技能):可被Agent重复调用的任务单元(比如各种prompt,工具接口,工作流等),相当于给agent安装上手和脚,使其具备各种各样的功能。

有什么用

  1. 减少重复prompt,不用每次都写一堆prompt 可以把一些系统设定规定下来
  2. 将复杂的流程规定好:查天气->生成穿衣建议->提示用户
  3. 方便传递共享: 你写的skill可以给你的同事使用,像一个npm包。
  4. 节省token !

有点像前端抽离组件,就是把我们在使用ai时的复杂,冗余的流程都抽离出来,方便下次调用,减少开发时间。

怎么写

大多数标准的skill是markdown形式,好处是简单易读。也有一些其它形式(json,js等) 举一个skill的目录结构:

js 复制代码
my-skill/
    ----SKILL.md   # 元数据和指令 必不可少
    ----scripts    # 可运行脚本 可选
    ----references # 正文内容
    ----assets     # 静态资源

SKILL.md

这里主要是元数据信息和正文。元数据信息一般是标明agent的人设,作用范围,可以理解为给agent限定范围和任务。正文正常就是规定任务流程,然后确定输入和输出格式

md 复制代码
---
name: 'test-skill'
description: 用于正则表达式调试、测试、替换联调,支持输入文本、匹配规则、替换规则
verson: 1.0.0
trigger: "用户输入包含正则、匹配、替换等关键词"
---
// 以下都是正文 
# 正则联调 Skill

## 功能说明
用于快速验证正则表达式是否匹配预期文本,支持全局匹配、忽略大小写、多行模式,并支持替换操作。

## 执行逻辑
1. 接收用户输入的原始文本、正则表达式、修饰符
2. 执行正则匹配,返回所有匹配项
3. 如果传入 replacement,则执行替换并返回结果
4. 捕获正则语法错误并返回友好提示

## 调用示例
输入:
```json
{
  "text": "15672-正则联调暂存",
  "pattern": "\\d+",
  "flags": "g"
}
输出示例:
{
  "matched": ["15672"],
  "replacedText": "",
  "error": ""
}

注意:因为每一次都会被带到上下文,写在skill的正文不适太长 内容最好小于500字符。如果是要写大量的正文,可以写在referce里面引用。

References

References(参考) ,可以理解为给ai举一个例子。比如我们自己写的组件,ai可能不了解这个组件的规范和写法,我们就需要把示例喂给它

  1. 首先在skill里标明引用的逻辑(这里是重要原因,不然的话全写在skill是一样的
md 复制代码
## 基本原则
本次开发参考内部自定义组件库dt-react-component
如遇到自定义问题,请参考以下文档

### 模块
-- 状态与标签: 请参考[../refer1.tsx]
-- 消息与通知:  请参考[../reder2.tsx]
.... 省略
  1. 在references里面给出让agent参考示例

Scripts

交给agent运行的脚本文件,比如在ai执行完任务后,让ai跑一遍单元测试。这个就可以提取成脚本,在需要的时候调用

md 复制代码
... 一系列步骤
4. 在最后,跑一遍[./test.js]脚本
5. 如不通过请按以上流程重新编写内容

Assets

存放一些静态资源,如默认配置文件、图片、数据集等资源,同样需要显式引用,也许可以将完整的静态文档放这。

md 复制代码
### 输出风格
请参考以下配色方案 [./schema.json]

总结

说这么多,其实简单来说可以理解把skills成一个抽屉,按照不同的功能把不同的文件放进抽屉里,在需要的时候就可以拉开对应的抽屉拿到信息。

相关推荐
AI袋鼠帝2 小时前
火爆全网的Seedance2.0 十万人排队,我2分钟就用上了
前端
言萧凡_CookieBoty2 小时前
用 AI 搞定用户系统:Superpowers 工程化开发教程
前端·ai编程
小小小小宇2 小时前
Go 语言协程
前端
牛奶2 小时前
5MB vs 4KB vs 无限大:浏览器存储谁更强?
前端·浏览器·indexeddb
小虎AI生活2 小时前
一人公司六步闭环:我把 WorkBuddy 用成了"AI 合伙人"
ai编程
牛奶2 小时前
setTimeout设为0就马上执行?JS异步背后的秘密
前端·性能优化·promise
LaughingZhu4 小时前
Product Hunt 每日热榜 | 2026-04-05
前端·数据库·人工智能·经验分享·神经网络
SuperEugene4 小时前
Vue3 组件复用设计:Props / 插槽 / 组合式函数,三种复用方式选型|组件化设计基础篇
前端·javascript·vue.js
nFBD29OFC5 小时前
利用Vue元素指令自动合并tailwind类名
前端·javascript·vue.js