Hermes Agent v0.5.0 — Das Härtungs-Release
Überblick
v0.5.0 — Das Härtungs-Release. Veröffentlicht am 28. März 2026. Dieses Release macht Hermes Agent produktionsreif: über 50 Sicherheits- und Zuverlässigkeitskorrekturen, ein umfassendes Supply-Chain-Audit und bedeutende Plattformerweiterungen, die Hermes zu einem ernsthaften Akteur im Bereich autonomer Agenten machen.
Zu diesem Zeitpunkt hatte das Projekt seit seinem ersten öffentlichen Launch im Februar 2026 bereits über 15.700 GitHub-Sterne mit mehr als 242 Mitwirkenden erreicht. Nous Research beschrieb dieses Release als jenes, das jede Schicht des Stacks “härtet” — vom Pinning von Abhängigkeitsversionen und CVE-Patching bis hin zu SSRF-Schutz und Shell-Injection-Prävention.
Hauptfunktionen
1. Hugging Face als Erstklassiger Inferenzanbieter
Hermes Agent integriert sich jetzt nativ mit der Hugging Face Inference API, komplett mit Authentifizierung, Einrichtungsassistent und einem intelligenten Modellauswähler, der OpenRouters agentische Standardeinstellungen auf ihre HF-Äquivalente abbildet.
# Während der Einrichtung erscheint Hugging Face als Anbieteroption
hermes setup
# Wähle "Hugging Face" → gib dein HF API-Token ein → wähle aus kuratierten agentischen Modellen
# Zur Laufzeit zu einem Hugging Face-Modell wechseln
hermes model --provider huggingface
So funktioniert es unter der Haube:
- Kuratierte Modellliste, die OpenRouter-Standards auf HF-Äquivalente abbildet, damit du ohne Rätselraten das richtige Modell findest
- Anbieter mit 8+ kuratierten Modellen überspringen die Live-Abfrage des
/models-Endpunkts für sofortigen Start - Vollständiger Authentifizierungsablauf mit deinem HF-API-Token, sicher im Hermes-Credential-Store gespeichert
2. Telegram Private Chat Topics
Projektbasierte Konversationen mit funktionaler Skill-Bindung pro Topic — du kannst jetzt isolierte Workflows innerhalb eines einzelnen Telegram-Chats ausführen. Jedes Topic hat seinen eigenen Skill-Satz, seinen eigenen Kontext und seine eigene Agent-Persönlichkeit.
# hermes.config.yaml
telegram:
private_chat_topics: true
topic_skills:
- topic: "ml-experiments"
skills: [python-ml, data-analysis, notebook]
- topic: "devops"
skills: [docker, terraform, kubernetes]
Das bedeutet, ein Telegram-Chat kann deinen ML-Workflow, dein Infrastrukturmanagement und dein Code-Review beherbergen — alles isoliert, alles persistent, alles an einem Ort.
3. Natives Modal SDK Backend
Die swe-rex-Abhängigkeit wurde durch das native Modal SDK (Sandbox.create.aio + exec.aio) ersetzt, wodurch SSH-Tunnel eliminiert und das Modal-Terminal-Backend drastisch vereinfacht wurde.
# Vorher: swe-rex erstellte SSH-Tunnel für jede Sandbox-Operation
# Nachher: direkte SDK-Aufrufe — schneller, einfacher, keine Tunnelverwaltung
# Der Agent verwendet jetzt die nativen asynchronen Primitive von Modal:
# Sandbox.create.aio() — Sandboxes ohne Tunnel-Overhead erstellen
# exec.aio() — Befehle direkt über das SDK ausführen
Diese Änderung entfernt eine bedeutende Architekturabhängigkeit und macht die Sandbox-Ausführung zuverlässiger und einfacher zu debuggen.
4. Plugin-Lifecycle-Hooks Aktiviert
Das Plugin-Hook-System ist jetzt vollständig live. Vier Lifecycle-Hooks werden an Schlüsselpunkten im Agent-Loop ausgelöst:
| Hook | Auslösepunkt | Anwendungsfall |
|---|---|---|
pre_llm_call |
Vor jedem LLM-API-Aufruf | Prompts ändern, Kontext einfügen, Anfragen protokollieren |
post_llm_call |
Nach jedem LLM-API-Aufruf | Antworten nachbearbeiten, strukturierte Daten extrahieren |
on_session_start |
Wenn eine Sitzung beginnt | Ressourcen initialisieren, Arbeitsbereich einrichten |
on_session_end |
Wenn eine Sitzung endet | Aufräumen, Zustand persistieren, Benachrichtigungen senden |
# Beispiel-Plugin mit Lifecycle-Hooks
# my_plugin.py
def pre_llm_call(context, messages):
# Benutzerdefinierten Systemkontext hinzufügen, bevor das LLM den Prompt sieht
messages.insert(0, {"role": "system", "content": "Heutiges Datum: 2026-03-28"})
return messages
def post_llm_call(context, response):
# Token-Nutzung an deine Analyseplattform protokollieren
log_usage(response.usage)
return response
Diese Hooks werden in CLI, Gateway und allen Messaging-Plattformen ausgelöst — und vervollständigen damit ein lange gewünschtes Erweiterbarkeitsfeature.
5. GPT Tool-Use-Enforcement
GPT-Modelle hatten eine hartnäckige Eigenart: Sie beschrieben, was sie beabsichtigten zu tun, anstatt tatsächlich Tool-Aufrufe zu tätigen. v0.5.0 fügt GPT_TOOL_USE_GUIDANCE hinzu — eine spezialisierte System-Prompt-Injektion, die GPT-Modelle zwingt, Werkzeuge zu verwenden, anstatt Aktionen zu beschreiben.
# Intern: Vor jedem GPT-API-Aufruf injiziert der Agent Anleitung:
GPT_TOOL_USE_GUIDANCE = """
Wenn du eine Aktion ausführen musst, MUSST du das entsprechende Werkzeug verwenden.
Beschreibe NICHT, was du tun würdest — rufe das Werkzeug tatsächlich auf.
"""
Darüber hinaus werden veraltete Budget-Warnungen, die sich im Konversationsverlauf ansammelten (und Modelle dazu brachten, Werkzeuge über mehrere Runden hinweg zu vermeiden), jetzt automatisch aus dem Transkript entfernt.
6. Anthropic Output-Limits behoben
Das hartcodierte 16K max_tokens-Limit wurde durch modellspezifische native Output-Limits ersetzt:
| Modell | Altes Limit | Neues Limit |
|---|---|---|
| Claude Opus 4.6 | 16K | 128K |
| Claude Sonnet 4.6 | 16K | 64K |
| Andere Claude-Modelle | 16K | Modellspezifisch |
Dies behebt zwei langjährige Probleme:
- “Response truncated”-Fehler, wenn der Agent mehr als 16K Output-Token benötigte
- Thinking-Budget-Erschöpfung — der Agent erkennt jetzt, wenn ein Modell alle Output-Token für Reasoning verbraucht hat, und überspringt intelligent nutzlose Fortsetzungswiederholungen
7. Nix Flake Support
Von @alt-glitch — vollständiger uv2nix-Build, NixOS-Modul mit persistentem Container-Modus, automatisch generierte Konfigurationsschlüssel aus Python-Quellcode und Suffix-PATHs für Agent-Freundlichkeit.
# flake.nix
{
inputs.hermes-agent.url = "github:NousResearch/hermes-agent";
# ...
hermes-agent.nixosModules.default
# Bietet: hermes-agent-Dienst mit persistentem Container-Modus
}
8. Supply-Chain-Härtung
Dieses Release implementierte eine umfassende Supply-Chain-Verteidigung:
- Kompromittierte
litellm-Abhängigkeit entfernt — ein viel beachteter Supply-Chain-Vorfall - Alle Abhängigkeitsversionsbereiche gepinnt — keine schwebende Versionsdrift mehr
uv.lockmit kryptografischen Hashes neu generiert — jede Abhängigkeit wird bei der Installation verifiziert- CI-Workflow hinzugefügt, der jeden PR auf Supply-Chain-Angriffsmuster scannt
- Abhängigkeiten aktualisiert, um bekannte CVEs im gesamten Abhängigkeitsbaum zu beheben
Neue Skills
| Skill | Beschreibung |
|---|---|
| G0DM0D3 | Godmode-Jailbreaking-Skill für fortgeschrittenes Prompt-Engineering und Fähigkeitenerkundung |
| Docker Management | Container-Lebenszyklusverwaltung, Image-Building und Compose-Orchestrierung |
| OpenClaw Migration v2 | 17 neue Module für die Migration von OpenClaw zu Hermes Agent, einschließlich Terminal-Rückblick |
Verbesserungen am Skill-System
- Umgebungsvariable-Durchleitung — Skills können deklarieren, welche Umgebungsvariablen sie benötigen, und Hermes leitet sie sicher durch
- Gecachte Skill-Prompts mit gemeinsamem
skill_utils-Modul für deutlich schnellere Time-to-First-Token (TTFT) - Git Trees API für die Skill-Installation verwendet, um stillen Unterverzeichnisverlust zu verhindern
- Vom Agenten erstellte Skills werden jetzt korrekt als vertrauenswürdig (nicht als nicht vertrauenswürdiger Community-Inhalt) behandelt
Messaging-Plattformen
Telegram
- Private Chat Topics mit Skill-Bindung pro Topic (siehe Hauptfunktionen oben)
- Automatische Erkennung von Fallback-IPs via DNS-over-HTTPS, wenn
api.telegram.orgnicht erreichbar ist — der Agent findet alternative Routen - Konfigurierbarer Antwort-Threading-Modus — steuere, wie der Agent seine Antworten in Threads organisiert
- Selbstplanende Wiederverbindung, wenn Polling nach 502-Fehlern fehlschlägt
Discord
- Phantom-“Schreibt”-Indikator behoben, der nach Abschluss des Agent-Turns bestehen blieb
Slack
- Tool-Aufruf-Fortschrittsmeldungen werden jetzt korrekt in den richtigen Slack-Thread geleitet
- Medien-Download-Unterstützung — Dokumente, Audio und Videonachrichten können jetzt vom Agenten heruntergeladen werden
Gateway Core
/verbose-Befehl für Messaging-Plattformen — Tool-Ausgabe-Verbosität aus jedem Chat umschalten- Hintergrund-Review-Benachrichtigungen direkt in den Benutzer-Chat zugestellt
- Vorübergehende Sendefehler wiederholen und Benutzer benachrichtigen, wenn Wiederholungen erschöpft sind
/stoperzwingt Freigabe der Sitzungssperre — hängende Agenten ohne Gateway-Neustart wiederherstellen- Thread-sicherer
SessionStoremitthreading.Lock - Gateway verschwendet nicht länger ~10K Token durch Laden der AGENTS.md des Hermes-Repos in jede Sitzung
- Anfrage-Timeouts zu HA-, Email-, Mattermost- und SMS-Adaptern hinzugefügt
CLI & Benutzererfahrung
Verbesserungen der interaktiven CLI
- Konfigurierbarer Busy-Input-Modus — steuert, was beim Tippen während der Agent-Verarbeitung passiert
- Mehrzeiliges Einfügen erhalten — keine verstümmelte Eingabe mehr beim Einfügen mehrzeiliger Befehle
- Tool-Generierungs-Callback — streamende “preparing terminal…”-Aktualisierungen, während der Agent Tool-Argumente generiert
- Statusleisten-Korrekturen: Token mit nachgestellten Nullen werden jetzt korrekt angezeigt (260K statt 26K), Duplikate und Degradation in langen Sitzungen behoben
- Reasoning-Box wird während Tool-Aufruf-Schleifen nicht mehr dreifach gerendert
- “Event loop is closed” / “Press ENTER to continue” während inaktiver Sitzungen — mit einer dreischichtigen Lösung behoben
- TUI aktualisiert sich vor Hintergrund-Task-Ausgabe, um visuelle Überlappung zu verhindern
Setup & Konfiguration
/model-Befehl überarbeitet — gemeinsame Pipeline für CLI und Gateway extrahiert, benutzerdefinierte Endpunkt-Unterstützung- Rückkehrer-Setup-Menü verwendet jetzt explizites Key-Mapping statt fragilen Positionsindex
hermes updategehärtet gegen divergierte History, Nicht-Main-Branches und Gateway-Randfälle- OpenClaw-Migration überschreibt keine Standardeinstellungen mehr; Setup-Assistent überspringt bereits importierte Abschnitte
- AGENTS.md-Laden stoppt jetzt auf oberster Ebene — kein rekursiver Verzeichnisdurchlauf mehr
- macOS Homebrew-Pfade zur Browser- und Terminal-PATH-Auflösung hinzugefügt
- Standard-SOUL.md auf Baseline-Identitätstext zurückgesetzt
Tool-System
API Server
- Idempotency-Key-Unterstützung — sichere Wiederholungssemantik für API-Aufrufe
- Body-Größenbeschränkungen und OpenAI-kompatible Fehlerhülle
- Bricht verwaiste Agenten bei SSE-Trennung mit echter Unterbrechung ab
- Streaming unterbricht nicht mehr, wenn der Agent Tool-Aufrufe tätigt
Terminal & Dateioperationen
- V4A-Patch-Parser verarbeitet jetzt reine Hinzufügungs-Blöcke korrekt
- Exponentielles Backoff für persistentes Shell-Polling — reduziert CPU-Auslastung
- Timeout zu Subprozess-Aufrufen in
context_referenceshinzugefügt
Browser & Vision
- SSRF-Schutz zu
browser_navigate,vision_toolsundweb_toolshinzugefügt - 402-Fehler bei unzureichenden Credits wird im Vision-Tool elegant behandelt
- Browser-Befehls-Timeout jetzt über
config.yamlkonfigurierbar
MCP
- Laufzeit- und konfigurationsbasierte MCP-Toolset-Auflösung vereinheitlicht
- MCP-Tool-Namenskollisionsschutz — verhindert stilles Überschreiben von Tools
Sicherheit & Zuverlässigkeit
Sicherheitshärtung (über 50 Korrekturen)
| Kategorie | Korrektur |
|---|---|
| SSRF-Schutz | browser_navigate, vision_tools und web_tools blockieren jetzt Server-Side Request Forgery |
| Subagent-Beschränkung | Subagent-Toolsets auf das aktivierte Set des Parents beschränkt — keine Privilegieneskalation |
| Zip-Slip-Prävention | Selbstupdate gegen Path-Traversal-Angriffe gehärtet |
| Shell-Injection | ~user-Pfaderweiterung erlaubt keine Befehlsinjektion mehr |
| Befehlserkennung | Eingabe vor Erkennung gefährlicher Befehle normalisiert |
| Tirith | Block-Urteile jetzt genehmigungsfähig statt harter Blockierung (Human-in-the-Loop) |
| Abhängigkeiten | Kompromittierte litellm/typer/platformdirs entfernt, alle Bereiche gepinnt, Lockfile mit Hashes |
Zuverlässigkeit
- SQLite WAL-Schreibsperrenkonflikt, der 15-20s TUI-Freezes verursachte — behoben
- SQLite-Concurrency mit Garantien für Sitzungstranskript-Integrität gehärtet
- Verhinderung von Cron-Job-Wiederauslösung bei Gateway-Crash-/Neustart-Schleifen
- Cron-Sitzungen nach Job-Abschluss korrekt als beendet markiert
Performance
- TTFT-Startoptimierungen — schnelle Verbesserungen für schnellere Kaltstarts
- Skill-Prompt-Caching mit gemeinsamem
skill_utils-Modul reduziert wiederholte Berechnungen - Redundante Datei-Wiedereinlesungen für Skill-Bedingungen im Prompt-Builder eliminiert
- API-Timeout-Standard von 900s auf 1800s für langsam denkende Modelle erhöht
Upgrade
hermes update
Für Neuinstallationen besuche die Installationsanleitung.
Vollständiges Changelog auf GitHub
← Hermes Agent Changelog