Overview
AtlasOS uses YAML configuration files to define system modifications in a declarative format. These files are located in theConfiguration/ directory and are organized by purpose and category.
Directory Structure
YAML File Structure
All configuration files follow a standardized YAML structure:Required Fields
Human-readable name for the configuration
Explanation of what the configuration does
List of actions to execute
Optional Fields
Whether to run during playbook upgrades
Core Configuration Files
services.yml
Configures Windows services and drivers to reduce background resource usage.custom.yml
The root orchestration file that coordinates all configuration tasks.Tweak Categories
Debloat
Removes unnecessary Windows features, scheduled tasks, and bloatware. Example: Disable Scheduled TasksAvailable debloat tweaks
Available debloat tweaks
config-content-delivery.yml- Disable content delivery featuresconfig-storage-sense.yml- Configure Storage Sensedisable-reserved-storage.yml- Disable reserved storagedisable-scheduled-tasks.yml- Disable telemetry scheduled taskshide-unused-security-pages.yml- Hide unused security settings
Performance
Optimizations to improve system responsiveness and reduce resource usage. Example: Configure MMCSSAvailable performance tweaks
Available performance tweaks
config-automatic-maintenance.yml- Configure Windows maintenanceconfig-mmcss.yml- Multimedia Class Scheduler Service settingsdisable-auto-folder-discovery.yml- Disable automatic folder type detectiondisable-background-apps.yml- Prevent apps from running in backgrounddisable-fth.yml- Disable Fault Tolerant Heapdisable-game-bar.yml- Disable Xbox Game Bardisable-sleep-study.yml- Disable Modern Standby sleep studyrespect-power-modes-search.yml- Make search respect power modes
Privacy
Enhances user privacy by disabling telemetry and data collection.Privacy tweak categories
Privacy tweak categories
Telemetry (
privacy/telemetry/)disable-activation-telemetry.yml- Disable activation telemetrydisable-ceip.yml- Disable Customer Experience Improvement Programdisable-diagnostic-tracing.yml- Disable diagnostic tracingdisable-dotnet-cli-telemetry.yml- Disable .NET CLI telemetrydisable-input-telemetry.yml- Disable input data collectiondisallow-data-collection.yml- Disallow general data collection
- Advertising controls
- Cloud sync settings
- Cortana configuration
- Feedback controls
- OneDrive integration
Quality of Life (QOL)
Usability improvements and annoyance removals.Available QOL tweaks
Available QOL tweaks
add-sharing-settings-shortcut.yml- Add sharing settings to context menubcdedit-tweaks.yml- Boot configuration tweaksbest-wallpaper-quality.yml- Set maximum wallpaper qualityconfig-powershell.yml- Configure PowerShell environmentconfig-start-menu.yml- Start menu customizationdisable-auto-app-archival.yml- Prevent automatic app archivaldisable-dynamic-lighting.yml- Disable RGB lighting controldisable-mouse-accel.yml- Disable mouse accelerationconfig-windows-ink-workspace.yml- Configure Windows Ink
Security
Security-related configurations.Security configurations
Security configurations
- Defender settings
- Firewall rules
- Security mitigations
- User Account Control settings
Networking
Network stack optimizations and configurations.Network tweaks
Network tweaks
- TCP/IP stack optimizations
- DNS configuration
- Network adapter settings
- QoS settings
Miscellaneous
Other system tweaks that don’t fit specific categories.Available misc tweaks
Available misc tweaks
add-music-videos-to-home.yml- Add media folders to homeadd-newUser-script.yml- Add new user setup scriptconfig-oem-information.yml- Set OEM informationconfig-time.yml- Time and timezone configurationcreate-shortcuts.yml- Create system shortcutsdelete-windows-specific-files.yml- Remove Windows-specific filesenable-notifications.yml- Enable notification systemenable-winre.yml- Enable Windows Recovery Environment
Scripts
Script-based tweaks that require more complex logic.Action Types
Registry Actions
Registry key path
Registry value name
Value data (for add operation)
Registry value type:
REG_SZ, REG_DWORD, REG_QWORD, REG_BINARY, REG_MULTI_SZOperation:
add or deleteScheduled Task Actions
Task path in Task Scheduler
Operation:
disable, enable, or deleteContinue if task doesn’t exist
PowerShell Actions
PowerShell command or script to execute
Wait for command to complete before continuing
Execute from playbook’s Executables directory
Execution context:
currentUser, currentUserElevated, systemRun during Out-Of-Box Experience (OOBE)
Run during playbook upgrades
Command Actions
Command or batch file to execute
Execute from playbook’s Executables directory
Wait for command to complete
Execution context:
currentUser, currentUserElevated, systemTask Actions
Relative path to another YAML configuration file
Service Actions
Service name
Operation:
disable, enable, delete, start, stopStatus Update Actions
Status message to display to user
Best Practices
Use Descriptive Names
File names should clearly indicate what the configuration doesGood:
disable-scheduled-tasks.ymlBad: tasks.ymlAdd Comments
Include comments explaining why changes are made
Handle Errors
Use
ignoreErrors: true for optional or system-specific tasksTest Upgrades
Set
onUpgrade: false for one-time setup tasksExecution Order
Configuration files are executed in this order:atlas/start.yml- Initial setupatlas/services.yml- Service configurationatlas/components.yml- Component modificationsatlas/appx.yml- App package managementatlas/default.yml- Default settingsatlas/revert.yml- Revert script setuptweaks.yml- All tweaks orchestration
The
custom.yml file orchestrates this execution order and includes additional setup and cleanup tasks.Related Resources
Playbook Structure
Understand the overall playbook format
Executables
Learn about scripts and tools