OS X: Scripting “Needs Access To Assistive Devices” Accessibility

Some app needs access to assistive devices.”  This message appears on a lot of software starting in Mavericks and Yosemite and is slow to fix without scripting it.

If you are a systems administrator and have thousands of computers to deploy this app to, do you really want to manually walk through six steps on every computer you need to do this for?  That will take a long time and a lot of manual work.

Automate Adding Apps To The Accessibility Database

Use tccutil.py

Thanks to a little scripting, you can save yourself time and energy.  For repetitive use, tccutil.py has an easy-to-remember syntax.  Just install to /usr/sbin  and you are all set:

sudo tccutil.py -i [--insert] <bundle id or path to command line utilty>

Use sqlite3

If you just need to add an app once in a while, you can use the sqlite3  command, but it is a little more complex and more prone to typos.

sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db "INSERT or REPLACE INTO access VALUES('kTCCServiceAccessibility','com.apple.bundleID',1,1,1,NULL)"

Commands For Pre-Mavericks OS

On older operating systems, this command will enable accessibility.

sudo touch /private/var/db/.AccessibilityAPIEnabled

What Sort Of Apps Need Access?

Real-life Use Cases For tccutil.py

Leave a Reply