# =============================================================================
# DAGI Stack Environment Configuration
# =============================================================================
# Copy this file to .env and fill in your values:
#   cp .env.example .env
#
# NEVER commit .env to git - it's already in .gitignore
# =============================================================================

# -----------------------------------------------------------------------------
# Bot Gateway Configuration
# -----------------------------------------------------------------------------
# Telegram bot token (get from @BotFather)
TELEGRAM_BOT_TOKEN=123456789:ABCdefGHIjklMNOpqrsTUVwxyz

# Discord bot token (get from Discord Developer Portal)
DISCORD_BOT_TOKEN=your_discord_bot_token_here

# Gateway port (default: 9300)
GATEWAY_PORT=9300

# DAARWIZZ Agent Configuration
DAARWIZZ_NAME=DAARWIZZ
DAARWIZZ_PROMPT_PATH=./gateway-bot/daarwizz_prompt.txt

# Helion Agent Configuration  (Energy Union AI)
HELION_TELEGRAM_BOT_TOKEN=8112062582:AAGI7tPFo4gvZ6bfbkFu9miq5GdAH2_LvcM
ONEOK_TELEGRAM_BOT_TOKEN=123456789:replace_with_real_oneok_bot_token
ONEOK_CRM_BASE_URL=http://oneok-crm-adapter:8088
ONEOK_CALC_BASE_URL=http://oneok-calc-adapter:8089
ONEOK_DOCS_BASE_URL=http://oneok-docs-adapter:8090
ONEOK_SCHEDULE_BASE_URL=http://oneok-schedule-adapter:8091
ONEOK_ADAPTER_API_KEY=replace_with_internal_service_key
ONEOK_ESPO_DB_ROOT_PASSWORD=replace_with_strong_root_password
ONEOK_ESPO_DB_NAME=oneok_espocrm
ONEOK_ESPO_DB_USER=oneok
ONEOK_ESPO_DB_PASSWORD=replace_with_strong_db_password
ONEOK_ESPO_ADMIN_USER=admin
ONEOK_ESPO_ADMIN_PASSWORD=replace_with_strong_admin_password
ONEOK_ESPO_SITE_URL=http://localhost:9080
ONEOK_ESPO_API_KEY=optional_espo_api_key
ONEOK_BASE_RATE_PER_M2=3200
ONEOK_INSTALL_RATE_PER_M2=900
ONEOK_CURRENCY=UAH
HELION_NAME=Helion
HELION_PROMPT_PATH=./gateway-bot/helion_prompt.txt

# -----------------------------------------------------------------------------
# LLM Providers
# -----------------------------------------------------------------------------
# Ollama configuration (local LLM)
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=qwen3:8b

# DeepSeek API (optional remote provider)
DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
DEEPSEEK_BASE_URL=https://api.deepseek.com

# OpenAI API (optional)
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

# Anthropic Claude API (Sofiia agent)
ANTHROPIC_API_KEY=sk-ant-api03-xxxxxxxxxxxxxxxxxxxxxxxxxxxx

# Notion integration (optional)
NOTION_API_KEY=
NOTION_VERSION=2022-06-28

# OpenCode HTTP endpoint for status probe (optional)
OPENCODE_URL=

# Optional per-node SSH auth (used by sofiia-console /api/nodes/ssh/status)
NODES_NODA1_SSH_PASSWORD=

# -----------------------------------------------------------------------------
# DAGI Router Configuration
# -----------------------------------------------------------------------------
ROUTER_PORT=9102
ROUTER_CONFIG_PATH=./router-config.yml

# Request timeout (milliseconds)
ROUTER_TIMEOUT_MS=30000

# -----------------------------------------------------------------------------
# DevTools Backend
# -----------------------------------------------------------------------------
DEVTOOLS_PORT=8008
DEVTOOLS_WORKSPACE=/workspace

# Max file size for fs_read (bytes)
DEVTOOLS_MAX_FILE_SIZE=10485760

# -----------------------------------------------------------------------------
# CrewAI Orchestrator
# -----------------------------------------------------------------------------
CREWAI_PORT=9010

# Workflow execution timeout (seconds)
CREWAI_WORKFLOW_TIMEOUT=300

# -----------------------------------------------------------------------------
# RBAC Service
# -----------------------------------------------------------------------------
RBAC_PORT=9200

# Database URL (SQLite for dev, PostgreSQL for prod)
RBAC_DATABASE_URL=sqlite:///./rbac.db
# RBAC_DATABASE_URL=postgresql://user:password@localhost:5432/dagi_rbac

# Session token secret (generate with: openssl rand -hex 32)
RBAC_SECRET_KEY=your-secret-key-here-replace-with-random-hex

# -----------------------------------------------------------------------------
# Logging Configuration
# -----------------------------------------------------------------------------
LOG_LEVEL=INFO
LOG_FORMAT=json

# Log file rotation (MB)
LOG_MAX_SIZE=100

# -----------------------------------------------------------------------------
# Docker Network Configuration
# -----------------------------------------------------------------------------
DAGI_NETWORK=dagi-network

# -----------------------------------------------------------------------------
# Security
# -----------------------------------------------------------------------------
# CORS allowed origins (comma-separated)
CORS_ORIGINS=http://localhost:3000,https://daarion.city

# Rate limiting (requests per minute)
RATE_LIMIT_RPM=60

# -----------------------------------------------------------------------------
# Staging/Production Environment
# -----------------------------------------------------------------------------
# Set to 'development', 'staging', or 'production'
ENVIRONMENT=development

# Enable debug mode (true/false)
DEBUG=true

# -----------------------------------------------------------------------------
# Aurora / Kling Integration
# -----------------------------------------------------------------------------
KLING_ACCESS_KEY=
KLING_SECRET_KEY=
KLING_BASE_URL=https://api.klingai.com
KLING_TIMEOUT=60

# =============================================================================
# SECRET GENERATION COMMANDS
# =============================================================================
# Generate random secret (32 bytes hex):
#   openssl rand -hex 32
#
# Generate UUID:
#   python3 -c "import uuid; print(uuid.uuid4())"
#
# Generate base64 secret:
#   openssl rand -base64 32
# =============================================================================
