On this page
On this page
Release notes
v2026.11.1
v2026.11.1
AI agents and tools can read these release notes as plain Markdown.
This patch release adds no new features. It fixes accepted messages being refused, failed Doctor inspections reported as successful, and Gateway configuration writes getting stuck.
Release scale: 83 pull requests, 91 direct commits, and 67 contributors.
The pull-request count includes source work brought in through backports, without counting backport wrappers twice. Direct commits include release adaptations.
Installation and Onboarding
-
Source builds extracted inside another Git checkout now find their own bundled plugins.
More details
See commit 6269829. Thanks to @RomneyDa.
-
Installer-created directories and eligible Linux service state directories now receive private permissions.
More details
See commit a77900f. Thanks to @duyufansh2008, @RomneyDa; @vincentkoc and @xiaopan-xydt.
Web UI
-
The model picker shows your effective context budget alongside the model maximum when the budget is smaller.
More details
See commit ecbc229. Thanks to @RomneyDa; @ceckert and @obviyus.
-
A visible Control UI tab now reconnects when its Gateway connection stops responding.
More details
See commit c852d21. Thanks to @RomneyDa.
-
New-conversation links retain supported session and composer settings when opening the Control UI.
More details
See commit d0cb4da. Thanks to @xiaopan-xydt, @galiniliev, @RomneyDa.
-
A message consumed by /steer no longer stays marked as pending in chat.
More details
See commit 9c3915e. Thanks to @RomneyDa.
-
Routine chat restart notices are shorter, while interrupted recovery still shows useful status.
More details
See commit 1cb714d. Thanks to @RomneyDa.
Updates and Maintenance
-
When starting the managed Gateway service, readiness messages now show more specific status, such as when the service stays stopped or the health check times out.
-
Doctor reports blocked inspection or incomplete repairs with a nonzero exit code. Scripts using
doctor --jsonshould handle the new exit status. Unattended Doctor reports missing plugins without installing them unless you provide--fix,--repairor--yes.More details
See #187192, #191523. Thanks to @steipete, @JordanNewell, @brandonulrich.
-
Doctor preserves empty or inherited group allowlists during repair and avoids unnecessary configuration conflicts when only plugin migration guidance changes.
More details
See #174787, commit 8fa7dac. See also #190665. Thanks to @steipete, @lockhartheavyindustries, @saariuslystoned, @RomneyDa.
-
Doctor skips legacy text with malformed UTF-8 instead of importing altered data, preserves the original bytes for recovery, and continues independent migrations. See state migration recovery.
More details
See #180861. Thanks to @steipete and @wangmiao0668000666.
-
Doctor preserves invalid legacy heartbeat hours and tells you which value to correct before retrying migration.
-
Git updates check the target Node requirement before staging when the running updater supports the check.
-
Services started from the root directory on POSIX systems can find a compatible Node runtime and retry after an incompatible one is found.
More details
See #178112. Thanks to @steipete; @downingkeys.
-
Windows update recovery keeps the scheduled task available until the Gateway is ready when the running updater includes this fix.
More details
See #189647. Thanks to @steipete, @stephen3303.
-
Updates from versions 2026.10.7 through 2026.10.9 can use a fresh Doctor during recovery if migration fails. You may still need to start the Gateway manually.
More details
See #189713. Thanks to @steipete. The recovery bridge also includes #191495. Thanks to @RomneyDa for the bridge work. Recovery retains the signal that a process may still be writing, so existing safeguards can preserve recovery files and account for unfinished cleanup. Failure triage receives the resolved installation folder or the actual error if the lookup fails.
-
An update can finish with a named channel warning when the Gateway core is verified ready, even if a channel is unavailable.
More details
See commit a77900f.
-
Stopped SQLite backups tolerate transient read-only database activity, while changes to stored data still stop the backup.
More details
See commit a77900f.
-
Doctor can repair an unsupported Node runtime for services it owns without overwriting unrelated service settings.
More details
See commit a77900f.
-
An update can restart a service it stopped after a recoverable Doctor failure, including a suspended Windows task.
More details
See commit a77900f.
-
Update repair can clear a verified abandoned cancelled update and settle its pending package publication so later updates can proceed.
More details
See commit 7d6b55f. See the adapted work in #177932 and #186787. Thanks to @fuller-stack-dev, @sukhdeepjohar, @steipete, @RomneyDa; @TheAngryPit and @syxscott for the reports.
-
Doctor can recover conversations from stores split by older relative paths. Stop the Gateway before running
openclaw doctor --fixfor an affected store.More details
See commit 178409a. Thanks to @RomneyDa.
-
Gateway startup retries temporary SQLite locks instead of immediately stopping.
More details
See #187724, commit 178409a. Thanks to @masatohoshino, @obviyus.
-
Older shared-state databases with a retained worker index can complete migration instead of repeatedly failing at startup.
-
Doctor can recover from overlong session archive paths without deleting the original session files.
-
Update status shows marked recovery copies even when unrelated files are present.
-
Automatic updates now report intentional skips as skips instead of failures.
-
Updates and Doctor can spend less time rereading unchanged eligible SQLite databases.
-
An older Gateway service that cannot read newer configuration now recommends a newer installation or a matching verified backup.
More details
See #187639. Thanks to @steipete; @kip-claw, @masatohoshino.
-
A Gateway that remains open after successful cleanup now reports the resources keeping it open and can finish shutting down on non-Windows systems when exiting successfully.
More details
See commit 8a70523 and #191251. Thanks to @RomneyDa; @davesanvil for the report.
-
Configured trusted proxies can check Gateway startup and readiness without extra headers.
More details
See commit f4fa423. Thanks to @RomneyDa; @ericcaiwx-star.
-
Fixes Gateway settings changes getting stuck while waiting to apply and makes channel restarts more reliable.
More details
See commit 77a79f6 and commit d79f192, adapting #192701. Thanks to @RomneyDa.
Messaging
-
Fixes accepted Telegram messages sometimes receiving a false restart refusal or losing a fallback reply while they are processed.
-
Fixes queued Telegram replies failing after an earlier conversation turn ends.
More details
See #189457 and the release backport. Thanks to @vincentkoc.
-
Fixes accepted Discord messages being refused while waiting to be processed.
More details
See #179704 and the release backport. Thanks to @jalehman.
-
iMessage can start with PostgreSQL-backed state and retain existing SQLite recovery positions.
-
Messages Automation permission can carry across later macOS Gateway updates after you approve the new app-managed runtime path.
More details
See #186107. Thanks to @anmol0b, @SharkeyDev, @RomneyDa.
-
Slack relay connections and stalled Tlon streams can reconnect, and unexpectedly stopped channels can retry without restarting channels you deliberately stopped.
More details
See commit c23a6d2. Thanks to @RomneyDa.
-
Feishu keeps streamed text across tool calls and sends action cards in the expected format.
More details
See commit c23a6d2.
-
Google Chat sends remote attachment links with their captions. Local files and native uploads are not supported by this change.
More details
See commit c23a6d2.
-
Synology Chat checks the recipient on send receipts, including each part of a split message.
More details
See commit c23a6d2.
-
Twitch rejects unsupported direct-message targets instead of sending them to the default channel.
More details
See commit c23a6d2.
-
Zalo can keep readable text from unsupported events, and Nostr reports when a stopped account cannot send a pairing notification.
More details
See commit c23a6d2.
-
Eligible default Slack, Mattermost, Nextcloud Talk and Zalo accounts retain their configured secret references alongside named accounts.
More details
See commit c23a6d2.
-
When a message queue overflows, its summary keeps the sender and conversation context.
More details
See commit 4a0475f. Thanks to @RomneyDa; @goslingmanagment, @dmsrg399, and @obviyus.
Memory
-
Large conversation histories and archives can be read and indexed with less working memory, with navigation across adjacent large messages.
More details
See commit 178409a.
-
During large conversation exports and memory preparation, other SQLite work can spend less time waiting. If a transcript changes during the read, OpenClaw falls back to a consistent snapshot.
More details
See commit c6f4a93 and #164442. Thanks to @etzelm, @RomneyDa.
-
Memory reads wait for an archived session transcript to become available before reading it.
More details
See commit 7c28051. Thanks to @RomneyDa.
-
Overlapping memory captures keep separate files and their own source information.
More details
See commit b38ba73.
-
Memory Wiki refuses affected compile and lint rewrites when a page contains malformed UTF-8, preserving the original bytes.
More details
See commit c23a6d2.
-
Usage and cost reports can read verified archived conversations without restoring them from cold storage. Missing or corrupt archives fail the refresh rather than producing incomplete results.
More details
See commit 58a83ef. Thanks to @RomneyDa.
Skills
-
If publishing a skill and rolling it back both fail, the previous copy is kept for recovery.
More details
See commit 7d5be82. Thanks to @RomneyDa.
Native Apps
-
Failed Gateway-backed Browser or Tailscale settings saves in the Mac app no longer overwrite stored credentials with redaction placeholders.
-
Turning off Tailscale exposure in the connected Mac app preserves your Gateway authentication settings. Credentials already lost are not restored.
-
The Mac app uses configured credentials for a local Gateway instead of stale inherited environment values, and supports environment-backed secret references.
More details
See #191468, commit 3f964d4. Thanks to @RomneyDa; @TheAngryPit for the contribution.
-
The Mac app can open a remote dashboard mounted at a custom path when both the app and Gateway are updated.
-
Mac tabs keep the address of a page that failed to load so you can retry, with the error and retry text available in supported languages.
More details
See #185432, commit ef89432. Thanks to @etzelm, @anmol0b, @RomneyDa.
-
Mac Voice Wake and push-to-talk avoid duplicate sends and leave rejected transcripts editable for retry.
-
Mac node commands explicitly set to run without a deadline can return after the former 20-second limit.
-
On Android phones connected to a compatible Gateway, ending Talk lets accepted work finish and its answer appear in chat.
More details
See commit a413796. Thanks to @RomneyDa; @masatohoshino.
-
iOS and Mac Talk can handle slow audio acknowledgments, though excess audio can still be dropped.
More details
See commit 415b1b9. Thanks to @MertBasar0, @anmol0b, @shakkernerd, @kybrcore, @sukhdeepjohar, @potoior, @RomneyDa, @steipete, @xiaopan-xydt, @shoaibulhaque, and @vincentkoc.
-
Long spoken replies in meetings can now queue for playback, with checks for audio that remains stalled.
More details
See commit 415b1b9.
-
Continuous voice conversations routed through the Gateway can start a new reply when the provider begins sending audio.
More details
See commit 415b1b9.
-
Android Chat waits for your allowed agents to load and reports when none can be found.
More details
See commit 415b1b9.
-
Oversized Mac camera clips and screen recordings now return a size error instead of disconnecting the node.
More details
See commit 415b1b9.
-
Mac service reinstall and uninstall can handle a missing launchd definition. If reinstall activation fails, the missing previous definition cannot be restored.
More details
See commit 415b1b9.
-
Talk input recovery messages are now translated into 21 non-English native app locales, including guidance to repeat the last part when audio falls behind or microphone input recovers.
More details
See commit 7b4a1f8. Thanks to @RomneyDa.
Models and Providers
-
Gemini Flash text models on the official Google AI Studio endpoint now use Interactions by default, with more consistent request settings, key rotation and sampling. Explicit API settings take precedence, and custom endpoints default to GenerateContent. Interactions ignores explicit cache handles; select
google-generative-aiif you need them. See the Google provider guide.More details
See commit f26c11c. Thanks to @obviyus, @evomach, @sukhdeepjohar, @RomneyDa, @Yigtwxx, @sasan1200, @steipete, @goslingmanagment, and @dmsrg399.
-
Anthropic API-key setup can accept a workspace ID, and setup-token sign-in preserves incompatible existing profiles.
More details
See commit f26c11c.
-
A reasoning-only turn stopped by its output limit now reports the limit, and a timed-out tool warns you to check its result before retrying.
More details
See commit f26c11c.
-
Stable tool definitions can improve prompt-cache reuse across more turns while current tool permissions continue to apply.
-
A Claude CLI conversation can continue after you stop its first turn when its native session was saved.
More details
See #181966, #186380. Thanks to @holgergruenhagen; @obviyus.
-
Resumed Claude CLI conversations can receive missed messages, and earlier background results no longer replace a later answer.
More details
See commit a1c7dc3. Thanks to @RomneyDa.
-
Configured MCP tools in managed Claude CLI turns now follow the current tool permissions and grants.
More details
See commit a1c7dc3.
-
Claude CLI Agent and Workflow tools are restored for eligible managed turns when explicitly enabled. They remain off by default and unavailable in restricted, delegated, workspace-only or explicitly capped runs.
More details
See the CLI backend guide and commit a1c7dc3.
-
Saved Claude subscriptions can make configured CLI models available.
More details
See commit a1c7dc3.
-
Anthropic PDF requests use the appropriate OAuth or API-key authentication.
More details
See commit a1c7dc3.
-
Codex conversations retain compatible thread history across turns and can recover an answer after a transient retry without rerunning completed tools.
More details
See commit 673406b, commit 1a09233. Thanks to @YuriyPopovDev, @RomneyDa; @beru-ant-king, @lastguru-net, @mywondvision, @obviyus, @vincentkoc, @xena68, @xiaopan-xydt, @gloss-dandelion-cult, @maxdjohnson, and @sunlit-deng.
-
If a Codex conversation has saved history but its original thread is missing, OpenClaw reports the problem instead of silently starting over.
More details
See commit 673406b.
-
Codex can finish its first reply while checking which MCP apps are available.
More details
See commit 673406b.
-
When a tool is about to interrupt a Codex turn, OpenClaw waits briefly for confirmation that Codex has picked up a steering message you already sent. Unconfirmed messages are not automatically sent again.
More details
See commit 1a09233.
-
Rate-limited model profiles use the provider’s wait time and can be retried on a later turn when no wait time is available.
More details
See commit 524d2ab. Thanks to @RomneyDa.
-
OpenAI realtime connections use your managed proxy, including for audio, and do not fall back to a direct connection if the proxy fails.
More details
See commit 415b1b9.
-
Voice calls use the call agent’s configured model when no response model is set.
More details
See commit 415b1b9.
-
Gemini and Vertex streams handle proxy completion and first-response errors more reliably.
More details
See commit 415b1b9.
-
Requests to numbered OpenAI GPT models found by Bedrock Mantle now use the Responses API.
More details
See commit 415b1b9.
-
After temporary Codex work, including restricted and incognito sessions, finishes or fails, OpenClaw stops tracking the temporary thread without changing the thread your conversation uses.
More details
See commit 36effdf. Thanks to @RomneyDa.
-
After an output limit or transcript resume, recovery instructions tell the agent to respect your original constraints, use recorded results, and check unknown outcomes before retrying.
More details
See commit ea0a7c8, adapting #192686. Thanks to @RomneyDa.
Automations and Scheduling
-
Cancelled CLI-backed scheduled runs stop starting more work at the next cancellation check. Work already dispatched may still finish.
-
Recovery of interrupted scheduled runs uses less memory when there is a large run history.
More details
See #191422. Thanks to @fuller-stack-dev.
-
Scheduled-run cleanup keeps an expired parent session while a descendant is still active.
More details
See commit 178409a.
-
Scheduled runs can continue after sending a message. Background command completion waits for the heartbeat that started it to finish.
More details
See commit b38ba73.
Browser and Computer Use
-
Peekaboo on a paired Mac can again return a window image and references to its controls.
More details
See #172116. Thanks to @holgergruenhagen; @pdurlej for the related report and @LiuwqGit for prior work.
-
Computer-use results can accept cursor coordinates from independently updated nodes.
More details
See commit 415b1b9.
-
Starting the in-process browser no longer writes Gateway authentication settings to your configuration. Standalone browser clients using trusted-proxy authentication need an explicit Gateway password.
More details
See commit c23a6d2.
Plugins and Integrations
-
GitHub reconnect guidance can direct you to the current agent’s Tools settings in a supported Control UI session when tool policy allows it. Otherwise it gives you manual settings guidance. You still authorize the connection yourself.
-
Managed native plugins avoid unnecessary copying during Gateway startup.
-
Managed plugin links can be repaired at startup after an external reinstall.
More details
See commit 524d2ab.
-
A remote native-hook relay now rejects a FIFO credential instead of hanging while opening it.
More details
See #191423. Thanks to @Leon-SK668.
-
GitHub previews and readers can report rate limits even when response cleanup gets stuck.
More details
See #191721. Thanks to @nocodet888-arch.
-
Plugin reloads in internal sessions return to the right conversation instead of an old external route.
More details
See commit 1084530. Thanks to @Satoshi-Kusumoto, @RomneyDa.
-
Delayed GitHub publication reports no longer appear in a conversation after it has been reset.
More details
See commit a408890 and #187835. Thanks to @anmol0b, @RomneyDa; @obviyus for the contribution.
-
Concurrent MCP requests can reuse a fresh shared OAuth token.
More details
See commit 524d2ab.
-
Plugin SDK declaration generation works with both older and newer native compiler filesystem contracts.
More details
See commit 0584a1a. Thanks to @RomneyDa.
Security and Privacy
-
Discord attachment and sticker downloads no longer inherit broad browser private-network permissions. If your CDN resolves to a private address, add its hostname to
browser.ssrfPolicy.allowedHostnames.More details
See #191458. Thanks to @SebTardif.
-
ClawHub restricts private-network downloads and redirects. If your archive is hosted on another private origin, move it to your configured registry or codeload origin.
More details
See #190939. Thanks to @pgondhi987.
-
ClickClack blocks cross-origin redirects to private HTTP addresses. Set
apiBaseUrlto the final private API origin if your setup relies on one.More details
See #190944. Thanks to @pgondhi987.
-
Invalid logging redaction settings no longer hide configuration warnings or prevent Doctor recovery.
More details
See #173471. Thanks to @skyzhao1223; @moerai for the report and @steipete for the contribution; @RomneyDa for the release adaptation.
-
Fixes some streamed replies exposing split or nested internal reasoning blocks.
More details
See commit b38ba73.
-
Fish Audio and Gradium credentials are redacted from provider errors.
More details
See commit c23a6d2.
-
The secret egress proxy no longer trusts chains relying only on the emSign ECC G3 root. Restart the Gateway to apply the change.
More details
See commit 524d2ab.
-
Subagent follow-ups can continue through ordinary routing changes while current permissions remain in effect.
More details
See commit 7afd2aa and #183501 and #174918. Thanks to @Marvinthebored, @RomneyDa.
-
Parent sessions using a custom store can receive their child approvals and completion updates.
More details
See commit f485995 and #189827. Thanks to @ekinnee, @RomneyDa.
-
Cloud workers can now decide whether to allow a command without a local copy of the conversation history. Commands without permission remain blocked.
More details
See commit 2dab92b. Thanks to @RomneyDa.
Quality-of-Life Improvements
-
Long conversations retain useful recent context after an oversized turn, and repeated compaction can preserve the active request.
More details
See #191146, commit 029ccbc. Thanks to @Yun-0000, @obviyus, @mirasrael, @RomneyDa.
-
Background command completions keep their reply guidance after a queue overflow.
More details
See commit 7a2af6f. Thanks to @aniketkrs, @RomneyDa.
-
Repeated workspace captures can reuse eligible unchanged file hashes without reopening the files; recently changed files are still checked.
More details
See commit 7e06145. Thanks to @RomneyDa.
Other Bug Fixes
-
Waiting
sessions_sendcalls can recover long replies or indicate when a reply may have been truncated.More details
See commit b38ba73. Thanks to @RomneyDa.
-
New bridge-owned ACP sessions keep the requested absolute working directory.
More details
See commit b38ba73.
-
Interrupted child launches and session recovery can settle without holding up unrelated work.
More details
See commit b38ba73.
-
Workspace cleanup preserves data when it cannot inspect the workspace, and terminal input errors reach the caller.
More details
See commit 7d5be82.
-
Authorized native commands can restore archived source sessions, and session sharing reports discovery failures.
More details
See commit c23a6d2.
-
OpenClaw now prepares the linked Codex or Agents API session before deleting a conversation, even when it has no saved messages.
More details
See commit 2e2a5a0. Thanks to @RomneyDa.
-
New sessions wait until their agent database is ready, including after interrupted setup.
More details
See commit cefe5cf. Thanks to @RomneyDa.