Skip to content

Automation

Auto-line, auto-reactions, auto-replies and keyword roles: rules that answer messages in your server.

An automation is a rule of the form "when a message like this arrives here, do that": a trigger, conditions that narrow where and for whom it runs, and actions that run in order. Auto-line, auto-reaction, auto-reply and role on keyword are templates that fill in the same kind of rule, and everything they set stays editable.

Where to set it up

The Automation page of the dashboard is the full editor: templates, every condition and action, the run order, the module switch, the log channel and a test box. In Discord, /automation lists, switches, deletes and tests automations, and quick-creates the three simplest templates. Every subcommand needs Manage Server. Epix AI can also list, test, create and switch automations.

SubcommandWhat it does
/automation listA panel of every automation: pick one to see it, turn it on or off, or delete it (with a second click to confirm). Only you can use it, and it closes after about 15 minutes.
/automation toggle rule [enabled]Turns one automation on or off. Without enabled, it flips the current state.
/automation delete ruleDeletes one automation.
/automation test textLists the automations that would answer that text in this channel, and what each would do. Nothing is sent and no cooldown is used up.
/automation autoline channel [image] [text]Creates an auto-line. Attach an image, or give a text line.
/automation autoreact channel emojis [attachments_only]Creates an auto-reaction with up to 5 emojis. attachments_only limits it to posts with a file or image.
/automation autoreply mode trigger reply [channel]Creates an auto-reply. Separate several trigger words with |. Without a channel, it answers in every channel.
/automation settings [enabled] [channel] [clear_log]Switches the whole module on or off and sets or clears the log channel, then opens a small settings panel.
/automation autoline channel:#chat text:━━━━━━━━
/automation autoreply mode:exact trigger:=== reply:━━━━━━━━
/automation autoreply mode:contains trigger:hello|hi reply:Welcome {member.name}!
The rule option autocompletes. Regex cannot be chosen from the command; use the dashboard.

Templates

The dashboard offers six templates. Each opens the editor already filled in, so you only add the channels, role or image.

TemplateWhat it buildsWhat it starts with
Auto-linePosts your separator after each burst of messages.Any message, commands included; a 2-second wait.
Auto-reactionReacts to every message in the chosen channels.Any message; Add reactions.
Auto-replyAnswers messages that match your words.Contains; Reply; 10-second cooldown per member.
SuggestionsAdds vote reactions to each post. Add a Send to a channel action to copy posts to staff.Any message; two reactions from your theme.
Verify by keywordMembers type a word, confirm, and get a role. Their message is deleted.Is exactly "verify"; Member confirms; Delete the message.
Role on keywordA keyword gives or takes a role.Is exactly; flips the role; Member confirms; 5-second cooldown per member.

Triggers

  • Any message: every message in the rule's channels. A rule with this trigger must name at least one channel; it cannot run server-wide.
  • The text matches: the message is compared with up to 10 trigger words (50 with Premium), each up to 200 characters. Only the first 2,000 characters of a message are compared.
MatchFires when
ContainsA trigger word appears anywhere in the message.
Is exactlyThe whole message is the trigger word, for example ===.
Starts withThe message begins with a trigger word.
Ends withThe message ends with a trigger word.
Whole wordA trigger word appears on its own, not inside a longer word. Word edges work in any script, Arabic included.
Regex (Premium)A regular expression matches.

Matching ignores upper and lower case unless you switch on exact case. It also ignores Arabic marks and letter forms by default: tashkeel and tatweel are removed, أ إ آ ٱ read as ا, ؤ as و, ئ and ى as ي, and ة as ه. So السلام also matches ألسَّـلام. Runs of spaces count as one space.

Conditions

ConditionDefaultNotes
Only in (channels)EmptyUp to 50. Empty means every channel (text triggers only). A category covers its channels, and a channel its threads.
Never in (channels)EmptyUp to 50. An exclusion wins over an inclusion.
Only members with one of (roles)EmptyUp to 25. Empty means no restriction.
Never members with (roles)EmptyUp to 25.
Ignore other botsOnThe bot's own messages never trigger anything, whatever this says.
Ignore webhooksOn
Ignore bot commandsOnMessages that are commands with your server's prefix do not count. Auto-line turns this off.
AttachmentsAnyOr only messages with a file, or only messages without one.
Shortest and longest messageNo limitUp to 2,000 characters.
Account at leastAny ageMinimum Discord account age, up to 365 days.

Actions

Actions run from top to bottom, and one that fails never stops the next. A rule holds up to 5 actions (10 with Premium), but at most one Auto-line and one Delete the message.

ActionWhat it doesThe bot needs
Add reactionsAdds up to 5 emojis: Unicode, custom, or theme emojis that follow your server's theme.View Channel, Read Message History, Add Reactions
ReplyReplies to the message with text or a saved message from the Message Builder. Can ping the author, and can delete itself after up to 10 minutes.Send Messages
Send to a channelPosts text or a saved message in another channel.Send Messages in that channel
Auto-linePosts one separator after each burst of messages (see below).Send Messages, plus Attach Files for an uploaded image
Give or take a roleGives, takes away, or flips a role, with an optional confirmation step (see below).Manage Roles, with the role below the bot's highest role
Delete the messageDeletes the message that triggered the rule, straight away or after up to 10 minutes.Manage Messages
Direct messageSends the author a DM. Best effort: members with closed DMs are skipped without error.Nothing extra

Placeholders

Text in Reply, Send to a channel, Direct message and a text Auto-line can use {member.name}, {member.mention}, {member.id}, {member.avatar}, {member.banner}, {guild.name}, {guild.avatar}, {guild.banner}, {channel}, {channel.name}, {message.content}, {message.link}, {date.now}, {date.now.unix} and {date.now.iso}. {message.content} is cut to 1,000 characters, and the finished text to 2,000.

Auto-line

An auto-line posts one separator after each burst of messages, not one per message. Every new message in the channel restarts a short wait (2 seconds by default, anywhere from 0 to 60 seconds), and the line goes up once the channel has been quiet for that long. All auto-line rules in a channel share the same wait, so two rules never stack two lines.

The line is an image or text. An uploaded image (PNG, JPG, GIF or WebP, up to 1 MB) is stored by Epix rather than linked, so it keeps working after Discord's attachment links expire, and it is posted on its own with no embed around it. A server can use 1 uploaded line image, or 10 with Premium; an image no rule uses is deleted.

A role action changes roles through the same engine as Reaction roles, so the same safety rules apply: the role must sit below the bot's highest role, and a role carrying Administrator, Manage Server, Manage Roles or Manage Webhooks is never handed out this way. Each role action picks one of four confirmation steps.

ConfirmationWhat happens
No confirmationThe role changes immediately, and a short reply saying so is removed after about 8 seconds.
Member confirmsThe bot replies with Confirm and Cancel buttons that only the author can press. The prompt is deleted after 60 seconds, and a click after that is refused as expired.
Staff approves (Premium)A request with Approve and Deny goes to a staff channel. Members with Manage Roles or Administrator, or one of up to 10 staff roles you pick, decide. A request waits up to 7 days, one per member per automation, and the member is sent the decision by DM if their DMs are open.
Member confirms, then staff (Premium)Both steps: the member confirms first, then the request goes to staff.

With Premium, a role given by an automation can also be time-limited, from 1 minute to 90 days. It comes off on its own when the time is up.

Order, cooldowns and limits

  • Run order: automations are checked in the order shown on the dashboard. New ones go to the end; the arrows on each card move it. Stop other automations makes the ones below a rule skip any message it answered.
  • Cooldowns: each rule can have a cooldown per member, per channel and for the whole server, each up to 24 hours. A rule fires only when all of its cooldowns are clear. Cooldowns are held in memory, so a bot restart clears them.
  • Channel budget: in any one channel, automations send at most 5 messages and add at most 10 reactions every 5 seconds. Anything over that is dropped, not queued, so a spam burst does not become a minute of late replies.
  • Changes made on the dashboard or by command apply straight away.

Free and Premium

FreePremium
Automations per server15150
Actions per automation510
Trigger words per automation1050
Uploaded line images per server110
Regex triggersNoYes
Staff approval for rolesNoYes
Time-limited rolesNoYes

The automation count includes automations that are switched off. If Premium ends, nothing is deleted: automations beyond the free allowance stop running, starting with the latest in the run order; regex automations stop; role actions that need staff approval do not run; and time-limited roles are given permanently. Everything resumes when Premium returns.

Auto-pause, the module switch and the log channel

If the bot is refused a permission for the same automation 5 times in a row, it pauses that automation instead of failing on every message. The dashboard and /automation list show it as paused with the reason, and the dashboard names the missing permission. Fix the permission, then turn it back on; saving an edit also clears the pause.

The module switch, in /automation settings or on the dashboard, stops every automation at once without deleting any. A log channel, set in the same places, receives a line for every role change an automation attempts, with its result, and for every auto-pause. With no log channel, nothing is logged.

Troubleshooting

  • Nothing happens: run /automation test with the same text in the same channel. If nothing would answer, check the trigger words, channels and role conditions. If something would, check its cooldowns and the bot's permissions in that channel.
  • The dashboard will not save an Any message rule: pick at least one channel under Only in.
  • A role is never given: the role is above the bot's highest role, carries one of the four blocked permissions, or the rule is paused. The log channel shows each attempt and its result.