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
go-vgo avatar

go-vgo/robotgo

0
View on GitHub↗
10,614 stars·946 forks·Go·apache-2.0·19 views

Robotgo

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 interaction with interface components based on pattern matching rather than relying on accessibility metadata.

Beyond its core automation capabilities, the project includes a suite of utilities for mouse and keyboard input simulation, global event hooking, and window lifecycle management. These features support a range of tasks including automated graphical user interface testing, computer vision-based interaction, and the development of tools that respond to real-time user behavior.

Features

  • Cross-Platform Desktop Automation Libraries - Provides a toolkit for simulating mouse and keyboard input, capturing screen content, and controlling application windows.
  • Screen Capture Utilities - Provides low-level, real-time screen pixel data acquisition to enable automated visual element identification and computer vision-based interaction.
  • Desktop Automation - Enables cross-platform desktop automation by simulating mouse and keyboard inputs.
  • Desktop Automation Frameworks - Provides a collection of functions for programmatically interacting with graphical user interfaces.
  • Test Automation Tools - Verifies software functionality by programmatically interacting with interface elements and validating visual states.
  • Visual Element Identification - Identifies user interface components by searching for specific images or patterns within screen captures.
  • Global Input Listeners - Registers low-level system listeners to intercept hardware input signals globally.
  • Keyboard Input Automation - Provides comprehensive keyboard simulation for automated text entry and key combinations.
  • Mouse Control Automation - Facilitates precise mouse control including movement, clicking, and scrolling.
  • Bitmap-Based Visual Search - Provides visual element identification by matching screen captures against reference images.
  • Window Management Systems - Manages desktop application windows by finding, activating, and terminating processes.
  • Cross-Platform Abstractions - Normalizes disparate operating system input and windowing APIs into a unified cross-platform interface.
  • Computer Vision Screen Interaction Tools - Provides a utility for locating visual elements on a display through image pattern matching.
  • GUI Development - Cross-platform GUI automation for mouse and keyboard.
  • GUI Frameworks - Automates mouse and keyboard interactions cross-platform.
  • System Interaction - Cross-platform GUI and system automation library.
  • More to explore - Cross-platform automation for mouse and keyboard.
  • Foreign Function Interfaces - Uses foreign function interfaces to invoke native system APIs for high-performance hardware interaction.
  • Computer Vision Workflows - Integrates computer vision workflows to interact with visual interface components.
  • Native Handle Management - Interacts with operating system process identifiers to manage application focus and lifecycle.
  • User Input Monitors - Monitors global keyboard and mouse activity in real-time to trigger custom logic.
  • Pixel-Buffer Memory Mapping - Reads raw display data directly into memory to enable rapid image processing.
  • Image Processing - Transforms screen capture data between standard image formats and internal bitmap representations.

Star history

Star history chart for go-vgo/robotgoStar history chart for go-vgo/robotgo

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. 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

Frequently asked questions

What does go-vgo/robotgo do?

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.

What are the main features of go-vgo/robotgo?

The main features of go-vgo/robotgo are: Cross-Platform Desktop Automation Libraries, Screen Capture Utilities, Desktop Automation, Desktop Automation Frameworks, Test Automation Tools, Visual Element Identification, Global Input Listeners, Keyboard Input Automation.

What are some open-source alternatives to go-vgo/robotgo?

Open-source alternatives to go-vgo/robotgo include: octalmage/robotjs — Robotjs is a native Node.js automation library and desktop input simulator. It uses C++ bindings to provide low-level… asweigart/pyautogui — PyAutoGUI is a Python GUI automation library and desktop automation framework. It provides a set of tools for… simular-ai/agent-s — Agent-S is a multimodal AI agent and LLM desktop automation framework designed to control operating systems through… hammerspoon/hammerspoon — Hammerspoon is a programmable automation engine for macOS that enables deep system-level control through a Lua… autokey/autokey — AutoKey is a Linux GUI macro manager and Python desktop automation tool. It functions as a background daemon that… bytebot-ai/bytebot — Bytebot is an LLM desktop automation framework and virtual Linux desktop environment. It enables AI agents to plan and…

Open-source alternatives to Robotgo

Similar open-source projects, ranked by how many features they share with Robotgo.
  • octalmage/robotjsoctalmage avatar

    octalmage/robotjs

    12,740View on GitHub↗

    Robotjs is a native Node.js automation library and desktop input simulator. It uses C++ bindings to provide low-level access to operating system functions, allowing for the programmatic control of the mouse and keyboard and the analysis of screen pixels. The library functions as a toolkit for automating user interfaces and desktop workflows, including those within Electron applications. It enables the simulation of key presses and mouse movements to automate interactions with desktop software and perform automated data entry. Its capabilities extend to screen pixel analysis, where it capture

    C
    View on GitHub↗12,740
  • 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
  • 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
  • hammerspoon/hammerspoonHammerspoon avatar

    Hammerspoon/hammerspoon

    14,497View on GitHub↗

    Hammerspoon is a programmable automation engine for macOS that enables deep system-level control through a Lua scripting environment. By bridging high-level scripts with native Objective-C APIs, it allows users to interact with the operating system's accessibility tree, intercept hardware input streams, and manage the lifecycle of running applications. The project distinguishes itself through an event-driven architecture that registers asynchronous hooks for system notifications and hardware events. This allows for real-time automation, such as remapping keyboard and mouse inputs, managing wi

    Objective-Cautomationhammerspoonirc
    View on GitHub↗14,497
  • See all 30 alternatives to Robotgo→