#!/bin/bash
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
export PYTHONUTF8=1

GREEN='\033[0;32m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
NC='\033[0m'

cd "$(dirname "$0")" || exit 1

clear
echo ""
echo "============================================================"
echo "          CLAUDE CODE CLI - anon4me"
echo "============================================================"
echo ""
echo "  Server : https://anon4me.com"
echo "  Check  : https://anon4me.com/panel/keys"
echo ""
echo "============================================================"
echo ""

printf "API Key'ini gir (sk-...): "
read APIKEY

if [ -z "$APIKEY" ]; then
    echo ""
    echo -e "${RED}[HATA] API Key girilmedi. Pencereyi kapatip tekrar ac.${NC}"
    echo ""
    read -n 1 -s -r -p "Cikmak icin bir tusa bas..."
    exit 1
fi

BASE_URL="https://anon4me.com"
MODEL_MAIN="a4/claude-sonnet-4.6"
MODEL_SMALL="a4/claude-haiku-4.5"
SETTINGS_DIR="$HOME/.claude"
SETTINGS_FILE="$SETTINGS_DIR/settings.json"

mkdir -p "$SETTINGS_DIR"

export SETUP_APIKEY="$APIKEY"
export SETUP_BASE_URL="https://anon4me.com"
export SETUP_MODEL_MAIN="a4/claude-sonnet-4.6"
export SETUP_MODEL_SMALL="a4/claude-haiku-4.5"
export SETUP_SITE_NAME="anon4me"

python3 - <<'PY'
import json, os, sys
sf = os.path.expanduser("~/.claude/settings.json")
data = {}
if os.path.isfile(sf):
    try:
        with open(sf, "r", encoding="utf-8") as f:
            data = json.load(f) or {}
    except Exception:
        data = {}
env = data.get("env") or {}
env["ANTHROPIC_BASE_URL"] = os.environ.get("SETUP_BASE_URL", "")
env["ANTHROPIC_AUTH_TOKEN"] = os.environ.get("SETUP_APIKEY", "")
env["ANTHROPIC_MODEL"] = os.environ.get("SETUP_MODEL_MAIN", "")
env["ANTHROPIC_SMALL_FAST_MODEL"] = os.environ.get("SETUP_MODEL_SMALL", "")
env.pop("ANTHROPIC_API_KEY", None)
data["env"] = env
os.makedirs(os.path.dirname(sf), exist_ok=True)
with open(sf, "w", encoding="utf-8") as f:
    json.dump(data, f, indent=2, ensure_ascii=False)
    f.write("
")
cj = os.path.expanduser("~/.claude.json")
if os.path.isfile(cj):
    try:
        with open(cj, "r", encoding="utf-8") as f:
            d = json.load(f) or {}
        for k in ("primaryApiKey", "customApiKeyResponses"):
            d.pop(k, None)
        with open(cj, "w", encoding="utf-8") as f:
            json.dump(d, f, indent=2, ensure_ascii=False)
            f.write("
")
    except Exception:
        pass
PY

export ANTHROPIC_BASE_URL="$BASE_URL"
export ANTHROPIC_AUTH_TOKEN="$APIKEY"
export ANTHROPIC_MODEL="$MODEL_MAIN"
export ANTHROPIC_SMALL_FAST_MODEL="$MODEL_SMALL"
unset ANTHROPIC_API_KEY
unset SETUP_APIKEY

echo ""
echo -e "${GREEN}[OK] Yapilandirma tamam. Claude Code aciliyor...${NC}"
echo -e "      (Klasor: $(pwd))"
echo ""

if ! command -v claude >/dev/null 2>&1; then
    echo -e "${YELLOW}[UYARI] 'claude' komutu bulunamadi.${NC}"
    echo "         Once Node.js ve Claude Code kur:"
    echo "           npm install -g @anthropic-ai/claude-code"
    echo ""
    read -n 1 -s -r -p "Cikmak icin bir tusa bas..."
    exit 1
fi

claude

echo ""
echo "============================================================"
echo "  Claude Code kapandi. Bu pencereyi kapatabilirsin."
echo "============================================================"
echo ""
read -n 1 -s -r -p "Cikmak icin bir tusa bas..."