Skip to main content

openclaw plugins

Manage Gateway plugins/extensions (loaded in-process). Related:

Commands

openclaw plugins list
openclaw plugins info <id>
openclaw plugins enable <id>
openclaw plugins disable <id>
openclaw plugins uninstall <id>
openclaw plugins doctor
openclaw plugins update <id>
openclaw plugins update --all
Bundled plugins ship with OpenClaw but start disabled. Use plugins enable to activate them. All plugins must ship a openclaw.plugin.json file with an inline JSON Schema (configSchema, even if empty). Missing/invalid manifests or schemas prevent the plugin from loading and fail config validation.

Install

openclaw plugins install <path-or-spec>
Security note: treat plugin installs like running code. Prefer pinned versions. Npm specs are registry-only (package name + optional version/tag). Git/URL/file specs are rejected. Dependency installs run with --ignore-scripts for safety. Supported archives: .zip, .tgz, .tar.gz, .tar. Use --link to avoid copying a local directory (adds to plugins.load.paths):
openclaw plugins install -l ./my-plugin

Uninstall

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.

Update

openclaw plugins update <id>
openclaw plugins update --all
openclaw plugins update <id> --dry-run
Updates only apply to plugins installed from npm (tracked in plugins.installs).