Guides
Workflows
Tools & integrations
Troubleshooting
Questions
What are terminal backends?
A terminal backend decides where the agent's shell commands actually run. Hermes has seven: local, docker, ssh, singularity, modal, daytona and vercel_sandbox. Set one with terminal.backend in config.yaml or hermes config set terminal.backend <name>.
The README notes that Daytona and Modal can hibernate when idle, so a cloud environment costs very little between sessions.
PermalinkCan I run Hermes on a cheap VPS and talk to it from my phone?
Yes, that's a common setup. The README mentions running it on a $5 VPS. Install it on the server, connect a chat app with hermes gateway setup, and keep the gateway running as a service (hermes gateway install, or sudo hermes gateway install --system for a boot-time service on Linux).
Then chat with it from Telegram or another platform while it works on the server.
PermalinkHow do I run Hermes in Docker?
Mount a data folder and run the setup wizard once: docker run -it --rm -v ~/.hermes:/opt/data nousresearch/hermes-agent setup. Then start a long-running gateway with docker run -d --name hermes --restart unless-stopped -v ~/.hermes:/opt/data nousresearch/hermes-agent gateway run.
Docker installs don't support hermes update. To upgrade, pull a new image and recreate the container with the same data mount.
Can I run more than one agent on the same machine?
Yes, with profiles. Each profile is a separate Hermes home with its own config, keys, memory, sessions, skills and cron jobs. hermes profile create coder creates one and also gives you a coder command, so you can run coder chat or coder gateway start.
Profiles don't share memory, and two profiles can't use the same bot token, so give each one its own bot.
PermalinkHow do I move Hermes, or a single profile or bot, to another computer?
For a whole setup, run hermes backup on the old machine. It creates ~/hermes-backup-<timestamp>.zip with config, credentials, memories, skills, sessions and profiles (not the app itself, browser profiles or caches). Install Hermes on the new machine, copy the zip over, run hermes import <file>, then hermes setup to check your keys. Review the backup's skipped-file report before you wipe the old machine.
To move or share one profile (a Bot Mode bot is a profile), run hermes profile export work -o work.tar.gz and on the other side hermes profile import work.tar.gz --name work. In Desktop the same thing is Export profile… and Import profile… in the command palette, and /export and /import work in chat. Profile exports strip API keys and logins, so sign in again on the new machine.
Going to Docker instead? The official image keeps all user data in one folder mounted at /opt/data, and the image itself holds no state.
Can I talk to Hermes with my voice, and can it make phone calls?
Yes. In the CLI, turn on /voice on and press Ctrl+B to record; Hermes detects silence and replies. In Hermes Desktop, the microphone does dictation and the voice button starts a spoken conversation. On Telegram and Discord it can send spoken replies, and on Discord it can join a voice channel.
Desktop also offers a full-duplex mode: set Settings > Voice > Voice Chat Mode to GPT-Live (voice.voice_chat_mode: gpt-live). It uses OpenAI's gpt-live-1, needs your own OpenAI key, is billed by OpenAI per minute of session time, and hands real work to your normal Hermes model. Configure speech-to-text and text-to-speech providers with hermes tools; a Nous Portal plan can supply text-to-speech.
Phone calls aren't built in, but the official optional Telephony skill (hermes skills install official/productivity/telephony) covers Twilio numbers, SMS and AI outbound calls with your own Twilio account.
Is there a web interface for managing Hermes?
Yes. hermes dashboard starts a local web server and opens http://127.0.0.1:9119. From there you can manage config, API keys, MCP servers, messaging pairing, webhooks, the gateway, memory, sessions, logs, analytics, cron jobs and skills instead of editing YAML. --port changes the port and --no-open skips opening the browser.
It binds to localhost by default. If you bind it elsewhere with --host, a public bind always requires an auth provider, either a password or OAuth.
Can I use Hermes inside VS Code, Zed or JetBrains?
Yes, through ACP (Agent Client Protocol). hermes acp runs Hermes as an ACP server over stdio, and editors can show its chat, tool activity, file diffs, terminal commands and approval prompts. In VS Code, install the ACP Client extension and pick Hermes Agent. In Zed, add a custom agent server with command hermes and args acp. JetBrains works through an ACP-compatible plugin.
ACP sessions keep your provider setup, memory and skills but leave out messaging delivery and cron management. hermes acp --check verifies the install.
Is there an official Hermes mobile app for iOS or Android?
Not yet. The current release has no official iOS or Android app; there's no mobile app in the official repository and none in the docs. The Nous team has said on X that one is in the works, without a public date.
Today, the supported way to use Hermes from your phone is the messaging gateway: run Hermes on a computer, server or Hermes Cloud and chat with it on Telegram, Discord, WhatsApp, Signal, Slack and other apps. You can even move a live CLI session to your phone with /handoff.
Android users can also run Hermes itself on the phone through the official Termux package (64-bit ARM). Be wary of third-party apps claiming to be the official one.
PermalinkCan Hermes Desktop connect to a remote agent on a VPS, NAS or Hermes Cloud without running the agent locally?
Yes. Desktop can attach to a backend on another machine and act as the client: your sessions, memory and tools all live on that host. Go to Settings > Gateways. Hermes Cloud lets you sign in and pick an agent with nothing to paste; Remote gateway takes the URL of a backend you run; SSH opens a tunnel to a Hermes install for you.
For your own server, run hermes serve there (the headless backend; hermes dashboard works too) bound to a reachable address, for example hermes serve --host 0.0.0.0 --port 9119. A non-loopback bind requires sign-in: use a username and password only on a trusted network or VPN such as Tailscale, and OAuth through Nous Portal (hermes dashboard register) for anything reachable from the internet. Then enter http://<host>:9119 in Desktop and sign in.
Without a local runtime the app offers to connect or install, and hermes desktop --ignore-existing skips an installed one so no local backend starts. The messaging gateway on the server is a separate process you keep running yourself.
What is Bot Screen, where does it run, and how heavy is it?
Bot Screen gives each bot its own desktop on a headless Linux gateway host (a server, cloud VM or Hermes Cloud), which the bot's computer use and browser act on, streamed live into Hermes Desktop. Your Mac or PC is only the viewer, and the bot keeps working when you close the app. It isn't offered when the gateway itself runs on macOS or Windows, which already have a real display.
It's off by default. Start it from the Screen pane in Desktop or with hermes computer-use screen start on the host; hermes computer-use screen status shows whether the needed TigerVNC and Xfce packages are installed, and hermes computer-use screen install adds them. Unused screens stop after 30 minutes.
Plan for about 1.1–1.5 GB of RAM per open screen with a browser: the desktop is cheap, the browser is the cost. 4 GB runs it and 8 GB is comfortable for takeovers. With a Docker or SSH terminal backend, the screen runs inside that sandbox.
PermalinkHow do I watch the agent, or take over for a login, 2FA or CAPTCHA, and does it keep going afterwards?
When the bot hits a step it shouldn't do itself (a login, a 2FA prompt, a CAPTCHA, a payment), it says so in chat and ends its turn. On a hosted gateway with Bot Screen, open the bot's Screen, click Take over, do the step, then click Hand back and tell it to continue.
While you hold control its computer-use and browser tools are refused; on hand-back it re-captures the screen and carries on in the same conversation, with the session you just signed in to. The browser profile persists per bot, so the login usually sticks for later runs.
On your own computer you can simply watch: set browser.headed: true for a visible browser. For many sites the vault can fill saved logins and generate 2FA codes without a takeover.
Can a cloud or VPS agent control my local computer, and why does Desktop act differently on a remote gateway?
Tools run where the backend runs. With Desktop connected to a cloud or VPS gateway, terminal commands, file edits, computer use and the browser all happen on that remote machine, not on your PC. That's why a remote agent can't click around your local apps or read your local files.
A few things are tied to the machine running the app, so they behave differently remotely: Open containing folder only works for local sessions (use Reveal in filetree), artifacts download through the gateway, logs for a failed turn live on the remote host, and settings, sessions and memory follow the gateway you're connected to.
To have an agent act on your computer, run Hermes on it, either as Desktop's local gateway or as a second registered gateway, and switch between gateways in the Sessions sidebar.
PermalinkWhat is Hermes Cloud, how is it priced, and is storage persistent?
Hermes Cloud is Nous Research's hosted Hermes Agent: an always-on agent on a dedicated cloud instance with its own workspace and dashboard, managed from the agents page in Nous Portal. Hermes Desktop connects to it from Settings > Gateways > Hermes Cloud.
According to the Cloud page, instances are billed daily from your Nous credit based on actual use (compute plus storage), stopped instances pay only storage, and model and tool use is billed separately. Deploying needs at least $2 in credits or an active subscription; current instance sizes and prices are listed in Nous Portal.
Storage is persistent: files, memory and configuration are kept whether the agent is running or stopped, and disks never shrink. The Nous team has said on X that each instance has roughly a 12 GB persistent volume at /opt/data holding the Hermes home; check the Portal for current sizes.
How do I back up my Hermes setup?
Run hermes backup. It writes ~/hermes-backup-<timestamp>.zip with your config, credentials, memories, skills, sessions and profiles, and it's safe to run while Hermes is working. Restore with hermes import <file>. Check its report of files that failed to copy, and store the zip somewhere private, since it contains your keys.
hermes backup --quick saves only selected state files. Updates take a quick snapshot automatically; hermes update --backup, or updates.pre_update_backup: full, makes a full one before each update.
For a VM or Docker host, back up the Hermes data folder itself (/opt/data in the official image), or snapshot the whole VM with your provider's tools.