Remix.run Logo
sahil-shubham 9 hours ago

The point about VMs being the wrong shape because they’re tied to CPU/memory resonates hard. The abstraction forces you to pay for time, not work.

I ended up buying a cheap auctioned Hetzner server and using my self-hostable Firecracker orchestrator on top of it (https://github.com/sahil-shubham/bhatti, https://bhatti.sh) specifically because I wanted the thing he’s describing — buy some hardware, carve it into as many VMs as I want, and not think about provisioning or their lifecycle. Idle VMs snapshot to disk and free all RAM automatically. The hardware is mine, the VMs are disposable, and idle costs nothing.

The thing that, although obvious, surprised me most is that once you have memory-state snapshots, everything becomes resumable. I make a browser sandbox, get Chromium to a logged-in state, snapshot it, and resume copies of that session on demand. My agents work inside sandboxes, I run docker compose in them for preview environments, and when nothing’s active the server is basically idle. One $100/month box does all of it.

messh 2 hours ago | parent | next [-]

Vms hosted in Hetzner auction instances is exactly how shellbox works. I published more details in here: https://shellbox.dev/blog/race-to-the-bottom.html

sahil-shubham 19 minutes ago | parent [-]

Love the website and how you have implemented payments! Also giving each box an email is a nice touch.

Thank you for sharing!

otterley 2 hours ago | parent | prev | next [-]

This looks interesting at first blush.

My only feedback so far is that a lot of the documentation, though thorough and useful, looks clearly AI-written. That's not bad in and of itself, but it could be more concise. I especially love the "design decisions" section as I learned something new already.

Have you posted it on "Show HN" already? If not, you should.

sahil-shubham 2 hours ago | parent [-]

Thank you for the feedback! I appreciate it, looking forward to you trying it out and logging any issues.

I am aware of the documentation, it’s what I have been focusing on before I can post on HN. I want to make it a delight to read for other people!

As for the design decisions, I have tried keeping all the plans I made in the repo too. I wouldn’t have been able to make bhatti in a month without LLMs.

codethief 7 hours ago | parent | prev | next [-]

> My agents work inside sandboxes

Out of interest, what sandboxing solution do you use?

sahil-shubham 7 hours ago | parent [-]

Not sure what you mean. I use the above linked personal project, bhatti, which internally uses Firecracker microVMs.

codethief 3 hours ago | parent [-]

Ah, for some reason I didn't make the connection between your VM setup and your agent sandbox setup and thought those were two separate things. Sorry about that!

sahil-shubham 2 hours ago | parent [-]

No worries! I too have been using machines/sandboxes/VMs/microVMs very interchangeably these days. Former is understood by a broader group, but latter is more precise. Trying to find a balance.

martypitt 5 hours ago | parent | prev | next [-]

OT - but Bhatti looks really cool! Well done!

sahil-shubham 5 hours ago | parent [-]

Thank you :)

varun_chopra 4 hours ago | parent | prev [-]

Bhatti is a great name!