exe now installs with one line. Paste it into a terminal on Linux or a Mac, or into PowerShell on Windows, answer a few questions, and it prints the address of your desktop. exe is a fantasy computer with Mac OS 9 vibes: a desktop in your browser, served by a machine you own, where Claude Code and Codex run in windows. Tailscale brings that desk to your phone, and a Cloudflare Tunnel puts what the agents build on the web under a name of your own.
One line
Until now the way in was git clone and make build, with Go on the machine. Now there is an installer, for Linux and for macOS 13 or later:
curl -fsSL https://exe.v2core.com/install.sh | sh
And in PowerShell, on Windows 11 with an x86-64 processor:
irm https://exe.v2core.com/install.ps1 | iex
The script downloads the latest release from GitHub, checks it against the release's checksums, and asks where exe should listen, whether to require an API token (a password for the desk), whether to add the extra apps and, where the machine needs it, whether to set it up for Linux virtual machines (VMs). Nothing is installed until the last answer, and Return on each is the careful install: this machine only, no sudo. Only the VM step asks for sudo, or an administrator on Windows, and it lists what it would run first.
exe then runs under your own user, from login on a Mac or Windows and from boot on Linux with systemd; where it cannot arrange that, the installer says what to run. exe update moves it to the latest release; exe uninstall removes it and leaves your VMs and files. The rest is in Installing, a page that can run a little ahead of the release.
A desk for Claude Code and Codex
On the desk, Claude Code and Codex are icons to double-click. Each appears when that CLI is installed on the machine, and its window runs it there, on the host. Install and sign in to them yourself, as the user that runs exe: exe does neither.
On a Linux or Mac host with tmux, the window adds:
- Sessions that outlive the browser. Each conversation is a tmux session on the host. Close the tab and the agent works on; open the window from any browser and you are back in it.
- A column of sessions. A pulsing green dot marks one still working, a black dot one that waits for you.
- A push when a turn ends. With notifications on, your phone says Claude Code finished or Codex finished when a turn ends more than a minute after you last typed in that session. A tap opens it.
- Files by drag and drop. A screenshot or a log dropped on the window is uploaded, and its path is typed at the prompt.
Without tmux, and on Windows, each window is a fresh run of the CLI.
The same desk on every device
Where exe listens is the installer's first question, and a machine with Tailscale is offered its Tailscale address. Tailscale is a private network between your own devices, a tailnet; install it on the host and on each device first, since exe does not. Choose that address and the desk opens from any laptop, tablet or phone on your tailnet, with nothing opened to the internet. The installer suggests an API token here and prints it: paste it into Special → Set API Token… in each browser.
On a phone the desk becomes a home screen of icons, and each window fills the screen. exe speaks plain HTTP; Tailscale Serve can put HTTPS in front of it, still inside your tailnet. Over HTTPS the desk installs as an app (Add to Home Screen on an iPhone), and that app is where a phone gets notifications once you turn them on.
From a prompt to a domain
An agent in one of those windows runs on the host, and exe's VMs are its sandboxes. Choose Help → Agent Skill Guide…, press Copy Prompt and paste it into the window. It tells the agent to read /skill.md, the guide exe serves to agents, whose first recipe is the whole chain: make a VM, start a server in it, check that the port is listening, publish it.
Two things come first. On Linux, VMs need KVM, the kernel's virtualization support, and the installer's VM step. Publishing needs Cloudflare set up once, in Special → Cloudflare Setup Wizard…: a domain there, a running, remotely managed Cloudflare Tunnel and an API token. The tunnel's connector, cloudflared, must also reach exe, at the address in advertise_host. A Tailscale install fills it in; after a this-machine-only install, run cloudflared on the same machine and set it to 127.0.0.1 in Configuration.
Then ask:
Build a guestbook in a new VM and
publish it as guestbook.
The agent's last step is one call, POST /v1/vms/{name}/expose, or exe expose from a shell. exe creates the DNS record at Cloudflare, adds a rule to your tunnel and a route in its own proxy, and https://guestbook.your.domain is live.
Tailscale is the private way in for you. The Cloudflare Tunnel is the public way out for what you build.
Try it
Run the installer above, open the desk, and hand your agent the skill guide. The docs start at Getting Started, and the source is at github.com/livid/exe.