📅 OpenClaw 开发日报 | 2026-03-07

99 阅读4分钟

每日精选 OpenClaw 社区最重要的功能更新和 Bug 修复,带你深入理解开源 AI Agent 框架的演进。


📊 今日概览

指标数值
Merged PRs32
主要贡献者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_check lane 验证签名配置
  • 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 updateopenclaw 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安全扫描回归
#38314Secrets 内联白名单审查减少 CI 误报
#38712Android 包名改为 ai.openclaw.app应用商店准备
#38306Venice 模型发现强化修复 400 错误
#38436过滤控制台 NO_REPLY 输出UX 改进
#38895阻止远程 Markdown 图片加载安全加固
#38422飞书禁用 block streaming修复消息丢失
#38452Skill API 限流保护防止触发限制

📈 趋势观察

  1. 移动端冲刺:iOS 和 Android 都在为应用商店发布做最后准备(bundle ID 重命名、截图资产、签名配置)

  2. 企业级完善:Mattermost 交互式 picker、Google Chat webhook 认证继承——OpenClaw 的企业渠道支持日趋成熟

  3. 安全加固持续:detect-secrets 重新启用、远程图片阻止、路径遍历防护——安全仍是社区高优先级

  4. 跨平台一致性:Windows scheduled task 重启、Topic 路由统一——"二等公民"平台正在被补齐


🔔 关注「赛博养成日志」,每日获取 OpenClaw 开发动态


数据来源:GitHub openclaw/openclaw 仓库
统计时间:2026-03-07 00:00 - 23:59 UTC