Skip to content

Instantly share code, notes, and snippets.

@AWolf81
Last active April 16, 2026 20:49
Show Gist options
  • Select an option

  • Save AWolf81/391d389514ac2d72378f43b22ccb45e2 to your computer and use it in GitHub Desktop.

Select an option

Save AWolf81/391d389514ac2d72378f43b22ccb45e2 to your computer and use it in GitHub Desktop.
Setup guide for https://github.com/AWolf81/hermes-runpod to use the Hermes Gateway at Runpod

Hermes RunPod — Setup Guide

Run Hermes Gateway as a persistent remote agent on RunPod.

Prerequisites

You'll need two secrets before deploying. Generate and store them in a password manager before proceeding.

1. Hermes API Key — protects your pod endpoint from unauthorized access:

openssl rand -hex 32

2. OpenRouter API Key — get one at openrouter.ai/workspaces/default/keys

Store both keys in a password manager (1Password, Bitwarden, etc.) — you'll need them every time you deploy a pod.


Quick Start

  1. Go to RunPod CPU deploy
  2. Select 2 vCPUs as a starting point
  3. Name your pod or keep the generated name
  4. Click Change Template and select hermes_runpod_base
  5. Click Edit Template and set the following env vars at minimum:
    • HERMES_API_KEY — a secret key to protect your endpoint (generate one with openssl rand -hex 32) — click Select Secret to use a stored secret
    • MODEL_PROVIDER — e.g. openrouter
    • OPENROUTER_API_KEY — your OpenRouter API key — click Select Secret to use a stored secret
    • OPENROUTER_MODEL — e.g. anthropic/claude-sonnet-4.6 (see options below)
    • GIT_REPO_URL — your repo URL so the agent clones it on startup (optional)
  6. Click Deploy On-Demand

Once the pod is running, your endpoint is:

https://<pod-id>-8642.proxy.runpod.net

RunPod Template

Image: ghcr.io/awolf81/hermes-runpod:base Port: 8642 Disk: 10 GB minimum


Option 1 — OpenRouter

Connects Hermes to any model via OpenRouter.

ENABLE_VLLM=0
MODEL_PROVIDER=openrouter
OPENROUTER_API_KEY=sk-or-...
OPENROUTER_MODEL=anthropic/claude-sonnet-4.6
HERMES_API_KEY=your-secret-key

Example models:

  • anthropic/claude-sonnet-4.6
  • openai/gpt-5.3-codex
  • google/gemini-3.1-pro-preview
  • qwen/qwen3.6-plus
  • nvidia/nemotron-3-super-120b-a12b
  • xiaomi/mimo-v2-pro

Option 2 — OpenCode Zen

Connects Hermes to models via OpenCode Zen.

ENABLE_VLLM=0
MODEL_PROVIDER=opencode
OPENCODE_API_KEY=...
OPENCODE_MODEL=claude-sonnet-4
HERMES_API_KEY=your-secret-key

Option 3 — RunPod Model Endpoint

Use a dedicated RunPod serverless model endpoint (e.g. runpod-flash-nemotron).

ENABLE_VLLM=0
MODEL_BASE_URL=https://<endpoint-id>.api.runpod.ai/v1
HERMES_API_KEY=your-secret-key

Example models deployable as RunPod serverless endpoints:

  • nvidia/nemotron-3-super-120b-a12b (used in runpod-flash-nemotron)
  • qwen/qwen3.6-plus
  • xiaomi/mimo-v2-pro

Optional — Git Repo on Startup

Clone a repo into the workspace when the pod starts:

GIT_REPO_URL=https://github.com/you/your-repo
GIT_REPO_REF=main
GIT_TOKEN=ghp_...    # only for private repos

Connecting via OpenCode

Add the following provider to ~/.config/opencode/opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "hermes-runpod": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Hermes on RunPod",
      "options": {
        "baseURL": "https://<pod-id>-8642.proxy.runpod.net/v1",
        "apiKey": "{env:HERMES_API_KEY}"
      },
      "models": {
        "hermes-agent": {
          "id": "hermes-agent",
          "name": "Hermes Agent (RunPod)",
          "limit": {
            "context": 32768,
            "output": 4096
          }
        }
      }
    }
  },
  "model": "hermes-agent"
}

Set HERMES_API_KEY in your shell and launch OpenCode:

export HERMES_API_KEY=your-secret-key
opencode

Health Check

curl https://<pod-id>-8642.proxy.runpod.net/v1/models \
  -H 'Authorization: Bearer your-secret-key'
@AWolf81
Copy link
Copy Markdown
Author

AWolf81 commented Apr 16, 2026

Just in case the template sharing on Runpod is not working - I'm not sure if it is working. Here is the manual setup for the template:
image
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment