工具
理解 OpenClaw 工具、工具策略、审批、媒体能力、Tool Search,以及工具与 Skills/Plugins 的区别。
工具是模型可以调用的 typed actions。工具可以读文件、执行命令、搜索 Web、控制浏览器、发送消息、查看会话、生成媒体或控制已配对节点。
每次模型调用前,OpenClaw 都会先过滤工具。如果策略移除了某个工具,模型这一轮根本看不到它的 schema。
Tools、Skills、Plugins
| 层级 | 是什么 | 适合什么时候用 |
|---|---|---|
| Tool | typed callable function | Agent 需要行动 |
| Skill | SKILL.md 指令包 | Agent 需要可重复工作流或评审标准 |
| Plugin | 可安装运行时代码 | OpenClaw 需要新的工具、渠道、模型提供商、hook 或 packaged skill |
如果 Agent 已经有 browser 工具,但需要你的研究流程,写 Skill。如果 OpenClaw 根本不能连接某个服务,装或写 Plugin。
内置工具类别
| 类别 | 代表工具 | 作用 |
|---|---|---|
| Runtime | exec, process, code_execution | 命令、长任务、provider-backed analysis |
| Files | read, write, edit, apply_patch | 读写和修改工作区文件 |
| Web | web_search, x_search, web_fetch | 搜索和网页内容提取 |
| Browser | browser | 登录态浏览器和 UI 自动化 |
| Messaging | message | 回复和渠道动作 |
| Sessions | sessions_*, session_status, goal | 查看、继续、steer 或总结 Agent 工作 |
| Agents | subagents, agents_list | 委托或查看 Agent 拓扑 |
| Automation | cron, heartbeat_respond | 定时或后台行为 |
| Gateway/Nodes | gateway, nodes | Gateway 状态和设备动作 |
| Media | image, image_generate, music_generate, video_generate, tts | 理解、生成或播放媒体 |
| Large catalogs | tool_search, tool_describe, tool_search_code | 不把所有 schema 放进 prompt 的工具发现 |
文件与 Patch 工具
read读文件write创建或替换文件edit定点修改apply_patch一次应用多文件 patch
apply_patch 是 exec 的 subtool,默认对 OpenAI 和 OpenAI Codex 模型可用。
几个容易误读的细节:
tools.exec.applyPatch.workspaceOnly默认就是true- patch 路径可以是 workspace 相对路径或绝对路径;
workspaceOnly会阻止写入或删除 workspace 外部文件 - deny
write不会自动 denyapply_patch;要显式 denyapply_patch,或 denygroup:fs - 设置
tools.exec.applyPatch.enabled: false可以对 OpenAI 模型禁用它
openclaw config set tools.exec.applyPatch.enabled false
openclaw config set tools.deny '["group:fs"]'Exec 与 Process
exec 执行 shell 命令。长任务可以进入后台,再通过 process/session 工具查看。
审批策略决定命令是直接运行、先询问,还是拒绝。Elevated execution 是独立的逃逸路径,应视作明确的操作者动作。
openclaw approvals get
openclaw exec-policy showBrowser 与 Web
简单查询优先用 web_fetch 或 web_search。需要登录态、点击、滚动、表单、截图或 JS-heavy 页面时,再用 browser。
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
- 确认拥有该工具的 plugin 已安装并启用。
- 检查 active profile、allowlist 和 denylist。
- 检查 provider 限制。
- 检查 sandbox 和 elevated settings。
- 检查 channel/runtime policy。
- 如果是 delegated work,检查 per-agent tool restrictions。
工具边界就是架构边界
一个生产级 Agent 是否可信,很大程度取决于工具边界。OpenClaw 把 schema 暴露、策略过滤、审批、沙盒和 provider 兼容性都放在模型行动之前。
继续实践
工具 的核心概念已经读完
如果你想把理解变成可复用的能力,可以到 AgentWay 继续练习