CLI commands
Sandbox-CLI
Verwalten Sie Sandbox-Runtimes für die isolierte Agent-Ausführung: Docker-Container, SSH-Ziele oder OpenShell-Backends.
Befehle
openclaw sandbox list
Listet Sandbox-Runtimes mit Status, Backend, Konfigurationsübereinstimmung, Alter, Leerlaufzeit und zugehöriger Sitzung bzw. zugehörigem Agent auf.
openclaw sandbox listopenclaw sandbox list --browser # nur Browser-Containeropenclaw sandbox list --jsonopenclaw sandbox recreate
Entfernt Sandbox-Runtimes, um ihre Neuerstellung mit der aktuellen Konfiguration zu erzwingen. Runtimes werden automatisch neu erstellt, wenn der Agent das nächste Mal verwendet wird.
openclaw sandbox recreate --allopenclaw sandbox recreate --agent mybot # schließt Untersitzungen vom Typ agent:mybot:* einopenclaw sandbox recreate --session "agent:main:main"openclaw sandbox recreate --browser --all # nur Browser-Containeropenclaw sandbox recreate --all --force # Bestätigung überspringenOptionen:
--all: alle Sandbox-Container neu erstellen--session <key>: die Runtime mit diesem exakten Bereichsschlüssel neu erstellen (wie vonsandbox listangezeigt); keine Erweiterung von Kurznamen--agent <id>: Runtimes für einen Agent neu erstellen (entsprichtagent:<id>undagent:<id>:*)--browser: nur Browser-Container betreffen--force: die Bestätigungsabfrage überspringen
Übergeben Sie genau eine der Optionen --all, --session oder --agent.
Bei ssh und OpenShell remote ist die Neuerstellung wichtiger als bei Docker: Nach der anfänglichen Übertragung ist der Remote-Arbeitsbereich maßgeblich. recreate löscht diesen maßgeblichen Remote-Arbeitsbereich für den ausgewählten Bereich, und beim nächsten Lauf wird er erneut aus dem aktuellen lokalen Arbeitsbereich übertragen.
openclaw sandbox explain
Prüft den wirksamen Sandbox-Modus und -Bereich, den Arbeitsbereichszugriff, die Richtlinie für Sandbox-Tools sowie die Zugriffsschranken für Tools mit erhöhten Berechtigungen (einschließlich Konfigurationsschlüsselpfaden zur Behebung).
Der Bericht behält workspaceRoot als konfigurierten Sandbox-Stamm bei und zeigt separat den wirksamen Host-Arbeitsbereich, das Arbeitsverzeichnis der Backend-Runtime und die Docker-Einhängungstabelle. Bei workspaceAccess: "rw" ist der wirksame Host-Arbeitsbereich der Arbeitsbereich des Agent und nicht ein Verzeichnis unterhalb von workspaceRoot.
openclaw sandbox explainopenclaw sandbox explain --session agent:main:mainopenclaw sandbox explain --agent workopenclaw sandbox explain --jsonIm Gegensatz zu recreate --session akzeptiert dieser Befehl kurze Sitzungsnamen (zum Beispiel main) und erweitert sie anhand des aufgelösten Agent.
Warum eine Neuerstellung erforderlich ist
Das Aktualisieren der Sandbox-Konfiguration wirkt sich nicht auf laufende Container aus: Bestehende Runtimes behalten ihre alten Einstellungen, und inaktive Runtimes werden erst nach prune.idleHours (Standardwert: 24h) entfernt. Regelmäßig verwendete Agents können veraltete Runtimes unbegrenzt aktiv halten. openclaw sandbox recreate entfernt die alte Runtime, sodass sie bei der nächsten Verwendung anhand der aktuellen Konfiguration neu erstellt wird.
Häufige Auslöser
| Änderung | Befehl |
|---|---|
Aktualisierung des Docker-Images (agents.defaults.sandbox.docker.image) |
openclaw sandbox recreate --all |
Sandbox-Konfiguration (agents.defaults.sandbox.*) |
openclaw sandbox recreate --all |
SSH-Ziel/-Authentifizierung (agents.defaults.sandbox.ssh.{target,workspaceRoot,identityFile,certificateFile,knownHostsFile,identityData,certificateData,knownHostsData}) |
openclaw sandbox recreate --all |
OpenShell-Quelle/-Richtlinie/-Modus (plugins.entries.openshell.config.{from,mode,policy}) |
openclaw sandbox recreate --all |
setupCommand |
openclaw sandbox recreate --all (oder --agent <id> für einen Agent) |
Registry-Migration
Metadaten der Sandbox-Runtime werden in der gemeinsamen SQLite-Zustandsdatenbank gespeichert. Ältere Installationen können veraltete Registry-Dateien enthalten, die bei regulären Lesevorgängen nicht mehr neu geschrieben werden:
~/.openclaw/sandbox/containers.json~/.openclaw/sandbox/browsers.json- ein JSON-Shard pro Container/Browser unter
~/.openclaw/sandbox/containers/oder~/.openclaw/sandbox/browsers/
Führen Sie openclaw doctor --fix aus, um gültige veraltete Einträge nach SQLite zu migrieren. Ungültige veraltete Dateien werden unter Quarantäne gestellt, damit eine beschädigte alte Registry aktuelle Runtime-Einträge nicht verbergen kann.
Konfiguration
Sandbox-Einstellungen befinden sich in ~/.openclaw/openclaw.json unter agents.defaults.sandbox (Agent-spezifische Überschreibungen gehören in agents.list[].sandbox):
{ "agents": { "defaults": { "sandbox": { "mode": "all", // off, non-main, all "backend": "docker", // docker, ssh, openshell (vom Plugin bereitgestellt) "scope": "agent", // session, agent, shared "docker": { "image": "openclaw-sandbox:bookworm-slim", "containerPrefix": "openclaw-sbx-", // ... weitere Docker-Optionen }, "prune": { "idleHours": 24, // nach 24h Leerlauf automatisch entfernen "maxAgeDays": 7, // nach 7 Tagen automatisch entfernen }, }, }, },}Verwandte Themen
- CLI-Referenz
- Sandboxing
- Agent-Arbeitsbereich
- Doctor: prüft die Sandbox-Einrichtung.