openclaw plugins。
典型的 CLI 工作流:找到一个包,从 ClawHub、npm、git 或
本地路径安装它,让受管理的 Gateway 自动重启(或手动重启它),然后
验证插件的运行时注册。
使用 Control UI
在 Control UI 中打开 Plugins,或者使用相对于已配置 Control UI 基础路径的/settings/plugins。例如,基础路径为 /openclaw 时,使用 /openclaw/settings/plugins。该页面有两个选项卡:
- Installed 显示按类别分组的完整本地清单(channels、model providers、memory、tools)。每一行都会打开详细视图;其溢出菜单(
…)可启用或禁用插件,并且对于外部安装的插件,还提供 移除。该选项卡还会列出已配置的 MCP servers,并通过相同的菜单驱动方式执行启用、禁用和移除操作,同时在 Gateway 配置中编辑mcp.servers。 - Discover 是商店:包含随 OpenClaw 提供的精选插件、官方外部插件,以及精选的连接器展示区。连接器卡片要么可一键添加托管的 MCP server(GitHub、Notion、Linear、Sentry、Home Assistant),要么会跳转到预填充的 ClawHub 搜索。在搜索框中输入内容会就地查询 ClawHub,并附加一个 From ClawHub 部分,其中包含下载量和来源验证徽章。
operator.read。安装、启用、禁用、移除以及 MCP server 变更需要 operator.admin。ClawHub 安装由 Gateway 执行,并保留其信任性、完整性和插件安装策略检查。作为管理员启用已安装插件时,也会通过将所选插件添加到现有的受限 plugins.allow 列表中来记录该显式信任。显式的 plugins.deny 条目仍然具有权威性,必须先移除才能启用该插件。
安装或移除插件代码需要重启 Gateway。当已安装插件和当前 Gateway 运行时支持时,启用变更可以无需重启直接应用;否则 UI 会提示需要重启。基于 OAuth 的 MCP 连接器在添加后,仍然需要先通过 CLI 执行一次 openclaw mcp login <name>。
Control UI 不会从任意 npm、git 或本地路径来源进行安装,不会更新插件,也不会暴露丰富的插件配置。对于这些操作,请使用下面的 CLI 工作流。
列出和搜索插件
--json 用于脚本:
plugins list 是一次冷态清单检查:OpenClaw 能从配置、清单以及持久化的插件注册表中发现什么。它并不能证明某个已运行的 Gateway 已经导入了插件运行时。JSON 输出包含注册表诊断信息以及每个插件的 dependencyStatus(即声明的 dependencies/optionalDependencies 是否能在磁盘上解析)。
plugins search 会查询 ClawHub 中可安装的插件包,并为每个结果打印一个安装提示(openclaw plugins install clawhub:<package>)。
启用和禁用插件
enable。
安装插件
clawhub:、npm:、git: 或 npm-pack: 来确定性地选择来源。OpenClaw 的捆绑和官方目录包与 ClawHub 包一样受信任。新的任意 npm、git、本地路径/归档、npm-pack: 或 marketplace 来源,在你审查并信任该来源后,非交互式安装需要 --force。
--force 会在无需提示的情况下确认非 ClawHub 来源,并在需要时覆盖现有安装目标。对于已跟踪的 npm、ClawHub 或 hook-pack 安装的常规升级,请改用 openclaw plugins update。使用 --link 时,--force 只确认来源;链接目录不会被复制或覆盖。
如果新安装的插件需要尚未存在的配置,OpenClaw 会记录安装信息,但会保持插件禁用状态。配置 plugins.entries.<id>.config,然后运行 openclaw plugins enable <id>。如果已有配置条目但无效,安装将失败,且不会重写该配置。
一个插件包可以公开多个子条目。安装会跟踪该包一次,启用每个已就绪的子条目,并保留你明确禁用的任何子条目。运行时策略仍可通过 plugins.entries.<child-id>、允许/拒绝列表、channel 配置、精确的子条目加载路径以及 memory 和 contextEngine 槽位来针对子条目进行控制。
Restart and inspect
启用了配置重载的正在运行的托管 Gateway 在安装、更新或卸载插件代码后会自动重启。如果 Gateway 是非托管的,或者已禁用重载,请在检查在线运行时表面之前手动重启它:
inspect --runtime 会加载插件模块,并证明它已注册运行时表面(工具、钩子、服务、Gateway 方法、HTTP 路由、插件拥有的 CLI 命令)。普通的 inspect 和 list 仅进行冷态清单/配置/注册表检查。
更新插件
@beta)和精确固定的版本会沿用到之后的 update <plugin-id> 运行中。对于多条目包,任何子条目 ID 都会解析到同一个已跟踪的包安装,因此所有同级条目会一起更新。已移除或重命名的子条目会在新的包/索引状态提交之前,协调其过时的条目、允许/拒绝策略、精确加载路径、channel 配置以及 memory/context 槽位选择;保留的/新的子条目和无关插件则会被保留。
如果 OpenClaw 无法准确证明唯一的包所有者和完整的子条目列表,更新和卸载会安全失败,不会更改包文件、配置或已安装索引。运行 openclaw plugins registry --refresh,检查 openclaw plugins doctor,并使用 openclaw doctor --fix 修复可修复的旧版索引状态。如果歧义仍然存在,请先重新安装该包,再重试。
openclaw plugins update --all 是批量维护路径。它仍然遵循普通的已跟踪安装规格,但受信任的官方 OpenClaw 插件记录会同步到当前官方目录目标,而不是继续固定在过时的官方精确软件包上。规范的渠道解析器会同时使用 update.channel 和已安装的核心版本,因此在未配置渠道的情况下,已安装 beta 核心的官方插件会继续使用 beta 发布线。使用定向的 update <plugin-id> 可保持精确或带标签的官方规格不变。
对于 npm 安装,请传入明确的包规格以切换已跟踪记录:
openclaw plugins。
卸载插件
plugins.load.paths 和适用时的 channel 配置条目中由该包拥有的每个子条目。你可以使用任意子条目 ID 来指定多条目包;预览会列出包所有者以及将被移除的所有同级条目。除非传入 --keep-files,否则受管理的安装目录只会被移除一次。当卸载改变插件源时,正在运行的托管 Gateway 会自动重启。
在 Nix 模式(OPENCLAW_NIX_MODE=1)下,插件的安装、更新、卸载、
启用和禁用都将被禁用;请改为在 Nix 源中管理这些安装选项。
选择来源
受管理的本地路径安装必须是插件目录或归档文件。请将独立的插件文件放在
plugins.load.paths 中,而不是通过 plugins install 安装它们。
发布插件
ClawHub 是 OpenClaw 插件的主要公开发现入口。发布到这里, 当你希望用户在安装前先看到插件元数据、版本历史、注册表 扫描结果和安装提示时使用。openclaw.plugin.json)以及
package.json 元数据:
package.json
- ClawHub 发布 说明所有者、作用域、 发布、审核、包验证和包转移。
- 构建插件 展示完整的插件
包结构(包括
openclaw.plugin.json)以及首次发布 工作流。 - 插件清单 定义原生插件清单 字段。
clawhub: 或 npm: 前缀来强制指定来源。