第四章:Skill 怎么写

4.1 最小可用 Skill

创建 .claude/skills/hello.md

# Hello Skill

## 描述
向用户问好并介绍当前项目。

## 适用场景
- 用户说 "你好"
- 用户说 "介绍项目"

## 执行步骤
1. 读取项目根目录的 README.md
2. 用一句话总结项目用途
3. 列出主要技术栈
4. 友好地向用户问好

## 输出格式
用中文回复,格式如下:

你好!这是 [项目名]。

项目简介:[一句话总结]
技术栈:[主要技术]
有什么可以帮你的?


测试 Skill

claude
"你好"
# Claude 会自动加载 hello Skill,按步骤执行

4.2 Skill 编写规范

文件名规范

  • 使用小写字母 + 连字符:code-review.md
  • 避免空格和特殊字符:code review.md
  • 名字要直观,一看就知道用途

内容规范

# Skill 名称(简洁明了)

## 描述(1-2 句话说明用途)

## 适用场景(列出触发条件)
- 关键词 1
- 关键词 2

## 执行步骤(编号列表,每一步可执行)
1. 具体动作(如"读取 package.json")
2. 具体动作(如"检查依赖版本")
3. 具体动作(如"输出结果")

## 输出格式(明确结果格式)

## 示例(至少 1 个完整示例)

## 注意事项(边界情况、常见错误)

4.3 带参数的 Skill

Skill 可以接收参数,用 {{参数名}} 表示:

# API 文档生成 Skill

## 描述
根据代码生成 API 文档。

## 参数
- `language`: 编程语言(默认:python)
- `style`: 文档风格(默认:openapi)

## 执行步骤
1. 扫描 `{{language}}` 源代码文件
2. 提取函数签名和 docstring
3. 按 `{{style}}` 格式生成文档
4. 保存到 `docs/api.md`

## 示例
### 示例:生成 Python API 文档
参数:language=python, style=openapi
输入:
```python
def get_user(user_id: int) -> dict:
    """获取用户信息"""
    ...

输出:

/user/{user_id}:
  get:
    summary: 获取用户信息
    parameters:
      - name: user_id
        in: path
        type: integer
### 4.4 Skill 调用 Skill

一个 Skill 可以调用另一个 Skill:

```markdown
# 项目初始化 Skill

## 执行步骤
1. 检查项目类型(Python/Node/Java)
2. 调用对应的 "环境检查 Skill"
3. 调用 "依赖安装 Skill"
4. 调用 "代码规范配置 Skill"
5. 输出初始化报告

4.5 Skill 调试技巧

# 技巧 1:查看加载了哪些 Skill
claude
/debug
"帮我写代码"
# 输出中会显示匹配的 Skill

# 技巧 2:强制使用某个 Skill
claude
"使用 code-review Skill 审查 src/main.py"

# 技巧 3:查看 Skill 内容
@file .claude/skills/my-skill.md
"这个 Skill 有什么问题?"

更多推荐