Hermes Agent: A Self-Improving Multichannel Agent for 300+ Models
A multichannel AI agent for developers that supports 300+ models and accumulates memories, skills, and user profiles.
GitHub NousResearch/hermes-agent Updated 2026-09-04 Branch main Stars 241.5K Forks 49.6K
Python TypeScript AI agent Nous Portal Telegram Docker SSH

🧭 Decision Guide

Try it if you

  • You need to operate an agent on a cloud VM through Telegram, Discord, or Slack
    The README sections “Lives where you do” and “Messaging Gateway” list Telegram, Discord, Slack, and cloud-VM operation
  • You need to switch among 300+ models without changing code or locking into one provider
    The README section “Use any model you want” lists Nous Portal, OpenRouter, OpenAI, and custom endpoints, with `hermes model` for switching
  • You are migrating from OpenClaw and want to retain SOUL.md, MEMORY.md, and API keys
    The README section “Migrating from OpenClaw” lists `hermes claw migrate` and imports for personas, memories, skills, and API keys

Skip it if you

  • Your team requires an already large contributor community, while project metadata lists only 10 contributors
    Development metadata lists 10 contributors, 5 releases, and 10 recent commits
  • You cannot accept relying on a Nous Portal subscription to unify models and tools such as Firecrawl
    The README section “Skip the API-key collection — Nous Portal” says one subscription covers 300+ models and the Tool Gateway

Requirements

  • The runtime environment must be Linux, macOS, WSL2, or Termux; the README does not specify OS versions.
  • Using Nous Portal requires a Portal subscription; OpenRouter, OpenAI, or a custom endpoint can also be used.
  • Messaging integrations require configuration for platforms such as Telegram, Discord, Slack, WhatsApp, or Signal.
  • For OpenClaw migration, the setup wizard detects `~/.openclaw` and offers migration.

First step (verbatim from README)

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash

Watch out

  • Portal covers only enabled backends; the README explicitly says the gateway is per-backend, not all-or-nothing
    The README section “Nous Portal” states that “the gateway is per-backend, not all-or-nothing”
  • `hermes claw migrate --preset user-data` excludes secrets, while `--overwrite` overwrites conflicts
    The README section “Migrating from OpenClaw” lists the behaviors of `--preset user-data` and `--overwrite`
  • Details for native Windows installation and Windows Defender flagging uv.exe are omitted from the supplied material
    The README lists Windows sections, but the supplied material states those sections were omitted

Not stated in the README

  • The README does not specify required Python, Node.js, or uv versions.
  • The README does not provide the full list of 300+ models, per-model costs, or context limits.
  • The README does not describe resource requirements or permission boundaries for Docker, SSH, Modal, and Vercel Sandbox backends.
  • The README links to the Security section, but the supplied material lacks implementation details for command approval, DM pairing, and container isolation.
  • The README does not explain how the 10 contributors are distributed across the 5 releases.

💡 Deep Analysis

6
Yes I develop on WSL2 and switch between OpenRouter, OpenAI, and a private endpoint. I do not want to modify agent code for every switch. Is Hermes Agent a good fit?
For: A model engineer using Linux, macOS, WSL2, or Termux with OpenRouter, OpenAI, or a private model endpoint who needs frequent provider switching

Yes, because the README explicitly separates provider configuration from agent logic and supports installation on WSL2.

  • The README lists Nous Portal, OpenRouter, OpenAI, private endpoints, and many others, stating that users can switch with hermes model with “no code changes, no lock-in.”
  • Quick Install explicitly supports Linux, macOS, WSL2, and Termux, so WSL2 is a documented environment.
  • Getting Started provides hermes model for choosing an LLM provider and model, along with hermes config set for individual settings.
  • Hermes Agent is not itself a model, however; planning, context recovery, and factual accuracy depend on the selected model and external services, and the README provides no provider capability or compatibility matrix.
  • README quote: “Use any model you want — Nous Portal, OpenRouter, OpenAI, your own endpoint, and many others.”
  • README quote: “Switch with `hermes model` — no code changes, no lock-in.”
  • README section: Quick Install; “Linux, macOS, WSL2, Termux”
  • README section: Getting Started; `hermes model` and `hermes config set`
hermes model
Not stated in the README:The README does not specify the API schema, authentication method, or streaming requirements for private endpoints.;It provides no comparative data for tool calling, context length, or cost across OpenRouter, OpenAI, and private endpoints.
Yes I want to run an agent on a $5 VPS, access it through Telegram, and automatically deliver daily reports, nightly backups, and weekly audits. Is Hermes Agent suitable?
For: An individual automation user who wants to access a cloud agent through Telegram, run it on a $5 VPS, and execute scheduled tasks

Yes, because the README explicitly covers cloud execution, Telegram access, and unattended scheduling.

  • The project can run on “a $5 VPS” and is not tied to the user’s laptop; Telegram can reach the cloud agent through the unified gateway.
  • It includes a cron scheduler for natural-language daily reports, backups, and audits, with delivery to messaging platforms.
  • It supports Telegram, Discord, Slack, WhatsApp, Signal, and CLI, with cross-platform conversation continuity.
  • However, the README does not fully specify VPS file persistence, long-running task survival, network failure handling, or Telegram delivery retries.
  • README quote: “Run it on a $5 VPS, a GPU cluster, or serverless infrastructure”
  • README quote: “It's not tied to your laptop — talk to it from Telegram while it works on a cloud VM.”
  • README section: Scheduled automations; “Built-in cron scheduler with delivery to any platform.”
  • README section: Messaging Gateway; supports Telegram, Discord, Slack, WhatsApp, Signal, and CLI
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
Not stated in the README:The README does not specify the minimum CPU, memory, disk, or bandwidth required for a $5 VPS.;It does not specify retry and alert behavior when cron jobs, the VPS process, or the messaging platform fails.
It depends I already have user profiles, memories, skills, command permissions, messaging configuration, and workspace instructions in OpenClaw. Can I migrate to Hermes Agent without exposing or overwriting API keys first?
For: A developer with existing OpenClaw profiles, memories, skills, and command permissions who wants to migrate to Hermes Agent

It depends, because Hermes Agent provides an OpenClaw migration command and dry-run support, but the README does not promise complete or risk-free secret migration.

  • Getting Started lists hermes claw migrate; the project insights say it can import profiles, memories, skills, command permissions, messaging configuration, some API keys, and workspace instructions.
  • The project insights specifically recommend using a dry-run and migrating user data before secrets, showing that key handling requires additional review.
  • After migration, API keys, command permissions, and messaging allowlists still need to be checked because they control tool and message access.
  • The README does not document migration schema versions, conflict resolution, exactly which keys are imported, or full feature parity with OpenClaw.
  • README section: Getting Started; `hermes claw migrate # Migrate from OpenClaw (if coming from OpenClaw)`
  • Project insights: Migration capability; imports “profiles, memories, skills, command permissions, messaging configuration, some API keys, and workspace instructions”
  • Project insights: common_pitfalls; “use dry-run and verify imported content before automatic migration”
  • Project insights: best_practices; “migrate user data rather than secrets first”
hermes claw migrate --dry-run
Not stated in the README:The README does not say whether `--dry-run` covers every configuration, memory, skill, and secret field.;It does not provide a version compatibility matrix or rollback procedure for failed migrations.
Yes I am researching tool-calling models and need to batch-generate and compress trajectories for training data. Is Hermes Agent more suitable than a tool that only provides an interactive CLI?
For: An agent researcher who needs to generate and compress tool-call trajectories for training tool-calling models

Yes, because the README explicitly lists batch trajectory generation and trajectory compression as research capabilities rather than offering only interactive chat.

  • The Research-ready section states: “Batch trajectory generation, trajectory compression for training the next generation of tool-calling models.”
  • The project also provides 40+ tools, a toolset system, MCP integration, and multiple terminal backends for constructing tool-calling agent data.
  • Subagents and Python RPC tool scripts can move multi-step work outside the main conversation context, supporting structured or parallel experiments.
  • However, the README does not specify trajectory formats, compression algorithms, batch throughput, reproducibility interfaces, or data-redaction mechanisms, so direct integration with an existing training pipeline remains uncertain.
  • README section: Research-ready; “Batch trajectory generation, trajectory compression for training the next generation of tool-calling models.”
  • README section: Tools & Toolsets; “40+ tools, toolset system, terminal backends”
  • README section: MCP Integration; “Connect any MCP server for extended capabilities”
  • README section: Delegates and parallelizes; “Spawn isolated subagents” and Python RPC scripts
hermes setup
Not stated in the README:The README does not define exported trajectory fields, storage formats, compression strategies, or integrations with common training frameworks.;It does not specify concurrency limits, failure retries, cost controls, or sensitive-data filtering for batch generation.
Yes I need the agent to operate on code and files, but execution must use Docker, SSH, or Singularity, with command approval and container isolation. Does Hermes Agent fit this boundary?
For: A software developer who needs code execution through Docker, SSH, or Singularity and wants command approval and isolation to constrain agent permissions

Yes, because the project offers multiple terminal backends together with documented security controls, separating the interaction layer from execution environments.

  • The README’s Tools & Toolsets documentation lists 40+ tools, a toolset system, and terminal backends; the project insights identify Docker, SSH, Singularity, local, Modal, Daytona, and Vercel Sandbox.
  • The Security documentation explicitly covers command approval, DM pairing, and container isolation, which supports approval and isolation boundaries for privileged operations.
  • MCP and toolsets extend the agent, but they also expand data access and permissions; the container type alone is not a complete security policy.
  • The README does not specify default privileges, network policies, credential forwarding, or filesystem isolation strength for each backend.
  • README section: Tools & Toolsets; “40+ tools, toolset system, terminal backends”
  • README quote: “Seven terminal backends — local, Docker, SSH, Singularity, Modal, Daytona, and Vercel Sandbox.”
  • README section: Security; “Command approval, DM pairing, container isolation”
  • README section: MCP Integration; “Connect any MCP server for extended capabilities”
hermes setup
Not stated in the README:The README does not specify the default Linux user, container capabilities, mounted directories, or outbound network restrictions for each backend.;It does not say whether command approval is enforced consistently for SSH and subagent execution paths.
It depends Our team uses Telegram, Discord, Slack, WhatsApp, and Signal, and we want members to continue the same agent conversation from different platforms. Is Hermes Agent suitable as the messaging gateway?
For: A small-team maintainer who wants the same agent context across Telegram, Discord, Slack, WhatsApp, and Signal

It depends, because Hermes Agent explicitly supports these platforms and cross-platform continuity, but team identity, authorization, and session-merging rules require further verification.

  • The README’s Messaging Gateway section lists Telegram, Discord, Slack, WhatsApp, Signal, Home Assistant, and CLI; the homepage says these channels use a single gateway process.
  • It explicitly advertises “cross-platform conversation continuity,” matching the goal of continuing access to one agent across platforms.
  • The Security documentation covers DM pairing, while the project insights mention allowlists, identity, and message-delivery configuration, all important for a shared team gateway.
  • The README does not explain how platform accounts map to user models, how multi-user sessions are isolated, how group messages are authorized, or the maturity and limitations of each integration.
  • README section: Messaging Gateway; “Telegram, Discord, Slack, WhatsApp, Signal, Home Assistant”
  • README quote: “all from a single gateway process”
  • README quote: “Voice memo transcription, cross-platform conversation continuity.”
  • README section: Security; “Command approval, DM pairing, container isolation”
hermes gateway
Not stated in the README:The README does not describe the exact mapping between multi-platform accounts and Honcho user models.;It does not define authorization boundaries or audit-log formats for groups, DM pairing, and cross-platform context sharing.;It does not specify rate limits, attachment limits, or delivery-failure behavior for each platform.

✨ Highlights

  • Supports 300+ models and provider switching with `/model`
  • Tool Gateway integrates Firecrawl, FAL, and Browser Use
  • FTS5 searches sessions while Honcho builds user models
  • Supports seven terminal backends plus Telegram, Discord, and more

🔧 Engineering

  • `hermes gateway` connects Telegram, Discord, Slack, and other platforms
  • SOUL.md, MEMORY.md, and USER.md preserve persona and cross-session memory
  • Built-in cron runs reports, backups, and audits from natural-language schedules
  • Runs with Docker, SSH, Singularity, or Vercel Sandbox backends

⚠️ Risks

  • Project metadata lists only 10 contributors and 10 recent commits, indicating a small maintenance base
  • Nous Portal covers 300+ models and tools but introduces reliance on one subscription entry point
  • `hermes claw migrate --overwrite` overwrites existing configuration conflicts

👥 For who?

  • Developers who need to run an agent on a $5 VPS, GPU cluster, or cloud VM
  • Teams using Telegram, Discord, and Slack at the same time
  • Users migrating existing OpenClaw personas, memories, and API keys