Hermes Guide

Deploy NousResearch's Hermes agent on Maritime.

Recorded live on Maritime: deploy Hermes from a template, chat with it, and open its native dashboard, from the first click to the first reply.

Overview

Hermes is a self-improving Python agent from Nous Research with persistent memory and a multi-platform messaging gateway (email, Telegram, and more). You talk to it from the Maritime CLI or the dashboard Chat tab; inbound messages on connected channels pass through a pairing wall first.

Docker Image

Image: nousresearch/hermes-agent:latest

Gateway on port 8642, dashboard on port 9119, HOME at /opt/data.

How It Works

Hermes has no built-in openai provider. Direct OpenAI access goes through itsopenrouter provider, which is OpenAI-compatible and honorsOPENROUTER_BASE_URL. Maritime points that base URL at the LLM proxy so OpenAI-style env vars work transparently.

# The container runs with:
HERMES_HOME=/opt/data
HERMES_DASHBOARD=1
HERMES_DASHBOARD_HOST=0.0.0.0
HERMES_DASHBOARD_TUI=1
API_SERVER_ENABLED=true
API_SERVER_HOST=0.0.0.0
API_SERVER_KEY=<auto-generated>
GATEWAY_ALLOW_ALL_USERS=true
HERMES_INFERENCE_PROVIDER=openrouter
HERMES_TUI_PROVIDER=openrouter
HERMES_INFERENCE_MODEL=gpt-4o
OPENROUTER_BASE_URL=https://api.maritime.sh/api/llm/v1

Environment Variables

Set OPENAI_API_KEY if you want to bring your own; otherwise Maritime injects a per-agent proxy token. The agent reads the same env var because OpenRouter falls back to OPENAI_API_KEY when no OpenRouter key is set.

Sizing

Hermes loads memory + dashboard at boot; the platform sizes the agent for that automatically. Hand-tune a single agent with --ram if you need to.

Deploy

Select Template → Hermes Agent in the Create Agent modal, or:

maritime create -n my-agent -t hermes && maritime deploy my-agent

Talk to it

Hermes has no HTTP chat endpoint of its own, so Maritime invokes it locally (hermes chat -q). Ask a question from the terminal and the agent answers, running on a serverless Firecracker microVM:

Shows a Hermes agent active on a serverless Firecracker microVM, then asks it a question. The reply names Linux 4.14.174, the microVM guest kernel it runs on. Recorded against production.

Or open the agent in the dashboard and use the Chat tab. Same agent, same answer:

Opens a Hermes agent's Chat tab, sends a question, and the agent answers in the browser. Recorded against production.

The native Hermes dashboard

Hermes ships its own full dashboard (sessions, files, models, logs, cron, skills, plugins, MCP, channels) with the real hermes chat TUI embedded in the browser. Click Hermes Dashboard on the agent page and Maritime proxies it with auth handled for you (no login screen):

The native Hermes dashboard served through Maritime's UI proxy: opening the Chat view and typing a question straight into the live TUI. The agent answers with its toolbox. Recorded against production.

Upstream links & resources