OpenClaw 更新分析 — 2026-03-21
概览
过去24小时(2026-03-20 05:00 UTC → 2026-03-21 05:00 UTC)共有 10 个 commits 合并入主分支,涵盖以下核心模块:
| 模块 | 变更数 | 主要类型 |
|---|---|---|
| context-engine(上下文引擎) | 2 | feat |
| telegram(Telegram 通道) | 1 | feat |
| subagent(子智能体) | 1 | fix |
| agent(智能体传输) | 1 | fix |
| outbound(出站路由) | 1 | fix |
| web-search(Web 搜索) | 1 | refactor |
| slack(Slack 通道) | 1 | fix |
| changelog/test | 2 | docs/test |
亮点:本次更新集中在两个方向——上下文引擎的功能扩展(transcript 维护 + 入站 prompt 透传)以及 Telegram 通道的灵活性提升(自定义 API 端点)。
重要变更(逐条分析)
1. ✨ feat(telegram): 支持自定义 apiRoot(#48842)
- Commit:
6b4c24c— Cypherm - 内容:新增
apiRoot配置项,允许用户指定自定义 Telegram Bot API 端点(例如自托管 Bot API 服务器)。该配置贯穿所有 Telegram API 调用点:bot 创建、发送消息、探测、审计、媒体下载、api-fetch。同时扩展了 SSRF 策略,对自定义apiRoot主机名动态放行媒体下载。 - 关闭 Issue: #28535(长期请求)
- 影响:🔥 对我们有直接影响——如果未来有需要绕过 Telegram 官方 API 限制(速率、封锁)的场景,可通过此选项接入自托管服务器。中国境内访问 Telegram 的稳定性问题也可通过此方案改善。
2. ✨ feat(context-engine): 上下文引擎 transcript 维护(#51191)
- Commit:
751d5b7— Josh Lehman - 内容:为 context engine 新增 transcript 维护功能,负责管理/清理对话转录记录的生命周期。
- 影响:改善多轮对话的内存管理,长对话场景下 token 控制更智能,减少不必要的历史堆积。
3. ✨ feat(context-engine): 将入站 prompt 传入 assemble(#50848)
- Commit:
e78129a— Danh Doan - 内容:在 context engine 的
assemble阶段透传用户当前输入的 prompt,使上下文组装过程能感知本轮用户意图,进行更精准的上下文选择。 - 影响:上下文检索/注入更有针对性,理论上对长记忆或工具-调用密集场景有质量提升。
4. 🐛 fix(subagent): 超时时保留部分进度输出(#40700)
- Commit:
598f182— Wesley - 内容:修复 subagent 超时时完全丢弃已完成工作输出的 bug。现在即使超时,也会返回已产生的部分结果;同时统一了 subagent 输出选择逻辑,移除了 timeout-only 的特殊路径。
- 影响:🔥 对我们有直接影响——目前我们大量使用
sessions_spawn跑子智能体。之前如果任务超时(如 Babel 播客处理、深度研究),整个结果就丢失了。修复后,超时的子智能体至少能返回已完成的部分内容,避免前功尽弃。
5. 🐛 fix(agent): 明确嵌入式传输错误提示(#51419)
- Commit:
d78e13f— scoootscooob - 内容:改善 agent embedded transport 相关错误的错误信息描述,使诊断更清晰。
- 影响:调试体验改善,对用户透明。
6. 🔧 Outbound: 显式指定 channel 时跳过广播扫描
- Commit:
5e417b4— Tyler Yust - 内容:在 outbound 消息路由中,当 channel 已经明确指定时,跳过广播频道扫描逻辑,提升性能。
- 影响:消息发送效率提升,尤其对多频道配置的用户效果明显。
7. 🔧 refactor: Web 搜索 provider 配置验证与兼容处理
- Commit:
b71686a— Tyler Yust - 内容:增强 web search provider 的配置验证逻辑,对 legacy Brave 配置添加兼容处理,避免误报 warning。重构
ensureRegistry函数以利用新的兼容层。 - 影响:使用旧版 Brave Search 配置的用户升级后不再出现无意义的警告。
8. 🐛 fix(slack): 统一 slash conversation-runtime mock
- Commit:
c3be293— Vincent Koc - 内容:修复 Slack 通道中 slash 命令的 conversation-runtime mock 不一致问题(测试相关)。
- 影响:主要是测试稳定性,不影响生产行为。
架构观察
1. Context Engine 正在快速成熟:连续两个 feat commit 强化了 context engine(transcript 维护 + prompt 感知 assemble),说明 OpenClaw 正在构建更智能的上下文管理层,可能是为长对话、多轮工具调用等场景铺路。
2. Subagent 可靠性受重视:超时部分进度保留的修复说明开发团队意识到子智能体运行时的健壮性是用户痛点,后续可能还有更多相关改进。
3. 渠道多样化持续推进:Telegram apiRoot 自定义支持说明 OpenClaw 在努力支持受限网络环境(含中国),Slack 修复也显示多渠道支持的深度维护。
4. Tyler Yust 贡献了两个 outbound 相关优化,围绕消息路由性能和 web search 配置兼容性,显示社区贡献者在关注实际运行效率。
对我们的影响
| 优先级 | 变更 | 建议行动 |
|---|---|---|
| 🔴 高 | subagent 超时保留部分输出 | 更新 OpenClaw 后测试长任务子智能体(Babel 转录、日报爬取)超时行为 |
| 🟡 中 | Telegram apiRoot 自定义 | 暂不需要,但记录备用:若 Telegram 访问不稳定可配置自托管 Bot API |
| 🟡 中 | Context engine 改进 | 无需手动操作,升级后自动受益,长对话质量可能提升 |
| 🟢 低 | Outbound 广播扫描优化 | 透明优化,升级即生效 |
| 🟢 低 | Web search 配置兼容 | 使用 Brave Search 的用户升级后减少警告 |
建议:尽快更新 OpenClaw 版本以获得 subagent 超时修复,这对我们的日常工作流影响最大。
原始 Commits
| SHA | 时间 (UTC) | 类型 | 描述 | 作者 | 链接 |
|---|---|---|---|---|---|
| d78e13f | 2026-03-21 04:47 | fix | agent: clarify embedded transport errors | scoootscooob | [↗](https://github.com/openclaw/openclaw/commit/d78e13f545136fcbba1feceecc5e0485a06c33a6) |
| 6b4c24c | 2026-03-21 04:40 | feat | telegram: support custom apiRoot | Cypherm | [↗](https://github.com/openclaw/openclaw/commit/6b4c24c2e55b5b4013277bd799525086f6a0c40f) |
| 598f182 | 2026-03-21 03:14 | fix | subagent: include partial progress on timeout | Wesley | [↗](https://github.com/openclaw/openclaw/commit/598f1826d8b2bc969aace2c6459824737667218c) |
| 5e417b4 | 2026-03-21 01:21 | fix | Outbound: skip broadcast scan when channel explicit | Tyler Yust | [↗](https://github.com/openclaw/openclaw/commit/5e417b44e1540f528d2ae63e3e20229a902d1db2) |
| b71686a | 2026-03-21 01:20 | refactor | web search provider config validation | Tyler Yust | [↗](https://github.com/openclaw/openclaw/commit/b71686ab44ef931dcc7e43b846f18b720f8a1660) |
| c3be293 | 2026-03-21 01:19 | fix | slack: unify slash conversation-runtime mock | Vincent Koc | [↗](https://github.com/openclaw/openclaw/commit/c3be293dd5f150002009e101def57a62d9c2cf0b) |
| e78129a | 2026-03-21 00:03 | feat | context-engine: pass incoming prompt to assemble | Danh Doan | [↗](https://github.com/openclaw/openclaw/commit/e78129a4d93e1bc1112e79100b21a5605faddaff) |
| 6a6f1b5 | 2026-03-20 23:30 | docs | changelog update | Sally O'Malley | [↗](https://github.com/openclaw/openclaw/commit/6a6f1b5351118b7bf36b4e2bc656573d17c5b0d0) |
| 751d5b7 | 2026-03-20 23:28 | feat | context engine transcript maintenance | Josh Lehman | [↗](https://github.com/openclaw/openclaw/commit/751d5b7849cab4c8f21380cb77c946e78e5490f2) |
| 6526074 | 2026-03-20 23:14 | test | trim singleton cold-start reloads | Peter Steinberger | [↗](https://github.com/openclaw/openclaw/commit/6526074c855a4b5bfc00011abee91be5878c6d20) |
生成时间: 2026-03-21 05:00 UTC | 分析周期: 2026-03-20 05:00 → 2026-03-21 05:00 UTC