mentalgear
4 months ago
I would really like to see a good local sandboxing solution in this space, something that is truly local-first. This is especially important since many coding models / agentic builders will eventually become lightweight enough to run them on-device instead of having to buy tokens and share user data with big LLM cloud providers.
dloss
4 months ago
Anthropic recently released a sandboxing tool based on bubblewrap (Linux, quite lightweight) and sandbox-exec (macOS). https://github.com/anthropic-experimental/sandbox-runtime
I wonder if nsjails or gVisor may be useful as well. Here's a more comprehensive list of sandboxing solutions: https://github.com/restyler/awesome-sandbox
gbxk
4 months ago
wow that's super new! Thanks for that, will look deeply into it and compare
mkagenius
4 months ago
> something that is truly local-first
Hey, we built coderunner[1] exactly for this purpose. It's completely local. We use apple containers for this (which are 1:1 mapped to a lightweight VM).
1. Coderunner - https://github.com/instavm/coderunner
gbxk
4 months ago
Very cool! Apple containers run on Apple ARM so it's complimentary to my stack which doesn't support ARM yet (but soon will when extending to Qemu which supports ARM). Thanks for sharing!
gbxk
4 months ago
(sorry I didn't reply in-thread, I'm new to HN, re-posting response here:)
Exactly! The main local requirement is to have hardware virtualization available (e.g. /dev/kvm) but that should be fine on your local linux machine. Won't work in cloud machines or on Mac ARM in current form but maybe if I extend
elric
4 months ago
Are there any such solutions that can adequately protect against side-channel attacks (à la rowhammer, meltdown, spectre, ...)? I mean protecting local file access and network access is pretty easy, but side-channels and VM escaping attacks seem like a bigger concern.
sshine
4 months ago
https://rstrict.cloud/ is a CLI built in Rust on top of the Landlock API for the Linux kernel.
It lets you narrow the permission scope of an executable using simple command line wrappers.
gbxk
4 months ago
Thanks, will study that one too!
kernc
4 months ago
Local-first (on Lunix), POSIX shell: https://github.com/sandbox-utils/sandbox-run
gbxk
4 months ago
Thanks for sharing, adding it to my list.
_false
4 months ago
What about this: https://github.com/apple/container
gbxk
4 months ago
Very cool one. That's dedicated to Apple ARM which I don't currently support so the two are complimentary. Apple containers shares some primitives with Kata. I'll investigate if it's possible to use Apple containers as a VMM inside Kata, or creating an Apple Containers runtime class in Kubernetes. If either is possible, we could then potentially use Apple containers as a backend in Katakate. I need more time to study that.