第4课 助手工具#

为什么需要了解这个#

AI 模型本身只能生成文本。但借助工具(tools),你的 OpenClaw 助手可以在电脑上执行命令、在互联网上搜索信息、控制浏览器、读取和创建文件。工具把助手从一个"只会说话的脑袋"变成了一个真正能行动的帮手。


有哪些工具#

🖥️ exec —— 执行命令#

作用: 在你电脑的终端(命令行)中运行命令。

使用示例:

  • “看看磁盘还有多少可用空间”
  • “为项目创建一个文件夹”
  • “运行数据处理脚本”

工作原理:

你给助手发消息:“服务器现在是什么日期和时间?”

助手会执行 date 命令并显示结果。

重要参数:

  • command —— 要执行的命令(必填)
  • timeout —— 最大执行时间(默认30分钟)
  • background —— 后台运行(不等待完成)

关于安全性:默认情况下,命令在隔离环境(沙箱)中执行。这保护你的系统免受意外错误的影响。


🔍 web_search —— 互联网搜索#

作用: 通过 Brave Search 搜索引擎在互联网上搜索信息。

使用示例:

  • “查一下当前美元汇率”
  • “明天北京天气怎么样?”
  • “搜索红烧肉的做法”

如何配置:

需要 Brave Search 的免费 API 密钥:

openclaw configure --section web

或在配置文件中:

{
  tools: {
    web: {
      search: {
        enabled: true,
        // 密钥最好保存在环境变量 BRAVE_API_KEY 中
      }
    }
  }
}

搜索参数:

  • query —— 搜索查询
  • count —— 结果数量(1到10)

📄 web_fetch —— 获取网页内容#

作用: 打开网页并提取可读文本(去除广告、菜单和其他"杂物")。

使用示例:

  • “阅读这篇文章并做个摘要”(附带链接)
  • “这个网站首页写了什么?”

参数:

  • url —— 网页地址
  • extractMode —— 提取格式:markdown(默认)或 text
  • maxChars —— 最大字符数(用于长页面)

限制:web_fetch 不执行 JavaScript。如果网站是动态加载的(例如单页应用),最好使用浏览器。


🌐 browser —— 浏览器控制#

作用: 打开真正的浏览器并与之交互——点击按钮、填写表单、截图。

使用示例:

  • “打开网站并截图”
  • “进入网站,填写表单并点击提交按钮”
  • “在商店网站上检查订单状态”

浏览器主要操作:

操作 作用
start / stop 启动/停止浏览器
open 打开新标签页
snapshot 获取页面"快照"(元素的文本描述)
screenshot 截取屏幕图片
act 执行操作:点击、输入文字、滚动
navigate 跳转到地址

浏览器自动化工作原理:

  1. 助手执行 snapshot —— 获取页面上的元素列表
  2. 找到目标元素(按钮、输入框)
  3. 执行 act —— 点击或输入文字
  4. 通过新的 snapshotscreenshot 检查结果

📁 文件操作:read, write, edit#

read —— 读取文件内容 write —— 创建或覆盖文件 edit —— 对文件进行精确修改

示例:

  • “读取 report.txt 文件”
  • “创建一个任务列表文件”
  • “把文档中的’草稿’替换为’最终版'”

📨 message —— 发送消息#

作用: 向聊天工具(Telegram、WhatsApp、Discord、Slack等)发送消息。

示例:

  • “向 Telegram 群组发送消息”
  • “在 Discord 中创建投票”

如何管理工具#

禁用不需要的工具#

如果你想禁止助手使用某些工具:

{
  tools: {
    deny: ["browser"]     // 禁止浏览器
  }
}

工具配置方案#

有现成的快速配置方案:

方案 包含的功能
minimal 仅会话状态
coding 文件、命令、会话、记忆
messaging 消息和会话
full 所有工具(默认)

示例——仅用于消息功能:

{
  tools: {
    profile: "messaging"
  }
}

工具组#

为了方便,工具被分成了组:

包含的工具
group:runtime exec, bash, process
group:fs read, write, edit
group:web web_search, web_fetch
group:ui browser, canvas
group:memory memory_search, memory_get
group:messaging message
group:nodes nodes

示例——只允许文件和浏览器:

{
  tools: {
    allow: ["group:fs", "browser"]
  }
}

实际案例#

假设你请助手:“在网上搜索欧元对人民币的汇率并保存到文件中”

助手会执行一系列操作:

  1. web_search —— 搜索当前汇率
  2. write —— 创建包含结果的文件

这一切都是自动完成的——你只需用普通语言描述任务。


本课总结#

  • 工具是助手在现实世界中行动的能力
  • exec —— 在电脑上执行命令
  • web_search —— 互联网搜索(需要 Brave Search 密钥)
  • web_fetch —— 从网页获取和提取文本
  • browser —— 控制真正的浏览器
  • read/write/edit —— 文件操作
  • message —— 向聊天工具发送消息
  • 工具可以通过配置来启用、禁用和分组
  • 助手会自动选择完成任务所需的工具

下一课:技能 (Skills)