PSMouseJiggler
1.1.0
A PowerShell module to simulate mouse movements and prevent system idle. Includes GUI interface, configurable movement patterns, and scheduled task support.
Minimum PowerShell version
5.1
Installation Options
Owners
Copyright
(c) Steven Wight (PowerShell Young Team). All rights reserved.
Package Details
Author(s)
- Steven Wight (PowerShell Young Team)
Tags
Mouse Jiggler Automation Anti-Idle GUI Windows
Functions
Start-PSMouseJiggler Stop-PSMouseJiggler Get-NewMousePosition Show-PSMouseJigglerGUI Get-Configuration Save-Configuration Update-Configuration Reset-Configuration Get-RandomMovementPattern Move-Mouse Start-MovementPattern Stop-MovementPattern Get-PSMJScheduledTasks New-PSMJScheduledTask Remove-PSMJScheduledTask Start-PSMJScheduledTask Stop-PSMJScheduledTask Prevent-SystemIdle Send-KeyboardInput Send-MouseInput Start-KeepAwake
PSEditions
Dependencies
This module has no dependencies.
Release Notes
Version 1.1.0 (October 2025)
- Added modern tabbed GUI interface with three main tabs:
- Basic Mode: Simple mouse jiggling controls
- Advanced Mode: Multi-method keep-awake configuration
- Quick Launch: Five pre-configured profiles for common scenarios
- Implemented Quick Launch profiles:
- [Mouse] Basic Discrete: Random movements with incognito mode
- [Lock] Maximum Security: Hardware + System API for strict policies
- [Key] Keyboard Only: Non-visual keep-awake method
- [API] System API Only: Minimal resource usage
- [MAX] All Methods: Maximum reliability
- Added advanced keep-awake methods:
- Hardware-level mouse input using SendInput API
- Keyboard input simulation (F15 key presses)
- Direct Windows power management (SetThreadExecutionState API)
- Created Start-KeepAwake function for multi-method keep-awake
- Added -Incognito parameter to Start-PSMouseJiggler and Start-KeepAwake
- Implemented Prevent-SystemIdle, Send-KeyboardInput, and Send-MouseInput functions
- Enhanced GUI with incognito mode support (minimizes window, clears console)
- Fixed emoji encoding issues in GUI (replaced with text labels)
- Improved GUI state management for reopening after console start
- Renamed scheduled task functions with PSMJ prefix (already in v1.0.3)
- Comprehensive documentation updates across all README and USAGE files
- Updated Get-Help comments with new parameters and examples
- Requires .NET Framework 4.7.2+ for P/Invoke features
Version 1.0.4
- Add Incognito Mode feature for discrete operation in GUI and console by @PowerShellYoungTeam in #13
Version 1.0.3
- Renamed scheduled task functions to prevent conflicts with other modules:
- Get-ScheduledTasks → Get-PSMJScheduledTasks
- New-ScheduledTask → New-PSMJScheduledTask
- Remove-ScheduledTask → Remove-PSMJScheduledTask
- Start-ScheduledTask → Start-PSMJScheduledTask
- Stop-ScheduledTask → Stop-PSMJScheduledTask
- Fixed PSScriptAnalyzer warning
- Improved module compatibility with other PowerShell modules
Version 1.0.2
- Added advanced keep-awake methods: combines mouse, keyboard, and system API techniques for reliable anti-idle functionality
- Introduced hardware-level input simulation for broader compatibility with strict power management
- New API functions: Prevent-SystemIdle, Send-KeyboardInput, Send-MouseInput, Start-KeepAwake for custom automation and integration
- Updated GUI layout: supports advanced keep-awake options and method selection
- Enhanced configuration management: improved loading, saving, and updating of user preferences
- Improved scheduled task support for automated jiggling
- Fixed variable naming to avoid PowerShell built-in conflicts
- Minor bug fixes and usability improvements
- Ready for PowerShell Gallery distribution
FileList
- PSMouseJiggler.nuspec
- config\default.json
- PSMouseJiggler.psm1
- README.md
- PSMouseJiggler.psd1
Version History
| Version | Downloads | Last updated |
|---|---|---|
| 1.1.0 (current version) | 4 | 10/26/2025 |
| 1.0.4 | 4 | 10/26/2025 |
| 1.0.3 | 4 | 10/22/2025 |
| 1.0.2 | 24 | 9/14/2025 |
| 1.0.1 | 8 | 9/14/2025 |