Skip to content

第8章 Skills扩展:让AI从"能说"到"能做"

💡 本章目标:深入理解Skills本质,学会使用ClawHub技能市场,掌握必装Skills推荐,学习自定义Skills开发和管理技巧。

⚠️ 重要提示:没有Skills的OpenClaw只是1个聊天机器人,有了Skills才能真正成为你的AI助手!

📊 Skills 生态概览:OpenClaw 拥有庞大的 Skills 生态系统,包括内置49个、官方93个、社区1715+个,总计1800+个可用 Skills。详细分类和说明请参考 Skills 生态说明


8.0 Skills本质:AI的"操作说明书"

8.0.1 什么是Skills?

简单理解

Skills 本质上就是教 AI 按固定流程做事的操作说明书,一旦写好,就能像函数一样反复调用。

可以把 Skills 看成把"某类事情应该怎么专业做"这件事,封装成1个可复用、可自动触发的能力模块。

形象比喻

把 AI 想象成1个刚毕业的聪明但没经验的实习生

  • 普通Prompt = 你每次都要从头教他怎么做事(今天教一遍,明天还得重新教)
  • Rule / 记忆 = 你给他贴一张"公司行为守则"在工位上(一直生效,但只能管态度和格式)
  • MCP / Tools = 你给他电脑装了一堆软件和API(他能调用外部工具,但不知道什么时候该用、怎么组合用)
  • Skills = 你直接给他一整套**"岗位培训大礼包"**(PDF+流程图+SOP+话术模板+常用脚本),告诉他:"当老板让你做这类事情时,就按这个文件夹里的方法来做"

8.0.2 Skills vs 传统Prompt

核心区别:按需加载 + 渐进式披露(只在需要时才把厚厚的 SOP 塞进上下文,极大节省 token)

对比项普通 PromptSkills 机制
每次都要重新描述否(只描述一次)
上下文长度占用每次全量塞入渐进式加载(只在触发时才读完整内容)
一致性依赖每次 prompt 质量高(固定 SOP + 模板)
复用性手动复制粘贴自动匹配 / slash 命令 / 项目共享
维护方式改一次 prompt 就要重新发修改 SKILL.md 文件,全局/项目生效

实际例子

比如我们平时写文章,在没有 Skills 之前,每次都要按以下步骤重复说:

帮我总结文章 → 翻译 → 改成公众号风格 → 加标题 → 输出 Markdown

有了 Skills 之后:

你只需要一句:使用「技术文章转公众号」Skill

AI 会自动按你设定的步骤执行。

8.0.3 Skills vs MCP vs Tools

三者的区别

特性SkillsMCPTools
核心作用知识复用能力扩展功能调用
实现方式Markdown文件服务器端配置API接口
使用难度⭐ 简单⭐⭐⭐ 复杂⭐⭐ 中等
Token消耗低(渐进式加载)高(启动时全量加载)中等
适用场景经验、最佳实践、工作流程连接API、数据库、外部工具单一功能调用
创建门槛任何人都可以创建需要编码能力需要API开发
部署要求无需服务器需要服务器端设置需要后端支持

使用建议

  • Skills:用于知识分享、经验复用、工作流程
  • MCP:用于连接外部系统、数据库、API
  • Tools:用于单一功能调用、快速集成

8.0.4 Skills的工作原理

渐进式加载机制

Skills用渐进式加载来高效管理上下文:

  1. 发现阶段:启动时,AI 只加载每个技能的名称和描述,只保留最基本的识别信息
  2. 激活阶段:当任务匹配某个技能的描述时,AI 才把完整的 SKILL.md 指令读入上下文
  3. 执行阶段:AI 按照指令执行,按需加载参考文件或运行代码

这种设计让 AI 保持快速,同时能按需获取更多信息。

Token消耗对比

传统方式(全量加载):
- 10个Skills × 500字/个 = 5000字
- 约1250 tokens

Skills方式(渐进式加载):
- 发现阶段:10个Skills × 50字/个 = 500字(约125 tokens)
- 激活阶段:只加载需要的1个Skills = 500字(约125 tokens)
- 总计:约250 tokens

节省:80% tokens

8.0.5 支持Skills的工具

目前能用 Skills 的主流客户端:

排序工具名是否免费使用Skills推荐人群技能存放默认路径备注
1Claude Code是(官方)所有人~/.claude/skills标准制定者,生态最全
2Cursor写代码最常用~/.cursor/skills几乎无缝兼容Claude Skills
3Trae / OpenCode追求性价比看工具设置国内用户较多
4VS Code + 插件部分支持已经深度用vscode插件设置里配置正在快速跟进
5扣子/其他国内平台部分支持喜欢网页版平台自带技能市场有的要会员

OpenClaw的优势

  • ✅ 完全兼容Claude Skills格式
  • ✅ 支持本地和云端部署
  • ✅ 可以通过飞书、企微、钉钉使用
  • ✅ 支持自定义Skills开发
  • ✅ 社区生态丰富(1715+个Skills)

8.0.6 Skills核心结构

最小Skills结构

1个 Skill 本质上就是1个 Markdown 文件(文件名固定为 SKILL.md)

my-skill/
└── SKILL.md   (唯一必需)

SKILL.md 基本模板

markdown
---
name: pdf-processing
description: 从 PDF 中提取文本和表格,填写表单,并合并文档
---

# PDF 处理

## 使用场景

当需要对 PDF 文件进行操作时使用,例如:
- 提取 PDF 文本或表格数据
- 填写 PDF 表单
- 合并多个 PDF 文件

## 提取文本

- 使用 `pdfplumber` 提取文本型 PDF 内容
- 扫描版 PDF 需配合 OCR 工具

## 填写表单

- 读取 PDF 表单字段
- 按输入数据填充并生成新文件

Skills核心结构示意图

Skills核心结构图 - SKILL.md定义技能能力

Frontmatter字段说明

字段必需说明
nameSkill 名称,最长 64 字符,只能使用小写字母、数字和 -,且不能以 - 开头或结尾
description功能与使用场景说明,最长 1024 字符,不能为空
license许可证名称或指向随 Skill 附带的许可证文件
compatibility环境与依赖说明(产品、系统包、网络权限等),最长 500 字符
metadata自定义键值对,用于扩展元数据(如作者、版本号)
allowed-tools允许使用的工具列表(空格分隔,实验性功能)

完整Skills结构(包含资源文件):

如果你需要一些参考资料、参考实例、执行脚本,可以使用更复杂的 Skill 目录结构:

my-skill/
├── SKILL.md      # 必需:指令 + 元数据
├── scripts/      # 可选:可执行代码
├── references/   # 可选:文档资料
└── assets/       # 可选:模板、资源

复杂Skills目录结构 - 包含脚本和依赖


🎯 Skills生态概览

最新数据(2026年2月)

  • 📊 总技能数:1715+个技能
  • 📁 主要分类:31个分类
  • 🌟 活跃贡献者:数百位开发者
  • 📈 增长速度:每月新增50+个技能

主要分类及技能数量

  • 🌐 Web前端开发:46个
  • 💻 编程代理和IDE:55个
  • 🔧 Git和GitHub:34个
  • ☁️ DevOps和云服务:144个
  • 🌐 浏览器和自动化:69个
  • 🎨 图像和视频生成:41个
  • 🤖 AI和LLMs:159个
  • 📊 数据和分析:18个
  • ✅ 生产力和任务管理:93个

💡 Skills是什么? Skills是OpenClaw的插件系统,是让AI助手从"能说"到"能做"的关键转变。安装了Skills之后,你的AI助手可以自动浏览网页、收发邮件、操作GitHub、控制智能家居、生成图片、管理任务,甚至控制你的Tesla汽车!

🔧 本章内容

  • 8.1 ClawHub技能市场
  • 8.2 核心Skills推荐
  • 8.3 Skills 安装方法
  • 8.4 实战应用案例
  • 8.5 安全使用指南
  • 8.6 Skills开发指南
  • 8.7 Skills管理技巧

8.1 ClawHub技能市场

8.1.1 什么是ClawHub

定义: ClawHub是OpenClaw的官方技能市场(https://clawhub.ai),类似于App Store,提供各种扩展功能。

核心价值

  • 🎯 扩展能力:让OpenClaw能做更多事情
  • 🚀 快速部署:一键安装,即刻使用
  • 🌍 社区驱动:开发者共享优质Skills
  • 🔄 持续更新:Skills不断优化升级
  • 📦 统一管理:安装、更新、备份一站式

与其他AI的区别

特性OpenClaw + SkillsChatGPT PluginsClaude
本地执行
系统操作
自定义开发
社区生态
免费使用部分付费

8.1.2 Skills加载机制

Skills加载位置

OpenClaw从3个位置加载Skills,优先级从高到低:

1. 工作区Skills:<workspace>/skills(最高优先级)
   - 单智能体专用
   - 项目特定的Skills
   
2. 托管/本地Skills:~/.openclaw/skills
   - 所有智能体共享
   - 用户自定义Skills
   
3. 内置Skills:随安装包发布(最低优先级)
   - OpenClaw官方Skills
   - 基础功能Skills

优先级规则

如果同名Skills存在于多个位置:
工作区Skills > 托管/本地Skills > 内置Skills

示例:
- 内置Skills:file-search v1.0
- 本地Skills:file-search v1.2(自定义版本)
- 工作区Skills:file-search v2.0(项目专用)

最终加载:工作区的 v2.0 版本

额外Skills目录

可以通过配置添加额外的Skills文件夹:

json
{
  "skills": {
    "load": {
      "extraDirs": [
        "/path/to/shared-skills",
        "/path/to/team-skills"
      ]
    }
  }
}

8.1.3 ClawHub使用指南

访问方式

bash
# 方式1:网页访问(推荐)
https://clawhub.ai

# 方式2:命令行工具
clawhub --help

# 方式3:OpenClaw内访问
你:打开ClawHub

常用命令

bash
# 搜索Skills
clawhub search <关键词>

# 查看Skills详情
clawhub info <skill-slug>

# 安装Skills到工作区
clawhub install <skill-slug>

# 安装到指定目录
clawhub install <skill-slug> --dir /path/to/skills

# 更新单个Skills
clawhub update <skill-slug>

# 更新所有Skills
clawhub update --all

# 同步(扫描+发布更新)
clawhub sync --all

# 列出已安装的Skills
clawhub list

# 卸载Skills
clawhub uninstall <skill-slug>

安装位置说明

bash
# 默认安装到当前工作目录
clawhub install nano-banana-pro
# 安装到:./skills/nano-banana-pro/

# 如果不在工作目录,回退到配置的工作区
# 安装到:<workspace>/skills/nano-banana-pro/

ClawHub界面布局

ClawHub技能市场 - 浏览和安装技能

8.1.3 技能分类和搜索

主要分类

1. 文件管理类

  • 文件搜索
  • 文件整理
  • 批量处理
  • 格式转换

2. 知识管理类

  • 网页剪藏
  • 笔记同步
  • 文献管理
  • 知识图谱

3. 日程管理类

  • 日历同步
  • 提醒设置
  • 任务管理
  • 时间追踪

4. 自动化类

  • 定时任务
  • 网站监控
  • 数据采集
  • 流程自动化

5. 工具类

  • 截图工具
  • 翻译助手
  • 计算器
  • 单位转换

6. 娱乐休闲类

  • 音乐播放
  • 天气查询
  • 新闻阅读
  • 游戏娱乐

搜索技巧

# 按名称搜索
搜索:file-search

# 按功能搜索
搜索:文件搜索

# 按标签搜索
搜索:#文件管理 #效率工具

# 按作者搜索
搜索:@作者名

# 组合搜索
搜索:文件 #管理 @官方

8.1.4 技能评价体系

评价维度

维度说明权重
⭐ 评分用户评分(1-5星)30%
📥 下载量安装次数20%
🔄 更新频率维护活跃度20%
📝 文档质量说明完善度15%
🐛 Bug数量稳定性15%

评分标准

⭐⭐⭐⭐⭐ (5.0) - 完美
- 功能完善
- 文档详细
- 无明显Bug
- 持续更新

⭐⭐⭐⭐ (4.0-4.9) - 优秀
- 功能完整
- 文档清晰
- 偶尔小Bug
- 定期更新

⭐⭐⭐ (3.0-3.9) - 良好
- 基本功能可用
- 文档一般
- 有些Bug
- 更新较慢

⭐⭐ (2.0-2.9) - 一般
- 功能不完整
- 文档缺失
- Bug较多
- 很少更新

⭐ (1.0-1.9) - 较差
- 功能有问题
- 无文档
- Bug很多
- 不再维护

如何选择Skills

✅ 推荐安装:
- 评分 ≥ 4.0
- 下载量 > 1000
- 最近3个月有更新
- 文档完善

⚠️ 谨慎安装:
- 评分 3.0-3.9
- 下载量 < 1000
- 更新不频繁
- 文档不全

❌ 不推荐:
- 评分 < 3.0
- 长期不更新
- 无文档
- Bug多

8.1.5 Skills 安装和管理

安装方式

方式1:通过ClawHub安装

1. 打开ClawHub
2. 搜索Skills
3. 点击"安装"按钮
4. 等待安装完成

方式2:通过命令行安装

bash
# 安装单个Skill
openclaw skill install file-search

# 安装多个Skills
openclaw skill install file-search note-sync calendar-sync

# 从URL安装
openclaw skill install https://github.com/user/skill-name

方式3:通过OpenClaw对话安装

你:帮我安装file-search这个Skill

OpenClaw:好的,我来帮你安装!

正在安装 file-search...
- 下载中... ✅
- 解压中... ✅
- 配置中... ✅
- 测试中... ✅

安装成功!✅

Skill信息:
- 名称:File Search
- 版本:v1.2.0
- 作者:OpenClaw官方
- 功能:智能文件搜索

现在你可以使用文件搜索功能了!

查看已安装Skills

bash
# 列出所有已安装的Skills
openclaw skill list

# 输出示例:
已安装Skills(12个):

文件管理类(3个):
 file-search v1.2.0
 file-organizer v2.0.1
 batch-processor v1.5.0

知识管理类(4个):
 web-clipper v1.8.0
 note-sync v2.1.0
 github-manager v1.3.0
 paper-reader v1.0.5

日程管理类(2个):
 calendar-sync v3.0.0
 reminder v1.4.0

工具类(3个):
 screenshot v2.2.0
 translator v1.6.0
 calculator v1.1.0

更新Skills

bash
# 检查更新
openclaw skill update --check

# 更新所有Skills
openclaw skill update --all

# 更新指定Skill
openclaw skill update file-search

# 输出示例:
检查更新中...

发现3个可更新的Skills:
1. file-search: v1.2.0 v1.3.0
2. note-sync: v2.1.0 v2.2.0
3. calendar-sync: v3.0.0 v3.1.0

是否更新?[Y/n]

卸载Skills

bash
# 卸载单个Skill
openclaw skill uninstall file-search

# 卸载多个Skills
openclaw skill uninstall file-search note-sync

# 输出示例:
正在卸载 file-search...
- 停止服务...
- 清理配置...
- 删除文件...

卸载成功!✅

8.2 必装Skills推荐

8.2.1 文件管理类Skills

1. file-search(智能文件搜索)

⭐ 评分:5.0/5.0
📥 下载量:50,000+
👤 作者:OpenClaw官方

功能:
- 基于内容的智能搜索
- 支持多种文件格式
- 快速索引和检索
- 模糊匹配

使用示例:
你:搜索包含"发票"的PDF文件

OpenClaw:找到3个匹配文件:
1. 2026年1月发票.pdf
2. 跑步机购买发票.pdf
3. 办公用品发票.pdf

2. file-organizer(文件自动整理)

⭐ 评分:4.8/5.0
📥 下载量:35,000+
👤 作者:OpenClaw官方

功能:
- 智能分类文件
- 批量重命名
- 重复文件检测
- 自动归档

使用示例:
你:整理下载文件夹

OpenClaw:正在整理...
- 图片 → Pictures/Downloads/
- 文档 → Documents/Downloads/
- 视频 → Videos/Downloads/
- 其他 → Others/Downloads/

整理完成!共处理156个文件 ✅

3. batch-processor(批量文件处理)

⭐ 评分:4.7/5.0
📥 下载量:28,000+
👤 作者:社区开发者

功能:
- 批量格式转换
- 批量压缩
- 批量提取信息
- 批量重命名

使用示例:
你:把这个文件夹里的所有PNG转成JPG

OpenClaw:正在转换...
- image1.png → image1.jpg ✅
- image2.png → image2.jpg ✅
- image3.png → image3.jpg ✅
...
共转换25个文件 ✅

8.2.2 知识管理类Skills

4. web-clipper(网页剪藏)

⭐ 评分:4.9/5.0
📥 下载量:45,000+
👤 作者:OpenClaw官方

功能:
- 网页内容抓取
- 智能摘要生成
- 多平台保存(备忘录/Notion/Obsidian)
- 标签管理

使用示例:
你:保存这篇文章到备忘录
https://example.com/article

OpenClaw:已保存!
标题:AI技术发展趋势
摘要:[自动生成的摘要]
标签:#AI #技术 #趋势
位置:备忘录 > AI学习 ✅

5. note-sync(笔记同步)

⭐ 评分:4.8/5.0
📥 下载量:32,000+
👤 作者:OpenClaw官方

功能:
- 多平台笔记同步
- 实时备份
- 版本控制
- 冲突解决

支持平台:
- Mac备忘录
- Notion
- Obsidian
- Evernote

6. github-manager(GitHub项目管理)

⭐ 评分:4.6/5.0
📥 下载量:25,000+
👤 作者:社区开发者

功能:
- 项目信息分析
- README总结
- 代码结构理解
- Star/Fork追踪

使用示例:
你:分析这个GitHub项目
https://github.com/user/project

OpenClaw:分析完成!
项目:Awesome Project
Stars:15.3k
语言:TypeScript
核心功能:[详细分析]
推荐指数:⭐⭐⭐⭐⭐

8.2.3 日程管理类Skills

7. calendar-sync(日历同步)

⭐ 评分:5.0/5.0
📥 下载量:60,000+
👤 作者:OpenClaw官方

功能:
- Mac日历集成
- 自动创建事件
- 智能提醒
- 跨设备同步

使用示例:
你:明天下午3点,会议室A开会

OpenClaw:已创建日历事件!
标题:会议
时间:2026-02-12 15:00-16:00
地点:会议室A
提醒:提前15分钟 ✅

8. reminder(智能提醒)

⭐ 评分:4.7/5.0
📥 下载量:38,000+
👤 作者:OpenClaw官方

功能:
- 多级提醒设置
- 智能提醒策略
- 位置提醒
- 重复提醒

使用示例:
你:每天早上8点提醒我喝水

OpenClaw:已设置提醒!
内容:该喝水了💧
时间:每天 08:00
方式:飞书消息 ✅

8.2.4 自动化类Skills

9. scheduler(任务调度)

⭐ 评分:4.9/5.0
📥 下载量:42,000+
👤 作者:OpenClaw官方

功能:
- 定时任务设置
- Cron表达式支持
- 任务依赖管理
- 错误重试

使用示例:
你:每天早上8点推送AI日报

OpenClaw:已设置定时任务!
任务:AI日报推送
时间:每天 08:00
Cron:0 8 * * *
状态:已启用 ✅

10. monitor(网站监控)

⭐ 评分:4.6/5.0
📥 下载量:28,000+
👤 作者:社区开发者

功能:
- 网站变化检测
- 价格监控
- 内容更新提醒
- RSS订阅

使用示例:
你:监控这个博客的更新
https://example-blog.com

OpenClaw:已设置监控!
网站:Example Blog
频率:每天2次
通知:飞书消息 ✅

8.2.5 工具类Skills

11. screenshot(截图工具)

⭐ 评分:4.8/5.0
📥 下载量:35,000+
👤 作者:OpenClaw官方

功能:
- 全屏截图
- 窗口截图
- 区域截图
- OCR识别

使用示例:
你:截图当前屏幕

OpenClaw:已截图!
[发送截图]
是否需要OCR识别文字?

截图技能演示 - 自动捕获屏幕内容

12. translator(翻译助手)

⭐ 评分:4.7/5.0
📥 下载量:30,000+
👤 作者:社区开发者

功能:
- 多语言翻译
- 实时翻译
- 文档翻译
- 术语库管理

使用示例:
你:把这段话翻译成英文
"人工智能正在改变世界"

OpenClaw:翻译结果:
"Artificial Intelligence is changing the world"

8.2.6 Skills推荐总结

必装Top 10

排名Skill分类评分推荐理由
1calendar-sync日程管理5.0日历集成必备
2file-search文件管理5.0文件搜索神器
3web-clipper知识管理4.9知识收集利器
4scheduler自动化4.9定时任务必备
5note-sync知识管理4.8笔记同步工具
6file-organizer文件管理4.8文件整理助手
7screenshot工具4.8截图OCR工具
8reminder日程管理4.7智能提醒系统
9batch-processor文件管理4.7批量处理工具
10translator工具4.7翻译助手

安装建议

bash
# 基础套装(必装)
openclaw skill install calendar-sync file-search web-clipper

# 进阶套装(推荐)
openclaw skill install scheduler note-sync file-organizer

# 完整套装(全能)
openclaw skill install calendar-sync file-search web-clipper \
  scheduler note-sync file-organizer screenshot reminder \
  batch-processor translator

8.2.7 核心Skills详解(2026年必备)

💡 新增内容:基于1715+个技能生态,精选7大核心技能,每个都经过实战验证。

1. McPorter——跨平台连接基石 🏗️

核心作用: 让OpenClaw支持MCP(Model Context Protocol)协议,无需编写胶水代码,直接连接成千上万个现成的MCP Server。

支持平台

  • PostgreSQL数据库
  • GitHub
  • Slack
  • Notion
  • 其他主流平台

安装命令

bash
npx clawhub@latest install mcporter

配置示例

bash
# 配置MCP服务器(以连接本地文件为例)
openclaw mcp add --transport stdio local-files npx -y @modelcontextprotocol/server-filesystem /root/Documents

使用场景

  • "读取Notion中的项目文档,整理成Markdown"
  • "把GitHub上的最新代码提交记录同步到本地"

真实效果:某开发团队使用McPorter技能,将日常协作效率提升了3倍。

2. Brave Search——实时信息检索 🔍

核心作用: 解决传统AI Agent"数据过时"的问题,让OpenClaw能进行实时全网搜索,获取最新的GitHub Issue、StackOverflow解答、行业资讯。

安装命令

bash
npx clawhub@latest install brave-search

使用场景

  • 代码报错排查:"帮我排查这个Python报错的原因,找最新的解决方案"
  • 竞品调研:"查一下某产品最新功能的实现方式,附代码片段"

效果:2分钟即可得到带参考链接的详细报告,告别"凭训练数据瞎猜"的时代。

3. TranscriptAPI——视频知识提取 🎥

核心作用: 稳定抓取YouTube视频字幕,带精确时间戳,将视频中的知识转化为可编辑的文本。

安装命令

bash
npx clawhub@latest install transcript-api

使用场景: "提取这个2小时Next.js教程视频的核心代码逻辑,按章节整理成学习笔记"

价值:无需手动拉进度条,AI直接将知识"喂到嘴边",学习效率提升3倍以上。

4. File System Manager——本地文件处理 💾

核心作用: 赋予OpenClaw本地文件的读写、修改、重构权限,支持批量修改代码、修复语法错误、自动提交Git。

安装命令

bash
npx clawhub@latest install file-system-manager

1Password CLI集成 - 安全管理密码凭证

重要安全配置

bash
# 配置授权目录(仅开放工作目录,避免全硬盘访问)
openclaw config set fs.allow-path /root/Projects

使用场景

  • "帮我重构这个React组件,优化代码结构并修复ESLint报错"
  • "将本地Markdown文件转为PDF,保存到指定目录"

注意:该技能是双刃剑,需严格控制访问目录,避免误操作。

5. Headless Browser (Playwright)——浏览器自动化 🤖

核心作用: 模拟真实人类的浏览器操作,支持点击、输入、截图、表单提交,针对无API的老旧网站实现自动化操作。

安装命令

bash
npx clawhub@latest install playwright-headless

使用场景

  • "每天早上8点自动登录公司抢票系统,帮我预约车票"
  • "定时截图某政府网站的公告,有更新就保存并提醒"

注意:该功能过于强大,需合规使用,避免违反平台规则。

6. Design-Doc-Mermaid——图表自动生成 📊

核心作用: 通过自然语言指令生成Mermaid代码,自动渲染架构图、时序图、流程图。

安装命令

bash
npx clawhub@latest install design-doc-mermaid

使用场景: "帮我画1个用户注册的时序图,包含前端、后端、数据库交互"

效果:AI直接生成Mermaid代码并渲染成图,告别用画图工具手动拖拽的时代。

7. Google Workspace集成——办公自动化 📧

核心作用: 无缝连接Gmail、Google Calendar、Google Docs,实现邮件整理、日程同步、文档自动生成。

安装命令

bash
npx clawhub@latest install google-workspace

授权配置

bash
# 授权Google账号(按终端提示完成浏览器认证)
openclaw auth google

使用场景

  • "查一下我这周的Gmail邮件和Calendar日程,生成一份简洁的周报,发给老板"
  • "根据会议纪要,自动创建Google Calendar日程,邀请参会人员"

8. find-skills + ProactiveAgent——Skills双幻神 🌟🌟

核心作用

  • find-skills:智能发现Skills,OpenClaw遇到问题时自动寻找合适的Skills
  • ProactiveAgent:主动预测需求,观察使用习惯后主动提出自动化建议

安装命令

bash
# 安装Skills双幻神
npx clawhub@latest install find-skills
npx clawhub@latest install proactive-agent

使用场景

  • find-skills:当OpenClaw无法完成某个任务时,自动搜索并推荐合适的Skills
  • ProactiveAgent:做了几次日报转HTML后,主动问"要不要我帮你自动化这个流程?"

GitHub链接

⚠️ 安全提示:ProactiveAgent安装时可能显示VirusTotal警告(因包含外部API调用),这是正常的,可以安全使用。

核心Skills 安装命令汇总

bash
# 一键安装9大核心Skills(包含Skills双幻神)
npx clawhub@latest install mcporter brave-search transcript-api \
  file-system-manager playwright-headless design-doc-mermaid google-workspace \
  find-skills proactive-agent

8.3 Skills 安装方法详解

💡 三种安装方式:ClawHub CLI(推荐)、对话式安装(最简单)、手动安装(高级用户)

8.3.1 方法一:ClawHub CLI一键安装(推荐)⭐

特点

  • ✅ 最简单、最快捷
  • ✅ 自动处理依赖
  • ✅ 支持版本管理

安装命令

bash
npx clawhub@latest install &lt;技能名称&gt;

实际示例

bash
# 安装网页搜索技能
npx clawhub@latest install brave-search

# 安装多个技能
npx clawhub@latest install brave-search transcript-api file-system-manager

常用管理命令

bash
# 查看已安装技能
npx clawhub@latest list

# 更新技能
npx clawhub@latest update &lt;skill-slug&gt;

# 卸载技能
npx clawhub@latest uninstall &lt;skill-slug&gt;

# 更新所有技能
npx clawhub@latest update --all

8.3.2 方法二:对话式安装(最懒人方式)

特点

  • ✅ 无需命令行
  • ✅ 适合新手
  • ✅ AI自动配置

使用方法

直接在聊天界面中输入:

请安装这个技能:https://github.com/openclaw/skills/tree/main/skills/steipete/brave-search

AI会自动帮你下载和配置,完全不需要手动操作!

适用场景

  • 不熟悉命令行的用户
  • 快速测试某个技能
  • 临时安装单个技能

8.3.3 方法三:手动安装(高级用户)

特点

  • ✅ 完全掌控
  • ✅ 可自定义配置
  • ✅ 适合开发调试

安装步骤

bash
# 1. 克隆技能仓库
git clone https://github.com/openclaw/skills

# 2. 复制到全局技能目录
cp -r skills/skills/&lt;作者&gt;/&lt;技能名&gt; ~/.openclaw/skills/

# 3. 重启OpenClaw
openclaw gateway restart

8.4 实战应用案例

💡 三大场景完整案例:内容创作、团队协作、智能家居,都有真实数据支撑。

8.4.1 场景一:自动化内容创作流程 ✍️

需求背景: 自媒体博主每天需要发布3篇公众号文章,包括搜索资料、撰写内容、配图、排版,传统方式需要6小时/天。

使用的Skills组合

  1. brave-search - 搜索最新资讯
  2. deep-research - 深度研究主题
  3. fal-ai - 生成配图
  4. notion - 保存草稿
  5. markdown-formatter - 格式化文章

效果对比

指标传统方式使用 OpenClaw Skills
⏰ 时间消耗6小时/天2小时/天
📈 文章产量3篇/天5篇/天
💰 配图成本300元/天0元/天

具体操作流程

  1. 信息收集:使用brave-search搜索当日热点话题
  2. 深度研究:通过deep-research对选定话题进行深入分析
  3. 内容生成:AI根据研究成果自动撰写文章草稿
  4. 配图生成:使用fal-ai生成原创配图,避免版权问题
  5. 格式排版:自动格式化为公众号要求的样式

8.4.2 场景二:开发团队协作自动化 💻

需求背景: 10人开发团队需要管理日常协作,包括代码审查、任务分配、进度跟踪等。

使用的Skills组合

  1. github - 代码仓库管理
  2. linear - 任务分配
  3. slack - 团队通知
  4. google-calendar - 会议安排

效果提升

  • 📊 PR审查时间:从2天降到4小时
  • 🎯 任务分配效率:提升80%
  • 💬 沟通成本:减少50%
  • 📅 会议安排:自动化100%

安装命令

bash
npx clawhub@latest install github linear-integration slack-bot google-workspace

自动化工作流

  1. 自动代码审查:每次PR提交自动进行基础代码检查
  2. 任务自动分配:根据团队成员工作量和专长智能分配任务
  3. 进度自动同步:每日自动生成项目进度报告并发送到Slack
  4. 会议自动安排:根据团队成员日历自动安排最佳会议时间

8.4.3 场景三:智能家居全自动化 🏠

需求背景: 根据天气、时间、位置自动控制家中所有设备,提升生活品质。

使用的Skills组合

  1. home-assistant - 智能家居控制
  2. weather-api - 天气查询
  3. location-tracker - 位置追踪
  4. automation-scheduler - 自动化调度

实现的智能场景

  • 🌅 早晨唤醒:早上7点自动打开窗帘、启动咖啡机
  • 🌧️ 天气适应:下雨时自动关闭窗户
  • 🚗 离家模式:离家10分钟自动关闭所有灯光和空调
  • 🏠 回家预热:到家前5分钟自动打开空调和灯光

安装命令

bash
npx clawhub@latest install home-assistant weather-api location-tracker automation-scheduler

8.5 安全使用指南

⚠️ 重要:Skills虽然强大,但也存在安全风险。必须严格遵循安全原则。

8.5.1 核心安全原则

  1. 隔离运行环境:重要的OpenClaw实例建议运行在Docker或专用虚拟机中
  2. 严控权限范围:对高危Skill仅开放必要的工作目录/操作权限
  3. 优先官方认证:安装带"官方认证""高星标"的技能
  4. 安装前检查代码:查看技能代码确认无恶意逻辑

8.5.2 安全配置命令

权限控制

bash
# 查看Skill的核心代码,确认无恶意逻辑
clawhub view file-system-manager

# 限制OpenClaw的系统资源使用
docker update --cpus=1 --memory=2g openclaw-2026

# 备份OpenClaw 配置,防止恶意修改
docker cp openclaw-2026:/root/.openclaw /root/openclaw-backup

安全检查清单

  • ✅ 查看技能的GitHub仓库
  • ✅ 检查技能的依赖项
  • ✅ 阅读技能的权限要求
  • ✅ 使用skill-scanner扫描恶意代码
  • ✅ 在测试环境中先试用

8.5.3 故障排查

问题一:技能安装失败

bash
# 网络超时问题:检查服务器网络连接
ping github.com

# 配置国内镜像源(如遇网络问题)
npm config set registry https://registry.npmmirror.com

问题二:技能加载失败

bash
# 查看技能加载状态
openclaw plugins list

# 重新加载技能
openclaw plugins load &lt;skill-name&gt;

# 更新所有技能
clawhub update --all
openclaw gateway restart

问题三:技能执行无响应

bash
# 查看技能执行日志
openclaw logs --skill &lt;skill-name&gt;

# 检查权限配置
openclaw config get fs.allow-path

8.6 Skills开发指南

💡 创建自定义Skills:如果现有的1715+个技能无法满足你的特殊需求,可以创建自己的技能。

8.6.1 创建自定义Skills

创建步骤

  1. 创建技能文件夹:在 ~/.openclaw/skills/ 中创建新文件夹
  2. 编写描述文件:创建 SKILL.md 描述文件
  3. 添加脚本配置:编写必要的脚本和配置文件
  4. 测试技能功能:在本地测试技能是否正常工作
  5. 分享到社区:将技能贡献给社区

技能目录结构

my-custom-skill/
├── SKILL.md          # 技能描述文档
├── config.json       # 配置文件
├── scripts/          # 执行脚本
│   └── main.js
└── README.md         # 使用说明

项目文件结构示例

自定义Skills项目结构 - 完整的开发示例

你的项目现在看起来应该是这样的:

my-project/
├─ src/
│  └─ test.py              # 项目源码
├─ .claude/
│  ├─ skills/
│  │  └─ hello-world/
│  │     ├─ SKILL.md       # Skill 定义(YAML + Instructions,机器可执行)
│  │     └─ README.md      # Skill 说明(人类阅读,可选)
│  └─ config.yml           # Claude 项目级配置(可选)
├─ .gitignore
└─ README.md               # 项目整体说明

Claude Code执行效果

接下来我们在终端执行以下命令启动 Claude Code:

bash
claude

输入任务:

帮我写1个计算用户折扣的函数

Claude 会扫描已安装的 Skills,发现你的请求涉及 "Python 代码编写",匹配了 python-naming-standard。

Claude Code执行效果 - Skills自动匹配和调用

它会根据 SKILL.md 中的要求,生成如下代码:

python
def _internal_get_discount(user_score):
    # 计算逻辑...
    return discount

8.6.2 技能开发最佳实践

设计原则

  1. 单一职责:每个技能只解决1个特定问题
  2. 接口简单:提供清晰简单的使用接口
  3. 错误处理:完善的错误处理和用户提示
  4. 文档完整:提供详细的使用文档和示例

示例技能模板

javascript
// 简单技能示例
module.exports = {
  name: "my-custom-skill",
  description: "这是我的自定义技能",
  version: "1.0.0",
  
  async execute(params, context) {
    try {
      // 技能核心逻辑
      const result = await doSomething(params);
      return { success: true, data: result };
    } catch (error) {
      return { success: false, error: error.message };
    }
  }
};

8.7 自定义Skills开发(原8.3节)

8.3.1 Skills开发基础

为什么要开发Skills

  1. 满足个性化需求

    • 官方Skills无法满足
    • 特定业务场景
    • 企业内部工具
  2. 学习和成长

    • 深入理解OpenClaw
    • 提升编程能力
    • 贡献开源社区
  3. 商业价值

    • 开发付费Skills
    • 提供定制服务
    • 建立个人品牌

开发前准备

bash
# 1. 安装开发工具
npm install -g openclaw

# 2. 创建开发环境
openclaw dev init

# 3. 学习文档
openclaw docs

# 4. 查看示例
openclaw examples

8.3.2 Skills文件格式(AgentSkills兼容)

基本格式

OpenClaw使用兼容AgentSkills的Skills文件夹。每个Skills是1个包含SKILL.md的目录。

最小示例

markdown
---
name: nano-banana-pro
description: Generate or edit images via Gemini 3 Pro Image
---

# Nano Banana Pro

这个Skills可以生成和编辑图片。

## 使用方法

发送:画一只可爱的猫

完整示例

markdown
---
name: gemini
description: Use Gemini CLI for coding assistance and Google search lookups.
homepage: https://github.com/example/gemini-skill
user-invocable: true
disable-model-invocation: false
metadata: {
  "openclaw": {
    "emoji": "♊️",
    "requires": {
      "bins": ["gemini"],
      "env": ["GEMINI_API_KEY"]
    },
    "primaryEnv": "GEMINI_API_KEY",
    "install": [
      {
        "id": "brew",
        "kind": "brew",
        "formula": "gemini-cli",
        "bins": ["gemini"],
        "label": "Install Gemini CLI (brew)"
      }
    ]
  }
}
---

# Gemini Skills

使用Gemini CLI进行编程辅助和Google搜索。

## 功能

- 代码生成
- 问题解答
- 网络搜索

## 使用方法

发送:用Gemini搜索最新的AI新闻

Frontmatter字段说明

字段必填说明
nameSkills名称(唯一标识)
descriptionSkills描述
homepage项目主页URL
user-invocable是否作为斜杠命令暴露(默认true)
disable-model-invocation是否从模型提示词中排除(默认false)
command-dispatch命令调度模式(tool=直接调度到工具)
command-tool要调用的工具名称
command-arg-mode参数模式(raw=原始字符串)
metadata元数据(单行JSON对象)

注意事项

⚠️ 重要:
1. 内嵌智能体的解析器仅支持单行frontmatter键
2. metadata必须是单行JSON对象
3. 在说明中使用{baseDir}引用Skills文件夹路径

8.3.3 Skills门控(加载时过滤)

什么是门控

门控是指在加载时根据条件过滤Skills,只加载满足条件的Skills。

门控配置

通过metadata.openclaw配置门控条件:

markdown
---
name: nano-banana-pro
description: Generate or edit images
metadata: {
  "openclaw": {
    "requires": {
      "bins": ["uv"],
      "env": ["GEMINI_API_KEY"],
      "config": ["browser.enabled"]
    },
    "primaryEnv": "GEMINI_API_KEY",
    "os": ["darwin", "linux"]
  }
}
---

门控字段说明

字段说明示例
always始终包含(跳过其他门控)"always": true
os限制操作系统"os": ["darwin", "linux"]
requires.bins必需的二进制文件(全部)"bins": ["uv", "python"]
requires.anyBins必需的二进制文件(任一)"anyBins": ["npm", "yarn"]
requires.env必需的环境变量"env": ["API_KEY"]
requires.config必需的配置项"config": ["browser.enabled"]
primaryEnv主要环境变量名"primaryEnv": "GEMINI_API_KEY"

门控示例

markdown
# 示例1:仅macOS可用
metadata: {
  "openclaw": {
    "os": ["darwin"]
  }
}

# 示例2:需要特定工具
metadata: {
  "openclaw": {
    "requires": {
      "bins": ["ffmpeg", "imagemagick"]
    }
  }
}

# 示例3:需要API 密钥
metadata: {
  "openclaw": {
    "requires": {
      "env": ["OPENAI_API_KEY"]
    },
    "primaryEnv": "OPENAI_API_KEY"
  }
}

# 示例4:需要配置启用
metadata: {
  "openclaw": {
    "requires": {
      "config": ["features.experimental"]
    }
  }
}

8.3.4 Skills 安装器配置

什么是安装器

安装器定义了如何安装Skills所需的依赖(二进制文件、包等)。

支持的安装器类型

  1. Homebrew(macOS/Linux)
  2. Node包管理器(npm/pnpm/yarn/bun)
  3. Go
  4. UV(Python)
  5. Download(直接下载)

安装器示例

markdown
---
name: gemini
metadata: {
  "openclaw": {
    "install": [
      {
        "id": "brew",
        "kind": "brew",
        "formula": "gemini-cli",
        "bins": ["gemini"],
        "label": "Install Gemini CLI (brew)",
        "os": ["darwin", "linux"]
      },
      {
        "id": "npm",
        "kind": "node",
        "package": "gemini-cli",
        "bins": ["gemini"],
        "label": "Install Gemini CLI (npm)",
        "global": true
      }
    ]
  }
}
---

安装器字段说明

字段说明
id安装器唯一标识
kind安装器类型(brew/node/go/uv/download)
formulaHomebrew formula名称
packagenpm包名称
bins安装后的二进制文件列表
label显示给用户的标签
os支持的操作系统
global是否全局安装(Node)

Download安装器

markdown
metadata: {
  "openclaw": {
    "install": [
      {
        "id": "download-mac",
        "kind": "download",
        "url": "https://example.com/tool-mac.tar.gz",
        "archive": "tar.gz",
        "extract": true,
        "stripComponents": 1,
        "targetDir": "~/.openclaw/tools/my-tool",
        "bins": ["my-tool"],
        "label": "Download for macOS",
        "os": ["darwin"]
      }
    ]
  }
}

安装器选择逻辑

1. 如果列出多个安装器,Gateway会选择首选选项:
   - 优先选择brew(如果可用)
   - 其次选择node
   - 最后选择其他

2. 如果所有安装器都是download类型:
   - OpenClaw会列出每个条目
   - 让用户选择适合的构件

3. Node安装遵循配置:
   - skills.install.nodeManager(默认npm)
   - 选项:npm/pnpm/yarn/bun

8.3.5 项目结构

标准Skills目录结构

my-skill/
├── SKILL.md              # Skills定义(必需)
├── README.md             # 说明文档
├── tools/                # 工具脚本
│   ├── setup.sh         # 安装脚本
│   └── cleanup.sh       # 清理脚本
├── examples/             # 示例
│   └── example.md
└── assets/               # 资源文件
    └── icon.png

SKILL.md引用文件

在SKILL.md中可以使用{baseDir}引用Skills文件夹路径:

markdown
---
name: my-skill
description: My custom skill
---

# My Skill

## 安装

运行安装脚本:
```bash
bash {baseDir}/tools/setup.sh

示例

查看示例:{baseDir}/examples/example.md

实战案例1:开发1个简单的Skills

typescript
// src/index.ts
import { Skill, SkillConfig } from '@openclaw/sdk';

export default class HelloSkill extends Skill {
  config: SkillConfig = {
    name: 'hello-skill',
    version: '1.0.0',
    description: '1个简单的问候Skills',
    author: '你的名字',
    keywords: ['问候', '示例'],
    permissions: []
  };

  async onMessage(message: string) {
    // 检测是否包含"你好"
    if (message.includes('你好')) {
      return '你好!我是Hello Skill,很高兴认识你!😊';
    }
    
    // 检测是否包含"再见"
    if (message.includes('再见')) {
      return '再见!期待下次见面!👋';
    }
    
    return null; // 不处理其他消息
  }
}

测试Skills

bash
# 启动开发服务器
npm run dev

# 在OpenClaw中测试
你:你好

OpenClaw:你好!我是Hello Skill,很高兴认识你!😊

实战案例2:封装第三方API

typescript
// src/index.ts
import { Skill, SkillConfig } from '@openclaw/sdk';
import axios from 'axios';

export default class WeatherSkill extends Skill {
  config: SkillConfig = {
    name: 'weather-skill',
    version: '1.0.0',
    description: '天气查询Skills',
    author: '你的名字',
    keywords: ['天气', 'API'],
    permissions: ['network']
  };

  private apiKey = 'your-api-key';
  private apiUrl = 'https://api.weather.com';

  async onMessage(message: string) {
    // 检测是否是天气查询
    const match = message.match(/(.+)的天气/);
    if (!match) return null;

    const city = match[1];
    
    try {
      // 调用天气API
      const response = await axios.get(`${this.apiUrl}/weather`, {
        params: {
          city: city,
          key: this.apiKey
        }
      });

      const weather = response.data;
      
      return `${city}的天气:
🌡️ 温度:${weather.temp}°C
☁️ 天气:${weather.condition}
💨 风力:${weather.wind}
💧 湿度:${weather.humidity}%`;
      
    } catch (error) {
      return `抱歉,查询${city}的天气失败了。`;
    }
  }
}

实战案例3:复杂Skills开发

typescript
// src/index.ts
import { Skill, SkillConfig } from '@openclaw/sdk';
import { FileManager } from './utils/file';
import { NotionAPI } from './utils/notion';

export default class NoteSkill extends Skill {
  config: SkillConfig = {
    name: 'note-skill',
    version: '1.0.0',
    description: '笔记管理Skills',
    author: '你的名字',
    keywords: ['笔记', 'Notion'],
    permissions: ['file:read', 'file:write', 'network']
  };

  private fileManager: FileManager;
  private notionAPI: NotionAPI;

  async onInit() {
    // 初始化文件管理器
    this.fileManager = new FileManager();
    
    // 初始化Notion API
    this.notionAPI = new NotionAPI({
      token: process.env.NOTION_TOKEN
    });
  }

  async onMessage(message: string) {
    // 保存笔记
    if (message.startsWith('保存笔记:')) {
      const content = message.replace('保存笔记:', '');
      return await this.saveNote(content);
    }

    // 搜索笔记
    if (message.startsWith('搜索笔记:')) {
      const keyword = message.replace('搜索笔记:', '');
      return await this.searchNote(keyword);
    }

    // 同步到Notion
    if (message === '同步到Notion') {
      return await this.syncToNotion();
    }

    return null;
  }

  private async saveNote(content: string) {
    try {
      // 保存到本地
      await this.fileManager.save('notes.md', content);
      return '笔记已保存到本地 ✅';
    } catch (error) {
      return '保存失败 ❌';
    }
  }

  private async searchNote(keyword: string) {
    try {
      // 搜索本地笔记
      const results = await this.fileManager.search(keyword);
      return `找到${results.length}条笔记:\n${results.join('\n')}`;
    } catch (error) {
      return '搜索失败 ❌';
    }
  }

  private async syncToNotion() {
    try {
      // 读取本地笔记
      const notes = await this.fileManager.readAll();
      
      // 同步到Notion
      for (const note of notes) {
        await this.notionAPI.createPage({
          title: note.title,
          content: note.content
        });
      }
      
      return `已同步${notes.length}条笔记到Notion ✅`;
    } catch (error) {
      return '同步失败 ❌';
    }
  }
}

8.3.4 调试和测试技巧

调试方法

1. 使用console.log

typescript
async onMessage(message: string) {
  console.log('收到消息:', message);
  
  // 你的逻辑
  const result = await this.process(message);
  console.log('处理结果:', result);
  
  return result;
}

2. 使用调试器

bash
# 启动调试模式
npm run dev:debug

# 在VSCode中设置断点
# 按F5开始调试

3. 单元测试

typescript
// tests/index.test.ts
import { describe, it, expect } from 'vitest';
import HelloSkill from '../src/index';

describe('HelloSkill', () => {
  it('should respond to hello', async () => {
    const skill = new HelloSkill();
    const response = await skill.onMessage('你好');
    expect(response).toContain('你好');
  });

  it('should respond to goodbye', async () => {
    const skill = new HelloSkill();
    const response = await skill.onMessage('再见');
    expect(response).toContain('再见');
  });
});

运行测试

bash
# 运行所有测试
npm test

# 运行单个测试
npm test -- index.test.ts

# 查看测试覆盖率
npm run test:coverage

8.3.5 发布到ClawHub

发布前检查

bash
# 1. 运行测试
npm test

# 2. 检查代码规范
npm run lint

# 3. 构建生产版本
npm run build

# 4. 检查包大小
npm run size

发布步骤

bash
# 1. 登录ClawHub
openclaw login

# 2. 发布Skills
openclaw skill publish

# 输出示例:
正在发布 hello-skill...
- 检查配置...
- 运行测试...
- 构建代码...
- 上传文件...
- 生成文档...

发布成功!✅

Skill信息:
- 名称:hello-skill
- 版本:v1.0.0
- 链接:https://clawhub.ai/skills/hello-skill

现在其他用户可以安装你的Skill了!

发布后维护

bash
# 更新Skills
openclaw skill update

# 查看下载统计
openclaw skill stats

# 查看用户反馈
openclaw skill feedback

8.4 Skills管理技巧

8.4.1 配置覆盖(~/.openclaw/openclaw.json)

配置Skills

内置/托管Skills可以通过配置文件进行切换和配置:

json
{
  "skills": {
    "entries": {
      "nano-banana-pro": {
        "enabled": true,
        "apiKey": "GEMINI_KEY_HERE",
        "env": {
          "GEMINI_API_KEY": "GEMINI_KEY_HERE"
        },
        "config": {
          "endpoint": "https://example.invalid",
          "model": "nano-pro"
        }
      },
      "peekaboo": {
        "enabled": true
      },
      "sag": {
        "enabled": false
      }
    }
  }
}

配置规则

1. 配置键默认匹配Skills名称
2. 如果Skills名称包含连字符,用引号括起键名
3. 如果Skills定义了metadata.openclaw.skillKey,使用该键

示例:
- Skills名称:file-search
- 配置键:"file-search"(需要引号)

配置字段说明

字段说明示例
enabled启用/禁用Skillstrue / false
apiKeyAPI 密钥(便捷字段)"your-api-key"
env环境变量{"KEY": "value"}
config自定义配置{"model": "gpt-4"}

环境变量注入规则

1. env中的变量仅在进程中尚未设置时注入
2. apiKey为声明primaryEnv的Skills提供便捷配置
3. config用于自定义单Skills字段
4. 环境变量在智能体运行时注入,运行结束后恢复

示例配置

json
{
  "skills": {
    "entries": {
      // 配置Gemini Skills
      "gemini": {
        "enabled": true,
        "apiKey": "your-gemini-key",
        "config": {
          "model": "gemini-pro",
          "temperature": 0.7
        }
      },
      
      // 配置Banana绘图
      "nano-banana-pro": {
        "enabled": true,
        "env": {
          "GEMINI_API_KEY": "your-key",
          "BANANA_ENDPOINT": "https://api.banana.dev"
        }
      },
      
      // 禁用某个Skills
      "unwanted-skill": {
        "enabled": false
      }
    },
    
    // 仅允许特定内置Skills(可选)
    "allowBundled": [
      "file-search",
      "calendar-sync",
      "web-clipper"
    ]
  }
}

allowBundled白名单

json
{
  "skills": {
    "allowBundled": [
      "file-search",
      "note-sync"
    ]
  }
}

说明:

  • 如果设置了allowBundled,只有列表中的内置Skills才有资格
  • 托管/工作区Skills不受影响
  • 用于限制内置Skills的加载

8.4.2 Skills监视器(自动刷新)

什么是Skills监视器

Skills监视器会监视Skills文件夹,当SKILL.md文件更改时自动更新Skills快照。

配置监视器

json
{
  "skills": {
    "load": {
      "watch": true,              // 启用监视器(默认true)
      "watchDebounceMs": 250      // 防抖延迟(毫秒)
    }
  }
}

工作原理

1. OpenClaw在会话开始时对有资格的Skills进行快照
2. 监视器监视Skills文件夹的变化
3. 当SKILL.md更改时,刷新Skills列表
4. 刷新后的列表在下1个智能体轮次生效

使用场景

✅ 开发Skills时实时测试
✅ 修改Skills 配置后立即生效
✅ 添加新Skills后自动加载

8.4.3 安全注意事项

⚠️ 重要安全提醒

1. 将第三方Skills视为不受信任的代码
2. 启用前请仔细阅读Skills内容
3. 对于不受信任的输入和高风险工具,使用沙箱隔离
4. 保护API 密钥,不要泄露到日志中

安全最佳实践

1. 审查Skills代码

bash
# 安装前查看Skills内容
cat ~/.openclaw/skills/my-skill/SKILL.md

# 检查Skills权限要求
grep "requires" ~/.openclaw/skills/my-skill/SKILL.md

2. 使用沙箱隔离

json
{
  "agents": {
    "defaults": {
      "sandbox": {
        "enabled": true,
        "docker": {
          "image": "openclaw/sandbox:latest"
        }
      }
    }
  }
}

3. 保护API 密钥

json
{
  "skills": {
    "entries": {
      "my-skill": {
        "apiKey": "your-secret-key",  // ✅ 通过配置文件
        "env": {
          "API_KEY": "your-key"       // ✅ 通过环境变量
        }
      }
    }
  }
}

不要

markdown
---
name: my-skill
description: My skill with API key: sk-xxx7890  # ❌ 不要在SKILL.md中暴露密钥
---

4. 限制Skills权限

json
{
  "skills": {
    "entries": {
      "untrusted-skill": {
        "enabled": true,
        "config": {
          "allowedPaths": ["/safe/path"],  // 限制文件访问
          "allowedCommands": ["ls", "cat"]  // 限制命令执行
        }
      }
    }
  }
}

5. 定期审计

bash
# 列出所有已安装的Skills
openclaw skill list

# 检查Skills 配置
cat ~/.openclaw/openclaw.json | grep -A 10 "skills"

# 查看Skills日志
openclaw logs --skill my-skill

8.4.4 性能优化

Token影响(Skills列表)

当Skills有资格时,OpenClaw将可用Skills的紧凑XML列表注入到系统提示词中。

成本计算

基础开销(仅当≥1个Skills时):195字符

每个Skills:97字符 + XML转义的字段长度
- name(转义后)
- description(转义后)
- location(转义后)

公式:
total = 195 + Σ (97 + len(name) + len(description) + len(location))

Token估算(OpenAI风格):
~4字符/token,所以每个Skills ≈ 24 token + 字段长度

优化建议

1. 保持Skills描述简洁
   ❌ 差:This is a very detailed and comprehensive skill that can do many things including...
   ✅ 好:Generate images via Gemini API

2. 使用简短的Skills名称
   ❌ 差:super-advanced-image-generation-tool
   ✅ 好:nano-banana-pro

3. 禁用不需要的Skills
   {
     "skills": {
       "entries": {
         "unused-skill": { "enabled": false }
       }
     }
   }

4. 使用allowBundled限制内置Skills
   {
     "skills": {
       "allowBundled": ["file-search", "calendar-sync"]
     }
  }

**性能监控**:

```bash
# 查看Skills加载时间
openclaw skill perf

# 输出示例:
Skills加载统计:
- 总Skills数:15
- 加载时间:120ms
- Token消耗:约450 tokens
- 内存占用:2.3MB

8.4.5 多智能体Skills管理

单智能体 vs 共享Skills

单智能体Skills:
- 位置:<workspace>/skills
- 作用域:仅该智能体可用
- 用途:项目特定功能

共享Skills:
- 位置:~/.openclaw/skills
- 作用域:所有智能体可见
- 用途:通用功能

多智能体配置示例

json
{
  "agents": {
    "list": [
      {
        "id": "main",
        "workspace": "/home/user/main-agent",
        "skills": {
          "entries": {
            "file-search": { "enabled": true }
          }
        }
      },
      {
        "id": "assistant",
        "workspace": "/home/user/assistant-agent",
        "skills": {
          "entries": {
            "calendar-sync": { "enabled": true }
          }
        }
      }
    ]
  }
}

共享Skills文件夹

json
{
  "skills": {
    "load": {
      "extraDirs": [
        "/shared/team-skills",      // 团队共享
        "/shared/company-skills"    // 公司共享
      ]
    }
  }
}

8.4.6 远程macOS节点(Linux Gateway)

跨平台Skills支持

如果Gateway运行在Linux上但连接了macOS节点,OpenClaw可以将仅限macOS的Skills视为有资格。

配置示例

json
{
  "nodes": {
    "macos-node": {
      "host": "192.168.1.100",
      "platform": "darwin",
      "allowSystemRun": true
    }
  }
}

工作原理

1. Linux Gateway检测到macOS节点
2. 检查节点上的二进制文件
3. 将macOS专用Skills标记为可用
4. 通过nodes工具执行Skills

注意事项

⚠️ 如果macOS节点离线:
- Skills仍然可见
- 调用可能失败
- 直到节点重新连接

8.4.7 Skills备份和恢复

备份Skills

bash
# 备份所有Skills
openclaw skill backup

# 备份到指定位置
openclaw skill backup --output ~/backups/skills.zip

# 输出示例:
正在备份Skills...
- file-search
- note-sync
- calendar-sync

备份完成!
文件:~/backups/skills-2026-02-11.zip
大小:15.3MB

恢复Skills

bash
# 从备份恢复
openclaw skill restore ~/backups/skills-2026-02-11.zip

# 输出示例:
正在恢复Skills...
- file-search
- note-sync
- calendar-sync

恢复完成!
共恢复3个Skills

手动备份

bash
# 备份Skills文件夹
cp -r ~/.openclaw/skills ~/backups/skills-$(date +%Y%m%d)

# 备份配置文件
cp ~/.openclaw/openclaw.json ~/backups/openclaw-$(date +%Y%m%d).json

8.4.8 常见问题排查

问题1:Skill无法加载

症状:Skill安装成功但无法使用

排查步骤:
1. 检查Skill是否启用
   openclaw skill status file-search

2. 查看错误日志
   openclaw skill logs file-search

3. 检查门控条件
   cat ~/.openclaw/skills/file-search/SKILL.md | grep "requires"

4. 重新安装
   openclaw skill reinstall file-search

问题2:Skill响应慢

症状:Skill执行时间过长

排查步骤:
1. 查看性能报告
   openclaw skill perf file-search

2. 检查网络连接
   ping api.example.com

3. 清理缓存
   openclaw skill cache clear file-search

4. 检查依赖
   which uv python

问题3:Skill配置错误

症状:Skill功能异常

排查步骤:
1. 检查配置文件
   openclaw skill config show file-search

2. 验证环境变量
   echo $GEMINI_API_KEY

3. 重置配置
   openclaw skill config reset file-search

4. 查看文档
   openclaw skill docs file-search

问题4:Skills冲突

症状:多个Skills响应同一命令

排查步骤:
1. 检测冲突
   openclaw skill check

2. 查看优先级
   openclaw skill priority

3. 禁用冲突的Skills
   openclaw config set skills.entries.conflicting-skill.enabled false

4. 修改命令关键词
   编辑SKILL.md,修改触发词

📝 本章小结

本章学习了OpenClaw的Skills扩展功能:

核心内容

  1. ClawHub技能市场

    • ClawHub介绍
    • 技能分类和搜索
    • 技能评价体系
    • Skills 安装和管理
  2. 必装Skills推荐

    • 文件管理类(3个)
    • 知识管理类(3个)
    • 日程管理类(2个)
    • 自动化类(2个)
    • 工具类(2个)
  3. 自定义Skills开发

    • Skills开发基础
    • 开发环境搭建
    • Skills结构详解
    • API接口设计
    • 调试和测试
    • 发布到ClawHub
  4. Skills管理技巧

    • 安装和卸载
    • 配置管理
    • 冲突解决
    • 性能优化
    • 备份和恢复
    • 问题排查

实战技巧

  • ✅ 选择高质量Skills
  • ✅ 合理配置Skills
  • ✅ 定期更新Skills
  • ✅ 监控Skills性能
  • ✅ 及时备份配置

下一步

  • 学习第9章:多平台集成
  • 掌握飞书、企微、钉钉、QQ接入
  • 构建多平台AI助手

🎯 实战练习

练习1:安装必备Skills

  1. 安装file-search、calendar-sync、web-clipper
  2. 配置Skills参数
  3. 测试Skills功能

练习2:开发简单Skills

  1. 创建1个问候Skills
  2. 实现基本功能
  3. 测试和调试

练习3:Skills性能优化

  1. 监控Skills性能
  2. 找出性能瓶颈
  3. 优化和改进

💡 常见问题

Q1:如何选择合适的Skills? A:看评分、下载量、更新频率和文档质量。

Q2:Skills冲突怎么办? A:使用openclaw skill check检测并自动修复。

Q3:如何开发自己的Skills? A:参考官方文档和示例代码,从简单开始。

Q4:Skills性能差怎么办? A:查看性能报告,优化代码,清理缓存。

Q5:Skills数据如何备份? A:使用openclaw skill backup定期备份。


下一章预告:第9章将学习多平台集成,包括飞书、企业微信、钉钉、QQ Bot配置等内容。飞书作为最现代化的平台,支持WebSocket长连接、流式输出等高级功能。


8.8 百度千帆Skills生态

8.8.1 为什么选择百度千帆Skills?

核心优势

✅ 官方支持:百度官方维护,稳定可靠
✅ 中文优化:针对中文场景深度优化
✅ 免费使用:大部分Skills免费
✅ 易于集成:一键安装,无需复杂配置
✅ 生态完善:覆盖搜索、学术、办公等场景

与其他Skills对比

特性百度千帆Skills国际Skills社区Skills
中文支持⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
稳定性⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
免费程度⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
文档质量⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
更新频率⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐

8.8.2 百度搜索系列Skills

功能介绍

  • 实时网络搜索
  • 智能结果筛选
  • 自动摘要生成
  • 支持多种搜索类型

安装方法

bash
# 云端部署自带,无需安装
# 本地部署需要安装
clawhub install baidu-search

适用场景

  • 实时信息查询
  • 行业动态追踪
  • 竞品分析
  • 内容创作素材收集

2. 百度百科(Baidu Baike)

功能介绍

  • 权威知识查询
  • 概念解释
  • 历史背景
  • 相关词条推荐

适用场景

  • 学习新概念
  • 写作背景调研
  • 知识科普
  • 术语解释

3. 百度学术(Baidu Scholar)

功能介绍

  • 学术论文搜索
  • 引用分析
  • 作者查询
  • 期刊信息

适用场景

  • 文献调研
  • 论文阅读
  • 学术研究
  • 毕业论文写作

8.8.3 百度办公系列Skills

4. 百度智能PPT(Baidu Smart PPT)

功能介绍

  • 自动生成PPT
  • 智能排版
  • 配图推荐
  • 模板选择

适用场景

  • 产品介绍
  • 工作汇报
  • 培训教材
  • 商业提案

8.8.4 获取百度API Key

步骤1:注册百度智能云账号

  1. 访问:https://cloud.baidu.com
  2. 点击"注册"
  3. 填写手机号和验证码
  4. 完成实名认证

步骤2:开通千帆大模型服务

  1. 进入控制台
  2. 搜索"千帆大模型"
  3. 点击"立即开通"
  4. 同意服务协议

步骤3:获取API Key

  1. 进入"访问管理"
  2. 点击"安全认证"
  3. 选择"Access Key"
  4. 点击"创建Access Key"
  5. 保存Access Key ID和Secret Access Key

百度智能云控制台 - 获取API Key和Secret Key

8.8.5 百度千帆MCP广场

什么是MCP广场?

MCP(Model Context Protocol)广场是百度千帆推出的应用连接平台,提供丰富的MCP Server,让OpenClaw可以连接各种应用和服务。

访问地址https://cloud.baidu.com/product/qianfan_mcp.html

支持的应用

  • 办公协作:飞书、钉钉、企业微信
  • 知识管理:Notion、语雀、印象笔记
  • 开发工具:GitHub、GitLab、Jenkins
  • 数据分析:Tableau、Power BI

8.8.6 效率提升数据

使用百度Skills前后对比

任务类型使用前使用后节省时间提升比例
信息搜索30分钟2分钟28分钟93.3%
概念查询15分钟1分钟14分钟93.3%
论文检索60分钟5分钟55分钟91.7%
PPT制作120分钟10分钟110分钟91.7%
平均225分钟18分钟207分钟92%

相关资源


8.9 API服务Skills

💡 本节目标:学会将第三方API服务封装为Skills,实现AI绘图、数据同步、视频生成、语音合成等功能。

8.9.1 为什么需要API服务Skills

使用场景

  • 🎨 AI绘图:Banana、Midjourney、DALL-E
  • 📝 数据同步:Notion、Airtable、语雀
  • 🎬 视频生成:SeeDream、可灵(Kling)
  • 🔊 语音合成:海螺TTS、MiniMax Music
  • 🌐 Web服务:各类API接口

优势

  • 统一管理:所有API都是Skills
  • 易于使用:一条命令安装
  • 自动更新:跟随Skills更新
  • 社区共享:开发者贡献

8.9.2 AI绘图Skills:Banana

什么是Banana

Banana介绍

  • Nano Banana Pro是一款AI绘图工具
  • 支持文生图、图生图、图片编辑
  • 质量高、速度快、价格便宜

为什么选择Banana

  • ✅ 质量优秀:媲美Midjourney
  • ✅ 速度快:10秒出图
  • ✅ 价格低:$0.02/张
  • ✅ 易集成:API简单易用

安装和配置

bash
# 安装Banana Skills
openclaw skill install banana-draw

# 配置API Key
openclaw config set banana.apiKey "your-api-key"

# 测试
你:用Banana画一只可爱的猫
OpenClaw:正在生成图片...
[图片]

实战案例

案例1:手机上画图

场景:在飞书上用OpenClaw画图

步骤:
1. 打开飞书
2. 找到OpenClaw
3. 发送:画1个赛博朋克风格的城市
4. 等待10秒
5. 收到图片

优势:
- 无需打开电脑
- 随时随地画图
- 自动保存到相册

案例2:批量生成图片

你:帮我生成3张图片:
1. 科技感的办公室
2. 未来城市
3. AI机器人

OpenClaw:正在生成...
[图片1]
[图片2]
[图片3]

全部完成 ✅

提示词优化技巧

基本原则

  1. 描述清晰具体
  2. 包含风格关键词
  3. 指定画面元素
  4. 控制画面比例

优秀提示词示例

❌ 差:画一只猫
✅ 好:一只可爱的橘猫,坐在窗台上,阳光洒在身上,温暖的色调,高清摄影,景深效果

❌ 差:画个城市
✅ 好:赛博朋克风格的未来城市,霓虹灯闪烁,高楼林立,夜景,雨后街道,电影级画质,广角镜头

风格关键词

  • 写实风格:photorealistic, 4K, detailed
  • 卡通风格:cartoon, cute, colorful
  • 赛博朋克:cyberpunk, neon, futuristic
  • 水彩画:watercolor, soft, artistic
  • 油画:oil painting, classical, textured

8.9.3 数据同步Skills:Notion

Notion介绍

Notion的优势

  • ✅ 功能强大:笔记、数据库、项目管理
  • ✅ 跨平台:Web、Mac、Windows、iOS、Android
  • ✅ 协作友好:团队共享、权限管理
  • ✅ API完善:易于集成

安装和配置

bash
# 安装Notion Skills
openclaw skill install notion-sync

# 配置Token
openclaw config set notion.token "your-notion-token"

# 配置Database ID
openclaw config set notion.databaseId "your-database-id"

# 测试
你:把这段内容保存到Notion
OpenClaw:已保存到Notion

实战案例

案例1:笔记同步

你:保存这段笔记到Notion:
[笔记内容]

OpenClaw:已保存 ✅
标题:[自动生成]
标签:#笔记
链接:https://notion.so/...

案例2:任务管理

你:添加任务:完成项目报告
截止日期:明天
优先级:高

OpenClaw:任务已添加 ✅

案例3:知识库构建

你:把这篇文章保存到知识库
[文章链接]

OpenClaw:正在处理...
- 提取内容 ✅
- 生成摘要 ✅
- 添加标签 ✅
- 保存到Notion ✅

完成!

8.9.4 视频生成Skills

视频生成工具介绍

SeeDream

  • 文生视频
  • 图生视频
  • 视频编辑
  • 价格:$0.1/秒

可灵(Kling)

  • 国产视频生成
  • 质量优秀
  • 价格实惠
  • 支持中文

安装和配置

bash
# 安装视频生成Skills
openclaw skill install video-gen

# 配置SeeDream
openclaw config set seedream.apiKey "your-api-key"

# 配置可灵
openclaw config set kling.apiKey "your-api-key"

实战案例

你:生成1个5秒的视频:
海浪拍打沙滩,日落时分

OpenClaw:正在生成...
预计时间:2分钟

[视频生成完成]
时长:5秒
分辨率:1080p
大小:15MB

8.9.5 语音合成Skills

语音合成工具

海螺TTS

  • 多种音色
  • 自然流畅
  • 支持中英文
  • 价格:$0.01/千字

MiniMax Music

  • AI音乐生成
  • 多种风格
  • 高质量输出

安装和配置

bash
# 安装TTS Skills
openclaw skill install tts

# 配置海螺TTS
openclaw config set heluo.apiKey "your-api-key"

# 测试
你:把这段文字转成语音:
[文字内容]

OpenClaw:正在生成...
[语音文件]

8.9.6 自定义API封装

如果ClawHub上没有你需要的API Skills,可以自己封装:

typescript
// src/custom-api-skill.ts
import { Skill } from '@openclaw/sdk';
import axios from 'axios';

export default class CustomAPISkill extends Skill {
  private apiKey = process.env.CUSTOM_API_KEY;
  private apiUrl = 'https://api.example.com/v1';

  async onMessage(message: string) {
    // 检测API请求
    const match = message.match(/调用API:(.+)/);
    if (!match) return null;

    const params = match[1];
    
    try {
      // 调用API
      const response = await axios.post(
        `${this.apiUrl}/endpoint`,
        { params },
        {
          headers: {
            'Authorization': `Bearer ${this.apiKey}`
          }
        }
      );

      return `API调用成功:${response.data}`;
      
    } catch (error) {
      return '调用失败,请稍后重试';
    }
  }
}

8.9.7 成本对比

AI绘图成本对比

工具价格质量速度
Banana$0.02⭐⭐⭐⭐10秒
Midjourney$0.08⭐⭐⭐⭐⭐30秒
DALL-E$0.04⭐⭐⭐⭐15秒
Stable Diffusion免费⭐⭐⭐20秒

语音合成成本对比

工具价格质量语言支持
海螺TTS$0.01/千字⭐⭐⭐⭐中英文
Azure TTS$0.016/千字⭐⭐⭐⭐⭐多语言
Google TTS$0.016/千字⭐⭐⭐⭐多语言

8.9.8 最佳实践

1. API Key管理

bash
# 使用环境变量
export BANANA_API_KEY="your-key"
export NOTION_TOKEN="your-token"

# 或使用配置文件
openclaw config set api.keys '{
  "banana": "your-key",
  "notion": "your-token"
}'

2. 错误处理

typescript
try {
  const result = await callAPI();
  return result;
} catch (error) {
  if (error.code === 'RATE_LIMIT') {
    return '请求过于频繁,请稍后重试';
  }
  return '调用失败,请检查配置';
}

3. 成本控制

  • 设置每日调用上限
  • 使用缓存减少重复调用
  • 选择性价比高的服务
  • 监控API使用量

4. 安全建议

  • 不要在代码中硬编码API Key
  • 定期更换API Key
  • 使用环境变量或配置文件
  • 限制API权限范围

8.10 常用工具安装案例

💡 实战指南:OpenClaw的Skills系统依赖一些外部工具,本节介绍两个常用工具的完整安装过程。

8.10.1 1Password CLI安装(密码管理)

工具简介: 1Password CLI (op) 是1Password的命令行工具,让OpenClaw能够安全地访问和管理你的密码库中的凭证、API 密钥等敏感信息。

使用场景

  • 安全存储API 密钥
  • 自动填充登录信息
  • 团队密码共享
  • CI/CD流程中的密钥管理

安装步骤

bash
# macOS安装(推荐使用Homebrew)
brew install --cask 1password-cli

# 验证安装
which op
# 输出:/usr/local/bin/op

op --version
# 输出:2.32.1

配置使用

  1. 启用桌面应用集成

    • 打开1Password桌面应用
    • 进入设置 → 开发者
    • 启用"与1Password CLI集成"
  2. 登录账户

bash
# 登录1Password账户
op signin

# 或指定账户域名
op signin my.1password.com
  1. 在OpenClaw中使用
bash
# 获取密码
op item get "GitHub" --fields password

# 获取API 密钥
op item get "OpenAI API" --fields credential

# 列出所有项目
op item list

OpenClaw集成示例

你:从1Password获取GitHub的API 密钥

OpenClaw:正在获取...
✅ 已获取GitHub API 密钥:ghp_xxxxxxxxxxxx

你:用这个密钥创建一个新的GitHub仓库

OpenClaw:好的,正在创建...
✅ 仓库创建成功!

安全提示

  • ⚠️ 不要在代码中硬编码密码
  • ✅ 使用1Password CLI安全管理所有凭证
  • ✅ 定期更换API 密钥
  • ✅ 为不同项目使用不同的凭证

8.10.2 camsnap安装(摄像头捕获)

工具简介: camsnap是一个用于捕获RTSP/ONVIF摄像头画面的命令行工具,让OpenClaw能够获取网络摄像头的实时画面或录制视频片段。

使用场景

  • 智能家居监控
  • 安防系统集成
  • 自动化截图和录像
  • 视频分析和处理

系统要求

  • macOS(Apple Silicon或Intel)
  • Homebrew包管理器
  • 网络摄像头(支持RTSP/ONVIF协议)

安装步骤

步骤1:检查系统架构

bash
# 检查CPU架构
uname -m
# 输出:arm64(Apple Silicon)或 x86_64(Intel)

步骤2:确保使用ARM64版本的Homebrew(Apple Silicon Mac)

如果你的Mac是Apple Silicon(M1/M2/M3芯片),需要确保安装了ARM64版本的Homebrew:

bash
# 检查当前brew位置
which brew
# 应该输出:/opt/homebrew/bin/brew(ARM64版本)
# 如果输出:/usr/local/bin/brew(Intel版本),需要安装ARM64版本

# 安装ARM64版本的Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 配置shell环境(zsh)
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc
eval "$(/opt/homebrew/bin/brew shellenv)"

# 验证brew版本
brew --version
which brew
# 应该输出:/opt/homebrew/bin/brew

步骤3:安装camsnap

bash
# 添加tap源
brew tap steipete/tap

# 安装camsnap
brew install camsnap

# 验证安装
which camsnap
# 输出:/opt/homebrew/bin/camsnap

camsnap --version
# 输出:0.2.0

步骤4:创建符号链接(可选,解决兼容性问题)

如果OpenClaw无法找到camsnap,可以创建符号链接:

bash
# 创建符号链接到/usr/local/bin
sudo ln -sf /opt/homebrew/bin/camsnap /usr/local/bin/camsnap

# 验证符号链接
ls -la /usr/local/bin/camsnap
# 输出:lrwxr-xr-x@ 1 root  wheel  25 Feb 13 14:47 /usr/local/bin/camsnap -> /opt/homebrew/bin/camsnap

# 测试
/usr/local/bin/camsnap --version
# 输出:0.2.0

使用示例

bash
# 捕获单帧画面
camsnap --url rtsp://192.168.1.100:554/stream --output snapshot.jpg

# 录制视频片段(10秒)
camsnap --url rtsp://192.168.1.100:554/stream --duration 10 --output video.mp4

# 指定分辨率
camsnap --url rtsp://192.168.1.100:554/stream --width 1920 --height 1080 --output hd.jpg

OpenClaw集成示例

你:拍一张客厅摄像头的照片

OpenClaw:正在捕获画面...
✅ 已保存到:~/Pictures/living-room-2026-02-13-14-30.jpg
[发送图片]

你:录制10秒的门口监控视频

OpenClaw:正在录制...
⏱️ 录制中... 10秒
✅ 已保存到:~/Videos/door-monitor-2026-02-13-14-31.mp4

故障排查

问题1:安装失败,提示"arm64 architecture is required"

bash
# 原因:使用了Intel版本的brew
# 解决:安装ARM64版本的Homebrew(见步骤2)

# 检查当前brew架构
brew config | grep -E "CPU|Homebrew"
# 应该显示:CPU: octa-core 64-bit arm_*

问题2:OpenClaw提示"Missing: bin:camsnap"

bash
# 原因:OpenClaw无法找到camsnap
# 解决:创建符号链接(见步骤4)

# 或者重启OpenClaw Gateway
openclaw gateway restart

问题3:摄像头连接失败

bash
# 检查摄像头URL是否正确
# RTSP URL格式:rtsp://用户名:密码@IP地址:端口/路径

# 测试摄像头连接
camsnap --url rtsp://admin:password@192.168.1.100:554/stream --test

# 查看详细错误信息
camsnap --url rtsp://192.168.1.100:554/stream --verbose

安全提示

  • ⚠️ 不要在公网暴露摄像头RTSP端口
  • ✅ 使用强密码保护摄像头
  • ✅ 定期更新摄像头固件
  • ✅ 限制OpenClaw对摄像头的访问权限

8.10.3 工具安装最佳实践

通用安装流程

  1. 检查系统要求

    bash
    # 检查操作系统
    uname -s
    
    # 检查CPU架构
    uname -m
    
    # 检查可用空间
    df -h
  2. 选择合适的安装方式

    • Homebrew(推荐,适合macOS/Linux)
    • npm/yarn(适合Node.js工具)
    • pip/uv(适合Python工具)
    • 直接下载二进制文件
  3. 验证安装

    bash
    # 检查工具是否在PATH中
    which &lt;tool-name&gt;
    
    # 检查版本
    &lt;tool-name&gt; --version
    
    # 测试基本功能
    &lt;tool-name&gt; --help
  4. 配置环境变量

    bash
    # 添加到~/.zshrc或~/.bashrc
    export TOOL_API_KEY="your-key"
    export TOOL_CONFIG_PATH="~/.config/tool"
    
    # 重新加载配置
    source ~/.zshrc
  5. 集成到OpenClaw

    bash
    # 重启OpenClaw Gateway
    openclaw gateway restart
    
    # 验证工具可用性
    openclaw tools list

常见问题排查

问题原因解决方案
找不到命令未添加到PATH检查安装路径,添加到PATH
权限不足需要管理员权限使用sudo或管理员身份运行
依赖缺失缺少必需的库安装依赖包
版本不兼容工具版本过旧更新到最新版本
架构不匹配ARM/Intel不兼容安装对应架构的版本

推荐工具列表

工具用途安装命令
1Password CLI密码管理brew install --cask 1password-cli
camsnap摄像头捕获brew install steipete/tap/camsnap
ffmpeg视频处理brew install ffmpeg
imagemagick图片处理brew install imagemagick
jqJSON处理brew install jq
ghGitHub CLIbrew install gh
uvPython包管理brew install uv

📝 本章小结

通过本章学习,你已经掌握:

  1. Skills生态:了解1715+个技能的庞大生态
  2. ClawHub市场:学会搜索、安装、管理Skills
  3. 核心Skills:掌握必装的5个核心技能
  4. 安装方法:三种安装方式灵活选择
  5. 实战应用:三大场景的完整应用
  6. 安全使用:权限管理和安全防护
  7. Skills开发:从零开发自己的Skills
  8. 管理技巧:更新、备份、故障排查
  9. API服务:封装第三方API为Skills
  10. 工具安装:1Password CLI和camsnap完整安装流程

🎯 实战练习

  1. 安装5个核心Skills并测试
  2. 尝试开发1个简单的Skills
  3. 封装一个你常用的API服务
  4. 构建一个完整的自动化工作流

💡 进阶建议

  1. 探索ClawHub上的更多Skills
  2. 参与Skills社区贡献
  3. 开发并分享你的Skills
  4. 优化Skills性能和体验

下一章预告:第9章将学习多平台集成,包括飞书、企业微信、钉钉、QQ等平台的Bot配置,实现随时随地使用 OpenClaw。飞书作为最现代化的平台将优先介绍。

返回目录README