sandboxd --role controller
authenticates requests, validates specs, applies policy, runs AEGIS, records
desired state, assigns leases, accepts results, emits lifecycle events, and
reaps expired work. It does not hold a Docker socket or run tenant code.sandboxd --role worker registers
capacity and isolation capabilities, heartbeats resource availability, leases
assignments, invokes one runtime adapter, bounds output, and reports a result.
Its node ID is stable across restarts through its state directory.sandbox CLI is a typed API client, while
sandbox-mcp is a local stdio JSON-RPC bridge. Neither one owns the production
policy; both request the same controller contract.no-new-privileges, CPU/RAM/PID limits, bounded tmpfs, and an explicit network.
It is intended for dedicated worker hosts or trusted tenants.pending, running, succeeded, or failed; a client must inspect
the operation rather than infer remote completion from an HTTP response.--role all for development or a dedicated single node. Split controller
and worker processes in production when blast radius and host access matter.