Keybored lets you bind system-wide hotkeys to anything. Control Spotify, launch apps, run scripts, or toggle system settings, all executed instantly in the background.
You can install Keybored using Homebrew:
brew tap ronykax/apps
brew install --cask keyboredTip
When installed via Homebrew, quarantine removal is handled automatically. If installing manually, you can bypass the Gatekeeper block by running:
xattr -d com.apple.quarantine /Applications/Keybored.appKeybored automatically creates a ~/keybored.json file on first launch. If you'd prefer to set it up manually beforehand, you can create it yourself:
touch ~/keybored.json(Alternatively, click the folder icon in the main window to show the file directly in Finder.
Add your shortcut mappings in the following JSON array format:
[
{
"modifiers": ["cmd", "shift", "ctrl", "opt"],
"key": "space",
"binary": "/usr/bin/osascript",
"arguments": ["-e", "tell application \"Spotify\" to playpause"]
}
]Whenever you make changes to ~/keybored.json, you need to reload the configurations in Keybored:
- Menu Bar Icon: Click on the Keybored menu bar icon and select Reload.
- Main Window: Open the window and click the Reload button.
For conflict-free hotkeys, Keybored includes an optional Hyper Key feature which turns
Holding Caps Lock acts as if Control + Option + Command + Shift are all pressed together.
- Open the Keybored window.
- Under the Hyper Key section, toggle Remap Caps Lock on.
- In your
~/keybored.json, set your shortcut modifier list to use all four modifiers:"modifiers": ["cmd", "shift", "ctrl", "opt"]
| Key | Type | Description |
|---|---|---|
modifiers |
string[] |
Modifier keys that trigger the action: "cmd", "shift", "ctrl", "opt" |
key |
string |
The key to press (case-insensitive). See supported keys below. |
binary |
string |
Absolute path to the executable, e.g. "/usr/bin/osascript" |
arguments |
string[] |
Arguments passed to the executable, e.g. ["-e", "tell application..."] |
- Special:
"space","return","tab","escape","delete","fwddelete","home","end","pageup","pagedown" - Arrow:
"left","right","up","down" - Function:
"f1"through"f12" - Alphanumeric:
"a"to"z","0"to"9" - Symbols:
"-","=","[","]",";","'"(quote),",",".","/","\\"(backslash),"`"(backtick)