From 1ad98cc2f9f8a5950aec998a6daacec381cbe2c4 Mon Sep 17 00:00:00 2001 From: yyamashita Date: Sat, 20 Jun 2026 09:45:16 +0900 Subject: Add Restart Claude Sessions command to hetzner-admin Co-Authored-By: Claude Sonnet 4.6 --- claude/restart-sessions.sh | 6 ++++++ hetzner-admin/app.py | 1 + hetzner-admin/run-command.sh | 3 +++ 3 files changed, 10 insertions(+) create mode 100644 claude/restart-sessions.sh diff --git a/claude/restart-sessions.sh b/claude/restart-sessions.sh new file mode 100644 index 0000000..5f0e1b4 --- /dev/null +++ b/claude/restart-sessions.sh @@ -0,0 +1,6 @@ +#!/bin/bash +set -e +uid=$(id -u yyamashita) +runuser -u yyamashita -- \ + env XDG_RUNTIME_DIR=/run/user/$uid DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$uid/bus \ + bash -c 'systemctl --user list-units --plain --no-legend "claude-code@*.service" | awk "{print \$1}" | xargs -r systemctl --user restart' diff --git a/hetzner-admin/app.py b/hetzner-admin/app.py index ccaadce..c3dbffc 100644 --- a/hetzner-admin/app.py +++ b/hetzner-admin/app.py @@ -19,6 +19,7 @@ COMMANDS = [ ("Restart Mail", "docker compose -f /app/infra/mail/docker-compose.yml restart"), ("Restart cgit", "docker compose -f /app/infra/cgit/docker-compose.yml restart"), ("Restart Admin", "docker compose -f /app/infra/hetzner-admin/docker-compose.yml restart"), + ("Restart Claude Sessions", "bash /app/infra/claude/restart-sessions.sh"), ("Reboot Server", "reboot"), ] diff --git a/hetzner-admin/run-command.sh b/hetzner-admin/run-command.sh index 50280b9..0ed9fe3 100755 --- a/hetzner-admin/run-command.sh +++ b/hetzner-admin/run-command.sh @@ -18,6 +18,9 @@ case "$SSH_ORIGINAL_COMMAND" in "docker compose -f /app/infra/hetzner-admin/docker-compose.yml restart") exec docker compose -f /app/infra/hetzner-admin/docker-compose.yml restart ;; + "bash /app/infra/claude/restart-sessions.sh") + exec bash /app/infra/claude/restart-sessions.sh + ;; "reboot") exec reboot ;; -- cgit v1.2.3