
Deploy Hermes Agent
Nous Research’s self-improving AI agent that learns across sessions.
hermes-agent-railway-template
Just deployed
/data/hermes
Deploy and Host Hermes Agent on Railway
Hermes Agent is an open-source AI agent from Nous Research. It runs a messaging gateway (Telegram, Discord, Slack) and an OpenAI-compatible HTTP API (/v1/chat/completions, models, health). This template packages Hermes in Docker with a web setup page at /setup so you configure LLM keys and bots without shell access—ideal for always-on hosting on Railway.
About Hosting Hermes Agent
Hosting Hermes here means Railway builds a Dockerfile that clones Hermes at a pinned release (HERMES_REF), installs Python and Node dependencies, and runs a small wrapper (node /wrapper/src/server.js) that starts hermes gateway run, serves /setup, and proxies public HTTP to Hermes’s internal API. You add a volume mounted at /data/hermes for persistent config and state, set variables (or use /setup) for your LLM provider and optional messaging tokens, and get a single public URL. Health checks use GET /setup/healthz per railway.toml. Users chat via Telegram (typical), other platforms, or the HTTP API—not the interactive local TUI.
Common Use Cases
- Team assistant on Telegram — allowlisted users message a bot; configure LLM +
TELEGRAM_BOT_TOKENand related fields from/setup. - Programmatic access — call the OpenAI-compatible API on your Railway URL with
Authorization: Bearerwhen that key is set. - Multi-platform messaging — same gateway can use Discord or Slack alongside or instead of Telegram, with optional gateway allowlists.
Dependencies for Hermes Agent Hosting
- Railway — service using the Dockerfile builder; persistent volume at
/data/hermes(matchesHERMES_HOME). - LLM provider credentials — e.g. OpenRouter (
OPENROUTER_API_KEY) and optionalLLM_MODEL; required for the agent to run meaningfully. - Node.js (in image) for the wrapper; Python 3 and Hermes’s install (in image) for the gateway runtime.
- Optional messaging tokens — Telegram, Discord, and/or Slack, depending on how you want users to talk to the agent.
Deployment Dependencies
- Railway: Railway, Deploy this template
- Hermes Agent upstream: NousResearch/hermes-agent, Hermes documentation
- Telegram: Hermes Telegram guide
Implementation Details
railway.toml sets Docker build, startCommand = "node /wrapper/src/server.js", healthcheckPath = "/setup/healthz", and restart policy. The image pins Hermes with ARG HERMES_REF=v2026.3.28 in the Dockerfile; bump the tag and redeploy to upgrade. Environment variables are documented in .env.example; values saved from /setup land in ${HERMES_HOME}/.env.
Why Deploy Hermes Agent on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying Hermes Agent on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.
Template Content
hermes-agent-railway-template
Lukem121/hermes-agent-railway-template