July 10, 2026
I recently set up a reproducible cloud development environment: one cloud-init script that stands up a VPS running Ubuntu 24. The point of the box is to run coding agents. Claude Code, Codex, and OpenCode are provisioned in full-permission YOLO mode, with a machine-wide policy that blocks force-pushing to and deleting remote main in every repo on the VPS. Credentials live in a git-ignored .env. The cloud-init script sets up a DigitalOcean Droplet, but it can be swapped out for a VPS on any other cloud. The script installs all the packages and tools I'll need, like git, tmux, nvim, uv, and node, as well as a number of helpful TUI tools I've been using lately, such as yazi and lazygit. It also sets zsh as the default shell with the same .zshrc file I use locally.
Once GitHub auth completes (for the gh CLI), the VPS clones an explicit allowlist of my repos into the same grouped-parent worktree layout I use locally: a primary checkout plus a linked worktree for each unmerged remote branch. There's a land-task script available to agents as the single sanctioned path for merging PRs, and a prune-landed script removes worktrees and local branches once their PRs land.
I was initially motivated to set up this cloud dev environment for basic security reasons. I wanted to run my coding agents in YOLO mode and not think twice. If something goes wrong on the VPS, I can nuke it and replace it, or move it to a different cloud provider. I've mostly been using it for convenience though, SSH'ing in from my phone (using the Termius app) so I can work on the go.
One of the major trends right now in tech is that software is becoming highly bespoke, especially for the individuals using coding agents the most. But I'm not so sure that this trend will continue with cloud development environments. They will undoubtedly grow like crazy in the coming months, but their growth might have more to do with local hardware constraints than security concerns. If my main coding agent thread wants to spin up 100 subagents, I could hit the constraints of my device really quickly. But if the main thread is on a VPS that can spin up subagents in other VPSs, then the problem goes away. I think it's fairly likely that someone will figure out a way to productize this workflow in a way that's good enough for most developers. And many software businesses may be willing to pay for that product.