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_modules and .next stay 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