AutoKey (Python 3)

automation, desktop-application, desktop-automation, gtk3, pyqt5, pyqt5-desktop-application, python, python3
pip install autokey==0.95.4



Join the chat at Ask and answer questions on StackOverflow


AutoKey, a desktop automation utility for Linux and X11, formerly hosted at OldAutoKey. Updated to run on Python 3.

Important: This is an X11 application, and as such will not function 100% on distributions that default to using Wayland instead of Xorg.


Please remove previous installations of both AutoKey and AutoKey-py3 fully before installing!


Python: 3.5

Python modules (common):

  • dbus-python
  • pyinotify
  • python-xlib

GTK frontend only:

  • GObject Introspection
  • PyGTK
  • GtkSourceView
  • libappindicator

QT frontend only:

  • PyQt5
    • SVG module, if not already bundled
    • QScintilla2 module, if not already bundled
  • pyrcc5 command line tool (Optional installation time dependency, only used when installing or updating from the git source tree using If not present, a fallback that causes a slightly slower application start will be used.)

Install via pip

pip will automatically resolve and install dependencies, but dbus-python requires the dbus headers be present on your system. These are usually installed through your package manager, and usually are named dbus-devel or libdbus-dev or similar.

pip3 install autokey
# or, if you want the latest from this repository,
pip3 install --user git+

The "--user" option for pip may be added to install for the current user only.


There is a repository available for Ubuntu 18.04 LTS (and compatible derivatives, such as Kubuntu):

sudo add-apt-repository ppa:sporkwitch/autokey
sudo apt update
sudo apt install autokey-gtk
# Or alternatively, to install the Qt5 based GUI:
sudo apt install autokey-qt

Distro package not provided? Create your own package for Debian-based distros using files under debian/ . Check out the Packaging wiki page for details.

Arch Linux

Up to date packages are available in the AUR.


Available via layman.

layman -a y2kbadbug
emerge --sync
emerge -av autokey


Avaiable from Fedora 27 onwards.

sudo dnf install autokey-gtk
# or for kde
sudo dnf install autokey-kde


Documentation for new features. For older features, please refer to the original AutoKey's scripting API, wiki, and Stack Overflow.

Examples of AutoKey scripts can be found by searching GitHub and reading AutoKey's wiki.


Please do not request support on the issue tracker. Instead, head over to the autokey-users Google Groups forum, StackOverflow, on IRC (#autokey on Freenode), or Gitter web-based chat.

We'd appreciate it if you take a look at Problem reporting guide before posting. By providing as much information as you can, you'll have a much better chance of getting a good answer in less time.

Bug reports and Pull Requests

Bug reports and PRs are welcome. Please use the GitHub Issue Tracker for bug reports. When reporting a suspected bug, please test against latest git HEAD and make sure to include as much information as possible to expedite troubleshooting and resolution. For example,

  • required: How to reproduce the issue you are experiencing
  • Python tracebacks, if any
  • Verbose logging information obtained by starting the frontend (autokey-gtk or autokey-qt) from terminal with the --verbose option.