Feature List (not a command list)
Looking for the Reaction Role setup menu?
Kitchen Sink is a decent bot with many useful features, such as
.
Adds the .
prefix for the server.
auto_dehoist
Automatically dehoists users with the following characters at the start of their display name: !"#$%&'()*+,-./
The characters detected can be changed on request.
Requirements: MANAGE_NICKNAMES
anti_self_star
Deletes star reactions people put on their own message. If the message has not been self-starred before, a message is sent confirming that the self-star was prevented. Stars from said message are also deleted.
You can also optionally choose a custom star emote (only one), and a list of whitelisted channels this will work in.
Requirements: MANAGE_MESSAGES
, custom_star_emote
(optional), star_channel_whitelist
(optional)
custom_staff_list
Allows the staff
command to be customised with specific roles and role groups.
If you just want the staff
command to list your mods, it should already work as-is.
Requirements: staff_list_name
, staff_role
or staff_lists
and a staff_argument_map
ok you have no idea what I'm talking about why did I bother mentioning any of this.
invite_police
Reports valid invites leading to another guild posted with info about the destination guild to mod_channel
.
Requirements: mod_channel
access
snipe
Allows staff to call snipe
to repost the last quick-delete/edit in the channel. A less forceful version of the above.
Requirements: VIEW_AUDIT_LOG
, staff_role
snipe_staff_unlock
Unlocks snipe
for all users.
Requirements: None
role_timegate
Automatically grant roles to members after they have been on the server for a specific amount of time.
The role will be applied when the member sends a message for the first time after exceeding the time threshold.
Requirements: MANAGE_ROLES
, role_timegates
(A list of seconds, role id tuples)
voice_channel
Detects when users join a voice channel, and edits their permissions to allow them into a specified text channel.
If a staff member joins or leaves the voice channel, the channel limit (if any) is offset to allow other users to join past the regular limit, effectively making staff members not take up a slot.
If the corresponding text channel is set to prevent everyone from viewing its contents by default, all contents of the channel are wiped when the voice channel is vacated.
An optional role can be specified to "block" specific users from getting added to the channel.
Requirements: MANAGE_CHANNELS
, MANAGE_MESSAGES
, voice_blacklist
if used, voice_to_text
, access to all channels involved
voice_channel_roles
If you distrust uptime like I do, permissions can be proxied off to roles instead of direct channel permissions, with a role per voice channel.
Requirements: voice_channel
enabled, MANAGE_ROLES
, voice_to_roles
voice_purge_override
This will override the channel wipe behavior and will instead only wipe the channel if the (text) channel ID is in the voice_channel_purge
list.
Requirements: voice_channel
enabled, voice_channel_purge
spoiler_ban
Deletes any messages sent (or edited) if it contains Discord's spoiler tags. Also deletes spoilered attachments. Only affects channels in the voice_channel_purge
list.
Users with manage messages are immune.
Requirements: MANAGE_MESSAGES
, spoiler_banned_channels
eye_tracking
Sends how many times the eyes emoji is used to eye_tracking_channel
with who used it how many times and where (ignoring eye_tracking_channel
).
Why does this even exist.
Requirements: eye_tracking_channel
and access to it.
disable_reaction_translate
Disables the reaction translate feature.
Requirements: None.
disable_snowball
Disables snowball.
Requirements: None.
disable_preview_message_links
Disables posting a preview of the linked message when a user links it.
cotd
Changes the color of a role named COTD
(or the custom_cotd_name
) into a different one daily (at midnight UTC). One can use the cotd
command to see the current color.
Requirements: MANAGE_ROLES
, custom_cotd_name
(if used)
gallery
Automatically deletes messages without attachments or URLs in specified channels. People with staff_role
are immune.
Requirements: gallery_channels
DAMMERUNG
You do not recognize the bodies in the water.
Requirements: ███████, █████████
server_log
Log member joins, leaves, and name changes.
Requirements: server_log_channel
Deprecated features
These features have been deprecated. Existing guilds can keep this feature active, but it will not be added to any new guilds.
raid_mode
raid_mode
Raid mode notifies mod_channel
if a user joins if any of the following are met:
Raid mode is enabled (Toggled with theraid
command, oron
andoff
as arguments to force a specific state)Account is younger than 2 daysUser was immediately rolestated with a roleban upon joining
The notification will include which invite the user joined with (An invite of Unknown
is likely the guild's Vanity URL).
The invites [amount=5] [offset=0]
command will post cached invite uses.
In addition, raid mode also notifies mod_channel
if a user is banned, with who did the ban and with what reason. All invites created by the banned user are revoked.
Requirements: MANAGE_GUILD
, VIEW_AUDIT_LOG
, mod_channel
access, staff_role
delete_police
delete_police
Reposts a message if it was deleted too quickly.
How fast this is is (optionally) defined in delete_interval
.
The message is not reposted if any if the following conditions are met:
The message was posted by a botAnother user deleted the messageThe messages were automatically deleted following a ban of the userThe messages were deleted in bulk by a bot
Invite links in the reposted message are redacted.
Channels can be added to a whitelist/blacklist with delete_police_whitelist
and delete_police_blacklist
.
Requirements: VIEW_AUDIT_LOG
, delete_interval
; delete_police_whitelist
; delete_police_blacklist
if definition is required.
edit_police
edit_police
Reposts a message if it was edited too heavily and quickly.
How fast this is is (optionally) defined in delete_interval
.
The message is reposted if all the following conditions are met:
The edited message is shorter than the unedited message (ignoring counting mentions, emotes and whitespaces)The edit has a Levenshtein distance of at least 10.The message was not sent by a bot
Channels can be added to a whitelist/blacklist with delete_police_whitelist
and delete_police_blacklist
.
Requirements: delete_interval
; delete_police_whitelist
; delete_police_blacklist
if definition is required.
ignore_invites
ignore_invites
This makes delete police ignore messages deleted with invites. This should be used if the server already has invite surveillance, such as Vortex.
Requirements: delete_police
enabled.
archive
archive
When enabled, if the archive
command is used in the roleban channel, the archive of the chat will be uploaded to Google Drive, with the link to the log posted to mod_channel
. If used outside roleban channel, the Google Drive archive folder will be searched given the argument as search parameters.
Kitchen Sink's email is everything-but-the@kitchen-sink-55555.iam.gserviceaccount.com
, to be added to the archive folder.
Requirements: mod_channel
access, staff_role
, archive_folder
, archive folder access
warning
warning
This feature allows staff to add warnings to users on a Google Drive Spreadsheet with the warnings
command.
warnings help
will display documentation for this command.
If warning_expiry
is defined, warnings will be marked as expired when its age exceeds the defined number of days.
A warning with its comment containing the infinity symbol (∞
) will be marked as permanent, while comments containing the empty set symbol (∅
) will be set as null.
Using this command without arguments will display the last 5 warnings if used by Staff, or the user's own warnings otherwise.
Requirements: staff_role
, warning_sheet
, warning_expiry
(if applicable, defined in number of days), warning sheet access
pingmod
pingmod
This feature enables the pingmod
command, which when used by a user, pings the first online mod in a predetermined priority
list, with any extra arguments specified.
If the mod responds by kicking, banning, muting or rolebanning a user within the cooldown period, a confirmation message will be posted to the channel.
Requirements: VIEW_AUDIT_LOG
, staff_role
, priority
, mute_roles
if any
This is my type of explanation.