Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AUC

auc is a high-performance, lightweight, cross-platform, thread-safe and dependency-minimal auto-clicker written in C11. This project utilises libuiohook library to interact with native input events directly at the operating system level, which in turn provides a robust, low-latency framework for automating mouse interactions across the entire desktop environment.

FEATURES

  • [NATIVE INPUT HANDLING]  —  Uses libuiohook to intercept and inject mouse events directly at the operating system level for high-precision, low-latency performance

  • [THREADED EXECUTION]  —  Operates with a dedicated background thread for click execution. This keeps it entirely decoupled from the main input-listening loop and hence ensures maximum responsiveness.

  • [ATOMIC CONCURRENCY]  —  Manages state across threads with C11 <stdatomic.h> primitives. This prevents race conditions and ensures stability during high-frequency operations.

  • [BURST CLICKING]  —  Allows you to define specific click counts per iteration. This allows for burst clicks instead of ordinary clicks. For example, when you set this to 100 and set an interval of 1 second, auc would click a hundred times per second.

  • [PRECISE TIMING]  —  Allows you to set intervals between bursts upto millisecond-precision. This feature is provided via the flexible case-insensitive command-line interface.

  • [HOTKEY TRIGGER]  —  Uses F6 as the hotkey to toggle the auto-clicker. An emergency hotkey ESC is provided for immediate termination.

BUILD INSTRUCTIONS

PREREQUISITES:

  • Standard C11-compliant compiler

  • CMake

  • libuiohook

Obtain a local copy of this repository

%  git clone https://github.com/vs-123/auc.git

Create a build/ directory inside the project root and use to build

%  cd auc
%  mkdir build
%  cmake ..
%  cmake --build .

You may now use the generated binary auc

%  ./auc --help

CLI

auc uses a simple positional argument system combined with optional flags.

% ./auc [FLAGS] <INTERVAL_MS> <CLICKS_PER_ITER>
  • <INTERVAL_MS>  —  The delay between click-bursts in milliseconds (minimum 100ms).

  • <CLICKS_PER_ITER>  —  The number of individual clicks executed during one interval (minimum 1).

[EXAMPLE] To perform 50 right-clicks every 200 milliseconds:

% ./auc --right 200 50
[STATUS] AUC STARTED.
   *  INTERVAL -- 200
   *  CLICKS PER INTERVAL -- 50
   *  PRESS F6 TO TOGGLE

LICENSE

This project is licensed under the GNU Affero General Public License version 3.0 or later.

NO WARRANTY PROVIDED

About

dead-simple Auto-Clicker in C

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages