Skip to main content

new

Create a VM.
machine0 new <vm> [flags]
Alias: create
FlagDescriptionDefault
-s, --size <size>VM sizesmall
-r, --region <region>Region (us, uk, eu, asia)eu
-i, --image <image>Image slugubuntu-24-04
-k, --key <name>SSH key nameDefault key
--enable-proxy <bool>HTTPS proxy at <vm>.mac0.iotrue
machine0 new my-vm
machine0 new my-vm --size large --region us
machine0 new my-gpu --size gpu-h100-1

ls

List all VMs.
machine0 ls
Alias: list

get

Show VM details.
machine0 get <vm>
Accepts a VM name or ID. Shows hardware specs, pricing, IP, SSH key, and timestamps.

start

Start a stopped VM.
machine0 start <vm>

stop

Stop a running VM.
machine0 stop <vm>
Stopped VMs still incur charges. Destroy a VM to stop billing.

reboot

Reboot a running VM.
machine0 reboot <vm>

rm

Destroy a VM.
machine0 rm [vm] [flags]
Alias: destroy
FlagDescription
-a, --allDestroy all VMs
-y, --yesSkip confirmation prompt
machine0 rm my-vm
machine0 rm my-vm --yes
machine0 rm --all

ssh

SSH into a VM or run a remote command.
machine0 ssh <vm> [command...]
FlagDescriptionDefault
--username <user>SSH usernameubuntu
machine0 ssh my-vm
machine0 ssh my-vm "docker ps"
machine0 ssh my-vm --username root "whoami"
If the VM is still starting, the CLI waits for SSH to become available.

update

Update a VM’s name or proxy setting.
machine0 update <vm> [flags]
FlagDescription
-n, --name <name>New name
--enable-proxy <bool>Enable/disable HTTPS proxy
machine0 update my-vm --name new-name
machine0 update my-vm --enable-proxy false

provision

Run an Ansible playbook on a VM.
machine0 provision <vm> <playbook> [flags]
FlagDescriptionDefault
--username <user>SSH usernameubuntu
machine0 provision my-vm setup.yml
The CLI waits for SSH availability before running the playbook.

sizes

Show available VM sizes and pricing.
machine0 sizes [flags]
FlagDescription
-a, --allInclude out-of-stock sizes