---
title: "wendy vm start"
description: "Start a VM and attach to its console"
---

## Syntax

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

## Examples

```sh
wendy vm start --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 |
| --- | --- | --- | --- |
| `--cpus` | int | `4` | Guest CPU count |
| `--detach` / `-d` | bool | `false` | Run the VM in the background instead of attaching to its console |
| `--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 |
| `--json` | bool | `false` | Output in JSON format |
| `--memory` | int | `4096` | Guest memory in MiB |
| `--net` | string | `user` | Networking: 'user' forwards the agent port and needs no setup, but 'wendy discover' cannot see the VM; 'shared' puts it on a host-visible network so discover works (needs socket_vmnet) |
| `--port` | int | `50051` | Host port to forward to the guest agent's 50051. Without it the VM reuses its last port, or the first free one from the default |
| `--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



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