v0.18.0

Hermes Agent v0.18.0 — Das Urteils-Release


Überblick

v0.18.0 — Das Urteils-Release. Veröffentlicht am 1. Juli 2026. ~1.720 Commits · 998 gemergte PRs · 2.215 geänderte Dateien · ~251.000 Einfügungen · ~41.000 Löschungen · 949 geschlossene Issues · 370+ Community-Mitwirkende.

Das Urteils-Release steht für einen fundamentalen Wandel: Hermes Agent hat gelernt, seine Arbeit mit Beweisen zu belegen, statt Erfolg einfach zu behaupten. Mixture-of-Agents wurde von einem Umschaltmodus zu einem erstklassigen Modellsystem ausgebaut, bei dem das Reasoning jedes Referenzmodells sichtbar ist und der Aggregator live streamt. /goal erhielt Completion-Contracts, und /learn sowie /journey machten die Selbstverbesserung sichtbar und steuerbar. Unter der Haube erreichte das Gateway Scale-to-Zero mit Drain-Koordination für Produktionsumgebungen, und die Desktop-App bekam ein echtes Coding-Cockpit mit erstklassigen Projekten.

Und dann der Durchmarsch: Das Team hat sämtliche P0- und P1-Issues im gesamten Repository in zwölf Tagen gelöst. Null offene P0s. Null offene P1s. Das ist die neue Baseline.


Die P0/P1-Bereinigung

Priorität Geschlossene Issues Gemergte PRs
P0 (kritisch) 3 8
P1 (hoch) 493 188
Gesamt 496 196

Das sind ~692 gelöste Elemente höchster Priorität. Der letzte gefallene P0: der interrupt-protected-compression sibling-fork-Bug (#56391, behoben durch #56416), abgeschlossen in einer Nachtschicht unmittelbar vor dem Release-Cut.

Besonderer Dank geht an @kshitijk4poor, der die Cron-Zuverlässigkeitswelle, den Compression-Fork-Fix, die Absicherung gegen Credential-Exfiltration und einen großen Teil der P1-Schließungen vorangetrieben hat.

Wir werden P0/P1 ab sofort bei null halten.


Hauptfunktionen

1. Mixture-of-Agents (MoA) — Erstklassige Modellauswahl

MoA wurde von einem Umschaltmodus zu einem erstklassigen Teil des Modellsystems. Jedes benannte MoA-Preset erscheint nun als wählbares Modell unter dem moa-Provider — direkt neben Claude, GPT und Grok in jeder Modellauswahl (CLI, TUI, Desktop, Gateway).

Wähle ein Ensemble wie jedes andere Modell:

# In der CLI, wechsle zu einem MoA-Preset über die Modellauswahl
/hermes model:moa/my-council

# /moa ist jetzt ein One-Shot-Shortcut — läuft über das Standard-Preset, stellt das vorherige Modell wieder her
/moa Überprüfe diese Architekturentscheidung

Das Reasoning jedes Referenzmodells als beschriftete Blöcke sichtbar. In CLI, TUI und Desktop wird die vollständige Ausgabe jedes Referenzmodells in einem eigenen Block dargestellt, bevor der Aggregator die endgültige Antwort synthetisiert. Du kannst lesen, was GPT-5 dachte, was Claude dachte und was Grok dachte — und dann zusehen, wie das Komitee berät.

Die Aggregator-Antwort streamt live. Schluss mit langen Pausen gefolgt von einer Textwand. Die finale Antwort streamt Token für Token auf allen drei Oberflächen.

Konfiguration:

# hermes.config.yaml
moa:
  presets:
    my-council:
      references:
        - provider: anthropic
          model: claude-sonnet-4-20250514
          role: reference
        - provider: openai
          model: gpt-5
          role: reference
        - provider: xai
          model: grok-3
          role: reference
      aggregator:
        provider: openai
        model: gpt-5
  save_traces: true  # komplette Turn-Traces als JSONL für Debugging/Evaluation speichern

So funktioniert es unter der Haube:

  • Referenzen sehen den vollständigen Tool-State und feuern bei jeder Benutzer-/Tool-Antwort, nicht nur beim initialen Prompt
  • Beratende Referenzen enden bei einem Benutzer-Turn und erhalten einen System-Prompt mit Referenz-Rolle
  • Referenz- und Aggregator-Modelle werden über die echte Provider-Route aufgerufen — keine Abkürzungen
  • Kontextfenster wird vom Aggregator aufgelöst, nicht vom 256K-Standard
  • Hilfsaufgaben werden automatisch dem Aggregator zugewiesen
  • Virtueller Provider als Referenz-/Aggregator-Slot gesperrt — keine rekursiven Ensembles
  • Tolerant gegenüber manuell bearbeiteter Preset-Konfiguration — stürzt bei kleineren Formatierungsproblemen nicht ab
  • MoA-Slot-Provider-Identität am einzigen call_llm-Engpass vereinheitlicht
  • HermesBench-Ergebnisse zur Referenz dokumentiert

2. Verifikation — Der Agent belegt seine Arbeit

Hermes zeichnet jetzt Verifikationsbeweise für Coding-Arbeit auf und entscheidet über den Abschluss, indem es tatsächlich die Prüfungen deines Projekts ausführt — statt Erfolg einfach zu behaupten.

/goal Completion-Contracts:

# Setze ein Ziel mit einem Completion-Contract
/goal "Behebe die Race Condition im Auth-Handler"
# Hermes fordert dich auf, "fertig" zu definieren:
# "fertig = Unit-Tests bestehen + keine Lint-Fehler + Concurrency-Suite besteht 10× ohne Fehlschlag"

# Der Standing-Goal-Loop bewertet anhand von Beweisen, nicht nach der Behauptung des Modells.
# Er stoppt erst, wenn der Contract erfüllt ist.
# Parke den Goal-Loop auf einem Hintergrundprozess, statt den Agenten erneut anzustoßen
/goal wait 12345

Verifikations-Beweisbuch:

# hermes.config.yaml
coding_context:
  verify_on_stop: auto     # Projekttyp automatisch erkennen, passende Prüfungen ausführen
  pre_verify:              # benutzerdefinierte Verifikations-Hooks, die vor der Fertigstellung ausgeführt werden
    - command: "npm run test -- --coverage"
    - command: "npm run lint"
    - command: "npm run typecheck"

Implementierungsdetails:

  • Profilbezogenes Beweisbuch, automatisch erkannt durch agent.coding_context
  • Gateway stellt Verifikationsstatus unter GET /api/verification/status bereit
  • pre_verify-Hook akzeptiert beliebige Skripte als Verifikations-Gates
  • Verifikations-Stop-Loop mit Ad-hoc-Skript-Unterstützung
  • verify-on-stop ist standardmäßig AUS mit einmaliger v32-Migration — überspringt reine Doku-Änderungen, für Messaging-Oberflächen deaktiviert
  • Oberflächenabhängiger „auto“-Standard wiederhergestellt (interaktiv vs. nicht-interaktiv)

3. /learn — Aus allem eine wiederverwendbare Fähigkeit machen

Führe /learn <irgendetwas> aus und Hermes destilliert eine wiederverwendbare Fähigkeit aus dem, worauf du es richtest. Es schreibt automatisch gemäß den CONTRIBUTING.md-Standards.

# Von einem Verzeichnis lernen — package.json, Skripte, README, alles wird analysiert
/learn ./meine-deployment-skripte

# Von einer URL lernen — Dokumentation, API-Referenz, Blogbeitrag
/learn https://docs.beispiel.com/api-reference

# Aus dem gerade durchlaufenen Workflow lernen — Hermes beobachtet die letzten N Turns
/learn workflow  # erkennt automatisch das letzte Workflow-Muster

Was unter der Haube passiert:

  • Analysiert die Struktur (Verzeichnisinhalte, URL-Inhalte oder Konversationsverlauf)
  • Identifiziert wiederverwendbare Muster und domänenspezifische Verfahren
  • Erstellt eine Skill-Datei gemäß den CONTRIBUTING.md-Standards deines Projekts
  • Berücksichtigt gemischte Anforderungen — wenn CONTRIBUTING.md ein bestimmtes Format vorgibt, wird dieses verwendet
  • Wenn du das nächste Mal diesen Workflow brauchst, ist er bereits in der Skill-Bibliothek

Zusätzliche Skill-Tools in diesem Release:

  • cloudflare-temporary-deploy — optionaler Skill für schnelle Cloudflare-Deployments
  • creative-ideation v2.1.0 — Methodenbibliothek für kreatives Arbeiten

4. /journey — Eine interaktive Zeitleiste von allem, was Hermes weiß

CLI und TUI erhielten /journey — eine Lern-Zeitleiste mit gesammelten Erinnerungen und Fähigkeiten, mit In-Place-Bearbeitung und -Löschung. Kombiniere es mit dem neuen Memory Graph des Desktops (eine interaktive radiale Zeitleiste von Erinnerungen und Fähigkeiten im Zeitverlauf, Draufsicht), und zum ersten Mal kannst du tatsächlich sehen, was dein Agent weiß, ihm beim Wachsen zusehen und Fehlerhaftes bereinigen.

/journey
# Zeigt eine scrollbare Zeitleiste aller Erinnerungen und Fähigkeiten
# Pfeiltasten: navigieren
# Enter: Details erweitern
# e: vor Ort bearbeiten
# d: löschen

Desktop Memory Graph: Eine radiale Zeitleisten-Visualisierung (Draufsicht, interaktive Knoten), die Erinnerungen und Fähigkeiten nach Zeiträumen gruppiert darstellt. Abspielbar — durch die Zeitleiste scrollen, in bestimmte Zeiträume zoomen, einen Knoten antippen, um den vollständigen Erinnerungsinhalt zu sehen.

5. Background Fan-Out — Parallele Subagent-Delegation

delegate_task kann jetzt mehrere Subagenten parallel starten, die alle im Hintergrund laufen — dein Chat wird nie blockiert, und wenn alle fertig sind, kommen die Ergebnisse als ein einzelner konsolidierter Turn zurück.

# Parallele Recherche-Delegation
/delegate_task "Recherchiere Wettbewerber A, B, C parallel — liste deren Preise, Funktionen und letzte Finanzierungsrunden"

# Was passiert:
# 1. Drei Hintergrund-Subagenten starten gleichzeitig
# 2. Die CLI/TUI-Statusleiste zeigt die Anzahl aktiver Hintergrundagenten
# 3. Dein Haupt-Chat bleibt reaktionsfähig — arbeite an etwas anderem weiter
# 4. Wenn alle drei fertig sind, kommt eine konsolidierte Zusammenfassung

Infrastruktur:

  • CLI- + TUI-Statusleiste zeigt Hintergrund-Subagenten in Echtzeit
  • Ruhige „wird fortgesetzt“-Anzeige, wenn Hintergrundarbeit läuft
  • Eine konsolidierte Rückgabe — kein manuelles Verwalten einzelner Agenten

6. Desktop-App — Erstklassige Coding-Projekte

Die Desktop-App erhielt echte, profilbezogene Projekte basierend auf einem project → repo → lane-Modell. Deine Coding-Arbeit ist in Projekten organisiert, die der Agent versteht und bearbeiten kann.

Projekt-Aufbau:

Projekt "auth-service"
  ├── Repo: github.com/myorg/auth-service
  │     ├── Lane: main (aktueller Arbeitsbranch)
  │     ├── Lane: feat/oauth-refactor (Worktree)
  │     └── Lane: fix/race-condition (Worktree)
  └── Tools: agentenseitige Projekt-Tools (lint, test, build)

Coding-Cockpit-Funktionen:

  • Sidebar: profilbezogene Projektliste mit Coding-Leiste
  • Review-Panel: Git-Status, Diff-Ansicht, Worktree-Verwaltung
  • Remote-Gateway-fähige Ordnerauswahl: funktioniert mit gehosteten Gateways
  • Git-Cockpit: Inline-Status, PR-artige Diff-Überprüfung, Worktree-Erstellung/-Wechsel/-Löschung

Multi-Terminal-Panel:

  • Schreibgeschützte Agent-Terminals — beobachte, was der Agent tut
  • Terminal-Tabs und Scrollback bleiben erhalten und werden bei Neustarts wiederhergestellt

PR-artige Datei-Diffs im Chat:

  • Dateiänderungen werden als Side-by-Side- oder Unified-Diffs dargestellt
  • In-App-Spot-Editor für das Dateivorschau-Panel
  • Inline Rich Embeds, Diagramme und Benachrichtigungen im Assistant-Markdown

UX-Verbesserungen:

  • Konversations-Zeitleistenleiste zum Navigieren in langen Threads
  • Kontextnutzungs-Popover — sieh genau, was dein Kontextfenster beansprucht
  • Spectator-Transkript für Subagent-Beobachtungsfenster (schreibgeschützt)
  • Verschiebbarer Floating Composer — löse das Eingabefeld in ein eigenes Fenster
  • Auto-TTS-Composer-Toggle — Antworten vorlesen lassen
  • Fensterzustand-Persistenz — Größe, Position, Maximierung über Starts hinweg gespeichert
  • Neu gestalteter Clarify-Prompt
  • Geteiltes Overlay-Panel-Primitive für Cron/Profile/Agenten-Verwaltung

Desktop Pets:

  • Opt-in umherstreifendes Pet mit ruhigerem, realistischerem Bewegungsverhalten
  • Alt+Mausrad-Skalierung — beschneidet das Pet nie
  • Frame-perfekter Hatch-Flow mit CPU-schonendem Chroma-Rendering
  • Pop-out-Overlay mit Benachrichtigungen

Refactoring-Welle:

  • Composer in isolierte Engine-Hooks zerlegt
  • Branch/Esc/URL/Placeholder/Popout-Engines als separate Module extrahiert
  • God-Dateien aufgeteilt: thread.tsx, sidebar/index.tsx, Onboarding-Overlay, use-prompt-actions — alle in fokussierte Module zerlegt
  • Geteilte WebSocket-Schicht entkoppelt Desktop vom Dashboard (hermes serve)
  • Performance: begrenztes Tool-Result-Rendering verhindert Einfrieren bei großen /learn-Durchläufen; schnelles Session-Switching unter Last

7. Gateway — Scale-to-Zero & Drain-Koordination

Das Gateway kann jetzt bei Inaktivität in den Ruhezustand gehen und vor Neustart, Migration oder Auto-Update sauber herunterfahren — ohne laufende Konversationen zu verlieren.

Scale-to-Zero-Workflow:

# Gateway mit Scale-to-Zero starten
hermes serve --scale-to-zero --drain-timeout 30s

# Was passiert:
# 1. Gateway überwacht aktive Verbindungen
# 2. Nach einer Leerlaufperiode (konfigurierbar) wechselt es in den Ruhezustand
# 3. Bei neuer Verbindung wacht es transparent wieder auf
# 4. Verursacht null Rechenkosten im Leerlauf

Drain-Koordination (sicheres Herunterfahren):

# Sauberes Drain vor Wartung/Neustart
hermes serve --drain

# Laufende Konversationen werden natürlich abgeschlossen
# Neue Verbindungen werden mit einem Retry-After-Signal abgewiesen
# Transkripte werden bei Drain-Timeout persistiert
# Busy/Idle-Anzeige für Lifecycle-Orchestrierung

Produktionshärtung:

  • Standardmäßig restart_drain_timeout auf 0 gesetzt, um systemd-Absturzschleifen zu beenden
  • Selbstheilung aus blockiertem Draining-/Degraded-Zustand
  • Home-Channel-Shutdown-Broadcast bei gekennzeichneten Drains unterdrücken
  • Dormancy-Armierungs-Gate gegen deaktivierte Platzhalter-Plattformen absichern

8. Relay (Phase 5 / 6)

Die Relay-Infrastruktur ist für Multi-Plattform- und Multi-Agenten-Bereitstellungen deutlich gereift:

  • Wake-Primitive (Gateway-seitig) — Remote-Relay kann ein ruhendes Gateway aufwecken
  • Going-Idle / Buffered-Flip-Primitive — saubere Übergabe bei Zustandswechseln
  • passthrough_forward über WebSocket — leichtgewichtiger Proxy für weitergeleitete Nachrichten
  • Multi-Plattform-pro-Agent-Identität — ein Agent, mehrere Messaging-Plattformen, einheitliche Identität
  • Per-Frame-Egress — feingranulare Kontrolle darüber, welche Nachrichten durch welchen Kanal gesendet werden
  • Stabile Instance-ID bei Self-Provision für zuverlässiges Tracking weitergeleitet
  • Relevance Policy dem Connector deklariert — Rauschen auf Relay-Ebene filtern
  • Lieferbasierte Autorisierung für Relay-Ereignisse (Autorisierung nach Zustellung, nicht source.platform)
  • scope_id-Wire-Key-Übernahme — plattformspezifische Scope-Terminologie entfernen

9. Google Vertex AI — Erstklassiger Provider

Vertex AI ist jetzt ein erstklassiger Provider für Gemini-Modelle über den OpenAI-kompatiblen Endpunkt von Vertex. Der entscheidende Durchbruch: Hermes erstellt und aktualisiert automatisch kurzlebige OAuth2-Access-Tokens aus deinem Service-Account-JSON oder Application Default Credentials — kein statischer API-Key nötig.

# hermes.config.yaml
providers:
  - name: vertex-gemini
    provider: vertex
    credentials: /pfad/zum/service-account.json
    model: gemini-2.5-pro
    region: us-central1

  # Oder verwende Application Default Credentials (ADC) — kein Dateipfad nötig
  - name: vertex-gemini-adc
    provider: vertex
    model: gemini-2.5-flash
    region: europe-west4

Warum das wichtig ist: Herkömmliche Custom-Provider-Setups mit Vertex scheiterten bisher immer mitten in der Sitzung, weil Tokens nach ca. 1 Stunde abliefen. Hermes übernimmt jetzt den gesamten OAuth2-Lebenszyklus — Erstellung, Aktualisierung und Wiederholung — transparent. Verweise auf dein Service-Konto und es funktioniert einfach.

Übernimmt und modernisiert den ursprünglichen PR #8427 von @slawt.

10. Messaging-Plattformen — Umfangreiche Updates

Cron-Fortsetzungen:

  • Cron-Jobs unterstützen jetzt Thread-bevorzugte Fortsetzung mit DM-Mirror-Fallback
  • Flache In-Channel-Fortsetzung für Cron in Slack
  • Gateway-Running-Prüfung warnt bei Cron-Erstellung/-Auflistung, wenn das Gateway nicht aktiv ist

Plattformspezifische Updates:

Plattform Funktion
Telegram Konfigurierbares Kommando-Menü + erhöhter Standard-Cap, damit Skills sichtbar bleiben; Rich-Draft-Vorschauen separat steuern; allgemeinen Send-Pool bei Timeout vor Wiederholung entleeren
Slack Opt-in Block-Kit-Rendering für Agent-Nachrichten; --no-assistant-Flag für Manifest-Generierung
Discord Reasoning als Subtext mit -#-Präfix darstellen; konfigurierbarer display.reasoning_style
WhatsApp Native Medienzustellung (send_video/send_voice/send_document) über Baileys-Bridge
Teams Native send_video/send_voice/send_document-Unterstützung
Signal AAC-Sprachnachricht-Remux + gemeinsame Markdown-Formatierung
iMessage Photon-Sidecar auf Spectrum-TS v8 mit Tapback-Korrelation aktualisiert
Raft Gateway-Setup-Assistent für neue Bereitstellungen

Adapter-Migration: Slack-, DingTalk-, WhatsApp-, Matrix-, Feishu-, Telegram-, WeCom-, E-Mail- und SMS-Adapter wurden alle auf das gebündelte Format migriert, für schnelleres Laden und bessere Versionierung.


Neue eingebaute Tools & Befehle

Tool / Befehl Beschreibung Verwendung
web_extract Webinhalte kürzen und speichern (ersetzt LLM-Zusammenfassung, günstiger und schneller) web_extract https://beispiel.com
/reasoning full Unbegrenzte Thinking-Tokens — hebt die Reasoning-Budget-Obergrenze für tiefgehende Analysen auf /reasoning full dann deine Anfrage
llm.oneshot One-Shot-LLM-Aufruf über Gateway-RPC — Fire-and-Forget hermes rpc llm.oneshot '{"prompt": "..."}'
project.facts Coding-Kontext-Projektinformationen über Gateway-RPC bereitstellen hermes rpc project.facts
/timestamps Nachrichten-Zeitstempel im Chat-Verlauf ein-/ausschalten /timestamps
/history Zusammensetzbare Verlaufsansicht mit Suche und Filtern /history suchbegriff
/prompt Im $EDITOR verfassen — vollständigen Markdown-Prompt schreiben, speichern und einreihen /prompt
/journey Interaktive Erinnerungs-/Fähigkeits-Zeitleiste mit In-Place-Bearbeitung/-Löschung /journey
/learn Wiederverwendbare Fähigkeiten aus Verzeichnis, URL oder Workflow destillieren /learn ./pfad
/moa One-Shot-MoA-Prompt über Standard-Preset /moa <anfrage>
/goal wait <pid> Goal-Loop auf einem Hintergrundprozess parken /goal wait 12345
ctx.profile_name Sitzungsunabhängiger Profilzugriff in Plugins ctx.profile_name
Blank Slate Minimaler Agent-Setup-Modus — alles explizit aktivieren Config: setup: blank_slate
cloudflare-temporary-deploy Optionaler Skill für schnelle Cloudflare-Deployments Skill-Installation
creative-ideation v2.1.0 Erweiterte Methodenbibliothek für kreatives Arbeiten Skill-Installation

Verbesserungen

Core Agent & Tools

  • Parallele @-Referenz-Erweiterung: mehrere @file- und @url-Referenzen werden jetzt parallel statt nacheinander aufgelöst — deutlich schneller bei mehreren Referenzen
  • Menschenlesbare Tool-Bezeichnungen: alle eingebauten Tools haben jetzt verständliche englische Beschreibungen, was die Lernkurve senkt
  • HERMES_WRITE_SAFE_ROOT: Unterstützung für mehrere erlaubte Schreibverzeichnisse — Agenten-Dateizugriffe auf genehmigte Pfade beschränken
  • Opt-in HTTP/WS-Body-Erfassung: Request-/Response-Bodies in isoliertes gui_bodies.log protokollieren (vom Teilen ausgeschlossen, nur Opt-in)
  • Pro-Reasoning-Modell-Stale-Timeout-Untergrenze: separate Timeout-Erkennung für Streaming- vs. Nicht-Streaming-LLM-Aufrufe, verhindert False Positives
  • SIGTERM→SIGKILL-Eskalation: bei Host-PID-Beendigung nach Kulanzfrist eskalieren, um Bereinigung sicherzustellen

Kompression & Sessions

  • In-Place-Verdichtung: eine einzelne Session ohne neue ID komprimieren; Standard auf true gesetzt mit Schutz-Fix
  • Backup-Erweiterung: Pre-Update-Snapshots enthalten jetzt projects.db und Kanban-Boards für vollständige Zustandssicherung

Providers & Modelle

  • Krea über verwaltetes Nous-Abonnement-Gateway verfügbar
  • Z.AI Endpunkt-Auswahl (Global/China/Coding Plan) für regionenabhängiges Routing
  • Ollama-Cloud reasoning_effort-Verdrahtung
  • Entfernte google-gemini-cli- und google-antigravity-OAuth-Provider (Konsolidierung)
  • Berücksichtige NOUS_INFERENCE_BASE_URL-Env-Override für Nous-OAuth
  • Halte Nous-Auth für inaktive Dashboard-/Gateway-Agenten frisch (verhindert Sitzungsablauf bei Inaktivität)

Kanban

  • Task-Lebenszyklus-Plugin-Hooks: claimed-, completed-, blocked-Ereignisse
  • Typisierte Blockierungsgründe mit Unblock-Loop-Breaker — verhindert endlose Blockieren/Freigeben-Zyklen
  • Handoff-Frische-Stempelung — zeichnet nach, wann die Aufgabenverantwortung zuletzt übertragen wurde

LSP

  • PowerShellEditorServices-Sprachserver hinzugefügt — PowerShell-Diagnosen jetzt verfügbar
  • mem0 v3 API + OSS-Modus + Update/Delete-Tools für die Speicherverwaltung

Web Dashboard

  • Automatische SSO-Weiterleitung bei nicht authentifiziertem Laden
  • Interaktive Auth-Setup-Anleitung bei No-Provider-Nicht-Loopback-Bindung
  • Vertrauliches Client-OIDC (client_secret) für selbst gehostete Identitätsanbieter
  • API-Key-Katalog: alle Speicher-Provider-Keys in OPTIONAL_ENV_VARS aufgelistet
  • Benutzerdefinierte .env-Keys: beliebige Umgebungsvariablen auf der Keys-Seite auflisten und hinzufügen
  • Cron-Ausführungsfelder für die Überwachung einsehbar
  • Backup-Verwaltung: Import/Erstellung/Download über die Web-UI
  • PTY-Auslagerung: Spawn/Close-Operationen vom Event-Loop entkoppelt, um Blockierung zu verhindern

Performance

  • Kaltstart-Optimierung: Gateway-Plattform-Adapter jetzt Lazy-Loaded; Config- und Plugin-Manifeste mit CSafeLoader (libyaml) statt reinem Python-YAML geparst
  • FTS5-Schreibsperren-Konflikte: Segmente zusammengeführt und indiziert, um Datenbank-Sperrkonflikte bei gleichzeitigen Schreibvorgängen zu reduzieren
  • Profil-Auflistung: Single-Pass-Alias-Map + Skill-Count-Cache + Event-Loop-Auslagerung für list_profiles — deutlich schneller auf Systemen mit vielen Profilen
  • Gateway-API-Server: konfigurierbare gleichzeitige Ausführungsobergrenze verhindert DoS-Szenarien unter Last

Sicherheit & Zuverlässigkeit

Angriffsoberflächen-Härtung

  • MCP-Config-Persistenz-Angriffsfläche gesichert — verhindert böswillige Skill-Persistenz über Sitzungen hinweg
  • Cron-base_url-Credential-Exfiltration blockiert — Cron-Jobs können keine Provider-Base-URLs mehr überschreiben, um Zugangsdaten abzufangen
  • Nicht wiederverwendbarer Sentinel für Präfix-Secrets bei Datei-Lesevorgängen — bestimmte Muster, die Secrets leaken könnten, werden erkannt und abgewiesen
  • Slack-xapp-Token-Schwärzung — App-Level-Tokens automatisch aus Logs und Diagnosen geschwärzt
  • Browser-Cloud-Metadata-Basis für alle CDP-Backends erzwungen (auch nicht-lokale)
  • Private-Network-Guard-Nachprüfung nach Navigation — verhindert Umgehung durch Weiterleitungen
  • /resume und /sessions auf Aufrufer-Herkunft beschränkt — verhindert Insecure Direct Object Reference (IDOR)-Angriffe
  • aiohttp CVE-Mindestversion auf 3.14.1 für alle Lazy-Messaging-Pfade gesetzt, mit Pin-Drift-Schutz

Cron-Zuverlässigkeitswelle

  • Fail Closed, wenn der Provider eines nicht fixierten Jobs abweicht — keine stillen Fallbacks
  • Verpasste-Grace-Jobs laufen einmal statt ewig aufgeschoben zu werden — verhindert endlose Aufholschleifen
  • Ticker-Überleben bei BaseException + Heartbeat-bewusster Status — Cron stirbt nicht stillschweigend
  • MCP-Server auf Pro-Job-Toolsets geschichtet — jeder Cron-Job bekommt die richtigen Tools
  • Model-Tool-Pfad-Schutz + Auto-Resume-Loop-Breaker — verhindert außer Kontrolle geratene Tool-Ketten

Windows-Zuverlässigkeit

  • Konsolen-Flashes bei Gateway-Operationen unterdrücken
  • Gateway-Neustarts gegen Randfälle absichern
  • cmd-npm-Shim bei PATH-Fallback bevorzugen
  • Gateway fensterlos nach GUI-Update neu starten
  • Managed Node für WhatsApp-/Desktop-Integrationen bevorzugen

Rücknahmen (innerhalb des Fensters)

  • Cron-Job-Speicherung zurück auf Pro-Profil (macht zentrale Speicherung aus #32117 + #50993 rückgängig)
  • auth.json-Klonen deaktiviert — Duplizieren von OAuth-Grants verursacht gegenseitige Sperrung
  • Windows-Terminal-Popup-PRs für Stabilitäts-Neubewertung zurückgerollt
  • prompt_caching.enabled-Toggle bis zur Neubewertung zurückgezogen

Breaking Changes

  • verify-on-stop ist standardmäßig AUS: einmalige v32-Migration; überspringt reine Doku-Änderungen; für Messaging-Oberflächen deaktiviert. Zum Aktivieren:
coding_context:
  verify_on_stop: auto
  • Entfernung der google-gemini-cli- und google-antigravity-OAuth-Provider — auf Vertex AI-Provider migrieren
  • Adapter-Migration: Messaging-Plattform-Adapter jetzt gebündelt — benutzerdefinierte Adapter-Pfade müssen möglicherweise aktualisiert werden

Upgrade

hermes update

Für Neuinstallationen besuchen Sie den Installationsleitfaden.


Vollständiges Changelog auf GitHub

← Versionshinweise