Pakiety nie są tym samym co natywne pluginy OpenClaw. Natywne pluginy działają
w procesie i mogą rejestrować dowolną funkcję. Pakiety są pakietami zawartości z
selektywnym mapowaniem funkcji i węższą granicą zaufania.
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
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
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:sse domyślnie albo przez streamable-http, gdy tego zażądano:
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 postaciserverName__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
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
Codex bundles
Znaczniki:
.codex-plugin/plugin.jsonOpcjonalna zawartość: skills/, hooks/, .mcp.json, .app.jsonPakiety 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
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)
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
Cursor bundles
Znaczniki:
.cursor-plugin/plugin.jsonOpcjonalna 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
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
Rozwiązywanie problemów
Bundle is detected but capabilities do not run
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
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
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
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