Hermes Agent 0.20 herald: conversational voice, A2A, webhooks, and citations β€” the release that turns it into a platform

Hermes Agent 0.20 herald: conversational voice, A2A, webhooks, and citations β€” the release that turns it into a platform

August 13, 20269 minHermes Agent, Nous Research, AI, Agents, Release, A2A, Voice, Webhooks

Short answer (60 seconds): Hermes Agent v0.20.0 "herald" shipped on August 3, 2026 with 3,650 commits, 1,400 PRs, and 1,200 closed issues (release notes on GitHub). The release is organized around four capabilities that define the agent's role: (1) it speaks β€” conversational voice with streaming TTS clause-by-clause, barge-in, and on-device wake words; (2) it carries word to other agents β€” A2A v1.0 with bundled plugin; (3) it announces events to your systems β€” outbound webhooks signed with HMAC; (4) it cites its sources β€” grounded citations with fact-checking. Plus: the desktop became a platform (artifacts with live preview + plugin SDK + global-hotkey quick-entry window), a wave of CLI power-user commands (!, /init, /diff, /context, /focus, import-agent), tools that self-recover, and cold start from 14s β†’ 1.8s. To update: hermes update and then hermes doctor. The rest of this post is the curated walkthrough of what changes for your workflow.

On August 3, Nous Research published Hermes Agent v0.20.0 under the codename herald. The title comes from mythology: Hermes is the herald of the gods, and this release makes him one in earnest β€” he speaks, carries messages to other agents, announces events, and cites his sources. It's the biggest release in the repo: 3,650 commits, 1,400 merged PRs, 5,200 files changed, 559K insertions, 405K deletions, 1,200 issues closed, 650+ contributors. This guide is the curated version, not the full changelog: the pieces that change how you use Hermes today, with the commands that matter for your workflow.

1. It speaks β€” conversational voice with streaming TTS and barge-in

Voice mode used to mean: you speak, you wait for the entire reply to generate, you listen to a long audio file. Now it speaks clause by clause, you can interrupt it mid-sentence just by talking (the model is told you cut in), and silence detection is busy-aware β€” it doesn't talk over you. It works in CLI voice mode, Hermes Desktop, and the voice gateways (WhatsApp, Feishu, DingTalk, LINE, QQ, Photon, Weixin).

On-device wake words: detection runs on your machine, no audio leaves while it waits. Open vocabulary β€” "hey Hermes" or whatever you pick. Multi-profile voice routing lets different wake phrases reach different profiles. Saying "stop" ends the voice session on any surface without touching the keyboard.

~
# Enter voice mode in CLI hermes voice # Configure wake word (runs on-device) hermes config set voice.wake_word "hey Hermes" hermes config set voice.wake_enabled true

What changed my day-to-day the most: barge-in. Before this release, if Hermes was talking and you remembered a detail, you had to wait for it to finish, open a "correction" channel, and reformulate from scratch. Now you interrupt, the model knows in the same generation, and it reorients. It feels like a conversation, not a voicemail exchange.

2. It carries word to other agents β€” A2A v1.0

The release lands a bundled plugin that implements A2A v1.0 (Agent-to-Agent). Hermes can now discover, talk to, and be driven by other A2A-compatible agents. This closes issue #514, one of the oldest in the repo. If you're building multi-agent systems with heterogeneous stacks, there's now a standard wire protocol for Hermes to join.

~
# Enable the A2A plugin hermes plugin enable a2a hermes a2a discover # list A2A agents on the network hermes a2a call <agent-id> --task "summarize the last merged PR"

The important thing here isn't the specific command β€” it's that you can now compose Hermes with any other A2A-compatible agent without locking into a proprietary SDK. For a SaaS that has its own agent in production and wants to delegate subtasks to Hermes (or the other way around), this unblocks the conversation.

3. It announces events to your systems β€” outbound webhooks

Integrating with Hermes used to mean polling or listening on a platform. Now it pushes signed lifecycle events (session activity, turn completions, tool events) to any HTTP endpoint you register. HMAC signatures so your receiver can verify authenticity. No polling loop.

~
# ~/.hermes/webhooks.yaml endpoints: - url: https://your-saas.com/hooks/hermes secret: $WEBHOOK_HMAC_SECRET events: - session.activity - turn.completed - tool.invoked

Hooks that are useful for your SaaS:

  • CI: trigger jobs when Hermes completes a change in a session.
  • Home automation: your agent fires a webhook when a long task finishes and turns on a light.
  • Dashboards: stream events to your observability stack.
  • Anything that speaks HTTP: forget the client that polled every N seconds.

4. It cites its sources β€” grounded citations with fact-checking

The grounded-citations skill does research where every claim is backed by a verifiable source: quotes are matched against the actual page text (no hallucinations), citations link to the exact evidence, and a fact-checking mode takes the same machinery and applies it to any document or claim you hand it β€” it tells you what checks out, what doesn't, and what couldn't be verified.

~
# Load the skill in a session /skills load grounded-citations # Research with citations > Do research on EU regulatory changes for LLM use in fintech in 2026, with verifiable sources. # Fact-checking on a document of your own > Audit this whitepaper (paste content) and tell me which claims are backed, which aren't, and which couldn't be verified.

If you use Hermes for research, this is the difference between "sounds right" and "provably sourced". For a founder who has to write whitepapers, regulatory proposals, or due diligence, it's a before-and-after.

5. The desktop became a platform

Hermes Desktop stopped being a chat client. Now:

  • Artifacts: versioned cards with sandboxed live preview in a right-rail viewer. Generated HTML/apps run safely next to the chat.
  • Plugin SDK: real, with Kanban as its founding plugin. ctx.download to hand files to the user, floating pane placement, multiple windows.
  • Quick-entry window with global hotkey: capture a thought into any session from anywhere in your OS. Type it and it gets injected into the active turn.

If you were only using the CLI, this doesn't change your life. But if your team mixes CLI with desktop, artifacts are the piece that was missing for the desktop to be worth installing.

6. CLI power wave β€” !, /init, /diff, /context, /focus

The second biggest wave of the release is CLI commands. The ones I use most:

~
# Shell without spending a model turn !git status !ls -la # Scan the project and generate/update AGENTS.md /init # Show staged, all, or session changes from any surface /diff /diff --staged /diff --session # Breakdown of what's filling your context window /context # Reduced view with hidden lines and recovery /focus # Migrate Claude Code or Codex CLI setup to Hermes hermes import-agent ~/.claude hermes import-agent ~/.codex

The most underrated: /init. You're in a new project, you don't want to write an AGENTS.md from scratch, you want Hermes to understand what the repo does. /init scans it and leaves it ready. If you run it again, it updates instead of overwriting.

The second most underrated: /context. When your session starts feeling slow and the model seems distracted, /context tells you exactly what's filling the window. Sometimes it's a giant tool result. Sometimes it's 3 turns of filler. You see it and you decide.

7. Tools that fix themselves

When a tool failed, the model used to guess. Now the tool fixes itself:

  • terminal truncates output and spills it to a file the agent can read back.
  • patch detects already-applied edits and diagnoses whitespace mismatches.
  • write_file verifies that the content made it to disk.
  • search probes near-misses and recovers when nothing matches.
  • Common failures come back with actionable hints.

Plus: the default tool iteration limit jumped from 90 to 500. Long autonomous runs stopped hitting an artificial wall.

8. The speedups that matter

Summary of the cold numbers, taken from the release notes:

ImprovementBeforeAfter
Cold start hermes -w~14 s~1.8 s
hermes update no-opsbaseline2–6 s faster
Config reads (28 call sites)baseline28Γ— cheaper
Telemetry gate deepcopybaseline54Γ— faster
Heavy SDK importseagerlazy (βˆ’8–10% import cost)
Default tool iteration limit90500
Tool-call iteration limit handled by the sessionβ€”raised

The 14s β†’ 1.8s cold start is the most tangible metric if you use Hermes as a sidekick. You open and close it 50 times a day, and the friction is noticeable.

9. How to update

~
# Update Hermes (any install method) hermes update # Verify you're on 0.20 hermes --version # Full check post-update hermes doctor

hermes doctor detects the install method (git, Docker, NixOS, service user) and tells you the right update command if hermes update isn't yours. If you're behind a corporate proxy, export HTTPS_PROXY before running the update.

If you want to review the full changelog before updating, the v0.20.0 release notes have all 283 lines (including Core Agent, providers, secrets, performance, and more). The v2026.8.3 prefix is from the repo's tag calendar β€” the semver release is still 0.20.0.

What changes for your workflow

If you've been on Hermes 0.19, you'll probably not notice anything in the first few days, and then in a week you'll catch yourself saying "this used to be a pain". What I'd try first, in order:

  1. hermes update && hermes doctor. Validate you're on 0.20.
  2. /init on your next new project. Saves you writing AGENTS.md.
  3. /context whenever the session feels loaded. Before thinking about reset.
  4. ! for quick shell. Don't spend model turns on git status or ls.
  5. Voice mode at some point without pressure. The qualitative change (barge-in, wake word) is where it shines.
  6. Grounded citations whenever you have to write something that goes out under your name.

Release 0.20 leaves Hermes with a set of capabilities that isn't comparable to two versions ago. It's not hyperbole to say it changed from CLI agent to platform: voice, multi-agent, integration with your systems, and research with citations β€” all from the same piece. If you have a product idea that touched two of these pieces, it's worth revisiting the feasibility.

If you want to install Hermes from scratch, the install guide (Linux, macOS, WSL2, Windows, Android) still works for 0.20. If you're coming from OpenClaw, the migration still works β€” the hermes claw migrate flags didn't change.

Frequently asked questions

What is Hermes Agent 0.20 herald?

It's the v0.20.0 release of Hermes Agent from Nous Research, published on August 3, 2026 under the codename "herald". The title comes from mythology: Hermes is the herald of the gods, and this release makes him one in earnest β€” he speaks, carries messages to other agents, announces events, and cites his sources. It brings 3,650 commits, 1,400 merged PRs, 1,200 closed issues, and work from 650+ contributors.

What are the four pillars of the release?

(1) **He speaks**: conversational voice with streaming TTS clause-by-clause, barge-in (you interrupt the agent mid-sentence and it knows you cut it off), on-device open-vocabulary wake words, and voice on WhatsApp, Feishu, DingTalk, LINE, QQ, Photon, and Weixin. (2) **He carries word to other agents**: A2A v1.0, a bundled plugin that implements the Agent-to-Agent protocol, which closes issue #514, one of the oldest in the repo. (3) **He announces events to your systems**: outbound webhooks signed with HMAC so your receiver can verify authenticity β€” no polling loop. (4) **He cites his sources**: the `grounded-citations` skill matches every claim against the actual page text (no hallucinations) and ships a fact-checking mode that audits any document you hand it.

What changes in the CLI and the desktop?

The CLI got a power-user wave: `!command` runs a shell command without spending a model turn, `/init` scans your project and generates or updates an `AGENTS.md`, `/diff` shows staged, all, or session changes from any surface, `/context` breaks down exactly what's filling your context window, `/focus` gives you a reduced-output view with hidden-line recovery, and Ctrl+S stashes a half-written prompt into a browsable panel. Plus `hermes import-agent` migrates your Claude Code or Codex CLI setup into Hermes in one command. The desktop became a platform: artifacts with sandboxed live preview in a right-rail viewer, a plugin SDK (Kanban as its founding plugin), a global-hotkey quick-entry window that captures a thought into any session from anywhere in your OS, and multiple windows.

How do I update to Hermes 0.20?

Depends on your install method. If you installed with the official script (git clone in `~/.hermes/hermes-agent`), run `hermes update` from any session β€” the updater pulls the changes, respects your config, and restarts the Gateway. If you use Hermes Desktop, the app notifies you when a new release is available and applies it with one click. If you installed with Docker, NixOS, or a service user, follow the update method shown by `hermes doctor` (it detects it automatically). After updating, run `hermes doctor` to validate everything is green.

Is it worth updating if I only use the CLI for coding?

Yes. The release ships operational wins even if you don't use voice, A2A, or webhooks. The highlights: (1) cold start of `hermes -w` dropped from ~14s to ~1.8s, (2) `hermes update` no-ops got 2–6s faster thanks to a single raw config.yaml parse per process, (3) context compression became proactive and per-turn (no more giant pause mid-session), (4) the default tool iteration limit jumped from 90 to 500, so long autonomous runs stopped hitting an artificial wall, and (5) tools now recover from their own failures: terminal truncates and spills to a file, patch detects already-applied edits, search probes near-misses, and write_file verifies content on disk. The everyday frictions disappear along the way.

Do any of the changes break things?

No breaking changes announced for configs or bundled skills. The CLI keeps its previous subcommands and adds the new ones. The provider API keeps the existing fields and adds Vercel AI Gateway, Vercel Sandbox terminal backend, Gemini 3.1 Pro / 3.6 Flash in catalogs, Claude Opus 5 on OpenRouter and Nous Portal, and DeepSeek v4 Flash. If you use scripts that import Hermes internal paths, there may be minor churn because of single-owner refactors on backend identity and tool plumbing β€” always worth running `hermes doctor` post-update for a clean read.