2026-02-24 22:45:37 +05:30
|
|
|
# ==============================================================================
|
|
|
|
|
# SurfSense Docker Configuration
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
# Database, Redis, and internal service wiring are handled automatically.
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
|
2026-02-26 19:40:36 +05:30
|
|
|
# SurfSense version (use "latest", a clean version like "0.0.14", or a specific build like "0.0.14.1")
|
2026-03-03 13:53:28 -08:00
|
|
|
SURFSENSE_VERSION=latest
|
2026-02-24 22:45:37 +05:30
|
|
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Core Settings
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
# REQUIRED: Generate a secret key with: openssl rand -base64 32
|
|
|
|
|
SECRET_KEY=replace_me_with_a_random_string
|
|
|
|
|
|
2026-02-26 05:09:56 +05:30
|
|
|
# Auth type: LOCAL (email/password) or GOOGLE (OAuth)
|
|
|
|
|
AUTH_TYPE=LOCAL
|
|
|
|
|
|
|
|
|
|
# Allow new user registrations (TRUE or FALSE)
|
|
|
|
|
# REGISTRATION_ENABLED=TRUE
|
|
|
|
|
|
2026-04-08 03:26:24 +05:30
|
|
|
# Document parsing service: DOCLING, UNSTRUCTURED, or LLAMACLOUD
|
2026-02-26 05:09:56 +05:30
|
|
|
ETL_SERVICE=DOCLING
|
|
|
|
|
|
|
|
|
|
# Embedding model for vector search
|
|
|
|
|
# Local: sentence-transformers/all-MiniLM-L6-v2
|
|
|
|
|
# OpenAI: openai://text-embedding-ada-002 (set OPENAI_API_KEY below)
|
|
|
|
|
# Cohere: cohere://embed-english-light-v3.0 (set COHERE_API_KEY below)
|
|
|
|
|
EMBEDDING_MODEL=sentence-transformers/all-MiniLM-L6-v2
|
2026-02-26 04:59:53 +05:30
|
|
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Ports (change to avoid conflicts with other services on your machine)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
2026-03-09 23:08:27 +05:30
|
|
|
# BACKEND_PORT=8929
|
|
|
|
|
# FRONTEND_PORT=3929
|
2026-03-23 18:27:18 +02:00
|
|
|
# ZERO_CACHE_PORT=5929
|
2026-03-14 20:25:25 +05:30
|
|
|
# SEARXNG_PORT=8888
|
2026-02-26 04:59:53 +05:30
|
|
|
# FLOWER_PORT=5555
|
2026-02-26 11:19:51 +05:30
|
|
|
|
2026-02-26 16:04:47 +05:30
|
|
|
# ==============================================================================
|
|
|
|
|
# DEV COMPOSE ONLY (docker-compose.dev.yml)
|
|
|
|
|
# You only need them only if you are running `docker-compose.dev.yml`.
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
|
|
|
|
|
# -- pgAdmin (database GUI) --
|
2026-02-26 11:19:51 +05:30
|
|
|
# PGADMIN_PORT=5050
|
|
|
|
|
# PGADMIN_DEFAULT_EMAIL=admin@surfsense.com
|
|
|
|
|
# PGADMIN_DEFAULT_PASSWORD=surfsense
|
|
|
|
|
|
2026-02-26 16:04:47 +05:30
|
|
|
# -- Redis exposed port (dev only; Redis is internal-only in prod) --
|
|
|
|
|
# REDIS_PORT=6379
|
2026-02-26 11:19:51 +05:30
|
|
|
|
2026-02-26 16:04:47 +05:30
|
|
|
# -- Frontend Build Args --
|
|
|
|
|
# In dev, the frontend is built from source and these are passed as build args.
|
|
|
|
|
# In prod, they are automatically derived from AUTH_TYPE, ETL_SERVICE, and the port settings above.
|
2026-02-26 11:19:51 +05:30
|
|
|
# NEXT_PUBLIC_FASTAPI_BACKEND_AUTH_TYPE=LOCAL
|
|
|
|
|
# NEXT_PUBLIC_ETL_SERVICE=DOCLING
|
|
|
|
|
# NEXT_PUBLIC_DEPLOYMENT_MODE=self-hosted
|
2026-02-26 04:59:53 +05:30
|
|
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Custom Domain / Reverse Proxy
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# ONLY set these if you are serving SurfSense on a real domain via a reverse
|
|
|
|
|
# proxy (e.g. Caddy, Nginx, Cloudflare Tunnel).
|
|
|
|
|
# For standard localhost deployments, leave all of these commented out —
|
|
|
|
|
# they are automatically derived from the port settings above.
|
|
|
|
|
#
|
|
|
|
|
# NEXT_FRONTEND_URL=https://app.yourdomain.com
|
|
|
|
|
# BACKEND_URL=https://api.yourdomain.com
|
|
|
|
|
# NEXT_PUBLIC_FASTAPI_BACKEND_URL=https://api.yourdomain.com
|
2026-03-23 18:27:18 +02:00
|
|
|
# NEXT_PUBLIC_ZERO_CACHE_URL=https://zero.yourdomain.com
|
2026-02-26 04:59:53 +05:30
|
|
|
|
2026-03-23 18:27:18 +02:00
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Zero-cache (real-time sync)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Defaults work out of the box for Docker deployments.
|
|
|
|
|
# Change ZERO_ADMIN_PASSWORD for security in production.
|
|
|
|
|
|
|
|
|
|
# ZERO_ADMIN_PASSWORD=surfsense-zero-admin
|
2026-04-01 10:18:51 +02:00
|
|
|
|
|
|
|
|
# Publication restricting which tables zero-cache replicates from Postgres.
|
|
|
|
|
# Created automatically by Alembic migration 116.
|
|
|
|
|
# Only change this if you manage publications manually.
|
|
|
|
|
# ZERO_APP_PUBLICATIONS=zero_publication
|
|
|
|
|
|
|
|
|
|
# Sync worker tuning — zero-cache defaults ZERO_NUM_SYNC_WORKERS to the number
|
|
|
|
|
# of CPU cores, which can exceed the connection pool limits on high-core machines.
|
|
|
|
|
# Each sync worker needs at least 1 connection from both the UPSTREAM and CVR
|
|
|
|
|
# pools, so these constraints must hold:
|
|
|
|
|
# ZERO_UPSTREAM_MAX_CONNS >= ZERO_NUM_SYNC_WORKERS
|
|
|
|
|
# ZERO_CVR_MAX_CONNS >= ZERO_NUM_SYNC_WORKERS
|
|
|
|
|
# Default of 4 workers is sufficient for self-hosted / personal use.
|
|
|
|
|
# ZERO_NUM_SYNC_WORKERS=4
|
|
|
|
|
# ZERO_UPSTREAM_MAX_CONNS=20
|
|
|
|
|
# ZERO_CVR_MAX_CONNS=30
|
|
|
|
|
|
2026-03-23 18:27:18 +02:00
|
|
|
# Full override for the Zero → Postgres connection URLs.
|
|
|
|
|
# Leave commented out to use the Docker-managed `db` container (default).
|
|
|
|
|
# ZERO_UPSTREAM_DB=postgresql://surfsense:surfsense@db:5432/surfsense
|
|
|
|
|
# ZERO_CVR_DB=postgresql://surfsense:surfsense@db:5432/surfsense
|
|
|
|
|
# ZERO_CHANGE_DB=postgresql://surfsense:surfsense@db:5432/surfsense
|
2026-02-26 04:59:53 +05:30
|
|
|
|
2026-03-24 16:25:13 +02:00
|
|
|
# ZERO_QUERY_URL: where zero-cache forwards query requests for resolution.
|
|
|
|
|
# ZERO_MUTATE_URL: required by zero-cache when auth tokens are used, even though
|
|
|
|
|
# SurfSense does not use Zero mutators. Setting both URLs tells zero-cache to
|
|
|
|
|
# skip its own JWT verification and let the app endpoints handle auth instead.
|
|
|
|
|
# The mutate endpoint is a no-op that returns an empty response.
|
|
|
|
|
# Default: Docker service networking (http://frontend:3000/api/zero/...).
|
2026-03-24 15:06:58 +02:00
|
|
|
# Override when running the frontend outside Docker:
|
|
|
|
|
# ZERO_QUERY_URL=http://host.docker.internal:3000/api/zero/query
|
2026-03-24 16:25:13 +02:00
|
|
|
# ZERO_MUTATE_URL=http://host.docker.internal:3000/api/zero/mutate
|
2026-03-24 15:06:58 +02:00
|
|
|
# Override for custom domain:
|
|
|
|
|
# ZERO_QUERY_URL=https://app.yourdomain.com/api/zero/query
|
2026-03-24 16:25:13 +02:00
|
|
|
# ZERO_MUTATE_URL=https://app.yourdomain.com/api/zero/mutate
|
2026-03-24 15:06:58 +02:00
|
|
|
# ZERO_QUERY_URL=http://frontend:3000/api/zero/query
|
2026-03-24 16:25:13 +02:00
|
|
|
# ZERO_MUTATE_URL=http://frontend:3000/api/zero/mutate
|
2026-03-24 15:06:58 +02:00
|
|
|
|
2026-02-24 22:45:37 +05:30
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Database (defaults work out of the box, change for security)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
2026-02-24 23:41:22 +05:30
|
|
|
# DB_USER=surfsense
|
2026-02-24 22:45:37 +05:30
|
|
|
# DB_PASSWORD=surfsense
|
2026-02-24 23:41:22 +05:30
|
|
|
# DB_NAME=surfsense
|
2026-02-25 00:15:29 +05:30
|
|
|
# DB_HOST=db
|
|
|
|
|
# DB_PORT=5432
|
|
|
|
|
|
|
|
|
|
# SSL mode for database connections: disable, require, verify-ca, verify-full
|
|
|
|
|
# DB_SSLMODE=disable
|
|
|
|
|
|
|
|
|
|
# Full DATABASE_URL override — when set, takes precedence over the individual
|
|
|
|
|
# DB_USER / DB_PASSWORD / DB_NAME / DB_HOST / DB_PORT settings above.
|
|
|
|
|
# Use this for managed databases (AWS RDS, GCP Cloud SQL, Supabase, etc.)
|
|
|
|
|
# DATABASE_URL=postgresql+asyncpg://user:password@your-rds-host:5432/surfsense?sslmode=require
|
|
|
|
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Redis (defaults work out of the box)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Full Redis URL override for Celery broker, result backend, and app cache.
|
|
|
|
|
# Use this for managed Redis (AWS ElastiCache, Redis Cloud, etc.)
|
|
|
|
|
# Supports auth: redis://:password@host:port/0
|
|
|
|
|
# Supports TLS: rediss://:password@host:6380/0
|
|
|
|
|
# REDIS_URL=redis://redis:6379/0
|
2026-02-24 23:41:22 +05:30
|
|
|
|
2026-03-31 22:26:47 -07:00
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Stripe (pay-as-you-go page packs — disabled by default)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
# Set TRUE to allow users to buy additional page packs via Stripe Checkout
|
|
|
|
|
STRIPE_PAGE_BUYING_ENABLED=FALSE
|
|
|
|
|
# STRIPE_SECRET_KEY=sk_test_...
|
|
|
|
|
# STRIPE_WEBHOOK_SECRET=whsec_...
|
|
|
|
|
# STRIPE_PRICE_ID=price_...
|
|
|
|
|
# STRIPE_PAGES_PER_UNIT=1000
|
|
|
|
|
# STRIPE_RECONCILIATION_INTERVAL=10m
|
|
|
|
|
# STRIPE_RECONCILIATION_LOOKBACK_MINUTES=10
|
|
|
|
|
# STRIPE_RECONCILIATION_BATCH_SIZE=100
|
|
|
|
|
|
2026-04-15 17:02:00 -07:00
|
|
|
# Premium token purchases ($1 per 1M tokens for premium-tier models)
|
|
|
|
|
# STRIPE_TOKEN_BUYING_ENABLED=FALSE
|
|
|
|
|
# STRIPE_PREMIUM_TOKEN_PRICE_ID=price_...
|
|
|
|
|
# STRIPE_TOKENS_PER_UNIT=1000000
|
|
|
|
|
|
2026-02-24 22:45:37 +05:30
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# TTS & STT (Text-to-Speech / Speech-to-Text)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
# Local Kokoro TTS (default) or LiteLLM provider
|
|
|
|
|
TTS_SERVICE=local/kokoro
|
|
|
|
|
# TTS_SERVICE_API_KEY=
|
|
|
|
|
# TTS_SERVICE_API_BASE=
|
|
|
|
|
|
|
|
|
|
# Local Faster-Whisper STT: local/MODEL_SIZE (tiny, base, small, medium, large-v3)
|
|
|
|
|
STT_SERVICE=local/base
|
|
|
|
|
# Or use LiteLLM: openai/whisper-1
|
|
|
|
|
# STT_SERVICE_API_KEY=
|
|
|
|
|
# STT_SERVICE_API_BASE=
|
|
|
|
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Rerankers (optional, disabled by default)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
# RERANKERS_ENABLED=TRUE
|
|
|
|
|
# RERANKERS_MODEL_NAME=ms-marco-MiniLM-L-12-v2
|
|
|
|
|
# RERANKERS_MODEL_TYPE=flashrank
|
|
|
|
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Google OAuth (only if AUTH_TYPE=GOOGLE)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
# GOOGLE_OAUTH_CLIENT_ID=
|
|
|
|
|
# GOOGLE_OAUTH_CLIENT_SECRET=
|
|
|
|
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Connector OAuth Keys (uncomment connectors you want to use)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
# -- Google Connectors --
|
|
|
|
|
# GOOGLE_CALENDAR_REDIRECT_URI=http://localhost:8000/api/v1/auth/google/calendar/connector/callback
|
|
|
|
|
# GOOGLE_GMAIL_REDIRECT_URI=http://localhost:8000/api/v1/auth/google/gmail/connector/callback
|
|
|
|
|
# GOOGLE_DRIVE_REDIRECT_URI=http://localhost:8000/api/v1/auth/google/drive/connector/callback
|
|
|
|
|
|
|
|
|
|
# -- Notion --
|
|
|
|
|
# NOTION_CLIENT_ID=
|
|
|
|
|
# NOTION_CLIENT_SECRET=
|
|
|
|
|
# NOTION_REDIRECT_URI=http://localhost:8000/api/v1/auth/notion/connector/callback
|
|
|
|
|
|
|
|
|
|
# -- Slack --
|
|
|
|
|
# SLACK_CLIENT_ID=
|
|
|
|
|
# SLACK_CLIENT_SECRET=
|
|
|
|
|
# SLACK_REDIRECT_URI=http://localhost:8000/api/v1/auth/slack/connector/callback
|
|
|
|
|
|
|
|
|
|
# -- Discord --
|
|
|
|
|
# DISCORD_CLIENT_ID=
|
|
|
|
|
# DISCORD_CLIENT_SECRET=
|
|
|
|
|
# DISCORD_REDIRECT_URI=http://localhost:8000/api/v1/auth/discord/connector/callback
|
|
|
|
|
# DISCORD_BOT_TOKEN=
|
|
|
|
|
|
|
|
|
|
# -- Atlassian (Jira & Confluence) --
|
|
|
|
|
# ATLASSIAN_CLIENT_ID=
|
|
|
|
|
# ATLASSIAN_CLIENT_SECRET=
|
|
|
|
|
# JIRA_REDIRECT_URI=http://localhost:8000/api/v1/auth/jira/connector/callback
|
|
|
|
|
# CONFLUENCE_REDIRECT_URI=http://localhost:8000/api/v1/auth/confluence/connector/callback
|
|
|
|
|
|
|
|
|
|
# -- Linear --
|
|
|
|
|
# LINEAR_CLIENT_ID=
|
|
|
|
|
# LINEAR_CLIENT_SECRET=
|
|
|
|
|
# LINEAR_REDIRECT_URI=http://localhost:8000/api/v1/auth/linear/connector/callback
|
|
|
|
|
|
|
|
|
|
# -- ClickUp --
|
|
|
|
|
# CLICKUP_CLIENT_ID=
|
|
|
|
|
# CLICKUP_CLIENT_SECRET=
|
|
|
|
|
# CLICKUP_REDIRECT_URI=http://localhost:8000/api/v1/auth/clickup/connector/callback
|
|
|
|
|
|
|
|
|
|
# -- Airtable --
|
|
|
|
|
# AIRTABLE_CLIENT_ID=
|
|
|
|
|
# AIRTABLE_CLIENT_SECRET=
|
|
|
|
|
# AIRTABLE_REDIRECT_URI=http://localhost:8000/api/v1/auth/airtable/connector/callback
|
|
|
|
|
|
2026-03-28 16:39:47 +05:30
|
|
|
# -- Microsoft OAuth (Teams & OneDrive) --
|
2026-03-28 16:37:23 +05:30
|
|
|
# MICROSOFT_CLIENT_ID=
|
|
|
|
|
# MICROSOFT_CLIENT_SECRET=
|
2026-02-24 22:45:37 +05:30
|
|
|
# TEAMS_REDIRECT_URI=http://localhost:8000/api/v1/auth/teams/connector/callback
|
2026-03-28 16:35:36 +05:30
|
|
|
# ONEDRIVE_REDIRECT_URI=http://localhost:8000/api/v1/auth/onedrive/connector/callback
|
|
|
|
|
|
2026-03-30 22:16:41 +05:30
|
|
|
# -- Dropbox --
|
|
|
|
|
# DROPBOX_APP_KEY=
|
|
|
|
|
# DROPBOX_APP_SECRET=
|
|
|
|
|
# DROPBOX_REDIRECT_URI=http://localhost:8000/api/v1/auth/dropbox/connector/callback
|
|
|
|
|
|
2026-02-24 22:45:37 +05:30
|
|
|
# -- Composio --
|
|
|
|
|
# COMPOSIO_API_KEY=
|
|
|
|
|
# COMPOSIO_ENABLED=TRUE
|
|
|
|
|
# COMPOSIO_REDIRECT_URI=http://localhost:8000/api/v1/auth/composio/connector/callback
|
|
|
|
|
|
2026-03-14 20:25:25 +05:30
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# SearXNG (bundled web search — works out of the box, no config needed)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# SearXNG provides web search to all search spaces automatically.
|
|
|
|
|
# To access the SearXNG UI directly: http://localhost:8888
|
|
|
|
|
# To disable the service entirely: docker compose up --scale searxng=0
|
|
|
|
|
# To point at your own SearXNG instance instead of the bundled one:
|
|
|
|
|
# SEARXNG_DEFAULT_HOST=http://your-searxng:8080
|
|
|
|
|
# SEARXNG_SECRET=surfsense-searxng-secret
|
|
|
|
|
|
2026-02-26 14:37:08 +05:30
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Daytona Sandbox (optional — cloud code execution for the deep agent)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Set DAYTONA_SANDBOX_ENABLED=TRUE and provide credentials to give the agent
|
|
|
|
|
# an isolated code execution environment via the Daytona cloud API.
|
|
|
|
|
# DAYTONA_SANDBOX_ENABLED=FALSE
|
|
|
|
|
# DAYTONA_API_KEY=
|
|
|
|
|
# DAYTONA_API_URL=https://app.daytona.io/api
|
|
|
|
|
# DAYTONA_TARGET=us
|
|
|
|
|
|
2026-02-24 22:45:37 +05:30
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# External API Keys (optional)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
# Firecrawl (web scraping)
|
|
|
|
|
# FIRECRAWL_API_KEY=
|
|
|
|
|
|
|
|
|
|
# Unstructured (if ETL_SERVICE=UNSTRUCTURED)
|
|
|
|
|
# UNSTRUCTURED_API_KEY=
|
|
|
|
|
|
|
|
|
|
# LlamaCloud (if ETL_SERVICE=LLAMACLOUD)
|
|
|
|
|
# LLAMA_CLOUD_API_KEY=
|
2026-04-08 03:26:24 +05:30
|
|
|
# Optional: Azure Document Intelligence accelerator (used with LLAMACLOUD)
|
2026-04-08 00:59:12 +05:30
|
|
|
# AZURE_DI_ENDPOINT=https://your-resource.cognitiveservices.azure.com/
|
|
|
|
|
# AZURE_DI_KEY=
|
|
|
|
|
|
2026-02-24 22:45:37 +05:30
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Observability (optional)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
# LANGSMITH_TRACING=true
|
|
|
|
|
# LANGSMITH_ENDPOINT=https://api.smith.langchain.com
|
|
|
|
|
# LANGSMITH_API_KEY=
|
|
|
|
|
# LANGSMITH_PROJECT=surfsense
|
|
|
|
|
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
# Advanced (optional)
|
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
# Periodic connector sync interval (default: 5m)
|
|
|
|
|
# SCHEDULE_CHECKER_INTERVAL=5m
|
|
|
|
|
|
|
|
|
|
# JWT token lifetimes
|
|
|
|
|
# ACCESS_TOKEN_LIFETIME_SECONDS=86400
|
|
|
|
|
# REFRESH_TOKEN_LIFETIME_SECONDS=1209600
|
|
|
|
|
|
|
|
|
|
# Pages limit per user for ETL (default: unlimited)
|
|
|
|
|
# PAGES_LIMIT=500
|
|
|
|
|
|
2026-04-15 17:02:00 -07:00
|
|
|
# Premium token quota per registered user (default: 5M)
|
|
|
|
|
# Only applies to models with billing_tier=premium in global_llm_config.yaml
|
|
|
|
|
# PREMIUM_TOKEN_LIMIT=5000000
|
|
|
|
|
|
|
|
|
|
# No-login (anonymous) mode — public users can chat without an account
|
|
|
|
|
# Set TRUE to enable /free pages and anonymous chat API
|
|
|
|
|
NOLOGIN_MODE_ENABLED=FALSE
|
|
|
|
|
# ANON_TOKEN_LIMIT=1000000
|
|
|
|
|
# ANON_TOKEN_WARNING_THRESHOLD=800000
|
|
|
|
|
# ANON_TOKEN_QUOTA_TTL_DAYS=30
|
|
|
|
|
# ANON_MAX_UPLOAD_SIZE_MB=5
|
|
|
|
|
# QUOTA_MAX_RESERVE_PER_CALL=8000
|
|
|
|
|
# Abuse prevention: max concurrent anonymous streams per IP
|
|
|
|
|
# ANON_MAX_CONCURRENT_STREAMS=2
|
|
|
|
|
# Number of chat requests per IP before Turnstile CAPTCHA is required
|
|
|
|
|
# ANON_CAPTCHA_REQUEST_THRESHOLD=5
|
|
|
|
|
# Cloudflare Turnstile CAPTCHA (https://dash.cloudflare.com/ -> Turnstile)
|
|
|
|
|
# TURNSTILE_ENABLED=FALSE
|
|
|
|
|
# TURNSTILE_SECRET_KEY=
|
|
|
|
|
|
2026-02-24 22:45:37 +05:30
|
|
|
# Connector indexing lock TTL in seconds (default: 28800 = 8 hours)
|
|
|
|
|
# CONNECTOR_INDEXING_LOCK_TTL_SECONDS=28800
|
|
|
|
|
|
|
|
|
|
# Residential proxy for web crawling
|
|
|
|
|
# RESIDENTIAL_PROXY_USERNAME=
|
|
|
|
|
# RESIDENTIAL_PROXY_PASSWORD=
|
|
|
|
|
# RESIDENTIAL_PROXY_HOSTNAME=
|
|
|
|
|
# RESIDENTIAL_PROXY_LOCATION=
|
|
|
|
|
# RESIDENTIAL_PROXY_TYPE=1
|