概述
使用本页选择正确的能力界面。工具是可调用操作,技能教代理如何工作,插件添加运行时能力,例如工具、提供商、通道、钩子和打包技能。
本页是概览和路由页。如需完整的工具策略、默认值、组成员身份、提供商限制和配置字段,请使用工具和自定义提供商。
从这里开始¶
对于大多数代理,请先从内置工具类别开始,仅当代理应看到更少的工具或需要显式主机访问时,再调整策略。
| 如果你需要... | 先使用此 | 然后阅读 |
|---|---|---|
| 让代理使用现有能力执行操作 | 内置工具 | 工具类别 |
| 控制代理可以调用什么 | 工具策略 | 工具和自定义提供商 |
| 教代理一个工作流 | 技能 | 技能、创建技能、技能工作坊 和 自学习 |
| 添加新的集成或运行时界面 | 插件 | 插件 和 构建插件 |
| 稍后或在后台运行工作 | 自动化 | 自动化概览 |
| 协调多个代理或运行框架 | 子代理 | ACP 代理 和 代理发送 |
| 从代码中编排并发代理 | Swarm | 代码模式 和 子代理 |
| 搜索大型 OpenClaw 工具目录 | 工具搜索 | 工具搜索 |
| 在一个紧凑程序中组合多个工具 | 代码模式 | 代码模式 |
选择工具、技能或插件¶
1. 当代理需要执行操作时使用工具
工具是代理可以调用的类型化函数,例如 exec、browser、web_search、message 或 image_generate。当代理需要读取数据、修改文件、发送消息、调用提供商或操作另一个系统时,使用工具。可见工具会以结构化函数定义的形式发送给模型。
模型只能看到通过当前配置、允许/拒绝策略、提供商限制、沙箱状态、通道权限和插件可用性筛选后保留的工具。
2. 当代理需要说明时使用技能
技能是加载到代理提示中的 SKILL.md 说明包。当代理已经拥有所需工具,但需要可重复的工作流、评审标准、命令序列或操作约束时,使用技能。
技能可以位于工作区、共享技能目录、受管理的 OpenClaw 技能根目录或插件包中。
技能 | 技能工作坊 | 自学习 | 创建技能 | 技能配置
3. 当 OpenClaw 需要新能力时使用插件
插件可以添加工具、技能、通道、模型提供商、语音、实时语音、媒体生成、网络搜索、网页抓取、钩子和其他运行时能力。当能力包含代码、凭据、生命周期钩子、清单元数据或可安装打包时,使用插件。现有插件可以从 ClawHub、npm、git、本地目录或归档中安装。
内置工具类别¶
下表列出代表性工具,以便你识别该界面。它不是完整的策略参考。如需准确的组、默认值和允许/拒绝语义,请使用工具和自定义提供商。
| 类别 | 当代理需要...时使用 | 代表性工具 | 接下来阅读 |
|---|---|---|---|
| 类别 | 当代理需要……时使用 | 代表性工具 | 下一步阅读 |
|---|---|---|---|
| 运行时 | 运行命令、管理进程、使用共享操作员终端,或使用由提供商支持的 Python | exec, process, terminal, code_execution |
执行, Control UI 终端, 代码执行 |
| 文件 | 读取和修改工作区文件 | read, write, edit, apply_patch |
应用补丁 |
| 人工输入 | 暂停以等待由用户拥有的结构化决策,或在未查看凭据的情况下获取凭据 | ask_user, secrets |
询问用户, 机密 |
| 网络 | 搜索网络、搜索 X 帖子,或获取可读的页面内容 | web_search, x_search, web_fetch |
网络工具, 网页获取 |
| 浏览器 | 操作浏览器会话 | browser |
浏览器 |
| Operator UI | 排列 Control UI 窗格和面板,或选择并创建外观主题 | screen, theme |
屏幕, 主题 |
| 会话进度 | 更新父会话的持久进度卡片;对子代理不可用 | progress_card |
进度卡片 |
| 消息与频道 | 发送回复或频道操作 | message |
代理发送 |
| 会话与代理 | 检查会话、委派工作、编排收集器、引导另一次运行,或报告状态 | sessions_*, agents_wait, subagents, agents_list, session_status, get_goal, create_goal, update_goal |
目标, 蜂群, 子代理, 会话工具 |
| 自动化 | 安排工作或响应后台事件 | cron, heartbeat_respond |
自动化 |
| Gateway 与节点 | 检查 Gateway 状态或已配对的目标设备 | gateway, nodes |
Gateway 配置, 节点 |
| 插件生命周期 | 检查、安装、启用、禁用、移除或重新加载插件 | plugins |
代理插件管理 |
| 媒体 | 分析、生成或朗读媒体 | view_image, image_generate, music_generate, video_generate, tts |
媒体概览 |
| 大型 OpenClaw 目录 | 搜索、调用并组合许多符合条件的工具,而无需将每个模式都发送给模型 | exec, wait, tool_search, tool_describe, tool_call |
代码模式, 工具搜索 |
会话工具和 sessions_spawn 接受 user(请求者的已验证 requester_profile.id),并以该人员的权限执行。当多人已引导该回合时,此项为必填。请参阅会话工具和子代理工具参考。
在多用户 Gateway 上,personal_instructions 会通过 Gateway 读取和更新经过身份验证的请求者的个人 USER.md,即使聊天使用项目工作树也是如此。它包含在 coding 和 messaging 配置文件中;它不会扩大通用文件工具访问权限。参见 User model。
edit 工具支持有针对性的格式修改,包括删除尾随空格,或替换 Unicode 引号、破折号和空格。即使新旧文本在模糊规范化后比较结果相等,这些修改也会被应用。完全相同的替换请求以及产生未变更内容的编辑仍然会报告无更改。
Note
Code Mode 和 Tool Search 是实验性的 OpenClaw 智能体界面。Codex harness 运行会使用
Codex 原生的 code mode、原生工具搜索、延迟动态工具和嵌套工具调用,而不是
tools.codeMode 或 tools.toolSearch。
插件提供的工具¶
插件可以注册其他工具。插件作者通过 api.registerTool(...) 和 manifest 的 contracts.tools 接入工具;有关契约详情,请参阅 Plugin SDK 和 Plugin manifest。
常见的插件提供的工具包括:
- Diffs 用于渲染文件和 Markdown 差异
- Show widget 用于在受支持的聊天客户端中呈现自包含的内联 SVG 和 HTML
- Screen 用于排列已连接的 Control UI
- LLM Task 用于仅 JSON 的工作流步骤
- Lobster 用于可恢复审批的类型化工作流
- Tokenjuice 用于精简嘈杂的
exec和bash工具输出 - Tool Search 用于发现和调用大型工具目录,而无需将每个 schema 都放入 prompt
- Canvas 用于 macOS widget 面板展示器和 A2UI 仪表盘内容
配置访问与审批¶
工具策略在模型调用之前强制执行。如果策略移除某个工具,模型在该轮次中不会收到该工具的 schema。一次运行可能因为全局配置、每个智能体的配置、频道策略、provider 限制、沙箱规则、频道/运行时策略或插件可用性而失去工具。
OpenClaw 提供了一种名为 view_image 的语义图像检查能力。当当前激活的 harness 提供自己的加载器时,OpenClaw 会抑制其重复实现。否则,OpenClaw 提供的实现接受 path 作为单个本地图像路径或允许的 URL,或者接受 paths 作为多个路径;maxImages 限制合并后的列表,默认值为 20。Codex 的原生实现接受单个本地文件系统 path。调用方必须遵循当前生效的工具 schema。
现有名为 image 的策略条目必须迁移到 view_image;运行 openclaw doctor --fix 以更新受支持的配置策略界面和持久化的自动化 toolsAllow 列表。
- Tools and custom providers 记录了工具配置文件、允许/拒绝列表、provider 特定限制、循环检测和由 provider 支持的工具设置。
- Exec approvals 记录了主机命令审批策略。
- Elevated exec 记录了沙箱之外的可控执行。
- Sandbox vs tool policy vs elevated 解释了哪一层控制文件和进程访问。
- Per-agent sandbox and tool restrictions 记录了针对委派运行的智能体特定限制。
扩展能力¶
根据你希望 OpenClaw 完成的任务,选择相应的扩展路径:
- 使用 Plugins 安装或管理现有插件。
- 使用 Build plugins 构建新的集成、provider、频道、工具或 hook。
- 使用 Skills 和 Creating skills 添加或调整可复用的智能体指令。
- 当你需要实现契约时,使用 Plugin SDK 和 Plugin manifest。
排查缺失工具¶
已配置的 tools.exec 和 tools.fs 部分不会授予工具访问权限。配置文件迁移警告仅在其他生效的全局、智能体和 provider 策略允许这些工具时,才会建议添加 alsoAllow 条目。
如果模型无法看到或调用某个工具,请从当前轮次的生效策略入手:
- 检查 Tools and custom providers 中的活动配置文件、
tools.allow和tools.deny。 - 在 Tools and custom providers 中检查 provider 特定限制,并确认所选的 model provider 支持该工具形态。
- 使用 Sandbox vs tool policy vs elevated 和 Elevated exec 检查频道权限、沙箱状态和提升访问权限。
- 在 Plugins 中检查所属插件是否已安装并启用。
- 对于委派运行,请在 Per-agent sandbox and tool restrictions 中检查按智能体的限制。
- 对于大型 OpenClaw 工具目录,请确认该运行使用的是直接工具暴露、Code Mode 还是 Tool Search。
相关¶
- Automation 用于 cron、任务、心跳、hooks、常备指令和工作流
- Agents 用于智能体模型、会话、记忆和多智能体协调
- Tools and custom providers 用于权威工具策略参考
- Plugins 用于插件安装和管理
- Plugin SDK 用于插件作者参考
- Skills 用于技能加载顺序、门控和配置
- Skill Workshop 用于生成和审核的技能创建
- Tool Search 用于精简的 OpenClaw 工具目录发现
- Code Mode 用于在隐藏的 OpenClaw 工具目录之上运行精简的 JavaScript 工作流
- Swarm 用于从 Code Mode 进行结构化扇出与收集
- Tools invoke API — 通过 HTTP 调用这些工具
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/openclaw