46 lines
1.2 KiB
Bash
46 lines
1.2 KiB
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# НадTavern Linux/macOS launcher with local .venv bootstrap
|
|
# Usage:
|
|
# chmod +x ./run_agentui.sh
|
|
# ./run_agentui.sh
|
|
# Optional env: HOST=0.0.0.0 PORT=7860
|
|
|
|
# Go to repo root (script location)
|
|
cd "$(dirname "$0")"
|
|
|
|
PORT="${PORT:-7860}"
|
|
HOST="${HOST:-127.0.0.1}"
|
|
|
|
# Pick python
|
|
if command -v python3 >/dev/null 2>&1; then
|
|
PY=python3
|
|
else
|
|
PY=python
|
|
fi
|
|
|
|
# Create venv if missing
|
|
if [ ! -f ".venv/bin/python" ]; then
|
|
echo "[НадTavern] Creating .venv ..."
|
|
"$PY" -m venv .venv
|
|
fi
|
|
|
|
VENV_PY=".venv/bin/python"
|
|
|
|
echo "[НадTavern] Upgrading pip ..."
|
|
"$VENV_PY" -m pip install --upgrade pip
|
|
|
|
echo "[НадTavern] Installing deps from requirements.txt ..."
|
|
"$VENV_PY" -m pip install -r requirements.txt
|
|
|
|
echo "[НадTavern] Starting on http://$HOST:$PORT/"
|
|
|
|
# Try to open UI editor in default browser (non-fatal if fails)
|
|
if command -v xdg-open >/dev/null 2>&1; then
|
|
xdg-open "http://$HOST:$PORT/ui/editor.html" >/dev/null 2>&1 || true
|
|
elif command -v open >/dev/null 2>&1; then
|
|
open "http://$HOST:$PORT/ui/editor.html" >/dev/null 2>&1 || true
|
|
fi
|
|
|
|
exec "$VENV_PY" -m uvicorn agentui.api.server:app --host "$HOST" --port "$PORT" --log-level info |