A non-destructive PowerShell toolkit for collecting Windows endpoint readiness signals before an Intune, Autopilot, or management migration.
- OneDrive and Known Folder Move readiness observations
- Company Portal package detection
- Entra/hybrid join state parsing from
dsregcmd - Windows Recovery Environment and recovery-partition checks
- Configuration Manager and co-management signal detection
- Reset/Fresh Start prerequisite reporting without initiating either action
- A consolidated migration-state object suitable for JSON or CSV export
This sanitized portfolio project uses generic examples and contains no device, tenant, user, or client data. It is a readiness collector, not a migration engine.
- Windows 10/11
- PowerShell 5.1+ (PowerShell 7 supported)
- Run in a 64-bit session; administrative access improves visibility for some checks
Import-Module ./src/Intune.MigrationToolkit.psd1 -Force
Get-IntuneMigrationState | ConvertTo-Json -Depth 6 | Set-Content ./migration-state.json
Test-OneDriveKfmReadiness
Get-DeviceJoinState
Get-RecoveryReadiness
Get-ManagementAgentStateAll exported commands are read-only. New-MigrationActionPlan produces a plan only; it never starts reset, Fresh Start, enrollment, uninstall, or remediation.
| Area | Evidence collected |
|---|---|
| KFM | OneDrive executable, account/configuration registry signals, known-folder paths |
| Company Portal | AppX package presence for current/all users when accessible |
| Join | Parsed dsregcmd /status device-state fields |
| Recovery | reagentc /info, recovery partition inventory, system-drive free space |
| Management | ConfigMgr agent/service/registry signals and co-management capability hints |
Registry and command output can vary by Windows release, architecture, policy, and execution context. Treat Unknown as a prompt for operator review, not a pass or failure.
Pester tests use injected sample text and do not require a managed device:
Invoke-Pester ./testsSee ARCHITECTURE.md and SECURITY.md.
MIT. See LICENSE.