All Mods Resource Packs Data Packs Shaders Modpacks Plugins
Command Keys

Command Keys

by NotRyken • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions
Icon

CommandKeys

A powerful command macro mod.

[Environment]() Latest Minecraft

Loader Loader Loader

Available on Modrinth Available on CurseForge Available on GitHub

Features

  • Multiple commands per macro
  • Multiple macros per keybind
  • Optional delay timing between commands
  • Efficient keybind conflict management with modifier key support
  • Five modes:
    1. Send all commands when the key is pressed
    2. Cycle through commands, one per keypress
    3. Repeat on a configurable interval
    4. Select a random message and send
    5. Type the command in chat, but don't send it
  • Profiles with automatic switching based on server address or world name
  • Fully custom GUI for easy configuration

Usage

Profiles

Automatic Switching
  • When you join a world/server, the name/address will be checked against the list of profiles. If there is a profile linked to that world/server, it will be activated. Otherwise, the default profile will be used.
  • Use the S and M buttons to make a profile the default for singleplayer or multiplayer.
Manual Switching
  • To activate a profile manually, click the up-arrow button on the left.
  • Click the link button to link the profile to the world/server for future automatic activation.
  • Click the settings button to rename the profile or remove links.

Macros

Access
  • Edit a profile by clicking the large button on the profile selection screen, or by pressing the edit key (default: K) in-game.
Binding Keys
  • You can bind almost any keyboard key or mouse button to a macro, similar to Minecraft's own Controls. However, you can also bind any pair of keys; just press one while holding the other ( e.g. press 'T' while holding 'Shift').
Conflict Strategy
  • If a key is already in use by Minecraft, you can choose a conflict strategy;
    • Submit: The macro will be ignored, the Minecraft keybind will function normally.
    • Assert: The macro and the Minecraft keybind will both function.
    • Veto: The macro will function, the Minecraft keybind will be cancelled (if possible).
    • Avoid: The macro will not work in-game, but you can still activate it by pressing the key while on the edit screen (with nothing selected). For example, if you have a macro bound to W, press K then W to activate it.
Send Mode
  • Send: All commands for the macro will be sent. You can configure delays between commands.
  • Type: The first command will be typed into the chat box, but not sent.
  • Edit: A GUI will be shown to allow you to enter a replacement for the %edit% placeholder, then the first message will be sent.
  • Cycle: The commands will be cycled through, with one command sent each time you press the key.
  • Note: In Cycle mode, if you need more than one command to be sent for a single key-press, enter those commands into a single box, separated by pairs of commas (e.g. /tick freeze,,/say Stopped).
  • Random: A message will be chosen at random and sent each time the key is pressed.
  • Repeat: Like Send, but the macro will be repeated (delay is configurable) until you press the key again.
Placeholders
  • Simple Placeholders

    • %lastsent%: The most recently-sent message or command in history, if any.
    • %lastcmd%: The most recently-sent command in history, if any.
    • %clipboard%: The contents of the clipboard, if any.
    • %myname%: Minecraft username.
    • %pmsender%: The name of the sender of the most recently-received private message, if any. ( Searches max of 50).
    • %pos%: The integer coordinates of the player (x y z).
    • %x%: The integer X coordinate of the player. Also available for Y and Z.
    • %lpos%: The integer coordinates of the block the player is looking at, if any. Also provides %lx%, %ly%, %lz%.
  • Regex Placeholders

    • %#(.*)%: Regex Group 1 from the most recently-received message matching the regex following the #, if any. Note: regex pattern must have at least 1 capturing group.
    • %clipboard#(.*)%: The contents of the clipboard, if any, verified to match a regex pattern following the #. This can be used to prevent unintentional exposure of clipboard contents. E.g. use %clipboard#^-?\d+ -?\d+ -?\d+$% to only send the clipboard contents if it's formatted like a set of coordinates.
    • %pos([FBLR])(\d+)%: %pos% but offset some number of blocks in a direction relative to the cardinal direction that the player is nearest to facing. E.g. use %posL20% to get the coordinates 20 blocks to the player's left.
    • %x([+-]\d+)%: %x% but offset some number of blocks. E.g. use %x-10% to get the X coordinate 10 blocks to the player's West. Also available for Y and Z.
    • %lpos([FBLR])(\d+)%: As per pos above but for the block the player is looking at, if any.
    • %lx([+-]\d+)%: As per x above but for the block the player is looking at, if any.

Dependencies

Fabric: Fabric API, ModMenu

NeoForge: None

Compatibility

If you encounter issues, please report on Discord or GitHub.

Contact

GitHub Issues

License

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.3
Fabric
1d ago 1
26.3
Neoforge
1d ago 1
26.2
Neoforge
1d ago 1
26.2
Fabric
1d ago 1
26.1.x
Fabric
1d ago 1
26.1.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
26.3
Fabric
1d ago 1
26.3
Neoforge
1d ago 1
26.3.x
Fabric
1d ago 1
26.2
Neoforge
1d ago 1
26.2
Fabric
1d ago 1
26.1.x
Fabric
1d ago 1
26.1.x
Neoforge
1d ago 1
26.2
Fabric
1d ago 1
26.2
Neoforge
1d ago 1
26.1.x
Fabric
1d ago 1
26.1.x
Neoforge
1d ago 1
26.2.x
Fabric
1d ago 1
26.1.x
Neoforge
1d ago 1
26.1.x
Fabric
1d ago 1
26.1.x
Fabric
1d ago 1
26.1.x
Neoforge
1d ago 1
26.1.x
Fabric
1d ago 1
26.1.x
Neoforge
1d ago 1
26.1-rc-2
Neoforge
1d ago 1
26.1-rc-2
Fabric
1d ago 1
1.21.11
Fabric
1d ago 1
1.21.11
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.10
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.11
Fabric
1d ago 1
1.21.11
Neoforge
1d ago 1
1.21.10
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.21.11
Fabric
1d ago 1
1.21.11
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.10
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.10
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.20.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.1
Forge
1d ago 1
1.20.x
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.20.1
Forge
1d ago 1
1.20.x
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Forge
1d ago 1
1.21.6
Fabric
1d ago 1
1.21.6
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Forge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Forge
1d ago 1
1.21.4
Fabric
1d ago 1
1.21.4
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Forge
1d ago 1
1.21.4
Neoforge
1d ago 1
1.21.4
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Forge
1d ago 1
1.21.4
Fabric
1d ago 1
1.21.4
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Forge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Forge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Forge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Forge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Forge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.20.x
Fabric
1d ago 1
1.20.x
Fabric
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric
1d ago 1
1.21.x
Neoforge
1d ago 1
1.21.x
Fabric Quilt
1d ago 1
1.21
Neoforge
1d ago 1
1.21.x
Fabric Quilt
1d ago 1
1.21
Neoforge
1d ago 1
1.21
Fabric Quilt
1d ago 1
1.21
Neoforge
1d ago 1
1.20.6
Neoforge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Neoforge
1d ago 1
1.20.2
Fabric Quilt
1d ago 1
1.20.2
Neoforge
1d ago 1
1.20.2
Forge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Forge Neoforge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Neoforge
1d ago 1
1.20.2
Fabric Quilt
1d ago 1
1.20.2
Neoforge
1d ago 1
1.20.2
Forge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Forge Neoforge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Neoforge
1d ago 1
1.20.2
Fabric
1d ago 1
1.20.2
Neoforge
1d ago 1
1.20.2
Forge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Forge Neoforge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Neoforge
1d ago 1
1.20.2
Fabric Quilt
1d ago 1
1.20.2
Neoforge
1d ago 1
1.20.2
Forge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Forge Neoforge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Neoforge
1d ago 1
1.20.2
Fabric Quilt
1d ago 1
1.20.2
Neoforge
1d ago 1
1.20.2
Forge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Forge Neoforge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Neoforge
1d ago 1
1.20.2
Fabric Quilt
1d ago 1
1.20.2
Neoforge
1d ago 1
1.20.2
Forge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.20.x
Forge Neoforge
1d ago 1
1.20.2
Neoforge
1d ago 1
1.20.2
Forge
1d ago 1
1.20.2
Fabric Quilt
1d ago 1
1.20.x
Forge Neoforge
1d ago 1
1.20.x
Fabric Quilt
1d ago 1
1.19.4
Fabric
1d ago 1
1.19.3
Fabric
1d ago 1
  • Added a filter for invalid characters before sending text

  • Added a filter for invalid characters before sending text

  • Added a filter for invalid characters before sending text

  • Added a filter for invalid characters before sending text

  • Added a filter for invalid characters before sending text

  • Added a filter for invalid characters before sending text

  • Fixed a crash on NeoForge when double-clicking a text field.

  • Fixed a crash on NeoForge when double-clicking a text field.

  • Updated to mc26.3

  • Updated to mc26.3

  • Updated to mc26.3-rc-2

  • Fixed an invalid mixin configuration on NeoForge

  • Fixed an invalid mixin configuration on NeoForge

  • Fixed an invalid mixin configuration on NeoForge

  • Fixed an invalid mixin configuration on NeoForge

  • Updated to mc26.2

  • Updated to mc26.2

  • Reset mc version counter to 1 at mc1.0.0
  • Removed duplicate logger names

  • Reset mc version counter to 1 at mc1.0.0
  • Removed duplicate logger names

  • Updated to mc26.2-pre.2
  • Mod versioning scheme now resets minor on increment of either major or mc

  • Added a command to open the config screen

  • Added a command to open the config screen

  • Updated Russian translation (rfin0)

  • Updated Russian translation (rfin0)

  • Updated to mc26.1
  • Mod versioning scheme is now major.mc.minor:
  • major is incremented on 'significant' feature changes, or breaking API changes (if
applicable).
  • mc is never reset, and is incremented on every MC release, irrespective of whether a mod
update was required.
  • minor is reset when major is changed, and is incremented on every update that does not
change either of the previous two numbers.

  • Updated to mc26.1
  • Mod versioning scheme is now major.mc.minor:
  • major is incremented on 'significant' feature changes, or breaking API changes (if
applicable).
  • mc is never reset, and is incremented on every MC release, irrespective of whether a mod
update was required.
  • minor is reset when major is changed, and is incremented on every update that does not
change either of the previous two numbers.

  • Updated to mc26.1-rc.2
  • Mod versioning scheme is now major.mc.minor:
  • major is incremented on 'significant' feature changes, or breaking API changes (if
applicable).
  • mc is never reset, and is incremented on every MC release, irrespective of whether a mod
update was required.
  • minor is reset when major is changed, and is incremented on every update that does not
change either of the previous two numbers.

  • Updated to mc26.1-rc.2
  • Mod versioning scheme is now major.mc.minor:
  • major is incremented on 'significant' feature changes, or breaking API changes (if
applicable).
  • mc is never reset, and is incremented on every MC release, irrespective of whether a mod
update was required.
  • minor is reset when major is changed, and is incremented on every update that does not
change either of the previous two numbers.

Changes over latest beta

  • Fixed ordering of macro activator MC keybinds.
  • Updated Russian translation (rfin0)

Changes over latest release

  • Added support for activating macros using MC keybinds.
  • Added a button to copy macros in the profile editor.
  • Added a new activation mode for key Release.
  • Added a command to switch profiles.
  • Added an optional list entry name field for macros.
  • Changed default Conflict Strategy from Submit to Assert.
  • Increased command/message field length limit from 512 to 4096.
  • Fixed conflict handling for debug keys on 1.21.11

Changes over latest beta

  • Fixed ordering of macro activator MC keybinds.
  • Updated Russian translation (rfin0)

Changes over latest release

  • Added support for activating macros using MC keybinds.
  • Added a button to copy macros in the profile editor.
  • Added a new activation mode for key Release.
  • Added a command to switch profiles.
  • Added an optional list entry name field for macros.
  • Changed default Conflict Strategy from Submit to Assert.
  • Increased command/message field length limit from 512 to 4096.
  • Fixed conflict handling for debug keys on 1.21.11

Command Keys Icon
Download Command Keys
Select game version
Select platform