Omarchy Apps Sponsor

AI agent guide

Hermes Desktop on Omarchy

A self-improving AI agent with a chat window — no terminal required.

Reviewed 2026-10-19 · independent editorial guide

Short answer

Install with omarchy pkg add hermes-desktop, pick Local mode in the first-run wizard, and connect a provider — an OpenRouter key, Nous Portal's free tier, or a local Ollama/LM Studio endpoint for $0. You get chat with memory, skills, scheduled tasks, and messaging gateways.

Hermes Desktop on Omarchy: the self-improving AI agent, in a chat window

Hermes Desktop is the native desktop GUI for Hermes Agent, Nous Research’s self-improving AI agent — it installs and configures the agent for you, then gives you a chat window with memory, skills, scheduled tasks, and messaging integrations, no terminal required.

TL;DR install

omarchy pkg add hermes-desktop

Takes ~5 minutes including the first-run wizard. Honest caveat: the app itself is free and MIT-licensed, but it is not a chatbot on its own — you need an LLM provider behind it. Bring your own API key (OpenRouter is the one-click path), use Nous Portal’s free tier, or point it at a local model (Ollama/LM Studio/llama.cpp) and pay nothing at all.

Getting started in 5 minutes

1. First launch — local or remote?

The app’s first-run wizard asks one question: run Hermes locally on this machine, or connect to a remote Hermes API server. Pick Local unless you already run a Hermes dashboard on a VPS. In local mode it checks for an existing install in ~/.hermes and, if missing, runs the official Hermes install script with dependency resolution (Git, uv, Python 3.11+). In remote mode it asks for the API URL + API key and validates the connection.

2. The 3 things you need to know

  • Connect a provider. OpenRouter is the recommended path — 200+ models through a single key, per the README. Add credit (~$5 goes a long way), paste the key, and you’re chatting. Alternatives: Anthropic, OpenAI, Google, xAI, Qwen, MiniMax, Hugging Face, Groq, Nous Portal (free tier available), or any OpenAI-compatible local endpoint. Pick your model per profile from the model picker.
  • Start a session. Chat requests go through http://127.0.0.1:8642 with SSE streaming — you get live tool progress indicators, markdown rendering, and real-time token/cost tracking in the chat footer. Try the slash commands: /web for web-enabled chat, /shell to run shell commands, /skills, /memory, /model to switch models mid-session, /usage to see spend.
  • The learning loop is the point. Hermes Agent’s differentiator is that it creates and improves its own skills from experience, keeps persistent memory across sessions, and searches its past conversations. Open the Skills screen to browse/install skills, Memory to view and edit what it remembers about you, and Sessions to full-text search every conversation you’ve had (SQLite FTS5). Edit its personality on the Soul screen (a SOUL.md editor). Set up recurring work under Schedules (cron jobs delivered to 15 targets, including Telegram/Discord via 16 messaging gateways).

3. Config location

Everything is under ~/.hermes — .env, config.yaml, profiles/ (per-profile isolated configs), state.db (session history), cron/jobs.json. The Settings screen has full backup/restore and a log viewer, so you can move machines without losing your agent’s memory.

Common issues & fixes

Real reports from the fathah/hermes-desktop issue tracker (the community-maintained app). The project is in active development — check issue status before hitting any of these.

Remote mode over HTTPS: sign-in “succeeds” but the app never connects

Fix: Root cause is a cookie-name mismatch: the HTTPS dashboard sets a __Host-hermes_session_at session cookie, but the app only looks for the bare hermes_session_at name, so the 750 ms session poll never fires (issue #996). Until upstream strips the __Host-/__Secure- prefix, work around it by connecting to the loopback HTTP gateway instead (works fine per the report), or use the SSH connection kind. A fix snippet was offered in the issue — if you’re technical, you can patch src/main/remote-oauth.ts.

Model picker shows only the current model for non-default profiles

Fix: This appeared after a failed model selection in one profile; the desktop’s per-profile model state appears to corrupt while the backend stays healthy (issue #998). Workaround: change models via the CLI, which works correctly for every profile (hermes -p <profile> model). Only affects non-default profiles in the desktop UI; the default profile is unaffected.

In Remote mode, Schedules/MCP screens come up empty

Fix: The app’s remote calls don’t carry OAuth credentials (session lives in a separate cookie partition), so the server returns 401 and the app silently renders empty lists (issue #1002). The reporter proposed PRs routing calls through the authenticated boundary. Until those land: prefer local mode, or manage schedules/skills/gateways directly in the dashboard or CLI, and use the desktop only for chat in remote mode.

A custom vision model (Gemma 4 E4B in llama.cpp) isn’t recognized

Fix: The app’s llama.cpp preset management strips manual mmproj lines from presets.ini before load, so there’s no reliable manual fix reported (issue #988). Workarounds that users have had success with: stick to the app’s suggested/known-good models (a Qwen3 variant loaded fine for the same reporter), or run your model behind Ollama/LM Studio and add it as an OpenAI-compatible local endpoint — local presets for both are built in, and vision works through the standard OpenAI-compatible image path.

Pairs well with / If you hate this, try

Pairs well with

  • Ollama (ollama.com) — free local inference makes Hermes Desktop 100% free and offline on the model side. Telegram/Discord gateways — talk to your agent from your phone while it works. A cron schedule for morning briefings.

If you hate this, try

  • The official agent directly — Nous Research now ships its own desktop app inside the hermes-agent repo (apps/desktop), and the hermes CLI is the full-featured original. The community app is the nicer onboarding path; the CLI is the power path.

Comparison: Hermes Desktop vs Jan vs OpenCode

Hermes DesktopJanOpenCode
PriceFree (MIT) — bring your own provider keyFree (open source) — local models free, cloud keys optionalFree (open source) — bring your own key or OpenCode Zen subscription
Best forA self-improving AI agent with memory, skills, scheduled tasks, and messaging integrationsOffline-first ChatGPT replacement: download open models and chat privately on your machineTerminal-first agentic coding: reads, edits, and runs code with 75+ provider options
Omarchy installomarchy pkg add hermes-desktopAppImage / .deb from jan.aicurl -fsSL https://opencode.ai/install | bash

One-line verdict: pick Hermes Desktop if you want an agent that acts and remembers (tool use, cron, Telegram gateway, skills that improve themselves). Pick Jan if you just want a private chat UI with local models. Pick OpenCode if you live in the terminal and want a coding agent.

Open the Hermes Desktop package

See the live version, upstream screenshot, requirements, source and exact Omarchy install command.

View Hermes Desktop →

Frequently asked questions

Does Hermes Desktop work on Omarchy?

Yes — install with omarchy pkg add hermes-desktop. It’s an Electron app (Linux AppImage/.deb/.rpm builds ship upstream), and the underlying Hermes Agent is a Unix-native Python tool, so Arch/Linux is its home turf.

Is Hermes Desktop free?

Yes. The app is open-source under the MIT License. But it’s a client, not a model — you supply the intelligence via your own provider key, a local model, or Nous Portal’s free tier.

Do I need an API key?

Not necessarily. You need a provider, but that can be a free one: Ollama or LM Studio running locally (no key at all), Nous Portal’s free tier, or OpenRouter’s free models. A paid key (OpenRouter/Anthropic/OpenAI/etc.) just buys you stronger models.

Can I run it against a remote Hermes server?

Yes — the first-run wizard offers Remote mode (API URL + key). But know the caveat: in Remote mode several screens (Schedules, Skills, Gateway, Providers, Memory) are degraded or unavailable, and HTTPS remote sign-in has a known cookie bug (#996). Local mode is the smooth path.

Does it remember me across sessions?

Yes — that’s the headline feature. Persistent memory, session history with full-text search, and a skill system that distills repeated tasks into reusable knowledge. Check the Memory screen to see what it knows, and back it up from Settings before migrating machines.

Official sources

Commands and fixes verified against official sources October 2026; on-machine verification pending.