Pick a task

A short path to what you need.

Load the module first. Add only the selections intended for this deployment.

After your deployment

See the result of your choices.

The automatic delivery report brings apps, component operations and update outcomes together.

Explore the delivery report →
Stage appsUse a built-in integration or your own package.
Target PC · WinPE, after Windows is applied

Use the dedicated Add command to stage each app in WinPE. Installation runs during SetupComplete, before OOBE.

PowerShell
Add-OSDStageGoogleChromeEnterprise -Architecture x64
Add-OSDStageMicrosoft365Apps -Channel MonthlyEnterprise -Language en-us

Built-in integrations including Company Portal and CMTrace Open acquire content during SetupComplete and automatically refresh a connected OSDCloud cache. Use Sync commands beforehand when preparing a fully offline deployment.

Full reference ↗
Use your repositoryYour own packages for apps, scripts, fonts, certificates and drivers.
Target PC · WinPE

A repository hosts your packages. Its catalog.json lists the available packages and their manifests. Use that file’s URL and your actual package IDs below.

PowerShell
Set-OSDStageConfiguration -CatalogUri 'https://example.com/catalog.json'
Add-OSDStage -Name 'MyPackage'

Catalogs and manifests use schema 2. Each package has a manifest and a SHA-256-checked Package.zip.

Build and publish your repository ↗
Add fonts, certificates or driversTyped packages from your configured repository.
Target PC · WinPE

Connect your repository using its catalog URL first. Replace these example IDs with your own.

PowerShell
Add-OSDStageFont -Id 'CompanyFonts'
Add-OSDStageCertificate -Id 'CompanyRootCA'
Add-OSDStageDriver -Id 'WorkstationDrivers'
  • Fonts: machine-wide TTF/OTF installation.
  • Certificates: public CA certificates; machine Root or CA store, selected in the manifest.
  • Drivers: import into the Windows Driver Store. Supply boot-critical drivers through Windows deployment.
Configure device settingsRegistry, machine variables and services.
Target PC · WinPE
PowerShell
Add-OSDStageEnvironmentVariable -Name DeploymentRing -Value 'Pilot'
Add-OSDStageRegistryValue -Path 'HKLM:\SOFTWARE\Company\Deployment' `
    -Name Ring -Type String -Value 'Pilot' -Registry64

Services must exist when their configuration runs. Choose startup mode and state explicitly; no recurring enforcement is added.

PowerShell
# Example: replace with an existing service name.
Add-OSDStageService -Name 'VendorService' -StartupType Automatic -State Running
Choose initial defaultsBrowser protocols, PDF and other file associations.
Target PC · WinPE

Stage the apps first, then explicitly select their registered handlers. Users can change these defaults later.

PowerShell
Add-OSDStageGoogleChromeEnterprise -Architecture x64
Add-OSDStageAdobeAcrobatUnified -Architecture x64

Add-OSDStageDefaultAssociation -Identifier @('http','https') `
    -ProgId 'ChromeHTML' -AppName 'Google Chrome'
Add-OSDStageDefaultAssociation -Identifier '.pdf' `
    -ProgId 'Acrobat.Document.DC' -AppName 'Adobe Acrobat'

Handler IDs depend on the installed app. No defaults are selected automatically.

Full reference ↗
Set Start and taskbar pinsProvide your own ordered list.
Target PC · WinPE
PowerShell
Add-OSDStageStartPins -Pins @(
    @{ desktopAppId = 'MSEdge' }
    @{ desktopAppId = 'Microsoft.Windows.Explorer' }
)
Add-OSDStageTaskbarPins -Pins @(
    @{ desktopAppId = 'Microsoft.Windows.Explorer' }
)

Use IDs for apps installed on the device. Start uses an initial layout; taskbar configuration replaces default pins, but Windows or apps can add pins separately.

Full reference ↗
Add a Wi-Fi profileUse a Windows WLAN XML export or explicit parameters.
Target PC · WinPE
PowerShell
# Select an existing profile file.
$profile = Read-Host 'Full path to the Wi-Fi XML export'
Add-OSDStageWiFiProfile -Path $profile

Supports WPA2-Personal, WPA3-Personal and open profiles. Enterprise/EAP is outside scope. A working Wi-Fi adapter and driver are required.

The runtime removes its credential-bearing configuration after the import attempt. Keep your original XML private; OSDStage does not delete that source file.

Parameters and credential handling ↗
Add or remove Windows componentsOptional features and Features on Demand.
Target PC · WinPE · Windows 11 25H2+

Choose exact feature or capability names supported by the target Windows version.

PowerShell
Add-OSDStageWindowsCapability -Name 'XPS.Viewer~~~~0.0.1.0' -Action Add
Add-OSDStageWindowsCapability -Name 'OpenSSH.Client~~~~0.0.1.0' -Action Remove
PowerShell · optional feature example
Add-OSDStageWindowsFeature -Disable WorkFolders-Client

Capability additions may need Windows Update during SetupComplete. Windows optional features use the separate Add-OSDStageWindowsFeature command. Neither flow forces a restart or schedules a retry.

Full reference ↗
Remove selected inbox appsExplicit selections; no automatic debloat list.
Target PC · WinPE

Choose exact provisioned package names. This example requests removal of Solitaire.

PowerShell
Add-OSDStageWindowsInboxCleanup -Remove Microsoft.MicrosoftSolitaireCollection

Add -DiagnoseOnly to report the selection without removing it during SetupComplete.

Full reference ↗
Reuse downloads or work offlineAutomatic online caching; explicit preparation for offline deployments.

An attached volume labeled OSDCloud is detected automatically. Repository content is acquired while staging; most vendor content is acquired in full Windows. The drive letter can change.

Preparation PC · Full Windows, with the module loaded
PowerShell
Sync-OSDStageGoogleChromeEnterprise -Architecture x64
Sync-OSDStageAdobeAcrobatUnified -Architecture x64
Target PC · WinPE, after adding all selections
PowerShell
Test-OSDStageDeployment -RequireOfflineReady -ThrowOnFailure

For disconnected deployments, prepare every selected variant first. A successful online staging check alone does not establish offline readiness.

Full USB preparation guide ↗

Need every parameter? Use Get-Help <command> -Full or the linked reference.