vmlab — the reference

Summary

A declarative QEMU/KVM VM-lab orchestrator: labs and virtual networks declared in WCL, reusable disk templates built locally or distributed over OCI registries, and guest automation written in wscript.

vmlab exists so an entire lab environment — machines, networks, and the setup on them — can be recreated from one file with one command. Describe the lab in vmlab.wcl and vmlab up builds it: VMs cloned from reusable templates, containers as micro-VM machines, segments with DHCP/DNS/NAT, provisioning and playbooks applied — identically every time. Labs are disposable: snapshot, reset, destroy, rebuild. Everything runs unprivileged on QEMU/KVM with nothing but /dev/kvm.

§ 1Artifacts

The views this wskill ships — build them with just render (or the per-view recipes).

ViewEntryOutput
bookwdoc/book/main.wclout/book
ai skillwdoc/skill/main.wclout/skill
presentationwdoc/presentation/main.wclout/presentation

§ 2About this wskill

Version1.4
Created2026-06-21
Last updated
Maintainerai@wiltaylor.dev
NameRelationStatus
wcllabs and templates are declared in WCL; this skill documents the vmlab schema, not the language itselfexists