A feature-rich Discord bot that combines AI chat capabilities with music playback features. Perfect for enhancing your Discord server with intelligent conversations, entertainment, and utility functions.
- ๐ค AI Chat: Engage in natural conversations with context awareness
- ๐ต Music Player: High-quality music playback with queue management
- ๐ฎ Fun Games: Interactive games like 8ball, rock-paper-scissors, and more
- ๐ก๏ธ Auto-Moderation: Keep your server safe with customizable moderation tools
- ๐ Giveaways: Create and manage giveaways with ease
- ๐ Birthday System: Never miss a member's birthday celebration
- ๐ค Text-to-Speech: Convert text messages to voice
- Python 3.8 or higher
- Discord Bot Token
- HuggingFace Access Token
- FFmpeg (for music features)
- Git
git clone https://github.com/RicoCTY/Python-DiscordBot.git
cd Python-DiscordBot
# Create virtual environment
python -m venv venv
# Activate virtual environment
# On Windows:
venv\Scripts\activate
# On macOS/Linux:
source venv/bin/activate
pip install -r requirements.txt
Create a .env
file in the root directory with the following variables:
# Discord Bot Configuration
DISCORD_TOKEN=your_bot_token_here
# AI Model Configuration
HUGGINGFACE_TOKEN=your_huggingFace_token
python main.py
python3 main.py
Python-DiscordBot/
โโโ cogs/ # Command modules
โ โโโ fun.py # Fun commands
โ โโโ music.py # Music features
โ โโโ tools.py # Utility commands
โ โโโ ...
โโโ config/ # Configuration files
โโโ utils/ # Helper functions
โโโ data/ # Data storage
โโโ main.py # Bot entry point
Command | Description | Usage |
---|---|---|
/8ball |
Ask the magic 8-ball a question | /8ball Will I win the lottery? |
/coinflip |
Flip a coin | /coinflip |
/roll |
Roll a dice | /roll 20 |
/rps |
Play rock-paper-scissors | /rps rock |
Command | Description | Usage |
---|---|---|
/hello |
Get a friendly greeting | /hello |
/ping |
Check the bot's latency | /ping |
/poll |
Create a poll with up to 10 options | /poll "Best season?" "Summer" "Winter" "Spring" "Fall" |
/giveaway |
Create a giveaway | /giveaway "PS5" 60 1 |
/set_birthday |
Set your birthday | /set_birthday 12 25 |
/view_birthdays |
View all registered birthdays | /view_birthdays |
/tts |
Convert text to speech | /tts Hello everyone! |
/remind |
Set a reminder | /remind "Submit report" 2h |
/reminders |
View your active reminders | /reminders |
Command | Description | Usage |
---|---|---|
/play |
Play a song | /play https://youtube.com/... |
/skip |
Skip the current song | /skip |
/stop |
Stop playback and clear queue | /stop |
/pause |
Pause the current song | /pause |
/volume |
Adjust playback volume | /volume 50 |
/queue |
View the current music queue | /queue |
Command | Description | Usage |
---|---|---|
/userinfo |
Get detailed user information | /userinfo @user |
/avatar |
Get a user's avatar | /avatar @user |
Command | Description | Usage |
---|---|---|
/shutdown |
Shutdown the bot (owner only) | /shutdown |
/setup_welcome |
Set the welcome channel | /setup_welcome #welcome-channel |
/setup_goodbye |
Set the goodbye channel | /setup_goodbye #goodbye-channel |
/role_menu |
Create a reaction role menu | /role_menu "Game Roles" "Select your games" |
/automod_setup |
Configure AutoMod settings | /automod_setup |
/add_banned_word |
Add a banned word | /add_banned_word example |
/remove_banned_word |
Remove a banned word | /remove_banned_word example |
/list_banned_words |
View all banned words | /list_banned_words |
/download_backup |
Download server backup | /download_backup |
/create_backup |
Create server backup | /create_backup |
/edit_menu_description |
Edit role menu description | /edit_menu_description "New description" |
/edit_menu_title |
Edit role menu title | /edit_menu_title "New title" |
/view_backup |
View available backups | /view_backup |
/aiChat |
Chat with AI | /aiChat What's the meaning of life? |
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create your feature branch (
git checkout -b feature/NewFeature
) - Commit your changes (
git commit -m 'Add some New Feature'
) - Push to the branch (
git push origin feature/NewFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter any issues or have questions, please:
- Check the Issues page
- Create a new issue if your problem isn't already listed
- discord.py - The Discord API wrapper
- yt-dlp - YouTube downloader
- All contributors and users of this bot