---
title: "wendy vm create"
description: "Create a VM, downloading the WendyOS image if needed"
---

## Syntax

```sh
wendy vm create [name] [flags]
```

## Examples

```sh
wendy vm create --help
```

## Arguments

Argument notation from the CLI: `[name]`. Angle brackets mark required values; square brackets mark optional values. See Details for command-specific validation.

## Flags

Flags below include inherited options. Types and defaults come from the CLI source. An empty default means no value is configured.

| Flag | Type | Default | Description |
| --- | --- | --- | --- |
| `--device` | string | (empty) | Target device `host` (hostname, IP, or host:port); 'wendy run' accepts a comma-separated list to deploy one build to several devices (needs a remote build host and --detach). Defaults to $WENDY_DEVICE, then the saved default device |
| `--disk` | int | `16` | Disk size in GiB (the image is grown to this size) |
| `--image` | string | (empty) | Local WendyOS disk image or merged ESP32-C6 firmware for wendy-lite or wendy-lite-native |
| `--json` | bool | `false` | Output in JSON format |
| `--nightly` | bool | `false` | Use nightly/prerelease builds |
| `--pr` | int | `0` | Create from a pull request's build, so a change can be tried before it merges |
| `--profile` | string | `generic` | Simulator profile: generic, go2, g1, so101, rosmaster-r2, wendy-lite or wendy-lite-native (provisioned on first connection) |
| `--version` | string | (empty) | WendyOS version to download (default: latest) |
| `--yes` / `-y` | bool | `false` | Accept prompts, including installing QEMU when it is missing (Linux still asks before running sudo) |

## Output

Output depends on the operation and selected target. [Command behavior and detailed examples](../../../../installation/wendyos-virtual-machine/).

## JSON output

The global `--json` option requests machine-readable output. The CLI also selects JSON mode when no interactive terminal is attached. Support and payloads are command-specific; this flag does not guarantee a single JSON document for commands that stream logs or invoke build tools. Consult Details before parsing command output.

## Exit codes

The CLI entry point returns `0` on success and for its user-cancelled or default-cleared results. Other returned errors exit with `1` and print a diagnostic to stderr. Some operations may terminate through subprocess or signal handling; do not infer application health from the CLI exit code alone.

## Common errors

Check argument values and flag combinations against the synopsis above. For discovery, build, port, and readiness failures, see [deployment troubleshooting](../../../../errors/). Command-specific constraints are in Details.

## See also

- [wendy vm](../../../../reference/cli/vm/)
- [CLI conventions and configuration](../../../../reference/)

## Details

Create a VM, downloading the WendyOS image if needed.

In an interactive terminal, prompts for the VM name and simulator profile when omitted. Pass a name and --profile to skip the prompts. With --yes or without an interactive terminal, a name is required and the profile defaults to generic.

[Command behavior and detailed examples](../../../../installation/wendyos-virtual-machine/)
