CollaboKeys uses macOS CoreGraphics key codes to emulate keypresses on the host machine. Only keys that appear inDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/tinkerer9/collabokeys/llms.txt
Use this file to discover all available pages before exploring further.
src/keycodes.js can be sent — any key outside this list is rejected immediately with an “is not supported” message. Each entry in that file maps a key name to its CoreGraphics key code, a human-readable label, an enabled/disabled flag, and the ID of the player currently holding a reservation on it (or null if unclaimed).
Default-Enabled Keys
These keys are active from the moment the server starts. Players can press and reserve them without any admin intervention.Letters
Letters
a b c d e f g h i j k l m n o p q r s t u v w x y zUppercase letters (
A–Z) and shifted symbols (!, @, #, $, %, ^, &, *, (, ), _, +, {, }, |, :, ", ~, <, >, ?) are not independent keys in keycodes.js. The client-side alias table in alias.js automatically maps them back to their base keys before the event is sent to the server — for example, A → a, ! → 1, @ → 2. This means pressing Shift+1 in the browser behaves identically to pressing 1: the server receives 1 and the Shift key does not need to be enabled. These aliases cannot be reserved separately from their base keys.Numbers
Numbers
0 1 2 3 4 5 6 7 8 9Symbols
Symbols
- = [ ] \ ; ' , . / `Special keys
Special keys
| Key name in keycodes.js | Human name | Description |
|---|---|---|
" " (space) | space | Spacebar |
Enter | return | Enter / Return key |
Arrow keys
Arrow keys
| Key name in keycodes.js | Human name |
|---|---|
ArrowLeft | left arrow |
ArrowRight | right arrow |
ArrowDown | down arrow |
ArrowUp | up arrow |
Default-Disabled Keys
These keys exist inkeycodes.js but are disabled when the server starts. They must be explicitly enabled by an admin before players can press or reserve them.
Modifier and system keys
Modifier and system keys
| Key name in keycodes.js | Human name |
|---|---|
Shift | shift |
CapsLock | caps lock |
Backspace | delete |
Tab | tab |
Meta | command |
Alt | option |
Control | control |
Escape | esc |
Function keys (F1–F20)
Function keys (F1–F20)
F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12The following function keys exist in keycodes.js but are not present on standard keyboard layouts:F13 F14 F15 F16 F17 F18 F19 F20Enabling and Disabling Keys
Keys can be toggled at any time without restarting the server, either through the admin page or the console.- Admin page
- Console
- Open the admin page on any device connected to the same network as the host.
- Find the Key action in the controls section.
- Select enable or disable from the action dropdown.
- Enter the exact key name (e.g.
Shift,F1,ArrowLeft) or typeallto affect every key at once. - Click Run.
Disabling a key that is currently reserved by a player does not revoke their reservation — it only prevents anyone from pressing it going forward. Use
key revoke <keyname> to remove an existing reservation before or after disabling.Viewing the Keycode Table
You can inspect the full list of keys along with their current enabled status and reservation state at any time.- Browser: Visit
/keycodeson the server — for examplehttp://192.168.1.10:3000/keycodes— to see a plain-text table of every key, whether it is enabled, and which player (if any) has it reserved. - Admin page: Click the List Keycodes button to be redirected to
/keycodes. - Console: Run the
keycodescommand to print the same table directly in the terminal.
keycodes.js, so it always reflects the current situation — including any enable/disable changes or key revocations made since the server started.