APP_ENV=production FERNET_KEY=replace-with-32-plus-character-fernet-key JWT_SECRET=replace-with-32-plus-character-jwt-secret DATABASE_URL=mysql+pymysql://clover:replace-with-strong-db-password@mysql:3306/clover MONGO_URI=mongodb://mongo:27017/clover_trace REDIS_URL=redis://redis:6379/0 # Production should use the real customer domain(s). Do not use "*" in production. CORS_ALLOW_ORIGINS=https://your-domain.example IMAGE_PROVIDER_PRIMARY=gpt IMAGE_PROVIDER_FALLBACK=gemini IMAGE_MODEL=gpt-image-2 MODEL_IMAGE=gpt-image-2 MODEL_TEXT=claude-opus-4-8 # Vision model used by verify_real_image script (leave empty to skip real-image checks). MODEL_VISION= APIPORTS_BASE_URL=https://www.apiports.com/v1 CODEPROXY_BASE_URL= # Override only if calling Claude through a non-default gateway. CLAUDE_API_URL= GEMINI_API_URL=https://generativelanguage.googleapis.com/v1beta APIPORTS_KEY= CODEPROXY_KEY= MAX_CONCURRENT_TASKS_PER_USER=5 UVICORN_WORKERS=2 UPLOAD_BASE_PATH=uploads/packages UPLOAD_ABS_ROOT=/app/uploads