SSD Nodes Learn 🎉 VPS ab $4.99/Monat
Anleitungen Matt ConnorVon Matt Connor

Hermes-Agent vom Smartphone aus erreichen

Erreichen Sie das Hermes-Web-Dashboard vom Smartphone über Tailscale oder HTTPS. Der Leitfaden zeigt auch SSH und wie Sie den Zugriff bei Verlust widerrufen.

Die drei Möglichkeiten, von Ihrem Smartphone aus Ihren Hermes-Agenten zu erreichen

Um Ihren Hermes-Agenten von Ihrem Smartphone aus zu erreichen, verwenden Sie sein Web-Dashboard. Die eigentliche Entscheidung betrifft den Dienst, der vor diesem Dashboard liegt. Option 1 ist ein privates Mesh-Netzwerk. Dabei lauscht das Dashboard nur auf einer Tailscale-Adresse, und kein Port ist aus dem Internet erreichbar. Option 2 ist ein öffentlicher Endpunkt hinter einem Reverse Proxy mit TLS (Transport Layer Security) und einer Anmeldung. Diese Anmeldung ist dann der einzige Schutz für ein Terminal auf Ihrem Server. Option 3 ist SSH (Secure Shell) aus einer Terminal-App. Dafür ist am wenigsten Einrichtung erforderlich, und Sie erhalten den weitreichendsten Zugriff.

Dieser Leitfaden beginnt dort, wo einen Hermes-Agenten auf Ihrem eigenen VPS betreiben endet. Der Agent ist installiert, antwortet auf der Kommandozeile, und Sie möchten ihn nun unterwegs verwenden.

Die folgenden Befehle beziehen sich auf den Tag v2026.8.3, der am 3 August 2026 veröffentlicht und in den Release Notes als v0.20.0 bezeichnet wurde. Hermes wird häufig veröffentlicht. Fixieren Sie den Rechner daher auf einen Tag, statt main zu folgen. Der Installer akzeptiert einen Commit:

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash -s -- --commit 3c27eb6234bf
hermes version

hermes version zeigt an, was tatsächlich installiert ist. Vergleichen Sie die Ausgabe mit dem Tag, bevor Sie einem Flag auf dieser Seite vertrauen.

Was das Repository bereitstellt und was nicht

Im Hermes-Repository gibt es keine iOS- oder Android-App. Der native Client ist hermes desktop (Alias hermes gui), eine Electron-Anwendung für macOS, Windows und Linux. Er kann sich statt mit einem lokalen Agenten mit einem entfernten Agenten verbinden: Setzen Sie die Remote-URL unter Gateway in den Settings auf http://<server-address>:9119 oder exportieren Sie HERMES_DESKTOP_REMOTE_URL=http://<server-address>:9119, bevor Sie die Anwendung starten. Damit lässt sich ein zweiter Laptop anbinden. Für ein Telefon bringt das nichts.

Die Oberfläche, die Sie auf einem Telefon verwenden, ist hermes dashboard, die Browseroberfläche. Sie verwaltet Konfiguration, Sitzungen, Cron-Jobs, Skills, Logs und Messaging-Plattformen und enthält ein Terminal: Der Server startet hermes --tui hinter einem PTY (Pseudo-Terminal) und überträgt die Ausgabe in die Seite. Auf einem schmalen Bildschirm wird die Sitzungsumschaltung in ein seitlich einblendbares Panel eingeklappt. Dadurch bleibt das Layout auch auf einem Telefon nutzbar.

Standardmäßig lauscht das Dashboard auf 127.0.0.1:9119 und öffnet einen Browser-Tab direkt auf dem Server. Auf einem Headless-VPS (virtuellen privaten Server) ist das nicht hilfreich. Starten Sie es ohne Browser und prüfen Sie den Socket:

hermes dashboard --no-open
ss -lntp | grep 9119

Ein Listener auf 127.0.0.1:9119 ist nur vom Server aus erreichbar. Ein Listener auf 0.0.0.0:9119 ist aus jedem Netzwerk erreichbar, mit dem die Maschine verbunden ist, einschließlich des öffentlichen Netzwerks. Diese eine Zeile bestimmt, wie stark Ihr System exponiert ist. Lesen Sie sie daher aus, statt davon auszugehen.

Option 1: ein privates Mesh mit Tailscale

Wählen Sie diese Option, sofern kein Grund dagegenspricht. Tailscale ist ein Mesh-VPN (virtuelles privates Netzwerk) auf Basis von WireGuard. Jedes eingebundene Gerät erhält eine stabile Adresse und kommuniziert direkt mit den anderen Geräten. Ihr Telefon wird in dasselbe Mesh aufgenommen. Das Dashboard benötigt dadurch überhaupt keinen öffentlichen Port.

Auf dem Server:

curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up
tailscale ip -4

Installieren Sie die Tailscale-App auf dem Telefon und melden Sie sich mit demselben Konto an. tailscale status auf dem Server führt das Telefon anschließend nach Namen auf. Binden Sie das Dashboard nun an die von tailscale ip -4 ausgegebene Adresse:

hermes dashboard --host 100.101.102.103 --port 9119 --no-open

Wenn Sie an die Mesh-Adresse statt an 0.0.0.0 binden, ist der Listening-Socket nur auf der Tailscale-Schnittstelle vorhanden. Ein Port-Scan Ihrer öffentlichen IP-Adresse findet auf 9119 nichts, weil dort kein Dienst auf Verbindungen wartet. Ihre Firewall ist dann nicht mehr die einzige Schutzmaßnahme. Bestätigen Sie dies erneut mit ss -lntp | grep 9119.

Die Bind-Adresse legt auch die Authentifizierung fest. Dieser Teil wird häufig übersehen. Auf 127.0.0.1 hat das Dashboard keine Anmeldung. Für jede andere Adresse ist das Authentifizierungs-Gate zwingend erforderlich. Ohne konfigurierten Provider verweigert der Server den Start. Das Projekt bezeichnet dieses Verhalten als Fail-Closed. Starten Sie den Dienst beim ersten Mal interaktiv. Er bietet dann an, direkt einen Benutzernamen und ein Passwort einzurichten. Das Ergebnis wird in ~/.hermes/.env geschrieben:

HERMES_DASHBOARD_BASIC_AUTH_USERNAME=you
HERMES_DASHBOARD_BASIC_AUTH_PASSWORD_HASH=scrypt$16384$8$1$...
HERMES_DASHBOARD_BASIC_AUTH_SECRET=a-long-random-string

Erzeugen Sie dieses Secret mit openssl rand -hex 32 und ändern Sie es danach nicht mehr. Damit wird das Session-Cookie signiert. Eine Änderung meldet daher jedes Gerät ab. In derselben Datei befinden sich auch die API-Schlüssel für Ihre Modelle. Schützen Sie die Datei deshalb mit chmod 600 ~/.hermes/.env.

Prüfen Sie das Authentifizierungs-Gate von einem anderen Gerät im Mesh, bevor Sie ihm vertrauen:

curl -s http://100.101.102.103:9119/api/status | jq '.auth_required, .auth_providers'

true gefolgt von ["basic"] bedeutet, dass das Gate aktiviert ist und der Passwort-Provider die Anfragen verarbeitet. Die eigene Dokumentation des Projekts beschreibt diesen Provider unmissverständlich: Er ist für ein vertrauenswürdiges Netzwerk oder ein VPN vorgesehen und nicht für ein Dashboard geeignet, das aus dem öffentlichen Internet erreichbar ist. In einem Mesh liegt genau diese Situation vor.

Für HTTPS innerhalb des Tailnets übertragen Sie den Port an Tailscale:

sudo tailscale serve --bg localhost:9119
sudo tailscale serve status

Tailscale übernimmt die TLS-Terminierung mit einem Zertifikat, das für den MagicDNS-Namen des Computers ausgestellt wurde. Dadurch zeigt der Browser keine Warnung mehr an, und das Session-Cookie erhält sein Secure-Flag. Aktivieren Sie zunächst MagicDNS und HTTPS Certificates auf der DNS-Seite der Tailscale-Administrationskonsole. Lesen Sie dort auch den Hinweis: Die Namen Ihrer Computer und der DNS-Name Ihres Tailnets werden im öffentlichen Certificate-Transparency-Register veröffentlicht, das jeder lesen kann.

Die eigentlichen Kosten entstehen durch den Koordinationsserver. Der Datenverkehr zwischen Ihrem Telefon und Ihrem VPS ist Ende-zu-Ende-verschlüsselt und läuft nicht über Tailscale. Das Konto, das festlegt, welche Geräte zum Mesh gehören, befindet sich jedoch nicht auf Ihrer Hardware. Falls das relevant ist, betreiben Sie die Control Plane mit Headscale, dem selbst gehosteten Tailscale-Control-Server selbst und verweisen Sie die Clients mit tailscale up --login-server https://headscale.example.com darauf. Wenn Sie das Mesh nicht verwenden und Peers stattdessen manuell konfigurieren möchten, beschreibt der Vergleich zwischen plain WireGuard und Tailscale, worauf Sie verzichten.

Option 2: ein öffentlich erreichbarer HTTPS-Endpunkt und die darin verborgene Falle

Manchmal ist ein Mesh nicht verfügbar. Auf einem Diensttelefon lässt sich möglicherweise kein VPN-Client installieren. Dann kommt das Dashboard hinter einen Reverse Proxy. Lassen Sie das Dashboard an Loopback gebunden und überlassen Sie Caddy die Zertifikatsverwaltung:

hermes.example.com {
  reverse_proxy 127.0.0.1:9119
}

Caddy ruft das Zertifikat selbstständig ab und erneuert es. Seine reverse_proxy leitet WebSocket-Upgrades ohne zusätzliche Direktiven weiter. Das benötigt das eingebettete Terminal des Dashboards. Bei nginx müssen Sie die Header Upgrade und Connection selbst ergänzen. Ein Let’s-Encrypt-Zertifikat mit Certbot für nginx ausstellen behandelt die TLS-Seite dieser Konfiguration. Teilen Sie Hermes seinen öffentlichen Namen mit, damit die Login-Callbacks auf den richtigen Host verweisen:

dashboard:
  public_url: "https://hermes.example.com"

Nun zur Falle. Die Authentifizierungsprüfung richtet sich nach der Bind-Adresse, nicht nach der Adresse, von der die Anfrage stammt. Ein Dashboard, das an 127.0.0.1 gebunden ist und hinter einem Proxy läuft, sieht Loopback, hält keine Anmeldung für erforderlich und liefert den Inhalt an jeden aus, den der Proxy passieren lässt. Prüfen Sie, was Sie tatsächlich veröffentlicht haben:

curl -s https://hermes.example.com/api/status | jq '.auth_required'

Wenn dieser Befehl false ausgibt, ist ein Terminal auf Ihrem Server aus dem Internet über eine URL erreichbar. Dafür ist kein Exploit erforderlich. Auch in den Logs wird nichts darauf hinweisen. Es gibt zwei Maßnahmen. Sie sollten mindestens eine davon umsetzen. Entweder verlagern Sie die Authentifizierung in den Proxy und schalten Authentik als selbst gehosteten Single-Sign-on-Provider davor, beispielsweise über Forward Auth. Oder Sie konfigurieren den OIDC-Provider (OpenID Connect) des Dashboards:

HERMES_DASHBOARD_OIDC_ISSUER=https://auth.example.com/application/o/hermes/
HERMES_DASHBOARD_OIDC_CLIENT_ID=hermes-dashboard
HERMES_DASHBOARD_OIDC_SCOPES="openid profile email"

Auch bei korrekter Konfiguration gibt es für diese Option eine Untergrenze. Eine öffentliche Login-Seite ist für jeden erreichbar und kann von jedem angegriffen werden. Dahinter befindet sich eine Shell auf Ihrem VPS. Ein Benutzername und ein Passwort bieten dafür nur einen geringen Schutz. Deshalb empfehlen die Dokumentation für öffentliche Bind-Adressen OAuth oder OIDC. Begrenzen Sie die Login-Versuche. Lassen Sie ufw für alles außer den Proxy-Ports und SSH geschlossen, und prüfen Sie das Access-Log gelegentlich.

Option 3: SSH und mosh von einem mobilen Terminal

Der Weg mit dem geringsten Aufwand: Installieren Sie eine Terminal-App auf dem Telefon, laden Sie einen SSH-Schlüssel hinein und verwenden Sie die Textoberfläche des Agents.

ssh you@vps.example.com
tmux new -A -s phone
hermes --tui

tmux new -A -s phone verbindet sich mit einer Sitzung namens phone oder erstellt sie, falls sie nicht vorhanden ist. Dadurch läuft der Agent weiter, wenn die Verbindung abbricht, und Sie landen beim nächsten Mal wieder an derselben Stelle. Dasselbe Muster wird für Claude Code von einem Telefon aus steuern verwendet.

Normales SSH über ein Mobilfunknetz ist unpraktisch, weil die Verbindung abbricht, sobald das Telefon seine Adresse ändert oder in den Ruhezustand wechselt. mosh behebt dieses Problem. Es verwendet UDP (User Datagram Protocol) und synchronisiert den Terminalzustand statt eines Bytestreams. Dadurch bleibt eine Sitzung erhalten, wenn Sie vom WLAN ins Mobilfunknetz wechseln:

sudo apt install -y mosh
sudo ufw allow 60000:61000/udp

Führen Sie auf dem Telefon mosh you@vps.example.com aus. mosh startet mosh-server über Ihre bestehende SSH-Anmeldung und verschiebt die Sitzung anschließend zu UDP im Bereich von 60000 bis 61000. Deshalb muss dieser Bereich geöffnet sein.

Die Sicherheitsauswirkung ist unmittelbar klar. Eine SSH-Sitzung ist eine Shell, und eine Shell kann alles ausführen, was dieses Konto ausführen darf. Die Bestätigungsabfragen des Agents sind dann die letzte Hürde zwischen einem gestohlenen, entsperrten Telefon und Ihren Dateien. Verwenden Sie dafür ein dediziertes Konto ohne root-Berechtigungen und ausschließlich Schlüssel. Arbeiten Sie außerdem an der Absicherung von SSH auf einem VPS, bevor Sie einen Schlüssel auf einem Gerät hinterlegen, das Sie mit sich führen.

Was in einem Mobilfunknetz nicht funktioniert

Vier Dinge funktionieren nicht. Keines davon lässt sich durch Konfiguration beheben.

Das Dashboard meldet Sie ab, während Sie nicht hinsehen. Access Tokens haben eine TTL (time to live) von 15 Minuten. Der aktuelle API-Vertrag enthält kein Refresh Token. Wenn das Token abläuft, empfängt die Seite die Antwort 401 und navigiert zurück zu /login. Öffnen Sie das Dashboard, stecken Sie das Telefon für zwanzig Minuten ein, und Sie sehen beim nächsten Blick wieder den Anmeldebildschirm. Ihre Eingabe ist verloren. Nichts ist defekt. Melden Sie sich erneut an.

Das eingebettete Terminal überlebt keinen Tab im Hintergrund. Der Server startet die TUI (text user interface) hinter einem PTY. Wenn der Tab geschlossen wird, beendet der Server sie ordnungsgemäß. Beim erneuten Öffnen wird eine neue Sitzung gestartet. Mobile Browser verwerfen Hintergrund-Tabs, um Speicher freizugeben. Wenn Sie lange genug zu einer anderen Anwendung wechseln, wird das Terminal daher beendet. Ihr Chatverlauf ist sicher, weil Sitzungen auf dem Server gespeichert werden und hermes sessions list sie weiterhin anzeigt. Das Terminal selbst können Sie jedoch nicht wieder verbinden. Wenn Sie eine Sitzung benötigen, die bestehen bleibt, verwenden Sie tmux über SSH.

Inaktive Verbindungen brechen unbemerkt ab. Mobilfunkanbieter verwerfen inaktive TCP-Verbindungen, um Einträge in der NAT-Tabelle (network address translation) freizugeben. Sobald der Bildschirm ausgeschaltet ist, verarbeitet das Telefon das Netzwerk fast überhaupt nicht mehr. Ein WebSocket, der eine Weile keine Daten übertragen hat, ist beim Entsperren normalerweise bereits beendet. Die Seite verbindet sich erst wieder, wenn Sie sie berühren. Deshalb fühlt sich mosh auf einem Telefon besser an als SSH: Eine Verbindung, die verloren gehen kann, war nie erforderlich.

Keine Benachrichtigung wird automatisch gesendet. Weder das Dashboard noch eine SSH-Sitzung kann Ihr Telefon aufwecken. Auf dem Gerät ist keine Hermes-App installiert. Daher gibt es keinen Pfad zum Push-Dienst der Plattform. Ein langer Agent-Lauf endet, und Sie erfahren es erst beim nächsten Blick.

Benachrichtigungen erreichen Sie über das Messaging-Gateway

Die Lösung für das letzte Problem ist das Gateway. Es bietet einen grundsätzlich anderen Zugriff auf den Agenten. hermes gateway verbindet den Agenten mit Messaging-Plattformen wie Telegram, Discord, Slack, WhatsApp, Signal und E-Mail. Sie kommunizieren dann innerhalb einer App mit dem Agenten, die bereits einen Push-Kanal auf Ihrem Telefon besitzt, die Zustellung im Hintergrund übernimmt und auch mit unterbrochenen Netzwerkverbindungen umgehen kann.

hermes gateway setup
hermes gateway install
hermes gateway status

hermes gateway install registriert das Gateway als systemd-Dienst, sodass es nach einem Reboot wieder gestartet wird. Das Hermes-Installationsprogramm erstellt keine Service-Units für Sie. hermes dashboard wird daher nach einem Neustart nicht automatisch wieder gestartet. Erstellen Sie eine Unit für alle Komponenten, von denen Sie abhängen. Das Schreiben von systemd-Diensten und Timern auf einem VPS beschreibt die Unit-Datei selbst.

Auch ein geplanter Job kann ein Ergebnis auf dieselbe Weise senden, ohne dass eine Unterhaltung erforderlich ist:

hermes send -t telegram -s "Backup report" -f /home/you/report.txt

Die Autorisierung verweigert standardmäßig jeden Zugriff. Wenn keine Allowlist gesetzt und GATEWAY_ALLOW_ALL_USERS nicht festgelegt ist, wird jeder Benutzer abgewiesen. Das ist der richtige Ausgangspunkt. Tragen Sie die gewünschten Konten in ~/.hermes/.env ein:

TELEGRAM_ALLOWED_USERS=123456789
GATEWAY_ALLOWED_USERS=123456789

Alternativ können Sie die Kopplung per Code aktivieren, statt numerische IDs einzufügen. Setzen Sie dafür unauthorized_dm_behavior: pair in ~/.hermes/config.yaml. Ein unbekanntes Konto, das dem Agenten eine Nachricht sendet, erhält einen achtstelligen Code. Bis Sie diesen genehmigen, geschieht nichts weiter:

hermes pairing list
hermes pairing approve telegram ABC12DEF
hermes pairing revoke telegram 123456789

Codes laufen nach einer Stunde ab. Ein Benutzer kann alle zehn Minuten einen Code anfordern. Nach fünf fehlgeschlagenen Versuchen wird das Konto gesperrt.

Den Schaden eines gestohlenen Telefons begrenzen

Ein Telefon, das Ihren Agenten erreichen kann, kann Befehle auf Ihrem Server ausführen. Außerdem gehen Telefone verloren. Legen Sie jetzt fest, was die Person damit tun kann.

Lassen Sie Genehmigungen aktiviert. approvals.mode ist standardmäßig auf smart gesetzt. Dabei bewertet ein zusätzliches Modell das Risiko und genehmigt nur Befehle mit geringem Risiko automatisch. Die Einstellung off entspricht der Ausführung aller Befehle mit --yolo. HERMES_YOLO_MODE=1 aktiviert dasselbe über die Umgebung. Tragen Sie kein Telefon bei sich, das mit einem Agenten kommuniziert, wenn dieser Modus aktiviert ist. Setzen Sie approvals.cron_mode: deny, damit geplante Jobs sich nicht selbst genehmigen können, während Sie schlafen.

approvals:
  mode: smart
  cron_mode: deny

Geben Sie dem Agenten weniger Möglichkeiten, Schaden anzurichten. terminal.backend: docker führt Befehle in einem Container aus. Dabei werden bis auf eine kurze Liste alle Linux-Capabilities entfernt, no-new-privileges gesetzt und die Prozessanzahl begrenzt. Dadurch bildet der Container die Sicherheitsgrenze und nicht die Eingabeaufforderung. terminal.cwd legt das Arbeitsverzeichnis fest. HERMES_WRITE_SAFE_ROOT beschränkt write_file und patch auf die von Ihnen angegebenen Verzeichnisse. Schreibzugriffe außerhalb dieser Verzeichnisse werden blockiert und können nicht genehmigt werden.

export HERMES_WRITE_SAFE_ROOT=/home/you/projects:/home/you/.hermes

Hermes blockiert bereits Schreibzugriffe auf ~/.ssh, ~/.aws, ~/.kube und /etc/sudoers. Außerdem verweigert Hermes das Schreiben von .env-Dateien an beliebigen Stellen im Dateisystem und lehnt unabhängig von Ihren Genehmigungseinstellungen eine festgelegte Liste destruktiver Befehle ab. Betrachten Sie das als Mindestschutz und nicht als Ihren Sicherheitsplan. Führen Sie den Agenten als normaler Benutzer aus, niemals als root. Dasselbe gilt für jeden unbeaufsichtigt laufenden Coding-Agenten. Claude Code sicher auf einem VPS ausführen beschreibt dieses Vorgehen ausführlicher.

Dokumentieren Sie anschließend die Schritte zum Widerrufen des Zugriffs, bevor Sie sie benötigen. Wenn Sie das Gerät in der Tailscale-Administrationskonsole entfernen, wird der Mesh-Zugriff sofort beendet. Wenn Sie HERMES_DASHBOARD_BASIC_AUTH_SECRET ändern und den Dienst neu starten, werden alle Dashboard-Sitzungen auf allen Geräten ungültig, weil dieser Wert das Sitzungscookie signiert. Wenn Sie den öffentlichen Schlüssel des Telefons aus ~/.ssh/authorized_keys löschen, wird der SSH-Zugriff beendet. hermes pairing revoke telegram <user-id> entfernt ein Messaging-Konto. Wenn das Gerät Zugriff auf etwas hatte, mit dem die Schlüssel Ihres Providers gelesen werden konnten, entfernen Sie diese mit hermes auth logout <provider> und stellen Sie beim Provider neue Schlüssel aus.

Prüfen Sie das Ergebnis, statt es nur anzunehmen. Dies sind Befehle, die Sie auf Ihrem eigenen System ausführen. Die Ausgabe hängt von Ihrer Konfiguration ab:

tailscale status
hermes pairing list
hermes logs gateway -n 100
hermes status --deep

Die Logs liegen unter ~/.hermes/logs/. Lesen Sie sie nach einem Vorfall und gelegentlich auch dann, wenn kein Vorfall aufgetreten ist.

FAQ

Gibt es eine offizielle mobile Hermes-App für iOS oder Android?

Nein. Das Hermes-Repository enthält eine command-line-Schnittstelle, ein Web-Dashboard und einen Electron-Desktop-Client für macOS, Windows und Linux. Es gibt keinen iOS- oder Android-Build des Herstellers. Auf einem Smartphone verwenden Sie das Web-Dashboard im Browser, einen SSH-Client oder eine über hermes gateway angebundene Messaging-Plattform. Es gibt mobile Clients von Drittanbietern. Dabei handelt es sich um Code von Drittanbietern, der Zugriffsdaten für Ihren Agenten verwaltet. Lesen Sie daher den Quellcode, bevor Sie einen solchen Client installieren.

Warum meldet mich das Hermes-Dashboard auf meinem Smartphone ab?

Access Tokens haben eine TTL von 15 Minuten, und der aktuelle API-Vertrag enthält kein Refresh Token. Nach Ablauf des Tokens empfängt die Seite den Status 401 und navigiert zu /login. Wenn ein Browser auf einem Smartphone im Hintergrund läuft, wird das besonders deutlich: Zwanzig Minuten in einer anderen Anwendung reichen dafür aus. Setzen Sie HERMES_DASHBOARD_BASIC_AUTH_SECRET auf einen stabilen zufälligen Wert. Dadurch bleibt der Session-Signaturschlüssel über Neustarts hinweg gleich. Das beseitigt den zweiten Grund für die Abmeldung.

Kann ich das Hermes-Dashboard sicher im öffentlichen Internet bereitstellen?

Nur mit einer Authentifizierung, die Sie selbst überprüft haben. Das Authentifizierungs-Gate wird anhand der Bind-Adresse aktiviert. Ein Dashboard, das an 127.0.0.1 gebunden ist und hinter einem Reverse Proxy läuft, fordert daher im Internet niemals eine Anmeldung an. Führen Sie curl -s https://your-host/api/status | jq '.auth_required' aus und lesen Sie die Ausgabe. Verwenden Sie OAuth oder OIDC statt eines Benutzernamens und Passworts, da die Projektdokumentation angibt, dass der Passwortanbieter für vertrauenswürdige Netzwerke und VPNs vorgesehen ist. Ein privates Mesh umgeht diese Frage vollständig und ist deshalb die bessere Standardeinstellung.

Benötige ich ein Tailscale-Konto, oder kann ich die Control Plane selbst hosten?

Sie können sie selbst hosten. Headscale ist eine offene Implementierung des Tailscale-Koordinationsservers. Offizielle Tailscale-Clients verbinden sich damit über tailscale up --login-server https://headscale.example.com. Sie verwalten dann selbst die Liste der Geräte, die dem Mesh beitreten dürfen. Dafür müssen Sie diesen Server betreiben und sichern. Solange er nicht verfügbar ist, können Sie kein Gerät registrieren oder erneut authentifizieren.

Wie erhalte ich eine Benachrichtigung auf meinem Smartphone, wenn der Agent einen Auftrag abgeschlossen hat?

Verwenden Sie das Messaging-Gateway. Das Dashboard und SSH können ein Smartphone nicht aufwecken, da auf dem Gerät keine Hermes-App für den Empfang von Push-Benachrichtigungen vorhanden ist. Verbinden Sie den Agenten über hermes gateway setup mit Telegram, Signal, Discord oder einer anderen unterstützten Plattform. Anschließend stellt die App dieser Plattform die Benachrichtigung zu. Ein Cronjob kann mit hermes send -t telegram -s "Job done" -f /path/to/report.txt ebenfalls eine einzelne Nachricht senden. Dafür muss das Modell nicht aufgerufen werden.

#hermes#mobile#remote-access#tailscale#ai-agents