The quantavirt CLI is a Rust binary that communicates with the hypervisor's management API over a local Unix socket or TCP connection. All commands follow the pattern:
quantavirt vm create --config <path.json>
quantavirt vm create --name myvm --cpus 2 --memory 2G --disk web-server --network default
vm list
quantavirt vm list [--state <RUNNING|STOPPED|PAUSED|ALL>] [--format json]
vm show
quantavirt vm show <name>
Lifecycle Commands
Command
Description
From State
To State
vm start <name>
Boot VM
CREATED / STOPPED
RUNNING
vm stop <name>
Graceful ACPI shutdown
RUNNING
STOPPED
vm stop <name> --force
Immediate power-off
RUNNING / PAUSED
STOPPED
vm pause <name>
Freeze all vCPUs
RUNNING
PAUSED
vm resume <name>
Unfreeze vCPUs
PAUSED
RUNNING
vm reset <name>
Hard reset (triple-fault)
RUNNING
RUNNING
vm destroy <name>
Delete VM (keeps disks)
STOPPED
—
vm destroy <name> --purge
Delete VM and all disks
STOPPED
—
vm set
# Modify VM configuration (VM must be stopped unless hot-pluggable)
quantavirt vm set <name> --cpus 4
quantavirt vm set <name> --memory 8G
quantavirt vm set <name> --cpu-pin 0:4,1:5,2:6,3:7
quantavirt vm set <name> --cpu-weight 512
quantavirt vm set <name> --cpu-cap 50
quantavirt vm set <name> --description "Production web server"
vm console / vnc
# Attach to serial console
quantavirt vm console <name>
# Press Ctrl+] to detach# Show VNC connection info
quantavirt vm vnc <name>
# VNC: 127.0.0.1:5900 (password: ****)
vm snapshot
quantavirt vm snapshot create <name> --name <snap-name> [--memory] [--description "..."]
quantavirt vm snapshot list <name>
quantavirt vm snapshot restore <name> --name <snap-name>
quantavirt vm snapshot delete <name> --name <snap-name>
vm clone
quantavirt vm clone <source> --name <new-name> [--full] [--linked]
# Default table output
quantavirt vm list
# NAME STATE CPUS MEMORY UPTIME# web-01 RUNNING 2 2 GiB 4d 3h# db-01 RUNNING 8 32 GiB 4d 3h# JSON output (for scripting)
quantavirt vm list --format json
# [{"name":"web-01","state":"RUNNING","cpus":2,...}]# YAML output
quantavirt vm list --format yaml
# CSV output
quantavirt vm list --format csv
# Quiet mode (names only — useful with xargs)
quantavirt vm list --state RUNNING --quiet
# web-01# db-01# Example: stop all running VMs
quantavirt vm list --state RUNNING -q | xargs -I{} quantavirt vm stop {}