Każdy agent w konfiguracji wieloagentowej może nadpisać globalne zasady sandboxa i narzędzi. Ta strona omawia konfigurację per agent, reguły pierwszeństwa oraz przykłady.Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
Sandboxing
Backendy i tryby — pełna dokumentacja sandboxa.
Sandbox a zasady narzędzi a elevated
Debugowanie: „dlaczego to jest zablokowane?”
Tryb elevated
Podniesione uprawnienia exec dla zaufanych nadawców.
Przykłady konfiguracji
Przykład 1: Agent osobisty + ograniczony agent rodzinny
Przykład 1: Agent osobisty + ograniczony agent rodzinny
- agent
main: działa na hoście, pełny dostęp do narzędzi. - agent
family: działa w Dockerze (jeden kontener na agenta), tylkoreadi wysyłanie wiadomości w bieżącej konwersacji.
Przykład 2: Agent roboczy ze współdzielonym sandboxem
Przykład 2: Agent roboczy ze współdzielonym sandboxem
Przykład 2b: Globalny profil kodowania + agent tylko do wiadomości
Przykład 2b: Globalny profil kodowania + agent tylko do wiadomości
- agenci domyślni otrzymują narzędzia do kodowania.
- agent
supportsłuży tylko do wiadomości (+ narzędzie Slack).
Przykład 3: Różne tryby sandboxa per agent
Przykład 3: Różne tryby sandboxa per agent
Pierwszeństwo konfiguracji
Gdy istnieją zarówno konfiguracje globalne (agents.defaults.*), jak i specyficzne dla agenta (agents.list[].*):
Konfiguracja sandboxa
Ustawienia specyficzne dla agenta nadpisują globalne:agents.list[].sandbox.{docker,browser,prune}.* nadpisuje agents.defaults.sandbox.{docker,browser,prune}.* dla tego agenta (ignorowane, gdy zakres sandboxa rozwiązuje się do "shared").Ograniczenia narzędzi
Kolejność filtrowania jest następująca:Profil narzędzi dostawcy
tools.byProvider[provider].profile lub agents.list[].tools.byProvider[provider].profile.Reguły pierwszeństwa
Reguły pierwszeństwa
- Każdy poziom może dalej ograniczać narzędzia, ale nie może ponownie przyznać narzędzi zabronionych na wcześniejszych poziomach.
- Jeśli ustawiono
agents.list[].tools.sandbox.tools, zastępuje onotools.sandbox.toolsdla tego agenta. - Jeśli ustawiono
agents.list[].tools.profile, nadpisuje onotools.profiledla tego agenta. - Klucze narzędzi dostawcy akceptują
provider(np.google-antigravity) alboprovider/model(np.openai/gpt-5.4).
Zachowanie pustej listy dozwolonych
Zachowanie pustej listy dozwolonych
Jeśli dowolna jawna lista dozwolonych w tym łańcuchu pozostawi uruchomienie bez wywoływalnych narzędzi, OpenClaw zatrzyma się przed wysłaniem promptu do modelu. Jest to celowe: agent skonfigurowany z brakującym narzędziem, takim jak
agents.list[].tools.allow: ["query_db"], powinien zakończyć się głośnym błędem, dopóki Plugin rejestrujący query_db nie zostanie włączony, zamiast kontynuować jako agent tylko tekstowy.group:*, które rozwijają się do wielu narzędzi. Pełną listę znajdziesz w Grupach narzędzi.
Nadpisania elevated per agent (agents.list[].tools.elevated) mogą dodatkowo ograniczać podniesione uprawnienia exec dla konkretnych agentów. Szczegóły znajdziesz w Trybie elevated.
Migracja z pojedynczego agenta
- Przed (pojedynczy agent)
- Po (wielu agentów)
Starsze konfiguracje
agent.* są migrowane przez openclaw doctor; w nowych konfiguracjach preferuj agents.defaults + agents.list.Przykłady ograniczeń narzędzi
- Agent tylko do odczytu
- Wykonywanie poleceń powłoki z wyłączonymi narzędziami systemu plików
- Tylko komunikacja
Typowa pułapka: „non-main”
Testowanie
Po skonfigurowaniu sandboxa i narzędzi dla wielu agentów:Przetestuj ograniczenia narzędzi
- Wyślij wiadomość wymagającą ograniczonych narzędzi.
- Sprawdź, czy agent nie może używać narzędzi, którym odmówiono dostępu.
Rozwiązywanie problemów
Agent nie jest objęty sandboxem mimo `mode: 'all'`
Agent nie jest objęty sandboxem mimo `mode: 'all'`
- Sprawdź, czy istnieje globalne
agents.defaults.sandbox.mode, które je zastępuje. - Konfiguracja specyficzna dla agenta ma pierwszeństwo, więc ustaw
agents.list[].sandbox.mode: "all".
Narzędzia nadal dostępne mimo listy odmów
Narzędzia nadal dostępne mimo listy odmów
- Sprawdź kolejność filtrowania narzędzi: globalne → agent → sandbox → podagent.
- Każdy poziom może tylko dalej ograniczać, nie ponownie przyznawać dostęp.
- Zweryfikuj w logach:
[tools] filtering tools for agent:${agentId}.
Kontener nie jest izolowany na agenta
Kontener nie jest izolowany na agenta
- Ustaw
scope: "agent"w konfiguracji sandboxa specyficznej dla agenta. - Wartością domyślną jest
"session", co tworzy jeden kontener na sesję.
Powiązane
- Tryb podwyższonych uprawnień
- Routing wieloagentowy
- Konfiguracja piaskownicy
- Piaskownica kontra polityka narzędzi kontra tryb podwyższonych uprawnień — debugowanie „dlaczego to jest blokowane?”
- Izolacja w piaskownicy — pełna dokumentacja referencyjna piaskownicy (tryby, zakresy, backendy, obrazy)
- Zarządzanie sesją