Hermes Agent mit Telegram verbinden: KI-Bot von überall steuern
Über Telegram lässt sich der selbstgehostete Hermes Agent unabhängig vom verwendeten Endgerät aus der Ferne steuern. Der Zugriff erfolgt über einen eigenen Bot und wird durch die Freigabe bestimmter Telegram-User-IDs abgesichert; für eine dauerhafte Erreichbarkeit kann das Gateway auf einem Linux-Server oder VPS betrieben werden.
Wie lässt sich Hermes Agent mit Telegram verbinden?
Das Hermes Agent Messaging-Gateway ist die native Schnittstelle, die den selbstgehosteten autonomen Hermes Agent mit externen Chat-Plattformen wie Telegram verbindet. Es nimmt Nachrichten entgegen, ordnet sie einer Sitzung zu, übergibt sie an den Agenten und sendet dessen Antworten anschließend an den jeweiligen Telegram-Chat zurück.
Durch diese Verbindung können Sie Hermes Agent über die Telegram-App auf dem Smartphone, Tablet oder einem anderen Computer ansprechen. Der KI-Agent selbst läuft weiterhin auf Ihrem eigenen Rechner oder Server. Telegram dient lediglich als leicht erreichbare Bedienoberfläche, über die Nachrichten und Antworten ausgetauscht werden.
Die Einrichtung besteht aus drei wesentlichen Komponenten: einem Telegram-Bot, einem geheimen Bot-Token und einer Freigabe Ihrer persönlichen Telegram-User-ID. Anschließend wird das Messaging-Gateway von Hermes gestartet und bei Bedarf als dauerhafter Hintergrunddienst auf einem Linux-Server eingerichtet.
- Hermes-ready: Root-Zugriff, SSH-optimiert, in Minuten einsatzbereit
- Dauerhaft schnell: NVMe-SSD und 1 Gbit/s, ohne Drosselung
- Sicher: Individuelle API-Anbindungen und Docker-Unterstützung
Voraussetzungen für die Telegram-Verbindung
Bevor Sie beginnen, sollte Hermes Agent bereits installiert und grundsätzlich funktionsfähig sein. Öffnen Sie dazu ein Terminal und starten Sie Hermes zunächst ohne Telegram:
hermesbashStellen Sie eine einfache Frage und prüfen Sie, ob der Agent antwortet.
Zusätzlich benötigen Sie:
- ein Telegram-Konto,
- Zugriff auf das Terminal des Rechners, auf dem Hermes läuft,
- einen bereits eingerichteten Modellanbieter,
- eine Internetverbindung auf dem Hermes-System.
Telegram-Bot über BotFather erstellen
Ein Telegram-Bot ist ein spezielles Telegram-Konto, das nicht von einer Person, sondern von einer Software gesteuert wird. Für die Erstellung stellt Telegram den offiziellen Verwaltungsbot @BotFather bereit. Öffnen Sie Telegram und suchen Sie nach dem Account @BotFather. Achten Sie darauf, tatsächlich den offiziellen BotFather zu öffnen. Senden Sie ihm anschließend den Befehl:
/newbotBotFather führt Sie nun durch die Erstellung.
- Anzeigenamen festlegen: Zuerst fragt BotFather nach einem Namen für den Bot. Dieser Name wird später im Telegram-Chat angezeigt. Der Anzeigename muss nicht eindeutig sein und kann später geändert werden.
- Eindeutigen Benutzernamen wählen: Danach benötigt der Bot einen eindeutigen Telegram-Benutzernamen. Dieser muss mit „bot“ enden, beispielsweise „mein_hermes_agent_bot“. Ist der gewünschte Name bereits vergeben, müssen Sie eine andere Variante auswählen.
- Bot-Token kopieren: Nach erfolgreicher Erstellung sendet BotFather einen sogenannten API-Token. Der Token weist Hermes gegenüber Telegram als Betreiber dieses Bots aus. Er funktioniert daher ähnlich wie ein Passwort.
Veröffentlichen Sie den Token nicht und fügen Sie ihn nicht in Screenshots, öffentliche Dokumente, Forenbeiträge oder frei zugängliche Git-Repositories ein. Wer das Token kennt, kann den Bot gegenüber der Telegram Bot API kontrollieren. Sollte der Token versehentlich offengelegt werden, können Sie ihn in BotFather mit dem Befehl /revoke ungültig machen und neu erzeugen lassen.
Eigene Telegram-User-ID ermitteln
Neben dem Token benötigt Hermes Ihre persönliche Telegram-User-ID. Dabei handelt es sich um eine feste numerische Kennung. Die User-ID ist nicht mit Ihrem sichtbaren Telegram-Namen oder Ihrem Benutzernamen identisch. Ein Benutzername kann geändert werden, während Hermes für seine Zugriffskontrolle die numerische ID verwendet.
Öffnen Sie in Telegram den Bot @userinfobot und starten Sie den Chat beziehungsweise senden Sie eine beliebige Nachricht. Der Bot antwortet mit verschiedenen Informationen zu Ihrem Konto. Kopieren Sie daraus den Wert, der als User-ID bezeichnet wird.
Benötigte Telegram-Daten im Überblick
| Variable in Hermes | Inhalt | Herkunft |
|---|---|---|
TELEGRAM_BOT_TOKEN
|
Geheimer API-Token Ihres Telegram-Bots | Wird nach /newbot vom offiziellen @BotFather ausgegeben
|
TELEGRAM_ALLOWED_USERS
|
Ihre numerische Telegram-User-ID | Wird beispielsweise von @userinfobot angezeigt |
| Bot-Benutzername | Öffentlich sichtbarer Name des Bots, der auf „bot“ endet | Wird während der Bot-Erstellung bei @BotFather festgelegt |
Für eine persönliche Hermes-Installation tragen Sie normalerweise nur Ihre eigene User-ID ein. Sollen später mehrere Personen Zugriff erhalten, können deren IDs durch Kommas getrennt hinterlegt werden.
Hermes Agent Gateway über die CLI konfigurieren
Hermes besitzt einen interaktiven Assistenten, der die Telegram-Konfiguration Schritt für Schritt im CLI abfragt. Öffnen Sie auf dem Rechner, auf dem Hermes Agent installiert ist, ein Terminal und geben Sie folgenden Befehl ein:
hermes gateway setupbashDer Konfigurationsassistent zeigt die unterstützten Messaging-Plattformen an. Wählen Sie mit den Pfeiltasten Telegram aus und bestätigen Sie Ihre Auswahl mit der Eingabetaste. Anschließend werden die folgenden Informationen abgefragt:
- die gewünschte Plattform,
- das Telegram-Bot-Token,
- die erlaubten Telegram-User-IDs.
Fügen Sie beim Bot-Token den Wert ein, den Sie von BotFather erhalten haben. Bei den erlaubten User-IDs tragen Sie Ihre zuvor ermittelte numerische Telegram-ID ein. Der Setup-Assistent speichert diese Angaben in der Hermes-Konfiguration. Das Bot-Token stellt die Verbindung zu dem von Ihnen erstellten Telegram-Bot her.
User-ID als wichtige Sicherheitsbarriere
Hermes Agent kann je nach Konfiguration auf Dateien zugreifen, Programme ausführen, Terminalbefehle verwenden und weitere Werkzeuge aufrufen. Ein frei zugänglicher Bot wäre deshalb deutlich riskanter als ein gewöhnlicher FAQ-Chatbot. Hermes verwendet für das Messaging-Gateway eine „Default-Deny“-Logik: Ist weder eine Freigabeliste noch eine ausdrückliche globale Freigabe eingerichtet, werden unbekannte User nicht zur Ausführung durch den Agenten zugelassen. Erst wenn eine User-ID freigegeben wurde, darf das entsprechende Telegram-Konto mit Hermes interagieren. Für einen ausschließlich privat genutzten Bot ist die feste User-ID-Liste die einfachste und nachvollziehbarste Absicherung.
Verlassen Sie sich nicht ausschließlich auf die Default-Deny-Logik. Senden Sie dem Bot testweise von einem nicht freigegebenen Telegram-Konto eine Nachricht: Hermes muss diese Anfrage ablehnen.
Vermeiden Sie insbesondere folgende Einstellung: GATEWAY_ALLOW_ALL_USERS=true. Sie würde die globale Zugangsbeschränkung bewusst aufheben. Für einen Hermes Agent mit System- und Terminalzugriff sollte diese Einstellung nur in besonders kontrollierten Umgebungen verwendet werden.
Mehrere Personen freigeben
Sollen mehrere vertrauenswürdige Personen auf denselben Bot zugreifen, tragen Sie die Telegram-IDs durch Kommas getrennt ein:
TELEGRAM_ALLOWED_USERS=123456789,987654321,555555555Alle eingetragenen Personen erhalten in der Standardkonfiguration grundsätzlich Zugriff auf denselben Agenten und dessen verfügbare Werkzeuge. Eine User-ID sollte daher nur aufgenommen werden, wenn die betreffende Person tatsächlich Zugriff auf das System erhalten soll. Hermes verwaltet Gespräche zwar in getrennten Sitzungen, die zugrunde liegenden Agentenfunktionen bleiben jedoch gemeinsam verfügbar.
Telegram-Gateway aktivieren und Verbindung testen
Nach der Konfiguration sollte das Gateway zunächst testweise direkt im Terminal gestartet werden. Verwenden Sie dafür:
hermes gateway runbashDer Gateway-Prozess läuft nun im Vordergrund. Das bedeutet, dass Sie die laufenden Status- und Fehlermeldungen direkt im Terminal sehen. Lassen Sie dieses Fenster während des Tests geöffnet. Bei erfolgreicher Verbindung sollte eine Meldung erscheinen, die darauf hinweist, dass der Telegram-Adapter verbunden wurde. Öffnen Sie anschließend in Telegram den von Ihnen erstellten Bot und senden Sie eine Nachricht.
Führen Sie nacheinander folgende Tests durch:
- Statusbefehl senden: Senden Sie
/status. Hermes sollte nun Informationen zur aktuellen Sitzung zurückgeben. - Normale Frage stellen: Stellen Sie eine Frage an Ihren Agenten, zum Beispiel: „Welche System-Tools stehen dir aktuell zur Verfügung? Nenne nur die Namen und führe noch keines davon aus.“ Damit prüfen Sie, ob eine gewöhnliche Nachricht an Hermes übertragen, dort verarbeitet und die Antwort wieder an Telegram zurückgesendet wird.
- Neue Unterhaltung starten: Senden Sie
/new. Dieser Befehl startet eine neue Sitzung ohne den bisherigen Gesprächskontext. Antwortet der Bot auf diese Nachrichten, funktioniert die Zwei-Wege-Kommunikation.
Beenden Sie den Testlauf im Terminal mit der Tastenkombination Strg+C.
Gateway als Hintergrunddienst installieren
Damit Sie nicht dauerhaft ein offenes Terminalfenster benötigen, können Sie das Gateway als Dienst installieren:
hermes gateway installbashDanach lässt es sich mit folgenden Befehlen steuern:
hermes gateway start
hermes gateway stop
hermes gateway statusbashNach Änderungen an der Telegram-Konfiguration empfiehlt sich ein Neustart:
hermes gateway stop
hermes gateway startbashAlternativ steht auch ein direkter Neustartbefehl zur Verfügung:
hermes gateway restartbashhermes gateway start startet den zuvor installierten Hintergrunddienst. Ist noch kein Dienst installiert, verwenden Sie daher zuerst hermes gateway install. Der Befehl hermes gateway run ist dagegen für einen direkt sichtbaren Testlauf im Vordergrund vorgesehen.
Überprüfen Sie anschließend den Zustand:
hermes gateway statusbashSenden Sie danach erneut eine Nachricht an den Telegram-Bot. Er sollte nun auch antworten, obwohl kein Hermes-Terminalfenster mehr geöffnet ist.
Was tun, wenn der Bot nicht antwortet?
Führen Sie als ersten Diagnoseschritt folgenden Befehl aus:
hermes doctorbashHermes überprüft damit unter anderem die Installation, wichtige Konfigurationswerte und benötigte Abhängigkeiten. Gefundene Probleme werden zusammen mit möglichen Lösungen im Terminal angezeigt. Einige Fehler kann Hermes auf Wunsch automatisch zu beheben versuchen:
hermes doctor --fixPrüfen Sie anschließend, ob das Gateway läuft. Antwortet der Bot weiterhin nicht, kontrollieren Sie die Einrichtung manuell:
Prüfen Sie der Reihe nach:
- Ist der Bot-Token vollständig und ohne zusätzliche Leerzeichen eingetragen?
- Stimmt die numerische User-ID?
- Wurde tatsächlich die User-ID und nicht der Telegram-Benutzername eingetragen?
- Läuft das Gateway laut
hermes gateway status? - Funktioniert Hermes direkt im Terminal ohne Telegram?
- Hat der Rechner eine aktive Internetverbindung?
Für einen sichtbaren Fehlertest können Sie den Hintergrunddienst stoppen und das Gateway wieder direkt im Terminal starten:
hermes gateway stop
hermes gateway runbashFehler beim Verbindungsaufbau werden dann unmittelbar im Terminal angezeigt.
Hermes Agent mit Telegram rund um die Uhr betreiben
Läuft Hermes auf Ihrem Laptop oder Desktop-PC, ist der Telegram-Bot nur erreichbar, solange der Rechner eingeschaltet, mit dem Internet verbunden und das Gateway aktiv ist. Wird das Gerät heruntergefahren oder in den Ruhezustand versetzt, kann Hermes keine Telegram-Nachrichten mehr verarbeiten.
Für einen dauerhaften 24/7-Betrieb kann Hermes deshalb auf einem Linux-Server oder Virtual Private Server, kurz VPS, installiert werden. Ein VPS ist ein dauerhaft erreichbarer virtueller Computer in einem Rechenzentrum. Sie greifen in der Regel über eine verschlüsselte SSH-Verbindung auf dessen Terminal zu.
Empfohlener Ablauf für den Umzug
Installieren Sie Hermes zunächst auf dem Linux-Server und richten Sie dort den Modellanbieter ein. Testen Sie anschließend einen normalen Hermes-Chat. Führen Sie danach erneut den Gateway-Assistenten aus:
hermes gateway setupbashSie können dasselbe Telegram-Bot-Token und dieselbe freigegebene User-ID verwenden. Stoppen Sie jedoch das lokale Gateway, bevor Sie den Bot dauerhaft auf dem Server starten. Dadurch vermeiden Sie, dass zwei Hermes-Installationen gleichzeitig versuchen, denselben Bot zu bedienen.
Auf einem dauerhaft laufenden Linux-Server empfiehlt sich ein Systemdienst, der bereits beim Hochfahren des Servers gestartet wird:
sudo hermes gateway install --system
sudo hermes gateway start --systembashDen Status prüfen Sie mit:
sudo hermes gateway status --systembashDie aktuellen Protokollmeldungen lassen sich mit folgendem Befehl anzeigen:
journalctl -u hermes-gateway -fbashsystemd sorgt dafür, dass das Gateway im Hintergrund läuft und nach einem Neustart des Servers wieder gestartet werden kann. Hermes unterscheidet dabei zwischen einem benutzerbezogenen Dienst für Arbeitsrechner und einem systemweiten Dienst für dauerhaft laufende, monitorlose Server. Für einen VPS sollten Sie Hermes nicht unnötig mit Administratorrechten betreiben. Verwenden Sie möglichst einen eigenen Linux-User ohne uneingeschränkten Root-Zugriff.
Alternative: Hermes in Docker betreiben
Docker führt Anwendungen in voneinander abgegrenzten Containern aus. Das erleichtert die dauerhafte Ausführung und kann verhindern, dass Agentenbefehle unmittelbar auf dem eigentlichen Server-System ausgeführt werden. Nach der einmaligen Konfiguration kann der offizielle Hermes-Container beispielsweise so im Hintergrund gestartet werden:
docker run -d \
--name hermes \
--restart unless-stopped \
-v ~/.hermes:/opt/data \
nousresearch/hermes-agent gateway runbashDie Option --restart unless-stopped sorgt dafür, dass der Container nach einem Absturz oder Server-Neustart wieder gestartet wird, sofern er zuvor nicht bewusst gestoppt wurde. Das eingebundene Verzeichnis ~/.hermes speichert Konfiguration, Sitzungen und Zugangsdaten außerhalb des kurzlebigen Containers.
Docker ist kein zwingender Bestandteil der Telegram-Verbindung. Für Einsteigerinnen und Einsteiger ist eine normale Hermes-Installation mit dem von Hermes erzeugten systemd-Dienst häufig leichter nachzuvollziehen.
- 100 % DSGVO-konform und sicher in Deutschland gehostet
- Die leistungsstärksten KI-Modelle auf einer Plattform
- Kein Vendor Lock-in durch Open Source
Telegram-Gateway auf dem Server sicher betreiben
Für die Verbindung über Telegram muss normalerweise kein öffentlicher Server-Port geöffnet werden. Das Hermes-Gateway verwendet standardmäßig Long Polling. Dabei baut Hermes selbst eine ausgehende Verbindung zu Telegram auf und fragt regelmäßig nach neuen Nachrichten. Telegram muss daher nicht direkt von außen auf den Server zugreifen.
Wenn Sie ausschließlich Telegram als Bedienoberfläche verwenden, sollten Sie den internen Hermes-API-Port nicht öffentlich freigeben. Jeder zusätzliche offene Port macht den Server aus dem Internet erreichbar und kann die mögliche Angriffsfläche vergrößern.
Sicherheitscheck vor dem 24/7-Betrieb
Prüfen Sie vor dem dauerhaften Start des Gateways folgende Einstellungen:
- Der Telegram-Bot-Token ist nur in der geschützten Hermes-Konfiguration gespeichert.
- In
TELEGRAM_ALLOWED_USERSstehen ausschließlich die numerischen IDs ausdrücklich berechtigter Personen. GATEWAY_ALLOW_ALL_USERSist nicht aktiviert.- Hermes wird nicht unnötig mit Root- beziehungsweise Administratorrechten ausgeführt.
- Nicht benötigte Server- und API-Ports bleiben geschlossen.
- Zugangsdaten werden weder in öffentliche Git-Repositories noch in frei zugängliche Protokolldateien kopiert.
- Das Betriebssystem und Hermes Agent werden regelmäßig aktualisiert.
- Werkzeuge mit weitreichendem Datei- oder Terminalzugriff werden möglichst in einer isolierten - Umgebung ausgeführt.
Für produktive Installationen empfiehlt sich beispielsweise ein isoliertes Terminal-Backend auf Basis von Docker. Dadurch werden vom Agenten ausgeführte Befehle innerhalb eines Containers statt unmittelbar auf dem eigentlichen Server ausgeführt. Diese Isolation ersetzt jedoch nicht die Telegram-Freigabeliste oder den Schutz des Bot-Tokens, sondern ergänzt beide Sicherheitsmaßnahmen.
- NEU: Flexibel skalieren mit VM-Cloning, Load Balancing, neuen Storage-Optionen und mehr
- Unbegrenzt Traffic, > 99,99% Verfügbarkeit
- 24/7 Experten-Support mit persönlichem Berater
Fazit
Für die Verbindung von Hermes Agent mit Telegram benötigen Sie lediglich einen über BotFather erstellten Telegram-Bot, dessen geheimen API-Token und Ihre numerische Telegram-User-ID. Der Befehl hermes gateway setup führt durch die Konfiguration und hinterlegt Ihre ID als Zugriffsbeschränkung.
Nach einem ersten Test können Sie das Gateway als Hintergrunddienst installieren und dauerhaft aktivieren. Auf einem Linux-Server oder VPS bleibt der Agent dadurch auch erreichbar, wenn Ihr eigener Computer ausgeschaltet ist. Entscheidend ist, den Bot-Token geheim zu halten, nur ausdrücklich erlaubte User-IDs einzutragen und die Systemwerkzeuge des Agenten möglichst von der eigentlichen Serverumgebung zu isolieren.