Wtyczki
Wtyczki rozszerzają OpenClaw o nowe możliwości: kanały, dostawców modeli, narzędzia, Skills, mowę, transkrypcję realtime, głos realtime, rozumienie mediów, generowanie obrazów, generowanie wideo, web fetch, web search i wiele więcej. Niektóre wtyczki są główne (dostarczane z OpenClaw), inne są zewnętrzne (publikowane na npm przez społeczność).Szybki start
Jeśli wolisz sterowanie natywne dla czatu, włącz
commands.plugins: true i używaj:
clawhub:<pkg> albo zwykła specyfikacja pakietu (najpierw ClawHub, potem fallback do npm).
Jeśli konfiguracja jest nieprawidłowa, instalacja zwykle kończy się bezpieczną odmową i kieruje do
openclaw doctor --fix. Jedynym wyjątkiem odzyskiwania jest wąska ścieżka ponownej instalacji dołączonej wtyczki
dla wtyczek, które optują do
openclaw.install.allowInvalidConfigRecovery.
Typy wtyczek
OpenClaw rozpoznaje dwa formaty wtyczek:| Format | Jak działa | Przykłady |
|---|---|---|
| Natywny | openclaw.plugin.json + moduł runtime; wykonuje się w procesie | Oficjalne wtyczki, pakiety npm społeczności |
| Pakiet | Układ zgodny z Codex/Claude/Cursor; mapowany na funkcje OpenClaw | .codex-plugin/, .claude-plugin/, .cursor-plugin/ |
openclaw plugins list. Szczegóły pakietów znajdziesz w Pakiety wtyczek.
Jeśli piszesz natywną wtyczkę, zacznij od Tworzenie wtyczek
i Przegląd Plugin SDK.
Oficjalne wtyczki
Instalowalne (npm)
| Wtyczka | Pakiet | Dokumentacja |
|---|---|---|
| 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 |
Główne (dostarczane z OpenClaw)
Dostawcy modeli (włączeni domyślnie)
Dostawcy modeli (włączeni domyślnie)
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, zaiWtyczki pamięci
Wtyczki pamięci
memory-core— dołączone wyszukiwanie w pamięci (domyślnie przezplugins.slots.memory)memory-lancedb— instalowana na żądanie pamięć długoterminowa z automatycznym przywoływaniem/przechwytywaniem (ustawplugins.slots.memory = "memory-lancedb")
Dostawcy mowy (włączeni domyślnie)
Dostawcy mowy (włączeni domyślnie)
elevenlabs, microsoftInne
Inne
browser— dołączona wtyczka przeglądarki dla narzędzia browser, CLIopenclaw browser, metody gatewaybrowser.request, runtime przeglądarki i domyślnej usługi sterowania przeglądarką (włączona domyślnie; wyłącz ją przed zastąpieniem)copilot-proxy— most VS Code Copilot Proxy (domyślnie wyłączony)
Konfiguracja
| Pole | Opis |
|---|---|
enabled | Główny przełącznik (domyślnie: true) |
allow | Allowlista wtyczek (opcjonalnie) |
deny | Lista zabronionych wtyczek (opcjonalnie; zabronienie wygrywa) |
load.paths | Dodatkowe pliki/katalogi wtyczek |
slots | Selektory wyłącznych slotów (np. memory, contextEngine) |
entries.\<id\> | Przełączniki i konfiguracja per-wtyczka |
openclaw gateway), ten
restart zwykle wykonywany jest automatycznie chwilę po zapisaniu konfiguracji.
Stany wtyczek: wyłączona vs brakująca vs nieprawidłowa
Stany wtyczek: wyłączona vs brakująca vs nieprawidłowa
- Wyłączona: wtyczka istnieje, ale reguły włączania ją wyłączyły. Konfiguracja zostaje zachowana.
- Brakująca: konfiguracja odwołuje się do identyfikatora wtyczki, którego wykrywanie nie znalazło.
- Nieprawidłowa: wtyczka istnieje, ale jej konfiguracja nie pasuje do zadeklarowanego schematu.
Wykrywanie i priorytet
OpenClaw skanuje w poszukiwaniu wtyczek w tej kolejności (pierwsze dopasowanie wygrywa):Rozszerzenia obszaru roboczego
\<workspace\>/.openclaw/<plugin-root>/*.ts oraz \<workspace\>/.openclaw/<plugin-root>/*/index.ts.Reguły włączania
plugins.enabled: falsewyłącza wszystkie wtyczkiplugins.denyzawsze wygrywa nad allowplugins.entries.\<id\>.enabled: falsewyłącza tę wtyczkę- Wtyczki pochodzące z obszaru roboczego są domyślnie wyłączone (muszą zostać jawnie włączone)
- Dołączone wtyczki stosują wbudowany zestaw domyślnie włączonych, chyba że został nadpisany
- Wyłączne sloty mogą wymusić włączenie wybranej wtyczki dla tego slotu
Sloty wtyczek (wyłączne kategorie)
Niektóre kategorie są wyłączne (w danym czasie aktywna może być tylko jedna):| Slot | Co kontroluje | Domyślnie |
|---|---|---|
memory | Aktywna wtyczka pamięci | memory-core |
contextEngine | Aktywny silnik kontekstu | legacy (wbudowany) |
Dokumentacja CLI
openclaw plugins enable <id>.
--force nadpisuje istniejącą zainstalowaną wtyczkę lub pakiet hooków w miejscu.
Nie jest obsługiwane razem z --link, które używa ścieżki źródłowej zamiast
kopiowania do zarządzanego celu instalacji.
--pin jest dostępne tylko dla npm. Nie jest obsługiwane z --marketplace, ponieważ
instalacje z marketplace zapisują metadane źródła marketplace zamiast specyfikacji npm.
--dangerously-force-unsafe-install to awaryjne obejście dla fałszywych
alarmów wbudowanego skanera niebezpiecznego kodu. Pozwala kontynuować instalacje
i aktualizacje wtyczek mimo wbudowanych ustaleń critical, ale nadal
nie omija blokad polityki before_install ani blokowania przy błędzie skanowania.
Ta flaga CLI dotyczy tylko przepływów instalacji/aktualizacji wtyczek. Instalacje zależności Skills
obsługiwane przez gateway używają zamiast tego odpowiadającego nadpisania żądania dangerouslyForceUnsafeInstall, podczas gdy openclaw skills install pozostaje osobnym przepływem pobierania/instalacji Skills przez ClawHub.
Zgodne pakiety uczestniczą w tym samym przepływie list/inspect/enable/disable wtyczek. Obecna obsługa runtime obejmuje Skills z pakietów, command-skills Claude,
domyślne ustawienia settings.json Claude, domyślne ustawienia Claude .lsp.json i deklarowane w manifescie
lspServers, command-skills Cursor oraz zgodne katalogi hooków Codex.
openclaw plugins inspect <id> raportuje też wykryte możliwości pakietu oraz
obsługiwane lub nieobsługiwane wpisy serwerów MCP i LSP dla wtyczek opartych na pakietach.
Źródła marketplace mogą być znaną nazwą marketplace Claude z
~/.claude/plugins/known_marketplaces.json, lokalnym katalogiem marketplace lub
ścieżką marketplace.json, skrótem GitHub w postaci owner/repo, adresem URL repozytorium GitHub
albo adresem URL git. W przypadku zdalnych marketplace wpisy wtyczek muszą pozostać wewnątrz
sklonowanego repozytorium marketplace i używać wyłącznie względnych źródeł ścieżek.
Pełne szczegóły znajdziesz w dokumentacji CLI openclaw plugins.
Przegląd API wtyczek
Natywne wtyczki eksportują obiekt wejściowy udostępniającyregister(api). Starsze
wtyczki mogą nadal używać activate(api) jako starszego aliasu, ale nowe wtyczki powinny
używać register.
register(api) podczas aktywacji
wtyczki. Loader nadal przechodzi awaryjnie do activate(api) dla starszych wtyczek,
ale dołączone wtyczki i nowe zewnętrzne wtyczki powinny traktować register jako
publiczny kontrakt.
Typowe metody rejestracji:
| Metoda | Co rejestruje |
|---|---|
registerProvider | Dostawcę modelu (LLM) |
registerChannel | Kanał czatu |
registerTool | Narzędzie agenta |
registerHook / on(...) | Hooki cyklu życia |
registerSpeechProvider | Zamianę tekstu na mowę / STT |
registerRealtimeTranscriptionProvider | Strumieniowe STT |
registerRealtimeVoiceProvider | Dwukierunkowy głos realtime |
registerMediaUnderstandingProvider | Analizę obrazu/audio |
registerImageGenerationProvider | Generowanie obrazów |
registerVideoGenerationProvider | Generowanie wideo |
registerWebFetchProvider | Dostawcę web fetch / scrape |
registerWebSearchProvider | Web search |
registerHttpRoute | Endpoint HTTP |
registerCommand / registerCli | Polecenia CLI |
registerContextEngine | Silnik kontekstu |
registerService | Usługę działającą w tle |
before_tool_call:{ block: true }jest końcowe; handlery o niższym priorytecie są pomijane.before_tool_call:{ block: false }nic nie robi i nie usuwa wcześniejszej blokady.before_install:{ block: true }jest końcowe; handlery o niższym priorytecie są pomijane.before_install:{ block: false }nic nie robi i nie usuwa wcześniejszej blokady.message_sending:{ cancel: true }jest końcowe; handlery o niższym priorytecie są pomijane.message_sending:{ cancel: false }nic nie robi i nie usuwa wcześniejszego anulowania.
Powiązane
- Tworzenie wtyczek — utwórz własną wtyczkę
- Pakiety wtyczek — zgodność pakietów Codex/Claude/Cursor
- Manifest wtyczki — schemat manifestu
- Rejestrowanie narzędzi — dodawanie narzędzi agenta we wtyczce
- Wnętrze wtyczek — model możliwości i pipeline ładowania
- Wtyczki społeczności — listy wtyczek zewnętrznych