v0.13.0

Hermes Agent v0.13.0 — Das Tenacity-Release


Überblick

v0.13.0 — Das Tenacity-Release. Veröffentlicht am 7. Mai 2026. 864 Commits · 588 gemergte PRs · 829 geänderte Dateien · 128.366 Zeilen hinzugefügt · 282 geschlossene Issues (13 P0, 36 P1) · 295 Community-Mitwirkende (einschließlich Co-Autoren).

Das Tenacity-Release beantwortet eine Frage mit drei verschiedenen Mechanismen: Wie stellt ein Agent sicher, dass er zu Ende bringt, was er angefangen hat? Vor v0.13 war Hermes intelligent, aber nicht ausdauernd — er konnte eine mehrschrittige Aufgabe beginnen, auf ein Hindernis stoßen und dann stillschweigend abdriften oder sterben. v0.13 liefert drei ineinandergreifende Lösungen: langlebiges Multi-Agent-Kanban (Task-Boards mit Heartbeat, Zombie-Erkennung und Halluzinationswiederherstellung), /goal (die Ralph-Schleife — hält den Agenten über mehrere Turns hinweg auf ein Ziel fokussiert) und Checkpoints v2 (Zustandspersistenz mit echtem Pruning neu geschrieben). Zusammen machen sie Hermes zum ersten Open-Source-Agent-Framework mit eingebauten Abschlussgarantien.

Dies ist auch das größte Sicherheitsrelease in der Geschichte des Projekts — 8 geschlossene P0-Lücken in einem einzigen Release. Redaction ist jetzt standardmäßig EIN. Discord-Rollen-Allowlists sind gildenbezogen. WhatsApp lehnt Fremde standardmäßig ab. TOCTOU-Fenster in auth.json und MCP OAuth werden geschlossen. Die Angriffsfläche des Agenten schrumpft drastisch, während seine Reichweite wächst: Google Chat tritt als 20. Messaging-Plattform bei, Provider werden zu einer steckbaren Schnittstelle und CLI sowie Gateway sprechen jetzt sieben Sprachen.


Hauptfunktionen

1. Multi-Agent-Kanban — Delegiere an ein KI-Team, das wirklich fertig wird

Das Herzstück von v0.13. Kanban verwandelt Hermes in ein langlebiges Multi-Agent-Task-Board. Erstelle ein Board, lege Aufgaben darauf ab und lass mehrere Hermes-Worker sie aufnehmen, übergeben und abschließen. Die Infrastruktur ist das Entscheidende: Heartbeats, Reclaim bei Timeout, Zombie-Erkennung, Wiederholungsbudgets pro Aufgabe, automatische Blockierung bei unvollständigem Beenden und eine Halluzinations-Prüfschranke.

Ein Kanban-Board erstellen und verwalten:

# Ein neues Board erstellen und dorthin wechseln
hermes kanban boards create projekt-a --name "Projekt A" --switch

# Aufgaben hinzufügen
hermes kanban create "OAuth-Flow implementieren" \
  --priority 1 \
  --body "OAuth 2.0 mit PKCE-Unterstützung zum Auth-Service hinzufügen"

hermes kanban create "Integrationstests schreiben" \
  --priority 2 \
  --body "Testabdeckung für alle Auth-Endpunkte"

# Alle Aufgaben auflisten
hermes kanban list

# Board-Statistiken anzeigen
hermes kanban stats

Wie die Haltbarkeitsmechanik funktioniert:

Wenn ein Worker eine Aufgabe übernimmt, beginnt er damit, Heartbeats zu senden. Falls die Heartbeats aussetzen (Absturz, Netzwerkverlust, OOM), reclaimed ein anderer Worker die Aufgabe nach einer konfigurierbaren Zeitspanne. Die Zombie-Erkennung identifiziert Worker, die lebendig erscheinen, aber keinen Fortschritt machen — sie werden als tot markiert und ihre Aufgaben werden neu verteilt. Schlägt eine Aufgabe N-mal hintereinander fehl, wird sie durch das Wiederholungsbudget in eine menschliche Prüfspur verschoben, anstatt endlos zu schleifen. Worker, die beendet werden, ohne ihre aktuelle Aufgabe abzuschließen, werden automatisch blockiert, um stillschweigendes Aufgeben zu verhindern.

Die Halluzinations-Prüfschranke macht das Ganze produktionsreif und nicht nur zu einer Demo. Wenn ein Worker behauptet, eine Aufgabe abgeschlossen zu haben, überprüft das System die Behauptung, bevor es sie akzeptiert — es sucht nach Belegen, dass tatsächlich Arbeit geleistet wurde, und nicht nur eine Behauptung aufgestellt wurde.

# hermes.config.yaml — Kanban-Worker-Profil
kanban:
  board: projekt-a
  worker:
    max_spawn: 5              # bis zu 5 gleichzeitige Worker
    heartbeat_interval: 30s
    reclaim_timeout: 120s     # Zeit bis eine inaktive Aufgabe reclaimed wird
    max_retries: 3            # Standard-Wiederholungsbudget pro Aufgabe
    auto_block_on_exit: true  # unvollständige Aufgaben beim Beenden blockieren

Du kannst auch Wiederholungen pro Aufgabe überschreiben für Aufgaben, die mehr (oder weniger) Versuche benötigen:

hermes kanban create "Heikle Datenmigration" --max-retries 1
hermes kanban create "Brute-Force-Suchauftrag" --max-retries 10

Unter der Haube umfasst das Kanban-System:

  • Multi-Projekt-Boards — eine Hermes-Installation, viele unabhängige Kanbans
  • Atomare Zustandsschreibvorgänge — keine teilweise Board-Korruption bei Abstürzen
  • Plattformbezogene Home-Channel-Benachrichtigungen — werde in Telegram, Discord oder Slack benachrichtigt, wenn Aufgaben ihren Status ändern
  • Eine generische Diagnose-Engine für Task-Notrufsignale — Worker können melden: „Ich hänge fest, hier ist der Grund“
  • Dashboard-Integration — Echtzeit-Board-Ansicht, Inline-Aufgabenerstellung, Workspace- und Pfad-Eingaben

2. /goal — Der Agent vergisst nicht, was du ihm aufgetragen hast

Die Ralph-Schleife, jetzt ein erstklassiges Sprachelement. /goal fixiert den Agenten auf ein Ziel und hält ihn über mehrere Turns hinweg darauf ausgerichtet. Versucht der Nutzer, das Gespräch abzulenken, erkennt der Agent den Umweg und kehrt zum Ziel zurück. Schlägt ein Tool fehl, findet er einen anderen Weg. Dauert die Session Stunden, bleibt das Ziel fest verankert.

# Ein persistentes Ziel setzen
/goal "Recherchiere die Top-5-CRM-Tools, vergleiche ihre Preise und fasse die beste Wahl für ein 50-Personen-Startup zusammen"

# Der Agent bleibt über alle Turns hinweg darauf fokussiert.
# Du kannst unabhängige Fragen stellen — er antwortet und kehrt dann zum Ziel zurück.

Das /goal-System nutzt ein Judge-Modell, um zu bewerten, ob das Ziel erreicht ist. Der Judge läuft nach jedem Turn und bewertet den Fortschritt im Verhältnis zum erklärten Ziel. Der Agent darf Umwege machen (Nebenaufgaben, Klärungen, Tool-Fehler), kann das Ziel aber nicht dauerhaft aufgeben, bis der Judge es für abgeschlossen erklärt.

# Zielstatus jederzeit prüfen
/goal status

# Pausieren und fortsetzen
/goal pause
/goal resume

# Löschen und ein neues setzen
/goal clear

/goal harmoniert mit /subgoal (erscheint in v0.14.0), um unterwegs Erfolgskriterien hinzuzufügen. Zusammen nähern sie sich dem an, was ein traditioneller Projektplan leistet — ein Ziel plus schrittweise Verfeinerungen.

3. Checkpoints v2 — Zustandspersistenz neu geschrieben

Das alte Checkpoint-System sammelte verwaiste Shadow-Repos an, hatte kein echtes Pruning und wuchs unbegrenzt. Checkpoints v2 ist eine gründliche Neuentwicklung:

  • Single-Store-Architektur — kein verstreuter Zustand mehr über verschiedene Verzeichnisse
  • Echtes Pruning — alte Checkpoints werden tatsächlich gelöscht, mit konfigurierbarer Aufbewahrungsdauer
  • Festplatten-Schutzschranken — verweigert das Checkpointing, wenn der Speicherplatz kritisch niedrig ist
  • Keine verwaisten Repos — jedes Git-Shadow hat einen nachverfolgten Lebenszyklus

In Kombination mit der neuen Gateway-Auto-Resume-Funktion überlebt der Agent Neustarts jetzt transparent. Gateway stürzt mitten im Agentenlauf ab? Die Konversation wird fortgesetzt. /update startet den Prozess neu? Genau da, wo du aufgehört hast. Quelldateien werden neu geladen? Die Session macht weiter.

4. Sicherheitsoffensive — 8 geschlossene P0-Lücken

Dies ist das am stärksten sicherheitsgehärtete Release in der Geschichte von Hermes. Acht kritische Schwachstellen in einem einzigen Release geschlossen:

# Behebung Schweregrad Änderung
1 Redaction standardmäßig EIN P0 Agent-Ausgabe redigiert sensible Inhalte automatisch — du aktivierst es nicht, es ist an
2 Discord-Rollen-Allowlists gildenbezogen CVSS 8.1 Zuvor konnten Rollen aus einer Gilde den Zugriff in einer anderen autorisieren (gildenübergreifende DM-Umgehung)
3 WhatsApp lehnt Fremde ab P0 Neue WhatsApp-Verbindungen werden blockiert, sofern nicht explizit freigegeben; antwortet niemals im Selbst-Chat
4 MCP-OAuth-TOCTOU geschlossen P0 Time-of-Check-to-Time-of-Use-Fenster beim Speichern von OAuth-Anmeldedaten geschlossen
5 auth.json-TOCTOU geschlossen P0 Schreibvorgänge für Anmeldedaten gegen Race Conditions gehärtet
6 Browser-Cloud-Metadaten-SSRF-Untergrenze P0 Hybrid-Routing erzwingt Cloud-Metadaten-Endpunkt-Blockierung selbst bei nicht-lokalen CDP-Backends
7 Cron-Prompt-Injection-Scans P0 Zusammengestellte Skill-Inhalte werden vor der Cron-Ausführung auf Prompt-Injection gescannt
8 hermes debug share Redaction P0 Protokollinhalte werden zum Zeitpunkt des Uploads redigiert, nicht danach

Plus weitere Härtungen:

  • .env, auth.json und state.db werden mit 0600-Berechtigungen wiederhergestellt — nur Besitzer darf lesen/schreiben
  • SRI-Integrität für Dashboard-Plugin-Skripte
  • Meet-Node-Server nur an localhost gebunden, Token-Datei auf Besitzer-Lesen beschränkt
  • Ziel für sensible Schreibvorgänge auf Shell-RC-Dateien und Anmeldedateien erweitert
  • YOLO-Modus gegen Quoted-Bool-String-Parsing gehärtet
  • OSV-Scanner-CI + Dependabot zur Überwachung von Abhängigkeitsschwachstellen

5. Google Chat — Die 20. Messaging-Plattform

Hermes unterstützt jetzt nativ 20 Messaging-Plattformen, mit Google Chat als neuester Ergänzung. Die vollständige Liste:

Telegram, Discord, Slack, WhatsApp, Signal, DingTalk, SMS (Twilio), Mattermost, Matrix, Webhook, E-Mail (IMAP/SMTP), Home Assistant, Feishu/Lark, WeCom, Weixin, BlueBubbles (iMessage), QQBot, Yuanbao, Microsoft Teams, Google Chat.

Alle 20 Plattformen laufen über einen Gateway-Prozess mit einheitlichem Session-Management, Neustartbehandlung und Thread-Routing. Die Gateway-Architektur umfasst jetzt generische Plattform-Plugin-Hooksenv_enablement_fn und cron_deliver_env_var — sodass Drittanbieter-Adapter ohne Eingriffe in den Kern eingebunden werden können. IRC und Teams wurden bereits auf diese Schnittstelle migriert.

Neue plattformübergreifende Fähigkeiten in diesem Release:

  • allowed_channels / allowed_chats / allowed_rooms Konfiguration für Slack, Telegram, Mattermost, Matrix und DingTalk — schränkt ein, mit welchen Kanälen der Agent interagieren darf
  • gateway_restart_notification-Flag pro Plattform — steuert, ob jede Plattform eine „Ich bin zurück“-Nachricht nach einem Neustart erhält
  • busy_ack_enabled Konfiguration — unterdrückt „Ich arbeite daran“-Bestätigungsnachrichten
  • Automatisches Löschen von Slash-Command-Systemmeldungen nach TTL
  • [[as_document]]-Direktive — Skills können das Gateway zwingen, die Ausgabe auf Plattformen, die dies unterstützen, als Dokument bereitzustellen

6. Provider werden zur steckbaren Schnittstelle

Inference-Provider sind nicht länger fest im Kern verankert. Eine neue ProviderProfile-ABC und das Verzeichnis plugins/model-providers/ machen sie zu einer erstklassigen Plugin-Schnittstelle:

# plugins/model-providers/mein_provider.py
from hermes.abc import ProviderProfile

class MeinProvider(ProviderProfile):
    name = "mein-benutzerdefinierter-provider"
    display_name = "Mein benutzerdefinierter Provider"

    def list_models(self) -> list[ModelInfo]:
        ...
    
    def chat_completion(self, request: ChatRequest) -> ChatResponse:
        ...

Provider-Plugins werden einfach ins Verzeichnis gelegt und erscheinen dann im Modell-Auswahlmenü neben OpenAI, Anthropic und den eingebauten Providern. Keine Änderungen am Kerncode erforderlich.

Neue Modelle in diesem Release:

Modell Provider Anmerkungen
deepseek/deepseek-v4-pro OpenRouter + Nous Portal Neuestes DeepSeek-Flaggschiff
x-ai/grok-4.3 OpenRouter + Nous Portal xAIs neuestes Modell
openrouter/owl-alpha OpenRouter Kostenloses Kontingent
tencent/hy3-preview OpenRouter Kostenpflichtige Route
Arcee Trinity Large Thinking OpenRouter Temperatur- + Komprimierungs-Overrides

OpenRouter Response Caching wird jetzt für Modelle unterstützt, die dies bereitstellen — reduziert Kosten bei wiederholtem Kontext.

Nous OAuth bleibt jetzt profilübergreifend über einen geteilten Token-Speicher erhalten: einmal anmelden, jedes Profil erbt die Session. Keine erneute Authentifizierung für jedes Profil mehr.

7. Internationalisierung — 7 Locales

Hermes spricht jetzt Chinesisch, Japanisch, Deutsch, Spanisch, Französisch, Ukrainisch und Türkisch — sowie Englisch. Statische Gateway-Meldungen (CLI-Hilfetexte, Agent-Status, Fehlermeldungen) sind vollständig übersetzt. Die Dokumentationsseite erhält eine chinesische (zh-Hans) Locale.

# hermes.config.yaml
display:
  language: de  # oder zh, ja, es, fr, uk, tr

8. Video & Sprache — Sehen und Sprechen

video_analyze verleiht Hermes natives Videoverständnis auf Gemini und kompatiblen multimodalen Modellen:

# Ein Video aus einer Datei analysieren
hermes run "Sieh dir meeting-aufzeichnung.mp4 an und fasse die getroffenen Entscheidungen zusammen"

# Von einer URL
hermes run "Analysiere https://beispiel.com/demo.mp4 — welcher Workflow wird gezeigt?"

xAI Custom Voices erscheint als TTS-Provider mit Voice-Cloning-Unterstützung. Nimm eine Sprachprobe auf und Hermes wird Antworten in deiner Stimme sprechen — oder in jeder beliebigen Stimme, die du bereitstellst.

9. Delta-Linting — Der Agent prüft seine eigenen Ausgaben

Nach jeder write_file- oder patch-Operation führt Hermes jetzt In-Process-Linter für Python, JSON, YAML und TOML aus. Syntaxfehler werden sofort gemeldet, anstatt downstream durchgeschleift zu werden:

WRITE src/auth.py
  ✓ Syntax OK (Python 3.12)
  ✓ Import-Prüfung bestanden

WRITE config.json
  ✗ Syntaxfehler: Unerwartetes Token in Zeile 14, Spalte 3

Kein Entdecken von defekter Syntax zehn Turns später mehr, wenn du versuchst, den Code auszuführen.


Neue integrierte Tools & Befehle

Tool / Befehl Beschreibung Verwendung
/goal Persistentes Goal-Tracking über mehrere Turns (Ralph-Schleife) /goal "Recherchiere X und fasse zusammen"
/goal status Aktuellen Zielfortschritt prüfen /goal status
/goal pause / /goal resume Zielverfolgung pausieren oder fortsetzen /goal pause
/goal clear Aktuelles Ziel löschen /goal clear
video_analyze Natives Videoverständnis auf multimodalen Modellen video_analyze pfad/zum/video.mp4
hermes curator archive Kuratierte Skills archivieren hermes curator archive
hermes curator prune Alte/konsolidierte Curator-Einträge bereinigen hermes curator prune
hermes curator list-archived Alle archivierten Einträge auflisten hermes curator list-archived
[[as_document]] Skill-Direktive — Ausgabe als Dokument bereitstellen [[as_document]] im Skill-Frontmatter hinzufügen
transform_llm_output Plugin-Hook — LLM-Ausgabe umformen/filtern Im Plugin implementieren
X-Hermes-Session-Key API-Header für stabile Session-Memory-Zuordnung Via HTTP-Header übergeben
no_agent Cron-Modus Skript-only-Watchdog — Skripte ohne Agent ausführen Setze no_agent: true in der Cron-Job-Konfiguration
OpenRouter Cache Control Explizites Caching für unterstützte Modelle Via cache: true in der Provider-Konfiguration

Verbesserungen

Kern-Agent & Konversation

  • [[as_document]]-Skill-Direktive — Skills können das Gateway zwingen, die Ausgabe als herunterladbares Dokument statt als Inline-Text bereitzustellen
  • transform_llm_output-Plugin-Hook — neuer Lifecycle-Hook, mit dem Plugins die LLM-Ausgabe umformen oder filtern können, bevor sie in die Konversation gelangt; nützlich für Kontextfenster-Reduzierer und Inhaltsfilter
  • Anzahl der Kontextkomprimierungen in der Statusleiste (CLI + TUI) — sehe, wie oft der Kontext bereits komprimiert wurde
  • Isolierter get_tool_definitions-Cache — dedupliziert LCM-Injection und vermeidet redundante Tool-Schema-Abfragen
  • Warnung-zuerst-Tool-Call-Schleifen-Schutz — der Agent warnt, bevor er in endlose Tool-Schleifen gerät, anstatt stillschweigend zu kreisen
  • Permanente Leerantwort-Schleifen durchbrechen — verwaiste Tool-Enden verursachen keine endlosen Leerantwort-Zyklen mehr
  • ContextVars an gleichzeitige Tool-Worker-Threads weitergegeben
  • Selbstverbesserungs-Prüfzusammenfassungen in CLI, TUI und Gateway sichtbar gemacht
  • Token-Schätzungen umfassen jetzt System-Prompt + Tool-Schemas für präzise Komprimierungsauslöser

Plattform-Allowlists

  • allowed_channels (Slack), allowed_chats (Telegram), allowed_rooms (Mattermost, Matrix) und allowed_robots (DingTalk) — schränkt Agent-Interaktion auf bestimmte Kanäle ein
  • gateway_restart_notification pro Plattform — granulare Kontrolle über Nachrichten nach Neustarts
  • busy_ack_enabled — unterdrückt „Ich arbeite daran“-Bestätigungsnachrichten
  • Automatische Bereinigung temporärer Fortschritts-Bubbles

Session-Haltbarkeit

  • Gateway nimmt unterbrochene Sessions nach Neustart automatisch wieder auf — keine verlorenen Konversationen
  • Ausstehende Update-Aufforderungen über Neustarts hinweg erhalten
  • Home-Channel-Thread-Ziele über Neustart-Benachrichtigungen hinweg erhalten
  • Thread-Routing aus zwischengespeicherten Live-Session-Quellen erhalten
  • Assistant-Metadaten beim Verzweigen von Sessions erhalten
  • Dokumenttyp beim Zusammenführen von Warteschlangen-Ereignissen erhalten

Curator (aus v0.12, in v0.13 ausgereift)

  • hermes curator archive — kuratierte Einträge zur Langzeitspeicherung archivieren
  • hermes curator prune — alte, konsolidierte oder verwaiste Einträge bereinigen
  • hermes curator list-archived — archivierte Einträge anzeigen
  • Synchroner manueller hermes curator run — Ergebnisse sofort sehen, ohne Polling
  • Vor dem Überschreiben von gebündelten und Hub-Skills geschützt

MCP (Model Context Protocol)

  • SSE-Transport mit OAuth-Weiterleitung und erhöhtem sse_read_timeout
  • Wiederholungsversuche bei veralteten Pipe-Transporten als Session-abgelaufen (automatische Wiederverbindung)
  • Bild-Tool-Ergebnisse erscheinen als MEDIA-Tags, statt stillschweigend verworfen zu werden
  • Periodischer Keepalive bei langlebigen Lifecycle-Wartevorgängen
  • Automatische Wiederverbindung bei beendeten Sessions
  • Defensive numerische Tool-Arg-Koerzition in mcp_serve
  • Utility-Stubs abhängig von vom Server beworbenen Fähigkeiten

Kanban-Dashboard

  • Workspace-Art + Pfad-Eingaben bei der Inline-Aufgabenerstellung
  • Benachrichtigungs-Umschalter pro Plattform für Home-Channel-Benachrichtigungen
  • Mehrzeiliges Textfeld für Aufgabentitel
  • Boards filtern nach ausgewähltem Mandanten
  • Dashboard-Board-Pin maßgeblich gegenüber der aktuellen Server-Datei

QQBot

  • Native Genehmigungs-Keyboards — Inline-Genehmigen/Ablehnen-Schaltflächen für Tool-Autorisierung
  • Aufgeteilter Upload für große Dateien
  • Unterstützung für zitierte Anhänge

TUI & CLI

  • 100 neue CLI-Starttipps zu Cron, Kanban, Curator, Plugins und weniger bekannten Flags
  • /model-Auswahl entspricht hermes model mit Inline-Auth für alle Provider
  • Einklappbare Abschnitte im Startbanner (Skills, System-Prompt, MCP)
  • /new akzeptiert optionalen Session-Namen: /new meine-refactor-session
  • hermes update --yes/-y zum Überspringen interaktiver Eingabeaufforderungen

Dashboard

  • Plugins-Seite — verwalten, aktivieren/deaktivieren und Auth-Status für alle Plugins prüfen
  • Profilverwaltungsseite — Profile über die Web-Oberfläche erstellen, bearbeiten und löschen
  • Interaktive Spaltensortierung in Analysetabellen
  • default-large-Theme mit 18px Basisschriftgröße
  • Reverse-Proxy-Unterstützung via X-Forwarded-Prefix-Header
  • Start als Nebenprozess via HERMES_DASHBOARD=1 in Docker

Web-Tools

  • SearXNG wird als natives Search-Only-Backend ausgeliefert
  • Backend-Auswahl pro Fähigkeit — wähle verschiedene Backends für Suche vs. Extraktion vs. Browsen

ACP (VS Code / Zed / JetBrains)

  • /steer Slash-Befehl — den laufenden Agenten steuern
  • /queue Slash-Befehl — Folgeaufgaben in die Warteschlange stellen
  • Atomare Session-Persistenz via replace_messages
  • Assistant-Reasoning-Metadaten über Session-Persistenz hinweg erhalten
  • Windows-cwd-Übersetzung für WSL-Sessions

Sicherheit & Zuverlässigkeit

Kritische Fehlerbehebungen

  • CLI-Absturz beim Start — Invalid key 'c-S-c' (P0): prompt_toolkit unterstützt den Shift-Modifikator nicht; Tastenkombination entfernt
  • CLOSE_WAIT-fd-Leck-Audit: httpx-Keepalive + WhatsApp-aiohttp-Leck + Feishu-Hygiene — alles behoben
  • Gateway erstellt AIAgent mit leerem OpenRouter-API-Key, wenn OPENROUTER_API_KEY fehlt — Fallback-Provider werden jetzt korrekt berücksichtigt
  • Hintergrund-Prüfung + Curator vor dem Überschreiben von gebündelten/Hub-Skills geschützt
  • TUI-Komprimierungs-Fortsetzungs-Geistersessions mit unvollständigen Metadaten — behoben
  • hermes mcp add startet stillschweigend den Chat, statt den MCP-Server zu registrieren — behoben
  • Weitergabe der Hintergrund-Prüfungs-Agent-Runtime — Provider/Modell/Anmeldedaten werden jetzt tatsächlich vom Eltern-Agenten geerbt
  • Eingehende Dokument-Host-Pfade in Container-Pfade für Docker-Backend übersetzt
  • Matrix-Gateway-Race-Condition zwischen Auto-Redaction und Nachrichtenzustellung bei Hochgeschwindigkeitsmodellen — behoben
  • /new während einer aktiven Agent-Session sendet nie eine Antwort auf Telegram — behoben
  • Config.yaml hat Vorrang vor .env bei Agent/Display/Timezone-Einstellungen
  • Git-HEAD-SHA wird für die Veraltet-Code-Prüfung verwendet, nicht Datei-mtimes
  • Plan-Service-Stopps werden ohne falsche Fatalfehler behandelt
  • Automatischer Neustart von Quelldateien, wenn Dateien sich außerhalb des Gateways ändern

WhatsApp-Härtung

Zusätzlich zur P0-Fremdenabweisung:

  • Home-Channel aus Env-Overrides laden
  • Niemals im Selbst-Chat antworten (verhindert Schleifenverstärkung)

Plattform-Zuverlässigkeit

  • Gateway reset-failed vor jedem Fallback-Neustart — verhindert gestrandete Gateway-Zustände
  • Atomare Neustart-Marker + Windows-Runtime-Lock-Offset
  • Shutdown- + Neustart-Hygiene — Drain-Timeout, False-Fatal, Erfolgsprotokoll
  • Vorfahren-PIDs vom Gateway-Prozess-Scan ausgeschlossen
  • Quick-Command-Alias-Dispatch vor Built-Ins verschoben (verhindert versehentliches Überschreiben)
  • Andere Profile in gateway status angezeigt, um Verwirrung zu vermeiden

Dateisicherheit

  • .env / auth.json / state.db mit 0600-Berechtigungen wiederherstellen
  • Meet-Node-Server nur an localhost gebunden
  • Token-Datei auf Besitzer-Lesen beschränkt
  • Ziel für sensible Schreibvorgänge auf Shell-RC-Dateien und Anmeldedateien erweitert

Upgrade

hermes update

Für Neuinstallationen besuche die Installationsanleitung.


Vollständiges Changelog auf GitHub

← Hermes Agent Changelog