claude code里使用skills
摘要:Claude的Skills功能通过特定格式的Markdown文件实现任务自动化。每个Skill由SKILL.md文件定义,包含YAML元数据(名称、描述等)和具体指令。Skills分为个人级、项目级和插件级三种类型。用户可安装官方Skills、自定义Skills(需编写Python脚本)或下载第三方Skills。自定义Skill需创建特定目录结构,编写SKILL.md定义触发条件和执行逻辑,
一、skills介绍
Cluade会读取每一个skills列表中每一个skill的name和description,然后自行判断是否需要调用该skill。角触发后,Claude 用view工具读取SKILL.md,获得完整指令。
Skills 的核心就是:一个文件夹 + 一个 SKILL.md 文件。
1. SKILL.md 文件包含:
- 元数据(至少要有名称和描述)
- 告诉 AI 如何完成某一特定任务的指令
一个 Skill 本质上就是一个 Markdown 文件(文件名固定为 SKILL.md),它由两部分组成:顶部的 YAML 元数据(位于 --- 标记之间),以及告诉 Claude 如何使用该 Skill 的 Markdown 指令:
my-skill/ └── SKILL.md (唯一必需)
最小必填输入:
--- name: skill-name description: 说明该 Skill 的功能以及适用场景 ---
可选字段:
| 段 | 必需 | 说明 |
|---|---|---|
| name | 是 | Skill 名称,最长 64 字符,只能使用小写字母、数字和 -,且不能以 - 开头或结尾 |
| description | 是 | 功能与使用场景说明,最长 1024 字符,不能为空 |
| license | 否 | 许可证名称或指向随 Skill 附带的许可证文件 |
| compatibility | 否 | 环境与依赖说明(产品、系统包、网络权限等),最长 500 字符 |
| metadata | 否 | 自定义键值对,用于扩展元数据(如作者、版本号) |
| allowed-tools | 否 | 允许使用的工具列表(空格分隔,实验性功能) |
较完整的示例:
--- # YAML frontmatter 开始(顶格)
name: myskill # 必填:技能名(需要和文件夹名字一样)
description: >- # 必填:最关键一行!Claude 靠它判断是否加载
为代码添加专业、清晰的注释。
适合缺少文档、可读性差、需要分享审查的代码。
常见触发场景:加注释、注释一下、加文档、explain this、improve readability
trigger_keywords: # 强烈推荐(大幅提升自动触发率)
- 加注释
- 注释
- 加文档
- explain code
- document
- comment this
- readability
version: 1.0 # 可选
author: yourname # 可选
--- # ← YAML 结束
# 这里开始是正文(Markdown)—— Claude 真正执行时的指令
你现在是「专业代码注释专家」。
## 核心原则
- 只在缺少注释或可读性明显不足处添加
- 优先使用英文 JSDoc / TSDoc 风格
- 复杂逻辑 / 非明显意图处额外加一行中文解释
- 注释精炼,每行不超过 80 字符
- 绝不修改原有逻辑
## 输出格式(严格遵守)
1. 先输出完整修改后的代码块(用 ```语言 包裹)
2. 再用 diff 形式展示只改动注释的部分
3. 最后说明加了哪些注释、理由
如果你需要一些参考资料,参考实例,执行脚本,Skill 的目录结构:
my-skill/
├── SKILL.md ← 必须,核心文件
│ ├── YAML frontmatter ← name、description(触发机制所在)
│ └── Markdown 指令 ← 具体工作流程
├── scripts/ ← 可执行代码(Python等)
├── references/ ← 参考文档(按需加载)
└── assets/ ← 模板、字体、图片等
2、Skills 的分类与存储位置
| 类型 | 存储路径 | 适用场景 |
|---|---|---|
| 个人级 | ~/.claude/skills/ |
个人项目通用,跨项目可用 |
| 项目级 | ./.claude/skills/(项目根目录) |
仅当前项目生效,团队共享 |
| 插件级 | 随插件捆绑安装 | 安装插件后直接使用 |
二、skills使用
1. 安装官方 Skills
通过插件市场安装(推荐):
/plugin marketplace add anthropics/skills # 添加市场
/plugin install document-skills@anthropic-agent-skills # 安装文档技能包
/plugin install example-skills@anthropic-agent-skills # 安装示例技能包
安装完后,可以查询官方自带的skills:

2、测试使用官方skills
使用canvas-design生成海报:
项目中创建一个test.txt文件,写入:
精彩不容错过! 【2026春季创意市集】火热来袭! 日期:2026年3月15日–16日⏰ 时间:10:00 – 20:00 地点:城市文化艺术中心广场✨ 百家原创品牌齐聚 手作体验 × 艺术展览 × 美食快闪 现场音乐演出 & 互动游戏 前100名入场观众还可领取限定好礼!带上家人朋友,一起来感受春日的灵感与温度!免费入场 · 风雨无阻#春季市集#创意生活 #周末去哪儿
在claude命令行输入:根据test.txt中的文字描述,生成一个海报
claude会自动使用对应的skills完成任务,也可以指定skill(方式:/canvas-design),完成后如下:

三、自定义skills
现在自己创建一个查询最近打开文件的skill。
1、创建目录(个人 Skill为例)
mkdir -p ~/.claude/skills/recent-docs
skill目录结构:
recent-docs/
├── SKILL.md ← 必须,核心文件
│ ├── YAML frontmatter ← name、description(触发机制所在)
│ └── Markdown 指令 ← 具体工作流程
├── scripts/ ← 可执行代码(Python等)
2、编写SKILL.md 文件
在目录中创建 SKILL.md 文件,定义 Skill 逻辑:
---
name: recent-docs
description: 查询《文档平台名字》最近打开文档,支持标题模糊搜索,返回标题+链接
version: 1.0.0
trigger:
- 查找《文档平台名字》
- 《文档平台名字》
- 《文档平台名字》最近打开文档
- 最近打开的文档
- 最近打开的《文档平台名字》
---
# 《文档平台名字》 最近打开文档查询
## 功能
用户输入关键词,自动查询 《文档平台名字》 最近打开的文档,模糊匹配标题,返回 title:link。
## 执行方式
1. 从用户输入中提取**标题搜索关键词**
2. 执行脚本:
python3 ${CLAUDE_SKILL_DIR}/scripts/fetch.py "关键词"
3. 从接口返回的 data.pages 中提取文档列表
4. 模糊匹配标题,输出结果
## 返回格式
每行一条:
文档title:link
无结果时返回:未找到相关文档
3、编写脚本
在scripts下创建fetch.py,编写可执行代码
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import sys
import requests
# ===================== 配置 =====================
URL = "https://xxx/v1/pages/recent?length=20"
TOKEN = "xxxxxxxxxxx"
def main():
# 获取用户输入的关键词
keyword = sys.argv[1] if len(sys.argv) > 1 else ""
try:
# 1. 发送请求
headers = {"token": TOKEN}
resp = requests.get(URL, headers=headers)
data = resp.json()
# 2. 获取页面列表
pages = data.get("data", {}).get("pages", [])
if not pages:
print("未找到相关文档")
return
# 3. 模糊匹配标题(不区分大小写)
result = []
for p in pages:
title = p.get("title", "")
link = p.get("link", "")
if keyword.lower() in title.lower():
result.append(f"{title}:{link}")
# 4. 输出
if result:
print("\n".join(result))
else:
print("未找到相关文档")
except Exception as e:
print(f"查询失败:{str(e)}")
if __name__ == "__main__":
main()
4、测试与使用

四、扩展
1、下载第三方skills
下载skill:https://skillsmp.com/
放到~/.claude/skills中即可使用。
2、使用npx安装skills
命令:npx skills add xxxxx
使用npx安装的skill一般存放于~/.agents/skills,claude使用需要挪到~/.claude/skills


从~/.agents/skills放到~/.claude/skills中,claude即可使用。
更多推荐




所有评论(0)