Panel

Panel lets you build a message with buttons that members can click to manage themselves - starting with self-assignable roles (“role claiming”), with room for other button types later.

What It Does

  • Builds panels (title, description, accent color) with an interactive, ephemeral builder UI
  • Each panel button is stored with a “type” - currently only role_toggle is implemented: clicking it adds the role if the member doesn’t have it, removes it if they do
  • Panels survive bot restarts - buttons keep working without needing to be resent
  • Guild-wide, per-member click cooldown to stop rapid toggle-spam
  • Guild-wide Click Blacklist - roles that can’t use any panel’s buttons at all
  • Separate Manager Roles / Manager Blacklist for who can create, edit, send, or delete panels

Setup

  1. Run /panel create and fill in a title, description, and accent color.
  2. In the builder that opens, click Add Role Button to attach a role, label, emoji, and button color to a new button. Repeat for each role you want offered (up to 25 per panel).
  3. Run the command again in the channel you want the panel posted in, or use /panel edit <panel_id> there, then click Send to Channel.
  4. Optionally, open configuration:
/panel config
  1. Set these values:
    • Manager Roles: who else (besides Administrators) can manage panels
    • Manager Blacklist: roles explicitly denied panel management, overrides Manager Roles
    • Click Blacklist: roles that can’t use role-toggle buttons on any panel here
    • Click Cooldown: seconds between role-toggle clicks per member (0 to disable)
    • Enabled: turn the whole system on or off

Panels

A panel’s buttons are stored as a small list, each with a type field. role_toggle is the only type implemented right now (role_id, label, emoji, button color). This is intentionally left open so a future button type - e.g. a poll/opinion vote - could be added without needing to change how existing panels are stored.

Commands

Command Purpose Access
/panel help Show setup steps and command reference Guild members with app command access
/panel config Open Panel config UI Administrator
/panel create Create a new panel and open its builder Manager Roles
/panel edit <panel_id> Reopen an existing panel’s builder Manager Roles
/panel list List this server’s panels and their IDs Manager Roles
/panel delete <panel_id> Delete a panel and its live message Manager Roles

Notes

  • Manager Blacklist always overrides Manager Roles for panel management; Administrators can always manage panels regardless of either list.
  • The Click Blacklist only affects clicking buttons - it doesn’t affect who can manage panels.
  • If a panel’s live message is deleted, Panel notices and marks it as not-sent; use the builder’s Send/Resend button to repost it.
  • If a button’s role has since been deleted, clicking it tells the member to contact a server admin instead of erroring silently.