Pardon the dust! This site is outdated, and will be updated shortly. - May 22, 2018

Utilibot - Moderation

Abstract

Utilibot is a fully-featured moderation bot, whose purpose is to make the task of server moderation easier, more effective, and to increase accountability on the part of the moderation team (making the audit log public is a great way to accomplish this). The bot possesses multiple message filters, designed to take moderation actions automatically, while erring on the side of caution (when in doubt, the user is innocent).

Stack

Commands

The bot possesses a multitude of commands, aimed at providing every kind of moderation functionality a server could ever want.

General Commands

Everyone has access to these commands, and are largely related to the bot itself.

!?url

!?commands

!?help <command (optional)>

Helper Commands

These commands are usable by Helpers, to perform non-destructive moderation of the server. This role must be assigned to using !?add helper <role ID> command.

!?mute <user mention> <reason (optional)>

!?unmute <user mention>

!?reason <case number> <reason>

!?getlog <user mention/id>

!?getcase <case number>

!?ping

Moderator Commands

These commands are used to directly moderate the server and its members. Requires the user to either possess the BanMembers permission, or have a role listed in the mod list. Moderators have access to all Helper commands as well.

!?ban <user mention> <reason (optional)>

!?kick <user mention> <reason (optional)>

!?purge <number of messages> <user mention (optional)>

!?stats

Administrator Commands

These commands are typically used to troubleshoot and setup the bot itself. Requires the user to either possess the ManageServer permission, or have a role listed in the admin list. Administrators have acess to all Moderator and Helper commands as well.

!?setup

!?config

!?listroles

!?add <list> <role id>

!?remove <list> <role id>

!?set mute <role id>

!?edit <item> <setting>

!?setannounce

!?setmodlog

!?showblacklist

!?setfulllog

!?deletecase <case number>

Usage

Setup

The bot works immediately upon joining the server, however there is ample customization available. By default, the bot determines command access by the user's permissions within the server. Administrators require ManageServer while moderators require BanMembers. However, you can override this behavior by adding role IDs to the admin, mod, and helper listings, with the !?add <list> <role id> command, detailed above.

Filters

The bot comes bundled with several filters, designed to delete otherwise unwanted messages. Every filter simply deletes the message by default, with the exception of the Profanity filter, which is disabled. List of filters:

Staff members are not subject to the filters by default, and you can exempt additional roles by running !?add exempt <role ID>.

The settings for every filter can be edited via the !?edit command, detailed above. Valid settings for filters are Off, Delete, Mute, and Kick

Mutes

Users can be muted, either automatically or via a command, which applies the designated Muted role to the user. It is up to the server staff to properly configure the role to deny typing privileges, as every server is set up differently.

Design Process