OpenClaw Windows Hub v2026.10.8
Downloads
- Installer (x64):
OpenClawCompanion-Setup-x64.exe- Intel/AMD 64-bit - Installer (ARM64):
OpenClawCompanion-Setup-arm64.exe- Windows on ARM (Surface, etc.) - Portable x64:
OpenClawTray-2026.10.8-win-x64.zip - Portable ARM64:
OpenClawTray-2026.10.8-win-arm64.zip
Signed Dev MSIX packages
- Dev MSIX (x64):
OpenClaw-Dev-x64.zip - Dev MSIX (ARM64):
OpenClaw-Dev-arm64.zip
Each ZIP contains a signed Dev-identity MSIX, its matching public certificate,
provenance metadata, and INSTALL.txt. Extract it and follow the included
instructions. These packages are development-signed for sideloading, not
Microsoft Store-signed.
Unsigned Store submission packages remain available only as workflow artifacts
in the corresponding Actions run.
Features
- 🦞 System tray integration with gateway status
- 🔄 Auto-updates from GitHub Releases
- ✅ Code-signed with Azure Artifact Signing
Requirements
- Windows 10 version 1903 or later
- WebView2 Runtime
- OpenClaw gateway running locally
Quick Start
- Run the installer for your architecture
- Launch from Start Menu or system tray
- Right-click tray icon → Settings to configure
What's Changed
- fix(release): use workflow token for matching promotion workflows by @RomneyDa in #1671
- fix: onboarding stalls when the Gateway rejects a stored device token by @anna-dingler in #1651
- fix(chat): make Enter send from the multiline composer by @RomneyDa in #1674
- fix: preserve node containment settings when opening Sandbox by @karkarl in #1683
- feat(local-ai): select hardware profiles and offer low-memory Bonsai by @steipete in #1711
- build(deps): bump github/gh-aw-actions/setup-cli from 0.89.21 to 0.91.7 by @dependabot[bot] in #1709
- Bump Microsoft.ML.OnnxRuntime from 1.30.0 to 1.31.0 by @dependabot[bot] in #1710
- feat(setup): offer qualified Nemotron Bolt on RTX Spark by @joelagnel in #1718
- fix(setup): retry fresh WSL distro registration check on transient list timeout by @larroy in #1719
- docs: simplify Hanselman review comments by @shanselman with @Copilot in #1641
- fix(chat): a finished send erases text typed while it was in flight by @SebTardif in #1667
- fix: back off when the tray log file is locked by @SebTardif in #1633
- fix(chat): reconnect deletes queued messages that were never sent by @SebTardif in #1669
- fix(chat): multi-line composer messages sent with stray carriage returns by @larroy in #1682
- fix(build): fresh worktrees fail copying setup assets by @shanselman in #1727
- docs: allow Copilot autoreview when Codex CLI is unavailable by @shanselman in #1730
- fix(chat): preserve edited draft without an extra rerender by @shanselman in #1728
- fix(connection): reject invalid SSH forward ports before connecting by @shanselman in #1729
- fix(tray): turning hotkeys off leaves the Settings chord armed by @SebTardif in #1663
- fix(tray): a cron job stays marked running after the gateway says it is not by @SebTardif in #1666
- fix: keep Companion usable when Windows blocks the updater by @shanselman in #1731
- fix(tray): copying approve cuts a long pairing request id by @SebTardif in #1661
- improve: make agent guidance and validation more reliable by @bkudiess in #1724
- improve(onboarding): remove Gateway installation text from PC capabilities by @bkudiess in #1721
- fix: follow a gateway log that appears after the wizard starts by @SebTardif in #1635
- fix(setup): clean up owned Gateways after Companion uninstall by @joelagnel in #1715
- fix(setup): preserve sanitized Local AI verification errors by @joelagnel in #1716
- fix: allow command approval without scrolling to the bottom by @bkudiess in #1720
- fix(tray): editing a cron job saves a timezone it did not have by @SebTardif in #1662
- fix: ignore a second wizard answer while the first is in flight by @SebTardif in #1636
- feat(triage): keep the release dashboard live and actionable by @karkarl in #1401
- fix: prevent sidebar toggle icon clipping at display scales by @karkarl in #1690
- improve(dev): build only the tray graph in run-app-local.ps1 by @larroy in #1586
- docs: tell agents how to open PRs and name timeouts by @larroy in #1742
- fix(setup): native Gateway lands on a random port when 18789 is free by @RomneyDa in #1746
- fix(setup): Companion shows Disconnected for a minute after native onboarding finishes by @RomneyDa in #1747
- fix(setup): pairing fails with "gateway starting" when setup proceeds before the Gateway finishes startup by @larroy in #1743
- feat(setup): raise gateway reachability probe timeout to 30s by @larroy in #1741
- fix(migration): Store migration blocked for Native Gateway users and correction releases by @natalie-aguinaldo in #1675
- fix(ssh): a GatewayPorts yes setting publishes the tunnel on every interface by @SebTardif in #1658
- fix: Windows alphas follow the current Gateway release line by @RomneyDa in #1593
- feat: exercise interactive chat with the mock Gateway by @karkarl in #1745
- feat(dev): support packaged and latest Gateway channels by @karkarl in #1693
- fix: prevent intermittent credential reads and false handshake timeouts by @bkudiess in #1732
- fix(inference): Nemotron Bolt downloads fail with 401 from prerelease repos by @larroy in #1751
- feat(tts): local Kokoro neural voices as the default text-to-speech provider by @larroy in #1686
- fix: native Local AI repair is blocked when no WSL Gateway owns it by @karkarl in #1584
- improve(chat): mirror dashboard welcome and recent chats by @karkarl in #1705
- ci: make ClawSweeper dispatch keyless (OIDC intake) by @steipete in #1765
- fix(chat): correct context footer usage snapshots by @karkarl in #1473
- fix(setup): Bolt setup fails GPU verification after successful inference by @joelagnel in #1770
- fix: show generated names for unlabeled conversations by @ekinnee in #1768
- fix(bindings): the Bindings page misses routes stored under parsed by @SebTardif in #1657
- fix(chat): agent file attachments show as unavailable in chat by @bkudiess in #1776
- chore(deps): bump github/gh-aw-actions/setup-cli from 0.91.7 to 0.92.4 by @dependabot[bot] in #1767
- fix(tray): a keepalive marker with a UTC offset starts a second process by @SebTardif in #1660
- fix(chat): attaching several files at once fails silently by @pageragatz in #1699
- fix(settings): saving other settings deletes an API key that failed to decrypt by @SebTardif in #1655
- fix(media): assistant media URLs in CGNAT or 0.0.0.0 are sent to the gateway by @SebTardif in #1656
- fix(chat): a send that dies with the socket is reported as success by @SebTardif in #1668
- fix: send the first-run hello only once by @SebTardif in #1637
- fix(gateway): local gateway connect follows HTTP_PROXY by @SebTardif in #1653
- fix: drop a URL secret hidden behind an encoded question mark by @SebTardif in #1631
- fix(setup): uninstall turns off node mode when gateways.json is locked by @SebTardif in #1577
- fix(events): the Agent Events page keeps only the first approval by @SebTardif in #1664
- fix(connection): copied browser SSH forward uses the local port on both sides by @SebTardif in #1556
- fix(connection): Run doctor fails when the Windows PATH contains a quote by @SebTardif in #1552
- fix(onboarding): clarify native gateway update guidance by @natalie-aguinaldo in #1654
- fix: keep a multiline photo caption attached after reload by @SebTardif in #1634
- fix(connection): a cached wslrelay proof allows a token after the listener changes by @SebTardif in #1510
- fix(setup): Chat stays closed after Local AI setup restarts Companion by @joelagnel in #1775
- fix(browser): keep browser.proxy off the process proxy by @SebTardif in #1628
- fix(setup): drop leftover gateway tokens during uninstall by @SebTardif in #1481
- fix(setup): unregister only a distro this install created by @SebTardif in #1479
- fix(release): preserve alpha tags on backport release branches by @RomneyDa in #1778
- fix(exec): PowerShell /c and bash -l -c can be saved as allow-always rules by @SebTardif in #1511
- Fix realtime voice chat history timestamps by @karkarl in #1696
- feat: upgrade Windows node sandboxing to MXC 1.0 .NET SDK by @bkudiess in #1726
- refactor(chat): remove the standalone tray chat popup by @bkudiess in #1688
- fix(test): settle native editor input before cancellation checks by @RomneyDa in #1786
- fix(chat): keep cancelled responses from ending newer turns by @bkudiess in #1440
- fix(ci): stop stalled Windows E2E jobs promptly by @RomneyDa in #1785
- Simplify local AI choices in setup by @joelagnel in #1774
- fix(setup): reject an invalid Linux user before wizard WSL commands by @SebTardif in #1488
- fix(triage): survive transient GitHub inventory failures by @shanselman in #1798
- fix(setup): quote gateway bind, auth mode, and reload mode by @SebTardif in #1482
- docs: add tooling to test the Inno to Store migration by @natalie-aguinaldo in #1590
- fix(tts): speech uses the Windows voice instead of Kokoro after setup by @larroy in #1777
- fix(chat): show correct models for worker sessions by @RomneyDa in #1650
- docs(skill): remove private Hanselman review link by @shanselman in #1811
- docs(skill): reconcile Hanselman review contract by @shanselman in #1812
- fix: keep Gateway fixture cleanup safe after cancellation by @paulcam206 in #1784
- docs: make local review scope and outcomes explicit by @bkudiess in #1804
- docs: fix Windows proof launch guidance and fixture MCP binding by @bkudiess in #1803
- improve: open official support from native Help and About by @hannesrudolph in #1790
- fix: signing tests can stall during fixture shutdown by @bkudiess in #1817
- fix: setup E2E reads fail while gateway state is saved by @bkudiess in #1818
- fix(tests): prevent startup crashes in pipe-drain fixtures by @bkudiess in #1813
- chore(tests): native MXC proof identifies descendants without loader metadata by @roboclaw-bot in #1819
- fix(dev): reject incompatible app-local VC++ prerequisites by @RomneyDa in #1816
- fix(tests): prevent readiness timeouts in settings concurrency test by @bkudiess in #1814
- docs: guide agents through Windows PR preparation by @bkudiess in #1820
- fix(setup): install a Node runtime supported by the Gateway by @RomneyDa in #1824
- fix(ci): keep progressing E2E fixtures alive under the hang guard by @RomneyDa in #1831
- feat(release): automate Microsoft Store submission by @RomneyDa in #1474
- Seed v3 Colophon design system for OpenClaw Windows Hub by @karkarl in #1395
- feat: monitor upstream Gateway protocol changes nightly by @karkarl in #1692
- fix(chat): show localized welcome prompts without a Gateway upgrade by @RomneyDa in #1825
- fix: start Gateway investigations with user auth on one tracker by @RomneyDa in #1847
- fix(release): validate beta candidates with a maintained Windows harness by @RomneyDa in #1848
- fix: open the Hub when private desktop shell services are unavailable by @paulcam206 in #1783
- fix: a Piper voice change can free the voice that is still speaking by @SebTardif in #1792
- fix(dashboard): Open Dashboard keeps secrets in the wrong part of the URL by @SebTardif in #1505
- feat: notify Windows when welcome content changes by @RomneyDa in #1849
- fix: Bindings keeps spinning when the gateway is disconnected by @SebTardif in #1809
- fix(setup): Local AI load failures show no llama-server cause during onboarding by @larroy in #1759
- fix(setup): native Gateway start timeout leaves no details or recovery actions by @larroy in #1787
- test(chat): a superseded send keeps the composer draft and attachment by @shanselman in #1851
- fix(inference): rename Bolt model ID to public 24gb name by @RyanUnderhill in #1760
- fix(setup): Nemotron Bolt is hidden below 33 GB free and cannot read images by @joelagnel in #1869
- fix(onboarding): finish setup before showing AI as ready by @bkudiess in #1626
- docs: add Windows PR simplification skill by @bkudiess in #1879
- docs: adapt technical documentation for Windows by @bkudiess in #1876
- docs: adapt test audit guidance for Windows by @bkudiess in #1874
- feat(chat): show SDK sandbox status beside chat controls by @bkudiess in #1618
- docs: add Windows testing skill by @bkudiess in #1877
- docs: add Windows debugging skill by @bkudiess in #1878
- fix: keep Gateway setup validation errors visible by @paulcam206 in #1796
- fix: window controls are faint in light mode by @roboclaw-bot in #1890
- chore: update Windows App SDK to 2.6.4 by @karkarl in #1898
- fix(chat): show live progress and interactive agent questions by @karkarl in #1757
- chore: isolate every profile root for UI-test child processes by @bkudiess in #1906
- docs: default native Gateway E2E to named patches by @karkarl in #1810
- chore(build): remove obsolete CS0618 exemption by @dotMorten in #1908
- chore(deps): bump actions/setup-node from 6 to 7 by @dependabot[bot] in #1872
- chore(deps): bump github/gh-aw-actions/setup-cli from 0.92.4 to 0.93.2 by @dependabot[bot] in #1873
- fix: Bindings stays on the spinner when config.get fails by @SebTardif in #1857
- fix(setup): fresh WSL setup removes the distro when the post-install list times out by @SebTardif in #1548
- fix: tray connects to the Gateway as an interactive client by @bkudiess in #1909
- fix: show an approval hint when Gateway setup requires pairing by @MertBasar0 in #1907
- fix: preserve definite command refusals in Gateway responses by @paulcam206 in #1794
- fix(chat): keep history refreshes requested during a load by @shanselman in #1910
- fix: coalesce session refreshes during event bursts by @RomneyDa in #1885
- fix: keep pairing images out of failed QR wait diagnostics by @shanselman in #1912
- fix: rejected channel saves expose submitted credentials by @shanselman in #1913
- feat(chat): show tokens per second and context usage below the composer by @larroy in #1748
- fix: Gateway monitor stalls after completed investigations by @RomneyDa in #1892
- feat: keep Settings and Chat in one Companion window by @bkudiess in #1911
New Contributors
- @anna-dingler made their first contribution in #1651
- @ekinnee made their first contribution in #1768
- @pageragatz made their first contribution in #1699
- @RyanUnderhill made their first contribution in #1760
- @dotMorten made their first contribution in #1908
- @MertBasar0 made their first contribution in #1907
Full Changelog: v2026.9.8...v2026.10.8