Skip to content

Permissions

Alex Baldry edited this page Aug 8, 2026 · 3 revisions

🔐 Permissions

Rivet works with normal Paper permissions. You can use its built-in group manager or grant the same nodes through another permissions plugin.

Built-in groups

Default settings/permissions.yml:

groups:
  default:
    permissions:
      - rivet.message
  staff:
    parent: default
    permissions:
      - rivet.teleport
      - rivet.vanish
      - rivet.vanish.see
  admin:
    parent: staff
    permissions:
      - "*"

Players without an assignment use the default group. Each group may have one parent. Rivet walks the parent chain and ignores a repeated group, so an accidental inheritance loop cannot run forever.

Direct grants and group assignments are saved in data/permissions.yml.

Wildcards

Rivet recognises:

  • * for every permission;
  • a full node such as rivet.home;
  • a suffix wildcard such as rivet.utility.*.

rivet.utility.* matches nodes beginning with rivet.utility.. It does not match unrelated prefixes.

Management commands

/group list
/group info staff
/group set Alex staff

/perm add Alex rivet.fly
/perm remove rivet.fly Alex
/perm list Alex
/perm check Alex rivet.fly
/perm reload

Important

The remove command uses permission first, then player: /perm remove <permission> <user>.

Changes are applied immediately to online players. Permission updates also refresh vanish visibility, hologram visibility, managed flight and display names.

Player and travel permissions

Node Purpose Paper default
rivet.home Set, use and remove homes Everyone
rivet.warp Use public warps Everyone
rivet.warp.set Set and remove public warps OP
rivet.spawn Use /spawn Everyone
rivet.spawn.set Use /setspawn OP
rivet.tpa Use all TPA commands Everyone
rivet.back Use /back Everyone
rivet.rtp Use /rtp in the current world Everyone
rivet.rtp.world Choose another RTP world OP
rivet.rtp.cooldown.bypass Ignore RTP cooldown OP
rivet.near Use /near Everyone
rivet.findbiome Use /findbiome Everyone

Chat, AFK and identity permissions

Node Purpose Paper default
rivet.message /msg and /r Everyone
rivet.socialspy Toggle and receive social spy OP
rivet.ignore Manage an ignore list Everyone
rivet.ignore.bypass Bypass a recipient's ignore list OP
rivet.chatcolor Set own chat colour Everyone
rivet.chatcolor.others Set another player's colour OP
rivet.chatcolor.advanced Use gradients and rainbow OP
rivet.afk Toggle own AFK state Everyone
rivet.afk.others Use the AFK player target flag OP
rivet.afk.silent Make silent AFK changes OP
rivet.afkcheck Check own AFK status Everyone
rivet.afkcheck.others Check a player or all AFK players OP
rivet.nick Set own nickname Everyone
rivet.nick.format Use colour and decoration tags OP
rivet.nick.others Change another player's nickname OP
rivet.stats View own statistics Everyone
rivet.stats.others View another player's statistics OP
rivet.playtime View own playtime Everyone
rivet.playtime.others View another player's playtime OP
rivet.me Send /me action messages Everyone
rivet.me.format Format /me text with colours and decorations OP
rivet.list List visible online players Everyone
rivet.ping View own connection latency Everyone
rivet.ping.others View another player's connection latency OP
rivet.help Open permission-aware Rivet help Everyone

Staff permissions

Node Purpose Paper default
rivet.gamemode /gmc and /gms OP
rivet.teleport Direct /tp OP
rivet.vanish Toggle vanish OP
rivet.vanish.see See vanished players OP
rivet.fly Toggle managed flight OP
rivet.flyspeed Set own flight speed OP
rivet.flyspeed.others Set another player's flight speed OP
rivet.heal Heal self OP
rivet.heal.others Heal another player OP
rivet.feed Feed self OP
rivet.feed.others Feed another player OP
rivet.god Change own god mode OP
rivet.god.others Change another player's god mode OP
rivet.bossbarmsg Send timed boss bars OP
rivet.notes Add, list, remove and clear staff notes OP
rivet.sameip Compare current online session addresses OP
rivet.toast Send temporary advancement toasts OP
rivet.admin Rivet information and reload OP

Inventory and item permissions

Node Purpose Paper default
rivet.inventory /clear and /i OP
rivet.inventory.clear.others Clear another player's inventory OP
rivet.condense Condense plain materials Everyone
rivet.donate Donate held items Everyone
rivet.giveall Give an item to everyone OP
rivet.inventory.invsee Inspect a live inventory OP
rivet.inventory.enderchest Open own ender chest Everyone
rivet.inventory.enderchest.others Open another live ender chest OP
rivet.repair Repair held item OP
rivet.repair.all Use /repair all OP
rivet.rename Rename held item OP
rivet.rename.format Format item names OP
rivet.lore Edit held-item lore OP
rivet.lore.format Format lore lines OP
rivet.trash Open the trash inventory Everyone
rivet.head Create a cached player head OP
rivet.filter Use the pickup filter Everyone
rivet.filter.admin Bypass filter-size limit OP
rivet.hat Swap a held item with the helmet slot Everyone

Backpacks, kits and daily rewards

Node Purpose Paper default
rivet.backpack Open a backpack Everyone
rivet.backpack.rows.1 Allow at least 1 backpack row Not granted
rivet.backpack.rows.2 Allow at least 2 backpack rows Not granted
rivet.backpack.rows.3 Allow at least 3 backpack rows Not granted
rivet.backpack.rows.4 Allow at least 4 backpack rows Not granted
rivet.backpack.rows.5 Allow at least 5 backpack rows Not granted
rivet.backpack.rows.6 Allow all 6 backpack rows Not granted
rivet.backpack.rows.* Grants every row node OP
rivet.kit List and claim kits Everyone
rivet.kit.starter Claim the shipped starter kit Everyone
rivet.kit.<name> Claim a named configured kit Per kit
rivet.kit.* Claim every kit OP
rivet.daily Claim daily rewards Everyone

The backpack default row count still applies when no row node is granted. Row permissions can only increase that configured default.

Utility and pose permissions

Node Purpose Paper default
rivet.utility.craft Portable crafting table Everyone
rivet.utility.anvil Portable anvil Everyone
rivet.utility.smithing Portable smithing table Everyone
rivet.utility.stonecutter Portable stonecutter Everyone
rivet.utility.grindstone Portable grindstone Everyone
rivet.jump Jump safely to the targeted block OP
rivet.ride Mount a targeted entity or dismount OP
rivet.pose.sit Use /sit Everyone
rivet.pose.lay Use /lay Everyone
rivet.pose.crawl Use /crawl Everyone

World and building permissions

Node Purpose Paper default
rivet.flat Legacy /flat command OP
rivet.world Test worlds, world spawn and mob cleanup OP
rivet.environment Time and weather OP
rivet.eggcapture Capture mobs with thrown eggs Everyone
rivet.permissions.manage Built-in permission commands OP
rivet.holograms Create and manage holograms OP
rivet.holograms.view.* Wildcard view node declared by Rivet Not granted
rivet.holograms.view.<name> View one permission-limited hologram Per hologram
rivet.glow Add, change and remove player glows OP
rivet.top Move to the highest safe point in a column OP
rivet.top.others Use /top on another player OP
rivet.tree Generate a vanilla tree at the target OP

Tree felling, vein mining, graves, crop protection, mob-head drops, announcements and join messages do not have per-player permission nodes. Control those features with modules.yml and their settings.

Using another permissions plugin

Disable the permissions module in modules.yml, restart, and grant the nodes above through your preferred plugin. Rivet's command and event checks use Paper's standard hasPermission, so they continue to work.

Do not run two systems that both attach overlapping wildcard permissions unless you understand the final Paper permission result.

Clone this wiki locally