Backed byCombinator
The modern development runtime
Run multiple worktrees in parallel by offloading dev servers and other heavy workloads to isolated cloud machines.
Built for teams of devs and agents
Port forwarding to localhost
Every port your app uses is forwarded to your laptop, so the dev server on the machine opens at localhost:3000 like it always has. Hot reload and sign-in cookies keep working, and a panel on the page switches between branches.
Local and cloud agents
Claude Code and Codex run tesser from your laptop. Cloud agents like Devin and Capy run it with an API token and get the same machines.
- Claude Code
- Codex
- Gemini CLI
- Copilot
- Cursor
- Devin
- Capy
Your existing setup
Tesserc starts your app with the install and dev commands you already use. Every machine comes with Node and Docker, so most stacks run as they are.
- Next.js
- Vite
- Node.js
- Bun
- Docker
- Postgres
- Redis
- Python
Bring your own compute
tesser cloud connect moves every machine into your own AWS account, inside your VPC and on your AWS bill. We host only the control plane.
Set up in less than a minute
One command installs
Quickstarttesser, andtesser loginsigns you in through the browser.~/acme$
Coding agentstesser skill installgives Claude Code and Codex a short skill that points them attesser --help. From then on your agent runs the commands itself.A short TOML file in the repo lists your app's ports and the install and dev commands you already use. Commit it once and every worktree can use it.
Manifest referenceYour agent runs
Open a box in your browsertesser dev webin its worktree. The dev server comes up on that worktree's machine, and you open it at localhost:3000.
Flexible by design
Parallel coding agents
Every agent gets its own worktree and machine, so five agents on one repo never fight over port 3000 or your laptop's CPU.
Preview links
Put a link to your running branch in the PR. A reviewer opens it at box-7f3a91.localhost:3000 and tries the change before reading the diff.
Tests and builds
tesser exec -- pnpm test runs the suite on the worktree's machine. The output and exit code come back as if it ran locally.
Apps with a database
Each branch runs its own Postgres and Redis with Docker Compose, so one branch's migrations never touch another's data.
How Tesserc compares
Most cloud dev environments ask you to move into them. Tesserc fits into the workflow you already have. It syncs your checkout and runs your existing install and dev commands, with no Dockerfile or devcontainer to write. Port forwarding and per-branch routing are built in, so every branch opens on localhost.
| Claim | Codespaces | Coder | E2B | Tesserc |
|---|---|---|---|---|
| Syncs from your existing checkout | No | Yes | No | Yes |
| Port forwarding to localhost | Yes | Yes | No | Yes |
| Service routing across machines | No | No | No | Yes |
| No session time limit | No | Yes | No | Yes |
| Fully managed | Yes | No | Yes | Yes |
| Runs in your own AWS account | No | Yes | Yes | Yes |
Frequently asked questions
No. You and your agent keep editing on your laptop.
tesser execandtesser devcopy the files that changed to the worktree's machine before they run, so the machine always runs what's in your editor.No. Files go from your laptop to the machine over SSH, and so do command output and your app's traffic. Our servers track machine ids, ports, and states, and Where your code goes lists everything they receive. On the Team plan, the machines can run in your own AWS account.
You pay for the seconds a machine is awake, and only for its disk while it sleeps. It falls asleep after 10 idle minutes, or 2 hours if it runs a dev server, and wakes in about 40 seconds the next time you use it. After 16 hours asleep it is removed.
About 90 seconds to boot. On Team you can keep warm machines ready for a repo, and those take a few seconds. A new machine also copies package caches and
node_modulesfrom your team's awake machines, so its first install doesn't start cold.Ubuntu 24.04 with Node 22 and 24, Bun, and Docker with Compose, and you have sudo for anything else. Each one has 2 vCPU, 8 GB of memory, and a 40 GB disk by default, and
--sizegoes up to 8 vCPU and 32 GB on Pro and Team.Sync skips gitignored files, so
.env.localstays on your laptop until your manifest lists it underenv.files. Then every sync copies it over SSH. You can also store a value in your org withtesser env set web KEY=value, and every machine runningwebgets it.
Get started
Install the CLI and follow the quickstart to get your first cloud environment up and running.