2026-01-15 06:12:54 +00:00
|
|
|
---
|
2026-02-13 04:11:26 +02:00
|
|
|
summary: "CLI reference for `openclaw plugins` (list, install, uninstall, enable/disable, doctor)"
|
2026-01-15 06:12:54 +00:00
|
|
|
read_when:
|
|
|
|
|
- You want to install or manage in-process Gateway plugins
|
|
|
|
|
- You want to debug plugin load failures
|
2026-01-31 16:04:03 -05:00
|
|
|
title: "plugins"
|
2026-01-15 06:12:54 +00:00
|
|
|
---
|
|
|
|
|
|
2026-01-30 03:15:10 +01:00
|
|
|
# `openclaw plugins`
|
2026-01-15 06:12:54 +00:00
|
|
|
|
|
|
|
|
Manage Gateway plugins/extensions (loaded in-process).
|
|
|
|
|
|
|
|
|
|
Related:
|
2026-01-31 21:13:13 +09:00
|
|
|
|
2026-02-07 15:40:35 -05:00
|
|
|
- Plugin system: [Plugins](/tools/plugin)
|
2026-01-19 21:13:51 -06:00
|
|
|
- Plugin manifest + schema: [Plugin manifest](/plugins/manifest)
|
2026-01-15 06:12:54 +00:00
|
|
|
- Security hardening: [Security](/gateway/security)
|
|
|
|
|
|
|
|
|
|
## Commands
|
|
|
|
|
|
|
|
|
|
```bash
|
2026-01-30 03:15:10 +01:00
|
|
|
openclaw plugins list
|
|
|
|
|
openclaw plugins info <id>
|
|
|
|
|
openclaw plugins enable <id>
|
|
|
|
|
openclaw plugins disable <id>
|
2026-02-13 04:11:26 +02:00
|
|
|
openclaw plugins uninstall <id>
|
2026-01-30 03:15:10 +01:00
|
|
|
openclaw plugins doctor
|
|
|
|
|
openclaw plugins update <id>
|
|
|
|
|
openclaw plugins update --all
|
2026-01-15 06:12:54 +00:00
|
|
|
```
|
|
|
|
|
|
2026-01-30 03:15:10 +01:00
|
|
|
Bundled plugins ship with OpenClaw but start disabled. Use `plugins enable` to
|
2026-01-17 09:33:56 +00:00
|
|
|
activate them.
|
|
|
|
|
|
2026-01-30 03:15:10 +01:00
|
|
|
All plugins must ship a `openclaw.plugin.json` file with an inline JSON Schema
|
2026-01-19 21:13:51 -06:00
|
|
|
(`configSchema`, even if empty). Missing/invalid manifests or schemas prevent
|
|
|
|
|
the plugin from loading and fail config validation.
|
|
|
|
|
|
2026-01-15 06:12:54 +00:00
|
|
|
### Install
|
|
|
|
|
|
|
|
|
|
```bash
|
2026-01-30 03:15:10 +01:00
|
|
|
openclaw plugins install <path-or-spec>
|
2026-01-15 06:12:54 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Security note: treat plugin installs like running code. Prefer pinned versions.
|
|
|
|
|
|
2026-02-14 14:07:07 +01:00
|
|
|
Npm specs are **registry-only** (package name + optional version/tag). Git/URL/file
|
|
|
|
|
specs are rejected. Dependency installs run with `--ignore-scripts` for safety.
|
|
|
|
|
|
2026-01-17 07:08:04 +00:00
|
|
|
Supported archives: `.zip`, `.tgz`, `.tar.gz`, `.tar`.
|
|
|
|
|
|
|
|
|
|
Use `--link` to avoid copying a local directory (adds to `plugins.load.paths`):
|
|
|
|
|
|
|
|
|
|
```bash
|
2026-01-30 03:15:10 +01:00
|
|
|
openclaw plugins install -l ./my-plugin
|
2026-01-17 07:08:04 +00:00
|
|
|
```
|
|
|
|
|
|
2026-02-13 04:11:26 +02:00
|
|
|
### Uninstall
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
openclaw plugins uninstall <id>
|
|
|
|
|
openclaw plugins uninstall <id> --dry-run
|
|
|
|
|
openclaw plugins uninstall <id> --keep-files
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
`uninstall` removes plugin records from `plugins.entries`, `plugins.installs`,
|
|
|
|
|
the plugin allowlist, and linked `plugins.load.paths` entries when applicable.
|
|
|
|
|
For active memory plugins, the memory slot resets to `memory-core`.
|
|
|
|
|
|
|
|
|
|
By default, uninstall also removes the plugin install directory under the active
|
|
|
|
|
state dir extensions root (`$OPENCLAW_STATE_DIR/extensions/<id>`). Use
|
|
|
|
|
`--keep-files` to keep files on disk.
|
|
|
|
|
|
|
|
|
|
`--keep-config` is supported as a deprecated alias for `--keep-files`.
|
|
|
|
|
|
2026-01-16 05:54:47 +00:00
|
|
|
### Update
|
|
|
|
|
|
|
|
|
|
```bash
|
2026-01-30 03:15:10 +01:00
|
|
|
openclaw plugins update <id>
|
|
|
|
|
openclaw plugins update --all
|
|
|
|
|
openclaw plugins update <id> --dry-run
|
2026-01-16 05:54:47 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Updates only apply to plugins installed from npm (tracked in `plugins.installs`).
|