DEV Community

Cover image for Running Hermes Agent on a Home Server: A Self-Hosted AI Stack in Production
Fachry Ikhsal
Fachry Ikhsal

Posted on

Running Hermes Agent on a Home Server: A Self-Hosted AI Stack in Production

Published on dev.to — May 29, 2026


Introduction

Last month, I turned my old gaming laptop into a 24/7 home server running Hermes Agent — an open-source AI agent framework by Nous Research. What started as an experiment has become the backbone of my daily workflow: writing blog posts, monitoring server health, summarizing meetings, tracking viral trends, and managing my entire digital life — all through Telegram topics.

This post covers my setup, the real-world use cases I've automated, and the cost optimization strategies that make it sustainable on modest hardware.


The Hardware

Component Detail
Machine ASUS TUF FX505GD
CPU Intel i5-8300H (4C/8T, 45W TDP)
RAM 16 GB
Storage 464 GB NVMe
OS Arch Linux + Hyprland
Uptime 24/7 operation

It's not a datacenter server — it's a 2018 gaming laptop with a cooling pad and dual fans. But for an AI agent that communicates via API calls, it's more than enough.

Additional services running alongside Hermes: n8n (automation), Syncthing (file sync), Postgres, Cloudflared tunnel, RustDesk (remote access), and a portfolio website stack.


Why Hermes Agent?

I evaluated several options before settling on Hermes:

  • Claude Code — Great, but Anthropic-locked.
  • Codex CLI — OpenAI-locked.
  • OpenClaw — Decent, but less flexible.
  • Hermes Agent — Provider-agnostic, open-source, extensible skills system.

What sealed the deal:

  1. Provider Agnostic — I can swap between OpenRouter, Anthropic, OpenAI, DeepSeek, or local models without changing anything else. Currently using OpenRouter with a custom "cheap combo" routing.
  2. Persistent Skills System — Hermes saves reusable procedures as "skills." When it solves a complex problem, it persists that knowledge. Over time, the agent gets better at my specific tasks.
  3. Multi-Platform Gateway — The same agent runs on Telegram, CLI, and I can plug into Discord, Slack, or email. I use Telegram primarily with topic-based threads.
  4. Cron Jobs — Built-in scheduler for recurring tasks. No external system needed.
  5. Memory — Cross-session persistent memory. It remembers my preferences, environment setup, and project context.

The 9 Use Cases (as Telegram Topics)

My Hermes Agent connects to a Telegram group called Oxy Command Center, where each topic thread represents a dedicated use case:

1. 📝 Content Pipeline

My most sophisticated workflow. A multi-stage blog factory:

  1. Orchestrator spawns subagents
  2. Research subagent performs bilingual web searches (English + Indonesian)
  3. Writer subagent produces markdown content
  4. Judge subagent fact-checks against live sources
  5. Publish to dev.to via API

The pipeline outputs structured JSON between stages (file-based exchange — avoids expensive context passing). Results get published to fachryikhsal.learnesia.co.id/blog which pulls from dev.to via ISR.

Tech: delegate_task subagents, web_search for bilingual research, dev.to API for publishing.

2. 🖥️ System Health Monitor

A cron job that runs every 30 minutes to check CPU temperature on my home server:

  • 🟢 <75°C — Normal
  • 🟡 75–85°C — Warning
  • 🔴 >85°C — Critical

Alerts come directly to the Telegram thread. Since this laptop runs 24/7 with limited thermal headroom (Intel H-series, Tjmax 100°C), knowing when to ramp up the cooling pad saves hardware.

3. 📰 AI News Briefing

A daily cron that scrapes AI news sources and delivers a formatted briefing to a dedicated Telegram thread. Covers model releases, research breakthroughs, and industry news — formatted for quick scanning.

4. 🤖 Google Meet Auto-Join

A Chromium CDP-based meeting assistant that:

  • Joins scheduled Google Meet calls automatically (non-headless, Wayland)
  • Enables captions
  • Records the session
  • Summarizes the meeting

Uses --ozone-platform=wayland for display, with persistent Chromium profile to avoid re-login.

5. 📓 Obsidian Journaling

Hermes writes learning journals directly into my Obsidian vault under Daily Index/YYYY/YYYY-MM/YYYY-MM-DD Title.md. After any complex session or research deep-dive, it logs key insights under ## Learning Journal. This has become my external brain — every useful finding is permanently stored in a searchable markdown vault.

6. ⚙️ DevOps & Server Admin

Troubleshooting system issues is one of Hermes's most practical roles. Past sessions include:

  • Fixing RustDesk Docker failures (running native binaries outside Docker)
  • Resolving iptables NAT issues that killed all containers
  • Port conflict resolution
  • Missing library fixes (libxdo.so.3)
  • Docker compose debugging

Hermes has root access via terminal and can diagnose + fix issues autonomously — I just review the output.

7. 🇮🇩 Wakanda Update — Indonesia Viral Topics

A dedicated research use case for staying on top of Indonesia's fast-moving digital landscape in real-time. Hermes scans TikTok trending topics, X/Twitter viral memes, and political discourse across Indonesian social media — then produces a structured, bilingual update covering both local sentiment and broader context. This keeps me informed on what's actually happening in Indonesia's digital culture and politics.

8. 🔍 SEO Analyzer

Hermes inspects websites — including my portfolio — for SEO optimization opportunities. Using web_extract and browser tools, it analyzes meta tags, Open Graph data, heading hierarchy, content quality, page structure, and performance indicators. The output is a structured report with actionable recommendations to improve search visibility and user experience — integrated with my content pipeline.

9. 📋 Daily Task Briefing

Every morning, a scheduled cron job activates Hermes to gather daily context from multiple sources:

  • Obsidian — Reads yesterday's journal and today's daily note for ongoing context
  • Google Calendar — Checks for scheduled events and meetings
  • Email — Scans inbox for important threads and action items
  • Produces a structured daily briefing with prioritized action items
  • Delivers the summary directly to the Telegram thread

This replaces the scramble of checking three different tools to figure out what's happening today.


Tokenomics: Keeping Costs Sane

Running an AI agent 24/7 costs tokens. Here's how I optimized:

Model Tiering — 9Router Combo

Instead of a single model, I use a 9Router combo — a local AI gateway running at http://127.0.0.1:20128 that aggregates models from multiple upstream providers and exposes them through a unified API.

Stage Model Provider
Orchestration 9router-cheap-flash-combo → deepseek-4-flash:free → MiniMax fallback codecrafters → sumopod / cl
Research 9router-cheap-flash-combo → deepseek-4-flash:free → MiniMax fallback codecrafters → sumopod / cl
Writing MiniMax-M2.7 (standard) sumopod
Background cron DeepSeek V4 Flash (free tier) codecrafters

The 9Router smart-combo starts with deepseek-4-flash:free as the primary model and falls back to MiniMax-M2.7-highspeed across multiple providers when the free tier is unavailable — ensuring reliability without sacrificing cost efficiency. I switched from kimi-k2.6 to this combo: a 3.3x cost reduction with no perceptible quality loss for my use cases.

The 9Router exposes dozens of models through a single endpoint — from free-tier DeepSeek and Gemini Flash to premium Claude Opus and GPT-5 — with transparent provider failover so my agent never sees API outages.

File-Based Data Exchange

Instead of passing large research results through agent context (expensive), each pipeline stage writes structured JSON to disk and the next stage reads it. This dramatically reduces token consumption per pipeline run.

Compressed Schemas

Using abbreviated field names in JSON schemas cut overhead from ~230 chars to ~64 chars per document.

Exact-Match Cron Prompts

Since cron jobs run identical prompts each time, prompt caching (both on the LLM provider side and Hermes's built-in compression) keeps recurring task costs near zero.

Conclusion

Hermes Agent turned a 7-year-old gaming laptop into a surprisingly capable AI-powered automation hub. The key takeaways:

  • You don't need expensive hardware — an old laptop running Linux is sufficient for most agent workloads
  • Model tiering makes 24/7 LLM usage affordable — not every task needs GPT-4 or Claude Opus
  • Skills make the agent better over time — the compounding effect of procedural memory is real
  • Telegram topics are an excellent UI for agent interaction — each use case gets its own thread, clean and organized

The code is open source: github.com/NousResearch/hermes-agent

If you're running your own homelab and thinking about adding an AI agent to the stack, just try it. Spin it up in an evening, connect it to one Telegram topic, and see where it takes you.


Built with Hermes Agent • Published via the Content Pipeline • fachryikhsal.learnesia.co.id

Top comments (0)