Skip to content
Back to Signals & Systems
StudyingAgentic Engineering

Every Hermes Concept in Plain English — a Field Guide to the Agent Harness

it's the cleanest plain-English glossary of the exact architecture I'm building on — harness vs. model, `soul.md`/`agents.md`, context compaction, memory vs. skills, hooks, profiles, sub-agents. It maps almost 1:1 onto the Content Studio I just stood up (its own `AGENTS.md`, a Stop-hook quality gate, specialist "profiles," sub-agent fan-out). Good vocabulary check for the whole agentic-OS thesis.

Watch the original by Tom Crawshaw (The AI Architects) on YouTube

TL;DR

Hermes (the open-source agent from Nous Research) is a harness wrapped around a swappable model — and this video walks every concept a non-coder needs to actually use it. The mental model: the model is the engine, the harness is the rest of the car (tools, rules, sessions, memory). Because they're separate, you can route different tasks to different models (plan with a strong model, write with a cheaper one), and customize the wiring in ways closed tools like Codex/Claude Code won't let you. From there it builds up the stack: interfaces (terminal, desktop, Telegram, Discord, voice), context (soul.md = who the agent is, agents.md = rules for a folder, prompt = the request), context-window compaction (hand off around 40–60% full), the agent loop (pack context → model decides → run tools → repeat), tools/MCPs/plugins, memory vs. skills ("what to remember" vs. "how to do a job"), hooks (shell actions that auto-fire on events — the deterministic layer), profiles (whole specialist agent instances) vs. sub-agents (temporary parallel helpers), gateways, and security layers. One honest caveat the comments flagged: the "plug in your Anthropic subscription" bit doesn't hold post-2026 billing changes — that work meters.

Key takeaways

  • Harness vs. model is the foundational split. The model is the brain; the harness is tools + rules + sessions + memory. They're decoupled, so you swap models per task and edit the wiring — Hermes exposes what Codex/Claude Code keep proprietary.
  • Route models by job. Plan with a strong reasoner, draft with a cheaper/better-for-the-task model (he uses GPT-5.6 to plan, Kimi K3 to write), wired in agents.md.
  • Context is what turns a chatbot into an agent. soul.md = character/voice/decision-style; agents.md = rules for a workspace; a corrections.md captures recurring fixes. A "second brain" vector store beats a flat memory.md at scale.
  • Compact before the window fills. Past ~40–60% of the context window, recall degrades — write a handoff doc, start a fresh session, reload. (Hermes can auto-compact at a set limit.)
  • Memory vs. skills is the distinction to internalize. Memory answers "what should it remember"; a skill answers "how should it do this job." Neither retrains the model — both load into context on demand. /learn turns a chat you just did into a reusable skill.
  • Hooks are the underrated, deterministic layer. A hook is a shell action that fires automatically on an event (before a tool, after a job, on file write) and can block if rules fail — not a prompt injection. This is exactly the Stop-hook quality gate pattern.
  • Profiles ≠ sub-agents. A profile is a whole specialist Hermes instance (own soul/rules/memory/skills/models); a sub-agent is a temporary helper spun up for parallel work (read 10 posts, summarize each). Profiles separate roles; they are not a security boundary.
  • Security is layered. User auth → toolset (what it can request) → approvals + hooks → sandbox (what it can reach) → the action. Every layer says yes before anything touches your machine.

Harness vs. model — the model is the engine, the harness is the rest of the car

The Buzz — community reception

🗣️ The Buzz — what the audience actually said
32 comments · 855 likes · 38K views · paraphrased, ranked by likes
Prevailing sentiment: a small, warm beginner audience — overwhelmingly grateful ("beginner-friendly", "the potential is insane"). The sharpest signal is a factual billing correction: two viewers push back that you can't cleanly run an Anthropic subscription through Hermes (it meters as API tokens). A couple want fewer concept tours and more real-world use. Spam is ~0%.
🚩 1 like · @RomansKrjukovsCorrects the video: you can't really run an Anthropic subscription through Hermes — programmatic use is billed as API tokens, separate from the sub fee.
🚩 1 like · @rohitprabhu8307Same concern, as a question: "you're using the Anthropic subscription — is that even allowed now?"
🚩 2 likes · @mallen462Title jab: "claimed this isn't for normal people, then made a beginner's video."
👍 7 likes · @shelvialferez · top commentJust started using Hermes — "the potential is insane. Can't wait to fully automate my life."
👍 4 likes · @dost27"The profile system is exactly what I needed" — planning an agent that pulls from their own RAG research project.
👍 1 like · @xwitcheer"Superb video, very beginner-friendly."
👍 @FelipeHamachi"Hermes runs a WordPress site for me and it's fantastic."
👍 1 like · @KobimomoLong-time Hermes user — knew most of it already, but a nice consolidated overview.
🤔 @go0otPointed: "No one's showing actual good use of Hermes." Wants real workflows, not concept tours.
🤔 @samtxSkeptical: "You use this to get YouTube views? Any practical use?"
🤔 @mystic22222A real pain point: whether granting per-action or blanket permissions, the mistakes still pile up.
❓ 1 like · @ruffinruffin989Struggling to know when to use a hook — considering one that fires whenever a job succeeds.
❓ 1 like · @MarkGarrett-j6uHow do you auto-pull transcripts from Fathom / Zoom / Granola / Teams?
❓ 1 like · @lewis99170What did you use to make the Excalidraw illustrations?
🤖 low-signalA cluster of one-word praises ("NOICE", "Amazing Video", "Brillante") and a light jab — "isn't a spanner just a British wrench?" No crypto/link/giveaway spam detected.
🤖 Bot/spam estimate: ~0%. Method: heuristic scan of all 32 comments for promo/links, crypto/giveaway/"make-money" scams, emoji-only, generic-praise templates, and duplicate text — 0 clear bots; several low-effort one-liners but no spam signatures. Disclosed estimate, not certified detection.

The concepts, grouped

1) Harness vs. model (and routing)

The engine/car analogy does the heavy lifting: the model powers thinking; the harness (tools, rules, sessions, memory) makes it move. Because they're separate, Hermes lets you swap the model per task and edit the harness (delete unused tools, add rules/hooks) — flexibility closed harnesses don't give you. The practical win: plan with one model, execute with another, declared in agents.md.

2) Interfaces — many front doors, one agent

Terminal, desktop app (with live artifact preview + voice), Telegram, Discord (incl. voice channels), plus API/SDK. Same agent, different access points — pick by where you are (phone → Telegram; at the desk → terminal/desktop).

The interfaces — different front doors, one agent

3) Context — the thing that makes it an agent

Without context it's just a chatbot restarting every time. The layers: the prompt (this request), soul.md (character, voice, how direct, how it decides), agents.md (rules for a specific folder/workspace), plus optional context.md / voice.md / corrections.md (recurring fixes). Before thinking, the agent gathers all of these plus any files it judges relevant.

4) Context window + compaction

Different models = different window sizes (Claude ~1M; GPT-5.6 codex ~272K). It fills with tool calls, responses, and I/O. Past ~40–60% full, recall gets unreliable — so compact: summarize the session into notes and reload into a fresh window, or write a handoff doc yourself and continue clean.

5) The agent loop

Prompt → Hermes packs the context → model decides (tools? web? files? MCP?) → runs the actions → responds. For builds it splits into plan (research + questions) then build, where it can run an autonomous loop, checking its own work against the plan's goal until it's met.

The agent loop — pack context, decide, run tools, repeat

6) Tools, MCPs, plugins

A tool is an action outside the model (search, run a command, call a service). An MCP is like an API's endpoints exposed as a toolbox — one tool per endpoint (his newsletter pushes to Beehiiv via MCP, no copy-paste). A plugin bundles skills + MCP servers + hooks + slash commands for one-click install (e.g. a "superpowers" plugin with ~11 skills). Watch what auto-loads: unused tools silently eat context — audit and trim.

7) Memory vs. skills

This is the pair worth tattooing on the wall.

Memory vs. skills — "remember this" vs. "do it this way"

Memory = what to remember (preferences, decisions, facts). Skill = how to do a repeatable job (steps, rules, resources). Neither retrains the model; both load on demand. /learn promotes a chat into a skill, and Hermes will auto-create skills as you work (self-learning). At scale, a vectorized "second brain" replaces the flat memory file.

8) Hooks — the deterministic layer

A hook is a shell action that fires automatically on an event (before a tool, after a job, on new session, on file write). It checks rules and can block if they fail — it's code, not a prompt, so it's deterministic and costs no context. "When X happens, do Y" — without asking. (This is precisely the Stop-hook gate I built into Content Studio.)

9) Profiles vs. sub-agents

A profile is a full specialist Hermes instance — its own soul.md, agents.md, memory, skills, models, history (a "SEO writer" separate from an "ops" agent). A sub-agent is a temporary helper for parallel work (spin up 10 to read 10 posts). Profiles organize roles and plug into orchestration/kanban; they are not a security boundary on their own.

Sub-agents vs. kanban — parallel helpers vs. a board that keeps state

10) Gateways + where it runs + security

Gateways (Slack/Discord/Telegram) are the messaging front-ends, often via a VPS + Tailscale so it runs 24/7 with cron. Security is layered — user auth → toolset → approvals + hooks → sandbox → the action — every layer gating what reaches your machine.

The security layers — every layer says yes before anything runs

How this maps to what I'm building

This whole glossary is the blueprint under the Content Studio I just built:

flowchart LR
    A["soul.md / CLAUDE.md<br/>(who + house rules)"] --> S["Content Studio"]
    B["agents.md<br/>(self-updating playbook)"] --> S
    H["Stop-hook quality gate<br/>(deterministic block)"] --> S
    P["profiles = specialist skills<br/>(research / infographic / publish)"] --> S
    SUB["sub-agents<br/>(parallel research fan-out)"] --> S
    M["memory + trends-log<br/>(learns over time)"] --> S
    S --> OUT["shareworthy posts,<br/>gated + published"]

The one-to-one: soul.md→my CLAUDE.md, agents.md→my self-updating AGENTS.md, hooks→my validate_post.py Stop gate, profiles→my four skills, memory→trends-log.md. Seeing the vocabulary laid out confirms the architecture is sound.

The billing caveat (worth flagging)

The video shows plugging an Anthropic subscription into Hermes as a model provider — and two commenters correctly push back that, post-2026 billing changes, that programmatic use meters against API rates, not the flat sub. That's the exact trap from my multi-agent billing post: subscription vs. metered is about the auth path, not the plan. Use interactive sessions where possible.


Synthesis and the mapping diagram are mine; screenshots are the creator's Excalidraw diagrams (small picture-in-picture presenter left where it sits over the screen). Sponsor/hosting promo omitted.

Download the resume that fits the role.

Each version emphasizes different evidence: enterprise SEO, AEO/GEO, AI product systems, or organic growth.

Selections may be reviewed in aggregate to understand which paths are getting interest.