@echo off
chcp 65001 >nul
set "PYTHONUTF8=1"
set "PYTHONIOENCODING=utf-8"
set "LANG=en_US.UTF-8"
set "LC_ALL=en_US.UTF-8"
powershell -NoProfile -ExecutionPolicy Bypass -Command "[Console]::OutputEncoding=[System.Text.Encoding]::UTF8; [Console]::InputEncoding=[System.Text.Encoding]::UTF8; $OutputEncoding=[System.Text.Encoding]::UTF8" >nul 2>&1
net session >nul 2>&1
if %errorlevel% neq 0 (
    echo Admin izni isteniyor...
    powershell -Command "Start-Process -FilePath '%~f0' -Verb RunAs" >nul 2>&1
    exit /b
)
title Claude Code (Antigravity) - anon4me
color 0B

cls
echo.
echo ============================================================
echo          CLAUDE CODE - ANTIGRAVITY - anon4me
echo ============================================================
echo.
echo  Server : https://anon4me.com
echo  Check  : https://anon4me.com/panel/keys
echo.
echo ============================================================
echo.

set "APIKEY="
set /p "APIKEY=API Key'ini gir (sk-...): "

if "%APIKEY%"=="" (
    echo.
    echo [HATA] API Key girilmedi. Pencereyi kapatip tekrar ac.
    echo.
    pause
    exit /b
)

set "BASE_URL=https://anon4me.com"
set "MODEL_MAIN=a4/claude-sonnet-4.6"
set "MODEL_SMALL=a4/claude-haiku-4.5"
set "SETTINGS_DIR=%USERPROFILE%\.claude"
set "SETTINGS_FILE=%SETTINGS_DIR%\settings.json"

if not exist "%SETTINGS_DIR%" mkdir "%SETTINGS_DIR%" >nul 2>&1

echo.
echo [*] settings.json yaziliyor...
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; $sf=$env:SETTINGS_FILE; $data=$null; if(Test-Path $sf){try{$data=Get-Content $sf -Raw | ConvertFrom-Json}catch{$data=$null}}; if($null -eq $data){$data=[PSCustomObject]@{}}; if(-not($data.PSObject.Properties.Name -contains 'env')){$data | Add-Member -NotePropertyName 'env' -NotePropertyValue ([PSCustomObject]@{}) -Force}; $e=$data.env; if($null -eq $e){$e=[PSCustomObject]@{}; $data.env=$e}; $e | Add-Member -Force -NotePropertyName 'ANTHROPIC_BASE_URL' -NotePropertyValue $env:BASE_URL; $e | Add-Member -Force -NotePropertyName 'ANTHROPIC_AUTH_TOKEN' -NotePropertyValue $env:APIKEY; $e | Add-Member -Force -NotePropertyName 'ANTHROPIC_MODEL' -NotePropertyValue $env:MODEL_MAIN; $e | Add-Member -Force -NotePropertyName 'ANTHROPIC_SMALL_FAST_MODEL' -NotePropertyValue $env:MODEL_SMALL; if($e.PSObject.Properties.Name -contains 'ANTHROPIC_API_KEY'){$e.PSObject.Properties.Remove('ANTHROPIC_API_KEY')}; $enc=New-Object System.Text.UTF8Encoding($false); [System.IO.File]::WriteAllText($sf,($data | ConvertTo-Json -Depth 20),$enc); $cj=Join-Path $env:USERPROFILE '.claude.json'; if(Test-Path $cj){try{$d=Get-Content $cj -Raw | ConvertFrom-Json; foreach($k in @('primaryApiKey','customApiKeyResponses')){if($d.PSObject.Properties.Name -contains $k){$d.PSObject.Properties.Remove($k)}}; [System.IO.File]::WriteAllText($cj,($d | ConvertTo-Json -Depth 20),$enc)}catch{}}"

set "ANTHROPIC_BASE_URL=%BASE_URL%"
set "ANTHROPIC_AUTH_TOKEN=%APIKEY%"
set "ANTHROPIC_MODEL=%MODEL_MAIN%"
set "ANTHROPIC_SMALL_FAST_MODEL=%MODEL_SMALL%"

echo.
echo [OK] Key kaydedildi: %SETTINGS_FILE%
echo      Sonraki oturumlarda ayni key kullanilir.

echo Antigravity aciliyor...
echo.

set "AGEXE="
if exist "%LOCALAPPDATA%\Programs\Antigravity\Antigravity.exe" set "AGEXE=%LOCALAPPDATA%\Programs\Antigravity\Antigravity.exe"
if not defined AGEXE if exist "%LOCALAPPDATA%\Programs\antigravity\Antigravity.exe" set "AGEXE=%LOCALAPPDATA%\Programs\antigravity\Antigravity.exe"
if defined AGEXE (
    start "" "%AGEXE%"
) else (
    antigravity
)

echo.
echo ============================================================
echo  Antigravity baslatildi. Pencereyi kapatabilirsin.
echo ============================================================
pause >nul