#!/usr/bin/env bash
# 啟動「課本變遊戲」本機版（Ollama 免 token 模式）
# 用法：bash start.sh   （或雙擊後在終端執行）
set -e

DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PORT="${1:-8899}"

echo "🚑 課本變遊戲 — 本機模式"
echo ""

# 1) 檢查 Ollama
if ! curl -s --max-time 2 http://localhost:11434/api/tags >/dev/null; then
  echo "⚠️  偵測不到 Ollama（localhost:11434）。"
  echo "    請先執行：sudo systemctl start ollama"
  echo ""
fi

# 2) 檢查視覺模型
if command -v ollama >/dev/null; then
  if ! ollama list 2>/dev/null | grep -qi "qwen2.5vl"; then
    echo "📥 未見視覺模型，正在下載 qwen2.5vl:7b（約 6GB，只需一次）…"
    ollama pull qwen2.5vl:7b
  else
    echo "✅ 本機視覺模型已就緒：$(ollama list | grep -i qwen2.5vl | awk '{print $1}' | head -1)"
  fi
fi

# 3) 啟動後端 server.py（同時提供網頁與 AI 代理；若未運行）
if curl -s --max-time 2 "http://127.0.0.1:${PORT}/api/health" >/dev/null; then
  echo "✅ 後端已在運行：http://localhost:${PORT}/study-maker.html"
else
  cd "$DIR"
  STUDY_PORT="$PORT" nohup python3 server.py >/tmp/opencode/study-server.log 2>&1 &
  sleep 2
  echo "✅ 後端已啟動"
fi

echo ""
echo "👉 請用瀏覽器開啟：http://localhost:${PORT}/study-maker.html"
echo "   （會自動偵測本機模型，無需填 API Key）"
echo ""
echo "🌐 想分享給朋友：bash share.sh"
echo "ℹ️  停止：pkill -f \"[s]erver.py\""
