Changelog

What's New in OpenClaw

Latest releases and updates from the OpenClaw project and community.

openclaw 2026.10.5-beta.2
View on GitHub

2026.10.5-beta.2

Highlights

  • Updates finish and recover: openclaw update settles stale handoff leases, completed receipts, and legacy 2026.9.8 recovery records instead of stopping on update-recovery-pending, keeps the service heap limit and webhook listeners, handles Windows short-name paths, and no longer reports accepted handoffs or successful updates as failures. (#169038, #169027, #168388, #168889, #169035, #169292, #168927, #168993, #169037, #169454, #168905) Thanks @mkdelta221, @waynegault, @chedong, @k94118, @bluet, @sirius1024, @RomneyDa, @sayitfast, and @hannesrudolph.
  • Doctor keeps your plugins and data: Doctor preserves installed plugins' configuration when path safety checks block them, leaves malformed UTF-8 root memory files untouched, and recovery copies capture Canvas and Memory Core files before migrations move them, including on installs with no configured agents. (#168111, #169029, #169436, #169516) Thanks @obviyus, @wangmiao0668000666, and @RomneyDa.
  • Approved tool calls stay as approved: hooks can no longer change tool arguments after a trusted inline approval; plugins that transform arguments must request approval for their final arguments. (#142700) Thanks @giodl73-repo and @giodl73.
  • Subagent message provenance: inter-session messages keep their [Inter-session message] safety envelope from the first request and through replay, so parent-sent instructions are never presented to a child as direct user instructions. (#169130, #169238) Thanks @RomneyDa.
  • Control UI turns keep running: chat turns from paired devices survive ordinary pairing activity such as node heartbeats, other devices' updates, and tab reconnects; real revocations still stop them. (#169457, #169134) Thanks @Oldrich333.

Changes

  • Tool approval hooks: ordinary hooks can no longer rewrite trusted-inline-approved tool arguments without another approval, and transforming plugins must request separate approval for their final arguments or the call is blocked; see docs/plugins/hooks/tool-policy.md for migration. (#142700) Thanks @giodl73-repo and @giodl73.
  • Codex runtime compatibility: plugin admission rejects official Codex runtimes below 2026.9.7 with update and repair guidance, and incompatible plugins stay inspectable without being imported. (#168930, #168748, #168749, #168977) Thanks @ezimerman.
  • Session notices: creating many sessions gives the main session one summary of new sessions instead of separate notices that crowd out reminders and wakes. (#168239)
  • Update performance: updates stop rehashing unchanged runtime files while retaining the running updater and publishing the candidate, reducing update I/O. (#168958)

Fixes

  • Tool Search provenance: network results reached through Tool Search and Code Mode now taint the turn the same way direct network tool calls do. (#169560, #169332) Thanks @RomneyDa and @farisoftfry.
  • Subagent provenance: child sessions keep the inter-session safety envelope on every replayed turn, and inter-session turns keep a stable provider prompt prefix across later turns and Gateway restarts. (#169130, #169238) Thanks @RomneyDa.
  • Node commands and approvals: approved node commands replay when their prepared plan omitted session identity, Windows node shell commands keep quoted arguments, safe-bin commands accept trailing whitespace, and the Linux node service keeps its PATH when the login shell resets it. (#161980, #151622, #158160, #142847, #168120, #136677, #134354) Thanks @Program-123, @gaojian125, @Dimitri-lcht, @igs-rogenlo, @yetval, @harjothkhara, and @abacha.
  • Private reasoning: unfinished model reasoning stays private when a reply hits a token limit or content filter after a tool call. (#168294)
  • Doctor data safety: Doctor keeps blocked plugins' authored entries, enablement, policy, and slots; refuses to merge malformed UTF-8 root memory; captures Canvas and Memory Core files in new recovery copies (and works on installs with no configured agents); skips redundant cron backups for unchanged one-shot jobs; and honors Windows permissions for SQLite recovery snapshots. (#168111, #168066, #169029, #168567, #169436, #169516, #168938, #168838, #169397) Thanks @obviyus, @wangmiao0668000666, @RomneyDa, @harshitgupta31415, and @WG-Mojo.
  • Memory: daily-note flushes reject copied saved content instead of repeating blocks, and correcting an embedding provider's endpoint or credential refreshes cached index managers without a Gateway restart. (#168123, #151263, #151055) Thanks @ruel225 and @Mirksen.
  • Restart recovery: main sessions that were mid-turn during a Gateway restart resume on the next boot, interrupted completion replies are delivered instead of lost, and new replies wait for their agent to finish starting instead of failing with prepared reply dispatch runtime owner was not published. (#168651, #167814, #167766, #168826, #157814) Thanks @goutamadwant, @marknilsn, and @xiaozishan.
  • Reply routing: WebChat task completions stay in WebChat, mirrored external sends no longer change a transcript's reply destination, and Reef carries GitHub commit links without flagging their revision IDs as credentials. (#168248)
  • Prompt caching: conversations whose first message ends in whitespace keep a byte-stable prompt prefix, and OpenAI-compatible and local endpoints keep runtime context in a user-role message. (#168725, #168546, #164791) Thanks @flanker-stack.
  • Compaction: sessions skip a redundant host compaction after native-only compaction, safeguard compaction keeps configured AGENTS.md sections, and memory-flush runs keep provider-native compaction off. (#168051, #168015, #168446, #168131, #168164) Thanks @ruel225, @xydigitLybnnnn, @robertoronderosjr, @jakeaadams, and @obviyus.
  • Control UI: chat turns survive unrelated pairing activity, typed /stop also cancels queued turns for the session, and open chats recover after a Gateway update or recovery reload instead of sticking on Server updated → Retry now, keeping their place. (#169457, #169134, #167860, #167859, #168941, #169194) Thanks @Oldrich333 and @masatohoshino.
  • Telegram: polling connects again when the ingress worker runs from a source checkout or packaged plugin build, and tables next to quotes or lists keep their boundaries and values. (#154286, #154180, #168383, #168366) Thanks @xydt-juyaohui, @markfietje, @dhruv1220, and @barry-ssb.
  • Channels and voice: channels start again after a stopped-Tailscale failure, the Matrix probe stops its client after checking identity, and openclaw voicecall steer keeps stdout machine-readable JSON. (#162266, #168587) Thanks @RomneyDa.
  • Agent turns: scheduled and ordinary turns reach the configured fallback after a provider timeout, queued follow-ups that switch model clear the auto-fallback probe, cancelled queued CLI work never runs, empty stream heartbeats no longer count as model progress, malformed tool calls whose argument length is 401 or 403 are not reported as auth failures, valid tool argument union values keep their type, and plugin completions keep working after another plugin reloads. (#168605, #160440, #160428, #169303, #145850, #168500, #168450, #158974, #168916, #156026) Thanks @hxy91819, @changeroa, @RileyJJY, @TYY-2005, @r3n3x, @Shenrui-Ma, and @jalehman.
  • Claude CLI: Claude CLI models stay listed after another plugin's config changes, exec-completion turns keep their native and MCP tools, and saved session MCP server selections apply on the next turn. (#168315, #168670, #168342, #168393, #168207) Thanks @obviyus, @Oldrich333, and @dprev.
  • OpenRouter prompt caching: cache-TTL context pruning now arms for Grok and Gemini 2.5+ models on OpenRouter. (#169548, #169133) Thanks @RomneyDa and @gregb100.
  • Models and providers: API-key sign-in discovers the provider's models immediately, shared OAuth credentials refresh with historical agent stores, switching back to an OpenAI model works without the Codex plugin, timed-out Codex discovery clients are reaped, LM Studio waits for slow model loads instead of overflowing a fresh session, and credential removal during a model reload no longer leaves a restart warning. (#168617, #168957, #169412, #168365, #168044) Thanks @obviyus.
  • Model catalog memory: a long-running Gateway's model-catalog worker evaluates an unchanged installed native ESM plugin once per workspace instead of retaining another copy of its module graph on every config change, and a failed native refresh re-registers the requested config on the next request. (#169272, #169321, #159662) Thanks @obviyus, @mcooks-cmd, @RomneyDa, and @svdinu-jpg.
  • MCP computer control: computer control is released with its run, so later calls no longer fail with COMPUTER_HOST_BUSY. (#151127, #147420) Thanks @ylcn91 and @vovarbv.
  • Automations: cron target and payload validation errors are reported as invalid requests, and Workboard fallback runs stay active until the overall outcome settles. (#169102, #168215, #167574) Thanks @obviyus, @skyzhao1223, and @asikorskiy.
  • Agents API sessions: saved remote sessions continue with the same session ID across binding upgrades. (#168150)
  • Large Gateways: large fleets reserve session stores without stack overflows, and process-owning Gateway stops no longer wait on native skills watcher cleanup. (#168354, #168160, #168273) Thanks @609NFT and @obviyus.
  • Updates and recovery: managed updates settle eligible stale package recovery after a lost or replaced handoff lease database and archive completed receipts before the next preparation; --dry-run only reports the planned settlement. (#169038, #167506, #167771) Thanks @mkdelta221 and @waynegault.
  • Legacy update records: 2026.9.8 package recovery records settle by identity and version after metadata drift, completed-receipt identity drift no longer blocks updates, and public repair exits nonzero with guidance when a journal stays pending. (#169027, #168856, #168388, #168092) Thanks @chedong, @k94118, and @RomneyDa.
  • Update outcomes: accepted Gateway update handoffs are not reported as failures, recorded successes stay successful with a warning about stopped channels, original failures survive unavailable cleanup reporting, repaired migrations stop producing stale warnings, package verification tolerates clock jumps, and migrated-state failures point to openclaw update repair. (#168993, #168870, #169037, #169454, #169004, #168835, #168905) Thanks @sayitfast, @hannesrudolph, and @WG-Mojo.
  • Update memory and webhooks: update children inherit the managed service's heap limits so Doctor finishes on large agent databases, and official webhook plugins deferred during candidate Doctor keep their listeners, including Teams' historical port 3978. (#168889, #168729, #169035, #168872) Thanks @bluet and @sirius1024.
  • Update runtimes: updater workers stay on the retained runtime and openclaw doctor --fix reclaims retained runtimes when the install path uses a Windows short (8.3) name or different casing, and updates no longer copy unrelated dependencies into the retained runtime. (#169292, #168927) Thanks @RomneyDa.
  • Update diagnostics: an unsealed original-state capture warning names the affected database, and a candidate config read failure warning includes its reason. (#169282, #169259, #169284, #169261) Thanks @DonnieFi.
  • Codex Ultrafast: ChatGPT sign-in sessions keep Ultrafast on resumed turns instead of dropping to Fast after the first turn. (#169265, #169264) Thanks @SanderHelgesen.
  • npm-global updates: the updater runtime keeps only OpenClaw's own dependencies instead of every unrelated package in the global node_modules. (#169551, #169373) Thanks @RomneyDa and @holgergruenhagen.
  • Update exit handling: a completed update whose result reporting fails exits with its warning instead of opening interactive failure triage. (#168587)
  • Doctor maintenance: Doctor and update repair enter maintenance on a running systemd Gateway even when checking a large state database is slow. (#168161, #168031) Thanks @obviyus and @Tosko4.

Complete contribution record

This audited record covers the complete v2026.10.5-beta.1..8ed6123 history: 91 in-range PRs + 0 retained seed-only PRs = 91 unique PRs. The generation manifest also supplies direct commits as editorial input; the grouped notes above prioritize user impact.

Shipped baseline exclusions: v2026.10.5-beta.1 (3 PRs: #134837, #144420, #167460).

Pull requests

Release verification

openclaw 2026.10.2
View on GitHub

2026.10.2

Highlights

Changes

  • Defaulted OpenAI and Anthropic API-key routes to provider-native compaction. (#168164) Thanks @obviyus.
  • Reported finalized update successes and suppressed channels as warnings instead of failures. (#169037)
  • Stopped live npm dist-tag drift from failing already-validated release candidates. (#168836) Thanks @RomneyDa.

Fixes

Complete contribution record

This audited record covers the complete v2026.10.1..64cec48 history: 85 in-range PRs + 0 retained seed-only PRs = 85 unique PRs. The generation manifest also supplies direct commits as editorial input; the grouped notes above prioritize user impact.

Pull requests

Release verification

openclaw 2026.10.5-beta.1
View on GitHub

2026.10.5-beta.1

Highlights

Changes

Fixes

  • Session data safety: preserve user input and committed facts through restart recovery and failed publication, keep accepted locked appends settled before releasing the writer, and fence cross-store worker commits. (#165502, #167570, #165894, #168018, #168029)
  • Session authority and privacy: check caller authority before restoring cold history for compaction, keep authority current after committed session changes, reject malformed hook session keys, and hide pre-session edits to branch-added files from uncommitted diffs. (#166506, #167875, #166406, #164671) Thanks @yetval and @obviyus.
  • Session cleanup: remove leftover GitHub publication receipts and managed worktrees on cleanup and Incognito reset, and publish conversation, plugin-state, sandbox, worktree, and GitHub authority receipts. (#163833, #165185, #167731, #168025) Thanks @jayzhou2309 and @obviyus.
  • Turn reliability: recover agent turns when the database worker exits mid-operation, stop unrelated session writes from failing Codex and chat turns, keep Knowledge calls working while a session publishes its bookkeeping, and stop group turns from failing silently when history cannot load. (#163258, #165196, #166010, #166758, #135253, #166059) Thanks @goutamadwant, @hawkit, @jalehman, and @izshaw.
  • Restart recovery: settle sessions left running after restart, avoid duplicate recovery after ordinary interruptions, keep recovery reconciliation on the host, and preserve database admission, custody, and hook retries for post-restart and first-session turns. (#165174, #154175, #166395, #166867, #166609, #167629, #165859, #165738, #166891) Thanks @Grynn and @RomneyDa.
  • Agent and session creation: fix concurrent first requests for a new agent, cold shared-store and fresh-store creation failures, and agent database recovery after orphan session window repair. (#166003, #167257, #167515, #167366, #166860)
  • Windows and path aliases: canonicalize the shared state database path and compare link-stable identities so Windows and POSIX path aliases share one store, custody, and channel lifecycle. (#166755, #165775, #166062, #166462, #166787) Thanks @taihartman, @donquiche61, @RomneyDa, and @ericcaiwx-star.
  • SQLite deadlocks and stalls: prevent writer-reader admission and cleanup deadlocks, keep committed reads responsive during writer stalls, stop writer-held transcript reads waiting on readers, and keep foreign changes visible during refresh. (#167662, #167446, #167901, #167687, #166331, #165898, #167332) Thanks @sasan1200 and @vincentkoc.
  • State and updates: stop leftover update-check caches and completed recovery history from blocking updates, and give one actionable answer for state written by a newer release while keeping status reads read-only. (#165461, #167358, #166963) Thanks @RomneyDa.
  • Startup and integrity checks: return pending admission during startup index repair, retain integrity proof through startup and idle retirement, stop early lease timers on long delays, avoid false state ownership loss on Bun, and stop healthy starts logging SQLite lock-wait warnings. (#165323, #166972, #166412, #167467, #167669, #167754, #166253, #168310) Thanks @RomneyDa.
  • Session search and history: search transcripts for configured ACP owners, stop false indexing notices, keep search parallel with accurate indexing, preserve dot-prefixed checkpoint references and CLI history after interrupted progress replies, and keep canonical transcript owners distinct. (#164897, #165879, #167174, #167163, #164920, #166658, #164512) Thanks @sunlit-deng, @obviyus, @techdou, @shakkernerd, and @VACInc.
  • Session display: stop Markdown link markup leaking into previews, show correct context windows for plugin-discovered models, log failed wakes with their target, keep owning agents in lifecycle commands and trajectory export, and decode UTF-16 BOM text files. (#166653, #159731, #166458, #166415, #165777) Thanks @jayzhou2309, @obviyus, @rudycelekli, @Yigtwxx, and @yetval.
  • Startup ordering: stop agents with small transcript rebuild backlogs from waiting behind larger agents at startup. (#165207)
  • Security boundaries: fail closed on unresolved A2A peer token references and when the process census cannot prove a temp root is unused, and reject incompatible worker prompt contexts before launch. (#165021, #165079, #166268) Thanks @eleqtrizit, @Dhotei, @vincentkoc, and @obviyus.
  • Data integrity: reject malformed UTF-8 backup manifests before verification, preserve malformed UTF-8 and trailing-space connect targets, and keep accents in named legacy text attachments. (#167389, #167399, #167116, #165405) Thanks @Alix-007, @obviyus, and @Chessing234.
  • Restart recovery: resume Control UI turns interrupted by a Gateway restart, keep a new session's first message when the Gateway restarts during worktree preparation, resume tasks after deferred startup recovery, pause restart recovery while the crash-loop breaker is tripped, and settle restart intents and update reports in workers. (#165333, #166042, #165184, #166238, #167572, #165069, #165670) Thanks @masatohoshino.
  • Turn lifecycle: publish one terminal event per stopped or runtime-lost run, settle terminal runs before session mutations, keep queued message run ids and replies aligned, and prevent internal recovery errors after queued turns. (#165483, #167383, #166784, #166981, #165996, #164656) Thanks @RomneyDa.
  • Stop and steering: stop yielded commands with their Gateway request, retire stopped continuations, allow wakes after stopped commands, preserve running tools when steering receipts are uncertain, show accepted steering messages in order, and hold steering during worktree creation until the task finishes. (#166753, #166775, #166968, #166754, #168099, #165462, #165537) Thanks @shakkernerd and @RomneyDa.
  • Queue fairness: prevent background starvation under sustained traffic, avoid stalled turns when diagnostics throw, keep permit waiters until their real deadline, and cancel queued host callbacks at task deadlines. (#167683, #167733, #165359, #167740) Thanks @Chessing234.
  • Chat delivery: deliver activity-summary updates after compaction, hide managed media directives in CR-only replies, keep node completion follow-ups in their originating conversation, preserve live node approval handoffs, and stop false Yield failed warnings in group chats. (#165024, #164657, #160675, #166971, #161154, #166396) Thanks @ly85206559, @obviyus, and @brokemac79.
  • Session creation: keep new sessions working while other local turns start or finish, recognize agents immediately after agents.create, keep parent-only sessions bound to their agent, and bind required worker sessions during workspace binding. (#165984, #167894, #165929, #167162) Thanks @alkor2000, @markstones78, and @RomneyDa.
  • Chat history: stop endless retries for sessions in skipped agent stores, return anchored history for pre-reset Claude CLI-bound messages, retain tool history details and channel startup context, and keep generated and truncated session titles UTF-16 safe and balanced. (#165408, #166578, #164848, #141240, #167584) Thanks @obviyus, @VACInc, @sjf-oa, @sjf, @hugenshen, and @cursoragent.
  • Claude CLI and helper calls: keep claude-cli session tools and later CLI bridge calls working after the starting turn ends, route shorthand Anthropic CLI auth refs correctly, keep the session observer working on CLI-backed utility models, and keep OpenClaw helper calls working across runtime changes. (#165432, #165428, #84374, #162067, #166235) Thanks @Oldrich333, @Leit-motif, @nano-richtera, @joshavant, @obviyus, @rogeriochaves, @llmsommelier, and @PollyBot13.
  • Models and catalog: keep Codex selectable after startup and deferred agent startup, recheck models after failed catalog recovery, stop catalog continuations hanging while models load, and keep OpenRouter and LM Studio thinking levels intact. (#165979, #166081, #162901, #166089, #166705, #164478, #164597) Thanks @scotthuang, @ericcaiwx-star, @obviyus, @ooiuuii, and @VACInc.
  • Usage and metrics: report usage for silent replies, estimate context when compatible streams omit usage, include background utility completions in token and cost metrics, and keep usage ranges ordered when the host skipped a date. (#152396, #166151, #167986, #165523, #164140) Thanks @ly85206559, @obviyus, @MutenCath, @fede-kamel, @ericcurtin, @etzelm, @SashaMIT, and @DasX.
  • Startup and readiness: show startup failures even when cleanup fails, stop small agents waiting on larger agents, prevent public chat 503s and stalls after startup, avoid failures during temporary state contention, and stop Gateway start reporting success before an existing process is ready. (#164500, #165107, #167604, #167544, #166111, #166942, #167697, #167674) Thanks @sunlit-deng, @obviyus, @waynegault, @NianJiuZst, @ericcaiwx-star, @mashaohua1999-stack, and @RomneyDa.
  • Plugins and restarts: stop treating restarts as plugin removal, retry stuck plugin reloads once their work settles, keep Control UI reconnects from freezing the Gateway during plugin reloads, and ship hidden external plugin chunks to cloud workers. (#164975, #164894, #167374, #165669) Thanks @obviyus, @jalehman, @LiuwqGit, and @JakeBotFleet.
  • Status and diagnostics: stop deep status blaming config for an unreadable state database, report startup migrations and channel logouts accurately, surface startup failures over unrelated log lines, use plain language for diagnostic checks, stop recommending onboarding for runtime failures, and report signal-terminated node commands. (#167352, #167723, #167478, #166946, #165742, #166234, #165116, #165358, #165426) Thanks @RomneyDa, @PollyBot13, @obviyus, @Colton-Harris, and @shakkernerd.
  • Daemon and platforms: recover disabled Windows Gateway tasks from Doctor, restore gateway stop, restart, and update on macOS 12, avoid versioned pnpm launcher paths, keep exec and MCP servers working after a Homebrew Node upgrade, and reconnect Apple clients promptly after network changes. (#164728, #163317, #167905, #166222, #166430, #168024) Thanks @NovaUnboundAi, @xXG0DLessXx, @RomneyDa, @SMF12138, @jayzhou2309, and @mightyx.
  • Networking: restore managed portals on large Tailscale tailnets, keep verified Tailscale GitHub users signed in during GitHub rate limits, stop interrupted Tailscale serve processes, emit TLS key identifiers for strict egress proxy clients, recover proxy requests instead of one-token replies, and bound unattributable proxy warnings. (#165507, #166254, #167514, #165818, #167878, #134404) Thanks @obviyus, @redasadki, @pandysp, @vortexopenclaw, @RyanSandoval, @jacobtomlinson, @amittell, @lzhan011, and @abacha.
  • Workers and processes: stop repeated worker starts after initialization failure, keep workspace recovery running during unrelated writes, stop background execs outliving cleanup, load source workspace workers from external directories, release settled work blocking suspension, and avoid heap-check stalls in busy Bun Gateways. (#165277, #166375, #166478, #166606, #165871, #167184, #166104, #166608, #162124) Thanks @Oldrich333, @RomneyDa, @michaelswissa, and @obviyus.
  • Gateway behavior: encode Ctrl+Space and modified function keys in send-keys, collapse finished processes by default, cap oversized policy watch intervals, keep slow WebSocket response logs and stop listener buildup, keep OpenAI-compatible cancellations from blaming the provider, and explain protected credential execution limits. (#164688, #164776, #164850, #164772, #165052, #167995, #167976) Thanks @yetval, @obviyus, @shakkernerd, @KrasimirKralev, @etzelm, and @RomneyDa.
  • Integrations: parse Firecrawl source-specific results, report ComfyUI workflows without outputs, validate meeting timeouts, stop Mattermost retrying permanent refusals, and include jobId in agent_end hook context for scheduled runs. (#155885, #166249, #158695, #167244, #167124, #158632) Thanks @qingminglong, @obviyus, @chelsealong, @catnipluss, @Alix-007, @Leon-SK668, @xyrolle, and @masatohoshino.
  • Workspaces: reconcile root node workspaces and surface failures, reject timed-out workspace inventory commands, keep dashboard title work from blocking session rollover, and allow Claw removal with a running Gateway. (#166441, #167673, #162689, #166889) Thanks @ericcaiwx-star, @cursoragent, @obviyus, and @dimonnld.
  • Session reads: keep chat admission responsive and bound to current authority, refresh placement reads after concurrent publication, skip agent stores no configured agent owns, isolate session-worker receipts, and avoid an unavailable flash when refreshing conversations. (#164682, #165166, #164929, #165904, #167097, #167689, #165468) Thanks @galiniliev and @jacobtomlinson.
  • Agent CLI and recovery: keep withdrawal results when queued turns time out, report queued cancellation details, await system-agent audit and greeting persistence, record retired state deferred to Doctor, and keep Doctor maintenance working under the shared lease policy. (#167106, #166185, #165561, #165528, #164697, #165479) Thanks @A1fred-AI and @shakkernerd.
  • Channel security: stop removed X allowlist senders from reaching dispatch mid-authorization, redact credentials in Discord PluralKit, LINE, and Tlon API error bodies, bound pending IRC inbound lines, and reject unsafe LINE question option indexes and unmatchable Matrix auto-join entries. (#165244, #141317, #167234, #165018, #158694, #161607) Thanks @hugenshen, @obviyus, @xialonglee, @eleqtrizit, @Alix-007, @xydigitLybnnnn, and @captain-marlow.
  • Browser safety: isolate session tab ownership by agent, reject malformed JSON before filling forms, match URL globs without backtracking regexes, honor explicit management timeouts, and evict least recently used tabs at the managed tab cap. (#167484, #167412, #166727, #167252, #166666) Thanks @Alix-007, @obviyus, @SebTardif, @Leon-SK668, and @ruel225.
  • Reply delivery: stop reporting transcript-only channel replies as sent, deliver isolated cron results to their creating conversation, keep node completion and background command results in their own conversation, and stop repeated browser replies after background child work. (#164860, #167363, #164719, #166362) Thanks @jayzhou2309, @obviyus, @Jackten, @SparcleAI, and @shakkernerd.
  • Telegram: keep streamed replies from vanishing when their replacement never lands, retry preview edits after transient errors, keep delegated progress and media-run progress cards live, honor explicit reply tags during partial streaming, keep pending questions through settings commands, restore verbose diagnostics, treat GIFs as videos, and harden spooled turn adoption. (#164649, #165072, #166101, #167362, #167895, #168004, #168016, #168011, #103695, #167470) Thanks @jayzhou2309, @obviyus, @jmar5439, @vincentkoc, and @mgr-nick.
  • Discord and Slack: let newer Discord messages pass deferred ingress, keep source formatting in streaming previews, keep health inspection from blocking connections, keep Slack final replies below later human messages, stop misclassifying bare channel names as ids, log skipped mentions, and quiet Socket Mode ping warnings. (#159265, #165120, #166736, #163511, #155882, #157953, #164305) Thanks @aatreya, @RomneyDa, @Olli0103, @Patrick-Erichsen, @leovoloshin, @MertBasar0, @obviyus, @jayzhou2309, and @Johannes-Berggren.
  • Other channels: recognize images sent as files on LINE and as documents on WhatsApp, preserve WhatsApp media proxy uploads on Bun, complete Feishu webhook upgrades before activation, coalesce obsolete Feishu previews, resolve Feishu mentions, advertise Feishu group chats, and keep Matrix attachment filenames out of agent text. (#165778, #165774, #165017, #165303, #166610, #167264, #121463, #166599, #165419, #165209, #133338) Thanks @yetval, @Takhoffman, @shakkernerd, @rudycelekli, @Leon-SK668, @Raven-wy, @zw-xysk, @ooiuuii, @obviyus, and @RileyJJY.
  • IRC and Tlon formatting: log in with passwords containing spaces, keep backslash sequences and long non-ASCII replies intact, keep graphemes intact when splitting Slack and IRC replies, preserve angle-bracket placeholders, and keep Tlon links and images formatted. (#165721, #165719, #159730, #167025, #167953, #164828, #167191, #137763, #167637) Thanks @Sedrak-Hovhannisyan, @obviyus, @rodricksz4h5, @jayzhou2309, @yetval, @ly85206559, and @teddytennant.
  • Cron: keep migrated and Doctor-repaired automations available, report overflowing reminders instead of dropping them, preserve canceled status and Codex max thinking, hold repair while provider-outage retries are pending, and stop maintenance failures during agent deletion or startup. (#165064, #165032, #165305, #167524, #165444, #167957, #167907, #165814, #166991, #166836, #161321, #167120, #166487, #165310) Thanks @Oldrich333, @obviyus, @67-luck, @lucianosmori, @JLahullier, @LinzeShi, @Alix-007, @AXEG0, @Linux2010, and @automaton1379.
  • Memory reliability: keep indexing, background sync, and nightly dreaming working after plugin reloads and during agent startup, keep keyword fallback when embeddings fail, let slow local models finish Dream Diary entries, and fix database-locked session indexing. (#167724, #167722, #167756, #167679, #167970, #152210, #167984, #167891, #164624, #166419, #166422, #166417, #107921, #164633) Thanks @synthalorian, @clanksy-code, @woshicby, @fonoempresa, @triciah73, @jalehman, @tzy-17, and @altaywtf.
  • Memory search: keep distinct mixed-script and CJK memories, find words across Unicode normalization forms, correct EmbeddingGemma retrieval, avoid inheriting chat-only base URLs for embeddings, and bound memory-wiki searches. (#164062, #164660, #150968, #168058, #165514, #166329, #166355, #167929, #143054, #167357) Thanks @harshitgupta31415, @obviyus, @ly85206559, @Leon-SK668, @polley-mister, @dhruv1220, @vit-pavlenko, @etzelm, @RileyJJY, and @syfvb.
  • Heartbeat and auto-reply: let chained command completions skip the interval wait, report file-redirected background results, deliver Android notification wakes with heartbeat.every at 0m, keep heartbeat-only options off queued messages, settle active runs before compacting, and surface silent media staging failures. (#164756, #166123, #166522, #165313, #166777, #166163, #165788, #165066, #165876) Thanks @obviyus, @gkoch02, @jayzhou2309, @BensonChen1204, @RomneyDa, @holny, @alexph-dev, and @akshatshahh.
  • Exec and tools: preserve channel context in node exec, prevent NUL commands from breaking shutdown, stop stalled sandbox finalization loops, advertise only session-supported hosts, fix Kimi K3 exec calls, stop yielded commands from channel /stop, and show tool summaries instead of internal MCP names in CLI progress. (#164584, #164770, #165167, #166835, #164506, #165022, #166764, #167486, #167274) Thanks @shakkernerd, @holgergruenhagen, @obviyus, and @VACInc.
  • Browser: follow configured node routing, reserve CDP ports before relay ports, recover from extension cleanup failures, ignore extension pages, start Chromium from relative Playwright caches, and upload files as payloads on extension profiles. (#164575, #164678, #151037, #162110, #164659, #160013) Thanks @miguelbranco80, @obviyus, @yetval, @ethangui, @openclaw-agent-man, @dlmccoy, @ly85206559, @LiuwqGit, and @elandesberg.
  • Skills and MCP: recheck prerequisites in new sessions, stop calling unavailable skills uninstalled, stop rescanning unchanged roots, hide disconnected MCP catalogs during recovery, connect MCP plugins from HTTPS dashboards, and preserve tool prompts during reconnects. (#165529, #164884, #165304, #165158, #163875, #167642, #158059) Thanks @obviyus, @Patrick-Erichsen, and @NoelDavies.
  • Media and web fetch: accept public IPv6 MEDIA URLs, attach multiline Markdown images, keep UTF-16 text MIME and filename apostrophes, report unrecognized video sizes, preserve code literals and list spacing in fetched text, and send an honest DuckDuckGo User-Agent. (#164689, #165439, #164687, #165754, #159037, #162650, #164936, #164692, #164726) Thanks @yetval, @Takhoffman, @Milbaxter, @chief-o-brien-bot, @obviyus, @LinzeShi, @YangManBOBO, @wangmiao0668000666, @ly85206559, and @takyyon.
  • Nodes: give node sessions the same prompt and bootstrap context as local sessions, reduce Windows final-reply latency, and reject blank camera facing values. (#164647, #164523, #145538) Thanks @hugenshen and @altaywtf.
  • Team reports: keep the missed closed day when catch-up runs after midnight and defer catch-up until scheduled runs. (#165780, #165356) Thanks @yetval.
  • Updates: fix dev-channel updates on source checkouts without dependencies. (#165347)
  • Agent safety: block visible and cross-agent spawns for restricted senders, stop forged Code Mode bridge failures from guest code, and keep unrelated tools from running during memory saving. (#165418, #165071, #166650) Thanks @jlapenna.
  • Reply delivery: stop runs ending with "couldn't generate a response" when a model writes a tool call as text, keep answers from being dropped or replaced after NO_REPLY follow-ups, plan checks, reasoning-only tails, or yields, and make incomplete turns end with a visible notice. (#156342, #164774, #164896, #167567, #166876, #167972, #168062, #156939) Thanks @namest504, @hogawa000, @obviyus, @goutamadwant, @hannesrudolph, and @QuinsZouls.
  • Subagents: keep requester turns and wakes alive through expired completion delivery and transient preparation failures, preserve complete ACP and CLI subagent answers, stop late or superseded completions from delivering stale answers, and keep results returning after follow-ups. (#164282, #165610, #165800, #162843, #166139, #165987, #168068, #167898, #166990) Thanks @Oldrich333, @obviyus, @yetval, @holgergruenhagen, @zyz619963502zyz, @Yun-0000, @michaeljgood71, @LifeViwer, and @stackingrockss.
  • Subagent ownership and recovery: settle raw-key children and listings through recorded owners, reconcile interrupted subagents at startup, keep restart recovery running past stale records, drain native subagent commands on parent stop, and preserve child finals and failure diagnostics. (#164674, #166550, #166845, #166846, #165335, #165499, #166832, #165634, #166454, #165496, #165469, #165612, #166294) Thanks @shakkernerd, @Oldrich333, @sunlit-deng, and @Jackten.
  • Tool calls: recover when providers reuse tool-call IDs across steps or send malformed tool calls, stop Tool Search crashing on large Unicode descriptions, accept regex lookarounds in OpenAI tool schemas, preserve images from deferred tool calls, and end turns after repeated identical tool errors. (#165210, #165212, #165297, #164274, #164737, #166999, #165762, #167628, #163577, #164742) Thanks @fransqaas, @scs0209, @cursoragent, @obviyus, @adamjgmiller, @jlapenna, @GoldArowana, @aniruddhaadak80, and @ooiuuii.
  • Code Mode: report invalid tool arguments as invalid_input, preserve core coding signatures in the bounded catalog, clarify that API.read returns a file record, and limit exec discovery guidance to code-mode-only threads. (#165008, #166785, #167286, #165508) Thanks @obviyus, @rclarke0, and @mbelinky.
  • Stalled turns: retry model streams stalled behind empty keepalives or cut mid-frame, prevent SSE idle timeouts and stalled-reconnect hangs, stop plugin-approval waits and completed async tools from being aborted as stalled, and recover ChatGPT turns after websocket expiry or rejected tool continuations. (#165983, #165870, #152705, #167013, #161821, #166997, #167063, #168055, #166853, #167303) Thanks @cestercian, @Irish-Joseph, @rmyers64, @ericcurtin, @obviyus, @masatohoshino, @ZengWen-DT, @alfredjbclaw, @sszyh2026, @fransqaas, @SunnyShu0925, @hannesrudolph, and @Jackten.
  • Sessions and queued work: stop sessions_send into a busy session from never running, queue follow-ups behind settling image completions, keep yielded sessions admitting work, avoid model fallback on local transcript conflicts, and recover sessions after truncated or unreloadable images. (#167126, #166597, #167007, #165490, #166564, #166165, #166120) Thanks @holgergruenhagen, @MoerAI, @hannesrudolph, @jayzhou2309, @mirasrael, @nogikeyaksh, @ruel225, and @igs-rogenlo.
  • Compaction: commit a deterministic reduction after summary timeouts instead of aborting streaming summaries, recover when primary auth is cooling down, drop stale decisions after corrections, unstick small-context sessions, and stop large sessions waiting minutes for compaction. (#164246, #164263, #166459, #167757, #167900, #167916, #165179, #163117, #167505, #162066) Thanks @obviyus, @hawkit, @jacobtomlinson, @ericcurtin, @johan-eilertsen, @SunnyShu0925, @AXEG0, @jaikharbanda, @rogeriochaves, @llmsommelier, @RomneyDa, and @ajmtrz.
  • Codex: stop the turn after an interrupt waiting on other active Codex chats, explain provider failures and rejected compaction turns, keep sessions responsive after Codex unloads threads with background terminals, support native children on remote app-servers, and keep the current task after overload retries. (#165487, #165488, #167016, #166693, #166400, #166868, #165728, #167220, #167075, #160952, #166668, #155855) Thanks @jaikharbanda, @jalehman, @Kimiyu-186, @Baumus, @RomneyDa, @jacobtomlinson, @vincentkoc, @SunnyShu0925, @altaywtf, and @obviyus.
  • Claude CLI: preserve replies after long streamed turns and background Bash runs, stop history forks across message routes, recheck login after Gateway startup, fix missing-API-key failures after Claude CLI sign-in, refresh system context on resume, and keep the working timer steady on reopen. (#153545, #165596, #167241, #166305, #167963, #168074, #167817, #164873, #166009, #82546, #165769, #157697) Thanks @zhangguiping-xydt, @obviyus, @methylester, @adele-with-a-b, @cmatrx0, @yu-xin-c, @robburke, @rogeriochaves, @llmsommelier, @Oldrich333, @amknight, @FreeWind6, and @Bruce-Yii.
  • Model picker and discovery: keep New Session and session patches responsive while the catalog loads, stop discovery failures, restarts, config reloads, or catalog adoption from hiding models, keep cron jobs and first chats running when a catalog update lands mid-turn, show known models right after sign-in, and keep explicit model IDs ahead of aliases. (#165989, #166376, #167230, #167458, #167117, #167178, #167460, #167462, #167492, #166983, #167444, #167128, #161740, #168410) Thanks @DonnieFi, @obviyus, @dprev, @tianhaotian, @matthematics1137, and @RomneyDa.
  • Model catalog data: keep the hosted catalog updating past 5 MiB of models.dev data, stop publishing models providers no longer serve, resolve models.dev aliases for Together, StepFun, and Kilo Code, retain discovered models with provider SecretRefs, and list standalone models with the owning plugin registry. (#166699, #167855, #144946, #144951, #144960, #147374, #166361, #168050, #165990, #150423) Thanks @obviyus, @ly85206559, @cursoragent, @pheidon, @xydigitLybnnnn, and @marcusa617.
  • Ollama and local models: keep ollama.com setup separate from local Ollama, show newly pulled models, stop retrying retired models, fix Tool Search tool calls and empty reasoning-off completions, and keep pre-tool narration out of channel replies. (#167433, #67005, #167463, #160047, #28827, #167933, #159380, #156389) Thanks @obviyus, @Irish-Joseph, @Kansodata, @autoeverything, @YangManBOBO, @Olli0103, @Solvely-Colin, and @noamliav.
  • llama.cpp: fix managed setup on macOS below 13.3, avoid Metal-init timeouts, recover missing or orphaned managed servers, keep selected GGUF files, and stop local memory indexing from being OOM-killed on small hosts. (#163358, #167630, #153523, #167902, #168064, #168020) Thanks @NovaUnboundAi, @VACInc, @xXG0DLessXx, @samuelreyes982, @dh-js, and @frankhli843.
  • Provider reasoning and routing: honor thinking levels for custom reasoning models, declared vLLM reasoning efforts, and Grok subscription efforts, fix tool turns for reasoning models on OpenAI Completions routes, recover trailing Gemma 4 tool-call text, and route custom Bedrock providers in their configured region. (#168056, #150149, #167949, #166182, #167886, #164406, #161838, #160604, #166152, #166169) Thanks @leapdragon, @krell11, @obviyus, @AsTutoAI, @jlapenna, @Ayushdevo, @kai-ocean-kurt, @ericcurtin, @sxh313, and @Lian-Hu-Agent.
  • Agents and ACP: fix agents delete with $include entries, align binding commands with routing, fix ACP spawns for raw harness targets, allow Gateway startup with unbound legacy ACP metadata or pending agent stores, keep native Talk consults running, and hide web search when no provider is configured. (#166316, #166426, #166908, #166839, #167627, #164372, #166199, #164061, #164766, #167608, #167890) Thanks @jayzhou2309, @obviyus, @jaoa12or, @saariuslystoned, @josephbergvinson, @VACInc, @SunnyShu0925, @samiralibabic, @jacobtomlinson, and @shakkernerd.
  • Streaming text: keep fitting emoji and accents intact in prose replies. (#166567) Thanks @rudycelekli and @obviyus.
  • Onboarding: report provider setup failures as JSON. (#165211)
  • Chat delivery: keep queued WebChat cancellations, run-start and tool events, steering messages, injected notes, background replies, and media completions attached to the right turn and session. (#165168, #165194, #165535, #165549, #167284, #166710) Thanks @obviyus, @legarconc, @Marvinthebored, @Peetiegonzalez, @oywino, @wsk19831112-web, and @ing650423.
  • Chat reliability: reconcile completed runs without navigation, keep sends working during concurrent session updates, prevent stalls during progress-card saves, recover strict chat templates after runtime notices, honor non-streaming requests, and retry initialization after rolled-back maintenance. (#165108, #166027, #167396, #167309, #168057, #168078, #165137) Thanks @shakkernerd, @fuller-stack-dev, @jlapenna, @jacobtomlinson, and @mbelinky.
  • Chat history: keep active tools running after history refresh, stop duplicate commentary during long runs, keep aborted Claude CLI tool markup out of history, and stop sent drafts and typing previews from returning. (#165392, #158459, #167054, #165031, #167507, #166824, #168090) Thanks @RomneyDa, @jayzhou2309, and @ndakota79.
  • Chat scrolling and layout: keep chat following turns sent from elsewhere and measured row growth, hide conversation navigation when chat fits onscreen, keep header and composer visible during startup, and stop dashboard reloads flashing the wrong layout. (#165484, #166261, #168010, #166865, #168073, #168007) Thanks @RomneyDa.
  • Control UI sessions: stop new session tabs showing Disconnected while loading, open new sessions on modified Enter and before draft cleanup settles, stop IME confirmation from starting sessions, and fix folder-path Enter in New Session. (#165051, #167019, #167384, #165919, #165446, #166128, #168034) Thanks @obviyus, @vyctorbrzezowski, @vincentkoc, @ly85206559, @shakkernerd, and @RomneyDa.
  • Control UI subagents: keep delegated subagents in the running panel, restore inline per-subagent activity, clear false unread and attention dots, and stop old timed-out subagents flashing red cards. (#166442, #168102, #165792, #166124, #167232, #165160) Thanks @holgergruenhagen, @obviyus, @vincentkoc, @jalehman, and @tre1d.
  • Model picker: stop the picker spinning on every message, keep provider choices and toggles distinct, keep the effort selector after catalog failures, and hide the Anthropic group for Claude CLI-only setups. (#164963, #164574, #166821, #146155, #167438, #164357, #166819) Thanks @vyctorbrzezowski, @ooiuuii, @obviyus, @Patrick-Erichsen, @NGO-A, and @TUARAN.
  • Chat titles: generate chat titles from the supplied source message and retry naming when the model serves one request at a time. (#166308, #163817) Thanks @jjjhenriksen, @obviyus, and @MertBasar0.
  • Control UI: stop identity request floods during Gateway restarts, preserve operator access and chat deep links after restart, keep Control UI available under arbitrary UIDs, and close unauthorized portal WebSocket upgrades. (#165443, #166553, #166783, #165880, #167065, #167645, #165806) Thanks @RomneyDa, @Conan-Scott, @hugenshen, @cursoragent, @obviyus, and @SebTardif.
  • Control UI polish: keep Escape scoped, fix sidebar overlap and filter controls, render emoji shortcodes and correct PR links, preserve Unicode in truncation and widget error reports, and show setup and Skill Workshop errors clearly. (#165100, #165126, #165199, #165449, #166287, #165004, #164608, #165415, #167830, #165849, #165619, #166392, #166563, #155429, #167656, #168001, #165737, #167375, #167400) Thanks @vyctorbrzezowski, @jacobtomlinson, @jjjhenriksen, @obviyus, @nocodet888-arch, @ly85206559, @RomneyDa, @jalehman, and @Patrick-Erichsen.
  • Control UI composer and media: keep dictation available during active turns and stop hold-to-dictate on release, avoid duplicate iOS Safari attachment actions, stop image controls obscuring previews, and allow unlisted files on Android. (#166075, #166843, #167590, #166829, #166402, #168049, #166994, #167600) Thanks @jacobtomlinson, @alfredjbclaw, @obviyus, @DonnieFi, @Solvely-Colin, and @Patrick-Erichsen.
  • Control UI misc: confirm dirty exec approval target switches, keep focus in config collections, revert Slack and Discord session return buttons, consolidate browser connections in Activity, and remove duplicate agent update attribution. (#149181, #160131, #165334, #166814, #166006, #167759) Thanks @tommyjoseph, @obviyus, @MoerAI, @Patrick-Erichsen, @vincentkoc, @RomneyDa, and @jacobtomlinson.
  • Terminal: keep the terminal when docking right, close the dock after shell logout, preserve connection state on tab resume, size multiline table cells, and confirm selection copies. (#166213, #166087, #167031, #166549, #166669, #153580) Thanks @jacobtomlinson, @ly85206559, @obviyus, and @alexsimeonoww.
  • iOS: stop duplicate streamed replies, show tool step titles and progress bars, keep voice replies in place, give chat full width, and avoid Debug stack overflow in the composer. (#166313, #166359, #166321, #165473, #166067, #165472, #165927) Thanks @Marvinthebored, @Solvely-Colin, and @Peetiegonzalez.
  • Talk and voice calls: keep restored calls and receipts honest, stop sharing answers across consults, preserve Talk completion status, settle voice work before shutdown, fix native-delegation hangups, and restore config migrations. (#166431, #145776, #167455, #166795, #165715, #165831, #164951, #166552, #165368) Thanks @tianhaotian, @Leon-SK668, @rmyers64, @Bartok9, @samiralibabic, @obviyus, @mbelinky, @SunnyShu0925, @ly85206559, and @vincentkoc.
  • macOS and Windows: stop slow-starting Gateway restart loops after reboot, fence recovery installs with the runtime pin, size LaunchAgent exit timeouts, install unattended Windows Gateway tasks, and replace running services safely. (#158954, #165044, #165320, #165088, #166510, #165163, #165261, #165538, #164680) Thanks @MertBasar0, @cjn119-ui, @yuzh086-create, and @desksk.
  • Markdown and text: keep wrapped frontmatter values, preserve prose between operator tokens, and avoid tiny code messages from rendering overhead. (#165531, #165753, #167958) Thanks @SashaMIT, @obviyus, and @Sedrak-Hovhannisyan.
  • Local models: show embedding-only setup when llama.cpp chat exceeds RAM. (#165832) Thanks @obviyus and @NovaUnboundAi.
  • GitHub Copilot: fix first turns for Chat Completions-only and new Claude models. (#167941) Thanks @obviyus.
  • Logging and secrets: mask credentials in long tool text without stalling redaction, preserve the first retry after long model output, and stop restarts from logging false secret-resolution failures. (#161480, #167708, #165485) Thanks @eleqtrizit.
  • Config: reject malformed UTF-8 and malformed plugin metadata JSON before rewriting files, explain blocked destructive updates, and stop recommending refused writes for managed metadata. (#167118, #167391, #155427, #166830) Thanks @Alix-007, @obviyus, @RomneyDa, and @sxh313.
  • Auth: preserve selected chat accounts when credentials disappear, keep concurrent Gateway calls authenticated, fix Claude CLI plugin completions returning 401 without a selected profile, and point retired auth profile migrations at doctor --fix. (#166985, #166523, #166173, #167650) Thanks @vincentkoc, @sunlit-deng, @Fealves0, and @samson1357924.
  • Pairing: tell browsers when their access request is declined or expires. (#164793)
  • Update safety: never strand non-root updates on launcher ownership, complete package swaps across devices instead of rolling back on EXDEV, fall back to byte copies when file cloning is denied, judge publication and rollback identity on the published bytes, and keep foreign-owned state roots writable. (#164636, #164769, #165257, #164797, #164823, #164990) Thanks @hrp6vv9mwr-glitch, @MrJanvar, @potterdigital, and @saftall.
  • Update recovery: settle pending recoveries whose lease database, device id, or rollback evidence changed, recover updates blocked by dead child-lineage leases or missing handoff leases, and stop completed recovery history from blocking future updates. (#164849, #166394, #167302, #168043, #165238, #165607, #167648, #167330, #168197, #164997) Thanks @szef-svg, @izrl613, @neilofneils404, @shanselman, @farisoftfry, @Hensarj, @NovaeonStudio, and @RomneyDa.
  • Update and Gateway restarts: restart the Gateway and record the interruption when the updater is signaled mid-activation or a finalize step is refused, stop managed systemd Gateways with the bounded gateway-stop sequence, refuse before mutating masked units, and skip the maintenance drain when the Gateway is already stopped. (#165863, #166548, #167040, #165747, #167649, #167760) Thanks @Shirleyyyhk, @jlapenna, @gregb100, and @hannnnn-l.
  • Update on Windows: refuse non-elevated Windows updates immediately with an elevation hint, and bind the Windows candidate executor by its handoff identity. (#166695, #166530)
  • Update compatibility: hand the private Node runtime to npm lifecycle children, preserve startup errors and admit Doctor runs from older updaters, complete October beta updater compatibility, repair legacy config on identical-package updates, and fix updates failing on absolute-path agent avatars. (#164677, #162344, #167833, #165855, #165242, #164638) Thanks @jarvisnextgeneration20-lang, @jamiezigelbaum, @GoDiao, @shakkernerd, and @nitinjwadhawan.
  • Update diagnostics: name each candidate and preflight check, the resolved install, and the detected runtime when refusing, surface the child's refusal reason through the managed handoff, record why handoffs failed, show every recorded update warning, and clarify report wording. (#164746, #166410, #164782, #166540, #167509, #167802, #167794, #164858, #165539, #166577) Thanks @TOM-WANG-GUANG, @coygeek, @GitHoubi, @Patrick-Erichsen, @xydigitLybnnnn, and @creanet-64.
  • Update verification: degrade candidate verification at integrity limits instead of refusing, treat channel health-collection timeouts as warnings, keep checkout plugin skills loadable, finish deferred model repair, honor an explicit TMPDIR, and stop repair turns and triage retry loops from timing out or looping. (#164504, #165852, #165882, #165148, #165830, #166847, #167782, #167051, #165982, #167035) Thanks @vasaeru, @RomneyDa, @DonnieFi, and @WG-Mojo.
  • Install: preserve npm network environment settings, keep native packages on their intended platforms, and fix Windows Bun packaging failing to find npm. (#165409, #165997, #165241) Thanks @Chessing234 and @TommyFive.
  • Doctor migrations: migrate legacy session entry state before SQLite import, commit transcript archive migration per batch, reconcile residual legacy imports, settle deferred imports bound to a different database, preserve SQLite files and markerless legacy cron ownership, and set aside allowlists for removed channel accounts instead of stopping. (#165866, #165837, #166397, #167538, #166671, #166996, #167651, #167059, #164867, #162275) Thanks @SunnyShu0925, @609NFT, @coolcoolwcr, @bipolar84, @oshunter, @jaiden0, @hshs38033-cmd, and @RomneyDa.
  • Doctor backups: keep the pre-migration backup when sqlite-vec cannot load, write captures on filesystems that reject RENAME_NOREPLACE or lack birthtime, and retain interrupted capture evidence. (#165820, #166425, #164748, #164363, #166495) Thanks @NovaUnboundAi, @MertBasar0, @bbs2i58, @jayzhou2309, @StevenKrebs, and @hippoley.
  • Doctor and Gateway: recover archives without leaving Gateways stopped, reclaim stale Gateway locks like startup does, verify restarted Gateways by health, avoid races with a managed Gateway, settle Doctor writers before recovery, and shut down lifecycle workers before exit. (#165854, #165355, #167713, #166948, #162614, #164853, #165417) Thanks @RomneyDa, @Olli0103, and @lshamash.
  • Doctor accuracy: keep lint and JSON Doctor read-only, stop reporting skipped maintenance as repaired, run diagnostics when maintenance is declined, flag missing Tailscale prerequisites, stop promising service defaults it cannot apply, and resolve the Claude CLI binary like the runtime. (#166857, #167714, #168065, #166947, #166950, #165273, #166384, #166517, #165420, #168069, #167699, #166335) Thanks @RomneyDa, @mightyx, @jayzhou2309, @davidchyi-beep, @noelff, @obviyus, @Tosko4, and @vincentkoc.
  • Skill Workshop: keep approval-first setups from writing skills unreviewed while keeping automatic learning for approval-policy configs. (#167641, #167846) Thanks @obviyus.
  • Plugins on Windows: stop Gateway startup stalls capturing installed plugin files, preserve native SDK filenames, accept entries inside the package root, keep Bun plugins across source edits, and reclaim Jiti generation caches. (#168313, #165282, #167588, #165533, #165169) Thanks @RomneyDa and @JIRBOY.
  • Plugin loading: resolve mixed-case plugin IDs, load Doctor contracts after in-place replacement, preserve replacement installs across watcher echoes, reload bundled plugins with dormant records, avoid slow native prebuild loading, and settle migrations whose owner is unavailable. (#164683, #165049, #166618, #167647, #165301, #165861, #163198, #164662) Thanks @mbelinky, @goutamadwant, @exGeni, @Franklinyung, and @shakkernerd.
  • Plugin runtime: stop Gateway freezes on model changes with large plugins, keep plugin-started turns' completion status, fix Copilot plugin tool calls after the first turn, keep isolated completions from capturing unrelated plugins, and fix follow-up turns after native tool use. (#161267, #167621, #164598, #166310, #168067, #163636) Thanks @obviyus, @ericcurtin, @takyyon, and @jjjhenriksen.
  • Plugin diagnostics: use plain language for diagnostic and connection checks and stop repeating unchanged provenance warnings. (#165741, #165740, #167023) Thanks @RomneyDa.
  • CLI: prevent errors after in-place updates and silent status hangs, keep Gateway readiness on a monotonic clock, prevent rapid log polling, and bound shared-state drain on shutdown. (#165233, #167677, #155799, #163791, #164915, #164998) Thanks @RomneyDa, @SunnyShu0925, @LinzeShi, @obviyus, and @Grynn.
  • CLI output: return JSON errors for node, exec-policy, and devices refusals, explain unresolvable agent model references and reasoning-only model runs, reject ACP harness models for ACP agents, and show a UTC marker in sessions tail. (#167437, #167279, #167294, #168009, #156137, #166662, #148022, #145537, #145532, #166745, #165373, #164835) Thanks @Leon-SK668, @obviyus, @masatohoshino, @azuretek, @taekop, @jayzhou2309, @FtlC-ian, @TUARAN, @aniruddhaadak80, @hugenshen, @altaywtf, @sxh313, and @danhayman.
  • Shell completion: preserve escaped profile spaces and Fish completion backslashes. (#164785, #164455) Thanks @yetval, @obviyus, and @LinzeShi.
  • Worktrees: create parallel New Session worktrees concurrently, preserve worktrees used by live sessions, recover leaked branches, stop repeated Git maintenance failures, heal missing commit-graph tips and stale pack indexes, and use remote defaults after fetch failures. (#166060, #166443, #164615, #165204, #167473, #165995, #167426, #167691, #167367, #165969)
  • Workboard: keep automation, home, and Board agent sessions off Sessions boards, show truthful run and PR facts, explain dispatch refusals, and stop re-dispatch from silently using an old base. (#165076, #165319, #165189, #167427, #164829) Thanks @Leon-SK668, @obviyus, @mightyx, and @ArcueidMP.
  • Gateway performance: acknowledge chat sends before skill preparation, restore fast saved-session model picking, retain cold session list selections, reduce board and member-list read latency, prewarm sandbox templates, and avoid premature scheduler wakes and full placement projections. (#165608, #166037, #166405, #166403, #165344, #165125, #165931, #165922, #165600, #165840, #166617, #167666, #167813, #166387, #165015) Thanks @obviyus and @jacobtomlinson.
  • Gateway performance: serve chat, usage, placement, and metadata reads from workers and prepared projections, move startup maintenance and notice sweeping after readiness, and reduce SQLite, projection, and history-page work per chat turn. (#164744, #164943, #165470, #165614, #165218, #165331, #166587, #167194, #167032, #166263, #165190, #166365) Thanks @obviyus.
  • Gateway performance: speed up reconnects, restarts, and bootstrap by sharing update status, reusing admitted state and snapshots, warming recent database pages, and pausing reconnect bootstrap during restarts. (#164984, #165498, #165667, #165545, #165524, #165782, #165480, #167407, #164670, #165803, #166018, #166122)
  • Gateway performance: share opted-in reads and broadcast encoding across clients, reuse catalogs, session rows, avatars, and artifact summaries, bound link previews and queued previews, and keep PR comparisons local. (#165203, #167961, #162326, #165941, #165464, #166591, #166429, #165759, #166195, #166474, #166461, #166264, #165030, #166447)
  • Worker performance: reduce worker scheduling, transport, and reader memory overhead, centralize bounded pool sizing, expose queue wait and cost attribution, and cut Gateway fork costs for Git and TLS. (#165077, #165230, #165249, #167295, #167060, #167676, #165591, #165816, #165290, #164465, #166683, #167235)
  • Performance: move cron ticks, session scans, maintenance, and run transcripts off the main thread, share skill indexes, offload memory retrieval and index admission, persist sandbox state through workers, and serve channel status from recorded health. (#165332, #165511, #165629, #167248, #163885, #166507, #165106, #165173, #167644, #167254, #165075, #165568, #165611, #165558, #165534, #165295, #165436, #166538, #164694, #164648) Thanks @vincentkoc, @obviyus, @kzclaw, and @Patrick-Erichsen.
  • Performance: speed up chat with indexed reads, bounded history pages, reused metadata, catalogs, and versioned assets, smaller tool previews, fewer idle reads, and lighter Control UI startup downloads. (#164605, #165897, #166250, #167993, #168023, #167896, #167906, #167968, #167020, #167447, #167263, #167238, #165101, #164735, #165228, #163573, #166493, #165546, #161543) Thanks @shakkernerd, @boeingchoco, and @obviyus.
  • Update performance: skip unnecessary fetches for cached commits, unused state leases, duplicate snapshots, and slow prevalidation of large plugin trees, bound SQLite snapshot amplification on live installs, and reduce inventory latency for large runtimes. (#165060, #165326, #166126, #166317, #167451, #166741, #165316, #165013) Thanks @vincentkoc, @hannesrudolph, and @ooiuuii.
  • Worktree and Git performance: run worktree GC and cleanup in the background with capacity limits, back off timed-out and corrupt-repo cleanup, consolidate shared packs, speed up partial-clone creation, keep session diffs responsive in large repositories, and prevent agent-triggered Git maintenance. (#164758, #165913, #167323, #167453, #167944, #165858, #167443, #167936, #167030, #167695, #167631, #166072, #165513, #165605, #165750, #165981, #165411, #167899, #166214, #166381)
  • Workboard and GitHub performance: skip unchanged card and Sessions board reloads, reuse authorized snapshots, speed up revision reads, and overlap preview and publication option reads. (#165058, #165141, #165698, #165896, #165094, #167189, #167597, #166987, #167322)
  • Plugin and auth performance: bound retained plugin heap across reloads, reuse native admission and instance identity, batch plugin capture copies, move OAuth refresh and auth saves to workers, and run pairing mutations in the SQLite worker. (#166751, #166687, #165923, #167516, #166955, #166278, #165029, #159448, #165658, #165644, #166936, #167024, #166183, #164992, #166283, #167239, #167308) Thanks @jjjhenriksen, @RomneyDa, and @Patrick-Erichsen.
  • CLI and diagnostics performance: speed up gateway call cold starts, reuse prepared runtime inputs, speed up secret redaction for large text, calibrate memory pressure to runtime limits, and reduce Prometheus scrape allocation. (#166722, #166657, #166864, #162313, #166701, #167943, #165042, #167618, #167930, #166933, #165327) Thanks @sunlit-deng, @obviyus, and @etzelm.

Complete contribution record

This audited record covers the complete 8ea8bb1..45248f2 history: 1,971 in-range PRs + 0 retained seed-only PRs = 1,971 unique PRs. The generation manifest also supplies direct commits as editorial input; the grouped notes above prioritize user impact.

Shipped baseline exclusions: v2026.10.1-beta.2 (53 PRs: #42, #88247, #109291, #110888, #113594, #113615, #113660, #113681, #113757, #115080, #115592, #125106, #126114, #127394, #129052, #129346, #129634, #133130, #134463, #134724, #136241, #137131, #137949, #138046, #139757, #139848, #139911, #140086, #142176, #144252, #146667, #149983, #150071, #151032, #151470, #152979, #153707, #154875, #155388, #157615, #157869, #159892, #160225, #160651, #161876, #164103, #164165, #164268, #164401, #164434, #164521, #164546, #164586).

Pull requests

Release verification

release-publish/2040d1b71db9-1791766004: perf(sessions): reuse config-owned roster and projection facts (#169263)
View on GitHub
  • perf(sessions): reuse config-owned roster and projection facts

Retain roster facts for the published config revision and model facts across
row-only publications. Let selection and facts publications retire list caches
while preserving materialization-scoped weak presentations.

Keep independent mutable inputs batch-scoped and invalidate same-object config
republication. Exercise configuration refresh through the actual publisher.

  • fix(sessions): keep roster publication reads import-light

Publish config identity and revision before observers through an import-free
leaf so roster reads do not introduce a full-graph import cycle. Include the
leaf in the extracted maintainer runtime and retire its eligibility on reset.

Prove model metadata reuse through updated session-list output and catalog
lookup counts instead of asserting empty cache-map identity.

  • test(gateway): type mutable catalog regression entries

  • test(gateway): keep catalog regression on API capacity

release-publish/99d262df8760-1791761551: fix: honor Windows permissions for SQLite recovery snapshots (#169397)
View on GitHub
  • fix(update): recover SQLite rollback journals on Windows

  • docs: keep immutable recovery platform scope unchanged

release-publish/d29e2d5be0f6-1791720622
View on GitHub

fix(release): size the plugin publication manifest cap for its file-e…

release-publish/a17bd679979e-1791717771: refactor(plugin-sdk): move SQLite runtime writes into workers (#168857)
View on GitHub
  • refactor(plugin-sdk): share legacy persistence warning budgets

  • refactor(plugin-sdk): await native exec and placement preparation

Move bundled node policy preparation, approval methods that expire rows, placement retirement, and restart clearing through their existing workers. Preserve released native signatures and callback ordering with shared deprecation warnings, and retain effect-time authority checks. Storage format and update behavior are unchanged.

  • test: repair approval authority fixture and inventory native compatibility

  • test: reflect retained native placement calls in worker inventory

  • fix(plugins): keep deprecation identity on the invocation frame

  • style(gateway): avoid shadowing the placement helper

  • refactor(gateway): simplify bootstrap claim cleanup

  • perf(node): avoid unused writer admission for exec policy reads

  • refactor: separate exec preparation from placement migration

  • refactor(plugin-sdk): add worker-owned SQLite runtime replacements

  • fix: register approval compatibility in PR tooling

  • fix: carry stable updater compatibility inventory

Reuse the inventory fix from #168740 for the published-driver update gate.

Co-authored-by: Dallin Romney dallinromney@gmail.com

  • fix: register SQLite compatibility in PR tooling

  • fix: preserve SQLite preparation and compatibility exports

  • fix(pr): include shared SDK deprecation helper in wrapper

  • test(state): extract worker receipt wait fixture

  • test(state): isolate worker fixture wait helper from runtime loader

  • chore: refresh merged placement worker inventory


Co-authored-by: Dallin Romney dallinromney@gmail.com

openclaw 2026.10.1
View on GitHub

OpenClaw v2026.10.1

3,055 commits · 2,425 pull requests · 402 contributors

Changes included in this release

The release notes and changelog contain the same content, presented in two formats:

  • Release notes — formatted for people, with expandable sections.
  • Changelog — plain Markdown for AI agents and tools.

Thanks

@100yenadmin @51Google @609NFT @A1fred-AI @abacha @adamamzalag @adamczhang @addyCooks @adele-with-a-b @adembektas @aikohoshinoai-prog @akennedytog @akrosliving @Alex-vonAllmen @alexeysophia @alexph-dev @alfred429 @ali-log @Alix-007 @alkor2000 @altaywtf @AmelioMansour @amittell @andersonjeccel @aniketkrs @aniruddhaadak80 @anyech @aounakram @armstrongsam25 @aron-intframe @Arslan-Mehmood1 @ashleywolf @asikorskiy @aspalagin @astra-openclaw @avirtudazo-officeconnect @awss1i @axeg0 @axiom-ncis @ayaangazali @ayoakouh @Ayushdevo @azuretek @b4rRa @Bartok9 @Baumus @big-hill @BillBOT33 @bipolar84 @boeingchoco @brainatworkharris @brandon-julio-t @bulingbuling688 @carlosjarenom @catnipluss @cbhawthorne84 @ceckert @cestercian @CHAESH @chaitongxue @changeroa @ChenGuoShun1979 @chffhc @chiyunshen @chopin-op60 @ChuLaiTheGreat @cjn119-ui @cknzraposo @cmillwat @cmrstudio56 @Colton-Harris @Conan-Scott @coygeek @cunzai007-hub @danieljimz @dankarization @dapangkai11 @DarkJuanFra @DasX @datus1982 @DaveFan-NCHC @davidcittadini @deepujain @Deregtx @dh-js @DonnieFi @dori-jitter @dprev @drakeo338 @Dylanzhang1128 @eddiekk @ekinnee @eleqtrizit @eltonwf-del @elvisquirino @EmisvaldoSilva @EndeavorPioneer @ericcaiwx-star @ericcurtin @etzelm @eugifa @exGeni @farisoftfry @fede-kamel @FelixIsaac @fenglanhua @Finn763 @FlagshipClaw @Flakedict @frankhli843 @Frosmans @FtlC-ian @fuller-stack-dev @g0st1n @g62nkcx4q7-wq @Gabrielnkl @galiniliev @ghowkay @Giannoulakos @giodl73 @giodl73-repo @glaiveai @glebsergeevich @GodBlf @GoDiao @godinpt-floada @gokay-ai @GoldArowana @gollymashed @goncalonc @goutamadwant @griswomw2 @grtninja @hailongguo0530-alt @hannesrudolph @hannnnn-l @hansraj316 @harshitgupta31415 @hartmark @hartra344 @Harvey-XuH @hawkit @he-yufeng @hewal-dev @hogawa000 @holgergruenhagen @hotfemale @hpyhandsome @hrp6vv9mwr-glitch @hshs38033-cmd @hubofvalley @HunterStile @hxy91819 @iancollyer87 @ignamiranda @iJaack @imabotone-ui @ioannis-giannoulakos @Irish-Joseph @islandpreneur007 @IstiqlalBhat @itayzit @ivan-magda @IWhatsskill @izrl613 @jacobtomlinson @JakeBotFleet @JakeMalis @jalehman @jamiezigelbaum @jarimustonen @Jarvis-Baba @jasdeepohri-max @jason-allen-oneal @jayzhou2309 @jbfranklin @JD8855122 @Jeehut @jesse-merhi @jgs-jeeves @jj5638521 @jjjhenriksen @jlapenna @jm9151821 @jocojolo @joelwp @jonathanlindsay @joryirving @joshavant @JuampiHernandez @juyterman1000 @kazuyuki-eguchi @kenmege @kevin2966n @Kimiyu-186 @KirDE @kirylh @klabir @KoalaShen @krissding @krumch @laurentschwartz @leoreq @LifeViwer @LinzeShi @LiuwqGit @LLagoon3 @louria @love-ai-open-source @lshamash @Ludwigtheo0815 @ly85206559 @MaikiMolto @marcoschierhorn @marctomas-png @MarkMa84 @markoub @martinderm @Marvinthebored @masatohoshino @MasterSwords1 @matthematics1137 @matthewmoroz @maxpuppet @mbelinky @MertBasar0 @mgr-nick @mick-lu-lingyue @miguelarios @miguelbranco80 @miguelpt2026 @MikyWang @mmaps @MoerAI @monde @Monkeykingll @mpquemel @mrzeepek @nachoratico-source @namest504 @nancymx-dev @nano-richtera @nashtu3000 @ndakota79 @Nehanth @neilofneils404 @nessim-liamani @ngominhduc263 @NianJiuZst @NickM83 @nikosml @nimarosa @nkarkare @nocodet888-arch @NovaUnboundAi @nwang783 @nweishar @obnoxious2011-cmd @obviyus @oc-jarvis @odrodash @Oldrich333 @Olli0103 @oNo500 @ooiuuii @oscarsixsecllc @oxen-horse @oywino @Patrick-Erichsen @paulcam206 @PaulClawitzki @paulotvlincelia @paweldrozd @Peetiegonzalez @PennyVibe @percilabs @personaltrainerkoichan @pibur @ploy-elison @PollyBot13 @postoso @potterdigital @priyabrataedu-droid @produtoramaxvision @qingminglong @R3NK0R @Ram-G @ranukadf82-hub @Raven-Gt @rebarshop-24 @RileyJJY @ringbe-cyber @robburke @RomneyDa @roslinmahmud @rosmiroslav-create @Rotocruz @rtfcv @ruel225 @RuiCatalao7 @RvsL @RXQ6 @ryan-dyer-sp @sahilsatralkar @saizero-dr @sallyom @samadarsh @sasan1200 @ScientificProgrammer @scotthuang @sercada @serg0x @sergiorodriguez-sudo @shadow-enthusiast @shailaja-bot @shakkernerd @shanselman @Shenrui-Ma @sjf @sjf-oa @slinkoff @SMF12138 @smoe @song-jia @sonofakel @SparcleAI @Spheresta @spunzon @stackingrockss @stbtyx747 @steipete @StevenKrebs @stevenlee-oai @Stronggenetics @stuart-minion-ai @stunt4711 @sunhsiao @suninweb @sunlit-deng @SunnyShu0925 @SuperMarioYL @swampgorilla @sxh313 @szef-svg @taihartman @Takhoffman @taoxia255-del @TeaCup404 @tedassur @Thinkscape @tianhaotian @todddickerson @tommyfive @Tosko4 @travellingsoldier85 @TrevorDGreen33 @triciah73 @ttcmourao @Twilight-Networks @utesara @VACInc @vanecook @veritasaiflows-cell @vicary @victor-gurbani @vincentkoc @vinsew @vyctorbrzezowski @wakqasahmed @wangmiao0668000666 @wangyan2026 @wave-workflow @waynegault @webdood @wenwenxiong @WG-Mojo @WhitenessTiger @winddd666 @wlassalle724 @wuwo2119 @wynxo @xialonglee @xiao398008 @xilopaint @xXG0DLessXx @xydigitLybnnnn @yaohd100 @yashas-13 @yetval @Yigtwxx @yihan331313 @yoyo837 @ysumatta @yu-xin-c @Yun-0000 @yunligou711-commits @zachisfine @zhangguiping-xydt @zhangming678 @zhyx1996 @zouxiao777 @zyz619963502zyz

Release verification

release-publish/9cf7fc279c26-1791664994: fix(ui): restore startup toast recovery test after reload (#168634)
View on GitHub

What Problem This Solves

Fixes the saved cloud-startup toast recovery E2E failure after a private-draft discard reload, which blocks otherwise unrelated UI pull requests.

User Impact

No user-visible change. The test continues to check that recovery preserves the separate private draft, replays the saved first turn exactly once, and retains the later draft and queued message.

Why This Change Was Made

Introduced by 4606ea5 (#168506), which intentionally made the automation readiness observer lazy. After the dialog-triggered reload, observing sessions.send proves the Gateway replay started, not that the renderer readiness hook has loaded. The next synchronous navigation helper read starts that lazy import but receives undefined and throws Control UI readiness hook is unavailable.

Await the existing initial-roster/readiness helper before navigating in the toast branch. This preserves lazy production loading and all existing assertions and timeouts; it adds no alternate recovery or navigation path.

No overlap with Pash/Sarah changes.

Evidence

  • The unchanged test fails on main with two passing cases and the toast case reporting Control UI readiness hook is unavailable. The same failure is visible in the inherited UI shard, and another PR's UI shard. Existing main reproduction evidence was reused rather than rerun.

  • Candidate production-bundle Chromium run: 3/3 passed, including toast recovery (31.949 s). Command: node scripts/run-vitest.mjs run --config test/vitest/vitest.ui-e2e.config.ts ui/src/e2e/new-session-page.cloud-startup.runtime-load.e2e.test.ts --maxWorkers=1. Full duration: 155.67 s.

  • Targeted oxfmt --check passed. The first local attempt could not build because the copied installation lacked @solidjs/vite-plugin; a frozen dependency install restored the worktree and the full scenario then passed.
    Merge danger: two-way door; reverting restores only the test synchronization defect. Blast radius is this production-bundle recovery E2E scenario; no product code, persisted state, or public contract changes.

Co-authored-by: Ayaan Zaidi hi@obviy.us

openclaw 2026.9.9
View on GitHub

OpenClaw v2026.9.9

185 commits · 112 pull requests · 92 contributors

Changes included in this release

The release notes and changelog contain the same content, presented in two formats:

  • Release notes — formatted for people, with expandable sections.
  • Changelog — plain Markdown for AI agents and tools.

Thanks

@A1fred-AI @adele-with-a-b @alexph-dev @Alix-007 @alkor2000 @altaywtf @aniruddhaadak80 @aounakram @armstrongsam25 @AXEG0 @azuretek @big-hill @carlosjarenom @cestercian @changeroa @ChuLaiTheGreat @cmrstudio56 @danieljimz @dapangkai11 @DasX @davidcittadini @dh-js @drakeo338 @ekinnee @eleqtrizit @ericcaiwx-star @ericcurtin @fenglanhua @FlagshipClaw @Flakedict @fuller-stack-dev @gokay-ai @goncalonc @hannesrudolph @hansraj316 @holgergruenhagen @hshs38033-cmd @ignamiranda @IstiqlalBhat @jamiezigelbaum @jarvisnextgeneration20-lang @jayzhou2309 @jgs-jeeves @joshavant @Kimiyu-186 @KirDE @louria @Ludwigtheo0815 @Marvinthebored @MasterSwords1 @maxpuppet @MertBasar0 @mmaps @mpquemel @ngominhduc263 @NovaUnboundAi @nweishar @obnoxious2011-cmd @obviyus @Oldrich333 @Olli0103 @oxen-horse @Patrick-Erichsen @paulcam206 @Peetiegonzalez @rebarshop-24 @RileyJJY @ringbe-cyber @RomneyDa @Rotocruz @RvsL @sahilsatralkar @ScientificProgrammer @shakkernerd @stackingrockss @steipete @stuart-minion-ai @sunlit-deng @SunnyShu0925 @takyyon @VACInc @victor-gurbani @vincentkoc @waynegault @WG-Mojo @WhitenessTiger @wuwo2119 @xXG0DLessXx @yetval @zachisfine @zhyx1996 @zyz619963502zyz

Release verification