# Required in production: generate a unique 32+ byte random secret in your local .env, keep it out of git, and do not reuse AUTH_TOKEN. ACCOUNT_CREDENTIAL_SECRET=REPLACE_WITH_STRONG_RANDOM_SECRET AUTH_TOKEN=change-me-admin-token CHECKIN_CRON=0 8 * * * BALANCE_REFRESH_CRON=0 * * * * # Optional OAuth overrides. Fill the matching credentials when an override is enabled; Claude requires a client secret with no fallback. CLAUDE_CLIENT_ID= CLAUDE_CLIENT_SECRET= # Codex OAuth override only needs CODEX_CLIENT_ID. CODEX_CLIENT_ID= # Gemini CLI override requires both GEMINI_CLI_CLIENT_ID and GEMINI_CLI_CLIENT_SECRET together. GEMINI_CLI_CLIENT_ID= GEMINI_CLI_CLIENT_SECRET= PROXY_TOKEN=change-me-proxy-sk-token SYSTEM_PROXY_URL= WEBHOOK_URL= BARK_URL= SERVERCHAN_KEY= TELEGRAM_ENABLED=false TELEGRAM_BOT_TOKEN= TELEGRAM_CHAT_ID= MODEL_AVAILABILITY_PROBE_CONCURRENCY=1 MODEL_AVAILABILITY_PROBE_ENABLED=false MODEL_AVAILABILITY_PROBE_INTERVAL_MS=1800000 MODEL_AVAILABILITY_PROBE_TIMEOUT_MS=15000 PORT=4000 DATA_DIR=./data NOTIFY_COOLDOWN_SEC=300 ADMIN_IP_ALLOWLIST= TZ=Asia/Shanghai