# ============================================ # TELEGRAM BOT CONFIGURATION # ============================================ # Telegram Bot Token # Get it from BotFather: https://t.me/botfather BOT_TOKEN=your_bot_token_here # Creator ID # Your Telegram user ID - the bot will recognize you as creator # To get your ID: send /id command to the bot and use the "from id" value CREATOR_ID=your_user_id_here # ============================================ # BOT SETTINGS (Optional) # ============================================ # Bot Prefix for commands BOT_PREFIX= # Whitelist of chat IDs (comma-separated) # Example: 123456789,987654321 CHAT_IDS_WHITELIST= # Test environment mode TEST_ENVIRONMENT=false # Only creator can use bot ONLY_FOR_CREATOR_MODE=false # Use user names in AI prompts USE_NAMES_IN_PROMPT=true # Custom system prompt for AI (or put it into data/SYSTEM_PROMPT.md) SYSTEM_PROMPT= # Maximum photo size in pixels MAX_PHOTO_SIZE=1280 # Directory with localization JSON files LOCALES_DIR=locales # ============================================ # AI MODELS CONFIGURATION (Optional) # ============================================ # Google Gemini GEMINI_API_KEY= # google: official Gemini API via @google/genai; openai: OpenAI-compatible Gemini endpoint; auto: infer from GEMINI_BASE_URL GEMINI_API_MODE=google GEMINI_MODEL=gemini-2.5-flash GEMINI_IMAGE_MODEL=gemini-2.5-flash-image GEMINI_TRANSCRIPTION_MODEL=gemini-2.5-flash GEMINI_TTS_MODEL=gemini-2.5-flash-preview-tts GEMINI_TTS_VOICE=Kore GEMINI_MAX_CONCURRENT_REQUESTS=3 # Mistral AI MISTRAL_API_KEY= MISTRAL_MODEL=mistral-small-latest MISTRAL_TRANSCRIPTION_MODEL=voxtral-mini-latest MISTRAL_TTS_MODEL= MISTRAL_TTS_VOICE_ID= MISTRAL_MAX_CONCURRENT_REQUESTS=3 # Ollama (Local AI Model) OLLAMA_ADDRESS= OLLAMA_CHAT_MODEL= OLLAMA_IMAGE_MODEL= OLLAMA_THINK_MODEL= OLLAMA_AUDIO_MODEL=gemma4:e2b OLLAMA_API_KEY= OLLAMA_EMBEDDING_MODEL=nomic-embed-text OLLAMA_RAG_CHUNK_SIZE=1400 OLLAMA_RAG_CHUNK_OVERLAP=220 OLLAMA_RAG_TOP_K=8 OLLAMA_RAG_MAX_CONTEXT_CHARS=14000 OLLAMA_RAG_MIN_SCORE=0.12 OLLAMA_RAG_MAX_ARCHIVE_FILES=200 OLLAMA_RAG_MAX_ARCHIVE_BYTES=52428800 OLLAMA_RAG_MAX_ARCHIVE_DEPTH=2 OLLAMA_MAX_CONCURRENT_REQUESTS=1 # OpenAI OPENAI_API_KEY= OPENAI_BASE_URL= OPENAI_MODEL=gpt-4.1-nano OPENAI_IMAGE_MODEL=gpt-image-1-mini OPENAI_TRANSCRIPTION_MODEL=gpt-4o-mini-transcribe OPENAI_TTS_MODEL=gpt-4o-mini-tts OPENAI_TTS_VOICE=alloy OPENAI_TTS_INSTRUCTIONS= OPENAI_MAX_CONCURRENT_REQUESTS=3 # Per-capability AI endpoint overrides # Pattern: # __MODEL= # __BASE_URL= # __API_KEY= # # Providers: OLLAMA, GEMINI, MISTRAL, OPENAI # Capabilities: CHAT, VISION, OCR, THINKING, EXTENDED_THINKING, TOOLS, AUDIO, # DOCUMENTS, OUTPUT_IMAGES, SPEECH_TO_TEXT, TEXT_TO_SPEECH # Endpoint aliases are also supported: *_ENDPOINT and *_ADDRESS. # Provider-wide fallback endpoints: OPENAI_BASE_URL, MISTRAL_BASE_URL, # GEMINI_BASE_URL, OLLAMA_ADDRESS or OLLAMA_BASE_URL. # Capability aliases are also supported: IMAGE, THINK, RAG, EMBEDDING, # TRANSCRIPTION, STT, TTS. # # Examples: # OPENAI_SPEECH_TO_TEXT_MODEL=gpt-4o-mini-transcribe # OPENAI_SPEECH_TO_TEXT_BASE_URL=https://api.openai.com/v1 # OPENAI_SPEECH_TO_TEXT_API_KEY= # MISTRAL_TTS_BASE_URL= # OLLAMA_DOCUMENTS_ADDRESS=http://localhost:11434