This is a gateway-only extended-stable release, published from a retired maintenance line by explicit maintainer decision. This release is OpenClaw from the end of September 2026, plus critical security updates, reliability and performance fixes, and features like new model support. The latest version of OpenClaw at the time of this release is 2026.11.2
2026.9.37
Highlights
- Private inspection stays private: paired-node photos and screenshots are no longer automatically attached to replies, and explicit media-read denials are honored when preparing reply attachments. (#174814, #184964) Thanks @eleqtrizit.
- Responsive replies and pages: long zero-width Telegram table cells and malformed plugin SVG transforms no longer stall the Gateway or browser page. (#183217, #182674) Thanks @LeizhenZhang, @obviyus, and @SebTardif Authored by @steipete. Thanks @LeizhenZhang, @obviyus, and @SebTardif.
- Linked accounts survive resets: sessions keep their person-linked model account through
/new,/reset, and idle or daily rollover. Fixes #179432. (#179433) Thanks @masatohoshino Authored by @steipete. Thanks @masatohoshino. - Safer update recovery: interrupted snapshot writes preserve the previous rollback point, and profile-backed updates and Doctor maintenance no longer trip over their own maintenance ownership. (#189946, #177792, #187104) Thanks @kaguranananana, @GrahamMcBain, and @RomneyDa Authored by @steipete. Thanks @kaguranananana, @GrahamMcBain, and @RomneyDa.
- Connections recover cleanly: channel accounts can recover after a manual stop times out, and ClickClack reconnects after silent network drops. Fixes #184852. (#177444, #184853) Thanks @masatohoshino, @YangManBOBO, and @obviyus.
- Windows state access works across path aliases: equivalent Windows paths preserve the same state ownership instead of falsely reporting offline maintenance. Fixes #176163. (#176174) Thanks @tjarrau-dev Authored by @steipete. Thanks @tjarrau-dev.
Changes
- Faster plugin admission: reuse native-reference validation within the same admission capture instead of repeatedly walking companion directories, while revalidating replacement captures and recovery copies. Fixes #162047. (#162254) Thanks @WG-Mojo Authored by @steipete. Thanks @WG-Mojo.
Fixes
- Private diagnostics: omit suppressed reply text and background command contents from verbose diagnostics while retaining status metadata. Thanks @steipete.
- Media boundaries: keep paired-node inspection photos and screenshots private by default, and honor explicit read denials for reply attachments without blocking authorized managed outputs. (#174814, #184964) Thanks @eleqtrizit.
- Restrictive group policies: Doctor preserves explicitly empty group allowlists, inherited settings, and disabled group policies instead of populating fallback senders. Fixes #173826. (#174787) Thanks @lockhartheavyindustries Authored by @steipete. Thanks @lockhartheavyindustries.
- Discovery output: escape terminal control characters in untrusted Gateway discovery fields. (#183355) Thanks @Alix-007.
- State and write outcomes: recognize committed SQLite writes whose worker result cannot be serialized, avoiding unsafe replay, and preserve Windows ownership across equivalent path spellings. Fixes #176163. (#177321, #176174) Thanks @tjarrau-dev Authored by @steipete. Thanks @tjarrau-dev.
- Session accounts: retain linked model-account selections and their provenance through explicit resets and automatic rollover. Fixes #179432. (#179433) Thanks @masatohoshino Authored by @steipete. Thanks @masatohoshino.
- Channel recovery: recover channel accounts after timed-out manual stops and restore ClickClack message reception after silent network drops. Fixes #184852. (#177444, #184853) Thanks @masatohoshino, @YangManBOBO, and @obviyus.
- Local tool connections: replace unexpectedly closed MCP loopback listeners and retain their cleanup work for shutdown rather than leaving later tool calls permanently disconnected. Fixes #139340. (#183352) Thanks @SC-10749 and @eli-pavlov Authored by @steipete. Thanks @eli-pavlov and @SC-10749.
- Telegram and Control UI: bound the processing of long zero-width table cells and malformed SVG transform strings without changing valid table or icon rendering. (#183217, #182674) Thanks @LeizhenZhang, @obviyus, and @SebTardif Authored by @steipete. Thanks @LeizhenZhang, @obviyus, and @SebTardif.
- Command results and temporary files: preserve a completed command's exit result when detached-descendant cleanup is uncertain, retain a visible cleanup warning, and remove temporary MCP configuration directories when writing fails. Fixes #179555. (#185636, #179603) Thanks @xiaopan-xydt and @Yolo521-bot Authored by @steipete. Thanks @Yolo521-bot and @xiaopan-xydt.
- Gateway credentials: keep local password SecretRefs active when a separate remote token is configured, and retain a saved node TLS pin when the fingerprint option is empty or whitespace-only. (#128175, #125646) Thanks @TheAngryPit, @CassieMei, @obviyus, @RomneyDa, and @wanyongstar.
- Update and restart reliability: preserve rollback snapshots after interrupted writes, release completed maintenance before reopening requester policy, confirm predecessor stop receipts during Doctor maintenance, and prepare configuration restarts outside the restart-signal fence. (#189946, #177792, #187104, #172777) Thanks @kaguranananana, @GrahamMcBain, and @RomneyDa Authored by @steipete. Thanks @RomneyDa, @kaguranananana, and @GrahamMcBain.
- Memory jobs and imports: leave stopped or failure-disabled dreaming jobs disabled, and refresh imported ChatGPT transcript examples without overwriting real Notes sections. Fixes #180655, #193161. (#180694, #193173) Thanks @Yun-0000, @lisandromachado, @KhanCold, and @obviyus Authored by @steipete. Thanks @lisandromachado, @KhanCold, @Yun-0000, and @obviyus.
- Release artifact verification: qualify the candidate's exact plugin artifacts, route validation through the admitted verifier, and accept successful admission jobs that omit step details while preserving run, attempt, artifact, and authority checks. (#164464, #173437, #188597) Thanks @RomneyDa.
Complete contribution record
This audited record covers the complete v2026.9.36..2f7023b history: 28 in-range PRs + 0 retained seed-only PRs = 28 unique PRs. The generation manifest also supplies direct commits as editorial input; the grouped notes above prioritize user impact.
Shipped baseline exclusions: v2026.9.36 (1 PRs: #158414).
Pull requests
- PR #162254 Related #162047. Authored by @steipete. Thanks @WG-Mojo.
- PR #183355 Thanks @Alix-007.
- PR #183217 Thanks @LeizhenZhang and @obviyus.
- PR #182674 Authored by @steipete. Thanks @SebTardif.
- PR #128175 Related #128171. Thanks @TheAngryPit, @CassieMei, @obviyus, and @RomneyDa.
- PR #188597 Thanks @RomneyDa.
- PR #187104 Thanks @RomneyDa.
- PR #193173 Related #193161. Thanks @KhanCold and @obviyus.
- PR #185636 Authored by @steipete.
- PR #179603 Related #179555. Authored by @steipete. Thanks @xiaopan-xydt and @Yolo521-bot.
- PR #179433 Related #179432. Authored by @steipete. Thanks @masatohoshino.
- PR #167356 Thanks @vincentkoc.
- PR #173437 Thanks @RomneyDa.
- PR #180694 Related #180655. Authored by @steipete. Thanks @Yun-0000 and @lisandromachado.
- PR #177792 Thanks @GrahamMcBain.
- PR #184853 Related #184852. Thanks @masatohoshino.
- PR #164464 Thanks @RomneyDa.
- PR #183352 Related #139340. Authored by @steipete. Thanks @SC-10749 and @eli-pavlov.
- PR #189946 Authored by @steipete. Thanks @kaguranananana.
- PR #174787 Related #173826. Authored by @steipete. Thanks @lockhartheavyindustries.
- PR #125646 Thanks @wanyongstar.
- PR #174814 Thanks @eleqtrizit.
- PR #177321 Authored by @steipete.
- PR #172777 Thanks @RomneyDa.
- PR #184964 Thanks @eleqtrizit.
- PR #172669 Authored by @steipete.
- PR #177444 Thanks @YangManBOBO and @obviyus.
- PR #176174 Related #176163. Authored by @steipete. Thanks @tjarrau-dev.
Release verification
- npm package: https://www.npmjs.com/package/openclaw/v/2026.9.37
- registry tarball: https://registry.npmjs.org/openclaw/-/openclaw-2026.9.37.tgz
- integrity:
sha512-ETRzzF0mllvQrzKJp8meZ2iTVytTaPDfEc5Oh7qh8FK8c5bcJWcKH+sYxyruAqkEzb8CaB6oTlc38eZf1ufRVw== - release SHA:
81da850122080b7187816ab70f145f3bc9e5efff - full release CI report: https://github.com/openclaw/releases/blob/main/evidence/2026.9.37/release-evidence.md
- release publish: https://github.com/openclaw/openclaw/actions/runs/42866233501
- npm preflight: https://github.com/openclaw/openclaw/actions/runs/42782571264
- full release validation: https://github.com/openclaw/openclaw/actions/runs/42782249510
- plugin npm publish: https://github.com/openclaw/openclaw/actions/runs/42883284005
- plugin ClawHub publish: no normal OIDC candidates
- plugin ClawHub bootstrap: not needed
- OpenClaw npm publish: https://github.com/openclaw/openclaw/actions/runs/42885900163
- npm Telegram beta E2E: not supplied