Embedded Stdlib Action Reference

on this page

This page describes the embedded actions shipped under the preflight/ namespace. These actions are versioned with the binary and are resolved before project-local or remote actions.

Resolution And Versioning

  • Embedded stdlib actions use refs such as preflight/windows-machine.
  • They are bundled into the binary with //go:embed.
  • They do not have independent versions. Upgrading the binary upgrades the embedded stdlib.

Leaf Actions

preflight/autologin

Configure Windows automatic logon.

InputTypeMeaning
usernamestringUser name for automatic logon
passwordstringPassword or secret reference
domainstringDomain or . for local accounts

preflight/git-sync

Clone or update a Git repository on a Windows target.

Use become when the checkout should be owned by a kiosk, exhibit, or service account. Authentication values should usually be passed as secret:<name> values. The action passes HTTPS and SSH credentials through environment variables to the PowerShell process instead of putting them in the script text.

By default, the action adds dest to Git’s global safe.directory list before running sync checks. This prevents Git for Windows from rejecting repositories whose files are owned by another account, which is common when setup runs as an administrator but the exhibit app runs as a kiosk user.

InputTypeMeaning
repostringGit remote URL
destpathDestination working tree directory
refstringBranch, tag, or commit to check out
remotestringRemote name, default origin
local_branchstringLocal branch to create or reset from ref
detachboolCheck out ref detached
fetchboolFetch remote updates when the repo already exists
pruneboolPrune deleted remote refs during fetch
fetch_tagsboolFetch tags during sync
resetboolHard-reset the working tree to the resolved ref
cleanboolRemove untracked files after checkout
clean_ignoredboolInclude ignored files when cleaning
submodulesboolSync and update submodules recursively
lfsboolRun Git LFS install and pull
depthintShallow clone or fetch depth; 0 means full history
git_pathstringGit executable path
create_parentboolCreate the parent directory for dest
set_remote_urlboolEnsure remote points at repo
safe_directoryboolAdd dest to Git safe.directory, default true
http_usernamestringHTTPS askpass username
http_passwordstringHTTPS askpass password or token
ssh_private_keystringSSH private key content
ssh_known_hostsstringSSH known hosts content
ssh_strict_host_key_checkingboolRequire SSH host key verification

Grouped Windows Baseline Actions

preflight/windows-machine

Configure machine-level baseline settings.

InputTypeMeaning
computer_namestringDesired computer name
timezonestringWindows time zone ID
enable_long_pathsboolEnable or disable the long path policy
ps1_execution_policystringLocalMachine PowerShell execution policy
disable_new_network_promptboolDisable the first-connection new network prompt

preflight/windows-shell

Configure desktop and Explorer defaults for the current execution identity, or set user to write supported settings for a named Windows account without switching process identity.

When user is set, registry-backed settings, including taskbar auto-hide, are written through the target user’s profile hive. The target hive must already be loaded, such as while that user is signed in or by running with become.load_profile. Desktop shortcut cleanup resolves the target user’s configured Desktop folders, the profile’s normal Desktop folder, OneDrive desktop folders, and the public desktop, then removes .lnk, .url, and .website files. It also hides common shell desktop icons such as This PC, Network, and Control Panel.

Some shell visual changes do not update an already-running Explorer session immediately. Expect them to apply after sign-out, Explorer restart, or reboot.

InputTypeMeaning
userstringOptional Windows user for user-scoped shell settings
clear_desktop_backgroundboolClear the wallpaper
clear_desktop_shortcutsboolRemove shortcut files from desktop locations and hide common shell desktop icons
taskbar_auto_hideboolEnable or disable taskbar auto-hide (default: false)
theme_modestringKeep the current theme or set both app and system surfaces to light or dark
transparency_effectsboolEnable or disable transparency effects (default: true)
hide_recycle_binboolHide the Recycle Bin icon
show_hidden_filesboolShow hidden files in Explorer
show_file_extensionsboolShow file extensions in Explorer
show_empty_drivesboolShow empty removable drives in Explorer
show_sync_provider_notificationsboolShow sync provider notifications in Explorer
aero_shakeboolEnable Aero Shake window minimization
launch_to_this_pcboolOpen Explorer to This PC instead of Quick Access
show_item_check_boxesboolShow item check boxes in Explorer
taskbar_allow_resizeboolAllow taskbar resizing
taskbar_on_all_displaysboolShow taskbar on all displays
taskbar_allow_multimonboolAllow multi-monitor taskbar behavior
hide_this_pc_foldersboolHide common library folders from This PC
disable_network_folder_thumbnailsboolPrevent Explorer thumbnail caches on network folders
show_store_apps_on_taskbarboolShow Microsoft Store apps on the taskbar
clear_start_pinsboolApply an empty Start pin set
start_pins_jsonstringExplicit ConfigureStartPins JSON payload

preflight/windows-input

Configure input, gesture, and text-scale preferences. User-facing preferences apply to the current execution identity, or to user when set. Policy-backed edge-swipe settings apply at machine scope.

When user is set, user-scoped registry settings are written through the target user’s profile hive. The target hive must already be loaded, such as while that user is signed in or by running with become.load_profile.

User-scoped visual input changes may require sign-out or a new Explorer session before the desktop reflects them.

InputTypeMeaning
userstringOptional Windows user for user-scoped input preferences
disable_edge_gesturesboolDisable edge swipe gestures
disable_touch_feedbackboolDisable touch contact visualization
disable_touch_gesturesboolDisable gesture visualization
text_scale_percentintText scale percentage, typically 100
disable_accessibility_shortcutsboolDisable Sticky Keys, Filter Keys, and Toggle Keys shortcuts

preflight/windows-quiet-mode

Reduce notifications, prompts, and recovery UI noise with machine-scoped Windows policy settings.

InputTypeMeaning
userstringOptional Windows user for user-scoped notification and prompt settings
disable_notificationsboolDisable toast and cloud notifications
disable_news_and_interestsboolDisable news and interests with the machine-scoped Windows policy
disable_error_reportingboolDisable Windows Error Reporting
disable_windows_setup_promptboolDisable consumer and cloud-optimized Windows prompts
disable_app_restore_on_bootboolDisable automatic restart sign-on after update reboots
disable_app_suggestionsboolDisable user-scoped consumer app suggestions and silent app installs

preflight/windows-update-lockdown

Reduce background system changes driven by Windows Update and Microsoft Store policy.

InputTypeMeaning
disable_windows_updateboolDisable automatic Windows Update policy checks
disable_windows_update_serviceboolStop and disable Windows Update, Update Orchestrator, and Windows Update Medic services
disable_update_auto_rebootboolPrevent Windows Update from rebooting while users are signed in
disable_store_auto_downloadboolDisable Store app auto-download and update behavior

preflight/windows-power

Manage named power plans and user-scoped screensaver defaults.

When user is set, screen saver registry settings are written through the target user’s profile hive. The target hive must already be loaded, such as while that user is signed in or by running with become.load_profile.

Screen saver changes are persisted immediately but may require sign-out or a new Explorer session before the shell reflects them.

InputTypeMeaning
userstringOptional Windows user for user-scoped screen saver preferences
plan_namestringFriendly name for the managed power plan
plan_basestringBase plan alias or GUID to clone
activate_planboolActivate the managed plan after applying it
display_timeout_acintAC display timeout in minutes
display_timeout_dcintDC display timeout in minutes
sleep_timeout_acintAC sleep timeout in minutes
sleep_timeout_dcintDC sleep timeout in minutes
disable_screensaverboolDisable the screen saver

Use the scheduled_task module directly when a machine needs a recurring reboot. See Schedule a Windows reboot.

preflight/debloat

Remove common built-in Windows apps (Xbox, Cortana, News, Weather, Teams, Skype, OneDrive) and set privacy, Copilot, search, taskbar, and Game DVR policies.

When user is set, user-scoped registry settings are written through the target user’s profile hive. The target hive must already be loaded, such as while that user is signed in or by running with become.load_profile. App removal and machine policy settings are not profile-scoped. Use remove_appx_packages directly if you need a custom app list.

InputTypeMeaning
userstringOptional Windows user for user-scoped privacy and taskbar settings