Files
ewoooc/.env.example
OoO 4d5a995718 chore: 刪除孤兒 AI service 並補齊 env 範例
ADR-017 Phase 3f-5:刪除未被 runtime 引用的 elephant_alpha_decision_router、telegram_ai_integration、watcher_agent;補 .env.example 的 Aider/AutoHeal/NVIDIA/OpenClaw/backup/report/PG sync 等實際讀取變數。
2026-04-29 21:46:24 +08:00

264 lines
11 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ==========================================
# MOMO 監控系統 - 環境變數配置模板
# ==========================================
# 複製此檔案為 .env 並填入實際值
# 注意:.env 檔案已加入 .gitignore不會被提交到版本控制
# ==========================================
# 安全設定
# ==========================================
# [必填] 登入密碼(弱密碼會被 LoginManager 拒絕)
LOGIN_PASSWORD=your_strong_password_here
# [必填] Flask session 簽章密鑰(建議 openssl rand -hex 32
SECRET_KEY=your_flask_secret_key_here
# [預設 false] 開發測試用:設 true 可繞過所有 @login_required生產環境嚴禁開啟
DISABLE_LOGIN=false
# ==========================================
# Telegram Bot 設定
# ==========================================
TELEGRAM_BOT_TOKEN=your_telegram_bot_token
TELEGRAM_CHAT_IDS=["chat_id_1","chat_id_2","chat_id_3"]
# ==========================================
# Line Notify 設定
# ==========================================
LINE_CHANNEL_ACCESS_TOKEN=your_line_channel_access_token
LINE_GROUP_ID=your_line_group_id
# ==========================================
# Email (SMTP) 設定
# ==========================================
EMAIL_HOST=smtp.gmail.com
EMAIL_PORT=587
EMAIL_HOST_USER=your_email@gmail.com
EMAIL_HOST_PASSWORD=your_email_app_password
EMAIL_SENDER=your_email@gmail.com
EMAIL_RECEIVER=receiver_email@gmail.com
# ==========================================
# 網路設定
# ==========================================
PUBLIC_URL=http://your_server_ip:port
NGROK_AUTH_TOKEN=your_ngrok_auth_token
# ==========================================
# 通訊模組設定(從環境變數讀取)
# ==========================================
# --- Alert Webhook ---
ALERT_WEBHOOK_USER=alertmanager
ALERT_WEBHOOK_PASSWORD=your_secure_webhook_password_here
# --- GitLab CI/CD ---
GITLAB_URL=http://192.168.0.110:8929
GITLAB_TOKEN=your_gitlab_token_here
GITLAB_PROJECT_ID=1
# --- Telegram Bot ---
# ==========================================
# HTTPS 設定(生產環境)
# ==========================================
# 如果部署在 HTTPS 環境,設為 true
USE_HTTPS=false
# ==========================================
# Database Settings
# ==========================================
# PostgreSQL Configuration (Production)
POSTGRES_HOST=momo-postgres
POSTGRES_PORT=5432
POSTGRES_USER=momo
POSTGRES_PASSWORD=your_secure_postgres_password_here
POSTGRES_DB=momo_analytics
# SQLite Configuration (Development/Backup)
SQLITE_PATH=data/momo_database.db
# Database Type Selection (postgresql or sqlite)
USE_POSTGRESQL=true
# ==========================================
# Google Drive 自動匯入設定
# ==========================================
# 說明:系統會自動從 Google Drive 下載、匯入並刪除當日業績 Excel 檔案
# 設定方式:請參考 GOOGLE_DRIVE_SETUP.md
# 認證檔案位置config/google_credentials.json
# Token 檔案位置config/google_token.pickle首次認證後自動產生
GDRIVE_FOLDER_PATH=業績報表/當日業績
GDRIVE_FILE_PATTERN=即時業績_當日
# ==========================================
# Hermes 3 競價情報分析Module 2 / ADR-012
# ==========================================
# [預設 http://192.168.0.111:11434] Hermes Ollama 端點(內網免認證)
HERMES_URL=http://192.168.0.111:11434
# [預設 120] Hermes 推理 timeout批量 300 筆預估 ~90s
HERMES_TIMEOUT=120
# [預設 HERMES_URL] Embedding 服務主機ADR-003 對齊embedding 走 Hermes 主機)
# EMBEDDING_HOST=http://192.168.0.111:11434
# ==========================================
# Elephant Alpha AI Agent Super Orchestrator Settings
# ==========================================
# Description: Elephant Alpha (100B parameter model) for autonomous AI agent coordination
# Provider: OpenRouter AI
# Documentation: https://openrouter.ai/docs/quick-start
# OpenRouter API Configuration
OPENROUTER_API_KEY=sk-or-v1-your-openrouter-api-key-here
ELEPHANT_ALPHA_MODEL=openrouter/elephant-alpha
# Elephant Alpha Behavior Configuration
ELEPHANT_ALPHA_CONFIDENCE_THRESHOLD=0.7
ELEPHANT_ALPHA_MAX_AUTONOMOUS_DECISIONS_PER_HOUR=10
ELEPHANT_ALPHA_TIMEOUT_SECONDS=180
ELEPHANT_ALPHA_CONTEXT_WINDOW=256000
# Autonomous Engine Settings
ELEPHANT_ALPHA_LEARNING_RATE=0.1
ELEPHANT_ALPHA_PERFORMANCE_TRACKING=true
ELEPHANT_ALPHA_AUTO_ESCALATION_ENABLED=true
# Integration Settings
ELEPHANT_ALPHA_HERMES_URL=http://192.168.0.111:11434
ELEPHANT_ALPHA_HERMES_MODEL=hermes3:latest
ELEPHANT_ALPHA_NEMOTRON_NIM_ENDPOINT=https://integrate.api.nvidia.com/v1
ELEPHANT_ALPHA_OPENCLAW_GEMINI_ENDPOINT=https://generativelanguage.googleapis.com/v1beta
# ── Google Gemini API ───────────────────────────────────────────────────────
# OpenClaw 策略師 / MCP Collector / Code Review Pipeline 共用金鑰
# 取得方式https://aistudio.google.com/app/apikey
# 注意Gemini 2.0 Flash 將於 2026-06-01 關閉,後續需遷移至 2.5 Flash
GEMINI_API_KEY=<change-me>
GEMINI_MODEL=gemini-1.5-flash
OPENCLAW_MODEL=gemini-2.5-flash-preview-05-20
# Debug and Monitoring
ELEPHANT_ALPHA_DEBUG_MODE=false
ELEPHANT_ALPHA_METRICS_ENABLED=true
ELEPHANT_ALPHA_AUDIT_LOGGING=true
# ── System Maintenance API ──────────────────────────────────────────────────
# X-Internal-Key 標頭認證金鑰(必填)
# 用於 /api/system/cleanup/* 和 /api/system/health 等維護路由。
# 建議使用 openssl rand -hex 32 生成。
INTERNAL_API_KEY=your-secret-internal-key-here
# ──────────────────────────────────────────────────────────────────────────
# 初始管理員 / Bot API / SSH JumpPhase 1-3 後新增的必需變數)
# ──────────────────────────────────────────────────────────────────────────
# [必填於首次部署] 初始管理員密碼services/user_service.py create_initial_admin 用)
INITIAL_ADMIN_PASSWORD=your_initial_admin_password_here
# [選填] Bot API 端點認證 Tokenroutes/bot_api_routes.py
# 不設則所有 /bot/api/* 端點拒絕請求
BOT_API_TOKEN=your_bot_api_token_here
# [選填] AIOps SSH Jump 跳板設定services/jump_executor.py
SSH_JUMP_HOST=192.168.0.110
SSH_JUMP_USER=wooo
SSH_TARGET_HOST=192.168.0.188
SSH_TARGET_USER=ollama
# ──────────────────────────────────────────────────────────────────────────
# AIOps / Autonomous Code RepairADR-014
# ──────────────────────────────────────────────────────────────────────────
# [選填] Aider 自動修復執行所在 SSH 主機(預設 110 Gateway
HEAL_SSH_HOST=192.168.0.110
HEAL_SSH_USER=wooo
HEAL_SSH_PORT=22
# [選填] SSH private key 路徑;未設定則使用 services/aider_heal_executor.py 預設值
DEPLOY_SSH_KEY_PATH=/home/wooo/.ssh/id_ed25519
# [選填] 110 主機上的 repo 路徑
AIDER_REPO_PATH=/home/wooo/ewoooc
# [選填] Aider 使用的模型與 Ollama API endpoint
AIDER_MODEL=ollama/qwen2.5-coder:7b
OLLAMA_API_BASE=http://192.168.0.111:11434
# [選填] 自動修復安全閥
AIDER_MAX_DIFF_LINES=50
AIDER_MAX_HOURLY_FIX=5
MOMO_BASE_URL=https://mo.wooo.work
# ──────────────────────────────────────────────────────────────────────────
# Elephant Alpha / AutoHeal SSH 控制
# ──────────────────────────────────────────────────────────────────────────
# [選填] AutoHeal/Elephant Alpha SSH 跳板設定
ELEPHANT_ALPHA_JUMP_HOST=192.168.0.110
ELEPHANT_ALPHA_JUMP_USER=wooo
ELEPHANT_ALPHA_SSH_KEY_PATH=config/autoheal_id_ed25519
ELEPHANT_ALPHA_SSH_PORT=22
ELEPHANT_ALPHA_SSH_CONNECT_TIMEOUT=10
ELEPHANT_ALPHA_SSH_COMMAND_TIMEOUT=60
# [選填] 自愈節流與狀態快取
ELEPHANT_ALPHA_CACHE_DB=:memory:
ELEPHANT_ALPHA_ESCALATION_COOLDOWN_MIN=30
ELEPHANT_TIMEOUT=120
# ──────────────────────────────────────────────────────────────────────────
# NVIDIA NIM / OpenClaw / Internal Webhook
# ──────────────────────────────────────────────────────────────────────────
# [選填] NemoTron / NIM / OpenClaw 相關服務共用
NVIDIA_API_KEY=your_nvidia_api_key_here
INTERNAL_WEBHOOK_TOKEN=your_internal_webhook_token_here
# [選填] OpenClaw Telegram bot
OPENCLAW_BOT_TOKEN=your_openclaw_bot_token_here
OPENCLAW_GROUP_ID=-1003940688311
OPENCLAW_ALLOWED_USERS=
# [選填] AI provider 選擇與外部資料源
AI_PROVIDER=ollama
YOUTUBE_API_KEY=
GEMINI_TIMEOUT=60
# ──────────────────────────────────────────────────────────────────────────
# Ollama / MCP / 密碼政策
# ──────────────────────────────────────────────────────────────────────────
OLLAMA_HOST=https://ollama.wooo.work/ollama
OLLAMA_MODEL=gemma3:4b
OLLAMA_TIMEOUT=120
OLLAMA_COPY_TIMEOUT=180
MCP_CACHE_TTL_HOURS=24
MCP_GEMINI_MODEL=gemini-2.0-flash
PASSWORD_MIN_LENGTH=8
PASSWORD_REQUIRE_UPPERCASE=true
PASSWORD_REQUIRE_LOWERCASE=true
PASSWORD_REQUIRE_DIGIT=true
PASSWORD_REQUIRE_SPECIAL=false
PASSWORD_SPECIAL_CHARS='!@#$%^&*()_+-=[]{}|;:,.<>?'
PASSWORD_EXPIRY_DAYS=90
# ──────────────────────────────────────────────────────────────────────────
# 備份 / 報表 / 同步
# ──────────────────────────────────────────────────────────────────────────
BACKUP_DIR=/app/data/db_backups
BACKUP_RETENTION_DAYS=7
DB_CONTAINER=momo-db
REPORTS_DIR=/app/data/reports
DATABASE_PATH=data/momo_database.db
PG_SYNC_ENABLED=false
PG_SYNC_INTERVAL=300
# [選填] 外部 BI 連結(模板全域變數)
METABASE_URL=https://mo.wooo.work/metabase
GRIST_URL=https://grist.wooo.work