Hermes Agent v0.22.2
Overview
v0.22.2 — the release v0.22.1 was meant to be. Released October 15, 2026, about nine hours after v0.22.1.
v0.22.1 was built from the wrong commit. The tag shipped unreleased gateway work, and the Microsoft Store app could stick on “Connecting.” rather than finishing its launch. 0.22.2 is built from the tree the earlier tag was supposed to point at, plus two fixes of its own: the gateway starts after a reboot again, and long local-model turns survive on laptops. From the published v0.22.1 to v0.22.2 there are 11 commits in the compare range, the last of them Release 0.22.2 from release/0.22.1 with the published v0.22.1 as a parent.
Everything below is the 0.22 release line since v0.22.0 — the fixes 0.22.1 was meant to ship, plus the two highlights. Work that lives only on main ships with v0.23.0.
Known issue: sessions that ran under the 0.22.1 gateway cannot be deleted in 0.22.2.
Highlights
1. The gateway starts after a reboot again
On Linux, a reboot can hand an early PID to an unrelated process, and the gateway’s liveness check could mistake that recycled PID for a gateway that was still running. A supervised gateway — systemd, launchd or Docker — then refused to start, because it looked like another gateway already held the machine.
Hermes now records the boot it started in, and compares the recorded boot against the current one. When the record cannot be compared — a legacy record, or a boot time that is not readable — it stops guessing and asks the host lock, a lock file only a live gateway can hold. The check never creates the lock file itself, and argv identity was dropped from the rendezvous check, since a recycled PID can match both a start time and a command line. (#138594, fixes #133744)
2. Long local-model turns survive on laptops
Four changes in one fix for people running models on their own machine (#138560):
- Local requests always stream. While the server is still reading a long prompt, the status line reports prompt-reading progress instead of showing a turn that looks stuck.
- Stall timers skip sleep. A laptop that suspends mid-turn no longer counts the hours it was asleep as time the model spent thinking.
- A recovered server gets another try. The circuit breaker used to fail every later message after one timeout, even after the local server had come back.
- Compression stops timing out while the server is reading. Context compression waited on the model while the model was still ingesting, and gave up early.
On Windows machines with unified memory, model launch and the prompt cache are now sized against free memory rather than total memory.
Also in this window
- Model picker: a curated model list sits at the top of the picker, NVIDIA NIM gains its default model list, and Nemotron 3.5 Super VL ships with its own default parameters.
- Mistral routes: composite tool ids are kept paired, and split ids are rewritten before the provider sees them — Mistral caps tool ids at nine characters.
- Profiles: a new profile inherits the bare
customlaunch model together with its endpoint, including env-referenced providers, and the model seed no longer drops URL-less or disabled destination entries while merging. - Terminal and search: the user’s own tools come before Hermes’s in
PATH, local file search runs Hermes’s pinned ripgrep rather than the firstrgon the machine, and a sealed payload’s venv is stripped from childPYTHONPATH. - Catalog: the Korean (
hermes-lang-ko) and Brazilian Portuguese (hermes-lang-pt-br) desktop language packs arrive, alongside new catalog entries for author-feed, wait-ledger, openinvest, TeamoRouter, Hermes AAC and Agent Mixer. - Dependencies: httpx2/httpcore2 move to 2.12.0 and the pinned npm packages are bumped to clear audit findings.
Upgrading
- CLI:
hermes update - Docker / Hermes Cloud:
nousresearch/hermes-agent:stable - Desktop: updates itself; Microsoft Store installs update through the Store.
If you installed v0.22.1, update — that tag shipped work that was not ready for a stable release.
Full Changelog: v0.22.1…v0.22.2
← Hermes Agent Changelog