Capabilities

工具

12分钟

理解 OpenClaw 工具、工具策略、审批、媒体能力、Tool Search,以及工具与 Skills/Plugins 的区别。

工具是模型可以调用的 typed actions。工具可以读文件、执行命令、搜索 Web、控制浏览器、发送消息、查看会话、生成媒体或控制已配对节点。

每次模型调用前,OpenClaw 都会先过滤工具。如果策略移除了某个工具,模型这一轮根本看不到它的 schema。

Tools、Skills、Plugins

层级是什么适合什么时候用
Tooltyped callable functionAgent 需要行动
SkillSKILL.md 指令包Agent 需要可重复工作流或评审标准
Plugin可安装运行时代码OpenClaw 需要新的工具、渠道、模型提供商、hook 或 packaged skill

如果 Agent 已经有 browser 工具,但需要你的研究流程,写 Skill。如果 OpenClaw 根本不能连接某个服务,装或写 Plugin。

内置工具类别

类别代表工具作用
Runtimeexec, process, code_execution命令、长任务、provider-backed analysis
Filesread, write, edit, apply_patch读写和修改工作区文件
Webweb_search, x_search, web_fetch搜索和网页内容提取
Browserbrowser登录态浏览器和 UI 自动化
Messagingmessage回复和渠道动作
Sessionssessions_*, session_status, goal查看、继续、steer 或总结 Agent 工作
Agentssubagents, agents_list委托或查看 Agent 拓扑
Automationcron, heartbeat_respond定时或后台行为
Gateway/Nodesgateway, nodesGateway 状态和设备动作
Mediaimage, image_generate, music_generate, video_generate, tts理解、生成或播放媒体
Large catalogstool_search, tool_describe, tool_search_code不把所有 schema 放进 prompt 的工具发现

文件与 Patch 工具

  • read 读文件
  • write 创建或替换文件
  • edit 定点修改
  • apply_patch 一次应用多文件 patch

apply_patchexec 的 subtool,默认对 OpenAI 和 OpenAI Codex 模型可用。

几个容易误读的细节:

  • tools.exec.applyPatch.workspaceOnly 默认就是 true
  • patch 路径可以是 workspace 相对路径或绝对路径;workspaceOnly 会阻止写入或删除 workspace 外部文件
  • deny write 不会自动 deny apply_patch;要显式 deny apply_patch,或 deny group:fs
  • 设置 tools.exec.applyPatch.enabled: false 可以对 OpenAI 模型禁用它
bash
openclaw config set tools.exec.applyPatch.enabled false
openclaw config set tools.deny '["group:fs"]'

Exec 与 Process

exec 执行 shell 命令。长任务可以进入后台,再通过 process/session 工具查看。

审批策略决定命令是直接运行、先询问,还是拒绝。Elevated execution 是独立的逃逸路径,应视作明确的操作者动作。

bash
openclaw approvals get
openclaw exec-policy show

Browser 与 Web

简单查询优先用 web_fetchweb_search。需要登录态、点击、滚动、表单、截图或 JS-heavy 页面时,再用 browser

bash
openclaw browser login https://example.com
openclaw browser status

媒体与语音

OpenClaw 的媒体能力已经不止图片理解:

  • 图片理解和生成
  • 视频生成
  • 音乐生成
  • PDF 分析
  • TTS
  • 语音消息和 talk mode

这些能力取决于 provider、插件、凭证和工具策略。

Tool Search

当工具 catalog 很大时,不适合把所有 schema 都塞进 prompt。Tool Search 让 Agent 先搜索、描述,再调用合适工具。

适合场景:

  • 安装了很多插件
  • provider 接受不了完整 schema
  • 希望先发现工具再执行

策略层

工具可能因为这些原因不可见:

  • tools.allow / tools.deny
  • active profile
  • per-agent 限制
  • provider/model 限制
  • channel policy
  • sandbox 状态
  • elevated 设置
  • plugin 是否可用

Missing Tool Checklist

  1. 确认拥有该工具的 plugin 已安装并启用。
  2. 检查 active profile、allowlist 和 denylist。
  3. 检查 provider 限制。
  4. 检查 sandbox 和 elevated settings。
  5. 检查 channel/runtime policy。
  6. 如果是 delegated work,检查 per-agent tool restrictions。

工具边界就是架构边界

一个生产级 Agent 是否可信,很大程度取决于工具边界。OpenClaw 把 schema 暴露、策略过滤、审批、沙盒和 provider 兼容性都放在模型行动之前。

继续实践

工具 的核心概念已经读完

如果你想把理解变成可复用的能力,可以到 AgentWay 继续练习