hermes atlas
apr·2026 153·repos hermes·v0.10.0 ★ star this repo

JackTheGit/hermes-autonomous-server

Run Hermes Agent autonomously on your Linux server using systemd and native cron scheduler. Production-ready, headless setup with Nous Portal integration.

★ 11 updated2026-03-01

This project provides a deployment framework for running Hermes Agent as a persistent, headless Linux service. It utilizes systemd to manage the Hermes Gateway, ensuring the agent remains active across reboots without requiring an open terminal session. The setup integrates with the Nous Portal for model access and leverages the native Hermes cron scheduler to automate recurring AI tasks. This approach offers a stable, self-hosted alternative to manual shell loops or third-party hosting for autonomous server operations.

  • Configures Hermes Gateway as a reboot-safe systemd service
  • Enables autonomous execution of recurring AI cron jobs
  • Supports headless operation on Ubuntu and Debian servers
full readme from github

🚀 Hermes Agent – Autonomous Linux Server Setup

A clean, reboot-safe, headless deployment guide for Hermes Agent.

Linux Systemd Headless Cron Nous Portal Required

Run Hermes Agent autonomously on your own dedicated Linux server using the native Hermes scheduler and systemd gateway service.

No shell loops.
No fragile TTY hacks.
No third-party hosting required.

Clean, production-ready architecture.


📌 Overview

This guide shows how to:

  • Install Hermes Agent
  • Authenticate with Nous Portal
  • Create recurring AI cron jobs
  • Run Hermes Gateway as a system service
  • Ensure full headless operation
  • Survive reboots automatically

Once configured, Hermes runs fully autonomous.


🧩 What This Is Not

  • Not an official Hermes project
  • Not affiliated with Nous Research
  • Not a hosted service

This is a deployment guide for running Hermes autonomously on your own infrastructure.


🔑 Requirements

You need an active Nous Portal subscription:

👉 https://portal.nousresearch.com/billing

Hermes uses Nous Portal for model access.

Without an active subscription or API credits:

  • Cron jobs will not execute
  • Gateway will run but no tasks will fire

💡 At the time of writing, the basic subscription may be activated using the promotional code HERMESAGENT (availability subject to change).
Check the billing page for current eligibility.


🖥 Supported Environment

  • Ubuntu / Debian (tested)
  • Dedicated server or VPS
  • systemd available
  • Non-root user recommended

📦 Installation

1️⃣ Create a Dedicated User

sudo adduser hermes
sudo usermod -aG sudo hermes
su - hermes

2️⃣ Install Hermes Agent

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash

Verify installation:

which hermes

Expected:

/home/hermes/.local/bin/hermes

3️⃣ Authenticate with Nous Portal

hermes login

Complete browser authentication.

Verify:

hermes status

You should see:

Nous Portal ✓ logged in

⏰ Create Autonomous Cron Job

Start Hermes:

hermes chat

Inside the interactive shell:

Create a cronjob that runs every 10 minutes.
The task should:
Write a short reflective paragraph about technology trends.
Limit response to 180 words.

Hermes will return a job ID.

Exit Hermes:

Ctrl + C

⚙ Enable Hermes Gateway (System-Level Service)

Some VPS environments do not support systemctl --user. Use a system-level service instead.

Create service file:

sudo nano /etc/systemd/system/hermes-gateway.service

Paste:

[Unit]
Description=Hermes Gateway Service
After=network.target

[Service]
User=hermes
WorkingDirectory=/home/hermes
ExecStart=/home/hermes/.local/bin/hermes gateway
Restart=always
RestartSec=10
Environment=PATH=/home/hermes/.local/bin:/usr/local/bin:/usr/bin:/bin

[Install]
WantedBy=multi-user.target

Enable and start:

sudo systemctl daemon-reload
sudo systemctl enable hermes-gateway
sudo systemctl start hermes-gateway

✅ Verify Everything

Check gateway:

sudo systemctl status hermes-gateway

Check scheduler:

hermes cron status

Expected:

✓ Gateway is running — cron jobs will fire automatically

🏗 Architecture

Systemd (system service)
        ↓
Hermes Gateway
        ↓
Hermes Cron Scheduler
        ↓
Claude Model (Nous Portal)
        ↓
Local Output Files

💰 Cost Considerations

Example configuration:

  • 10-minute interval
  • ~180-word responses

Estimated usage:

~4,320 runs/month Typically ~$8–12/month depending on model and output size.

To adjust frequency:

Update cronjob <job_id> to run every 15 minutes.

📊 Monitoring

Gateway logs:

journalctl -u hermes-gateway -f

Cron jobs:

hermes cron list

Gateway status:

hermes cron status

🔄 Reboot Safety

This setup:

  • Auto-starts on reboot
  • Does not require open SSH session
  • Runs fully headless
  • Automatically restarts if gateway crashes

🧼 Uninstall

sudo systemctl stop hermes-gateway
sudo systemctl disable hermes-gateway
hermes uninstall

🎯 Why This Approach?

✔ Uses native Hermes scheduler ✔ Avoids shell-based infinite loops ✔ Avoids TTY emulation hacks ✔ Clean systemd integration ✔ Minimal operational complexity ✔ Fully self-hosted


⚠ Important Notes


🔒 Security Considerations

  • Do not expose your server publicly without firewall rules.
  • Avoid running Hermes as root.
  • Monitor API usage regularly.
  • Keep your server updated.

This guide assumes a trusted VPS or dedicated environment.


Disclaimer

This repository is an independent deployment guide and is not affiliated with or endorsed by Nous Research.