# Workstream Machines

Choose where the workstream orchestrator and its agents run, from this computer to Droid Computers and fresh cloud computers from an environment.

A workstream can spread its agents across several machines. You choose the orchestrator's machine when you start a workstream. Your **Workstream Defaults** decide where its agents may run.

## Machine types

<PropertyList>
  <Property name='Environment'>
    A reusable setup that creates a fresh cloud computer for the orchestrator and for each agent, which takes a minute or two. Choose one for most workstreams: the work keeps going after you close your laptop, and every agent gets an isolated machine. See [Environments](/environments/overview).
  </Property>
  <Property name='Droid Computer'>
    A computer registered with Factory: a managed cloud computer that Factory hosts, or your own workstation, VM, or server connected through [Remote Control](/remote-control). Every agent sent to it shares it. See [Droid Computers](/droid-computers/overview).
  </Property>
  <Property name='Local'>
    This computer. Available only in the desktop app. The orchestrator and any agents on it share the working directory you choose. Work here stops if you quit the app.
  </Property>
</PropertyList>

Agents on environment computers and Factory-managed Droid Computers keep working after you close your laptop. Agents on a computer connected through Remote Control run only while that computer is on and online. Agents on this computer stop when you quit the desktop app.

## Choose the orchestrator machine

Pick the orchestrator's machine under **Orchestrator machine** in the **New Workstream** dialog.

If you pick an environment, a new computer is created for the orchestrator when the workstream starts, so there's no folder to choose.

For Local or an existing computer, you also choose:

{/* sweep-allow: term-bullets */}

- **Working directory**: the folder the orchestrator starts in. Agents on the same machine start there too.
- **Branch**: the branch to work on.
- **Run in a worktree**: start in a new git worktree of that folder instead of the current checkout.

## Choose where agents run

With **Remote delegation** on, which is the default, an orchestrator on an environment gives each agent its own fresh computer from that environment, unless you set a different default environment. On Local or a Droid Computer, agents share the orchestrator's machine unless you give them other options. Set these options in **Settings → Workstream Defaults**. They apply to every workstream you start.

<PropertyList>
  <Property name='Remote delegation' defaultValue='On'>
    Lets agents run on other machines: fresh computers from your default environment or the orchestrator's environment, and your additional machines. Turn it off to keep every agent on the orchestrator's machine.
  </Property>
  <Property name='Default environment' defaultValue='None'>
    Where agents run when the orchestrator doesn't name a machine. Each agent gets a fresh computer. If you don't set one and the orchestrator runs on an environment, agents use that environment. It needs a description, like additional machines.
  </Property>
  <Property name='Additional machines' defaultValue='None'>
    Environments and Droid Computers, including your own computers connected through Remote Control, that agents may also use. Each needs a description.
  </Property>
</PropertyList>

The orchestrator reads each machine's description to decide which work to send there, so describe the repos, tools, and kind of work each machine is set up for. For example: "Has the mobile repo, Xcode, and the iOS simulator. Use for iOS work."

The **Agent machines** line in the **New Workstream** dialog summarizes what agents can use before you start. If every agent has to stay on the orchestrator's machine, the dialog says why.

![Workstream Defaults in Settings with Remote delegation, the orchestrator compaction budget, and an environment set as the default with its description](/docs-assets/images/workstreams/workstream-defaults.webp)

<RelatedLinks>
  <RelatedLink href='/droid-computers/overview' title='Droid Computers'>
    Persistent cloud computers that Factory manages.
  </RelatedLink>
  <RelatedLink href='/remote-control' title='Remote Control'>
    Connect a computer you already manage.
  </RelatedLink>
  <RelatedLink href='/environments/overview' title='Environments'>
    Reusable setups that create fresh cloud computers.
  </RelatedLink>
  <RelatedLink href='/workstreams/settings' title='Settings and usage'>
    Models, defaults, and organization controls.
  </RelatedLink>
</RelatedLinks>
