DesktopManager Build
Use this skill when the task touches how DesktopManager is built, packaged, or published.
Golden Path
- Use the repo entrypoint first:
.\Build\Build-Project.ps1 - Prefer plan mode before changing packaging behavior:
.\Build\Build-Project.ps1 -Plan - For PowerShell module-only work, use:
.\Build\Build-Module.ps1 -SkipInstall - For CLI/app publish verification, use:
.\Build\Build-Project.ps1 -Build:$false -BuildModule:$false - For the daily WinUI tray app without installers, use:
.\Build\Build-DesktopManagerApp.ps1 - For the generated DesktopManager app MSI, use:
.\Build\Build-DesktopManagerApp-MSI.ps1The MSI wrapper publishesDesktopManager.AppasPortableCompat. - When checking a specific runtime publish, pass:
-Runtimes win-x64
Decision Rules
- Treat
Build/Build-Project.ps1as the primary repo build and release entrypoint. - Prefer changing
Build/project.build.jsonandpowerforge.dotnetpublish.jsonover hardcoding publish behavior in ad-hoc scripts. - Prefer
Build/Build-Module.ps1for PowerShell packaging behavior instead of editing checked-in artefacts by hand. - Prefer the app/MSI wrapper scripts for daily desktop app packaging instead of invoking generated WiX files directly.
- Verify the resulting behaviour from the real surfaces:
NuGet/library, PowerShell import, CLI help,
desktopmanager mcp serve,DesktopManager.App.exe, and MSI plan/build output. - Keep docs aligned with the actual build flow:
Docs/Build.Runbook.md,README.MD, and repo-local skills. - When packaging or publish output changes, check the expected output locations before concluding:
Artefacts/ProjectBuild,Artefacts/Unpacked,Artefacts/Packed,Artefacts/PowerForge/DesktopManager,Artefacts/PowerForge/DesktopManager.App, andArtefacts/PowerForge/Msi/DesktopManager.App.
Reference Files
Build/Build-Project.ps1Build/Build-Module.ps1Build/Build-DesktopManagerApp.ps1Build/Build-DesktopManagerApp-MSI.ps1Build/project.build.jsonpowerforge.dotnetpublish.jsonDocs/Build.Runbook.mdREADME.MD