Run Hermes Agent on iPhone
Hermes officially supports Linux, macOS, WSL2, and Termux on Android — not iOS. Run it on a host you already own, or a $5 VPS, and drive it from your iPhone.
TL;DR
Running Hermes Agent on iPhone means running the Hermes runtime on a host you control and treating your iPhone as the chat client. Hermes (NousResearch) officially supports Linux, macOS, WSL2 on Windows, and Termux on Android — iOS is not on the list. Onepilot closes the gap: an iOS app that deploys Hermes to any Linux or macOS host you can SSH into and drives it from your phone. Use a Mac mini in the closet, a Linux box at home, a Raspberry Pi, a NAS, or a rented VPS — the host is your call. The wizard wires Telegram, Discord, or Slack and gives you a file browser, terminal, and git tools to inspect what the agent is doing. The agent runs on the host; the iPhone is the supervisor.
Hermes platform support, as of April 2026
| Platform | Status | Note |
|---|---|---|
| Linux (x86_64, ARM64) | Officially supported | Documented install path |
| macOS | Officially supported | Documented install path |
| WSL2 on Windows | Officially supported | Treated as Linux |
| Android (Termux) | Officially supported | Adapted install paths, mobile-tuned TUI |
| Native Windows | Not supported | WSL2 only |
| iOS / iPhone | Supported through Onepilot only | Onepilot deploys Hermes to a Linux/macOS host you own and drives it from iOS |
Source: official Hermes Agent documentation (NousResearch), 2026 release notes.
Why iOS is not on the official list
Hermes is a self-improving terminal-native agent: it reads and writes skill files, spawns subprocesses, and keeps a long-running event loop. iOS does not allow a sandboxed app to do any of those things — no arbitrary process execution, no persistent background daemons, no writeable system shell. That's why Termux, the standard Hermes mobile target, is Android-only: Android lets a user-space terminal emulator run actual binaries.
The workaround that works on iOS is structural: don't try to run the agent on the phone. Run it on a host the Hermes docs already support — a Mac mini, a Linux box, a Raspberry Pi, a NAS, or a remote VPS — and use the iPhone as a remote-control surface. SSH gives you the shell, a messaging channel (Telegram / Discord / Slack) gives you the chat, and an IDE-style iOS app gives you the file browser and git diffs. The agent doesn't care whether the host is in your closet or in a Hetzner data center.
Deploying Hermes from iPhone in four steps
- Pick the host. Any Linux or macOS machine you can SSH into works — that's what Hermes officially supports. Free if you use hardware you already own — a Mac mini in the closet, a Linux box at home, a Raspberry Pi 5, a NAS running sshd, a Docker container on a home server, or a work laptop reached through Tailscale. Don't have one idle? A rented VPS does the job — Hetzner CX11 (€4.51/month), DigitalOcean Droplet ($6), AWS Lightsail ($5), or Oracle Cloud Free Tier (free, ARM Ampere). Add it to Onepilot by host, port, and SSH credentials — keys are stored in the iOS Keychain.
- Deploy Agent → Hermes. Onepilot opens an SSH session, installs nvm under your user (no
sudo), pulls the Hermes CLI from the official release channel, and runs the post-install setup. The deploy is reversible:rm -rf ~/.nvm ~/.hermeson the server returns it to a clean state. - Pick LLM provider and channel. Choose a provider from the 23+ Onepilot supports — Anthropic, OpenAI, Google, Mistral, Groq, DeepSeek, xAI, Perplexity, Cohere, Together, Fireworks, OpenRouter, Ollama, and others. Pick a channel: Telegram (fastest), Discord, or Slack. The wizard wires the bot.
- Confirm and chat. Onepilot starts Hermes as a background process, registers it with the channel, and reports back. You can talk to the agent from the channel or from Onepilot's in-app chat tab. The self-improving skill loop runs on the host you picked; you read or edit skill files through the iOS file browser when you want to.
What you can do from the iPhone after deploy
Read the agent's skill files. Hermes stores skills as files on disk under its working directory. The Onepilot file browser opens that directory with syntax highlighting for 20+ languages, so you can audit what the agent has learned from a phone screen.
SSH and tail logs. The terminal tab is a real PTY backed by SwiftTerm. Onepilot already runs the Hermes process as a persistent background service — no tmux or screen ceremony needed — so opening a terminal tab on the same host just lets you watch what the agent is doing in real time, stream logs, or run a quick command alongside it.
Direct the agent from chat. Telegram, Discord, or Slack become the primary control surface once deployed. Send a request from your watch, the agent answers in the channel, you read it without unlocking the phone.
Schedule recurring runs. The cron tab in Onepilot can fire the agent on a schedule — daily summaries, weekly cleanup, hourly health checks — without writing crontab syntax by hand.
Limits to be aware of
No on-device Hermes. The agent does not run on the iPhone CPU. Anything that requires the agent to be on the phone — local sensor access without a network round trip, on-device file system control of the iOS sandbox — is not what this setup does. iOS sandboxing makes on-device terminal-native agents impractical.
Network dependency. Onepilot's iPhone client needs network reachability to the host (over local Wi-Fi, Tailscale, or the public internet, depending on where you put it) for the SSH session, and the channel (Telegram / Discord / Slack) needs internet at both ends. If the phone is fully offline, you read messages later through the channel app the same way the agent's outputs would queue for any chat client.
FAQ
Does Hermes officially support iPhone?
No. The Hermes Agent project (NousResearch) lists Linux, macOS, WSL2, and Termux on Android as supported install targets in its 2026 documentation. iOS is not on that list, and there is no native iPhone client published by the Hermes team. The supported mobile path in the official docs is Termux on Android. iPhone has been an open gap.
How do I run Hermes on iPhone with Onepilot?
Hermes runs on a host you provision through Onepilot's deploy wizard, and your iPhone drives it over SSH and through a messaging channel. The host can be a Mac mini at home, a Raspberry Pi, a Linux box on your network, a NAS running sshd, or a remote VPS — anything you can SSH into that runs Linux or macOS (the platforms Hermes supports). The wizard installs the Hermes CLI under nvm (no sudo), starts the agent as a background process, and wires it to Telegram, Discord, or Slack.
What does Hermes need to run from a phone?
Three things: a host the agent can live on, an LLM provider key, and a way to talk to it. Onepilot collapses all three into one wizard. The host can be hardware you already own (Mac mini, Raspberry Pi, Linux box, NAS) or a rented VPS (Hetzner CX11 at €4.51, DigitalOcean Droplet at $6, AWS Lightsail at $5). It just has to run Linux or macOS — the platforms Hermes officially supports — and be reachable over SSH. The LLM key sits in the iOS Keychain. The talk channel is Telegram by default; Discord and Slack work the same way.
Why not use Termux on Android instead?
Termux is the official mobile path for Hermes — but only on Android. iPhone has no Termux equivalent because iOS does not allow arbitrary process execution from a sandboxed app. Onepilot solves the same problem differently: instead of running the agent on the phone, run it on a host you already have (or rent one for $5/month) and treat the phone as the chat client. The agent gets a real Linux or macOS environment; the phone doesn't burn battery hosting a long-running process.
Can the Hermes agent persist across iPhone restarts?
Yes. The agent process lives on the host you picked — Mac mini, Raspberry Pi, Linux box, NAS, or VPS — not on the iPhone, so it survives phone restarts, app force-quits, network changes, and battery deaths. Onepilot reconnects to the host when you reopen the app and resumes the conversation. Channel-routed messages (Telegram, Discord, Slack) reach the agent regardless of whether the iPhone is online.
How does Hermes pick up the LLM provider key on the host?
Hermes is a providerKeyEnv-style framework: it reads its model credentials from environment variables on the host, not from a config file. During the Onepilot wizard, the chosen API key is stored in the iOS Keychain, pushed over SSH, and written into a user-scoped env that Hermes loads on start. Switching providers means re-running that wizard step — Onepilot rewrites the env and restarts the Hermes process; the agent's skill files and memory survive intact.
Will the Hermes self-improving skill loop work on whatever host I pick?
Yes. Hermes's self-improving skill behavior is part of the agent runtime, not the host environment — it runs anywhere the Hermes CLI runs. A Mac mini, a Raspberry Pi 5, a home Linux box, or a $5 VPS all give Hermes the same things: a real filesystem for skill files, persistent process lifetime, and network egress for LLM calls. The iPhone never sees those skill files directly; you read or edit them through the Onepilot file browser when you need to.
Run Hermes from your iPhone
Drop your email and we'll send one note when Onepilot ships on the App Store.
Join the waitlistLooking for OpenClaw on iPhone or the full agent index?