Mercury Voice
angel12/mercury-voice
Native SwiftUI voice-conversation client for Hermes Agent on macOS and iOS
Mercury Voice is a native SwiftUI app for macOS 14+ and iOS 17+ that lets you talk to Hermes Agent by voice. It connects to a Hermes server over the same JSON-RPC WebSocket protocol as the Hermes desktop app and runs a hands-free listen, transcribe, submit and speak loop.
What Mercury Voice does
Mercury Voice is a multiplatform Xcode project that builds one SwiftUI client for macOS 14 and iOS 17. It talks to Hermes through the JSON-RPC WebSocket protocol used by the Hermes desktop app. Connection modes include loopback token mode and gated binds that use basic-auth password login, native OAuth with PKCE, or both. Credentials are kept per server in the Keychain.
The voice loop mirrors the desktop app: listen, transcribe, submit, speak the streamed reply, then re-arm. It supports full-duplex barge-in, so you can interrupt the spoken reply, and spoken stop words. Speech can run through the server or client-direct speech-to-text and text-to-speech, with a sentence cutter and a gap-free player. On iOS an active conversation shows a lock-screen Live Activity with mute, stop and end controls. The README says it was built against desktop contract v7 of hermes-agent main as of 2026-09-22.
Key features
- Hands-free voice loop with full-duplex barge-in and spoken stop words
- Same JSON-RPC WebSocket protocol as the Hermes desktop app
- Token, password and native OAuth (PKCE) sign-in with Keychain credential storage
- Lock-screen Live Activity on iOS with mute, stop and end controls
- Reconnect supervisor with jittered backoff and event replay
- Unit tests for the state machine, barge detector, echo guard, OAuth and protocol models
When to use it
- Talking to a Hermes Agent running on a home server from an iPhone
- Hands-free voice sessions with a Hermes desktop backend on a Mac
- Approving or answering agent questions by voice while away from the keyboard
Who it is for: Hermes Agent users with a Mac or iPhone who want a native voice front end for their Hermes server.
How it fits with Hermes Agent
Built for Hermes Agent as a native client that follows the Hermes desktop contract, including profiles, sessions, approvals and clarify questions.
Requirements: Xcode 16 or newer to build, macOS 14+ or iOS 17+, and a Hermes server that speaks desktop contract v7 or newer
FAQ
What is Mercury Voice?
Mercury Voice is a native SwiftUI voice client for Hermes Agent. It runs on macOS 14+ and iOS 17+ and holds spoken conversations with a Hermes server.
Does Mercury Voice work with Hermes Agent?
Yes. It speaks the same WebSocket protocol as the Hermes desktop app. A backend older than contract v7 shows a notice, though approvals and clarify questions still work through the legacy event path.
Is Mercury Voice free and open source?
Yes. The repository is released under the MIT license.
Similar interfaces for Hermes Agent
All interfacesSelf-hosted dashboard for running a fleet of long-lived AI agents on your own infrastructure
openwarehq freejarvisVoice command deck that runs on its own model or acts as the face of a self-hosted Hermes Agent
lxfu1 memo-agentTerminal AI coding assistant built with TypeScript and Ink, described as a simplified Hermes Agent
thefullctx Hermes for TernNative Tern frontend for Hermes Agent that renders the conversation as Markdown, tool rows and subagents
nosleepcassette SkinwalkerTextual TUI for creating, previewing and activating Hermes CLI skins, with ASCII logo and hero art
openma-ai BackchatLocal-first desktop workspace for ACP agents including Claude Code, Codex, Gemini CLI and Hermes
Related guides: Connect Hermes agents on several machines with Hermes Desktop · How to install Hermes Agent