Permissions
Administration
Section titled “Administration”| Permission | Default | Grants |
|---|---|---|
daisyfilter.admin | op | Parent for admin actions; includes status, gui, export, inspect, notes, monitor. |
daisyfilter.status | op | status, version. |
daisyfilter.gui | op | Opening the moderation GUI. |
daisyfilter.test | op | test. |
daisyfilter.inspect | op | violations, inspect, player. |
daisyfilter.notes | op | Staff notes and the watchlist (note, notes, watch, unwatch, watchlist). |
daisyfilter.export | op | export (metadata). |
daisyfilter.monitor | op | monitor toggle. |
daisyfilter.alerts | op | Receiving and toggling staff alerts. |
daisyfilter.view.raw | false | Decrypting and exporting raw content. Not granted to operators by default. |
daisyfilter.appeal | true | Using /appeal to contest an active mute (granted to everyone). |
daisyfilter.punish.warn | op | Dispatching configured warning profiles. |
daisyfilter.punish.mute | op | Dispatching configured mute profiles. |
daisyfilter.punish.kick | op | Dispatching configured kick profiles. |
daisyfilter.punish.ban | false | Dispatching configured ban profiles. |
daisyfilter.punish.custom | false | Dispatching custom profiles that use this permission. |
Bypass
Section titled “Bypass”All bypass permissions default to false, including for operators, so filtering is never silently skipped by accident.
| Permission | Skips filtering on |
|---|---|
daisyfilter.bypass | every surface and spam |
daisyfilter.bypass.chat | chat |
daisyfilter.bypass.commands | communication commands |
daisyfilter.bypass.signs | signs |
daisyfilter.bypass.books | books |
daisyfilter.bypass.anvil | anvil renames |
daisyfilter.bypass.nickname | nickname changes |
daisyfilter.bypass.custom | custom API surfaces |
daisyfilter.bypass.spam | spam/abuse heuristics |
Bypass is evaluated from a thread-safe snapshot refreshed on join and in batches, so chat-thread checks never touch the permission system directly. A LuckPerms refresh hook is added only when LuckPerms is installed.
Testing with a wildcard (*) permission
Section titled “Testing with a wildcard (*) permission”If you grant yourself * in LuckPerms you also receive every daisyfilter.bypass.*
node, so filtering is skipped for you. To keep * but still be filtered while testing,
negate both the global node and the wildcard:
/lp user <you> permission set daisyfilter.bypass false/lp user <you> permission set daisyfilter.bypass.* falsedaisyfilter.bypass.* covers the per-surface and spam children; daisyfilter.bypass
is a separate node and must be negated on its own.