chore(i18n): refresh pl translations

This commit is contained in:
openclaw-docs-i18n[bot] 2026-04-24 15:24:07 +00:00
parent 3bf70a7967
commit 15d7bc5090
5 changed files with 591 additions and 553 deletions

View File

@ -1,14 +1,14 @@
---
read_when:
- Chcesz instalować lub zarządzać Pluginami Gateway albo zgodnymi pakietami
- Chcesz debugować błędy ładowania Pluginów
summary: Dokumentacja CLI dla `openclaw plugins` (list, install, marketplace, uninstall, enable/disable, doctor)
- Chcesz zainstalować lub zarządzać Pluginami Gateway albo zgodnymi pakietami.
- Chcesz debugować błędy ładowania Pluginów.
summary: Dokumentacja CLI dla `openclaw plugins` (`list`, `install`, `marketplace`, `uninstall`, `enable`/`disable`, `doctor`)
title: Pluginy
x-i18n:
generated_at: "2026-04-24T09:03:55Z"
generated_at: "2026-04-24T15:22:17Z"
model: gpt-5.4
provider: openai
source_hash: 35ef8f54c64ea52d7618a0ef8b90d3d75841a27ae4cd689b4ca8e0cfdcddc408
source_hash: bc693d5e3bc49057e1a108ba65a4dcb3bb662c00229e6fa38a0335afba8240e5
source_path: cli/plugins.md
workflow: 15
---
@ -22,7 +22,7 @@ Powiązane:
- System Pluginów: [Pluginy](/pl/tools/plugin)
- Zgodność pakietów: [Pakiety Pluginów](/pl/plugins/bundles)
- Manifest Pluginu + schemat: [Manifest Pluginu](/pl/plugins/manifest)
- Wzmacnianie bezpieczeństwa: [Bezpieczeństwo](/pl/gateway/security)
- Utwardzanie zabezpieczeń: [Bezpieczeństwo](/pl/gateway/security)
## Polecenia
@ -46,15 +46,15 @@ openclaw plugins marketplace list <marketplace>
openclaw plugins marketplace list <marketplace> --json
```
Bundled pluginy są dostarczane z OpenClaw. Niektóre są domyślnie włączone (na przykład
bundled providery modeli, bundled providery mowy oraz bundled plugin
Dołączone Pluginy są dostarczane z OpenClaw. Niektóre są domyślnie włączone (na przykład
dołączone providery modeli, dołączeni providery mowy oraz dołączony Plugin
przeglądarki); inne wymagają `plugins enable`.
Natywne Pluginy OpenClaw muszą dostarcz`openclaw.plugin.json` z osadzonym schematem JSON
Natywne Pluginy OpenClaw muszą zawier`openclaw.plugin.json` z osadzonym schematem JSON
(`configSchema`, nawet jeśli jest pusty). Zgodne pakiety używają zamiast tego własnych manifestów pakietów.
`plugins list` pokazuje `Format: openclaw` albo `Format: bundle`. Szczegółowe wyjście `list/info`
pokazuje także podtyp pakietu (`codex`, `claude` lub `cursor`) oraz wykryte możliwości pakietu.
`plugins list` pokazuje `Format: openclaw` albo `Format: bundle`. Dane wyjściowe verbose dla list/info
pokazują też podtyp pakietu (`codex`, `claude` albo `cursor`) oraz wykryte możliwości pakietu.
### Instalacja
@ -70,58 +70,57 @@ openclaw plugins install <plugin> --marketplace <name> # marketplace (jawnie)
openclaw plugins install <plugin> --marketplace https://github.com/<owner>/<repo>
```
Nazwy pakietów bez kwalifikatora są najpierw sprawdzane w ClawHub, a potem w npm. Uwaga dotycząca bezpieczeństwa:
traktuj instalacje Pluginów jak uruchamianie kodu. Preferuj przypięte wersje.
Nazwy pakietów bez prefiksu są najpierw sprawdzane w ClawHub, a potem w npm. Uwaga dotycząca bezpieczeństwa:
traktuj instalację Pluginów jak uruchamianie kodu. Preferuj przypięte wersje.
Jeśli twoja sekcja `plugins` jest oparta na jednoplokowym `$include`, `plugins install/update/enable/disable/uninstall` zapisują bezpośrednio do tego dołączonego pliku i pozostawiają `openclaw.json` bez zmian. Główne includes, tablice include oraz includes z nadpisaniami rodzeństwa kończą się bezpieczną odmową zamiast spłaszczenia. Zobacz [Config includes](/pl/gateway/configuration), aby poznać obsługiwane kształty.
Jeśli sekcja `plugins` jest oparta na jednoplokowym `$include`, `plugins install/update/enable/disable/uninstall` zapisują zmiany do tego dołączonego pliku i pozostawiają `openclaw.json` bez zmian. Główne include, tablice include oraz include z sąsiednimi nadpisaniami kończą się bezpieczną odmową zamiast spłaszczania. Zobacz [Dołączenia konfiguracji](/pl/gateway/configuration), aby poznać obsługiwane kształty.
Jeśli konfiguracja jest nieprawidłowa, `plugins install` zwykle kończy się bezpieczną odmową i informuje, aby
najpierw uruchomić `openclaw doctor --fix`. Jedynym udokumentowanym wyjątkiem jest wąska
ścieżka odzyskiwania bundled Pluginu dla Pluginów, które jawnie wybierają
ścieżka odzyskiwania dla dołączonych Pluginów, dla Pluginów, które jawnie wybierają
`openclaw.install.allowInvalidConfigRecovery`.
`--force` ponownie używa istniejącego celu instalacji i nadpisuje już zainstalowany
Plugin lub pakiet hooków na miejscu. Użyj tego, gdy celowo reinstalujesz
ten sam identyfikator z nowej ścieżki lokalnej, archiwum, pakietu ClawHub lub artefaktu npm.
Plugin albo pakiet hooków w miejscu. Użyj tego, gdy celowo reinstalujesz
ten sam identyfikator z nowej lokalnej ścieżki, archiwum, pakietu ClawHub albo artefaktu npm.
Do rutynowych aktualizacji już śledzonego Pluginu npm preferuj
`openclaw plugins update <id-or-npm-spec>`.
Jeśli uruchomisz `plugins install` dla identyfikatora Pluginu, który jest już zainstalowany, OpenClaw
zatrzyma się i wskaże `plugins update <id-or-npm-spec>` dla zwykłej aktualizacji,
zatrzyma się i wskaże `plugins update <id-or-npm-spec>` jako normalną ścieżkę aktualizacji,
albo `plugins install <package> --force`, gdy rzeczywiście chcesz nadpisać
bieżącą instalację z innego źródła.
`--pin` dotyczy tylko instalacji npm. Nie jest obsługiwane z `--marketplace`,
ponieważ instalacje marketplace zapisują metadane źródła marketplace zamiast
ponieważ instalacje z marketplace zapisują metadane źródła marketplace zamiast
specyfikacji npm.
`--dangerously-force-unsafe-install` to opcja awaryjna dla fałszywych alarmów
we wbudowanym skanerze niebezpiecznego kodu. Pozwala kontynuować instalację nawet
`--dangerously-force-unsafe-install` to opcja awaryjna do fałszywych alarmów
wbudowanego skanera niebezpiecznego kodu. Pozwala kontynuować instalację nawet
gdy wbudowany skaner zgłasza ustalenia `critical`, ale **nie**
omija blokad zasad hooka Pluginu `before_install` i **nie** omija
omija blokad polityki hooka Pluginu `before_install` i **nie** omija
błędów skanowania.
Ta flaga CLI dotyczy przepływów instalacji/aktualizacji Pluginów. Instalacje zależności Skills
obsługiwane przez Gateway używają odpowiadającego nadpisania żądania
`dangerouslyForceUnsafeInstall`, podczas gdy `openclaw skills install` pozostaje osobnym przepływem
pobierania/instalacji Skills z ClawHub.
Ta flaga CLI dotyczy przepływów instalacji/aktualizacji Pluginów. Instalacje zależności umiejętności
obsługiwane przez Gateway używają odpowiadającego nadpisania żądania `dangerouslyForceUnsafeInstall`, podczas gdy `openclaw skills install` pozostaje osobnym przepływem
pobierania/instalacji umiejętności z ClawHub.
`plugins install` jest także powierzchnią instalacji dla pakietów hooków, które udostępniają
`openclaw.hooks` w `package.json`. Używaj `openclaw hooks` do filtrowanej widoczności hooków
i włączania poszczególnych hooków, a nie do instalacji pakietów.
`plugins install` jest również powierzchnią instalacji dla pakietów hooków, które udostępniają
`openclaw.hooks` w `package.json`. Używaj `openclaw hooks` do filtrowanego
widoku hooków i włączania poszczególnych hooków, a nie do instalacji pakietów.
Specyfikacje npm są **tylko rejestrowe** (nazwa pakietu + opcjonalna **dokładna wersja** albo
**dist-tag**). Specyfikacje git/URL/file i zakresy semver są odrzucane. Instalacje zależności
działają z `--ignore-scripts` dla bezpieczeństwa.
są uruchamiane z `--ignore-scripts` dla bezpieczeństwa.
Specyfikacje bez kwalifikatora i `@latest` pozostają na stabilnej ścieżce. Jeśli npm rozwiąże
którekolwiek z nich do wersji przedpremierowej, OpenClaw zatrzyma się i poprosi o jawne wyrażenie zgody
przez tag przedpremierowy taki jak `@beta`/`@rc` albo dokładną wersję przedpremierową taką jak
Specyfikacje bez prefiksu i `@latest` pozostają na stabilnej ścieżce. Jeśli npm rozwiąże
którekolwiek z nich do wersji prerelease, OpenClaw zatrzyma się i poprosi o jawne wyrażenie zgody za pomocą
tagu prerelease takiego jak `@beta`/`@rc` albo dokładnej wersji prerelease takiej jak
`@1.2.3-beta.4`.
Jeśli specyfikacja instalacji bez kwalifikatora pasuje do identyfikatora bundled Pluginu (na przykład `diffs`), OpenClaw
instaluje bundled Plugin bezpośrednio. Aby zainstalować pakiet npm o tej samej
nazwie, użyj jawnej specyfikacji zakresowej (na przykład `@scope/diffs`).
Jeśli specyfikacja instalacji bez prefiksu pasuje do identyfikatora dołączonego Pluginu (na przykład `diffs`), OpenClaw
instaluje dołączony Plugin bezpośrednio. Aby zainstalować pakiet npm o tej samej
nazwie, użyj jawnej specyfikacji ze scopem (na przykład `@scope/diffs`).
Obsługiwane archiwa: `.zip`, `.tgz`, `.tar.gz`, `.tar`.
@ -134,19 +133,19 @@ openclaw plugins install clawhub:openclaw-codex-app-server
openclaw plugins install clawhub:openclaw-codex-app-server@1.2.3
```
OpenClaw preferuje teraz także ClawHub dla bezpiecznych dla npm specyfikacji Pluginów bez kwalifikatora. Wraca
do npm tylko wtedy, gdy ClawHub nie ma tego pakietu lub wersji:
OpenClaw preferuje teraz również ClawHub dla bezpiecznych specyfikacji Pluginów npm bez prefiksu. Przechodzi
do npm tylko wtedy, gdy ClawHub nie ma tego pakietu albo wersji:
```bash
openclaw plugins install openclaw-codex-app-server
```
OpenClaw pobiera archiwum pakietu z ClawHub, sprawdza reklamowaną
zgodność z API Pluginu / minimalną zgodność z Gateway, a następnie instaluje je przez zwykłą
ścieżkę archiwum. Zapisane instalacje zachowują swoje metadane źródła ClawHub na potrzeby późniejszych
zgodność API Pluginu / minimalną zgodność Gateway, a następnie instaluje je zwykłą
ścieżką archiwum. Zarejestrowane instalacje zachowują metadane źródła ClawHub na potrzeby późniejszych
aktualizacji.
Użyj skrótu `plugin@marketplace`, gdy nazwa marketplace istnieje w lokalnej pamięci podręcznej rejestru Claude pod `~/.claude/plugins/known_marketplaces.json`:
Użyj skrótu `plugin@marketplace`, gdy nazwa marketplace istnieje w lokalnej pamięci podręcznej rejestru Claude pod adresem `~/.claude/plugins/known_marketplaces.json`:
```bash
openclaw plugins marketplace list <marketplace-name>
@ -164,29 +163,28 @@ openclaw plugins install <plugin-name> --marketplace ./my-marketplace
Źródłami marketplace mogą być:
- nazwa known-marketplace Claude z `~/.claude/plugins/known_marketplaces.json`
- lokalny katalog główny marketplace lub ścieżka `marketplace.json`
- skrócona forma repozytorium GitHub, taka jak `owner/repo`
- adres URL repozytorium GitHub, taki jak `https://github.com/owner/repo`
- adres URL git
- nazwa znanego marketplace Claude z `~/.claude/plugins/known_marketplaces.json`
- lokalny katalog główny marketplace albo ścieżka `marketplace.json`
- skrót repozytorium GitHub taki jak `owner/repo`
- URL repozytorium GitHub taki jak `https://github.com/owner/repo`
- URL git
W przypadku zdalnych marketplace ładowanych z GitHub lub git wpisy Pluginów muszą pozostaw
wewnątrz sklonowanego repozytorium marketplace. OpenClaw akceptuje względne źródła ścieżek z
tego repozytorium i odrzuca HTTP(S), ścieżki bezwzględne, git, GitHub i inne źródła Pluginów niebędące ścieżkami z manifestów zdalnych.
W przypadku zdalnych marketplace ładowanych z GitHub albo git wpisy Pluginów muszą pozostać
wewnątrz sklonowanego repozytorium marketplace. OpenClaw akceptuje źródła względnych ścieżek z
tego repozytorium i odrzuca HTTP(S), ścieżki bezwzględne, git, GitHub oraz inne źródła Pluginów niebędące ścieżkami z manifestów zdalnych.
Dla lokalnych ścieżek i archiwów OpenClaw automatycznie wykrywa:
W przypadku lokalnych ścieżek i archiwów OpenClaw automatycznie wykrywa:
- natywne Pluginy OpenClaw (`openclaw.plugin.json`)
- pakiety zgodne z Codex (`.codex-plugin/plugin.json`)
- pakiety zgodne z Claude (`.claude-plugin/plugin.json` lub domyślny układ komponentów Claude)
- pakiety zgodne z Claude (`.claude-plugin/plugin.json` albo domyślny układ komponentów Claude)
- pakiety zgodne z Cursor (`.cursor-plugin/plugin.json`)
Zgodne pakiety instalują się do zwykłego katalogu głównego Pluginów i uczestniczą w
tym samym przepływie list/info/enable/disable. Obecnie obsługiwane są bundle Skills,
Claude command-skills, domyślne ustawienia Claude `settings.json`, domyślne Claude `.lsp.json` /
`lspServers` zadeklarowane w manifeście, Cursor command-skills oraz zgodne
Zgodne pakiety są instalowane do zwykłego katalogu głównego Pluginów i uczestniczą
w tym samym przepływie list/info/enable/disable. Obecnie obsługiwane są: Skills pakietów, command-skills Claude, domyślne ustawienia Claude `settings.json`, domyślne ustawienia Claude `.lsp.json` /
`lspServers` zadeklarowane w manifeście, command-skills Cursor oraz zgodne
katalogi hooków Codex; inne wykryte możliwości pakietów są
pokazywane w diagnostyce/info, ale nie są jeszcze podłączone do wykonania w runtime.
pokazywane w diagnostyce/info, ale nie są jeszcze podłączone do wykonania w czasie działania.
### Lista
@ -198,10 +196,27 @@ openclaw plugins list --json
```
Użyj `--enabled`, aby pokazać tylko załadowane Pluginy. Użyj `--verbose`, aby przełączyć się z
widoku tabeli na wiersze szczegółów dla każdego Pluginu ze źródłem/pochodzeniem/wersją/metadanymi
aktywacji. Użyj `--json` do inwentaryzacji czytelnej dla maszyn oraz
widoku tabeli na wiersze szczegółów dla każdego Pluginu z metadanymi
źródła/pochodzenia/wersji/aktywacji. Użyj `--json` do odczytu maszynowego spisu oraz
diagnostyki rejestru.
`plugins list` uruchamia wykrywanie z bieżącego środowiska i konfiguracji CLI. Jest
przydatne do sprawdzania, czy Plugin jest włączony/możliwy do załadowania, ale nie jest to sonda
działającego już procesu Gateway w czasie rzeczywistym. Po zmianie kodu Pluginu,
włączenia, polityki hooków albo `plugins.load.paths` uruchom ponownie Gateway, który
obsługuje kanał, zanim zaczniesz oczekiwać uruchomienia nowego kodu `register(api)` lub hooków.
W przypadku wdrożeń zdalnych/kontenerowych upewnij się, że restartujesz faktyczny proces potomny
`openclaw gateway run`, a nie tylko proces opakowujący.
Do debugowania hooków w czasie działania:
- `openclaw plugins inspect <id> --json` pokazuje zarejestrowane hooki i diagnostykę
z przebiegu inspekcji z załadowanym modułem.
- `openclaw gateway status --deep --require-rpc` potwierdza osiągalny Gateway,
wskazówki dotyczące usługi/procesu, ścieżkę konfiguracji i kondycję RPC.
- Niedołączone hooki konwersacji (`llm_input`, `llm_output`, `agent_end`) wymagają
`plugins.entries.<id>.hooks.allowConversationAccess=true`.
Użyj `--link`, aby uniknąć kopiowania lokalnego katalogu (dodaje do `plugins.load.paths`):
```bash
@ -211,8 +226,8 @@ openclaw plugins install -l ./my-plugin
`--force` nie jest obsługiwane z `--link`, ponieważ instalacje linkowane ponownie używają
ścieżki źródłowej zamiast kopiować do zarządzanego celu instalacji.
Użyj `--pin` przy instalacjach npm, aby zapisać dokładnie rozwiązaną specyfikację (`name@version`) w
`plugins.installs`, zachowując domyślne zachowanie bez przypięcia.
Użyj `--pin` przy instalacjach npm, aby zapisać rozwiązaną dokładną specyfikację (`name@version`) w
`plugins.installs`, zachowując domyślne nieprzypięte zachowanie.
### Odinstalowanie
@ -222,12 +237,12 @@ openclaw plugins uninstall <id> --dry-run
openclaw plugins uninstall <id> --keep-files
```
`uninstall` usuwa rekordy Pluginu z `plugins.entries`, `plugins.installs`,
allowlist Pluginów oraz linkowanych wpisów `plugins.load.paths`, gdy ma to zastosowanie.
W przypadku Pluginów Active Memory slot pamięci resetuje się do `memory-core`.
`uninstall` usuwa rekordy Pluginów z `plugins.entries`, `plugins.installs`,
listy dozwolonych Pluginów oraz wpisy linkowanych `plugins.load.paths`, gdy ma to zastosowanie.
W przypadku Pluginów aktywnej pamięci slot pamięci jest resetowany do `memory-core`.
Domyślnie odinstalowanie usuwa również katalog instalacji Pluginu pod aktywnym
katalogiem głównym Pluginów state-dir. Użyj
Domyślnie odinstalowanie usuwa również katalog instalacji Pluginu w aktywnym
katalogu głównym Pluginów state-dir. Użyj
`--keep-files`, aby zachować pliki na dysku.
`--keep-config` jest obsługiwane jako przestarzały alias dla `--keep-files`.
@ -242,51 +257,50 @@ openclaw plugins update @openclaw/voice-call@beta
openclaw plugins update openclaw-codex-app-server --dangerously-force-unsafe-install
```
Aktualizacje stosują się do śledzonych instalacji w `plugins.installs` oraz śledzonych instalacji
pakietów hooków w `hooks.internal.installs`.
Aktualizacje dotyczą śledzonych instalacji w `plugins.installs` oraz śledzonych instalacji pakietów hooków w `hooks.internal.installs`.
Gdy przekażesz identyfikator Pluginu, OpenClaw ponownie użyje zapisanej specyfikacji instalacji dla tego
Pluginu. Oznacza to, że wcześniej zapisane dist-tagi takie jak `@beta` oraz dokładne przypięte
wersje nadal będą używane przy późniejszych uruchomieniach `update <id>`.
Pluginu. Oznacza to, że wcześniej zapisane dist-tagi takie jak `@beta` i dokładnie przypięte
wersje będą nadal używane przy późniejszych uruchomieniach `update <id>`.
W przypadku instalacji npm możesz także przekazać jawną specyfikację pakietu npm z dist-tagiem
lub dokładną wersją. OpenClaw odwzorowuje tę nazwę pakietu z powrotem na śledzony rekord Pluginu,
aktualizuje ten zainstalowany Plugin i zapisuje nową specyfikację npm na potrzeby przyszłych
aktualizacji opartych na identyfikatorze.
W przypadku instalacji npm możesz też przekazać jawną specyfikację pakietu npm z dist-tagiem
albo dokładną wersją. OpenClaw mapuje tę nazwę pakietu z powrotem na śledzony rekord Pluginu,
aktualizuje ten zainstalowany Plugin i zapisuje nową specyfikację npm do wykorzystania przy przyszłych
aktualizacjach opartych na identyfikatorze.
Przekazanie nazwy pakietu npm bez wersji lub tagu również jest odwzorowywane z powrotem do
śledzonego rekordu Pluginu. Użyj tego, gdy Plugin był przypięty do dokładnej wersji i
chcesz przenieść go z powrotem na domyślną linię wydań rejestru.
Przekazanie nazwy pakietu npm bez wersji lub tagu również mapuje z powrotem na
śledzony rekord Pluginu. Użyj tego, gdy Plugin był przypięty do dokładnej wersji i
chcesz przywrócić go do domyślnej linii wydań rejestru.
Przed aktywną aktualizacją npm OpenClaw sprawdza zainstalowaną wersję pakietu względem metadanych
rejestru npm. Jeśli zainstalowana wersja i tożsamość zapisanego artefaktu
Przed aktywną aktualizacją npm OpenClaw sprawdza zainstalowaną wersję pakietu względem
metadanych rejestru npm. Jeśli zainstalowana wersja i tożsamość zapisanego artefaktu
już odpowiadają rozwiązanemu celowi, aktualizacja jest pomijana bez
pobierania, ponownej instalacji ani przepisywania `openclaw.json`.
pobierania, reinstalacji ani przepisywania `openclaw.json`.
Gdy istnieje zapisany hash integralności i hash pobranego artefaktu się zmienia,
OpenClaw traktuje to jako dryf artefaktu npm. Interaktywne
polecenie `openclaw plugins update` drukuje oczekiwany i rzeczywisty hash oraz prosi
o potwierdzenie przed kontynuacją. Nieinteraktywne pomocniki aktualizacji kończą się bezpieczną odmową,
chyba że wywołujący dostarczy jawną politykę kontynuacji.
Gdy istnieje zapisany hash integralności, a hash pobranego artefaktu ulegnie zmianie,
OpenClaw traktuje to jako dryf artefaktu npm. Interaktywne polecenie
`openclaw plugins update` wypisuje oczekiwane i rzeczywiste hashe oraz prosi
o potwierdzenie przed kontynuacją. Nieinteraktywne pomocnicze polecenia aktualizacji kończą się bezpieczną odmową,
chyba że wywołujący poda jawną politykę kontynuacji.
`--dangerously-force-unsafe-install` jest także dostępne przy `plugins update` jako
awaryjne nadpisanie dla fałszywych alarmów skanowania niebezpiecznego kodu podczas
aktualizacji Pluginów. Nadal nie omija blokad zasad Pluginu `before_install`
ani blokowania z powodu błędu skanowania, i dotyczy tylko aktualizacji Pluginów, a nie aktualizacji pakietów hooków.
`--dangerously-force-unsafe-install` jest również dostępne dla `plugins update` jako
awaryjne nadpisanie dla fałszywych alarmów wbudowanego skanowania niebezpiecznego kodu podczas
aktualizacji Pluginów. Nadal nie omija blokad polityki Pluginu `before_install`
ani blokowania z powodu niepowodzenia skanowania i dotyczy wyłącznie aktualizacji Pluginów, a nie aktualizacji pakietów hooków.
### Inspect
### Inspekcja
```bash
openclaw plugins inspect <id>
openclaw plugins inspect <id> --json
```
Głęboka introspekcja pojedynczego Pluginu. Pokazuje tożsamość, stan ładowania, źródło,
zarejestrowane możliwości, hooki, narzędzia, polecenia, usługi, metody Gateway,
trasy HTTP, flagi zasad, diagnostykę, metadane instalacji, możliwości pakietu,
oraz wszelką wykrytą obsługę serwerów MCP lub LSP.
Dogłębna introspekcja pojedynczego Pluginu. Pokazuje tożsamość, stan ładowania, źródło,
zarejestrowane możliwości, hooki, narzędzia, polecenia, usługi, metody gateway,
trasy HTTP, flagi polityk, diagnostykę, metadane instalacji, możliwości pakietu
oraz wszelkie wykryte wsparcie dla serwerów MCP lub LSP.
Każdy Plugin jest klasyfikowany według tego, co faktycznie rejestruje w runtime:
Każdy Plugin jest klasyfikowany według tego, co faktycznie rejestruje w czasie działania:
- **plain-capability** — jeden typ możliwości (np. Plugin tylko z providerem)
- **hybrid-capability** — wiele typów możliwości (np. tekst + mowa + obrazy)
@ -295,13 +309,13 @@ Każdy Plugin jest klasyfikowany według tego, co faktycznie rejestruje w runtim
Zobacz [Kształty Pluginów](/pl/plugins/architecture#plugin-shapes), aby dowiedzieć się więcej o modelu możliwości.
Flaga `--json` wypisuje raport czytelny dla maszyn, odpowiedni do skryptów i
audytów.
Flaga `--json` zwraca raport w formacie czytelnym maszynowo, odpowiedni do skryptów i
audytu.
`inspect --all` renderuje tabelę dla całej floty z kolumnami kształtu, typów możliwości,
uwag o zgodności, możliwości pakietów i podsumowania hooków.
`inspect --all` renderuje tabelę dla całej floty z kolumnami kształtu, rodzajów możliwości,
powiadomień o zgodności, możliwości pakietów i podsumowania hooków.
`info` to alias dla `inspect`.
`info` jest aliasem dla `inspect`.
### Doctor
@ -309,13 +323,13 @@ uwag o zgodności, możliwości pakietów i podsumowania hooków.
openclaw plugins doctor
```
`doctor` raportuje błędy ładowania Pluginów, diagnostykę manifestu/wykrywania oraz
uwagi o zgodności. Gdy wszystko jest w porządku, wypisuje `No plugin issues
`doctor` zgłasza błędy ładowania Pluginów, diagnostykę manifestu/wykrywania oraz
powiadomienia o zgodności. Gdy wszystko jest w porządku, wypisuje `No plugin issues
detected.`
W przypadku błędów kształtu modułu, takich jak brak eksportów `register`/`activate`, uruchom ponownie
z `OPENCLAW_PLUGIN_LOAD_DEBUG=1`, aby uwzględnić zwięzłe podsumowanie kształtu eksportów w
wyjściu diagnostycznym.
z `OPENCLAW_PLUGIN_LOAD_DEBUG=1`, aby dołączyć zwięzłe podsumowanie kształtu eksportów do
wyniku diagnostycznego.
### Marketplace
@ -324,8 +338,8 @@ openclaw plugins marketplace list <source>
openclaw plugins marketplace list <source> --json
```
Lista marketplace akceptuje lokalną ścieżkę marketplace, ścieżkę `marketplace.json`, skróconą formę
GitHub taką jak `owner/repo`, adres URL repozytorium GitHub albo adres URL git. `--json`
Lista marketplace akceptuje lokalną ścieżkę marketplace, ścieżkę `marketplace.json`,
skrót GitHub taki jak `owner/repo`, URL repozytorium GitHub lub URL git. `--json`
wypisuje rozwiązaną etykietę źródła oraz sparsowany manifest marketplace i
wpisy Pluginów.

View File

@ -1,92 +1,80 @@
---
read_when:
- Potrzebujesz dokumentacji referencyjnej konfiguracji modeli dla poszczególnych dostawców
- Chcesz przykładowych konfiguracji lub poleceń wdrożenia CLI dla dostawców modeli
summary: Przegląd dostawców modeli z przykładowymi konfiguracjami i przepływami CLI
- Potrzebujesz referencji konfiguracji modeli dla każdego dostawcy z osobna
- Chcesz przykładowych konfiguracji lub poleceń wdrożenia w CLI dla dostawców modeli
summary: Przegląd dostawców modeli z przykładowymi konfiguracjami + przepływami CLI
title: Dostawcy modeli
x-i18n:
generated_at: "2026-04-24T09:06:22Z"
generated_at: "2026-04-24T15:22:17Z"
model: gpt-5.4
provider: openai
source_hash: ac9bf48897446576d8bc339b340295691741a589863bb57b379c17a5519bffd7
source_hash: 79258cb26fae7926c65b6fe0db938c7b5736a540b33bc24c1fad5ad706ac8204
source_path: concepts/model-providers.md
workflow: 15
---
Ta strona dotyczy **dostawców LLM/modeli** (a nie kanałów czatu, takich jak WhatsApp/Telegram).
Ta strona opisuje **dostawców LLM/modeli** (a nie kanały czatu, takie jak WhatsApp/Telegram).
Zasady wyboru modeli znajdziesz w [/concepts/models](/pl/concepts/models).
## Szybkie zasady
- Referencje modeli używają formatu `provider/model` (przykład: `opencode/claude-opus-4-6`).
- `agents.defaults.models` działa jako lista dozwolonych, gdy jest ustawione.
- Pomocnicze polecenia CLI: `openclaw onboard`, `openclaw models list`, `openclaw models set <provider/model>`.
- `models.providers.*.models[].contextWindow` to natywne metadane modelu; `contextTokens` to skuteczny limit runtime.
- Zasady fallbacku, sondowania cooldown i utrwalanie nadpisań sesji: [Model failover](/pl/concepts/model-failover).
- Trasy rodziny OpenAI są specyficzne dla prefiksu: `openai/<model>` używa bezpośredniego
dostawcy klucza API OpenAI w PI, `openai-codex/<model>` używa OAuth Codex w PI,
a `openai/<model>` plus `agents.defaults.embeddedHarness.runtime: "codex"` używa natywnego harnessu app-server Codex. Zobacz [OpenAI](/pl/providers/openai)
oraz [Codex harness](/pl/plugins/codex-harness).
- Automatyczne włączanie Pluginów podąża za tą samą granicą: `openai-codex/<model>` należy
do Pluginu OpenAI, natomiast Plugin Codex jest włączany przez
`embeddedHarness.runtime: "codex"` lub starsze referencje `codex/<model>`.
- GPT-5.5 jest obecnie dostępny przez trasy subskrypcji/OAuth:
`openai-codex/gpt-5.5` w PI lub `openai/gpt-5.5` z harness app-server Codex. Bezpośrednia trasa klucza API dla `openai/gpt-5.5` będzie obsługiwana,
gdy OpenAI udostępni GPT-5.5 w publicznym API; do tego czasu używaj modeli
dostępnych przez API, takich jak `openai/gpt-5.4`, w konfiguracjach `OPENAI_API_KEY`.
- `agents.defaults.models` działa jako lista dozwolonych modeli, gdy jest ustawione.
- Pomocniki CLI: `openclaw onboard`, `openclaw models list`, `openclaw models set <provider/model>`.
- `models.providers.*.models[].contextWindow` to natywne metadane modelu; `contextTokens` to efektywny limit środowiska uruchomieniowego.
- Zasady awaryjnego przełączania, sond cooldown i trwałość nadpisywania sesji: [Awaryjne przełączanie modeli](/pl/concepts/model-failover).
- Trasy rodziny OpenAI są specyficzne dla prefiksu: `openai/<model>` używa bezpośredniego dostawcy z kluczem API OpenAI w PI, `openai-codex/<model>` używa OAuth Codex w PI, a `openai/<model>` wraz z `agents.defaults.embeddedHarness.runtime: "codex"` używa natywnej uprzęży app-server Codex. Zobacz [OpenAI](/pl/providers/openai) i [uprząż Codex](/pl/plugins/codex-harness).
- Automatyczne włączanie Plugin również podąża za tym samym rozgraniczeniem: `openai-codex/<model>` należy do Plugin OpenAI, podczas gdy Plugin Codex jest włączany przez `embeddedHarness.runtime: "codex"` lub starsze referencje `codex/<model>`.
- GPT-5.5 jest obecnie dostępny przez trasy subskrypcyjne/OAuth: `openai-codex/gpt-5.5` w PI lub `openai/gpt-5.5` z uprzężą app-server Codex. Bezpośrednia trasa z kluczem API dla `openai/gpt-5.5` będzie obsługiwana, gdy tylko OpenAI udostępni GPT-5.5 w publicznym API; do tego czasu używaj modeli dostępnych przez API, takich jak `openai/gpt-5.4`, w konfiguracjach `OPENAI_API_KEY`.
## Zachowanie dostawców należące do Pluginów
## Zachowanie dostawców zarządzane przez Plugin
Większość logiki specyficznej dla dostawców znajduje się w Pluginach dostawców (`registerProvider(...)`), podczas gdy OpenClaw zachowuje ogólną pętlę inferencji. Pluginy odpowiadają za onboarding, katalogi modeli, mapowanie zmiennych środowiskowych uwierzytelniania, normalizację transportu/konfiguracji, oczyszczanie schematów narzędzi, klasyfikację failover, odświeżanie OAuth, raportowanie użycia, profile thinking/reasoning i inne.
Większość logiki specyficznej dla dostawcy znajduje się w Plugin dostawcy (`registerProvider(...)`), podczas gdy OpenClaw utrzymuje ogólną pętlę wnioskowania. Plugin odpowiadają za wdrażanie, katalogi modeli, mapowanie zmiennych środowiskowych uwierzytelniania, normalizację transportu/konfiguracji, czyszczenie schematów narzędzi, klasyfikację awaryjnego przełączania, odświeżanie OAuth, raportowanie użycia, profile myślenia/wnioskowania i nie tylko.
Pełna lista haków provider-SDK i przykłady dołączonych Pluginów znajdują się w [Provider plugins](/pl/plugins/sdk-provider-plugins). Dostawca, który wymaga całkowicie niestandardowego wykonawcy żądań, korzysta z osobnej, głębszej powierzchni rozszerzeń.
Pełna lista hooków SDK dostawcy i przykładów wbudowanych Plugin znajduje się w [Plugin dostawców](/pl/plugins/sdk-provider-plugins). Dostawca, który potrzebuje całkowicie niestandardowego wykonawcy żądań, wymaga osobnej, głębszej powierzchni rozszerzeń.
<Note>
`capabilities` runtime dostawcy to współdzielone metadane runnera (rodzina dostawcy, niuanse transkryptu/narzędzi, wskazówki dotyczące transportu/cache). To nie to samo co [public capability model](/pl/plugins/architecture#public-capability-model), który opisuje, co Plugin rejestruje (inferencja tekstu, mowa itd.).
Środowiskowe `capabilities` dostawcy to współdzielone metadane wykonawcy (rodzina dostawcy, niuanse transkryptu/narzędzi, wskazówki dotyczące transportu/pamięci podręcznej). To nie to samo co [publiczny model możliwości](/pl/plugins/architecture#public-capability-model), który opisuje, co rejestruje Plugin (wnioskowanie tekstowe, mowa itd.).
</Note>
## Rotacja kluczy API
- Obsługuje ogólną rotację kluczy dostawców dla wybranych dostawców.
- Obsługuje ogólną rotację dostawców dla wybranych dostawców.
- Skonfiguruj wiele kluczy przez:
- `OPENCLAW_LIVE_<PROVIDER>_KEY` (pojedyncze aktywne nadpisanie, najwyższy priorytet)
- `<PROVIDER>_API_KEYS` (lista rozdzielana przecinkami lub średnikami)
- `<PROVIDER>_API_KEY` (klucz główny)
- `<PROVIDER>_API_KEY_*` (lista numerowana, np. `<PROVIDER>_API_KEY_1`)
- Dla dostawców Google jako fallback uwzględniane jest również `GOOGLE_API_KEY`.
- Dla dostawców Google `GOOGLE_API_KEY` jest również uwzględniany jako opcja zapasowa.
- Kolejność wyboru kluczy zachowuje priorytet i usuwa duplikaty wartości.
- Żądania są ponawiane z następnym kluczem tylko przy odpowiedziach z limitem szybkości (na
przykład `429`, `rate_limit`, `quota`, `resource exhausted`, `Too many
- Żądania są ponawiane z kolejnym kluczem tylko przy odpowiedziach o limicie szybkości (na przykład `429`, `rate_limit`, `quota`, `resource exhausted`, `Too many
concurrent requests`, `ThrottlingException`, `concurrency limit reached`,
`workers_ai ... quota limit exceeded` lub okresowych komunikatach o limicie użycia).
- Błędy inne niż limit szybkości kończą się natychmiast; nie jest podejmowana rotacja kluczy.
- Błędy inne niż limit szybkości kończą się natychmiast; nie jest podejmowana próba rotacji klucza.
- Gdy wszystkie kandydackie klucze zawiodą, zwracany jest końcowy błąd z ostatniej próby.
## Wbudowani dostawcy (katalog pi-ai)
OpenClaw zawiera katalog piai. Ci dostawcy **nie wymagają**
konfiguracji `models.providers`; wystarczy ustawić uwierzytelnianie i wybrać model.
OpenClaw jest dostarczany z katalogiem piai. Ci dostawcy nie wymagają konfiguracji `models.providers`; wystarczy ustawić uwierzytelnianie i wybrać model.
### OpenAI
- Dostawca: `openai`
- Uwierzytelnianie: `OPENAI_API_KEY`
- Opcjonalna rotacja: `OPENAI_API_KEYS`, `OPENAI_API_KEY_1`, `OPENAI_API_KEY_2` oraz `OPENCLAW_LIVE_OPENAI_KEY` (pojedyncze nadpisanie)
- Opcjonalna rotacja: `OPENAI_API_KEYS`, `OPENAI_API_KEY_1`, `OPENAI_API_KEY_2`, plus `OPENCLAW_LIVE_OPENAI_KEY` (pojedyncze nadpisanie)
- Przykładowe modele: `openai/gpt-5.4`, `openai/gpt-5.4-mini`
- Bezpośrednia obsługa GPT-5.5 przez API będzie tu gotowa na przyszłość, gdy OpenAI udostępni GPT-5.5 w API
- Bezpośrednia obsługa GPT-5.5 przez API jest tutaj przygotowana na przyszłość, gdy OpenAI udostępni GPT-5.5 w API
- CLI: `openclaw onboard --auth-choice openai-api-key`
- Domyślny transport to `auto` (najpierw WebSocket, fallback do SSE)
- Nadpisanie per model przez `agents.defaults.models["openai/<model>"].params.transport` (`"sse"`, `"websocket"` lub `"auto"`)
- Rozgrzewka OpenAI Responses WebSocket jest domyślnie włączona przez `params.openaiWsWarmup` (`true`/`false`)
- Domyślny transport to `auto` (najpierw WebSocket, potem SSE)
- Zastąp dla konkretnego modelu przez `agents.defaults.models["openai/<model>"].params.transport` (`"sse"`, `"websocket"` lub `"auto"`)
- Rozgrzewanie OpenAI Responses WebSocket jest domyślnie włączone przez `params.openaiWsWarmup` (`true`/`false`)
- Przetwarzanie priorytetowe OpenAI można włączyć przez `agents.defaults.models["openai/<model>"].params.serviceTier`
- `/fast` i `params.fastMode` mapują bezpośrednie żądania `openai/*` Responses do `service_tier=priority` na `api.openai.com`
- Użyj `params.serviceTier`, jeśli chcesz jawnego poziomu zamiast współdzielonego przełącznika `/fast`
- `/fast` i `params.fastMode` mapują bezpośrednie żądania Responses `openai/*` na `service_tier=priority` w `api.openai.com`
- Używaj `params.serviceTier`, jeśli chcesz ustawić jawny poziom zamiast współdzielonego przełącznika `/fast`
- Ukryte nagłówki atrybucji OpenClaw (`originator`, `version`,
`User-Agent`) są stosowane tylko do natywnego ruchu OpenAI na `api.openai.com`, a nie
do ogólnych proxy zgodnych z OpenAI
- Natywne trasy OpenAI zachowują też Responses `store`, wskazówki prompt-cache i
kształtowanie payloadu reasoning-compat OpenAI; trasy proxy tego nie robią
- `openai/gpt-5.3-codex-spark` jest celowo ukryty w OpenClaw, ponieważ aktywne żądania OpenAI API go odrzucają, a bieżący katalog Codex go nie udostępnia
`User-Agent`) są stosowane tylko w natywnym ruchu OpenAI do `api.openai.com`, a nie w ogólnych proxy zgodnych z OpenAI
- Natywne trasy OpenAI zachowują także Responses `store`, wskazówki pamięci podręcznej promptów oraz kształtowanie ładunku zgodne z rozumowaniem OpenAI; trasy proxy tego nie robią
- `openai/gpt-5.3-codex-spark` jest celowo ukryty w OpenClaw, ponieważ aktywne żądania do API OpenAI go odrzucają, a obecny katalog Codex go nie udostępnia
```json5
{
@ -98,12 +86,12 @@ konfiguracji `models.providers`; wystarczy ustawić uwierzytelnianie i wybrać m
- Dostawca: `anthropic`
- Uwierzytelnianie: `ANTHROPIC_API_KEY`
- Opcjonalna rotacja: `ANTHROPIC_API_KEYS`, `ANTHROPIC_API_KEY_1`, `ANTHROPIC_API_KEY_2` oraz `OPENCLAW_LIVE_ANTHROPIC_KEY` (pojedyncze nadpisanie)
- Opcjonalna rotacja: `ANTHROPIC_API_KEYS`, `ANTHROPIC_API_KEY_1`, `ANTHROPIC_API_KEY_2`, plus `OPENCLAW_LIVE_ANTHROPIC_KEY` (pojedyncze nadpisanie)
- Przykładowy model: `anthropic/claude-opus-4-6`
- CLI: `openclaw onboard --auth-choice apiKey`
- Bezpośrednie publiczne żądania Anthropic obsługują współdzielony przełącznik `/fast` i `params.fastMode`, w tym ruch uwierzytelniony kluczem API i OAuth wysyłany do `api.anthropic.com`; OpenClaw mapuje to do Anthropic `service_tier` (`auto` vs `standard_only`)
- Uwaga dotycząca Anthropic: pracownicy Anthropic poinformowali nas, że użycie Claude CLI w stylu OpenClaw jest znowu dozwolone, więc OpenClaw traktuje ponowne użycie Claude CLI i użycie `claude -p` jako usankcjonowane dla tej integracji, chyba że Anthropic opublikuje nową politykę.
- Token konfiguracyjny Anthropic pozostaje dostępny jako obsługiwana ścieżka tokenu OpenClaw, ale OpenClaw preferuje teraz ponowne użycie Claude CLI i `claude -p`, gdy są dostępne.
- Bezpośrednie publiczne żądania Anthropic obsługują również współdzielony przełącznik `/fast` i `params.fastMode`, w tym ruch uwierzytelniony kluczem API i OAuth wysyłany do `api.anthropic.com`; OpenClaw mapuje to na Anthropic `service_tier` (`auto` vs `standard_only`)
- Uwaga dotycząca Anthropic: pracownicy Anthropic poinformowali nas, że użycie Claude CLI w stylu OpenClaw jest ponownie dozwolone, więc OpenClaw traktuje ponowne użycie Claude CLI i użycie `claude -p` jako dozwolone dla tej integracji, chyba że Anthropic opublikuje nową politykę.
- Token konfiguracji Anthropic nadal pozostaje wspieraną ścieżką tokenu w OpenClaw, ale OpenClaw preferuje teraz ponowne użycie Claude CLI i `claude -p`, gdy są dostępne.
```json5
{
@ -116,22 +104,20 @@ konfiguracji `models.providers`; wystarczy ustawić uwierzytelnianie i wybrać m
- Dostawca: `openai-codex`
- Uwierzytelnianie: OAuth (ChatGPT)
- Referencja modelu PI: `openai-codex/gpt-5.5`
- Referencja natywnego harnessu app-server Codex: `openai/gpt-5.5` z `agents.defaults.embeddedHarness.runtime: "codex"`
- Referencja natywnej uprzęży app-server Codex: `openai/gpt-5.5` z `agents.defaults.embeddedHarness.runtime: "codex"`
- Starsze referencje modeli: `codex/gpt-*`
- Granica Pluginu: `openai-codex/*` ładuje Plugin OpenAI; natywny
Plugin app-server Codex jest wybierany tylko przez runtime harnessu Codex lub starsze
referencje `codex/*`.
- Granica Plugin: `openai-codex/*` ładuje Plugin OpenAI; natywny Plugin app-server Codex jest wybierany tylko przez środowisko uprzęży Codex lub starsze referencje `codex/*`.
- CLI: `openclaw onboard --auth-choice openai-codex` lub `openclaw models auth login --provider openai-codex`
- Domyślny transport to `auto` (najpierw WebSocket, fallback do SSE)
- Nadpisanie per model PI przez `agents.defaults.models["openai-codex/<model>"].params.transport` (`"sse"`, `"websocket"` lub `"auto"`)
- `params.serviceTier` jest też przekazywane przy natywnych żądaniach Codex Responses (`chatgpt.com/backend-api`)
- Domyślny transport to `auto` (najpierw WebSocket, potem SSE)
- Zastąp dla konkretnego modelu PI przez `agents.defaults.models["openai-codex/<model>"].params.transport` (`"sse"`, `"websocket"` lub `"auto"`)
- `params.serviceTier` jest także przekazywane w natywnych żądaniach Codex Responses (`chatgpt.com/backend-api`)
- Ukryte nagłówki atrybucji OpenClaw (`originator`, `version`,
`User-Agent`) są dołączane tylko do natywnego ruchu Codex do
`chatgpt.com/backend-api`, a nie do ogólnych proxy zgodnych z OpenAI
- Współdzieli ten sam przełącznik `/fast` i konfigurację `params.fastMode` co bezpośrednie `openai/*`; OpenClaw mapuje to do `service_tier=priority`
- `openai-codex/gpt-5.5` zachowuje natywne `contextWindow = 1000000` i domyślne runtime `contextTokens = 272000`; nadpisz limit runtime przez `models.providers.openai-codex.models[].contextTokens`
- Współdzieli ten sam przełącznik `/fast` i konfigurację `params.fastMode` co bezpośrednie `openai/*`; OpenClaw mapuje to na `service_tier=priority`
- `openai-codex/gpt-5.5` zachowuje natywne `contextWindow = 1000000` i domyślny środowiskowy `contextTokens = 272000`; zastąp limit środowiskowy przez `models.providers.openai-codex.models[].contextTokens`
- Uwaga dotycząca polityki: OpenAI Codex OAuth jest jawnie wspierany dla zewnętrznych narzędzi/przepływów pracy, takich jak OpenClaw.
- Bieżący dostęp do GPT-5.5 używa tej trasy OAuth/subskrypcji, dopóki OpenAI nie włączy GPT-5.5 w publicznym API.
- Obecny dostęp do GPT-5.5 używa tej trasy OAuth/subskrypcyjnej, dopóki OpenAI nie włączy GPT-5.5 w publicznym API.
```json5
{
@ -155,13 +141,13 @@ konfiguracji `models.providers`; wystarczy ustawić uwierzytelnianie i wybrać m
- [Qwen Cloud](/pl/providers/qwen): powierzchnia dostawcy Qwen Cloud oraz mapowanie endpointów Alibaba DashScope i Coding Plan
- [MiniMax](/pl/providers/minimax): dostęp MiniMax Coding Plan przez OAuth lub klucz API
- [GLM Models](/pl/providers/glm): endpointy Z.AI Coding Plan lub ogólnego API
- [GLM Models](/pl/providers/glm): endpointy Z.AI Coding Plan lub ogólne endpointy API
### OpenCode
- Uwierzytelnianie: `OPENCODE_API_KEY` (lub `OPENCODE_ZEN_API_KEY`)
- Dostawca runtime Zen: `opencode`
- Dostawca runtime Go: `opencode-go`
- Dostawca środowiska Zen: `opencode`
- Dostawca środowiska Go: `opencode-go`
- Przykładowe modele: `opencode/claude-opus-4-6`, `opencode-go/kimi-k2.5`
- CLI: `openclaw onboard --auth-choice opencode-zen` lub `openclaw onboard --auth-choice opencode-go`
@ -175,31 +161,31 @@ konfiguracji `models.providers`; wystarczy ustawić uwierzytelnianie i wybrać m
- Dostawca: `google`
- Uwierzytelnianie: `GEMINI_API_KEY`
- Opcjonalna rotacja: `GEMINI_API_KEYS`, `GEMINI_API_KEY_1`, `GEMINI_API_KEY_2`, fallback `GOOGLE_API_KEY` oraz `OPENCLAW_LIVE_GEMINI_KEY` (pojedyncze nadpisanie)
- Opcjonalna rotacja: `GEMINI_API_KEYS`, `GEMINI_API_KEY_1`, `GEMINI_API_KEY_2`, opcja zapasowa `GOOGLE_API_KEY` oraz `OPENCLAW_LIVE_GEMINI_KEY` (pojedyncze nadpisanie)
- Przykładowe modele: `google/gemini-3.1-pro-preview`, `google/gemini-3-flash-preview`
- Zgodność: starsza konfiguracja OpenClaw używająca `google/gemini-3.1-flash-preview` jest normalizowana do `google/gemini-3-flash-preview`
- CLI: `openclaw onboard --auth-choice gemini-api-key`
- Bezpośrednie uruchomienia Gemini akceptują t`agents.defaults.models["google/<model>"].params.cachedContent`
- Bezpośrednie uruchomienia Gemini akceptują równi`agents.defaults.models["google/<model>"].params.cachedContent`
(lub starsze `cached_content`) do przekazania natywnego dla dostawcy
uchwytu `cachedContents/...`; trafienia cache Gemini są ujawniane jako OpenClaw `cacheRead`
uchwytu `cachedContents/...`; trafienia pamięci podręcznej Gemini są ujawniane jako OpenClaw `cacheRead`
### Google Vertex i Gemini CLI
- Dostawcy: `google-vertex`, `google-gemini-cli`
- Uwierzytelnianie: Vertex używa gcloud ADC; Gemini CLI używa własnego przepływu OAuth
- Uwaga: OAuth Gemini CLI w OpenClaw to nieoficjalna integracja. Niektórzy użytkownicy zgłaszali ograniczenia kont Google po użyciu klientów zewnętrznych. Zapoznaj się z warunkami Google i użyj niekrytycznego konta, jeśli zdecydujesz się kontynuować.
- OAuth Gemini CLI jest dostarczany jako część dołączonego Pluginu `google`.
- Uwaga: OAuth Gemini CLI w OpenClaw to nieoficjalna integracja. Niektórzy użytkownicy zgłaszali ograniczenia kont Google po użyciu klientów zewnętrznych. Przejrzyj warunki Google i użyj niekrytycznego konta, jeśli zdecydujesz się kontynuować.
- OAuth Gemini CLI jest dostarczany jako część wbudowanego Plugin `google`.
- Najpierw zainstaluj Gemini CLI:
- `brew install gemini-cli`
- lub `npm install -g @google/gemini-cli`
- Włącz: `openclaw plugins enable google`
- Zaloguj się: `openclaw models auth login --provider google-gemini-cli --set-default`
- Model domyślny: `google-gemini-cli/gemini-3-flash-preview`
- Uwaga: **nie** wklejasz identyfikatora klienta ani sekretu do `openclaw.json`. Przepływ logowania CLI zapisuje
tokeny w profilach uwierzytelniania na hoście gateway.
- Jeśli żądania zawodzą po zalogowaniu, ustaw `GOOGLE_CLOUD_PROJECT` lub `GOOGLE_CLOUD_PROJECT_ID` na hoście gateway.
- Odpowiedzi JSON Gemini CLI są parsowane z `response`; użycie awaryjnie pobierane jest z
`stats`, przy czym `stats.cached` jest normalizowane do OpenClaw `cacheRead`.
- Uwaga: **nie** wklejasz identyfikatora klienta ani sekretu do `openclaw.json`. Przepływ logowania CLI przechowuje
tokeny w profilach uwierzytelniania na hoście Gateway.
- Jeśli żądania kończą się błędem po zalogowaniu, ustaw `GOOGLE_CLOUD_PROJECT` lub `GOOGLE_CLOUD_PROJECT_ID` na hoście Gateway.
- Odpowiedzi JSON Gemini CLI są parsowane z `response`; użycie wraca do
`stats`, a `stats.cached` jest normalizowane do OpenClaw `cacheRead`.
### Z.AI (GLM)
@ -208,7 +194,7 @@ konfiguracji `models.providers`; wystarczy ustawić uwierzytelnianie i wybrać m
- Przykładowy model: `zai/glm-5.1`
- CLI: `openclaw onboard --auth-choice zai-api-key`
- Aliasy: `z.ai/*` i `z-ai/*` są normalizowane do `zai/*`
- `zai-api-key` automatycznie wykrywa pasujący endpoint Z.AI; `zai-coding-global`, `zai-coding-cn`, `zai-global` i `zai-cn` wymuszają konkretną powierzchnię
- `zai-api-key` automatycznie wykrywa pasujący endpoint Z.AI; `zai-coding-global`, `zai-coding-cn`, `zai-global` i `zai-cn` wymuszają określoną powierzchnię
### Vercel AI Gateway
@ -225,61 +211,62 @@ konfiguracji `models.providers`; wystarczy ustawić uwierzytelnianie i wybrać m
- Przykładowy model: `kilocode/kilo/auto`
- CLI: `openclaw onboard --auth-choice kilocode-api-key`
- Bazowy URL: `https://api.kilo.ai/api/gateway/`
- Statyczny katalog fallback dostarcza `kilocode/kilo/auto`; wykrywanie na żywo
`https://api.kilo.ai/api/gateway/models` może dodatkowo rozszerzyć katalog runtime.
- Dokładny routing upstream za `kilocode/kilo/auto` należy do Kilo Gateway,
a nie jest zakodowany na stałe w OpenClaw.
- Statyczny katalog zapasowy jest dostarczany z `kilocode/kilo/auto`; aktywne
wykrywanie `https://api.kilo.ai/api/gateway/models` może dalej rozszerzać katalog
środowiskowy.
- Dokładne routowanie nadrzędne za `kilocode/kilo/auto` należy do Kilo Gateway,
a nie jest zakodowane na stałe w OpenClaw.
Szczegóły konfiguracji znajdziesz w [/providers/kilocode](/pl/providers/kilocode).
### Inne dołączone Pluginy dostawców
### Inne wbudowane Plugin dostawców
| Dostawca | Id | Env uwierzytelniania | Przykładowy model |
| ----------------------- | -------------------------------- | ----------------------------------------------------------- | ----------------------------------------------- |
| BytePlus | `byteplus` / `byteplus-plan` | `BYTEPLUS_API_KEY` | `byteplus-plan/ark-code-latest` |
| Cerebras | `cerebras` | `CEREBRAS_API_KEY` | `cerebras/zai-glm-4.7` |
| Cloudflare AI Gateway | `cloudflare-ai-gateway` | `CLOUDFLARE_AI_GATEWAY_API_KEY` | — |
| GitHub Copilot | `github-copilot` | `COPILOT_GITHUB_TOKEN` / `GH_TOKEN` / `GITHUB_TOKEN` | — |
| Groq | `groq` | `GROQ_API_KEY` | — |
| Hugging Face Inference | `huggingface` | `HUGGINGFACE_HUB_TOKEN` lub `HF_TOKEN` | `huggingface/deepseek-ai/DeepSeek-R1` |
| Kilo Gateway | `kilocode` | `KILOCODE_API_KEY` | `kilocode/kilo/auto` |
| Kimi Coding | `kimi` | `KIMI_API_KEY` lub `KIMICODE_API_KEY` | `kimi/kimi-code` |
| MiniMax | `minimax` / `minimax-portal` | `MINIMAX_API_KEY` / `MINIMAX_OAUTH_TOKEN` | `minimax/MiniMax-M2.7` |
| Mistral | `mistral` | `MISTRAL_API_KEY` | `mistral/mistral-large-latest` |
| Moonshot | `moonshot` | `MOONSHOT_API_KEY` | `moonshot/kimi-k2.6` |
| NVIDIA | `nvidia` | `NVIDIA_API_KEY` | `nvidia/nvidia/llama-3.1-nemotron-70b-instruct` |
| OpenRouter | `openrouter` | `OPENROUTER_API_KEY` | `openrouter/auto` |
| Qianfan | `qianfan` | `QIANFAN_API_KEY` | `qianfan/deepseek-v3.2` |
| Dostawca | Id | Zmienne środowiskowe uwierzytelniania | Przykładowy model |
| ----------------------- | -------------------------------- | ------------------------------------------------------------ | ----------------------------------------------- |
| BytePlus | `byteplus` / `byteplus-plan` | `BYTEPLUS_API_KEY` | `byteplus-plan/ark-code-latest` |
| Cerebras | `cerebras` | `CEREBRAS_API_KEY` | `cerebras/zai-glm-4.7` |
| Cloudflare AI Gateway | `cloudflare-ai-gateway` | `CLOUDFLARE_AI_GATEWAY_API_KEY` | — |
| DeepSeek | `deepseek` | `DEEPSEEK_API_KEY` | `deepseek/deepseek-v4-flash` |
| GitHub Copilot | `github-copilot` | `COPILOT_GITHUB_TOKEN` / `GH_TOKEN` / `GITHUB_TOKEN` | — |
| Groq | `groq` | `GROQ_API_KEY` | — |
| Hugging Face Inference | `huggingface` | `HUGGINGFACE_HUB_TOKEN` or `HF_TOKEN` | `huggingface/deepseek-ai/DeepSeek-R1` |
| Kilo Gateway | `kilocode` | `KILOCODE_API_KEY` | `kilocode/kilo/auto` |
| Kimi Coding | `kimi` | `KIMI_API_KEY` or `KIMICODE_API_KEY` | `kimi/kimi-code` |
| MiniMax | `minimax` / `minimax-portal` | `MINIMAX_API_KEY` / `MINIMAX_OAUTH_TOKEN` | `minimax/MiniMax-M2.7` |
| Mistral | `mistral` | `MISTRAL_API_KEY` | `mistral/mistral-large-latest` |
| Moonshot | `moonshot` | `MOONSHOT_API_KEY` | `moonshot/kimi-k2.6` |
| NVIDIA | `nvidia` | `NVIDIA_API_KEY` | `nvidia/nvidia/llama-3.1-nemotron-70b-instruct` |
| OpenRouter | `openrouter` | `OPENROUTER_API_KEY` | `openrouter/auto` |
| Qianfan | `qianfan` | `QIANFAN_API_KEY` | `qianfan/deepseek-v3.2` |
| Qwen Cloud | `qwen` | `QWEN_API_KEY` / `MODELSTUDIO_API_KEY` / `DASHSCOPE_API_KEY` | `qwen/qwen3.5-plus` |
| StepFun | `stepfun` / `stepfun-plan` | `STEPFUN_API_KEY` | `stepfun/step-3.5-flash` |
| Together | `together` | `TOGETHER_API_KEY` | `together/moonshotai/Kimi-K2.5` |
| Venice | `venice` | `VENICE_API_KEY` | — |
| Vercel AI Gateway | `vercel-ai-gateway` | `AI_GATEWAY_API_KEY` | `vercel-ai-gateway/anthropic/claude-opus-4.6` |
| Volcano Engine (Doubao) | `volcengine` / `volcengine-plan` | `VOLCANO_ENGINE_API_KEY` | `volcengine-plan/ark-code-latest` |
| xAI | `xai` | `XAI_API_KEY` | `xai/grok-4` |
| Xiaomi | `xiaomi` | `XIAOMI_API_KEY` | `xiaomi/mimo-v2-flash` |
| StepFun | `stepfun` / `stepfun-plan` | `STEPFUN_API_KEY` | `stepfun/step-3.5-flash` |
| Together | `together` | `TOGETHER_API_KEY` | `together/moonshotai/Kimi-K2.5` |
| Venice | `venice` | `VENICE_API_KEY` | — |
| Vercel AI Gateway | `vercel-ai-gateway` | `AI_GATEWAY_API_KEY` | `vercel-ai-gateway/anthropic/claude-opus-4.6` |
| Volcano Engine (Doubao) | `volcengine` / `volcengine-plan` | `VOLCANO_ENGINE_API_KEY` | `volcengine-plan/ark-code-latest` |
| xAI | `xai` | `XAI_API_KEY` | `xai/grok-4` |
| Xiaomi | `xiaomi` | `XIAOMI_API_KEY` | `xiaomi/mimo-v2-flash` |
Warto znać następujące niuanse:
- **OpenRouter** stosuje swoje nagłówki atrybucji aplikacji i znaczniki Anthropic `cache_control` tylko na zweryfikowanych trasach `openrouter.ai`. Jako ścieżka proxy zgodna z OpenAI pomija kształtowanie specyficzne tylko dla natywnego OpenAI (`serviceTier`, Responses `store`, wskazówki prompt-cache, zgodność reasoning OpenAI). Referencje oparte na Gemini zachowują tylko oczyszczanie thought-signature dla proxy-Gemini.
- **Kilo Gateway** dla referencji opartych na Gemini stosuje tę samą ścieżkę oczyszczania proxy-Gemini; `kilocode/kilo/auto` i inne referencje proxy bez obsługi reasoning pomijają wstrzykiwanie proxy reasoning.
- **MiniMax** onboarding z kluczem API zapisuje jawne definicje modeli M2.7 z `input: ["text", "image"]`; dołączony katalog utrzymuje referencje czatu jako tylko tekstowe, dopóki ta konfiguracja nie zostanie zmaterializowana.
- **OpenRouter** stosuje swoje nagłówki atrybucji aplikacji i znaczniki Anthropic `cache_control` tylko na zweryfikowanych trasach `openrouter.ai`. Jako ścieżka proxy zgodna z OpenAI pomija kształtowanie specyficzne tylko dla natywnego OpenAI (`serviceTier`, Responses `store`, wskazówki pamięci podręcznej promptów, zgodność z rozumowaniem OpenAI). Referencje oparte na Gemini zachowują wyłącznie sanityzację sygnatur myślenia proxy-Gemini.
- **Kilo Gateway** dla referencji opartych na Gemini podąża tą samą ścieżką sanityzacji proxy-Gemini; `kilocode/kilo/auto` i inne referencje proxy bez obsługi rozumowania pomijają wstrzykiwanie rozumowania proxy.
- **MiniMax** podczas wdrożenia z kluczem API zapisuje jawne definicje modeli M2.7 z `input: ["text", "image"]`; wbudowany katalog utrzymuje referencje czatu jako tylko tekstowe, dopóki ta konfiguracja nie zostanie zmaterializowana.
- **xAI** używa ścieżki xAI Responses. `/fast` lub `params.fastMode: true` przepisuje `grok-3`, `grok-3-mini`, `grok-4` i `grok-4-0709` na ich warianty `*-fast`. `tool_stream` jest domyślnie włączone; wyłącz przez `agents.defaults.models["xai/<model>"].params.tool_stream=false`.
- **Cerebras** modele GLM używają `zai-glm-4.7` / `zai-glm-4.6`; bazowy URL zgodny z OpenAI to `https://api.cerebras.ai/v1`.
## Dostawcy przez `models.providers` (custom/base URL)
## Dostawcy przez `models.providers` (niestandardowy/bazowy URL)
Używaj `models.providers` (lub `models.json`), aby dodać **niestandardowych** dostawców lub
proxy zgodne z OpenAI/Anthropic.
Użyj `models.providers` (lub `models.json`), aby dodać **niestandardowych** dostawców lub proxy zgodne z OpenAI/Anthropic.
Wiele z poniższych dołączonych Pluginów dostawców publikuje już domyślny katalog.
Wiele z poniższych wbudowanych Plugin dostawców publikuje już domyślny katalog.
Używaj jawnych wpisów `models.providers.<id>` tylko wtedy, gdy chcesz nadpisać
domyślny bazowy URL, nagłówki lub listę modeli.
### Moonshot AI (Kimi)
Moonshot jest dostarczany jako dołączony Plugin dostawcy. Domyślnie używaj wbudowanego dostawcy,
a jawny wpis `models.providers.moonshot` dodawaj tylko wtedy, gdy
Moonshot jest dostarczany jako wbudowany Plugin dostawcy. Domyślnie używaj
wbudowanego dostawcy, a jawny wpis `models.providers.moonshot` dodawaj tylko wtedy, gdy
musisz nadpisać bazowy URL lub metadane modelu:
- Dostawca: `moonshot`
@ -287,7 +274,7 @@ musisz nadpisać bazowy URL lub metadane modelu:
- Przykładowy model: `moonshot/kimi-k2.6`
- CLI: `openclaw onboard --auth-choice moonshot-api-key` lub `openclaw onboard --auth-choice moonshot-api-key-cn`
Identyfikatory modeli Kimi K2:
Id modeli Kimi K2:
[//]: # "moonshot-kimi-k2-model-refs:start"
@ -335,7 +322,7 @@ Kimi Coding używa endpointu Moonshot AI zgodnego z Anthropic:
}
```
Starsze `kimi/k2p5` pozostaje akceptowane jako zgodnościowy identyfikator modelu.
Starsze `kimi/k2p5` pozostaje akceptowane jako identyfikator modelu zgodności.
### Volcano Engine (Doubao)
@ -354,12 +341,12 @@ Volcano Engine (火山引擎) zapewnia dostęp do Doubao i innych modeli w China
}
```
Onboarding domyślnie używa powierzchni kodowania, ale ogólny katalog `volcengine/*`
jest rejestrowany w tym samym czasie.
Wdrażanie domyślnie używa powierzchni kodowania, ale ogólny katalog `volcengine/*`
jest rejestrowany jednocześnie.
W selektorach modeli onboarding/configure wybór uwierzytelniania Volcengine preferuje zarówno
wiersze `volcengine/*`, jak i `volcengine-plan/*`. Jeśli te modele nie są jeszcze załadowane,
OpenClaw wraca do katalogu bez filtrowania zamiast pokazywać pusty
OpenClaw wraca do niefiltrowanego katalogu zamiast pokazywać pusty
selektor ograniczony do dostawcy.
Dostępne modele:
@ -395,12 +382,12 @@ BytePlus ARK zapewnia międzynarodowym użytkownikom dostęp do tych samych mode
}
```
Onboarding domyślnie używa powierzchni kodowania, ale ogólny katalog `byteplus/*`
jest rejestrowany w tym samym czasie.
Wdrażanie domyślnie używa powierzchni kodowania, ale ogólny katalog `byteplus/*`
jest rejestrowany jednocześnie.
W selektorach modeli onboarding/configure wybór uwierzytelniania BytePlus preferuje zarówno
wiersze `byteplus/*`, jak i `byteplus-plan/*`. Jeśli te modele nie są jeszcze załadowane,
OpenClaw wraca do katalogu bez filtrowania zamiast pokazywać pusty
OpenClaw wraca do niefiltrowanego katalogu zamiast pokazywać pusty
selektor ograniczony do dostawcy.
Dostępne modele:
@ -449,35 +436,35 @@ Synthetic udostępnia modele zgodne z Anthropic za pośrednictwem dostawcy `synt
MiniMax jest konfigurowany przez `models.providers`, ponieważ używa niestandardowych endpointów:
- MiniMax OAuth (globalny): `--auth-choice minimax-global-oauth`
- MiniMax OAuth (CN): `--auth-choice minimax-cn-oauth`
- Klucz API MiniMax (globalny): `--auth-choice minimax-global-api`
- Klucz API MiniMax (CN): `--auth-choice minimax-cn-api`
- MiniMax OAuth (globalnie): `--auth-choice minimax-global-oauth`
- MiniMax OAuth (Chiny): `--auth-choice minimax-cn-oauth`
- Klucz API MiniMax (globalnie): `--auth-choice minimax-global-api`
- Klucz API MiniMax (Chiny): `--auth-choice minimax-cn-api`
- Uwierzytelnianie: `MINIMAX_API_KEY` dla `minimax`; `MINIMAX_OAUTH_TOKEN` lub
`MINIMAX_API_KEY` dla `minimax-portal`
Szczegóły konfiguracji, opcje modeli i fragmenty konfiguracji znajdziesz w [/providers/minimax](/pl/providers/minimax).
Na ścieżce strumieniowania MiniMax zgodnej z Anthropic OpenClaw domyślnie wyłącza thinking,
chyba że jawnie go ustawisz, a `/fast on` przepisuje
Na ścieżce strumieniowania MiniMax zgodnej z Anthropic OpenClaw domyślnie wyłącza myślenie,
chyba że jawnie je ustawisz, a `/fast on` przepisuje
`MiniMax-M2.7` na `MiniMax-M2.7-highspeed`.
Podział możliwości należący do Pluginu:
Podział możliwości zarządzany przez Plugin:
- Domyślne tekst/czat pozostają na `minimax/MiniMax-M2.7`
- Domyślne ustawienia tekstu/czatu pozostają przy `minimax/MiniMax-M2.7`
- Generowanie obrazów to `minimax/image-01` lub `minimax-portal/image-01`
- Rozumienie obrazów to należący do Pluginu `MiniMax-VL-01` na obu ścieżkach uwierzytelniania MiniMax
- Wyszukiwanie w sieci pozostaje na identyfikatorze dostawcy `minimax`
- Rozumienie obrazów to zarządzany przez Plugin `MiniMax-VL-01` na obu ścieżkach uwierzytelniania MiniMax
- Wyszukiwanie w sieci pozostaje przy id dostawcy `minimax`
### LM Studio
LM Studio jest dostarczane jako dołączony Plugin dostawcy, który używa natywnego API:
LM Studio jest dostarczany jako wbudowany Plugin dostawcy, który używa natywnego API:
- Dostawca: `lmstudio`
- Uwierzytelnianie: `LM_API_TOKEN`
- Domyślny bazowy URL inferencji: `http://localhost:1234/v1`
- Domyślny bazowy URL wnioskowania: `http://localhost:1234/v1`
Następnie ustaw model (zastąp jednym z identyfikatorów zwracanych przez `http://localhost:1234/api/v1/models`):
Następnie ustaw model (zastąp jednym z identyfikatorów zwróconych przez `http://localhost:1234/api/v1/models`):
```json5
{
@ -487,12 +474,13 @@ Następnie ustaw model (zastąp jednym z identyfikatorów zwracanych przez `http
}
```
OpenClaw używa natywnych endpointów LM Studio `/api/v1/models` i `/api/v1/models/load` do wykrywania + automatycznego ładowania, a domyślnie `/v1/chat/completions` do inferencji.
Zobacz [/providers/lmstudio](/pl/providers/lmstudio), aby poznać konfigurację i rozwiązywanie problemów.
OpenClaw domyślnie używa natywnych endpointów LM Studio `/api/v1/models` i `/api/v1/models/load`
do wykrywania i automatycznego ładowania oraz `/v1/chat/completions` do wnioskowania.
Konfigurację i rozwiązywanie problemów znajdziesz w [/providers/lmstudio](/pl/providers/lmstudio).
### Ollama
Ollama jest dostarczana jako dołączony Plugin dostawcy i używa natywnego API Ollama:
Ollama jest dostarczany jako wbudowany Plugin dostawcy i używa natywnego API Ollama:
- Dostawca: `ollama`
- Uwierzytelnianie: niewymagane (serwer lokalny)
@ -500,7 +488,7 @@ Ollama jest dostarczana jako dołączony Plugin dostawcy i używa natywnego API
- Instalacja: [https://ollama.com/download](https://ollama.com/download)
```bash
# Install Ollama, then pull a model:
# Zainstaluj Ollama, a następnie pobierz model:
ollama pull llama3.3
```
@ -512,27 +500,27 @@ ollama pull llama3.3
}
```
Ollama jest wykrywana lokalnie pod `http://127.0.0.1:11434`, gdy wyrazisz zgodę przez
`OLLAMA_API_KEY`, a dołączony Plugin dostawcy dodaje Ollama bezpośrednio do
Ollama jest wykrywany lokalnie pod adresem `http://127.0.0.1:11434`, gdy włączysz go za pomocą
`OLLAMA_API_KEY`, a wbudowany Plugin dostawcy dodaje Ollama bezpośrednio do
`openclaw onboard` i selektora modeli. Zobacz [/providers/ollama](/pl/providers/ollama),
aby poznać onboarding, tryb cloud/local oraz niestandardową konfigurację.
aby poznać szczegóły wdrażania, trybu chmury/lokalnego i konfiguracji niestandardowej.
### vLLM
vLLM jest dostarczany jako dołączony Plugin dostawcy dla lokalnych/samodzielnie hostowanych
vLLM jest dostarczany jako wbudowany Plugin dostawcy dla lokalnych/samodzielnie hostowanych
serwerów zgodnych z OpenAI:
- Dostawca: `vllm`
- Uwierzytelnianie: opcjonalne (zależy od Twojego serwera)
- Uwierzytelnianie: opcjonalne (zależy od twojego serwera)
- Domyślny bazowy URL: `http://127.0.0.1:8000/v1`
Aby włączyć automatyczne wykrywanie lokalnie (dowolna wartość działa, jeśli serwer nie wymusza uwierzytelniania):
Aby włączyć automatyczne wykrywanie lokalnie (dowolna wartość zadziała, jeśli twój serwer nie wymusza uwierzytelniania):
```bash
export VLLM_API_KEY="vllm-local"
```
Następnie ustaw model (zastąp jednym z identyfikatorów zwracanych przez `/v1/models`):
Następnie ustaw model (zastąp jednym z identyfikatorów zwróconych przez `/v1/models`):
```json5
{
@ -546,21 +534,21 @@ Szczegóły znajdziesz w [/providers/vllm](/pl/providers/vllm).
### SGLang
SGLang jest dostarczany jako dołączony Plugin dostawcy dla szybkich, samodzielnie hostowanych
SGLang jest dostarczany jako wbudowany Plugin dostawcy dla szybkich, samodzielnie hostowanych
serwerów zgodnych z OpenAI:
- Dostawca: `sglang`
- Uwierzytelnianie: opcjonalne (zależy od Twojego serwera)
- Uwierzytelnianie: opcjonalne (zależy od twojego serwera)
- Domyślny bazowy URL: `http://127.0.0.1:30000/v1`
Aby włączyć automatyczne wykrywanie lokalnie (dowolna wartość działa, jeśli Twój serwer nie
Aby włączyć automatyczne wykrywanie lokalnie (dowolna wartość zadziała, jeśli twój serwer nie
wymusza uwierzytelniania):
```bash
export SGLANG_API_KEY="sglang-local"
```
Następnie ustaw model (zastąp jednym z identyfikatorów zwracanych przez `/v1/models`):
Następnie ustaw model (zastąp jednym z identyfikatorów zwróconych przez `/v1/models`):
```json5
{
@ -572,7 +560,7 @@ Następnie ustaw model (zastąp jednym z identyfikatorów zwracanych przez `/v1/
Szczegóły znajdziesz w [/providers/sglang](/pl/providers/sglang).
### Lokalne proxy (LM Studio, vLLM, LiteLLM itd.)
### Lokalne proxy (LM Studio, vLLM, LiteLLM itp.)
Przykład (zgodny z OpenAI):
@ -609,21 +597,18 @@ Przykład (zgodny z OpenAI):
Uwagi:
- Dla dostawców niestandardowych `reasoning`, `input`, `cost`, `contextWindow` i `maxTokens` są opcjonalne.
Jeśli zostaną pominięte, OpenClaw przyjmuje domyślnie:
- Dla niestandardowych dostawców `reasoning`, `input`, `cost`, `contextWindow` i `maxTokens` są opcjonalne.
Po pominięciu OpenClaw domyślnie używa:
- `reasoning: false`
- `input: ["text"]`
- `cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }`
- `contextWindow: 200000`
- `maxTokens: 8192`
- Zalecenie: ustaw jawne wartości zgodne z limitami Twojego proxy/modelu.
- Zalecane: ustaw jawne wartości zgodne z limitami twojego proxy/modelu.
- Dla `api: "openai-completions"` na nienatywnych endpointach (dowolny niepusty `baseUrl`, którego host nie jest `api.openai.com`) OpenClaw wymusza `compat.supportsDeveloperRole: false`, aby uniknąć błędów 400 dostawcy dla nieobsługiwanych ról `developer`.
- Trasy proxy zgodne z OpenAI pomijają też kształtowanie żądań specyficzne wyłącznie dla natywnego OpenAI:
brak `service_tier`, brak Responses `store`, brak wskazówek prompt-cache, brak
kształtowania payloadu reasoning-compat OpenAI i brak ukrytych nagłówków
atrybucji OpenClaw.
- Jeśli `baseUrl` jest puste/pominięte, OpenClaw zachowuje domyślne zachowanie OpenAI (które rozwiązuje się do `api.openai.com`).
- Dla bezpieczeństwa jawne `compat.supportsDeveloperRole: true` jest nadal nadpisywane na nienatywnych endpointach `openai-completions`.
- Trasy proxy zgodne z OpenAI pomijają również kształtowanie żądań specyficzne tylko dla natywnego OpenAI: brak `service_tier`, brak Responses `store`, brak wskazówek pamięci podręcznej promptów, brak kształtowania ładunku zgodnego z rozumowaniem OpenAI i brak ukrytych nagłówków atrybucji OpenClaw.
- Jeśli `baseUrl` jest pusty/pominięty, OpenClaw zachowuje domyślne działanie OpenAI (które wskazuje na `api.openai.com`).
- Dla bezpieczeństwa jawne `compat.supportsDeveloperRole: true` nadal jest nadpisywane na nienatywnych endpointach `openai-completions`.
## Przykłady CLI
@ -633,11 +618,11 @@ openclaw models set opencode/claude-opus-4-6
openclaw models list
```
Zobacz też: [/gateway/configuration](/pl/gateway/configuration), aby poznać pełne przykłady konfiguracji.
Zobacz także: [/gateway/configuration](/pl/gateway/configuration), aby uzyskać pełne przykłady konfiguracji.
## Powiązane
- [Modele](/pl/concepts/models) — konfiguracja modeli i aliasy
- [Model Failover](/pl/concepts/model-failover) — łańcuchy fallbacku i zachowanie ponawiania
- [Configuration Reference](/pl/gateway/config-agents#agent-defaults) — klucze konfiguracji modeli
- [Providers](/pl/providers) — przewodniki konfiguracji dla poszczególnych dostawców
- [Awaryjne przełączanie modeli](/pl/concepts/model-failover) — łańcuchy zapasowe i zachowanie ponawiania
- [Dokumentacja konfiguracji](/pl/gateway/config-agents#agent-defaults) — klucze konfiguracji modeli
- [Dostawcy](/pl/providers) — przewodniki konfiguracji dla poszczególnych dostawców

View File

@ -1,48 +1,48 @@
---
read_when:
- Zrozumienie projektu integracji Pi SDK w OpenClaw
- Modyfikowanie cyklu życia sesji agenta, narzędzi lub połączeń z providerami dla Pi
summary: Architektura osadzonej integracji agenta Pi w OpenClaw i cyklu życia sesji
- Zrozumienie projektu integracji SDK Pi w OpenClaw
- Modyfikowanie cyklu życia sesji agenta, narzędzi lub połączeń dostawcy dla Pi
summary: Architektura integracji osadzonego agenta Pi w OpenClaw oraz cykl życia sesji
title: Architektura integracji Pi
x-i18n:
generated_at: "2026-04-24T09:19:57Z"
generated_at: "2026-04-24T15:22:16Z"
model: gpt-5.4
provider: openai
source_hash: 3c0c490cad121a65d557a72887ea619a7d0cff34a62220752214185c9148dc0b
source_hash: 0c0b019ff6d35f6fdcd57b56edd1945e62a96bb4b34e312d7fb0c627f01287f1
source_path: pi.md
workflow: 15
---
Ten dokument opisuje, jak OpenClaw integruje się z [pi-coding-agent](https://github.com/badlogic/pi-mono/tree/main/packages/coding-agent) i pokrewnymi pakietami (`pi-ai`, `pi-agent-core`, `pi-tui`), aby realizować możliwości swojego agenta AI.
Ten dokument opisuje, jak OpenClaw integruje się z [pi-coding-agent](https://github.com/badlogic/pi-mono/tree/main/packages/coding-agent) oraz jego pakietami pokrewnymi (`pi-ai`, `pi-agent-core`, `pi-tui`), aby zapewnić możliwości agenta AI.
## Przegląd
OpenClaw używa SDK pi do osadzenia agenta kodującego AI w swojej architekturze gateway komunikatów. Zamiast uruchamiać pi jako podproces albo używać trybu RPC, OpenClaw bezpośrednio importuje i tworzy `AgentSession` pi przez `createAgentSession()`. To podejście osadzone zapewnia:
OpenClaw używa SDK pi do osadzenia agenta kodującego AI w swojej architekturze bramki komunikacyjnej. Zamiast uruchamiać pi jako podproces lub używać trybu RPC, OpenClaw bezpośrednio importuje i tworzy instancję `AgentSession` za pomocą `createAgentSession()`. To osadzone podejście zapewnia:
- pełną kontrolę nad cyklem życia sesji i obsługą zdarzeń
- niestandardowe wstrzykiwanie narzędzi (komunikacja, sandbox, działania specyficzne dla kanału)
- dostosowywanie promptu systemowego per kanał/kontekst
- trwałość sesji ze wsparciem dla branching/Compaction
- rotację profili uwierzytelniania dla wielu kont z failover
- niezależne od providera przełączanie modeli
- Pełną kontrolę nad cyklem życia sesji i obsługą zdarzeń
- Wstrzykiwanie niestandardowych narzędzi (komunikacja, sandbox, działania specyficzne dla kanału)
- Dostosowanie promptu systemowego dla każdego kanału/kontekstu
- Trwałość sesji z obsługą rozgałęziania/Compaction
- Rotację profili uwierzytelniania dla wielu kont z mechanizmem failover
- Niezależne od dostawcy przełączanie modeli
## Zależności pakietów
```json
{
"@mariozechner/pi-agent-core": "0.68.1",
"@mariozechner/pi-ai": "0.68.1",
"@mariozechner/pi-coding-agent": "0.68.1",
"@mariozechner/pi-tui": "0.68.1"
"@mariozechner/pi-agent-core": "0.70.2",
"@mariozechner/pi-ai": "0.70.2",
"@mariozechner/pi-coding-agent": "0.70.2",
"@mariozechner/pi-tui": "0.70.2"
}
```
| Pakiet | Cel |
| ----------------- | ----------------------------------------------------------------------------------------------------- |
| `pi-ai` | Podstawowe abstrakcje LLM: `Model`, `streamSimple`, typy wiadomości, API providerów |
| `pi-agent-core` | Pętla agenta, wykonywanie narzędzi, typy `AgentMessage` |
| Pakiet | Przeznaczenie |
| ----------------- | ------------------------------------------------------------------------------------------------------ |
| `pi-ai` | Podstawowe abstrakcje LLM: `Model`, `streamSimple`, typy wiadomości, API dostawców |
| `pi-agent-core` | Pętla agenta, wykonywanie narzędzi, typy `AgentMessage` |
| `pi-coding-agent` | SDK wysokiego poziomu: `createAgentSession`, `SessionManager`, `AuthStorage`, `ModelRegistry`, wbudowane narzędzia |
| `pi-tui` | Komponenty terminalowego interfejsu (używane w lokalnym trybie TUI OpenClaw) |
| `pi-tui` | Komponenty terminalowego interfejsu użytkownika (używane w lokalnym trybie TUI OpenClaw) |
## Struktura plików
@ -55,54 +55,54 @@ src/agents/
│ │ ├── attempt.ts # Logika pojedynczej próby z konfiguracją sesji
│ │ ├── params.ts # Typ RunEmbeddedPiAgentParams
│ │ ├── payloads.ts # Budowanie ładunków odpowiedzi z wyników uruchomienia
│ │ ├── images.ts # Wstrzykiwanie obrazów dla modeli vision
│ │ ├── images.ts # Wstrzykiwanie obrazów do modelu Vision
│ │ └── types.ts # EmbeddedRunAttemptResult
│ ├── abort.ts # Wykrywanie błędów przerwania
│ ├── cache-ttl.ts # Śledzenie cache TTL dla context pruning
│ ├── compact.ts # Logika ręcznego/automatycznego Compaction
│ ├── extensions.ts # Ładowanie rozszerzeń pi dla uruchomień osadzonych
│ ├── extra-params.ts # Parametry strumieniowania specyficzne dla providera
│ ├── google.ts # Poprawki kolejności tur Google/Gemini
│ ├── cache-ttl.ts # Śledzenie TTL pamięci podręcznej do przycinania kontekstu
│ ├── compact.ts # Logika ręcznej/automatycznej Compaction
│ ├── extensions.ts # Ładowanie rozszerzeń pi dla osadzonych uruchomień
│ ├── extra-params.ts # Parametry strumienia specyficzne dla dostawcy
│ ├── google.ts # Poprawki kolejności tur dla Google/Gemini
│ ├── history.ts # Ograniczanie historii (DM vs grupa)
│ ├── lanes.ts # Ścieżki poleceń sesji/globalne
│ ├── logger.ts # Logger podsystemu
│ ├── model.ts # Rozwiązywanie modelu przez ModelRegistry
│ ├── runs.ts # Śledzenie aktywnych uruchomień, abort, kolejka
│ ├── sandbox-info.ts # Informacje o sandbox dla promptu systemowego
│ ├── session-manager-cache.ts # Cache instancji SessionManager
│ ├── runs.ts # Śledzenie aktywnych uruchomień, przerwanie, kolejka
│ ├── sandbox-info.ts # Informacje o sandboxie do promptu systemowego
│ ├── session-manager-cache.ts # Buforowanie instancji SessionManager
│ ├── session-manager-init.ts # Inicjalizacja pliku sesji
│ ├── system-prompt.ts # Budowniczy promptu systemowego
│ ├── tool-split.ts # Podział narzędzi na builtIn vs custom
│ ├── system-prompt.ts # Konstruktor promptu systemowego
│ ├── tool-split.ts # Podział narzędzi na builtIn i custom
│ ├── types.ts # EmbeddedPiAgentMeta, EmbeddedPiRunResult
│ └── utils.ts # Mapowanie ThinkLevel, opis błędów
├── pi-embedded-subscribe.ts # Subskrypcja/wysyłka zdarzeń sesji
├── pi-embedded-subscribe.ts # Subskrypcja/rozsyłanie zdarzeń sesji
├── pi-embedded-subscribe.types.ts # SubscribeEmbeddedPiSessionParams
├── pi-embedded-subscribe.handlers.ts # Fabryka handlerów zdarzeń
├── pi-embedded-subscribe.handlers.ts # Fabryka obsługi zdarzeń
├── pi-embedded-subscribe.handlers.lifecycle.ts
├── pi-embedded-subscribe.handlers.types.ts
├── pi-embedded-block-chunker.ts # Fragmentacja odpowiedzi blokowych przy strumieniowaniu
├── pi-embedded-messaging.ts # Śledzenie wysłanych wiadomości przez narzędzie komunikacji
├── pi-embedded-helpers.ts # Klasyfikacja błędów, walidacja tury
├── pi-embedded-block-chunker.ts # Dzielenie strumieniowanych odpowiedzi blokowych na fragmenty
├── pi-embedded-messaging.ts # Śledzenie wysłanych przez narzędzie wiadomości
├── pi-embedded-helpers.ts # Klasyfikacja błędów, walidacja tur
├── pi-embedded-helpers/ # Moduły pomocnicze
├── pi-embedded-utils.ts # Narzędzia formatowania
├── pi-tools.ts # createOpenClawCodingTools()
├── pi-tools.abort.ts # Owijanie AbortSignal dla narzędzi
├── pi-tools.policy.ts # Zasady allowlist/denylist narzędzi
├── pi-tools.read.ts # Dostosowania narzędzia read
├── pi-tools.abort.ts # Opakowanie AbortSignal dla narzędzi
├── pi-tools.policy.ts # Polityka listy dozwolonych/zabronionych narzędzi
├── pi-tools.read.ts # Dostosowania narzędzia odczytu
├── pi-tools.schema.ts # Normalizacja schematu narzędzi
├── pi-tools.types.ts # Alias typu AnyAgentTool
├── pi-tool-definition-adapter.ts # Adapter AgentTool -> ToolDefinition
├── pi-settings.ts # Nadpisania ustawień
├── pi-hooks/ # Niestandardowe hooki pi
│ ├── compaction-safeguard.ts # Rozszerzenie safeguard
│ ├── compaction-safeguard.ts # Rozszerzenie ochronne
│ ├── compaction-safeguard-runtime.ts
│ ├── context-pruning.ts # Rozszerzenie context pruning oparte na Cache-TTL
│ ├── context-pruning.ts # Rozszerzenie przycinania kontekstu z TTL pamięci podręcznej
│ └── context-pruning/
├── model-auth.ts # Rozwiązywanie profilu auth
├── model-auth.ts # Rozwiązywanie profilu uwierzytelniania
├── auth-profiles.ts # Magazyn profili, cooldown, failover
├── model-selection.ts # Rozwiązywanie modelu domyślnego
├── model-selection.ts # Rozwiązywanie domyślnego modelu
├── models-config.ts # Generowanie models.json
├── model-catalog.ts # Cache katalogu modeli
├── model-catalog.ts # Pamięć podręczna katalogu modeli
├── context-window-guard.ts # Walidacja okna kontekstu
├── failover-error.ts # Klasa FailoverError
├── defaults.ts # DEFAULT_PROVIDER, DEFAULT_MODEL
@ -110,12 +110,12 @@ src/agents/
├── system-prompt-params.ts # Rozwiązywanie parametrów promptu systemowego
├── system-prompt-report.ts # Generowanie raportu debugowania
├── tool-summaries.ts # Podsumowania opisów narzędzi
├── tool-policy.ts # Rozwiązywanie zasad narzędzi
├── transcript-policy.ts # Zasady walidacji transkryptu
├── tool-policy.ts # Rozwiązywanie polityki narzędzi
├── transcript-policy.ts # Polityka walidacji transkryptu
├── skills.ts # Budowanie migawki/promptu Skills
├── skills/ # Podsystem Skills
├── sandbox.ts # Rozwiązywanie kontekstu sandbox
├── sandbox/ # Podsystem sandbox
├── sandbox.ts # Rozwiązywanie kontekstu sandboxa
├── sandbox/ # Podsystem sandboxa
├── channel-tools.ts # Wstrzykiwanie narzędzi specyficznych dla kanału
├── openclaw-tools.ts # Narzędzia specyficzne dla OpenClaw
├── bash-tools.ts # Narzędzia exec/process
@ -134,13 +134,12 @@ src/agents/
└── ...
```
Runtime działań wiadomości specyficznych dla kanałów znajdują się teraz w katalogach
rozszerzeń należących do Pluginów zamiast w `src/agents/tools`, na przykład:
Środowiska uruchomieniowe działań wiadomości specyficznych dla kanału znajdują się teraz w należących do pluginów katalogach rozszerzeń zamiast w `src/agents/tools`, na przykład:
- pliki runtime działań Pluginu Discord
- plik runtime działań Pluginu Slack
- plik runtime działań Pluginu Telegram
- plik runtime działań Pluginu WhatsApp
- pliki środowiska uruchomieniowego działań pluginu Discord
- plik środowiska uruchomieniowego działań pluginu Slack
- plik środowiska uruchomieniowego działań pluginu Telegram
- plik środowiska uruchomieniowego działań pluginu WhatsApp
## Główny przepływ integracji
@ -226,15 +225,15 @@ const subscription = subscribeEmbeddedPiSession({
Obsługiwane zdarzenia obejmują:
- `message_start` / `message_end` / `message_update` (strumieniowanie tekstu/thinking)
- `message_start` / `message_end` / `message_update` (strumieniowany tekst/myślenie)
- `tool_execution_start` / `tool_execution_update` / `tool_execution_end`
- `turn_start` / `turn_end`
- `agent_start` / `agent_end`
- `compaction_start` / `compaction_end`
### 4. Promptowanie
### 4. Wysyłanie promptu
Po konfiguracji sesja otrzymuje prompt:
Po konfiguracji do sesji wysyłany jest prompt:
```typescript
await session.prompt(effectivePrompt, { images: imageResult.images });
@ -242,25 +241,23 @@ await session.prompt(effectivePrompt, { images: imageResult.images });
SDK obsługuje pełną pętlę agenta: wysyłanie do LLM, wykonywanie wywołań narzędzi, strumieniowanie odpowiedzi.
Wstrzykiwanie obrazów jest lokalne dla promptu: OpenClaw ładuje referencje obrazów z bieżącego promptu i
przekazuje je przez `images` tylko dla tej tury. Nie skanuje ponownie starszych tur historii,
aby ponownie wstrzykiwać ładunki obrazów.
Wstrzykiwanie obrazów jest lokalne dla promptu: OpenClaw ładuje odwołania do obrazów z bieżącego promptu i przekazuje je przez `images` tylko dla tej tury. Nie skanuje ponownie starszych tur historii, aby ponownie wstrzykiwać ładunki obrazów.
## Architektura narzędzi
### Potok narzędzi
1. **Narzędzia bazowe**: `codingTools` z pi (read, bash, edit, write)
2. **Niestandardowe zamienniki**: OpenClaw zastępuje bash przez `exec`/`process`, dostosowuje read/edit/write dla sandbox
3. **Narzędzia OpenClaw**: komunikacja, browser, canvas, sessions, cron, gateway itd.
4. **Narzędzia kanałowe**: narzędzia działań specyficzne dla Discord/Telegram/Slack/WhatsApp
5. **Filtrowanie zasad**: narzędzia filtrowane przez profile, providera, agenta, grupę i zasady sandbox
6. **Normalizacja schematu**: schematy czyszczone pod niuanse Gemini/OpenAI
7. **Owijanie AbortSignal**: narzędzia owijane tak, aby respektowały sygnały abort
1. **Narzędzia bazowe**: `codingTools` z pi (`read`, `bash`, `edit`, `write`)
2. **Niestandardowe zamienniki**: OpenClaw zastępuje bash przez `exec`/`process`, dostosowuje read/edit/write do sandboxa
3. **Narzędzia OpenClaw**: komunikacja, przeglądarka, canvas, sesje, Cron, Gateway itd.
4. **Narzędzia kanałów**: narzędzia działań specyficzne dla Discord/Telegram/Slack/WhatsApp
5. **Filtrowanie politykami**: narzędzia filtrowane według polityk profilu, dostawcy, agenta, grupy i sandboxa
6. **Normalizacja schematu**: schematy czyszczone pod kątem specyfiki Gemini/OpenAI
7. **Opakowanie AbortSignal**: narzędzia opakowywane tak, aby respektowały sygnały przerwania
### Adapter definicji narzędzia
### Adapter definicji narzędzi
`AgentTool` z pi-agent-core ma inną sygnaturę `execute` niż `ToolDefinition` z pi-coding-agent. Adapter w `pi-tool-definition-adapter.ts` łączy te światy:
`AgentTool` z pi-agent-core ma inną sygnaturę `execute` niż `ToolDefinition` z pi-coding-agent. Adapter w `pi-tool-definition-adapter.ts` łączy te dwa interfejsy:
```typescript
export function toToolDefinitions(tools: AnyAgentTool[]): ToolDefinition[] {
@ -290,11 +287,11 @@ export function splitSdkTools(options: { tools: AnyAgentTool[]; sandboxEnabled:
}
```
Dzięki temu filtrowanie zasad OpenClaw, integracja z sandbox i rozszerzony zestaw narzędzi pozostają spójne między providerami.
Zapewnia to spójność filtrowania polityk, integracji sandboxa i rozszerzonego zestawu narzędzi OpenClaw u wszystkich dostawców.
## Budowanie promptu systemowego
Prompt systemowy jest budowany w `buildAgentSystemPrompt()` (`system-prompt.ts`). Składa pełny prompt z sekcjami obejmującymi Tooling, Tool Call Style, zabezpieczenia Safety, dokumentację CLI OpenClaw, Skills, Docs, Workspace, Sandbox, Messaging, Reply Tags, Voice, Silent Replies, Heartbeats, metadane Runtime, a także Memory i Reactions, gdy są włączone, oraz opcjonalne pliki kontekstowe i dodatkową treść promptu systemowego. Sekcje są przycinane dla minimalnego trybu promptu używanego przez subagentów.
Prompt systemowy jest budowany w `buildAgentSystemPrompt()` (`system-prompt.ts`). Składa on pełny prompt z sekcjami obejmującymi Tooling, Tool Call Style, zabezpieczenia Safety, dokumentację referencyjną CLI OpenClaw, Skills, Docs, Workspace, Sandbox, Messaging, Reply Tags, Voice, Silent Replies, Heartbeats, metadane środowiska uruchomieniowego, a także Memory i Reactions, gdy są włączone, oraz opcjonalne pliki kontekstowe i dodatkową zawartość promptu systemowego. Sekcje są przycinane dla minimalnego trybu promptu używanego przez subagentów.
Prompt jest stosowany po utworzeniu sesji przez `applySystemPromptOverrideToSession()`:
@ -303,21 +300,21 @@ const systemPromptOverride = createSystemPromptOverride(appendPrompt);
applySystemPromptOverrideToSession(session, systemPromptOverride);
```
## Zarządzanie sesją
## Zarządzanie sesjami
### Pliki sesji
Sesje to pliki JSONL o strukturze drzewa (łączenie przez id/parentId). Trwałość obsługuje `SessionManager` z Pi:
Sesje to pliki JSONL o strukturze drzewa (powiązanie przez id/parentId). Za trwałość odpowiada `SessionManager` z Pi:
```typescript
const sessionManager = SessionManager.open(params.sessionFile);
```
OpenClaw owija to przez `guardSessionManager()` dla bezpieczeństwa wyników narzędzi.
OpenClaw opakowuje to za pomocą `guardSessionManager()` dla bezpieczeństwa wyników narzędzi.
### Cache sesji
### Buforowanie sesji
`session-manager-cache.ts` przechowuje instancje SessionManager w cache, aby uniknąć wielokrotnego parsowania plików:
`session-manager-cache.ts` buforuje instancje SessionManager, aby uniknąć wielokrotnego parsowania plików:
```typescript
await prewarmSessionFile(params.sessionFile);
@ -331,11 +328,12 @@ trackSessionManagerAccess(params.sessionFile);
### Compaction
Automatyczny Compaction uruchamia się przy przepełnieniu kontekstu. Typowe sygnatury przepełnienia
obejmują `request_too_large`, `context length exceeded`, `input exceeds the
Automatyczna Compaction uruchamia się przy przepełnieniu kontekstu. Typowe sygnatury przepełnienia obejmują
`request_too_large`, `context length exceeded`, `input exceeds the
maximum number of tokens`, `input token count exceeds the maximum number of
input tokens`, `input is too long for the model` oraz `ollama error: context
length exceeded`. Ręczny Compaction obsługuje `compactEmbeddedPiSessionDirect()`:
length exceeded`. `compactEmbeddedPiSessionDirect()` obsługuje ręczną
Compaction:
```typescript
const compactResult = await compactEmbeddedPiSessionDirect({
@ -343,25 +341,25 @@ const compactResult = await compactEmbeddedPiSessionDirect({
});
```
## Uwierzytelnianie i rozwiązywanie modelu
## Uwierzytelnianie i rozwiązywanie modeli
### Profile auth
### Profile uwierzytelniania
OpenClaw utrzymuje magazyn profili auth z wieloma kluczami API na providera:
OpenClaw utrzymuje magazyn profili uwierzytelniania z wieloma kluczami API dla każdego dostawcy:
```typescript
const authStore = ensureAuthProfileStore(agentDir, { allowKeychainPrompt: false });
const profileOrder = resolveAuthProfileOrder({ cfg, store: authStore, provider, preferredProfile });
```
Profile rotują przy błędach z użyciem śledzenia cooldown:
Profile są rotowane po błędach z użyciem śledzenia cooldown:
```typescript
await markAuthProfileFailure({ store, profileId, reason, cfg, agentDir });
const rotated = await advanceAuthProfile();
```
### Rozwiązywanie modelu
### Rozwiązywanie modeli
```typescript
import { resolveModel } from "./pi-embedded-runner/model.js";
@ -379,7 +377,7 @@ authStorage.setRuntimeApiKey(model.provider, apiKeyInfo.apiKey);
### Failover
`FailoverError` uruchamia fallback modelu, gdy jest skonfigurowany:
`FailoverError` wyzwala przełączenie na model zapasowy, gdy jest skonfigurowane:
```typescript
if (fallbackConfigured && isFailoverErrorMessage(errorText)) {
@ -395,9 +393,9 @@ if (fallbackConfigured && isFailoverErrorMessage(errorText)) {
## Rozszerzenia Pi
OpenClaw ładuje niestandardowe rozszerzenia Pi dla wyspecjalizowanego zachowania:
OpenClaw ładuje niestandardowe rozszerzenia Pi dla wyspecjalizowanych zachowań:
### Compaction Safeguard
### Ochrona Compaction
`src/agents/pi-hooks/compaction-safeguard.ts` dodaje zabezpieczenia do Compaction, w tym adaptacyjne budżetowanie tokenów oraz podsumowania błędów narzędzi i operacji na plikach:
@ -408,9 +406,9 @@ if (resolveCompactionMode(params.cfg) === "safeguard") {
}
```
### Context Pruning
### Przycinanie kontekstu
`src/agents/pi-hooks/context-pruning.ts` implementuje context pruning oparty na Cache-TTL:
`src/agents/pi-hooks/context-pruning.ts` implementuje przycinanie kontekstu oparte na TTL pamięci podręcznej:
```typescript
if (cfg?.agents?.defaults?.contextPruning?.mode === "cache-ttl") {
@ -426,22 +424,22 @@ if (cfg?.agents?.defaults?.contextPruning?.mode === "cache-ttl") {
## Strumieniowanie i odpowiedzi blokowe
### Fragmentacja bloków
### Dzielenie na bloki
`EmbeddedBlockChunker` zarządza strumieniowaniem tekstu do dyskretnych bloków odpowiedzi:
`EmbeddedBlockChunker` zarządza dzieleniem strumieniowanego tekstu na odrębne bloki odpowiedzi:
```typescript
const blockChunker = blockChunking ? new EmbeddedBlockChunker(blockChunking) : null;
```
### Usuwanie tagów Thinking/Final
### Usuwanie tagów myślenia/finału
Wyjście strumieniowe jest przetwarzane w celu usunięcia bloków `<think>`/`<thinking>` i wyodrębnienia treści `<final>`:
Wyjście strumieniowane jest przetwarzane w celu usunięcia bloków `<think>`/`<thinking>` i wyodrębnienia zawartości `<final>`:
```typescript
const stripBlockTags = (text: string, state: { thinking: boolean; final: boolean }) => {
// Usuń treść <think>...</think>
// Jeśli enforceFinalTag, zwróć tylko treść <final>...</final>
// Usuń zawartość <think>...</think>
// Jeśli enforceFinalTag, zwróć tylko zawartość <final>...</final>
};
```
@ -457,20 +455,20 @@ const { text: cleanedText, mediaUrls, audioAsVoice, replyToId } = consumeReplyDi
### Klasyfikacja błędów
`pi-embedded-helpers.ts` klasyfikuje błędy do odpowiedniego przetwarzania:
`pi-embedded-helpers.ts` klasyfikuje błędy w celu odpowiedniej obsługi:
```typescript
isContextOverflowError(errorText) // Zbyt duży kontekst
isCompactionFailureError(errorText) // Nieudany Compaction
isAuthAssistantError(lastAssistant) // Błąd auth
isCompactionFailureError(errorText) // Compaction nie powiodła się
isAuthAssistantError(lastAssistant) // Błąd uwierzytelniania
isRateLimitAssistantError(...) // Ograniczenie szybkości
isFailoverAssistantError(...) // Należy uruchomić failover
isFailoverAssistantError(...) // Należy wykonać failover
classifyFailoverReason(errorText) // "auth" | "rate_limit" | "quota" | "timeout" | ...
```
### Fallback poziomu Thinking
### Awaryjny poziom myślenia
Jeśli poziom thinking nie jest obsługiwany, następuje fallback:
Jeśli poziom myślenia nie jest obsługiwany, następuje przełączenie awaryjne:
```typescript
const fallbackThinking = pickFallbackThinkingLevel({
@ -483,9 +481,9 @@ if (fallbackThinking) {
}
```
## Integracja z sandbox
## Integracja sandboxa
Gdy włączony jest tryb sandbox, narzędzia i ścieżki są ograniczane:
Gdy tryb sandboxa jest włączony, narzędzia i ścieżki są ograniczane:
```typescript
const sandbox = await resolveSandboxContext({
@ -495,65 +493,65 @@ const sandbox = await resolveSandboxContext({
});
if (sandboxRoot) {
// Użyj narzędzi read/edit/write w sandbox
// Używaj narzędzi read/edit/write w sandboxie
// Exec działa w kontenerze
// Browser używa adresu bridge
// Browser używa adresu URL mostka
}
```
## Obsługa specyficzna dla providera
## Obsługa specyficzna dla dostawcy
### Anthropic
- Czyszczenie magicznych ciągów odmowy
- Usuwanie magicznego ciągu odmowy
- Walidacja tur dla kolejnych ról
- Ścisła walidacja parametrów narzędzi Pi po stronie upstream
### Google/Gemini
- Sanitizacja schematu narzędzi należąca do Pluginu
- Oczyszczanie schematu narzędzi należących do pluginów
### OpenAI
- narzędzie `apply_patch` dla modeli Codex
- obsługa obniżania poziomu thinking
- Narzędzie `apply_patch` dla modeli Codex
- Obsługa obniżenia poziomu myślenia
## Integracja TUI
OpenClaw ma również lokalny tryb TUI, który bezpośrednio używa komponentów pi-tui:
OpenClaw ma także lokalny tryb TUI, który bezpośrednio używa komponentów pi-tui:
```typescript
// src/tui/tui.ts
import { ... } from "@mariozechner/pi-tui";
```
Zapewnia to interaktywne doświadczenie terminalowe podobne do natywnego trybu Pi.
Zapewnia to interaktywne środowisko terminalowe podobne do natywnego trybu Pi.
## Kluczowe różnice względem Pi CLI
## Kluczowe różnice względem CLI Pi
| Aspekt | Pi CLI | OpenClaw Embedded |
| ---------------- | ----------------------- | ---------------------------------------------------------------------------------------------- |
| Wywołanie | polecenie `pi` / RPC | SDK przez `createAgentSession()` |
| Narzędzia | domyślne narzędzia coding | niestandardowy zestaw narzędzi OpenClaw |
| Prompt systemowy | AGENTS.md + prompty | dynamiczny per kanał/kontekst |
| Przechowywanie sesji | `~/.pi/agent/sessions/` | `~/.openclaw/agents/<agentId>/sessions/` (albo `$OPENCLAW_STATE_DIR/agents/<agentId>/sessions/`) |
| Auth | pojedyncze poświadczenie | wiele profili z rotacją |
| Rozszerzenia | ładowane z dysku | ścieżki programistyczne + dyskowe |
| Obsługa zdarzeń | renderowanie TUI | oparta na callbackach (`onBlockReply` itd.) |
| Aspekt | CLI Pi | Osadzony OpenClaw |
| --------------- | ----------------------- | ------------------------------------------------------------------------------------------------ |
| Wywołanie | polecenie `pi` / RPC | SDK przez `createAgentSession()` |
| Narzędzia | Domyślne narzędzia kodowania | Niestandardowy zestaw narzędzi OpenClaw |
| Prompt systemowy| AGENTS.md + prompty | Dynamiczny dla kanału/kontekstu |
| Przechowywanie sesji | `~/.pi/agent/sessions/` | `~/.openclaw/agents/<agentId>/sessions/` (lub `$OPENCLAW_STATE_DIR/agents/<agentId>/sessions/`) |
| Uwierzytelnianie| Pojedyncze poświadczenie | Wiele profili z rotacją |
| Rozszerzenia | Ładowane z dysku | Programowo + ścieżki dyskowe |
| Obsługa zdarzeń | Renderowanie TUI | Oparta na callbackach (`onBlockReply` itd.) |
## Przyszłe kwestie do rozważenia
## Przyszłe rozważania
Obszary potencjalnych przeróbek:
Obszary potencjalnej przebudowy:
1. **Dopasowanie sygnatur narzędzi**: obecnie zachodzi adaptacja pomiędzy sygnaturami pi-agent-core i pi-coding-agent
2. **Owijanie session manager**: `guardSessionManager` dodaje bezpieczeństwo, ale zwiększa złożoność
3. **Ładowanie rozszerzeń**: można by używać `ResourceLoader` z Pi bardziej bezpośrednio
1. **Dopasowanie sygnatur narzędzi**: Obecnie trwa adaptacja między sygnaturami pi-agent-core i pi-coding-agent
2. **Opakowanie menedżera sesji**: `guardSessionManager` zwiększa bezpieczeństwo, ale podnosi złożoność
3. **Ładowanie rozszerzeń**: Można byłoby bardziej bezpośrednio używać `ResourceLoader` z Pi
4. **Złożoność obsługi strumieniowania**: `subscribeEmbeddedPiSession` znacznie się rozrosło
5. **Niuanse providerów**: wiele ścieżek kodu specyficznych dla providerów, które potencjalnie mogłoby obsłużyć samo Pi
5. **Specyfika dostawców**: Wiele ścieżek kodu specyficznych dla dostawcy, które Pi mogłoby potencjalnie obsługiwać
## Testy
Pokrycie integracji Pi obejmuje te zestawy:
Pokrycie integracji Pi obejmuje następujące zestawy:
- `src/agents/pi-*.test.ts`
- `src/agents/pi-auth-json.test.ts`
@ -567,13 +565,13 @@ Pokrycie integracji Pi obejmuje te zestawy:
- `src/agents/pi-settings.test.ts`
- `src/agents/pi-hooks/**/*.test.ts`
Live/opt-in:
Na żywo/opcjonalnie:
- `src/agents/pi-embedded-runner-extraparams.live.test.ts` (włącz przez `OPENCLAW_LIVE_TEST=1`)
- `src/agents/pi-embedded-runner-extraparams.live.test.ts` (włącz `OPENCLAW_LIVE_TEST=1`)
Aktualne polecenia uruchamiania znajdziesz w [Pi Development Workflow](/pl/pi-dev).
Aktualne polecenia uruchamiania znajdziesz w [Przepływ pracy programistycznej Pi](/pl/pi-dev).
## Powiązane
- [Pi development workflow](/pl/pi-dev)
- [Przepływ pracy programistycznej Pi](/pl/pi-dev)
- [Przegląd instalacji](/pl/install)

View File

@ -1,39 +1,39 @@
---
read_when:
- Chcesz używać DeepSeek z OpenClaw
- Potrzebujesz zmiennej środowiskowej klucza API lub opcji uwierzytelniania CLI
- Potrzebujesz zmiennej środowiskowej klucza API lub opcji uwierzytelniania w CLI
summary: Konfiguracja DeepSeek (uwierzytelnianie + wybór modelu)
title: DeepSeek
x-i18n:
generated_at: "2026-04-24T09:27:11Z"
generated_at: "2026-04-24T15:22:15Z"
model: gpt-5.4
provider: openai
source_hash: ead407c67c05bd8700db1cba36defdd9d47bdc9a071c76a07c4b4fb82f6b80e2
source_hash: 5b0d2345c72328e14351d71c5784204dc6ed9dc922f919b6adfac394001c3261
source_path: providers/deepseek.md
workflow: 15
---
[DeepSeek](https://www.deepseek.com) udostępnia wydajne modele AI z interfejsem API zgodnym z OpenAI.
[DeepSeek](https://www.deepseek.com) udostępnia zaawansowane modele AI z API zgodnym z OpenAI.
| Właściwość | Wartość |
| ---------- | -------------------------- |
| Dostawca | `deepseek` |
| Uwierzytelnianie | `DEEPSEEK_API_KEY` |
| API | Zgodne z OpenAI |
| Base URL | `https://api.deepseek.com` |
| -------- | -------------------------- |
| Dostawca | `deepseek` |
| Uwierzytelnianie | `DEEPSEEK_API_KEY` |
| API | zgodne z OpenAI |
| Bazowy URL | `https://api.deepseek.com` |
## Pierwsze kroki
<Steps>
<Step title="Uzyskaj klucz API">
Utwórz klucz API na stronie [platform.deepseek.com](https://platform.deepseek.com/api_keys).
<Step title="Pobierz swój klucz API">
Utwórz klucz API na [platform.deepseek.com](https://platform.deepseek.com/api_keys).
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice deepseek-api-key
```
Spowoduje to wyświetlenie prośby o podanie klucza API i ustawienie `deepseek/deepseek-chat` jako modelu domyślnego.
To poprosi o podanie klucza API i ustawi `deepseek/deepseek-v4-flash` jako model domyślny.
</Step>
<Step title="Sprawdź, czy modele są dostępne">
@ -45,7 +45,7 @@ x-i18n:
<AccordionGroup>
<Accordion title="Konfiguracja nieinteraktywna">
W przypadku instalacji skryptowych lub bezowych przekaż wszystkie flagi bezpośrednio:
W przypadku instalacji skryptowych lub bezobsługowych przekaż wszystkie flagi bezpośrednio:
```bash
openclaw onboard --non-interactive \
@ -61,19 +61,23 @@ x-i18n:
<Warning>
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `DEEPSEEK_API_KEY`
jest dostępne dla tego procesu (na przykład w `~/.openclaw/.env` lub przez
jest dostępne dla tego procesu (na przykład w `~/.openclaw/.env` albo przez
`env.shellEnv`).
</Warning>
## Wbudowany katalog
| Odwołanie do modelu | Nazwa | Wejście | Kontekst | Maks. wynik | Uwagi |
| --------------------------- | ------------------ | ------- | -------- | ----------- | -------------------------------------------------- |
| `deepseek/deepseek-chat` | DeepSeek Chat | text | 131,072 | 8,192 | Model domyślny; powierzchnia bez myślenia DeepSeek V3.2 |
| `deepseek/deepseek-reasoner` | DeepSeek Reasoner | text | 131,072 | 65,536 | Powierzchnia DeepSeek V3.2 z obsługą rozumowania |
| Odniesienie modelu | Nazwa | Wejście | Kontekst | Maks. wyjście | Uwagi |
| ---------------------------- | ----------------- | ----- | --------- | ---------- | ------------------------------------------ |
| `deepseek/deepseek-v4-flash` | DeepSeek V4 Flash | text | 1,000,000 | 384,000 | Model domyślny; powierzchnia V4 z obsługą myślenia |
| `deepseek/deepseek-v4-pro` | DeepSeek V4 Pro | text | 1,000,000 | 384,000 | Powierzchnia V4 z obsługą myślenia |
| `deepseek/deepseek-chat` | DeepSeek Chat | text | 131,072 | 8,192 | Powierzchnia DeepSeek V3.2 bez myślenia |
| `deepseek/deepseek-reasoner` | DeepSeek Reasoner | text | 131,072 | 65,536 | Powierzchnia V3.2 z włączonym rozumowaniem |
<Tip>
Oba dołączone modele obecnie deklarują w źródle zgodność z użyciem streamingu.
Modele V4 obsługują kontrolkę `thinking` DeepSeek. OpenClaw odtwarza też
`reasoning_content` DeepSeek w kolejnych turach, dzięki czemu sesje myślenia z wywołaniami narzędzi
mogą być kontynuowane.
</Tip>
## Przykład konfiguracji
@ -83,7 +87,7 @@ Oba dołączone modele obecnie deklarują w źródle zgodność z użyciem strea
env: { DEEPSEEK_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "deepseek/deepseek-chat" },
model: { primary: "deepseek/deepseek-v4-flash" },
},
},
}
@ -93,9 +97,9 @@ Oba dołączone modele obecnie deklarują w źródle zgodność z użyciem strea
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybieranie dostawców, odwołań do modeli i zachowania failover.
Wybór dostawców, odniesień modeli i zachowania przełączania awaryjnego.
</Card>
<Card title="Informacje o konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełne informacje o konfiguracji agentów, modeli i dostawców.
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełna dokumentacja konfiguracji agentów, modeli i dostawców.
</Card>
</CardGroup>

View File

@ -1,24 +1,24 @@
---
read_when:
- Instalowanie lub konfigurowanie Pluginów
- Zrozumienie reguł wykrywania i ładowania Pluginów
- Praca z pakietami Pluginów zgodnymi z Codex/Claude
- Instalowanie lub konfigurowanie pluginów
- Zrozumienie zasad wykrywania i ładowania pluginów
- Praca z pakietami pluginów zgodnymi z Codex/Claude
sidebarTitle: Install and Configure
summary: Instalacja, konfiguracja i zarządzanie Pluginami OpenClaw
summary: Instaluj, konfiguruj i zarządzaj pluginami OpenClaw
title: Pluginy
x-i18n:
generated_at: "2026-04-24T09:37:38Z"
generated_at: "2026-04-24T15:22:20Z"
model: gpt-5.4
provider: openai
source_hash: 83ab1218d6677ad518a4991ca546d55eed9648e1fa92b76b7433ecd5df569e28
source_hash: 947bb7ffc13280fd63f79bb68cb18a37c6614144b91a83afd38e5ac3c5187aed
source_path: tools/plugin.md
workflow: 15
---
Pluginy rozszerzają OpenClaw o nowe możliwości: kanały, providery modeli,
harnessy agentów, narzędzia, Skills, mowę, transkrypcję realtime, głos realtime,
rozumienie mediów, generowanie obrazów, generowanie wideo, web fetch, web
search i inne. Niektóre pluginy są **core** (dostarczane z OpenClaw), a inne
Pluginy rozszerzają OpenClaw o nowe możliwości: kanały, dostawców modeli,
agent harnesses, narzędzia, Skills, mowę, transkrypcję w czasie rzeczywistym, głos
w czasie rzeczywistym, rozumienie mediów, generowanie obrazów, generowanie
wideo, pobieranie z sieci, wyszukiwanie w sieci i nie tylko. Niektóre pluginy są **core** (dostarczane z OpenClaw), a inne
**zewnętrzne** (publikowane w npm przez społeczność).
## Szybki start
@ -30,7 +30,7 @@ są **zewnętrzne** (publikowane w npm przez społeczność).
```
</Step>
<Step title="Zainstaluj Plugin">
<Step title="Zainstaluj plugin">
```bash
# Z npm
openclaw plugins install @openclaw/voice-call
@ -61,51 +61,51 @@ Jeśli wolisz sterowanie natywne dla czatu, włącz `commands.plugins: true` i u
```
Ścieżka instalacji używa tego samego resolvera co CLI: lokalna ścieżka/archiwum, jawne
`clawhub:<pkg>` albo zwykła specyfikacja pakietu (najpierw ClawHub, potem fallback do npm).
`clawhub:<pkg>` lub zwykła specyfikacja pakietu (najpierw ClawHub, potem fallback do npm).
Jeśli konfiguracja jest nieprawidłowa, instalacja zwykle kończy się bezpieczną odmową i wskazuje
`openclaw doctor --fix`. Jedynym wyjątkiem odzyskiwania jest wąska ścieżka ponownej instalacji dołączonego Pluginu
dla pluginów, które włączają
`openclaw doctor --fix`. Jedynym wyjątkiem odzyskiwania jest wąska ścieżka
ponownej instalacji pluginu dostarczanego w pakiecie dla pluginów, które korzystają z
`openclaw.install.allowInvalidConfigRecovery`.
Spakowane instalacje OpenClaw nie instalują z wyprzedzeniem całego drzewa zależności runtime każdego dołączonego pluginu.
Gdy dołączony Plugin należący do OpenClaw jest aktywny na podstawie konfiguracji pluginu,
starszej konfiguracji kanału lub manifestu włączonego domyślnie, uruchomienie
naprawia tylko zadeklarowane zależności runtime tego pluginu przed jego zaimportowaniem.
Zewnętrzne pluginy i własne ścieżki ładowania nadal muszą być instalowane przez
Instalacje OpenClaw dostarczane jako pakiet nie instalują od razu całego drzewa zależności
uruchomieniowych każdego dołączonego pluginu. Gdy dołączony plugin należący do OpenClaw jest aktywny przez
konfigurację pluginu, starszą konfigurację kanału lub manifest domyślnie włączony,
uruchamianie naprawia tylko zadeklarowane zależności uruchomieniowe tego pluginu przed jego importem.
Zewnętrzne pluginy i niestandardowe ścieżki ładowania nadal muszą być instalowane przez
`openclaw plugins install`.
## Typy Pluginów
## Typy pluginów
OpenClaw rozpoznaje dwa formaty Pluginów:
OpenClaw rozpoznaje dwa formaty pluginów:
| Format | Jak działa | Przykłady |
| ---------- | ---------------------------------------------------------------- | ------------------------------------------------------ |
| **Natywny** | `openclaw.plugin.json` + moduł runtime; wykonywany w procesie | Oficjalne Pluginy, pakiety npm społeczności |
| **Bundle** | Układ zgodny z Codex/Claude/Cursor; mapowany na funkcje OpenClaw | `.codex-plugin/`, `.claude-plugin/`, `.cursor-plugin/` |
| Format | Jak to działa | Przykłady |
| ---------- | ------------------------------------------------------------------ | ------------------------------------------------------ |
| **Native** | `openclaw.plugin.json` + moduł uruchomieniowy; wykonuje się w procesie | Oficjalne pluginy, pakiety npm społeczności |
| **Bundle** | Układ zgodny z Codex/Claude/Cursor; mapowany na funkcje OpenClaw | `.codex-plugin/`, `.claude-plugin/`, `.cursor-plugin/` |
Oba pojawiają się w `openclaw plugins list`. Szczegóły bundle znajdziesz w [Plugin Bundles](/pl/plugins/bundles).
Oba pojawiają się w `openclaw plugins list`. Zobacz [Plugin Bundles](/pl/plugins/bundles), aby poznać szczegóły pakietów.
Jeśli piszesz natywny Plugin, zacznij od [Building Plugins](/pl/plugins/building-plugins)
i [Plugin SDK Overview](/pl/plugins/sdk-overview).
Jeśli piszesz natywny plugin, zacznij od [Building Plugins](/pl/plugins/building-plugins)
oraz [Plugin SDK Overview](/pl/plugins/sdk-overview).
## Oficjalne Pluginy
## Oficjalne pluginy
### Instalowalne (npm)
| Plugin | Pakiet | Dokumentacja |
| --------------- | ---------------------- | ------------------------------------ |
| Matrix | `@openclaw/matrix` | [Matrix](/pl/channels/matrix) |
| Plugin | Pakiet | Dokumentacja |
| --------------- | ---------------------- | ----------------------------------- |
| Matrix | `@openclaw/matrix` | [Matrix](/pl/channels/matrix) |
| Microsoft Teams | `@openclaw/msteams` | [Microsoft Teams](/pl/channels/msteams) |
| Nostr | `@openclaw/nostr` | [Nostr](/pl/channels/nostr) |
| Voice Call | `@openclaw/voice-call` | [Voice Call](/pl/plugins/voice-call) |
| Zalo | `@openclaw/zalo` | [Zalo](/pl/channels/zalo) |
| Zalo Personal | `@openclaw/zalouser` | [Zalo Personal](/pl/plugins/zalouser) |
| Nostr | `@openclaw/nostr` | [Nostr](/pl/channels/nostr) |
| Voice Call | `@openclaw/voice-call` | [Voice Call](/pl/plugins/voice-call) |
| Zalo | `@openclaw/zalo` | [Zalo](/pl/channels/zalo) |
| Zalo Personal | `@openclaw/zalouser` | [Zalo Personal](/pl/plugins/zalouser) |
### Core (dostarczane z OpenClaw)
<AccordionGroup>
<Accordion title="Providery modeli (włączone domyślnie)">
<Accordion title="Dostawcy modeli (domyślnie włączeni)">
`anthropic`, `byteplus`, `cloudflare-ai-gateway`, `github-copilot`, `google`,
`huggingface`, `kilocode`, `kimi-coding`, `minimax`, `mistral`, `qwen`,
`moonshot`, `nvidia`, `openai`, `opencode`, `opencode-go`, `openrouter`,
@ -118,17 +118,17 @@ i [Plugin SDK Overview](/pl/plugins/sdk-overview).
- `memory-lancedb` — instalowana na żądanie pamięć długoterminowa z automatycznym przywoływaniem/przechwytywaniem (ustaw `plugins.slots.memory = "memory-lancedb"`)
</Accordion>
<Accordion title="Providery mowy (włączone domyślnie)">
<Accordion title="Dostawcy mowy (domyślnie włączeni)">
`elevenlabs`, `microsoft`
</Accordion>
<Accordion title="Inne">
- `browser` — dołączony Plugin przeglądarki dla narzędzia browser, CLI `openclaw browser`, metody gateway `browser.request`, runtime przeglądarki i domyślnej usługi sterowania przeglądarką (włączony domyślnie; wyłącz go przed zastąpieniem)
- `browser` — dołączony plugin przeglądarki dla narzędzia browser, CLI `openclaw browser`, metody Gateway `browser.request`, środowiska uruchomieniowego przeglądarki i domyślnej usługi sterowania przeglądarką (domyślnie włączony; wyłącz go przed zastąpieniem)
- `copilot-proxy` — most VS Code Copilot Proxy (domyślnie wyłączony)
</Accordion>
</AccordionGroup>
Szukasz Pluginów firm trzecich? Zobacz [Community Plugins](/pl/plugins/community).
Szukasz pluginów firm trzecich? Zobacz [Community Plugins](/pl/plugins/community).
## Konfiguracja
@ -149,70 +149,103 @@ Szukasz Pluginów firm trzecich? Zobacz [Community Plugins](/pl/plugins/communit
| Pole | Opis |
| ---------------- | --------------------------------------------------------- |
| `enabled` | Główny przełącznik (domyślnie: `true`) |
| `allow` | Lista dozwolonych Pluginów (opcjonalnie) |
| `deny` | Lista zablokowanych Pluginów (opcjonalnie; deny ma pierwszeństwo) |
| `load.paths` | Dodatkowe pliki/katalogi Pluginów |
| `allow` | Lista dozwolonych pluginów (opcjonalnie) |
| `deny` | Lista zablokowanych pluginów (opcjonalnie; `deny` wygrywa) |
| `load.paths` | Dodatkowe pliki/katalogi pluginów |
| `slots` | Selektory wyłącznych slotów (np. `memory`, `contextEngine`) |
| `entries.\<id\>` | Przełączniki i konfiguracja per Plugin |
| `entries.\<id\>` | Przełączniki i konfiguracja dla poszczególnych pluginów |
Zmiany konfiguracji **wymagają restartu gateway**. Jeśli Gateway działa z obserwacją konfiguracji
i włączonym restartem w procesie (domyślna ścieżka `openclaw gateway`), ten
restart zwykle jest wykonywany automatycznie chwilę po zapisaniu konfiguracji.
Zmiany konfiguracji **wymagają ponownego uruchomienia Gateway**. Jeśli Gateway działa z
obserwowaniem konfiguracji i włączonym restartem w procesie (domyślna ścieżka `openclaw gateway`),
to ponowne uruchomienie jest zwykle wykonywane automatycznie chwilę po zapisaniu konfiguracji.
Nie ma obsługiwanej ścieżki hot-reload dla natywnego kodu uruchomieniowego pluginów ani hooków
cyklu życia; uruchom ponownie proces Gateway, który obsługuje aktywny kanał, zanim
zaczniesz oczekiwać, że zaktualizowany kod `register(api)`, hooki `api.on(...)`, narzędzia, usługi lub
hooki dostawcy/środowiska uruchomieniowego zaczną działać.
<Accordion title="Stany Pluginu: disabled vs missing vs invalid">
- **Disabled**: plugin istnieje, ale reguły włączania go wyłączyły. Konfiguracja zostaje zachowana.
- **Missing**: konfiguracja odwołuje się do identyfikatora pluginu, którego wykrywanie nie znalazło.
- **Invalid**: plugin istnieje, ale jego konfiguracja nie pasuje do zadeklarowanego schematu.
`openclaw plugins list` to lokalny snapshot CLI/konfiguracji. Plugin oznaczony tam jako `loaded`
oznacza, że plugin można wykryć i załadować z konfiguracji/plików widocznych dla
tego wywołania CLI. Nie dowodzi to, że już działający zdalny proces potomny Gateway
został ponownie uruchomiony do tego samego kodu pluginu. W konfiguracjach VPS/kontenerów z procesami
opakowującymi wysyłaj restarty do właściwego procesu `openclaw gateway run` lub użyj
`openclaw gateway restart` wobec działającego Gateway.
<Accordion title="Stany pluginu: wyłączony vs brakujący vs nieprawidłowy">
- **Wyłączony**: plugin istnieje, ale reguły włączania go wyłączyły. Konfiguracja jest zachowywana.
- **Brakujący**: konfiguracja odwołuje się do identyfikatora pluginu, którego wykrywanie nie znalazło.
- **Nieprawidłowy**: plugin istnieje, ale jego konfiguracja nie odpowiada zadeklarowanemu schematowi.
</Accordion>
## Wykrywanie i priorytet
## Wykrywanie i pierwszeństwo
OpenClaw skanuje Pluginy w tej kolejności (pierwsze dopasowanie wygrywa):
OpenClaw skanuje pluginy w tej kolejności (pierwsze dopasowanie wygrywa):
<Steps>
<Step title="Ścieżki konfiguracji">
`plugins.load.paths` — jawne ścieżki plików lub katalogów.
`plugins.load.paths` — jawne ścieżki do pliku lub katalogu.
</Step>
<Step title="Pluginy workspace">
`\<workspace\>/.openclaw/<plugin-root>/*.ts` i `\<workspace\>/.openclaw/<plugin-root>/*/index.ts`.
</Step>
<Step title="Globalne Pluginy">
<Step title="Globalne pluginy">
`~/.openclaw/<plugin-root>/*.ts` i `~/.openclaw/<plugin-root>/*/index.ts`.
</Step>
<Step title="Dołączone Pluginy">
Dostarczane z OpenClaw. Wiele z nich jest włączonych domyślnie (providery modeli, mowa).
<Step title="Dołączone pluginy">
Dostarczane z OpenClaw. Wiele z nich jest domyślnie włączonych (dostawcy modeli, mowa).
Inne wymagają jawnego włączenia.
</Step>
</Steps>
### Reguły włączania
- `plugins.enabled: false` wyłącza wszystkie Pluginy
- `plugins.deny` zawsze ma pierwszeństwo nad allow
- `plugins.entries.\<id\>.enabled: false` wyłącza ten Plugin
- Pluginy pochodzące z workspace są **domyślnie wyłączone** (muszą być jawnie włączone)
- Dołączone Pluginy stosują wbudowany zestaw domyślnie włączonych, chyba że zostanie nadpisany
- Wyłączne sloty mogą wymusić włączenie wybranego Pluginu dla tego slotu
- Niektóre dołączone pluginy typu opt-in są włączane automatycznie, gdy konfiguracja wskazuje
powierzchnię należącą do pluginu, taką jak odwołanie do modelu providera, konfiguracja kanału lub runtime harnessu
- Trasy Codex z rodziny OpenAI zachowują osobne granice pluginów:
`openai-codex/*` należy do Pluginu OpenAI, podczas gdy dołączony Plugin
- `plugins.enabled: false` wyłącza wszystkie pluginy
- `plugins.deny` zawsze wygrywa nad allow
- `plugins.entries.\<id\>.enabled: false` wyłącza ten plugin
- Pluginy pochodzące z workspace są **domyślnie wyłączone** (muszą zostać jawnie włączone)
- Dołączone pluginy stosują wbudowany domyślny zestaw włączonych, chyba że zostanie nadpisany
- Wyłączne sloty mogą wymusić włączenie pluginu wybranego dla tego slotu
- Niektóre dołączone pluginy opt-in są włączane automatycznie, gdy konfiguracja wskazuje
powierzchnię należącą do pluginu, taką jak odwołanie do modelu dostawcy, konfiguracja kanału lub
środowisko uruchomieniowe harness
- Trasy Codex z rodziny OpenAI zachowują oddzielne granice pluginów:
`openai-codex/*` należy do pluginu OpenAI, podczas gdy dołączony plugin
serwera aplikacji Codex jest wybierany przez `embeddedHarness.runtime: "codex"` lub starsze
odwołania do modeli `codex/*`
## Sloty Pluginów (wyłączne kategorie)
## Rozwiązywanie problemów z Runtime Hooks
Niektóre kategorie są wyłączne (tylko jedna może być aktywna jednocześnie):
Jeśli plugin pojawia się w `plugins list`, ale efekty uboczne `register(api)` lub hooki
nie działają w aktywnym ruchu czatu, sprawdź najpierw te elementy:
- Uruchom `openclaw gateway status --deep --require-rpc` i potwierdź, że aktywny
URL Gateway, profil, ścieżka konfiguracji i proces to te, które edytujesz.
- Uruchom ponownie aktywny Gateway po zmianach instalacji/konfiguracji/kodu pluginu. W kontenerach
opakowujących PID 1 może być tylko supervisorem; uruchom ponownie lub wyślij sygnał do potomnego
procesu `openclaw gateway run`.
- Użyj `openclaw plugins inspect <id> --json`, aby potwierdzić rejestracje hooków i
diagnostykę. Niedołączone hooki konwersacji, takie jak `llm_input`,
`llm_output` i `agent_end`, wymagają
`plugins.entries.<id>.hooks.allowConversationAccess=true`.
- Do przełączania modeli preferuj `before_model_resolve`. Uruchamia się przed
rozstrzygnięciem modelu dla tur agenta; `llm_output` uruchamia się dopiero po tym, jak próba modelu
wygeneruje odpowiedź asystenta.
- Aby uzyskać dowód skutecznego modelu sesji, użyj `openclaw sessions` lub
powierzchni sesji/statusu Gateway, a podczas debugowania ładunków dostawcy uruchom
Gateway z `--raw-stream --raw-stream-path <path>`.
## Sloty pluginów (wyłączne kategorie)
Niektóre kategorie są wyłączne (w danym czasie aktywna może być tylko jedna):
```json5
{
plugins: {
slots: {
memory: "memory-core", // lub "none", aby wyłączyć
contextEngine: "legacy", // lub identyfikator pluginu
contextEngine: "legacy", // lub id pluginu
},
},
}
@ -220,18 +253,18 @@ Niektóre kategorie są wyłączne (tylko jedna może być aktywna jednocześnie
| Slot | Co kontroluje | Domyślnie |
| --------------- | ---------------------- | ------------------- |
| `memory` | Aktywny Plugin pamięci | `memory-core` |
| `memory` | Aktywny plugin pamięci | `memory-core` |
| `contextEngine` | Aktywny silnik kontekstu | `legacy` (wbudowany) |
## Dokumentacja referencyjna CLI
## Dokumentacja CLI
```bash
openclaw plugins list # zwięzły spis
openclaw plugins list --enabled # tylko załadowane Pluginy
openclaw plugins list --verbose # szczegółowe wiersze per Plugin
openclaw plugins list --json # spis czytelny maszynowo
openclaw plugins inspect <id> # pełne szczegóły
openclaw plugins inspect <id> --json # format czytelny maszynowo
openclaw plugins list # zwarta lista zasobów
openclaw plugins list --enabled # tylko załadowane pluginy
openclaw plugins list --verbose # wiersze ze szczegółami dla każdego pluginu
openclaw plugins list --json # lista zasobów do odczytu maszynowego
openclaw plugins inspect <id> # szczegóły szczegółowe
openclaw plugins inspect <id> --json # format do odczytu maszynowego
openclaw plugins inspect --all # tabela dla całej floty
openclaw plugins info <id> # alias inspect
openclaw plugins doctor # diagnostyka
@ -240,15 +273,15 @@ openclaw plugins install <package> # instalacja (najpierw ClawHub, potem
openclaw plugins install clawhub:<pkg> # instalacja tylko z ClawHub
openclaw plugins install <spec> --force # nadpisanie istniejącej instalacji
openclaw plugins install <path> # instalacja z lokalnej ścieżki
openclaw plugins install -l <path> # linkowanie (bez kopiowania) do dev
openclaw plugins install -l <path> # linkowanie (bez kopiowania) do celów deweloperskich
openclaw plugins install <plugin> --marketplace <source>
openclaw plugins install <plugin> --marketplace https://github.com/<owner>/<repo>
openclaw plugins install <spec> --pin # zapis dokładnie rozpoznanej specyfikacji npm
openclaw plugins install <spec> --pin # zapisanie dokładnej rozstrzygniętej specyfikacji npm
openclaw plugins install <spec> --dangerously-force-unsafe-install
openclaw plugins update <id-or-npm-spec> # aktualizacja jednego Pluginu
openclaw plugins update <id-or-npm-spec> # aktualizacja jednego pluginu
openclaw plugins update <id-or-npm-spec> --dangerously-force-unsafe-install
openclaw plugins update --all # aktualizacja wszystkich
openclaw plugins uninstall <id> # usunięcie konfiguracji/rejestrów instalacji
openclaw plugins uninstall <id> # usunięcie rekordów konfiguracji/instalacji
openclaw plugins uninstall <id> --keep-files
openclaw plugins marketplace list <source>
openclaw plugins marketplace list <source> --json
@ -257,54 +290,57 @@ openclaw plugins enable <id>
openclaw plugins disable <id>
```
Dołączone Pluginy są dostarczane z OpenClaw. Wiele z nich jest włączonych domyślnie (na przykład
dołączone providery modeli, dołączone providery mowy oraz dołączony Plugin
przeglądarki). Inne dołączone Pluginy nadal wymagają `openclaw plugins enable <id>`.
Dołączone pluginy są dostarczane z OpenClaw. Wiele z nich jest domyślnie włączonych (na przykład
dołączoni dostawcy modeli, dołączoni dostawcy mowy oraz dołączony plugin
browser). Inne dołączone pluginy nadal wymagają `openclaw plugins enable <id>`.
`--force` nadpisuje istniejący zainstalowany Plugin lub pakiet hooków w miejscu. Używaj
`openclaw plugins update <id-or-npm-spec>` do rutynowych aktualizacji śledzonych pluginów npm.
Nie jest to obsługiwane z `--link`, które ponownie używa ścieżki źródłowej zamiast
kopiować do zarządzanego celu instalacji.
`--force` nadpisuje istniejący zainstalowany plugin lub pakiet hooków na miejscu. Do
rutynowych aktualizacji śledzonych pluginów npm używaj
`openclaw plugins update <id-or-npm-spec>`. Ta opcja nie jest obsługiwana z `--link`, które ponownie używa ścieżki źródłowej zamiast
kopiowania do zarządzanego celu instalacji.
Gdy `plugins.allow` jest już ustawione, `openclaw plugins install` dodaje
identyfikator zainstalowanego pluginu do tej listy dozwolonych przed jego włączeniem, dzięki czemu instalacje są
natychmiast gotowe do załadowania po restarcie.
natychmiast możliwe do załadowania po restarcie.
`openclaw plugins update <id-or-npm-spec>` dotyczy śledzonych instalacji. Przekazanie
specyfikacji pakietu npm z dist-tag lub dokładną wersją rozpoznaje nazwę pakietu
z powrotem do śledzonego rekordu pluginu i zapisuje nową specyfikację dla przyszłych aktualizacji.
Przekazanie nazwy pakietu bez wersji przenosi instalację przypiętą do dokładnej wersji z powrotem na
domyślną linię wydań rejestru. Jeśli zainstalowany Plugin npm już odpowiada
rozpoznanej wersji i zapisanej tożsamości artefaktu, OpenClaw pomija aktualizację
specyfikacji pakietu npm z dist-tag lub dokładną wersją rozwiązuje nazwę pakietu
z powrotem do śledzonego rekordu pluginu i zapisuje nową specyfikację do przyszłych aktualizacji.
Przekazanie nazwy pakietu bez wersji przenosi dokładnie przypiętą instalację z powrotem na
domyślną linię wydań rejestru. Jeśli zainstalowany plugin npm już odpowiada
rozwiązanej wersji i zapisanej tożsamości artefaktu, OpenClaw pomija aktualizację
bez pobierania, ponownej instalacji ani przepisywania konfiguracji.
`--pin` dotyczy tylko npm. Nie jest obsługiwane z `--marketplace`, ponieważ
instalacje z marketplace zapisują metadane źródła marketplace zamiast specyfikacji npm.
instalacje z marketplace zachowują metadane źródła marketplace zamiast specyfikacji npm.
`--dangerously-force-unsafe-install` to awaryjne nadpisanie dla fałszywych
pozytywów z wbudowanego skanera niebezpiecznego kodu. Pozwala kontynuować instalacje i aktualizacje pluginów
mimo wbudowanych ustaleń `critical`, ale nadal nie omija blokad polityki pluginu `before_install`
ani blokowania przy błędzie skanowania.
`--dangerously-force-unsafe-install` to awaryjne obejście typu break-glass dla fałszywie
pozytywnych wyników wbudowanego skanera niebezpiecznego kodu. Pozwala kontynuować instalacje pluginów
i aktualizacje pluginów mimo wbudowanych ustaleń `critical`, ale nadal
nie omija blokad zasad pluginu `before_install` ani blokowania przy błędzie skanowania.
Ta flaga CLI dotyczy tylko przepływów instalacji/aktualizacji pluginów. Instalacje zależności Skills wykonywane przez Gateway używają zamiast tego odpowiadającego nadpisania żądania `dangerouslyForceUnsafeInstall`, natomiast `openclaw skills install` pozostaje osobnym przepływem pobierania/instalacji Skills z ClawHub.
Ta flaga CLI dotyczy tylko przepływów instalacji/aktualizacji pluginów. Instalacje zależności Skills
realizowane przez Gateway używają zamiast tego odpowiadającego nadpisania żądania
`dangerouslyForceUnsafeInstall`, podczas gdy `openclaw skills install` pozostaje oddzielnym przepływem
pobierania/instalacji Skills z ClawHub.
Zgodne bundle uczestniczą w tym samym przepływie `list`/`inspect`/`enable`/`disable`
dla Pluginów. Obecna obsługa runtime obejmuje bundle Skills, Claude command-skills,
domyślne ustawienia Claude `settings.json`, domyślne ustawienia Claude `.lsp.json` i zadeklarowane w manifeście
Zgodne pakiety uczestniczą w tym samym przepływie list/inspect/enable/disable pluginów.
Obecna obsługa uruchomieniowa obejmuje bundle Skills, Claude command-skills,
domyślne ustawienia Claude `settings.json`, domyślne wpisy Claude `.lsp.json` i deklarowane w manifeście
`lspServers`, Cursor command-skills oraz zgodne katalogi hooków Codex.
`openclaw plugins inspect <id>` raportuje również wykryte możliwości bundle oraz
obsługiwane lub nieobsługiwane wpisy serwerów MCP i LSP dla pluginów opartych na bundle.
`openclaw plugins inspect <id>` raportuje również wykryte możliwości pakietu oraz
obsługiwane lub nieobsługiwane wpisy serwerów MCP i LSP dla pluginów opartych na pakietach.
Źródła marketplace mogą być nazwą znanego marketplace Claude z
`~/.claude/plugins/known_marketplaces.json`, lokalnym katalogiem marketplace lub ścieżką
`marketplace.json`, skrótem GitHub takim jak `owner/repo`, URL repozytorium GitHub
albo URL git. W przypadku zdalnych marketplace wpisy pluginów muszą pozostać w
sklonowanym repozytorium marketplace i używać wyłącznie względnych źródeł ścieżek.
`~/.claude/plugins/known_marketplaces.json`, lokalnym katalogiem głównym marketplace lub
ścieżką `marketplace.json`, skrótem GitHub takim jak `owner/repo`, adresem URL repozytorium GitHub
albo adresem URL git. W przypadku zdalnych marketplace wpisy pluginów 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 referencyjnej CLI `openclaw plugins`](/pl/cli/plugins).
Pełne szczegóły znajdziesz w [dokumentacji CLI `openclaw plugins`](/pl/cli/plugins).
## Przegląd API Pluginów
## Przegląd API pluginów
Natywne pluginy eksportują obiekt wejściowy, który udostępnia `register(api)`. Starsze
pluginy mogą nadal używać `activate(api)` jako starszego aliasu, ale nowe pluginy powinny
@ -329,47 +365,48 @@ export default definePluginEntry({
```
OpenClaw ładuje obiekt wejściowy i wywołuje `register(api)` podczas aktywacji
pluginu. Loader nadal przełącza się awaryjnie na `activate(api)` dla starszych pluginów,
ale dołączone pluginy i nowe pluginy zewnętrzne powinny traktować `register` jako publiczny kontrakt.
pluginu. Loader nadal wraca do `activate(api)` dla starszych pluginów,
ale dołączone pluginy i nowe zewnętrzne pluginy powinny traktować `register` jako
publiczny kontrakt.
Typowe metody rejestracji:
| Metoda | Co rejestruje |
| --------------------------------------- | --------------------------- |
| `registerProvider` | Provider modelu (LLM) |
| `registerProvider` | Dostawca modeli (LLM) |
| `registerChannel` | Kanał czatu |
| `registerTool` | Narzędzie agenta |
| `registerHook` / `on(...)` | Hooki cyklu życia |
| `registerSpeechProvider` | Text-to-speech / STT |
| `registerRealtimeTranscriptionProvider` | Streaming STT |
| `registerRealtimeVoiceProvider` | Dwukierunkowy głos realtime |
| `registerSpeechProvider` | Zamiana tekstu na mowę / STT |
| `registerRealtimeTranscriptionProvider` | Strumieniowe STT |
| `registerRealtimeVoiceProvider` | Dwukierunkowy głos w czasie rzeczywistym |
| `registerMediaUnderstandingProvider` | Analiza obrazu/dźwięku |
| `registerImageGenerationProvider` | Generowanie obrazów |
| `registerMusicGenerationProvider` | Generowanie muzyki |
| `registerVideoGenerationProvider` | Generowanie wideo |
| `registerWebFetchProvider` | Provider web fetch / scrape |
| `registerWebSearchProvider` | Web search |
| `registerHttpRoute` | Endpoint HTTP |
| `registerCommand` / `registerCli` | Polecenia CLI |
| `registerWebFetchProvider` | Dostawca pobierania / scrapowania z sieci |
| `registerWebSearchProvider` | Wyszukiwanie w sieci |
| `registerHttpRoute` | Punkt końcowy HTTP |
| `registerCommand` / `registerCli` | Polecenia CLI |
| `registerContextEngine` | Silnik kontekstu |
| `registerService` | Usługa działająca w tle |
Zachowanie hook guard dla typowanych hooków cyklu życia:
Zachowanie strażników hooków dla typowanych hooków cyklu życia:
- `before_tool_call`: `{ block: true }` jest końcowe; handlery o niższym priorytecie są pomijane.
- `before_tool_call`: `{ block: true }` jest terminalne; 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: true }` jest terminalne; 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: true }` jest terminalne; handlery o niższym priorytecie są pomijane.
- `message_sending`: `{ cancel: false }` nic nie robi i nie usuwa wcześniejszego anulowania.
Pełne zachowanie typowanych hooków znajdziesz w [SDK Overview](/pl/plugins/sdk-overview#hook-decision-semantics).
Pełne informacje o zachowaniu typowanych hooków znajdziesz w [SDK Overview](/pl/plugins/sdk-overview#hook-decision-semantics).
## Powiązane
- [Building Plugins](/pl/plugins/building-plugins) — utwórz własny Plugin
- [Plugin Bundles](/pl/plugins/bundles) — zgodność bundle Codex/Claude/Cursor
- [Building Plugins](/pl/plugins/building-plugins) — utwórz własny plugin
- [Plugin Bundles](/pl/plugins/bundles) — zgodność pakietów Codex/Claude/Cursor
- [Plugin Manifest](/pl/plugins/manifest) — schemat manifestu
- [Registering Tools](/pl/plugins/building-plugins#registering-agent-tools) — dodawanie narzędzi agenta w Pluginie
- [Registering Tools](/pl/plugins/building-plugins#registering-agent-tools) — dodawanie narzędzi agenta w pluginie
- [Plugin Internals](/pl/plugins/architecture) — model możliwości i pipeline ładowania
- [Community Plugins](/pl/plugins/community) — listy Pluginów firm trzecich
- [Community Plugins](/pl/plugins/community) — listy pluginów firm trzecich