openclaw plugins
Gateway-Plugins/Erweiterungen, Hook-Pakete und kompatible Bundles verwalten.
Verwandt:
- Plugin-System: Plugins
- Bundle-Kompatibilität: Plugin bundles
- Plugin-Manifest + Schema: Plugin manifest
- Security-Härtung: Security
Befehle
plugins enable.
Native OpenClaw-Plugins müssen openclaw.plugin.json mit einem eingebetteten JSON-
Schema (configSchema, auch wenn es leer ist) ausliefern. Kompatible Bundles verwenden stattdessen ihre eigenen Bundle-
Manifeste.
plugins list zeigt Format: openclaw oder Format: bundle. Die ausführliche List-/Info-
Ausgabe zeigt außerdem den Bundle-Untertyp (codex, claude oder cursor) sowie erkannte Bundle-
Fähigkeiten.
Installieren
plugins install normalerweise sicher fehl und fordert Sie auf,
zuerst openclaw doctor --fix auszuführen. Die einzige dokumentierte Ausnahme ist ein enger
Wiederherstellungspfad für gebündelte Plugins für Plugins, die sich ausdrücklich für
openclaw.install.allowInvalidConfigRecovery anmelden.
--force verwendet das vorhandene Installationsziel wieder und überschreibt ein bereits installiertes
Plugin oder Hook-Paket direkt. Verwenden Sie dies, wenn Sie dieselbe ID bewusst aus einem neuen lokalen Pfad,
Archiv, ClawHub-Paket oder npm-Artefakt neu installieren.
--pin gilt nur für npm-Installationen. Es wird mit --marketplace nicht unterstützt,
weil Marketplace-Installationen Marketplace-Quellmetadaten statt einer
npm-Spezifikation persistieren.
--dangerously-force-unsafe-install ist eine Break-Glass-Option für False Positives
im integrierten Scanner für gefährlichen Code. Damit kann die Installation fortgesetzt werden, selbst
wenn der integrierte Scanner critical-Befunde meldet, aber sie umgeht nicht
Policy-Blocks von Plugin-before_install-Hooks und umgeht auch keine
Scan-Fehler.
Dieses CLI-Flag gilt für Plugin-Installations-/Update-Abläufe. Gateway-gestützte Skill-
Abhängigkeitsinstallationen verwenden die passende Request-Überschreibung dangerouslyForceUnsafeInstall, während openclaw skills install ein separater ClawHub-Skill-
Download-/Installationsablauf bleibt.
plugins install ist auch die Installationsoberfläche für Hook-Pakete, die
openclaw.hooks in package.json bereitstellen. Verwenden Sie openclaw hooks für gefilterte Hook-
Sichtbarkeit und Hook-spezifische Aktivierung, nicht für Paketinstallation.
Npm-Spezifikationen sind nur Registry-basiert (Paketname + optionale exakte Version oder
dist-tag). Git-/URL-/Datei-Spezifikationen und Semver-Bereiche werden abgelehnt. Abhängigkeitsinstallationen laufen
zur Sicherheit mit --ignore-scripts.
Reine Spezifikationen und @latest bleiben auf dem stabilen Track. Wenn npm eines
davon in eine Vorabversion auflöst, stoppt OpenClaw und fordert Sie auf, sich explizit mit einem
Vorabversions-Tag wie @beta/@rc oder einer exakten Vorabversion wie
@1.2.3-beta.4 anzumelden.
Wenn eine reine Installationsspezifikation einer ID eines gebündelten Plugins entspricht (zum Beispiel diffs), installiert OpenClaw
das gebündelte Plugin direkt. Um ein npm-Paket mit demselben
Namen zu installieren, verwenden Sie eine explizite Scoping-Spezifikation (zum Beispiel @scope/diffs).
Unterstützte Archive: .zip, .tgz, .tar.gz, .tar.
Claude-Marketplace-Installationen werden ebenfalls unterstützt.
ClawHub-Installationen verwenden einen expliziten Locator clawhub:<package>:
plugin@marketplace, wenn der Marketplace-Name im lokalen
Registry-Cache von Claude unter ~/.claude/plugins/known_marketplaces.json existiert:
--marketplace, wenn Sie die Marketplace-Quelle explizit angeben möchten:
- ein Claude-Known-Marketplace-Name aus
~/.claude/plugins/known_marketplaces.json - ein lokaler Marketplace-Root oder ein
marketplace.json-Pfad - eine GitHub-Repo-Kurzform wie
owner/repo - eine GitHub-Repo-URL wie
https://github.com/owner/repo - eine Git-URL
- native OpenClaw-Plugins (
openclaw.plugin.json) - Codex-kompatible Bundles (
.codex-plugin/plugin.json) - Claude-kompatible Bundles (
.claude-plugin/plugin.jsonoder das Standard-Layout für Claude-Komponenten) - Cursor-kompatible Bundles (
.cursor-plugin/plugin.json)
settings.json-Standards, Claude-.lsp.json- /
manifestdeklarierte lspServers-Standards, Cursor-Command-Skills und kompatible
Codex-Hook-Verzeichnisse unterstützt; andere erkannte Bundle-Fähigkeiten werden
in Diagnose/Info angezeigt, sind aber noch nicht in die Laufzeitausführung eingebunden.
Auflisten
--enabled, um nur geladene Plugins anzuzeigen. Verwenden Sie --verbose, um von der
Tabellenansicht auf Plugin-spezifische Detailzeilen mit Quell-/Ursprungs-/Versions-/Aktivierungs-
Metadaten umzuschalten. Verwenden Sie --json für maschinenlesbares Inventar plus Registry-
Diagnostik.
Verwenden Sie --link, um das Kopieren eines lokalen Verzeichnisses zu vermeiden (fügt zu plugins.load.paths hinzu):
--force wird mit --link nicht unterstützt, weil verknüpfte Installationen den
Quellpfad wiederverwenden, statt über ein verwaltetes Installationsziel zu kopieren.
Verwenden Sie --pin bei npm-Installationen, um die aufgelöste exakte Spezifikation (name@version) in
plugins.installs zu speichern, während das Standardverhalten ungepinnt bleibt.
Deinstallieren
uninstall entfernt Plugin-Einträge aus plugins.entries, plugins.installs,
der Plugin-Allowlist und gegebenenfalls verknüpfte plugins.load.paths-Einträge.
Für aktive Memory-Plugins wird der Memory-Slot auf memory-core zurückgesetzt.
Standardmäßig entfernt uninstall auch das Plugin-Installationsverzeichnis unter dem aktiven
Plugin-Root des Statusverzeichnisses. Verwenden Sie
--keep-files, um Dateien auf dem Datenträger zu behalten.
--keep-config wird als veralteter Alias für --keep-files unterstützt.
Aktualisieren
plugins.installs und nachverfolgte Hook-Paket-
Installationen in hooks.internal.installs.
Wenn Sie eine Plugin-ID übergeben, verwendet OpenClaw die aufgezeichnete Installationsspezifikation für dieses
Plugin erneut. Das bedeutet, dass zuvor gespeicherte dist-tags wie @beta und exakte angeheftete
Versionen auch bei späteren update <id>-Läufen weiter verwendet werden.
Bei npm-Installationen können Sie auch eine explizite npm-Paketspezifikation mit einem dist-tag
oder einer exakten Version übergeben. OpenClaw löst diesen Paketnamen wieder auf den nachverfolgten Plugin-
Eintrag auf, aktualisiert dieses installierte Plugin und zeichnet die neue npm-Spezifikation für zukünftige
ID-basierte Updates auf.
Wenn ein gespeicherter Integritäts-Hash existiert und sich der Hash des abgerufenen Artefakts ändert,
gibt OpenClaw eine Warnung aus und fordert vor dem Fortfahren eine Bestätigung an. Verwenden Sie
global --yes, um Eingabeaufforderungen in CI-/nicht interaktiven Läufen zu umgehen.
--dangerously-force-unsafe-install ist auch bei plugins update als
Break-Glass-Überschreibung für False Positives des integrierten gefährlichen Code-Scans während
Plugin-Updates verfügbar. Es umgeht weiterhin keine Policy-Blocks von Plugin-before_install
und keine Blockierung durch Scan-Fehler, und es gilt nur für Plugin-Updates, nicht für Hook-Paket-
Updates.
Inspizieren
- plain-capability — ein Fähigkeitstyp (z. B. ein reines Provider-Plugin)
- hybrid-capability — mehrere Fähigkeitstypen (z. B. Text + Sprache + Bilder)
- hook-only — nur Hooks, keine Fähigkeiten oder Oberflächen
- non-capability — Tools/Befehle/Services, aber keine Fähigkeiten
--json gibt einen maschinenlesbaren Bericht aus, der sich für Skripting und
Auditing eignet.
inspect --all rendert eine flächendeckende Tabelle mit Spalten für Shape, Fähigkeitsarten,
Kompatibilitätshinweise, Bundle-Fähigkeiten und Hook-Zusammenfassung.
info ist ein Alias für inspect.
Doctor
doctor meldet Plugin-Ladefehler, Manifest-/Erkennungsdiagnosen und
Kompatibilitätshinweise. Wenn alles sauber ist, wird No plugin issues detected. ausgegeben.
Marketplace
Marketplace list akzeptiert einen lokalen Marketplace-Pfad, einen marketplace.json-Pfad, eine
GitHub-Kurzform wie owner/repo, eine GitHub-Repo-URL oder eine Git-URL. --json
gibt das aufgelöste Quellenlabel sowie das geparste Marketplace-Manifest und
die Plugin-Einträge aus.