Feature Request
Source: Community request from @PaulTisl
Problem
Users want secure remote access to the Hermes API server / Open WebUI without exposing ports publicly or setting up reverse proxies. Tailscale's tailscale serve provides zero-config HTTPS tunneling over a private mesh network — Claw3D already uses this pattern.
Proposal
Add optional Tailscale serve integration so users can expose their local Hermes API server over their Tailnet with a single config toggle or CLI flag.
Possible approaches (lightest to heaviest):
-
Docs only — Document the one-liner: tailscale serve https://localhost:8642 alongside gateway setup. Zero code changes.
-
Config flag + auto-launch — Add a gateway.tailscale_serve: true config option. When enabled, hermes gateway start spawns tailscale serve pointing at the API server port as a subprocess alongside the gateway. Teardown on hermes gateway stop.
-
CLI flag — hermes gateway start --tailscale as a one-shot option without persisting to config.
Considerations
- Tailscale must already be installed and authenticated (
tailscale status should succeed)
- The API server key (
HERMES_API_KEY) should be enforced when exposing remotely — warn if unset
tailscale serve handles HTTPS termination automatically
- launchd/systemd service definition may need updating if we want Tailscale serve to persist across reboots alongside the gateway
Prior Art
- Claw3D uses
tailscale serve for remote access (referenced by the requester)
- Only one Tailscale reference currently exists in the codebase (URL safety test)
Feature Request
Source: Community request from @PaulTisl
Problem
Users want secure remote access to the Hermes API server / Open WebUI without exposing ports publicly or setting up reverse proxies. Tailscale's
tailscale serveprovides zero-config HTTPS tunneling over a private mesh network — Claw3D already uses this pattern.Proposal
Add optional Tailscale serve integration so users can expose their local Hermes API server over their Tailnet with a single config toggle or CLI flag.
Possible approaches (lightest to heaviest):
Docs only — Document the one-liner:
tailscale serve https://localhost:8642alongside gateway setup. Zero code changes.Config flag + auto-launch — Add a
gateway.tailscale_serve: trueconfig option. When enabled,hermes gateway startspawnstailscale servepointing at the API server port as a subprocess alongside the gateway. Teardown onhermes gateway stop.CLI flag —
hermes gateway start --tailscaleas a one-shot option without persisting to config.Considerations
tailscale statusshould succeed)HERMES_API_KEY) should be enforced when exposing remotely — warn if unsettailscale servehandles HTTPS termination automaticallyPrior Art
tailscale servefor remote access (referenced by the requester)