Repository navigation
ZygnalBot V7.9.2 | Join Discord
·
7 commits
to main
since this release
Bot Verification System
Features
Bot Security
- Automatic detection and removal of non-whitelisted bots
- Persistent whitelist storage in JSON file (
data/whitelisted_bots.json) - Environment variable support for initial whitelist configuration (
WHITELISTED_BOTS) - Owner-only command to whitelist bots:
!whitelist_bot <bot_id> - Admin command to list all whitelisted bots:
!whitelisted - Per-guild log channel configuration with
!botlogscommand - Rate limiting for whitelist attempts to prevent abuse
Bot Join Notifications
- notification system when new bots join a server
- Configurable through environment variables (
MONITOR_BOT_JOINS,BOT_JOIN_LOG_CHANNEL) - Prioritizes private/admin channels for security notifications
- Provides detailed bot information (name, ID, creation date)
- Clear instructions for whitelisting legitimate bots
- Avoids duplicate notifications for already whitelisted bots
Changes
Sass Responses System
- Made sass responses opt-in through environment variable (
SassResponse=on/off) - Default behavior changed to disabled (opt-in rather than opt-out)
- Improved response handling for mentions and direct messages
- Added variety to sass response formatting and colors
Security
- Added validation for bot IDs using Discord's snowflake algorithm
- Improved error handling for invalid environment variable configurations
- Added permission checks for administrative commands
- Enhanced logging for security events with timestamps and unique identifiers
Technical
- Consolidated bot security features into a single
BotVerificationSystemclass - Improved channel selection algorithm for notifications
- Added fallback mechanisms when configured channels are unavailable
- Better error handling throughout the codebase
Configuration
Bot Verification
- Set
BOT_OWNER_IDin your environment to specify who can whitelist bots - Pre-configure whitelisted bots with
WHITELISTED_BOTS=id1,id2,id3in your environment - Use
!botlogs #channel-namein each server to set up logging
Bot Join Monitoring
- Enable/disable with
MONITOR_BOT_JOINS=True/False(enabled by default) - Set a specific notification channel with
BOT_JOIN_LOG_CHANNEL=channel_id
Sass Responses
- Enable/disable with
SassResponse=on/off(disabled by default)