Hermes – Community Web UI with Agent
Hermes is an open-source, self-hosted AI agent featuring persistent memory across sessions, a cron scheduler for autonomous tasks, and a skills system that learns from experience. It supports multiple surfaces including terminal, browser, Telegram, Discord, and more, running continuously on your own hardware.
⚡ Open source · Self-hosted · MIT licensed
Hermes Agent
The self-improving AI agent that runs on your server. Layered memory that accumulates across sessions, a cron scheduler that fires while you're offline, and a skills system that saves reusable procedures automatically.
Get Started →
View on GitHub
126k+ GitHub stars Multi-surface access 47 built-in tools MIT licensed
Built by Nous Research
Community Web UI — not affiliated with or endorsed by Nous Research. Official site: hermes-agent.nousresearch.com
The core idea
Most tools are excellent in the moment and weak over time
Memory is no longer a differentiator on its own. ChatGPT, Claude, Cursor, and GitHub Copilot all have some form of memory now. With GPT-5.5 and Claude Mythos pushing the frontier in April 2026, Anthropic, OpenAI, and Microsoft are all shipping scheduling and agent features. The category boundaries that existed twelve months ago are blurring fast.
The distinction that matters is not "has memory" vs. "has no memory." It's whether context persists across sessions automatically, whether execution happens on hardware you control, whether you can reach the same agent identity from any device, and whether the system gets meaningfully better at your workflow over time without manual configuration.
Hermes answers yes to all four. It runs as a persistent process on your server. Memory is markdown files in ~/.hermes/. The same agent that answered your Telegram message at 9am is available in your terminal at 2pm, with full context.
Why synthesis matters: The market is converging. Chat assistants added scheduling. Editors shipped cloud agents. CLIs are getting skills. Any single feature is available somewhere else. The value is having all of them in one self-hosted system, running continuously, with a persistent identity that accumulates real knowledge of your stack over time.
Session-scoped tool
You → [Tool] → Answer → Done
(some tools carry memory, but execution is stateless)
Persistent agent
You ↔ [Hermes] ↔ (memory, skills,
schedule, tools,
surfaces)
Memory: ~/.hermes/ (markdown files, editable)
Skills: auto-written from experience
Schedule: cron, runs while you sleep
Surfaces: Telegram · Discord · Slack · browser
Model: your choice, swap anytime
Three pillars
What makes it different
🧠
Memory that compounds
Layered memory system: user profile, agent memory, skills, and session history. All stored locally as readable, editable markdown files at ~/.hermes/.
Survives every reboot and model swap
8 optional external memory providers
You never configure it manually
Portable, inspectable, deletable
Memory docs →
⏰
Autonomous scheduling
Built-in cron scheduler runs on your server with full access to your memory and skills, and delivers results wherever you want them.
Morning news briefings to Telegram
PR review automation
Test suite monitoring
Blog watchers and price alerts
Scheduling docs →
📡
Reach it from anywhere
Multi-surface access: same agent, same memory. Switch surfaces mid-conversation without losing context.
Telegram · Discord · Slack · WhatsApp
Signal · Matrix · Mattermost · Email · SMS
DingTalk · Feishu · WeCom · BlueBubbles
Home Assistant · browser
Messaging docs →
Full feature set
Everything in one system
🔧
47 built-in tools
Web search and extraction, browser automation, code execution, vision analysis, image generation, TTS, subagent delegation, and more.
Tools reference →
📚
Self-improving skills
The agent writes its own skills from experience. Compatible with agentskills.io open standard and shareable via Skills Hub.
Skills docs →
🔌
MCP integration
Connect to any MCP server. Hermes can also expose itself as an MCP server for Claude Code, Cursor, or Codex.
MCP docs →
🎤
Voice mode
Real-time voice in CLI (Ctrl+B to record), Telegram voice bubbles, Discord voice channels. Supports faster-whisper locally or Groq/OpenAI Whisper.
Voice docs →
🖥
6 terminal backends
Local, Docker, SSH, Daytona, Singularity, Modal. Run execution anywhere from a $5 VPS to serverless cloud, sandboxed as needed.
Backend docs →
🎭
Personality & SOUL.md
Define the agent's default voice with a global SOUL.md file. 14 built-in personas plus custom personalities via config.
Personality docs →
🤝
Agent orchestration
Spawn Claude Code or Codex as sub-agents for heavy coding tasks. Results fold back into Hermes memory. Hermes also runs as an MCP server for other tools.
Orchestration docs →
🔒
Security model
7-layer defense in depth: user allowlists, dangerous command approval, Docker isolation, MCP credential filtering, prompt injection scanning, cross-session isolation, input sanitization.
Security docs →
Hermes Web UI
A beautiful browser interface for Hermes
Full-featured, no build step, no framework. Three-panel Claude-style layout with sessions sidebar, chat, and workspace file browser. Everything you can do from a terminal, you can do from this UI. GitHub →
Three-panel layout — dark mode
Light mode with profile support
Settings & password protection
Workspace file browser
Sessions, projects & tags
What it includes
1:1 parity with Hermes CLI
Multi-profile support
Session history with projects and tags
Tool call cards with expand/collapse
Workspace file browser
Inline file preview (code, markdown, images)
Light + dark mode
Password protection
SSH tunnel ready
Docker image available
Voice input (Web Speech API)
Mobile responsive
Install Hermes Agent first
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash hermes model # configure your LLM provider
Clone and start the Web UI
git clone https://github.com/nesquena/hermes-webui.git hermes-webui cd hermes-webui ./start.sh
Docker option
docker pull ghcr.io/nesquena/hermes-webui:latest docker run -d \ -e WANTED_UID=$(id -u) -e WANTED_GID=$(id -g) \ -v ~/.hermes:/home/hermeswebui/.hermes \ -v ~/workspace:/workspace \ -p 8787:8787 ghcr.io/nesquena/hermes-webui:latest
SSH tunnel (for remote servers)
ssh -N -L 8787:127.0.0.1:8787 user@your-server
Then visit http://localhost:8787
Who it's for
Built for these workflows
Hermes earns its setup cost over time, not in the first session. These are the people and use cases where it shines.
💻
Solo developers
Don't want to re-explain your stack every session. Want an AI that actually knows your environment, your conventions, and what you fixed last week.
👥
Teams on a shared server
Multiple people sharing capable AI access without separate subscriptions. Each gets their own profile, memory, and history on the same instance.
⚡
Automation-heavy
Want an AI running scheduled tasks, delivering results to your phone, without babysitting it. Morning briefings, PR reviews, monitoring.
🔐
Privacy-conscious
Conversations, memory, and files stay on your hardware. No data leaving your server. Full control over what the agent can access.
🔄
Multi-model users
Switch between OpenAI, Anthropic, Google, DeepSeek, and others based on cost, capability, or rate limits without rebuilding your workflow.
Honest comparison
How Hermes compares
The agent landscape is converging fast. Chat assistants added scheduling and connectors. Editors shipped cloud agents and automations. CLIs are getting skills systems and multi-surface reach. The lines between "assistant," "editor," and "agent" are dissolving. This table reflects where things stand in mid-2026. Hermes wins through synthesis: all of these capabilities working together on hardware you own, with a model of your choice.
vs. the agent landscape
Tool Persistent memory Self-hosted scheduling Messaging / surfaces Self-hosted Open source Self-improving skills Always-on
Hermes ✓ ✓ self-hosted ✓ many platforms ✓ ✓ MIT ✓ automatic ✓
OpenClaw ✓ ✓ ✓ 24+ platforms ✓ ✓ MIT Partial ✓
Claude Code Partial† Cloud or desktop app Preview No No No No
Codex Partial Desktop app No ✓ (CLI) ✓ Apache 2.0 No No
OpenCode Partial No Community ✓ ✓ Community No
Cursor ✓ per-project Cloud VMs ✓ Slack/web/mobile No No No No
GitHub Copilot Repo-scoped‡ Via agent Via CLI No No No No
Claude.ai ✓ ✓ Cowork ✓ 50+ connectors No No No No
ChatGPT ✓ ✓ ✓ 50+ connectors No No No No
Perplexity Computer Partial Daily/weekly Slack + Teams No No No No
† Claude Code: CLAUDE.md / MEMORY.md plus auto-memory since v2.1.59+; no automatic cross-project accumulation
‡ Copilot Agentic Memory: public preview Jan 2026; repo-scoped, auto-expires after 28 days
Head-to-head
→
Hermes vs. OpenClaw
OpenClaw (MIT, 365k+ stars) is the closest comparison: open-source, self-hosted, always-on. OpenClaw has the widest messaging surface (24+ platforms including iMessage, LINE, WeChat, Teams) and native Chrome CDP browser control. Hermes wins on stability (OpenClaw's Telegram integration broke across multiple 2026 releases) and security — three separate 2026 audits found malicious skills in ClawHub (Koi Security linked 335 to "ClawHavoc," Bitdefender flagged ~900 packages, ~20% of the ecosystem). Hermes writes skills automatically from experience; OpenClaw centers on a human-curated marketplace. Hermes runs in Python/ML ecosystem; OpenClaw is Node.js.
→
Hermes vs. Claude Code
Claude Code is Anthropic's official agentic tool spanning terminal, IDE, desktop, and browser. It has a 26-event hooks system, a plugin/skills marketplace, CLAUDE.md/MEMORY.md project memory with auto-memory since v2.1.59+, and cloud-managed scheduling on Anthropic infrastructure. Messaging channels (Telegram/Discord/iMessage) remain a research preview; Slack has not shipped. Key differences: scheduling requires cloud or desktop app (not a headless server daemon), memory doesn't accumulate across projects, and it's locked to Claude models. Hermes can spawn Claude Code as a sub-agent for heavy implementation tasks.
→
Hermes vs. Cursor
Cursor has changed substantially. Memories (per-project) shipped June 2025. Automations launched March 2026 with time-based, event-based, and Slack triggers on cloud VMs. Cursor v3.0 (April 2026) is explicitly agent-first with a $29.3B valuation. Cursor excels at editor-native agents with strong IDE integration. Hermes is self-hosted and server-resident: the same persistent identity follows you across every surface without cloud intermediation, works with any model family, and for workflows requiring data sovereignty or deep Python/ML tooling on your own hardware, Cursor's cloud architecture is a fundamental mismatch.
→
Hermes vs. Claude.ai / ChatGPT
Both are no longer simple chat tools. Claude Cowork added scheduling (Feb 2026) and 50+ connectors. ChatGPT (now running GPT-5.5, released April 23 2026) has Agent Mode, Scheduled Tasks, and 50+ connectors. Both have improved memory. The fundamental difference isn't features — it's where execution lives. Neither is self-hosted. Neither is provider-agnostic. Memory, sessions, and agent execution run on their servers, not yours. For workflows requiring data sovereignty, persistent server-resident execution, or provider flexibility, that's a disqualifying constraint.
→
Hermes vs. Perplexity Computer
Perplexity Computer (February 2026) is a cloud agentic workflow engine that routes across 19+ frontier models, runs tasks in isolated sandboxes, and connects to 400+ services via prebuilt OAuth. Zero setup, broad coverage. Key difference from Hermes: cloud-only, no data sovereignty, opaque credit costs, and no persistent environment state between runs.
More comparisons
vs. OpenClaw vs. Claude Code vs. Codex CLI vs. OpenCode vs. Cursor vs. GitHub Copilot vs. Claude.ai vs. ChatGPT vs. Perplexity Computer
Quick start
Get started in 60 seconds
Works on Linux, macOS, WSL2, and Android (Termux). On Windows, use WSL2 first.
curl -fsSL https://raw.githubusercontent.co
[truncated for AI cost control]