Per-request ephemeral isolation
Some workloads want a clean, isolated environment per request — a fresh box that runs one thing and is discarded. Because ZViz is a single static binary with no daemon, it fits that spawn-run-destroy pattern without a supervisor process to manage.
The problem
Request-scoped workloads want a clean room per request: run exactly one task, in a fresh environment, then throw the environment away. Reusing a long-lived sandbox risks state leaking between requests; managing a daemon to broker those sandboxes adds operational surface you did not want.
How ZViz helps
ZViz is built as a single static binary with no daemon. zviz run applies the enforcement stack and
exec-replaces into PID 1, then exits when the workload does. That makes the spawn-run-destroy pattern natural:
- Fresh namespaces per request — no state carried from the last run.
- No supervisor to keep alive or reason about.
- No guest kernel to boot, unlike a MicroVM — a smaller per-request cost.
- cgroups v2 limits so a single request cannot exhaust the host.
When to reach for something else
If a request must run debuggers, mount filesystems, or nest containers, use gVisor. If it demands a hardware-virtualized boundary, use a MicroVM. For clean, cheap, request-scoped isolation of untrusted work, ZViz is a direct fit — see the quickstart.
Frequently Asked Questions
Why does no-daemon matter for ephemeral workloads?
A daemon-based runtime adds a long-running supervisor you must keep healthy and reason about. ZViz exec-replaces into PID 1 with no supervisor, so a spawn-run-destroy pattern has fewer moving parts.
How fresh is each container?
Each run gets its own namespaces, capability set (empty), Landlock ruleset, seccomp filter, and cgroup. Nothing is shared with the previous run unless you explicitly mount it in.
Related
AI agent code execution
Run LLM-generated code inside ZViz so a prompt injection fails at the kernel boundary, not in production.
Use caseCI sandboxing
Run builds on opaque dependency trees with a smaller kernel attack surface than plain runc.
Use caseCode-execution platforms
Back notebooks, REPLs, and "run this snippet" products with a runtime that assumes every submission is hostile.