All non-channel messages will be routed to the bot channel you setup earlier.

Replying to users

Simply use the Discord “Reply” functionality, and the nickname of the user who sent the message you’re replying to will be auto-filled as a prefix e.g. nickname: ...

If the user has changed nicknames since the message you’re replying to, the bot will automatically fixup your reply with their new nickname.

If they’ve since left the channel, you’ll be sent a private message from the bot and your message to the channel will not be sent.

User commands

All user commands are prefixed with ! and can be sent from any DRC-enabled channel. Some will respond directly in the channel (private to you always!), while others will only respond in the Bot channel.

The exception is ~me & ~thinking, which is the classic /me command (and a cheeky variant of) but working around Discord’s slash command interface.

Only the shortest unique prefix is required, so for example !st is enough to invoke the !stats command.

Commands that require a network parameter also have this functionality, except for networks it needen’t even be a prefix: simply a unique substring of a network name will suffice.

For example: !ig l add foobar expands (with my configuration) to !ignore add foobar.

Send !help anywhere to get a user command listing, and !help [command] for further help with command (thought admitedly I haven’t wrriten a lot of those, so the source may still be your best “source” of documentation, pun definitely intended.)

Reaction-triggered commands

!whois, !ignore, !muted and !notes (to add the current message) can be triggered via reactions; refer to the allowedReactions object in messageReactionAdd.js for the full, current list of which emojis are supported as triggering reactions.

Additionally, some of the above commands are also available via context menus (right-click on a message, select “Apps”). More will be added!

Run commands on connect/join

!onConnect and !onJoin may be used for this functionality, the former applying to servers as a whole and the latter applying to a particular channel on a given server.


Enabled by default, all channels will be logged into ./logs/irc/[network]/[channel].

The !logs command has two subcommands that provide search (search) & retrevial (get) from the logs directly via the Discord interface.

(tip: this search can be shortend to begin !l l ..., as the first two terms can be abbreviated to the shortest unique substring)

The bot can also capture from channels directly into Redis with !capture, and may be configured to automatically do so upon mention or hilite.


This documentation is not comprehensive, at all! The source is your ultimate reference for all the features DRC supports.