Cloud dev environments that feel like localhost
Claude Code or Codex run on your laptop, and use the Tesser CLI to give each worktree its own VM and run the dev server and the tests up there. To interact, open localhost:3000, and select which server you're connected to.
curl -fsSL https://tesser.dev/install | sh
What runs where
Commands run on the box, inside your worktree
- Anything after
--runs up there, and the output streams back as it happens. - You get the command's real exit code, so a failing test still fails your script.
- There is no config file to write. The command you type is the entire setup.
node_modulesand.nextstay on the box between runs, so you install once instead of once per command.
BOX=$(tesser make)
box_7f3a91
tesser exec "$BOX" -- pnpm install
tesser dev "$BOX" -- pnpm dev
localhost:3000 → box_7f3a91
The worktree is already on the box before the command starts
Ignored files stay on your laptopNo changes since last time, nothing to send
localhost:3000 points at whichever box you picked
- A daemon on your laptop owns port 3000 and holds one SSH tunnel per running box.
- Click a box in the switcher, or run
tesser use, and the page reloads against it. - Old WebSockets are closed before the new box takes over, so hot reload never mixes two branches.
- Each box also keeps a port of its own, for when you want two branches open in two tabs.
localhost:3000checkout-flow
Example boxes. Clicking one moves the arrow above.
Four worktrees at once, and the laptop fans stay off
One box per worktree, never sharedForgotten boxes terminate after twelve hours
Start with one worktree
Install the CLI and drop in the skill. Your agent makes itself a VM the next time it needs one, and your editor and your git history never leave the laptop.
curl -fsSL https://tesser.dev/install | sh