PowerShell-based troubleshooting tool for diagnosing and resolving issues on Intune-managed Windows devices.
Tool · App · CLI · PowerShell · Practical by design
- Unified single-device view with Intune + Entra ID context
- Built-in device actions (
Sync,Restart,Shutdownwhen available) - Actionable recommendations based on current device signals
- One-click remediation trigger for individual devices
- Deep links to Intune admin center and Azure portal from key IDs
| Device overview | Device actions |
|---|---|
![]() |
![]() |
| Recommendations | Remediation trigger |
|---|---|
![]() |
![]() |
- Windows host with PowerShell and WPF support
- Access to Microsoft Intune and Microsoft Graph
- User account with sufficient Intune/Entra admin rights
The tool uses Microsoft Graph beta profile.
On sign-in, the app requests:
User.Read.AllUser.ReadGroup.Read.AllDeviceManagementManagedDevices.PrivilegedOperations.AllDeviceManagementApps.Read.AllDeviceManagementConfiguration.Read.AllDeviceManagementManagedDevices.Read.All
If remediation/group operations fail in your tenant, validate additional delegated permissions and role assignments for group write and remediation assignment operations.
git clone https://github.com/JayRHa/IntuneDeviceTroubleshooter.git
cd IntuneDeviceTroubleshooterUnblock bundled DLLs once (recommended):
Get-ChildItem .\libaries\*.dll | Unblock-FileRun the app:
powershell -ExecutionPolicy Bypass -File .\Start-DeviceTroubleshooter.ps1The script installs Microsoft.Graph automatically if it is missing.
When you start a remediation script for one selected device, the tool:
- Uses (or creates) a security group named
MDM-Remediation-Trigger-{ScriptName} - Adds the selected device to that group
- Assigns the remediation script to the group (if not already assigned)
- Runs the remediation on the next service cycle
The group prefix can be adjusted in Start-DeviceTroubleshooter.ps1.
- Device list is designed for managed
WindowsandmacOSdevices - Remediation tab is shown for Windows devices
- Some API calls rely on Microsoft Graph
betabehavior
- Startup fails while loading DLLs: run
Get-ChildItem .\libaries\*.dll | Unblock-File - Graph sign-in fails: ensure Microsoft Graph outbound access, allowed consent for scopes, and sufficient Intune/Entra role permissions
- Remediation does not apply: check group creation/member add and verify remediation assignment + device eligibility in Intune
- Jannik Reinhard
- Website: https://jannikreinhard.com
- X: https://x.com/jannik_reinhard
- LinkedIn: https://www.linkedin.com/in/jannik-r/
MIT. See LICENSE.
Built and maintained by Jannik Reinhard · Microsoft MVP for Security and AI Platform.
Stay healthy, Cheers Jannik



