找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

2651

积分

0

好友

368

主题
发表于 15 小时前 | 查看: 0| 回复: 0

最近,关于 Skills 的讨论热度很高。例如 Vue 生态中就出现了 vue-skills 这样的项目,旨在为 Vue 3 开发提供专门的智能体(Agent)技能。

GitHub上的Vue Skills开源项目页面

不仅仅是前端,所有与 Skills 相关的开源项目,其星标(Star)数量都在快速增长。

GitHub上关于Claude Skills的搜索结果页面

那么,Skills 究竟是什么?为什么它能引起如此广泛的讨论?本文将带你彻底搞懂这个概念及其背后的技术逻辑。

什么是 Skills

Skill 直译为“技能”。更直白地说,就是 “赋予 AI 一种特定的能力”

这句话听起来可能有些抽象。我们不妨用一个比喻来理解。

假设程序员是一个综合角色,他会写代码、梳理需求、沟通协作,当然,也会找工作。“找工作”是他众多能力中的一项,但他可能只是“会找”,却未必“擅长找”,因为他缺乏一套系统的方法。

为了成为“求职高手”,他需要一套 经过验证、标准化、专业的流程,例如:

  • 如何梳理并筛选对求职有价值的技术亮点。
  • 如何将这些亮点高效地呈现在简历上。
  • 如何进行面试准备、模拟和复盘。

当我们把这套 流程化的专业知识 封装起来,教给这位程序员,他就完成了从“泛泛而谈”到“专业选手”的转变。

对于 AI 而言,道理是相同的。

通用大模型(如 ChatGPT、Claude)就像那位“什么都会一点”的程序员,它很聪明,能就广泛的话题进行交流。但如果没有给它具体的 流程和规范,它的回答往往流于表面,缺乏深度和专业性。

Skills,正是我们将一套 专业的方法、模板和规范,打包成一个 工作流(Workflow) 并“安装”给 AI。

当 AI 加载了这个 Skill,它就变成了一个 具备特定专业技能,且遵循标准作业流程的专家。这类似于之前“工作流”的概念,但实现上更为轻量和标准化。

因此,Skills 的本质,是 流程性知识的封装与复用方案

如何构建 Skills

Skills 最初由 Claude 团队明确提出,其配置和使用方式相当友好。

Claude Code官方文档截图,展示快速安装指南

那么从代码层面看,一个 Skill 究竟长什么样?对于开发者而言,它的结构非常简单

一个标准的 Skill,在物理层面上就是一个 文件夹。其典型结构如下:

skill-name/
├── SKILL.md (必需)
│   ├── YAML frontmatter 元数据 (必需)
│   │   ├── name: (必需)
│   │   └── description: (必需)
│   └── Markdown 指令 (必需)
└── Bundled Resources (可选)
    ├── scripts/ - 可执行代码(Python / Bash 等)
    ├── references/ - 用于按需加载到上下文中的文档
    └── assets/ - 输出中使用的文件(模板、图标、字体等)

构建一个 Skill,主要分为两步:

第一步:创建一个文件夹

首先,创建一个文件夹。这里有一个硬性规定:文件夹名称必须使用小写字母和连字符(kebab-case)。例如:my-awesome-skill,避免使用驼峰命名或空格。

假设我们要创建一个“简历优化专家” Skill,文件夹名应为:resume-polisher

第二步:编写核心文件 SKILL.md

在该文件夹内,必须包含一个核心文件,固定命名为 SKILL.md。它就像是整个 Skill 的“清单”或入口文件。

SKILL.md 的内容结构固定,包含两部分:YAML 头部Markdown 主体

我们来看一个 Demo。假设要将前面提到的“简历优化流程”编写成 Skill:

---
name: resume-polisher
description: 专门用于程序员简历优化。分析用户提供的原始简历内容,提炼技术亮点,并按照 STAR 法则生成专业的简历描述。
---

# 简历优化专家 (Resume Polisher)

## 指令 (Instructions)

你是一位拥有 10 年经验的技术招聘专家。当用户提供简历内容或技术经历时,请按以下步骤执行:

1.  **亮点挖掘**:分析用户描述,识别其中的高价值技术点(如性能优化、架构设计)。
2.  **去伪存真**:剔除毫无价值的描述(如“负责日常开发”、“修复 bug”)。
3.  **STAR 重构**:将保留的亮点,严格按照 STAR 法则(情境、任务、行动、结果)重写。
4.  **数据量化**:强制要求用户补充量化数据(如“提升了 50% 的加载速度”),如果没有,请标注为【待补充数据】。

## 示例 (Examples)

**用户输入**:
“我在公司里做了一个长列表优化,用了虚拟滚动,效果挺好的。”

**你的输出**:
- **项目背景**:在处理海量数据展示场景下,传统列表渲染导致页面卡顿(FPS 低于 30)。
- **解决方案**:引入虚拟滚动技术,只渲染可视区域内的 DOM 节点,并配合节流函数处理滚动事件。
- **最终结果**:首屏加载速度提升 40%,长列表滑动帧率稳定在 60FPS,内存占用减少 60%。

通过这个例子,构建 Skill 的本质就很清晰了:

  1. YAML 头部:定义 Skill 的身份。
    • name:技能名称。
    • description这是最关键字段! 它是给 AI 系统“看”的,用于告诉系统“这个 Skill 是做什么的,何时应该调用它”。注意:必须使用第三人称客观描述(例如“用于处理...”,而非“我可以帮你...”)。
  2. Markdown 主体:定义具体的“标准作业程序(SOP)手册”。
    • Instructions:详细的执行步骤,越具体越好。
    • Examples:提供给 AI 的参考范例,让它能够模仿输出。

当然,除了 SKILL.md,你还可以在该文件夹内放置脚本、参考文档或数据文件。AI 智能体在执行任务时,会根据需要读取这些资源。

自动化的 Skills 构建

虽然手动构建一个 Skill 并不复杂,但对于初学者来说可能仍有门槛。不过,Claude 团队已经为我们铺好了路。他们开源了一系列官方 Skill,我们可以直接使用或作为参考。

Anthropic官方的Skills开源仓库主页

这个名为 skills 的仓库中,有一个同名的 skills 文件夹,里面存放了 Anthropic 为 Claude Code 开发的各种官方 Skill。

官方Skills仓库中的技能列表目录

这些 Skill 的功能涵盖了文档处理、设计、测试等多个领域:

官方Skills功能列表表格

其中,有一个必须单独提一下的 Skill 是 skill-creator。顾名思义,它的作用就是帮助我们创建新的 Skill

使用起来非常简便。你可以将整个开源仓库克隆到本地,然后直接在 Claude Code 中通过自然语言指令安装这个 Skill。

在Claude Code中通过命令行安装skill-creator的过程截图

安装成功后,只需对 Claude 说:“帮我创建一个新的 skill”。

Claude Code中成功安装skill-creator并准备创建新技能的对话界面

后续的整个创建过程,都可以通过自然语言对话来完成,大大降低了 Skill 的开发门槛。

Claude Code中skill-creator引导用户输入新技能详情的界面

如何部署与使用 Skills

Skill 创建好后(无论是手写还是自动生成),接下来就是让 AI 识别并使用它。这涉及到配置环节。

对于 Claude Code 而言,它需要知道去哪里“读取”这些技能。通常有两种配置方式:

1. 全局配置(推荐)

默认情况下,已安装的 Skill 会被放置在 ~/.claude-code/skills/ 目录下(macOS/Linux)。

Claude Code全局技能目录路径示意图

这种属于全局配置,在此 Claude Code 实例中的所有对话都可以调用这些 Skill。

2. 项目级配置

如果你开发的 Skill 仅针对特定项目(例如该项目专用的自动化部署脚本),可以将 skill-name 文件夹直接放在项目根目录的 .claude/skills/ 路径下。这样该 Skill 就只在这个项目范围内生效。

配置完成后,如何触发 Skills 呢?

实际上,你不需要显式输入类似 /run skill-creator 的命令。回想一下我们在 SKILL.md 中编写的 description 字段。当你对 Claude 提出“创建一个新的 skill”这样的需求时,Claude 的底层系统会快速扫描所有已安装 Skill 的 description,并自动匹配到最合适的 skill-creator 来接管对话。

这就是 Skills 最精妙之处:用户几乎无感知,但 AI 的能力边界却被悄无声息地扩展了。

总结

综上所述,Skills 并非遥不可及的黑科技,它的核心逻辑非常清晰:

  1. 本质:它是 Prompt(指令)、知识库(上下文)与执行脚本(能力) 的结构化封装体。你可以通过查阅高质量的技术文档来深入了解其规范细节。
  2. 核心:其威力在于将专家经验转化为 标准作业流程(SOP)。通过定义清晰的步骤和范例,让 AI 能够像专家一样思考和行动。
  3. 生态:围绕 Claude 等平台的 Skills 生态正在快速形成。正如 vue-skills 的出现,未来每个技术栈、团队或公司都可能维护一套自己的专属 Skill 库,作为开源实战的重要组成部分。
  4. 未来:随着 人工智能 Agent 能力的发展,未来的开发模式或许会从“编写具体代码”更多地向“编排与定义 AI 工作流(即 Skills)”演变。

对于开发者而言,理解并掌握 Skills 的构建与使用,意味着能更高效地将专业流程注入 AI,创造出更智能、更专业的工具助手。如果你想深入探讨或寻找更多相关资源,云栈社区是一个不错的交流平台。




上一篇:苹果关键供应链遭重创:立讯精密遭勒索软件攻击,核心数据泄露
下一篇:C++接口隔离与隐藏实现细节设计实践:Pimpl等模式应用指南
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-1-25 19:24 , Processed in 0.256904 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表