Plugins
Pakiety Pluginów
OpenClaw może instalować pluginy z trzech zewnętrznych ekosystemów: Codex, Claude i Cursor. Są one nazywane pakietami — zestawami treści i metadanych, które OpenClaw odwzorowuje na natywne funkcje, takie jak Skills, hooki i narzędzia MCP.
Dlaczego istnieją pakiety
Wiele przydatnych 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 odwzorowuje obsługiwaną przez nie zawartość na natywny zestaw funkcji. Możesz zainstalować pakiet poleceń Claude lub pakiet Skills Codex i od razu zacząć z niego korzystać.
Instalowanie pakietu
Zainstaluj z katalogu, archiwum lub marketplace
# Katalog lokalnyopenclaw plugins install ./my-bundle # Archiwumopenclaw plugins install ./my-bundle.tgz # Marketplace Claudeopenclaw plugins marketplace list <source>openclaw plugins install <plugin> --marketplace <source><source> to lokalna ścieżka do marketplace/repozytorium albo źródło git/GitHub.
Zweryfikuj wykrycie
openclaw plugins listopenclaw plugins inspect <id>Pakiety wyświetlają Format: bundle oraz wartość Bundle format: równą codex,
claude lub cursor.
Uruchom ponownie i używaj
openclaw gateway restartOdwzorowane funkcje (Skills, hooki, narzędzia MCP, wartości domyślne LSP) są dostępne w następnej sesji.
Co OpenClaw odwzorowuje z pakietów
Obecnie nie każda funkcja pakietu działa w OpenClaw. Poniżej przedstawiono funkcje, które działają, oraz te, które są wykrywane, ale nie zostały jeszcze podłączone.
Obecnie obsługiwane
| Funkcja | Sposób odwzorowania | Dotyczy |
|---|---|---|
| Zawartość Skills | Katalogi główne Skills pakietu są ładowane jako zwykłe Skills OpenClaw | Wszystkie formaty |
| Polecenia | commands/ i .cursor/commands/ są traktowane jako katalogi główne Skills |
Claude, Cursor |
| Pakiety hooków | Układy w stylu OpenClaw: HOOK.md + handler.ts |
Codex |
| Narzędzia MCP | Konfiguracja MCP pakietu jest scalana z osadzonymi ustawieniami OpenClaw; ładowane są obsługiwane serwery stdio i HTTP | Wszystkie formaty |
| Serwery LSP | Plik .lsp.json Claude i zadeklarowane w manifeście lspServers są scalane z osadzonymi wartościami domyślnymi LSP OpenClaw |
Claude |
| Ustawienia | Plik settings.json Claude jest importowany jako osadzone wartości domyślne OpenClaw |
Claude |
Zawartość Skills
- Katalogi główne Skills pakietu są ładowane jako zwykłe katalogi główne Skills OpenClaw.
- Katalogi główne
commands/Claude są traktowane jako dodatkowe katalogi główne Skills. - Katalogi główne
.cursor/commands/Cursor są traktowane jako dodatkowe katalogi główne Skills.
Pliki poleceń Markdown Claude i pliki poleceń Markdown Cursor działają za pośrednictwem zwykłego modułu ładującego Skills OpenClaw.
Pakiety hooków
Katalogi główne hooków pakietu działają tylko wtedy, gdy używają zwykłego układu
pakietu hooków OpenClaw: HOOK.md oraz handler.ts lub handler.js. Obecnie dotyczy
to przede wszystkim przypadku zgodnego z Codex.
MCP dla osadzonego OpenClaw
- Włączone pakiety mogą dostarczać konfigurację serwerów MCP.
- OpenClaw scala konfigurację MCP pakietu z obowiązującymi ustawieniami osadzonego
OpenClaw jako
mcpServers. - OpenClaw udostępnia obsługiwane narzędzia MCP pakietu podczas tur agenta osadzonego OpenClaw, uruchamiając serwery stdio lub łącząc się z serwerami HTTP.
- Profile narzędzi
codingimessagingdomyślnie obejmują narzędzia MCP pakietów; użyjtools.deny: ["bundle-mcp"], aby wyłączyć je dla agenta lub Gateway. - Lokalne ustawienia osadzonego agenta dla projektu nadal są stosowane po wartościach domyślnych pakietu, dzięki czemu ustawienia przestrzeni roboczej mogą w razie potrzeby nadpisywać wpisy MCP pakietu.
- Katalogi narzędzi MCP pakietów są sortowane deterministycznie przed rejestracją,
dlatego zmiany kolejności zwracanej przez nadrzędne
listTools()nie powodują ciągłych zmian bloków narzędzi w pamięci podręcznej promptów.
Transporty
Serwery MCP mogą używać transportu stdio lub HTTP.
Transport stdio uruchamia proces potomny:
{ "mcp": { "servers": { "my-server": { "command": "node", "args": ["server.js"], "env": { "PORT": "3000" } } } }}Transport HTTP łączy się z działającym serwerem MCP, domyślnie używając sse,
chyba że zażądano streamable-http:
{ "mcp": { "servers": { "my-server": { "url": "http://localhost:3100/mcp", "transport": "streamable-http", "headers": { "Authorization": "Bearer ${MY_SECRET_TOKEN}" }, "connectionTimeoutMs": 30000 } } }}transportprzyjmuje"streamable-http"lub"sse"; w razie pominięcia domyślnie używane jestsse.type: "http"jest natywną dla CLI postacią używaną przez systemy niższego poziomu; w konfiguracji OpenClaw użyjtransport: "streamable-http". Poleceniaopenclaw mcp setiopenclaw doctor --fixnormalizują ten popularny alias.- Dozwolone są tylko schematy URL
http:ihttps:. - Wartości
headersobsługują interpolację${ENV_VAR}. - Wpis serwera zawierający jednocześnie
commandiurljest odrzucany. - Dane uwierzytelniające w adresach URL (informacje o użytkowniku i parametry zapytania) są redagowane w opisach narzędzi i dziennikach.
connectionTimeoutMszastępuje domyślny 30-sekundowy limit czasu połączenia zarówno dla transportu stdio, jak i HTTP. Domyślny limit czasu żądania wynosi 60 sekund i można go zastąpić za pomocąrequestTimeoutMs.
Nazewnictwo narzędzi
OpenClaw rejestruje narzędzia MCP pakietów pod nazwami bezpiecznymi dla dostawców,
w postaci serverName__toolName. Na przykład serwer o kluczu "vigil-harbor",
który udostępnia narzędzie memory_search, jest rejestrowany jako
vigil-harbor__memory_search.
- Znaki spoza zakresu
A-Za-z0-9_-są zastępowane znakiem-. - Fragmenty, które zaczynałyby się od znaku niebędącego literą, otrzymują prefiks
będący literą, dlatego numeryczne klucze serwerów, takie jak
12306, stają się bezpiecznymi dla dostawców prefiksami narzędzi. - Prefiksy serwerów są ograniczone do 30 znaków.
- Pełne nazwy narzędzi są ograniczone do 64 znaków.
- W przypadku pustych nazw serwerów używana jest nazwa zastępcza
mcp. - Kolizje oczyszczonych nazw są rozróżniane za pomocą sufiksów liczbowych.
- Ostateczna kolejność udostępnionych narzędzi jest deterministyczna według bezpiecznej nazwy, co utrzymuje stabilność pamięci podręcznej podczas kolejnych tur osadzonego agenta.
- Filtrowanie profili traktuje każde narzędzie z jednego serwera MCP pakietu jako
należące do pluginu
bundle-mcp, dzięki czemu listy dozwolonych i zabronionych elementów profilu mogą odwoływać się do poszczególnych udostępnionych nazw narzędzi albo do klucza pluginubundle-mcp.
Ustawienia osadzonego OpenClaw
Plik settings.json Claude jest importowany jako domyślne ustawienia osadzonego
OpenClaw, gdy pakiet jest włączony. Przed ich zastosowaniem OpenClaw oczyszcza klucze
nadpisujące powłokę:
shellPathshellCommandPrefix
LSP osadzonego OpenClaw
- Włączone pakiety Claude mogą dostarczać konfigurację serwerów LSP.
- OpenClaw ładuje
.lsp.jsonoraz wszystkie ścieżkilspServerszadeklarowane w manifeście. - Konfiguracja LSP pakietu jest scalana z obowiązującymi wartościami domyślnymi LSP osadzonego OpenClaw.
- Obecnie można uruchamiać tylko obsługiwane serwery LSP wykorzystujące stdio;
nieobsługiwane transporty nadal są widoczne w
openclaw plugins inspect <id>.
Wykrywane, ale niewykonywane
Poniższe elementy są rozpoznawane i wyświetlane w diagnostyce, ale OpenClaw ich nie uruchamia:
agents, automatyzacjahooks/hooks.jsonioutputStylesClaude.cursor/agents,.cursor/hooks.jsoni.cursor/rulesCursor- Metadane
.app.jsonCodex wykraczające poza raportowanie możliwości
Formaty pakietów
Pakiety Codex
Znaczniki: .codex-plugin/plugin.json
Opcjonalna zawartość: skills/, hooks/, .mcp.json, .app.json
Pakiety Codex najlepiej współpracują z OpenClaw, gdy używają katalogów głównych
Skills oraz katalogów pakietów hooków w stylu OpenClaw (HOOK.md + handler.ts).
Pakiety Claude
Dwa tryby wykrywania:
- Na podstawie manifestu:
.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 traktowany jako zawartość Skillssettings.jsonjest importowany do ustawień osadzonego OpenClaw (klucze nadpisujące powłokę są oczyszczane).mcp.jsonudostępnia obsługiwane narzędzia stdio osadzonemu OpenClaw.lsp.jsonoraz ścieżkilspServerszadeklarowane w manifeście są ładowane do wartości domyślnych LSP osadzonego OpenClawhooks/hooks.jsonjest wykrywany, ale nie jest wykonywany- Niestandardowe ścieżki komponentów w manifeście są addytywne; rozszerzają wartości domyślne, zamiast je zastępować
Pakiety Cursor
Znaczniki: .cursor-plugin/plugin.json
Opcjonalna zawartość: skills/, .cursor/commands/, .cursor/agents/, .cursor/rules/, .cursor/hooks.json, .mcp.json
.cursor/commands/jest traktowany jako zawartość Skills.cursor/rules/,.cursor/agents/i.cursor/hooks.jsonsą tylko wykrywane
Kolejność wykrywania
OpenClaw najpierw sprawdza format natywnego pluginu:
openclaw.plugin.jsonlub prawidłowypackage.jsonzopenclaw.extensions— traktowany jako natywny plugin- Znaczniki pakietu (
.codex-plugin/,.claude-plugin/lub domyślny układ Claude/Cursor) — traktowane jako pakiet
Jeśli katalog zawiera oba formaty, OpenClaw używa ścieżki natywnej. Zapobiega to częściowej instalacji pakietów obsługujących dwa formaty jako pakietów.
Zależności środowiska uruchomieniowego i czyszczenie
- Zgodne pakiety innych firm nie otrzymują podczas uruchamiania naprawy za pomocą
npm install. Należy je instalować przezopenclaw plugins install; powinny zawierać wszystko, czego potrzebują, w katalogu zainstalowanego pluginu. - Dołączone pluginy należące do OpenClaw są dostarczane w lekkiej postaci w rdzeniu albo można je pobrać za pomocą instalatora pluginów. Podczas uruchamiania Gateway nigdy nie uruchamia dla nich menedżera pakietów.
openclaw doctor --fixusuwa nieaktualne rekordy instalacji lokalnych dołączonych pluginów i może odzyskać pluginy dostępne do pobrania, których brakuje w lokalnym indeksie pluginów, jeśli konfiguracja nadal się do nich odwołuje.
Bezpieczeństwo
Pakiety mają węższą granicę zaufania niż natywne pluginy:
- OpenClaw nie ładuje dowolnych modułów środowiska uruchomieniowego pakietu wewnątrz procesu.
- Ścieżki Skills i pakietów hooków muszą pozostawać wewnątrz katalogu głównego pluginu (są sprawdzane pod kątem granic).
- Pliki ustawień są odczytywane z zastosowaniem tych samych kontroli 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 innych firm jako zaufaną zawartość w zakresie funkcji, które udostępniają.
Rozwiązywanie problemów
Pakiet jest wykrywany, ale jego możliwości nie działają
Uruchom openclaw plugins inspect <id>. Jeśli możliwość znajduje się na liście,
ale jest oznaczona jako niepodłączona, jest to ograniczenie produktu, a nie
uszkodzona instalacja.
Pliki poleceń Claude nie są widoczne
Upewnij się, że pakiet jest włączony, a pliki Markdown znajdują się w wykrytym
katalogu głównym commands/ lub skills/.
Ustawienia Claude nie są stosowane
Obsługiwane są tylko ustawienia osadzonego OpenClaw z pliku settings.json. OpenClaw
nie traktuje ustawień pakietu jako surowych poprawek konfiguracji.
Hooki Claude nie są wykonywane
hooks/hooks.json jest tylko wykrywany. Jeśli potrzebujesz wykonywalnych hooków,
użyj układu pakietu hooków OpenClaw albo dostarcz natywny plugin.
Powiązane
- Instalowanie i konfigurowanie pluginów
- Tworzenie pluginów — tworzenie natywnego pluginu
- Manifest pluginu — schemat natywnego manifestu