Documentation Index
Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
tools.* klucze konfiguracji oraz konfiguracja niestandardowego dostawcy / bazowego URL-a. Informacje o agentach, kanałach i innych kluczach konfiguracji najwyższego poziomu znajdziesz w dokumentacji konfiguracji.
Narzędzia
Profile narzędzi
tools.profile ustawia bazową listę dozwolonych narzędzi przed tools.allow/tools.deny:
Lokalne wdrażanie domyślnie ustawia w nowych lokalnych konfiguracjach
tools.profile: "coding", gdy nie jest ustawione (istniejące jawne profile są zachowywane).| Profil | Obejmuje |
|---|---|
minimal | tylko session_status |
coding | group:fs, group:runtime, group:web, group:sessions, group:memory, cron, image, image_generate, video_generate |
messaging | group:messaging, sessions_list, sessions_history, sessions_send, session_status |
full | Bez ograniczeń (tak samo jak brak ustawienia) |
Grupy narzędzi
| Grupa | Narzędzia |
|---|---|
group:runtime | exec, process, code_execution (bash jest akceptowane jako alias dla exec) |
group:fs | read, write, edit, apply_patch |
group:sessions | sessions_list, sessions_history, sessions_send, sessions_spawn, sessions_yield, subagents, session_status |
group:memory | memory_search, memory_get |
group:web | web_search, x_search, web_fetch |
group:ui | browser, canvas |
group:automation | heartbeat_respond, cron, gateway |
group:messaging | message |
group:nodes | nodes |
group:agents | agents_list, update_plan |
group:media | image, image_generate, music_generate, video_generate, tts |
group:openclaw | Wszystkie wbudowane narzędzia (z wyłączeniem pluginów dostawców) |
tools.allow / tools.deny
Globalna polityka zezwalania/odmawiania narzędzi (odmowa wygrywa). Bez rozróżniania wielkości liter, obsługuje symbole wieloznaczne *. Stosowana nawet wtedy, gdy sandbox Docker jest wyłączony.
write i apply_patch to oddzielne identyfikatory narzędzi. allow: ["write"] włącza też apply_patch dla zgodnych modeli, ale deny: ["write"] nie blokuje apply_patch. Aby zablokować wszystkie mutacje plików, odmów group:fs albo jawnie wymień każde narzędzie modyfikujące:
tools.byProvider
Dodatkowo ogranicza narzędzia dla konkretnych dostawców lub modeli. Kolejność: profil bazowy → profil dostawcy → allow/deny.
tools.toolsBySender
Ogranicza narzędzia dla konkretnej tożsamości zgłaszającego. To obrona warstwowa ponad kontrolą dostępu kanału; wartości nadawcy muszą pochodzić z adaptera kanału, a nie z tekstu wiadomości.
channel:<channelId>:<senderId>, id:<senderId>, e164:<phone>, username:<handle>, name:<displayName> albo "*". Identyfikatory kanałów to kanoniczne identyfikatory OpenClaw; aliasy takie jak teams są normalizowane do msteams. Starsze klucze bez prefiksu są akceptowane wyłącznie jako id:. Kolejność dopasowania to channel+id, id, e164, username, name, a potem symbol wieloznaczny.
agents.list[].tools.toolsBySender przypisane do agenta zastępuje globalne dopasowanie nadawcy, gdy pasuje, nawet przy pustej polityce {}.
tools.elevated
Kontroluje podwyższony dostęp exec poza sandboxem:
- Nadpisanie dla agenta (
agents.list[].tools.elevated) może tylko dalej ograniczać. /elevated on|off|ask|fullzapisuje stan dla sesji; dyrektywy inline dotyczą pojedynczej wiadomości.- Podwyższony
execomija sandboxing i używa skonfigurowanej ścieżki ucieczki (gatewaydomyślnie albonode, gdy celemexecjestnode).
tools.exec
tools.loopDetection
Kontrole bezpieczeństwa pętli narzędzi są domyślnie wyłączone. Ustaw enabled: true, aby aktywować wykrywanie. Ustawienia można definiować globalnie w tools.loopDetection i nadpisywać dla poszczególnych agentów w agents.list[].tools.loopDetection.
Maksymalna historia wywołań narzędzi przechowywana do analizy pętli.
Próg powtarzającego się wzorca bez postępu dla ostrzeżeń.
Wyższy próg powtórzeń do blokowania krytycznych pętli.
Twardy próg zatrzymania dla dowolnej serii bez postępu.
Ostrzegaj przy powtarzanych wywołaniach tego samego narzędzia z tymi samymi argumentami.
Ostrzegaj/blokuj przy znanych narzędziach odpytywania (
process.poll, command_status itp.).Ostrzegaj/blokuj przy naprzemiennych parach wzorców bez postępu.
tools.web
tools.media
Konfiguruje rozumienie przychodzących multimediów (obraz/audio/wideo):
Pola wpisu modelu multimediów
Pola wpisu modelu multimediów
Wpis dostawcy (
type: "provider" lub pominięty):provider: identyfikator dostawcy API (openai,anthropic,google/gemini,groqitp.)model: nadpisanie identyfikatora modeluprofile/preferredProfile: wybór profiluauth-profiles.json
type: "cli"):command: plik wykonywalny do uruchomieniaargs: argumenty szablonowe (obsługuje{{MediaPath}},{{Prompt}},{{MaxChars}}itp.;openclaw doctor --fixmigruje przestarzałe symbole zastępcze{input}do{{MediaPath}})
capabilities: opcjonalna lista (image,audio,video). Domyślnie:openai/anthropic/minimax→ obraz,google→ obraz+audio+wideo,groq→ audio.prompt,maxChars,maxBytes,timeoutSeconds,language: nadpisania dla wpisu.tools.media.image.timeoutSecondsoraz odpowiadające wpisytimeoutSecondsmodeli obrazu mają zastosowanie także wtedy, gdy agent wywołuje jawne narzędzieimage.- Niepowodzenia przełączają obsługę na następny wpis.
auth-profiles.json → zmienne env → models.providers.*.apiKey.Pola ukończenia asynchronicznego:asyncCompletion.directSend: przestarzała flaga zgodności. Ukończone asynchroniczne zadania multimedialne pozostają pośredniczone przez sesję żądającego, aby agent otrzymał wynik, zdecydował, jak poinformować użytkownika, i użył narzędzia wiadomości, gdy wymaga tego dostarczenie źródłowe.
tools.agentToAgent
tools.sessions
Kontroluje, które sesje mogą być wskazywane przez narzędzia sesji (sessions_list, sessions_history, sessions_send).
Domyślnie: tree (bieżąca sesja + sesje przez nią utworzone, takie jak podagenci).
Zakresy widoczności
Zakresy widoczności
self: tylko klucz bieżącej sesji.tree: bieżąca sesja + sesje utworzone przez bieżącą sesję (podagenci).agent: dowolna sesja należąca do bieżącego identyfikatora agenta (może obejmować innych użytkowników, jeśli uruchamiasz sesje dla poszczególnych nadawców pod tym samym identyfikatorem agenta).all: dowolna sesja. Kierowanie między agentami nadal wymagatools.agentToAgent.- Ograniczenie piaskownicy: gdy bieżąca sesja działa w piaskownicy i
agents.defaults.sandbox.sessionToolsVisibility="spawned", widoczność jest wymuszana natree, nawet jeślitools.sessions.visibility="all".
tools.sessions_spawn
Kontroluje obsługę załączników inline dla sessions_spawn.
Uwagi dotyczące załączników
Uwagi dotyczące załączników
- Załączniki są obsługiwane tylko dla
runtime: "subagent". Środowisko wykonawcze ACP je odrzuca. - Pliki są materializowane w podrzędnym obszarze roboczym w
.openclaw/attachments/<uuid>/z plikiem.manifest.json. - Zawartość załączników jest automatycznie redagowana z utrwalania transkryptu.
- Dane wejściowe Base64 są weryfikowane przez ścisłe sprawdzanie alfabetu/wypełnienia oraz zabezpieczenie rozmiaru przed dekodowaniem.
- Uprawnienia plików to
0700dla katalogów i0600dla plików. - Czyszczenie jest zgodne z zasadą
cleanup:deletezawsze usuwa załączniki;keepzachowuje je tylko wtedy, gdyretainOnSessionKeep: true.
tools.experimental
Eksperymentalne flagi wbudowanych narzędzi. Domyślnie wyłączone, chyba że ma zastosowanie reguła automatycznego włączania dla strict-agentic GPT-5.
planTool: włącza ustrukturyzowane narzędzieupdate_plando śledzenia nietrywialnej pracy wieloetapowej.- Domyślnie:
false, chyba żeagents.defaults.embeddedPi.executionContract(albo nadpisanie dla konkretnego agenta) jest ustawione na"strict-agentic"dla uruchomienia z rodziny OpenAI lub OpenAI Codex GPT-5. Ustawtrue, aby wymusić włączenie narzędzia poza tym zakresem, albofalse, aby pozostawić je wyłączone nawet dla uruchomień strict-agentic GPT-5. - Po włączeniu prompt systemowy dodaje też wskazówki użycia, aby model używał go tylko do znaczącej pracy i utrzymywał najwyżej jeden krok
in_progress.
agents.defaults.subagents
model: domyślny model dla uruchamianych podagentów. Jeśli zostanie pominięty, podagenci dziedziczą model wywołującego.allowAgents: domyślna lista dozwolonych identyfikatorów agentów docelowych dlasessions_spawn, gdy agent żądający nie ustawia własnegosubagents.allowAgents(["*"]= dowolny; domyślnie: tylko ten sam agent).runTimeoutSeconds: domyślny limit czasu (w sekundach) dlasessions_spawn, gdy wywołanie narzędzia pomijarunTimeoutSeconds.0oznacza brak limitu czasu.announceTimeoutMs: limit czasu dla pojedynczego wywołania (w milisekundach) dla prób dostarczenia ogłoszeniaagentprzez gateway. Domyślnie:120000. Przejściowe ponowienia mogą sprawić, że łączny czas oczekiwania na ogłoszenie będzie dłuższy niż jeden skonfigurowany limit czasu.- Zasada narzędzi dla podagentów:
tools.subagents.tools.allow/tools.subagents.tools.deny.
Niestandardowi dostawcy i bazowe adresy URL
OpenClaw używa wbudowanego katalogu modeli. Dodaj niestandardowych dostawców przezmodels.providers w konfiguracji albo ~/.openclaw/agents/<agentId>/agent/models.json.
Uwierzytelnianie i priorytet scalania
Uwierzytelnianie i priorytet scalania
- Użyj
authHeader: true+headersdla niestandardowych potrzeb uwierzytelniania. - Nadpisz katalog główny konfiguracji agenta za pomocą
OPENCLAW_AGENT_DIR(alboPI_CODING_AGENT_DIR, starszego aliasu zmiennej środowiskowej). - Priorytet scalania dla pasujących identyfikatorów dostawców:
- Niepuste wartości
baseUrlzmodels.jsonagenta wygrywają. - Niepuste wartości
apiKeyagenta wygrywają tylko wtedy, gdy ten dostawca nie jest zarządzany przez SecretRef w bieżącym kontekście konfiguracji/profilu uwierzytelniania. - Wartości
apiKeydostawcy zarządzanego przez SecretRef są odświeżane ze znaczników źródłowych (ENV_VAR_NAMEdla odwołań do zmiennych środowiskowych,secretref-manageddla odwołań do plików/wykonań) zamiast utrwalania rozwiązanych sekretów. - Wartości nagłówków dostawcy zarządzanego przez SecretRef są odświeżane ze znaczników źródłowych (
secretref-env:ENV_VAR_NAMEdla odwołań do zmiennych środowiskowych,secretref-manageddla odwołań do plików/wykonań). - Puste lub brakujące
apiKey/baseUrlagenta wracają domodels.providersw konfiguracji. - Pasujące
contextWindow/maxTokensmodelu używają wyższej wartości spośród jawnej konfiguracji i niejawnych wartości katalogu. - Pasujące
contextTokensmodelu zachowuje jawny limit środowiska wykonawczego, gdy jest obecny; użyj go, aby ograniczyć efektywny kontekst bez zmieniania natywnych metadanych modelu. - Użyj
models.mode: "replace", gdy chcesz, aby konfiguracja całkowicie przepisałamodels.json. - Utrwalanie znaczników jest autorytatywne względem źródła: znaczniki są zapisywane z aktywnej migawki konfiguracji źródłowej (przed rozwiązaniem), a nie z rozwiązanych wartości sekretów środowiska wykonawczego.
- Niepuste wartości
Szczegóły pól dostawcy
Katalog najwyższego poziomu
Katalog najwyższego poziomu
models.mode: zachowanie katalogu dostawców (mergealboreplace).models.providers: mapa niestandardowych dostawców indeksowana identyfikatorem dostawcy.- Bezpieczne edycje: użyj
openclaw config set models.providers.<id> '<json>' --strict-json --mergealboopenclaw config set models.providers.<id>.models '<json-array>' --strict-json --mergedla aktualizacji addytywnych.config setodmawia destrukcyjnych zastąpień, chyba że przekażesz--replace.
- Bezpieczne edycje: użyj
Połączenie i uwierzytelnianie dostawcy
Połączenie i uwierzytelnianie dostawcy
models.providers.*.api: adapter żądań (openai-completions,openai-responses,anthropic-messages,google-generative-aiitd.). Dla samodzielnie hostowanych backendów/v1/chat/completions, takich jak MLX, vLLM, SGLang i większość lokalnych serwerów zgodnych z OpenAI, użyjopenai-completions. Niestandardowy dostawca zbaseUrl, ale bezapi, domyślnie używaopenai-completions; ustawopenai-responsestylko wtedy, gdy backend obsługuje/v1/responses.models.providers.*.apiKey: poświadczenie dostawcy (preferuj podstawianie SecretRef/zmiennych środowiskowych).models.providers.*.auth: strategia uwierzytelniania (api-key,token,oauth,aws-sdk).models.providers.*.contextWindow: domyślne natywne okno kontekstu dla modeli u tego dostawcy, gdy wpis modelu nie ustawiacontextWindow.models.providers.*.contextTokens: domyślny efektywny limit kontekstu środowiska wykonawczego dla modeli u tego dostawcy, gdy wpis modelu nie ustawiacontextTokens.models.providers.*.maxTokens: domyślny limit tokenów wyjściowych dla modeli u tego dostawcy, gdy wpis modelu nie ustawiamaxTokens.models.providers.*.timeoutSeconds: opcjonalny limit czasu żądania HTTP modelu dla dostawcy w sekundach, obejmujący połączenie, nagłówki, treść oraz obsługę przerwania całego żądania.models.providers.*.injectNumCtxForOpenAICompat: dla Ollama +openai-completionswstrzykujeoptions.num_ctxdo żądań (domyślnie:true).models.providers.*.authHeader: wymusza przesyłanie poświadczenia w nagłówkuAuthorization, gdy jest to wymagane.models.providers.*.baseUrl: bazowy adres URL nadrzędnego API.models.providers.*.headers: dodatkowe statyczne nagłówki do routingu proxy/dzierżawcy.
Nadpisania transportu żądań
Nadpisania transportu żądań
models.providers.*.request: nadpisania transportu dla żądań HTTP dostawcy modelu.request.headers: dodatkowe nagłówki (scalane z domyślnymi ustawieniami dostawcy). Wartości akceptują SecretRef.request.auth: nadpisanie strategii uwierzytelniania. Tryby:"provider-default"(użyj wbudowanego uwierzytelniania dostawcy),"authorization-bearer"(ztoken),"header"(zheaderName,value, opcjonalnieprefix).request.proxy: nadpisanie proxy HTTP. Tryby:"env-proxy"(użyj zmiennych środowiskowychHTTP_PROXY/HTTPS_PROXY),"explicit-proxy"(zurl). Oba tryby akceptują opcjonalny podobiekttls.request.tls: nadpisanie TLS dla połączeń bezpośrednich. Pola:ca,cert,key,passphrase(wszystkie akceptują SecretRef),serverName,insecureSkipVerify.request.allowPrivateNetwork: gdytrue, zezwala na HTTPS dobaseUrl, gdy DNS rozwiązuje się do zakresów prywatnych, CGNAT lub podobnych, przez zabezpieczenie pobierania HTTP dostawcy (wybór operatora dla zaufanych, samodzielnie hostowanych punktów końcowych zgodnych z OpenAI). Adresy URL strumienia dostawcy modelu local loopback, takie jaklocalhost,127.0.0.1i[::1], są dozwolone automatycznie, chyba że to pole jest jawnie ustawione nafalse; hosty LAN, tailnet i prywatne hosty DNS nadal wymagają zgody. WebSocket używa tego samegorequestdla nagłówków/TLS, ale nie tej bramki SSRF pobierania. Domyślniefalse.
Wpisy katalogu modeli
Wpisy katalogu modeli
models.providers.*.models: jawne wpisy katalogu modeli dostawcy.models.providers.*.models.*.input: modalności wejściowe modelu. Użyj["text"]dla modeli wyłącznie tekstowych i["text", "image"]dla natywnych modeli obrazu/wizji. Załączniki obrazów są wstrzykiwane do tur agenta tylko wtedy, gdy wybrany model jest oznaczony jako obsługujący obrazy.models.providers.*.models.*.contextWindow: metadane natywnego okna kontekstu modelu. Nadpisuje tocontextWindowna poziomie dostawcy dla tego modelu.models.providers.*.models.*.contextTokens: opcjonalny limit kontekstu środowiska wykonawczego. Nadpisuje tocontextTokensna poziomie dostawcy; użyj go, gdy chcesz mniejszy efektywny budżet kontekstu niż natywnecontextWindowmodelu;openclaw models listpokazuje obie wartości, gdy się różnią.models.providers.*.models.*.compat.supportsDeveloperRole: opcjonalna wskazówka zgodności. Dlaapi: "openai-completions"z niepustym, nienatywnymbaseUrl(host inny niżapi.openai.com) OpenClaw wymusza w środowisku wykonawczym wartośćfalse. Puste/pominiętebaseUrlzachowuje domyślne zachowanie OpenAI.models.providers.*.models.*.compat.requiresStringContent: opcjonalna wskazówka zgodności dla tekstowych punktów końcowych czatu zgodnych z OpenAI. Gdytrue, OpenClaw spłaszcza czysto tekstowe tablicemessages[].contentdo zwykłych ciągów znaków przed wysłaniem żądania.models.providers.*.models.*.compat.strictMessageKeys: opcjonalna wskazówka zgodności dla ścisłych punktów końcowych czatu zgodnych z OpenAI. Gdytrue, OpenClaw przycina wychodzące obiekty wiadomości Chat Completions doroleicontentprzed wysłaniem żądania.models.providers.*.models.*.compat.thinkingFormat: opcjonalna wskazówka ładunku myślenia. Użyj"qwen"dla najwyższopoziomowegoenable_thinkingalbo"qwen-chat-template"dlachat_template_kwargs.enable_thinkingna zgodnych z OpenAI serwerach rodziny Qwen, które obsługują kwargs szablonu czatu na poziomie żądania, takich jak vLLM.
Wykrywanie Amazon Bedrock
Wykrywanie Amazon Bedrock
plugins.entries.amazon-bedrock.config.discovery: katalog główny ustawień automatycznego wykrywania Bedrock.plugins.entries.amazon-bedrock.config.discovery.enabled: włącza/wyłącza niejawne wykrywanie.plugins.entries.amazon-bedrock.config.discovery.region: region AWS do wykrywania.plugins.entries.amazon-bedrock.config.discovery.providerFilter: opcjonalny filtr identyfikatora dostawcy do ukierunkowanego wykrywania.plugins.entries.amazon-bedrock.config.discovery.refreshInterval: interwał odpytywania dla odświeżania wykrywania.plugins.entries.amazon-bedrock.config.discovery.defaultContextWindow: zastępcze okno kontekstu dla wykrytych modeli.plugins.entries.amazon-bedrock.config.discovery.defaultMaxTokens: zastępczy maksymalny limit tokenów wyjściowych dla wykrytych modeli.
--custom-image-input, aby wymusić metadane obsługujące obrazy, albo --custom-text-input, aby wymusić metadane wyłącznie tekstowe.
Przykłady providerów
Cerebras (GLM 4.7 / GPT OSS)
Cerebras (GLM 4.7 / GPT OSS)
Dołączony plugin providera Użyj
cerebras może skonfigurować to przez openclaw onboard --auth-choice cerebras-api-key. Używaj jawnej konfiguracji providera tylko wtedy, gdy nadpisujesz wartości domyślne.cerebras/zai-glm-4.7 dla Cerebras; zai/glm-4.7 dla bezpośredniego Z.AI.Kimi Coding
Kimi Coding
openclaw onboard --auth-choice kimi-code-api-key.Local models (LM Studio)
Local models (LM Studio)
Zobacz Modele lokalne. W skrócie: uruchom duży model lokalny przez LM Studio Responses API na solidnym sprzęcie; zachowaj scalone modele hostowane jako rezerwę.
MiniMax M2.7 (direct)
MiniMax M2.7 (direct)
MINIMAX_API_KEY. Skróty: openclaw onboard --auth-choice minimax-global-api albo openclaw onboard --auth-choice minimax-cn-api. Katalog modeli domyślnie zawiera tylko M2.7. Na ścieżce streamingu zgodnej z Anthropic OpenClaw domyślnie wyłącza myślenie MiniMax, chyba że samodzielnie jawnie ustawisz thinking. /fast on albo params.fastMode: true przepisuje MiniMax-M2.7 na MiniMax-M2.7-highspeed.Moonshot AI (Kimi)
Moonshot AI (Kimi)
baseUrl: "https://api.moonshot.cn/v1" albo openclaw onboard --auth-choice moonshot-api-key-cn.Natywne punkty końcowe Moonshot deklarują zgodność użycia streamingu we współdzielonym transporcie openai-completions, a OpenClaw opiera to na możliwościach punktu końcowego, a nie wyłącznie na identyfikatorze wbudowanego providera.OpenCode
OpenCode
OPENCODE_API_KEY (albo OPENCODE_ZEN_API_KEY). Używaj odwołań opencode/... dla katalogu Zen albo odwołań opencode-go/... dla katalogu Go. Skrót: openclaw onboard --auth-choice opencode-zen albo openclaw onboard --auth-choice opencode-go.Synthetic (Anthropic-compatible)
Synthetic (Anthropic-compatible)
/v1 (klient Anthropic dodaje go sam). Skrót: openclaw onboard --auth-choice synthetic-api-key.Z.AI (GLM-4.7)
Z.AI (GLM-4.7)
ZAI_API_KEY. z.ai/* i z-ai/* są akceptowanymi aliasami. Skrót: openclaw onboard --auth-choice zai-api-key.- Ogólny punkt końcowy:
https://api.z.ai/api/paas/v4 - Punkt końcowy do kodowania (domyślny):
https://api.z.ai/api/coding/paas/v4 - Dla ogólnego punktu końcowego zdefiniuj niestandardowego providera z nadpisaniem bazowego URL.
Powiązane
- Konfiguracja — agenci
- Konfiguracja — kanały
- Odwołanie konfiguracji — inne klucze najwyższego poziomu
- Narzędzia i pluginy