知识模块
🦞 OpenClaw 知识库
五、工具与插件系统
工具与插件系统

五、工具与插件系统

5.1 三层架构

智能体所做的一切,凡是超出生成文本范围的,都通过工具完成。

OpenClaw 有三个协同工作的层级:

层级说明示例
1. 工具智能体可调用的类型化函数exec、browser、web_search、message
2. Skills注入到系统提示词的 Markdown 文件SKILL.md,教智能体如何使用工具
3. 插件打包渠道、工具、Skills 等的软件包渠道插件、模型提供商插件

5.2 内置工具完整列表

执行与文件

工具作用
exec / process运行 shell 命令,管理后台进程
code_execution运行沙箱隔离的远程 Python 分析代码
read / write / edit在工作区中执行文件 I/O
apply_patch多段文件补丁应用

网络与搜索

工具作用
browser控制 Chromium 浏览器(导航、点击、截图)
web_search搜索网页
x_search搜索 X (Twitter) 帖子
web_fetch抓取页面内容

媒体生成

工具作用
image分析图像
image_generate生成图像
music_generate生成音乐轨道
video_generate生成视频
tts一次性文本转语音转换

会话与智能体

工具作用
sessions_*会话管理、状态查看
subagents子智能体编排
agents_list列出可用智能体
session_status轻量级 /status 风格回读

设备与节点

工具作用
canvas驱动节点 Canvas(展示、求值、快照)
nodes发现并定位已配对的设备

自动化

工具作用
cron管理计划任务
gateway检查、修补、重启或更新 Gateway

消息

工具作用
message跨所有渠道发送消息

5.3 工具配置

允许列表和拒绝列表

通过配置中的 tools.allow / tools.deny 控制智能体可以调用哪些工具:

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

拒绝始终优先于允许。

工具配置文件 (Profile)

tools.profile 会在应用 allow/deny 之前设置一个基础允许列表。

Profile包含的工具
full不限制(与未设置相同)
codinggroup:fs, group:runtime, group:web, group:sessions, group:memory, cron, image, image_generate, music_generate, video_generate
messaginggroup:messaging, sessions_list, sessions_history, sessions_send, session_status
minimal仅 session_status

按智能体覆盖

{
  "agents": {
    "list": [
      {
        "tools": {
          "profile": "coding"
        }
      }
    ]
  }
}

5.4 工具分组

在允许/拒绝列表中使用 group:* 简写:

分组包含的工具
group:runtimeexec、process、code_execution
group:fsread、write、edit、apply_patch
group:sessionssessions_list、sessions_history、sessions_send、sessions_spawn、sessions_yield、subagents、session_status
group:memorymemory_search、memory_get
group:webweb_search、x_search、web_fetch
group:uibrowser、canvas
group:automationcron、gateway
group:messagingmessage
group:nodesnodes
group:agentsagents_list
group:mediaimage、image_generate、music_generate、video_generate、tts
group:openclaw所有 OpenClaw 内置工具

5.5 Skills(技能)

Skills 是注入到系统提示词中的 Markdown 文件(SKILL.md)。

Skills 的作用

  • 为智能体提供上下文
  • 设置约束条件
  • 提供高效使用工具的分步指导

Skills 的位置

  • 工作区目录
  • 共享文件夹
  • 插件内置提供

创建 Skills

workspace/
└── skills/
    └── my-skill/
        └── SKILL.md

5.6 插件系统

插件能做什么

插件是一种软件包,可以注册任意组合的能力:

  • 渠道
  • 模型提供商
  • 工具
  • Skills
  • 语音
  • 实时转写
  • 实时语音
  • 媒体理解
  • 图像生成
  • 视频生成
  • 网页抓取
  • 网页搜索

插件类型

类型说明
核心插件随 OpenClaw 一起提供
外部插件由社区发布到 npm

安装插件

npm install -g <plugin-package>

然后在配置中启用。


5.7 提供商特定限制

使用 tools.byProvider 为特定提供商限制工具:

{
  "tools": {
    "profile": "coding",
    "byProvider": {
      "google-antigravity": { "profile": "minimal" }
    }
  }
}

5.8 Gateway 工具(操作员专用)

gateway 是仅限所有者使用的 Gateway 运行时工具:

方法作用
config.schema.lookup在编辑前查看单一路径范围的配置子树
config.get获取当前配置快照 + 哈希值
config.patch执行带重启的部分配置更新
config.apply仅用于完整配置替换
update.run显式执行自更新 + 重启

对于部分更改,优先使用 config.schema.lookup,然后使用 config.patch。仅在你有意替换整个配置时才使用 config.apply