每日精选 OpenClaw 社区最重要的功能更新和 Bug 修复,带你深入理解开源 AI Agent 框架的演进。
📊 今日概览
| 指标 | 数值 |
|---|---|
| Merged PRs | 32 |
| 主要贡献者 | obviyus, vincentkoc, Takhoffman, ngutman, mukhtharcm |
| 活跃模块 | gateway, telegram, ios, android, mattermost |
🚀 Top 3 Features
1. Mattermost 交互式模型选择器 [#38767]
PR: Mattermost: add interactive model picker
作者: @mukhtharcm | 规模: XL (+1867/-290)
背景:Mattermost 用户之前只能通过输入 /oc_model provider/model 手动切换模型,体验落后于 Telegram 和 Discord。
新功能:
/oc_model或/oc_models直接弹出交互式选择器- Provider → Model 两级浏览,点击即切换
- 选择后原地刷新 picker,同时发送确认消息
- 按钮带 HMAC 签名,仅发起者可操作
核心改动:
// 新增 model-picker.ts 处理交互
if (action.name === 'model_select') {
const { provider, model } = parseCallback(action.context);
await applyModelSelection(session, `${provider}/${model}`);
await refreshPickerPost(postId, renderConfirmation(model));
}
影响:Mattermost 企业用户终于有了和其他平台一致的模型切换体验。
2. iOS App Store 发布资产准备 [#38936]
PR: feat(ios): prepare app store connect release assets
作者: @ngutman | 规模: L (+517/-90)
背景:OpenClaw iOS 应用即将正式上架 App Store。
新增内容:
- 应用截图和预览素材(首批 session 2026-03-07)
- Fastlane App Store Connect 集成
- Keychain 安全存储 ASC 密钥
ios auth_checklane 验证签名配置
- Bundle ID 统一为
ai.openclaw.client命名空间 - Watch App 图标资产同步更新
意义:标志着 OpenClaw 正式进入消费级移动应用市场,降低普通用户的上手门槛。
3. 媒体文件递归清理 TTL [#38292]
PR: fix(media): retain inbound media with recursive cleanup TTL
作者: @vincentkoc | 规模: M (+444/-38)
背景:用户上传的图片、语音等媒体文件长期堆积,磁盘占用持续增长。
改进:
- 新增
media.ttlHours配置项(默认 24 小时) - 清理逻辑递归遍历嵌套目录(如远程缓存树)
- Gateway 启动时 + 每小时自动执行清理
配置示例:
media:
ttlHours: 48 # 保留 48 小时
影响:长期运行的 OpenClaw 实例不再需要手动清理媒体目录。
🐛 重要 Bugfix
1. Windows Gateway 重启失败 [#38825]
PR: fix: restart Windows gateway via Scheduled Task
规模: M (+371/-54)
问题:Windows 用户执行 openclaw update 或 openclaw gateway restart 后,Gateway 进程无法正确重启,变成孤儿进程。
根因:Windows 没有 Unix 的 exec() 系统调用,无法原地替换进程。
修复:
// 检测是否由 Scheduled Task 管理
if (isWindowsTaskManaged()) {
// 创建一次性计划任务延迟重启
await createScheduledTask({
name: 'OpenClawRestart',
command: 'openclaw gateway start',
delay: '5s',
deleteAfterRun: true
});
process.exit(0);
}
影响:Windows 用户终于可以正常更新和重启 OpenClaw 了。
2. Telegram Topic 命令路由错误 [#38871]
PR: fix(telegram): route native topic commands to the active session
规模: L (+335/-172)
问题:在 Telegram 群组的 Forum Topic 中执行 /clear、/stop 等命令时,命令被发送到错误的 session。
根因:Topic ID 没有被正确纳入 session key 的计算路径,导致命令走了群组的默认 session 而不是 topic 专属 session。
修复:统一 message 和 native command 的 session 路由逻辑,确保 topic agentId 覆盖和绑定 session 生效。
3. 本地 MEDIA 路径无法渲染 [#38572]
PR: Fix local MEDIA paths in assistant replies
规模: L (+565/-38)
问题:Agent 返回的本地文件路径(如 MEDIA:./screenshot.png)无法在前端正确渲染,显示为 "No response generated"。
修复:
- 统一处理
MEDIA:前缀的路径解析 - 支持相对路径、sandbox 路径、workspace 路径
- 添加路径遍历攻击防护
4. 阻止 Stale Socket 误重启 [#38643]
PR: fix(gateway): stop stale-socket restarts before first event
规模: S (+157/-26)
问题:刚连接但还没收到消息的 Channel 被健康检查标记为 "stale socket" 并强制重启,导致 Telegram 等长连接渠道反复断连。
修复:只有明确开始追踪 lastEventAt 的 Channel 才参与 stale socket 检测,新连接不再被误杀。
🔧 其他值得关注
| PR | 标题 | 影响 |
|---|---|---|
| #38774 | 重新启用 detect-secrets CI | 安全扫描回归 |
| #38314 | Secrets 内联白名单审查 | 减少 CI 误报 |
| #38712 | Android 包名改为 ai.openclaw.app | 应用商店准备 |
| #38306 | Venice 模型发现强化 | 修复 400 错误 |
| #38436 | 过滤控制台 NO_REPLY 输出 | UX 改进 |
| #38895 | 阻止远程 Markdown 图片加载 | 安全加固 |
| #38422 | 飞书禁用 block streaming | 修复消息丢失 |
| #38452 | Skill API 限流保护 | 防止触发限制 |
📈 趋势观察
-
移动端冲刺:iOS 和 Android 都在为应用商店发布做最后准备(bundle ID 重命名、截图资产、签名配置)
-
企业级完善:Mattermost 交互式 picker、Google Chat webhook 认证继承——OpenClaw 的企业渠道支持日趋成熟
-
安全加固持续:detect-secrets 重新启用、远程图片阻止、路径遍历防护——安全仍是社区高优先级
-
跨平台一致性:Windows scheduled task 重启、Topic 路由统一——"二等公民"平台正在被补齐
🔔 关注「赛博养成日志」,每日获取 OpenClaw 开发动态
数据来源:GitHub openclaw/openclaw 仓库
统计时间:2026-03-07 00:00 - 23:59 UTC