Skip to main content
You need a Mac or a Linux machine and a CLI token from the console.
Setting this up for a coding agent instead? Follow Set up a coding agent. It installs the envlink skill, which walks the agent through the same loop.
1

Install envctl

The script picks the build for your system, checks it against its published checksum, and puts envctl in /usr/local/bin, or ~/.local/bin when that isn’t writable. See Install for other ways.
2

Log in

In the console, open Settings → CLI tokens and create a token. Then:
The token is stored in ~/.envlink/credentials.json, readable only by you. On a CI runner, set ENVLINK_API and ENVLINK_TOKEN instead.
3

Make this machine the sandbox

From the folder you want to work in:
envd starts in the background and joins your organization’s tailnet. Share paths you use later are relative to this folder.
4

Lease a build box and share your folder

It prints the box’s name, such as linux-build-3f2a, once it’s ready, usually in three to four seconds. Your folder syncs to its /work. Files your .gitignore leaves out stay home, and so do secret files like .env.
5

Build there

Output streams back as it happens, and envctl exits with the command’s exit code. Anything the command writes to /work/out is on your machine by the time exec returns:
6

Release it

The container and its data are removed. An environment you forget stops on its own after its idle timeout, an hour for linux-build.

Try a database

The database listens on your machine’s 127.0.0.1:5432, carried over the tailnet. “Ready” means it accepts connections. See Services on localhost.

Next

Concepts

Environments, templates, shares, projects and snapshots.

File sync

What travels, what stays home, and how to change it.