#!/usr/bin/env bash

# claude-glm — Run Claude Code with GLM backend
#
# Usage:
#   claude-glm [args...]
#
# Setup API key (reuse existing):
#   macOS:
#     security add-generic-password -a "$USER" -s GLM_API_KEY -w "YOUR_KEY"
#   Linux:
#     echo "YOUR_KEY" | secret-tool store --label "GLM API Key" service GLM_API_KEY

KEY_NAME="GLM_API_KEY"

get_token() {
  if command -v security >/dev/null 2>&1; then
    security find-generic-password -s "$KEY_NAME" -w 2>/dev/null && return
  fi
  if command -v secret-tool >/dev/null 2>&1; then
    secret-tool lookup service "$KEY_NAME" 2>/dev/null && return
  fi
  return 1
}

TOKEN=$(get_token)

if [ -z "$TOKEN" ]; then
  echo "❌ Missing GLM token ($KEY_NAME)"
  exit 1
fi

export ANTHROPIC_BASE_URL="https://api.z.ai/api/anthropic"
export ANTHROPIC_AUTH_TOKEN="$TOKEN"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="glm-4.5-air"
export ANTHROPIC_DEFAULT_SONNET_MODEL="glm-5.1"
export ANTHROPIC_DEFAULT_OPUS_MODEL="glm-5.1"

echo "→ Backend: GLM"

exec claude "$@"
