windows-vm
by obraUse the windows-vm skill to create, manage, and SSH into a headless Windows 11 VM in Docker with KVM acceleration. It fits desktop automation, Windows app setup, and repeatable agent workflows when you need a real Windows environment without manual RDP.
This skill scores 79/100, which means it is a solid listing candidate for directory users: it has a clear, actionable VM-management scope and enough operational detail to justify installation, though users should still expect some setup friction on the host side.
- Strong triggerability: the description and argument-hint explicitly cover create, start, stop, restart, ssh, and status actions for a Windows 11 VM.
- Operationally concrete: it documents host prerequisites, container naming, ports, storage paths, and SSH/RDP/web-console access points.
- Good workflow depth: the body includes stepwise actions and constraints, so an agent can do more than guess from a generic prompt.
- No install command or support files, so users must manually wire the environment and follow the document closely.
- Host-dependent workflow: it requires Docker, KVM (/dev/kvm), and sshpass, which limits portability and makes failures likely on unsupported systems.
Overview of windows-vm skill
What windows-vm is for
The windows-vm skill helps you create, manage, and SSH into a headless Windows 11 VM running in Docker with KVM acceleration. It is best for desktop automation workflows, Windows app setup, and agent-driven tasks where you need a real Windows environment without manually using RDP.
When this skill is a good fit
Use the windows-vm skill when your job is to boot a fresh VM, reconnect to an existing one, restart after a failed setup, or verify that SSH access works. It is especially useful if you want a repeatable Windows sandbox that persists its ISO cache and can be recreated from a known baseline.
What matters before install
The biggest adoption blockers are host support and expectations: you need Docker, /dev/kvm, and sshpass, and the VM is SSH-first rather than GUI-first. If you need interactive RDP as your main workflow, or you cannot provide hardware virtualization, this skill is a poor fit.
How to Use windows-vm skill
Install and inspect the right files
Install the windows-vm skill with npx skills add obra/superpowers-lab --skill windows-vm. Then read skills/windows-vm/SKILL.md first, because it contains the operational flow, host requirements, and the exact create/start/stop/restart/ssh/status actions. In this repo there are no helper scripts or reference folders, so SKILL.md is the source of truth.
Shape your request for the skill
The best windows-vm usage starts with a specific action and goal, not a vague request. Good prompts look like: Use windows-vm to create a clean Windows 11 VM and verify SSH login, Use windows-vm to restart the existing VM and check status, or Use windows-vm for Desktop Automation and prepare the machine for a browser-based task. Include whether you want a first-time create, a full recreate, or just to connect to an existing VM.
What input the workflow needs
For reliable windows-vm install and usage, the skill needs host readiness, storage location assumptions, and whether the VM should be treated as disposable. Be explicit if you care about preserving the ISO cache, wiping the VM disk, or keeping the default windows11 container name and ports. If you are automating a downstream task, also state the Windows username/password expectations and any software that must be present after first boot.
Practical usage tips
Read the prerequisites before attempting any action: confirm Docker is working, verify /dev/kvm exists, and install sshpass before you expect SSH-based steps to succeed. Use create only when you want the full provisioning flow; use start, stop, restart, or status when the VM already exists. For debugging, the web console on localhost:8006 and optional screenshot tooling can help you confirm whether the VM is up even when SSH is not yet ready.
windows-vm skill FAQ
Is windows-vm only for Desktop Automation?
No. The windows-vm skill is useful for Desktop Automation, but its core job is managing a Windows 11 VM lifecycle in Docker. If your task needs Windows-specific execution plus reliable remote access, it fits well; if you only need a prompt to describe a Windows workflow, a simpler prompt may be enough.
Do I need a GUI to use it?
Usually no. The skill is designed around SSH access to a headless VM, with RDP and a browser console as fallback paths for debugging. That makes it a better fit for agent workflows than for manual desktop use.
Is this beginner-friendly?
Yes, if you can follow a VM setup checklist and you are comfortable checking host prerequisites. The windows-vm guide is strongest when you know what state you want—new VM, restarted VM, or connected VM—because the skill works best with clear lifecycle intent.
When should I not use windows-vm?
Do not use windows-vm if your machine cannot provide KVM acceleration, if Docker is unavailable, or if your task depends on a full interactive Windows desktop as the primary interface. It is also not ideal when you need a long-lived, heavily customized Windows host that should not be recreated.
How to Improve windows-vm skill
Give the skill a cleaner starting state
The strongest windows-vm results come from stating whether the VM should be created from scratch or resumed as-is. If you omit that detail, the workflow may waste time checking the wrong path. Say things like create from scratch, recreate and wipe storage, or start existing Windows VM to remove ambiguity.
Provide the exact end condition
For windows-vm usage, the best improvement is to define the success check. For example: create the VM and confirm SSH on localhost:2222, boot Windows and verify the OpenSSH Server service is reachable, or stop the container after confirming status is stopped. This makes the skill optimize for the outcome you actually need.
Call out environment constraints early
If your host has nonstandard Docker paths, restricted ports, limited RAM, or missing /dev/kvm, mention that up front. The windows-vm skill is more reliable when it can adapt around real host limits before provisioning begins. If you are using it for Desktop Automation, specify whether you will rely on SSH, RDP, or the web console so the setup matches the control path.
Iterate after the first run
If the first run fails, improve the next windows-vm prompt with the exact failure point: ISO download, container start, SSH login, or Windows boot timing. That lets the skill focus on the broken phase instead of replaying the whole setup. The most useful follow-up is usually a short correction plus a clear state: what exists now, what failed, and what should happen next.
