> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.islo.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.islo.dev/_mcp/server.

# Machines

> Prepare, verify, assign, and reuse environments for factory Agents.

A Machine is the configured execution environment for Agents in one factory. It records repositories, resources, capabilities, and optional environment and gateway settings. Agents name a Machine when they are created. The same Machine can serve Agents across Lines.

## In the dashboard

1. Open your factory ([factories](https://app.islo.dev/factories) → choose one, or **factory → Machines** when using the default factory).
2. Select **New machine** (or open an existing Machine to view builds and verification).
3. Add the Git repositories the Agent needs, pick capabilities (Docker, SSH, browser-use), size, environment, and gateway options, then start a build at the level you need (`source`, `build`, or `verify`).
4. Read the build and verification report on the Machine page. If a component fails, adjust configuration and rebuild before you assign the Machine to an Agent.

The dashboard walks component questions when a new Machine needs them. You do not need the CLI for day-to-day Machine creation.

## Automate with the CLI

```bash
islo factory machine create workbench --repo https://github.com/your-org/your-repo --level verify
islo factory machine get workbench
```

`create` starts the first build. Use `--capability docker`, `--capability ssh`, or `--capability browser-use` when the Agent needs those tools. You can also set CPU, memory, disk, environment, and gateway options. Inspect the Machine's latest build and verification report before assigning it to an Agent. If a component fails, correct the Machine configuration and start another build:

```bash
islo factory machine update workbench --repo https://github.com/your-org/your-repo
islo factory machine build workbench --level verify
islo factory machine get workbench
```

The `source`, `build`, and `verify` levels control how far a build progresses. Verification reports component results and remediation. See the current options with `islo factory machine create --help` and `islo factory machine build --help`.

## Assign and reuse

Set `machine = "workbench"` in an [Agent](/concepts/agents) config or pick the Machine in the Agent form. A Line refers to that Agent by name. Machine builds produce reusable versions; later runs use the Agent's assigned Machine configuration. A [Suggested Line](/concepts/suggested-lines) can create missing Agents on a named Machine, or on the factory's most recently created Machine. Prepare and verify the Machine before deploying a suggestion.

For runtime settings, see [setup scripts](/concepts/setup-scripts), [snapshots](/cli/snapshots), [gateways](/cli/gateways), and [sandbox lifecycle](/concepts/sandbox-lifecycle).