A modern, user-friendly Discord DM (Direct Message) cleaning tool with a beautiful GUI interface. Delete your Discord messages efficiently and safely.
- ๐จ Modern GUI Interface - Beautiful, Discord-themed user interface built with PyQt6
- ๐ Search Functionality - Quickly find specific users in your DM list
- ๐๏ธ Selective Deletion - Delete messages from specific users or all DMs at once
- ๐ Progress Tracking - Real-time progress bar and detailed logs
- ๐ Auto Token Detection - Automatically detects and uses your Discord token
- ๐ฎ Discord Rich Presence - Shows your activity on Discord
- โก Fast & Efficient - Optimized deletion process with rate limit handling
- Python 3.8 or higher
- Windows OS (uses Windows-specific token extraction)
- Discord desktop application installed
- Active Discord account
-
Clone the repository:
git clone https://github.com/efekrbas/discord-dm-cleaner.git cd discord-dm-cleaner -
Install dependencies:
pip install -r requirements.txt
-
Run the application:
python main.pyw
- Launch the application - Run
main.pywto start DM Cleaner - Login - The application will automatically detect your Discord token, or you can manually enter it
- Select DMs - Browse your DM list and select the conversation you want to clean
- Delete Messages - Choose to delete messages from a specific user or all DMs
- Use the search box at the top of the DM list to quickly find specific users
- The list filters in real-time as you type
- Select a user from the DM list
- Click the "Delete" button
- Confirm the action
- Watch the progress bar and logs for real-time updates
- Click the "Delete All DMs" button
- Confirm the action (this will delete messages from ALL your DMs)
- Monitor the progress across all conversations
- Click the "Stop" button at any time to halt the deletion process
- The application will safely stop after completing the current message
- Click the "Refresh" button to reload your DM list
- Useful if you've received new messages or want to update the list
The application includes Discord Rich Presence support. To customize it:
- Create a Discord application at Discord Developer Portal
- Get your Application ID
- Update the
client_idinmain.pyw(line 24):def __init__(self, client_id="YOUR_APPLICATION_ID"):
The application automatically detects Discord tokens from:
- Discord (stable)
- Discord Canary
- Discord PTB
If automatic detection fails, you can manually enter your token in the login window.
- Local Only - All operations run locally on your computer
- No Data Collection - The application doesn't collect or transmit any data
- Token Security - Your token is only used for API calls and never stored
- Message Safety - Only your own messages are deleted, never others' messages
- Irreversible Action - Deleted messages cannot be recovered
- Rate Limits - The application respects Discord's rate limits automatically
- System Messages - System messages (calls, polls, etc.) are automatically skipped
- Token Safety - Never share your Discord token with anyone
- Backup Recommended - Consider backing up important messages before bulk deletion
- Make sure Discord desktop app is installed and you're logged in
- Try restarting Discord
- Manually enter your token in the login window
- The application handles rate limits automatically
- If you see rate limit messages, wait for the automatic retry
- Consider deleting in smaller batches
- Check Python version:
python --version(should be 3.8+) - Verify all dependencies are installed:
pip list - Check for error messages in the console
- Ensure PyQt6 is installed:
pip install PyQt6 - Try running with administrator privileges
- Check Windows display settings
To create a standalone executable:
pyinstaller --onefile --windowed --icon=nike.ico main.pywOr use the provided build scripts:
build_simple.bat- Simple buildbuild_advanced.py- Advanced build with options
This project is licensed under the MIT License - see the LICENSE file for details.
Developed by: Efe Kฤฑrbaล
Copyright ยฉ 2025
Contributions are welcome! Please feel free to submit a Pull Request.
For issues, questions, or suggestions:
- Open an issue on GitHub
- Check existing issues for solutions
- Discord API for providing the platform
- PyQt6 for the GUI framework
- All contributors and users of this tool
Disclaimer: This tool is for personal use only. Use responsibly and in accordance with Discord's Terms of Service. The developers are not responsible for any misuse of this application.


