🪄 Pixie Docs
Overview Commands Blog Status Invite
Setup & Server

Server Setup

The general-purpose settings that don't belong to any one feature - prefix, cosmetics, welcome/leave messages, autorole, role links, new member pings, and word/emoji auto-replies.

Prefix

$prefix

Also /prefix show. Opens a panel: Change Main Prefix (needs Manage Guild), Add Extra Prefix and Remove Extra Prefix (need Administrator, up to 2 extra prefixes at once - every prefix works for every command). Text equivalents still work too: $prefix change <prefix>, $prefix add <prefix>, $prefix remove [prefix].

Cosmetics

Administrator
$customize

Also /customize. Changes how Pixie appears in this server only: nickname, bio, avatar, banner, and embed color - purely cosmetic.

Welcome & leave messages

Manage Guild
$welcomemessage
$leavemessage
$testwelcomes

Also $welcome/$leave (aliases), and /greetmessage welcome/ leave/testwelcomes. Each opens its own panel for the channel, message, and (when sending in an embed) a Set Image button for a direct image URL. Placeholders: <user>, <username>, <server>, <count>. $testwelcomes sends both right now using the current config, without waiting for an actual join/leave.

$welcomemessage setmsg [message]/$leavemessage setmsg [message] (prefix only) sets the message directly - paste plain text or a whole script in one command, no need to click through the panel at all. Omit the message to just view the current one; use reset to reset it. $welcomemessage preview/$leavemessage preview post a button that shows the current message privately (only you see it) when clicked, and $welcomemessage test/$leavemessage test send the real thing end-to-end in the configured channel - same idea as $testwelcomes above but one at a time instead of both together.

A few more placeholders reference who invited the new member, if Pixie was able to tell: <inviter_ping> pings them, <inviter_noping> shows the same real mention but doesn't notify them, and <inviter_invites_count> shows how many members they've invited in total (including this one). All three only work for an actual tracked invite link created by a real member - joins via the server's vanity URL, ones Discord doesn't give attribution for, or ones from an invite a bot created, show vanity in bold instead for any of them.

To only show a line at all when there's a real inviter, wrap it in [ifinvitedbyuser](...) - the text inside only appears for a tracked invite-link join and is skipped entirely otherwise (no "vanity" filler text left behind). [ifnotinvitedbyuser](...) is the opposite - only shows for a vanity/unknown/bot-invite join. Use both together to have a completely different message for each case. For example, setting the welcome message to:

Welcome <user> to <server>! [ifinvitedbyuser](They were invited by <inviter_noping>, who now has <inviter_invites_count> invites!)[ifnotinvitedbyuser](Glad you found us!)

posts "Welcome @NewPerson to Shikyo! They were invited by @SomeMember, who now has 7 invites!" when someone used a real invite link (without pinging SomeMember), and "Welcome @NewPerson to Shikyo! Glad you found us!" for a vanity-URL, untracked, or bot-created-invite join - each bracketed block only shows for its own case, never both, and never neither.

Autorole

Manage Roles
$autorole

Also $autoroles, /autorole. Panel with On/Off, Add Role, and Remove Role - supports multiple roles, all given out on every join.

Manage Roles
$rolelink add <trigger role> <linked role>
$rolelink remove <trigger role> <linked role>
$rolelink list

Also $rolelinks/$linkrole, /rolelink add/remove/list. Getting the trigger role auto-grants the linked role, and it stays enforced - removed manually, it's restored as long as a trigger role is still held; removing the last trigger removes it for good. Links can chain, up to 10 per trigger.

New member ping

Manage Guild
$newmemberping
$newmemberping <#channel>
$newmemberping add/remove <#channel>

Also $nmp, $poj. Pings new members in the configured channel(s) then immediately deletes the ping - just enough to trigger a notification without leaving clutter behind. A channel being added is what turns it on for that channel - no separate toggle. Running it with no arguments shows the current channels; running it with a channel toggles that channel on/off.

Auto responder & reactor

Manage Guild
$autoresponder add [--strict] <word> <response>
$autoreactor add <word> <emoji>
$autoresponder/$autoreactor remove/list

Auto-responder replies (as a real reply) whenever a word/phrase is said; --strict requires an exact match instead of matching anywhere in the message. Auto-reactor reacts with an emoji instead of replying. Adding a word that already exists updates it rather than duplicating it.

Other

$weekstart [day]

Needs Manage Guild. Sets which day "weekly" leaderboards/rewards reset on across chat XP, VC XP, and message rewards (default Monday, 00:00 UTC) - most servers never need to touch this.

Administrator
$resetserver
⚠️

Permanently wipes every bit of this server's data - settings, prefix, word filter, XP/leveling, message rewards, webhooks, auto-kick-bans, AFK status, all of it. Three separate confirmations (30s, then 20s, then 15s), and it cannot be undone once the last one goes through.