[ ["name" => "help", "usage" => "/help [command]", "description" => "List all commands or get details on a specific one."], ["name" => "ping", "usage" => "/ping", "description" => "Check Pearl Bot's response time."], ["name" => "panel", "usage" => "/panel", "description" => "Get a link to the web dashboard.", "aliases" => ["dash","dashboard"]], ["name" => "commands", "usage" => "/commands", "description" => "Get a link to the full commands list on the website.", "aliases" => ["cmds","cmdlist"]], ["name" => "setprefix", "usage" => "/setprefix ", "description" => "Change the bot command prefix.", "permission" => "Admin"], ["name" => "verifysetup", "usage" => "/verifysetup", "description" => "Posts the verification embed in this channel (or use the dashboard's Verification tab instead).", "permission" => "Admin"], ], "Moderation" => [ ["name" => "kick", "usage" => "/kick @user [reason]", "description" => "Kick a member from the server.", "permission" => "Kick Members"], ["name" => "ban", "usage" => "/ban @user [reason]", "description" => "Permanently ban a member.", "permission" => "Ban Members"], ["name" => "tempban", "usage" => "/tempban @user <30m/12h/7d/2w/1mo> [reason]", "description" => "Temporarily ban a member (max 1 year). They are unbanned automatically; manage active temp bans in the dashboard.", "permission" => "Ban Members"], ["name" => "unban", "usage" => "/unban ", "description" => "Unban a user.", "permission" => "Ban Members"], ["name" => "ipban", "usage" => "/ipban @user [reason]", "description" => "Bans a member AND their last known IP (from verification), so they can't rejoin on an alt.", "permission" => "Admin"], ["name" => "ipunban", "usage" => "/ipunban ", "description" => "Removes an IP ban.", "permission" => "Admin"], ["name" => "ipbanlist", "usage" => "/ipbanlist", "description" => "Lists all IP bans on this server.", "permission" => "Admin"], ["name" => "timeout", "usage" => "/timeout @user <10m/2h/1d> [reason]","description" => "Temporarily mute a member.", "aliases" => ["mute"], "permission" => "Admin"], ["name" => "untimeout", "usage" => "/untimeout @user", "description" => "Remove a timeout.", "aliases" => ["unmute"], "permission" => "Admin"], ["name" => "warn", "usage" => "/warn @user [reason]", "description" => "Warn a member.", "permission" => "Kick Members"], ["name" => "warnings", "usage" => "/warnings @user", "description" => "View warnings for a user.", "aliases" => ["warns"], "permission" => "Kick Members"], ["name" => "clearwarnings", "usage" => "/clearwarnings @user", "description" => "Clear all warnings for a user.", "permission" => "Admin"], ["name" => "history", "usage" => "/history @user", "description" => "View moderation history.", "permission" => "Kick Members"], ["name" => "purge", "usage" => "/purge <1-100>", "description" => "Delete recent messages in bulk.", "aliases" => ["clear"], "permission" => "Admin"], ["name" => "lock", "usage" => "/lock", "description" => "Prevent members from sending messages.", "permission" => "Manage Channels"], ["name" => "unlock", "usage" => "/unlock", "description" => "Re-allow members to send messages.", "permission" => "Manage Channels"], ["name" => "modlogchannel", "usage" => "/modlogchannel", "description" => "Set this channel as the mod log.", "aliases" => ["setmodlog"], "permission" => "Admin"], ], "AutoMod" => [ ["name" => "automod", "usage" => "/automod on|off|status|toggle |set ", "description" => "Configure AutoMod rules.", "permission" => "Admin"], ["name" => "automodreset", "usage" => "/automodreset @user [category|all]", "description" => "Reset a member's AutoMod violation count — pass one category (e.g. swear, badlink, tracking, botcmd) or 'all' to reset every category at once.", "aliases" => ["amreset"], "permission" => "Admin"], ["name" => "raid", "usage" => "/raid on [minutes]|off|status", "description" => "Manually start or stop raid mode (Anti-Raid), or check its status. Anti-Raid is configured in the dashboard under AutoMod.", "permission" => "Admin"], ["name" => "auditlogdebug", "usage" => "/auditlogdebug", "description" => "Admin debug tool: shows the newest audit-log entries as the bot receives them and how Anti-Nuke reads them.", "permission" => "Admin"], ], "Tickets" => [ ["name" => "ticketsetup", "usage" => "/ticketsetup", "description" => "Post the ticket panel button in this channel.", "permission" => "Admin"], ["name" => "ticketsupportrole","usage" => "/ticketsupportrole ","description" => "Set the support role for tickets.", "permission" => "Admin"], ["name" => "ticket", "usage" => "/ticket", "description" => "Open a new support ticket (posts a button that opens the ticket form)."], ["name" => "claim", "usage" => "/claim", "description" => "Claim a ticket (support staff only)."], ["name" => "close", "usage" => "/close [reason]", "description" => "Close the current ticket."], ], "Ideas" => [ ["name" => "ideasetup", "usage" => "/ideasetup", "description" => "Post the idea submission panel button in this channel.", "permission" => "Admin"], ["name" => "ideasretrofit", "usage" => "/ideasretrofit", "description" => "Add Approve/Reject/Complete buttons to ideas posted before this feature existed.", "permission" => "Admin"], ], "Forms" => [ ["name" => "formpanel", "usage" => "/formpanel
", "description" => "Post the panel button of a form in this channel.", "permission" => "Admin", "aliases" => ["formsetup"]], ["name" => "forms", "usage" => "/forms", "description" => "List this server's forms and their IDs.", "permission" => "Admin"], ], "Leveling" => [ ["name" => "level", "usage" => "/level [@user]", "description" => "Show your (or another member's) level card.", "aliases" => ["rank"]], ["name" => "leaderboard", "usage" => "/leaderboard", "description" => "Show the server's top 10 levels.", "aliases" => ["levels","top"]], ["name" => "setlevel", "usage" => "/setlevel @user ", "description" => "Set a member's level directly.", "permission" => "Admin"], ["name" => "levelrole", "usage" => "/levelrole ","description" => "Grant a role automatically when a member reaches a level.", "permission" => "Admin"], ["name" => "removelevelrole", "usage" => "/removelevelrole ", "description" => "Remove a level-role reward.", "permission" => "Admin"], ["name" => "levelroles", "usage" => "/levelroles", "description" => "List all configured level-role rewards.", "permission" => "Admin"], ], "Polls" => [ ["name" => "poll", "usage" => '/poll "Question" Option1 | Option2', "description" => "Create a poll with voting buttons."], ["name" => "closepoll", "usage" => "/closepoll (reply to poll)", "description" => "Close a poll and show final results."], ], // "Global Chat" category disabled along with the rest of Global Chat — // was: [["name" => "globalchatemoji", "usage" => "/globalchatemoji {emoji}", "description" => "Set this server's emoji shown in Global Chat messages.", "aliases" => ["gcemoji"], "permission" => "Admin"]] "Roles" => [ ["name" => "setautorole","usage" => "/setautorole ", "description" => "Auto-assign a role to new members.", "permission" => "Admin"], ["name" => "addrole", "usage" => "/addrole @user ", "description" => "Give a role to a member.", "permission" => "Manage Roles"], ["name" => "removerole", "usage" => "/removerole @user ", "description" => "Remove a role from a member.", "permission" => "Manage Roles"], ["name" => "rolemenu", "usage" => "/rolemenu", "description" => "Deprecated — use the dashboard's Embeds + Reaction Roles tabs instead.", "permission" => "Manage Roles"], ], "Welcome" => [ ["name" => "setwelcome", "usage" => "/setwelcome [message]", "description" => "Set the welcome message. Variables: {user} {username} {server} {membercount} {tag}", "permission" => "Admin"], ["name" => "setgoodbye", "usage" => "/setgoodbye [message]", "description" => "Set the goodbye message.", "permission" => "Admin"], ["name" => "testmessage", "usage" => "/testmessage ", "description" => "Preview your configured Welcome or Goodbye message using your own account, without a real join/leave.", "permission" => "Admin"], ], "Giveaway" => [ ["name" => "gcreate", "usage" => "/gcreate [desc]", "description" => "Create a giveaway. Duration: 10m, 2h, 1d.", "permission" => "Admin"], ["name" => "gend", "usage" => "/gend <id>", "description" => "End a giveaway early and pick winners.", "permission" => "Admin"], ["name" => "greroll", "usage" => "/greroll <id>", "description" => "Reroll winners for an ended giveaway.", "permission" => "Admin"], ["name" => "gcancel", "usage" => "/gcancel <id>", "description" => "Cancel a giveaway without picking winners.", "permission" => "Admin"], ["name" => "glist", "usage" => "/glist", "description" => "List recent giveaways on this server."], ], "TempVoice" => [ ["name" => "tempvoicesetup", "usage" => "/tempvoicesetup", "description" => "Post the temp voice channel creation button in this channel.", "permission" => "Admin"], ["name" => "voice", "usage" => "/voice create|password|invite|limit|rename|lock|unlock|kick|transfer|delete|join [id/tag] <password>", "description" => "Create and manage your own temporary voice-enabled channel."], ], "Long Cat" => [ ["name" => "longcatstart", "usage" => "/longcatstart", "description" => "Start the Long Cat minigame in the configured game channel.", "permission" => "Admin"], ["name" => "longcatstop", "usage" => "/longcatstop", "description" => "Stop the Long Cat minigame.", "permission" => "Admin"], ["name" => "longcatlb", "usage" => "/longcatlb", "description" => "Post the global Long Cat leaderboard in the current channel."], ], "Games" => [ ["name" => "wordle", "usage" => "/wordle [-public | @user1 @user2 ...]", "description" => "Start a round of Wordle. Solo by default — reply to the board with a 5-letter word to guess."], ["name" => "wordlestop", "usage" => "/wordlestop", "description" => "End your own active Wordle round early."], ], "Credits" => [ ["name" => "credits", "usage" => "/credits [@user]", "description" => "Show your (or another member's) credit balance."], ["name" => "flex", "usage" => "/flex", "description" => "Show off your equipped cosmetics, credits, and level — others can rate it 1-5 stars."], ["name" => "addcredits", "usage" => "/addcredits @user <amount>","description" => "Add (or with a negative amount, remove) credits from a member.", "permission" => "Admin"], ["name" => "credithistory", "usage" => "/credithistory @user", "description" => "Show a member's recent credit transactions.", "permission" => "Admin"], ["name" => "senddrop", "usage" => "/senddrop [min] [max]", "description" => "Instantly send a per-server credit drop to this channel.", "permission" => "Admin"], ["name" => "bumpdebug", "usage" => "/bumpdebug on|off", "description" => "Toggle dumping the raw shape of messages in this channel (bump-message debugging).", "permission" => "Admin"], ], "Pearly AI" => [ ["name" => "aimemorydeleterequest", "usage" => "/aimemorydeleterequest", "description" => "Deletes everything Pearly AI remembers about you — every server, every stored fact, and any recent conversation context.", "aliases" => ["forgetme"]], ], ]; echo json_encode($commands);