How to Deploy an Application Using openclaw-windows-node: Complete Build and Installation Guide
Run .\build.ps1 to compile the OpenClaw Windows tray, optionally package it as an MSIX using -p:PackageMsix=true, and deploy either the unpackaged executable or the signed MSIX package to target machines.
The openclaw/openclaw-windows-node repository provides a native Windows companion application (codenamed Molty) that functions as a system tray utility for the OpenClaw gateway. Deploying this application involves building the C# source, optionally packaging it for distribution, and installing or running the resulting binary on Windows 10 or 11 machines. This guide covers the end-to-end deployment process using the exact build scripts and project files found in the repository.
Prerequisites for Building openclaw-windows-node
Before compiling the source, ensure your environment meets these requirements:
-
Windows 10 (20H2 or later) or Windows 11 – Required for WinUI 3 support and MSIX packaging capabilities
-
.NET 10.0 SDK – Needed to compile the C# projects, including the main tray application
-
Windows 10 SDK – Provides the WinUI 3 toolchain for building the graphical interface
-
WebView2 Runtime – Required for the embedded chat window functionality
Verify your .NET installation by running dotnet --version and confirming the output shows 10.0 or higher.
Building the Application from Source
Using the PowerShell Build Script
The repository includes a central orchestration script at build.ps1 that automates compilation. Navigate to the repository root and execute the appropriate command for your target:
# Verify all prerequisites are installed
.\build.ps1 -CheckOnly
# Build all projects (default produces unpackaged binaries)
.\build.ps1
# Build only the WinUI tray application
.\build.ps1 -Project WinUI
The script internally calls dotnet build on src/OpenClaw.Tray.WinUI/OpenClaw.Tray.WinUI.csproj and related projects. Upon completion, the unpackaged executable OpenClaw.Tray.WinUI.exe is located at src/OpenClaw.Tray.WinUI/bin/Debug/net10.0-windows10.0/win-x64/.
Packaging as an MSIX for Distribution
For production deployments requiring signed packages (necessary for camera and microphone consent prompts), build with the MSIX packaging property enabled:
# Build x64 MSIX package
dotnet build src/OpenClaw.Tray.WinUI/OpenClaw.Tray.WinUI.csproj `
-c Release -r win-x64 -p:PackageMsix=true
# Build ARM64 MSIX package
dotnet build src/OpenClaw.Tray.WinUI/OpenClaw.Tray.WinUI.csproj `
-c Release -r win-arm64 -p:PackageMsix=true
The MSIX configuration is defined in OpenClaw.Tray.WinUI.csproj, which contains the <WindowsPackageType>MSIX</WindowsPackageType> element and the "SyncAppxManifestVersion" target that validates the four-part version number. Output files are written to src/OpenClaw.Tray.WinUI/bin/Release/net10.0-windows10.0/win-x64/ (or win-arm64 for ARM builds).
Deployment Methods
Unpackaged Deployment (Development)
For internal testing or development scenarios, deploy the unpackaged executable directly:
- Copy the build output folder
src/OpenClaw.Tray.WinUI/bin/Debug/net10.0-windows10.0/win-x64/to the target machine - Use the provided launch helper
run-app-local.ps1to start the tray:
# Build and launch
.\run-app-local.ps1
# Launch without rebuilding (useful for repeated testing)
.\run-app-local.ps1 -NoBuild
The unpackaged mode does not require installation privileges and is useful for rapid iteration.
MSIX Installation (Production)
For end-user distribution, install the MSIX package using PowerShell:
Add-AppxPackage -Path .\OpenClaw.Tray.WinUI_1.0.0.0_x64.msix
During installation, the MSIX automatically registers the openclaw:// protocol handler (implemented in src/OpenClaw.Tray.WinUI/Services/DeepLinkHandler.cs) and declares the required Windows capabilities including camera, microphone, and location access. Note that uninstalling the MSIX via Remove-AppxPackage does not delete user data stored in %APPDATA%\OpenClawTray\; refer to docs/uninstall-msix.md for complete cleanup procedures.
Post-Deployment Validation
Confirm successful deployment and gateway connectivity using the CLI tool located in src/OpenClaw.Cli:
# Display available commands and options
dotnet run --project src/OpenClaw.Cli -- --help
# Send a test message using stored tray settings
dotnet run --project src/OpenClaw.Cli -- --message "Deployment validation test"
# CI-friendly probe with explicit endpoint and repetition
dotnet run --project src/OpenClaw.Cli -- `
--url ws://127.0.0.1:18789 `
--token "<your-token>" `
--repeat 5 --delay-ms 1000 --probe-read --verbose
Alternatively, verify deployment by checking the system tray for the OpenClaw icon showing a green status indicator, or examine the log file at %LOCALAPPDATA%\OpenClawTray\openclaw-tray.log for a successful WebSocket handshake entry.
Summary
- Prerequisites: Ensure Windows 10 (20H2+) or Windows 11, .NET 10.0 SDK, and WebView2 Runtime are installed before building
- Build Process: Use
.\build.ps1for standard compilation ordotnet buildwith-p:PackageMsix=trueto generate distributable MSIX packages - Deployment Options: Run unpackaged executables via
run-app-local.ps1for development, or install signed MSIX packages usingAdd-AppxPackagefor production environments - Protocol Registration: MSIX deployments automatically register the
openclaw://deep link protocol viaDeepLinkHandler.cs - Validation: Use the
OpenClaw.Cliproject to probe gateway connectivity or check the tray icon status and log files
Frequently Asked Questions
What are the minimum system requirements to deploy openclaw-windows-node?
You need Windows 10 version 20H2 or later, or Windows 11, along with the .NET 10.0 SDK and WebView2 Runtime. The application is built for win-x64 and win-arm64 architectures, so the target machine must match one of these platforms.
How do I build an MSIX package for openclaw-windows-node?
Execute dotnet build src/OpenClaw.Tray.WinUI/OpenClaw.Tray.WinUI.csproj -c Release -r win-x64 -p:PackageMsix=true from the repository root. The resulting .msix file appears in the bin/Release/net10.0-windows10.0/win-x64/ directory and is ready for distribution.
Where is the application log file located after deployment?
The tray application writes logs to %LOCALAPPDATA%\OpenClawTray\openclaw-tray.log. This file contains WebSocket connection status, deep link handling events from DeepLinkHandler.cs, and any runtime errors encountered during execution.
Does uninstalling the MSIX remove user data?
No, MSIX uninstallation preserves user data stored in %APPDATA%\OpenClawTray\ and %LOCALAPPDATA%\OpenClawTray\. To fully remove all traces of the application after uninstalling the package, you must manually delete these directories following the cleanup steps outlined in docs/uninstall-msix.md.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →