Hermes v0.17 → v0.20.4 upgrade briefing
Last reviewed: August 2026. Built from official Hermes release notes, the current Hermes docs, and the three Clay-specific migration commits carried forward after the v0.20.4 tag.
Morning verdict
This is less a cosmetic update and more a workflow upgrade. Hermes is now better at staying on task, farming work out to background agents, routing itself across channels, recovering from tool failures, and giving you surfaces to manage memory, agents, bots, cron, Desktop, MCP, and gateway behavior.
Scan tags: worth reviewing · subagents · MoA · verified completion · Desktop + Bot Mode · gateway reliability · custom Clay migration
Read this first
- Hermes is more autonomous, but with better finish discipline.
/goalgained stronger completion contracts and evidence-oriented workflows, so long tasks can be judged against proof instead of vibes. v0.18.0 - MoA is now a normal model-selection surface. Mixture of Agents presets appear as selectable
moaprovider models; advisors run first and the aggregator remains the acting model. v0.18.0 - Background subagents matter more.
delegate_taskcan run batched scouts in parallel, return immediately, and post results back later. Delegation docs - Desktop and gateway are more central. The v0.20 line adds more Desktop, connection, Bot Mode, gateway, cron, and messaging reliability work. v0.20.4
- Your local upgrade includes custom frosting. Photon batching, Telegram reminder buttons, and channel-specific model overrides were ported after the upstream v0.20.4 tag, so treat them as Clay-specific migration features, not official release features.
Version-window timeline
| Version | Release | What changed | Clay impact |
|---|---|---|---|
| v0.17.0 | Jun 19, 2026 | “Reach” baseline: Photon/iMessage, Raft channel, Desktop daily-driver work, delegate_task(background=true), image editing, automation blueprints, Skills Hub, atomic memory operations. | You already had early background work, Photon direction, and better Desktop basics. This is the baseline to compare against. |
| v0.18.0 | Jul 1, 2026 | “Judgment”: MoA first-class, /goal completion contracts, /learn, /journey, Desktop projects, gateway drain/scale-to-zero, background subagents. | Big jump in “do the work, prove it, and learn the workflow.” |
| v0.19.0 | Jul 20, 2026 | “Quicksilver”: faster first-token path, live reasoning streams, Desktop/TUI performance, smart approvals, secret managers, live subagent transcripts, durable gateway delivery, per-channel model/system overrides. | Less waiting, more channel-specific behavior, better gateway survival, better password-manager fit. |
| v0.20.0 | Aug 3, 2026 | “Herald”: real-time voice, wake words, voice notes, A2A, signed outbound webhooks, grounded citations, Desktop plugin/artifact expansion, CLI power commands, tool self-recovery, longer iteration limit. | Hermes becomes more of a remote operating layer: voice, events, integrations, and live artifacts. |
| v0.20.1–v0.20.4 | Aug 13–18, 2026 | Stabilization: Desktop connection registry, Telegram DM topics, MCP 2.x/stateless protocol, Bot Mode, Cua Driver 0.20 contracts, cron continuity/media hardening, SessionDB fixes, kanban notifications, update honesty. | v0.20.4 is the safer target if you care about Desktop, Bot Mode, MCP, cron, computer-use, and gateway reliability. |
Biggest workflow changes
1. Fan-out research is now a default move
Use subagents as cheap scouts, not just “helpers.” Good pattern:
Spin up 3 scouts: release notes, current docs, and repo/runtime impact.
Each returns source-backed deltas and caveats. Reconcile the results into one verified artifact.
Practical notes from the current docs:
- Batched
delegatetask(tasks=[...])runs subagents in parallel, capped bydelegation.maxconcurrent_children. - Top-level delegation returns a background handle immediately; completed results post back later.
- Subagents inherit the parent’s enabled toolsets; they cannot widen capabilities per task.
- Leaf subagents cannot call
delegatetask,clarify,memory,sendmessage, orcronjob. - For repo-editing parallel work, consider
delegation.worktree_isolation: true. - Long-lived/durable work still belongs in cron or a tracked background process, not delegation. Delegation docs
2. MoA is for judgment moments
MoA is a virtual provider/model path, not a toolset. Use it when multiple perspectives are worth the latency/cost: hard synthesis, code review, decision memos, contentious research, or final critique.
Key gotchas:
- Advisors run in parallel, but the turn waits for the slowest advisor.
- The aggregator is the acting model: final answer and tool calls come from it.
/moa <prompt>is one-shot sugar; it does not permanently switch the session model.- Keep reference output short with
referencemaxtokens. - Default fanout is usually enough;
per_iterationis fresher but much more expensive. - Enable
moa.privacy_filterif reference models may echo sensitive context. MoA docs
3. “Done” should mean evidence
The biggest behavioral upgrade is not a new button. It is a stronger expectation that tasks finish with proof.
For your work, ask Hermes to read back the target before it reports success:
- Web: fetch the live URL and verify a distinctive string.
- GitHub: show branch, commit, PR URL, and CI state.
- Cron: list the job, inspect
last_status/ delivery target, and verify important deliveries. - Trading or external APIs: surface the real order/result status, not just the signal.
- Desktop/browser: capture fresh state after input.
This matches the v0.18 /goal completion-contract direction and your existing preference for verified outcomes. v0.18.0
4. Desktop is becoming the operator console
Desktop is no longer just “chat with a nicer skin.” The current docs describe Desktop using the same Hermes core, config, sessions, skills, memory, and API keys as CLI/gateway. It adds visible management surfaces for models, tools, MCP, gateway connections, sessions, context usage, memory graph / learning journey, and Bot Mode. Desktop docs
For Clay: use Desktop for morning review, session/bot navigation, and visual inspection. Use CLI/repo tools for exact commands and deep development.
5. Gateway/channel routing is now infrastructure
The gateway now supports a broad platform set and more per-channel behavior. The current docs emphasize platform setup, platform-specific capability tables, channel overrides, adapter pause/resume, and circuit-breaker behavior. Messaging docs
Practical moves:
- Keep channel-specific model/system overrides explicit and documented.
- Use Telegram topics/buttons for control surfaces, not only notifications.
- Treat Photon/iMessage as a phone-native intake surface; test batching and authorization.
- Verify exact delivery targets for scheduled jobs and reminders.
6. Cron can be more stateful and less noisy
Cron now has stronger configuration surfaces: attached skills, provider/model override, pre-run scripts, contextfrom, workdir, platform delivery, continuity, and script-only noagent jobs. Cron docs
Clay defaults worth using:
- Use
America/Chicago, not fixed offsets. - For “today” logic, determine live local date/time at run start.
- Use
[SILENT]for intended no-op watcher runs. - Use script-only
no_agent=Truefor deterministic watchdogs and health checks. - Do not trust “cron run succeeded” as proof of visible delivery; verify the target when debugging.
7. Memory, skills, and curator need hygiene
The built-in memory remains compact. Richer project knowledge belongs in skills, session search, local Markdown hubs, docs, or external memory systems. Memory docs, Skills docs
Post-upgrade options:
- Enable
memory.write_approval: trueif you want tighter control over always-injected memory. - Enable
skills.write_approval: trueif you want diff review before new/changed skills land. - Use
/journey/ learning views to inspect what Hermes learned. - Let curator manage agent-created skills, but remember it does not delete bundled/hub skills automatically. Curator docs
8. Plugins and MCP are the right home for durable integrations
If an integration is reusable, do not bury it in a prompt. Use:
- Skill for procedure.
- Plugin for packaged Hermes capability. Plugin docs
- MCP server for external tools/resources that should be discovered and called through the standard protocol. MCP docs
MCP got especially important in this window: tool naming, health checks, server filtering, OAuth, Hermes-as-MCP-server, and v0.20.3’s SDK/protocol migration all make it more real as an integration layer.
Custom migrated features
These are part of your migrated Hermes, not official upstream v0.20.4 release notes.
| Feature | What it does | How to test it |
|---|---|---|
| Photon initial inbound batching | Holds rapid Photon/iMessage messages briefly and combines them before Hermes starts work. | Send screenshot → text → “also this” quickly; confirm Hermes answers the combined intent. |
| Telegram reminder-control buttons | Renders reminder actions as inline Telegram buttons and routes clicks back into Hermes. | Trigger a reminder and click a control instead of typing a follow-up command. |
| Channel-specific model overrides | Lets a Discord channel use a different provider/model from the global default; threads inherit the parent channel’s override. | Ask the same bounded question in normal Discord and in an overridden channel/thread. |
Suggested next experiments
- Cheap delegation preset — 20 minutes
Set a cheaper delegation.model and try a 3-scout research task.
- MoA preset trio — 45 minutes
Create presets for research-synthesis, code-review, and decision-memo; keep reference outputs short.
- Goal contract template — 30 minutes
Create a standard ask pattern: acceptance criteria, evidence surface, stop condition, and forbidden side effects.
- Cron audit — 45 minutes
Review timezones, no-op behavior, continuity, delivery targets, and deterministic script-only candidates.
- Desktop morning console — 30 minutes
Open Desktop and inspect sessions, bots, memory/learning, gateway connections, and active work.
- Phone control surface test — 30 minutes
Test Photon batching and Telegram reminder buttons in the real phone workflows you actually use.
- MCP/plugin inventory — 30 minutes
List enabled MCP servers/plugins, disable broad surfaces you do not use, and document the ones that matter.
Post-upgrade hygiene commands
hermes update --check
hermes config check
hermes config migrate
hermes skills check
hermes mcp list
hermes doctor
Use hermes gateway status and hermes cron list for the two parts most likely to affect your daily remote workflow.
Source map
Official release notes
- v0.17.0 — The Reach Release: https://github.com/NousResearch/hermes-agent/releases/tag/v2026.6.19
- v0.18.0 — The Judgment Release: https://github.com/NousResearch/hermes-agent/releases/tag/v2026.7.1
- v0.19.0 — The Quicksilver Release: https://github.com/NousResearch/hermes-agent/releases/tag/v2026.7.20
- v0.20.0 — The Herald Release: https://github.com/NousResearch/hermes-agent/releases/tag/v2026.8.3
- v0.20.1: https://github.com/NousResearch/hermes-agent/releases/tag/v2026.8.13
- v0.20.2: https://github.com/NousResearch/hermes-agent/releases/tag/v2026.8.16
- v0.20.3: https://github.com/NousResearch/hermes-agent/releases/tag/v2026.8.16.2
- v0.20.4: https://github.com/NousResearch/hermes-agent/releases/tag/v2026.8.18
Official docs
- Docs home: https://hermes-agent.nousresearch.com/docs/
- Updating: https://hermes-agent.nousresearch.com/docs/getting-started/updating
- CLI commands: https://hermes-agent.nousresearch.com/docs/reference/cli-commands
- Slash commands: https://hermes-agent.nousresearch.com/docs/reference/slash-commands
- Configuration: https://hermes-agent.nousresearch.com/docs/user-guide/configuration
- Delegation: https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation
- MoA: https://hermes-agent.nousresearch.com/docs/user-guide/features/mixture-of-agents
- Cron: https://hermes-agent.nousresearch.com/docs/user-guide/features/cron
- Memory: https://hermes-agent.nousresearch.com/docs/user-guide/features/memory
- Skills: https://hermes-agent.nousresearch.com/docs/user-guide/features/skills
- Curator: https://hermes-agent.nousresearch.com/docs/user-guide/features/curator
- Plugins: https://hermes-agent.nousresearch.com/docs/developer-guide/plugins
- MCP: https://hermes-agent.nousresearch.com/docs/user-guide/features/mcp
- Messaging/gateway: https://hermes-agent.nousresearch.com/docs/user-guide/messaging
- Desktop: https://hermes-agent.nousresearch.com/docs/user-guide/desktop
- Voice: https://hermes-agent.nousresearch.com/docs/user-guide/features/voice-mode