Yes—Clawdbot works on Windows, but the recommended and well-documented path is to run it inside WSL2 (Windows Subsystem for Linux), typically using an Ubuntu distribution. The Windows platform docs are direct about why: the CLI + Gateway run inside Linux to keep the runtime consistent and to avoid the friction of native Windows differences (tooling like Node/Bun/pnpm, Linux binaries, and skills that assume a Unix-like environment). Native Windows installs are described as untested and more problematic, while companion apps are planned. So the “Windows answer” is really “Windows host + Linux runtime,” which is a common pattern for developer tools that want consistent behavior across OSes.
A practical Windows setup follows a predictable sequence: install WSL2 + Ubuntu, enable systemd in the distro (because it simplifies installing the Gateway as a service), install Clawdbot inside WSL, then run onboarding and install the Gateway daemon. The docs even show the exact command flow for service installation: clawdbot onboard --install-daemon (or clawdbot gateway install), and they point to clawdbot doctor for repair/migration. The “WSL networking” section matters too: WSL runs in its own virtual network, so if you want another machine on your LAN to reach a service running inside WSL (like the Gateway), you must forward a Windows port to the current WSL IP via netsh interface portproxy. That’s advanced, and many users skip it by keeping the Gateway loopback-first and using SSH tunnels/Tailscale for access instead of exposing WSL services across the LAN. The end result is a stable always-on Gateway that behaves like a Linux server even though it’s hosted on a Windows machine.
Once the Gateway is running in WSL, channel integrations work the same way they do on Linux and macOS, because the Gateway process is identical. Where Windows becomes interesting is “hybrid execution”: you can run the Gateway in WSL (cloud-like stability) while pairing nodes that live on other devices for device-local capabilities. For example, you might keep the Gateway in WSL on a Windows desktop, but pair a macOS node or a headless node on a Linux machine for system.run or other device capabilities that are easier to support on those platforms. If you later incorporate retrieval-based memory, the same principle applies: Windows/WSL is just the host for the Gateway, while your retrieval backend can be local or remote. You can run Milvus in a container (either on the same machine or on a separate server) or use Zilliz Cloud to avoid managing storage. In that architecture, Windows is fully viable because Clawdbot’s runtime is Linux inside WSL, and the rest of your “assistant stack” is standard networked services.
