Oliver-ai-bot_2.0/.env.example
Vadym Samoilenko 44a512c41f Phase 1 Complete: Dual-bot architecture, knowledge base, access control
- Remove notebook mode, add RAG + Personal Assistant dual-bot setup
- Add knowledge base management (upload, URL scraping, document processing)
- Add user feature access control (allowed_features, features_override)
- Update admin dashboard with knowledge base tab
- Redesign login page, sidebar, and profile
- Add Celery tasks for async document processing

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 21:26:40 +00:00

103 lines
3.4 KiB
Text

# ==========================================
# Enterprise AI Hub "Nexus" - Environment Variables
# ==========================================
# Copy this file to .env and fill in your actual values
# NEVER commit .env to version control!
# ==========================================
# Database Configuration
# ==========================================
POSTGRES_DB=nexus_db
POSTGRES_USER=nexus_user
POSTGRES_PASSWORD=your_secure_password_here_min_16_chars
# Database URL (auto-constructed, no need to change unless custom setup)
DATABASE_URL=postgresql://nexus_user:your_secure_password_here_min_16_chars@localhost:5432/nexus_db
# ==========================================
# Redis Configuration
# ==========================================
REDIS_URL=redis://localhost:6379/0
# ==========================================
# Qdrant Vector Database
# ==========================================
QDRANT_URL=http://localhost:6333
# ==========================================
# Microsoft Entra ID (Azure AD) Authentication
# ==========================================
# Get these from Azure Portal > App Registrations
ENTRA_CLIENT_ID=your_client_id_here
ENTRA_CLIENT_SECRET=your_client_secret_here
ENTRA_TENANT_ID=your_tenant_id_here
ENTRA_REDIRECT_URI=http://localhost:8000/api/v1/auth/callback
# ==========================================
# LLM Provider API Keys
# ==========================================
# OpenAI (for RAG Mode - GPT-5.1, Embeddings)
# Get from: https://platform.openai.com/api-keys
OPENAI_API_KEY=sk-proj-your_openai_api_key_here
# Google AI (for Assistant Mode - Gemini 2.5 Flash)
# Get from: https://aistudio.google.com/app/apikey
GOOGLE_API_KEY=AIza_your_google_api_key_here
# Anthropic (for Assistant Writing Mode - Claude Sonnet 4.5)
# Get from: https://console.anthropic.com/settings/keys
ANTHROPIC_API_KEY=sk-ant-your_anthropic_api_key_here
# ==========================================
# JWT Authentication
# ==========================================
# Generate a secure random key: openssl rand -hex 32
JWT_SECRET=your_jwt_secret_key_min_32_characters_use_openssl_rand_hex_32
JWT_ALGORITHM=HS256
JWT_EXPIRATION_MINUTES=15
REFRESH_TOKEN_EXPIRATION_DAYS=7
# ==========================================
# LlamaParse (Optional — cloud PDF parsing)
# ==========================================
LLAMAPARSE_API_KEY=
# ==========================================
# File Upload Configuration
# ==========================================
MAX_UPLOAD_SIZE_MB=100
UPLOAD_DIR=/app/uploads
# ==========================================
# Application Settings
# ==========================================
# Environment: development | staging | production
ENVIRONMENT=development
# Enable debug mode (development only)
DEBUG=true
# CORS allowed origins (comma-separated)
CORS_ORIGINS=http://localhost:3000,http://localhost:8000
# ==========================================
# Email Notifications (for Celery task failures)
# ==========================================
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your_email@company.com
SMTP_PASSWORD=your_email_password
ADMIN_EMAIL=admin@company.com
# ==========================================
# Monitoring & Logging (Optional)
# ==========================================
SENTRY_DSN=
LOG_LEVEL=INFO
# ==========================================
# Rate Limiting (Phase 2)
# ==========================================
# RATE_LIMIT_PER_USER=100
# RATE_LIMIT_WINDOW_SECONDS=3600