【保姆级教程】OpenClaw Skill 指南:从零开始打造你的专属 AI 助手

标签: OpenClaw | AI 助手 | 技能配置 | 保姆级教程教程
阅读时间: 15 分钟
难度: ⭐⭐(适合新手)
一. 📖 前言
你是否想过让你的 AI 助手更聪明、更专业?
OpenClaw 是一个开源的个人 AI 助手,它可以:
• 📧 清理收件箱、发送邮件、管理日历
• 📱 通过 WhatsApp、Telegram 等聊天应用使用
• 💻 拥有持久记忆、24/7 上下文保持
• 🔌 支持自定义扩展(Skill)
Skill(技能)系统就是让 OpenClaw 更强大的核心!通过 Skill,你可以:
• ✅ 扩展能力:让助手学会新工具和新技能
• ✅ 专业化定制:打造领域专精的助手(如代码助手、翻译助手)
• ✅ 社区共享:从 ClawHub 下载别人写好的技能
• ✅ 灵活配置:按需启用/禁用技能
本文将带你从零开始,一步步掌握 OpenClaw Skill 的配置和使用,打造属于你的专属 AI 助手!
二. 🎯 什么是 Skill?
Skill 是 OpenClaw 的核心扩展机制,它本质上是一个包含 SKILL.md 文件的文件夹。
Skill 的核心结构
my-skill/ ├── SKILL.md # 必需:技能说明文件 ├── scripts/# 可选:脚本文件 ├── config/# 可选:配置文件 └── README.md # 可选:详细文档SKILL.md 的基本格式
--- name: my-skill description: 这是一个示例技能 ---# 技能说明 在这里描述技能的功能、使用方法和注意事项。 三. 📍 Skill 的加载位置与优先级
OpenClaw 从三个位置加载 Skill,优先级从高到低:
| 位置 | 路径 | 说明 ||----------------|------------------|---------------------|| Workspace Skills |<workspace>/skills | 当前工作区的技能(优先级最高) || Managed Skills |~/.openclaw/skills | 本地管理的技能 || Bundled Skills | 安装包内置 | OpenClaw 自带的技能(优先级最低)|冲突处理: 如果同名 Skill 存在,优先级高的会覆盖低的。
多 Agent 场景下的技能共享
• Per-agent skills:/skills(仅该 Agent 可见)
• Shared skills:~/.openclaw/skills(所有 Agent 共享)
🚀 第一步:创建你的第一个 Skill
让我们从零开始创建一个简单的 Skill!
- 创建技能目录
# 进入工作区的 skills 目录 cd ~/.openclaw/workspace/skills # 创建新技能文件夹 mkdir my-first-skill cd my-first-skill - 编写 SKILL.md
cat > SKILL.md <<'EOF'--- name: my-first-skill description: 我的第一个 OpenClaw 技能,用于演示 Skill 的基本结构 ---# 我的第一个 Skill## 功能介绍 这是一个示例技能,用于展示 OpenClaw Skill 的基本结构和使用方法。 ## 使用场景 当用户提到"我的第一个技能"或相关关键词时,激活此技能。 ## 使用方法1. 确认技能已正确加载 2. 根据用户需求执行相应操作 3. 返回结果给用户 ## 注意事项- 这是示例技能,实际使用时需要根据需求修改 - 确保文件编码为 UTF-8 EOF - 验证 Skill
创建完成后,重启 OpenClaw 会话,技能会自动加载!
⚙️ 第二步:配置 Skill
Skill 的配置在 ~/.openclaw/openclaw.json 文件中。
基本配置结构
{ skills:{// 技能加载配置 load:{ watch: true,// 启用文件监听(自动重载) watchDebounceMs:250,// 防抖延迟(毫秒) extraDirs:[],// 额外的技能目录 },// 技能条目配置 entries:{"my-skill":{ enabled: true,// 是否启用 apiKey:{ source:"env", provider:"default",id:"MY_API_KEY"}, env:{ MY_API_KEY:"your-key-here",}, config:{// 技能自定义了配置 endpoint:"https://api.example.com",},},},// 允许的内置技能(白名单模式) allowBundud: null,// null=全部允许,数组=仅允许列表中的 },}常用配置选项
| 选项 | 类型 | 说明 ||-------|-------------|--------|| enabled | boolean | 启用/禁用技能 || apiKey |object/string | API 密钥配置 || env |object| 环境变量注入 || config |object| 技能自定义配置 |🔌 第三步:Skill 元数据与过滤
通过 metadata 字段,你可以控制 Skill 的加载条件和行为。
基本元数据
--- name: my-skill description: 示例技能 metadata:{"openclaw":{"emoji":"🚀","homepage":"https://example.com","requires":{"bins":["python","node"],"env":["MY_API_KEY"],"config":["browser.enabled"]},"primaryEnv":"MY_API_KEY","install":[{"id":"npm","kind":"node","package":"my-package","bins":["my-cli"],"label":"Install via npm",}],},}---元数据字段说明
| 字段 | 说明 ||---------------|------------------------|| emoji | 技能图标(用于 UI 显示) || homepage | 技能主页 URL || requires.bins | 需要的系统命令 || requires.env | 需要的环境变量 || requires.config | 需要的配置项 || primaryEnv | 主要环境变量(用于 apiKey 配置)|| install | 安装说明(用于 macOS Skills UI)|📦 第四步:使用 ClawHub 安装技能
ClawHub 是 OpenClaw 的公共技能仓库,可以轻松发现和安装社区技能。
安装 ClawHub CLI
# 使用 npm 安装 npm install -g clawhub # 或使用 pnpm pnpm add -g clawhub 搜索技能
clawhub search "calendar"安装技能
# 安装到当前目录 clawhub install skill-name # 安装指定版本 clawhub install skill-name --version 1.0.0# 强制覆盖 clawhub install skill-name --force 更新技能
# 更新所有已安装的技能 clawhub update --all# 更新单个技能 clawhub update skill-name 查看已安装技能
clawhub list💡 第五步:实战案例
案例 1:创建一个代码生成技能
# 创建技能目录 mkdir ~/.openclaw/workspace/skills/code-generator cd ~/.openclaw/workspace/skills/code-generator # 编写 SKILL.md cat > SKILL.md <<'EOF'--- name: code-generator description: 生成各种编程语言的代码模板和示例 metadata:{"openclaw":{"emoji":"💻","requires":{"env":["OPENAI_API_KEY"]},"primaryEnv":"OPENAI_API_KEY",},}---# 代码生成器## 功能 根据用户需求生成不同编程语言的代码模板和示例。 ## 支持的语言- Python - JavaScript - Java - Go - Rust - C++## 使用方法1. 确认用户需要的编程语言 2. 生成对应的代码模板 3. 提供详细注释和使用说明 EOF 案例 2:配置 API 密钥
编辑 ~/.openclaw/openclaw.json:
{ skills:{ entries:{"code-generator":{ enabled: true, apiKey:"sk-your-api-key-here",},},},}🔧 第六步:高级技巧
- 技能热重载
启用文件监听后,修改 Skill 文件会自动重载:
{ skills:{ load:{ watch: true, watchDebounceMs:250,},},}- 插件技能
插件可以自带 Skill,在 openclaw.plugin.json 中声明:
{"skills":["./skills/my-skill"]}- 技能 Token 影响
每个 Skill 会消耗约 24 tokens(基础开销 + 字段长度)。优化方法:
• 保持 name 和 description 简洁
• 使用 disable-model-invocation 减少不必要的技能加载
四. 🎨 最佳实践
✅ DO(推荐做法)
- 清晰的命名:使用描述性的 skill 名称
- 完整的文档:在 SKILL.md 中提供详细说明
- 合理过滤:使用 metadata.requires 避免不必要的加载
- 安全第一:不在 Skill 中硬编码密钥
- 版本管理:使用语义化版本号
❌ DON’T(避免做法) - 硬编码密钥:使用 apiKey 或 env 配置
- 过度复杂:保持 Skill 简单专注
- 忽略错误:提供清晰的错误提示
- 重复造轮子:先搜索 ClawHub 是否有现成技能
📊 技能管理命令速查表
| 操作 | 命令 ||----|------------------------|| 搜索技能 | clawhub search "<query>"|| 安装技能 | clawhub install <slug>|| 更新技能 | clawhub update --all|| 列出技能 | clawhub list|| 发布技能 | clawhub publish <path>|| 同步技能 | clawhub sync --all|🎉 总结
通过本文,你已经掌握了:
- ✅ Skill 的基本概念和结构
- ✅ 如何创建和配置自定义 Skill
- ✅ 使用 ClawHub 安装社区技能
- ✅ 高级技巧和最佳实践
下一步
• 访问 ClawHub 发现更多技能
• 查看 OpenClaw 文档 了解更多细节
• 创建你的第一个 Skill 并分享给社区!
🔗 相关资源
• OpenClaw官网
• OpenClaw官方文档-Skills
• ClawHub技能仓库
• OpenClaw GitHub
• AgentSkill 规范