mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-01 02:13:38 +00:00
443 lines
60 KiB
XML
443 lines
60 KiB
XML
<?xml version="1.0" standalone="yes"?>
|
|
<rss xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle" version="2.0">
|
|
<channel>
|
|
<title>OpenClaw</title>
|
|
<item>
|
|
<title>2026.6.11</title>
|
|
<pubDate>Tue, 30 Jun 2026 17:39:25 +0000</pubDate>
|
|
<link>https://raw.githubusercontent.com/openclaw/openclaw/main/appcast.xml</link>
|
|
<sparkle:version>2606001190</sparkle:version>
|
|
<sparkle:shortVersionString>2026.6.11</sparkle:shortVersionString>
|
|
<sparkle:minimumSystemVersion>15.0</sparkle:minimumSystemVersion>
|
|
<description><![CDATA[<h2>OpenClaw 2026.6.11</h2>
|
|
<h3>Highlights</h3>
|
|
<ul>
|
|
<li><strong>More capable channel control:</strong> Slack relay mode, native Mattermost <code>/oc_queue</code>, and per-DM model overrides make channel operations easier to automate and tune. (#94707, #95546, #95120) Thanks @sjf-oa, @amknight, @xydigit-zt, @thomaszta, and @gandalf-at-lerian.</li>
|
|
<li><strong>Richer operator workflows:</strong> <code>openclaw agent --message-file</code> and the RAFT CLI wake bridge add practical file-driven and remote wake-up paths. (#93351, #95497) Thanks @ooiuuii and @vincentkoc.</li>
|
|
<li><strong>Safer plugin distribution:</strong> additional official plugins are externalized cleanly, with bundled plugin icon metadata available to installed clients. (#95683, #95845) Thanks @vincentkoc and @Patrick-Erichsen.</li>
|
|
<li><strong>Stronger mobile operations:</strong> Android settings detail panels improve configuration visibility and control on mobile. (#95148) Thanks @Tosko4.</li>
|
|
<li><strong>More reliable agent turns:</strong> Codex partial deltas, harness activation, and long-context prompt-cache stability reduce lost progress and inconsistent runs. (#95404, #95652, #95624) Thanks @agonza1 and @vincentkoc.</li>
|
|
</ul>
|
|
<h3>Changes</h3>
|
|
<ul>
|
|
<li><strong>Gateway and plugin tooling:</strong> channel identity hook context and per-agent usage-cost reporting give integrations and operators more precise routing and accounting. (#91903, #94483) Thanks @lanzhi-lee, @vincentkoc, and @ly-wang19.</li>
|
|
<li><strong>Provider and model coverage:</strong> catalog parsing, reasoning controls, provider model resolution, and encrypted reasoning support now handle more live provider variants. (#95283, #95710, #95268, #95744, #95686, #93956) Thanks @ZengWen-DT, @vincentkoc, @Marvinthebored, @Darren2030, @daniel-alejandro-t, @parveshsaini, @geraint0923, @fuller-stack-dev, and @jason-allen-oneal.</li>
|
|
</ul>
|
|
<h3>Fixes</h3>
|
|
<ul>
|
|
<li><strong>Channel delivery:</strong> Telegram progress rendering, webhook lifecycle, reaction directives, duplicate mirror writes, queued update draining, and WhatsApp durable reply targets are now more reliable. (#95532, #93002, #95183, #94506, #94977, #95069, #95577, #95007, #95914) Thanks @amknight, @snowzlmbot, @zhangguiping-xydt, @shadow-enthusiast, @xialonglee, @travellingsoldier85, @obviyus, @hugenshen, @Cuttingwater, @heichaowo, @LiuwqGit, @freidrich-goldenflow, @mcaxtr, and @vincentkoc.</li>
|
|
<li><strong>WhatsApp and message identity:</strong> native quotes, Baileys group reliability, and approval reactions across JID drift now preserve the intended conversation context. (#95483, #94338, #95935) Thanks @mcaxtr, @xialonglee, and @octopuslabs-fl.</li>
|
|
<li><strong>Gateway and session safety:</strong> stuck release claims, draining-state reporting, remote probe timeouts, malformed paired access lists, and non-delivery session identity are handled without silent routing loss. (#95299, #94915, #89859, #92178, #95467) Thanks @mikasa0818, @kriegerbangerz-ship-it, @markoub, @vincentkoc, @maxschachere, @mushuiyu886, @gozzbb2, @wangmiao0668000666, @ly-wang19, @EmilioNicolas, @yetval, and @hellocli.</li>
|
|
<li><strong>Agent and fallback behavior:</strong> aborted runs stop cleanly, provider response bodies stay bounded, Claude CLI credit failures continue through fallback, and Codex usage-limit responses classify correctly. (#94412, #95218, #95508, #95420, #95418, #95417, #95400) Thanks @szsip239, @vincentkoc, @Alix-007, @mikasa0818, @sallyom, @riazrahaman, and @jason-allen-oneal.</li>
|
|
<li><strong>Provider and model edge cases:</strong> OpenRouter IDs, Ollama discovery and embeddings, Gemini freshness, and model-catalog prefixes now resolve against the right runtime metadata. (#95268, #94811, #93956, #95682, #95744) Thanks @Darren2030, @daniel-alejandro-t, @mushuiyu886, @jason-allen-oneal, @Sunjae-k, @parveshsaini, @vincentkoc, and @shakkernerd.</li>
|
|
<li><strong>Configuration and UI guardrails:</strong> non-interactive configure fails closed, TLS paths reject empty values, memory artifacts are sanitized, and the UI uses the patched DOMPurify release. (#94238, #94054, #95791, #95691) Thanks @ruomuxydt, @NianJiuZst, @miorbnli, @vincentkoc, @SweetSophia, and @YB0y.</li>
|
|
<li><strong>Cron and delivery validation:</strong> no-config delivery checks, thread-aware dedupe, and pending recurring runs retain their intended destinations. (#95754, #95794, #94323) Thanks @vincentkoc and @yetval.</li>
|
|
</ul>
|
|
<h3>Complete contribution record</h3>
|
|
This audited record covers the complete v2026.6.10..0a4d0daa8cc99e9b2c6bc78c2e67357272a9fd53 history: 308 merged PRs. The generation manifest also supplies direct commits as editorial input; the grouped notes above prioritize user impact.
|
|
<h4>Pull requests</h4>
|
|
<ul>
|
|
<li><strong>PR #95406</strong> test(qa): make release scorecard categories explicit. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #94700</strong> test: fold HTTP API script proof into QA Lab. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95499</strong> fix(test): unit-fast flow mocks. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95308</strong> fix(ci): filter ClawSweeper comment dispatches before token minting. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95532</strong> fix(telegram): materialize rich message line breaks as <br>. Related #95409. Thanks @amknight and @snowzlmbot.</li>
|
|
<li><strong>PR #91786</strong> fix(plugins): reconcile managed npm root overrides with managed peer pins. Related #91772. Thanks @amknight and @mkdelta221.</li>
|
|
<li><strong>PR #93002</strong> Fix Telegram progress draft cleanup before tool output. Related #90753. Thanks @zhangguiping-xydt and @shadow-enthusiast.</li>
|
|
<li><strong>PR #95175</strong> fix: route mobile exec approvals to reviewer device. Thanks @joshavant.</li>
|
|
<li><strong>PR #94506</strong> fix(telegram): stop clearing registered webhook on channel restart. Related #90254. Thanks @xialonglee and @travellingsoldier85.</li>
|
|
<li><strong>PR #95183</strong> fix(telegram): materialize streaming progress placeholders. Related #95004. Thanks @snowzlmbot and @obviyus.</li>
|
|
<li><strong>PR #95483</strong> fix(whatsapp): preserve native quote replies. Thanks @mcaxtr.</li>
|
|
<li><strong>PR #94338</strong> fix(whatsapp): wire missing Baileys retry/cache hooks for group message reliability. Related #7433. Thanks @xialonglee and @mcaxtr and @octopuslabs-fl.</li>
|
|
<li><strong>PR #94707</strong> feat(slack): add relay mode for incoming messages. Thanks @sjf-oa.</li>
|
|
<li><strong>PR #94977</strong> fix(telegram): honor outbound reaction directives. Related #71140. Thanks @hugenshen and @Cuttingwater.</li>
|
|
<li><strong>PR #95069</strong> fix(telegram): skip mirror write when primary reply already exists (#94930). Thanks @heichaowo.</li>
|
|
<li><strong>PR #95550</strong> Preserve inherited channel account policies during migration. Thanks @amknight.</li>
|
|
<li><strong>PR #95390</strong> fix #95378: https://github.com/openclaw/openclaw/issues/95378. Thanks @mikasa0818 and @obviyus and @MaiDuy708.</li>
|
|
<li><strong>PR #93143</strong> fix(imessage): keep split-send coalescing opt-in. Thanks @omarshahine.</li>
|
|
<li><strong>PR #95008</strong> fix(claude-cli): also disable native background Bash and Monitor in --print runs. Thanks @anagnorisis2peripeteia.</li>
|
|
<li><strong>PR #94545</strong> fix: keep trusted policies with hook registry. Thanks @jesse-merhi.</li>
|
|
<li><strong>PR #95007</strong> fix(telegram): render progress draft rows as plain readable text. Related #95002. Thanks @snowzlmbot.</li>
|
|
<li><strong>PR #95624</strong> fix(agents): keep long-context tool-result prompts cache-stable. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95625</strong> fix(ci): smooth PR runner-registration bursts. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95572</strong> fix(agents): reject bind specs with extra colon segments. Thanks @ly-wang19.</li>
|
|
<li><strong>PR #95653</strong> test(agents): add large prompt cache coverage. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95640</strong> Consolidate iOS notification permission UX. Thanks @joshavant.</li>
|
|
<li><strong>PR #95546</strong> feat(mattermost): register /oc_queue as a native slash command. Thanks @amknight.</li>
|
|
<li><strong>PR #95019</strong> fix(skills): point gog brew install at homebrew-core gogcli (#95017). Thanks @ZengWen-DT and @vincentkoc and @Sedrak-Hovhannisyan.</li>
|
|
<li><strong>PR #93378</strong> test(telegram): keep live polling leases protected. Related #93375. Thanks @mmyzwl and @Yachiyo1680.</li>
|
|
<li><strong>PR #95084</strong> fix(googlechat): sanitize internal tool-trace lines from outbound text (#90684). Thanks @jailbirt and @studentzhou-svg.</li>
|
|
<li><strong>PR #95278</strong> Avoid copying process.env in ingress queue state DB opens. Related #94571. Thanks @kaka-srp.</li>
|
|
<li><strong>PR #95577</strong> fix #86957: drain worker-spooled Telegram updates immediately. Thanks @LiuwqGit and @freidrich-goldenflow.</li>
|
|
<li><strong>PR #95128</strong> fix(compaction): count user-message image blocks in cut-point estimator. Thanks @yetval.</li>
|
|
<li><strong>PR #93887</strong> fix(ssh): reject hostnames with stray leading or trailing colons in parseSshTarget. Thanks @miorbnli.</li>
|
|
<li><strong>PR #95191</strong> docs(plugins): document subagent_ended hook fields. Related #95186. Thanks @MaHaoHao-ch and @ken-jo.</li>
|
|
<li><strong>PR #95102</strong> fix(config): add stdio to McpServerSchema transport union. Related #95082. Thanks @lzyyzznl and @ken-jo.</li>
|
|
<li><strong>PR #95465</strong> fix(sdk): type-narrow manifest.files in pack staging root helper. Thanks @wangmiao0668000666.</li>
|
|
<li><strong>PR #95664</strong> refactor(plugins): move owner skills into plugins. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95299</strong> fix #95248: OpenClaw release_lane is a no-op when claim is held by a live worker; stuck Telegram inbound events block agent response until gateway restart. Thanks @mikasa0818 and @kriegerbangerz-ship-it.</li>
|
|
<li><strong>PR #94687</strong> fix(gateway): accept port for health and probe. Related #79100. Thanks @BryanTegomoh and @ozthedivine.</li>
|
|
<li><strong>PR #95649</strong> fix(ci): bundle test shards and right-size runners. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95243</strong> fix(docs): show inline read_when hints in docs:list. Thanks @hugenshen and @vincentkoc.</li>
|
|
<li><strong>PR #95283</strong> fix(openai-completions): seal native reasoning before the answer under /reasoning on. Related #95280. Thanks @ZengWen-DT and @vincentkoc and @Marvinthebored.</li>
|
|
<li><strong>PR #95497</strong> feat(raft): add CLI wake bridge channel. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95459</strong> fix(cron): use main-session systemEvent for silent quick-create preset. Related #95073. Thanks @ZOOWH and @vincentkoc and @vporton.</li>
|
|
<li><strong>PR #95503</strong> fix #89466: [Bug]: Control UI chat input text not cleared after sending. Thanks @zhangguiping-xydt and @vincentkoc and @zhong18804784882.</li>
|
|
<li><strong>PR #95684</strong> fix(skills): harden ClawHub update policy. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95683</strong> feat(plugins): externalize additional official plugins. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95681</strong> fix(ci): debounce canonical main runner admission. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95652</strong> fix(agents): activate selected harness plugins. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95404</strong> fix(codex): stream non-final-answer assistant deltas as partials. Related #95422. Thanks @agonza1 and @vincentkoc.</li>
|
|
<li><strong>PR #58993</strong> fix(googlechat): support spaceType field for DM vs Space detection. Thanks @Starhappysh and @vincentkoc.</li>
|
|
<li><strong>PR #94148</strong> fix(doctor): prevent non-interactive --fix from auto-restarting gateway. Related #78217. Thanks @zhangguiping-xydt and @esqandil.</li>
|
|
<li><strong>PR #89859</strong> fix(gateway): honor remote status probe timeout. Related #65355. Thanks @mushuiyu886 and @hellocli.</li>
|
|
<li><strong>PR #95466</strong> fix(ci): increase timeouts in flaky process-group signal test. Thanks @jason-allen-oneal.</li>
|
|
<li><strong>PR #95720</strong> fix(matrix): prevent double bootstrapCrossSigning reset in forced reset. Related #78396. Thanks @vincentkoc and @jteddy.</li>
|
|
<li><strong>PR #95707</strong> fix(synology-chat): remove duplicate local deliver timeout. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95706</strong> fix(whatsapp): remove dead watchdog timeout clamp. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95719</strong> fix(cli): sync capability inspect metadata flags with registered options. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95721</strong> fix(active-memory): exclude dreaming-narrative session keys from eligibility gate. Related #78500. Thanks @vincentkoc and @vishutdhar.</li>
|
|
<li><strong>PR #95602</strong> test: save ~79 CI hours/mo in gateway session utils. Thanks @zats and @vincentkoc.</li>
|
|
<li><strong>PR #94412</strong> fix(agent-core): stop loop after aborted tool run. Thanks @szsip239 and @vincentkoc.</li>
|
|
<li><strong>PR #94915</strong> fix(gateway): report draining state in readiness. Related #78136. Thanks @markoub and @vincentkoc and @maxschachere.</li>
|
|
<li><strong>PR #95691</strong> fix(ui): bump dompurify to patched release. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95710</strong> fix(vercel-ai-gateway): resolve dynamic model selections. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #94072</strong> fix(agents): count message-tool source reply as user-facing reply for tool error warnings. Related #93875. Thanks @chenyangjun-xy and @vincentkoc and @hoyanhan.</li>
|
|
<li><strong>PR #94784</strong> fix(doctor): stop promising --fix for working isolated shell-prompt cron jobs (#94655). Thanks @ZengWen-DT and @altaywtf and @geekoagent.</li>
|
|
<li><strong>PR #93504</strong> fix(device-pairing): guard role normalization against non-string entries. Thanks @ly-wang19.</li>
|
|
<li><strong>PR #92178</strong> fix(gateway): normalize malformed paired access lists. Related #90654. Thanks @wangmiao0668000666 and @ly-wang19 and @EmilioNicolas.</li>
|
|
<li><strong>PR #83041</strong> Fix config patch restart-required notices. Related #46797. Thanks @xuruiray and @Stache73.</li>
|
|
<li><strong>PR #95754</strong> fix(cron): preserve no-config delivery validation. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #93351</strong> feat(cli): add --message-file to openclaw agent. Thanks @ooiuuii.</li>
|
|
<li><strong>PR #95485</strong> fix(ui): roll values near 1M over from k to M in compact token format. Thanks @NarahariRaghava and @vincentkoc.</li>
|
|
<li><strong>PR #94622</strong> fix(build): allow tsdown heap override. Thanks @tayoun.</li>
|
|
<li><strong>PR #76668</strong> meta(issue-template): add dedicated docs bug report form. Related #76664. Thanks @WadydX.</li>
|
|
<li><strong>PR #91193</strong> fix(cli): document Commander rawArgs internal API dependency in action-reparse.ts. Related #83893. Thanks @whiteyzy and @davinci282828.</li>
|
|
<li><strong>PR #77339</strong> fix(auto-reply): clear runtime model cache on reset. Related #77322. Thanks @mjamiv and @ZaynL.</li>
|
|
<li><strong>PR #89628</strong> Speed up precomputed command help startup. Thanks @yyzquwu.</li>
|
|
<li><strong>PR #95087</strong> refactor: add memory and QMD session identity mapping. Thanks @jalehman.</li>
|
|
<li><strong>PR #89323</strong> fix(web-ui): skip hidden subagent picker pages. Related #89249. Thanks @giodl73-repo and @originsecured-do.</li>
|
|
<li><strong>PR #84794</strong> Clean up isolated cron sessions after runs. Related #84707. Thanks @TurboTheTurtle and @bottenbenny.</li>
|
|
<li><strong>PR #95794</strong> fix(cron): compare thread IDs when deduping failure destinations. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95791</strong> fix(session-memory): sanitize model artifacts before saving memory. Thanks @vincentkoc and @SweetSophia and @YB0y.</li>
|
|
<li><strong>PR #95805</strong> fix(agents): normalize hallucinated Office file extensions. Related #93326. Thanks @vincentkoc and @lzyyzznl and @xzh-icenter and @bhnan.</li>
|
|
<li><strong>PR #89612</strong> fix: include persisted plugin contracts for migrations. Related #89609. Thanks @zerone0x and @mugabuga.</li>
|
|
<li><strong>PR #89981</strong> fix(diagnostics-otel): keep full model id on spans instead of collapsing to "unknown". Thanks @mycarrysun and @vincentkoc.</li>
|
|
<li><strong>PR #90489</strong> fix(sessions): clarify cross-agent visibility guidance. Related #90443. Thanks @sahibzada-allahyar and @vincentkoc and @ramitrkar-hash.</li>
|
|
<li><strong>PR #95383</strong> fix(sdk): classify failed/blocked tool events as tool.call.failed. Thanks @ly-wang19.</li>
|
|
<li><strong>PR #95827</strong> fix(plugin-sdk): bound live model catalog success body.</li>
|
|
<li><strong>PR #95792</strong> fix(onboard): refresh provider plugin registry after setup installs. Related #95765. Thanks @snowzlmbot.</li>
|
|
<li><strong>PR #93943</strong> fix(provider-usage): honor proxy env for usage fetch. Related #78714. Thanks @TurboTheTurtle and @TnzGit.</li>
|
|
<li><strong>PR #89648</strong> fix(agents): restore model-fetch info logs. Related #89300. Thanks @xiaobao-k8s and @Enominera.</li>
|
|
<li><strong>PR #93841</strong> fix(ui): render persisted history text blocks. Related #90241. Thanks @mushuiyu886 and @pronzcw.</li>
|
|
<li><strong>PR #93502</strong> docs: fix docs metadata spellcheck. Thanks @harjothkhara.</li>
|
|
<li><strong>PR #86608</strong> docs: add existing-solutions preflight guardrail. Thanks @cablackmon.</li>
|
|
<li><strong>PR #95322</strong> fix(reply): preserve usage footer across rollover. Thanks @litang9.</li>
|
|
<li><strong>PR #91559</strong> fix(agents): clean Gemini tool schemas by model id. Related #91542. Thanks @Pick-cat and @qiukui666.</li>
|
|
<li><strong>PR #94701</strong> Fix embedded-run recovery after refreshed session activity. Thanks @imadal1n.</li>
|
|
<li><strong>PR #95472</strong> [AI] fix(main-session): skip current-gen abort controllers for completed sessions. Thanks @xydt-tanshanshan.</li>
|
|
<li><strong>PR #95401</strong> fix(lmstudio): canonicalize variant model keys. Thanks @MonkeyLeeT.</li>
|
|
<li><strong>PR #94323</strong> fix(cron): stop add/remove from dropping a due recurring job's pending run. Thanks @yetval.</li>
|
|
<li><strong>PR #94443</strong> fix(memory-wiki): retry transient source-page rewrite race instead of aborting wiki_status. Related #92134. Thanks @ZengWen-DT and @cknzraposo.</li>
|
|
<li><strong>PR #95120</strong> feat(channels): add directUserId support for per-DM model override. Related #53638. Thanks @xydigit-zt and @thomaszta and @gandalf-at-lerian.</li>
|
|
<li><strong>PR #91049</strong> fix: handle terminal chat send acknowledgements. Related #91048. Thanks @nxmxbbd.</li>
|
|
<li><strong>PR #95081</strong> fix: keep text transform runtime imports hashed. Related #95057. Thanks @849261680 and @YvesLaRose.</li>
|
|
<li><strong>PR #93356</strong> fix(plugins): cache plugin setup registry to kill the /models CPU storm. Thanks @obuchowski.</li>
|
|
<li><strong>PR #85341</strong> refactor: internalize OpenClaw agent runtime.</li>
|
|
<li><strong>PR #94233</strong> fix(model-fallback): coalesce auth decision logs. Related #56979. Thanks @goutamadwant and @yanan1991.</li>
|
|
<li><strong>PR #92399</strong> fix(llm): collapse cumulative openai-responses message snapshots instead of concatenating [AI-assisted]. Related #91959. Thanks @amersheeny and @phoenixyy.</li>
|
|
<li><strong>PR #94811</strong> fix(ollama): honor memory embedding output dimensionality. Thanks @mushuiyu886.</li>
|
|
<li><strong>PR #84708</strong> fix(agents): recover message-tool mirror replay poison. Thanks @anyech.</li>
|
|
<li><strong>PR #95274</strong> fix(memory): preserve Windows QMD command paths. Related #92302. Thanks @ly85206559 and @Ardooken.</li>
|
|
<li><strong>PR #95686</strong> fix(xai): request encrypted reasoning include for all reasoning models. Thanks @geraint0923 and @fuller-stack-dev.</li>
|
|
<li><strong>PR #82909</strong> fix(telegram): repair message cache reply types. Thanks @lidge-jun.</li>
|
|
<li><strong>PR #94942</strong> fix(matrix): prune finished fake-indexeddb transactions to prevent OOM. Related #90455. Thanks @xzh-icenter and @yar-sh.</li>
|
|
<li><strong>PR #93994</strong> fix(setup): point non-interactive health hints at onboard flags. Related #93947. Thanks @BK-Z1 and @NianJiuZst.</li>
|
|
<li><strong>PR #93956</strong> fix(ollama): skip auto-discovery for remote/cloud base URLs. Thanks @jason-allen-oneal.</li>
|
|
<li><strong>PR #93547</strong> fix(acp): recover stale persistent sessions by structured resume-required code [AI-assisted]. Related #87830. Thanks @amersheeny and @chouzz.</li>
|
|
<li><strong>PR #94204</strong> fix(control-ui): rewrite manifest hrefs for configured base path. Related #94157. Thanks @hugenshen and @xrow.</li>
|
|
<li><strong>PR #95637</strong> fix(qqbot): recognize GFM table separators with one or two dashes. Thanks @ly-wang19.</li>
|
|
<li><strong>PR #95467</strong> fix(sessions): keep bound channel identity across non-delivery turns. Thanks @yetval.</li>
|
|
<li><strong>PR #93919</strong> perf(plugins): cache existence probes within bundle manifest scan [AI-assisted]. Related #76209. Thanks @ml12580 and @shenhonglong456-ai.</li>
|
|
<li><strong>PR #94726</strong> fix(google): add gemini-3.5-flash model catalog entry. Related #94723. Thanks @ajwan8998 and @anguslogan01.</li>
|
|
<li><strong>PR #94238</strong> fix(config): fail closed when configure runs without an interactive TTY (#93953). Thanks @ruomuxydt and @NianJiuZst.</li>
|
|
<li><strong>PR #89949</strong> fix(media): pin requester delivery route when task starts. Related #86034. Thanks @wangwllu and @tianxiaochannel-oss88.</li>
|
|
<li><strong>PR #94470</strong> chore: sync yuanbao plugin catalog to 2.15.0. Thanks @jase-283.</li>
|
|
<li><strong>PR #93585</strong> fix(daemon): keep systemd gateway running after child OOM. Thanks @snowzlm.</li>
|
|
<li><strong>PR #94442</strong> fix(imessage): strip leading echo corruption markers in the persisted echo cache. Thanks @ly-wang19.</li>
|
|
<li><strong>PR #93511</strong> fix(imessage): normalize leading NUL echo-cache prefixes. Thanks @vincentkoc and @ly-wang19.</li>
|
|
<li><strong>PR #87121</strong> test(cli): add banner emission reset helper. Related #83903. Thanks @lizuju and @davinci282828.</li>
|
|
<li><strong>PR #89172</strong> fix(feishu): show voice message duration via upload duration. Related #53798. Thanks @areslp and @kinrocW.</li>
|
|
<li><strong>PR #95118</strong> fix: bound agents load their own inbound workspace context. Related #92903. Thanks @849261680 and @axjing.</li>
|
|
<li><strong>PR #94752</strong> fix(reply): clarify stale model override resets. Related #94713. Thanks @snowzlmbot and @Gr4via.</li>
|
|
<li><strong>PR #89716</strong> fix(providers): strip cache-boundary marker from non-Anthropic prompts. Thanks @masatohoshino.</li>
|
|
<li><strong>PR #95268</strong> fix(openrouter): expand short canonical model IDs to upstream API slugs (fixes #95198). Thanks @Darren2030 and @daniel-alejandro-t.</li>
|
|
<li><strong>PR #90475</strong> fix(telegram): keep bot reply answers anchored to current message. Thanks @moeedahmed.</li>
|
|
<li><strong>PR #94219</strong> fix(control-ui): restore provider usage quota pill in sidebar session switcher (fixes #93041). Thanks @Pick-cat and @jazzroutine.</li>
|
|
<li><strong>PR #93369</strong> fix(cron): expose per-job fallbacks in CLI. Related #90302. Thanks @849261680 and @Walliiee.</li>
|
|
<li><strong>PR #87912</strong> Handle Codex toolResult blocks in tool-result truncation. Thanks @AdrianIp0204.</li>
|
|
<li><strong>PR #95744</strong> fix(model-catalog): strip manifest model-id prefixes by the matched length. Related #95743. Thanks @parveshsaini.</li>
|
|
<li><strong>PR #95300</strong> fix(cli): expose --count on infer image edit, matching image generate. Thanks @ly-wang19.</li>
|
|
<li><strong>PR #94156</strong> fix: expose OpenAI image quality and moderation CLI options. Thanks @lastguru-net and @ly-wang19.</li>
|
|
<li><strong>PR #94062</strong> fix(agents): classify generic "LLM request failed." as transient time…. Related #93931. Thanks @hugenshen and @hyphae-bot.</li>
|
|
<li><strong>PR #93965</strong> fix(opencode-go): streaming completes when provider ends responses. Related #93610. Thanks @zhangguiping-xydt and @ForceConstant.</li>
|
|
<li><strong>PR #89017</strong> fix(webchat): sessions persist after reconnects. Related #87700. Thanks @zhangguiping-xydt and @asicoe.</li>
|
|
<li><strong>PR #94627</strong> fix(ios): centralize app accent colors. Thanks @zats.</li>
|
|
<li><strong>PR #94054</strong> fix(gateway.tls): reject empty/whitespace certPath and keyPath. Thanks @miorbnli.</li>
|
|
<li><strong>PR #95674</strong> fix(cron): trim trailing whitespace from recognized job object keys. Related #95407. Thanks @zw-xysk and @Nassiel.</li>
|
|
<li><strong>PR #95857</strong> Fix SQLite user version guardrail allowlist. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95858</strong> feat(qa): expose active memory toggles to scenarios. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #84326</strong> Doctor: expose sandbox registry findings. Thanks @giodl73-repo.</li>
|
|
<li><strong>PR #73079</strong> fix(minimax): request hex TTS output explicitly. Thanks @efe-arv.</li>
|
|
<li><strong>PR #94483</strong> feat(gateway-cli): scope usage-cost by agent. Thanks @ly-wang19.</li>
|
|
<li><strong>PR #91502</strong> feat(qa): crabline channel driver. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95872</strong> Move TUI PTY tests into CI node shard. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #89800</strong> fix(agents): resolve webchat current session status. Related #89773. Thanks @sweetcornna and @killo3967.</li>
|
|
<li><strong>PR #95870</strong> fix(ci): restore macOS and Windows QA gates. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #94445</strong> fix(agents): keep cron cloud idle watchdog enabled. Thanks @bek91.</li>
|
|
<li><strong>PR #91506</strong> fix(qa): reserve shared QA suite flags across runners. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95876</strong> ci: add manual release QA profile evidence workflow. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95879</strong> fix(ci): use workflow revision for proof checks. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #93113</strong> fix(memory-core): report active dreaming phases in status. Related #67868. Thanks @AgentArcLab and @mrossit.</li>
|
|
<li><strong>PR #95837</strong> Simplify color mode button labels. Thanks @SannidhyaSah and @hannesrudolph.</li>
|
|
<li><strong>PR #95797</strong> fix: /status is too verbose for pinned model sessions. Thanks @Solvely-Colin.</li>
|
|
<li><strong>PR #90223</strong> test: make qqbot symlinked media helper test robust on Windows. Thanks @aniruddhaadak80.</li>
|
|
<li><strong>PR #95557</strong> improve: refresh Android overview control surface. Thanks @Solvely-Colin and @joshavant.</li>
|
|
<li><strong>PR #95593</strong> fix: route Android exec approvals to in-app inbox. Thanks @Solvely-Colin.</li>
|
|
<li><strong>PR #95570</strong> fix(cli): resolve trajectory export stores consistently. Related #95568. Thanks @youngting520.</li>
|
|
<li><strong>PR #95880</strong> ci: generalize QA profile evidence workflow. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95218</strong> fix(agents): bound provider JSON response reads. Thanks @Alix-007.</li>
|
|
<li><strong>PR #95614</strong> fix(memory-wiki): preserve human notes block on source re-ingest. Thanks @yetval.</li>
|
|
<li><strong>PR #95148</strong> feat(android): add settings detail panels. Thanks @Tosko4.</li>
|
|
<li><strong>PR #95893</strong> Add iOS push sandbox profiles and relay tooling. Thanks @joshavant.</li>
|
|
<li><strong>PR #95723</strong> fix(control-ui): exclude disabled cron jobs from Overview failed count. Related #95716. Thanks @ZengWen-DT and @voytas75.</li>
|
|
<li><strong>PR #78715</strong> Fix minor grammar issue in plugin documentation (capabilities plural). Thanks @mehrazmorshed.</li>
|
|
<li><strong>PR #95890</strong> fix(ci): restore QA workflow gates. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95661</strong> fix(discord): reserve closing-fence space on fence-closing lines. Thanks @ly-wang19.</li>
|
|
<li><strong>PR #94272</strong> ci: add maturity scorecard renderer. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95901</strong> ci: add maturity scorecard renderer. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95914</strong> fix(whatsapp): preserve durable reply target. Thanks @mcaxtr.</li>
|
|
<li><strong>PR #95697</strong> improve: reduce hot-path linear scans and redundant I/O. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95916</strong> fix(memory): improve node:sqlite unavailable guidance. Thanks @vincentkoc and @rrrrrredy.</li>
|
|
<li><strong>PR #78884</strong> docs: document local avatar file size limit. Related #65312. Thanks @wangjieweb3-design and @wraxle-geargrind.</li>
|
|
<li><strong>PR #95909</strong> fix(ci): use available Android SDK platform. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #68389</strong> plugins: clarify allowlist warning when entries don't match discovered ids. Related #68352. Thanks @lyfuci and @JIRBOY.</li>
|
|
<li><strong>PR #95898</strong> ci: simplify maturity scorecard QA evidence inputs. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95928</strong> fix(ci): honor reusable QA evidence failure policy. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95508</strong> fix #95489: [Bug]: claude-cli out-of-credits error bypasses model fallback chain — error text delivered as final response. Thanks @mikasa0818 and @sallyom and @riazrahaman.</li>
|
|
<li><strong>PR #95420</strong> fix(agents): bound OpenRouter model catalog response reads. Thanks @Alix-007 and @sallyom.</li>
|
|
<li><strong>PR #95103</strong> fix(gateway): bound pricing catalog streams. Thanks @vincentkoc and @sallyom.</li>
|
|
<li><strong>PR #95108</strong> fix(agents): bound Anthropic error streams. Thanks @vincentkoc and @sallyom.</li>
|
|
<li><strong>PR #95418</strong> fix(agents): bound OpenRouter model-scan catalog success body. Thanks @Alix-007.</li>
|
|
<li><strong>PR #95922</strong> fix(ci): finalize testbox sessions after setup failures. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95417</strong> fix(agents): bound Google prompt cache response reads. Thanks @Alix-007.</li>
|
|
<li><strong>PR #95935</strong> fix(whatsapp): resolve approval reactions across JID drift. Thanks @mcaxtr.</li>
|
|
<li><strong>PR #84340</strong> Doctor: expose extra gateway service findings. Thanks @giodl73-repo.</li>
|
|
<li><strong>PR #95946</strong> fix(ci): finalize Windows Testbox after setup failures. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95947</strong> feat(qa): add "all" taxonomy profile. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #91903</strong> feat(plugin-sdk): add extensible channel identity hook context. Thanks @lanzhi-lee and @vincentkoc.</li>
|
|
<li><strong>PR #95930</strong> docs(copilot): refresh harness parity notes. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95952</strong> fix(ci): require QA live evidence artifacts. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95666</strong> Fix memory-wiki bridge self-import loop. Related #95657. Thanks @TurboTheTurtle and @vincentkoc and @Johannes0402.</li>
|
|
<li><strong>PR #91724</strong> fix(agents): infer runtime provider from qualified model ids. Thanks @yu-xin-c and @vincentkoc.</li>
|
|
<li><strong>PR #95957</strong> improve: speed up provider tool-call streaming. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95541</strong> fix(cli): show working commands for pinned plugin drift. Thanks @ooiuuii and @vincentkoc.</li>
|
|
<li><strong>PR #95933</strong> docs: update maturity scorecard. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #78105</strong> fix(plugins): make empty-allowlist actionable for new users. Related #68780. Thanks @pahuchi-joe and @JIRBOY.</li>
|
|
<li><strong>PR #95961</strong> fix(ci): require live proof evidence artifacts. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95400</strong> fix(model-fallback): classify Codex usage-limit payloads. Thanks @jason-allen-oneal and @sallyom.</li>
|
|
<li><strong>PR #95944</strong> perf(qa-lab): speed up unified QA suites. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95971</strong> ci: fail QA profile evidence on QA failures. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95845</strong> feat: add bundled plugin icon manifest URLs. Thanks @Patrick-Erichsen.</li>
|
|
<li><strong>PR #95975</strong> fix(ci): require iOS Periphery evidence artifact. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95972</strong> docs: update ClawHub skill route references. Thanks @Patrick-Erichsen.</li>
|
|
<li><strong>PR #90537</strong> Warn on generated wrapper overwrites and status diagnostics. Related #90518. Thanks @TurboTheTurtle and @vincentkoc.</li>
|
|
<li><strong>PR #93567</strong> fix(cron): normalize run-log jobId on write to match read-side validation. Thanks @Alix-007 and @vincentkoc.</li>
|
|
<li><strong>PR #95967</strong> perf(ci): widen main test fanout and move codeql off blacksmith. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95983</strong> fix(ci): require OpenGrep SARIF artifacts. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #64490</strong> CLI: escape zsh completion descriptions. Thanks @EdenKangdw.</li>
|
|
<li><strong>PR #95682</strong> Fix Gemini day freshness time range handling. Thanks @Sunjae-k and @vincentkoc.</li>
|
|
<li><strong>PR #93374</strong> fix(agents): suggest recovery for unknown tool ids. Related #92273. Thanks @mushuiyu886 and @vincentkoc and @poison.</li>
|
|
<li><strong>PR #95991</strong> fix(ci): require release QA evidence artifacts. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #89886</strong> fix(context-engine): forward abortSignal through delegation bridge to runtime compaction. Related #89868. Thanks @openperf and @vincentkoc and @lykeion-dev.</li>
|
|
<li><strong>PR #95999</strong> fix(release): require postpublish evidence artifact. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96003</strong> test(qa): harden all-profile QA evidence scenarios. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95860</strong> fix(compaction): trim prefix when transcript ends in an oversized tool result. Related #78478. Thanks @yetval and @wzhgba.</li>
|
|
<li><strong>PR #95934</strong> fix(xiaomi): correct mimo-v2.5 and mimo-v2.5-pro max output tokens to 128K. Thanks @idootop.</li>
|
|
<li><strong>PR #95782</strong> fix(sessions): honor configured store for outbound transcript mirrors. Related #95781. Thanks @youngting520.</li>
|
|
<li><strong>PR #96005</strong> feat(copilot): wire harness parity helpers. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95886</strong> fix: avoid false macOS update failures during gateway shutdown. Thanks @fuller-stack-dev.</li>
|
|
<li><strong>PR #91906</strong> perf: skip subagent live stream parsing. Thanks @lanzhi-lee.</li>
|
|
<li><strong>PR #87861</strong> fix(model-usage): coerce numeric-string costs and ignore non-finite values. Related #37878. Thanks @coder999999999 and @vincentkoc and @shuofengzhang.</li>
|
|
<li><strong>PR #96030</strong> fix(qa-lab): avoid duplicate child evidence files. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #94369</strong> fix(memory-wiki): exclude durable reference pages from stale report. Thanks @SunnyShu0925 and @vincentkoc.</li>
|
|
<li><strong>PR #94578</strong> Fix recent session resume with long headers. Related #94577. Thanks @rohitjavvadi and @vincentkoc.</li>
|
|
<li><strong>PR #95919</strong> ci: add Codex maturity scorecard agent. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #92356</strong> fix(heartbeat): skip reasoning payloads when selecting heartbeat reply. Related #92260. Thanks @tangtaizong666 and @vincentkoc and @jmpei.</li>
|
|
<li><strong>PR #94328</strong> fix(agents): keep post-compaction user re-issue of a kept-tail prompt during compaction rotation. Thanks @yetval and @vincentkoc.</li>
|
|
<li><strong>PR #95432</strong> fix(reply): suppress per-message finals across multi-message block streaming. Thanks @yetval and @vincentkoc.</li>
|
|
<li><strong>PR #95431</strong> fix(auto-reply): keep drain/restart-abort reply paths silent. Thanks @moeedahmed and @vincentkoc.</li>
|
|
<li><strong>PR #96017</strong> test(qa): gate maturity docs on passing evidence. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #95552</strong> feat(mattermost): persist participated threads for mention-free follow-ups. Thanks @amknight.</li>
|
|
<li><strong>PR #95480</strong> fix #89231: [Bug]: Windows installer-created scheduled task launches gateway.cmd with visible console — should use windowless launcher. Thanks @mikasa0818 and @vincentkoc and @CameronWeller.</li>
|
|
<li><strong>PR #96049</strong> fix(copilot): preserve compaction metadata. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96044</strong> docs: rename top maturity tier to Clawesome. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #92154</strong> Gate private QQBot group commands. Thanks @sliverp.</li>
|
|
<li><strong>PR #95484</strong> fix: assistant reply lost between compaction summary and first kept user in successor transcript. Related #76729. Thanks @maweibin and @vincentkoc and @njuboy11.</li>
|
|
<li><strong>PR #95094</strong> ci: add release QA profile evidence. Thanks @RomneyDa.</li>
|
|
<li><strong>PR #96057</strong> docs: redesign maturity scorecard pages. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96014</strong> perf(agents): index displaced tool results. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96019</strong> perf(usage): bound session log retention. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96013</strong> perf(anthropic): index active stream blocks. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96061</strong> docs: place maturity pages under release reference. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95589</strong> fix: npm plugin updates break running gateway imports. Thanks @ooiuuii and @vincentkoc.</li>
|
|
<li><strong>PR #96068</strong> fix(acpx): consume acpx 0.11.1 model capability errors. Related #95869. Thanks @vincentkoc and @SabaTech-dev.</li>
|
|
<li><strong>PR #89912</strong> refactor: add transcript update identity contract. Thanks @jalehman.</li>
|
|
<li><strong>PR #96055</strong> fix(maint): use rebase PR landing. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96062</strong> feat(copilot): mirror native plan and subagent events. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96032</strong> fix(acpx): detect wrapper orphan on any PPID change, not just init reparenting. Thanks @t2wei and @vincentkoc.</li>
|
|
<li><strong>PR #96124</strong> chore(acpx): bump bundled client to 0.11.2. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #84352</strong> Fix WebChat dispatch failure session status. Thanks @jesse-merhi.</li>
|
|
<li><strong>PR #89518</strong> refactor: migrate plugin transcript mirrors. Thanks @jalehman.</li>
|
|
<li><strong>PR #90439</strong> refactor: add embedded run session target seam. Thanks @jalehman.</li>
|
|
<li><strong>PR #95699</strong> perf(gateway): drop redundant per-access session-key case scan. Thanks @jzakirov and @jalehman.</li>
|
|
<li><strong>PR #95992</strong> fix(skills): accept owner-qualified verify refs. Thanks @Patrick-Erichsen.</li>
|
|
<li><strong>PR #95987</strong> fix(plugins): remove Simple Icons color paths. Thanks @Patrick-Erichsen.</li>
|
|
<li><strong>PR #96162</strong> refactor: use accessor-backed transcript corpus for memory. Thanks @jalehman.</li>
|
|
<li><strong>PR #96181</strong> Defer iOS local network permission until onboarding. Thanks @joshavant.</li>
|
|
<li><strong>PR #95475</strong> test(cli): isolate service env in run and update suites. Thanks @kklouzal.</li>
|
|
<li><strong>PR #95226</strong> fix(infra): bound ClawHub fetchJson and error response bodies. Thanks @Alix-007.</li>
|
|
<li><strong>PR #95240</strong> fix(matrix): bound non-raw JSON response body in transport. Thanks @Alix-007.</li>
|
|
<li><strong>PR #91742</strong> fix(memory): abort orphaned embedding work when memory_search times out. Related #91718. Thanks @dreamhunter2333 and @NOVA-Openclaw.</li>
|
|
<li><strong>PR #93394</strong> fix(memory): abort orphaned qmd search subprocess when memory_search times out. Thanks @Alix-007.</li>
|
|
<li><strong>PR #89911</strong> refactor: migrate bundled transcript target lookups. Thanks @jalehman.</li>
|
|
<li><strong>PR #96191</strong> refactor: route plugin host hook state through accessor. Thanks @jalehman.</li>
|
|
<li><strong>PR #96179</strong> fix: route gateway history through session accessor target. Thanks @jalehman.</li>
|
|
<li><strong>PR #96201</strong> refactor: add abort target session accessor. Thanks @jalehman.</li>
|
|
<li><strong>PR #96193</strong> fix(memory-core): migrate dreaming cleanup lifecycle. Thanks @jalehman.</li>
|
|
<li><strong>PR #96195</strong> fix: bridge ACP metadata to session accessors. Thanks @jalehman.</li>
|
|
<li><strong>PR #96182</strong> refactor: migrate agent session accessors. Thanks @jalehman.</li>
|
|
<li><strong>PR #96218</strong> refactor: guard reply session initialization. Thanks @jalehman.</li>
|
|
<li><strong>PR #96213</strong> refactor(gateway): add alias mutation accessor. Thanks @jalehman.</li>
|
|
<li><strong>PR #96204</strong> refactor: migrate command session persistence to accessor. Thanks @jalehman.</li>
|
|
<li><strong>PR #96206</strong> refactor: route live model fresh reads through session accessor. Thanks @jalehman.</li>
|
|
<li><strong>PR #96220</strong> fix(whatsapp): quote current follow-up in durable replies. Thanks @mcaxtr.</li>
|
|
<li><strong>PR #96226</strong> fix(macos): drop Textual from chat packaging. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96212</strong> fix(codex): deliver generated images from remote app-server. Thanks @sjf-oa.</li>
|
|
<li><strong>PR #96235</strong> fix(crabbox): require Xcode for macOS proof. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96145</strong> fix: UI glitch: config is not visible. Related #94202. Thanks @sunlit-deng and @vporton.</li>
|
|
<li><strong>PR #96072</strong> perf(browser): index role snapshot references. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96085</strong> perf(codex): index rollout transcript ids. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96087</strong> perf(reply): hoist direct-send fragment index. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #94154</strong> fix(gateway): resolve plugin-registered gateway methods through live registry. Related #94127. Thanks @Pick-cat and @vincentkoc and @BryceMurray.</li>
|
|
<li><strong>PR #95393</strong> fix #92582: Bug: doctor falsely warns local memory embeddings are not ready. Thanks @mikasa0818 and @vincentkoc and @neekolascmd.</li>
|
|
<li><strong>PR #96246</strong> fix(qa): accept pnpm separator for lab up. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #94949</strong> fix(ports): route isPortBusy through checkPortInUse to catch IPv4-only occupants. Related #94426. Thanks @sunlit-deng and @vincentkoc and @wangwllu.</li>
|
|
<li><strong>PR #94562</strong> fix(workboard): hide archived cards in CLI list by default. Related #94555. Thanks @ZengWen-DT and @vincentkoc and @ecican.</li>
|
|
<li><strong>PR #96243</strong> fix(nextcloud-talk): ignore signed non-message webhook events. Related #81566. Thanks @arkyu2077 and @vincentkoc and @rafaelmgbh.</li>
|
|
<li><strong>PR #96140</strong> fix(exec): preserve turn-source routing target in approval followups for plugin channels. Related #96103. Thanks @yetval and @vincentkoc and @lansenger-pm.</li>
|
|
<li><strong>PR #96258</strong> ci: move CodeQL quality scans to hosted runners. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96271</strong> chore(release): close out 2026.6.10 on main. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #96233</strong> fix(agents): run heartbeat_prompt_contribution on harness prompt builds. Thanks @azogheb and @vincentkoc.</li>
|
|
<li><strong>PR #55018</strong> fix: avoid O(N²) shallow-copy in mapSensitivePaths schema traversal. Thanks @xdhuangyandi and @vincentkoc and @huangyandi-red.</li>
|
|
<li><strong>PR #95831</strong> fix: compact Codex OAuth OpenAI sessions without API keys. Related #95693. Thanks @sallyom and @YUI-TIEN.</li>
|
|
<li><strong>PR #96244</strong> fix(auto-reply): align channel intro wording with chat_type. Related #95645. Thanks @arkyu2077 and @vincentkoc and @iloveleon19.</li>
|
|
<li><strong>PR #97118</strong> fix(telegram): recover stalled ingress spool claims. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #97543</strong> fix(telegram): recover stalled ingress spool claims. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #97122</strong> ci(docker): publish releases to Docker Hub. Thanks @vincentkoc.</li>
|
|
</ul>
|
|
<p><a href="https://github.com/openclaw/openclaw/blob/main/CHANGELOG.md">View full changelog</a></p>
|
|
]]></description>
|
|
<enclosure url="https://github.com/openclaw/openclaw/releases/download/v2026.6.11/OpenClaw-2026.6.11.zip" length="53768361" type="application/octet-stream" sparkle:edSignature="OXkfRdvWubTkAb+76PsrirKIz3E2TXu5h8apLubWr6wrRhef1K4eZwsqcg5+qoVG3xuCg6r5kdAQ45G2USBYDw=="/>
|
|
</item>
|
|
<item>
|
|
<title>2026.6.10</title>
|
|
<pubDate>Fri, 26 Jun 2026 23:37:36 +0000</pubDate>
|
|
<link>https://raw.githubusercontent.com/openclaw/openclaw/main/appcast.xml</link>
|
|
<sparkle:version>2606001090</sparkle:version>
|
|
<sparkle:shortVersionString>2026.6.10</sparkle:shortVersionString>
|
|
<sparkle:minimumSystemVersion>15.0</sparkle:minimumSystemVersion>
|
|
<description><![CDATA[<h2>OpenClaw 2026.6.10</h2>
|
|
<h3>Highlights</h3>
|
|
<ul>
|
|
<li><strong>Automatic fast mode for talks:</strong> OpenClaw can enable fast mode for short conversational turns, then return to normal mode for longer runs with bounded fallback and delivery behavior. (#85104) Thanks @alexph-dev and @vincentkoc.</li>
|
|
<li><strong>More reliable model routing:</strong> Zai model synthesis, GLM overload failover, and native reasoning-level selection now follow the active model catalog more consistently. (#94461, #93241, #94067, #94136) Thanks @Pandah97, @chrysb, @0xghost42, @zhengli0922, @openperf, @civiltox, and @BorClaw.</li>
|
|
<li><strong>Safer session and channel state:</strong> channel switches reset stale origin fields, and cron delivery awareness stays attached to the target session. (#95328, #93580) Thanks @ZengWen-DT, @jalehman, @gorkem2020, and @scotthuang.</li>
|
|
<li><strong>Trusted policies survive hook composition:</strong> composed hook registries keep the trusted tool policies required by approval-sensitive flows. (#94545) Thanks @jesse-merhi.</li>
|
|
</ul>
|
|
<h3>Changes</h3>
|
|
<ul>
|
|
<li><strong>Agent and channel runtime:</strong> fast-mode state now survives retries, fallback transitions, progress events, and embedded/CLI/ACP normalization; session and channel routing retain the current target and delivery context. (#85104, #93580, #95328) Thanks @alexph-dev, @vincentkoc, @scotthuang, @ZengWen-DT, @jalehman, and @gorkem2020.</li>
|
|
<li><strong>Provider behavior:</strong> model catalogs now supply the correct Zai base URL, overload classification, and native reasoning controls for live-discovered models. (#94461, #93241, #94067, #94136) Thanks @Pandah97, @chrysb, @0xghost42, @zhengli0922, @openperf, @civiltox, and @BorClaw.</li>
|
|
</ul>
|
|
<h3>Fixes</h3>
|
|
<ul>
|
|
<li><strong>Fast-mode and policy correctness:</strong> fallback cutoffs and reset notices are bounded, repeated progress events remain visible, Codex service-tier state is normalized, and trusted policies are not lost when hook registries are composed. (#85104, #94545) Thanks @alexph-dev, @vincentkoc, and @jesse-merhi.</li>
|
|
<li><strong>Model and delivery edge cases:</strong> Zai and GLM failover paths use the right runtime metadata, while stale channel-origin state no longer leaks across session changes. (#94461, #93241, #95328) Thanks @Pandah97, @chrysb, @0xghost42, @zhengli0922, @ZengWen-DT, @jalehman, and @gorkem2020.</li>
|
|
<li><strong>Provider plugin onboarding:</strong> setup refreshes provider plugin registry metadata after installing setup-selected provider plugins, so auth continuation uses the newly installed provider instead of stale registry state. (#95792) Thanks @snowzlmbot.</li>
|
|
</ul>
|
|
<h3>Complete contribution record</h3>
|
|
This audited record covers the complete v2026.6.9..HEAD history: 12 merged PRs. The generation manifest also supplies direct commits as editorial input; the grouped notes above prioritize user impact.
|
|
<h4>Pull requests</h4>
|
|
<ul>
|
|
<li><strong>PR #86627</strong> Keep core doctor health in contribution order. Thanks @giodl73-repo.</li>
|
|
<li><strong>PR #93580</strong> fix: preserve cron delivery awareness for target sessions. Thanks @scotthuang and @jalehman.</li>
|
|
<li><strong>PR #95030</strong> refactor: add SDK transcript identity target API. Thanks @jalehman.</li>
|
|
<li><strong>PR #94838</strong> refactor(copilot): complete harness lifecycle parity. Thanks @vincentkoc.</li>
|
|
<li><strong>PR #95328</strong> fix(sessions): reset stale per-channel origin fields on channel switch. Related #95325. Thanks @ZengWen-DT and @jalehman and @gorkem2020.</li>
|
|
<li><strong>PR #94461</strong> fix(zai): fall back to manifest baseUrl for synthesized GLM-5 models. Related #94269. Thanks @Pandah97 and @chrysb.</li>
|
|
<li><strong>PR #93241</strong> fix(agents): classify Zhipu GLM overload as overloaded for failover. Related #93211. Thanks @0xghost42 and @zhengli0922.</li>
|
|
<li><strong>PR #94067</strong> fix(channels): resolve native /think menu levels via runtime catalog for live-discovered models. Related #93835. Thanks @openperf and @civiltox.</li>
|
|
<li><strong>PR #94136</strong> fix(zai): expose GLM-5.2 reasoning levels [AI-assisted]. Thanks @BorClaw.</li>
|
|
<li><strong>PR #85104</strong> feat: fast talks auto mode. Related #85087. Thanks @alexph-dev.</li>
|
|
<li><strong>PR #94545</strong> fix: keep trusted policies with hook registry. Thanks @jesse-merhi.</li>
|
|
<li><strong>PR #95792</strong> fix(onboard): refresh provider plugin registry after setup installs. Related #95765. Thanks @snowzlmbot.</li>
|
|
</ul>
|
|
<p><a href="https://github.com/openclaw/openclaw/blob/main/CHANGELOG.md">View full changelog</a></p>
|
|
]]></description>
|
|
<enclosure url="https://github.com/openclaw/openclaw/releases/download/v2026.6.10/OpenClaw-2026.6.10.zip" length="56115790" type="application/octet-stream" sparkle:edSignature="MEeGG8+WePhUg9uDShznmdhhAgy/WWe7bAwr4XRTauNdrM441iziQYIlwhfNrtHDHX+uE1/tkRtIMcELfuekAg=="/>
|
|
</item>
|
|
<item>
|
|
<title>2026.6.8</title>
|
|
<pubDate>Tue, 16 Jun 2026 17:17:20 +0000</pubDate>
|
|
<link>https://raw.githubusercontent.com/openclaw/openclaw/main/appcast.xml</link>
|
|
<sparkle:version>2606000890</sparkle:version>
|
|
<sparkle:shortVersionString>2026.6.8</sparkle:shortVersionString>
|
|
<sparkle:minimumSystemVersion>15.0</sparkle:minimumSystemVersion>
|
|
<description><![CDATA[<h2>OpenClaw 2026.6.8</h2>
|
|
<h3>Highlights</h3>
|
|
<ul>
|
|
<li>Telegram and WhatsApp channel delivery are richer and less brittle: Telegram can send structured rich text with tables, lists, expandable blockquotes, preserved intentional line breaks, prompt-preserving CLI backend delivery, retired native draft migration, and safer rich-media boundaries, while WhatsApp now honors configured ACP bindings. (#92679, #93164, #84082, #89421, #92513) Thanks @obviyus, @jzakirov, @spacegeologist, and @TurboTheTurtle.</li>
|
|
<li>Agent and Gateway recovery is sharper across account-scoped DM sends, generated media completions, auto-reply message-tool final replies, reset archive fallback reads, restart shutdown aborts, yielded subagent pauses, trusted subagent thinking override fallback, yielded cron media, heartbeat dedupe, session identity prompts, and unknown OpenAI agent selector rejection. (#92788, #91246, #92879, #91357, #92631, #92412, #92146, #91287, #92468, #92510) Thanks @yetval, @TurboTheTurtle, @masatohoshino, @CadanHu, @ooiuuii, @openperf, @IWhatsskill, @ZengWen-DT, and @zhangguiping-xydt.</li>
|
|
<li>Provider/model handling expands and tightens with GLM-5.2, Claude Haiku 4.5 catalog rows, OpenRouter and Google Vertex provider-prefix normalization, managed SecretRef auth, OAuth image-default routing through Codex, bounded model browse discovery, LM Studio binary thinking-off delivery, storeless OpenAI Responses replay gating, invalid OpenAI reasoning-signature and genericized Anthropic thinking-signature recovery, Claude 4.5 Copilot tool-streaming safety, and OpenAI/Anthropic-family payload quarantine for unreadable or post-hook tool schemas. (#92796, #90116, #92627, #91218, #90686, #92824, #92247, #92002, #90706, #92941, #92201, #92916, #75393, #92908, #92921, #92928) Thanks @arkyu2077, @liuhao1024, @bymle, @rohitjavvadi, @nxmxbbd, @bek91, @samson910022, @mmyzwl, @CarlCapital, @snowzlm, @Kailigithub, and @vincentkoc.</li>
|
|
<li><code>/usage</code> and reply payload hooks now have a native full footer renderer, default template, fixed-decimal formatting, credential-aware limits, better partial-count handling, and warnings for broken templates instead of silent bad output. (#92657, #89835, #89629) Thanks @Marvinthebored.</li>
|
|
<li>UI and mobile flows are steadier: workspace files can collapse and start collapsed, WebChat backscroll survives streaming, the sidebar session picker remains interactive above the desktop workbench, reset soft args survive UI dispatch, stale dashboard session parent lineage is preserved, and iOS reconnects stale foreground gateways. (#92779, #92622, #92705, #91353, #90658, #92552) Thanks @shakkernerd, @TurboTheTurtle, @NianJiuZst, @zhouhe-xydt, @luoyanglang, and @Solvely-Colin.</li>
|
|
<li>Memory, state, and diagnostics recover cleaner: oversized OpenAI embedding batches split before 431s, QMD memory search stays available in transient mode, SQLite avoids WAL on NFS state volumes, stuck-session recovery scheduling no longer resets warning backoff, full memory reindexes preserve rollback/cache recovery, raw Memory Wiki source pages stop looking malformed, and Infinity chunk limits stay genuinely unbounded. (#92650, #92618, #92639, #91247, #92752, #92881, #59137, #92876, #69700, #92735) Thanks @mushuiyu886, @TurboTheTurtle, @849261680, @gnanam1990, @TSHOGX, @arlen8411, and @yhterrance.</li>
|
|
</ul>
|
|
<h3>Changes</h3>
|
|
<ul>
|
|
<li>Providers/models: add GLM-5.2 support and Claude Haiku 4.5 catalog entries while keeping provider-qualified model IDs normalized across OpenRouter and Google Vertex paths. (#92796, #90116, #92627, #91218) Thanks @arkyu2077, @liuhao1024, and @bymle.</li>
|
|
<li>Web search: keep key-free providers such as Parallel Free, DuckDuckGo, Ollama, and Codex Hosted Search as explicit opt-ins instead of selecting them automatically when no API-backed provider is configured. (#93616) Thanks @davemorin and @vincentkoc.</li>
|
|
<li>Channel plugins: ship Telegram rich-message delivery and WhatsApp ACP binding support, including preserved intentional line breaks, rich prompt handoff to CLI backends, and transport fixtures for richer drafts. (#92679, #93164, #92513) Thanks @obviyus and @TurboTheTurtle.</li>
|
|
<li>Agent commands: support <code>/btw</code> in CLI-backed sessions and keep CLI usage-error exits classified as usage failures instead of successful runs. (#92669, #92162) Thanks @joshavant and @Pandah97.</li>
|
|
<li>Usage hooks: add built-in full footer rendering, default footer templates, per-turn usage state, credential-aware limits, and fixed-decimal formatting for usage-bar templates. (#92657, #89835, #89629) Thanks @Marvinthebored.</li>
|
|
<li>Docs and operator guidance: document node config examples, clarify before-install hook scope, correct agent default concurrency comments, refresh ZAI provider docs, and update channel/group docs for current Telegram and WhatsApp behavior. (#92677, #92766, #92695) Thanks @liuhao1024, @sallyom, and @ArielSmoliar.</li>
|
|
</ul>
|
|
<h3>Fixes</h3>
|
|
<ul>
|
|
<li>Channels and delivery: preserve account-scoped DM channel send policy, intentional rich-message line breaks in Telegram and status output, rich Telegram final replies, rich Telegram tables and lists, Telegram thread-create CLI remapping, Feishu dynamic-agent routes after persisted binding reuse, Slack outbound <code>message_sent</code> hooks, contributed message-tool schema optionality, same-channel generated media completions, and channel chunking around surrogate pairs and Infinity limits. (#92788, #93164, #92679, #89421, #89943, #42837, #92814, #91137, #91246, #92735) Thanks @yetval, @obviyus, @spacegeologist, @rishitamrakar, @liuhao1024, @lundog, @TurboTheTurtle, and @yhterrance.</li>
|
|
<li>Discord: give generated auto-thread titles a 60-second timeout and 4,096-token reasoning-model output budget, clamped to the selected model output cap. (#64734) Thanks @hanamizuki.</li>
|
|
<li>Agent, cron, and Gateway runtime: mark active main sessions before restart shutdown aborts, pause yielded subagent runs whose terminal also signals abort, clamp trusted subagent thinking overrides through provider/model fallback, preserve yielded media completions, deliver channel message-tool final replies through auto-reply while hiding internal delivery hints, restore reset archive fallback reads when active async transcripts are missing, de-duplicate main-session heartbeat events, expose session identity in runtime prompts, reject unknown OpenAI agent selectors, keep generated media completions, slash-command block replies, and trajectory export commands in WebChat, and require admin privileges for HTTP session/model override surfaces. (#91357, #92631, #92412, #92146, #92879, #91287, #92468, #92510, #91246, #92651, #92646) Thanks @ooiuuii, @openperf, @IWhatsskill, @masatohoshino, @CadanHu, @ZengWen-DT, @zhangguiping-xydt, and @TurboTheTurtle.</li>
|
|
<li>Providers and model replay: preserve storeless OpenAI Responses replay compatibility, recover invalid OpenAI reasoning signatures and genericized Anthropic thinking-signature replay errors, route OAuth image defaults through Codex for eligible OpenAI profiles, avoid eager tool streaming for Claude 4.5 in Copilot, quarantine unreadable and post-hook OpenAI/Anthropic-family tool schemas without broadening allowed tool choices, deliver explicit thinking-off requests to LM Studio binary-thinking models, honor profile auth for SecretRef model entries, bound model browsing, strip provider prefixes where runtimes need bare IDs, and surface nested embedding fetch failures. (#90706, #92941, #92201, #92916, #92824, #75393, #92908, #92921, #92928, #92002, #90686, #92247, #92627, #91218, #92628) Thanks @snowzlm, @mmyzwl, @CarlCapital, @bek91, @Kailigithub, @vincentkoc, @rohitjavvadi, @samson910022, @nxmxbbd, @liuhao1024, @bymle, and @mushuiyu886.</li>
|
|
<li>Memory, state, diagnostics, and config: split header-too-large embedding batches, keep QMD memory search enabled in transient mode, avoid SQLite WAL on NFS volumes, preserve recovery scheduling outside stuck-session warning backoff, preserve full-reindex rollback/cache recovery, treat raw Memory Wiki source pages as source evidence, and keep shell environment fallbacks contained in config write tests. (#92650, #92618, #92639, #91247, #92752, #92881, #59137, #92876, #69700) Thanks @mushuiyu886, @TurboTheTurtle, @849261680, @gnanam1990, @TSHOGX, and @arlen8411.</li>
|
|
<li>UI/mobile/TUI: preserve dashboard session parent lineage, WebChat backscroll, reset soft command args, sidebar session picker interactivity, collapsed workspace files, resolved <code>/model</code> confirmation refs, stale foreground iOS Gateway reconnects, and paused setup-parent stdin after inherited-stdio child exit. (#90658, #92622, #91353, #92705, #92779, #92773, #92552, #93159) Thanks @luoyanglang, @TurboTheTurtle, @zhouhe-xydt, @NianJiuZst, @shakkernerd, @NarahariRaghava, @Solvely-Colin, and @fuller-stack-dev.</li>
|
|
<li>Plugins and updates: repair missing required platform packages during managed plugin installs and updates, including omitted Codex platform binaries.</li>
|
|
<li>Dependencies: update Hono to 4.12.25 so published OpenClaw and ACPX packages use the patched runtime.</li>
|
|
<li>Release and test reliability: extend slow Gateway/full-suite watchdogs, split local full-suite shards when throttled, stabilize plugin auth marker fixtures, avoid brittle provider-ref error text, fold Telegram RTT sampling into live QA evidence, simplify QA scorecard mappings around canonical coverage IDs, keep QA Lab bootstrap selection assertions aligned with flow-only scenarios, skip QA coverage artifact consumers when runtime parity producer status is not green, keep Feishu lifecycle release checks pointed at the active fixture config, isolate trajectory-export live seed turns from Codex-native shell approvals, preserve release-check child refs while pinning expected SHAs, widen live OpenAI TTS budgets for slower provider responses, and avoid false downgrade prompts for unresolved latest-tag updates. (#92652, #92550, #92558, #92911) Thanks @RomneyDa and @Andy312432.</li>
|
|
</ul>
|
|
<p><a href="https://github.com/openclaw/openclaw/blob/main/CHANGELOG.md">View full changelog</a></p>
|
|
]]></description>
|
|
<enclosure url="https://github.com/openclaw/openclaw/releases/download/v2026.6.8/OpenClaw-2026.6.8.zip" length="55815364" type="application/octet-stream" sparkle:edSignature="hLJ14xg6+DMFrXViIW3Njs++OPIGO+RWH9h+mPCSzXPAkKyYUGvtOLu1qEKvvfC8rs5FGgW/w4zDLfD2azqiBA=="/>
|
|
</item>
|
|
</channel>
|
|
</rss> |