Live artifacts are three different architectures

A sandboxed page with a versioned link, a full dev environment in a browser tab, and real production component code all get called the same thing, and each trades control against containment differently.

'Live artifact' names three genuinely different architectures that share one surface feature — the output renders instead of displaying as text — and nothing else. The first: an AI chat platform renders generated HTML or React inside a sandboxed frame assembled from full context, and iterating republishes in place at a stable, versioned link. The second: a full Node environment compiled to WebAssembly runs entirely inside the browser tab — virtual filesystem, virtualized network, a real dev server, no remote VM — and a model operating here controls an entire environment, not just a rendered output. The third is generative UI: real React and component-library code, iteratively edited, optimized for production-realistic reuse rather than a sandboxed preview. The point isn't the preview, it's the code that ships. These diverge on security by design: OS-level sandboxing wraps every subprocess a coding agent spawns, a microVM-per-execution model gives each run its own machine, and a plain CSP iframe disables scripts and forms by default and re-enables them token by token. The underlying decision is how much control you hand the model against how contained the blast radius is when it's wrong. A full in-browser OS maximizes control and minimizes containment; a CSP iframe is the reverse. I picked the middle the same way anyone does — by deciding how much I trust the model, and how much I'd rather not find out.

All Thinking pieces