Docs/Plugins/Utilities
Utilities
Info commands, reminders, channel rules, sticky messages, auto-clean, announcements, and the fun commands.
The junk drawer, in the best sense: everything useful that is not moderation policy. Enable with an empty block and everything below is available:
plugins:
utilities: {}
Setup checklist
- Add
plugins.utilities: {}for info, reminder, announcement, and fun commands. - For personal todo lists, add
todo: { enabled: true, max_items: 50 }. - For announcements, add each allowed destination under
announce; the bot needs Send Messages and Embed Links there. - For channel rules, open Setup > Channel Rules and configure one private test channel first. HepBoat needs Manage Messages for enforcement.
- If using sticky messages, choose an interval and confirm the bot can post and remove its earlier sticky copy. If using auto-clean, choose a timeout no longer than 24 hours.
- Post one allowed message and one deliberately disallowed message as a regular member. Confirm enforcement and the Censored message mod log entry.
- Wait through one sticky or auto-clean cycle before applying the settings to a busy channel.
Example channel setup:
plugins:
utilities:
todo: { enabled: true, max_items: 50 }
announce:
674638168474915242:
webhook_color: 5793266
channels:
701234567890123456:
allow_images: true
allow_text: false
allow_misc_files: false
need_caption: true
pinned_message: "Post one image with a useful caption."
pinned_message_interval: 10
auto_clean:
709876543210987654:
timeout: 3600
include_bots: false
Info and lookup
info (user cards - staff also see infractions and voice activity inline;
for the button-driven moderation panel see minfo on the
Infractions page), avatar, server, channel, seen,
search, emoji info and jumbo, plus random coin / random number.
The info card also shows a member's HepBoat badges - platform-wide
titles like supporter tiers, staff and community badges. Badges follow the
member everywhere HepBoat is, and their icons appear on rank cards too.
Reminders
remind / r add schedules a reminder ("in 2h", "1d"...) that pings you
back in-channel, with a note of how long ago you set it. Reminders are stored
durably, so restarts do not eat them. r clear <number> removes one (numbers
come from r list); clearing everything requires the explicit r clear all,
so a typo can never wipe your reminders.
Todo lists
Enable with todo: {} under plugins.utilities and every member gets a
personal todo list - private to them, in every sense. todo <task> adds to
it (the prefix confirmation never repeats the task back, and the slash
version is entirely invisible to everyone else), and the /todos
slash command opens the list itself: an ephemeral view only you can see,
with a solve button next to each task and page buttons when the list grows.
Completing a task tells you what you finished, how long it sat, and how many
remain - and clearing the last one gets a little celebration.
Your list follows you across every server that has the feature enabled -
it is one list per member, not one per server. max_items (default 50)
caps how many open tasks a member can pile up.
Channel rules
Per-channel content policy, configured under channels (or with the
dashboard's Setup → Channel Rules page):
- restrict a channel to text / images / files only, with an optional caption requirement and roles exempted from all of it;
- require text to match a regex pattern (
whitelist_text_regex) - anything that does not match the pattern is removed, which is how you build a suggestions-only or links-only channel; - sticky messages that follow the bottom of a busy channel;
- auto-clean timers that delete messages after a set age. Bot messages
(including the bot's own replies) are skipped by default; turn on
include_bots(the "Also delete bot messages" toggle on the Channel Rules page) to zap everything. A channel's active sticky message is never auto-cleaned either way.
Violations can warn or mute through the normal infractions machinery, and every restriction delete shows up in your modlog as a Censored message entry naming the rule it broke. Auto-clean sweeps log their own Auto-clean sweep modlog action instead of a plain deletion, so an automatic cleanup never reads like a moderator's purge.
Announcements
The announce block lists the channels !announce {channel} {message} may
post an embed into, plus webhook_color for that embed's color. There is no
scheduling - it is an allowlist for the command.
Fun
The animal pictures (cat, dog, fox, duck, bunny, shibe, bird,
floof), pizza, and a handful of in-jokes the community would riot over
losing. Yes, canadagoose plays the video.
Troubleshooting
- Todo commands exist but the list is unavailable: add the
todoblock; the empty utilities block alone does not enable personal lists. - Channel restrictions log but do not delete: check Manage Messages and ensure
the test role is not in
role_whitelist. - A sticky duplicates: the bot must be able to delete its previous copy and read channel history.
- Auto-clean ignores bot replies:
include_botsdefaults to false. The active sticky is always protected. - Announce refuses a channel: destinations must be listed under
announce, and the bot needs posting permissions there.
Commands
Arguments in {curly braces} are required. Arguments in [square brackets] are optional.
| Command | What it does |
|---|---|
/ping |
Ping the bot - replies with shard latency. |
/info [user] |
Show a user's account + member info card. Mod+ also gets recent infractions inline. |
/avatar [user] |
Show a user's avatar at full size. |
/server [guild_id] |
Show this server's info card (or another guild by id). |
/channel [channel_id] |
Show a channel's id, type, topic, and creation date. |
/jumbo {emoji} |
Render an emoji at full size. |
/emoji {emoji} |
Show metadata about an emoji. |
/seen {user} |
Show when a user last sent a message in this guild. |
/search {query} |
Search known users by id, mention, or username fragment (mod). |
/announce {channel} {message} |
Post an announcement embed to a configured announce channel (admin). |
/remind {duration} {content} |
Set a personal reminder for some duration in the future. |
/r add {duration} {content} |
Add a personal reminder (alias for remind). |
/r list |
List your pending reminders, numbered. |
/r clear [reminder] |
Cancel one of your pending reminders by its number from r list. |
/todo {task} |
Add a task to your private todo list. |
/todos |
See and manage your private todo list (ephemeral, with solve buttons). |
/random coin |
Flip a coin. |
/random number [end] [start] |
Pick a random integer in a range (defaults to 1–100). |
/bird |
Random birb image. |
/cat |
Random cat image. |
/dog |
Random dog image. |
/fox |
Random fox image. |
/duck |
Random duck image. |
/bunny |
Random bunny image. |
/shibe |
Random shibe. |
/floof |
Random floof - picks one of cat/dog/bunny/bird/fox. |
/blep |
Lily's blep. |
/lily |
Lily. |
/canadagoose |
Canada goose. |
/pizza |
Order a virtual pizza (10s cook time). |
/pizzacredit |
Credits for the Pizza Plugin. |