Skip to main content

Commands & Permissions

Scope

FioMenu keeps the public permission tree small, but it also exposes a full admin tree and runtime menu commands.

Admin commands

CommandPermissionWhat it does
/fiomenufiomenu.useBase entry point. Players also need an admin permission node before the help screen appears.
/fiomenu admin helpfiomenu.admin.helpShows the admin help list.
/fiomenu admin reloadfiomenu.admin.reloadReloads menus, config, and runtime state.
/fiomenu admin placeholdersfiomenu.admin.placeholdersPrints the custom_papi report and all registered FioMenu tokens.
/fiomenu admin listfiomenu.admin.listLists all known menu ids.
/fiomenu admin enabled <menu>fiomenu.admin.enabledEnables a menu file so it can be loaded and opened.
/fiomenu admin disable <menu>fiomenu.admin.disableDisables a menu file.
/fiomenu admin create <name>fiomenu.admin.createCreates a menu from a viewed container. Player-only.
/fiomenu admin delete <menu>fiomenu.admin.deleteDeletes a menu file.
/fiomenu admin clone <menu> <newName>fiomenu.admin.cloneClones an existing menu file into a new id.
/fiomenu admin rename <oldMenu> <newMenu>fiomenu.admin.renameRenames the menu id and file allocation.
/fiomenu admin open <player> <menu>fiomenu.admin.openOpens a loaded and enabled menu for a target player.
/fiomenu admin forceopen <player> <menu>fiomenu.admin.forceopenOpens a menu file directly even if it is not enabled yet.
/fiomenu admin close <player>fiomenu.admin.closeCloses the target player's current inventory.
/fiomenu admin versionfiomenu.admin.versionShows the plugin version.
/fiomenu admin authorfiomenu.admin.authorShows the plugin author.
/fiomenu admin debugfiomenu.admin.debugShows the plugin debug summary string.
/fiomenu admin meta <target> <action> ...fiomenu.admin.meta or fiomenu.admin.meta.<action>Manages namespaced player meta under fiomenu:*.
/fiomenu admin custom_slot <player> <action> <id_custom_slot>fiomenu.admin.custom_slot or fiomenu.admin.custom_slot.<action>Lists, clears, adds, or removes stored custom slot values.

Dynamic menu commands

Any menu file can register its own runtime command through command: and aliases: in the menu YAML.

Runtime commandPermissionWhat it does
/<menu command>fiomenu.command.<label>Opens the matching FioMenu route for that command label.
/<registered alias>fiomenu.command.<registeredName>Same route, if the alias is the one that was actually registered.
/<menu command>fiomenu.menu.<menuId>.commandMenu-specific fallback permission.

Wildcards also work:

  • fiomenu.command.*
  • fiomenu.menu.*.command
  • fiomenu.admin

Console behavior

  • Console can run the same /fiomenu admin ... routes.
  • /fiomenu admin create is blocked from console because it requires a player looking at a chest.
  • open, forceopen, close, meta, and custom_slot still need valid online player targets.

Permission table

PermissionDefaultDescription
fiomenu.usetrueAllows access to /fiomenu.
fiomenu.adminopUmbrella permission for every admin command and action.
fiomenu.admin.helpopAllows /fiomenu admin help.
fiomenu.admin.reloadopAllows /fiomenu admin reload.
fiomenu.admin.listopAllows /fiomenu admin list.
fiomenu.admin.enabledopAllows /fiomenu admin enabled.
fiomenu.admin.disableopAllows /fiomenu admin disable.
fiomenu.admin.createopAllows /fiomenu admin create.
fiomenu.admin.deleteopAllows /fiomenu admin delete.
fiomenu.admin.cloneopAllows /fiomenu admin clone.
fiomenu.admin.renameopAllows /fiomenu admin rename.
fiomenu.admin.openopAllows /fiomenu admin open.
fiomenu.admin.forceopenopAllows /fiomenu admin forceopen.
fiomenu.admin.closeopAllows /fiomenu admin close.
fiomenu.admin.versionopAllows /fiomenu admin version.
fiomenu.admin.authoropAllows /fiomenu admin author.
fiomenu.admin.debugopAllows /fiomenu admin debug.
fiomenu.admin.placeholdersopAllows /fiomenu admin placeholders.
fiomenu.admin.metaopAllows every /fiomenu admin meta action.
fiomenu.admin.meta.listopAllows /fiomenu admin meta ... list.
fiomenu.admin.meta.setopAllows /fiomenu admin meta ... set.
fiomenu.admin.meta.removeopAllows /fiomenu admin meta ... remove.
fiomenu.admin.meta.removeallopAllows /fiomenu admin meta ... removeall.
fiomenu.admin.meta.modifyopAllows /fiomenu admin meta ... modify.
fiomenu.admin.meta.addopAllows /fiomenu admin meta ... add.
fiomenu.admin.meta.subtractopAllows /fiomenu admin meta ... subtract.
fiomenu.admin.custom_slotopAllows every /fiomenu admin custom_slot action.
fiomenu.admin.custom_slot.clearopAllows /fiomenu admin custom_slot clear.
fiomenu.admin.custom_slot.listopAllows /fiomenu admin custom_slot list.
fiomenu.admin.custom_slot.addopAllows /fiomenu admin custom_slot add.
fiomenu.admin.custom_slot.removeopAllows /fiomenu admin custom_slot remove.
fiomenu.command.*opAllows every runtime menu command.
fiomenu.menu.*.commandopAllows every menu-specific runtime command.
fiomenu.update.notifyopReceives update notices on join.

open vs forceopen

Use /fiomenu admin open <player> <menu> when the target menu is already enabled and loaded.

Use /fiomenu admin forceopen <player> <menu> when you want FioMenu to open the file directly from disk even if that menu is not in the enabled set yet.

Why both exist

The command handler explicitly checks hasLoadedMenu(menuId) for open, while forceopen calls forceOpenMenu(...) and only fails if the file itself is missing.

list output behavior

For players, list is not only a plain menu id dump. The command builds hover text that includes:

  • allocation file
  • enabled or disabled status
  • current viewer count
  • menu type
  • platform name

That makes it useful for checking whether a menu lives under Java menus, Bedrock menus, or another supported family before you open or edit it.

custom_slot flow

The current command handler exposes these actions:

  • list
  • clear
  • add
  • remove

This command is tied to the plugin's stored custom slot selections rather than general GUI editing, so use it when you need to inspect or clean player-specific custom slot state.

Meta types accepted by the command parser

INT
LONG
DOUBLE
STRING
BOOLEAN

See Meta for the full usage guide.