Commands

Plugin name: commands

Plugin name: commands

The commands plugin contains settings for overall HepBoat commands and controls the usage of commands by levels, roles, and channels.

Configuration Options

OptionDescriptionTypeDefault
prefixThe prefix to use for HepBoat commands in the server.str''
overridesA mapping of commands and override configurations.dictempty
lockdownA mapping of commands and channel lockdown configurations.dictempty
dm_deniedDM a user when their command is denied.boolTrue
local_blacklistBlacklisted users that HepBoat will ignore all commands from.list(snowflake)empty
exclude_msg_userUsers that will not be logged by HepBoat.list(snowflake)empty
timezoneTimezone to use for localized timestamps in command outputs. Supported timezonesstrUTC

Overrides Configuration Options

Overrides are useful for overriding the default level permissions on commands. Level overrides are checked before any channel lockdowns for commands.

OptionDescriptionTypeDefault
nameA command name (default, custom, or short tag)stringempty
groupA command group namestringempty
plugin.nameA plugin namestringempty
outOutput optionsdictempty
out → levelMinimum level (inclusive) to use commandsint0
out → disabledFor command names only. Disable the command entirely.boolFalse

Command group names include commands that start with a common command. e.g. group: tags would include tags such as !tags add and !tags edit.

Plugin names include commands that are located under a certain plugin. e.g. plugin.name: utilities would include all its commands such as !bunny and !emoji. Please see individual plugin documentation for specific plugin names.

The hierarchy of overrides is

1. name
2. group
3. plugin.name

meaning that the overrides for a specific command name will override the overrides for a command group, etc.

Special Overrides Command Names

Command NameDescription
cc-usrUsers that can trigger custom command commands.
cc-usr-allowed-rolesAllows roles to run custom commands anywhere regardless of other override or lockdown settings.
tags-usrUsers that can trigger tag calls.
tags-usr-allowed-rolesAllows roles to run tags anywhere regardless of other override or lockdown settings.

The hierarchy of overrides for custom command calls for example would be

1. cc-usr-allowed-roles
2. cc.name
3. cc-usr

meaning that the overrides for a specific custom command trigger will override the overrides for cc-usr.

Example configuration setup:

commands:
  overrides:
    - name: tags-usr
      out:
        level: 10
    - name: tags-usr-allowed-roles
      out:
        roles:
          - 9872389732498023409
    - name: cc-usr
      out:
        level: 60
    - name: tags-cc-allowed-roles
      out:
        roles:
          - 9872389732498023409

Lockdown Configuration Options

Lockdowns are useful for hardening commands to only work in certain channels, categories, and by certain roles. Lockdown configurations work together with default command levels and overrides configurations.

OptionDescriptionTypeDefault
nameA command name (default, custom, or short tag)stringempty
groupA command groupstringempty
plugin.nameA plugin namestringempty
outOutput optionsdictempty
out → channelsWhitelisted channelslist(snowflake)empty
out → categoryWhitelisted categorieslist(snowflake)empty
out → rolesWhitelisted roleslist(snowflake)empty
out → exclude_channelsBlacklisted channelslist(snowflake)empty
out → exclude_categoryBlacklisted channel categorieslist(snowflake)empty
out → exclude_rolesBlacklisted roleslist(snowflake)empty

Special Lockdown Command Names

Command NameDescription
cc-usrUsers that can trigger custom command commands.
tags-usrUsers that can trigger tag calls.

Example configuration

commands:
  prefix: '!'
  overrides:
    - name: tempmute
      out:
        level: 40
    - name: mute
      out:
        level: 40
    - group: role
      out:
        level: 60
    lockdown:
    - name: info
      out:
        channels:
          - 510415911560282132  # Channel ID
          - 511870279157284874  # Channel ID
    - group: tags
      out:
        channels:
          - 510415911560282132  # Channel ID
          - 511870279157284874  # Channel ID
        category:
          - 32498723498049874  # Category ID
        roles:
          - 9872389732498023409  # Role ID
    - plugin.name: admin
      out:
        channels:
          - 510415911560282132  # Channel ID
          - 511870279157284874  # Channel ID
  dm_denied: true
  local_blacklist:
    - 132256368353607681  # User ID
    - 324841099090853888  # User ID