Plugins
Plugins erweitern OpenClaw um neue Fähigkeiten: Channels, Modell-Provider, Tools, Skills, Speech, Echtzeit-Transkription, Echtzeit-Stimme, Medienverständnis, Bildgenerierung, Videogenerierung, Web-Abruf, Web- suche und mehr. Einige Plugins sind Core (werden mit OpenClaw ausgeliefert), andere sind extern (werden von der Community auf npm veröffentlicht).Schnellstart
Wenn du lieber chat-native Steuerung verwendest, aktiviere
commands.plugins: true und nutze:
clawhub:<pkg> oder einfache Paketspezifikation (zuerst ClawHub, dann npm-Fallback).
Wenn die Konfiguration ungültig ist, schlägt die Installation normalerweise sicher fehl und verweist dich auf
openclaw doctor --fix. Die einzige Wiederherstellungsausnahme ist ein schmaler Pfad zur Neuinstallation gebündelter Plugins
für Plugins, die sich für
openclaw.install.allowInvalidConfigRecovery entscheiden.
Plugin-Typen
OpenClaw erkennt zwei Plugin-Formate:| Format | Funktionsweise | Beispiele |
|---|---|---|
| Nativ | openclaw.plugin.json + Laufzeitmodul; wird im Prozess ausgeführt | Offizielle Plugins, Community-npm-Pakete |
| Bundle | Codex-/Claude-/Cursor-kompatibles Layout; auf OpenClaw-Features abgebildet | .codex-plugin/, .claude-plugin/, .cursor-plugin/ |
openclaw plugins list. Details zu Bundles findest du unter Plugin-Bundles.
Wenn du ein natives Plugin schreibst, beginne mit Plugins entwickeln
und dem SDK-Überblick zu Plugins.
Offizielle Plugins
Installierbar (npm)
| Plugin | Paket | Dokumentation |
|---|---|---|
| Matrix | @openclaw/matrix | Matrix |
| Microsoft Teams | @openclaw/msteams | Microsoft Teams |
| Nostr | @openclaw/nostr | Nostr |
| Voice Call | @openclaw/voice-call | Voice Call |
| Zalo | @openclaw/zalo | Zalo |
| Zalo Personal | @openclaw/zalouser | Zalo Personal |
Core (mit OpenClaw ausgeliefert)
Modell-Provider (standardmäßig aktiviert)
Modell-Provider (standardmäßig aktiviert)
anthropic, byteplus, cloudflare-ai-gateway, github-copilot, google,
huggingface, kilocode, kimi-coding, minimax, mistral, qwen,
moonshot, nvidia, openai, opencode, opencode-go, openrouter,
qianfan, synthetic, together, venice,
vercel-ai-gateway, volcengine, xiaomi, zaiMemory-Plugins
Memory-Plugins
memory-core— gebündelte Memory-Suche (Standard überplugins.slots.memory)memory-lancedb— bei Bedarf installierbares Langzeit-Memory mit automatischem Recall/Capture (setzeplugins.slots.memory = "memory-lancedb")
Speech-Provider (standardmäßig aktiviert)
Speech-Provider (standardmäßig aktiviert)
elevenlabs, microsoftAndere
Andere
browser— gebündeltes Browser-Plugin für das Browser-Tool, die CLIopenclaw browser, die Gateway-Methodebrowser.request, die Browser-Laufzeit und den Standarddienst zur Browser-Steuerung (standardmäßig aktiviert; vor dem Ersetzen deaktivieren)copilot-proxy— VS Code Copilot Proxy bridge (standardmäßig deaktiviert)
Konfiguration
| Feld | Beschreibung |
|---|---|
enabled | Master-Schalter (Standard: true) |
allow | Plugin-Allowlist (optional) |
deny | Plugin-Denylist (optional; deny hat Vorrang) |
load.paths | Zusätzliche Plugin-Dateien/-Verzeichnisse |
slots | Selektoren für exklusive Slots (z. B. memory, contextEngine) |
entries.\<id\> | Schalter + Konfiguration pro Plugin |
openclaw gateway), wird dieser
Neustart in der Regel automatisch kurz nach dem Schreiben der Konfiguration durchgeführt.
Plugin-Zustände: deaktiviert vs. fehlend vs. ungültig
Plugin-Zustände: deaktiviert vs. fehlend vs. ungültig
- Deaktiviert: Das Plugin existiert, wurde aber durch Aktivierungsregeln ausgeschaltet. Die Konfiguration bleibt erhalten.
- Fehlend: Die Konfiguration verweist auf eine Plugin-ID, die von der Discovery nicht gefunden wurde.
- Ungültig: Das Plugin existiert, aber seine Konfiguration entspricht nicht dem deklarierten Schema.
Discovery und Priorität
OpenClaw scannt in dieser Reihenfolge nach Plugins (der erste Treffer gewinnt):Workspace-Erweiterungen
\<workspace\>/.openclaw/<plugin-root>/*.ts und \<workspace\>/.openclaw/<plugin-root>/*/index.ts.Aktivierungsregeln
plugins.enabled: falsedeaktiviert alle Pluginsplugins.denyhat immer Vorrang vor allowplugins.entries.\<id\>.enabled: falsedeaktiviert dieses Plugin- Plugins mit Workspace-Ursprung sind standardmäßig deaktiviert (müssen explizit aktiviert werden)
- Gebündelte Plugins folgen dem integrierten Satz standardmäßig aktivierter Plugins, sofern nichts überschrieben wird
- Exklusive Slots können das für diesen Slot ausgewählte Plugin zwangsaktivieren
Plugin-Slots (exklusive Kategorien)
Einige Kategorien sind exklusiv (es ist immer nur eines gleichzeitig aktiv):| Slot | Was er steuert | Standard |
|---|---|---|
memory | Aktives Memory-Plugin | memory-core |
contextEngine | Aktive Context-Engine | legacy (integriert) |
CLI-Referenz
openclaw plugins enable <id>.
--force überschreibt ein vorhandenes installiertes Plugin oder Hook-Pack an Ort und Stelle.
Es wird mit --link nicht unterstützt, da dabei der Quellpfad wiederverwendet wird, statt
ein verwaltetes Installationsziel zu überschreiben.
--pin ist nur für npm verfügbar. Es wird mit --marketplace nicht unterstützt, weil
Marketplace-Installationen Metadaten zur Marketplace-Quelle statt einer npm-Spezifikation persistieren.
--dangerously-force-unsafe-install ist eine Notfall-Überschreibung für Fehlalarme
des integrierten Scanners für gefährlichen Code. Es erlaubt, dass Plugin-Installationen
und Plugin-Aktualisierungen trotz integrierter Befunde der Stufe critical fortgesetzt werden, aber es
umgeht weiterhin weder Plugin-Policy-Sperren von before_install noch das Blockieren bei Scan-Fehlern.
Dieses CLI-Flag gilt nur für Plugin-Installations-/Aktualisierungsabläufe. Gateway-gestützte Skill-
Abhängigkeitsinstallationen verwenden stattdessen die passende Request-Überschreibung dangerouslyForceUnsafeInstall, während openclaw skills install weiterhin der separate ClawHub-
Ablauf zum Herunterladen/Installieren von Skills bleibt.
Kompatible Bundles nehmen am selben Ablauf plugin list/inspect/enable/disable teil.
Die aktuelle Laufzeitunterstützung umfasst Bundle-Skills, Claude-Command-Skills,
Standardwerte aus Claude-settings.json, Standardwerte aus Claude-.lsp.json und manifest-deklarierten
lspServers, Cursor-Command-Skills und kompatible Codex-Hook-
Verzeichnisse.
openclaw plugins inspect <id> meldet außerdem erkannte Bundle-Fähigkeiten sowie
unterstützte oder nicht unterstützte MCP- und LSP-Server-Einträge für Bundle-gestützte Plugins.
Marketplace-Quellen können ein bekannter Claude-Marketplace-Name aus
~/.claude/plugins/known_marketplaces.json, eine lokale Marketplace-Wurzel oder ein
Pfad zu marketplace.json, eine GitHub-Kurzform wie owner/repo, eine GitHub-Repo-
URL oder eine Git-URL sein. Bei Remote-Marketplaces müssen Plugin-Einträge innerhalb des
geklonten Marketplace-Repos bleiben und dürfen nur relative Pfadequellen verwenden.
Vollständige Details findest du in der CLI-Referenz für openclaw plugins.
Überblick über die Plugin-API
Native Plugins exportieren ein Einstiegsobjekt, dasregister(api) bereitstellt. Ältere
Plugins können weiterhin activate(api) als alten Alias verwenden, aber neue Plugins sollten
register verwenden.
register(api) während der Plugin-
Aktivierung auf. Der Loader greift für ältere Plugins weiterhin auf activate(api) zurück,
aber gebündelte Plugins und neue externe Plugins sollten register als öffentlichen Vertrag behandeln.
Häufige Registrierungsmethoden:
| Methode | Was sie registriert |
|---|---|
registerProvider | Modell-Provider (LLM) |
registerChannel | Chat-Channel |
registerTool | Agent-Tool |
registerHook / on(...) | Lebenszyklus-Hooks |
registerSpeechProvider | Text-to-Speech / STT |
registerRealtimeTranscriptionProvider | Streaming-STT |
registerRealtimeVoiceProvider | Duplex-Echtzeit-Stimme |
registerMediaUnderstandingProvider | Bild-/Audio-Analyse |
registerImageGenerationProvider | Bildgenerierung |
registerVideoGenerationProvider | Videogenerierung |
registerWebFetchProvider | Web-Abruf-/Scrape-Provider |
registerWebSearchProvider | Websuche |
registerHttpRoute | HTTP-Endpunkt |
registerCommand / registerCli | CLI-Befehle |
registerContextEngine | Context-Engine |
registerService | Hintergrunddienst |
before_tool_call:{ block: true }ist final; Handler mit geringerer Priorität werden übersprungen.before_tool_call:{ block: false }ist ein No-op und hebt einen früheren Block nicht auf.before_install:{ block: true }ist final; Handler mit geringerer Priorität werden übersprungen.before_install:{ block: false }ist ein No-op und hebt einen früheren Block nicht auf.message_sending:{ cancel: true }ist final; Handler mit geringerer Priorität werden übersprungen.message_sending:{ cancel: false }ist ein No-op und hebt eine frühere Abbruchentscheidung nicht auf.
Verwandt
- Plugins entwickeln — ein eigenes Plugin erstellen
- Plugin-Bundles — Kompatibilität mit Codex-/Claude-/Cursor-Bundles
- Plugin-Manifest — Manifest-Schema
- Tools registrieren — Agent-Tools in einem Plugin hinzufügen
- Plugin-Interna — Fähigkeitsmodell und Ladepipeline
- Community-Plugins — Drittanbieter-Listen