"--dangerously-skip-permissions" parametresi eklendi.
🧩 switch_api_key — Claude API Key Switcher for macOS
switch_api_key, proje dizininde bulunan .env dosyasını okuyarak Claude API anahtarları arasında geçiş yapmanızı sağlayan bir Bash betiğidir.
Her çalıştırıldığında aktif anahtarı değiştirir, gerekli ortam değişkenlerini yükler, eski claude CLI oturumlarını kapatır ve yeni ayarlarla CLI’ı yeniden başlatır.
Bu sayede, örneğin LITE ve PRO API anahtarlarını tek komutla değiştirebilir, her biriyle farklı kota veya model ayarlarını test edebilirsiniz.
⚙️ Özellikler
- 🔁 Tek komutla API anahtarlarını değiştirir
- 🧠 Claude CLI’ı otomatik olarak yeniden başlatır
- 📦 .env dosyasından ayarları okur ve günceller
- 🌐 Base URL ve model değerlerini otomatik export eder
- 🚫 Auth çakışmalarını otomatik temizler
(ANTHROPIC_AUTH_TOKENdeğişkeni varsa kaldırılır)
📂 .env Dosyası Yapısı
Proje dizininde .env dosyanız şu formatta olmalıdır:
# === Claude API Config ===
API_KEY_LITE=LITE_KEY_BURAYA
API_KEY_PRO=PRO_KEY_BURAYA
ACTIVE_KEY=lite
# === Anthropic API Settings ===
ANTHROPIC_BASE_URL="https://api.z.ai/api/anthropic"
ANTHROPIC_MODEL="glm-4.6"
| Değişken | Açıklama |
|---|---|
API_KEY_LITE |
LITE planına ait Claude API anahtarı |
API_KEY_PRO |
PRO planına ait Claude API anahtarı |
ACTIVE_KEY |
Şu anda aktif olan anahtar (lite veya pro) |
ANTHROPIC_BASE_URL |
API’nin taban URL adresi |
ANTHROPIC_MODEL |
Kullanılacak model ismi |
🧩 Kurulum
-
Betik dosyasını oluştur:
sudo nano /usr/local/bin/switch_api_key -
Aşağıdaki kodu yapıştır:
#!/bin/bash ENV_FILE=".env" GREEN="\033[0;32m" YELLOW="\033[0;33m" CYAN="\033[0;36m" RESET="\033[0m" # 0️⃣ AUTH TOKEN ÇAKIŞMASINI ENGELLE if [[ -n "$ANTHROPIC_AUTH_TOKEN" ]]; then echo -e "${YELLOW}⚠️ ANTHROPIC_AUTH_TOKEN tespit edildi. Kaldırılıyor...${RESET}" unset ANTHROPIC_AUTH_TOKEN sleep 1 fi # 1️⃣ .env kontrolü if [[ ! -f "$ENV_FILE" ]]; then echo -e "${YELLOW}⚠️ Bu dizinde .env dosyası bulunamadı.${RESET}" exit 1 fi # 2️⃣ .env dosyasını yükle set -a; source "$ENV_FILE"; set +a echo "----------------------------------------" echo -e "${CYAN}🔍 Mevcut aktif key: $ACTIVE_KEY${RESET}" # 3️⃣ Aktif anahtarı değiştir if [[ "$ACTIVE_KEY" == "lite" ]]; then export ANTHROPIC_API_KEY="$API_KEY_PRO" NEW_DESC="Claude Code PRO api key" NEW_ACTIVE="pro" else export ANTHROPIC_API_KEY="$API_KEY_LITE" NEW_DESC="Claude Code LITE api key" NEW_ACTIVE="lite" fi # 4️⃣ Ortam değişkenlerini yükle export ANTHROPIC_BASE_URL=$ANTHROPIC_BASE_URL export ANTHROPIC_MODEL=$ANTHROPIC_MODEL # 5️⃣ .env güncelle sed -i '' "s/^ACTIVE_KEY=.*/ACTIVE_KEY=$NEW_ACTIVE/" "$ENV_FILE" echo -e "${YELLOW}🧩 Yeni key seçildi:${RESET} $NEW_DESC" echo -e "${CYAN}🔁 .env dosyası güncellendi (ACTIVE_KEY=$NEW_ACTIVE)${RESET}" # 6️⃣ Claude süreçlerini kapat echo -e "${YELLOW}💀 Çalışan Claude CLI süreçleri kapatılıyor...${RESET}" pkill -f "claude" 2>/dev/null sleep 3 # 7️⃣ Bilgilendirme tail4="${ANTHROPIC_API_KEY: -4}" echo -e "${GREEN}✅ Yeni key aktif:${RESET} $NEW_DESC" echo -e "${CYAN}🔑 Son 4 hane: ****${tail4}${RESET}" echo -e "${CYAN}🌐 Base URL:${RESET} $ANTHROPIC_BASE_URL" echo -e "${CYAN}🧠 Model:${RESET} $ANTHROPIC_MODEL" echo -e "${CYAN}⏳ Son kontroller yapılıyor...${RESET}" sleep 3 # 8️⃣ Claude CLI başlat echo -e "${GREEN}🚀 Yeni key ile Claude CLI başlatılıyor...${RESET}" echo "----------------------------------------" exec claude -
Çalıştırılabilir hale getir:
sudo chmod +x /usr/local/bin/switch_api_key
🚀 Kullanım
Proje dizininde .env dosyası mevcutken sadece şu komutu çalıştır:
switch_api_key
🔁 Betik ne yapar?
.envdosyasını okurANTHROPIC_AUTH_TOKENvarsa unset eder (çakışmayı önler)- Aktif API anahtarını tespit eder (
lite↔pro) - Diğer anahtara geçer
.envdosyasındakiACTIVE_KEYsatırını günceller- Base URL ve modeli
exporteder - Çalışan
claudeCLI süreçlerini kapatır - 3 saniye bekler
- Yeni anahtar ve ayarlarla
claudeCLI’ı başlatır
🧠 Örnek Çalışma Çıktısı
----------------------------------------
🔍 Mevcut aktif key: lite
🧩 Yeni key seçildi: Claude Code PRO api key
🔁 .env dosyası güncellendi (ACTIVE_KEY=pro)
💀 Çalışan Claude CLI süreçleri kapatılıyor...
✅ Yeni key aktif: Claude Code PRO api key
🔑 Anahtar son 4 hane: ****7e8a
🌐 Base URL: https://api.z.ai/api/anthropic
🧠 Model: glm-4.6
🚀 Claude CLI yeni key ve ayarlarla başlatılıyor...
----------------------------------------
💡 İpucu
Her projenin kendi .env dosyası olabilir.
Betik, bulunduğun dizindeki .env dosyasını baz alır.
Farklı projeler farklı API anahtarları ve modellerle izole çalışabilir.