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).
| View | Entry | Output |
|---|---|---|
| book | wdoc/book/main.wcl | out/book |
| ai skill | wdoc/skill/main.wcl | out/skill |
| presentation | wdoc/presentation/main.wcl | out/presentation |
§ 2About this wskill
| Version | 1.4 |
| Created | 2026-06-21 |
| Last updated | — |
| Maintainer | ai@wiltaylor.dev |
| Name | Relation | Status |
|---|---|---|
| wcl | labs and templates are declared in WCL; this skill documents the vmlab schema, not the language itself | exists |