用AI写Skill:QClaw实战指南

作者:技术拾光时间:2026-06-09 06:35:02浏览:99

以QClaw为例,演示如何利用AI生成Skill。核心思路是描述需求、触发条件与输出格式,AI自动创建SKILL.md文件。实战展示天气查询技能,包含触发条件、执行步骤和输出模板。调试时需完善描述与示例对话,优化触发准确性与结果格式。

AI写Skill这件事,其实比大多数人想象的简单得多。你不需要成为编程高手,甚至不需要手动写一行Markdown——只要你能把需求表达清楚,剩下的交给AI就好。下面以QClaw为例,拆解整个流程:从理解Skill是什么,到用对话直接生成一个可用的天气查询技能,再到调试优化的技巧。这套方法不光适用于QClaw,对OpenClaw同样通用。

如何利用 AI 写 Skill:以 QClaw 为例的实战指南


用AI写Skill:QClaw实战指南

目录

  • 一、什么是 Skill?
  • 二、AI 写 Skill 的核心思路
  • 三、实战:用 AI 写一个天气查询 Skill
  • 四、QClaw 特殊配置
  • 五、调试与优化技巧
  • 六、总结

一、什么是 Skill?

Skill 定义

Skill 是 OpenClaw 的技能扩展系统,通过一个 Markdown 文件(SKILL.md)定义 AI 如何执行特定任务。

Skill 目录结构

my-skill/
├── SKILL.md          # 必选:技能定义(触发条件 + 执行步骤)
├── scripts/          # 可选:执行脚本(Python/Bash 等)
├── references/       # 可选:参考文档
└── assets/           # 可选:资源文件(模板、图标等)

核心文件:SKILL.md

---
name: my-skill          # 技能名称(小写 + 连字符)
description: "一句话描述,AI 用来判断何时触发"
---
# 技能主体

## 触发条件(什么情况下使用这个 Skill)
## 执行步骤(具体怎么做)
## 输出格式(结果应该是什么样)

二、AI 写 Skill 的核心思路

关键认知

关键在于:AI 本身就能写 Skill!你只需要告诉 AI:

  1. 你想要什么功能
  2. 什么时候触发
  3. 期望的输出格式

AI 会自动完成剩下的工作——分析需求、设计触发条件、规划步骤、编写执行逻辑、定义格式,最终生成一份完整的 SKILL.md。

三要素模板

要素说明示例
触发条件AI 如何判断何时使用用户说“查天气”、“今天天气”
执行步骤AI 应该怎么做1. 提取城市名 2. 调用 API 3. 解析结果
输出格式返回什么内容城市、温度、天气、建议

三、实战:用 AI 写一个天气查询 Skill

需求描述

典型的天气查询场景:用户说“查天气”、“今天天气”、“北京天气”时触发,能自动识别城市,返回温度、天气状况和穿衣建议。

让 AI 生成 Skill

直接告诉 AI:

请帮我创建一个天气查询 Skill:
1. 用户说"查天气"、"今天天气"、"XX天气"时触发
2. 自动识别城市名
3. 返回温度、天气、穿衣建议

AI 生成的 SKILL.md

---
name: weather-query
description: "天气查询技能。当用户询问天气、气温、穿衣建议时触发。支持城市名称识别和实时天气查询。"
---
# 天气查询技能

## 触发条件
用户消息包含以下关键词时触发:
- "天气"、"气温"、"温度"
- "今天天气"、"明天天气"
- "XX天气"(城市名 + 天气)
- "穿什么"、"带不带伞"

## 执行步骤
### Step 1:识别城市
从用户消息中提取城市名称:
- 如果用户提到具体城市 → 使用该城市
- 如果没有提到 → 使用用户默认城市或询问

### Step 2:查询天气
调用天气 API 获取数据:
- 温度(当前/最高/最低)
- 天气状况(晴/雨/阴)
- 湿度、风力等

### Step 3:生成建议
根据天气数据生成:
- 穿衣建议
- 出行提醒
- 是否需要带伞

## 输出格式
```markdown
 XX天气
 温度:XX°C ~ XX°C
 湿度:XX%
 风力:X级
 穿衣建议:...
 出行提醒:...
```

示例对话

用户:北京今天天气怎么样?
AI:
北京天气

温度:15°C ~ 25°C
湿度:45%
风力:3级

穿衣建议:薄外套 + 长袖
出行提醒:今天天气不错,适合出行


用户:上海明天要带伞吗?
AI:
上海明天有雨

温度:18°C ~ 22°C
降雨概率:80%

建议:明天记得带伞!

保存 Skill

将 SKILL.md 保存到正确目录:

# OpenClaw 默认路径
~/.openclaw/skills/weather-query/SKILL.md

# QClaw 默认路径
C:\Users\<用户名>\.qclaw\workspace\skills\weather-query\SKILL.md

四、QClaw 特殊配置

QClaw vs OpenClaw

对比项OpenClawQClaw
安装方式命令行安装一键安装包
默认路径~/.openclaw/C:\Users\<用户名>\.qclaw
微信支持需配置直接绑定
模型选择自行配置默认集成 Kimi/Minimax 等

QClaw Skill 路径

C:\Users\<用户名>\.qclaw\workspace\skills\
├── my-skill-1/
│   └── SKILL.md
├── my-skill-2/
│   ├── SKILL.md
│   └── scripts/
│       └── helper.py
└── ...

快速创建 Skill

在 QClaw 对话框中直接说:

帮我创建一个 Skill,功能是 XXX

AI 会自动:

  1. 生成 SKILL.md 内容
  2. 告诉你保存路径
  3. 重启后自动生效

五、调试与优化技巧

常见问题排查

问题原因解决方案
Skill 不触发description 不够清晰补充更多触发场景描述
执行结果错误步骤描述模糊增加详细步骤说明
输出格式乱格式定义不明确添加输出模板示例

优化技巧

  1. 完善触发条件
#  不好的写法
description: "天气查询"

#  好的写法
description: "天气查询技能。当用户询问天气、气温、温度、穿衣建议、带不带伞时触发。"
  1. 添加示例对话
## 示例对话
**用户**:今天天气
**AI**:(期望的回复)
**用户**:北京温度
**AI**:(期望的回复)
  1. 使用脚本增强功能
# scripts/weather_api.py
import requests

def get_weather(city):
    url = f"https://api.weather.com/v1/{city}"
    return requests.get(url).json()

然后在 SKILL.md 中引用:

## 执行步骤
1. 调用 `scripts/weather_api.py` 获取天气数据
2. 解析 JSON 结果
3. 格式化输出

六、总结

AI 写 Skill 的核心流程

1. 描述需求 → "我想做一个 XXX 功能"
   ↓
2. AI 生成 SKILL.md → 自动创建触发条件 + 步骤 + 格式
   ↓
3. 保存到正确路径 → ~/.openclaw/skills/ 或 ~/.qclaw/workspace/skills/
   ↓
4. 测试验证 → 看是否正确触发和执行
   ↓
5. 迭代优化 → 根据实际效果调整

关键记住

  • description 是关键:写清楚什么时候触发
  • 步骤要具体:AI 才能正确执行
  • 示例很重要:帮助 AI 理解期望输出
  • 让 AI 写 Skill:直接对话,无需手动编辑

参考资料:

  • OpenClaw 官方文档
  • AgentSkills 规范
  • ClawHub Skills 市场

Tags:OpenClaw QClaw Skill AI Agent 教程