tesser login writes the one
credential the CLI needs, and everything else is controlled by command-line
flags or environment variables.
Environment variables
Files on the laptop
Nothing is installed system-wide, and nothing requires root.
Ports on the laptop
The daemon answers requests from your own machine and from Tailscale peers.
It refuses the rest of the LAN unless it is started with
--allow-lan.
Timers
The box
Each box is a standard size (2 vCPU, 8 GB of memory) unless--size or the manifest says otherwise — small (1 vCPU, 4 GB), large (4 vCPU, 16 GB), xlarge (8 vCPU, 32 GB) — with a 40 GB gp3 disk (up to 500 MiB/s),
running Ubuntu 24.04 with Node (22 and 24, via fnm), Bun, rsync, and Docker
installed. Your worktree is at ~/workspace and the dev server’s output is
written to ~/.tesser/dev.log. Commands run as the ubuntu user, which has
passwordless sudo and is in the docker group.
The run command sees three variables from Tesser:
The first two sit under anything you set with
tesser env set; TESSER_SLOT is fixed per run.