Skill 到底是什么?

Skill 的核心原理:把复杂的任务,拆解成一个个简单可执行的小步骤,每个步骤都明确"需要准备什么(输入)"和"能得到什么(输出)",再用标准化的逻辑,让这些步骤无缝衔接、可重复使用。

就像我们做一道番茄炒蛋:

步骤 输入 输出
备料 2 个鸡蛋、1 个番茄 番茄切块、蛋液打好
炒蛋 蛋液 + 热油 炒蛋成型
炒番茄 番茄块 + 热锅 番茄出汁
混合调味 炒蛋 + 番茄汁 + 盐 成品出锅

"番茄炒蛋 Skill"的原理就是:拆解步骤 → 明确每步的输入输出 → 用固定逻辑串联,确保每次做出来的味道都一致。

对应到 Claude Code 里,Skill 本质上就是一段结构化的提示词(Prompt)。你把它写好,Claude 在触发这个 Skill 时,就会严格按照你定义的步骤来执行任务——不再每次都要你重复描述需求,也不会遗漏关键步骤。

一句话总结:Skill = 你把"做事流程"写成文件,让 AI 照着做。

光说原理有点抽象。接下来通过我的第一个 Skill 示例“月报生成 Skill”——带你完整走一遍完成一个skill创造全流程。


二、第一个 Skill 做什么?

Skill 不需要太复杂。我的建议是:从你日常最烦的重复劳动开始。

问自己三个问题:

  1. 哪些事情我每个月/每周都在重复做?
  2. 这些事情的操作步骤是不是一样的?
  3. 我能不能把模板/格式固定下来?

举几个真实的例子:

场景 重复点 Skill 能做什么
报账材料汇总 每次都要整理发票、填表、核对金额 给定输入(发票照片/列表),自动按固定格式生成汇总表
月报生成 每月从各渠道收集数据、写总结、调格式 给定数据源,按固定模板输出月报文档
踩坑指南文章 每次都是"问题→根因→方案→注意事项"的结构 给定问题描述,按标准模板生成文章骨架
代码审查清单 每次 CR 都要检查相同的项 按固定清单逐项审查,输出结构化报告

我选了什么:月报

我每个月都要做月报,流程雷打不动:


下载最新日报到本地
→ 跑 Python 脚本,从日报里提取本月按项目汇总的工作内容
→ 把"提示词 txt + 月报模板 + 近三个月月报 + 本月工作内容"打包发给网页端大模型
→ 把生成的内容复制到 Word,手动调格式(第二耗时)
→ 逐章调整内容措辞(第一耗时)
→ 通读检查

每次花费我至少半小时时间(而且已经是精简过的流程),最耗时的不是"写内容"本身,而是调word格式和逐章打磨措辞——重复、机械、让人不想动手。

除了"下载日报"和"最终通读"这两步,中间的部分我全想让 Skill 帮我做。


三、怎么写?

3.1 Skill 需要哪些文件?

一个 Skill 的文件结构非常简单:


my-skill/ # Skill 文件夹(文件夹名 = Skill 名)
└── skill.md # 核心文件:Skill 的定义(必须有)

没错,最少只需要一个 skill.md 文件。如果你的 Skill 需要额外的模板文件、示例数据,也可以放在同一个文件夹下:


my-skill/
├── skill.md # Skill 定义
├── template.md # 输出模板(可选)
└── examples.md # 示例数据(可选)

我的月报 Skill 最终结构


 
.claude/skills/monthly-report/
├── SKILL.md # Skill 主文件(触发规则 + 8 章生成逻辑 + 格式规范)
└── project_roles.yaml # 项目角色映射(我来维护)

除了核心文件,还多了一个 YAML 配置文件——用来记录"每个项目我负责什么角色",解决月报里按项目维度组织内容的细节问题。后面会讲到它是怎么来的。

3.2 Skill 文件放在哪?

Claude Code 会在两个位置查找 Skill:

级别 路径 适用场景
用户级 ~/.claude/skills/<skill-name>/skill.md 你在所有项目中都想用的 Skill
项目级 <项目根目录>/.claude/skills/<skill-name>/skill.md 只在特定项目中使用的 Skill

新手建议:先放在用户级目录下,这样在任何项目里都能调用。比如你的 Skill 叫 pitfall-writer,就创建文件:

  • Windows: C:\Users\你的用户名\.claude\skills\pitfall-writer\skill.md
  • macOS/Linux: ~/.claude/skills/pitfall-writer/skill.md

3.3 skill.md 长什么样?

skill.md 由两部分组成:头部元数据(YAML frontmatter) + 正文指令(Markdown body)

以我的月报 Skill 为例,结构大致如下(已脱敏):


---
name: monthly-report
description: 根据日报数据和工作记录,按固定模板生成月度工作报告 .docx 文件
---
# 月报生成 Skill
当用户提供月份信息时,自动采集数据并按模板生成月报。
## 工作空间
- 根目录:xxx
## 数据提取
1. **采集数据**:运行 `data_extract.py` 从日报 Excel 提取本月工作内容
2. **读取 Git log**:从各项目目录抓取本月提交记录,补充项目外工作
3. **交互确认**:询问用户加班时长、问题建议、项目角色是否有变化
## 生成规则
按以下 8 个章节依次生成内容:
- 工作小结:多段结构,按项目维度组织
- 工作强度:6 个标准分类,结合加班时长
- 阶段重点工作:按角色区分写法
- ...(其余章节略)
## 输出格式
直接输出 .docx 文件,格式要求:
- 标题居中 14pt,章节标题 11pt 加粗
- 正文 11pt,内容缩进 2 字符
- 特定段落标签加粗,正文不加粗
## 注意事项
- 不确定的信息主动询问用户,不要自行编造
- 第六章(具体工作完成情况)不得与第三章(阶段重点工作)重复
- 下月计划只写进行中的项目,已结项的不写
## 输出示例
xxx

拆解一下关键要素

要素 位置 作用
name 头部 YAML Skill 的唯一标识,用小写 + 短横线(kebab-case)
description 头部 YAML 一句话描述 Skill 做什么,Claude 根据它判断何时触发
执行步骤 正文 告诉 Claude 分几步走、每步做什么
输出格式 正文 约束输出的格式和质量标准
注意事项 正文 兜底规则,防止 Claude "自由发挥"跑偏

关键心得description 写得越准确,Claude 自动触发 Skill 的命中率就越高。写得太模糊(比如"处理文档"),Claude 可能在你需要的时候不触发,不需要的时候乱触发。

3.4 借助 AI 快速创建(实战过程)

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐