🤖HermesBlog
Hermes Messaging Platforms · Teil 88/9/2026

SMS — Command AI by Text

SMS — Command AI by Text — easy-to-understand guide based on official docs

messaging-sms

SMS – KI per Textnachricht steuern

Erinnerst du dich an die Zeit vor Smartphones, als SMS der schnellste Weg war, jemanden zu erreichen? Nun, dieser klassische Kanal lebt und ist immer noch topaktuell – und jetzt ist er ein vollwertiger Weg, um mit deinem KI-Assistenten zu sprechen.

Hermes verbindet sich jetzt über Twilio mit SMS, sodass jeder mit einer Telefonnummer deinem Bot eine SMS schreiben und KI-generierte Antworten zurückbekommen kann. Keine App-Installation, keine QR-Codes, keine Lernkurve. Nur einfache, altmodische Textnachrichten.

Was gibt es Neues in diesem Update

Das SMS-Gateway hat ein ordentliches Upgrade bekommen. Hier ist, was sich geändert hat:

  • SMS_WEBHOOK_URL ist jetzt erforderlich – Hermes validiert die Webhook-Signaturen von Twilio, um Hochstapler fernzuhalten. Das Gateway startet ohne diese Angabe nicht.
  • Neue UmgebungsvariablenSMS_WEBHOOK_HOST, SMS_WEBHOOK_PORT, SMS_INSECURE_NO_SIGNATURE und SMS_ALLOW_ALL_USERS geben dir mehr Kontrolle.
  • Bessere Sicherheitsstandards – Das Gateway verweigert standardmäßig allen Benutzern den Zugriff. Du musst Telefonnummern explizit auf die Whitelist setzen.
  • Intelligenteres Aufteilen von Nachrichten – Lange Antworten werden jetzt an natürlichen Grenzen (Zeilenumbrüche, dann Leerzeichen) aufgeteilt, anstatt mitten im Wort abgeschnitten zu werden.

Erste Schritte

Zuerst brauchst du ein Twilio-Konto und eine Telefonnummer mit SMS-Funktion. Twilio bietet eine kostenlose Testversion an, sodass du alles testen kannst, ohne einen Cent auszugeben.

Du brauchst außerdem einen öffentlich erreichbaren Server. Twilio sendet Webhooks an deinen Server, wenn jemand deiner Nummer eine SMS schreibt. Wenn du Hermes lokal ausführst, können Tools wie cloudflared oder ngrok deinen Localhost für das Internet freigeben.

Installiere das SMS-Extra mit:

cd ~/.hermes/hermes-agent && uv pip install -e ".[sms]"

Schritt 1: Besorge dir deine Twilio-Zugangsdaten

Gehe zur Twilio-Konsole, kopiere deine Account SID und deinen Auth Token vom Dashboard und notiere deine Telefonnummer im E.164-Format (wie +15551234567).

Schritt 2: Hermes konfigurieren

Der einfachste Weg ist der interaktive Assistent:

hermes gateway setup

Wähle SMS (Twilio) und folge den Anweisungen.

Lieber manuell einrichten? Füge Folgendes zu ~/.hermes/.env hinzu:

TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TWILIO_AUTH_TOKEN=your_auth_token_here
TWILIO_PHONE_NUMBER=+15551234567

# Sicherheit: Auf bestimmte Telefonnummern beschränken (empfohlen)
SMS_ALLOWED_USERS=+15559876543,+15551112222

# Optional: Einen Home-Channel für die Zustellung von Cron-Jobs festlegen
SMS_HOME_CHANNEL=+15559876543

Schritt 3: Den Twilio-Webhook einrichten

Gehe in der Twilio-Konsole zu Phone Numbers → Manage → Active Numbers, klicke auf deine Nummer und setze unter Messaging → A MESSAGE COMES IN den Webhook auf:

https://your-server:8080/webhooks/twilio

Setze die HTTP-Methode auf POST.

Wichtig: Setze SMS_WEBHOOK_URL auf exakt dieselbe URL, die du in Twilio konfiguriert hast. Dies ist für die Signaturvalidierung erforderlich:

SMS_WEBHOOK_URL=https://your-server:8080/webhooks/twilio

Der Webhook-Port ist standardmäßig 8080, du kannst ihn aber mit SMS_WEBHOOK_PORT überschreiben.

Schritt 4: Das Gateway starten

hermes gateway

Du solltest so etwas sehen:

[sms] Twilio webhook server listening on 127.0.0.1:8080, from: +1555***4567

Schicke jetzt eine SMS an deine Twilio-Nummer – Hermes wird per SMS antworten.

Wie sich SMS-Verhalten unterscheidet

SMS ist ein reines Textmedium, daher passt sich Hermes an:

  • Kein Markdown – Es wird automatisch entfernt, da SMS es als Literalzeichen darstellt
  • 1600-Zeichen-Limit – Längere Antworten werden an natürlichen Grenzen auf mehrere Nachrichten aufgeteilt
  • Echo-Verhinderung – Nachrichten von deiner eigenen Twilio-Nummer werden ignoriert, um Schleifen zu vermeiden
  • Datenschutz – Telefonnummern werden in Protokollen geschwärzt

Sicherheit ist wichtig

Hermes validiert, dass eingehende Webhooks wirklich von Twilio stammen, indem der X-Twilio-Signature-Header (HMAC-SHA1) geprüft wird. Dies verhindert, dass Angreifer gefälschte Nachrichten einschleusen.

Das Gateway verweigert standardmäßig allen Benutzern den Zugriff. Du musst eine Whitelist konfigurieren:

SMS_ALLOWED_USERS=+15559876543,+15551112222

Oder, wenn du dich leichtsinnig fühlst (bitte nicht tun):

SMS_ALLOW_ALL_USERS=true

Für die lokale Entwicklung ohne öffentliche URL kannst du die Signaturvalidierung deaktivieren:

SMS_INSECURE_NO_SIGNATURE=true

Aber denk daran – das ist nur für die lokale Entwicklung gedacht, niemals für die Produktion.

Eine letzte Warnung

SMS hat keine eingebaute Verschlüsselung. Verwende es nicht für sensible Vorgänge. Für alles Vertrauliche bleib bei Signal oder Telegram.

Fehlerbehebung

Nachrichten kommen nicht an? Überprüfe:

  1. Ob deine Webhook-URL korrekt und öffentlich erreichbar ist
  2. Ob deine TWILIO_ACCOUNT_SID und dein TWILIO_AUTH_TOKEN korrekt sind
  3. Die Twilio-Konsole → Monitor → Logs → Messaging auf Zustellfehler
  4. Ob deine Telefonnummer in SMS_ALLOWED_USERS steht

Das war’s! Schick deinem Bot eine SMS, erhalte Antworten. So einfach ist das.


📖 Offizielle Dokumentation

この記事は Hermes Agent のOffizielle Dokumentationに基づいています:Offizielle Dokumentation › user-guide/messaging/sms