OpenClaw v2026.6.5: Safer channel output, MCP results no longer poison sessions, Anthropic extended thinking recovers after restarts
OpenClaw v2026.6.5 was published on June 9, 2026. This article is a plain-English guide to the published GitHub release notes, not a separate changelog.
This audited record covers the complete v2026.6.2-beta.1..v2026.6.5 history: 142 merged PRs. The generation manifest also supplies direct commits as editorial input; the grouped notes above prioritize user impact.
Highlights from the GitHub notes
- Safer channel output: QQBot strips model reasoning and thinking scaffolding before native delivery, so users see the final answer rather than raw internal markup.
- MCP results no longer poison sessions: resource_link, audio, malformed images, and future non-text blocks are normalized before provider conversion, avoiding Anthropic 400s and broken follow-up history.
- Anthropic extended thinking recovers after restarts: prompt-cache expiry and early-signature failures wait for a real message start, so they reach the existing retry path rather than ending a turn.
- Parallel web search is bundled: API-key discovery, guarded endpoint handling, cache-safe session IDs, onboarding, and documentation make it a first-class search provider.
- Better Matrix and Vertex reliability: Matrix voice notes and threaded conversations retain their context, while Google Vertex ADC models regain static catalog and runtime resolution.
- Safer upgrades and restarts: cron JSON stores migrate before runtime, service env placeholders stop masking secrets, and macOS avoids unnecessary direct-Gateway reconnect churn.
Notable changes
- Search/providers: add the Parallel bundled web-search plugin, registration contracts, onboarding integration, and guarded api.parallel.ai/v1/search support.
- Matrix/channels: add voice-message preflight and thread-aware read/reply behavior.
- Skills/ClawHub: install ClawHub skills backed by GitHub repositories through the resolved install API, download the pinned GitHub commit, keep install-policy checks, and report install telemetry after success.
- Google Chat/channels: add native approval card actions and click handling so Google Chat approvals use platform-native cards instead of generic message flow.
- Mobile: Android provider/model screens now surface expiring, unavailable, unresolved, and attention states more clearly, while iOS settings and Talk tabs keep diagnostics, gateway rows, attachment labels, and unavailable Talk controls reachable.
- Memory: QMD search can use the new rerank toggle, and memory adapter status uses the resolved default model identity when checking plain status.
- QQBot: add /bot-group-allways on|off slash command (with named-account and default-account support) to toggle whether group messages require an @mention before the bot replies, and clear the runtime config snapshot after the write so the new account-level defaultRequireMention takes effect immediately without restart.
Fixes worth noticing
- Agents: sessions_send now honors an explicit sessionKey when stale label metadata is also present, and denied session-id sends no longer echo the resolved canonical session key. Fixes #64699; refs #74009 and #41199
- Channel content boundaries: QQBot now strips reasoning/thinking tags before sending, preserving final answers while hiding internal model narration from users.
- Agents/MCP/providers: coerce non-text/image MCP tool-result blocks before they reach provider converters, preserving valid images and turning richer MCP content into text instead of malformed image blocks.
- Anthropic/Codex/ACP/agent recovery: defer Anthropic stream start events until message_start, strip stale compaction thinking signatures before Anthropic replay, detect unsigned thinking-only stalls, refresh prompt fences after compaction writes, reject empty completion handoffs, preserve parent streaming-off overrides/shared progress commentary, forward heartbeat metadata to context-engine hooks, and cover Codex session/thread migration edge cases.
- Provider/model resolution: preserve Google Vertex ADC auth markers in generated catalogs, re-probe a single-provider primary after cooldown, share Codex model visibility, fail closed for unknown model auth, preserve Codex alias availability, keep unresolved profile refs unknown, and avoid resolving auth while listing models.
- Gateway/macOS/mobile: avoid duplicate Gateway probe warnings by identity, rate-limit node pairing requests while preserving paired-node reconnects, keep macOS node mode on a healthy direct Gateway session, keep iOS diagnostics and gateway rows reachable, and avoid Linux ARM Gradle resource tasks during Android builds.
- TUI/chat/Workboard/auto-reply: optimistic user messages stay stable across stale history reloads, runId reassignment, and abort windows instead of disappearing, jumping, or lingering as ghost rows; Workboard stale lifecycle bulk updates no longer overwrite newer status/provenance; message-tool sends now count as delivery.
- Cron/update/service env: doctor config preflight now migrates legacy cron JSON stores into SQLite before runtime reads, service env planning skips unresolved placeholders that would mask state-dir .env values, and session transcript rewrites keep registry markers/discriminants consistent.
Should you update?
If one of the highlighted areas matches how you use OpenClaw, this release is worth reviewing. For production systems, read the full upstream notes first, especially when the tag is marked as stable.
Full changelog: View v2026.6.5 on GitHub
Generated release page: Read the structured release notes
- Fred