# =============================================================================
# NARRATIVE AI - ENVIRONMENT VARIABLES
# =============================================================================
#
# Instructions:
#   1. Copy this file to .env in the project root (the directory that contains
#      framework/ and config/). The API loads .env from the project root.
#   2. Fill in your API keys
#   3. The providers.yml file references these variables
#
# =============================================================================

# =============================================================================
# LLM PROVIDERS
# =============================================================================

# ------------- GEMINI (Google) - FREE -------------
# Get your key: https://aistudio.google.com/apikey
GEMINI_API_KEY=your_gemini_api_key_here

# ------------- OPENAI (GPT) - Paid -------------
# Get your key: https://platform.openai.com/api-keys
OPENAI_API_KEY=your_openai_api_key_here
OPENAI_ORG_ID=                                    # Optional

# ------------- WEB INTELLIGENCE (Optional) -------------
# Default provider is DuckDuckGo (no key required)
WEB_INTEL_ENABLED=1
WEB_INTEL_MODE=auto                               # off | auto | force
# For Google Custom Search (optional)
# GOOGLE_SEARCH_API_KEY=your_google_search_api_key
# GOOGLE_SEARCH_CX=your_google_search_engine_id

# ------------- ANTHROPIC (Claude) - Paid -------------
# Get your key: https://console.anthropic.com/
ANTHROPIC_API_KEY=your_anthropic_api_key_here

# =============================================================================
# STT/TTS PROVIDERS
# =============================================================================

# ------------- ELEVENLABS - FREE tier: 10K chars/month -------------
# Get your key: https://elevenlabs.io/app/settings/api-keys
ELEVENLABS_API_KEY=your_elevenlabs_api_key_here
ELEVENLABS_VOICE_ID=                              # Optional: Custom voice ID

# ------------- GOOGLE CLOUD (Optional) -------------
# Download credentials JSON from Google Cloud Console
GOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json

# =============================================================================
# REAL-TIME (LIVEKIT)
# =============================================================================

# ------------- LIVEKIT - FREE tier available -------------
# Get credentials: https://cloud.livekit.io
LIVEKIT_URL=wss://your-project.livekit.cloud
LIVEKIT_API_KEY=your_livekit_api_key
LIVEKIT_API_SECRET=your_livekit_api_secret

# =============================================================================
# CUSTOM/LOCAL MODELS
# =============================================================================

# Fine-tuned Whisper server
WHISPER_MODEL_PATH=                               # Local path or HuggingFace ID
WHISPER_SERVER_URL=http://localhost:8000          # If using server mode

# Fine-tuned Conformer model
CONFORMER_MODEL_PATH=                             # Local path or HuggingFace ID

# Custom TTS server
CUSTOM_TTS_SERVER_URL=http://localhost:8001

# =============================================================================
# INFRASTRUCTURE
# =============================================================================

# Database (PostgreSQL)
DATABASE_URL=postgresql://narrative:narrative_dev_password@localhost:5432/narrative_ai

# Redis (Caching & Rate Limiting)
REDIS_URL=redis://localhost:6379/0

# Environment
ENV=development                                   # development, staging, production

# =============================================================================
# SECURITY
# =============================================================================

# JWT Secret (generate with: openssl rand -hex 32)
JWT_SECRET=your_jwt_secret_here

# Encryption Key (generate with: python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())")
ENCRYPTION_KEY=your_encryption_key_here
