v0.6.0

Hermes Agent v0.6.0 — Das Multi-Instanz-Release


Überblick

v0.6.0 — Das Multi-Instanz-Release. Veröffentlicht am 30. März 2026. 95 Pull Requests · 16 gelöste Issues · ausgeliefert in nur 2 Tagen.

Dies ist das Release, das Hermes Agent von einem Einzelsitzungs-Assistenten in eine skalierbare Multi-Instanz-Infrastrukturkomponente verwandelt hat. Das Hauptfeature — Profile — ermöglicht es, mehrere vollständig isolierte Hermes-Instanzen aus einer einzigen Installation heraus auszuführen, jede mit eigener Konfiguration, eigenem Speicher, eigenen Sitzungen, Skills und eigenem Gateway-Dienst. Zusammen mit dem neuen MCP-Servermodus, der Docker-Container-Unterstützung und den geordneten Fallback-Provider-Ketten ist v0.6.0 die erste Version von Hermes, die für Produktionsworkloads bereit ist.

Das Release markiert auch Hermes’ Eintritt in den chinesischen Unternehmensmarkt mit nativen Feishu/Lark- und WeCom (Enterprise WeChat)-Adaptern, zusammen mit großen Upgrades für Telegram (Webhook-Modus), Slack (Multi-Workspace OAuth) und sechs weitere Messaging-Plattformen.

Wie The NextGen Tech Insider anmerkte, verwandelt diese Version “den Agenten von einem Einzelsitzungs-Assistenten in eine skalierbare Infrastrukturkomponente, die isolierte Workloads mit unterschiedlichen Speicherzuständen auf gemeinsam genutzter Hardware ausführen kann.”


Hauptfunktionen

1. Profile — Multi-Instanz Hermes

Führe mehrere isolierte Hermes-Instanzen aus derselben Installation aus. Jedes Profil erhält seine eigene Konfiguration, seinen eigenen Speicher, Sitzungen, Skills und Gateway-Dienst — vollständig isoliert, ohne Überschneidungen.

# Neues Profil erstellen
hermes profile create mein-arbeits-agent

# Alle Profile auflisten
hermes profile list

# Zu einem Profil wechseln
hermes -p mein-arbeits-agent

# Profil zur Freigabe/Sicherung exportieren
hermes profile export mein-arbeits-agent > mein-arbeits-agent.tar.gz

# Auf einem anderen Rechner importieren
hermes profile import mein-arbeits-agent.tar.gz

Wichtige Eigenschaften:

  • Token-Lock-Isolation — verhindert, dass zwei Profile dieselbe Bot-Anmeldeinformation verwenden, mit klaren Fehlermeldungen darüber, welches Profil welche Anmeldeinformation besitzt
  • Tab-Vervollständigung für Profilnamen in allen CLI-Befehlen
  • Profilbewusste Anzeigepfade — alle benutzerseitigen ~/.hermes-Pfade zeigen das korrekte Profilverzeichnis an
  • Lazy Imports verhindern ImportError während hermes update, wenn Module veralteten Bytecode zwischenspeichern

Diese Architektur macht Hermes zu einem produktionsreifen Infrastrukturwerkzeug: Führe einen Kundensupport-Agenten, einen Code-Review-Agenten und einen Recherche-Agenten gleichzeitig aus einer Installation aus, jeder mit vollständig getrenntem Speicher und separaten Anmeldeinformationen. Kein Abwägen mehr zwischen Anwendungsfällen.

2. MCP-Servermodus

Stelle Hermes-Konversationen, -Sitzungen und -Anhänge jedem MCP-kompatiblen Client zur Verfügung — Claude Desktop, Cursor, VS Code und mehr.

# MCP-Server über stdio starten (für Claude Desktop, etc.)
hermes mcp serve

# MCP-Server über Streamable HTTP starten (für Netzwerk-Clients)
hermes mcp serve --transport streamable-http --port 3000

Was MCP-Clients mit Hermes tun können:

  • Konversationsverlauf durchsuchen und einzelne Nachrichten lesen
  • Sitzungsübergreifend nach bestimmten Themen oder Code-Ausschnitten suchen
  • Anhänge verwalten (hochladen, herunterladen, auflisten)
  • Auf die vollständige Context-Engine zugreifen, die Hermes im Laufe der Zeit aufbaut

Wie MurmurCast zusammenfasste: “Der MCP-Servermodus ermöglicht es, dass Hermes-Konversationen und -Verläufe über ein standardisiertes Protokoll von anderen KI-Tools aus zugänglich sind.” Dies ist bidirektionale MCP-Integration — Hermes kann sowohl MCP-Tools von externen Servern konsumieren als auch seinen eigenen Kontext an externe MCP-Clients bereitstellen.

3. Docker-Container

Offizielles Dockerfile zum Ausführen von Hermes Agent in containerisierten Umgebungen. Unterstützt sowohl den CLI- als auch den Gateway-Modus.

# Container bauen
docker build -t hermes-agent .

# Im CLI-Modus mit per Volume gemounteter Konfiguration ausführen
docker run -it -v ~/.hermes:/root/.hermes hermes-agent

# Im Gateway-Modus ausführen
docker run -d -v ~/.hermes:/root/.hermes -p 8080:8080 hermes-agent hermes serve

Schließt #850 — eines der ältesten und am häufigsten nachgefragten Community-Features.

4. Geordnete Fallback-Provider-Kette

Konfiguriere mehrere Inferenz-Provider mit automatischem Failover. Wenn dein primärer Provider Fehler zurückgibt oder nicht erreichbar ist, versucht Hermes automatisch den nächsten Provider in der Kette.

# hermes.config.yaml
provider:
  name: openai
  model: gpt-5
  fallback_providers:
    - name: anthropic
      model: claude-sonnet-4-20250514
    - name: openrouter
      model: google/gemini-2.5-pro

Was sich dadurch ändert: Vor v0.6.0 bedeutete ein Provider-Ausfall, dass dein Agent verstummte. Jetzt degradiert Hermes elegant — der Benutzer bemerkt möglicherweise nicht einmal, dass das Failover stattgefunden hat. Dies, kombiniert mit der api_mode-Korrektur beim Provider-Wechsel (kein veralteter api_mode mehr, der 404-Fehler nach dem Provider-Wechsel verursacht), macht das Provider-Management produktionsreif.

Weitere Provider-Verbesserungen:

  • Stilles OpenRouter-Fallback gestoppt — wenn kein Provider konfiguriert ist, zeigt Hermes jetzt einen klaren Fehler an, anstatt stillschweigend zu OpenRouter zu routen
  • Gemini 3.1 Vorschaumodelle zu den OpenRouter- und Nous Portal-Katalogen hinzugefügt
  • Benutzerfreundliche 429-Ratenbegrenzungsmeldungen mit Retry-After-Countdown
  • Kuratierte Modelllisten werden bevorzugt gegenüber Live-API-Sondierung, wenn die Sondierung weniger Modelle zurückgibt

5. Feishu/Lark & WeCom — Chinesische Unternehmens-Messaging

Zwei neue erstklassige Messaging-Plattform-Adapter:

Feishu/Lark (飞书):

  • Ereignisabonnements, Nachrichtenkarten, Gruppenchat
  • Unterstützung für Bilder und Dateianhänge
  • Interaktive Karten-Callbacks
  • Volle Gateway-Adapter-Parität mit bestehenden Plattformen

WeCom / Enterprise WeChat (企业微信):

  • Unterstützung für Text-, Bild- und Sprachnachrichten
  • Gruppenchat mit Callback-Verifizierung
  • Vollständiges Nachrichtenlebenszyklus-Management
# hermes.config.yaml — Feishu-Konfigurationsbeispiel
gateway:
  platforms:
    - platform: feishu
      app_id: cli_xxxxx
      app_secret: xxxxx
      encrypt_key: xxxxx
      verification_token: xxxxx

Schließt #1788.

6. Slack Multi-Workspace OAuth

Verbinde ein einzelnes Hermes-Gateway mit mehreren Slack-Workspaces über eine OAuth-Token-Datei. Jeder Workspace erhält sein eigenes Bot-Token, das dynamisch pro eingehendem Ereignis aufgelöst wird.

# slack_oauth_tokens.json — eine Datei, mehrere Workspaces
{
  "workspaces": {
    "T01ABCDEF": "xoxb-...",
    "T02GHIJKL": "xoxb-..."
  }
}

Keine separaten Gateway-Instanzen pro Workspace mehr — ein Gateway verwaltet alle.

7. Telegram Webhook-Modus & Gruppensteuerung

Webhook-Modus — eine Alternative zum Long-Polling für Produktions-Deployments:

# Telegram-Adapter im Webhook-Modus ausführen
# Schnellere Antwortzeiten, besser hinter Reverse-Proxies
hermes serve --telegram-webhook-url https://ihre-domain.com/telegram/webhook

Gruppen-Erwähnungssteuerung — konfiguriere genau, wann der Bot in Gruppen antwortet:

gateway:
  platforms:
    - platform: telegram
      group_mention_policy: mentioned  # 'always' | 'mentioned' | Regex-Muster

Außerdem: Elegante Behandlung gelöschter Antwortziele — keine Abstürze mehr, wenn die Nachricht, auf die geantwortet wurde, gelöscht wurde (#3229).

8. Exa-Such-Backend

Füge Exa als alternatives Web-Such- und Inhaltsextraktions-Backend neben Firecrawl und DuckDuckGo hinzu.

# Exa API-Schlüssel setzen
export EXA_API_KEY=ihr-schlüssel-hier
# hermes.config.yaml
tools:
  web_search:
    preferred_backend: exa  # oder 'firecrawl', 'duckduckgo'

Exa bietet semantische Suchfunktionen, die die bestehenden Backends ergänzen, besonders nützlich für forschungsintensive Agent-Workflows.

9. Skills & Anmeldeinformationen auf Remote-Backends

Binde Skill-Verzeichnisse und Anmeldeinformationsdateien in Modal- und Docker-Container ein, sodass Remote-Terminal-Sitzungen Zugriff auf dieselben Skills und Geheimnisse wie die lokale Ausführung haben.

# hermes.config.yaml
terminal:
  remote_backend: modal  # oder 'docker'
  mount_skills: true
  mount_credentials: true

Schließt #3665 und #3433.


Neue integrierte Tools & Skills

Tool / Skill Beschreibung
Exa Search Semantisches Web-Such- und Inhaltsextraktions-Backend
MCP Dynamische Tool-Erkennung Reagiert auf notifications/tools/list_changed — erkennt neue Tools von MCP-Servern ohne Wiederverbindung
memento-flashcards Karteikartensystem mit verteilter Wiederholung (neuer Skill)
songwriting-and-ai-music Songwriting-Handwerk und KI-Musikgenerierungs-Prompts (neuer Skill)
SiYuan Note Integration mit der SiYuan-Notiz-App (neuer Skill)
Scrapling Web-Scraping-Skill mit der Scrapling-Bibliothek (neuer Skill)
one-three-one-rule Kommunikationsrahmen-Skill (neuer Skill)
Boot-md Hook Beispiel für einen integrierten Hook zum Ausführen einer BOOT.md-Datei beim Gateway-Start

Und das Plugin-System erhielt:

  • hermes plugins enable/disable <name> — Plugin-Status verwalten, ohne sie zu entfernen
  • ctx.inject_message() — Plugins können jetzt Nachrichten im Namen des Benutzers in den Konversationsstrom einfügen
  • Honcho Self-Hosted-Unterstützung — lokale Honcho-Instanzen ohne API-Schlüssel

Aktualisierungen der Messaging-Plattformen

Discord

  • Nachrichtenverarbeitungs-Reaktionen — fügt ein Reaktions-Emoji während der Verarbeitung hinzu und entfernt es nach Abschluss (visuelles Feedback in Kanälen)
  • DISCORD_IGNORE_NO_MENTION — überspringt Nachrichten, die andere Benutzer/Bots @erwähnen, aber nicht Hermes
  • Aufräumen von verzögertem “thinking…” — entfernt den “thinking…”-Indikator ordnungsgemäß nach Abschluss von Slash-Befehlen

WhatsApp

  • Persistente aiohttp-Sitzung — Wiederverwendung von HTTP-Verbindungen über Anfragen hinweg
  • LID-Telefon-Alias-Auflösung — korrekte Übereinstimmung von Linked ID- und Telefonnummernformaten in Zulassungslisten
  • Antwortpräfix im Bot-Modus überspringen — sauberere Nachrichtenformatierung

Matrix

  • Native Sprachnachrichten über MSC3245 — sendet Sprachnachrichten als ordnungsgemäße Matrix-Sprachereignisse statt als Dateianhänge

Mattermost

  • Konfigurierbares Erwähnungsverhalten — antwortet auf Nachrichten ohne @Erwähnung

Signal

  • URL-Kodierung von Telefonnummern und Korrektur des Anhang-RPC-Parameters — behebt Zustellungsfehler bei bestimmten Nummernformaten

Email

  • SMTP/IMAP-Verbindungen bei Fehlern schließen — verhindert Verbindungslecks in Fehlerszenarien

Gateway-Kernverbesserungen

  • Atomare Konfigurationsschreibvorgänge — verhindert Datenverlust bei Gateway-Abstürzen
  • Home-Channel-Umgebungsvariablen-Überschreibungen — konsistent angewendete Umgebungsvariablen-Überschreibungen
  • print() durch Logger ersetzen — BasePlatformAdapter verwendet jetzt ordnungsgemäße Protokollierung statt print-Anweisungen
  • Cron-Zustellungslabels — menschenlesbare Zustellungslabels über das Kanalverzeichnis auflösen
  • Cron [SILENT]-Verschärfung — verhindert, dass Agenten Berichte mit [SILENT] präfixen, um die Zustellung zu unterdrücken
  • Medienzustellung in Hintergrundaufgaben und Korrekturen für Vision-Download-Timeouts

CLI & UX-Verbesserungen

  • Konfigurierbare Tool-Vorschaulänge — zeigt standardmäßig vollständige Dateipfade statt abgeschnittener Pfade
  • Tool-Token-Kontextanzeigehermes tools-Checkliste zeigt jetzt geschätzte Token-Kosten pro Toolset
  • Sitzungsexport-Stdout-Unterstützung — exportiert Sitzungen nach stdout mit - für Piping
  • Konfigurierbare Genehmigungs-Timeouts — legt fest, wie lange Genehmigungsaufforderungen für gefährliche Befehle warten, bevor sie automatisch abgelehnt werden
  • Pycache während Update bereinigen — verhindert veralteten Bytecode-ImportError nach hermes update
  • Automatische Installation von matrix-nio während hermes setup, wenn Matrix ausgewählt ist
  • Lazy-initialisierte Tools werden gelb im Banner angezeigt statt rot — reduziert Fehlalarme über “fehlende” Tools
  • Verschiedene TTY- und Statusleisten-Korrekturen für eine reibungslosere Terminal-Erfahrung

Sicherheit & Zuverlässigkeit

Sicherheitshärtung

  • Verstärkte Erkennung gefährlicher Befehle — erweiterte Mustererkennung für riskante Shell-Befehle und Schutz sensibler Pfade (/etc/, /boot/, docker.sock)
  • Schreibprüfungen für sensible Pfade im Genehmigungssystem — erkennt Schreibvorgänge in Systemkonfigurationsdateien über Datei-Tools
  • Erweiterung der Geheimnis-Schwärzung — deckt jetzt ElevenLabs-, Tavily- und Exa-API-Schlüssel ab
  • Ablehnung von Nicht-Bilddateien für Vision — weist Nicht-Bilddateien zurück, die an die Vision-Analyse übergeben werden, um Informationsweitergabe zu verhindern
  • Blockierung von Kategorie-Pfad-Traversal — verhindert ../-Angriffe in Skill-Kategorienamen

Zuverlässigkeit

  • Atomare config.yaml-Schreibvorgänge — verhindert Datenverlust bei Gateway-Abstürzen
  • Pycache bei Update bereinigen — verhindert veralteten Bytecode-ImportError
  • Terminal-Timeout bewahrt Teilausgabe — keine verlorene Befehlsausgabe mehr bei Timeout
  • terminalbench2 aus Patch-Korruption wiederhergestellt — Datei wiederhergestellt, die durch die Geheimnis-Schwärzung des Patch-Tools beschädigt wurde

Bemerkenswerte Fehlerbehebungen

  • Veralteter api_mode bei Provider-Wechsel — Wechsel des Providers über hermes model löscht jetzt korrekt veralteten api_mode und behebt 404-Fehler für Provider mit Anthropic-kompatiblen Endpunkten (#3685)
  • Gelöschte Antwortziele in Telegram — behandelt Antworten auf gelöschte Nachrichten elegant, statt abzustürzen (#3229)
  • Discord “thinking…”-Persistenz — bereinigt verzögerte Antwortindikatoren ordnungsgemäß (#3595)
  • WhatsApp LID-Telefon-Aliase — behebt Fehler bei der Zulassungslisten-Übereinstimmung mit Linked ID-Format
  • Signal URL-kodierte Telefonnummern — behebt Zustellungsfehler bei bestimmten Formaten
  • Email-Verbindungslecks — schließt SMTP/IMAP-Verbindungen bei Fehlern ordnungsgemäß
  • Tool-Schema KeyError ‘name’ — stellt sicher, dass das name-Feld immer in Tool-Definitionen vorhanden ist (#3729)
  • _safe_print ValueError — keine Gateway-Thread-Abstürze mehr durch geschlossenes stdout (#3534)

Upgrade

hermes update

Für Neuinstallationen besuche den Installationsleitfaden.


Vollständiges Changelog auf GitHub

← Hermes Agent Changelog