Work on a remote hostNightly
Run a workroom on a cloud machine or in a container, from choosing a host to deleting it when you're done.
This page describes a feature that is only in Nightly builds so far.
A remote workroom runs on a host, so a coding agent can keep working with your Mac asleep, or a heavy build can run without slowing your Mac down. You still work in it from the Workroom window, as you would a local one. This guide takes you from a project on your Mac to a running remote workroom.
Choose a host
| If you want | Choose |
|---|---|
| Work that keeps running with your Mac asleep or closed | boxd or exe.dev |
| An isolated Linux environment on this Mac, with no cloud account | Docker or Apple Container |
| Folders on a Linux server you already reach with ssh | SSH |
boxd and exe.dev are cloud services that need an account and a paid plan; Workroom walks you through signing up the first time you use one. A container runs on your Mac. An SSH host is your own server, which can hold several workrooms. See Remote workrooms for how they differ.
Get your project ready
A remote workroom clones your project from GitHub, so:
-
Make sure the project's
originis on github.com. -
Push the branch new workrooms start from. Only what is on
originreaches the host. -
If your setup script reads
WORKROOM_ROOT_PATH, guard it. There is no root checkout on a host:if [ -n "${WORKROOM_ROOT_PATH:-}" ]; then cp "$WORKROOM_ROOT_PATH/.env" .env fi -
List gitignored files the workroom needs, such as
.env, in.worktreeinclude. Workroom copies them to the host for you. See Prepare a project.
Create the workroom
- Click the + on the project in the sidebar.
- Choose the host: Docker or Apple Container under Local containers, or boxd, exe.dev or SSH under Remote.
- The first time you use boxd or exe.dev, a setup sheet opens. Follow it, then click Create Workroom. For SSH, enter your host and the parent folder, and trust its host key if asked.
- Watch the checklist in the workroom's pane. When it finishes, click Done.
Work in it
The terminal is on the host, in the workroom's clone. Start your coding agent, run your tests, and review, commit and push as you would locally: see Review and ship.
- Your terminals keep running on the host when you quit Workroom or lose your network, and reattach when you come back. See Reconnecting.
- To open a server running on the host in your browser, see Port forwarding.
- Press ⌥⌘I to see where the workroom runs.
Delete it
Push anything you want to keep first. Deleting a boxd, exe.dev or container workroom destroys its host and everything on it. Deleting an SSH workroom removes only its own folder and ends its sessions; the server and the other workrooms stay. Hover over the workroom in the sidebar, click its trash button and confirm. Its teardown script, if your project has one, runs on the host first. See Delete a remote workroom.