Skip to main content
Install envctl and the envlink skill on the machine your coding agent runs on, then ask for a change. The skill teaches the agent the whole loop: lease a box, sync the project, build and test there, read the results, and delete what it leased.
1

Install envctl

2

Log in

Create a CLI token in the console (Settings → CLI tokens) for this machine, and log in:
For an agent in a container or a cloud session, set ENVLINK_API and ENVLINK_TOKEN in its environment instead.
The token can lease and delete environments for your organization. Give each machine its own, so you can revoke one without the others.
3

Make the project folder the sandbox

4

Install the skill

From the project’s root:
This writes SKILL.md into the skills folder of each agent the project already uses, or Claude Code’s when none is set up:Running it again updates the skill to match your envctl and reports unchanged when there’s nothing to do. Commit the project-scoped skill so every checkout has it.

Ask for a change

Open the project in the agent and ask, saying it should use envlink:

What the agent does

  1. Checks envctl is logged in with envctl templates.
  2. Leases a box with a label for the task: envctl env create linux-build --share src=. --label task=billing-fix.
  3. Runs the build and tests with envctl exec, reading the output and exit code.
  4. Reads results from .remote/<box>/out/.
  5. Shares outputs with envctl artifact put … --link 24h if you asked for a link.
  6. Deletes the box with envctl env delete.
The skill tells the agent never to print tokens, and never to send secret files unless you ask, which it then does with --file. See The envlink skill for its full text.