Hermes Agent is an open-source, self-improving AI agent that runs persistently on a server, VPS, or local machine.
It learns from your conversations, creates reusable skills from completed tasks, maintains long-term memory across sessions, and operates through Telegram, Discord, Slack, WhatsApp, Signal, email, and CLI.
Hermes arrived after OpenClaw had already pushed personal AI agents into mainstream developer discussion. OpenClaw proved that an agent could live outside a browser tab, connect to personal channels, remember context, and act across local tools.
Hermes falls into the same category, with a stronger emphasis on self-improving skills, model choice, remote execution, and a built-in migration path for OpenClaw users.
The project’s GitHub growth gives Hermes more credibility than a normal new agent launch. Hermes crossed 140,000 stars in under three months and now sits at around 180,000 stars, placing it among the most popular open-source AI agent projects around the web.
Read More: Automate Anything: 10 Best & Open-source AI Agents
Most AI assistants still work like short-lived chat sessions. Hermes Agent solves a different problem: persistent AI work across projects, channels, models, and execution environments.
It can remember prior work, create reusable skills, schedule recurring tasks, run tools, delegate work to subagents, and keep running beyond a single laptop session.
Hermes Agent vs OpenClaw
Hermes is the stronger choice when the agent itself should improve over time and operate across servers, terminals, skills, and scheduled workflows. OpenClaw remains a great choice when the main goal is a chat-first personal assistant that connects to many messaging surfaces and device workflows.
| Hermes Agent | OpenClaw | |
|---|---|---|
| Primary focus | Self-improving personal agent with memory, skills, providers, and remote execution. | Personal assistant that runs on your devices and works through chat apps. |
| Best fit | Long-running workflows, skill growth, model switching, research, automation, and server-based use. | Messaging-first personal assistance, app-connected tasks, local assistant workflows, and companion app usage. |
| Setup style | Python-based CLI, TUI, desktop app, gateway, providers, and terminal backends. | Node-based CLI, onboarding flow, gateway daemon, chat channels, and companion apps. |
| Model approach | Broad provider support through hermes model, Nous Portal, OpenRouter, OAuth options, API keys, and custom endpoints. | Broad model support with OpenAI subscription OAuth and provider configuration. |
| Memory approach | Persistent memory, session search, skill creation, and skill refinement. | Persistent memory, persona onboarding, channel sessions, and skills. |
| Channel support | Telegram, Discord, Slack, WhatsApp, Signal, Email, CLI, and additional platforms. | WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Microsoft Teams, Matrix, WeChat, QQ, and many more. |
| Execution model | Local, Docker, SSH, Singularity, Modal, and Daytona terminal backends. | Host execution for main sessions, sandbox options for non-main sessions, and Docker as a common sandbox backend. |
| Desktop experience | Native Hermes Desktop for macOS, Windows, and Linux. | Companion app support and live Canvas features. |
| Migration path | Imports OpenClaw data through hermes claw migrate. | Native OpenClaw setup through openclaw onboard. |
| Practical decision | Choose Hermes when learning loops, cross-session skills, provider control, and remote execution matter most. | Choose OpenClaw when chat-app coverage, local personal assistant workflows, and app-like companion features matter most. |
OpenClaw users do not need to rebuild everything from scratch before trying Hermes. The migration command can import persona files, memory entries, user-created skills, approval patterns, messaging settings, API keys, TTS assets, and workspace instructions when the source setup uses supported paths and formats.
Features
- Runs as a terminal agent, TUI app, desktop app, server agent, or messaging gateway.
- Supports Telegram, Discord, Slack, WhatsApp, Signal, Email, CLI, and other connected surfaces.
- Keeps persistent memory across sessions through local Hermes configuration and memory files.
- Creates and improves skills after complex tasks.
- Searches previous sessions through full-text search and LLM summarization.
- Switches models through
hermes model. - Works with Nous Portal, OpenRouter, OpenAI, Anthropic, Hugging Face, Google Gemini, Kimi, MiniMax, xAI, and custom endpoints.
- Runs scheduled automations through natural-language cron workflows.
- Spawns isolated subagents for parallel workstreams.
- Runs terminal work through local, Docker, SSH, Singularity, Modal, and Daytona backends.
- Supports web search, browser automation, vision, image generation, text-to-speech, terminal tools, and file operations.
- Provides a desktop app for macOS, Windows, and Linux.
- Imports OpenClaw settings, memories, skills, messaging settings, and selected API keys through
hermes claw migrate.

Use Cases
- Run a personal AI assistant from Telegram while the agent works on a cloud VM.
- Build daily reports, weekly audits, backups, and recurring briefings through scheduled automations.
- Maintain project memory across long development, research, content, or operations workflows.
- Delegate larger tasks into parallel subagent workstreams.
- Connect one assistant to multiple model providers and switch models per task.
- Use Docker or SSH backends when local host access creates security concerns.
- Migrate an existing OpenClaw setup into a Hermes workflow.
HOW TO USE IT
Table Of Contents
- 1. Choose the right installation path
- 2. Reload your shell after installation
- 3. Run the setup wizard
- 4. Pick a model provider
- 5. Start with a basic chat
- 6. Confirm session continuity
- 7. Configure tools before adding channels
- 8. Add the messaging gateway
- 9. Add skills only after the core workflow works
- 10. Migrate from OpenClaw only after reviewing the plan
- Installation Commands
- Core CLI Commands
- Configuration Examples
- Slash Commands
- OpenClaw Migration Commands and Flags
- Provider and Environment Options Mentioned
1. Choose the right installation path
Linux, macOS, WSL2, and Termux users can install Hermes through the shell installer.
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bashNative Windows users can install Hermes from PowerShell.
iex (irm https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.ps1)Python users can install the tagged package through pip.
pip install hermes-agent
hermes postinstallDesktop users can install the native app from Hermes Desktop or add desktop support through the CLI installer.
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash -s -- --include-desktopExisting Hermes users can launch the desktop app through the installed CLI.
hermes desktop2. Reload your shell after installation
The installer adds Hermes to your shell profile. Reload the profile before starting the agent.
source ~/.bashrcZsh users can reload the Zsh profile.
source ~/.zshrc3. Run the setup wizard
The setup wizard configures the base agent, providers, tools, and local settings.
hermes setupNous Portal gives the shortest setup path when you want models and tool gateway access under one login.
hermes setup --portalCheck the Portal wiring after setup.
hermes portal status4. Pick a model provider
Hermes uses hermes model as the provider and model selection flow.
hermes modelOpenRouter works well when model variety matters. Local endpoints make more sense when privacy and cost control matter. Nous Portal suits readers who want fewer separate API keys for model access, web search, image generation, text-to-speech, and cloud browser tools.
5. Start with a basic chat
Start the classic CLI.
hermesStart the newer TUI.
hermes --tuiUse a concrete first prompt that proves file and terminal access work.
Check my current directory and tell me what looks like the main project file.6. Confirm session continuity
Hermes becomes more useful when sessions resume correctly.
hermes --continueThe short version works too.
hermes -c7. Configure tools before adding channels
Tool permissions matter more once Hermes starts receiving messages from chat apps.
hermes toolsDocker isolation is a safer default for terminal work that should not touch the host directly.
hermes config set terminal.backend dockerSSH works when the agent should operate on a remote machine.
hermes config set terminal.backend ssh8. Add the messaging gateway
Configure the gateway after CLI chat works.
hermes gateway setupStart the gateway after platform setup.
hermes gateway startUse the gateway for Telegram, Discord, Slack, WhatsApp, Signal, Email, and other supported channels. Keep public or group channels more restricted than your private terminal session.
9. Add skills only after the core workflow works
Skills are reusable instruction files. They help Hermes repeat multi-step workflows such as deployment, PR review, repo analysis, reporting, and automation.
hermes skillsSkill overload can make the agent harder to audit. Add skills for repeated workflows first, then expand after the agent proves stable.
10. Migrate from OpenClaw only after reviewing the plan
Hermes can import OpenClaw data through a dedicated migration command.
hermes claw migratePreview the migration before writing files.
hermes claw migrate --dry-runRun a user-data migration when you want memories and skills but not secrets.
hermes claw migrate --preset user-dataUse overwrite only when you accept conflict replacement.
hermes claw migrate --overwriteCheck the migrated setup through a new session, then verify provider keys.
hermes statusHermes Agent Cheatsheet & Quick Reference
Installation Commands
| Command | Purpose |
|---|---|
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash | Install on Linux, macOS, WSL2, or Termux. |
iex (irm https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.ps1) | Install natively on Windows through PowerShell. |
pip install hermes-agent | Install the tagged Python package. |
hermes postinstall | Install optional dependencies and run setup after pip install. |
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash -s -- --skip-browser | Install while skipping browser automation setup. |
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash -s -- --include-desktop | Install Hermes with desktop app support. |
hermes desktop | Launch the desktop app from an existing Hermes installation. |
Core CLI Commands
| Command | Purpose |
|---|---|
hermes | Start the classic interactive CLI. |
hermes --tui | Start the modern terminal UI. |
hermes model | Choose or change the model provider. |
hermes tools | Configure enabled tools. |
hermes config set | Set an individual configuration value. |
hermes gateway | Start or manage the messaging gateway. |
hermes gateway setup | Configure messaging platforms. |
hermes gateway start | Start the configured gateway. |
hermes setup | Run the full setup wizard. |
hermes setup --portal | Configure Hermes through Nous Portal OAuth. |
hermes portal status | Check Portal and Tool Gateway status. |
hermes claw migrate | Import OpenClaw data into Hermes. |
hermes update | Update Hermes. |
hermes doctor | Diagnose setup problems. |
hermes --continue | Resume the most recent session. |
hermes -c | Resume the most recent session with the short flag. |
hermes skills | Browse and install reusable skills. |
hermes status | Check provider authentication and status. |
Configuration Examples
| Command | Purpose |
|---|---|
hermes config set model anthropic/claude-opus-4.6 | Set a specific model. |
hermes config set terminal.backend docker | Use Docker isolation for terminal execution. |
hermes config set terminal.backend ssh | Use an SSH backend for remote execution. |
hermes config set OPENROUTER_API_KEY sk-or-... | Save an OpenRouter API key. |
Slash Commands
| Command | Purpose |
|---|---|
/new | Start a new conversation. |
/reset | Reset the current conversation. |
/model [provider:model] | Change the active model from chat. |
/personality [name] | Set a personality. |
/retry | Retry the last turn. |
/undo | Undo the last turn. |
/compress | Compress context. |
/usage | Check usage. |
/insights [--days N] | View usage or activity insights for a date range. |
/skills | Browse available skills. |
/<skill-name> | Invoke a skill. |
/stop | Stop current work from a messaging platform. |
/platforms | View platform status from the CLI. |
/status | View status from messaging platforms. |
/sethome | Set the home context from messaging platforms. |
/voice on | Enable voice mode after voice dependencies are installed. |
OpenClaw Migration Commands and Flags
| Command or Flag | Purpose |
|---|---|
hermes claw migrate | Run interactive migration with preview and confirmation. |
hermes claw migrate --dry-run | Preview migration changes only. |
hermes claw migrate --preset full --migrate-secrets --yes | Run full migration with secrets and skip confirmation. |
hermes claw migrate --preset user-data | Migrate user data while excluding infrastructure config. |
--dry-run | Stop after showing the migration plan. |
--preset <name> | Use full or user-data. |
--overwrite | Replace existing Hermes files on conflicts. |
--migrate-secrets | Include supported API keys. |
--no-backup | Skip the pre-migration backup archive. |
--source <path> | Set a custom OpenClaw source directory. |
--workspace-target <path> | Set the destination for AGENTS.md. |
--skill-conflict <mode> | Use skip, overwrite, or rename for skill conflicts. |
--yes | Skip confirmation after preview. |
Provider and Environment Options Mentioned
| Provider or Key | Setup Note |
|---|---|
| Nous Portal | OAuth login through hermes model or hermes setup --portal. |
| OpenAI Codex | Device code auth through hermes model. |
| Anthropic | OAuth for supported subscription paths or API key setup. |
| OpenRouter | API key setup. |
| Z.AI GLM | GLM_API_KEY, ZAI_API_KEY, or Z_AI_API_KEY. |
| Kimi / Moonshot | KIMI_API_KEY or KIMI_CODING_API_KEY. |
| Kimi China | KIMI_CN_API_KEY. |
| Arcee AI | ARCEEAI_API_KEY. |
| GMI Cloud | GMI_API_KEY. |
| MiniMax International | MINIMAX_API_KEY. |
| MiniMax China | MINIMAX_CN_API_KEY. |
| Alibaba Cloud Qwen | DASHSCOPE_API_KEY or ALIBABA_CODING_PLAN_API_KEY. |
| Hugging Face | HF_TOKEN. |
| Azure Foundry | AZURE_FOUNDRY_API_KEY and AZURE_FOUNDRY_BASE_URL. |
| Google AI Studio | GOOGLE_API_KEY or GEMINI_API_KEY. |
| xAI Grok | XAI_API_KEY. |
| NovitaAI | NOVITA_API_KEY. |
| StepFun | STEPFUN_API_KEY. |
| Xiaomi MiMo | XIAOMI_API_KEY. |
| Tencent TokenHub | TOKENHUB_API_KEY. |
Alternatives and Related Tools
- 7 Best OpenClaw Alternatives for Safe & Local AI Agents: Compare safer and local alternatives for OpenClaw-like personal AI agents.
- 10 Best Agent Skills for Claude Code & AI Workflows: Compare skill-based workflows for coding agents and AI assistants.
- Hermes Agent GitHub Repository: Review the source code, release history, license, and installation files.
- Hermes Agent Documentation: Read setup, CLI, gateway, memory, skills, MCP, cron, and migration guides.
- Hermes Desktop: Download the native desktop app for supported systems.
- Migrate from OpenClaw: Review the migration workflow before importing OpenClaw data.
Pros
- Free and open-source.
- MIT license.
- Strong memory system.
- Skill creation loop.
- Multi-provider support.
- Messaging app access.
- Desktop app available.
Cons
- Setup takes planning.
- Tool permissions need care.
- Local access can create risk.
- Advanced workflows need configuration.
- More complex than chatbots.
FAQs
Q: Is Hermes Agent free?
A: Hermes Agent is free and open-source under the MIT license. Model usage, hosted providers, cloud machines, and paid gateway services may still cost money.
Q: Does Hermes Agent run on Windows?
A: Hermes Agent supports native Windows through a PowerShell installer. WSL2 also works with the Linux installer, and the desktop app supports Windows 10 and Windows 11.
Q: Can Hermes Agent replace OpenClaw?
A: Hermes Agent can replace OpenClaw for many long-running personal agent workflows, especially when memory, skills, model control, and server execution matter.
Q: Can Hermes Agent import OpenClaw data?
A: Hermes Agent can import supported OpenClaw data through hermes claw migrate. The migration can cover persona files, memory, user profiles, skills, approval patterns, messaging settings, selected API keys, TTS assets, and workspace instructions.
Q: Is Hermes Agent private?
A: Hermes can keep memory, configuration, and local workflows on your own machine or server. Prompts, code, files, and task data may leave your environment when you use external model providers, cloud browsers, web tools, or hosted services.
Q: Is Hermes Agent good for non-developers?
A: Hermes Desktop makes the tool more approachable, but the best results still come from users who understand model providers, permissions, automation, and basic setup concepts. A simple hosted chatbot suits casual use better.
Q: What is the biggest limitation of Hermes Agent?
A: Hermes Agent needs careful setup before serious use. Model choice, gateway access, tool permissions, sandboxing, memory behavior, and scheduled automations all affect reliability and safety.










