p:: AI f:: Claude Code, OpenClaw

Self-hosted personal AI agent from Nous Research (MIT). One process gives you a terminal UI plus a messaging gateway (Telegram, Discord, Slack, WhatsApp, Signal, Email), and the agent keeps its own memory and skills across sessions. Model-agnostic: Nous Portal, OpenRouter, OpenAI, Anthropic or any OpenAI-compatible endpoint.

Install

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash   # Linux, macOS, WSL2
source ~/.zshrc
hermes

Installs under ~/.hermes.

Commands

CommandWhat it does
hermesInteractive TUI
hermes setupFull setup wizard (--portal = log in to Nous Portal for models + tool gateway)
hermes modelPick provider and model
hermes toolsEnable/disable toolsets
hermes config get / setRead or write single config values
hermes gateway setup / startConfigure and run the messaging gateway
hermes updateUpdate to latest
hermes doctorDiagnose problems

Slash commands

Same in the TUI and in chat apps.

CommandWhat it does
/new, /resetFresh conversation
/model [provider:model]Switch model mid-session
/retry, /undoRedo or drop the last turn
/compress, /usage, /insightsShrink context, check token use
/<skill-name>Run a skill directly
/stop (chat) / Ctrl+C (CLI)Interrupt; sending a new message also redirects
/sethome, /statusSet the chat’s home channel, gateway status

What sets it apart

  • Learning loop. It writes skills after hard tasks and patches them as it uses them. It also keeps a small curated memory and can search past sessions. Skills follow the agentskills.io format.
  • Cron. Scheduled jobs written in plain language that deliver to any connected platform.
  • Subagents. Spawns isolated child agents for parallel work. It can also run Python that calls tools over RPC, so a multi-step pipeline takes one turn.
  • Terminal backends. Local, Docker, SSH, Singularity, Modal, Daytona, Vercel Sandbox. Modal and Daytona hibernate when idle.
  • MCP. Connects to any MCP server.