v0.15.0

Hermes Agent v0.15.0 — The Velocity Release (Das Tempo-Release)


Überblick

v0.15.0 — The Velocity Release. Veröffentlicht am 28. Mai 2026. 1.302 Commits · 747 gemergte PRs · 1.746 geänderte Dateien · 282.712 Einfügungen · 36.699 Löschungen · über 560 geschlossene Issues (15 P0, 65 P1, 19 mit Sicherheits-Tag) · 321 Community-Mitwirkende.

Dies ist das Release, mit dem Hermes dramatisch schneller wurde — beim Starten, beim Ausführen, beim Bereitstellen von Arbeit und beim Wachsen. Die 16.083 Zeilen lange Datei run_agent.py schrumpfte auf 3.821 (-76 %), verteilt auf 14 zusammenhängende agent/*-Module. Kanban entwickelte sich von einem Task-Board zu einer echten Multi-Agent-Plattform: automatische Orchestrator-Dekomposition, Swarm-Topologie, geplante Aufgaben, Worktree-pro-Task, modellspezifische Task-Overrides — 104 PRs von Anfang bis Ende. session_search wurde von Grund auf neu aufgebaut und ist jetzt sofort und kostenlos. Promptware-Abwehr schützt vor Angriffen der Brainworm-Klasse. Bitwarden Secrets Manager ersetzt jeden anbieterspezifischen API-Schlüssel durch ein einziges Bootstrap-Token. Zwei neue image_gen-Provider, Skill-Bundles, ntfy als 23. Messaging-Plattform und eine tiefgreifende xAI-Integrationsrunde runden eines der ambitioniertesten Releases ab.


Wichtige Funktionen

1. Das große Refactoring — run_agent.py schrumpft von 16k auf 3,8k Zeilen

Dies ist die technische Hauptgeschichte dieses Releases. Die Datei im Herzen von Hermes — die Agent-Conversation-Loop — wurde von 16.083 auf 3.821 Zeilen reduziert (-76 %). Der extrahierte Code wurde auf 14 zusammenhängende Module im Verzeichnis agent/ verteilt. Selbst die Funktion run_conversation allein umfasste vor dem Refactoring 3.877 Zeilen.

Was zählt, ist die Auswirkung: Jede Extraktion behält einen schlanken Forwarder auf AIAgent, jeder Test-Patch-Pfad bleibt erhalten und jeder externe Aufrufer bleibt kompatibel. Die Datei, die 90 Sekunden zum Laden im Editor brauchte, öffnet sich jetzt in einem Augenblick. Plugin-Autoren können die Codebasis endlich mit grep durchsuchen. Die zukünftige Hermes-Entwicklung wird schneller.

# Die Codebasis ist jetzt navigierbar — erkunde die Agent-Interna:
ls agent/
# agent/loop.py        agent/conversation.py  agent/tools.py
# agent/memory.py      agent/review.py        agent/compression.py
# ... und 8 weitere zusammenhängende Module

2. Kanban wird zu einer echten Multi-Agent-Plattform

104 PRs verwandelten Kanban von einem Task-Board in eine produktionsreife Multi-Agent-Orchestrierungsebene. Hier ist alles, was sich geändert hat:

Orchestrierung & Verteilung:

  • Automatische Dekomposition beim Triage — eine Aufgabe ablegen, der Orchestrator zerlegt sie in einen Baum von Unteraufgaben. Keine manuelle Planung der Dekomposition mehr nötig.
  • Swarm-Topologie mit einem Befehlhermes kanban swarm erstellt einen vollständigen Swarm-v1-Graphen: Root → parallele Worker → Gated-Verifier → Gated-Synthesizer, alle verbunden über ein gemeinsames Blackboard.
  • Review-Agenten werden aus der Review-Spalte gestartet — abgeschlossene Arbeit erhält eine automatische Überprüfung vor der Fertigstellung.
# Erstelle eine vollständige Swarm-Topologie für komplexe Aufgaben
hermes kanban swarm --title "Build the API"

# Beobachte deine Worker in Echtzeit
hermes kanban inspect

Aufgabenkonfiguration & Planung:

  • Modellspezifische Task-Overrides — verwende günstige Modelle für Standardaufgaben, teure für schwierige Unteraufgaben. Eine Konfiguration pro Task-Karte.
  • Geplante Startzeiten — lege fest, dass eine Aufgabe um 3 Uhr morgens am Dienstag beginnt. Nützlich für Batch-Jobs und Wartungsfenster.
  • Board-weites Standard-Arbeitsverzeichnis — jede Aufgabe auf dem Board erbt ein Arbeitsverzeichnis, sofern nicht überschrieben.
  • Konfigurierbare Worktree-Pfade und Branches — jeder Worker läuft in einem isolierten Git-Worktree.
  • max_in_progress-Parallelitätsbegrenzung — begrenzt, wie viele Aufgaben gleichzeitig pro Board ausgeführt werden.
  • Claim-TTL, Retry-Fingerprinting, Erkennung veralteter Aufgaben und Respawn-Guards verhindern Worker-Stürme.
# Beispiel für eine Task-spezifische Konfiguration
tasks:
  - title: "Refactor auth module"
    model_override: "claude-sonnet-4-20250514"  # teures Modell für schwierige Arbeit
  - title: "Update docs"
    model_override: "gpt-4.1-mini"              # günstiges Modell für Standardaufgaben
  - title: "Nightly backup"
    scheduled_at: "2026-06-01T03:00:00Z"

Dashboard & Zuverlässigkeit:

  • Drag-to-Delete-Papierkorbzone + Massenlöschung.
  • Worker-Sichtbarkeits-Endpunkte: /workers/active, /runs/{id}, /inspect.
  • Profilübergreifende Cron-Jobs erscheinen im Dashboard.
  • Fingerprinting von Absturzfehlern, um flottenweite Wiederholungserschöpfung zu verhindern.
  • Optimierung des mobilen Dashboards für die Verwaltung unterwegs.

3. session_search neu aufgebaut — 4.500× schneller, völlig kostenlos

Das alte session_search war ein Hilfs-LLM-Tool, das etwa 0,30 $ pro Aufruf kostete, etwa 90 Sekunden brauchte, um drei Sitzungen zusammenzufassen, und manchmal Ergebnisse erfand, wenn die richtige Sitzung nicht einmal in den Suchergebnissen enthalten war.

Das neue session_search ist ein Tool mit drei Modi (Discovery, Scroll, Browse), die anhand der gesetzten Argumente abgeleitet werden — kein mode-Parameter, kein Hilfs-LLM, kein Konfigurationsschalter, kein Begleit-Skill.

Discovery: ~20ms (vorher ~90s)  →  4.500× schneller
Scroll:     ~1ms                →  sofort
Kosten:     0,00 $              →  völlig kostenlos
# Discovery-Modus — finde relevante vergangene Sitzungen
session_search(query="user auth refactor")

# Scroll-Modus — durchsuche Sitzungsinhalte
session_search(session_id="abc123", scroll_offset=0)

# Browse-Modus — tiefer Einblick in eine bestimmte Sitzung
session_search(session_id="abc123", browse=True)

4. Promptware-Abwehr — Angriffe der Brainworm-Klasse blockiert

Inspiriert von der jüngsten Brainworm-/Promptware-Kill-Chain-Forschung verteidigt Hermes jetzt das Kontextfenster gegen Prompt-Injection-Angriffe, die versuchen, den Agenten über Tool-Ausgaben, abgerufene Erinnerungen oder gespeicherte Skills zu kapern.

Drei Verteidigungsebenen:

  1. Single Source of Truthtools/threat_patterns.py mit ~15 neuen Brainworm-/C2-Mustern, die von allen Scan-Codes gemeinsam genutzt werden.
  2. Memory-Scanning beim Laden — abgerufene Erinnerungen werden gescannt, bevor sie ins Kontextfenster gelangen.
  3. Tool-Ergebnis-Trennzeichen — bösartige Dateien oder Remote-Dienste können sich nicht mehr als Hermes‘ eigene Systemanweisungen ausgeben.

Gekoppelt mit einem neuen security-guidance-Plugin, das gefährliche Code-Schreibvorgänge vor der Ausführung per Mustervergleich erkennt.

5. Bitwarden Secrets Manager — Ein Token ersetzt jeden API-Schlüssel

Hör auf, Klartext-API-Schlüssel in ~/.hermes/.env aufzubewahren. Bitwarden Secrets Manager integriert sich nativ — bws wird bei der ersten Verwendung automatisch und verzögert installiert, und du konfigurierst Hermes mit einem einzigen Bootstrap-Token:

# Setze dein Bitwarden-Zugriffstoken
export BWS_ACCESS_TOKEN="your-bootstrap-token"

# Hermes ruft beim Start alle Zugangsdaten von Bitwarden ab
hermes chat

Wichtige Funktionen:

  • Einen Schlüssel in der Bitwarden-Web-App rotieren → die Rotation wird tatsächlich wirksam. Bitwarden ist standardmäßig die Quelle der Wahrheit und überschreibt beim Start übereinstimmende Umgebungsvariablen.
  • Zugangsdaten sind mit ihrer Quelle gekennzeichnet, sodass du sehen kannst, welche Schlüssel von Bitwarden und welche aus der lokalen Umgebung stammen.
  • EU-Cloud und selbst gehostete Bitwarden-Server-URLs werden unterstützt.
  • Setze secrets.bitwarden.override_existing: false, um lokalen Umgebungsvariablen Vorrang zu geben.

6. Skill-Bundles — Ein Slash-Befehl, mehrere Skills

Ein Skill-Bundle ist eine benannte Gruppe von Skills, die alle zusammen mit einem Slash-Befehl geladen werden. Richte dein „Schreibtag“-Bundle ein und /writing-day aktiviert alles für die Sitzung.

# Definiere ein Bundle in deiner Konfiguration
# Dann aktiviere es mit einem Befehl:
/writing-day
# Lädt: humanizer + ideation + obsidian + youtube-content

Verbesserungen am Skills Hub:

  • Gesundheitsprüfungen und Aktualitäts-Badges für jeden Skill.
  • Ein Watchdog-Cron-Job hält deine installierten Skills auf dem neuesten Stand.
  • Drei neue optionale Skills: code-wiki (Karpathys LLM-Wiki, persistentes indiziertes Entwickler-Wiki), openhands (delegiere an OpenHands für parallele Coding-Agenten) und web-pentest (OWASP-Web-Pentest-Rezepte).

7. Tiefgreifende xAI-Integration

Sechs miteinander verzahnte xAI-Verbesserungen:

Funktion Beschreibung
xAI Web Search Neuer plugins/web/xai/-Provider — verwendet dein bestehendes Grok-OAuth oder XAI_API_KEY, keine neuen Umgebungsvariablen
hermes proxy xAI-Upstream Lokaler OpenAI-kompatibler Proxy, unterstützt von xai-oauth — kein PKCE-Code zum Schreiben in deinem Client
Erkennung veralteter Modelle grok-4, grok-3 und andere veraltete Modelle werden beim Start erkannt, mit hermes migrate xai zur einmaligen Konfigurationsmigration
Natürliche TTS-Pausen Opt-in auto_speech_tags fügt [pause]-Tags zwischen Absätzen ein, für natürlicher klingende Sprachausgabe
base_url-Sicherheit xai-oauth base_url auf x.ai-Ursprung festgelegt — schließt einen Vektor für das Durchsickern von Zugangsdaten
Ausführungsdisziplin Grok-Modelle erhalten dieselbe modellfamilienspezifische Ausführungsdisziplin wie GPT/Codex — verhindert, dass sie Fertigstellung ohne Tool-Aufrufe behaupten
# Migration von veralteten xAI-Modellen
hermes migrate xai

# Überprüfe, welche Modelle noch aktiv sind
hermes doctor

8. Krea-Bilderzeugung + FAL-Plugin-Architektur

Zwei neue image_gen-Provider landen, und die Architektur wird sauberer:

  • Krea 2 Medium (0,03 $) und Krea 2 Large (0,06 $) — automatisch erkannt, auswählbar über hermes tools → Image Generation → Krea.
  • FAL.ai-Backend von einem monolithischen Tool nach plugins/image_gen/fal/ portiert — jetzt eine Datei, kein Fork. Neue Bild-Provider sind nur noch ein Plugin entfernt.

9. ntfy — 23. Messaging-Plattform

ntfy tritt als 23. Messaging-Plattform bei — ein selbst hostbarer Push-Benachrichtigungsdienst ohne Registrierung, ohne API-Schlüssel, nur eine Topic-URL. Dein Agent kann dir Push-Benachrichtigungen von jedem Cron-Job, Kanban-Aufgabenabschluss oder send_message-Aufruf senden — auf dein Handy, deine Uhr, deinen Desktop oder dein Homelab.

# Dein Agent sendet dir eine Benachrichtigung, wenn eine Kanban-Aufgabe abgeschlossen ist:
# "Aufgabe 'Refactor auth' abgeschlossen — 3 Dateien geändert, 45 Tests bestanden"

# Alles über eine einzige ntfy-Topic-URL, kein Konto erforderlich

10. TUI Session Orchestrator

Die Ink-TUI erhielt ein Overlay zum Wechseln aktiver Sitzungen. Mehrere live-prozesslokale Sitzungen auflisten, zwischen ihnen wechseln, aktualisieren und schließen, ohne die TUI zu verlassen. Eine neue Sitzung mit einem sitzungsbezogenen Modell-Auswähler starten. Dazu Maus-Tracking-DEC-Modus-Voreinstellungen, Scrollback-Erhaltung, verbesserte IME-Eingabedarstellung und mehr.


Leistung

Die Welle der Kaltstart-Optimierung setzte sich mit vier großen Optimierungsrunden fort:

Optimierung Auswirkung
Verzögerter openai._base_client-Import -240ms, -17MB bei jedem CLI-Aufruf
Hot-Path-Optimierungen der Agent-Loop 47 % weniger Funktionsaufrufe pro Runde (399k → 213k für einen 31-Runden-Chat)
Verzögerte Komprimierungsdurchführbarkeitsprüfung -170 bis -290ms pro Agent-Konstruktion
Adaptives Subprocess-Polling ~195ms pro Tool-Aufruf, 1+ Sekunde pro Runde

Benchmark-Ergebnisse:

  • Termux-Kaltstart: 2,9s → 0,8s (auf Mobilgeräten)
  • hermes --version kalt: 701ms → 258ms (-63 %)
  • Head-to-Head-Benchmark gegen Codex CLI von 5/11 Siegen auf 6/11 verbessert

Sicherheit & Zuverlässigkeit

Promptware & Memory-Härtung

  • Promptware-Abwehr mit gemeinsamen Bedrohungsmustern, Memory-Scanning beim Laden und Tool-Ergebnis-Trennzeichen.
  • Hermes-Control-Plane-Dateien vor Prompt-Injection geschützt (auth.json, config.yaml, webhook_subscriptions.json, mcp-tokens/).
  • Schreibverbot auf <root>/.env bei Ausführung unter einem Profil.
  • Gestaffeltes Leseverbot für Zugangsdatenspeicher (Defense-in-Depth).

Sicherheit von Zugangsdaten

  • Zur Laufzeit aus Umgebungsvariablen bezogene API-Schlüssel gelangen nicht mehr in auth.json.
  • xai-oauth base_url auf x.ai-Ursprung festgelegt — Vektor für das Durchsickern von Zugangsdaten geschlossen.
  • Abgelaufene OAuth-Tokens bei Aktualisierungsfehler unter Quarantäne gestellt (xAI, Codex, MiniMax).
  • Nous Portal inference_base_url gegen Host-Allowlist validiert.

Lieferkette

  • On-Demand-Lieferketten-Audithermes audit prüft Abhängigkeiten gegen OSV.dev.
  • hermes update validiert die Syntax kritischer Dateien nach dem Pull, automatischer Rollback bei Fehler.

Neue integrierte Tools & Befehle

Tool / Befehl Beschreibung
session_search Neu aufgebaut — drei Modi (Discovery/Scroll/Browse), kostenlos, 4.500× schneller
hermes kanban swarm Erstellt eine vollständige Swarm-v1-Multi-Agent-Topologie mit einem Befehl
hermes migrate xai Einmalige Migration von veralteten xAI-Modellen
hermes audit On-Demand-Lieferketten-Audit über OSV.dev
hermes proxy Neuer xAI-Upstream — lokaler OpenAI-kompatibler Endpunkt, unterstützt von xai-oauth
/exit --delete Sitzung beim Beenden entfernen
/update Slash-Befehl zum Aktualisieren von Hermes innerhalb von CLI/TUI

Kern-Agent & Architektur

Agent-Loop & Conversation

  • Gestaffelter Fallback für Hilfsaufgaben (Primär → Chain → Hauptagent → ordentlicher Fehlschlag) bei Kapazitätsfehlern (402/429/Verbindung).
  • Puffer für Wiederholungs-/Fallback-Status — nur bei endgültigem Fehlschlag anzeigen (kein „Wiederhole…“-Rauschen während des Laufs).
  • Host-Vertrag für externe Kontext-Engines.
  • Sofortiger Fallback bei Content-Policy-Blocks des Anbieters.
  • Pro-Runde-Tool-Ergebnisprüfer für das patch-Tool — Einrückungserhaltung, CRLF-Erhaltung, Eskalation pro Datei bei Fehler.
  • Single-Knob Native Vision für benutzerdefinierte Anbietermodelle.
  • Wiederherstellung bei Anbietern, die Tool-Inhalte vom Typ Liste zurückgeben.
  • ContextVars werden an gleichzeitige Tool-Worker-Threads weitergegeben.

Sessions & Memory

  • platform_message_id für den Abruf über Gateway-Neustarts hinweg persistieren.
  • Inline-Memory-Kontext-Erwähnungen bleiben in der Konversation sichtbar.
  • Abgerufene Erinnerungen als informativ, nicht als autoritativ gekennzeichnet.
  • Memory- und Kontext-Engine-Tool-Injektion durch enabled_toolsets gesteuert.
  • Schutz vor externer Abweichung in MEMORY.md / USER.md.
  • Honcho-Laufzeit-Peer-Mapping mit Einrichtungsassistent und Dokumentation.

Codex / Responses-API-Reifung

  • TTFB-Watchdog für blockierte Codex-Responses-Streams.
  • Umsetzbarer Hinweis, wenn der Stale-Call-Detektor bei bekanntem Silent-Reject-Muster auslöst.
  • SDK-responses.stream()-Hilfsfunktion entfernt — Events direkt konsumieren.
  • Codex-429-Kontingent jetzt als Rate-Limit klassifiziert, nicht als fehlende Zugangsdaten.

Messaging-Plattformen (Gateway)

  • Deliverable-Modus — Agenten liefern Artefakte als native Uploads von jeder Plattform (Slack/Discord/Telegram/Teams/Email).
  • hermes send — leite die Ausgabe eines beliebigen Skripts an eine beliebige Messaging-Plattform weiter.
  • Discord-Adapter in gebündeltes Plugin migriert.
  • Mattermost-Adapter in gebündeltes Plugin migriert.
  • Telegram: Statusmeldungen direkt bearbeiten, STT-überspringender Audio-Pfad, Bilddokumente durch die Vision-Pipeline leiten, Chat-bezogene Authentifizierung, konfigurierbares disable_topic_auto_rename.
  • Signal: require_mention-Filter für Gruppenchats.
  • Matrix: Warnung bei Clock-Skew und stillen Nachrichtenverlusten + vollständiger E2EE-Abhängigkeitssatz.
  • Feishu: Webhook-Auth-Secret erforderlich + Authentifizierung für Genehmigungsschaltflächen erzwingen.
  • DingTalk: Native Sprachnotizen transkribieren.
  • WeCom: Sicheres Parsen nicht vertrauenswürdiger XML.

Tool-System

Browser & Bilderzeugung

  • Alle Cloud-Browser-Anbieter (Browserbase, Anchor, Camofox, Hyperbrowser) in image_gen-artige Plugins migriert.
  • Automatischer Start des Browsers der Chromium-Familie für CDP.
  • xAI-ephemere URL-Antworten auf die Festplatte cachen.

MCP

  • Von Nous genehmigter MCP-Katalog mit interaktivem Auswähler — hermes mcp präsentiert einen kuratierten Katalog von Nous-geprüften Servern, Installation mit einem Tastendruck.
  • TLS-Client-Zertifikat (mTLS)-Unterstützung für HTTP- und SSE-MCP-Server.
  • Stdin-Paste-Back-Fallback für headless OAuth-Flow.

CLI & TUI

  • /update-Slash-Befehl in CLI und TUI mit automatischem Rollback bei Syntaxprüfungsfehler.
  • --branch-Flag für hermes update.
  • ▶ N-Indikator in der Statusleiste für laufende /background-Aufgaben.
  • Konfigurierbare Paste-Collapse-Schwellenwerte (TUI + CLI).
  • /resume akzeptiert Positionsnummern.
  • TUI Session Orchestrator — mehrere live Sitzungen in einem TUI-Fenster.
  • mouse_tracking-DEC-Modus-Voreinstellungen + Scrollback-Erhaltung über Branches und Termux hinweg.
  • Aktives Profil wird im TUI-Prompt angezeigt.
  • Zwischenablage-Kopie unter Linux/Wayland.
  • Vollständiger Assistenten-Text im Scrollback (keine Verlaufskürzung).

Docker

  • s6-overlay-Container-ÜberwachungServiceManager-Protokoll (systemd/launchd/Windows/s6-Backends), profilbezogene Gateway-Überwachung, Container-Neustart-Abgleich.
  • Upgrade auf Node 22 LTS über Multi-Stage von node:22-bookworm-slim.
  • Build-Zeit-Git-SHA in Image einbacken für hermes dump-Berichte.
  • hermes update gibt docker pull-Anleitung innerhalb des Containers aus.
  • Agent-Browser-Chromium-Binary beim Booten erkennen.

Upgrade

hermes update

Wenn du xAI-Modelle verwendest, die am 15. Mai veraltet sind, führe zuerst die Migration aus:

hermes migrate xai
hermes update

Für Neuinstallationen besuche den Installationsleitfaden.


Vollständiges Changelog auf GitHub

← Hermes Agent Changelog