Hermes Agent doesn't run on native Windows. Period. The installer rejects it. If you searched and found articles claiming otherwise, those are wrong or outdated. The official message says Native Windows is not supported. Please install WSL2 and run Hermes Agent from there. You can verify this in the Nous FAQ.
So you have two real options on Windows: WSL2 with the CLI, or the Hermes Desktop GUI app. This article compares both. Below is what I run myself and why.
Option 1: WSL2 install
WSL2 is the right choice if you want the full Hermes Agent CLI experience. Skills development, gateway management with systemd, scripting against the agent, anything where you want a normal Linux shell.
What you get with WSL2
A full Ubuntu (or Debian, or whatever distro you prefer) environment. The same Hermes install commands that work on a Linux VPS work here. Our install Hermes Agent on Ubuntu guide applies directly.
WSL2 install steps
Open PowerShell as Administrator and run:
wsl --install -d Ubuntu-24.04
Reboot if Windows asks you to. After reboot, open Windows Terminal and pick the Ubuntu profile. Inside Ubuntu, run the Hermes installer (get the install command from the Nous docs). Then:
source ~/.bashrc
hermes --version
If the version doesn't print, see our hermes command not found fix.
WSL2 problems you should know about
Two common ones that bite people.
Gateway dies when you close the terminal
WSL2 shuts down the distro when no terminal sessions are using it. Your gateway dies with it. The fixes (Windows Task Scheduler, NSSM service, tmux session inside WSL) are covered in our WSL2 gateway disconnecting fix.
Slow filesystem performance on /mnt/c
If you store ~/.hermes on the Windows side (e.g. by symlinking from /mnt/c/Users/yourname), every SQLite write goes cross-filesystem and gets slow. Keep your data dir inside the WSL filesystem itself, never on /mnt/c. This is well-documented Microsoft behavior, not a Hermes bug, but it shows up as Hermes feeling sluggish.
Who should pick WSL2
Developers, sysadmins, anyone comfortable in a Linux terminal who doesn't want a GUI for daily use.
Option 2: Hermes Desktop app
Hermes Desktop is an Electron app maintained at fathah/hermes-desktop. It wraps the Hermes Agent engine and gives you a GUI for chat, profiles, skills, schedules and messaging gateways.
What you get with Desktop
A native Windows app. Installer is a normal .exe file. First run gives you a setup wizard that asks if you want local mode (Desktop installs Hermes for you in WSL behind the scenes) or remote mode (Desktop connects to a Hermes API on a VPS).
Desktop install steps
Download hermes-desktop-x.x.x-setup.exe from the project releases page. Run it. Windows SmartScreen will warn becuase the installer isn't code-signed yet (that's a known limitation, not malware). Click More Info then Run Anyway.
Desktop problems you should know about
GPU crash on NVIDIA machines
Some Windows machines with NVIDIA drivers open Desktop to a blank or flashing window. Setting HERMES_DESKTOP_NO_SANDBOX=1 as a user environment variable fixes it. Details in our Desktop GPU crash fix.
Local mode install can stall in WSL
If you pick local mode on Windows, Desktop tries to install Hermes inside WSL behind the scenes. The Hermes installer expects a TTY for sudo. WSL non-interactive shell doesn't provide one. The install hangs.
The workaround is to temporarily allow passwordless sudo inside the WSL distro:
echo "$USER ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/hermes-install
# let Desktop finish the install
sudo rm /etc/sudoers.d/hermes-install
Who should pick Desktop
Users who want a GUI. Less technical team members. Anyone who only interacts with the agent through messaging channels and never opens a terminal.
Option 3: The hybrid setup I use
What I run on my main Windows machine: Hermes Agent on a Linux VPS (no WSL involved), Hermes Desktop on the laptop in remote mode pointed at the VPS, and WSL2 only for SSH into the VPS when I want a terminal.
Why this works better than either alone
The agent stays running on the VPS 24/7. Messaging gateways don't die when I close my laptop. My laptop has no Hermes install of its own, so if I lose it I just install Desktop on the new one and point it at the same VPS.
This setup is documented in our Desktop remote backend over VPS tutorial.
Comparison table summary
| Feature | WSL2 | Desktop | Hybrid (VPS + Desktop) |
|---|---|---|---|
| GUI | No | Yes | Yes |
| CLI access | Yes | No | Yes (via SSH) |
| Runs when laptop closed | No | No | Yes |
| Setup time | 20 min | 5 min | 30 min |
| Best for | Devs | GUI users | Power users |
What about WebUI?
There's a fourth path: keep the agent on a Linux server, no local app at all, access through the community Hermes WebUI in any browser. Useful if you want phone access or if your Windows machine has GPU issues with Desktop.
Provider configuration is the same across all paths
Once you have Hermes running, the provider setup (Anthropic, OpenAI, OpenRouter, etc.) is identical regardless of which Windows path you chose. Our Hermes token costs guide covers picking a provider that won't surprise you on the monthly bill.
Hosting the agent on a LumaDock VPS
The hybrid pattern needs a Linux box for the agent. The LumaDock Hermes Agent template gives you that with the install already done. Unmetered bandwidth and no setup fees on every plan, which means a Telegram bot doing 24/7 traffic won't hit a cap. Full setup walkthrough in the Hermes Agent complete guide.

