Alpha · open source · unofficial community client
Hermes Interactive UI+
Interactive chat for Hermes Agent. Approve commands from your phone, watch every tool step live, leave the app while Hermes keeps working, and get answers that are not walls of text.
Get the Android alpha Self-hosting View source on GitHub
Made for people who run Hermes Agent and talk to it through Telegram or the terminal today. Requires Hermes Agent v0.21 or newer and a small bridge that you run yourself.
What it does
Approvals
When Hermes asks before running a command, you see the command and answer in the app.
Live tool steps
A timeline shows what ran and how long it took, while the answer streams in.
Leave the app
Hermes keeps working in the background; the finished answer waits for you.
Interactive answers
About 50 components: tables, charts, checklists, maps, recipes, quizzes, timers. Your taps go back to Hermes as the next message.
Local-first
Conversations stay on your device and your own server. No accounts, no telemetry.
Your server only
The app talks to your bridge, never to a service of ours. The bridge holds the Hermes API key.
Demos
Short recordings of the app (web build, phone size). All content is prepared sample data, nothing real. The videos have no sound.
The best moments in 53 seconds.
Credits: photos CC0 (Wikimedia Commons), product images generated, music from ElevenLabs Music. Per-file sources are in CREDITS.json.
For your Hermes Agent
Hermes wants to delete old files: see the exact command, the risk and the deadline, then tap “Allow once” – from your phone.
A research task with several tool steps: switch to another chat, Hermes keeps working, and the app tells you when the answer – summary and sources – is ready. (Web app: push notification; Android: keeps running in the background.)
A server check: terminal commands, a file read and a web search appear live in “Tools & activity”, then a compact table.
The ⚡ in the composer: a fast model answers in a couple of seconds. When it needs real data, one tap continues as a normal Hermes chat. (Needs the optional Hermes plugin on your server.)
Each Hermes bot has its own model, memory and skills. Pick one per chat in the model menu: here, the Kitchen bot. (Bots are Hermes profiles you set up on your server.)
Type “/” for the command palette: pick the model for this chat, set reasoning effort, see every command.
The model you pick is locked on the Hermes session for that chat; the header shows a lock.
And answers that look great
Where should the family photos live? Four ways as chains with a verdict; one tap picks, and Hermes answers with a plan.
Headphone ranking with category scores, compare two models, details and “I’ll take this”.
A question about home Wi-Fi: the answer arrives as a building-blocks diagram with columns, devices and a shared base.
A long answer about e-bike commuting: one tap on “As a table” and Hermes reshapes it.
Restaurants near the Pantheon as cards: swipe, save, details with opening hours, all on a map.
Changing a bike tube: tick off steps; at step 3 tap “I’m stuck here” and Hermes helps with that step.
Settings → Appearance: Standard, OLED black, Paper, Nord, switched live.
Full-body session: tapping a set starts the rest countdown; a summary at the end.
English to Spanish: flip cards, multiple choice and forgiving typing with Leitner boxes.
A heat pump as a mind map: zoom in, pan, tap a node and ask for more with “Dig deeper”.
Shakshuka: scale servings, start a timer, send ingredients to a shopping list and tick them off.
Fast and reliable
Even long answers stream at a steady 60 frames per second: text appears live and cards fade in softly.
Even on a slow connection, product cards keep their size: photos fade in, the text below stays where it is, and reopening the chat is instant.
If the app closes before the server confirmed a message, it is kept: “Not sent”, with “Send again”.
Platforms
The current version is an alpha (0.1.0-alpha.1). Expect rough edges. It is not in the Google Play Store or the Apple App Store.
| Platform | How to get it | Status |
|---|---|---|
| Android | Signed APK from GitHub Releases, or add the repository to Obtainium for automatic updates (turn on “Include prereleases”). Android 7.0 or newer, 64-bit ARM. | Alpha |
| Web app (PWA) | Prebuilt bundle from GitHub Releases, served by your own bridge, installable to the home screen. Install guide. | Alpha |
| iOS | Use the web app for now (installable, with push). A native app is prepared for TestFlight. | Web app now |
| Linux | Desktop app as AppImage or .deb (x86_64, Ubuntu 22.04 / Debian 12 or newer), see the desktop notes. | Alpha |
| macOS | Native desktop app for Apple Silicon (macOS 13+), signed and notarized: menus and shortcuts, approval actions in notifications, dock badge, menu bar mode, Touch ID lock. See the desktop notes. | Alpha |
Install and self-hosting
There is no hosted service. You run a small Node.js service, the bridge, next to your Hermes (Node.js 22+ or Docker). It authenticates your devices, routes presentation, handles uploads, voice and push, and pairs a new phone with a QR code. We strongly recommend reaching it over Tailscale and never exposing it to the public internet.
- Turn on the Hermes API server and start the Hermes gateway.
- Run the setup wizard on that machine:
npx hermes-ui-plus-bridge setup. - Install the app and scan the pairing QR code.
Privacy in short
The developers collect no data. There are no accounts, no analytics, no advertising and no crash reporting. Your messages go from your device to your bridge, then to your Hermes, and from there to the model providers you configured. Nowhere else. Read the full privacy policy.