Application — 24/7 substrate

Hermes Agent — the runtime that doesn't sleep.

The persistent-daemon agent runtime that pairs with Claude Code in the Articulate stack. WhatsApp bridge, self-learning skill loop, Curator-managed library, persistent memory per user. Replaces n8n in the MEP automation pair. BossCouple is pilot #1.


What it is

Hermes Agent is an open-source agent runtime from Nous Research — the same people behind the Hermes LLM family. MIT-licensed. Self-hostable. MCP-native — same connectors, same auth model as Claude Code. Model-agnostic via OpenRouter — Anthropic, OpenAI, Mistral, Llama, DeepSeek, Qwen, whatever the engagement calls for.

It runs as a persistent background process on a VPS. Cron ticks on the clock. WhatsApp / Telegram / Discord gateways for two-way async messaging. A self-learning skill loop that writes new skills from lived corrections, and a Curator that keeps the library coherent without human babysitting.

The pairing. Claude Code is the interactive build surface. Hermes is the 24/7 daemon. Same MCP plumbing underneath. Different jobs. Anthony writes Hermes skills in Claude Code, deploys them to the VPS, and the agent runs them on its own from then on.


Why it replaces n8n

From 20 May, the Marketing Engine Pilot automation substrate was Cloudflare Workers plus n8n as a visual-editor exception. After Seb's full review on 23 May and the BossCouple pilot brief, n8n is out. The reasoning:

So the pair is now Cloudflare Workers (HTTP-shaped) + Hermes (conversation- and daemon-shaped). n8n is retired. Anything previously routed at it goes to one or the other.


What's inside it — five load-bearing pieces

1. WhatsApp bridge (Baileys)

Emulates a WhatsApp Web session through Baileys, the open-source Node library. Dedicate a phone number to the bot, allowlist the users who can DM it, and everyone else gets silence — no pairing code, no auto-reply, no signal the number is alive. Voice notes auto-transcribed via ElevenLabs Scribe. TTS replies sent as MP3 attachments. Streaming responses — the bot edits its message as it generates.

Not the official WhatsApp Business API. No Meta developer account, no business verification, no per-message fees. Carries a small account-ban risk that's mitigated by using a dedicated number and never doing bulk outbound.

2. The skill system — same SKILL.md format as Anthropic / agentskills.io

Three ways skills come into existence: bundled (ship with Hermes), hub-installed (hermes skills install ... from agentskills.io / GitHub), and agent-created (the bot autonomously saves the working procedure to ~/.hermes/skills/ after solving a complex task or being corrected).

The third path is the unusual one. Most agent runtimes don't write their own skills. Hermes does — and because the format is the same as Anthropic's, anything Anthony writes in Cowork is portable to Hermes, and anything Hermes writes is portable back. The skill library compounds.

3. The Curator

Autonomous 7-day background pass that grades, consolidates, and archives agent-created skills using a cheap aux model. Never touches bundled or pinned skills. Always takes a snapshot before mutating — rollback is one command. Crucially does not auto-delete — worst case is move to .archive/.

This is the discipline that lets the skill library grow without becoming a graveyard of half-broken duplicates.

4. MEMORY.md + USER.md

2,200 chars of facts about the environment and conventions, plus 1,375 chars of profile, pinned into every session prompt. Plus FTS5 SQLite search across every past conversation. "What did Pavlos say about the JBR listing in March?" actually returns the answer — not a vibe, the message.

5. Model-agnostic via OpenRouter

One API key fans out to 100+ models — Anthropic, OpenAI, Mistral, Llama, DeepSeek, Qwen, Groq, Together, Fireworks. Per-call provider selection means Haiku for triage at one-thirtieth the cost of Sonnet, Opus for the hard reasoning, and a regional provider when a tenant needs data-residency without leaving the Anthropic-quality band.


Pilot #1 — BossCouple's private WhatsApp agent

The first live build. Paul Lunghis and Nyree Lunghis — Christie's Dubai agents operating jointly as BossCouple — DM a dedicated bot number. Their conversations stay private (separate sessions per WhatsApp chat ID). The bot's shared memory grows as it learns the family and the business.

The five-to-eight seed skills

Anthony writes these once. Pins them with hermes curator pin <name> so the Curator can never archive them:

The live training loop

Paul and Nyree use the bot. When it does something wrong, they correct it inline ("don't refer to Greece as a 'cheap' option — say 'accessible'"). The bot's skill_manage tool auto-fires on correction-shaped exchanges. New skills land in ~/.hermes/skills/bosscouple/. Anthony does a weekly read of the curator REPORT.md, pins the keepers, edits or deletes the noisy ones.

The bot gets sharper week by week. Anthony's role compresses from "every reply" to "weekly review."


What it costs — year one

ItemOne-timeRecurring
Hostinger KVM 2 (24 months upfront)$215.76
UAE prepaid SIM (per bot number)~$14 (AED 50)~$1.50/mo (AED 5)
OpenRouter credit (per deployment)$10–30 starter$5–20/mo (BossCouple-class volume)
Domain (optional, for dashboard)$10/yr$10/yr
All-in per Hermes deployment~$420 (AED ~1,545)

Less than 1% of a single BossCouple deal commission. Pricing is not the blocker. The work is the discipline — the seed skills, the pinning, the weekly Curator review. Skip that and the bot drifts into a slop generator. Hold the discipline and it gets sharper every week.


Install discipline — locked 23 May

  1. Host: Hostinger KVM 2 — $8.99/mo, 2 vCPU, 8 GB RAM. Not the Mac mini (8 GB ceiling already pressured). KVM 1 is too small once Baileys + Python + Whisper + an aux model run together.
  2. State source of truth: ~/ClaudeWork/ on Anthony's Mac stays canonical. Hermes reads via git mirror or rsync over Tailscale. Hermes never writes into ~/ClaudeWork/ directly. Same rule as Claude Code: agents read the vault, humans curate it.
  3. Skill library: seeded by Anthony in ~/.hermes/skills/<category>/, grown by the agent autonomously, gated by hermes curator pin <name> on the non-negotiables.
  4. Cron parity: any Hermes cron must not duplicate an existing Claude Code scheduled task. Either-or per workflow, never both. The split: interactive / Anthony-watching → Claude Code; operational / always-on → Hermes.
  5. Notification: WhatsApp itself for the user-facing replies, ntfy coworkmini-x7q9p3aw2t for one-way Anthony alerts, optional Telegram for two-way async.
  6. Pilot scope: one workflow at a time. BossCouple is pilot #1. Other workflows (daily brief, stakeholder chaser, villa pulse) come online one at a time after each proves out.

What Hermes does not replace


The data-sovereign angle

For UAE/KSA regulated buyers (finance, healthcare, family-business modernisation), Hermes on a Hostinger UAE-PoP VPS becomes the conversational anchor of the "data-sovereign marketing stack" bundle. Stack it with Cloudflare Workers at the edge, OpenRouter (or local Ollama on the same VPS) for inference, Listmonk for email, Plausible for analytics, and a Security Review as a pre-ship line item — and the pitch reads:

"Your AI, on your infrastructure, behind your privacy policy. We hand it over at week eight."

Standing on the shoulders of

The work that made this page possible. Both files live in the vault, both readable by every Articulate persona, both the substrate for any future Hermes deployment.

Page live · 24 May 2026
Next review · 24 June 2026 (re-score the BossCouple pilot)