awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
autokey avatar

autokey/autokey

0
View on GitHub↗
3,844 stars·256 forks·Python·GPL-3.0·25 viewsautokey.github.io/index.html↗

Autokey

AutoKey is a Linux GUI macro manager and Python desktop automation tool. It functions as a background daemon that simulates keyboard and mouse events via the X11 protocol to automate interactions with graphical user interfaces.

The software provides a Python scripting engine for executing stateful automation and a text expansion utility that replaces short abbreviations with predefined content or scripted actions in real time. It differentiates itself by combining low-level input simulation with the ability to manage global state and persistent variables across different scripts.

The project covers a broad range of automation capabilities, including image-based screen recognition for interacting with visual elements, system clipboard management for transferring data between applications, and the use of interactive user dialogs to collect data during execution.

Features

  • Text Expansion Utilities - Ships a utility that transforms shorthand abbreviations into full text strings or scripted actions in real time.
  • Linux Desktop Automation - Enables the creation of Python scripts to automate repetitive system operations and GUI tasks on Linux.
  • Keyboard and Mouse Input Simulations - Sends synthetic keyboard and mouse events via the X11 protocol to simulate human interaction with the GUI.
  • GUI Macro Managers - Functions as a background daemon for executing complex, stateful automation scripts and managing clipboard data.
  • Keyboard Input Automation - Sends individual keys or keystroke sequences to the system to automate typing and navigation.
  • Mouse Control Automation - Controls the cursor to perform clicks or scrolling at specific coordinates to automate interface interactions.
  • Desktop Automation Engines - Provides an embedded Python scripting engine to execute custom logic and stateful desktop automation scripts.
  • Script State Persistence - Implements mechanisms for saving and retrieving data to maintain state across separate automation script executions.
  • Background Input Daemons - Implements a background daemon that monitors system-level keyboard and mouse events to trigger automation scripts.
  • Desktop Automation - Provides a Python-based engine to automate mouse and keyboard interactions and system tasks on Linux.
  • Visual Interface Interaction - Uses image recognition to find and click on screen elements to automate tasks in graphical applications.
  • Input Stream Pattern Matching - Identifies abbreviation sequences in the real-time input stream to trigger automatic text expansion.
  • Cross-Application Data Sharing - Facilitates the movement of information between different applications using clipboard management and shared variables.
  • System Clipboard Integrations - Provides utilities for interfacing with system-level clipboards and primary selection buffers for data transfer.
  • Screen Recognition Engines - Includes a visual scanning engine that identifies screen patterns to interact with elements lacking accessibility markers.
  • Cross-Script State Persistence - Maintains a centralized data store to persist variables and state across different automation scripts.
  • Computer Vision Screen Interaction Tools - Identifies visual patterns on the screen to perform precise clicks and interactions with GUI elements.
  • Clipboard and Selection Bridges - Provides a mechanism to synchronize data between system clipboard buffers and script variables for cross-application workflows.
  • Automation Tools - Desktop automation utility for managing scripts and hotkeys.
  • Desktop Productivity Tools - Desktop automation utility for scripting and text expansion.

Star history

Star history chart for autokey/autokeyStar history chart for autokey/autokey

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Autokey

These projects share indexed features with Autokey. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • go-vgo/robotgogo-vgo avatar

    go-vgo/robotgo

    10,614View on GitHub↗

    Robotgo is a cross-platform desktop automation framework for the Go programming language. It provides a comprehensive toolkit for programmatically interacting with graphical user interfaces, enabling developers to simulate human input, manage application windows, and monitor system-wide hardware events. The library distinguishes itself through its low-level system integration, utilizing a foreign function interface to interact directly with native operating system APIs. It employs pixel-buffer memory mapping and real-time screen capture to perform visual element identification, allowing for i

    Goaiauto-testautomation
    View on GitHub↗10,614
  • asweigart/pyautoguiasweigart avatar

    asweigart/pyautogui

    12,564View on GitHub↗

    PyAutoGUI is a Python GUI automation library and desktop automation framework. It provides a set of tools for programmatically controlling the mouse and keyboard to automate user interface interactions across different operating systems. The project functions as a cross-platform input simulator and computer vision screen scanner. It enables the simulation of keystrokes and cursor movements to perform repetitive tasks and utilizes screen analysis to locate specific images or pixel colors on the display. Its capability surface includes mouse and keyboard input simulation, screen image capture,

    Python
    View on GitHub↗12,564
  • bytebot-ai/bytebotbytebot-ai avatar

    bytebot-ai/bytebot

    10,413View on GitHub↗

    Bytebot is an LLM desktop automation framework and virtual Linux desktop environment. It enables AI agents to plan and execute mouse and keyboard actions on a virtual computer using natural language, allowing for autonomous desktop automation and the integration of legacy systems that lack native APIs. The system operates as an LLM API gateway and a Model Context Protocol server, routing requests across multiple language model providers with integrated load balancing and rate limiting. It provides isolated, containerized environments where agents use visual reasoning to interpret screenshots

    TypeScriptagentagentic-aiagents
    View on GitHub↗10,413
  • simular-ai/agent-ssimular-ai avatar

    simular-ai/Agent-S

    11,855View on GitHub↗

    Agent-S is a multimodal AI agent and LLM desktop automation framework designed to control operating systems through graphical user interface interactions. It functions as a computer use interface, utilizing vision-language grounding to translate natural language goals into precise screen coordinates and system actions. The project differentiates itself by combining structured accessibility tree inspection with vision-based element localization. It manages cross-application workflows by mapping conceptual descriptions to physical pixels and simulating low-level keyboard and mouse events to mov

    Pythonagent-computer-interfaceai-agentscomputer-automation
    View on GitHub↗11,855
Compare all 30 related projects→

Frequently asked questions

What does autokey/autokey do?

AutoKey is a Linux GUI macro manager and Python desktop automation tool. It functions as a background daemon that simulates keyboard and mouse events via the X11 protocol to automate interactions with graphical user interfaces.

What are the main features of autokey/autokey?

The main features of autokey/autokey are: Text Expansion Utilities, Linux Desktop Automation, Keyboard and Mouse Input Simulations, GUI Macro Managers, Keyboard Input Automation, Mouse Control Automation, Desktop Automation Engines, Script State Persistence.

Which projects share features with autokey/autokey?

Projects with overlapping indexed features include: go-vgo/robotgo — Robotgo is a cross-platform desktop automation framework for the Go programming language. It provides a comprehensive… asweigart/pyautogui — PyAutoGUI is a Python GUI automation library and desktop automation framework. It provides a set of tools for… bytebot-ai/bytebot — Bytebot is an LLM desktop automation framework and virtual Linux desktop environment. It enables AI agents to plan and… simular-ai/agent-s — Agent-S is a multimodal AI agent and LLM desktop automation framework designed to control operating systems through… cursortouch/windows-mcp — This is a Model Context Protocol server that exposes Windows desktop automation and system administration functions to… octalmage/robotjs — Robotjs is a native Node.js automation library and desktop input simulator. It uses C++ bindings to provide low-level…