Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fix-It Dashboard

A portable Windows utility for recording and replaying GUI fixes on the same PC. IT records a common fix once (Outlook send/receive, audio-device switch, Wi-Fi reconnect); the end user later self-serves it from a simple tile dashboard.

Zero AI runtime. Zero network calls. Zero installer. Zero admin required.


What it does

  • IT (Editor mode): record a fix on the user's PC, save it as a clickable tile.
  • End user (Player mode): open the dashboard, click the tile, fix runs.

Same PC for record and replay. Workflows live in %APPDATA%\MacroRecorder\workflows\. Every action is logged to %APPDATA%\MacroRecorder\logs\activity.log.


Quick start (end users)

  1. Double-click FixItDashboard.exe.
  2. Click a tile to run that fix.
  3. Press Esc at any time to abort a running replay.

If the dashboard is empty, no fixes have been recorded on this PC yet — ask IT.


For IT — recording a fix

  1. Run FixItDashboard.exe --editor (or click Editor Mode in the footer and confirm the warning modal).
  2. Click + Record New Fix.
  3. Enter a name, description, and icon (any character or emoji).
  4. Click Start Recording. The main window hides and a small indicator appears in the top-right corner of the screen.
  5. Perform the fix on the user's PC.
  6. Click Stop on the indicator (or press Esc).
  7. Review the event count. Click Save. The tile appears on the dashboard.

Pausing during recording

If you need to type a password while recording, press Ctrl+Shift+P to pause, type the password, and press Ctrl+Shift+P again to resume. Input captured during pause is dropped — it never enters the .mrec file.

Editing and deleting fixes

In Editor Mode each tile shows ✏ and ✕ icons in its top-right corner:

  • ✏ opens a metadata editor (name, description, icon). The event sequence itself is not editable — re-record to change what the fix does.
  • ✕ deletes the .mrec file after a confirmation prompt.

Speed multiplier

The Player-mode footer has a speed dropdown (0.5× / 1× / 2×). Use 2× for fixes that contain long delays you want to compress; use 0.5× when a fix is flaky and the target app needs more time to react.


Constraints (by design)

  • Same-PC only. Recordings are tied to the screen layout, DPI, and installed-app state of the PC where they were recorded. A fix recorded on machine A will probably not work on machine B.
  • No admin privileges. The recorder cannot capture or replay input directed at elevated/UAC windows. Don't record fixes that require admin.
  • GUI fixes only. If a fix is one PowerShell line, write a script — don't record clicks.

What this app does and does not touch

What Where
Workflow files %APPDATA%\MacroRecorder\workflows\*.mrec
Activity log %APPDATA%\MacroRecorder\logs\activity.log
Portable fallback (if %APPDATA% is not writable) .\MacroRecorder\ next to the .exe
Registry writes None
Services installed None
Scheduled tasks created None
Network connections None at any point, for any reason
Telemetry / analytics None

All workflow files are plain JSON — human-readable, diff-able, and version-controllable. Open one in Notepad to inspect.


Running from source (for review or development)

pip install -r requirements.txt
python -m pytest                      # runs unit tests
python -m src.main                    # launches dashboard (Player mode)
python -m src.main --editor           # launches dashboard (Editor mode)

The unit tests cover the storage layer (JSON load/save, schema validation, library listing), the player engine (timing, abort, cursor restore, speed scaling), and the recorder (event shapes, pause gating, delta timestamps). The GUI is verified by the manual smoke checklist at tests/manual-smoke-checklist.md.

Building the .exe

On a Windows machine with Python 3.11+:

pip install -r requirements.txt
pyinstaller build.spec

The binary lands at dist\FixItDashboard.exe (~15-25 MB). Generate a checksum for IT review:

certutil -hashfile dist\FixItDashboard.exe SHA256 > dist\FixItDashboard.exe.sha256

Unsigned binaries trigger a one-time Windows Defender SmartScreen click-through on first launch. If your bank requires signed binaries, route dist\FixItDashboard.exe through your internal code-signing process — nothing in the build needs to change.


Uninstalling

  1. Delete FixItDashboard.exe.
  2. Optionally delete %APPDATA%\MacroRecorder\ (this also removes saved workflows and the audit log).

There is nothing else to remove. No registry keys, no services, no installer entries.


Troubleshooting

Esc doesn't abort a replay. On Windows, corporate antivirus sometimes blocks the low-level keyboard hook pynput installs. Verify with IT that pynput's hook is allowed; alternatively, signing the binary generally clears this.

A recorded fix clicks the wrong thing. Recordings use absolute screen coordinates. If the user moved a window, docked a second monitor, or changed DPI scaling since the fix was recorded, the coords will be off. Re-record on the user's current layout. (A future version may add window-relative coordinates; for now, re-record.)

Nothing happens when I click Start Recording. Check %APPDATA%\MacroRecorder\logs\activity.log for ERROR lines. The most common cause is %APPDATA% being non-writable — the app then falls back to a portable folder next to the .exe, which your user may not have write access to either.

The dashboard says "N fix(es) could not load". One of the .mrec files is corrupt. Check the activity log for the filename and either fix the JSON by hand or delete the file.


License

GNU General Public License v3.0. See CREDITS.md for details on why (spoiler: the engine is derived from PyMacroRecord, which is GPL v3).


References

  • Project brief: 01-project-brief.md
  • Design spec: 02-design-spec.md
  • Implementation plan: 03-implementation-plan.md
  • Manual smoke checklist: tests/manual-smoke-checklist.md

About

Portable Windows tool for IT to record GUI fixes and replay them on the same PC. Zero network zero admin zero installer. GPL v3.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages