#!/bin/bash # 随身助手后端启动脚本 cd "$(dirname "$0")" mkdir -p logs data # 优先使用 openclaw conda 环境(含 fastapi 等依赖) PYTHON_BIN="" for cand in /home/hz1/miniconda3/envs/openclaw/bin/python3 /home/openclaw/miniconda3/envs/openclaw/bin/python3 python3; do if command -v "$cand" >/dev/null 2>&1 && "$cand" -c "import fastapi, sqlalchemy, openai" 2>/dev/null; then PYTHON_BIN="$cand" break fi done if [ -z "$PYTHON_BIN" ]; then echo "未找到可用 Python(需要 fastapi/sqlalchemy/openai),请先 pip install -r requirements.txt" exit 1 fi PORT="${PORT:-16080}" case "$1" in stop) [ -f logs/app.pid ] && kill "$(cat logs/app.pid)" 2>/dev/null && rm -f logs/app.pid echo "已停止" ;; restart) "$0" stop; sleep 1; exec "$0" ;; *) nohup "$PYTHON_BIN" -m uvicorn app.main:app --host 0.0.0.0 --port "$PORT" \ > logs/app.log 2>&1 & echo $! > logs/app.pid echo "随身助手后端已启动: http://0.0.0.0:$PORT (PID $(cat logs/app.pid))" ;; esac