Einundachtzig PRs in einem Tag, und die Notes geben zu, dass sie es absichtlich undokumentiert gelassen haben

Du siehst das Update-Badge, klickst durch auf die Release-Seite und bekommst einen Absatz: das ist ein Patch-Release, es bündelt rund 81 seit v0.22.4 gemergte Pull Requests, und die kuratierte Beschreibung kommt mit v0.23.0. Keine Liste der Änderungen, keine Highlights, nichts zu dem Fix, auf den du seit zwei Wochen wartest. Die einzige Frage, die vor hermes update wirklich zählt, bleibt also unbeantwortet: heute upgraden oder warten?
Die kurze Antwort: dieser Tag ist ein Checkpoint, kein Feature-Drop — und der Release-Text sagt in einer Zeile, dass ein Teil davon hier absichtlich undokumentiert bleibt. Genau diese bewusst ausgelassenen Zeilen entpuppen sich als der nützliche Teil, deshalb geht es hier um sie, um die Zahlen und um den Upgrade-Weg je Plattform.
Ein Patch-Release ist ein Checkpoint, kein Feature-Drop
Hermes schneidet zwei Arten von Releases. Feature-Releases bekommen Namen, Abschnitte und Screenshots. Patch-Releases nehmen alles, was seit dem vorherigen Tag gemergt wurde, und schneiden daraus einen neuen stabilen Punkt, damit jeder Vertriebskanal — das GitHub-Release, das CLI und Install-Skript nutzen, die Microsoft-Store-App, Docker und Hermes Cloud — identischen Code trägt. Nichts darin wurde für dieses Release entworfen; es sind ein paar Tage Arbeit, gebündelt.
Der Umfang des Batches, gezählt am Commit bf0203a794a:
- 231 Nicht-Merge-Commits über 804 geänderte Dateien, bei +35,212 / −17,885 Zeilen
- 81 gemergte Pull Requests und 30 geschlossene Issues
Jetzt vergleiche mit v0.22.4, zwei Tage früher: 14 Nicht-Merge-Commits über 82 Dateien und 13 gemergte PRs, veröffentlicht am 21. Oktober. Gleiches Team, gleicher Kanal, sechsfaches Volumen. Dieser Vergleich ist die eigentliche Geschichte dieses Tags. Was am 22. und in den frühen Stunden des 23. gemergt wurde, bekam keine Einzelbeschreibungen; es wurde in einen Rollup gefaltet.
Ein Detail zum Zeitstempel: der Release-Text datiert das Release auf 22. Oktober 2026, während GitHub den Tag am 23. Oktober um 05:28 UTC veröffentlichte. Beides stimmt — dieser Moment ist der Abend des 22. in Kalifornien.
Ein Diff von 35.000 Zeilen ohne Feature-Liste ist kein Diff voller Features: es sind Refactorings, plugin-Umzüge, Abhängigkeitsarbeit und kleine Fixes. Darum geht es im Rest dieses Beitrags.
Die vier Änderungen, über die du wahrscheinlich schon gelesen hast
Vier Punkte aus diesem Fenster haben hier bereits einen eigenen Artikel. Je eine Zeile, mit dem Link, falls du ihn verpasst hast:
- Nous Sign-in wurde umgebaut, sodass jeder Login ein gewöhnlicher Device-Login ist, das Ergebnis dir sagt, wer sich angemeldet hat, und Connectoren einen Sign-in anbieten, statt Besucher in den Gastmodus fallen zu lassen. Mehr in wie der Sign-in zwischen App und Browser übergeht.
- Delegation-Backends sind pluggable geworden, routingfähig per Modell-Mapping oder per profile, pro Session umschaltbar. Der Rundgang durch das Backend-Routing deckt die Konfiguration ab.
- Usage-Window-Pläne rendern in
/usagejetzt als Fortschrittsbalken und Limit-Karten, inklusive Erholung nach einem Modellwechsel. Was jede Anzeige bedeutet, steht in der Aufschlüsselung der Usage-Windows. - Halb aktualisierte Installationen unter Windows haben einen echten Fix bekommen statt einer weiteren Anweisung zum erneuten Versuchen. Die Geschichte des Launchers erklärt, warum ein erneutes Pinnen von Python es kaputt gemacht hat.
Alles Folgende ist der Rest der 81.
Was die Notes laut eigener Aussage absichtlich weglassen
Der Release-Text sagt mit klaren Worten, dass ein Teil dieses Fensters absichtlich undokumentiert bleibt. Genau gelesen ist das keine Bescheidenheit: diese Änderungen ergeben nur als Sätze Sinn, nicht als Changelog-Zeilen. Sie fallen in drei Gruppen.
hermes update hält jetzt ein Release zurück, das es nicht nehmen würde
Die erste Gruppe ist das Update-Verhalten, und für alle, die von der CLI leben, ist das der praktischste Teil des Releases.
- Ein stabiles Release, das Hermes nicht akzeptiert, wird jetzt zurückgehalten, statt dir angeboten zu werden. Bisher konnte die Prüfung ein Release als verfügbar anzeigen, du hast geklickt, und das Update hat abgelehnt. Diese Schleife kostet einen Klick und, schlimmer, sie bringt dir bei, dem Badge zu misstrauen. Jetzt wird die Option einfach nicht präsentiert.
- Unter Windows hängt
hermes updatenach einem erneuten Python-Pin nicht mehr am alten Launcher. Ein neuer Pin ändert, welchen Interpreter der Launcher aufrufen soll; der veraltete Launcher ist das, was Installationen halb aktualisiert zurückließ. hermes updatekann ein ausgesetztes gateway wiederherstellen, nachdem.gitbeschädigt wurde. Der am wenigsten glamouröse Punkt und wahrscheinlich der, der die meisten Nachmittage rettet: ein korruptes Repository ließ das gateway bisher geparkt, und der Reparaturpfad bringt es jetzt zurück, statt dich erst git reparieren zu lassen.
Alle drei handeln davon, dass der Update-Befehl sich weigert, dich in einem Zustand zu lassen, den du nicht durchdenken kannst. Keine fügt ein Flag hinzu; jede entfernt eine Art, hängenzubleiben.
Der Kern wird weiter dünner
Die zweite Gruppe ist die fortgesetzte Migration eingebauter Features in plugins.
hermes import-agent, die OpenClaw-Migration, hermes mcp serve und das Singularity-Backend haben alle den Kern Richtung plugins verlassen. Setup bemerkt jetzt, dass du bereits einen anderen Agenten installiert hast, und bietet dir den Importer an, statt dich ihn selbst entdecken zu lassen.
Wenn du upgradest und ein Befehl fehlt, den du letzte Woche benutzt hast, schau in den plugin-Katalog, bevor du schließt, er sei entfernt worden. Das ist nicht neu — v0.22.4 hat dieselben Befehle verschoben —, aber bei v0.22.5 hört es auf, wie eine einmalige Aufräumaktion auszusehen, und fängt an, wie die Architektur auszusehen.
Ebenfalls in dieser Gruppe: Slash-Commands von plugins können dich jetzt bitten, eine Option zu wählen, bevor sie fortfahren. Ein Befehl, der früher mit festem Verhalten lief, kann pausieren und eine Auswahl präsentieren. Kleine Änderung an der Schnittstelle, große Änderung daran, was ein plugin sein kann: ein Befehl mit Verzweigung, nicht nur ein Makro.
Und ein Punkt trägt das Label experimentell ehrlich: ein MCP-Event-Client im Webhook-Modus. Baue noch keinen Workflow darauf.
Desktop: Ziehen zum Anheften, Badges und ein Bot, der sagt, wer arbeitet
Die dritte Gruppe ist die Desktop-App, wo die Änderungen klein sind, aber täglich ankommen.
- Sidebar per Ziehen anheften. Einträge der Sidebar lassen sich an eine feste Position ziehen, statt dort zu leben, wo die App sie hinlegt.
- plugin-Installation per Klick, mit Tier-Badges. Die Installation aus der App ist eine Aktion, und das Badge sagt dir vor dem Klick, welchen Tier du bekommst.
- Electron 44, Pillow 13 und ein Bündel Sicherheitsupdates für Abhängigkeiten. Nichts zu konfigurieren; der Grund, sie zu nehmen, ist, dass du die älteren Versionen lieber nicht weiterlaufen lässt.
- Gruppenchats zeigen wieder, welcher Bot arbeitet. Ein Regressionsfix: mit mehreren Bots in einem Raum ist dieser Indikator der einzige Weg zu wissen, wer antwortet, und ohne ihn wirkt der Raum kaputt statt langsam.
- Eine Unterhaltung, deren Arbeitsverzeichnis verschwunden ist, sagt das jetzt klar. Vage Fehler an dieser Stelle schicken Leute dazu, Modell, Netzwerk und Prompt zu prüfen, bevor jemand schaut, ob der Ordner noch existiert.
- Lange Antworten von Claude DirectSDK werden nicht mehr vom Stall-Timer abgeschnitten. Hat ein langsamer provider dir je eine Antwort mitten im Satz abgeschnitten, ist das die Zeile, die dich interessiert.
Upgrade, Plattform für Plattform
| Wo du Hermes betreibst | Wie v0.22.5 zu dir kommt |
|---|---|
| CLI-Installation | hermes update, oder den Installer-Einzeiler erneut ausführen |
| Microsoft-Store-App | über den Store |
| Desktop-App aus dem Installer (.exe / .dmg) | in diesem Release unverändert; zieht mit dem nächsten gebündelten Release mit |
| Docker / Hermes Cloud | nousresearch/hermes-agent:stable (oder :latest) |
Die dritte Zeile wird oft falsch gelesen: ein Patch, der CLI, Store-App, Docker und Cloud ausliefert, baut nicht zwangsläufig die .exe- und .dmg-Bundles neu. Ein Desktop-Nutzer kann hermes update ausführen, zusehen, wie die CLI auf v0.22.5 wandert, und trotzdem auf dem vorherigen Desktop-Build bleiben — korrektes Verhalten, kein fehlgeschlagenes Update.
Wann du auf v0.23.0 warten solltest
Warte, wenn du die Geschichte willst und nicht das Binary. Die kuratierten Notes für dieses gesamte Fenster — alles seit v0.22.0, mit Highlights, nach Bereichen gruppierten Features und der vollständigen Contributor-Liste — kommen zusammen mit v0.23.0. Ein Rollup-Tag sagt dir, was sich bewegt hat; warum jemand es gebaut hat, sagt es nie.
Upgrade jetzt, wenn eines davon dein Problem ist: eine Update-Prüfung, die ein Release anbietet und dann ablehnt, eine Windows-Installation, die am alten Launcher hängt, ein gateway, das nach einem beschädigten .git geparkt bleibt, lange Antworten, die bei Claude DirectSDK abgeschnitten werden, ein Gruppenchat, der dir nicht sagt, welcher Bot arbeitet, oder eine Session, die scheitert, weil ihr Arbeitsverzeichnis verschwunden ist. Das ist keine Feature-Liste. Es ist ein ordentlicher Grund, heute zu wechseln.
Und 81 PRs in zwei Tagen ohne Beschreibung sind kein Warnsignal — so hält ein Projekt mit dieser Taktung fünf Vertriebskanäle auf demselben Code. Die Beschreibung existiert; sie ist für das nächste Feature-Release geplant.