Gateway
Sandboxing
OpenClaw kann Tools innerhalb von Sandbox-Backends ausführen, um den Blast Radius zu verringern. Dies ist optional und wird über die Konfiguration gesteuert (agents.defaults.sandbox oder agents.list[].sandbox). Wenn Sandboxing deaktiviert ist, werden Tools auf dem Host ausgeführt. Der Gateway bleibt auf dem Host; die Tool-Ausführung läuft bei Aktivierung in einer isolierten Sandbox.
Was in die Sandbox gelegt wird
- Tool-Ausführung (
exec,read,write,edit,apply_patch,processusw.). - Optionaler Browser in der Sandbox (
agents.defaults.sandbox.browser).
Details zum Browser in der Sandbox
- Standardmäßig startet der Sandbox-Browser automatisch (stellt sicher, dass CDP erreichbar ist), wenn das Browser-Tool ihn benötigt. Konfigurieren Sie dies über
agents.defaults.sandbox.browser.autoStartundagents.defaults.sandbox.browser.autoStartTimeoutMs. - Standardmäßig verwenden Sandbox-Browser-Container ein dediziertes Docker-Netzwerk (
openclaw-sandbox-browser) statt des globalenbridge-Netzwerks. Konfigurieren Sie dies mitagents.defaults.sandbox.browser.network. - Optional beschränkt
agents.defaults.sandbox.browser.cdpSourceRangeden CDP-Eingang am Container-Rand mit einer CIDR-Allowlist (zum Beispiel172.21.0.1/32). - Der noVNC-Beobachterzugriff ist standardmäßig passwortgeschützt; OpenClaw gibt eine kurzlebige Token-URL aus, die eine lokale Bootstrap-Seite bereitstellt und noVNC mit dem Passwort im URL-Fragment öffnet (nicht in Abfrage-/Header-Logs).
agents.defaults.sandbox.browser.allowHostControlermöglicht Sandbox-Sitzungen, explizit den Host-Browser anzusteuern.- Optionale Allowlists schützen
target: "custom":allowedControlUrls,allowedControlHosts,allowedControlPorts.
Nicht in der Sandbox:
- Der Gateway-Prozess selbst.
- Jedes Tool, das explizit außerhalb der Sandbox ausgeführt werden darf (z. B.
tools.elevated).- Elevated Exec umgeht Sandboxing und verwendet den konfigurierten Escape-Pfad (standardmäßig
gateway, odernode, wenn das Exec-Zielnodeist). - Wenn Sandboxing deaktiviert ist, ändert
tools.elevateddie Ausführung nicht (bereits auf dem Host). Siehe Elevated Mode.
- Elevated Exec umgeht Sandboxing und verwendet den konfigurierten Escape-Pfad (standardmäßig
Modi
agents.defaults.sandbox.mode steuert, wann Sandboxing verwendet wird:
off
Kein Sandboxing.
non-main
Nur non-main-Sitzungen in der Sandbox (Standard, wenn normale Chats auf dem Host laufen sollen).
"non-main" basiert auf session.mainKey (Standard "main"), nicht auf der Agent-ID. Gruppen-/Channel-Sitzungen verwenden eigene Schlüssel, daher zählen sie als non-main und werden in die Sandbox gelegt.
all
Jede Sitzung läuft in einer Sandbox.
Geltungsbereich
agents.defaults.sandbox.scope steuert, wie viele Container erstellt werden:
"agent"(Standard): ein Container pro Agent."session": ein Container pro Sitzung."shared": ein Container, der von allen Sandbox-Sitzungen gemeinsam genutzt wird.
Backend
agents.defaults.sandbox.backend steuert, welche Laufzeitumgebung die Sandbox bereitstellt:
"docker"(Standard, wenn Sandboxing aktiviert ist): lokale Docker-gestützte Sandbox-Laufzeitumgebung."ssh": generische SSH-gestützte Remote-Sandbox-Laufzeitumgebung."openshell": OpenShell-gestützte Sandbox-Laufzeitumgebung.
SSH-spezifische Konfiguration befindet sich unter agents.defaults.sandbox.ssh. OpenShell-spezifische Konfiguration befindet sich unter plugins.entries.openshell.config.
Backend auswählen
| Docker | SSH | OpenShell | |
|---|---|---|---|
| Ausführungsort | Lokaler Container | Jeder per SSH erreichbare Host | Von OpenShell verwaltete Sandbox |
| Einrichtung | scripts/sandbox-setup.sh |
SSH-Schlüssel + Ziel-Host | OpenShell-Plugin aktiviert |
| Workspace-Modell | Bind-Mount oder Kopie | Remote-kanonisch (einmalig seed) | mirror oder remote |
| Netzwerksteuerung | docker.network (Standard: none) |
Hängt vom Remote-Host ab | Hängt von OpenShell ab |
| Browser-Sandbox | Unterstützt | Nicht unterstützt | Noch nicht unterstützt |
| Bind-Mounts | docker.binds |
N/A | N/A |
| Am besten für | Lokale Entwicklung, vollständige Isolation | Auslagerung auf eine Remote-Maschine | Verwaltete Remote-Sandboxes mit optionaler bidirektionaler Synchronisierung |
Docker-Backend
Sandboxing ist standardmäßig deaktiviert. Wenn Sie Sandboxing aktivieren und kein Backend auswählen, verwendet OpenClaw das Docker-Backend. Es führt Tools und Sandbox-Browser lokal über den Docker-Daemon-Socket (/var/run/docker.sock) aus. Die Isolation von Sandbox-Containern wird durch Docker-Namespaces bestimmt.
Um Host-GPUs für Docker-Sandboxes verfügbar zu machen, setzen Sie agents.defaults.sandbox.docker.gpus oder die agentspezifische Überschreibung agents.list[].sandbox.docker.gpus. Der Wert wird als separates Argument an Dockers --gpus-Flag übergeben, zum Beispiel "all" oder "device=GPU-uuid", und erfordert eine kompatible Host-Laufzeitumgebung wie NVIDIA Container Toolkit.
SSH-Backend
Verwenden Sie backend: "ssh", wenn OpenClaw exec, Datei-Tools und Medienlesevorgänge auf einer beliebigen per SSH erreichbaren Maschine in eine Sandbox legen soll.
{ agents: { defaults: { sandbox: { mode: "all", backend: "ssh", scope: "session", workspaceAccess: "rw", ssh: { target: "user@gateway-host:22", workspaceRoot: "/tmp/openclaw-sandboxes", strictHostKeyChecking: true, updateHostKeys: true, identityFile: "~/.ssh/id_ed25519", certificateFile: "~/.ssh/id_ed25519-cert.pub", knownHostsFile: "~/.ssh/known_hosts", // Or use SecretRefs / inline contents instead of local files: // identityData: { source: "env", provider: "default", id: "SSH_IDENTITY" }, // certificateData: { source: "env", provider: "default", id: "SSH_CERTIFICATE" }, // knownHostsData: { source: "env", provider: "default", id: "SSH_KNOWN_HOSTS" }, }, }, }, },}Funktionsweise
- OpenClaw erstellt ein Remote-Root pro Geltungsbereich unter
sandbox.ssh.workspaceRoot. - Bei der ersten Verwendung nach Erstellung oder Neuerstellung seedet OpenClaw diesen Remote-Workspace einmal aus dem lokalen Workspace.
- Danach werden
exec,read,write,edit,apply_patch, Prompt-Medienlesevorgänge und eingehendes Medien-Staging direkt über SSH gegen den Remote-Workspace ausgeführt. - OpenClaw synchronisiert Remote-Änderungen nicht automatisch zurück in den lokalen Workspace.
Authentifizierungsmaterial
identityFile,certificateFile,knownHostsFile: vorhandene lokale Dateien verwenden und über die OpenSSH-Konfiguration weitergeben.identityData,certificateData,knownHostsData: Inline-Strings oder SecretRefs verwenden. OpenClaw löst sie über den normalen Laufzeit-Snapshot für Secrets auf, schreibt sie mit0600in temporäre Dateien und löscht sie, wenn die SSH-Sitzung endet.- Wenn für dasselbe Element sowohl
*Fileals auch*Datagesetzt sind, gewinnt*Datafür diese SSH-Sitzung.
Remote-kanonische Konsequenzen
Dies ist ein remote-kanonisches Modell. Der Remote-SSH-Workspace wird nach dem initialen Seed zum echten Sandbox-Zustand.
- Host-lokale Änderungen, die nach dem Seed-Schritt außerhalb von OpenClaw vorgenommen werden, sind remote nicht sichtbar, bis Sie die Sandbox neu erstellen.
openclaw sandbox recreatelöscht das Remote-Root pro Geltungsbereich und seedet bei der nächsten Verwendung erneut aus dem lokalen Workspace.- Browser-Sandboxing wird im SSH-Backend nicht unterstützt.
sandbox.docker.*-Einstellungen gelten nicht für das SSH-Backend.
OpenShell-Backend
Verwenden Sie backend: "openshell", wenn OpenClaw Tools in einer von OpenShell verwalteten Remote-Umgebung in eine Sandbox legen soll. Die vollständige Einrichtungsanleitung, Konfigurationsreferenz und den Vergleich der Workspace-Modi finden Sie auf der dedizierten OpenShell-Seite.
OpenShell verwendet denselben zentralen SSH-Transport und dieselbe Remote-Dateisystem-Bridge wie das generische SSH-Backend wieder und ergänzt OpenShell-spezifischen Lifecycle (sandbox create/get/delete, sandbox ssh-config) sowie den optionalen Workspace-Modus mirror.
{ agents: { defaults: { sandbox: { mode: "all", backend: "openshell", scope: "session", workspaceAccess: "rw", }, }, }, plugins: { entries: { openshell: { enabled: true, config: { from: "openclaw", mode: "remote", // mirror | remote remoteWorkspaceDir: "/sandbox", remoteAgentWorkspaceDir: "/agent", }, }, }, },}OpenShell-Modi:
mirror(Standard): Der lokale Workspace bleibt kanonisch. OpenClaw synchronisiert lokale Dateien vor Exec in OpenShell und synchronisiert den Remote-Workspace nach Exec zurück.remote: Der OpenShell-Workspace ist kanonisch, nachdem die Sandbox erstellt wurde. OpenClaw seedet den Remote-Workspace einmal aus dem lokalen Workspace, danach werden Datei-Tools und Exec direkt gegen die Remote-Sandbox ausgeführt, ohne Änderungen zurückzusynchronisieren.
Details zum Remote-Transport
- OpenClaw fragt OpenShell über
openshell sandbox ssh-config <name>nach sandbox-spezifischer SSH-Konfiguration. - Core schreibt diese SSH-Konfiguration in eine temporäre Datei, öffnet die SSH-Sitzung und verwendet dieselbe Remote-Dateisystem-Bridge wieder, die auch von
backend: "ssh"genutzt wird. - Im Modus
mirrorunterscheidet sich nur der Lebenszyklus: vorexeclokal nach remote synchronisieren, dann nachexeczurück synchronisieren.
Aktuelle OpenShell-Einschränkungen
- Sandbox-Browser wird noch nicht unterstützt
sandbox.docker.bindswird im OpenShell-Backend nicht unterstützt- Docker-spezifische Laufzeitoptionen unter
sandbox.docker.*gelten weiterhin nur für das Docker-Backend
Workspace-Modi
OpenShell hat zwei Workspace-Modelle. Das ist in der Praxis der wichtigste Teil.
mirror (lokal kanonisch)
Verwenden Sie plugins.entries.openshell.config.mode: "mirror", wenn der lokale Workspace kanonisch bleiben soll.
Verhalten:
- Vor
execsynchronisiert OpenClaw den lokalen Workspace in die OpenShell-Sandbox. - Nach
execsynchronisiert OpenClaw den Remote-Workspace zurück in den lokalen Workspace. - Datei-Tools arbeiten weiterhin über die Sandbox-Bridge, aber der lokale Workspace bleibt zwischen Turns die Quelle der Wahrheit.
Verwenden Sie dies, wenn:
- Sie Dateien lokal außerhalb von OpenClaw bearbeiten und möchten, dass diese Änderungen automatisch in der Sandbox erscheinen
- sich die OpenShell-Sandbox möglichst ähnlich wie das Docker-Backend verhalten soll
- der Host-Workspace Sandbox-Schreibvorgänge nach jedem Exec-Turn widerspiegeln soll
Tradeoff: zusätzlicher Synchronisierungsaufwand vor und nach exec.
remote (OpenShell-kanonisch)
Verwenden Sie plugins.entries.openshell.config.mode: "remote", wenn der OpenShell-Workspace kanonisch werden soll.
Verhalten:
- Wenn die Sandbox erstmals erstellt wird, befüllt OpenClaw den Remote-Workspace einmalig aus dem lokalen Workspace.
- Danach arbeiten
exec,read,write,editundapply_patchdirekt gegen den Remote-OpenShell-Workspace. - OpenClaw synchronisiert Remote-Änderungen nach exec nicht zurück in den lokalen Workspace.
- Medienlesevorgänge zur Prompt-Zeit funktionieren weiterhin, weil Datei- und Medien-Tools über die Sandbox-Bridge lesen, statt einen lokalen Host-Pfad anzunehmen.
- Der Transport erfolgt per SSH in die von
openshell sandbox ssh-configzurückgegebene OpenShell-Sandbox.
Wichtige Folgen:
- Wenn Sie nach dem Seed-Schritt Dateien auf dem Host außerhalb von OpenClaw bearbeiten, sieht die Remote-Sandbox diese Änderungen nicht automatisch.
- Wenn die Sandbox neu erstellt wird, wird der Remote-Workspace erneut aus dem lokalen Workspace befüllt.
- Mit
scope: "agent"oderscope: "shared"wird dieser Remote-Workspace in demselben Scope geteilt.
Verwenden Sie dies, wenn:
- die Sandbox primär auf der Remote-OpenShell-Seite leben soll
- Sie geringeren Synchronisierungsaufwand pro Turn wünschen
- Sie nicht möchten, dass host-lokale Bearbeitungen den Remote-Sandbox-Zustand stillschweigend überschreiben
Wählen Sie mirror, wenn Sie die Sandbox als temporäre Ausführungsumgebung betrachten. Wählen Sie remote, wenn Sie die Sandbox als den eigentlichen Workspace betrachten.
OpenShell-Lebenszyklus
OpenShell-Sandboxes werden weiterhin über den normalen Sandbox-Lebenszyklus verwaltet:
openclaw sandbox listzeigt OpenShell-Runtimes ebenso wie Docker-Runtimesopenclaw sandbox recreatelöscht die aktuelle Runtime und lässt OpenClaw sie bei der nächsten Verwendung neu erstellen- Die Bereinigungslogik ist ebenfalls backend-bewusst
Für den Modus remote ist recreate besonders wichtig:
- recreate löscht den kanonischen Remote-Workspace für diesen Scope
- die nächste Verwendung befüllt einen frischen Remote-Workspace aus dem lokalen Workspace
Für den Modus mirror setzt recreate hauptsächlich die Remote-Ausführungsumgebung zurück, weil der lokale Workspace ohnehin kanonisch bleibt.
Workspace-Zugriff
agents.defaults.sandbox.workspaceAccess steuert, was die Sandbox sehen kann:
none (Standard)
Tools sehen einen Sandbox-Workspace unter ~/.openclaw/sandboxes.
ro
Mountet den Agent-Workspace schreibgeschützt unter /agent (deaktiviert write/edit/apply_patch).
rw
Mountet den Agent-Workspace mit Lese-/Schreibzugriff unter /workspace.
Mit dem OpenShell-Backend:
- Der Modus
mirrorverwendet zwischen Exec-Turns weiterhin den lokalen Workspace als kanonische Quelle - Der Modus
remoteverwendet nach dem initialen Seed den Remote-OpenShell-Workspace als kanonische Quelle workspaceAccess: "ro"und"none"schränken das Schreibverhalten weiterhin auf dieselbe Weise ein
Eingehende Medien werden in den aktiven Sandbox-Workspace kopiert (media/inbound/*).
Benutzerdefinierte Bind-Mounts
agents.defaults.sandbox.docker.binds mountet zusätzliche Host-Verzeichnisse in den Container. Format: host:container:mode (z. B. "/home/user/source:/source:rw").
Globale und agent-spezifische Binds werden zusammengeführt (nicht ersetzt). Unter scope: "shared" werden agent-spezifische Binds ignoriert.
agents.defaults.sandbox.browser.binds mountet zusätzliche Host-Verzeichnisse nur in den Sandbox-Browser-Container.
- Wenn gesetzt (einschließlich
[]), ersetzt esagents.defaults.sandbox.docker.bindsfür den Browser-Container. - Wenn weggelassen, fällt der Browser-Container auf
agents.defaults.sandbox.docker.bindszurück (abwärtskompatibel).
Beispiel (schreibgeschützte Quelle + ein zusätzliches Datenverzeichnis):
{ agents: { defaults: { sandbox: { docker: { binds: ["/home/user/source:/source:ro", "/var/data/myapp:/data:ro"], }, }, }, list: [ { id: "build", sandbox: { docker: { binds: ["/mnt/cache:/cache:rw"], }, }, }, ], },}Images und Einrichtung
Standard-Docker-Image: openclaw-sandbox:bookworm-slim
Standard-Image bauen
Aus einem Source-Checkout:
scripts/sandbox-setup.shAus einer npm-Installation (kein Source-Checkout erforderlich):
docker build -t openclaw-sandbox:bookworm-slim - <<'DOCKERFILE'FROM debian:bookworm-slimENV DEBIAN_FRONTEND=noninteractiveRUN apt-get update && apt-get install -y --no-install-recommends \ bash ca-certificates curl git jq python3 ripgrep \ && rm -rf /var/lib/apt/lists/*RUN useradd --create-home --shell /bin/bash sandboxUSER sandboxWORKDIR /home/sandboxCMD ["sleep", "infinity"]DOCKERFILEDas Standard-Image enthält kein Node. Wenn ein Skill Node (oder andere Runtimes) benötigt, bauen Sie entweder ein benutzerdefiniertes Image oder installieren Sie über sandbox.docker.setupCommand (erfordert Netzwerk-Egress + beschreibbare Wurzel + Root-Benutzer).
OpenClaw ersetzt ein fehlendes openclaw-sandbox:bookworm-slim nicht stillschweigend durch schlichtes debian:bookworm-slim. Sandbox-Läufe, die auf das Standard-Image zielen, schlagen schnell mit einer Build-Anweisung fehl, bis Sie es bauen, weil das gebündelte Image python3 für Sandbox-Schreib-/Bearbeitungshilfen enthält.
Optional: Common-Image bauen
Für ein funktionaleres Sandbox-Image mit gängigen Tools (zum Beispiel curl, jq, Node 24, pnpm, python3 und git):
Aus einem Source-Checkout:
scripts/sandbox-common-setup.shAus einer npm-Installation bauen Sie zuerst das Standard-Image (siehe oben) und bauen dann das Common-Image darauf auf, indem Sie scripts/docker/sandbox/Dockerfile.common aus dem Repository verwenden.
Setzen Sie dann agents.defaults.sandbox.docker.image auf openclaw-sandbox-common:bookworm-slim.
Optional: Sandbox-Browser-Image bauen
Aus einem Source-Checkout:
scripts/sandbox-browser-setup.shAus einer npm-Installation bauen Sie mit scripts/docker/sandbox/Dockerfile.browser aus dem Repository.
Standardmäßig laufen Docker-Sandbox-Container mit keinem Netzwerk. Überschreiben Sie dies mit agents.defaults.sandbox.docker.network.
Chromium-Standards für den Sandbox-Browser
Das gebündelte Sandbox-Browser-Image wendet außerdem konservative Chromium-Startstandards für containerisierte Workloads an. Aktuelle Container-Standards umfassen:
--remote-debugging-address=127.0.0.1--remote-debugging-port=<derived from OPENCLAW_BROWSER_CDP_PORT>--user-data-dir=${HOME}/.chrome--no-first-run--no-default-browser-check--disable-3d-apis--disable-gpu--disable-dev-shm-usage--disable-background-networking--disable-extensions--disable-features=TranslateUI--disable-breakpad--disable-crash-reporter--disable-software-rasterizer--no-zygote--metrics-recording-only--renderer-process-limit=2--no-sandbox, wennnoSandboxaktiviert ist.- Die drei Grafik-Härtungsflags (
--disable-3d-apis,--disable-software-rasterizer,--disable-gpu) sind optional und nützlich, wenn Container keine GPU-Unterstützung haben. Setzen SieOPENCLAW_BROWSER_DISABLE_GRAPHICS_FLAGS=0, wenn Ihr Workload WebGL oder andere 3D-/Browser-Funktionen erfordert. --disable-extensionsist standardmäßig aktiviert und kann mitOPENCLAW_BROWSER_DISABLE_EXTENSIONS=0für flows deaktiviert werden, die auf Erweiterungen angewiesen sind.--renderer-process-limit=2wird durchOPENCLAW_BROWSER_RENDERER_PROCESS_LIMIT=<N>gesteuert, wobei0den Chromium-Standard beibehält.
Wenn Sie ein anderes Runtime-Profil benötigen, verwenden Sie ein benutzerdefiniertes Browser-Image und stellen Sie Ihren eigenen Entrypoint bereit. Für lokale (nicht containerisierte) Chromium-Profile verwenden Sie browser.extraArgs, um zusätzliche Startflags anzuhängen.
Netzwerk-Sicherheitsstandards
network: "host"ist blockiert.network: "container:<id>"ist standardmäßig blockiert (Risiko der Umgehung durch Namespace-Beitritt).- Notfall-Override:
agents.defaults.sandbox.docker.dangerouslyAllowContainerNamespaceJoin: true.
Docker-Installationen und der containerisierte Gateway befinden sich hier: Docker
Für Docker-Gateway-Bereitstellungen kann scripts/docker/setup.sh die Sandbox-Konfiguration bootstrappen. Setzen Sie OPENCLAW_SANDBOX=1 (oder true/yes/on), um diesen Pfad zu aktivieren. Sie können den Socket-Speicherort mit OPENCLAW_DOCKER_SOCKET überschreiben. Vollständige Setup- und Umgebungsreferenz: Docker.
setupCommand (einmalige Container-Einrichtung)
setupCommand wird einmal ausgeführt, nachdem der Sandbox-Container erstellt wurde (nicht bei jedem Lauf). Es wird innerhalb des Containers über sh -lc ausgeführt.
Pfade:
- Global:
agents.defaults.sandbox.docker.setupCommand - Pro Agent:
agents.list[].sandbox.docker.setupCommand
Häufige Stolperfallen
- Der Standardwert für
docker.networkist"none"(kein ausgehender Netzwerkzugriff), daher schlagen Paketinstallationen fehl. docker.network: "container:<id>"erfordertdangerouslyAllowContainerNamespaceJoin: trueund ist nur für Notfälle vorgesehen.readOnlyRoot: trueverhindert Schreibzugriffe; setzen SiereadOnlyRoot: falseoder erstellen Sie ein eigenes Image.usermuss für Paketinstallationen root sein (lassen Sieuserweg oder setzen Sieuser: "0:0").- Sandbox-Exec erbt nicht
process.envdes Hosts. Verwenden Sieagents.defaults.sandbox.docker.env(oder ein eigenes Image) für Skill-API-Schlüssel. - Werte in
agents.defaults.sandbox.docker.envwerden als explizite Docker-Container-Umgebungsvariablen übergeben. Jeder mit Zugriff auf den Docker-Daemon kann sie mit Docker-Metadatenbefehlen wiedocker inspecteinsehen. Verwenden Sie ein eigenes Image, eine eingehängte Secret-Datei oder einen anderen Secret-Bereitstellungspfad, wenn diese Metadaten-Offenlegung nicht akzeptabel ist.
Tool-Richtlinie und Notfallausnahmen
Tool-Zulassen-/Verweigern-Richtlinien gelten weiterhin vor Sandbox-Regeln. Wenn ein Tool global oder pro Agent verweigert wird, bringt Sandboxing es nicht zurück.
tools.elevated ist eine explizite Notfallausnahme, die exec außerhalb der Sandbox ausführt (standardmäßig gateway oder node, wenn das Exec-Ziel node ist). /exec-Direktiven gelten nur für autorisierte Absender und bleiben pro Sitzung bestehen; um exec hart zu deaktivieren, verwenden Sie die Tool-Richtlinie zum Verweigern (siehe Sandbox vs Tool Policy vs Elevated).
Debugging:
- Verwenden Sie
openclaw sandbox explain, um den effektiven Sandbox-Modus, die Tool-Richtlinie und Fix-it-Konfigurationsschlüssel zu prüfen. - Siehe Sandbox vs Tool Policy vs Elevated für das mentale Modell zu „Warum ist das blockiert?“.
Halten Sie die Umgebung abgesichert.
Multi-Agent-Overrides
Jeder Agent kann Sandbox und Tools überschreiben: agents.list[].sandbox und agents.list[].tools (plus agents.list[].tools.sandbox.tools für die Sandbox-Tool-Richtlinie). Siehe Multi-Agent Sandbox & Tools für die Rangfolge.
Minimales Aktivierungsbeispiel
{ agents: { defaults: { sandbox: { mode: "non-main", scope: "session", workspaceAccess: "none", }, }, },}Verwandte Themen
- Multi-Agent Sandbox & Tools — Overrides pro Agent und Rangfolge
- OpenShell — Einrichtung des verwalteten Sandbox-Backends, Workspace-Modi und Konfigurationsreferenz
- Sandbox-Konfiguration
- Sandbox vs Tool Policy vs Elevated — Debugging für „Warum ist das blockiert?“
- Sicherheit