Skip to content

Repository files navigation

Honey Pot Emoji
Honeypot Discord Bot

A Discord bot to automatically catch and remove spam bots by monitoring a dedicated "#honeypot" channel.

Usage

  1. Invite the bot to your server with appropriate permissions (Ban Members, Manage Channels, etc).
  2. The bot will create a #honeypot channel on join, or you can set it up with /honeypot.
  3. Configure the admin log channel and action (kick or ban) using the /honeypot command.
  4. Ensure the bot’s highest role is above any self-assignable (color/ping) roles.
  5. Any user posting in the honeypot channel will be banned or removed, and the action will be logged.

Note: Kick is default and is a softban (bans & unbans) so Discord deletes their immediate messages

Extra info

Why use a Honeypot Bot?

Spammers and compromised accounts often target all channels at once, especially from accounts already inside your server. This bot makes it easy to automatically spot and remove these accounts. When someone posts in the honeypot channel, the bot acts immediately - removing them and deleting their messages before they can spread spam further. This saves you and your moderators time, reduces spam exposure to your community, and keeps your server running smoothly.

"The bot that shouldn't need to exist" - someone, probably

Experiments

Options you can enable to avoid the bots better

  1. 💡 Forward Message: Send the incriminating message to the log channel.
  2. Reinvite: In DM message include a link to be able to rejoin
  3. No Warning Msg: Don’t include a warning message in the #honeypot channel
  4. No DM: Don’t DM the user that they triggered the honeypot
  5. Channel Warmer: Keep the honeypot channel active (every day)
  6. Random Channel Name: Randomize the honeypot channel name (every day)
  7. Random Channel Name (chaos): Randomize the honeypot channel name with random characters (every day)
  8. ⚙️ Recreate Channel: Remake the honeypot channel (every day)
  9. Timeout First: Before banning/kicking, timeout user for 1hr (will persist when they rejoin)
  10. 💡 Only More Recent Delete: Instead of deleting last 1hr, only do 15min
  11. 💡 Many Honeypots: Create multiple honeypot channels to increase chances of usage
  12. ⚙️ Ensure Message Deletion: Search & delete leftover messages from moderated users 2 min after moderation

Legend: 💡 recommended features · ⚙️ advanced, only use if you're seeing issues (may need 1+ bans to see)

Tips to Maximize Honeypot Bot’s Effectiveness

For best results, position your #honeypot channel near the top of your server list - recent spam bots often target the first few channels available. Consider renaming the trap channel to something less predictable, like #pls-dont-chat-here, to avoid automated bots that blacklist "honeypot" by name. Always ensure the bot’s role is ranked above standard member roles; this ensures it has the authority to remove problematic accounts. Explore the experimental features for additional defenses against evolving bot tactics, and enjoy a cleaner, safer community - so you can say goodbye to unwanted bots! 🎉

Learn more...

Getting Started (dev)

  • Bun (v1.3+)
  • Discord bot token (set as DISCORD_TOKEN environment variable)
$ bun install
$ bun start # or `bun dev`

Run the bot yourself

  • Railway Template
  • bun run start
  • docker compose up -d (using ghcr.io/riskymh/honeypot)

Or you can just use my hosted version by inviting it to your server: Invite Link


© RiskyMH 2026

About

🍯 A Discord bot to automatically catch and ban spam bots by monitoring a dedicated "honeypot" channel.

Topics

Resources

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

Used by

Contributors

Languages