PaulCLI logoPaulCLI

Using it on Discord

Commands, buttons and staff actions.

Commands

ActionExampleWhat happens
Start/giveaway start prize:"Nitro" duration:1d winners:2 channel:#giveawaysCreates the database row, sends a legacy embed with a join button, stores the Discord message id and schedules the timer.
End early/giveaway end id:<giveawayId>Clears the timer, picks winners from current entries, edits the original message to ended, and announces winners.
Reroll/giveaway reroll id:<giveawayId>Picks a new random winner set from existing entries and announces the reroll.

Members enter by pressing the giveaway_join:<id> button. If they already entered, they receive an ephemeral reminder instead of a second entry. If the giveaway requires a role, the bot fetches the member and checks that role before creating the entry.

When the timer fires, PaulCLI shuffles the entrant user ids, takes up to winnersCount, stores the JSON winner list, edits the giveaway message, emits the giveaway end event, and posts a congratulations message when there is at least one winner.

Layout v2

Dashboard layout v2 uses Discord components with a container, text blocks, optional media gallery image, separator, custom join button and footer. Legacy uses a normal embed with the same prize, host, winners and requirements.