Live data from Hacker News

Show HN: Clawk – Give coding agents a disposable Linux VM, not your laptop

github.com

101–110 of 177 posts

Re: Show HN: Clawk – Give coding agents a disposable Linux VM, not your laptop

#101

Sprites from Fly io does this beautifully, claude comes preinstalled, its great

The core abstraction seems identical to Fly.io Sprites: give the coding agent its own real Linux machine, put a hard network/isolation boundary around it, then yeet.

Sprites arguably has the better security boundary, since the agent isn’t sitting adjacent to my laptop and home network.

Re: Show HN: Clawk – Give coding agents a disposable Linux VM, not your laptop

#102

YAY, let's build the same thing over and over :/ Did you know that before reinventing the wheel, you can ask LLM your requirements, and they can find the most suited already existing tool ?

`vagrant snapshot` exists.

Re: Show HN: Clawk – Give coding agents a disposable Linux VM, not your laptop

#103

> clawk forward add my-project 3000 > clawk network allow my-project api.example.com Can you describe the implementation details? How did you implement the firewall without root? I vibecoded virtdev, a virtual machine orchestration project just like this one: https://github.com/matheusmoreira/virtdev It was designed to not require root, and the nftables firewall ended up becoming the only exception. I'm very curious…

Thanks! There's no packet firewall at all, no iptables/nftables. On macOS the VM's NIC is a Virtualization.framework file-handle device. The daemon runs gvproxy, which terminates the guest's connections and re-dials them as host sockets, so I filter with an allow-list right before the dial. One caveat, since you asked about root specifically: that's the macOS path, and it only works thanks to the fd NIC. Firecracker…

Thanks for the pointers!! I'm using passt, didn't know about gvproxy. This is awesome and could provide rootless filtering and firewall for my guest VMs. I'm going to experiment with this!

Re: Show HN: Clawk – Give coding agents a disposable Linux VM, not your laptop

#104

> On your own machine that leaves two bad options. You approve every command (and babysit a prompt every few seconds), or you run --dangerously-skip-permissions and hope nothing important is one rm -rf or one leaked token away. Literally everyone has the option to use a VM - it's built into Windows, UTM on MacOS, Docker on Linux. Yes, "a tool that automatically builds a VM" is useful, but we've had a third option (fo…

[dead]

Re: Show HN: Clawk – Give coding agents a disposable Linux VM, not your laptop

#105

> Requires macOS 14+ on Apple silicon. (Linux is supported via firecracker and currently experimental...) So should be noted it's mostly macOS out of the box with some Linux support if I understand right.

mostly macOS out of the box. I've tested it on linux and it worked but it's not my daily driver. I'll make the platform scope clearer in the README

Re: Show HN: Clawk – Give coding agents a disposable Linux VM, not your laptop

#106
post #73

I am certainly no expert in this space so it is quite possible I'm missing something critical, but what seems to work for me is a Podman image I built on my computer with some basic things I need (using OpenCode, but I imagine any other agent could be used instead): FROM docker.io/archlinux:base RUN pacman -Syu --noconfirm && \ pacman -S --noconfirm \ base-devel \ git \ curl \ uv \ opencode && \ pacman -Scc --noconfi…

This is how I started, and then I wanted to bring along creature comforts, not have to re-auth per box (for subscription models), had some skills I usually wanted to bring, wanted slightly different setups for different stacks, sensibly install multiple agents, import git identity (but not credentials), mount other code folders ro but only for certain projects, etc etc, and ended up with a full Docker wrapper.

Ah, that makes sense. I've only recently started playing with this stuff, and I've been focusing a lot of just getting somewhat good at using LLMs for projects while developing my own intuition, so everything I do just uses the mounted project and uv directly. As soon as things get more complex, I imagine I'll end up with a full wrapper as well.

Unrelated: I enjoyed your latest blog entry. I recently starting thinking about how to show the work that is done with AI, and how we talk about it. I haven't come to any major conclusions (I wish!), but your post about the prompting being distinct from the actual work resonates with me. Reminds me somewhat of discussions about the art of photography compared to the art of editing photos as a distinct skill.

Re: Show HN: Clawk – Give coding agents a disposable Linux VM, not your laptop

#107

How many of these are there now, a hundred? We get it, you can run an agent in a VM/container/sandbox. What about configuration management & rollbacks? What about the policy engine? What about dynamic credential management? What about the lethal trifecta? A sandbox is the easiest part and doesn't address the others.

Huh. My virtdev project implements nearly all of that... Except credential injection from the host, which turned out to be on my TODO list.

Re: Show HN: Clawk – Give coding agents a disposable Linux VM, not your laptop

#110

Earlier quoted context omitted.

Thanks! There's no packet firewall at all, no iptables/nftables. On macOS the VM's NIC is a Virtualization.framework file-handle device. The daemon runs gvproxy, which terminates the guest's connections and re-dials them as host sockets, so I filter with an allow-list right before the dial. One caveat, since you asked about root specifically: that's the macOS path, and it only works thanks to the fd NIC. Firecracker…

Thanks for the pointers!! I'm using passt, didn't know about gvproxy. This is awesome and could provide rootless filtering and firewall for my guest VMs. I'm going to experiment with this!

My pleasure! You can find my fork here: https://github.com/clawkwork/gvisor-tap-vsock — the diff is tiny, just a hook in the TCP/UDP/ICMP forwarders that consults an allow-list before dialing
Post reply on HN