Sandbox CLI
Manage Docker-based sandbox containers for isolated agent execution.
Overview
Section titled “Overview”Kurahi can run agents in isolated Docker containers for security. The sandbox commands help you manage these containers, especially after updates or configuration changes.
Commands
Section titled “Commands”kurahi sandbox explain
Section titled “kurahi sandbox explain”Inspect the effective sandbox mode/scope/workspace access, sandbox tool policy, and elevated gates (with fix-it config key paths).
kurahi sandbox explainkurahi sandbox explain --session agent:main:mainkurahi sandbox explain --agent workkurahi sandbox explain --jsonkurahi sandbox list
Section titled “kurahi sandbox list”List all sandbox containers with their status and configuration.
kurahi sandbox listkurahi sandbox list --browser # List only browser containerskurahi sandbox list --json # JSON outputOutput includes:
- Container name and status (running/stopped)
- Docker image and whether it matches config
- Age (time since creation)
- Idle time (time since last use)
- Associated session/agent
kurahi sandbox recreate
Section titled “kurahi sandbox recreate”Remove sandbox containers to force recreation with updated images/config.
kurahi sandbox recreate --all # Recreate all containerskurahi sandbox recreate --session main # Specific sessionkurahi sandbox recreate --agent mybot # Specific agentkurahi sandbox recreate --browser # Only browser containerskurahi sandbox recreate --all --force # Skip confirmationOptions:
--all: Recreate all sandbox containers--session <key>: Recreate container for specific session--agent <id>: Recreate containers for specific agent--browser: Only recreate browser containers--force: Skip confirmation prompt
Important: Containers are automatically recreated when the agent is next used.
Use Cases
Section titled “Use Cases”After updating Docker images
Section titled “After updating Docker images”# Pull new imagedocker pull kolo-sandbox:latestdocker tag kolo-sandbox:latest kolo-sandbox:bookworm-slim
# Update config to use new image# Edit config: agents.defaults.sandbox.docker.image (or agents.list[].sandbox.docker.image)
# Recreate containerskurahi sandbox recreate --allAfter changing sandbox configuration
Section titled “After changing sandbox configuration”# Edit config: agents.defaults.sandbox.* (or agents.list[].sandbox.*)
# Recreate to apply new configkurahi sandbox recreate --allAfter changing setupCommand
Section titled “After changing setupCommand”kurahi sandbox recreate --all# or just one agent:kurahi sandbox recreate --agent familyFor a specific agent only
Section titled “For a specific agent only”# Update only one agent's containerskurahi sandbox recreate --agent alfredWhy is this needed?
Section titled “Why is this needed?”Problem: When you update sandbox Docker images or configuration:
- Existing containers continue running with old settings
- Containers are only pruned after 24h of inactivity
- Regularly-used agents keep old containers running indefinitely
Solution: Use kurahi sandbox recreate to force removal of old containers. They’ll be recreated automatically with current settings when next needed.
Tip: prefer kurahi sandbox recreate over manual docker rm. It uses the
Gateway’s container naming and avoids mismatches when scope/session keys change.
Configuration
Section titled “Configuration”Sandbox settings live in ~/.kolo/kolo.json under agents.defaults.sandbox (per-agent overrides go in agents.list[].sandbox):
{ "agents": { "defaults": { "sandbox": { "mode": "all", // off, non-main, all "scope": "agent", // session, agent, shared "docker": { "image": "kolo-sandbox:bookworm-slim", "containerPrefix": "kolo-sbx-", // ... more Docker options }, "prune": { "idleHours": 24, // Auto-prune after 24h idle "maxAgeDays": 7, // Auto-prune after 7 days }, }, }, },}See Also
Section titled “See Also”- Sandbox Documentation
- Agent Configuration
- Doctor Command - Check sandbox setup