Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

a2 Codacy Badge Join the chat at Join the chat on Telegram

Autohotkey is an awesome little scripting language to automate and simplify all things Windows.
(See Tom Scott ranting about it on YouTube)
a2 helps getting, updating scripts and developing your own.

Basically a2 is an Autohotkey runtime running in the background that you conveniently configure with a Qt for Python UI.

Features for this background app come via modules bundled in packages.
Each module can have various script or configuration files
and is presented with its own frontend UI to setup Hotkey shortcuts, Variables ect...
These frontend UIs are comprised of reusable elements that a developer can easily arrange.

See the Wiki for more information especially:

Who is it for?

Everyday Computer people looking to automate/simplify working with Windows.

  • Simple setup and management of scripts
    • no files to copy around or edit
    • updates via button press
    • no intrusive installation (all integrations steps visualized, uninstall/delete and its gone)
    • no Admin rights needed
  • A range of things to try out
  • Build own simple modules without a line of code
  • ...

Autohotkey Script Developers

  • no boilderplate code needed
  • broad library to keep your code DRY
  • clickable UI components for most use-cases
  • streamlined github driven deployment
  • ...


  • Thanks to rcedit from the electron project we now have fully automated package building, zipping and versioning. 🚀 Before I actually opened up Visual Studio 2017 and hacked in the updated version numbers into the sfx file for building the installer executable...
  • The humongous "new structure" branch was finally merged back to master and the issues in the endless road-to-release-project are thinning out. So we have the package builder back up and running, the structure is much nicer and maintainable 👍, local python snippets are now files and finally debugable!
  • PySide2 !! And Python 3.6.5 !! Whow! The first release project is coming closer! We also reached > 1000 commits already and on 4. of July a2 will turn 5 on github!
  • Hotkey widgets now show the scope right away and users can edit if they desire. Some shots in the gallery
  • Package download and update checker threads are implemented!! 🎊 yay 🥂 This is quite a big deal for this project.
  • Quite some stuff: New Element Dialog can now add to local module or globally and enlist in the display list. Unicode HotStrings start to work a bit. Keep crossing fingers! New Label element. I added some stuff to the gallery
  • animated gifs ftw! I created a gallery on imgur to make latest changes a little more visual. Something between a video and just writing a proper commit msg. I know I need to make videos! Please be patient! :]
  • package building 📦 works now! Using PyInstaller and some batch and py scripting we can now build self-containing a2 packages with no further dependencies. To do that of course there is now one more dependency: pip install PyInstaller. The milestone is coming closer!!
  • since there is no option for a default issue view backlog and wontfix issues have been "closed" for better overview (and looking like there is less todo). They are still there! That's why I put the links. When such an issue is tackled it will be opened again. When closed the wontfix or backlog label will be removed.
  • a2/a2.modules separation complete! There are still a lot of features to add but the main functionality is implemented: One can have multiple module sources and enable/disable them individually. You see there is a lot less Autohotkey code here now. See the a2.modules project for the standard ones.

a2 main loop layout:

blog posts:


versions in latest build package:

  • AutoHotkey:
  • Python: 3.9.7150.1013
  • PySide2: