第5课 技能 (Skills)#
为什么需要了解这个#
工具(上一课内容)是助手的能力。而技能(Skills)是使用说明,教助手如何正确地运用这些能力来完成具体任务。技能是一个包含说明文件的文件夹,教助手做某些特定的事情:生成图片、管理日历、用特定语言编写代码。
你可以把技能想象成给你的助手的"进修培训课程"。
技能的结构#
每个技能是一个文件夹,里面有一个 SKILL.md 文件。这个文件包含:
- 元数据头——名称、描述、要求
- 说明——具体如何执行任务
SKILL.md 示例#
---
name: nano-banana-pro
description: 通过 Gemini 生成和编辑图片
---
# 图片生成
当用户要求创建或编辑图片时:
1. 使用 Gemini API 生成图片
2. 将结果保存到工作文件夹
3. 向用户展示图片技能从哪里来#
技能从三个位置加载(按优先级排列):
| 位置 | 路径 | 说明 |
|---|---|---|
| 工作文件夹(最高优先级) | <workspace>/skills/ |
特定智能体的个人技能 |
| 通用技能 | ~/.openclaw/skills/ |
电脑上所有智能体都能使用的技能 |
| 内置技能(最低优先级) | 随 OpenClaw 一起安装 | 基本技能集 |
如果多个位置有同名技能,使用优先级更高位置的那个。
ClawHub —— 技能商店#
ClawHub (clawhub.ai) 是 OpenClaw 的公共技能目录。你可以在这里搜索、下载和安装现成的技能。
安装 CLI 工具#
npm install -g clawhub基本命令#
# 搜索技能
clawhub search "日历"
clawhub search "image generation"
# 安装技能
clawhub install <技能名称>
# 更新所有已安装的技能
clawhub update --all示例:安装技能#
# 1. 搜索图片处理技能
clawhub search "image"
# 2. 安装找到的技能
clawhub install nano-banana-pro
# 3. 开始新会话以加载技能
# (在与助手的聊天中)
/new重要:安装技能后需要开始新会话(
/new),助手才能"看到"新技能。
配置技能#
启用和禁用#
在 openclaw.json 文件中:
{
skills: {
entries: {
"nano-banana-pro": {
enabled: true, // 启用技能
apiKey: "你的密钥", // API 密钥(如果需要)
env: {
GEMINI_API_KEY: "你的密钥" // 环境变量
}
},
"不需要的技能": {
enabled: false // 禁用技能
}
}
}
}技能要求(门控)#
一些技能只在满足特定条件时才能工作:
- bins —— 需要特定程序(例如
python、node) - env —— 需要环境变量(通常是 API 密钥)
- config —— 需要 OpenClaw 中的特定配置
- os —— 只在特定系统上工作(Mac、Linux、Windows)
OpenClaw 会自动检查这些条件,只加载符合要求的技能。
如何创建自己的技能#
第1步:创建文件夹#
mkdir -p ~/.openclaw/workspace/skills/my-skill第2步:创建 SKILL.md 文件#
---
name: my-skill
description: 我的报告创建技能
---
# 创建报告
当用户要求创建报告时:
1. 询问需要哪个时间段的报告
2. 从 `reports/` 文件夹中收集数据
3. 以 Markdown 格式创建报告文件
4. 通知用户报告已完成
## 报告格式
- 带日期的标题
- 主要指标表格
- 简要结论第3步:开始新会话#
/new助手会看到你的技能,并在任务匹配时遵循说明执行。
添加元数据(可选)#
对于更"高级"的技能,可以添加元数据:
---
name: my-report-skill
description: 从数据创建精美报告
metadata: {
"openclaw": {
"emoji": "📊",
"requires": {
"bins": ["python3"]
}
}
}
---在 ClawHub 上发布技能#
如果你创建了有用的技能,可以与他人分享:
clawhub sync --all这条命令会将你的技能发布到 ClawHub,其他用户就可以安装它们了。
安全性#
⚠️ 重要:来自不熟悉作者的技能就像来自陌生人的程序。安装前请:
- 阅读技能描述
- 查看 SKILL.md 文件(技能具体做什么)
- 对不信任的技能使用沙箱(sandbox)运行
本课总结#
- 技能是教助手执行特定任务的说明
- 每个技能是一个包含 SKILL.md 文件的文件夹
- ClawHub (clawhub.ai) 是现成技能的目录
- 技能从工作文件夹、通用文件夹和内置技能中加载
- 创建自己的技能很简单:文件夹 + 带说明的 SKILL.md 文件
- 安装/创建技能后需要新会话(
/new) - 使用前请检查来自不熟悉作者的技能
下一课:自动化