hermes-agent

hermes-agent

Repo: NousResearch/hermes-agent Category: Personal Assistants

hermes-agent is NousResearch’s open-source personal agent framework. Its core premise: agents should improve automatically the more you use them. After completing complex tasks, hermes writes and stores procedural skills, then refines them on subsequent runs. Cross-session memory uses FTS5 full-text search with LLM summarization so the agent can recall context from weeks past without manual bookmarks.

It runs anywhere — local CLI, Docker, SSH into a VPS, or serverless via Daytona or Modal — hibernating when idle and waking on demand. It supports multi-platform messaging via a gateway process that connects Telegram, WhatsApp, and Signal. It explicitly targets OpenClaw users with a hermes claw migrate command.

Where Ravi Fits

hermes-agent has a sophisticated execution layer but no identity infrastructure. The gaps map directly to what Ravi provides:

Phone numbers for the messaging gateway. The hermes gateway process requires phone numbers to register on Telegram, WhatsApp, and Signal. An agent running on a VPS has no phone. Ravi provisions a real phone number tied to your agent identity — wire it to the gateway config and your hermes instance can run on any cloud without a physical device.

Autonomous signups during task execution. When hermes runs a cron job or subagent workstream that hits a “create an account” step, it needs an email and phone for verification. Ravi identity provides both: a provisioned email address, a phone number, an OTP inbox, and credential storage for what gets created.

Email delivery for scheduled automation. hermes delivers cron results to “any platform.” For email notifications, it needs an SMTP sender identity. Ravi’s provisioned email gives hermes a professional, consistent sender address rather than a throwaway account.

Credential vault for skills. The skills system stores procedural knowledge, but skills that call external APIs need secrets. Ravi’s encrypted vault is the right backing store — especially if skills are published to agentskills.io and need portable credential references that travel with the skill.

Setup Guide

1. Provision a Ravi identity

ravi identity create --name "hermes"

This gives your hermes agent a dedicated email address and phone number.

2. Configure the messaging gateway

Export your Ravi phone number and set it in hermes gateway config:

ravi identity info  # note the phone number
hermes gateway config --phone <ravi-phone>

3. Use Ravi email for notifications

In hermes.config.toml, set the notification sender:

[notifications]
smtp_from = "<ravi-provisioned-email>"

4. Store API credentials in the Ravi vault

When a hermes skill creates an account or acquires credentials:

ravi secrets set SERVICE_API_KEY "..."

Reference the key in your skill definition so it stays encrypted at rest.

5. Build a hermes Ravi skill (optional)

The most powerful integration is a publishable hermes skill that wraps Ravi’s full identity flow. When hermes needs to register for a new service, the skill:

  1. Calls the Ravi API to provision a fresh email and phone
  2. Completes the signup flow autonomously
  3. Retrieves the verification OTP from the Ravi SMS inbox
  4. Stores the resulting credentials back in the Ravi vault

This turns a multi-step manual flow into a single tool call. The skill is publishable to agentskills.io and works for any hermes instance with Ravi configured.

Why This Matters

hermes-agent is built for researchers and power users who want genuine agent autonomy — tasks that run for hours, spawn subagents, and interact with external services without human supervision. That autonomy only works if the agent has a stable, accountable identity it can use to authenticate across services. Ravi is that identity layer: phone numbers, email addresses, OTP retrieval, and secret storage in one place, designed for exactly this kind of autonomous operation.