Plugins
Pakiety Pluginów
OpenClaw może instalować pluginy z trzech zewnętrznych ekosystemów: Codex, Claude i Cursor. Nazywa się je pakietami — pakietami zawartości i metadanych, które OpenClaw mapuje na natywne funkcje, takie jak Skills, hooki i narzędzia MCP.
Dlaczego istnieją pakiety
Wiele użytecznych pluginów jest publikowanych w formacie Codex, Claude lub Cursor. Zamiast wymagać od autorów przepisywania ich jako natywnych pluginów OpenClaw, OpenClaw wykrywa te formaty i mapuje ich obsługiwaną zawartość na natywny zestaw funkcji. Oznacza to, że możesz zainstalować pakiet poleceń Claude lub pakiet Skills Codex i od razu z niego korzystać.
Instalowanie pakietu
Install from a directory, archive, or marketplace
# Local directoryopenclaw plugins install ./my-bundle # Archiveopenclaw plugins install ./my-bundle.tgz # Claude marketplaceopenclaw plugins marketplace list <marketplace-name>openclaw plugins install <plugin-name>@<marketplace-name>Verify detection
openclaw plugins listopenclaw plugins inspect <id>Pakiety są wyświetlane jako Format: bundle z podtypem codex, claude lub cursor.
Restart and use
openclaw gateway restartZmapowane funkcje (Skills, hooki, narzędzia MCP, domyślne ustawienia LSP) są dostępne w następnej sesji.
Co OpenClaw mapuje z pakietów
Nie każda funkcja pakietu działa dziś w OpenClaw. Oto, co działa oraz co jest wykrywane, ale nie jest jeszcze podłączone.
Obecnie obsługiwane
| Funkcja | Jak jest mapowana | Dotyczy |
|---|---|---|
| Zawartość Skills | Korzenie Skills z pakietu są ładowane jako zwykłe Skills OpenClaw | Wszystkie formaty |
| Polecenia | commands/ i .cursor/commands/ są traktowane jako korzenie Skills |
Claude, Cursor |
| Pakiety hooków | Układy w stylu OpenClaw: HOOK.md + handler.ts |
Codex |
| Narzędzia MCP | Konfiguracja MCP pakietu scalona z osadzonymi ustawieniami OpenClaw; obsługiwane serwery stdio i HTTP są ładowane | Wszystkie formaty |
| Serwery LSP | Claude .lsp.json i zadeklarowane w manifeście lspServers scalone z domyślnymi ustawieniami osadzonego LSP OpenClaw |
Claude |
| Ustawienia | Claude settings.json importowany jako osadzone domyślne ustawienia OpenClaw |
Claude |
Zawartość Skills
- korzenie Skills pakietu są ładowane jako zwykłe korzenie Skills OpenClaw
- korzenie Claude
commandssą traktowane jako dodatkowe korzenie Skills - korzenie Cursor
.cursor/commandssą traktowane jako dodatkowe korzenie Skills
Oznacza to, że pliki poleceń markdown Claude działają przez zwykły loader Skills OpenClaw. Markdown poleceń Cursor działa tą samą ścieżką.
Pakiety hooków
- korzenie hooków pakietu działają tylko wtedy, gdy używają zwykłego układu
pakietu hooków OpenClaw. Dziś jest to przede wszystkim przypadek zgodny z Codex:
HOOK.mdhandler.tslubhandler.js
MCP dla osadzonego OpenClaw
- włączone pakiety mogą dostarczać konfigurację serwerów MCP
- OpenClaw scala konfigurację MCP pakietu ze skutecznymi ustawieniami osadzonego OpenClaw jako
mcpServers - OpenClaw udostępnia obsługiwane narzędzia MCP pakietu podczas tur osadzonego agenta OpenClaw, uruchamiając serwery stdio lub łącząc się z serwerami HTTP
- profile narzędzi
codingimessagingdomyślnie obejmują narzędzia MCP pakietu; użyjtools.deny: ["bundle-mcp"], aby zrezygnować dla agenta lub Gateway - lokalne ustawienia osadzonego agenta projektu nadal obowiązują po domyślnych ustawieniach pakietu, więc ustawienia workspace mogą w razie potrzeby zastępować wpisy MCP pakietu
- katalogi narzędzi MCP pakietu są sortowane deterministycznie przed rejestracją, więc
zmiany kolejności upstream
listTools()nie powodują ciągłych zmian bloków narzędzi pamięci podręcznej promptów
Transporty
Serwery MCP mogą używać transportu stdio lub HTTP:
Stdio uruchamia proces potomny:
{ "mcp": { "servers": { "my-server": { "command": "node", "args": ["server.js"], "env": { "PORT": "3000" } } } }}HTTP łączy się z działającym serwerem MCP przez sse domyślnie albo przez streamable-http, gdy tego zażądano:
{ "mcp": { "servers": { "my-server": { "url": "http://localhost:3100/mcp", "transport": "streamable-http", "headers": { "Authorization": "Bearer ${MY_SECRET_TOKEN}" }, "connectionTimeoutMs": 30000 } } }}transportmoże być ustawione na"streamable-http"lub"sse"; gdy zostanie pominięte, OpenClaw używassetype: "http"to natywny dla CLI kształt downstream; użyjtransport: "streamable-http"w konfiguracji OpenClaw.openclaw mcp setiopenclaw doctor --fixnormalizują typowy alias.- dozwolone są tylko schematy URL
http:ihttps: - wartości
headersobsługują interpolację${ENV_VAR} - wpis serwera zawierający jednocześnie
commandiurljest odrzucany - poświadczenia URL (userinfo i parametry zapytania) są redagowane z opisów narzędzi i logów
connectionTimeoutMszastępuje domyślny 30-sekundowy limit czasu połączenia dla transportów stdio i HTTP
Nazewnictwo narzędzi
OpenClaw rejestruje narzędzia MCP pakietu z nazwami bezpiecznymi dla dostawcy w postaci
serverName__toolName. Na przykład serwer o kluczu "vigil-harbor" udostępniający
narzędzie memory_search rejestruje się jako vigil-harbor__memory_search.
- znaki spoza
A-Za-z0-9_-są zastępowane przez- - fragmenty, które zaczynałyby się od znaku niebędącego literą, dostają prefiks literowy, więc numeryczne
klucze serwerów, takie jak
12306, stają się bezpiecznymi dla dostawcy prefiksami narzędzi - prefiksy serwerów są ograniczone do 30 znaków
- pełne nazwy narzędzi są ograniczone do 64 znaków
- puste nazwy serwerów używają awaryjnie
mcp - kolidujące oczyszczone nazwy są rozróżniane sufiksami numerycznymi
- końcowa ujawniona kolejność narzędzi jest deterministyczna według bezpiecznej nazwy, aby powtarzane tury osadzonego agenta były stabilne dla pamięci podręcznej
- filtrowanie profili traktuje wszystkie narzędzia z jednego serwera MCP pakietu jako należące do pluginu
bundle-mcp, więc listy dozwolone i listy blokowane profilu mogą zawierać albo pojedyncze ujawnione nazwy narzędzi, albo klucz pluginubundle-mcp
Ustawienia osadzonego OpenClaw
- Claude
settings.jsonjest importowany jako domyślne ustawienia osadzonego OpenClaw, gdy pakiet jest włączony - OpenClaw oczyszcza klucze nadpisywania powłoki przed ich zastosowaniem
Oczyszczone klucze:
shellPathshellCommandPrefix
Osadzony LSP OpenClaw
- włączone pakiety Claude mogą dostarczać konfigurację serwera LSP
- OpenClaw ładuje
.lsp.jsonoraz wszystkie zadeklarowane w manifeście ścieżkilspServers - konfiguracja LSP pakietu jest scalana ze skutecznymi domyślnymi ustawieniami osadzonego LSP OpenClaw
- dziś uruchamialne są tylko obsługiwane serwery LSP oparte na stdio; nieobsługiwane
transporty nadal pojawiają się w
openclaw plugins inspect <id>
Wykrywane, ale niewykonywane
Są rozpoznawane i pokazywane w diagnostyce, ale OpenClaw ich nie uruchamia:
- Claude
agents, automatyzacjahooks.json,outputStyles - Cursor
.cursor/agents,.cursor/hooks.json,.cursor/rules - metadane inline/aplikacji Codex poza raportowaniem funkcji
Formaty pakietów
Codex bundles
Znaczniki: .codex-plugin/plugin.json
Opcjonalna zawartość: skills/, hooks/, .mcp.json, .app.json
Pakiety Codex najlepiej pasują do OpenClaw, gdy używają korzeni Skills oraz katalogów
pakietów hooków w stylu OpenClaw (HOOK.md + handler.ts).
Claude bundles
Dwa tryby wykrywania:
- Oparty na manifeście:
.claude-plugin/plugin.json - Bez manifestu: domyślny układ Claude (
skills/,commands/,agents/,hooks/,.mcp.json,.lsp.json,settings.json)
Zachowanie specyficzne dla Claude:
commands/jest traktowane jako zawartość Skillssettings.jsonjest importowany do ustawień osadzonego OpenClaw (klucze nadpisywania powłoki są oczyszczane).mcp.jsonudostępnia obsługiwane narzędzia stdio osadzonemu OpenClaw.lsp.jsonwraz z zadeklarowanymi w manifeście ścieżkamilspServersładuje się do domyślnych ustawień osadzonego LSP OpenClawhooks/hooks.jsonjest wykrywany, ale niewykonywany- niestandardowe ścieżki komponentów w manifeście są addytywne (rozszerzają domyślne, a nie je zastępują)
Cursor bundles
Znaczniki: .cursor-plugin/plugin.json
Opcjonalna zawartość: skills/, .cursor/commands/, .cursor/agents/, .cursor/rules/, .cursor/hooks.json, .mcp.json
.cursor/commands/jest traktowane jako zawartość Skills.cursor/rules/,.cursor/agents/i.cursor/hooks.jsonsą tylko wykrywane
Pierwszeństwo wykrywania
OpenClaw najpierw sprawdza format natywnego pluginu:
openclaw.plugin.jsonlub prawidłowypackage.jsonzopenclaw.extensions— traktowane jako natywny plugin- Znaczniki pakietu (
.codex-plugin/,.claude-plugin/lub domyślny układ Claude/Cursor) — traktowane jako pakiet
Jeśli katalog zawiera oba, OpenClaw używa ścieżki natywnej. Zapobiega to częściowemu instalowaniu pakietów dwufomatowych jako pakietów.
Zależności runtime i czyszczenie
- Zgodne pakiety firm trzecich nie otrzymują naprawy startowej
npm install. Powinny być instalowane przezopenclaw plugins installi dostarczać wszystko, czego potrzebują, w katalogu zainstalowanego pluginu. - Pluginy pakietowe należące do OpenClaw są albo dostarczane lekko w rdzeniu, albo możliwe do pobrania przez instalator pluginów. Start Gateway nigdy nie uruchamia dla nich menedżera pakietów.
openclaw doctor --fixusuwa starsze katalogi przygotowanych zależności i może odzyskać pobieralne pluginy, których brakuje w lokalnym indeksie pluginów, gdy konfiguracja się do nich odwołuje.
Bezpieczeństwo
Pakiety mają węższą granicę zaufania niż natywne pluginy:
- OpenClaw nie ładuje dowolnych modułów runtime pakietu w procesie
- Ścieżki Skills i pakietów hooków muszą pozostać wewnątrz korzenia pluginu (sprawdzane granicą)
- Pliki ustawień są odczytywane z tymi samymi kontrolami granic
- Obsługiwane serwery MCP stdio mogą być uruchamiane jako podprocesy
Dzięki temu pakiety są domyślnie bezpieczniejsze, ale nadal należy traktować pakiety firm trzecich jako zaufaną zawartość dla funkcji, które udostępniają.
Rozwiązywanie problemów
Bundle is detected but capabilities do not run
Uruchom openclaw plugins inspect <id>. Jeśli funkcja jest wymieniona, ale oznaczona jako
niepodłączona, jest to ograniczenie produktu — nie uszkodzona instalacja.
Claude command files do not appear
Upewnij się, że pakiet jest włączony, a pliki markdown znajdują się w wykrytym
korzeniu commands/ lub skills/.
Claude settings do not apply
Obsługiwane są tylko ustawienia osadzonego OpenClaw z settings.json. OpenClaw
nie traktuje ustawień pakietu jako surowych poprawek konfiguracji.
Claude hooks do not execute
hooks/hooks.json jest tylko wykrywany. Jeśli potrzebujesz uruchamialnych hooków, użyj
układu pakietu hooków OpenClaw albo dostarcz natywny plugin.
Powiązane
- Instalowanie i konfigurowanie pluginów
- Budowanie pluginów — utwórz natywny plugin
- Manifest pluginu — natywny schemat manifestu