QCOW2 virtual machine management using libvirt. Creates VMs from pre-built images downloaded from R2 CDN with cloud-init customization. Supports SSH, VNC, and virtiofs home directory sharing. Use when users need to create, manage, or connect to bazzite-ai VMs.
View on GitHubatrawog/bazzite-ai-plugins
bazzite-ai
bazzite-ai/skills/vm/SKILL.md
January 21, 2026
Select agents to install to:
npx add-skill https://github.com/atrawog/bazzite-ai-plugins/blob/main/bazzite-ai/skills/vm/SKILL.md -a claude-code --skill vmInstallation paths:
.claude/skills/vm/# VM - QCOW2 Virtual Machine Management ## Overview The `vm` command manages bazzite-ai virtual machines using libvirt. VMs are created from pre-built QCOW2 images downloaded from R2 CDN, customized via cloud-init. **Key Concept:** VMs run in user session (qemu:///session), not requiring root. Home directory is shared via virtiofs at `/workspace` in the VM. ## Quick Reference | Action | Command | Description | |--------|---------|-------------| | Add | `ujust vm add [NAME]` | Add new VM with default image | | Create | `ujust vm create [NAME]` | Create VM from existing disk | | Delete | `ujust vm delete [NAME]` | Delete VM and optionally its disk | | Download | `ujust vm download [BRANCH]` | Download QCOW2 image | | Exec | `ujust vm exec [NAME] CMD` | Execute command via guest-agent | | Recreate | `ujust vm recreate [NAME]` | Recreate VM config preserving disk | | Seed | `ujust vm seed [NAME]` | Regenerate cloud-init seed ISO | | Serial | `ujust vm serial [NAME]` | Serial console connection | | SSH | `ujust vm ssh [NAME]` | SSH connection to VM | | Start | `ujust vm start [NAME]` | Start VM | | Status | `ujust vm status [NAME]` | Show VM status | | Stop | `ujust vm stop [NAME]` | Stop VM | | Update | `ujust vm update [NAME] WHAT` | Update QCOW2 or seed | | VNC | `ujust vm vnc [NAME]` | VNC graphical connection | ## Parameters | Parameter | Long Flag | Short | Default | Description | |-----------|-----------|-------|---------|-------------| | action | (positional) | - | required | Action: add, update, delete, download, etc. | | vm_name | (positional) | - | `bazzite-ai` | VM name | | url | `--url` | - | R2 CDN URL | QCOW2 image URL | | cpus | `--cpus` | - | `4` | Number of CPUs | | ram | `--ram` | - | `8192` | Memory in MB | | disk_size | `--disk-size` | - | `100G` | Disk size | | username | `--username` | `-u` | `$USER` | VM username | | password | `--password` | - | (empty) | VM password | | autologin | `--autologin` | - | `true` | Enable autologin | | ssh_por