firehose> #llmops

Hermes Architecture EXPLAINED: Memory, Context & Gateways

TL;DR

A 40-minute whiteboard walkthrough (Hugging Face channel) of the full architecture of Hermes, a personal always-on agent in the OpenClaw family of "claws." The through-line: the agent core is a deliberately minimalist loop (user message → build context → LLM ↔︎ tools → response → memory update), and everything interesting lives in the systems wrapped around it — a context assembly made of a few markdown files (soul.md personality, user.md auto-learned user facts, memory.md arbitrary facts), Context Compression that summarizes message history past a configurable threshold (default 50% of the window, checked before each turn and on context-window errors, sized by a chars÷4 estimate before the first response and by provider usage fields after), an always-on Agent Gateway that multiplexes Telegram/Discord/email/SMS/WhatsApp into the agent and rebuilds context from scratch per inbound message (session identity = gateway name + platform session ID, history in SQLite, with a session manager that interrupts/steers/queues), a three-tier Layered Agent Memory (markdown always-in-context; SQLite full transcripts with a bare-text table for similarity search; optional external providers like mem0/SuperMemory/Honcho queried after the first response to anticipate follow-ups), and an Agent-Native Cron — the agent's own tick()-every-minute scheduler reading plain-JSON job definitions and delivering results to a designated "home" channel as a system action, not a tool call. The memory-update tail of every single turn is what the presenter credits for Hermes being an agent that "continuously learns the more you use it."

Concepts introduced

Held, not dropped — themes touched but not yet warranting a page (spin out on demand):

Key claims

Why this builds on the existing graph

Dominant stance builds_on, with a strong secondary corroborates:

Illustrated walkthrough

Keyed by t=MM:SS, each kept frame fused with the transcript segment it fell in. Visual coverage is ok (max blind gap ~32 s, 90% grid-floor), so the whiteboard state is well sampled throughout.


Linked from