From 5e71b0584fde2987c2bc7a67064e0f1ef072a755 Mon Sep 17 00:00:00 2001 From: Frank Date: Thu, 20 Aug 2026 12:14:18 -0700 Subject: [PATCH] Hermes: run the headless gateway (not the TUI) in the container The image's default s6 entrypoint launches the interactive TUI, which exits without a TTY and crash-loops the container. Override the entrypoint to run 'hermes gateway run --force' (the documented Docker mode) and point HERMES_HOME at the mounted data dir so the Signal platform config + state persist. The Signal platform is enabled in config.yaml (platforms.signal.enabled). --- dankclaw/compose.yaml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dankclaw/compose.yaml b/dankclaw/compose.yaml index 0d8e7b1..2472b8a 100644 --- a/dankclaw/compose.yaml +++ b/dankclaw/compose.yaml @@ -66,8 +66,15 @@ services: image: docker.io/nousresearch/hermes-agent:latest container_name: hermes restart: unless-stopped + # The image's default s6 entrypoint runs the interactive TUI, which exits + # without a TTY and crash-loops the container. Override it to run the + # headless gateway (the documented Docker mode). The gateway drops to the + # unprivileged hermes user (uid 10000), so the data dir must be writable by it. + entrypoint: ["bash", "-c", "hermes gateway run --force -v"] environment: HERMES_DATA_DIR: /data + # Point hermes's config/.env at the mounted data dir (persistent). + HERMES_HOME: /data # Signal adapter -> the host signal-cli daemon. The container reaches the # host via podman's host alias; 127.0.0.1 inside the container is not the host. SIGNAL_HTTP_URL: "http://host.containers.internal:8080"