#!/usr/bin/env bash
# OpenClaw 遠端修復監聽服務（LaunchAgent 用）
# 每 30 秒檢查 Cloudflare Worker 是否有修復請求

cd "$(dirname "$0")"

API_URL="https://openclaw-fix.lingo1516.workers.dev"

while true; do
  RESULT=$(curl -s "$API_URL/check" 2>/dev/null)

  if echo "$RESULT" | grep -q '"requested":true'; then
    echo "$(date): 收到修復指令，開始修復..."

    # 執行修復
    pkill -f openclaw 2>/dev/null
    sleep 3
    openclaw gateway restart --force 2>/dev/null || openclaw gateway start 2>/dev/null
    sleep 5

    # 通知 Worker 修復完成
    curl -s -X POST "$API_URL/done" > /dev/null 2>&1

    echo "$(date): 修復完成"
  fi

  sleep 30
done
