Show HN: Local-First Linux MicroVMs for macOS (shuru.run)
Shuru is a lightweight sandbox that spins up Linux VMs on macOS using Apple's Virtualization.framework. Boots in about a second on Apple Silicon, and everything is ephemeral by default. There's a checkpoint system for when you do want to persist state, and sandboxes run without network access unless you explicitly allow it.
Single Rust binary, no dependencies.
Built it for sandboxing AI agent code execution, but it works well for anything where you need a disposable Linux environment.
24 comments
[ 2.8 ms ] story [ 45.1 ms ] threadEarlier this month I wrote about how these layers have very different defensibility profiles and why going monolithic is the wrong call: https://philippdubach.com/posts/dont-go-monolithic-the-agent...
EDIT: Spelling
My idea is to have unified environment across all targets, so the only thing that changes is speed and amount of RAM.
I am excited by the innovation happening in the space!
1 - https://github.com/apple/container
slightly related to this, and i'm not familiar with linux sandboxing/containerization in depth, but any similar turn key solution for linux desktop/server? ideally i have something like sprites/shuru but on my own linux/ubuntu server instead of in the cloud.
I like the defaults (ephemeral, network off). Any thoughts on adding host-mapped directories?
I have a MCP server for ephemeral sandboxes that supports various backends (Docker, E2B, Modal, even WASM). I’ll look at adding this. https://github.com/Kiln-AI/Kilntainers
https://igorstechnoclub.com/sandbox-exec/
One thing I ran into building agent infrastructure: the boundary between "sandbox that runs code" and "agent that decides what code to run" wants to be a clean HTTP interface, not a library call. Makes it easier to audit what crossed the boundary. Does Shuru expose any hook for streaming stdout back to the caller during execution, or is it strictly "wait for exit, get result"?