Back openDesk Edu for a sovereign, open-source education β every vote counts.
Vote nowWhen OpenClaw hit nine CVEs in four days last spring, including a CVSS 9.9 vulnerability, developers started looking for alternatives. Cisco called personal AI agents like OpenClaw "a security nightmare." Meanwhile, a competitor had quietly grown to 110,000 GitHub stars in just ten weeks: Hermes Agent by Nous Research.
Hermes isn't just another OpenClaw clone. It adds something OpenClaw lacks: a closed learning loop that enables the agent to self-improve over time without fine-tuning. Every task it completes gets distilled into persistent memory; next time it encounters a similar request, it responds with accumulated experience.
Hermes includes a built-in migration path via hermes claw migrate. The command auto-detects ~/.openclaw and imports:
SOUL.md β ~/.hermes/SOUL.md (direct copy)MEMORY.md, USER.md, HEARTBEAT.md β ~/.hermes/memories/ (parsed into entries, merged with existing)workspace/skills/ β ~/.hermes/skills/openclaw-imports/config.yaml~/.hermes/.env~/.hermes/.env~/.hermes/tts/AGENTS.md (copy to workspace with --workspace-target)Model configuration maps as follows:
| OpenClaw | Hermes |
|---|---|
agents.defaults.model | config.yaml β model |
models.providers.* | config.yaml β custom_providers |
channels.telegram | config.yaml β platforms.telegram |
agents.defaults.compaction | config.yaml β compression |
First-time setup: The hermes setup wizard automatically detects ~/.openclaw and offers migration before configuration begins.
Anytime after install:
hermes claw migrate
# Preview only, no changes
hermes claw migrate --dry-run
# Full migration including API keys, skip confirmation
hermes claw migrate --preset full --migrate-secrets --yes
# Migrate without secrets
hermes claw migrate --preset user-data
All options:
| Flag | Description |
|---|---|
--dry-run | Preview only β no files modified |
--preset {user-data,full} | Migration preset (default: full). user-data excludes secrets |
--overwrite | Overwrite existing files (default: skip conflicts) |
--migrate-secrets | Include allowlisted secrets |
--source PATH | Custom OpenClaw directory |
--workspace-target PATH | Copy AGENTS.md to this path |
--skill-conflict {skip,overwrite,rename} | Handle skill conflicts (default: skip) |
--yes, -y | Skip confirmation prompts |
Option A: Official bash installer (recommended)
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
source ~/.bashrc
hermes --version
The installer handles Python 3.11, Node.js v22, uv, ripgrep, and ffmpeg automatically. Requires Git as the only prerequisite.
Option B: Docker
docker run -d \
--name hermes \
--restart unless-stopped \
-v ~/.hermes:/opt/data \
-p 8642:8642 \
nousresearch/hermes-agent gateway run
Place your .env file in ~/.hermes/ with ANTHROPIC_API_KEY or OPENAI_API_KEY, plus platform tokens like TELEGRAM_BOT_TOKEN.
Option C: From source
git clone https://github.com/NousResearch/hermes-agent.git
cd hermes-agent
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[all]"
hermes --version
The [all] extra installs every platform connector and memory backend. For minimal install, use pip install -e .
hermes setup # Run wizard if not done during install
hermes status # Check agent, auth, and platform status
hermes doctor # Diagnose any config or dependency issues
hermes memory reindex
hermes skills list
hermes model # Interactive model selector
Recommended models: Qwen 3.5 (free on OpenRouter) for routine automation; Claude Opus 4.6 or GPT 5.4 (thinking mode medium+) for complex reasoning tasks.
| Aspect | OpenClaw | Hermes |
|---|---|---|
| Strength | Breadth: 20+ channels, 13,000+ ClawHub skills | Depth: Long-term memory, self-learning loop |
| Setup | More complex, Node.js-based | Easier setup, better default memory |
| Channels | 24 messaging platforms | 7 platforms |
| Community | ClawHub marketplace | Smaller but growing |
| Self-improvement | Requires manual skill creation | Automatic via GEPA reflection loop |
| Runtime | Node.js | Python 3.11 |
| Security | CVEs spring 2026 | MIT license, local-only data storage, clean codebase |
Hermes and OpenClaw naturally complement each other. Dual-stack deployment is often better than outright migration:
Both can run side-by-side, exchanging tasks and results via HTTP or message queues. This is particularly useful for teams needing both broad channel coverage and long-term learning capability.
The hermes claw migrate tool has tracked several schema drift issues:
| Issue | Impact | Status |
|---|---|---|
workspace/ β workspace-main/ path change | Memories not migrating | Fixed in v0.3.0+ |
Channel tokens β accounts.default.* paths | Wrong auth token location | Fixed in v0.3.0+ |
TTS edge β microsoft rename | TTS provider detection fails | Fixed in v0.3.0+ |
| Provider API types now hyphenated | Wrong apiType for providers | Fixed in v0.3.0+ |
thinkingDefault enum expanded | Invalid enum values | Fixed in v0.3.0+ |
If you're on a Hermes version pre-v0.3.0, use the migration script from the official docs or the community openclaw-to-hermes tool as a reference.
The timing isn't coincidental. OpenClaw's security crisis created a gap. But Hermes offers more than just safety β it offers a fundamentally different approach to AI agents: one that learns from experience rather than requiring manual skill creation.
If you have a long-running project and you've been using Claude Code or Cursor in the default configuration, the practical experiment is: install Hermes Agent on a $5 VPS, point it at one repo, give it a Telegram channel, and let it accumulate skills for a month. The skills it writes are the test β if they're useful after a month, the loop works for your workflow.
Migration takes under 10 minutes with hermes claw migrate. Your agent picks up right where it left off β SOUL.md, MEMORY.md, skills, and channels all transfer seamlessly. Keep OpenClaw installed for a week after migration in case you want to reference old configs before decommissioning.
cp -r ~/.openclaw ~/.openclaw.backup
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
source ~/.bashrc
hermes setup # Auto-detects OpenClaw and offers migration
hermes gateway
Send a test message to your Telegram/Discord bot to confirm everything's functioning. Your agent now has OpenClaw's breadth plus the ability to learn from every interaction.