Questions

The Accessibility permission on a Mac: what it allows and when to grant it

The Accessibility permission, in System Settings, Privacy & Security, Accessibility, lets an app control your Mac: send keystrokes and clicks, move the pointer, watch keyboard and mouse events, and read or operate the windows of other apps. macOS makes you switch it on by hand because it is powerful. It is reasonable to grant it to an app you trust whose job needs it, such as a controller mapper, a window manager or a screen reader, and you can switch it off again at any time.

What an app can do with it

  • Send keyboard and mouse events to other apps: keystrokes, shortcuts, clicks, pointer movement, scrolling. This is what controller mappers, auto clickers and text expanders need.
  • Watch keyboard and mouse events while you use other apps, which is how global shortcuts and hotkey tools notice a key.
  • Read and operate other apps' interfaces: find buttons and menus, move and resize windows. Screen readers and window managers use this.

An app with the permission is technically able to observe what you type. That is why the switch exists, and why the question to ask is not whether an app has it but whether you trust that app with it.

How to grant it, and how to take it back

  1. Open System Settings and click Privacy & Security in the sidebar.
  2. Click Accessibility. The list shows every app that has asked.
  3. Switch the app on. macOS asks for your password or Touch ID.
  4. To take it back, switch the app off, or select it and click the minus button to remove it from the list.

If an app is switched on and still cannot control anything, usually after an update, select it, remove it with the minus button, add it again with the plus button, and relaunch the app.

Accessibility is not Input Monitoring

Input Monitoring is a separate switch in the same Privacy & Security pane. It lets an app read input from your keyboard and other input devices at a lower level, even while you use other apps. Some apps need both; Steam, for example, asks for Input Monitoring before Steam Input can see a controller on recent macOS (more on Steam). An app that only needs to send keys and clicks should not need Input Monitoring.

How to decide whether an app deserves it

  • Does its job need it? A controller mapper, a window manager or a screen reader cannot work without it. A calculator or a note app has no reason to ask.
  • Is it from the Mac App Store? Store apps run in Apple's sandbox and pass review, which limits what they can reach.
  • Can it reach the internet? An app that has the permission and no network access has nowhere to send what it sees.
  • Is the source open? Then anyone can check what it does with the permission.
  • Does it say, in plain words, what it uses the permission for?

What InputConfig does with it

I make InputConfig, a free controller mapper, and it asks for this one permission, so here is exactly what it does with it.

  • It sends. Every keystroke, click, pointer movement and scroll that a controller, MIDI device or Mac key is mapped to is posted as an ordinary keyboard or mouse event, and macOS only delivers those from an app with Accessibility switched on.
  • It listens only when a preset asks. Reading a game controller or a MIDI device needs neither Accessibility nor Input Monitoring. Your Mac's own keyboard and mouse are watched only while a preset that uses one of their keys or buttons as an input is running, or while Scan or the Live Visualizer is using them. The watching is listen-only: a bound key still does its normal job.
  • It never asks for Input Monitoring.
  • It has no network access. The Mac App Store build is sandboxed without permission to use the network, so nothing it sees can leave the Mac. There is no account and no analytics.
  • The source is on GitHub under the MIT license, so all of the above can be checked.

If you switch the permission off, presets stop reaching other apps, and Settings, General in InputConfig shows that the permission is off, with a button that opens the right pane.

Download InputConfig on the Mac App StoreInputConfig is free on the Mac App Store. macOS 14 or later, no account, no tracking, open source.

Questions

Is it safe to give an app Accessibility permission on a Mac?

It is safe for an app you trust whose job needs it, such as a controller mapper, window manager or screen reader, and you can switch it off in System Settings, Privacy & Security, Accessibility at any time. Be wary of an app that asks without a clear reason.

Can an app with Accessibility permission see what I type?

Technically, yes: the permission lets an app watch keyboard events while you use other apps. InputConfig only watches your keyboard while a running preset, Scan or the Live Visualizer uses a key as an input, and it has no network access.

Why does a controller mapper need Accessibility permission on a Mac?

Because macOS only delivers keystrokes, clicks and pointer movement created by an app when that app has the Accessibility permission. Without it, a controller mapper such as InputConfig can read the controller but cannot make anything happen in other apps.

Does InputConfig need Input Monitoring?

No. InputConfig asks only for Accessibility. Game controllers and MIDI devices are read without either permission, and your Mac's keyboard and mouse are read through the Accessibility permission.

Where is the Accessibility permission on a Mac?

In System Settings, Privacy & Security, Accessibility. The list there holds every app that has asked for permission to control your Mac, each with its own switch.

Related

Download InputConfig on the Mac App StoreFree. macOS 14 or later. No account, nothing leaves your Mac. Open source on GitHub.