Fresh Reads
Announcing the exe.dev iOS App
We're delighted to announce that exe.dev has an iOS app now in the App Store. There's a lot to write about how we built it, but today let's talk about the why. After all, the exe.dev dashboard and Shelley already work on mobile browsers. They say the best camera is the one you…
Sharing Is Caring
Today's quiz is to deploy a server-rendered hello world app (python3 -mhttp.server fine for these purposes, though I used Go below), publically visible, on your cloud of choice. On your marks, get set, GO! $ ssh exe.dev new --name mr-rogers $ ssh exe.dev share set-public…
Replace Your CI With a Merge Queue
The standard in CI today is tests run in the cloud after a commit has been merged. They serve as a double-check for an engineer: did you forget to test some part of your code that you changed? CI works for humans. The reason is our long-term understanding of a codebase and its…
Dev, Test, Prod: Choose One, Two, or Three
Industry-wide, we often develop our software in three distinct environments. Perhaps your laptop is a Mac; your CI system is hosted GitHub Actions, and your prod is k8s. Three-in-One For some use cases, you need not bother with the complexity; use one exe.dev vm for all three. A…
Series A for exe.dev
We have raised a Series A, for a total of $35m in funding. We are using it to build a new generation of cloud infrastructure. Major investors are Amplify, CRV, and HeavyBit. Call it a cloud for developers. Why do we need new infrastructure primitives and a new cloud now? Agents.…
Some Secret Management Belongs in Your HTTP Proxy
Secrets management is a pain. Larger organizations commit to centralizing secrets management in a service. When done well, these services solve a lot of issues around secrets, at the cost of creating a lot of ops overhead (which is why they are limited to larger organizations)…
Closer Compute 🇺🇸 🇬🇧 🇯🇵 🇩🇪 🇦🇺
When you use a computer for development, latency matters. Even if you typically hang out in a remote-connected editor over sshfs (like Visual Studio), sometimes you need to debug a pesky systemd service or search for a config file. There is nothing worse than being knee-deep in…
A Transparent UI Pattern
exe.dev has one API: it's the command you would write in the exe.dev lobby. For example, share add island-anchor "philip+demo2@bold.dev" shares the HTTP server for the VM island-anchor to that e-mail address. (We believe sharing a web app should be as simple as sharing a…
Prompt Engineering Is Dead, but Claude Still Tries
A year ago, Claude was better at prompting than I was. Not any more. Coding agents have gotten dramatically better. Good prompting used to require carefully calibrated instructions and harnesses. Now a good prompt includes goals, context, and maybe some preferences and…
Everyone Is Building a Software Factory
We are all grappling with what it means to be an organization with agentic tools. We are seeing a Cambrian explosion of workflows in how to produce software. It is unwise, right now, to declare The Solution and enforce it. Developer Productivity teams that are pushing a workflow…
February Update
February kept us busy! Thanks to all our users for the great feedback, so many bug fixes and quick improvements were possible because of high quality reports. Here are a few things we shipped in February: Idea templates The new VM page now has a gallery of idea templates:…
APIs for the RESTless
Exe.dev's API to create a new machine is: ssh exe.dev new --name=restless --json That assumes your SSH key is already registered to your account. If you want to do it over HTTPS, it's: curl -X POST https://exe.dev/exec \ -H "Authorization: Bearer $TOKEN" \ -d 'new…
Why exe.dev VMs Are Persistent
When we were designing exe.dev, we settled on VMs being persistent, with persistent disks. VMs are not “quiesced” when there’s no network traffic or SSH connections. Disks aren’t wiped clean on reboot. This flies in the face of modern “stateless,” “immutable,” or “serverless”…
Show, Don’t Tell
I have been tasked, by process of elimination, with developing exe.dev’s marketing strategy. In one very important sense, marketing exe.dev is easy. I am proud of what we have built, so I am happy to talk about it to anyone who will do me the kindness of listening. Being happy…
Review the Reviews
When I was actively contributing to the Go project, my primary feed was the code review email firehose. Issues, mailing lists, and Slack had low SNR. The finished commit history was better: it was finely polished work with some of the best written commit messages I have ever…
Software as Wiki, Mutable Software
"Edit with Shelley" ⇄ "slinky.exe.xyz" Here at the exe.dev offices, we built a link shortener. It's called slinky. It's nothing special. Link shorteners are a dime a dozen. They help in a time of useless URLs (hi, Google Docs), hard to remember port numbers, and overly clever…
January Update
It has been a busy month for exe.dev! We launched in late December and have been hard at work keeping the service online. Along the way we found some time to ship some features. Of note: The new cp command to make a fast copy of a VM to another VM. Under the hood this is…
Expensively Quadratic: the LLM Agent Cost Curve
Pop quiz: at what point in the context length of a coding agent are cached reads costing you half of the next API call? By 50,000 tokens, your conversation’s costs are probably being dominated by cache reads. Let’s take a step back. We’ve previously written about how coding…
Your Codebase Is the Prompt
When Claude writes code I don't like, I used to mutter: "Oh Claude, what did you do?" I now ask instead: "Claude, what did you see?" And then I go address that. Here's a concrete example. At exe.dev, we have a very substantial end-to-end test suite. It is deeply empiricist: It…
SSH Has No Host Header
We have a challenge with ssh. Every VM has a standard URL that we use for both HTTPS and SSH, e.g. undefined-behavior.exe.xyz. Just as you can type the domain into a web browser (and have TLS and auth taken care of for you), you can run: ssh undefined-behavior.exe.xyz To get a…
Talk Emoji to Me
Start-ups sprout ad hoc processes constantly. I've noticed an emerging theme among ours at exe.dev: emoji reactions are a great way to communicate with bots. They’re efficient: adding an emoji is easy. They’re low noise: they don’t generate unread messages for anyone or threads…
Goodbye Sketch, Hello Shelley!
Shelley is exe.dev's coding agent. The name refers to the Unix shell, since it's good at operating the shell tool, and, yes, it shares a name with the poet Percy Bysshe Shelley. Shelley is open source. Check it out at https://github.com/boldsoftware/shelley. Our previous…
Meet exe.dev, Modern VMs
Today we are going public with the developer preview of exe.dev, a new VM hosting service. We will keep the service open for new users as long as our capacity lasts. Try it out with: ssh exe.dev As we built sketch.dev, we found ourselves needing more machines than ever before.…




