84 lines
2.0 KiB
Plaintext
84 lines
2.0 KiB
Plaintext
NODE_ENV=production
|
|
PORT=3000
|
|
LOG_LEVEL=info
|
|
JSON_BODY_LIMIT=24mb
|
|
|
|
# Required secrets
|
|
JWT_SECRET=
|
|
JWT_EXPIRES_IN=7d
|
|
ADMIN_TOKEN_SECRET=
|
|
ADMIN_TOKEN_TTL_SECONDS=28800
|
|
|
|
# Enable only for the first deployment, then disable it again.
|
|
ADMIN_BOOTSTRAP_ENABLED=false
|
|
ADMIN_USERNAME=
|
|
ADMIN_PASSWORD=
|
|
ADMIN_NICKNAME=
|
|
|
|
# Persistent storage
|
|
USE_MEMORY_STORAGE=false
|
|
USE_FILE_REDIS=false
|
|
DB_HOST=
|
|
DB_PORT=3306
|
|
DB_USERNAME=
|
|
DB_PASSWORD=
|
|
DB_NAME=
|
|
REDIS_HOST=
|
|
REDIS_PORT=6379
|
|
REDIS_PASSWORD=
|
|
REDIS_DB=0
|
|
|
|
# Email
|
|
EMAIL_HOST=
|
|
EMAIL_PORT=465
|
|
EMAIL_SECURE=true
|
|
EMAIL_USER=
|
|
EMAIL_PASS=
|
|
EMAIL_FROM=
|
|
MAIL_PROVIDER=
|
|
NOVAMAILIO_MAIL_API_BASE=
|
|
NOVAMAILIO_MAIL_CREDENTIAL=
|
|
NOVAMAILIO_MAIL_FROM_NAME=
|
|
NOVAMAILIO_MAIL_FINGERPRINT=
|
|
NOVAMAILIO_MAIL_ORIGIN=
|
|
NOVAMAILIO_MAIL_REFERER=
|
|
NOVAMAILIO_MAIL_USER_AGENT=
|
|
|
|
# Zulip
|
|
ZULIP_CONFIG_MODE=dynamic
|
|
ZULIP_SERVER_URL=
|
|
ZULIP_BOT_EMAIL=
|
|
ZULIP_BOT_API_KEY=
|
|
ZULIP_API_KEY_ENCRYPTION_KEY=
|
|
ZULIP_DEGRADED_MODE_ENABLED=true
|
|
ZULIP_AUTO_RECONNECT_ENABLED=true
|
|
|
|
# Realtime and generated assets
|
|
# The native WebSocket server listens separately from the REST API.
|
|
WEBSOCKET_PORT=3001
|
|
WEBSOCKET_NAMESPACE=/game
|
|
ACCOUNT_ASSET_DIR=generated/account-assets
|
|
SKIN_GENERATION_OUTPUT_DIR=generated/skins
|
|
SKIN_GENERATION_SCRIPT_PATH=scripts/skin_generation/generate_skin_from_prompt.py
|
|
SKIN_GENERATION_PYTHON=/opt/skin-generation-venv/bin/python
|
|
NOVAMAILIO_API_KEY=
|
|
|
|
# AI-town NPC planning. If unset, NPCs use the validated deterministic daily schedule.
|
|
WORLD_NPC_PLANNER_URL=
|
|
WORLD_NPC_PLANNER_API_KEY=
|
|
WORLD_NPC_PLANNER_MODEL=
|
|
WORLD_NPC_DIALOGUE_MODEL=
|
|
WORLD_NPC_STATE_PATH=data/world-npc-state.json
|
|
# Minimum real-time interval between interaction-driven plan revisions for one NPC.
|
|
WORLD_NPC_REPLAN_COOLDOWN_MS=300000
|
|
WORLD_NPC_SOCIAL_ENABLED=on
|
|
WORLD_NPC_SOCIAL_COOLDOWN_MS=30000
|
|
# Keep production at real time unless a deliberate alternate town clock is required.
|
|
WORLD_NPC_TIME_SCALE=1
|
|
WORLD_NPC_START_TIME=
|
|
|
|
# Optional cafe companion defaults
|
|
CAFE_COMPANION_DEFAULT_OPENAI_BASE_URL=
|
|
CAFE_COMPANION_DEFAULT_OPENAI_API_KEY=
|
|
CAFE_COMPANION_DEFAULT_OPENAI_MODEL=
|