Hermes v0.22 moved memory out of the kernel. We audited the move.

Model: Kimi K3 · ✓ Verified on Hermes v0.22.1 · 2026-10-15

Hermes Agent v0.22, the "Threshold Release" shipped October 13, 2026, moved every hosted memory provider out of the agent's core and into its plugin directory. Mem0, Supermemory, Honcho, Hindsight, OpenViking, and Holographic are plugins now; ByteRover and RetainDB stay built in. Nous says existing users are migrated automatically, with no data loss, and that secrets are scrubbed before anything is handed to a provider. We ran Hermes for a month and audited its built-in memory loop against v0.21.5, so we installed v0.22.1 today and checked whether the claims survive contact. Short version: they do. Disclosure: Wallaby Token sells API access to Kimi K3, the model our Hermes install runs on.

What actually moved

In v0.21, memory providers were compiled into the agent core; choosing one meant trusting code that shipped inside the binary you ran. In v0.22, the six hosted providers live in the plugin directory next to the other 600-odd community plugins, each carrying its own trust level. Two things stayed in the core: the file-based memory layer (MEMORY.md / USER.md, the plain files the agent reads and writes itself), and the scrubbing step that strips secrets before memory content is handed to any provider.

That split is the real story. The kernel kept the part of memory that must be trustworthy (the local files and the secret filter) and pushed the part that is a vendor choice out to where vendor choices belong.

What we verified on v0.22.1

Three checks, all from a fresh official-installer install on October 15, 2026, running Kimi K3 through our own gateway:

The migration is as lossless as advertised, at least for config. On first launch, our config.yaml was auto-migrated from schema version 0 to version 51. The custom provider block (provider name, base URL, API key) came through byte-for-byte identical. We took a backup copy before launching anyway. So should you.

The built-in file layer is untouched. We told the agent to remember a standing preference in a one-shot session. It wrote the fact to ~/.hermes/memories/USER.md, verbatim correct, and created a lock file alongside it. The providers leaving the kernel did not change where the agent's own memory lands, which matches the release notes' claim that handwritten MEMORY.md / USER.md formats are now accepted as-is.

The skills chain survived. v0.22 removed hermes sync, which made us check whether hermes skills install, the mechanism that installs community skill packs, was collateral. It wasn't: install, list, and enable all work as before.

One caveat to be fair about: we verified config migration and the built-in layer, not a six-provider data migration. If you have months of memories sitting in Mem0 or Supermemory, the release notes say the move is automatic and lossless. We'd still export first.

Why this is the right architecture, and what to watch

A year ago, "which memory provider does your agent use" was an install-time decision baked into a binary. Hermes is now treating it as what it always was: a swappable vendor layer with a privacy boundary in front of it. Two consequences worth tracking:

The privacy surface got better, on paper and in structure. Scrubbing secrets before content leaves for a provider is the correct default, and moving providers to plugins makes each provider's permissions visible instead of implicit. If you're comparing the two most-searched names in that plugin list, Mem0 and Supermemory, the pricing and architecture comparison we maintain covers what each one actually does with your data.

Plugin trust is now your problem. A provider in the core was at least code Nous shipped; a community plugin is code you chose. Hermes labels trust levels in the directory; read them. This is the same discipline as any package registry, applied to the most sensitive data your agent holds.

Our standing position hasn't changed since the audit post: memory can be delegated to a vendor, but the governance of memory (what's allowed in, what's expired, what's auditable) can't be. Meta's Muse launch made the same point from the opposite direction: memory is moving into models; governance stays outside. Hermes v0.22 is a third data point for the same thesis, from an agent framework this time: the layer that remembers is being unbundled from the layer that thinks, and the winners will be the setups that keep the unbundled part inspectable.

If you want Hermes running on an open-weight model with per-request itemized billing while you evaluate providers, our Hermes setup guide, updated today for v0.22, takes about four lines of YAML or one plugin install.

Sources: Hermes v0.22.0 release notes (the provider move, migration, and secret-scrubbing claims); Hermes v0.22.1 release notes.

Did this help?