Commands

Command directory

1060 commands across 79 categories. This list is generated directly from the bot's code, so it only shows commands that actually exist.

1060 shown

Achievements

Milestones members earn automatically or by staff award

  • /achieve list

    List every achievement available here

  • /achieve mine

    Show the achievements a member has earned

    [user:user]

  • /achieve grant

    Award an achievement

    <user:user> <key:str>

    Requires ManageGuild

  • /achieve revoke

    Remove an achievement

    <user:user> <key:str>

    Requires ManageGuild

  • /achieve create

    Create a custom achievement for this server

    <key:str> <name:str> <description:text>

    Requires ManageGuild

  • /achieve remove

    Delete a custom achievement

    <key:str>

    Requires ManageGuild

  • /achieve top

    Show who has earned the most

Advanced moderation

Mass actions with previews, quarantine, watchlists and cleanup of bad nicknames

  • /advmod massban

    Ban many people by ID or filter, with a preview first. Large runs show progress

    [users:str] [confirm:bool] [joined:dur] [created:dur] [name:str] [has_role:role] [no_roles:bool] [no_avatar:bool] [bots:bool] [duration:dur] [days:int] [dm:send|skip] [reason:text]

    Requires BanMembers, ManageGuild

  • /advmod masskick

    Kick many people by ID or filter, with a preview first

    [users:str] [confirm:bool] [joined:dur] [created:dur] [name:str] [has_role:role] [no_roles:bool] [no_avatar:bool] [bots:bool] [dm:send|skip] [reason:text]

    Requires KickMembers, ManageGuild

  • /advmod masstimeout

    Time out many people by ID or filter, with a preview first

    <duration:dur> [users:str] [confirm:bool] [joined:dur] [created:dur] [name:str] [has_role:role] [no_roles:bool] [no_avatar:bool] [bots:bool] [dm:send|skip] [reason:text]

    Requires ModerateMembers, ManageGuild

  • /advmod massrole

    Give a role to many people, or take it away, by ID or filter

    <action:add|remove> <role:role> [users:str] [confirm:bool] [joined:dur] [created:dur] [name:str] [has_role:role] [no_roles:bool] [no_avatar:bool] [bots:bool] [reason:text]

    Requires ManageRoles, ManageGuild

  • /advmod mass-status

    Show recent mass actions, or the progress of one

    [id:int]

    Requires ModerateMembers

  • /advmod mass-cancel

    Stop a mass action that is still running

    <id:int>

    Requires ModerateMembers

  • /advmod quarantine

    Strip a member's roles and give only a holding role, optionally for a set time

    <member:member> [role:role] [duration:dur] [dm:send|skip] [reason:text]

    Requires ModerateMembers, ManageRoles

  • /advmod release

    End a quarantine and give the member their old roles back

    <member:member>

    Requires ModerateMembers, ManageRoles

  • /advmod quarantined

    List quarantined members

    [page:int]

    Requires ModerateMembers

  • /advmod watch

    Add a user to the watchlist. Staff are told when they join or talk

    <user:user> [expires:dur] [reason:text]

    Requires ModerateMembers

  • /advmod unwatch

    Remove a user from the watchlist

    <user:user>

    Requires ModerateMembers

  • /advmod watchlist

    Show the watchlist

    [page:int]

    Requires ModerateMembers

  • /advmod decancer

    Replace a member's unreadable nickname with plain text

    <member:member>

    Requires ManageNicknames

  • /advmod dehoist

    Fix nicknames that use symbols to jump to the top of the member list

    [limit:int]

    Requires ManageNicknames

  • /advmod name-policy

    Clean names automatically when people join or change them

    [dehoist:bool] [decancer:bool]

    Requires ManageGuild

  • /advmod purge-links

    Delete recent messages containing links

    [amount:int] [channel:channel]

    Requires ManageMessages

  • /advmod purge-files

    Delete recent messages with attachments

    [amount:int] [channel:channel]

    Requires ManageMessages

  • /advmod purge-invites

    Delete recent messages containing Discord invites

    [amount:int] [channel:channel]

    Requires ManageMessages

  • /advmod purge-after

    Delete messages sent after a given message

    <message_id:id> [amount:int] [channel:channel]

    Requires ManageMessages

  • /advmod voice-kick

    Disconnect a member from voice

    <member:member> [reason:text]

    Requires MoveMembers

  • /advmod voice-mute

    Server-mute a member in voice, optionally for a set time

    <member:member> [muted:bool] [duration:dur] [reason:text]

    Requires MuteMembers

  • /advmod voice-move

    Move a member to another voice channel

    <member:member> <channel:channel>

    Requires MoveMembers

Away status

Tell people you are away, and see who mentioned you while you were gone

  • /afk set

    Mark yourself as away. Mentions are saved for when you are back

    [nickname:bool] [reason:text]

  • /afk off

    Turn your away status off

  • /afk pings

    See who has mentioned you while you are away

  • /afk list

    See who is away

  • /afk check

    Check whether someone is away

    <user:user>

  • /afk clear

    Remove someone's away status, for staff

    <user:user>

    Requires ManageMessages

Assisted review

Contextual message review and its queue. Runs only when rules flag something

  • /ai status

    Show whether assisted review is available, and what it costs so far

  • /ai toggle

    Turn assisted features on or off in this server

    <enabled:bool>

    Requires ManageGuild

  • /ai moderation

    Queue messages flagged by rules for a contextual review. Flagged text goes to the provider

    <enabled:bool> [action:alert|delete]

    Requires Administrator

  • /ai image-text

    Read text in uploaded images and check it. Images are processed on this machine

    <enabled:bool>

    Requires Administrator

  • /ai threshold

    Set the confidence a flag needs before it reaches the queue

    <percent:int>

    Requires ManageGuild

  • /ai limit

    Set how many provider requests this server may make per day

    <requests:int>

    Requires Administrator

  • /ai feature

    Turn one assisted feature on or off

    <feature:tickets|incidents|handover|support|analysis|messagecheck> <enabled:bool>

    Requires ManageGuild

  • /ai security-analysis

    Read a period's security activity: rule findings, plus a suggested reading when there is something to read

    [within:dur]

    Requires ManageGuild

  • /ai check-message

    Check one message: rules first, then a review if rules flag it or you ask

    <message_id:id> [channel:channel] [force:bool]

    Requires ModerateMembers

  • /ai usage

    Show provider requests and tokens used by this server

    [days:int]

    Requires ManageGuild

  • /ai review

    Ask for a second opinion on some text. The decision stays with you

    <text:text>

    Requires ModerateMembers

  • /ai queue

    List messages waiting for a human decision

    [page:int]

    Requires ModerateMembers

  • /ai inspect

    Read one queued message and why it was flagged

    <id:int>

    Requires ModerateMembers

  • /ai uphold

    Agree with a flag and record a warning against the author

    <id:int> [reason:text]

    Requires ModerateMembers

  • /ai dismiss

    Close a flag with no action

    <id:int>

    Requires ModerateMembers

  • /ai false-positive

    Report a flag as wrong, so it counts against the accuracy figure

    <id:int>

    Requires ModerateMembers

  • /ai accuracy

    Show how often flags were upheld by staff

    Requires ModerateMembers

API keys

Create keys for the developer API. A key is shown only once

  • /apikey create

    Create an API key for this server

    <name:str> [scope:read|write]

    Requires Administrator

  • /apikey list

    List this server's API keys

    [page:int]

    Requires Administrator

  • /apikey revoke

    Revoke an API key immediately

    <id:str>

    Requires Administrator

Appeals

Ask staff to review a moderation action, and let staff decide on appeals

  • /appeal submit

    Send an appeal to a server's staff. Works from DMs, so banned users can use it

    <server_id:id> [case_no:int] <message:text>

  • /appeal status

    Check the status of your appeals in a server

    <server_id:id>

  • /appeal view

    Read an appeal with the case and the person's record, with buttons to decide

    <id:int>

    Requires ModerateMembers

  • /appeal decide

    Approve or deny an appeal. Approving reverses the case and tells them

    <id:int> <outcome:approve|deny> [reverse:bool] [note:text]

    Requires ModerateMembers

  • /appeal config

    Choose where appeals go, the wait after a denial and what approving does

    [channel:channel] [enabled:bool] [cooldown_days:int] [require_case:bool] [notify:bool] [reverse:bool]

    Requires ManageGuild

  • /appeal block

    Stop someone sending appeals, for people who abuse them

    <user:user> [remove:bool]

    Requires ModerateMembers

Applications

Let people apply for staff or other roles, and review what comes in

  • /apply channel

    Choose where new applications are announced

    <channel:channel> [reviewer_role:role]

    Requires ManageGuild

  • /apply form

    Create a form. Separate questions with |. Start with ? if optional

    <name:str> <questions:text>

    Requires ManageGuild

  • /apply edit

    Set a form's review channel, roles, rules and messages

    <name:str> [title:str] [channel:channel] [reviewer_role:role] [reward_role:role] [remove_role:role] [required_role:role] [ping_role:role] [clear_rewards:bool] [cooldown:dur] [member_days:int] [account_days:int] [max_entries:int] [closes:str] [interview_panel:str] [accept_message:str] [deny_message:str]

    Requires ManageGuild

  • /apply question

    Add or remove one question on a form

    <name:str> <action:add|remove|clear> [label:str] [short:bool] [optional:bool] [position:int]

    Requires ManageGuild

  • /apply forms

    List application forms and their questions

  • /apply close-form

    Stop accepting a form

    <name:str>

    Requires ManageGuild

  • /apply open-form

    Start accepting a form again

    <name:str>

    Requires ManageGuild

  • /apply delete-form

    Delete a form. Submitted applications are kept

    <name:str>

    Requires ManageGuild

  • /apply panel

    Post buttons or a menu for applying

    <form:str> [channel:channel] [also:str] [title:str] [style:buttons|select]

    Requires ManageGuild

  • /apply start

    Fill in an application form

    <form:str>

  • /apply submit

    Apply as text. Separate your answers with |, in question order

    <form:str> <answers:text>

  • /apply list

    List applications

    [status:pending|hold|approved|denied|withdrawn] [page:int] [form:str] [user:user]

  • /apply view

    Read one application

    <id:int>

  • /apply approve

    Approve an application, giving its reward roles

    <id:int> [role:role] [note:text]

  • /apply deny

    Deny an application

    <id:int> [note:text]

  • /apply hold

    Put an application on hold, or back in the queue

    <id:int>

  • /apply interview

    Open a private ticket with an applicant

    <id:int>

  • /apply withdraw

    Take back an application you submitted

    <id:int>

  • /apply stats

    Show application numbers and review times per form

    [days:int]

  • /apply mine

    Check your applications

Approvals

Have staff propose sensitive actions for someone else to approve

  • /approval create

    Propose a command for someone else to approve

    <command:str> [args:text]

  • /approval approve

    Approve a proposal. It runs once enough people agree

    <id:int> [note:text]

  • /approval reject

    Reject a proposal

    <id:int> [note:text]

  • /approval cancel

    Withdraw your own proposal

    <id:int>

  • /approval pending

    List proposals waiting for a decision

    [page:int]

  • /approval history

    List past proposals and who decided them

    [page:int]

    Requires ManageGuild

  • /approval rule

    Require approval for a command or a whole category, such as mod.ban or config.*

    <pattern:str> <required:int> [approver_role:role]

    Requires Administrator

  • /approval unrule

    Stop requiring approval for a command or category

    <pattern:str>

    Requires Administrator

  • /approval rules

    List approval rules

    Requires ManageGuild

  • /approval settings

    Choose where proposals go, when to remind and when to escalate

    [channel:channel] [remind_hours:int] [escalate_hours:int] [escalate_role:role]

    Requires Administrator

Archives

Search history your server chose to keep, and save channel snapshots

  • /archive retention

    Turn message archiving on or off and set how long it is kept

    <enabled:bool> [days:int] [store_text:bool]

    Requires Administrator

  • /archive search

    Search kept messages, deleted and edited records, and attachments

    [query:str] [author:user] [channel:channel] [within:dur] [before:dur] [kind:all|deleted|edited|attachments|links] [page:int]

    Requires ManageMessages

  • /archive user

    Show kept messages from one person

    <user:user> [kind:all|deleted|edited|attachments|links] [page:int]

    Requires ManageMessages

  • /archive channel

    Show kept messages from one channel

    <channel:channel> [kind:all|deleted|edited|attachments|links] [page:int]

    Requires ManageMessages

  • /archive context

    Read the messages kept around one message, with its edit history

    <message_id:id> [around:int]

    Requires ManageMessages

  • /archive stats

    Show how much is kept, from whom and where

    Requires ManageMessages

  • /archive ignore

    Stop keeping messages from a channel, or start again. Can erase what is kept

    <channel:channel> <ignored:bool> [erase:bool]

    Requires Administrator

  • /archive records

    Search moderation cases and security incidents

    <query:str> [page:int]

    Requires ManageMessages

  • /archive export

    Download kept messages as JSON, CSV or text. Access is logged

    [query:str] [author:user] [channel:channel] [within:dur] [kind:all|deleted|edited|attachments|links] [format:json|csv|txt]

    Requires ManageGuild

  • /archive erase

    Erase kept messages from one person, for example after a data request

    <user:user> <confirm:bool>

    Requires Administrator

  • /archive snapshot channel

    Save a channel's most recent messages now

    [channel:channel] [limit:int] [name:text]

    Requires ManageMessages

  • /archive snapshot pins

    Save a channel's pinned messages

    [channel:channel]

    Requires ManageMessages

  • /archive snapshot list

    List snapshots

    [page:int]

    Requires ManageMessages

  • /archive snapshot view

    Read part of a snapshot

    <id:int> [page:int]

    Requires ManageMessages

  • /archive snapshot search

    Search inside a snapshot

    <id:int> <query:text>

    Requires ManageMessages

  • /archive snapshot export

    Download a snapshot as a JSON file

    <id:int>

    Requires ManageMessages

  • /archive snapshot delete

    Forget a snapshot

    <id:int>

    Requires ManageGuild

Automations

Automations and an auto-mod rule engine: when something happens, do something

  • /auto create

    Create an automation, for example: on message containing "hello", send a reply

    <name:str> <trigger:message|join|leave|reaction|message-edit|message-delete|voice-join|voice-leave|role-add|role-remove|boost|case|schedule> <action:send|dm|add-role|remove-role|delete|react|reply|pin|nick|log|timeout|kick|ban|warn|wait> [role:role] [channel:channel] [emoji:str] [duration:dur] [delay:dur] [contains:str] [regex:str] [in_channel:channel] [on_emoji:str] [has_role:role] [lacks_role:role] [cooldown:dur] [chance:int] [every:dur] [text:text]

    Requires ManageGuild

  • /auto add-action

    Add another action to an automation. Use delay or the wait action for pauses

    <name:str> <action:send|dm|add-role|remove-role|delete|react|reply|pin|nick|log|timeout|kick|ban|warn|wait> [role:role] [channel:channel] [emoji:str] [duration:dur] [delay:dur] [text:text]

    Requires ManageGuild

  • /auto remove-action

    Remove a step from an automation, by its number in the info command

    <name:str> <position:int>

    Requires ManageGuild

  • /auto conditions

    Change when an automation runs: text, roles, channels, account age and more

    <name:str> [contains:str] [not_contains:str] [starts_with:str] [regex:str] [in_channel:channel] [not_in_channel:channel] [on_emoji:str] [has_role:role] [lacks_role:role] [changed_role:role] [min_account_age:dur] [max_account_age:dur] [min_member_age:dur] [has_attachment:bool] [has_link:bool] [case_action:str] [chance:int] [cooldown:dur] [match:all|any] [clear:bool]

    Requires ManageGuild

  • /auto list

    List automations

    [page:int]

    Requires ManageGuild

  • /auto info

    Show what an automation does

    <name:str>

    Requires ManageGuild

  • /auto enable

    Turn an automation on

    <name:str>

    Requires ManageGuild

  • /auto disable

    Turn an automation off

    <name:str>

    Requires ManageGuild

  • /auto delete

    Delete an automation

    <name:str>

    Requires ManageGuild

  • /auto test

    See whether a message would trigger an automation, and which conditions pass, without running it

    <name:str> <text:text>

    Requires ManageGuild

  • /auto run

    Run an automation now, for real, with you as the member

    <name:str> <confirm:bool>

    Requires ManageGuild

  • /auto runs

    Show an automation's run history, with each step's result

    [name:str] [failed:bool] [page:int]

    Requires ManageGuild

  • /auto options

    List available triggers and actions

  • /auto rule add

    Add an auto-mod rule. Actions look like: delete, timeout 10m, warn 2, alert

    <name:str> <kind:words|wildcard|regex|caps|emoji|zalgo|duplicate|attachments|links|invites|mentions|lines|spoilers> [actions:str] [threshold:int] [min_length:int] [window:dur] [allow:str] [block:str] [test:bool] [patterns:text]

    Requires ManageGuild

  • /auto rule edit

    Change a rule. add and remove edit its word list without replacing it

    <name:str> [new_name:str] [actions:str] [threshold:int] [min_length:int] [window:dur] [allow:str] [block:str] [test:bool] [add:str] [remove:str] [patterns:text]

    Requires ManageGuild

  • /auto rule list

    List auto-mod rules

    [page:int]

    Requires ManageGuild

  • /auto rule info

    Show everything about a rule

    <name:str>

    Requires ManageGuild

  • /auto rule toggle

    Turn a rule on or off

    <name:str> <enabled:bool>

    Requires ManageGuild

  • /auto rule delete

    Delete a rule and its hit history

    <name:str> <confirm:bool>

    Requires ManageGuild

  • /auto rule test

    Check text against your rules without doing anything

    [name:str] <text:text>

    Requires ManageGuild

  • /auto rule scope

    Exempt channels or roles from a rule, or limit it to only them

    <name:str> <mode:exempt|only> [channel:channel] [role:role] [remove:bool]

    Requires ManageGuild

  • /auto rule ladder

    Punish repeat offenders harder: after this many hits in this time, do this

    <name:str> [hits:int] [window:dur] [actions:str] [clear:bool]

    Requires ManageGuild

  • /auto rule hits

    Show what auto-mod caught, by rule or user

    [name:str] [user:user] [test:bool] [page:int]

    Requires ModerateMembers

  • /auto rule config

    Set server-wide auto-mod options: test mode, exemptions and the log channel

    [enabled:bool] [test_mode:bool] [log_channel:channel] [exempt_staff:bool] [scan_edits:bool] [notice_seconds:int] [exempt_channel:channel] [exempt_role:role] [remove:bool]

    Requires ManageGuild

  • /auto rule starter

    Add a sensible set of rules in test mode, so you can see what they catch first

    Requires ManageGuild

  • /auto rule native

    Copy a word rule into Discord's own AutoMod, which blocks messages before they appear

    <name:str>

    Requires ManageGuild

Backups

Back up this server's Clover data and structure, and restore it

  • /backup create

    Back up settings, records and server structure now

    [note:text]

    Requires ManageGuild

  • /backup list

    List backups

    [page:int]

    Requires ManageGuild

  • /backup info

    Show details of one backup and its contents

    <id:str>

    Requires ManageGuild

  • /backup verify

    Check a backup's checksum and contents

    <id:str>

    Requires ManageGuild

  • /backup restore

    Replace this server's Clover data with a backup. A safety backup is taken first

    <id:str> <confirm:bool>

    Requires Administrator

  • /backup delete

    Permanently delete a backup

    <id:str> <confirm:bool>

    Requires ManageGuild

  • /backup schedule

    Back up automatically on a schedule

    <every_hours:int> [retain:int]

    Requires ManageGuild

  • /backup unschedule

    Stop scheduled backups

    Requires ManageGuild

  • /backup schedule-info

    Show the backup schedule

    Requires ManageGuild

Birthdays

Remember birthdays, announce them and give a role for the day. Years are never stored

  • /birthday set

    Save your birthday. Only the month and day

    <month:int> <day:int>

  • /birthday set-for

    Save a birthday for someone else

    <user:user> <month:int> <day:int>

    Requires ManageGuild

  • /birthday clear

    Delete your birthday

  • /birthday check

    See someone's birthday

    [user:user]

  • /birthday upcoming

    List upcoming birthdays

    [page:int]

  • /birthday today

    See whose birthday it is today

  • /birthday month

    List birthdays in a month

    <month:int>

  • /birthday channel

    Choose where birthdays are announced

    <channel:channel>

    Requires ManageGuild

  • /birthday role

    Give a role on someone's birthday and take it back the next day

    [role:role] [clear:bool]

    Requires ManageRoles

  • /birthday message

    Set the announcement. Use {users} for the people and {count}

    [text:text]

    Requires ManageGuild

  • /birthday count

    Show how many birthdays are saved

Bot registry

Register your own bots, keep tokens encrypted and track deployments. Clover never runs your code

  • /bots register

    Register a bot. You get a heartbeat key, shown once

    <name:str> [app_id:id] [description:text]

  • /bots list

    List your bots

  • /bots info

    Show a bot's details

    <id:str>

  • /bots configure

    Change a bot's name or description

    <id:str> [name:str] [description:text]

  • /bots set-token

    Store a bot token, encrypted. Slash command only

    <id:str> <token:str>

  • /bots verify-token

    Ask Discord whether the stored token works

    <id:str>

  • /bots new-heartbeat-key

    Replace a bot's heartbeat key

    <id:str>

  • /bots status

    Record a deployment step: configured, deploying, online, stopped or failed

    <id:str> <status:registered|configured|deploying|online|offline|stopped|failed> [note:text]

  • /bots deployments

    Show deployment history

    <id:str>

  • /bots logs

    Show a bot's recent logs

    <id:str>

  • /bots backup

    Back up a bot's config, logs and file list. The token is never included

    <id:str>

  • /bots storage

    Show a bot's storage allocation and usage

    <id:str>

  • /bots delete

    Delete a registered bot and destroy its stored token

    <id:str> <confirm:bool>

Custom commands

Make your own text commands for this server

  • /cc add

    Create a custom command. Text can use {user} {username} {server} {channel} {members}

    <name:str> <response:text>

    Requires ManageGuild

  • /cc edit

    Change a custom command's response

    <name:str> <response:text>

    Requires ManageGuild

  • /cc remove

    Delete a custom command

    <name:str>

    Requires ManageGuild

  • /cc list

    List custom commands

    [page:int]

  • /cc info

    Show a custom command's details

    <name:str>

  • /cc run

    Run a custom command

    <name:str>

  • /cc top

    Show the most-used custom commands

Channel management

Create, organise and control access to channels

  • /channel info

    Show details about a channel

    [channel:channel]

  • /channel list

    List every channel

    [page:int]

  • /channel create

    Create a channel

    <name:str> [kind:text|voice|announcement|forum|stage] [category:channel] [topic:text]

    Requires ManageChannels

  • /channel category

    Create a channel category

    <name:text>

    Requires ManageChannels

  • /channel delete

    Delete a channel. Needs confirmation

    <channel:channel> <confirm:bool>

    Requires ManageChannels

  • /channel rename

    Rename a channel

    <name:str> [channel:channel]

    Requires ManageChannels

  • /channel topic

    Set a channel's topic

    <channel:channel> <topic:text>

    Requires ManageChannels

  • /channel nsfw

    Mark a channel as age-restricted or not

    <enabled:bool> [channel:channel]

    Requires ManageChannels

  • /channel clone

    Copy a channel's settings to a new channel. Messages are not copied

    [channel:channel]

    Requires ManageChannels

  • /channel move

    Move a channel into a category

    <channel:channel> <category:channel>

    Requires ManageChannels

  • /channel perms

    Show permission overrides on a channel

    [channel:channel]

    Requires ManageChannels

  • /channel allow

    Allow a role to do something in a channel

    <role:role> <permission:str> [channel:channel]

    Requires ManageChannels

  • /channel deny

    Stop a role from doing something in a channel

    <role:role> <permission:str> [channel:channel]

    Requires ManageChannels

  • /channel clear-perm

    Remove a role's overrides from a channel

    <role:role> [channel:channel]

    Requires ManageChannels

  • /channel sync

    Make a channel match its category's permissions

    [channel:channel]

    Requires ManageChannels

  • /channel pins

    List pinned messages

    [channel:channel]

  • /channel pin

    Pin a message

    <message_id:id> [channel:channel]

    Requires ManageMessages

  • /channel unpin

    Unpin a message

    <message_id:id> [channel:channel]

    Requires ManageMessages

  • /channel say

    Post a message as the bot. Mentions are disabled

    [channel:channel] <text:text>

    Requires ManageMessages

Chess

Full rules chess against another member, using standard move notation

  • /chess new

    Start a game. You play white

    <opponent:member>

  • /chess move

    Make a move, such as e4 or Nf3

    <move:str>

  • /chess board

    Show your current game

  • /chess legal

    List the legal moves in your game

  • /chess fen

    Show the position in FEN notation

  • /chess pgn

    Show the game in PGN notation

  • /chess resign

    Resign your game

  • /chess history

    List recent games

    [page:int]

Colours

Convert colours and check contrast

  • /color info

    Show a colour in hex, RGB and HSL

    <hex:str>

  • /color rgb

    Turn RGB values into hex

    <r:int> <g:int> <b:int>

  • /color lighten

    Make a colour lighter

    <hex:str> <percent:int>

  • /color darken

    Make a colour darker

    <hex:str> <percent:int>

  • /color mix

    Mix two colours evenly

    <first:str> <second:str>

  • /color complement

    Find the opposite colour

    <hex:str>

  • /color contrast

    Check text and background contrast against accessibility guidelines

    <text_color:str> <background:str>

  • /color random

    Pick a random colour

Configuration

Read and change this server's settings directly

  • /config get

    Show one setting, or a whole section

    <path:str>

    Requires ManageGuild

  • /config set

    Change a setting. The value is checked before saving

    <path:str> <value:text>

    Requires ManageGuild

  • /config reset

    Put one setting back to its default

    <path:str>

    Requires ManageGuild

  • /config keys

    List every setting name

    [search:str] [page:int]

    Requires ManageGuild

  • /config export

    Download this server's settings as a file

    Requires ManageGuild

  • /config import

    Apply settings from JSON text. Every value is checked first

    <json:text>

    Requires Administrator

  • /config prefix

    Change this server's text command prefix

    <prefix:str>

    Requires ManageGuild

  • /config diff

    Show which settings differ from the defaults

    Requires ManageGuild

  • /config wipe

    Reset every setting to its default. Needs confirmation

    <confirm:bool>

    Requires Administrator

Unit conversion

Convert between units

  • /convert length

    Convert length: mm cm m km in ft yd mi nmi

    <value:num> <from:str> <to:str>

  • /convert mass

    Convert mass: mg g kg t oz lb st

    <value:num> <from:str> <to:str>

  • /convert volume

    Convert volume: ml l m3 tsp tbsp cup pt qt gal

    <value:num> <from:str> <to:str>

  • /convert area

    Convert area: mm2 cm2 m2 km2 ft2 yd2 acre ha mi2

    <value:num> <from:str> <to:str>

  • /convert speed

    Convert speed: m/s km/h mph knot ft/s

    <value:num> <from:str> <to:str>

  • /convert time

    Convert time: ms s min h d wk yr

    <value:num> <from:str> <to:str>

  • /convert data

    Convert data sizes: b kb mb gb tb kib mib gib tib

    <value:num> <from:str> <to:str>

  • /convert pressure

    Convert pressure: pa kpa bar psi atm mmhg

    <value:num> <from:str> <to:str>

  • /convert energy

    Convert energy: j kj cal kcal wh kwh btu

    <value:num> <from:str> <to:str>

  • /convert temperature

    Convert temperature: c f k

    <value:num> <from:c|f|k> <to:c|f|k>

  • /convert units

    List every unit by category

Counting game

A channel where members count up together, with saves, maths and records

  • /counting setup

    Choose the counting channel

    <channel:channel>

    Requires ManageGuild

  • /counting rules

    Choose whether people may count twice in a row, and whether sums like 6*7 count

    [twice_in_a_row:bool] [maths:bool]

    Requires ManageGuild

  • /counting saves

    Give the server saves. A mistake uses one instead of resetting the count

    <amount:int>

    Requires ManageGuild

  • /counting off

    Turn the counting channel off

    Requires ManageGuild

  • /counting status

    Show the current count, the record and the rules

  • /counting user

    Show how someone has counted

    [user:user]

  • /counting top

    Show who has counted the most

  • /counting set

    Set the count to a number, for example after moving channels

    <number:int>

    Requires ManageGuild

  • /counting reset

    Set the count back to zero

    Requires ManageGuild

Developer tools

Everyday helpers for developers

  • /dev json

    Check and pretty-print JSON

    <json:text>

  • /dev json-minify

    Remove whitespace from JSON

    <json:text>

  • /dev jwt

    Decode a JWT's header and claims. It is not verified. Never paste real tokens in public

    <token:text>

  • /dev regex

    Test a regular expression. Patterns run under a time limit

    <pattern:str> [flags:str] <text:text>

  • /dev uuid

    Generate a random UUID

  • /dev snowflake

    Read the creation time from a Discord ID

    <id:id>

  • /dev http-status

    Explain an HTTP status code

    <code:int>

  • /dev port

    Look up a well-known port

    <port:int>

  • /dev mime

    Look up a file extension's MIME type

    <extension:str>

  • /dev url

    Break a URL into its parts

    <url:url>

  • /dev ip

    Classify an IP address. Makes no network requests

    <ip:str>

  • /dev cidr

    Show the range of an IPv4 CIDR block

    <cidr:str>

  • /dev semver

    Compare two semantic versions

    <first:str> <second:str>

  • /dev diff

    Compare two lists of lines, separated by ||

    <text:text>

  • /dev cron

    Explain a five-part cron expression

    <expression:text>

Economy

A server currency with earning, banking, robbing and limits. Not real money

  • /eco balance

    Show a wallet and bank balance

    [user:user]

  • /eco daily

    Collect your daily credits. Streaks pay more

  • /eco weekly

    Collect your weekly credits

  • /eco monthly

    Collect your monthly credits

  • /eco work

    Earn credits. Available once an hour

  • /eco crime

    Take a risk for more credits. Get caught and you pay a fine

  • /eco rob

    Try to take credits from someone's wallet. Fail and you pay them

    <user:member>

  • /eco passive

    Turn passive mode on or off. Passive members cannot rob or be robbed

    <enabled:bool>

  • /eco pay

    Send credits to another member

    <user:user> <amount:str>

  • /eco deposit

    Move credits from your wallet to the bank

    <amount:str>

  • /eco withdraw

    Move credits from the bank to your wallet

    <amount:str>

  • /eco top

    Show the richest members

    [by:total|wallet|bank] [page:int]

  • /eco history

    Show your recent transactions

    [page:int]

  • /eco audit

    Show any member's transactions, for staff

    <user:user> [kind:str] [page:int]

    Requires ManageGuild

  • /eco stats

    Show how much money is in this server's economy

  • /eco give

    Create credits and give them to a member

    <user:user> <amount:int> [note:text]

    Requires ManageGuild

  • /eco give-role

    Give credits to everyone with a role

    <role:role> <amount:int>

    Requires ManageGuild

  • /eco take

    Remove credits from a member

    <user:user> <amount:int> [note:text]

    Requires ManageGuild

  • /eco reset

    Reset one member's balance to zero. Needs confirmation

    <user:user> <confirm:bool>

    Requires ManageGuild

  • /eco interest

    Claim daily interest on your bank balance

  • /eco flip

    Bet credits on a coin flip

    <side:heads|tails> <amount:str>

  • /eco cooldowns

    See when you can next collect, work, commit a crime or rob

Custom embeds

Post and edit formatted messages

  • /embed post

    Post an embed. It cannot ping anyone

    [channel:channel] [title:str] [color:str] [footer:str] [image:url] <text:text>

    Requires ManageMessages

  • /embed edit

    Change an embed this bot posted

    <message_id:id> [channel:channel] [title:str] [color:str] [footer:str] [image:url] <text:text>

    Requires ManageMessages

  • /embed preview

    See how an embed looks, visible only to you

    [title:str] [color:str] [footer:str] [image:url] <text:text>

    Requires ManageMessages

Encoding

Encode and decode text in common formats

  • /encode base64

    Encode text as Base64

    <text:text>

  • /encode unbase64

    Decode Base64

    <text:text>

  • /encode hex

    Encode text as hexadecimal

    <text:text>

  • /encode unhex

    Decode hexadecimal

    <text:text>

  • /encode url

    Percent-encode text for a URL

    <text:text>

  • /encode unurl

    Decode percent-encoded text

    <text:text>

  • /encode binary

    Write text as binary

    <text:text>

  • /encode unbinary

    Read binary as text

    <text:text>

  • /encode morse

    Write text in Morse code

    <text:text>

  • /encode unmorse

    Read Morse code

    <text:text>

  • /encode rot13

    Apply ROT13

    <text:text>

  • /encode caesar

    Apply a Caesar shift

    <shift:int> <text:text>

  • /encode html

    Escape text for HTML

    <text:text>

  • /encode unhtml

    Unescape HTML entities

    <text:text>

Events

Plan events with sign-up buttons, capacity and waitlists, reminders and calendar files

  • /event create

    Create an event with sign-up buttons. Times like 2d or friday 8pm work

    <title:str> <starts:str> [channel:channel] [capacity:int] [remind_before:dur] [length:dur] [description:text]

    Requires ManageEvents

  • /event view

    Show an event

    <id:int>

  • /event list

    List upcoming events

    [page:int]

  • /event rsvp

    Say whether you are going

    <id:int> <answer:yes|maybe|no>

  • /event waitlist

    See who is waiting for a place

    <id:int>

  • /event attendees

    See who is going

    <id:int>

  • /event edit

    Change an event's title, description or capacity

    <id:int> [title:str] [capacity:int] [description:text]

  • /event reschedule

    Move an event to a new time. People going are told

    <id:int> <starts:str>

  • /event calendar

    Download an event as a calendar file for Google, Apple or Outlook

    <id:int>

  • /event cancel

    Cancel an event

    <id:int>

  • /event mine

    List events you are going to

  • /event remind-before

    Choose how long before an event its reminder goes out

    <id:int> <before:dur>

Anonymous feedback

Let members tell staff things without giving their name, and follow what happens

  • /feedback send

    Send anonymous feedback to staff

    [type:general|idea|bug|complaint|praise] [rating:int] [named:bool] <text:text>

  • /feedback mine

    See the status of feedback you sent, and any replies

  • /feedback channel

    Choose where feedback is posted

    <channel:channel> [daily_limit:int]

    Requires ManageGuild

  • /feedback panel

    Post buttons members can use to send feedback

    [channel:channel] [title:str]

    Requires ManageGuild

  • /feedback list

    Read feedback

    [status:new|reviewing|planned|resolved|declined|all] [page:int] [type:general|idea|bug|complaint|praise]

    Requires ManageGuild

  • /feedback status

    Set a status and optionally reply to the sender

    <id:int> <status:new|reviewing|planned|resolved|declined> [reply:text]

    Requires ManageGuild

  • /feedback resolve

    Mark feedback as handled

    <id:int>

    Requires ManageGuild

  • /feedback stats

    Show feedback volume, types, ratings and response time

    [days:int]

    Requires ManageGuild

  • /feedback delete

    Delete a piece of feedback

    <id:int>

    Requires ManageGuild

  • /feedback block-sender

    Stop whoever sent this from sending more, without revealing who it is

    <id:int> <confirm:bool>

    Requires ManageGuild

  • /feedback unblock-all

    Lift all feedback blocks

    Requires ManageGuild

Games

Casino games, board games against friends, word games and stats

  • /games rps

    Play rock, paper, scissors

    <choice:rock|paper|scissors>

  • /games 8ball

    Ask the magic 8-ball

    <question:text>

  • /games casino slots

    Spin the slots with a bet

    <bet:str>

  • /games blackjack start

    Start a game of blackjack with a bet

    <bet:str>

  • /games blackjack hit

    Take another card

  • /games blackjack stand

    Keep your hand and let the dealer play

  • /games words hangman

    Start a game of hangman

  • /games words hangman-guess

    Guess a letter

    <letter:str>

  • /games number start

    I think of a number. You guess it

    [max:int]

  • /games number try

    Guess the number

    <number:int>

  • /games words scramble

    Unscramble a word

  • /games words scramble-answer

    Answer your scramble

    <word:str>

  • /games tictactoe start

    Challenge someone to tic-tac-toe

    <opponent:member>

  • /games tictactoe move

    Place your mark on squares 1 to 9

    <square:int>

  • /games tictactoe quit

    Give up your tic-tac-toe game

  • /games connect4 start

    Challenge someone to connect four, played with buttons

    <opponent:member>

  • /games connect4 move

    Drop a piece in a column, if you prefer typing to buttons

    <column:int>

  • /games connect4 quit

    Give up your game of connect four

  • /games words wordle

    Start a five-letter word guessing game. Six tries

  • /games words wordle-guess

    Guess the five-letter word

    <word:str>

  • /games casino roulette

    Bet on the roulette wheel: red, black, odd, even, low, high, green or a number

    <bet:str> <space:str>

  • /games casino dice

    Roll 1 to 100 and bet over or under a target. Riskier targets pay more

    <bet:str> <side:over|under> <target:int>

  • /games duel

    Challenge someone to a coin-flip duel for credits. They accept with a button

    <opponent:member> <bet:str>

  • /games minesweeper

    Get a minesweeper board made of spoiler tags

    [size:int] [mines:int]

  • /games stats

    Show a member's wins and losses in every game

    [user:user]

  • /games leaderboard

    Show the best players of one game

    <game:blackjack|slots|flip|roulette|dice|duel|connect4|ttt|wordle|hangman|trivia|crime|rob> [page:int]

Giveaways

Fair prize draws with requirements, bonus entries and one-click entry

  • /giveaway start

    Start a giveaway. Requirements and bonus entries can be added after

    <duration:dur> [winners:int] [channel:channel] [role:role] [level:int] <prize:text>

    Requires ManageGuild

  • /giveaway drop

    Post a prize that the first person to press Claim wins

    [channel:channel] [role:role] <prize:text>

    Requires ManageGuild

  • /giveaway enter

    Enter or leave a giveaway

    <id:int>

  • /giveaway require

    Add entry requirements to a giveaway, or clear them

    <id:int> [role:role] [blocked_role:role] [level:int] [account_days:int] [member_days:int] [clear:bool]

    Requires ManageGuild

  • /giveaway bonus

    Give holders of a role extra entries. Use 0 to remove

    <id:int> <role:role> <entries:int>

    Requires ManageGuild

  • /giveaway edit

    Change a running giveaway's prize or number of winners

    <id:int> [winners:int] [prize:text]

    Requires ManageGuild

  • /giveaway extend

    Give a running giveaway more time

    <id:int> <by:dur>

    Requires ManageGuild

  • /giveaway pause

    Pause a giveaway. The clock stops and entries close

    <id:int>

    Requires ManageGuild

  • /giveaway resume

    Resume a paused giveaway with the time it had left

    <id:int>

    Requires ManageGuild

  • /giveaway end

    End a giveaway now and draw winners

    <id:int>

    Requires ManageGuild

  • /giveaway reroll

    Draw new winners from the entries who have not won

    <id:int> [count:int]

    Requires ManageGuild

  • /giveaway entrants

    List who has entered and how many entries each has

    <id:int> [page:int]

    Requires ManageGuild

  • /giveaway list

    List giveaways

    [status:running|ended|all] [page:int]

  • /giveaway info

    Show one giveaway with its requirements

    <id:int>

  • /giveaway mine

    List the running giveaways you have entered

  • /giveaway stats

    Show giveaway totals for this server

  • /giveaway cancel

    Cancel a giveaway or drop without drawing

    <id:int> <confirm:bool>

    Requires ManageGuild

Shared bans

An opt-in network for sharing ban reports. Each server decides what to do with them

  • /globalban join

    Join the network, or change how this server treats reports

    <policy:alert|review|enforce> [min_credibility:int]

    Requires Administrator

  • /globalban leave

    Leave the network. Your existing reports stay until withdrawn

    Requires Administrator

  • /globalban report

    Share a ban report with other servers

    <user:user> <category:raid|scam|harassment|nuke|other> <reason:str> [evidence:url] [evidence_file:att]

    Requires BanMembers

  • /globalban lookup

    See reports about a user, with how much weight each one deserves

    <user:user>

    Requires BanMembers

  • /globalban evidence

    Open a report's stored evidence, or add a file to your own report

    <report:int> [file:att]

    Requires BanMembers

  • /globalban enforce

    Ban a reported member here, as an ordinary case you can reverse

    <report:int> [note:str]

    Requires BanMembers

  • /globalban review

    Confirm or dispute another server's report

    <report:int> <verdict:confirm|dispute> [note:str]

    Requires BanMembers

  • /globalban withdraw

    Withdraw a report this server made. Bans it caused elsewhere are lifted

    <report:int> [note:str]

    Requires BanMembers

  • /globalban appeal

    Appeal a report about you

    <report:int> <message:text>

  • /globalban appeals

    List appeals against this server's reports

    [page:int]

    Requires BanMembers

  • /globalban decide

    Decide an appeal against this server's report

    <appeal:int> <outcome:uphold|overturn> [note:str]

    Requires BanMembers

  • /globalban status

    Show this server's participation and reputation

    Requires BanMembers

  • /globalban blacklist

    Owner: add or remove a user on the global blacklist

    <action:add|remove> <user:user> [reason:str]

  • /globalban overturn

    Owner: overturn an appeal or report after a dispute

    <appeal:int> [note:str]

Hall of Fame and Shame

One โญ nominates for Fame, one ๐Ÿ’ฉ for Shame. Configure and browse both

  • /hall configure

    Set a hall's channel and behaviour. Anything waiting is posted right away

    <system:fame|shame> [channel:channel] [enabled:bool] [on_zero:keep|remove] [self_react:allow|ignore] [allow_bots:bool] [nsfw:skip|link] [nsfw_channel:channel] [only_channel:channel] [clear_only:bool]

    Requires ManageGuild

  • /hall ignore

    Stop a channel's messages being nominated

    <system:fame|shame> <channel:channel>

    Requires ManageGuild

  • /hall unignore

    Let a channel's messages be nominated again

    <system:fame|shame> <channel:channel>

    Requires ManageGuild

  • /hall channel

    Set a rule for one channel or category: block it, send it to its own hall, or a self-reaction policy

    <system:fame|shame> <channel:channel> [mode:default|block|redirect] [destination:channel] [self_react:default|allow|ignore]

    Requires ManageGuild

  • /hall block

    Block a person or role, or unblock them. Their messages cannot enter, and their reactions do not count

    <system:fame|shame> <action:add|remove|list> [user:user] [role:role]

    Requires ManageGuild

  • /hall config

    Show the current hall settings

  • /hall fame

    Browse the Hall of Fame

    [sort:top|recent] [page:int]

  • /hall shame

    Browse the Hall of Shame

    [sort:top|recent] [page:int]

  • /hall user

    Show one person's entries

    <system:fame|shame> <user:user> [page:int]

  • /hall search

    Search a hall's saved messages

    <system:fame|shame> <query:str> [user:user] [page:int]

  • /hall random

    Show a random entry, with a button for another

    <system:fame|shame> [user:user] [channel:channel]

  • /hall leaderboard

    Rank authors, reaction givers, posts or channels. Buttons turn the page

    <system:fame|shame> [kind:authors|givers|posts|channels] [days:int] [page:int]

  • /hall stats

    Show totals for both halls, or details for one hall, person or period

    [system:fame|shame] [user:user] [within:dur]

  • /hall info

    Show the stored record for a nominated message

    <system:fame|shame> <message_id:id>

    Requires ManageMessages

  • /hall refresh

    Re-read a message from Discord and update its entry

    <system:fame|shame> <message_id:id> <channel:channel>

    Requires ManageMessages

  • /hall remove

    Take a post down. It will not come back unless restored

    <system:fame|shame> <message_id:id> [reason:text]

    Requires ManageMessages

  • /hall restore

    Bring back a retracted entry, updating its count

    <system:fame|shame> <message_id:id>

    Requires ManageMessages

  • /hall pending

    Show nominations waiting to post, and why

    [page:int]

    Requires ManageGuild

  • /hall flush

    Try to post every waiting nomination now

    Requires ManageGuild

  • /hall recover

    Catch up now: fix counts, find missed reactions in recent messages and post what is waiting

    Requires ManageGuild

Hashing and tokens

Hashes, checksums, HMACs and random tokens

  • /hash digest

    Hash text

    <algorithm:md5|sha1|sha256|sha384|sha512> <text:text>

  • /hash all

    Show every hash of some text

    <text:text>

  • /hash hmac

    Work out an HMAC. Use test keys only

    <algorithm:sha1|sha256|sha512> <key:str> <text:text>

  • /hash crc32

    Work out a CRC-32 checksum

    <text:text>

  • /hash compare

    Compare two hashes

    <first:str> <second:str>

  • /hash identify

    Guess a hash type from its length

    <hash:str>

  • /hash token

    Generate a random URL-safe token

    [bytes:int]

  • /hash password-strength

    Estimate a password's strength. Do not test real passwords in chat

    <password:text>

Integrations

Send security and Hall events to your own services

  • /integration add

    Send events to an https webhook. The link is stored encrypted

    <name:str> <event:security|hall|all> <url:url>

    Requires Administrator

  • /integration list

    List integrations. Links are never shown

    [page:int]

    Requires ManageGuild

  • /integration test

    Send a test event

    <name:str>

    Requires ManageGuild

  • /integration enable

    Turn an integration on

    <name:str>

    Requires ManageGuild

  • /integration disable

    Turn an integration off

    <name:str>

    Requires ManageGuild

  • /integration remove

    Delete an integration

    <name:str>

    Requires Administrator

Invite tracking

See who invited whom, using Discord's invite counts

  • /invite leaderboard

    Rank members by how many people they invited

    [days:int]

    Requires ManageGuild

  • /invite who

    Show who invited a member

    <user:user>

    Requires ModerateMembers

  • /invite list

    List known invites and their use counts

    [page:int]

    Requires ManageGuild

  • /invite configure

    Turn tracking on or off and choose a log channel

    [enabled:bool] [channel:channel]

    Requires ManageGuild

Leveling

XP for chatting and voice, multipliers, weekly boards and role rewards

  • /level rank

    Show a member's level and XP

    [user:user]

  • /level top

    Show the all-time XP leaderboard

    [page:int]

  • /level weekly

    Show who earned the most XP this week

    [page:int]

  • /level add-xp

    Give a member XP. Level rewards apply

    <user:user> <amount:int>

    Requires ManageGuild

  • /level remove-xp

    Take XP away from a member

    <user:user> <amount:int>

    Requires ManageGuild

  • /level set-xp

    Set a member's XP exactly

    <user:user> <amount:int>

    Requires ManageGuild

  • /level reset

    Reset a member's XP to zero

    <user:user> <confirm:bool>

    Requires ManageGuild

  • /level sync

    Give or take reward roles so they match a member's level

    <user:user>

    Requires ManageRoles

  • /level reward-add

    Give a role automatically at a level

    <level:int> <role:role>

    Requires ManageGuild

  • /level reward-remove

    Remove a level reward

    <id:int>

    Requires ManageGuild

  • /level rewards

    List level rewards

  • /level reward-mode

    Keep every reward role, or only the highest one

    <mode:stack|highest>

    Requires ManageGuild

  • /level multiplier

    Speed XP up or down for a role or channel. 100 is normal and removes the rule

    <percent:int> [role:role] [channel:channel]

    Requires ManageGuild

  • /level multipliers

    List XP multipliers

  • /level ignore

    Stop or restart XP in a channel or for a role

    [channel:channel] [role:role]

    Requires ManageGuild

  • /level ignored

    List channels and roles that earn no XP

  • /level message

    Set the level-up message. Use {user} {username} {level} {server}

    [text:text]

    Requires ManageGuild

  • /level toggle

    Turn XP earning on or off

    <enabled:bool>

    Requires ManageGuild

  • /level announce

    Announce level-ups, optionally in one channel

    <enabled:bool> [channel:channel]

    Requires ManageGuild

  • /level voice-xp

    Give XP for each minute in voice. 0 turns it off

    <per_minute:int>

    Requires ManageGuild

  • /level curve

    Show how much XP each level takes

    [up_to:int]

  • /level stats

    Show leveling totals for this server

  • /level voice-status

    Show how long you have been earning voice XP

Loans

Borrow play credits against a flat fee

  • /loan limit

    Show how much you can borrow

  • /loan take

    Borrow credits

    <amount:int>

  • /loan repay

    Pay back some or all of your loan

    <amount:str>

  • /loan status

    Show your loan

    [user:user]

Logging

Record server events to channels of your choice, and search what happened

  • /log channel

    Choose the default channel for server events

    <channel:channel>

    Requires ManageGuild

  • /log modlog

    Choose where moderation cases are posted

    <channel:channel>

    Requires ManageGuild

  • /log toggle

    Choose which events are logged

    <category:messageedits|messagedeletes|bulkdeletes|joins|leaves|roles|nicknames|timeouts|voice|channelchanges|rolechanges|bans|invites|all> <enabled:bool>

    Requires ManageGuild

  • /log route

    Send one kind of event to its own channel. Leave the channel out to use the default

    <category:messageedits|messagedeletes|bulkdeletes|joins|leaves|roles|nicknames|timeouts|voice|channelchanges|rolechanges|bans|invites> [channel:channel]

    Requires ManageGuild

  • /log ignore

    Keep a channel, role or user out of the logs, or log bots too

    [channel:channel] [role:role] [user:user] [remove:bool] [bots:bool]

    Requires ManageGuild

  • /log config

    Show logging settings

    Requires ManageGuild

  • /log check

    Test every log channel and report any that do not work, and how to fix them

    Requires ManageGuild

  • /log audit

    Show recent actions recorded by Clover

    [action:str] [actor:user] [page:int]

    Requires ManageGuild

  • /log commands

    Show recent command use

    [user:user] [page:int]

    Requires ManageGuild

  • /log failures

    Show recent commands that failed, and why

    [page:int]

    Requires ManageGuild

Marketplace

Sell items to other members. Payment and delivery happen together or not at all

  • /market sell

    List an item for sale

    <item:str> <price:int> [quantity:int]

  • /market browse

    See what is for sale

    [item:str] [page:int]

  • /market buy

    Buy a listing

    <id:int>

  • /market cancel

    Take your listing down and get the items back

    <id:int>

  • /market mine

    See your listings

  • /market value

    Estimate your wallet plus open listings

Math

A calculator and common math functions

  • /math calc

    Work out an expression, such as (2+3)*sqrt(16)

    <expression:text>

  • /math gcd

    Find the greatest common divisor

    <numbers:text>

  • /math lcm

    Find the least common multiple

    <numbers:text>

  • /math prime

    Check whether a number is prime

    <number:int>

  • /math factors

    Find prime factors

    <number:int>

  • /math fibonacci

    Find the nth Fibonacci number

    <n:int>

  • /math factorial

    Work out a factorial

    <n:int>

  • /math percent

    Work out what percent one number is of another

    <part:num> <whole:num>

  • /math percent-of

    Work out a percentage of a number

    <percent:num> <of:num>

  • /math change

    Work out percentage change

    <from:num> <to:num>

  • /math average

    Find the mean

    <numbers:text>

  • /math median

    Find the median

    <numbers:text>

  • /math mode

    Find the most common value

    <numbers:text>

  • /math stddev

    Find the standard deviation

    <numbers:text>

  • /math sum

    Add up a list of numbers

    <numbers:text>

  • /math range

    Find the smallest and largest

    <numbers:text>

  • /math base

    Convert a number between bases 2 to 36

    <number:str> <from:int> <to:int>

  • /math roman

    Write a number in Roman numerals

    <number:int>

  • /math from-roman

    Read a Roman numeral

    <numeral:str>

  • /math quadratic

    Solve axยฒ + bx + c = 0

    <a:num> <b:num> <c:num>

  • /math hypotenuse

    Find the long side of a right triangle

    <a:num> <b:num>

  • /math compound

    Work out compound interest

    <principal:num> <rate:num> <years:num>

  • /math combinations

    Count combinations (n choose k)

    <n:int> <k:int>

  • /math permutations

    Count ordered arrangements (n pick k)

    <n:int> <k:int>

Moderation

Ban, kick, time out, warn and purge, with a full case history

  • /mod ban

    Ban a user, for a set time if you give a duration

    <user:user> [days:int] [duration:dur] [dm:send|skip] [proof:att] [reason:text]

    Requires BanMembers

  • /mod unban

    Lift a ban

    <user:user> [reason:text]

    Requires BanMembers

  • /mod softban

    Ban and immediately unban to clear someone's recent messages

    <member:member> [days:int] [dm:send|skip] [reason:text]

    Requires BanMembers

  • /mod tempban

    Ban a user for a set time. The ban lifts automatically, even across restarts

    <user:user> <duration:dur> [days:int] [dm:send|skip] [proof:att] [reason:text]

    Requires BanMembers

  • /mod kick

    Remove a member from the server

    <member:member> [dm:send|skip] [proof:att] [reason:text]

    Requires KickMembers

  • /mod timeout

    Stop a member talking for a while. Over 28 days is renewed automatically

    <member:member> [duration:dur] [dm:send|skip] [proof:att] [reason:text]

    Requires ModerateMembers

  • /mod untimeout

    End a member's timeout early

    <member:member> [reason:text]

    Requires ModerateMembers

  • /mod warn

    Warn a member. Points and repeated warnings can escalate automatically

    <member:member> [points:int] [expires:dur] [dm:send|skip] [proof:att] [reason:text]

    Requires ModerateMembers

  • /mod warnings

    List a member's active warnings

    <user:user> [page:int]

    Requires ModerateMembers

  • /mod warns clear

    Remove one warning by case number

    <case_no:int> [reason:text]

    Requires ModerateMembers

  • /mod warns clear-all

    Remove all of a member's warnings

    <user:user> [reason:text]

    Requires ModerateMembers

  • /mod warns points

    Show a user's active points and how close they are to the next tier

    <user:user>

    Requires ModerateMembers

  • /mod note

    Add a private staff note to a user's record

    <user:user> <text:text>

    Requires ModerateMembers

  • /mod case

    Show one moderation case, with buttons to edit or reverse it

    <case_no:int>

    Requires ModerateMembers

  • /mod cases

    Browse cases, filtered by user, moderator, action, source, age or reason text

    [action:str] [user:user] [moderator:user] [active:bool] [days:int] [source:manual|automod|escalation|automation|mass|verify] [contains:str] [page:int]

    Requires ModerateMembers

  • /mod reason

    Change the reason on a case. Its mod log entry is updated too

    <case_no:int> <reason:text>

    Requires ModerateMembers

  • /mod edit duration

    Change when a temporary action ends, counted from now, or make it permanent

    <case_no:int> [duration:dur] [permanent:bool]

    Requires ModerateMembers

  • /mod edit delete

    Delete a case from the record. A copy stays in the audit log

    <case_no:int> <confirm:bool>

    Requires ManageGuild

  • /mod history

    Show a user's record, filtered by action, moderator, status or age

    <user:user> [action:str] [moderator:user] [active:bool] [days:int] [contains:str] [page:int]

    Requires ModerateMembers

  • /mod modstats

    Show actions per moderator, with reversals and missing reasons

    [days:int] [moderator:user]

    Requires ModerateMembers

  • /mod purge messages

    Delete recent messages from a channel, up to 100. Pinned messages are kept

    <amount:int> [channel:channel]

    Requires ManageMessages

  • /mod purge user

    Delete a user's recent messages from a channel

    <user:user> [amount:int] [channel:channel]

    Requires ManageMessages

  • /mod purge bots

    Delete recent messages sent by bots

    [amount:int] [channel:channel]

    Requires ManageMessages

  • /mod purge match

    Delete recent messages containing some text

    [channel:channel] <text:text>

    Requires ManageMessages

  • /mod purge filter

    Delete up to 1000 messages matching every filter you give, with an optional preview

    <amount:int> [channel:channel] [user:user] [contains:str] [regex:str] [bots:bool] [humans:bool] [attachments:bool] [embeds:bool] [links:bool] [invites:bool] [mentions:bool] [before:id] [after:id] [keep_pinned:bool] [old:bool] [preview:bool] [confirm:bool]

    Requires ManageMessages

  • /mod slowmode set

    Set how long people wait between messages, optionally only for a while

    <duration:dur> [channel:channel] [lasts:dur]

    Requires ManageChannels

  • /mod slowmode off

    Turn slowmode off

    [channel:channel]

    Requires ManageChannels

  • /mod lock

    Stop @everyone talking in a channel, optionally for a set time

    [channel:channel] [duration:dur] [reason:text]

    Requires ManageChannels

  • /mod unlock

    Let @everyone talk in a channel again, restoring its earlier permissions

    [channel:channel]

    Requires ManageChannels

  • /mod nick

    Change or clear a member's nickname

    <member:member> [name:str]

    Requires ManageNicknames

  • /mod evidence

    Attach evidence to a case

    <case_no:int> [file:att] [link:url] [note:text]

    Requires ModerateMembers

  • /mod reverse

    Undo a moderation decision, tell the person and record why

    <case_no:int> <reason:text>

    Requires ModerateMembers

  • /mod setup preset-add

    Save a reason. Typing its name as the reason then uses the full text

    <name:str> [duration:dur] [points:int] <text:text>

    Requires ManageGuild

  • /mod setup preset-remove

    Delete a reason preset

    <name:str>

    Requires ManageGuild

  • /mod setup presets

    List reason presets

    [page:int]

    Requires ModerateMembers

  • /mod setup tier-add

    Punish automatically when someone reaches a number of active points

    <points:int> <action:timeout|kick|tempban|ban> [duration:dur]

    Requires ManageGuild

  • /mod setup tier-remove

    Remove a point tier

    <points:int>

    Requires ManageGuild

  • /mod setup tiers

    List point tiers

    Requires ModerateMembers

  • /mod setup dm-template

    Set what people are told for an action. Placeholders: {reason} {duration} {case} {appeal}

    <action:ban|tempban|softban|kick|timeout|warn|quarantine> [clear:bool] [text:text]

    Requires ManageGuild

  • /mod setup dm-preview

    See the message someone would get for an action

    <action:ban|tempban|softban|kick|timeout|warn|quarantine>

    Requires ModerateMembers

  • /mod setup policy

    Set whether reasons are required, DMs, warning expiry and the appeal text

    [require_reason:bool] [dm:bool] [warn_expiry_days:int] [default_timeout:dur] [warn_counts:bool] [appeal_text:text]

    Requires ManageGuild

Monitoring

See how the bot itself is doing

  • /monitor ping

    Show gateway and database response times

  • /monitor uptime

    Show how long the bot has been running

  • /monitor version

    Show the bot and platform versions

  • /monitor about

    Show what Clover is and how many commands it has

  • /monitor health

    Check the database, jobs and gateway

  • /monitor memory

    Show memory use

  • /monitor jobs

    Show background job counts and recent failures

  • /monitor metrics

    Show internal counters and timings

  • /monitor errors

    Show recent errors from the log

  • /monitor db-stats

    Show database table sizes

  • /monitor servers

    List servers the bot is in

    [page:int]

  • /monitor backup-now

    Back up the whole database now

Network

Link servers, share templates and sync them with each server's approval

  • /network create

    Create a network with this server as its hub

    <name:str>

    Requires Administrator

  • /network invite

    Create a one-time code another server's administrator can use to join

    Requires Administrator

  • /network link

    Join a network with an invite code

    <code:str>

    Requires Administrator

  • /network unlink

    Leave the network. Nothing already synced is removed

    <confirm:bool>

    Requires Administrator

  • /network status

    Show this server's network, its policy and any waiting syncs

    Requires ManageGuild

  • /network servers

    List the servers in this network

    Requires ManageGuild

  • /network policy

    Choose what this server accepts from the network

    [roles:bool] [channels:bool] [config:bool] [nicknames:bool] [member_roles:bool] [on_conflict:keep|overwrite]

    Requires Administrator

  • /network templates

    List the network's shared templates

    [page:int]

    Requires ManageGuild

  • /network template add

    Save a role, channel or setting from this server as a template

    [role:role] [channel:channel] [setting:str]

    Requires Administrator

  • /network template remove

    Delete a template. Nothing already synced changes

    <id:int>

    Requires Administrator

  • /network sync preview

    Show what a sync would change on each server. Changes nothing

    [server:id]

    Requires Administrator

  • /network sync run

    Send templates to linked servers. Sensitive changes wait for their approval

    [server:id]

    Requires Administrator

  • /network sync history

    List past syncs

    [page:int]

    Requires ManageGuild

  • /network approve

    Allow a waiting sync on this server. It is re-checked first

    <run:int>

    Requires Administrator

  • /network reject

    Refuse a waiting sync on this server

    <run:int>

    Requires Administrator

  • /network conflicts

    List what differs from the hub here, and choose per item

    Requires Administrator

  • /network resolve

    Choose whether one differing item keeps local or takes the hub's version

    <item:str> <choice:keep|overwrite>

    Requires Administrator

  • /network compare

    Compare this server with another in the network

    <server:id>

    Requires ManageGuild

  • /network drift

    Find where linked servers have drifted from the templates

    Requires ManageGuild

Personal notes

Private notes only you can read

  • /note add

    Save a private note

    <text:text>

  • /note list

    List your notes

    [page:int]

  • /note view

    Read a note

    <id:int>

  • /note edit

    Change a note

    <id:int> <text:text>

  • /note delete

    Delete a note

    <id:int>

  • /note search

    Search your notes

    <query:str>

Notification centre

One place for what staff need to see, shared with the dashboard

  • /notifications list

    Show recent notifications

    [unread:bool] [page:int]

    Requires ModerateMembers

  • /notifications read

    Mark a notification as read, or all of them

    [id:int]

    Requires ModerateMembers

Keyword alerts

Get a private message when a word you care about comes up

  • /notify add

    Alert you when a word is said in this server

    <word:str>

  • /notify remove

    Remove a keyword alert

    <word:str>

  • /notify list

    List your keyword alerts

  • /notify clear

    Remove all your alerts

Emergency panic

Lock the server down fast, even if the owner is away

  • /panic set-pin

    Set or change the panic PIN. It is stored only as a salted hash

    <pin:str> [current:str]

  • /panic authorize

    Add or remove a trusted emergency operator, or list them

    <action:add|remove|list> [user:user]

  • /panic activate

    Lock every channel, stop new invites and alert staff

    [reason:str] [pin:str]

  • /panic deactivate

    End panic mode and restore channels exactly as they were

    [pin:str]

  • /panic request

    Owner away: ask a second trusted operator to confirm panic mode, with no PIN

    <action:activate|deactivate> [reason:str]

  • /panic respond

    Confirm or refuse another operator's emergency request

    <request:int> <answer:confirm|refuse>

  • /panic status

    Show whether panic mode is active, who can use it and what to do next

  • /panic history

    Show every use of panic controls

    [page:int]

    Requires ManageGuild

  • /panic recovery

    Pause automatic responses while staff repair the server

    <enabled:bool> [pin:str]

  • /panic summary

    Summarise the last emergency for staff

    Requires ManageGuild

Permissions

Decide who can use which commands, by role, user and channel

  • /perm allow

    Let a user or role use a command or category, such as mod.ban or mod.*, optionally in one channel or for a while

    <node:str> [user:user] [role:role] [channel:channel] [expires:dur]

    Requires Administrator

  • /perm deny

    Stop a user or role using a command, even if Discord would allow it, optionally in one channel

    <node:str> [user:user] [role:role] [channel:channel] [expires:dur]

    Requires Administrator

  • /perm clear

    Remove a permission rule

    <node:str> [user:user] [role:role] [channel:channel]

    Requires Administrator

  • /perm reset

    Remove every rule for a user or role, or every rule in the server

    <confirm:bool> [user:user] [role:role]

    Requires Administrator

  • /perm copy

    Copy every rule from one role to another

    <from_role:role> <to_role:role>

    Requires Administrator

  • /perm list

    List permission rules, filtered by user, role, command or channel

    [user:user] [role:role] [node:str] [channel:channel] [page:int]

    Requires ManageGuild

  • /perm check

    Explain step by step whether a member can use a command, and why

    <member:member> <command:str> [channel:channel]

    Requires ManageGuild

  • /perm who

    Show which roles and people can use a command, by rule and by Discord permission

    <command:str> [channel:channel]

    Requires ManageGuild

  • /perm disable

    Turn a command off for everyone except admins

    <command:str>

    Requires ManageGuild

  • /perm enable

    Turn a command back on

    <command:str>

    Requires ManageGuild

  • /perm disabled

    List commands that are turned off

    Requires ManageGuild

  • /perm cooldown

    Set a command's cooldown in this server

    <command:str> <seconds:int>

    Requires ManageGuild

  • /perm block-channel

    Stop a command being used in one channel

    <command:str> <channel:channel>

    Requires ManageGuild

  • /perm unblock-channel

    Allow a command in a channel again

    <command:str> <channel:channel>

    Requires ManageGuild

Polls

Button polls with up to 10 options, multiple picks and live or hidden results

  • /poll create

    Start a poll. Separate 2 to 10 options with |

    <question:str> <options:str> [duration:dur] [channel:channel] [max_choices:int] [public:bool] [hide_results:bool] [role:role]

    Requires ManageMessages

  • /poll vote

    Vote for an option by number. Voting for your current pick removes it

    <id:int> <option:int>

  • /poll unvote

    Take back your vote in a poll

    <id:int>

  • /poll results

    Show a poll's results

    <id:int>

  • /poll voters

    See who picked each option, for public polls

    <id:int>

  • /poll add-option

    Add an option to an open poll

    <id:int> <option:text>

    Requires ManageMessages

  • /poll close

    End a poll early

    <id:int>

    Requires ManageMessages

  • /poll reopen

    Open a closed poll again, optionally for a set time

    <id:int> [duration:dur]

    Requires ManageMessages

  • /poll export

    Download a poll's results as a CSV file

    <id:int>

    Requires ManageMessages

  • /poll list

    List recent polls

    [status:open|closed|all] [page:int]

  • /poll delete

    Delete a poll and its message

    <id:int>

    Requires ManageMessages

User profiles

A personal card showing someone's bio, level, reputation and Hall record

  • /profile view

    Show a profile

    [user:user]

  • /profile bio

    Set your bio

    <text:text>

  • /profile pronouns

    Set your pronouns

    <text:str>

  • /profile color

    Set your card colour

    <hex:str>

  • /profile link

    Add a link to your profile

    <kind:website|github|twitch|youtube|x> <url:url>

  • /profile unlink

    Remove a link from your profile

    <kind:website|github|twitch|youtube|x>

  • /profile clear

    Delete your profile

  • /profile avatar

    Show someone's avatar at full size

    [user:user]

  • /profile whois

    Show someone's account and server details

    <member:member>

Quotes

Keep a book of the best things people have said

  • /quote add

    Save a quote

    [user:user] <text:text>

  • /quote from-message

    Save a message as a quote

    <message_id:id> [channel:channel]

  • /quote random

    Show a random quote

  • /quote get

    Show one quote

    <id:int>

  • /quote by

    List someone's quotes

    <user:user> [page:int]

  • /quote list

    List quotes

    [page:int]

  • /quote remove

    Delete a quote

    <id:int>

    Requires ManageMessages

Random

Fair random numbers, choices and teams

  • /random number

    Pick a random number

    <min:int> <max:int>

  • /random choose

    Pick one option

    <options:text>

  • /random shuffle

    Put options in random order

    <options:text>

  • /random coin

    Flip a coin

  • /random dice

    Roll dice, such as 2d6+3

    <notation:str>

  • /random password

    Generate a strong random password

    [length:int]

  • /random teams

    Split names into random teams

    <teams:int> <names:text>

  • /random member

    Pick a random member of this server

    [role:role]

  • /random sample

    Pick several options without repeats

    <count:int> <options:text>

  • /random lottery

    Draw lottery-style numbers

    <picks:int> <max:int>

Reminders

Reminders at a time or after a while, repeating, or posted to a channel. They survive restarts

  • /remind me

    Remind you after a while, such as 10m or 2h

    <when:dur> <text:text>

  • /remind at

    Remind you at a time, such as 18:00, tomorrow 9am or friday 6pm, in your time zone

    <when:str> <text:text>

  • /remind every

    A reminder that repeats, at least an hour apart

    <interval:dur> [first:str] <text:text>

  • /remind channel

    Post a reminder in a channel, optionally pinging a role and repeating

    <when:str> [channel:channel] [role:role] [repeat:dur] <text:text>

    Requires ManageMessages

  • /remind list

    List your reminders

  • /remind server

    List every channel reminder on this server

    Requires ManageMessages

  • /remind info

    Show one reminder

    <id:int>

  • /remind edit

    Change a reminder's text

    <id:int> <text:text>

  • /remind cancel

    Cancel a reminder

    <id:int>

  • /remind snooze

    Push a reminder back

    <id:int> <by:dur>

  • /remind clear

    Cancel all your reminders

Reputation

Let members vouch for each other

  • /rep give

    Give a member a reputation point

    <user:user> [reason:text]

  • /rep check

    Show a member's reputation

    [user:user]

  • /rep top

    Show the most trusted members

    [page:int]

  • /rep history

    Show who vouched for a member

    <user:user> [page:int]

  • /rep penalize

    Remove reputation from a member

    <user:user> <amount:int> [reason:text]

    Requires ModerateMembers

  • /rep reset

    Clear a member's reputation

    <user:user> <confirm:bool>

    Requires ManageGuild

Reporting

Report users or messages to staff privately, and work through them

  • /report user

    Report a user to staff

    <user:user> [category:spam|harassment|scam|nsfw|other] [evidence:att] <reason:text>

  • /report message

    Report a message by its link

    <link:url> [category:spam|harassment|scam|nsfw|other] <reason:text>

  • /report list

    List reports

    [status:open|resolved|dismissed] [page:int]

    Requires ModerateMembers

  • /report view

    Read one report

    <id:int>

    Requires ModerateMembers

  • /report claim

    Take a report, so other staff can see it is being handled

    <id:int>

    Requires ModerateMembers

  • /report resolve

    Close a report as acted on, and tell the person who filed it

    <id:int> [note:text]

    Requires ModerateMembers

  • /report dismiss

    Close a report with no action, and tell the person who filed it

    <id:int> [note:text]

    Requires ModerateMembers

  • /report against

    List reports about a user

    <user:user>

    Requires ModerateMembers

  • /report stats

    Show report totals, response times and who is reported most

    Requires ModerateMembers

  • /report config

    Choose where reports go, who gets pinged, and how many someone can have open

    [channel:channel] [staff_role:role] [max_open:int] [escalate_at:int] [notify_reporter:bool]

    Requires ManageGuild

  • /report block

    Stop someone filing reports, for people who abuse them

    <user:user> [remove:bool]

    Requires ModerateMembers

Role management

Create, edit and assign roles, with hierarchy checks

  • /role info

    Show details about a role

    <role:role>

  • /role list

    List every role

    [page:int]

  • /role add

    Give a role to a member

    <member:member> <role:role>

    Requires ManageRoles

  • /role remove

    Take a role from a member

    <member:member> <role:role>

    Requires ManageRoles

  • /role temp

    Give a role for a limited time. It is removed automatically

    <member:member> <role:role> <duration:dur>

    Requires ManageRoles

  • /role create

    Create a role

    <name:str> [color:str] [hoist:bool] [mentionable:bool]

    Requires ManageRoles

  • /role delete

    Delete a role. Needs confirmation

    <role:role> <confirm:bool>

    Requires ManageRoles

  • /role rename

    Rename a role

    <role:role> <name:text>

    Requires ManageRoles

  • /role color

    Change a role's colour

    <role:role> <color:str>

    Requires ManageRoles

  • /role hoist

    Choose whether a role shows separately in the member list

    <role:role> <enabled:bool>

    Requires ManageRoles

  • /role mentionable

    Choose whether anyone can mention a role

    <role:role> <enabled:bool>

    Requires ManageRoles

  • /role members

    List members who have a role

    <role:role> [page:int]

  • /role perms

    List the permissions a role grants

    <role:role>

  • /role grant-perm

    Add a permission to a role. You cannot grant what you do not hold

    <role:role> <permission:str>

    Requires ManageRoles

  • /role revoke-perm

    Remove a permission from a role

    <role:role> <permission:str>

    Requires ManageRoles

  • /role compare

    See what permissions differ between two roles

    <first:role> <second:role>

  • /role empty

    List roles that nobody has

    [page:int]

    Requires ManageRoles

Scheduled messages

Post messages later, once or on repeat

  • /schedule message

    Post a message after a delay, optionally repeating

    <when:dur> [channel:channel] [repeat:dur] <text:text>

    Requires ManageMessages

  • /schedule list

    List scheduled messages

    [page:int]

    Requires ManageMessages

  • /schedule info

    Show one scheduled message

    <id:int>

    Requires ManageMessages

  • /schedule cancel

    Cancel a scheduled message

    <id:int>

    Requires ManageMessages

  • /schedule edit

    Change a scheduled message's text

    <id:int> <text:text>

    Requires ManageMessages

Search

Find messages, members, roles, channels, cases, tickets and files

  • /search messages

    Search the last 100 messages of a channel

    <query:str> [channel:channel] [from:user]

  • /search members

    Find members by name

    <query:str>

  • /search roles

    Find roles by name

    <query:str>

  • /search channels

    Find channels by name

    <query:str>

  • /search cases

    Search moderation reasons

    <query:str>

    Requires ModerateMembers

  • /search tickets

    Search ticket subjects

    <query:str>

    Requires ManageChannels

  • /search files

    Search this server's cloud files

    <query:str>

    Requires ManageGuild

  • /search audit

    Search the audit log

    <query:str>

    Requires ManageGuild

  • /search commands

    Search Clover commands

    <query:str>

  • /search emoji

    Find a custom emoji by name

    <query:str>

Security

Protection, incidents, recovery and security drills

  • /security status

    Show which protections are on and any active lockdown

    Requires ManageGuild

  • /security timeline

    Show security events in order, with who did what

    [hours:int] [actor:user] [page:int]

    Requires ManageGuild

  • /security incident

    Show the full report for one incident

    <id:int> [summarize:bool]

    Requires ManageGuild

  • /security snapshot

    Save the server's roles, channels and permissions for later recovery

    [note:text]

    Requires ManageGuild

  • /security snapshots

    List saved snapshots

    [page:int]

    Requires ManageGuild

  • /security compare

    Compare the server, or a later snapshot, with a snapshot. Permission changes are named

    [snapshot:int] [against:int]

    Requires ManageGuild

  • /security rollback preview

    Show exactly what a rollback would do, and pick parts of it. Changes nothing

    [snapshot:int]

    Requires ManageGuild

  • /security rollback apply

    Apply a previewed rollback. It never deletes anything

    <operation:int> <confirm:bool>

    Requires Administrator

  • /security recovery

    List recovery operations, or read one report

    [id:int] [page:int]

    Requires ManageGuild

  • /security restore

    Restore one role or channel from a snapshot. Shows a preview unless you confirm

    <resource:str> [snapshot:int] [confirm:bool]

    Requires Administrator

  • /security score

    Show this server's security score and how it was worked out

    Requires ManageGuild

  • /security audit

    Check permissions, webhooks, integrations and unusual activity

    Requires ManageGuild

  • /security recommendations

    List what would improve this server's security, most valuable first

    Requires ManageGuild

  • /security permissions

    Show which roles and members hold dangerous permissions

    [page:int]

    Requires ManageGuild

  • /security configuration

    Check this server's security settings for problems

    Requires ManageGuild

  • /security lockdown

    Lock every text channel. With contain, also pause invites and gate new joins

    [contain:bool] [gate:off|quarantine|kick] [minutes:int] [reason:text]

    Requires ManageGuild

  • /security unlock

    End a lockdown or raid containment and restore each channel exactly as it was

    Requires ManageGuild

  • /security staff-history

    Show recent actions by a staff member

    <user:user> [page:int]

    Requires ManageGuild

  • /security correlate

    Look for accounts that resemble a member. Indicators only, never proof

    <member:member>

    Requires ModerateMembers

  • /security drill run

    Test your protection with simulated attacks. Nothing happens on Discord

    <scenario:all|raid|guards|escalation|bot|spam|nuke>

    Requires ManageGuild

  • /security drill results

    List past drills

    [page:int]

    Requires ManageGuild

  • /security drill report

    Read a drill's gaps and what to do about them

    [id:int]

    Requires ManageGuild

  • /security module toggle

    Turn a protection module on or off

    <module:antiraid|antinuke|antispam|antiflood|antimention|antiphish|antiinvite|linkfilter|accountage> <enabled:bool>

    Requires ManageGuild

  • /security module master

    Turn all protection on or off

    <enabled:bool>

    Requires Administrator

  • /security module dry-run

    Monitor mode: log what would happen without enforcing anything

    <enabled:bool>

    Requires ManageGuild

  • /security module log-channel

    Choose where security alerts are posted

    <channel:channel>

    Requires ManageGuild

  • /security module set-action

    Choose how a module responds

    <module:antiraid|antinuke|antispam|antiflood|antimention|antiphish|antiinvite|linkfilter> <action:str>

    Requires ManageGuild

  • /security module set-threshold

    Tune a detection threshold, for example antiraid.joins

    <path:str> <value:int>

    Requires ManageGuild

  • /security module response-mode

    Choose what a high threat score does: alert, quarantine or respond automatically

    <mode:alert|quarantine|auto> [quarantine_role:role]

    Requires Administrator

  • /security module nuke-restore

    Opt in: recreate what an attacker deleted once anti-nuke triggers

    <enabled:bool>

    Requires Administrator

  • /security module bot-vetting

    Choose what happens to bots added by someone untrusted

    <action:alert|quarantine>

    Requires Administrator

  • /security module webhook-guard

    Choose what happens to webhooks created by someone untrusted

    <action:alert|delete>

    Requires Administrator

  • /security module server-guard

    Watch the vanity URL and server settings, and optionally change them back

    [enabled:bool] [action:alert|revert]

    Requires Administrator

  • /security module raid-plan

    Set up raid containment: join gate, account age, time limit, automatic start

    [gate:off|quarantine|kick] [account_days:int] [minutes:int] [automatic:bool]

    Requires Administrator

  • /security module digest

    Post a security report to the alerts channel on a schedule

    <enabled:bool> [days:int]

    Requires ManageGuild

  • /security case list

    List security incidents

    [status:open|resolved|false_positive] [page:int]

    Requires ManageGuild

  • /security case report

    File a security incident by hand

    <severity:low|medium|high|critical> <title:text>

    Requires ModerateMembers

  • /security case resolve

    Mark an incident as resolved

    <id:int>

    Requires ManageGuild

  • /security case false-positive

    Mark an incident as a false positive, and optionally trust the domain

    <id:int> [trust_domain:bool]

    Requires ManageGuild

  • /security case summary

    Summarise security activity over a period

    [within:dur] [narrative:bool] [export:bool]

    Requires ManageGuild

  • /security case raid

    Show the progress of raid containment

    Requires ManageGuild

  • /security trust add

    Exempt a user, bot, role, domain or invite from detection

    <kind:user|bot|role|domain|invite> <value:str> [note:text]

    Requires Administrator

  • /security trust remove

    Remove something from the trusted list

    <kind:user|bot|role|domain|invite> <value:str>

    Requires Administrator

  • /security trust list

    Show the trusted users, bots, roles, domains and invites

    [page:int]

    Requires ManageGuild

  • /security trust protect

    Mark a role or channel as protected, so touching it raises the threat score

    <kind:role|channel> <value:str>

    Requires Administrator

  • /security trust unprotect

    Remove protection from a role or channel

    <value:str>

    Requires Administrator

  • /security trust protected

    List protected roles and channels

    Requires ManageGuild

  • /security trust allow

    Whitelist a user, role or webhook for one action only

    <action:channeldelete|channelcreate|roledelete|rolecreate|ban|kick|webhookcreate|webhookuse|permissionchange|escalation|botadd|integration|vanitychange|settingschange> [user:user] [role:role] [webhook:id] [note:text]

    Requires Administrator

  • /security trust disallow

    Remove a whitelist entry for one action

    <action:channeldelete|channelcreate|roledelete|rolecreate|ban|kick|webhookcreate|webhookuse|permissionchange|escalation|botadd|integration|vanitychange|settingschange> [user:user] [role:role] [webhook:id]

    Requires Administrator

  • /security trust allowed

    List who is whitelisted for which action

    [page:int]

    Requires ManageGuild

  • /security trust vet

    Approve a bot under review, or remove it

    <bot:user> <decision:approve|remove>

    Requires Administrator

  • /security trust vetting

    List bots waiting for approval

    [page:int]

    Requires ManageGuild

  • /security domain block

    Treat a domain as malicious in this server

    <domain:str> [note:text]

    Requires ManageGuild

  • /security domain unblock

    Remove a domain from the block list

    <domain:str>

    Requires ManageGuild

  • /security domain list

    Show this server's blocked domains

    [page:int]

    Requires ManageGuild

  • /security scan url

    Check a link for phishing signals and explain the verdict

    <url:url>

    Requires ManageMessages

  • /security scan text

    Test how the filters would treat a message

    <text:text>

    Requires ManageMessages

  • /security scan member

    Show account-age and profile risk signals for a member

    <member:member>

    Requires ModerateMembers

  • /security scan waves

    Look across join waves for accounts that seem coordinated

    [hours:int] [min_size:int] [page:int]

    Requires ModerateMembers

  • /security appeal list

    List ban and action appeals

    [status:pending|approved|denied] [page:int]

    Requires BanMembers

  • /security appeal approve

    Approve an appeal. If it concerns a ban, the ban is lifted

    <id:int> [note:text]

    Requires BanMembers

  • /security appeal deny

    Deny an appeal

    <id:int> [note:text]

    Requires BanMembers

Self roles and role menus

Let members pick their own roles with buttons, commands or drop-down role menus

  • /selfrole add

    Let members give themselves a role

    <role:role> [label:str]

    Requires ManageRoles

  • /selfrole remove

    Stop a role being self-assignable

    <role:role>

    Requires ManageRoles

  • /selfrole list

    List roles you can give yourself

  • /selfrole get

    Give yourself a listed role, or remove it if you have it

    <role:role>

  • /selfrole panel

    Post buttons for picking roles

    [channel:channel] [title:text]

    Requires ManageRoles

  • /selfrole menu-create

    Create a drop-down role menu

    <name:str> [mode:toggle|unique|add|remove] [min:int] [max:int] [required_role:role] [placeholder:str] [title:str]

    Requires ManageRoles

  • /selfrole menu-add

    Add a role to a role menu

    <name:str> <role:role> [label:str] [description:text]

    Requires ManageRoles

  • /selfrole menu-remove

    Take a role out of a role menu

    <name:str> <role:role>

    Requires ManageRoles

  • /selfrole menu-edit

    Change a role menu's mode, limits, requirement or wording

    <name:str> [mode:toggle|unique|add|remove] [min:int] [max:int] [required_role:role] [clear_required:bool] [placeholder:str] [title:str] [description:text]

    Requires ManageRoles

  • /selfrole menu-post

    Post a role menu, or update the copy already posted in that channel

    <name:str> [channel:channel]

    Requires ManageRoles

  • /selfrole menu-list

    List role menus

  • /selfrole menu-info

    Show a role menu's settings and roles

    <name:str>

    Requires ManageRoles

  • /selfrole menu-delete

    Delete a role menu and its posted copies

    <name:str> <confirm:bool>

    Requires ManageRoles

Server management

Inspect and manage server-wide details

  • /server info

    Show an overview of this server

  • /server icon

    Show the server icon at full size

  • /server banner

    Show the server banner

  • /server members

    Break down members into humans and bots

  • /server boosts

    Show boost level and boosters

  • /server emojis

    List custom emojis

    [page:int]

  • /server stickers

    List custom stickers

    [page:int]

  • /server features

    List Discord features enabled for this server

  • /server invites

    List invite links and their use counts

    [page:int]

    Requires ManageGuild

  • /server bans

    List banned users

    [page:int]

    Requires BanMembers

  • /server rename

    Rename the server

    <name:text>

    Requires ManageGuild

  • /server recent-joins

    Show the newest members

    [limit:int]

    Requires ModerateMembers

  • /server oldest-members

    Show the longest-standing members

    [limit:int]

  • /server new-accounts

    Find members whose Discord accounts are recent

    [days:int]

    Requires ModerateMembers

  • /server bots

    List bots in this server

    [page:int]

  • /server admins

    List members with the Administrator permission

    Requires ManageGuild

  • /server perm-audit

    List roles carrying dangerous permissions

    Requires ManageGuild

Server profile

Describe your server, list its links and publish its rules

  • /serverprofile view

    Show this server's profile

  • /serverprofile about

    Write this server's description

    <text:text>

    Requires ManageGuild

  • /serverprofile tags

    Set up to 10 tags, separated by commas

    <tags:text>

    Requires ManageGuild

  • /serverprofile link

    Add a link to the profile

    <name:str> <url:url>

    Requires ManageGuild

  • /serverprofile unlink

    Remove a link from the profile

    <name:str>

    Requires ManageGuild

  • /serverprofile rule-add

    Add a server rule

    <text:text>

    Requires ManageGuild

  • /serverprofile rule-remove

    Remove a rule by its number in the list

    <number:int>

    Requires ManageGuild

  • /serverprofile rules

    Show the server rules

  • /serverprofile post-rules

    Post the rules in a channel

    [channel:channel]

    Requires ManageGuild

Shop

Spend credits on items and roles, with stock, limits and timed roles. Credits are play money

  • /shop item-add

    Add an item to the shop. Roles can be timed, and stock and limits are optional

    <name:str> <price:int> [role:role] [duration:dur] [stock:int] [limit:int] [required_role:role] [use_text:str] [description:text]

    Requires ManageGuild

  • /shop item-edit

    Change an item's price, stock, limit, requirement or description

    <name:str> [price:int] [stock:int] [unlimited:bool] [limit:int] [required_role:role] [clear_required:bool] [description:text]

    Requires ManageGuild

  • /shop item-remove

    Take an item off sale

    <name:str>

    Requires ManageGuild

  • /shop item-price

    Change an item's price

    <name:str> <price:int>

    Requires ManageGuild

  • /shop item-info

    Show everything about one item

    <name:str>

  • /shop list

    See what is for sale

    [page:int]

  • /shop buy

    Buy an item

    <item:str> [quantity:int]

  • /shop sell

    Sell items back to the shop for half their price

    <item:str> [quantity:int]

  • /shop use

    Use one of an item you own

    <item:str>

  • /shop inventory

    Show what someone owns

    [user:user]

  • /shop gift

    Give an item to another member

    <user:user> <item:str> [quantity:int]

  • /shop restock

    Add stock to a limited item

    <name:str> <amount:int>

    Requires ManageGuild

Staff management

Staff roster, shifts, leave, handovers and activity reports

  • /staff add

    Add a member to the staff roster

    <member:member> [role:role] <title:text>

    Requires ManageGuild

  • /staff remove

    Remove someone from the roster and hand over their tickets

    <user:user>

    Requires ManageGuild

  • /staff title

    Change someone's staff title

    <user:user> <title:text>

    Requires ManageGuild

  • /staff roster

    Show the staff roster

    [page:int]

  • /staff strike

    Give a staff member a strike, optionally for a set time

    <user:user> [length:dur] <reason:text>

    Requires ManageGuild

  • /staff strikes

    List a staff member's strikes

    <user:user>

    Requires ManageGuild

  • /staff clear-strike

    Remove a strike

    <id:int>

    Requires ManageGuild

  • /staff shift

    Start or end your shift, or see who is on shift

    <action:start|end|list> [note:text]

  • /staff panel

    Post buttons for starting and ending shifts

    [channel:channel]

    Requires ManageGuild

  • /staff hours

    Show someone's shift time

    [user:user] [days:int]

  • /staff leave-start

    Go on leave now. Your tickets are handed over and come back after

    [length:dur] [member:member] [reason:text]

  • /staff leave-end

    Come back from leave and get your tickets back

    [member:member]

  • /staff leave-plan

    Book leave between two dates (UTC)

    <from:str> <until:str> [member:member] [reason:text]

  • /staff leave-cancel

    Cancel or decline leave that has not started

    <id:int>

  • /staff leave-approve

    Approve a leave request

    <id:int>

    Requires ManageGuild

  • /staff on-leave

    See who is on leave and who has leave booked

  • /staff handover

    Summarise what the next shift needs to know

    [hours:int] [channel:channel]

    Requires ModerateMembers

  • /staff handover-note

    Leave a note for the next shift

    <text:text>

    Requires ModerateMembers

  • /staff handover-log

    See past posted handovers and who read them

    [page:int]

    Requires ModerateMembers

  • /staff workload

    Show open tickets per staff member right now

    [page:int]

    Requires ModerateMembers

  • /staff activity

    Show what one staff member has done recently

    [user:user] [days:int]

    Requires ModerateMembers

  • /staff report

    Compare activity across the roster against your targets

    [days:int] [export:bool]

    Requires ManageGuild

  • /staff config

    Set leave, shift, target and handover options

    [log_channel:channel] [leave_role:role] [leave_approval:bool] [hand_back:bool] [max_shift_hours:int] [target_hours:int] [target_tickets:int] [handover_every_hours:int] [handover_channel:channel]

    Requires ManageGuild

Analytics

See how your server is doing over time

  • /stats overview

    Summarise activity for the last days

    [days:int]

    Requires ManageGuild

  • /stats metric

    Chart one metric, such as messages or mod.ban

    <name:str> [days:int]

    Requires ManageGuild

  • /stats metrics

    List metrics recorded in this server

    Requires ManageGuild

  • /stats growth

    Compare joins and leaves

    [days:int]

    Requires ManageGuild

  • /stats commands

    Show the most-used commands

    [days:int]

    Requires ManageGuild

  • /stats top-chatters

    Show who has sent the most messages

  • /stats security

    Show security activity over time

    [days:int]

    Requires ManageGuild

  • /stats moderation

    Show moderation activity by type

    [days:int]

    Requires ManageGuild

Sticky roles

Give people their roles back when they rejoin

  • /sticky toggle

    Turn sticky roles on or off. Roles with staff permissions are never restored

    <enabled:bool>

    Requires ManageGuild

  • /sticky exclude

    Never restore this role

    <role:role>

    Requires ManageGuild

  • /sticky include

    Allow this role to be restored again

    <role:role>

    Requires ManageGuild

  • /sticky list

    List members waiting to get roles back

    [page:int]

    Requires ManageGuild

Cloud storage

Your server's and your own private file storage

  • /storage upload

    Save an attached file. Uploading the same name adds a new version

    <file:att> [name:str] [folder:str] [scope:server|me]

  • /storage list

    List files and folders

    [folder:str] [page:int] [scope:server|me]

  • /storage folder

    Create a folder

    <name:str> [folder:str] [scope:server|me]

  • /storage info

    Show a file's metadata

    <file:str> [scope:server|me]

  • /storage download

    Get a private download link that expires in 10 minutes

    <file:str> [version:int] [scope:server|me]

  • /storage preview

    Show the start of a text file

    <file:str> [scope:server|me]

  • /storage rename

    Rename a file or folder

    <file:str> <name:str> [scope:server|me]

  • /storage move

    Move a file or folder

    <file:str> [folder:str] [scope:server|me]

  • /storage delete

    Move a file or folder to the trash

    <file:str> [scope:server|me]

  • /storage trash list

    List items in the trash

    [scope:server|me]

  • /storage trash restore

    Bring an item back from the trash

    <id:str> [scope:server|me]

  • /storage trash purge

    Permanently delete an item in the trash. This cannot be undone

    <id:str> <confirm:bool> [scope:server|me]

  • /storage search

    Search files by name or description

    <query:str> [scope:server|me]

  • /storage versions

    List a file's previous versions

    <file:str> [scope:server|me]

  • /storage revert

    Make an old version current again. History is kept

    <file:str> <version:int> [scope:server|me]

  • /storage share

    Create a share link, optionally with expiry, download limit or password

    <file:str> [expires:dur] [limit:int] [password:str] [scope:server|me]

  • /storage meta shares

    List a file's share links

    <file:str> [scope:server|me]

  • /storage revoke

    Revoke a share link

    <file:str> <share_id:str> [scope:server|me]

  • /storage meta expire

    Set when a file is automatically moved to the trash

    <file:str> [after:dur] [scope:server|me]

  • /storage meta describe

    Add a searchable description

    <file:str> [scope:server|me] <text:text>

  • /storage meta tag

    Replace a file's tags, separated by commas

    <file:str> <tags:str> [scope:server|me]

  • /storage access add

    Give a user or role access to a file or folder

    <file:str> <level:read|write|manage> [user:user] [role:role]

    Requires ManageGuild

  • /storage access remove

    Remove someone's access to a file or folder

    <file:str> [user:user] [role:role]

    Requires ManageGuild

  • /storage access list

    List who has been given access to a file

    <file:str>

    Requires ManageGuild

  • /storage quota

    Show storage used and remaining

    [scope:server|me]

  • /storage usage

    Show a storage report by type, with the largest files

    [scope:server|me]

  • /storage duplicates

    Find identical files

    [scope:server|me]

  • /storage verify

    Re-hash stored files and report any corruption

    [scope:server|me]

  • /storage activity

    Show recent file activity

    [page:int] [scope:server|me]

  • /storage manifest

    Write a metadata manifest for this storage area to disk

    [scope:server|me]

  • /storage backup

    Save a restore point: which version of every file is current

    [scope:server|me]

  • /storage restore

    Return files to a restore point. Shows what would change unless you confirm

    [point:str] [confirm:bool] [scope:server|me]

Suggestions

Collect ideas with voting buttons and discussion threads, and track decisions

  • /suggest setup

    Choose where suggestions are posted

    <channel:channel>

    Requires ManageGuild

  • /suggest anonymous

    Choose whether suggester names are hidden

    <enabled:bool>

    Requires ManageGuild

  • /suggest submit

    Suggest something

    <text:text>

  • /suggest vote

    Vote for or against a suggestion. Voting the same way again removes it

    <id:int> <side:up|down>

  • /suggest edit

    Change your own suggestion while it is still open

    <id:int> <text:text>

  • /suggest approve

    Approve a suggestion

    <id:int> [note:text]

    Requires ManageGuild

  • /suggest deny

    Deny a suggestion

    <id:int> [note:text]

    Requires ManageGuild

  • /suggest consider

    Mark a suggestion as under consideration

    <id:int> [note:text]

    Requires ManageGuild

  • /suggest implement

    Mark a suggestion as done

    <id:int> [note:text]

    Requires ManageGuild

  • /suggest reopen

    Put a decided suggestion back up for votes

    <id:int>

    Requires ManageGuild

  • /suggest view

    Show one suggestion

    <id:int>

  • /suggest list

    List suggestions

    [status:pending|approved|denied|considering|implemented] [sort:newest|top] [page:int]

  • /suggest top

    Show the most supported open suggestions

    [page:int]

  • /suggest stats

    Show how suggestions have gone

  • /suggest delete

    Delete a suggestion and its post

    <id:int>

    Requires ManageMessages

  • /suggest mine

    List your own suggestions

Support

A knowledge base members can search before opening a ticket

  • /support add

    Add a help article

    <title:str> <text:text>

    Requires ManageGuild

  • /support edit

    Change an article

    <id:int> <text:text>

    Requires ManageGuild

  • /support details

    Set an article's title, search tags, category or image

    <id:int> [title:str] [tags:str] [category:str] [image:url]

    Requires ManageGuild

  • /support remove

    Delete an article

    <id:int>

    Requires ManageGuild

  • /support list

    List help articles

    [page:int] [category:str]

  • /support read

    Read a help article

    <id:int>

  • /support search

    Search help articles

    <query:text>

  • /support ask

    Ask a question and get an answer from the help articles

    <question:text>

  • /support popular

    Show the most-read articles and how helpful they were

  • /support gaps

    See questions the articles could not answer

    [page:int]

    Requires ManageGuild

  • /support panel

    Post a search button members can use

    [channel:channel] [title:str]

    Requires ManageGuild

  • /support autoreply

    Answer questions in a channel with a matching article

    <channel:channel> <enabled:bool>

    Requires ManageGuild

Tags

Saved answers anyone can pull up by name, with aliases, owners and usage counts

  • /tag add

    Save a new tag

    <name:str> <text:text>

  • /tag get

    Show a tag

    <name:str>

  • /tag raw

    Show a tag's text without formatting, for copying

    <name:str>

  • /tag edit

    Change a tag

    <name:str> <text:text>

  • /tag rename

    Rename a tag

    <name:str> <new_name:str>

  • /tag alias

    Give a tag another name, or remove one

    <name:str> <alias:str> [remove:bool]

  • /tag transfer

    Give a tag you own to someone else

    <name:str> <user:user>

  • /tag claim

    Take over a tag whose owner has left the server

    <name:str>

  • /tag remove

    Delete a tag

    <name:str>

  • /tag list

    List tags

    [page:int]

  • /tag top

    Show the most used tags

  • /tag mine

    List the tags you own

    [user:user]

  • /tag search

    Search tags by name, alias or text

    <query:str>

  • /tag info

    Show who made a tag and how often it is used

    <name:str>

Server templates

Save a server's roles and channels, then apply them later

  • /template save

    Save this server's roles and channels as a template. Members and messages are not included

    <name:str>

    Requires ManageGuild

  • /template list

    List saved templates

    Requires ManageGuild

  • /template preview

    Show what applying a template would add. Changes nothing

    <name:str>

    Requires ManageGuild

  • /template apply

    Add whatever this server is missing from a template. Nothing is deleted

    <name:str> <confirm:bool>

    Requires Administrator

  • /template delete

    Delete a saved template

    <name:str>

    Requires ManageGuild

Text tools

Transform, count and tidy text

  • /text upper

    Make text UPPERCASE

    <text:text>

  • /text lower

    Make text lowercase

    <text:text>

  • /text title

    Make Text Title Case

    <text:text>

  • /text sentence

    Make text sentence case

    <text:text>

  • /text reverse

    Reverse text

    <text:text>

  • /text count

    Count words, characters and lines

    <text:text>

  • /text slug

    Turn text into a URL slug

    <text:text>

  • /text repeat

    Repeat text

    <times:int> <text:text>

  • /text replace

    Replace every copy of some text

    <find:str> [with:str] <text:text>

  • /text sort-lines

    Sort lines alphabetically. Separate lines with new lines or " | "

    <text:text>

  • /text unique-lines

    Remove duplicate lines

    <text:text>

  • /text shuffle-lines

    Put lines in random order

    <text:text>

  • /text leet

    Write in l33t

    <text:text>

  • /text mock

    wRiTe LiKe ThIs

    <text:text>

  • /text clap

    Put ๐Ÿ‘ between ๐Ÿ‘ words

    <text:text>

  • /text acronym

    Make an acronym

    <text:text>

  • /text palindrome

    Check whether text reads the same backwards

    <text:text>

  • /text anagram

    Check whether two words are anagrams

    <first:str> <second:str>

  • /text wrap

    Wrap text to a line width

    <width:int> <text:text>

  • /text strip

    Remove extra spaces and blank lines

    <text:text>

  • /text emojify

    Spell words in regional letter emoji

    <text:str>

  • /text lorem

    Generate placeholder text

    [sentences:int]

  • /text char-info

    Show the Unicode details of characters

    <text:str>

Tickets

Private support channels with panels, SLA timers, ratings and analytics

  • /ticket setup

    Choose the staff role, category and channels for tickets

    <staff_role:role> [category:channel] [transcript_channel:channel] [log_channel:channel]

    Requires ManageGuild

  • /ticket create

    Open a private ticket with staff

    [category:str] [member:member] <subject:text>

  • /ticket close

    Close a ticket and save its transcript

    [number:int] [delete_channel:bool] [delay:dur] [reason:text]

  • /ticket reopen

    Reopen a closed ticket

    <number:int>

  • /ticket claim

    Take ownership of a ticket

    [number:int] [force:bool]

  • /ticket unclaim

    Release a ticket

    [number:int]

  • /ticket assign

    Assign a ticket to a staff member

    <member:member> [number:int] [force:bool]

  • /ticket priority

    Set a ticket's priority and SLA targets

    <level:low|normal|high|urgent> [number:int]

  • /ticket add

    Let another member see a ticket

    <member:member> [number:int]

  • /ticket remove

    Remove a member from a ticket

    <member:member> [number:int]

  • /ticket note

    Add a private staff note. The opener cannot see it

    [number:int] <text:text>

  • /ticket notes

    Read a ticket's private staff notes

    [number:int]

  • /ticket transcript

    Save a transcript and download it as an HTML file

    [number:int] [public:bool]

  • /ticket info

    Show a ticket's details

    [number:int]

  • /ticket list

    List tickets, with filters

    [status:open|pending|closed] [page:int] [assignee:user] [opener:user] [priority:low|normal|high|urgent] [panel:str] [unassigned:bool] [overdue:bool]

  • /ticket mine

    List your own tickets

    [page:int]

  • /ticket analytics

    Show response times, SLA results, ratings and workload

    [days:int] [member:user] [panel:str] [export:bool]

  • /ticket sla

    Show a ticket's response and resolution targets

    [number:int]

  • /ticket rate

    Rate how a closed ticket was handled

    <number:int> <stars:int> [comment:text]

  • /ticket panel create

    Create a ticket type with its own category, staff and welcome

    <name:str> [category:channel] [staff_role:role] [title:str] [label:str] [welcome:text]

    Requires ManageGuild

  • /ticket panel edit

    Change a panel. Posted messages update by themselves

    <name:str> [category:channel] [staff_role:role] [title:str] [label:str] [description:str] [color:blue|grey|green|red] [priority:low|normal|high|urgent] [per_user:int] [capacity:int] [first_response:int] [resolution:int] [channel_name:str] [required_role:role] [group:str] [auto_assign:bool] [ping_staff:bool] [welcome:text]

    Requires ManageGuild

  • /ticket panel question

    Add or remove a form question, up to 5 per panel

    <name:str> <action:add|remove|clear> [label:str] [long:bool] [optional:bool] [hint:str] [position:int]

    Requires ManageGuild

  • /ticket panel post

    Post a panel to a channel, with buttons or a select menu

    <name:str> [channel:channel] [also:str] [style:buttons|select]

    Requires ManageGuild

  • /ticket panel list

    List ticket panels

    [page:int]

  • /ticket panel view

    Show one panel's settings

    <name:str>

  • /ticket panel delete

    Delete a panel. Open tickets stay open

    <name:str> <confirm:bool>

    Requires ManageGuild

  • /ticket manage waiting

    Mark a ticket as waiting on the opener, or undo it

    [number:int]

  • /ticket manage rename

    Change a ticket's subject

    [number:int] <subject:text>

  • /ticket manage escalate

    Raise priority and alert the escalation role

    [number:int] [reason:text]

  • /ticket manage move

    Move a ticket to another panel and its staff

    <panel:str> [number:int]

  • /ticket manage close-request

    Ask the opener if a ticket can close, closing after a wait

    [number:int] [wait:dur] [reason:text]

  • /ticket manage cancel-close

    Stop a delayed close

    [number:int]

  • /ticket manage hold

    Keep a ticket safe from auto-close, or undo it

    [number:int]

  • /ticket manage timeline

    Show everything that happened on a ticket

    [number:int] [page:int]

  • /ticket config sla

    Set SLA targets and who is alerted when one is missed

    [first_response_min:int] [resolution_min:int] [escalate_role:role] [warn_at_percent:int]

    Requires ManageGuild

  • /ticket config hours

    Set support hours. SLA clocks only run while support is open

    <start:int> <end:int> [days:str] [utc_offset_minutes:int]

    Requires ManageGuild

  • /ticket config categories

    Set the ticket categories, separated by commas

    <names:text>

    Requires ManageGuild

  • /ticket config limits

    Set how many tickets can be open, and how often

    [per_user:int] [total:int] [cooldown:int]

    Requires ManageGuild

  • /ticket config closing

    Set how tickets close

    [delay:int] [delete_after_min:int] [need_reason:bool] [opener_can_close:bool] [rating:bool] [dm_transcript:bool] [close_on_leave:bool] [closed_category:channel] [reasons:text]

    Requires ManageGuild

  • /ticket config autoclose

    Warn about and then close silent tickets

    [silent_hours:int] [warn_hours:int] [only_waiting:bool]

    Requires ManageGuild

  • /ticket config assignment

    Set auto-assignment and claim locking

    [mode:off|workload] [claim_lock:bool] [on_shift_first:bool]

    Requires ManageGuild

  • /ticket config view

    Show all ticket settings

  • /ticket blacklist add

    Stop someone opening tickets

    <user:user> [length:dur] [reason:text]

  • /ticket blacklist remove

    Let someone open tickets again

    <user:user>

  • /ticket blacklist list

    See who cannot open tickets

    [page:int]

  • /ticket canned add

    Save a reply. Use {user} {staff} {number} {subject}

    <name:str> <text:text>

  • /ticket canned edit

    Change a saved reply

    <name:str> <text:text>

  • /ticket canned remove

    Delete a saved reply

    <name:str>

  • /ticket canned list

    List saved replies

    [page:int]

  • /ticket canned send

    Send a saved reply into a ticket

    <name:str> [number:int]

Time and dates

Your time zone, other people's local time, Discord timestamps and date maths

  • /time zone-set

    Save your time zone so times you type are read in it

    <zone:str>

  • /time zone-clear

    Forget your time zone

  • /time for

    See the local time for someone who saved their time zone

    <user:user>

  • /time parse

    Check how a time like "friday 6pm" is read, as a timestamp

    <when:str>

  • /time now

    Show the current time in a time zone

    [zone:str]

  • /time convert

    Show a moment in another time zone

    <date:str> <zone:str>

  • /time timestamp

    Make Discord timestamps that show in each reader's own time

    <date:str>

  • /time unix

    Convert between a date and a Unix timestamp

    <value:str>

  • /time until

    Count down to a date

    <date:str>

  • /time between

    Work out the time between two dates

    <first:str> <second:str>

  • /time add

    Add days to a date

    <date:str> <days:int>

  • /time weekday

    Find what day of the week a date falls on

    <date:str>

  • /time leap

    Check whether a year is a leap year

    <year:int>

  • /time week

    Find the ISO week number of a date

    <date:str>

  • /time age

    Work out how old something is from a date

    <date:str>

To-do lists

A personal to-do list with priorities and due dates

  • /todo add

    Add a to-do, optionally with a priority and a due date like friday 5pm

    [priority:high|normal|low] [due:str] <text:text>

  • /todo list

    Show your to-dos, most important first

    [show:open|done|all] [page:int]

  • /todo done

    Tick off a to-do

    <id:int>

  • /todo undo

    Untick a to-do

    <id:int>

  • /todo edit

    Change a to-do's text

    <id:int> <text:text>

  • /todo priority

    Change a to-do's priority

    <id:int> <level:high|normal|low>

  • /todo due

    Set or clear a due date

    <id:int> [when:str] [clear:bool]

  • /todo overdue

    Show to-dos that are past their due date

  • /todo remove

    Delete a to-do

    <id:int>

  • /todo clear-done

    Delete everything you have ticked off

  • /todo progress

    See how far through your list you are

Simulated trading

Trade made-up assets with play credits. Nothing here is real or financial advice

  • /trade prices

    Show current simulated prices

  • /trade chart

    Chart a simulated price for the last two days

    <asset:iron|copper|silver|gold|ruby|void>

  • /trade buy

    Buy a simulated asset

    <asset:iron|copper|silver|gold|ruby|void> <quantity:int>

  • /trade sell

    Sell a simulated asset

    <asset:iron|copper|silver|gold|ruby|void> <quantity:int>

  • /trade portfolio

    Show your holdings and their value

    [user:user]

  • /trade quote

    Show how much a trade would cost

    <asset:iron|copper|silver|gold|ruby|void> <quantity:int>

Trivia

Multiple-choice quizzes with buttons, typed questions, categories, streaks and scores

  • /trivia quiz

    Post a multiple-choice question. First correct answer scores

    [category:any|science|geography|history|tech|general]

  • /trivia ask

    Ask a typed question in this channel

  • /trivia answer

    Answer the typed question

    <answer:text>

  • /trivia skip

    Reveal the typed answer and move on

  • /trivia scores

    Show the trivia leaderboard

    [page:int]

  • /trivia rank

    Show someone's trivia record

    [user:user]

  • /trivia categories

    List quiz categories and how many questions each has

  • /trivia add

    Add your own typed question

    <question:str> <answer:text>

    Requires ManageGuild

  • /trivia remove

    Remove one of your server's questions

    <id:int>

    Requires ManageGuild

  • /trivia questions

    List your server's questions

    [page:int]

    Requires ManageGuild

Verification

Gate new members behind challenges, account age checks and a time limit

  • /verify setup

    Choose the verified role, the challenge, age gates and the time limit

    <role:role> [mode:button|math|word|multi] [steps:str] [unverified_role:role] [min_account_days:int] [age_action:deny|kick] [min_member_minutes:int] [kick_after_minutes:int] [max_attempts:int] [lockout_minutes:int] [log_channel:channel] [rules:text]

    Requires ManageGuild

  • /verify panel

    Post the verification button in a channel

    [channel:channel] [title:str] [text:text]

    Requires ManageGuild

  • /verify status

    Show verification settings and numbers

    Requires ManageGuild

  • /verify disable

    Turn verification off. Existing roles are left alone

    Requires ManageGuild

  • /verify manual

    Verify a member by hand

    <member:member>

    Requires ManageRoles

  • /verify revoke

    Remove a member's verified role. Any time limit starts again

    <member:member>

    Requires ManageRoles

  • /verify pending

    List members who have not verified, and when each joined

    [page:int]

    Requires ModerateMembers

  • /verify sweep

    Kick members who joined this long ago and still have not verified, with a preview

    <older_than:dur> [confirm:bool]

    Requires KickMembers

Voice rooms

Temporary voice channels people create by joining, and a role for being in voice

  • /voice setup

    Choose the channel people join to get their own room

    <channel:channel> [category:channel] [name_template:str]

    Requires ManageGuild

  • /voice off

    Stop creating temporary rooms

    Requires ManageGuild

  • /voice role

    Give people a role while they are in voice, or clear it

    [role:role]

    Requires ManageGuild

  • /voice rename

    Rename your temporary room

    <name:str>

  • /voice limit

    Set how many people can join your room. 0 means no limit

    <users:int>

  • /voice lock

    Stop or allow new people joining your room

    <locked:bool>

  • /voice list

    List temporary rooms

    Requires ManageChannels

  • /voice forget

    Remove a room from the list without deleting its channel

    <id:int>

    Requires ManageChannels

Webhooks

Manage this server's Discord webhooks. Webhook tokens are never shown

  • /webhook list

    List every webhook in the server

    [page:int]

    Requires ManageWebhooks

  • /webhook create

    Create a webhook. Use Discord's channel settings to copy its link

    <name:str> [channel:channel]

    Requires ManageWebhooks

  • /webhook delete

    Delete a webhook

    <id:id> <confirm:bool>

    Requires ManageWebhooks

  • /webhook rename

    Rename a webhook

    <id:id> <name:str>

    Requires ManageWebhooks

  • /webhook say

    Post through a webhook. Mentions are disabled

    <id:id> <text:text>

    Requires ManageWebhooks

  • /webhook audit

    List webhooks in a channel, and who owns them

    [channel:channel]

    Requires ManageWebhooks

Welcome and autorole

Greet new members in a channel or by DM, and give them roles automatically

  • /welcome set

    Turn on welcome messages. See placeholders for what you can use

    <channel:channel> [message:text]

    Requires ManageGuild

  • /welcome off

    Turn off welcome messages

    Requires ManageGuild

  • /welcome embed

    Show the welcome as an embed with an optional title, or as plain text

    <enabled:bool> [title:str]

    Requires ManageGuild

  • /welcome dm

    Send new members a private message. Leave the text out to stop

    [message:text]

    Requires ManageGuild

  • /welcome delete-after

    Remove welcome messages after a while. 0 keeps them

    [after:dur]

    Requires ManageGuild

  • /welcome test

    Run the full welcome for yourself, exactly as a new member would get it

    Requires ManageGuild

  • /welcome goodbye

    Turn on goodbye messages

    <channel:channel> [message:text]

    Requires ManageGuild

  • /welcome goodbye-off

    Turn off goodbye messages

    Requires ManageGuild

  • /welcome preview

    See your welcome, DM and goodbye messages as they will appear

    Requires ManageGuild

  • /welcome placeholders

    List the placeholders welcome messages can use

  • /welcome autorole-add

    Give a role to every new member, or to every new bot

    <role:role> [bots:bool]

    Requires ManageRoles

  • /welcome autorole-remove

    Stop giving a role to new members or bots

    <role:role>

    Requires ManageRoles

  • /welcome autorole-delay

    Wait before giving autoroles, for example until members pass screening

    [after:dur]

    Requires ManageRoles

  • /welcome autorole-list

    List autoroles