# ============================================================================== # Telex — Environment Variables Template # Copy this file to .env and fill in real values. Never commit .env to git. # ============================================================================== # ── Database ────────────────────────────────────────────────────────────────── # PostgreSQL connection string (asyncpg dialect for SQLAlchemy async). # Format: postgresql+asyncpg://:@:/ DATABASE_URL=postgresql+asyncpg://user:password@localhost:5432/telex # ── GitHub App ──────────────────────────────────────────────────────────────── # From https://github.com/settings/apps/ GITHUB_APP_ID= # Paste the full RSA private key content (multi-line) or use a file path. GITHUB_APP_PRIVATE_KEY= # The secret configured in your GitHub App webhook settings. GITHUB_WEBHOOK_SECRET= # ── GitHub OAuth ────────────────────────────────────────────────────────────── # From https://github.com/settings/developers -> OAuth Apps GITHUB_OAUTH_CLIENT_ID= GITHUB_OAUTH_CLIENT_SECRET= # ── LLM Providers ───────────────────────────────────────────────────────────── # Google Gemini API key (platform-hosted fallback for patch generation) GEMINI_API_KEY= # Anthropic Claude API key (optional platform-hosted key) ANTHROPIC_API_KEY= # Which provider to use by default: "gemini" | "anthropic" | "openai" | ... LLM_PROVIDER_DEFAULT=gemini # ── BYOK Encryption (Phase 7) ───────────────────────────────────────────────── # Fernet symmetric key used to encrypt BYOK API keys at rest. # Generate: python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())" # REQUIRED in production. Omit only in local dev (an ephemeral dev key is used). TELEX_ENCRYPTION_KEY= # ── Application ─────────────────────────────────────────────────────────────── # Deployment target: "development" (default) | "production" # When set to "production", the server refuses to start if required secrets are missing. ENVIRONMENT=development # Must be at least 32 characters. Use openssl rand -base64 32 to generate. NEXTAUTH_SECRET=telex-development-session-secret-key-32-chars-min # Public URL of this API (used in OAuth redirects, PR links, etc.) NEXT_PUBLIC_API_URL=http://localhost:8000 # URL of the Next.js dashboard (for CORS and OAuth callback) WEB_APP_URL=http://localhost:3000 # GitHub App slug (the app name as it appears in GitHub URLs) GITHUB_APP_SLUG=telex-agent-dev # Comma-separated list of allowed CORS origins (overrides code default) # CORS_ORIGINS=http://localhost:3000,http://127.0.0.1:3000 # Demo/testing key required for /batch-run and failure injection endpoints # Change this in production or disable the endpoint entirely. DEMO_KEY=telex_demo_secret_2026