Hermes Agent

How-To Guide

Hermes Desktop Install Troubleshooting on Windows

Fix Hermes Desktop installation on Windows: PATH, enterprise npm proxy, missing dependencies, endless loading, provider setup, native Windows limits, and WSL2 choices.

Quick answer

If Hermes Desktop will not install on Windows, first open a new PowerShell window and run Get-Command hermes, hermes --version, and hermes doctor. If the GUI bootstrap fails, use the official native Windows PowerShell installer to separate Hermes core installation from the Desktop interface. Corporate npm proxies must mirror every dependency required by the current lockfile; do not work around a missing package by downloading random bundles. Use WSL2 only when you need POSIX behavior or the dashboard's embedded terminal pane.

This guide owns one job: diagnose a failed or stuck Hermes Desktop installation on Windows 10 or Windows 11. It follows the current native-Windows install boundary from the official Hermes documentation: the Desktop installer and PowerShell installer share the same %LOCALAPPDATA%\hermes runtime and data directory, while WSL2 is a separate install. If maintaining local dependencies, provider keys, and an always-on runtime is the problem rather than the goal, compare the managed FlyHermes path before adding more infrastructure.

Deploy Hermes faster with FlyHermes

Managed cloud · API costs included · Skill library · Cancel anytime

Before you start:

  • Windows 10 or Windows 11 with PowerShell or Windows Terminal
  • Permission to write to %LOCALAPPDATA%\hermes and update your User PATH
  • Public npm access, or an enterprise npm proxy that mirrors the current Hermes dependency lockfile
  • One model-provider login or API key for the post-install smoke test
  • A copy of the exact installer error and the time it occurred; never share API keys or bot tokens

Steps

  1. 1

    Capture the failing stage before reinstalling

    Record whether the failure happens while downloading Desktop, provisioning Python/Node/PortableGit, cloning Hermes, installing Python or npm dependencies, opening the app, or sending the first model request. A bootstrap error, PATH error, and provider error need different fixes.

  2. 2

    Open a new PowerShell session and verify PATH

    Close the terminal used during installation, open a new PowerShell window, then run Get-Command hermes and hermes --version. The native installer updates User PATH, but existing terminals do not inherit that change.

  3. 3

    Separate Desktop from the Hermes core install

    If the GUI bootstrap failed, run the official native installer: iex (irm https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.ps1). Then run hermes doctor. A working CLI proves the core runtime is healthy even if Desktop still needs repair.

  4. 4

    Check the native Windows install directories

    Confirm the disposable code and virtual environment live under %LOCALAPPDATA%\hermes\hermes-agent, while config, auth, skills, sessions, and logs live directly under %LOCALAPPDATA%\hermes. Do not delete the whole Hermes root if you want to preserve user data.

  5. 5

    Diagnose enterprise npm proxy failures

    If the error names an unavailable npm package or version, test that exact dependency against the approved registry. Ask IT to mirror the current lockfile dependencies or temporarily permit the public npm registry. Do not freeze an old package version from a support thread into your permanent setup.

  6. 6

    Verify Node and command shims

    Run node --version, npm --version, and Get-Command npx.cmd. Current native Windows setup provisions Node for browser and bridge features. If an older system Node shadows the managed install, fix PATH ordering rather than invoking extensionless Unix shims.

  7. 7

    Run the smallest provider smoke test

    Use hermes model or hermes setup --portal, then run hermes chat -q "Reply with OK". If Desktop loads forever but this command fails too, diagnose provider auth, credits, or network access before rebuilding the interface.

  8. 8

    Choose native Windows or WSL2 deliberately

    Stay native for the CLI, Desktop, gateways, cron, browser tools, MCP, and the normal dashboard. Use WSL2 when you specifically need POSIX semantics or the dashboard /chat embedded terminal pane. Native and WSL2 keep separate Hermes homes, so do not troubleshoot them as one install.

  9. 9

    Test Desktop with one local profile

    Launch Desktop only after the CLI smoke test passes. Select the same provider/profile, send one harmless prompt, and inspect the exact log time if the interface remains loading. Add a remote backend only after local Desktop works.

  10. 10

    Escalate with a redacted diagnostics packet

    Include Windows version, Desktop version, install method, exact failing stage, hermes --version, hermes doctor summary, Node/npm versions, registry/proxy context, and redacted logs around one controlled retry. Remove tokens, keys, usernames, and private URLs.

Pro Tips

  • 💡Use the PowerShell installer as a diagnostic lane, not as a second mystery install: Desktop and native CLI share the same Windows runtime directory.
  • 💡A new PowerShell window is the first PATH fix; manually appending directories can hide the real installer state.
  • 💡On corporate machines, verify the exact registry configured by npm config get registry without copying authentication tokens into support messages.
  • 💡If the installer names one missing npm package, verify registry availability before repeatedly deleting the whole install.
  • 💡Keep %LOCALAPPDATA%\hermes user data when reinstalling; remove only the disposable hermes-agent subdirectory unless you intentionally want a full reset.
  • 💡Use hermes doctor after every repair so dependency problems are separated from provider and gateway problems.
  • 💡Do not debug a remote backend, Docker socket, Desktop UI, and model provider in the same retry.
  • 💡Native Windows supports the normal dashboard, but its embedded terminal pane needs WSL2; that limitation is not a failed Desktop install.
  • 💡For an always-on business agent, installation success is not uptime. You still own Windows login tasks, provider credits, updates, backups, and channel delivery.
  • 💡Choose FlyHermes when browser/mobile access and managed uptime matter more than maintaining a Windows or VPS runtime.

Troubleshooting

`hermes` is not recognized immediately after installation

Open a new PowerShell or Windows Terminal session, then run Get-Command hermes. The installer writes User PATH, but the terminal that launched it keeps the old environment.

Desktop bootstrap fails on a package missing from an enterprise npm proxy

Confirm the package and version against the approved registry, then ask IT to mirror the current lockfile dependencies or allow a bounded public-registry install. A random portable bundle is not a safe substitute.

Desktop remains on a loading screen

Run hermes doctor and a one-line hermes chat -q test first. If CLI chat fails, fix provider/auth/network. If CLI works, capture Desktop version, profile, and redacted logs around one clean launch.

`WinError 193` or a command is not a valid Win32 application

Use the Windows .cmd shim such as npx.cmd; a hardcoded extensionless shebang script cannot be launched directly by Windows CreateProcess.

Browser tools fail after Desktop installs

Run hermes doctor, verify Node/npm resolution, then follow the printed Chromium or Playwright repair. Browser dependency failure does not require deleting Hermes memory or profiles.

The dashboard works but the `/chat` embedded terminal does not

That pane requires a POSIX PTY and is not supported on native Windows. Use WSL2 for embedded terminal behavior; the rest of the dashboard can remain native.

Native Windows and WSL2 show different sessions or configuration

They are separate installs by design: native uses %LOCALAPPDATA%\hermes, while WSL2 uses ~/.hermes. Pick the runtime you intend to operate and copy only deliberate state.

Desktop connects to a remote backend but tools fail

Prove local Desktop first, then check which machine executes agent tools, the remote service account, Docker or filesystem permissions, and conflicting environment overrides. Use the dedicated remote-backend guide.

Reinstall removed the app but old errors persist

The uninstall path preserves %LOCALAPPDATA%\hermes user data. Inspect config, provider, and logs before doing a destructive full reset; back up memory, skills, sessions, and auth first.

Hermes installs but the business workflow goes offline after logout

Install and verify the Windows gateway login task, or use a managed hosted path. A successful Desktop install is not proof of 24/7 process supervision or messaging delivery.

FAQ

Does Hermes Desktop support Windows 11?

Yes. Current official documentation supports native Windows 10 and Windows 11, and recommends the Desktop installer or native PowerShell installer.

Do I need WSL2 for Hermes Desktop?

No. CLI, Desktop, gateways, cron, browser tools, MCP, and the normal dashboard run natively. Use WSL2 for POSIX semantics or the dashboard's embedded terminal pane.

Where does Hermes install on native Windows?

The runtime is under %LOCALAPPDATA%\hermes\hermes-agent; config, auth, skills, sessions, and logs live under %LOCALAPPDATA%\hermes.

Why is Hermes not on PATH after installation?

The installer updates User PATH, but already-open terminals keep the old environment. Open a new PowerShell window and run Get-Command hermes.

What if my company blocks a required npm package?

Ask IT to mirror the current lockfile dependencies or permit a bounded install from the public npm registry. Do not bypass company policy or download unverified bundles.

Can I reinstall without deleting my Hermes data?

Yes. The normal uninstall/reinstall replaces the hermes-agent runtime directory and preserves the rest of %LOCALAPPDATA%\hermes. Back up first anyway.

Why does Desktop load forever after installation?

Separate UI from runtime: run hermes doctor and one CLI chat test. Provider auth, network, credits, or a partial dependency install can all appear as an endless Desktop load.

When is FlyHermes the better Windows option?

Use FlyHermes when the goal is managed browser/mobile access, connected channels, and uptime without maintaining Windows dependencies, provider keys, login tasks, updates, or a VPS.

Related setup and cost guides

Related Guides