hermes peer: Lass deine Agents sich gegenseitig DMs schicken – über Profile und Maschinen hinweg

Dein Research-Agent hat gerade die Antwort gefunden, hinter der du seit einer Stunde her bist – und jetzt steht dir die mühsamste Aufgabe im Multi-Agent-Computing bevor: Text aus dem einen Chatfenster kopieren, zum Coding-Agenten wechseln, einfügen und hoffen, dass die Formatierung überlebt. v0.21.0 bringt einen Befehl mit, der diesen Schritt komplett überflüssig macht: hermes peer lässt jeden Hermes-Agenten jeden anderen Agenten per Handle, über Profile und Gateways hinweg kontaktieren – vom CLI aus oder direkt aus einer Konversation. Dein Research-Bot kann seine Erkenntnisse direkt an deinen Coding-Bot übergeben, und die Antwort kommt dort an, wo du sie lesen kannst.
Was hermes peer tatsächlich tut
hermes peer ist Bot-zu-Bot-Direktmessaging zwischen Hermes-Gateways. Statt dass du der Bote bist, schickt ein Agent eine Nachricht an die Adresse eines anderen Agents – <peer> oder <peer>/<agent> –, und die Nachricht wird in dessen kanonischen Bot Chat zugestellt: die dauerhafte Konversation, die jeder Agent für Bot-zu-Bot-Verkehr führt. Konversationen zwischen Agents sind nachvollziehbar und persistent, kein Fire-and-forget. Es ist das maschinenübergreifende Pendant zu hermes -p <bot> chat und läuft über den API-Server des jeweiligen Gateways.
Voraussetzungen
Der Peer, dem du schreibst, muss ein Hermes-Gateway mit aktivierter api_server-Plattform sein – das ist die Oberfläche, mit der hermes peer spricht. Dessen API_SERVER_KEY ist die Anmeldeinformation, die du lokal registrierst; sie wird in ~/.hermes/.env gespeichert, der Key selbst landet also nie in einer Config-Datei oder einer Chat-Nachricht.
Einen Peer einrichten
hermes peer add spark --url http://spark.lan:8377 --key <API_SERVER_KEY> --note "homelab gateway"
hermes peer list
hermes peer add (Alias set) registriert das Gateway; hermes peer list (Alias ls) zeigt, was du hast; hermes peer remove spark (Alias rm) löscht es. Wenn dein Peer mehrere Profile betreibt (ein gemultiplextes Gateway), sprichst du eines gezielt mit einem Schrägstrich an: spark/researcher.
Eine Nachricht senden
hermes peer dm spark "disk status on the homelab?"
hermes peer dm <peer>[/<agent>] "<message>" stellt die Nachricht im Bot Chat des entfernten Agents zu und gibt die Antwort aus, sobald der Agent antwortet. Wenn du es bevorzugst, kannst du die Nachricht über stdin übergeben (hermes peer dm spark < long-task.txt) oder --json nutzen, wenn du maschinenlesbare Ausgabe für Scripts willst.
Lange Aufgaben: run, status, stop
DMs blockieren, bis die Antwort eintrifft – gut für schnelle Fragen, falsch für eine 20-minütige Analyse. Dafür hat hermes peer ein asynchrones Trio:
hermes peer run spark "analyze this full log" --idempotency-key ticket-123
hermes peer status spark run_abc123
hermes peer stop spark run_abc123
hermes peer run startet den Turn asynchron und gibt eine Run-ID zurück. Der --idempotency-key macht Wiederholungen sicher: Verliert dein Script die Antwort und sendet mit demselben Key erneut, führt der Peer die Aufgabe nicht zweimal aus. hermes peer status liest den Fortschritt und die finale Ausgabe des Runs; hermes peer stop bricht ihn ab und liefert, was bisher vorliegt.
Scripting mit Exit-Codes
Der Befehl hält die Exit-Codes scriptfreundlich: 0 = ok, 1 = Zustellungs-/Peer-Fehler, 2 = Nutzungsfehler. Kombiniert mit --json lässt sich Bot-zu-Bot-Messaging in deine eigene Automatisierung einbinden – ein Monitor-Agent, der einen Coding-Agenten alarmiert, ein nächtlicher Job, der seinen Bericht an einen Briefing-Bot übergibt, ein Homelab-Wächter, der dir eine DM schickt, wenn eine Festplatte voll läuft.
Wo das ins Multi-Agent-Bild passt
hermes peer ergänzt die Bot-Mode-Gruppenchats (mehrere Bots + du in einem Raum, in v0.21.0 in die Desktop-App eingebaut) – Bot Mode ist die soziale Oberfläche, hermes peer die direkte Leitung zwischen Agents auf verschiedenen Maschinen. Für parallele Arbeit innerhalb einer Session bleibt die Live-Subagent-Orchestrierung das Werkzeug der Wahl. Und wenn du Cron-Ausgaben durch Bots schleust, ist der Profile-own-Bot-Zustellungs-Fix das passende Gegenstück, das sicherstellt, dass jedes Profil über seine eigene Identität zustellt.