OnepilotDownload

The personal agent stack on iPhone

Agents come in two kinds. Framework agents you deploy once and leave running: the gateway (OpenClaw) and the self-improving runtime (Hermes). Coding agents you drive turn by turn in a terminal: Claude Code, Codex, OpenCode. Onepilot deploys the first kind to a host you can SSH into, runs the second kind live, and makes the iPhone the supervisor.

Which framework should you deploy: OpenClaw or Hermes?

Not sure yet? The two layers compose on one host, so you can run either alone and add the other later. Read the how they compose breakdown below.

Run this whole stack from your iPhone, download it on the App Store.

TL;DR

Everything composes on one host. OpenClaw routes channels and plugins. Hermes executes and learns skills. Claude Code, Codex, and OpenCode work in a terminal session on the same machine, and that session keeps running after you close the app. iOS does not allow long-running background processes, so all of it lives server-side; the iPhone is the supervision surface.

What are the layers of a personal agent stack?

LayerAgentRoleNot its job
GatewayOpenClawChannel routing, plugin dispatch, credentialsNot the brain. Not the org chart.
RuntimeHermesSelf-improving skill execution, persistent memoryNot a chat client. Not a coordinator.
Coding agentClaude Code, Codex, OpenCodeHands-on work in a codebase, driven from a real terminalNot a background service. Not a channel router.

OpenClaw (gateway), A long-running process on your host that routes between LLM providers, channel plugins (Telegram, Discord, Slack), and skill files. The gateway is the agent's front door.

Hermes (runtime), An always-on agent process that auto-generates reusable skills from experience and recalls past work via persistent memory. The runtime is the agent's brain.

Claude Code, Codex, OpenCode (coding agent), An interactive agent you start in a shell and work with turn by turn: it reads files, runs commands, and edits code while you watch. You do not deploy it through a wizard; you open a session and it runs there.

How do OpenClaw, Hermes, and coding agents work together?

They run side by side on one host. A Telegram message arrives: OpenClaw's channel plugin receives it and dispatches to the registered agent. A Hermes runtime picks up the task, recalls relevant past skills from its FTS5 memory, executes, and writes a new skill file if it learned something. Meanwhile a coding agent can be working through a repository in a terminal session on the same machine. The phone shows what happened, message log, skill diff, session transcript, but never holds the running process.

Run any one alone. The minimum useful stack is just OpenClaw on a Raspberry Pi. Add Hermes when you want skill memory. Open a terminal session when the job is code. The stack grows by adding pieces, not rewriting layers.

Which layer should you deploy first?

Channels first

You want one agent reachable from Telegram, Discord, and Slack with the same memory.

Start with OpenClaw →

What is OpenClaw? · Install · Skills · VPS · vs Hermes · vs Claude Code · Alternatives

Skills first

You want the agent to learn reusable skills from your work and not lose them between sessions.

Start with Hermes →

Code first

The job is a codebase, not a chat surface. Open a terminal and start Claude Code, Codex, or OpenCode; the session keeps running when you close the app.

Read the CLI docs →

Which AI agents does Onepilot support?

OpenClaw mascot

OpenClaw

Integrated in app

Personal AI assistant with a Gateway-and-nodes architecture.

Onepilot provisions the OpenClaw Gateway on any host you SSH into, your Mac mini, a Linux box at home, a Windows machine, a Raspberry Pi, or a small VPS, and pairs the iPhone as a node. The Gateway lives wherever you put it; the iPhone is the supervisor.

In-process channel pluginBundled plugin snapshotSkill managementSoul markdownCron jobsFTS5 memory
Upstream: openclaw.aiRead the iPhone setup guide →
Hermes mascot

Hermes

Integrated in app

Self-improving agent from NousResearch, Linux/macOS/WSL2/Termux only, until now.

Hermes does not officially support iOS. Onepilot deploys the Hermes runtime to any Linux or macOS host you can SSH into, a Mac mini at home, a Linux box, a Raspberry Pi, or a remote VPS, and drives it from iPhone via Telegram, Discord, or Slack.

Self-improving skillsProvider key envSkill managementSoul markdownCron jobs
Upstream: hermes-agent.nousresearch.comRead the iPhone setup guide →

Claude Code

Integrated in app

Anthropic's coding agent, already available through the Onepilot terminal.

Claude Code is a command-line coding agent. Because Onepilot already includes a real, interactive terminal, Claude Code works out of the box: SSH into your host, run claude, use it interactively. No wizard step needed. The value Onepilot adds is the layer around the shell, file browser, git, cron, channel routing, and an API key kept in the iOS Keychain.

Available todayInteractive CLIRuns in a real terminalRouted via the same SSH layer
Upstream: anthropic.com

OpenAI Codex CLI

Integrated in app

OpenAI's coding agent, already available through the Onepilot terminal.

Codex CLI is a command-line coding agent like Claude Code. It works today inside the Onepilot SSH session, install it once on your host, then run codex from any terminal tab. Your API key is kept in the iOS Keychain; the file browser, git tab, and cron tab wrap around the shell.

Available todayInteractive CLIRuns in a real terminal
Upstream: openai.com

OpenCode

Integrated in app

Open-source terminal coding agent, readable live from the Onepilot session viewer.

OpenCode is a terminal-native coding agent you install on your own host. It runs inside the Onepilot SSH session like any other CLI, and Onepilot reads its session history directly, so you can follow a run from your phone: every step, every tool call, then jump into the same terminal to take over.

Available todayInteractive CLIRuns in a real terminalReadable in the session viewer
Upstream: opencode.ai

Frequently asked questions

What is a personal agent stack?+

A personal agent stack is a self-hosted set of processes that let one operator run AI agents persistently. It has two halves. Framework agents are deployed once and left running: OpenClaw is the gateway that routes channels and plugins, Hermes Agent (NousResearch) is the self-improving runtime that executes and remembers. Coding agents are interactive: Claude Code, Codex, and OpenCode run in a terminal session while you work with them. Both halves live on the same host, and neither can run on the phone itself.

How do OpenClaw and Hermes fit together?+

They sit at two different layers of the same stack, so they compose rather than compete. OpenClaw is the gateway: it routes channels, plugins, and skills. Hermes is the runtime, a self-improving agent process with memory. You can run either one alone, or both together on the same host, with OpenClaw handling the chat surface and Hermes handling execution and memory. Onepilot deploys both through the same wizard.

Hermes agent vs OpenClaw, which one should I pick first?+

Pick OpenClaw if your bottleneck is channels (Telegram, Discord, Slack) and plugin routing. Pick Hermes if your bottleneck is the agent itself learning skills from your work. They are not direct substitutes: OpenClaw is a gateway, Hermes is a runtime. A common 2026 setup runs both on one host: OpenClaw handles the chat surface, Hermes handles execution and memory. Read the comparison: /blog/hermes-vs-openclaw.

Can I run a Hermes agent on iPhone?+

Hermes officially supports Linux, macOS, WSL2, and Termux on Android. iOS is not on that list. Onepilot deploys Hermes to a Linux or macOS host you can SSH into, a Mac mini, a Raspberry Pi, a NAS, or a small VPS, and drives it from iPhone via Telegram, Discord, or Slack. The agent runs on the host; the iPhone is the supervisor.

Can I run Claude Code or Codex from iPhone?+

Yes, through Onepilot, though not the same way as a framework agent. There is no deploy wizard for them because they are interactive: you open a terminal session on your host and start the agent there. Onepilot keeps that session alive after you close the app, so a long run keeps going, and its session viewer shows you the turns as they happen. The same applies to OpenCode.

Where does the iPhone fit in the 2026 agent stack?+

The iPhone is the supervision surface, not the runtime. iOS sandboxes prevent persistent background processes, so the gateway, runtime, and orchestrator all live on a host you own or rent. The phone is where you watch the agent work, approve actions, edit skill files, and route messages: a control room, not a server. This is the gap Onepilot fills: the phone-side IDE for an agent stack hosted somewhere else.

What does each layer not do?+

OpenClaw is not a brain: it does not learn skills on its own. Hermes is not a chat client: it does not handle Telegram or Discord routing by itself. Coding agents are neither: Claude Code, Codex, and OpenCode do not stay running in the background waiting for a message, they work in a session with you. Running Hermes without a channel, or expecting a coding agent to answer a Telegram message while your phone is in your pocket, is the most common setup mistake.

How much hardware do I need?+

One Linux host with 2 GB RAM and 20 GB disk handles the gateway plus a single Hermes runtime. Add headroom for each additional concurrent agent, and more again if you run coding agents on large repositories. Common setups: a Raspberry Pi 5 (8 GB) at home for hobby use, or a small VPS for always-on work. You bring the host and the LLM keys.

Try the deploy wizard

Bring your own host, your own LLM key, and the iPhone.