MeshWorld India Logo MeshWorld.
Hermes Agent Checklist Setup DevOps Production 6 min read

Hermes Agent Setup Checklists: Personal, Team & Production

Darsh Jariwala
By Darsh Jariwala
Hermes Agent Setup Checklists: Personal, Team & Production

Three checklists. One for personal setup, one for team deployment, one for production security. Print them, bookmark them, run through them.


Checklist 1: Personal Setup (15 Minutes)

Getting Hermes running on your own machine for the first time.

Prerequisites

  • [ ] Machine has 4GB+ RAM (8GB recommended)
  • [ ] 2GB+ free disk space
  • [ ] Running Linux, macOS, or WSL2
  • [ ] Terminal open and ready

Installation

  • [ ] Run install script: curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
  • [ ] Verify install: hermes --version returns a version number
  • [ ] If “command not found”: run source ~/.bashrc or restart terminal

Initial Setup

  • [ ] Run hermes setup and complete wizard
  • [ ] Choose LLM provider (Ollama for free local, or paste an API key)
  • [ ] If using Ollama: confirm ollama serve is running in another terminal
  • [ ] Run hermes status — all checks show ✓

First Test

  • [ ] Run hermes to enter interactive CLI
  • [ ] Ask it something: What is Hermes Agent?
  • [ ] Got a response? ✅ You’re done

Optional: Connect a Platform

  • [ ] Choose one: Discord, Slack, or Telegram
  • [ ] Get bot token (see Platform Guide)
  • [ ] Run hermes setup again, add platform
  • [ ] Send a message to the bot — it replies ✅
Stuck?

Run hermes status first. It tells you exactly what’s broken. Then check the Troubleshooting Guide.


Checklist 2: Team Deployment (1 Hour)

Setting up Hermes for a team of 2–50 people with Discord or Slack.

Infrastructure

  • [ ] Server/VPS provisioned (4+ vCPU, 16GB RAM recommended)
  • [ ] SSH access confirmed
  • [ ] Firewall rules set (only allow required ports)
  • [ ] Domain/IP decided for Hermes server

Installation on Server

  • [ ] Connect via SSH
  • [ ] Run Hermes install script
  • [ ] Verify: hermes --version
  • [ ] Run hermes setup wizard on server

LLM Backend

  • [ ] Decided: Ollama (free) or cloud API (paid)?
  • [ ] If Ollama: installed and ollama serve running
  • [ ] If Ollama: model downloaded (ollama pull mistral)
  • [ ] If cloud API: API key set in environment variable
  • [ ] Test LLM: hermes test-llm passes

Platform Setup

  • [ ] Chosen primary platform: Discord / Slack / Telegram
  • [ ] Bot created and token obtained
  • [ ] Token stored in .env file (not hardcoded in config)
  • [ ] File permissions set: chmod 600 ~/.hermes/.env
  • [ ] Bot connected: hermes setup → platform config
  • [ ] Bot visible in platform (Discord server / Slack workspace / Telegram)

Permissions

  • [ ] Discord: Bot has “Send Messages” + “Read Message History” in channels
  • [ ] Slack: Bot scopes set correctly in Slack App settings
  • [ ] Telegram: Bot started with /start command

Verification

  • [ ] hermes status — all ✓
  • [ ] Send test message to bot — it responds
  • [ ] Learning enabled: hermes config show | grep learn
  • [ ] Memory directory exists: ls ~/.hermes/memory/

Team Onboarding

  • [ ] Share bot invite link with team
  • [ ] Document which channels/servers Hermes monitors
  • [ ] Create brief “how to use Hermes” doc for team
  • [ ] Set expectations: it gets smarter over time, not immediately
Pro tip: Run as a service

Use systemd or screen to keep Hermes running after you disconnect:

bash
# Quick: run in background with screen
screen -S hermes
hermes
# Press Ctrl+A, D to detach

Checklist 3: Production Security (Before Go-Live)

Run through this before exposing Hermes to real users or sensitive data.

Secrets & Credentials

  • [ ] All tokens in environment variables (zero hardcoded in config files)
  • [ ] .env file has chmod 600 permissions
  • [ ] API keys not in version control (.gitignore includes .env)
  • [ ] Separate API keys for dev and production
  • [ ] Key rotation schedule documented (recommend: 90 days)

Network Security

  • [ ] Hermes server NOT directly exposed to public internet
  • [ ] Platform webhooks (Discord/Slack/Telegram) go through firewall only
  • [ ] SSH access via key pairs only (password auth disabled)
  • [ ] Unused ports closed on firewall
  • [ ] Internal-only access if possible (VPN or private network)

Data & Privacy

  • [ ] Home directory encrypted (BitLocker / FileVault / LUKS)
  • [ ] Hermes memory directory permissions: chmod 700 ~/.hermes
  • [ ] Understand what conversations Hermes logs
  • [ ] Data retention policy defined and documented
  • [ ] GDPR/privacy compliance reviewed (if applicable)

Platform Token Security

  • [ ] Discord bot permissions set to minimum (not “Administrator”)
  • [ ] Slack app scopes reviewed — remove anything not needed
  • [ ] Token invalidation process documented (what to do if leaked)
  • [ ] Monitoring in place for unexpected bot activity

Monitoring & Logging

  • [ ] Logs enabled: log_level: "info" in config
  • [ ] Log file writable and rotating: logrotate configured
  • [ ] Alerts set up for errors (email/Slack notification)
  • [ ] API usage monitoring in place (watch for unexpected spikes)

Incident Response

  • [ ] Know how to revoke/rotate all tokens (documented)
  • [ ] Know how to audit Hermes memory: ls ~/.hermes/skills/
  • [ ] Emergency stop process documented: pkill hermes
  • [ ] Team contact list for security incidents

Final Verification

  • [ ] Run hermes status — all green
  • [ ] Test all connected platforms respond correctly
  • [ ] Review ~/.hermes/skills/ — no unexpected skill files
  • [ ] Check logs are clean: tail -50 ~/.hermes/logs/hermes.log
Before opening to external users

Always complete the full security checklist. The biggest risks are leaked bot tokens and over-privileged bot permissions. Both are easy to prevent and painful to recover from.


Quick Diagnostic Commands

Paste these whenever something seems off:

bash
# Overall status
hermes status

# Check LLM connection
hermes test-llm

# View all platform connections
hermes config show

# Check memory size
du -sh ~/.hermes/memory/

# Last 50 log lines
tail -50 ~/.hermes/logs/hermes.log

# List all learned skills
ls ~/.hermes/skills/

# Follow logs in real-time
tail -f ~/.hermes/logs/hermes.log