#!/usr/bin/env bash
# Vangu - GPT & Codex CLI Otomatik Kurulum ve Yapilandirma Scripti (Linux & macOS)
# Kullanim:
#   curl -sSL https://vangu.dev/scripts/install-codex-cli.sh | bash
#   veya:
#   bash install-codex-cli.sh -k vgu_live_your_api_key

set -euo pipefail

VANGU_OPENAI_URL="https://api.vangu.dev/v1"
VANGU_CODEX_URL="https://api.vangu.dev/codex/v1"
API_KEY="${VANGU_API_KEY:-}"
DEFAULT_MODEL="gpt-5.6-sol"

# Parametre kontrolu
while [[ $# -gt 0 ]]; do
  case "$1" in
    -k|--key|--api-key)
      API_KEY="$2"
      shift 2
      ;;
    -m|--model)
      DEFAULT_MODEL="$2"
      shift 2
      ;;
    -h|--help)
      echo "Vangu GPT & Codex CLI Kurulum Scripti"
      echo "Kullanim: $0 [-k <VANGU_API_KEY>] [-m <MODEL_ID>]"
      exit 0
      ;;
    *)
      echo "Bilinmeyen parametre: $1"
      exit 1
      ;;
  esac
done

echo "========================================================"
echo " Vangu - GPT & Codex CLI Kurulum ve Yapilandirici"
echo "========================================================"

# 1. Ortam Kontrolu
if command -v python3 >/dev/null 2>&1; then
  echo "[*] Python 3 algilandi: $(python3 --version)"
else
  echo "[!] Uyari: python3 sisteminizde bulunamadi."
fi

# 2. API Anahtari Alma
if [ -z "$API_KEY" ]; then
  echo ""
  echo "--------------------------------------------------------"
  echo "Vangu API Anahtarinizi girin (vgu_live_...):"
  read -r -s -p "API Key: " API_KEY
  echo ""
  echo "--------------------------------------------------------"
fi

if [ -z "$API_KEY" ]; then
  echo "[!] API Anahtari girilmedi. Script sonlandirildi."
  exit 1
fi

# 3. Ortam Degiskenlerini Hazirlama
EXPORT_STR="
# --- Vangu OpenAI & Codex CLI Yapilandirmasi ---
export OPENAI_BASE_URL=\"$VANGU_OPENAI_URL\"
export OPENAI_API_BASE=\"$VANGU_OPENAI_URL\"
export OPENAI_API_KEY=\"$API_KEY\"
export CODEX_API_BASE=\"$VANGU_CODEX_URL\"
export CODEX_API_KEY=\"$API_KEY\"
export VANGU_MODEL=\"$DEFAULT_MODEL\"
# ------------------------------------------------"

PROFILE_FILES=()
[ -f "$HOME/.zshrc" ] && PROFILE_FILES+=("$HOME/.zshrc")
[ -f "$HOME/.bashrc" ] && PROFILE_FILES+=("$HOME/.bashrc")
[ -f "$HOME/.profile" ] && PROFILE_FILES+=("$HOME/.profile")

if [ ${#PROFILE_FILES[@]} -eq 0 ]; then
  PROFILE_FILES+=("$HOME/.bashrc")
fi

for pf in "${PROFILE_FILES[@]}"; do
  if grep -q "Vangu OpenAI & Codex" "$pf" 2>/dev/null; then
    sed -i.bak '/# --- Vangu OpenAI & Codex/,/# ------------------------------------------------/d' "$pf"
    rm -f "${pf}.bak"
  fi
  echo "$EXPORT_STR" >> "$pf"
  echo "[+] Ortam degiskenleri kaydedildi: $pf"
done

# Aktif kabuk icin degiskenleri ihrac et
export OPENAI_BASE_URL="$VANGU_OPENAI_URL"
export OPENAI_API_BASE="$VANGU_OPENAI_URL"
export OPENAI_API_KEY="$API_KEY"
export CODEX_API_BASE="$VANGU_CODEX_URL"
export CODEX_API_KEY="$API_KEY"
export VANGU_MODEL="$DEFAULT_MODEL"

echo ""
echo "========================================================"
echo " [OK] GPT & Codex Ortami Basariyla Hazirlandi!"
echo "========================================================"
echo " OpenAI Endpoint : $VANGU_OPENAI_URL"
echo " Codex Endpoint  : $VANGU_CODEX_URL"
echo " Varsayilan Model: $DEFAULT_MODEL"
echo ""
echo "Kullanabileceginiz Araclar:"
echo " 1. OpenAI Python SDK : Otomatik olarak Vangu uzerinden cagirir."
echo " 2. Aider CLI         : aider --model openai/$DEFAULT_MODEL"
echo " 3. Cursor / VS Code  : Base URL olarak $VANGU_OPENAI_URL tanimlayin."
echo "========================================================"
