OpenClaw shipped v2026.5.10-beta.3 early this morning (3:28 AM UTC, May 11th), and it's a substantial pre-release. Building on beta.1 and beta.2, this drop brings sweeping Slack improvements, a significant Codex architecture change, a major Plugin SDK deprecation sweep, and smarter on-demand local model infrastructure.
Slack Gets Serious Attention
Five distinct Slack improvements land in beta.3, addressing long-standing issues:
- Unfurl control: New
unfurlLinksandunfurlMediaconfig options — with per-account overrides — let bots suppress Slack link and media previews without workspace-wide changes. Fixes #48435. Thanks @esegev1 and @HemantSudarshan. - replyBroadcast: Agents can now opt into Slack's
reply_broadcastbehavior for both text and Block Kit thread replies, surfacing important responses in the parent channel. Thanks @tony88331. - Mention metadata preserved: Inbound prompt context now carries mention target/source metadata, letting agents distinguish direct bot mentions from thread wakes that mention someone else. Fixes #79025. Thanks @tmimmanuel.
- DM session canonicalization: Delivery-mirror routes for native DM channel IDs now map correctly to the peer user session, so
D...-style targets no longer accidentally split a Slack DM into a separate channel session. Fixes #80091. Thanks @bek91. - Draft preview identity: Configured agent username and avatar now persist through partial streaming replies, so draft previews no longer flash the wrong bot identity mid-response. Fixes #38235. Thanks @lacymorrow.
Codex Native Code-Mode for Harness Threads
The configurable Codex dynamic-tools profile has been removed. Going forward, Codex app-server always owns the workspace, edit, patch, exec, process, and plan tools in harness threads — while OpenClaw integration tools remain available alongside them.
The practical effect: deferred OpenClaw dynamic tools now run through Codex's own searchable code execution surface instead of a wrapper. The change also resolves a diagnostics gap — Codex-native tool execution is now reported to the watchdog, so long-running bash, web, file, and MCP tool calls no longer look like stale embedded runs. See #80217.
Plugin SDK: Major Deprecation Sweep
The Plugin SDK receives a significant cleanup pass with beta.3:
- Public subpaths that existed for at least a month with no bundled extension production imports are now deprecated, while legacy barrel/test/zod exports remain for backwards compatibility
- Provider-specific model, stream, and xAI helpers removed from public exports, with callers moved to provider-owned modules
- The
provider-auth-loginowner-specific subpath removed after Chutes, GitHub Copilot, and OpenAI Codex auth flows returned to provider-owned modules
New additions include:
- Runtime model metadata for plugins: Native plugin tool factories now receive runtime-supplied active model metadata, enabling diagnostics and plugin-owned policy decisions. Fixes #77857. Thanks @jamiezigelbaum.
- Session actions and scheduling: Bundled-plugin session actions,
sendSessionAttachment, and Cron-backedscheduleSessionTurnadded under the grouped session namespace. Thanks @100yenadmin. - Structured extraction:
extractStructuredWithModel()plus an optional provider-sideextractStructured()seam for bounded image-first structured extraction with supplemental text context.
On-Demand Local Model Startup
A new provider-level localService startup capability allows on-demand local model servers to spin up before OpenAI-compatible requests are made, including one-shot model probes. This targets setups where local inference servers should start lazily on first use rather than running continuously in the background.
Tighter Build Tooling
The build stack gets several improvements:
- pnpm 11 is now the workspace package manager, with Docker, install, update, and release CI workflows updated accordingly. Thanks @altaywtf.
- Stricter TypeScript checks enabled: implicit returns, side-effect imports, override keyword, and unused production code detection
- Stricter Vitest lint rules for focused/disabled tests, conditional hooks, matcher hazards, and expectation integrity
Notable Bug Fixes
- Auth/Claude CLI: Stale
anthropic:claude-cliOAuth profiles no longer repeatedly bootstrap on startup and flood debug logs. Fixes #80129. Thanks @Caulderein. - Task routing: Group and channel task completions now route through the requester session so the parent agent delivers the visible summary. Fixes #77251. Thanks @funmerlin.
- Image tool overrides: Explicit
--modelflags for the image tool now work even whenagents.defaults.imageModelis unset. Fixes #79341. Thanks @haumanto. - Feishu: Falls back to top-level group send when quoted replies target a withdrawn or missing message. Fixes #79349. Thanks @arlen8411.
- Gateway/agents: Stale
sessions_sendACP manager andweb_fetchruntime chunks stay importable after package updates, preventing live gateways from breaking before restart. Fixes #78804. Thanks @Gomesy72.
The full release notes are on GitHub.
