DawnBot docs

Dashboard

Getting started

  1. Add DawnBot from the dashboard (Add DawnBot to a server).
  2. In Server Settings → Roles, drag the DawnBot role above every role it should moderate or hand out. Discord bots can't touch roles above their own.
  3. Open the dashboard, log in with Discord and pick your server. Each module has its own tab. Change what you need and press Save.
  4. Type / in Discord to see every command.

The dashboard shows servers where you have Manage Server.

Permissions

Every command needs the matching Discord permission by default, e.g. /ban needs Ban Members. To change who can use which command, per role or per channel, go to Server Settings → Integrations → DawnBot.

Moderators can't act on someone whose top role is equal to or above their own, and nobody can moderate the server owner.

Greetings

Dashboard tab Greetings. Welcome message, DM to new members, leave message and ban message. Leave any of them empty to turn it off.

PlaceholderBecomes
{user} / {mention}Mentions the member
{username}Their username
{id}Their user ID
{server}Server name
{count}Member count

Testing: the Send test button on the dashboard, or /testgreet, posts all three messages with you as the member.

Roles

  • Autoroles: roles every new member gets.
  • Sticky roles: members who leave and rejoin get their roles back.
  • Role menus: button menus built on the dashboard. Modes: toggle (click to get, again to drop), unique (one role per menu), verify (get only), drop (remove only).
  • /role add|remove gives or takes a role by hand.

Automod

Deletes messages that break a rule, then optionally warns, times out (10 min), kicks or bans. Members with Manage Messages, ignored roles and ignored channels are skipped.

  • Discord invites
  • Links (with an allowlist of domains)
  • Banned words (whole words, any case)
  • Mass mentions
  • Too many caps
  • Message spam (messages per 5 seconds)

Warnings from automod count towards auto-punishment (Moderation tab).

Moderation

Every action is saved as a numbered case and posted to the mod log. Banned, kicked and warned users get a DM with the reason.

CommandWhat it does
/ban user [reason] [duration] [delete_days]Ban. With a duration (e.g. 7d) it's a tempban that lifts itself.
/softban user [reason]Ban + unban: removes them and a day of their messages.
/unban user [reason]Unban by name or ID, with suggestions from the ban list.
/kick, /timeout user duration, /untimeoutKick, time out (max 28 days), remove a timeout.
/warn user reasonWarn. Auto-punish after N warnings (dashboard).
/note user textPrivate note on a user's record.
/modlogs user, /case n, /reason n text, /delcase nView, edit or delete cases.
/purge amount [user] [contains] [bots]Bulk delete up to 100 recent messages (not older than 14 days).
/slowmode seconds, /lock, /unlockChannel controls.
/nick user [nickname]Change or reset a nickname.

Logging

Set a default log channel, and optionally separate channels per category. Empty categories use the default.

  • Messages: edits, deletes, purges
  • Members: role changes, nicknames, timeouts, bans, unbans
  • Joins: joins (with account age) and leaves
  • Voice: join, leave, move
  • Server: channels and roles created or deleted

The mod log (Moderation tab) gets every case.

Tags & triggers

Tags are custom commands: /tag show|create|edit|delete|list, or type the prefix + name in chat (default ?, e.g. ?rules). Placeholders: {user} {server} {channel} {args}. Anyone can create tags; only the owner or a mod can edit them.

Triggers are auto-replies set on the dashboard. The bot replies when a message contains, contains as a whole word, is exactly or starts with your text. Up to 50 per server.

Tags and triggers never ping @everyone or roles.

Starboard

When a message gets enough reactions with the starboard emoji (default ⭐, 3 reactions), it's reposted in the starboard channel, and the count updates live.

Suggestions

/suggest text posts a numbered suggestion with 👍/👎 in the suggestions channel. Staff answer with /suggestion id approve|deny|consider [reason], which updates the post and DMs the author.

Embeds

The dashboard's Embeds tab builds an embed with title, description, color, image, thumbnail, author and footer, with a live preview, and posts it to any channel. Images are URLs.

Announcements

The Announcements tab reposts a message every 30 minutes up to every week, as an embed in your embed colour. If nobody has chatted since the last one, it skips a turn. Send now posts one straight away.

Server status

Set a Status channel and DawnBot keeps one message there, updated every 2 minutes, showing each PufferPanel server as online or offline with CPU and RAM. Add a Minecraft address for the player count. Roles you pick get pinged when a server goes offline. Needs PUFFERPANEL_URL, PUFFERPANEL_CLIENT_ID and PUFFERPANEL_CLIENT_SECRET in .env.

Store

The Minecraft store lives at /store/ (and on any store. address pointed at the bot). Its Join the community and Discord buttons go to /invite, which sends people to a permanent invite DawnBot creates for the channel you pick under Store in the dashboard. Pick it in one server only. Change the channel any time; the buttons follow within the hour. DawnBot needs the Create Invite permission there.

Tickets

Run /ticketpanel in a channel to post an Open a ticket button. Each ticket is a private channel next to the panel that only the member, your staff roles and DawnBot can see. Close it with the button or /ticket close; a .txt transcript goes to the Ticket log and the channel is deleted. Staff can use /ticket add and /ticket remove to bring people in or out. Members can also use /ticket open. DawnBot needs Manage Channels and Manage Roles.

AI

Off until you turn it on in the AI tab. Uses Google Gemini's free tier by default (GEMINI_API_KEY); any OpenAI-compatible provider works with AI_BASE_URL, AI_API_KEY and AI_MODEL. Text sent to the AI goes to that provider.

CommandWhat it does
/ask questionAnswers using your Server info text and tags
@DawnBot …Same, when Answer @mentions is on
/summarize [messages]Bullet summary of recent chat, only you see it
/translate text [to]Translate (default English)
Message menu → Apps → Translate to English / Explain thisPrivate translation or explanation of a message

Limits: a daily cap per server (default 200) and a cooldown per member (default 20s). Pick channels to restrict where AI works.

Utilities

CommandWhat it does
/remind in textReminder, e.g. /remind 2h stretch
/highlight add|remove|listDM when someone says a word you watch
/userinfo, /serverinfo, /roleinfo, /avatarInfo cards
/aboutAbout DawnBot

FAQ

"My role is too low" means DawnBot's role is below the target's top role. Drag DawnBot higher in Server Settings → Roles.

A command doesn't show up because you lack the permission it needs, or an admin restricted it in Integrations.

Automod ignores me because members with Manage Messages are always skipped. Test with a normal account.