PyCatan-AI / .env.example
shon
1
d745a13
# ============================================================================
# Environment Variables Template for PyCatan AI
# ============================================================================
# This file is a TEMPLATE - it will be committed to Git.
# Copy this file to .env and fill in your actual API keys.
#
# SETUP INSTRUCTIONS:
# 1. Copy this file: cp .env.example .env
# 2. Edit .env and paste your actual API keys
# 3. NEVER commit the .env file to Git!
# ============================================================================
# ----------------------------------------------------------------------------
# LLM API Keys
# ----------------------------------------------------------------------------
# Get your API keys from:
# - Gemini: https://aistudio.google.com/app/apikey
# - OpenAI: https://platform.openai.com/api-keys
# - Anthropic: https://console.anthropic.com/settings/keys
# Google Gemini API Key (recommended for development)
GEMINI_API_KEY=
# OpenAI API Key (optional)
OPENAI_API_KEY=
# Anthropic Claude API Key (optional)
ANTHROPIC_API_KEY=
# ElevenLabs API Key (optional, for AI chat text-to-speech)
ELEVENLABS_API_KEY=
# Azure OpenAI (optional)
AZURE_OPENAI_KEY=
AZURE_OPENAI_ENDPOINT=
# ----------------------------------------------------------------------------
# Optional: LLM Configuration Overrides
# ----------------------------------------------------------------------------
# You can override default settings via environment variables
# Default LLM provider (gemini, openai, anthropic, azure)
# DEFAULT_LLM_PROVIDER=gemini
# Default model name
# DEFAULT_MODEL_NAME=gemini-2.0-flash-exp
# Default temperature (0.0 to 2.0)
# DEFAULT_TEMPERATURE=0.7
# ----------------------------------------------------------------------------
# Optional: ElevenLabs Text-to-Speech for AI Table Talk
# ----------------------------------------------------------------------------
# Set TTS_PROVIDER to gemini, elevenlabs, or off. This works for
# play_ai_auto.bat and PLAY_WITH_SET_SETTINGS.bat.
TTS_PROVIDER=off
# Generated voice clips are cached per session by default:
# <session_dir>/tts_cache/
# Set AI_TTS_CACHE_ENABLED=false to disable this, or override AI_TTS_CACHE_DIR
# if you intentionally want a shared cache.
AI_TTS_CACHE_ENABLED=true
# AI_TTS_CACHE_DIR=
# Gemini TTS uses GEMINI_API_KEY by default.
GEMINI_TTS_ENABLED=true
GEMINI_TTS_MODEL_ID=gemini-3.1-flash-tts-preview
GEMINI_TTS_VOICE_NAME=Kore
# Per-player voices are keyed by player slot, so renaming Alice/Bob/etc.
# does not change who sounds like whom. PLAYER1 and PLAYER_1 both work.
GEMINI_TTS_VOICE_PLAYER_1=Achernar
GEMINI_TTS_VOICE_PLAYER_2=Achird
GEMINI_TTS_VOICE_PLAYER_3=Alnilam
# GEMINI_TTS_VOICE_PLAYER_4=Kore
GEMINI_TTS_PLAY_AUDIO=true
GEMINI_TTS_VERIFY_SSL=true
GEMINI_TTS_PROMPT_TEMPLATE=[casual, conversational, Israeli Hebrew pronunciation] {text}
# ElevenLabs TTS requires ELEVENLABS_API_KEY and a voice ID.
#
# Set ELEVENLABS_DEFAULT_VOICE_ID to any voice from your ElevenLabs library.
# Per-player voice overrides are optional and should be keyed by player slot,
# so renaming the player does not change the voice.
ELEVENLABS_TTS_ENABLED=false
ELEVENLABS_DEFAULT_VOICE_ID=
ELEVENLABS_TTS_MODEL_ID=eleven_v3
ELEVENLABS_TTS_OUTPUT_FORMAT=pcm_16000
ELEVENLABS_TTS_PLAY_AUDIO=true
ELEVENLABS_TTS_VERIFY_SSL=true
# Optional per-player voices. PLAYER1 and PLAYER_1 both work.
# ELEVENLABS_VOICE_PLAYER_1=
# ELEVENLABS_VOICE_PLAYER_2=
# ELEVENLABS_VOICE_PLAYER_3=
# ELEVENLABS_VOICE_PLAYER_4=
# Optional tuning
# ELEVENLABS_TTS_LANGUAGE_CODE=he
# ELEVENLABS_TTS_STABILITY=
# ELEVENLABS_TTS_SIMILARITY_BOOST=
# ELEVENLABS_TTS_STYLE=
# ELEVENLABS_TTS_USE_SPEAKER_BOOST=
# ----------------------------------------------------------------------------
# Development Settings
# ----------------------------------------------------------------------------
# Enable debug mode for detailed logging
# DEBUG_MODE=false
# Log directory
# LOG_DIRECTORY=logs/ai_agents
# ----------------------------------------------------------------------------
# Notes
# ----------------------------------------------------------------------------
# - The .env file is ignored by Git (see .gitignore)
# - Never share your .env file or commit it to version control
# - Keep your API keys secret and rotate them regularly
# - Each developer should have their own .env file with their own keys
# ============================================================================