Sandboxing
Sandbox vs. Tool-Richtlinie vs. Elevated
Elevated-Modus
Konfigurationsbeispiele
Beispiel 1: Persönlicher Agent und eingeschränkter Familienagent
Beispiel 1: Persönlicher Agent und eingeschränkter Familienagent
main-Agent: wird auf dem Host ausgeführt und hat vollständigen Tool-Zugriff.family-Agent: wird in Docker ausgeführt (ein Container pro Agent) und kann nurreadsowie Nachrichten in der aktuellen Unterhaltung senden.
Beispiel 2: Arbeitsagent mit gemeinsam genutzter Sandbox
Beispiel 2: Arbeitsagent mit gemeinsam genutzter Sandbox
Beispiel 2b: Globales Coding-Profil und Agent ausschließlich für Nachrichten
Beispiel 2b: Globales Coding-Profil und Agent ausschließlich für Nachrichten
- Standardagenten erhalten Coding-Tools.
- Der
support-Agent kann ausschließlich Nachrichten verarbeiten (+ Slack-Tool).
Beispiel 3: Unterschiedliche Sandbox-Modi pro Agent
Beispiel 3: Unterschiedliche Sandbox-Modi pro Agent
Konfigurationsvorrang
Wenn sowohl globale (agents.defaults.*) als auch agentenspezifische (agents.entries.*.*) Konfigurationen vorhanden sind:
Sandbox-Konfiguration
Agentenspezifische Einstellungen überschreiben globale Einstellungen:agents.entries.*.sandbox.{docker,browser,prune}.* überschreibt agents.defaults.sandbox.{docker,browser,prune}.* für diesen Agenten (wird ignoriert, wenn der Sandbox-Geltungsbereich zu "shared" aufgelöst wird).Tool-Einschränkungen
Die Filterreihenfolge lautet:Tool-Profil
tools.profile oder agents.entries.*.tools.profile.Provider-Tool-Profil
tools.byProvider[provider].profile oder agents.entries.*.tools.byProvider[provider].profile.Globale Tool-Richtlinie
tools.allow / tools.deny.Provider-Tool-Richtlinie
tools.byProvider[provider].allow/deny.Agentenspezifische Tool-Richtlinie
agents.entries.*.tools.allow/deny.Agenten-Provider-Richtlinie
agents.entries.*.tools.byProvider[provider].allow/deny.Sandbox-Tool-Richtlinie
tools.sandbox.tools oder agents.entries.*.tools.sandbox.tools.Subagenten-Tool-Richtlinie
tools.subagents.tools, falls zutreffend.Vorrangregeln
Vorrangregeln
- Jede Ebene kann Tools weiter einschränken, aber keine auf früheren Ebenen verweigerten Tools erneut gewähren.
- Wenn
agents.entries.*.tools.sandbox.toolsfestgelegt ist, ersetzt estools.sandbox.toolsfür diesen Agenten. - Wenn
agents.entries.*.tools.profilefestgelegt ist, überschreibt estools.profilefür diesen Agenten. - Provider-Tool-Schlüssel akzeptieren entweder
provider(z. B.google-antigravity) oderprovider/model(z. B.openai/gpt-5.4).
Verhalten bei leerer Zulassungsliste
Verhalten bei leerer Zulassungsliste
agents.entries.*.tools.allow: ["query_db"] konfiguriert ist, soll mit einem deutlichen Fehler abbrechen, bis das Plugin aktiviert wird, das query_db registriert, statt als reiner Textagent fortzufahren.group:*-Kurzformen, die zu mehreren Tools erweitert werden. Die vollständige Liste finden Sie unter Tool-Gruppen.
Agentenspezifische Elevated-Überschreibungen (agents.entries.*.tools.elevated) können die Elevated-Ausführung für bestimmte Agenten weiter einschränken. Weitere Informationen finden Sie unter Elevated-Modus.
Migration von einem einzelnen Agenten
- Vorher (einzelner Agent)
- Nachher (mehrere Agenten)
agents.defaults.*/agents.entries.*.*-Konfigurationsschlüssel (wie sandbox.perSession, agentRuntime, embeddedPi) werden durch openclaw doctor migriert; verwenden Sie künftig vorzugsweise agents.defaults + agents.entries.Beispiele für Tool-Einschränkungen
- Schreibgeschützter Agent
- Shell-Ausführung mit deaktivierten Dateisystem-Tools
- Nur Kommunikation
Häufiger Fallstrick: „non-main“
Testen
Nach der Konfiguration der Multi-Agent-Sandbox und der Tools:Agentenauflösung prüfen
Sandbox-Container überprüfen
Tool-Einschränkungen testen
- Senden Sie eine Nachricht, die eingeschränkte Tools erfordert.
- Überprüfen Sie, dass der Agent verweigerte Tools nicht verwenden kann.
Protokolle überwachen
Fehlerbehebung
Agent wird trotz `mode: 'all'` nicht in einer Sandbox ausgeführt
Agent wird trotz `mode: 'all'` nicht in einer Sandbox ausgeführt
- Prüfen Sie, ob ein globales
agents.defaults.sandbox.modevorhanden ist, das diese Einstellung überschreibt. - Die agentenspezifische Konfiguration hat Vorrang; legen Sie daher
agents.entries.*.sandbox.mode: "all"fest.
Trotz Sperrliste weiterhin verfügbare Tools
Trotz Sperrliste weiterhin verfügbare Tools
- Prüfen Sie die vollständige Filterreihenfolge: Profil → Provider-Profil → globale Richtlinie → Provider-Richtlinie → Agentenrichtlinie → Agenten-Provider-Richtlinie → Sandbox → Subagent.
- Jede Ebene kann nur weitere Einschränkungen vornehmen, nicht jedoch Berechtigungen wieder gewähren.
- Eine schrittweise Anleitung zur Fehlerbehebung finden Sie unter Sandbox vs. Tool-Richtlinie vs. erhöhter Modus.
Container nicht pro Agent isoliert
Container nicht pro Agent isoliert
- Der Standardwert für
scopeist"agent"(ein Container pro Agenten-ID). - Legen Sie
scope: "session"für einen Container pro Sitzung oderscope: "shared"fest, um einen Container agentenübergreifend wiederzuverwenden.
Verwandte Themen
- Erhöhter Modus
- Multi-Agenten-Routing
- Sandbox-Konfiguration
- Sandbox vs. Tool-Richtlinie vs. erhöhter Modus — Fehlerbehebung: „Warum wird dies blockiert?“
- Sandboxing — vollständige Sandbox-Referenz (Modi, Geltungsbereiche, Backends, Images)
- Sitzungsverwaltung