Autopilot Assistant

Simplify Windows Autopilot enrollment Capture HWID or upload directly to Intune Use a secure Microsoft Graph workflow with built-in safeguards

Autopilot Assistant

Manage Windows Autopilot enrollment from a modern PowerShell and WPF workspace built for production provisioning workflows. Capture hardware hashes, authenticate to Microsoft Graph with delegated access, import devices into Intune, block duplicate uploads, review results, and keep every action documented from one focused interface.

Product screenshot
HWID captureExport Autopilot-ready hardware hash files without starting an upload session
Duplicate protectionCatch serial-number conflicts before duplicate devices reach Autopilot
Clear resultsReview success, queued, duplicate, and failed imports at a glance
Operational loggingKeep live status visibility and durable local logs for every run

Why teams rely on it

Autopilot Assistant turns several manual enrollment steps into a guided workflow that is easier to repeat across staging, pilot, and production scenarios. It gives IT teams one organized place to capture hardware identity, authenticate securely, upload devices, and confirm what happened afterward.

  • Collect compliant hardware hash data for offline preparation or later upload.
  • Connect to Microsoft Graph through interactive delegated authentication instead of device-code prompts.
  • Import devices into Intune Autopilot with built-in duplicate detection and status polling.
  • Keep every action traceable through the Message Center and local application logs.

What it includes

Device information panel

Review the model, manufacturer, serial number, storage, TPM version, connectivity, and current session context before you start.

HWID collection mode

Export a compliant Autopilot CSV without connecting to Microsoft Graph.

Flexible upload methods

Upload from CSV or JSON, or generate a single-device CSV directly from the current machine.

Duplicate detection

Check serial numbers before upload so previously imported devices are skipped instead of duplicated.

Retry engine

Re-submit failed records only while leaving successful and skipped rows untouched.

Structured results

Review success, queued, duplicate, and failed outcomes with clear totals after every import run.

Collect or upload on your terms

Method 1 - Collect HWID only

Use the offline collection path when you need a compliant Autopilot CSV without opening an upload session.

Device Serial Number,Windows Product ID,Hardware Hash "ABC12345","00330-80000-00000-AAOEM","<base64HWID>"

Method 2 - Upload to Intune Autopilot

Authenticate interactively to Microsoft Graph, import CSV or JSON input, or generate a single-device upload package with optional deployment metadata.

  • Optional Group Tag
  • Optional Assigned User UPN
  • Optional Assigned Computer Name
  • Automatic polling for Complete, Queued, or Failed states

Application data stays in C:\AutopilotAssistant, with dedicated HWID and Logs folders. Operational data is not intended to be stored outside this root path.

Safeguards and operational visibility

The tool is built to reduce preventable enrollment mistakes before import starts and to make outcomes easy to review afterward.

  • Pre-checks validate administrator rights, internet access, required Graph modules, and duplicate serial status.
  • Proxy-aware Microsoft Graph connectivity helps authentication and import flows work in managed environments.
  • Session-only in-memory token caching reduces repeated prompts during the active session.
  • Real-time Message Center logging surfaces INFO, SUCCESS, WARN, and ERROR events as the workflow progresses.

Default folders

C:\AutopilotAssistant\ ├── HWID\ └── Logs\

Log output

C:\AutopilotAssistant\Logs\app_YYYYMMDD.log

Structured result totals include clear counts for Total, Success, Failed, Duplicate, and Queued.

Requirements and permissions

System requirements

  • Windows 10 or Windows 11
  • Windows PowerShell 5.1
  • Run as Administrator for hardware hash collection
Install-Module Microsoft.Graph.Authentication -Scope AllUsers -Force Install-Module MSAL.PS -Scope AllUsers -Force

Microsoft Graph permissions

Delegated authentication requests the permissions required for Autopilot enrollment workflows and needs appropriate Intune access in your tenant.

User.Read Device.Read.All DeviceManagementServiceConfig.ReadWrite.All

Run and input options

Use the script edition for direct PowerShell execution or the packaged executable for a console-free experience, then provide CSV, JSON, or current-device data based on your onboarding scenario.

How to run

Set-ExecutionPolicy Bypass -Scope Process -Force .\Autopilot Assistant.ps1 Autopilot Assistant.exe

Supported CSV format

Device Serial Number,Windows Product ID,Hardware Hash "PF12345","00330-80000-00000-AAOEM","<base64HWID>"

Typical onboarding workflow

1
Launch as Administrator. Open the workspace with the elevation required for HWID collection.
2
Review device information. Confirm the serial number, TPM, connectivity, storage, and current session details.
3
Choose the path. Collect hardware hash only, or connect to Microsoft Graph for direct upload.
4
Provide input. Use CSV or JSON, or let the tool build a single-device package automatically.
5
Upload and monitor. Track completion, queued items, duplicates, and failures through structured results.
6
Retry selectively. Re-run only failed records without disturbing successful or skipped devices.

Project details

Platform and design

Modern WPF-based PowerShell interface built for production Autopilot enrollment tasks.

License: MIT Platform: PowerShell + WPF Auth: Interactive delegated Microsoft Graph Version: 2.0 Date: 2026-02-25

Author and disclaimer

Author: Mohammad Abdelkader

Website: momar.tech

This tool is provided as-is. Test in staging before production, verify Graph permissions, and confirm organizational compliance before deployment.

Start Autopilot enrollment with more control

Use one structured interface to capture hardware identity, upload devices to Intune, prevent duplicates, and verify each result with confidence.

View on GitHub
تعليقات