第7章 - 工具与技能
嗨,朋友!这一章我们来探索 OpenClaw 最强大的部分——工具和技能系统。正是这些让 OpenClaw 从一个简单的聊天机器人变成了真正能帮你做事的助手。
🤔 工具和技能有什么区别?
简单来说:
- 工具(Tools):OpenClaw 内置的核心能力,比如执行命令、读写文件、控制浏览器
- 技能(Skills):可安装的扩展插件,比如查天气、管理日历、操作 GitHub
OpenClaw
├── 内置工具(开箱即用)
│ ├── bash - 执行 Shell 命令
│ ├── browser - 浏览器控制
│ ├── read/write/edit - 文件操作
│ ├── cron - 定时任务
│ └── sessions - 会话管理
│
└── 技能(可安装)
├── 社区技能(ClawHub)
└── 自定义技能(自己写)
🔧 内置工具详解
1. Bash 工具 - Shell 命令执行 ⚡
这是 Linux 上最常用的工具。OpenClaw 可以直接在你的系统上执行命令:
你:帮我看看磁盘使用情况
AI:好的,让我运行 df -h 来查看...
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 50G 12G 35G 26% /
你:检查一下 nginx 服务是否在运行
AI:让我检查一下... systemctl status nginx 显示 nginx 正在运行,PID 是 1234。
注意
默认情况下,Bash 工具在主会话中有完整的系统访问权限。这意味着 AI 可以执行任何命令。确保只有你自己能与主会话交互。
2. 浏览器工具 - 网页控制 🌐
OpenClaw 可以控制 Chromium 浏览器:
你:帮我去 GitHub 看看 openclaw/openclaw 仓库有多少 Star
AI:好的,让我打开浏览器...
该仓库目前有 xx,xxx 个 Star。
在 Linux 上使用浏览器工具,可能需要安装 Chromium:
# Ubuntu/Debian
sudo apt install -y chromium-browser
# 如果是无桌面环境的服务器,需要安装依赖
sudo apt install -y libgbm1 libnss3 libatk-bridge2.0-0 libdrm2 libxkbcommon0 libxcomposite1 libxdamage1 libxrandr2 libgbm1 libpango-1.0-0 libcairo2 libasound2
提示
在无桌面环境的 Linux 服务器上,浏览器会以 headless(无头)模式运行,不需要显示器。
3. 文件操作工具 📁
OpenClaw 可以读写文件:
你:帮我看看 /etc/hostname 里写的是什么
AI:好的,文件内容是:my-linux-server
你:帮我创建一个 /tmp/hello.txt 文件,内容写"Hello from OpenClaw"
AI:已创建 /tmp/hello.txt,内容已写入。
4. 定时任务工具(Cron) ⏰
OpenClaw 内置定时任务功能:
你:每天早上 9 点提醒我查看邮件
AI:好的,我已经设置了定时提醒。每天早上 9:00 我会发消息提醒你查看邮件。
5. 会话管理工具 💬
管理多个对话会话:
你:列出当前所有活跃的会话
AI:当前有 3 个活跃会话...
🧩 技能系统
什么是技能?
技能是通过 SKILL.md 文件定义的扩展功能。每个技能告诉 OpenClaw 如何完成特定类型的任务。
技能存放位置
~/.openclaw/workspace/skills/
├── weather/
│ └── SKILL.md # 天气查询技能
├── github-manager/
│ └── SKILL.md # GitHub 管理技能
└── daily-report/
└── SKILL.md # 日报生成技能
从 ClawHub 安装技能
ClawHub 是 OpenClaw 的技能市场,有社区贡献的各种技能:
# 浏览可用技能(通过聊天)
你:帮我搜索一下有什么好用的技能
# 或者直接访问 ClawHub
# https://clawhub.ai
编写自定义技能
你也可以自己写技能!创建一个 SKILL.md 文件:
# 创建技能目录
mkdir -p ~/.openclaw/workspace/skills/my-skill
# 创建技能文件
cat > ~/.openclaw/workspace/skills/my-skill/SKILL.md << 'EOF'
# My Custom Skill
## Description
这个技能用于检查服务器的健康状态。
## Instructions
当用户要求检查服务器状态时:
1. 运行 `uptime` 查看运行时间
2. 运行 `free -h` 查看内存使用
3. 运行 `df -h` 查看磁盘使用
4. 运行 `top -bn1 | head -5` 查看 CPU 使用
5. 将结果整理成清晰的报告返回给用户
EOF
提示
技能文件本质就是提示词。你用自然语言告诉 AI 该怎么完成特定任务,它就会按照你的指令去做。非常灵活!
🛠️ 工作空间文件
OpenClaw 的工作空间有几个特殊文件,它们会影响 AI 的行为:
| 文件 | 用途 |
|---|---|
AGENTS.md | 定义 Agent 的行为规则和限制 |
SOUL.md | 定义 AI 的个性和风格 |
TOOLS.md | 列出可用工具的说明 |
自定义 SOUL.md 示例
cat > ~/.openclaw/workspace/SOUL.md << 'EOF'
# 我的 AI 助手个性
你是一个友好、高效的 Linux 系统管理助手。
## 个性特点
- 说话简洁明了,不废话
- 执行操作前先说明要做什么
- 遇到危险操作时先确认
- 用中文回复
## 习惯
- 执行命令后总是检查返回值
- 修改配置文件前先备份
- 定期提醒检查系统安全
EOF
💪 练习题
- OpenClaw 的内置工具有哪些?各自的作用是什么?
- 技能文件(SKILL.md)存放在哪个目录?
- 尝试写一个自定义技能,让 AI 在每次你说"日报"时自动收集系统信息并生成报告。
答案提示
- bash(命令执行)、browser(浏览器)、read/write/edit(文件操作)、cron(定时任务)、sessions(会话管理)
~/.openclaw/workspace/skills/<技能名>/SKILL.md- 创建
~/.openclaw/workspace/skills/daily-report/SKILL.md,在其中描述收集 uptime、内存、磁盘、CPU 等信息并整理成报告的步骤
下一步: 第8章 - 日常使用技巧 →
