Macronyx
Macronyx is a cross-platform macro automation engine with timeline editing, trigger-based execution, and intelligent playback — built for gamers, power users, and automation enthusiasts.
Install / Use
/learn @DefinitelyN0tMe/MacronyxREADME
MACRONYX
Desktop automation for gamers and power users
Record, edit, and replay mouse, keyboard, and scroll actions with sub-millisecond precision. Chain macros together, trigger them automatically, and track performance with built-in analytics.
Download Latest Release · Features · Quick Start · Roadmap · Contributing
</div>What's New in v1.6
- Analytics Dashboard — track total plays, time saved, success rates, and per-macro performance over time
- Performance Profiling — timing drift analysis with mean/P95/max metrics, sparkline charts, and accuracy percentages
- Relative Positioning v2 — record mouse coordinates relative to windows; macros adapt when windows move or resize
- Export & Reset Analytics — download playback history as CSV/JSON, or clear all data with one click
- Chain Pause/Resume — proper pause support during chain playback with correct overlay status
See the full Changelog for details.
Features
Recording
- Capture mouse movement, clicks (left/right/middle), scroll wheel, and keyboard input
- Pause/resume mid-recording without stopping
- Configurable mouse sampling rate (8ms–100ms)
- Selective capture — toggle mouse, keyboard, or scroll independently
- Relative positioning — record coordinates relative to the active window so macros adapt when windows move or resize
- DPI-aware capture across high-DPI and multi-monitor setups
- Real-time event counter and elapsed timer
Playback
- Adjustable speed: 0.25x to 4x
- Loop with configurable repeat count and delay between iterations
- Pause/resume at any point
- Humanization — natural variance in timing and cursor position
- Bezier mouse curves — configurable curvature, overshoot, and speed profiles (constant / ease-in-out / natural)
- Per-event results — success/failed/skipped tracking with live overlay counter and post-playback summary
- Window-aware smart scaling — coordinates scale proportionally when the target window resizes
- DPI-aware playback with pixel-perfect cursor positioning
Timeline Editor
- Visual timeline with separate mouse, keyboard, and logic tracks
- Multi-select: Ctrl+click, Shift+click range, Ctrl+A select all
- Drag-and-drop events to reposition in time
- Copy/paste with Ctrl+C / Ctrl+V
- Event grouping — named groups with colored timeline bands
- Batch editing — offset timestamps, scale delays, assign groups across selections
- Smart delay smoothing — moving-average with configurable window and min/max clamping
- Event inspector with editable properties (timestamp, position, key, delay, conditions)
- Mouse path visualization canvas with cursor trajectory preview
- Playback preview — animated cursor on canvas with play/pause/seek controls and speed selector
- Auto-save with dirty indicator and navigation guard
- Full undo/redo support
Automation & Triggers
- Trigger types:
- Hotkey combo — press-to-record custom key combinations
- Schedule — cron-based with 16 quick presets (every 5 min, hourly, daily, weekdays, etc.)
- Window focus — fire when a specific app gains focus (process name, title substring, or regex)
- Pixel color — fire when a pixel matches a target color within tolerance; supports repeat mode
- Conditional logic (IF / ELSE / END):
- Pixel color at a position
- Window title matching (contains, equals, regex)
- Time of day (after/before)
- Full nesting support (IF inside IF)
- Macro chaining — run macros in sequence (A → B → C) with per-step delays, drag-to-reorder, and enable/disable toggles
Analytics & Performance
- Dashboard with three tabs:
- Overview — total plays, time saved, success rate, active macros, 14-day usage chart, top macros
- Per-Macro — run history, success rate donut chart, average duration, last run timestamp
- Performance — timing drift analysis with mean/P95/max metrics, accuracy percentage, sparkline, and histogram
- Persistent logging — every playback run is logged with timestamps, event counts, trigger source, and per-event timing
- Export playback data as CSV or JSON
- Reset all analytics with a single click (with confirmation)
Profiles
- Save snapshots of settings as named profiles
- Switch instantly between configurations
- Auto-switch profiles based on the foreground application (configurable rules by process name, title, or regex)
- Create, rename, update, and delete from Settings → Profiles
System Integration
| Action | Default Hotkey |
|--------|:-------------:|
| Start recording | F9 |
| Stop recording | F10 |
| Pause / Resume | Shift+F9 |
| Start playback | F11 |
| Stop playback | Shift+F11 |
| Emergency stop | Escape |
- All hotkeys are fully customizable and work globally (even when Macronyx is not focused)
- Floating overlay widget — compact always-on-top indicator with status, timer, event counter, and progress bar (visible above fullscreen apps)
- Notification sounds — audio feedback for recording, playback, and pause actions
- System tray — minimize to tray and control entirely via hotkeys
- Portable mode — store settings and macros next to the executable for USB use
Cross-Platform
| Platform | Installer | Portable |
|----------|:---------:|:--------:|
| Windows | .exe setup | .exe portable |
| macOS | .dmg | .zip |
| Linux | .deb | .AppImage |
Download
Windows: choose
macronyx-*-setup.exefor the installer ormacronyx-*-portable.exefor a single-file portable version.
Windows SmartScreen Warning
Note: On first launch, Windows Defender SmartScreen may show an "unrecognized app" warning. This happens because the app is not code-signed (certificates cost ~$300/year — not feasible for a free open-source project).
To proceed: click "More info" → "Run anyway".
Macronyx is fully open-source — you can inspect the code or build from source if you prefer.
Screenshots
<p align="center"> <img src="assets/overview.gif" alt="Macronyx overview" width="900"> </p> <p align="center"> <img src="assets/editor.gif" alt="Timeline editor and library" width="900"> </p>Quick Start
- Open Macronyx
- Go to the Recorder tab
- Press F9 to start recording
- Perform your actions — move the mouse, click, scroll, type
- Press F10 to stop recording
- Your macro appears in the Library automatically
- Select a macro and press F11 to play it back
Editing Macros
- Open a macro from the Library and click Edit
- Click events on the Timeline to select (Ctrl+click for multi-select, Shift+click for range)
- Drag events to reposition, or Ctrl+C / Ctrl+V to copy/paste
- Use the Event Inspector to adjust timestamps, positions, delays, and keys
- Use Smooth Delays to clean up irregular recording timing
- Preview the cursor path on the Mouse Path canvas
- All operations support undo/redo; changes auto-save every 60 seconds
Triggers & Automation
- Open a macro in the Editor → switch to the Triggers tab
- Click "+ Add" and choose a trigger type (hotkey, schedule, window focus, or pixel color)
- Configure the trigger and toggle it ON, then Save
- Enable triggers globally in Settings → General → Enable Triggers
Macro Chains
- Go to the Chains page from the sidebar
- Click "+ New Chain" and add macros from the dropdown
- Drag to reorder, set delays between steps, toggle steps on/off
- Press Play or F11 to execute the chain
Conditional Logic
- Open a macro in the Editor → Timeline tab
- Click the "+ IF" button in the toolbar
- Configure the condition in the Event Inspector (pixel color, window title, or time of day)
- Place events between IF and ELSE (runs when true) or between ELSE and END (runs when false)
- Conditions can be nested for complex branching
Profiles
- Go to Settings → Profiles
- Click "Save Current as Profile" to create a snapshot
- Click Activate to switch; double-click to rename
- Enable Auto-Switch Profiles in Settings to change profiles automatically when apps gain focus
Silent Mode
- Enable Minimize to Tray in Settings → General
- Close the window — Macronyx runs in the system tray
- Use global hotkeys to control recording and playback
Portable Mode
- Download the portable
.exe - Go to Settings → Advanced and click Enable next to Portable Mode
- Restart — settings and macros are stored in a
data/folder next to the executable
Build from Source
Requirements
- Node.js 20+
- npm 9+
- Git
Linux additional packages:
sudo apt install libx11-dev libxtst-dev libpng-dev
Build
git clone https://github.com/DefinitelyN0tMe/Macronyx.git
cd Macronyx
npm install
npm run dev # Development mode with hot reload
npm run build # Build for production
np
