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
Back to hammerspoon/hammerspoon

Projects sharing features with Hammerspoon

30 open-source projects similar to hammerspoon/hammerspoon, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.

  • 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
  • asmvik/yabaiasmvik avatar

    asmvik/yabai

    29,093View on GitHub↗

    Yabai is a system-level utility for macOS that provides automated window management and workspace organization. It functions as a tiling window manager that uses binary space partitioning to arrange application windows into grid layouts, bypassing standard desktop constraints through direct interaction with the system window server. The project distinguishes itself by offering granular control over the graphical user interface via a socket-based command interface and event-driven system hooks. This allows for the programmatic manipulation of window states, display configurations, and virtual

    C
    View on GitHub↗29,093
  • pqrs-org/karabiner-elementspqrs-org avatar

    pqrs-org/Karabiner-Elements

    22,362View on GitHub↗

    Karabiner-Elements is a system-level utility designed for advanced keyboard and mouse customization. It functions as a background service that intercepts raw hardware input signals at the driver level, allowing for the transformation of key presses and pointer movements before they reach the operating system. By utilizing virtual input device emulation, the software re-injects modified events into the system stream, enabling complex remapping, macro execution, and hardware-specific control. The project distinguishes itself through a sophisticated state-based logic engine that enables context-

    C++keyboardmacos
    View on GitHub↗22,362

AI search

Explore more awesome repositories

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

Find more with AI search
  • ianyh/amethystianyh avatar

    ianyh/Amethyst

    16,009View on GitHub↗

    Amethyst is a tiling window manager for macOS designed to automate the arrangement of application windows. It functions as a productivity utility that organizes windows into non-overlapping layouts, allowing users to manage their desktop environment through keyboard-driven controls rather than manual mouse interaction. The application distinguishes itself by providing a state-machine engine that calculates window geometry based on user-defined tiling patterns. It maintains an accurate representation of the desktop by monitoring system-level notifications for window events, enabling it to auto

    Swiftmacmacoswindow-manager
    View on GitHub↗16,009
  • 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
  • rxhanson/rectanglerxhanson avatar

    rxhanson/Rectangle

    29,247View on GitHub↗

    Rectangle is a desktop window manager that organizes open application windows into predefined layouts and grid positions. It functions as a background utility, allowing users to manipulate window frames through keyboard shortcuts or mouse gestures to improve multitasking and workspace efficiency. The application acts as a native interface extension, providing window snapping and tiling functionality that integrates directly with the operating system. It supports multi-monitor setups, enabling the distribution and alignment of windows across various displays. By utilizing the system accessibil

    Swift
    View on GitHub↗29,247
  • 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
  • autokey/autokeyautokey avatar

    autokey/autokey

    3,844View on GitHub↗

    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

    Python
    View on GitHub↗3,844
  • 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
  • jigish/slatejigish avatar

    jigish/slate

    7,836View on GitHub↗

    Slate is a keyboard-driven window manager and tiling system for macOS. It functions as a JavaScript-configurable automation tool and workflow orchestrator, allowing users to resize and position application windows through custom keystroke bindings and predefined spatial configurations. The project distinguishes itself by using a scripting API to define complex window manipulation logic, system event callbacks, and custom input mappings. This allows for the creation of sequenced action chains and the execution of external shell commands tied to specific keyboard shortcuts. Its capabilities in

    Objective-C
    View on GitHub↗7,836
  • kovidgoyal/kittykovidgoyal avatar

    kovidgoyal/kitty

    33,462View on GitHub↗

    Kitty is a high-performance, GPU-accelerated terminal emulator designed to provide a consistent and extensible workspace across different operating systems. It leverages graphics hardware to render text, images, and complex layouts with low latency, while providing a robust environment for demanding command-line workflows. The project distinguishes itself through its integrated workspace management and programmable interface. It functions as a tiling window manager that organizes terminal windows, tabs, and layouts into persistent, keyboard-driven sessions. Users can automate complex workflow

    Pythoncgogolang
    View on GitHub↗33,462
  • eczarny/spectacleeczarny avatar

    eczarny/spectacle

    13,631View on GitHub↗

    Spectacle is a keyboard-driven window manager and organizer that uses system accessibility frameworks to manipulate window coordinates and dimensions. It allows for the arrangement, resizing, and movement of application windows across multiple displays using global keyboard shortcuts. The tool focuses on multi-monitor layout management, enabling users to shift active windows between connected displays and snap windows into predefined screen regions such as halves, thirds, or corners. It also provides the ability to center and maximize windows to optimize screen real estate without using a mou

    Objective-C
    View on GitHub↗13,631
  • taojy123/keymousegotaojy123 avatar

    taojy123/KeymouseGo

    9,621View on GitHub↗

    KeymouseGo is an input automation tool and macro recorder designed to capture, edit, and replay keyboard and mouse sequences to automate repetitive desktop tasks. It functions as a scriptable input automator that translates recorded user interactions into reusable blueprints for automated playback. The system distinguishes itself through a logic-based scripting framework that supports conditional branching, sub-routine calls, and jump-to-labels for complex workflow control. It further extends runtime behavior via a plugin system that allows for the registration of custom functions to modify t

    Pythonautomatekeyboardmouse
    View on GitHub↗9,621
  • cjpais/handycjpais avatar

    cjpais/Handy

    15,515View on GitHub↗

    Handy is a local speech-to-text automation tool designed to convert spoken audio into text and inject it directly into active desktop applications. By running machine learning models entirely on the host hardware, it provides a private, offline-first environment for dictation and command execution. The system functions as a background service that manages microphone input, transcription state, and text output, enabling hands-free typing across various software environments. The project distinguishes itself through a modular pipeline that integrates local language models for post-transcription

    Rustaccessibilitycross-platformspeech-to-text
    View on GitHub↗15,515
  • 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
  • cursortouch/windows-mcpCursorTouch avatar

    CursorTouch/Windows-MCP

    4,373View on GitHub↗

    This is a Model Context Protocol server that exposes Windows desktop automation and system administration functions to large language models. It provides programmatic control of mouse, keyboard, windows, and UI elements on Windows through simulated user input, while also enabling LLMs to manage the Windows registry, processes, files, and execute PowerShell commands through a remote interface. The server supports multiple transport protocols including stdio, SSE, and streamable HTTP, allowing flexible integration with different language model clients. It implements OAuth 2.0 with PKCE for secu

    Pythonaidesktopmcp
    View on GitHub↗4,373
  • microsoft/powertoysmicrosoft avatar

    microsoft/PowerToys

    135,047View on GitHub↗

    PowerToys is a collection of background-resident system utilities designed to extend native operating system functionality and streamline desktop workflows. It operates as a modular toolkit, utilizing a central plugin-based host architecture that allows users to dynamically enable or disable specific features for system configuration and automation. By leveraging native system hooking, the suite intercepts global input and window events to provide advanced control over the computing environment. The project distinguishes itself through its focus on cross-device input orchestration and spatial

    Cadvanced-pastecolor-pickercommand-palette
    View on GitHub↗135,047
  • nousresearch/hermes-agentNousResearch avatar

    NousResearch/hermes-agent

    195,049View on GitHub↗

    Hermes-agent is an autonomous AI agent framework and runtime designed to execute complex tasks and synthesize new skills from execution traces. It includes a provider-agnostic gateway for routing requests across multiple model backends and a serverless runtime that suspends idle agent instances and resumes them on demand across containers and virtual machines. The project provides a desktop automation toolset that controls native GUI workflows on Linux by querying accessibility APIs and injecting input events. It further distinguishes itself with the ability to generate procedural skills from

    Pythonaiai-agentai-agents
    View on GitHub↗195,049
  • rigellute/spotify-tuiRigellute avatar

    Rigellute/spotify-tui

    19,019View on GitHub↗

    This project is a terminal-based music controller that provides a text-based interface for managing audio streaming, library navigation, and playback device selection. It functions as a client for remote music services, allowing users to browse catalogs, control playback states, and manage their streaming accounts directly from the command line. The application distinguishes itself through a highly customizable interface and automation capabilities. Users can modify the visual layout, adjust themes, and define custom keyboard shortcuts to create a personalized control workflow. Beyond interac

    Rustclirustspotify
    View on GitHub↗19,019
  • mamedev/mamemamedev avatar

    mamedev/mame

    9,929View on GitHub↗

    MAME is a vintage hardware emulation platform designed to recreate the circuitry of arcade games, computers, and consoles to run original software on modern devices. It functions as a retro gaming preservation framework for managing, verifying, and archiving ROM sets and disk images to ensure long-term software accessibility. The project features a system debugging tool for inspecting emulated memory, CPU registers, and execution flow via breakpoints and disassembly. It also includes a Lua-based automation layer that exposes core system state and hardware controls for custom behavior and anal

    C++
    View on GitHub↗9,929
  • glzr-io/glazewmglzr-io avatar

    glzr-io/glazewm

    12,314View on GitHub↗

    Glazewm is a tiling window manager and desktop automation framework designed to organize application windows into non-overlapping layouts. It functions as a keyboard-driven controller, allowing users to manage window focus, workspace navigation, and layout configurations entirely through custom keybindings. By intercepting system-level events, the software overrides default window placement and behavior to maximize screen space and maintain a structured workspace. The project distinguishes itself through a highly configurable environment that supports complex multi-monitor setups and dynamic

    Rusti3wmrusttiling-window-manager
    View on GitHub↗12,314
  • noah-nuebling/mac-mouse-fixnoah-nuebling avatar

    noah-nuebling/mac-mouse-fix

    9,220View on GitHub↗

    This project is a macOS input remapper and mouse customizer designed to assign custom actions and system-wide gestures to mouse button presses and movements. It functions as a mouse gesture manager and scroll enhancer, enabling the emulation of multi-finger trackpad motions and providing omnidirectional precision scrolling. The utility distinguishes itself by allowing independent scroll direction settings for a mouse without altering global trackpad configurations. It further implements a momentum-based algorithm to replace discrete scroll steps with smooth, fluid movement. The software cove

    Objective-C3rd-party-mouseinvert-scrollingmac-mouse
    View on GitHub↗9,220
  • anomalyco/opentuianomalyco avatar

    anomalyco/opentui

    12,131View on GitHub↗

    Opentui is a terminal user interface framework for building interactive command line applications. It provides a component-based system featuring a flexbox layout engine, a virtual node component tree, and a low-level 2D cell array renderer. The project is distinguished by a sophisticated keyboard binding engine that maps complex multi-stroke sequences and chords to named commands using prioritized, reactive layers. It also implements a plugin architecture that allows external modules to inject custom UI components into designated layout slots and extend input logic at runtime. Its capabilit

    TypeScript
    View on GitHub↗12,131
  • koekeishiya/skhdkoekeishiya avatar

    koekeishiya/skhd

    8,007View on GitHub↗

    skhd is a keyboard shortcut manager and hotkey daemon for macOS. It functions as an input remapper that maps custom keyboard shortcuts to shell commands and system actions via a plain text configuration file. The utility supports modal keyboard workflows, allowing groups of shortcuts to activate only when the system is in a specific operational mode. It also enables application-specific hotkeys and application blacklisting, ensuring shortcuts only trigger based on which application is currently in focus. Additional capabilities include the remapping of hardware media keys and the synthesis o

    C
    View on GitHub↗8,007
  • prefecthq/prefectPrefectHQ avatar

    PrefectHQ/prefect

    21,640View on GitHub↗

    Prefect is a workflow orchestration platform designed to define, schedule, and monitor complex data pipelines as Python code. It functions as a container-native engine that wraps individual tasks in isolated environments, ensuring consistent dependencies and resource allocation across diverse infrastructure. By utilizing a state-machine-based orchestration model, the system tracks execution progress through discrete transitions and persistent event logs to maintain reliable and observable task processing. The platform distinguishes itself through a decoupled worker-API architecture, which sep

    Pythonautomationdatadata-engineering
    View on GitHub↗21,640
  • katspaugh/wavesurfer.jskatspaugh avatar

    katspaugh/wavesurfer.js

    10,114View on GitHub↗

    wavesurfer.js is a WebAudio playback library and interactive waveform visualizer that renders audio data onto an HTML5 canvas. It enables users to see and navigate sound files through a visual representation of audio peaks, allowing for direct seeking and playback control within a web browser. The project is distinguished by its flexible rendering model, which can use precomputed peak data to display waveforms without downloading or decoding the full audio file. It utilizes a plugin-based extension model to integrate advanced tools such as spectrograms, interactive audio timelines, and real-t

    TypeScriptaudiojavascriptmusic
    View on GitHub↗10,114
  • tekezo/karabinertekezo avatar

    tekezo/Karabiner

    3,787View on GitHub↗

    Karabiner is a system-level keyboard remapper and input modifier for macOS. It functions as a kernel-level interceptor that modifies raw hardware events before they reach the operating system, utilizing a virtual hardware device to inject synthesized keyboard and mouse actions. The project distinguishes itself as a context-aware input manager, applying modification rules dynamically based on the active application, connected hardware, or current input source. It serves as a keyboard macro engine capable of automating multi-key shortcuts and conditional behaviors. Its broader capabilities inc

    C++
    View on GitHub↗3,787
  • sindresorhus/plashsindresorhus avatar

    sindresorhus/Plash

    3,973View on GitHub↗

    Plash is a macOS desktop wallpaper engine that renders live websites as the desktop background. It functions as a web-based wallpaper manager and dynamic background renderer, allowing users to display interactive websites as a persistent layer behind desktop icons and windows. The application provides automation and customization tools, including the ability to rotate through a list of web sources at set intervals and apply custom CSS and JavaScript to modify the appearance of the displayed content. It includes a dynamic viewport injection system that optimizes website layouts to fit the curr

    View on GitHub↗3,973
  • serpentai/serpentaiSerpentAI avatar

    SerpentAI/SerpentAI

    6,979View on GitHub↗

    SerpentAI is a game AI development kit and computer vision framework designed for building autonomous agents that interact with video games. It serves as a game input automation tool and a machine learning model integration engine, allowing developers to create agents that perceive game states and execute actions. The framework utilizes a plugin-based agent architecture to provide modular extensions for game-specific logic and behaviors. It features a specialized system for training, bundling, and deploying machine learning classifiers to recognize visual contexts and game states in real time

    Pythonartificial-intelligencecomputer-visiondeep-learning
    View on GitHub↗6,979
  • ronitsingh10/finetuneronitsingh10 avatar

    ronitsingh10/FineTune

    2,655View on GitHub↗

    FineTune is a macOS audio management tool designed for directing application audio streams to specific output devices and controlling per-app volume levels. It functions as an audio routing manager and a system utility for device management. The project features a multi-band audio equalizer with headphone response correction and a hardware interface for adjusting external monitor volume levels via the display data channel. It also includes a control interface that allows volume and routing changes to be triggered by external scripts using custom URL schemes. The software covers broader capab

    Swiftaudioaudio-controlaudio-utility
    View on GitHub↗2,655