Compatibility
Minecraft: Java Edition
Platforms
Links
Creators
Details
GeyserCommandsYML
GeyserCommandsYML is a lightweight plugin designed for servers using Geyser-Spigot to allow better control over the command suggestion list shown to their Bedrock Edition players.
Rather than disabling all of the server command suggestions entirely through the Geyser-Spigot configuration (aka Geyser-Spigot\config.yml
→ command-suggestions: false
), this plugin hooks directly into Geyser + Floodgate APIs, letting you define your own custom list of commands only for Bedrock players — avoiding crashes, bloat, or exposing irrelevant commands.
Features
- ✅ Add your own customizable list of visible commands for Bedrock players.
- ✅ Prevents the need to disable Geyser's command suggestions globally.
- ✅ Simple YAML configuration (
plugins/GeyserCommandsYML/commands.yml
). - ✅ Hot-reloading support for external config edits (with controlled player kick).
- ✅ Very lightweight — simply intercepts
PlayerCommandSendEvent
and modifies it for Bedrock clients.
Commands
Command | Description | Permission |
---|---|---|
/geysercommands add <command> |
Adds a command to the Bedrock command list. | geysercommands.add |
/geysercommands remove <command> |
Removes a command from the Bedrock command list. | geysercommands.remove |
/geysercommands list |
Lists all currently registered Bedrock commands in chat. | geysercommands.list |
/geysercommands reload |
Reloads the plugin configuration and updates the Bedrock command list (forces Bedrock players to reconnect). | geysercommands.reload |
Aliases:
/geysercommandsyml
, /gcyml
How it Works
-
On
PlayerCommandSendEvent
, the plugin:- Checks if the player is a Bedrock client (via Geyser/Floodgate APIs).
- If yes, it clears the default command suggestion list.
- Then it adds only the commands defined in the plugin's YAML file.
-
The Geyser client pulls the available commands at player join, not dynamically —
therefore, after running/geysercommands reload
, Bedrock players must rejoin to see the updated list.
(This command automatically kicks Bedrock players with a kind message asking them to rejoin.) -
Important:
- In
Geyser-Spigot\config.yml
, ensurecommand-suggestions: true
is set. - The
/geysercommands add <command>
and/geysercommands remove <command>
commands do not kick players.- But keep in mind, online Bedrock players won't see updated command lists until they manually leave and rejoin.
- In
Permissions Overview
Permission | Purpose |
---|---|
geysercommands.add |
Allows adding commands to the Bedrock command list. |
geysercommands.remove |
Allows removing commands from the Bedrock command list. |
geysercommands.list |
Allows viewing the current Bedrock command list. |
geysercommands.reload |
Allows reloading the plugin configuration and forcing Bedrock players to reconnect. |
- If a player lacks the required permission, they will be denied access to the subcommand.
- Server Operators maintain default command access.
Tested Environments
- ✅ PaperMC 1.21.4 - Build #226: Compatible
- ✅ Geyser-Spigot - Build #816: Compatible
- ✅ Floodgate - Build #116: Compatible