A web UI for your terminal agent that refuses to need a build step
Hermes WebUI gives a browser and phone interface to the Hermes agent without frameworks, bundlers, or extra config.

What it does Hermes WebUI is a lightweight, dark-themed web interface for the Hermes Agent CLI. It runs as a single Python server with vanilla JavaScript—no React, no Vite, no npm install. You get a three-panel layout (sessions, chat, workspace file browser) with a composer footer that always shows model, profile, and workspace controls. Everything the CLI can do, this UI can do, including streaming responses, tool call cards, inline Mermaid diagrams, and a circular token-usage ring.
The interesting bit
The project treats “no build step” as a feature, not a compromise. It achieves full CLI parity—session management, voice input, subagent delegation, approval flows for dangerous commands—while staying deployable with a single shell script (./start.sh or ./ctl.sh start for daemon mode). The bootstrap even auto-detects and installs the underlying Hermes Agent if missing. For a project with 12K+ stars, the architecture is almost defiantly simple.
Key highlights
- Zero-dependency frontend: Prism.js for syntax highlighting, SSE for streaming, rAF-throttled rendering. No bundler.
- Session organization: pin/star, archive, projects with colors, #tags in titles, grouped by Today/Yesterday/Earlier.
- Security touches: password protection, SSH-tunnel-first access model, approval cards for shell commands (allow once/session/always/deny).
- Mobile support: designed for phone use, not just desktop.
- Optional advanced hooks: dynamic recall prefill from Joplin/Obsidian/Notion, or Gateway-backed chat routing for self-hosted deployments that already run the Hermes API server.
Caveats
- Native Windows is not supported by the official bootstrap; you need Linux, macOS, or WSL2. A community native Windows setup exists but with known limitations (POSIX file paths in workspace browser, bash-assuming tools may fail).
- Gateway-backed chat is explicitly opt-in and partially incomplete: attachments, cancellation, approvals, and clarify prompts “may not match every messaging surface until the runtime-adapter migration is complete.”
- The comparison table in the README notes the field is “actively shifting,” so competitive claims should be read with that caveat.
Verdict Self-hosters already running Hermes Agent who want a clean web or phone interface without maintaining a separate Node.js frontend. Skip it if you need native Windows ease-of-use or a standalone agent—this is strictly a UI layer, not a replacement for the CLI backend.