English
macOS
KeySteer supports macOS 14 and later. After installing, grant keyboard and pointer control permission (formerly Accessibility), then try your first click in Getting started.
Install and upgrade with Homebrew
bash
brew tap dccif/keysteer https://github.com/dccif/KeySteer.git
brew install --cask dccif/keysteer/keysteerThe cask selects the Apple Silicon or Intel package. Exit KeySteer before upgrading:
bash
brew update
brew upgrade --cask dccif/keysteer/keysteerUser configuration stays in the data directory below across upgrades. Complete the permission steps below after installing.
Install from a GitHub Release
Download the ZIP for your architecture from the official GitHub Releases, extract it, and move KeySteer.app to /Applications. If Gatekeeper prevents it from opening, first confirm the download source, then run:
bash
sudo xattr -cr /Applications/KeySteer.appFirst-time permissions
Open
/Applications/KeySteer.app.Go to System Settings → Privacy & Security, then open the permission for your macOS version:
- macOS 27: Device Control and Data Access.
- macOS 14–26: Accessibility.
Allow KeySteer to control your computer.
Restart KeySteer and test it with
Command+E.
If you cannot find the permission, search System Settings for “Device Control” or “Accessibility” and open the app permission list. If KeySteer is missing, click + and add /Applications/KeySteer.app. Older app messages mentioning “Accessibility permission” refer to the renamed permission on macOS 27.
Visual recognition in UI Hint also needs Screen & System Audio Recording permission (called Screen Recording on older versions), on the same privacy page. Grid and Recursive Grid do not read screen contents, but still need the keyboard and pointer control permission above.
Missing visual labels?
Check Screen & System Audio Recording permission, then restart KeySteer.
File locations
The packaged app uses:
text
~/Library/Application Support/KeySteer/It contains:
keysteer.<name>.toml: configuration files.keysteer.log: runtime log.keysteer.log.1,.2,.3: rotated logs.
Scroll direction
When you use natural scrolling, vertical inversion is enabled by default. Adjust it in the configuration if needed:
toml
[platform.macos.scroll]
invert_horizontal = false
invert_vertical = truePermission problems
If the top status icon appears but keys do nothing:
- Check that Device Control and Data Access (or Accessibility on older versions) authorises
KeySteer.app. - Quit and reopen KeySteer.
- Run
keysteer --doctorto check whether the keyboard is available. - If it persists, inspect
keysteer.login the data directory.
Keys stop working after an upgrade
Remove the old KeySteer entry from the permission list, add /Applications/KeySteer.app again, then restart the app.
Top status icon
While KeySteer is running, its status icon appears at the top right of the screen. Use it to pause control, reload configuration, check for updates, or quit. This menu is where you manage the app; there is no separate Dock icon.