玄同 765

大语言模型 (LLM) 开发工程师 | 中国传媒大学 · 数字媒体技术(智能交互与游戏设计)

CSDN · 个人主页 | GitHub · Follow


关于作者

  • 深耕领域:大语言模型开发 / RAG 知识库 / AI Agent 落地 / 模型微调
  • 技术栈:Python | RAG (LangChain / Dify + Milvus) | FastAPI + Docker
  • 工程能力:专注模型工程化部署、知识库构建与优化,擅长全流程解决方案

「让 AI 交互更智能,让技术落地更高效」
欢迎技术探讨与项目合作,解锁大模型与智能交互的无限可能!


AI Agent Skills:让 AI 助手拥有专业技能的开放生态系统

一、为什么需要 Agent Skills?

每个开发者都有过这样的经历:你正在使用 AI 助手编写代码,但它给出的建议总是差那么一点——不是不符合项目规范,就是缺少特定领域的专业知识。这种"通用但不专业"的问题在复杂项目中尤为突出。

传统的 AI 助手就像一个什么都懂一点但什么都不精的"万金油"。它能帮你写基本的 CRUD 代码,但当你需要遵循特定的架构规范时,它就开始"自由发挥"了。更糟糕的是,每次对话你都需要重新解释项目的编码风格、命名规范、架构模式——这些本应该是"内置知识"。

Agent Skills 的出现改变了这一切。它的核心理念是:让 AI 助手拥有可插拔的专业技能。就像给一位通才配备专业顾问团队,每个 Skill 都是一个领域的专家知识包,包含最佳实践、代码模板、工作流程和验证规则。

配备 Skills 的 AI 助手

通用知识

加载专业技能

遵循项目规范

输出质量稳定可控

传统 AI 助手

通用知识

需要反复解释上下文

输出质量不稳定

二、Skills 是如何工作的?

Skills 的设计哲学是"约定优于配置"。每个 Skill 本质上是一个包含 SKILL.md 文件的目录,这个文件定义了 AI 助手在特定场景下的行为准则。

2.1 Skill 的核心结构

一个典型的 Skill 包含以下组成部分:

SKILL.md 内容

元数据
name/description

触发条件
何时使用

工作流程
执行步骤

输出规范
格式要求

Skill 结构

SKILL.md
核心定义

references/
参考文档

examples/
代码示例

元数据部分告诉 AI 助手这个 Skill 的名称和用途,触发条件定义了何时应该激活这个 Skill,工作流程则是一步步的执行指南。这种结构化的设计让 AI 助手能够"理解"并"遵循"特定的开发规范。

2.2 安装与使用

Skills 的安装非常简单,只需要一条命令:

npx skills add https://github.com/owner/repo --skill skill-name

安装后,Skill 会自动集成到支持的 AI 工具中(如 Claude Code、Cursor、Trae 等)。当你的请求匹配 Skill 的触发条件时,AI 助手会自动加载并应用该 Skill 的知识。

三、六大实用 Skills 深度解析

让我们深入了解六个高质量的 Skills,它们覆盖了从后端开发到可视化图表的多个领域。

3.1 fba:FastAPI 最佳架构指南

FastAPI 是 Python 生态中最受欢迎的异步 Web 框架之一,但如何组织一个大型 FastAPI 项目却是一个难题。fba(FastAPI Best Architecture)Skill 提供了完整的架构规范。

它采用"伪三层架构"的设计,将项目分为五个层次:

层级 职责
API 路由处理、参数验证、响应返回
Schema 数据传输对象、请求/响应结构定义
Service 业务逻辑、数据处理、异常处理
CRUD 数据库操作(继承 CRUDPlus)
Model ORM 模型(继承 Base)

这种分层设计的好处是职责清晰。API 层只负责"接收请求、返回响应",不包含任何业务逻辑;Service 层是业务逻辑的核心,处理所有复杂的计算和状态管理;CRUD 层则封装了所有数据库操作,让 Service 层可以专注于业务。

开发流程也有明确的顺序:先定义 Model(数据模型),再定义 Schema(验证模型),然后是 Router(路由),接着是 Service(业务逻辑),最后是 CRUD(数据库操作)。这种"数据优先"的方法确保了整个系统的一致性。

3.2 writing-plans 与 executing-plans:规划与执行的双剑合璧

这两个 Skills 来自 obra/superpowers 项目,它们解决了一个常见问题:AI 助手经常"想到哪写到哪",缺乏系统性的规划。

writing-plans 的核心思想是"假设执行者对你的代码库一无所知"。它要求计划编写者为每个任务提供完整的上下文:要修改哪些文件、具体的代码是什么、如何测试、预期的输出是什么。

计划被分解为"一口大小"的任务(每个任务 2-5 分钟),遵循 TDD(测试驱动开发)的原则:

### Task N: [组件名称]

**Files:**
- Create: `exact/path/to/file.py`
- Modify: `exact/path/to/existing.py:123-145`
- Test: `tests/exact/path/to/test.py`

- [ ] **Step 1: Write the failing test**
- [ ] **Step 2: Run test to verify it fails**
- [ ] **Step 3: Write minimal implementation**
- [ ] **Step 4: Run test to verify it passes**
- [ ] **Step 5: Commit**

executing-plans 则是计划的执行者。它会先批判性地审查计划,识别潜在问题,然后按批次执行任务,在每批完成后提交审查报告。如果遇到阻塞,它会停下来请求帮助,而不是盲目猜测。

executing-plans

加载并审查计划

批量执行任务

运行验证测试

提交审查报告

是否完成?

完成开发

writing-plans

分析需求

设计文件结构

分解为小任务

编写完整代码

保存计划文档

3.3 drawio:专业图表的 YAML 优先工作流

drawio Skill 采用了一种独特的方法来创建图表:YAML 优先。这意味着图表的定义首先以 YAML 格式存在,然后被渲染为 Draw.io 格式。

这种方法的好处是版本控制友好。传统的 .drawio 文件是 XML 格式,难以进行 diff 和 merge。而 YAML 文件是纯文本,可以像代码一样管理。

Skill 提供了多种工作流路由:

路由 用途
create 从文本/规范创建新图表
edit 修改现有图表
replicate 重绘上传的图片或参考图
academic-paper 论文图表、IEEE 格式
stencil-heavy 云架构、网络拓扑图

对于学术论文场景,Skill 特别提供了 IEEE 网络图规范、学术导出检查清单和数学排版指南。这确保了生成的图表符合学术出版的要求。

3.4 excalidraw-diagram:手绘风格的图表生成

与 drawio 的专业风格不同,excalidraw-diagram 专注于"手绘风格"的图表。这种风格在技术演示和文档中越来越受欢迎,因为它看起来更亲切、更易理解。

Skill 支持三种输出模式:

Obsidian 模式(默认)生成 .md 文件,可以直接在 Obsidian 笔记软件中打开编辑。这对于使用 Obsidian 进行知识管理的用户来说非常方便。

Standard 模式生成纯 .excalidraw JSON 文件,可以在 excalidraw.com 网站上打开、编辑和分享。

Animated 模式则更进一步,为每个元素添加动画顺序,可以生成逐步展示的动画效果。这对于演示和教学场景非常有用。

图表类型的选择也有详细指导:流程图适合步骤说明,思维导图适合概念发散,层级图适合组织结构,时间线适合事件发展……每种类型都有明确的适用场景和制作方法。

3.5 antdv-next:Vue 3 组件库的完整参考

antdv-next Skill 是为 Ant Design Vue Next 组件库设计的参考手册。它包含了所有组件的文档和演示代码,让 AI 助手能够准确使用组件的 props、events 和 slots。

这个 Skill 的特别之处在于它是自动生成的。通过脚本从 Ant Design Vue 的官方文档和 playground 提取信息,生成结构化的参考文档。这意味着当组件库更新时,Skill 也可以同步更新。

四、Skills 生态的价值

Skills 的真正价值在于它创造了一个"可共享的专业知识"生态系统。

4.1 对于团队

团队可以创建自己的 Skills,封装项目的编码规范、架构模式和最佳实践。新成员加入时,AI 助手已经"知道"了团队的工作方式,大大降低了上手成本。

4.2 对于开源项目

开源项目可以发布官方 Skills,让使用者能够遵循项目的最佳实践。比如 FastAPI Best Architecture 项目发布的 fba Skill,让所有使用者都能遵循统一的架构规范。

4.3 对于个人开发者

个人开发者可以从 Skills 市场中发现和学习最佳实践。每个 Skill 都是一个"可执行的文档",比传统的文档更有实用价值。

价值

知识复用

质量保证

效率提升

协作增强

Skills 生态系统

官方 Skills
框架/库作者发布

社区 Skills
开发者共享

团队 Skills
内部规范封装

个人 Skills
工作流优化

五、如何开始使用

5.1 安装 Skills CLI

Skills 可以通过 npx 直接使用,无需全局安装:

npx skills --help

5.2 安装你需要的 Skills

# FastAPI 开发
npx skills add https://github.com/fastapi-practices/skills --skill fba

# 计划编写与执行
npx skills add https://github.com/obra/superpowers --skill writing-plans
npx skills add https://github.com/obra/superpowers --skill executing-plans

# 图表创建
npx skills add https://github.com/bahayonghang/drawio-skills --skill drawio
npx skills add https://github.com/axtonliu/axton-obsidian-visual-skills --skill excalidraw-diagram

# Vue 3 组件库
npx skills add https://github.com/antdv-next/skills --skill antdv-next

5.3 查看已安装的 Skills

npx skills list

六、总结

Agent Skills 为 AI 辅助开发提供了一种新的范式。它让 AI 助手从"通用工具"进化为"专业助手",能够理解并遵循特定领域的最佳实践。

Skills 的核心贡献可以概括为三点:

首先是知识可移植性——专业技能可以被封装、分享和复用,不再需要每次对话都重新解释上下文。

其次是质量可预测性——遵循 Skill 的 AI 助手输出更加稳定可控,减少了"自由发挥"带来的风险。

最后是协作可扩展性——团队、社区和个人都可以创建和分享 Skills,形成良性循环的知识生态。

Skills 的启示在于:AI 的能力边界不仅取决于模型本身,更取决于我们如何组织和传递专业知识。当知识以结构化、可执行的形式存在时,AI 才能真正成为我们的"专业伙伴"。


参考资源:

  • Skills 官网:https://skills.sh/
  • fba Skill:https://github.com/fastapi-practices/skills
  • obra/superpowers:https://github.com/obra/superpowers
  • drawio Skill:https://github.com/bahayonghang/drawio-skills
  • excalidraw-diagram:https://github.com/axtonliu/axton-obsidian-visual-skills
  • antdv-next:https://github.com/antdv-next/skills
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐