Appearance
第五章:Skills 与 Tools
让你的 AI 助手拥有"超能力"。
本章概览
在这一章中,你将了解:
- 什么是 Skills 和 Tools,它们有什么区别
- OpenClaw 的内置 Skills 有哪些
- ClawHub Skills 市场如何使用
- 常用的第三方 Skills
- 如何开发自定义 Skill(入门介绍)
- 持久化记忆系统的工作原理
本章重点
Skills 是让 OpenClaw 从"聊天机器人"变成"AI 助手"的关键。没有 Skills 的 OpenClaw 只能聊天;有了 Skills 的 OpenClaw 可以帮你做事。
5.1 理解 Skills 和 Tools
什么是 Skill?
Skill(技能) 是 OpenClaw 可以执行的一项具体能力。你可以把它理解为 AI 助手的"技能点"。
打个比方:
一个新入职的助理(没有 Skills 的 OpenClaw):
→ 只能和你聊天,回答问题
一个训练有素的助理(有 Skills 的 OpenClaw):
→ 能帮你发邮件(Email Skill)
→ 能帮你管理日程(Calendar Skill)
→ 能帮你查网页(Web Browse Skill)
→ 能帮你执行命令(Shell Skill)
→ 能帮你管理文件(File Manager Skill)
→ ...还能学习更多新技能Skill vs Tool
在 OpenClaw 的体系中,这两个概念有细微区别:
| Skill | Tool | |
|---|---|---|
| 定义 | 一组相关功能的集合 | 单个具体操作 |
| 比喻 | 一门"技能" | 技能中的一个"动作" |
| 例子 | "Email" Skill | send_email、read_inbox、search_email |
| 安装 | 通过 openclaw skills install | 随 Skill 一起安装 |
Skill: Email(邮件技能)
├── Tool: send_email - 发送邮件
├── Tool: read_inbox - 读取收件箱
├── Tool: search_email - 搜索邮件
└── Tool: draft_email - 创建草稿
Skill: Calendar(日历技能)
├── Tool: list_events - 查看日程
├── Tool: create_event - 创建日程
├── Tool: update_event - 更新日程
└── Tool: delete_event - 删除日程简单来说:Skill 是一个功能包,里面包含多个 Tool。
5.2 内置 Skills
OpenClaw 安装后自带一些基础 Skills,开箱即用。
Shell(命令行执行)
让 AI 助手在你的电脑上执行命令。
你: 帮我看看当前目录下有哪些文件
AI: 我来帮你查看。
执行命令: ls -la
结果:
total 48
drwxr-xr-x 8 user staff 256 1 15 10:30 .
drwxr-xr-x 5 user staff 160 1 10 09:00 ..
-rw-r--r-- 1 user staff 1024 1 15 10:25 README.md
-rw-r--r-- 1 user staff 2048 1 15 10:30 package.json
drwxr-xr-x 3 user staff 96 1 14 15:00 src
drwxr-xr-x 4 user staff 128 1 14 15:00 docs
当前目录下有 2 个文件和 2 个子目录。Shell Skill 的安全性
Shell Skill 非常强大,也非常危险。它可以执行任何命令行操作,包括删除文件、安装软件等。
建议:
- 个人使用:可以启用,但注意消息白名单
- 团队使用:谨慎开启,建议限制可执行的命令
- 公开 Bot:绝对不要开启
Shell Skill 的配置:
yaml
# ~/.openclaw/skills/shell/config.yaml
skill: shell
enabled: true
# 安全设置
security:
# 需要确认才能执行的命令(推荐开启)
require_confirmation: true
# 命令白名单(只允许这些命令)
allowed_commands:
- ls
- cat
- grep
- find
- echo
- date
- whoami
# 命令黑名单(禁止这些命令)
blocked_commands:
- rm -rf
- sudo
- shutdown
- reboot
- mkfs
- dd
# 工作目录限制
allowed_directories:
- ~/Documents
- ~/DesktopFile Manager(文件管理)
你: 帮我在桌面创建一个叫"项目资料"的文件夹
AI: 好的,我来帮你创建。
已创建文件夹: ~/Desktop/项目资料
你: 把 Downloads 目录下今天下载的 PDF 文件移到那个文件夹里
AI: 让我看看今天下载了哪些 PDF 文件...
找到 3 个 PDF 文件:
1. 产品需求文档_v2.pdf
2. 竞品分析报告.pdf
3. Q1财务报表.pdf
已全部移动到 ~/Desktop/项目资料/Web Browse(网页浏览)
你: 帮我搜一下最新的 iPhone 发布日期
AI: 让我帮你查一下...
[搜索中...]
根据搜索结果,最新的 iPhone 16 系列于 2024 年 9 月发布,
包括 iPhone 16、iPhone 16 Plus、iPhone 16 Pro 和 iPhone 16 Pro Max。Web Browse Skill 的配置:
yaml
# ~/.openclaw/skills/web-browse/config.yaml
skill: web_browse
enabled: true
# 搜索引擎
search_engine: google # google / bing / duckduckgo
# 浏览限制
max_pages: 5 # 单次最多浏览 5 个页面
timeout: 10000 # 页面加载超时 10 秒Memo(备忘录)
你: 记住:下周三的产品评审会改到下午 3 点
AI: 已记录!✅
备忘:下周三的产品评审会改到下午 3 点
你 (三天后): 这周三有什么安排?
AI: 根据之前的记录,你有一个安排:
📌 产品评审会 - 下午 3:00内置 Skills 一览表
| Skill | 功能 | 默认状态 | 风险等级 |
|---|---|---|---|
| Shell | 执行命令行操作 | 需手动启用 | 高 |
| File Manager | 文件和文件夹管理 | 启用 | 中 |
| Web Browse | 网页搜索和浏览 | 启用 | 低 |
| Memo | 快速备忘录 | 启用 | 低 |
| Calculator | 数学计算 | 启用 | 低 |
| Code Runner | 运行代码片段 | 需手动启用 | 高 |
| Image Viewer | 查看和描述图片 | 启用 | 低 |
5.3 ClawHub Skills 市场
什么是 ClawHub?
ClawHub 是 OpenClaw 的官方 Skills 市场,类似于:
ClawHub 之于 OpenClaw,就像:
- App Store 之于 iPhone
- Chrome 扩展商店 之于 Chrome 浏览器
- VSCode Marketplace 之于 VSCode在 ClawHub 上,你可以浏览、搜索和安装社区开发的各种 Skills。
浏览和搜索
bash
# 搜索可用的 Skills
openclaw skills search email
# 输出
🐾 Search results for "email":
Name Author Stars Downloads
────────────────────── ────────────── ────── ──────────
email-sender @openclaw ★ 4.8 50,000+
gmail-integration @community ★ 4.5 25,000+
outlook-connector @msft-contrib ★ 4.3 15,000+
email-summarizer @ai-tools ★ 4.6 10,000+
email-templates @productivity ★ 4.2 8,000+
Use 'openclaw skills info <name>' for details.安装 Skill
bash
# 安装一个 Skill
openclaw skills install email-sender
# 输出
🐾 Installing email-sender...
Downloading... ████████████████████ 100%
Checking dependencies... ✅
Configuring... ✅
✅ email-sender installed successfully!
This skill requires configuration:
Run 'openclaw skills config email-sender' to set it up.配置 Skill
bash
openclaw skills config email-sender🐾 Configuring email-sender
? Email provider:
❯ Gmail
Outlook
Custom SMTP
? Gmail address:
your-email@gmail.com
? App Password (see https://myaccount.google.com/apppasswords):
xxxx xxxx xxxx xxxx
✅ email-sender configured!
Test it by asking your assistant to send an email.管理已安装的 Skills
bash
# 查看已安装的 Skills
openclaw skills list
# 输出
🐾 Installed Skills
Name Version Status Type
──────────────── ──────── ───────── ──────────
shell built-in Disabled Built-in
file-manager built-in Enabled Built-in
web-browse built-in Enabled Built-in
memo built-in Enabled Built-in
email-sender 1.2.0 Enabled ClawHub
calendar-sync 2.0.1 Enabled ClawHub
crm-helper 0.8.3 Enabled ClawHub
# 更新 Skill
openclaw skills update email-sender
# 卸载 Skill
openclaw skills uninstall crm-helper
# 启用/禁用
openclaw skills enable shell
openclaw skills disable shell5.4 常用第三方 Skills
Email(邮件管理)
最受欢迎的 Skill 之一,让 AI 帮你处理邮件。
你: 帮我给 zhang@company.com 发一封邮件,主题是"产品评审会议纪要",
内容是我们今天讨论的三个要点
AI: 好的,我来帮你编写并发送这封邮件。
📧 邮件预览:
收件人: zhang@company.com
主题: 产品评审会议纪要
张总,您好!
以下是今天产品评审会的三个要点:
1. 新功能上线时间确定为下月 15 日
2. UI 设计方案选择了方案 B(简洁风格)
3. 性能优化目标:页面加载时间 < 2 秒
请确认以上内容,如有补充请随时告知。
祝好!
确认发送吗?[发送 / 修改 / 取消]
你: 发送
AI: ✅ 邮件已发送!Calendar(日历同步)
与 Google Calendar 或 Outlook Calendar 同步。
你: 看看我明天有什么日程
AI: 📅 明天(1月16日 周四)的日程:
09:00 - 09:30 晨会 (会议室 A)
10:00 - 11:30 产品需求评审 (线上 - Zoom)
14:00 - 15:00 和设计师对接 (3楼工位)
16:00 - 16:30 1-on-1 with 李总 (李总办公室)
一共 4 个安排。需要我帮你做什么调整吗?
你: 帮我把 14:00 的会改到 15:30
AI: ✅ 已更新:
"和设计师对接" 14:00-15:00 → 15:30-16:30
⚠️ 注意:这和 16:00 的 "1-on-1 with 李总" 有 30 分钟重叠。
需要调整其他安排吗?智能冲突检测
注意到了吗?AI 助手会自动检测日程冲突并提醒你。这是 Calendar Skill 的一个贴心功能。
CRM 集成
与常见的 CRM 系统(如 HubSpot、Salesforce)集成。
你: 查一下"字节跳动"这个客户的最新进展
AI: 🏢 客户信息 - 字节跳动
状态:商务洽谈中
负责人:王五
最近活动:
- 1月12日:发送了产品演示方案
- 1月10日:电话沟通(30分钟)
- 1月8日:首次会面
下一步:1月18日 安排第二次演示
合同金额:预估 ¥500,000
成交概率:60%更多实用 Skills
| Skill | 功能描述 | 使用示例 |
|---|---|---|
| todo-list | 待办事项管理 | "帮我添加一个待办:写周报" |
| translator | 多语言翻译 | "把这段话翻译成英文" |
| note-taker | 会议记录 | "帮我记录会议要点" |
| image-gen | AI 图片生成 | "画一个产品架构图" |
| pdf-reader | PDF 文档阅读 | "总结这个 PDF 的要点" |
| weather | 天气查询 | "明天北京天气怎么样" |
| news | 新闻摘要 | "今天科技领域有什么新闻" |
| stock | 股票行情 | "查一下苹果的股价" |
| timer | 定时提醒 | "30 分钟后提醒我开会" |
| qr-code | 二维码生成 | "帮我生成这个网址的二维码" |
5.5 自定义 Skill 开发(入门)
适合有技术兴趣的读者
这一节介绍如何开发自定义 Skill。如果你对编程不感兴趣,可以跳到下一节 5.6 持久化记忆系统。
Skill 的基本结构
一个 OpenClaw Skill 本质上是一个 Node.js 模块,遵循特定的目录结构:
my-custom-skill/
├── package.json # 包信息
├── index.js # 入口文件
├── config.schema.json # 配置项定义
├── tools/ # Tool 定义
│ ├── tool-a.js
│ └── tool-b.js
└── README.md # 说明文档最简单的 Skill 示例
让我们创建一个简单的"每日名言"Skill:
javascript
// index.js
module.exports = {
name: "daily-quote",
version: "1.0.0",
description: "每天提供一句励志名言",
tools: [
{
name: "get_quote",
description: "获取一句随机名言",
parameters: {},
execute: async () => {
const quotes = [
"Stay hungry, stay foolish. -- Steve Jobs",
"The only way to do great work is to love what you do. -- Steve Jobs",
"Innovation distinguishes between a leader and a follower. -- Steve Jobs",
"Done is better than perfect. -- Sheryl Sandberg",
"Move fast and break things. -- Mark Zuckerberg",
];
const randomQuote = quotes[Math.floor(Math.random() * quotes.length)];
return { quote: randomQuote };
},
},
],
};安装自定义 Skill
bash
# 从本地目录安装
openclaw skills install ./my-custom-skill
# 或者从 GitHub 安装
openclaw skills install github:username/my-custom-skill使用效果
你: 给我一句今天的名言
AI: 📜 今日名言:
"Done is better than perfect." -- Sheryl Sandberg
完成比完美更重要。希望今天的你也能践行这句话!Skill 开发文档
如果你想深入了解 Skill 开发,可以参考:
- 官方文档:openclaw.dev/docs/skills-development
- 示例仓库:github.com/openclaw/skill-examples
- API 参考:openclaw.dev/api/skills
Skill 开发的关键概念
- Tool Definition -- 定义 Skill 提供的具体操作
- Parameters Schema -- 定义每个操作需要的参数(JSON Schema 格式)
- Execute Function -- 实际执行操作的函数
- Config Schema -- 定义 Skill 需要的配置项
- Hooks -- 生命周期钩子(安装、卸载、启动、停止)
5.6 持久化记忆系统
什么是持久化记忆?
普通的 AI 聊天(比如直接使用 ChatGPT 网页版)有一个问题:它不记得之前的对话。每次新对话都是从零开始。
OpenClaw 的持久化记忆系统(Persistent Memory)解决了这个问题。它让 AI 助手拥有"长期记忆"。
没有持久化记忆:
对话 1:你好,我叫张三
AI:你好,张三!
对话 2(第二天):我叫什么名字?
AI:抱歉,我不知道你的名字。
有持久化记忆:
对话 1:你好,我叫张三,我是产品经理
AI:你好,张三!很高兴认识你。(保存到记忆:用户叫张三,是产品经理)
对话 2(第二天):我叫什么名字?
AI:你叫张三,你是一名产品经理!记忆的工作原理
持久化记忆系统
┌────────────────┐
用户消息 ──→ │ Agent Engine │
│ │
│ 1. 检索相关记忆│ ← 从记忆库中找到相关条目
│ 2. 构建上下文 │ ← 把记忆加入对话上下文
│ 3. 调用 LLM │ ← 发送给 AI
│ 4. 生成回复 │
│ 5. 提取记忆点 │ ← 从对话中提取值得记住的信息
│ 6. 保存到记忆 │ ← 写入记忆库
│ │
└────────────────┘
│
┌────▼────┐
│ 记忆库 │ ~/.openclaw/memory/
└─────────┘记忆的存储格式
json
// ~/.openclaw/memory/user_001.json
{
"memories": [
{
"id": "mem_001",
"content": "用户叫张三,是一名产品经理",
"category": "personal_info",
"created_at": "2025-01-10T08:00:00Z",
"source": "telegram",
"importance": 0.9
},
{
"id": "mem_002",
"content": "用户的公司正在开发一个电商平台,预计 Q2 上线",
"category": "work",
"created_at": "2025-01-12T14:30:00Z",
"source": "whatsapp",
"importance": 0.8
},
{
"id": "mem_003",
"content": "用户喜欢简洁的回复风格,不喜欢太啰嗦",
"category": "preference",
"created_at": "2025-01-13T10:15:00Z",
"source": "telegram",
"importance": 0.7
}
]
}管理记忆
bash
# 查看所有记忆
openclaw memory list
# 搜索记忆
openclaw memory search "产品"
# 手动添加记忆
openclaw memory add "我喜欢喝美式咖啡"
# 删除某条记忆
openclaw memory delete mem_003
# 清空所有记忆
openclaw memory clear --confirm你也可以在聊天中直接管理记忆:
你: 记住我喜欢简短的回复
AI: 已记住!✅ 之后我会尽量保持回复简洁。
你: 你都记住了哪些关于我的信息?
AI: 以下是我记住的关于你的信息:
1. 你叫张三,是一名产品经理
2. 你的公司正在开发电商平台,预计 Q2 上线
3. 你喜欢简短的回复
需要修正或补充什么吗?
你: 忘掉第 3 条
AI: 好的,已删除"你喜欢简短的回复"这条记忆。记忆配置
yaml
# ~/.openclaw/config.yaml
memory:
enabled: true
# 最大记忆条目数
max_entries: 1000
# 自动提取记忆
auto_extract: true
# 记忆重要性阈值(低于此值的不保存)
importance_threshold: 0.5
# 自动总结(当记忆太多时自动合并相似条目)
auto_summarize: true
summarize_threshold: 800 # 超过 800 条时触发总结
# 记忆类别
categories:
- personal_info # 个人信息
- work # 工作相关
- preference # 偏好设置
- knowledge # 知识点
- task # 任务相关记忆是跨平台的
和对话上下文一样,持久化记忆也是跨平台共享的。你在 Telegram 上告诉 AI 的信息,在 WhatsApp 上也能被回忆起来。这是因为记忆存储在本地的统一记忆库中,不区分平台。
5.7 Skills 的产品启示
给产品经理的思考
OpenClaw 的 Skills 体系有几个值得学习的产品设计模式:
1. 核心最小化,扩展最大化 OpenClaw 本身只做消息路由和 AI 对话。所有具体功能都通过 Skills 扩展。这让核心产品保持简洁,同时通过生态实现无限可能。
2. 渐进式功能释放 用户一开始只用基础聊天功能。随着熟悉,逐步发现和安装新 Skills。这种渐进式体验降低了学习门槛。
3. 安全分级 不同 Skills 有不同的风险等级。高风险 Skills(如 Shell)需要手动启用和额外确认。这种分级设计在你的产品中也可以借鉴。
4. 社区驱动的生态 ClawHub 让社区开发者可以贡献 Skills,形成了一个正向循环:更多 Skills → 更多用户 → 更多开发者 → 更多 Skills。
本章小结
在这一章中,我们了解了:
- Skills 和 Tools 的概念:Skill 是功能包,Tool 是具体操作
- 内置 Skills:Shell、File Manager、Web Browse、Memo 等
- ClawHub 市场:浏览、安装、管理第三方 Skills
- 常用 Skills:Email、Calendar、CRM 等提效利器
- 自定义开发:Skill 的基本结构和开发流程
- 持久化记忆:让 AI 助手拥有长期记忆的能力
下一步
如果你觉得命令行操作太麻烦,别担心 -- 第六章:OneClaw 桌面版 将介绍完全不需要命令行的使用方式。