Changelog
- 90eadd9 MUL-5905: feat(wecom): send the files an agent produced into the chat (#6604)
- 0f8c300 MUL-5915: fix(slack): neutralize links in member issue titles (#6799)
- 8d292ef MUL-5963: feat(server): let web chat read back history via
multica chat history(#6680) - ef60815 MUL-5974 feat(daemon): let the daemon identify itself on /health (#6783)
- c4f0d8c MUL-5999: make workspace teardown index-driven, bounded and fenced (#6754)
- 51c1b14 MUL-6002: feat(agents): add bulk edit mode for agent environment variables (#6818)
- 7746cef MUL-6002: feat(agents): support pasting environment files (#6730)
- 7e920d6 MUL-6010: fix(desktop): structure route error feedback context (#6737)
- 7eeaaaa MUL-6015: WS-2: update Codex gpt-5.6 model labels (#6749)
- 02e8e6c MUL-6023 feat(attachments): forced-attachment download URL across all storage modes (#6756)
- b904e6b MUL-6029: docs(daemon): correct two comments #6604 made false, and enforce the Slack/Lark brief policy (#6771)
- 84dc02c MUL-6034: fix(cursor): normalize MCP approval server shapes (#6776)
- 78c1e24 MUL-6038: fix(daemon): reclaim the managed Codex sandbox cache for every task kind (#6794)
- d57bfc5 MUL-6043: Keep repo checkout responsive during daemon GC (#6803)
- d3b6fda MUL-6045: feat(views): reach hover-only row controls on touch (#6790)
- b4692a1 MUL-6048 fix(github): withhold close intent when a PR identifier is ambiguous across workspaces (#6808)
- 176e8c6 MUL-6050: feat(onboarding): romanize Chinese workspace names into a slug (#6823)
- 71bd844 MUL-6055 refactor(agents): remove legacy agent templates (#6820)
- 3a2f9ee MUL-6060 fix(editor): render Markdown H4-H6 instead of collapsing them to H1 (#6834)
- ad23d1d docs(changelog): add v0.4.24 release entry (2026-08-12) (#6829)
- 6e66825 fix(agent): make readOpenclawStdout's cut-short decision atomic (MUL-6024) (#6765)
- 8c01850 fix(agents): use Lark and Slack marks outside Settings too (#6817)
- 3ef345b fix(cli): allow login with stale daemon port env (#6801)
- 216c96e fix(composer): handle Android compatibility mouse-down (#6789)
- 0c69f1f fix(daemon): recover in-turn when a resumed session cannot resolve provider auth (#6798)
- 4ef2944 fix(markdown): render CJK-adjacent strong emphasis (#6768)
- b32cd8c fix(metrics): forbid installation_id as a metric label (MUL-5894) (#6597)
- 77f1488 fix(onboarding): stop advertising a WS prefix before a URL exists (#6819)
- 2b3920a fix(settings): clarify integration channel sections (#6807)
- ce8d80b fix(settings): give Lark and Slack their own brand marks (#6816)
- 5e569fa fix(workspace): derive new issue prefixes from the slug, editable at create (#6815)