# Discord application bot token. Never commit a real token. DISCORD_BOT_TOKEN= # Optional. Set this while developing so slash commands show up immediately # in one server. Leave empty to sync global commands (can take up to an hour). DISCORD_GUILD_ID= # Optional. Set both Resend fields to enable grokbot. Leave both empty otherwise. # Never commit a real API key. RESEND_API_KEY= # Sender on a domain you have verified in Resend. SPF and DKIM must align # with this domain or a routine trigger will not fire. RESEND_FROM= # SQLite file. Created on startup. DATABASE_PATH=data/links.sqlite3 # Per Discord user. Counted when a mention is accepted for sending. RATE_LIMIT_MAX=5 RATE_LIMIT_WINDOW_SECONDS=600 # Same-author burst: look back 45 seconds and stop at a gap longer than 5. BURST_WINDOW_SECONDS=45 BURST_GAP_SECONDS=5 # Channel messages shown under the earlier-channel heading. Not part of the burst. CHANNEL_TAIL_COUNT=5 # Public https base receiving agents can reach. Empty means no callbacks. # The process binds HTTP_HOST (localhost) and does not open this URL itself. CALLBACK_BASE_URL= CALLBACK_TTL_HOURS=24 CALLBACK_MAX_POSTS=5 CALLBACK_TEXT_LIMIT=8000 CALLBACK_RATE_LIMIT_MAX=20 CALLBACK_RATE_LIMIT_WINDOW_SECONDS=600 MAX_HOPS=3 BOT_ALLOWLIST= HTTP_HOST=127.0.0.1 HTTP_PORT=8787