Requirements#

Used to specify prerequisites for a Playbook, requirements allow developers to ensure that the necessary conditions are met before their Playbook is run.

Requirements are specified in your playbook.conf, as an array of requirements.

<Requirements>
    <Requirement>Internet</Requirement>
    <Requirement>NoPendingUpdates</Requirement>
    <Requirement>DefenderToggled</Requirement>
    <Requirement>NoAntivirus</Requirement>
</Requirements>

Requirement Values#


Requirement

Description

Internet

Requires the user to have an active internet connection.

NoInternet

Requires the user to not be connected to the internet.

Activation

Requires the user to have an activated copy of Windows.

FreshInstall

Requires the Windows installation to be no more than 40 hours old. Note that this is easily bypassable in the UI. To specify an installation guide for the user, use the InstallGuide option.

DefenderToggled

Requires the user to toggle the primary four Windows Security toggles.

DefenderDisabled

Requires the user to neutralize defender via the Prepare System step.

UCPDDisabled

Requires the user to disable the UCPD driver via the Prepare System step.

NoAntivirus

Checks for Antivirus software registered in class AntivirusProduct in WMI namespace root/SecurityCenter2. If a non-Defender entry is found, it will prevent the user from moving forward.

NoPendingUpdates

Checks for any pending or downloading Windows updates, and prevents the user from moving forward until they have been installed.

PasswordSet

Requires the user to set their active user account password, and will subsequently convert any Microsoft accounts to local accounts.

AdministratorPasswordSet

Requires the user to set the Administrator account password.

PluggedIn

Requires the user’s device to be plugged in, if it is a battery powered device.