🪄 Pixie Docs
Overview Commands Blog Status Invite
Security

Jail

Strips a member down to one role - the jail role - which is only allowed to see a single channel, and keeps their original roles safe to restore later.

Setup

Manage Guild + Manage Messages
$jailconfig

Also $jailsetup, /jail config. Opens a panel with two buttons: Set Jail Role and Set Jail Channel. There's no separate on/off toggle - once both are set, jailing works immediately.

Channel permissions stay in sync automatically from then on: the jail role gets View Channel + Send Messages in the jail channel only, and View Channel denied everywhere else - including any new channel created afterward. A Force Sync Perms button on the same panel re-checks every channel on demand, for if something's drifted (a channel's perms edited by hand, etc).

Jail message

The same $jailconfig panel also has Jail Message: On/Off, Set Jail Message, and Preview Jail Message buttons. The message posts in the jail channel every time someone's jailed. Default is {user}, you have been jailed - {user} mentions the member who was just jailed. Preview renders it exactly as it would send (script or plain) and shows it to only you - no real jail action happens, and {actor}/{reason} use placeholder values since there's no real jail event to preview against.

The jail message can be a full script instead (start it with {embed}$v) - see the Scripting page's extra variables section for {actor.mention} (who did the jailing) and {reason}, on top of the normal {user.*} variables for the member being jailed. $jailconfig setmsg [message] (prefix only) sets it directly without opening the panel - omit the message to view the current one; $jailconfig preview posts a button that shows it privately, same as the panel's own Preview button.

Jailing a member

Manage Roles (or the Jail Members fake perm)
$jail <@member> [reason]

Also /jail add. Backs up the member's current roles, then replaces all of them with just the jail role. You can't jail someone already jailed, yourself, Pixie itself, or a member whose top role is equal to or higher than yours (server owner is exempt from that last check). Pixie's own role also has to sit above both the target's original highest role and the jail role itself, or it can't make the change.

If a jailed member leaves and rejoins, the jail role is automatically re-applied on rejoin - it isn't a way to escape jail.

Releasing a member

Manage Roles (or the fake perm)
$unjail <@member> [reason]
$unjail all [reason]

Also /jail remove (single member) and /jail removeall (bulk - a separate slash command rather than an all argument). Restores each member's exact original roles from backup. A member is skipped during bulk unjail if restoring them would give back a role higher than your own.

Who's currently jailed

$jailed

Also /jail list. Same permission as jailing/unjailing.