Free AI-powered moderation for Discord. Detects nudity, gore, scams, and other violations in messages, media, and avatars. Fully configurable via slash commands.
NSFW Filtering Detects explicit or harmful content in uploaded media (images, GIFs, Lottie, APNG), Tenor GIFs, and user avatars. Categories include nudity, sexual content, graphic violence, gore, and self-harm-related material.
Strikes Escalating punishment system that applies timeouts, bans, or other actions based on user strike count. Fully configurable with custom durations, action cycling, and optional DM notifications.
AI Moderation
Uses OpenAI models to automatically moderate messages based on server rules. Supports autonomous moderation, contextual analysis, batch scanning, and rule-based enforcement. By default, AI moderation runs in report
mode and is triggered when users @mention the bot.
Scam Detection Detects scam and phishing messages using pattern matching, Google Safe Browsing, PhishTank, link unshortening.
Banned Words Blocks slurs or custom-defined banned words. Supports layered punishment and integrates with the strike system.
Logging Tracks major server events including joins, leaves, bans, deletions, edits, timeouts, and invite usage.
Custom Settings All moderation behavior is configurable through slash commands. Includes rule definitions, exclusion settings, thresholds, model selection, and more.
Private API Pool Allows users to contribute OpenAI API keys for increased capacity. Keys are encrypted and only used for moderation purposes.
Automatically escalates punishments:
π§ Fully customizable:
/strikes add_action
for custom escalations/settings strike-expiry
to auto-expire strikescycle-strike-actions
to reuse actions when neededdm-on-strike
to DM users when a strike is issuedstrike-channel
Uses OpenAI to moderate user behavior based on configured rules:
aimod-check-interval
) or mention (aimod-mode
)report
: users @mention the bot to trigger AI moderationautonomous-mod
)contextual-ai
)/ai_mod rules_set
aimod-detection-action
π§ Settings:
rules
: Defines the rule set used by AIaimod-model
: Choose OpenAI model (e.g. gpt-4o
)autonomous-mod
: Toggle for autonomous modeπ Commands:
/ai_mod toggle
, /ai_mod add_action
, /ai_mod view_actions
Detects NSFW in:
check-tenor-gifs
)check-pfp
)π¨ Categories:
nsfw-detection-categories
: e.g., sexual
, violence_graphic
threshold
: Confidence threshold (lower = stricter)π¨ Actions:
nsfw-detection-action
: Strike, kick, delete, etc.nsfw-pfp-action
: Kick, timeout, etc.nsfw-pfp-message
: Message shown to flagged usersunmute-on-safe-pfp
: Auto-unmute after avatar changeπ§ Commands:
/nsfw add_action
, /nsfw add_category
, /nsfw view_actions
, /nsfw set_threshold
, /nsfw view_threshold
Protect against scams and phishing:
scam-detection-action
, delete-scam-messages
π§ Toggles:
check-links
: Enable link checksexclude-scam-channels
: Channels to ignoreπ Commands:
/scam settings
, /scam view
, /scam list_patterns
, /scam list_urls
use-default-banned-words
) or custom wordsbanned-words-action
(delete, strike, etc.)monitor-channel
π Commands:
/bannedwords add
, /bannedwords remove
, /bannedwords add_action
, /bannedwords view_actions
, /bannedwords clear
monitor-channel
Command: /monitor set
Name | Type | Description |
---|---|---|
strike-channel |
TextChannel | Logs strikes |
nsfw-channel |
TextChannel | Logs NSFW previews |
monitor-channel |
TextChannel | Logs general events |
api-key |
str (encrypted) | OpenAI key for AI/NSFW moderation |
strike-expiry |
TimeString | Duration before strikes expire |
cycle-strike-actions |
bool | Loop fallback strike actions |
dm-on-strike |
bool | DM users when they receive a strike |
strike-actions |
dict | Action mapping per strike level |
check-pfp |
bool | Scan avatars for NSFW |
nsfw-detection-categories |
list[str] | Which NSFW categories to detect |
threshold |
float | Detection sensitivity |
nsfw-pfp-action |
list[str] | Action on NSFW avatars |
nsfw-pfp-message |
str | Message on NSFW avatar detection |
unmute-on-safe-pfp |
bool | Auto-unmute on safe avatar change |
check-tenor-gifs |
bool | Scan Tenor GIFs for NSFW |
use-default-banned-words |
bool | Use built-in slur list |
banned-words-action |
list[str] | Action on banned words |
exclude-channels |
list[TextChannel] | Channels excluded from checks |
delete-scam-messages |
bool | Auto-delete scam messages |
scam-detection-action |
list[str] | Actions for scam messages |
check-links |
bool | Enable URL safety checks |
exclude-scam-channels |
list[TextChannel] | Skip scam checks in these channels |
rules |
str | Server rules used by AI moderation |
aimod-detection-action |
list[str] | Action when AI flags content |
autonomous-mod |
bool | Enable autonomous AI moderation |
aimod-model |
str | Model used for AI mod |
aimod-check-interval |
TimeString | How often to run AI moderation |
contextual-ai |
bool | Enable context-aware moderation |
aimod-mode |
str | report or interval mode |
no-forward-from-role |
list[Role] | Roles that canβt forward messages |
/help
, /settings
, /api_pool
, /monitor
/strikes get
, /strikes remove
, /strikes clear
/strikes add_action
, /strikes remove_action
, /strikes view_actions
/nsfw add_action
, /nsfw remove_action
, /nsfw add_category
, /nsfw view_actions
/nsfw set_threshold
, /nsfw view_threshold
/ai_mod toggle
, /ai_mod rules_set
, /ai_mod view_actions
, /ai_mod add_action
, /ai_mod remove_action
/bannedwords add
, /bannedwords remove
, /bannedwords defaults
, /bannedwords add_action
, /bannedwords view_actions
/scam settings
, /scam check_links
, /scam add_message
, /scam add_url
, /scam list_patterns
, /scam list_urls
Short description: Free AI-powered moderation for Discord. Detects nudity, gore, scams, and other violations in messages, media, and avatars.
Prefix: /
Servers: 0
Shards: Unknown
Library: discord.py