ENV=local
DEBUG=true

# Domain, is required when deployed, leave them empty in local dev
APP_DOMAIN=
# Email for Let's Encrypt Cert
TLS_EMAIL=
# Basic Auth for the web UI (leave empty to disable)
BASIC_AUTH_USER=
BASIC_AUTH_PASSWORD=

# Base URLs
AWS_S3_CDN_URL=https://${APP_DOMAIN}/static
APP_BASE_URL=https://${APP_DOMAIN}

# LLM Providers, at least one is required
OPENROUTER_API_KEY=
OPENAI_API_KEY=
DEEPSEEK_API_KEY=
XAI_API_KEY=
GOOGLE_API_KEY=
GOOGLE_GENAI_USE_VERTEXAI=false
#GOOGLE_CLOUD_PROJECT=
MINIMAX_API_KEY=

# OpenAI Compatible Provider
OPENAI_COMPATIBLE_API_KEY=
OPENAI_COMPATIBLE_PROVIDER=
OPENAI_COMPATIBLE_BASE_URL=
OPENAI_COMPATIBLE_MODEL=
OPENAI_COMPATIBLE_MODEL_LITE=

# Anthropic Compatible Provider
ANTHROPIC_COMPATIBLE_API_KEY=
ANTHROPIC_COMPATIBLE_PROVIDER=
ANTHROPIC_COMPATIBLE_BASE_URL=
ANTHROPIC_COMPATIBLE_MODEL=
ANTHROPIC_COMPATIBLE_MODEL_LITE=

# LLM Config
#SYSTEM_PROMPT=
#INTENTKIT_PROMPT=

# PostgreSQL Database
# If use db in compose file, leave all empty
DB_HOST=
DB_PORT=
DB_USERNAME=
DB_PASSWORD=
DB_NAME=
DB_AUTO_MIGRATE=true

# Redis
#REDIS_HOST="127.0.0.1"

# AWS S3
# If deploying on AWS, you don't need to configure anything in this section.
# If using third-party object storage, all fields must be configured.
# If using rustfs in Docker Compose, you only need to expose and configure the AWS_S3_CDN_URL.
AWS_S3_BUCKET=
AWS_S3_ENDPOINT_URL=
AWS_S3_REGION_NAME=
AWS_S3_ACCESS_KEY_ID=
AWS_S3_SECRET_ACCESS_KEY=

# Supabase Auth
#SUPABASE_JWT_SIGNING_KEY=
#SUPABASE_JWKS_URL=
#SUPABASE_URL=
#SUPABASE_SERVICE_ROLE_KEY=

# Wechat Channel
WECHAT_SYSTEM_PROMPT=
# Telegram Channel
TG_SYSTEM_PROMPT=
TG_NEW_AGENT_POLL_INTERVAL=
# XMTP Channel
#XMTP_SYSTEM_PROMPT=

# Twitter
TWITTER_OAUTH2_CLIENT_ID=
TWITTER_OAUTH2_CLIENT_SECRET=
TWITTER_OAUTH2_REDIRECT_URI=http://localhost:8000/callback/auth/twitter

# Hourly Budget Control
# Optional: Maximum base LLM cost per user per hour (in USD).
# When set, users exceeding this limit will receive a rate limit message.
# Leave empty to disable hourly budget control.
#PAYMENT_ENABLED=false
HOURLY_BUDGET=

# Skills

# Cloudflare Browser Rendering (for read_webpage system skill)
CLOUDFLARE_ACCOUNT_ID=
CLOUDFLARE_API_TOKEN=

# Z.AI API (for read_webpage_zai and search_web_zai system skills)
ZAI_PLAN_API_KEY=

# Skill API Keys
TAVILY_API_KEY=
FIRECRAWL_API_KEY=

# Sentry
#SENTRY_DSN=

# Alert
#TG_ALERT_BOT_TOKEN=
#TG_ALERT_CHAT_ID=
SLACK_ALERT_TOKEN=
SLACK_ALERT_CHANNEL=


# ------------- Web3 part -------------

# Coinbase Server Wallet
# Get these from https://portal.cdp.coinbase.com
CDP_API_KEY_ID=
CDP_API_KEY_SECRET=
CDP_WALLET_SECRET=

# Privy Wallet & Privy Login
PRIVY_APP_ID=
PRIVY_APP_SECRET=
PRIVY_AUTHORIZATION_KEYS=

# Privy + Safe Wallet
SAFE_API_KEY=
# Master Wallet for Gas Sponsorship
# This wallet pays for Safe deployments and configuration transactions.
# The master wallet only pays gas - it does NOT have control over deployed Safes.
# Generate a new EOA and fund it with native tokens (ETH/etc) on your target chains.
MASTER_WALLET_PRIVATE_KEY=

# RPC Provider, choose one
QUICKNODE_API_KEY=
INFURA_API_KEY=

# Web3 Skills
ALLORA_API_KEY=
DAPPLOOKER_API_KEY=
UNREALSPEECH_API_KEY=
AIXBT_API_KEY=
MORALIS_API_KEY=
COOKIEFUN_API_KEY=
COINGECKO_API_KEY=
ELFA_API_KEY=
HEURIST_API_KEY=
ENSO_API_TOKEN=
CRYPTOPANIC_API_KEY=
DUNE_API_KEY=
CRYPTOCOMPARE_API_KEY=
VENICE_API_KEY=
CARV_API_KEY=
OPENSEA_API_KEY=
