Zwei Gmails, ein Hermes: Connector-Konten haben endlich Namen

Neun Uhr morgens: Du fragst Hermes im Chat, ob heute etwas Wichtiges in deinem Postfach gelandet ist. Er öffnet das private Postfach, das du mal für ein Wochenendprojekt angelegt hast, und die Kundenantwort in deinem Arbeitspostfach bleibt ungelesen. Also schiebst du „ich meinte das Arbeitskonto“ hinterher – und mehr als „Gmail ist verbunden“ kommt nicht zurück, weil er schlicht nicht mehr weiß.
Das Modell war nicht begriffsstutzig. Hermes kannte früher genau einen verbundenen Login pro App, ohne Namen und ohne eine zweite Anmeldung zur Auswahl.
Eine App, ein Konto
Hermes erreicht fremde Apps über Connectoren: Das Gateway hostet sie als Tools mit Namen wie connectors__gmail__SEND_EMAIL, die du mit tool_search findest und mit tool_call aufrufst. In diesem Modell ging der alte Build von einem Konto pro App aus, und die Folgen waren konkret:
- Ein zweiter Gmail-Login hatte keinen Namen, den das Modell verwenden konnte, also nahm es einfach das neueste Konto;
reconnect gmailprüfte das connector-weite „verbunden“-Flag. Bei einem gesunden und einem abgelaufenen Konto meldete es „verbunden“ und reparierte nichts;- Eine bereits offene Verbindungskarte für Gmail wurde für jede weitere Gmail-Verbindungsanfrage wiederverwendet;
- In den Ergebnissen stand nie, unter welchem Konto ein Aufruf lief.
Für eine Person auf einem Rechner ist das bloß lästig. Sobald dasselbe Gateway aber mehr als eine Person bedient, wird daraus ein Zugriffskontrollproblem – genau die Wand, auf die die Community in Issue #15602 stieß, als sie ein einzelnes Hermes-Gateway gleichzeitig mit dem Gmail zweier Personen verband.
Konten bekommen einen Namen: den Alias
Der neue Build gibt jedem Konto einen kurzen Namen, im Wire-Format Alias genannt: 1 bis 32 Kleinbuchstaben, Ziffern oder Bindestriche, beginnend mit Buchstabe oder Ziffer. Ein Konto ohne Alias wird mit dem Label der App selbst angezeigt.
Die Regel ist einfach: Sobald eine App zwei aktive Konten hat, ergänzt das Gateway das Schema des betreffenden Connector-Tools um ein Feld connector_alias, in dem steht, welche Namen es akzeptiert. Das Modell übergibt beim Aufruf einen davon:
tool_call connectors__gmail__SEND_EMAIL
{"connector_alias": "work", ...}
Im Ergebnis kommt account zurück, und das Live-Label des Tools wird als Gmail · send email (work) gerendert. Ein Blick genügt, um zu wissen, welche Identität die Mail verschickt hat.
Neben dem Namen hat sich noch einiges geändert:
- Ziel-Objekte von
manage_connectionsnehmenalias(welches Konto) undto(der neue Name) entgegen, dazu kommt die neue Aktionrename. Ein Aufruf mit Alias trägt genau dieses eine Ziel; MCP-Ziele lehnen beide Felder ab; - connect mit Namen fragt beim Gateway genau dieses Konto an: entweder legt es ein neues an oder antwortet connected, wenn ein aktives Konto den Namen bereits trägt;
- reconnect mit Namen liest die eigene Zeile dieses Kontos statt des connector-weiten Flags und repariert damit das defekte, während das gesunde weiterläuft. Lässt sich diese Zeile nicht lesen, meldet das Tool den Fehler, statt still ein neues Konto anzulegen;
- status listet die Konten jedes Connectors mit Alias, Label, Status und Active-Flag auf.
Das CLI: hermes connectors
Ein neuer Befehl deckt Auflisten, Verbinden, Umbenennen und Entfernen ab:
hermes connectors list
hermes connectors accounts
hermes connectors accounts gmail --all
hermes connectors connect gmail --alias home
hermes connectors rename gmail work --to office
hermes connectors disconnect gmail --alias home --yes
| Subcommand | Wirkung |
|---|---|
list (alias ls) |
Alle Connectoren und ob sie verbunden sind |
accounts [app] [--all] |
Verbundene Konten; zurückgezogene Zeilen werden eingeklappt, außer du übergibst --all |
connect <app> [--alias NAME] [--reconnect] [--force] |
Verbindet ein neues Konto; --reconnect repariert ein defektes; --force meldet ein gesundes erneut an |
rename <app> <name-or-label> --to <new> |
Benennt ein Konto um |
disconnect <app> [--alias NAME] [--yes] |
Entfernt ein Konto; bei nicht-interaktivem stdin ist --yes nötig |
Details, die du kennen solltest, bevor du sie tippst:
connectgibt den Login-Link aus und wartet, bis das Konto sich einpendelt oder die Frist abläuft. Strg-C schließt den offenen Connect-Vorgang und beendet mit 130, damit der nächste Connect derselben App nicht blockiert wird;- Ein Name, der das Format verletzt oder den bereits ein anderes lebendes Konto derselben App trägt, wird abgelehnt, bevor überhaupt eine Anfrage rausgeht;
- Gibt es bei einer App mehr als ein Konto, läuft ein Befehl ohne
--aliasin einen Fehler und listet die Namen auf, aus denen du wählen kannst.
Das /connectors-Overlay in der TUI
Tippe /connectors in der Terminal-UI, und es öffnet sich ein schwebendes Overlay mit einer Zeile pro Konto, das App, Name und Status zeigt:
rbenennt direkt um – Enter speichert, Esc bricht ab;afügt ein Konto hinzu: App auswählen, Namen tippen, Link öffnen. Das Overlay wartet, bis das Konto sich einpendelt, der Link abläuft oder das Gateway ablehnt;cverbindet das ausgewählte Konto neu. Es löscht nie etwas, ein gesundes Konto antwortet sofort mit connected, und eine namenlose Zeile bittet dich, zuerst einen Namen zu vergeben;xentfernt das ausgewählte Konto nach dem gemeinsamen Bestätigungs-Prompt der TUI;- Tab zeigt zurückgezogene Konten an oder klappt sie ein; solange sie eingeklappt sind, lassen sie sich nicht neu verbinden.
Durchweg gilt eine konservative Regel: Solange irgendeine Frage oder Bestätigung des Agenten offen ist, liest das Overlay keine Tasten, damit die Antwort auf einen Prompt nicht versehentlich ein Konto löscht.
Die Desktop-App
Unter Capabilities → Connectors listet jede App nun alle ihre Konten auf, mit Aktionen zum Benennen, Umbenennen, Hinzufügen, Neuverbinden und Entfernen; das Entfernen läuft über eine Bestätigung. Wenn der Agent einem neuen Konto einen Namen gibt, sagt der Chat, welchen Namen er gewählt hat – zum Beispiel „Hermes hat dieses Gmail-Konto work genannt. Jederzeit umbenennen.“ Den Namen wählt der Agent; es gibt keinen Namens-Prompt zu beantworten.
Vorbehalte
- Die Anmeldung am Nous Portal ist Pflicht. Connectoren sind gehostete Tools, deshalb kommt zuerst
hermes login; ohne das sagt dir der Befehl, dass du dich anmelden sollst, statt mit irgendetwas Kryptischem zu scheitern. - Umbenennen hängt am Portal. Bis das Portal die Rename-Route ausliefert, antwortet
renamemit „This Nous Portal cannot rename connector accounts yet.“ und der Desktop-Editor zeigt diese Ablehnung und stellt den alten Namen wieder her. Alles andere funktioniert. - Konten entfernen bleibt dir überlassen. Das CLI bittet um Bestätigung, der Desktop um einen Klick. Kein automatischer Ablauf löscht ein Konto für dich.
- Status: Diese Arbeit (PRs #135097 / #135151 / #135173) wurde am 2026-10-11 nach
maingemergt. Das aktuelle getaggte Release, v0.21.6 vom 8. Oktober, enthält sie noch nicht – sie kommt mit dem nächsten Release. - Connectoren existieren nur für angemeldete Nous-Konten, weshalb
hermes connectors listauch „Connectors are not available. Sign in withhermes loginfirst.“ antworten kann.
Zum Schluss
„Nimm das Arbeitskonto“ ist jetzt etwas, wonach der Agent tatsächlich handeln kann: Das Konto hat einen Namen, das Modell nennt ihn im Aufruf, das Ergebnis sagt, welche Identität gelaufen ist, und eine Reparatur trifft nur das defekte Konto. Das Benennen kostet dich einen Befehl und bringt dir Nachvollziehbarkeit bei jeder ausgehenden Aktion – was weit mehr wiegt als Bequemlichkeit, wenn eine Maschine sowohl deine Arbeits- als auch deine privaten Logins hält.
Ist dir die Connector-Schicht selbst noch neu, dann starte mit wie die Tool-Suche funktioniert und schau danach im offiziellen Remote-MCP-Katalog, woher gehostete Tools kommen. Du installierst Hermes zum ersten Mal? Dann fang mit der Installationsanleitung an.