Macronaut → Privacy

Privacy

Macronaut is an app that watches your keyboard and mouse in order to do its job. That is a lot to ask of somebody, so this page is specific rather than reassuring: it says what leaves your computer, what is in it, and what you can do about it.

Last updated 16 September 2026 · Macronaut 2.3.5

There is no account, no analytics, no advertising and no tracking of any kind. Nothing you record, type, click or see is ever transmitted. Exactly two things reach the network, and one of them asks your permission first.

What never leaves your machine

All of it runs locally. Your scripts are files in %USERPROFILE%\.macronaut, in plain JSON you can read, edit, copy and delete yourself. Specifically, none of the following is ever uploaded, and there is no code in the program that could:

  • Your recordings, scripts and their names
  • Your keystrokes and mouse movements — while recording, while replaying, or at any other time
  • Screenshots, screen contents, or the images used by image-matching steps
  • Text read by the OCR step, which uses the OCR engine built into Windows and does not use a cloud service
  • Your settings, your clipboard, or the names of the programs you use Macronaut with

One correction, made 3 September 2026. This list used to say “your file paths” as well, and that was not accurate. A crash report contains a traceback, and a traceback names the file each line of code came from — almost always Macronaut’s own files, but a file of yours can appear in one, for instance if a step could not open a template image you had chosen. Those paths are redacted (see what is stripped out) and you are shown the whole report before it goes, but they are not absent, and this page should not have implied they were. The redaction section was right and this bullet was wrong; the two contradicted each other.

The two things that do use the network

1. The update check

Macronaut asks GitHub whether there is a newer release, by fetching one small file from the public releases page. The request contains no identifier and nothing about you; it is the same request your browser would make if you opened that page. As with any request to any website, GitHub can see the IP address it came from. You can turn the check off in Settings, and Macronaut then never contacts the network on its own at all.

2. Crash reports — only if you say yes

If Macronaut dies, it writes a report to disk. It is not sent then. The next time the app starts, it asks you, once, and there is a button to read the exact report before you decide. If you decline, the reports are deleted rather than merely kept back, and you are not asked again. You can change the answer later in Settings.

If you agree, the report goes to Sentry, an error-tracking service, and nowhere else. Here is what is in one:

SentNot sent
The error and its Python traceback — module names, function names, line numbers Your name, e-mail or any account identifier — the app holds no such thing to send
The Macronaut version that crashed, and whether it was the .exe or run from source The content of your scripts, or anything you recorded
Your Windows version, CPU architecture and Python version Keystrokes, mouse positions, clipboard or screen contents
Which kind of step was running when it died (“click”, “wait”, “detect image”), and a short trail of the last such events Your IP address is not put in the report, though as with any network request the receiving server sees it

Your Windows account name is very often your real name, and it appears in every file path in every traceback. Macronaut replaces your home directory with %HOME% and your account name with %USER% before the report is written to disk, so the unredacted version is never stored, let alone sent. Two honest limits on that: an account name shorter than three characters is left alone, because substituting it would corrupt unrelated words; and it is text substitution, so it cannot promise to catch a name that appears in some form it has not been told about. This is also why you are shown the report before it goes.

This website

These pages are static files on GitHub Pages. There are no cookies, no analytics, no tracking pixels and no third-party scripts — you can confirm that by viewing the source of any page here, or by reading the generator that produces them. GitHub serves the files and keeps its own server logs, which is outside our control and covered by GitHub's privacy statement.

Data we hold about you

None, unless you have e-mailed us or sent a crash report. Crash reports are retained for 90 days by Sentry and then deleted automatically. If you have written to us, we hold that e-mail. There is nothing else, no profile, and nothing is ever sold, rented or shared for advertising.

Children

Macronaut is a desktop utility and is not directed at children, and it collects nothing that would identify anyone of any age.

Your rights, and how to use them

Under the GDPR and similar laws you may ask what is held about you, ask for it to be corrected, or ask for it to be erased. In practice the answer is nearly always “nothing” — but if you sent a crash report and want it removed, write to gerbenvanpoucke0@gmail.com with roughly when it was and it will be deleted. No account is needed to ask, and there is no charge.

You can also simply not send them, which is the default.

How to check any of this

Do not take it on trust. The complete source is public under the GPL, and the parts this page describes are small enough to read in a sitting: crashreport.py writes the reports and does the redaction, crashsend.py builds and sends them, crash_ui.py is the dialog that asks, version.py holds the one update URL, and licensing.py contains no network code at all. If this page and the code ever disagree, the code is the truth and I would like to be told — gerbenvanpoucke0@gmail.com.

Changes

If this policy changes materially, the date at the top changes and the old wording stays in the page's revision history, which is public. There is no mailing list to notify, because there is no mailing list.

Who to contact

Macronaut is made by one person: Gerben van Poucke, Belgium. gerbenvanpoucke0@gmail.com.