Install and join on Windows in one line
Run three lines in PowerShell — install the tool, set the instance addresses (once), sign in and join:
irm https://github.com/Daily-AC/wanctl/releases/latest/download/install.ps1 | iex
wanctl config set relay=https://wanctl-relay.z10.dev portal=https://wanctl.z10.dev
wanctl start
No OpenSSL needed — the installer verifies the release signature with PowerShell's own cryptography interfaces, and writes nothing until it checks out. Every Windows since 7 ships a PowerShell new enough for this.
Signing in opens the portal login in a browser (GitHub account) and gives you a one-time code; paste it back into the terminal. After that:
wanctl service install
This registers a scheduled task that starts at boot and keeps running after you
close the terminal window (the relay address goes straight into the task, so a
reboot does not depend on environment variables). wanctl status shows how it
is doing, wanctl stop stops it.
About trust
The script and the binaries come from the project's
GitHub Releases, independent of
your relay; the script verifies the release signature, the size and the SHA-256
before writing anything. If you mirror releases inside your own network, set
$env:WANCTL_RELAY before the install command and it pulls from that relay's
/dl instead.
Two known traps on Windows
A space between every character of the output. Native Windows tools
(wsl.exe above all) emit UTF-16LE; decoded as the OEM code page, the zero
bytes survive as separators. Current builds handle this. If you still see it,
the agent is an old one — run wanctl update.
Quotes get eaten. The login shell on Windows is PowerShell, where $ and
quotes are easily swallowed across several layers of escaping. Do not fight it
for a complex command: send the script over with wanctl push and run that.