LabNotes
⬡ Agent

Hermes vs OpenClaw (Agent)

Machine-readable comparison. Agent parseable. Human optional.

───────────────────────────────────────────────────────── id: hermes-vs-openclaw version: 2026-03-14 type: platform-comparison format: agent-readable-spec ───────────────────────────────────────────────────────── name: Hermes Agent org: Nous Research repo: github.com/NousResearch/hermes-agent stars: ~6,800 license: MIT language: Python 3.x tagline: "The agent that grows with you" name: OpenClaw org: openclaw (community) repo: github.com/openclaw/openclaw stars: active-dev license: MIT language: Node.js ≥22 tagline: "Your own personal AI assistant. The lobster way."

Architecture Spec

hermes: pattern: agent-centric-loop core_loop: receive → select_tools → execute → evaluate → store_learnings runtime: python interface: tui (terminal UI, multiline, streaming) memory_model: procedural-skills + user-model + session-search (FTS5) learning: autonomous_skills: true self_improvement: true nudged_persistence: true evolutionary_opt: true # DSPy + GEPA, ~$2-10/run backends: [local, docker, ssh, daytona, singularity, modal] serverless_idle: true # via daytona/modal research: atropos_rl: true batch_trajectories: true trajectory_compression: true openclaw: pattern: gateway-router core_flow: channel_in → gateway_route → agent_session → tool_exec → response runtime: node.js (pi-mono derived agent) interface: web-control-ui + cli + companion-apps memory_model: file-based (SOUL.md, AGENTS.md, MEMORY.md, daily-logs) learning: autonomous_skills: false self_improvement: false nudged_persistence: false evolutionary_opt: false backends: [local] # sandbox modes available serverless_idle: false # gateway runs continuously hardware: macos_app: true ios_android_nodes: true voice_wake: true talk_mode: true canvas_a2ui: true

Capability Matrix

dimension │ hermes │ openclaw │ winner ───────────────────────────┼─────────────────────┼────────────────────┼──────── messaging_channels │ 640+openclaw execution_backends │ 61hermes self_improving_skills │ truefalsehermes evolutionary_optimization │ truefalsehermes serverless_idle_cost │ ~$0/moalways-onhermes mobile_companion │ falsetrueopenclaw voice_interaction │ transcription onlywake + talkopenclaw visual_workspace │ falsetrue (canvas+a2ui) │ openclaw research_tooling │ atropos + RLnonehermes gateway_api │ cli + rpcwebsocket + hooksopenclaw migration_path │ built-in importern/aneutral runtime │ pythonnode.jspreference license │ MITMITtie

Use Case Matrix

scenario │ pick │ rationale ────────────────────────────────────────┼─────────────┼────────────────────────────── learn_workflow_over_time │ hermes │ self-improving skill loop multi_platform_messaging │ openclaw │ 40+ channel integrations budget_deployment_5_vps │ hermes │ serverless idle via daytona voice_camera_visual_output │ openclaw │ mobile nodes + canvas training_data_generation │ hermes │ atropos RL + batch trajectories automation_workflow_integration │ openclaw │ gateway API + webhooks agent_self_evolution │ hermes │ DSPy + GEPA evolutionary search always_on_with_voice_wake │ openclaw │ voice wake on macos/ios research_experimentation │ hermes │ trajectory compression + RL envs broad_messaging_without_devops │ openclaw │ managed daemon, control UI

Decision Function

if primary_need == "agent_intelligence_growth": select: hermes if primary_need == "broad_channel_reach": select: openclaw if primary_need == "low_cost_always_on": select: hermes # serverless idle is unique if primary_need == "hardware_voice_visual": select: openclaw # mobile nodes are unique if primary_need == "research_training_data": select: hermes # only option with RL integration # Both are MIT-licensed. Switching cost is low via hermes claw migrate.

Migration Spec

hermes.claw_migrate: source: openclaw (~/.openclaw) target: hermes (~/.hermes) mode: interactive (dry-run available) presets: [full, user-data, secrets-only] transfers: SOUL.mdpersona file MEMORY.mdpersistent memory USER.mduser profile user skills~/.hermes/skills/openclaw-imports/ command allowlistapproval patterns messaging configsplatform settings API keysallowlisted secrets TTS assetsworkspace audio # implication: hermes targets openclaw's user base as primary acquisition

References

hermes_agent: https://github.com/NousResearch/hermes-agent https://hermes-agent.nousresearch.com/docs/ hermes_self_evolution: https://github.com/NousResearch/hermes-agent-self-evolution openclaw: https://github.com/openclaw/openclaw https://docs.openclaw.ai date: 2026-03-14 spec_version: 1.0