Skip to content

v1.6.0

Choose a tag to compare

@github-actions github-actions released this 27 Aug 07:15
· 20 commits to master since this release

Universal build (Apple Silicon + Intel), macOS 13 or newer. Ad-hoc signed, not notarised.

Install

The app is ad-hoc signed but not notarised, so macOS blocks it on first launch with:

Apple could not verify "amm.app" is free of malware that may harm your Mac or
compromise your privacy.

That is expected. Two ways past it — pick one.

Finder

  1. Unzip and drag amm.app into Applications.
  2. Double-click it. The dialog above appears — click Done.
  3. Open System Settings → Privacy & Security, scroll to the bottom, and click
    Open Anyway next to the note about amm. Confirm with Touch ID or your password.

On macOS 15 and newer this is the only way through the GUI: right-click → Open no longer
bypasses the check.

Terminal

Clearing the quarantine attribute before the first launch avoids the dialog entirely:

ditto -x -k ~/Downloads/amm-1.6.0-universal.zip ~/Downloads/
mv ~/Downloads/amm.app /Applications/
xattr -cr /Applications/amm.app
open /Applications/amm.app

The order matters: once macOS has assessed the app, the dialog is what you get.

Then grant permission

System Settings → Privacy & Security → Accessibility → add amm.

Upgrading from an earlier version? Remove amm from that list with the minus
button and add it again.
macOS pins the permission to the binary's code signature, so
a replaced app leaves a tick box that looks fine but no longer grants anything.
Toggling the checkbox does not refresh it. The same applies to Launch at Login
untick and tick it once after updating.

Nothing needs installing to run it: no Go, no Xcode tools, no Rosetta.

Or build it yourself

Needs Go 1.21+ and the Xcode Command Line Tools. A self-built app is never quarantined,
so none of the above applies:

git clone https://github.com/clementcopper/automatic-mouse-mover.git
cd automatic-mouse-mover
make build

What's new

  • New menu bar artwork, and the icon no longer has to be square. It is scaled to
    16 pt tall with the width following the aspect ratio, so a wide mark stays wide.

  • The binary is 36% smaller. 3.37 MB → 2.15 MB per architecture; the download went
    from 3.8 MB to 1.8 MB. Panic traces are unaffected — Go resolves them through its own
    pclntab, not the symbol table that was stripped.

  • Logs are readable at last. A Finder-launched app has no stderr, so everything the
    app wrote went nowhere. It now uses unified logging:

    log show --last 10m --predicate 'subsystem == "com.pg.amm"' --style compact
  • Builds are portable. The deployment target is pinned to macOS 13, so a bundle built
    on a newer Mac still runs on Ventura.

  • Swapping the menu bar icon is now dropping a tray.png or tray.svg into
    assets/icon/ — no code generator step. make icons builds the Finder icon from a
    single SVG and warns if the menu bar artwork carries colour, which would silently
    collapse it into a silhouette.

Carried over from 1.5.0

  • Launch at Login — registers the app as a login item so the mover runs from the
    moment you log in. Off by default.
  • Resume After Wake — makes sure the mover is going again after the Mac wakes, and
    checks immediately instead of waiting out the next interval. On by default. Something
    stopped on purpose stays stopped.
  • The app asks macOS whether it actually holds Accessibility permission and says so on
    the first failed move, instead of blaming the mouse after five minutes.

Since the upstream project

Rewritten to carry no runtime dependencies. robotgo, activity-tracker,
mac-sleep-notifier and systray are replaced by around 250 lines of CoreGraphics and
AppKit.

Gone along with the code that caused them: the crashes on lid close and screen lock
(prashantgupta24#63, prashantgupta24#64), the macOS 15 build failure (prashantgupta24#62), a ~10 MB/day memory leak (prashantgupta24#29), and stuck
input from event taps that were never unwound (prashantgupta24#54, prashantgupta24#22). Added: a native Apple Silicon
build (prashantgupta24#33) and a menu bar icon that follows light and dark mode (prashantgupta24#56).

Based on the original by Prashant Gupta, MIT licensed.


Verified on Intel (macOS 13.7.8) and on Apple Silicon (M2, macOS 26): the cursor moves
on schedule, Teams stays active instead of going idle, and the menu, greying and icon
tinting behave. The release artefact itself was downloaded, installed and run on Intel;
on Apple Silicon the app was built from source.