OpenClaw 更新分析 — 2026-03-27

> 分析时间:2026-03-27 05:00 UTC|覆盖范围:过去 24 小时|Commits:11+

概览

今日活跃度较高,集中在三个方向:Skills API 字段重命名收尾会话压缩(Compaction)机制修复、以及 Mattermost 渠道集成。主要贡献者为 Peter Steinberger、Marcus Castro、Ayaan Zaidi,均为核心团队成员。整体以 fixrefactor 为主,无重大新功能发布,但底层稳定性有明显提升。

重要变更(逐条分析)

1. 🔧 fix: align Skill consumers with sourceInfo → source rename

SHA: 38adeb8 | 作者: Marcus Castro | 时间: 04:49 UTC

模块: Skills 系统

类型: fix

Skill 数据结构中的 sourceInfo 字段已正式更名为 source。此次 commit 是善后工作——确保所有消费该字段的调用方与新字段名对齐。

用户影响: 如果你有自定义 Skill 或通过 API 访问 Skill 元数据,字段名已变。升级后需检查相关代码。

2. 🔧 fix: align compaction call sites with upstream API drift

SHA: 2942df6 | 作者: Marcus Castro | 时间: 04:49 UTC

模块: 会话压缩(Compaction)

类型: fix

Compaction(长会话压缩)调用方与上游 API 出现了漂移,此 commit 修复了调用接口不匹配问题。

用户影响: 长对话的自动压缩功能更稳定,减少因 API drift 导致的压缩失败。

3. 🔨 fix: adapt to upstream agent api changes

SHA: 3557bce | 作者: Peter Steinberger | 时间: 04:23 UTC

模块: Agent 运行时

类型: fix

适配上游(可能是 OpenAI/Anthropic)Agent API 的变更。这是一个重要的兼容性修复,防止 API 变更导致 Agent 调用失败。

用户影响: 直接体现在 Agent 任务执行的稳定性上,之前可能出现的神秘失败应该消失。

4. ♻️ refactor: move model picker logic into flow module

SHA: 4629ab3 | 作者: Peter Steinberger | 时间: 01:50 UTC

模块: 模型选择器 / Flow 模块

类型: refactor

将模型选择逻辑从原有位置移入 flow 模块。这是一次架构性整理,为后续模型切换功能的扩展打基础。

用户影响: 无直接影响,但预示着模型选择体验可能有后续改进。

5. ♻️ refactor: shortcut bundled provider contract fixtures

SHA: a4b77ad | 作者: Peter Steinberger | 时间: 03:55 UTC

模块: Provider 管理

类型: refactor

简化了捆绑 Provider 的契约 fixtures(合约测试夹具)。降低了新增 Provider 的维护成本。

用户影响: 底层重构,间接提升新 Provider 接入速度。

6. 🔧 fix: stabilize codex oauth refresh tests

SHA: 17203d0 | 作者: Peter Steinberger | 时间: 03:55 UTC

模块: Codex 集成 / OAuth

类型: fix

修复了 Codex OAuth refresh token 测试中的不稳定问题(flaky tests)。说明 Codex OAuth 刷新流程本身之前存在边界情况。

用户影响: Codex 集成的 OAuth 刷新更可靠,避免因 token 过期导致的意外断线。

7. 🎨 style: format ui sources

SHA: 8cf1e46 | 作者: Peter Steinberger | 时间: 04:24 UTC

模块: UI

类型: style

UI 源代码格式化,无功能变更。

8. ♻️ refactor(mattermost): define post schema once

SHA: 06820b6 | 作者: Ayaan Zaidi | 时间: 04:38 UTC

模块: Mattermost 渠道

类型: refactor

Mattermost post schema 统一定义,消除重复代码。说明 Mattermost 集成正在被积极完善。

用户影响: Mattermost 渠道的消息格式更一致。

9. 🎨 style(mattermost): format websocket monitor

SHA: ca9659f | 作者: Ayaan Zaidi | 时间: 04:34 UTC

模块: Mattermost WebSocket 监控

类型: style

Mattermost WebSocket 监控代码格式化,同时存在 WebSocket 监控模块本身,说明 Mattermost 支持实时推送。

10. 🔧 fix(skills): use skill sourceInfo

SHA: 51d851e | 作者: Ayaan Zaidi | 时间: 04:22 UTC

模块: Skills

类型: fix

Skills 模块使用 sourceInfo 字段(与 commit #1 的重命名配合,这是重命名前后的过渡期修复)。

11. 🔧 fix(agents): adapt compaction request auth

SHA: b1d853d | 作者: Ayaan Zaidi | 时间: 04:21 UTC

模块: Agents / Compaction

类型: fix

适配了压缩请求的认证方式。说明压缩流程涉及独立的认证逻辑,之前可能存在权限问题。

用户影响: 长会话压缩时不再因认证失败而中断。

架构观察

1. Skills 字段重命名正在推进sourceInfo → source 是一个 breaking change,在多个 commit 中分批修复,说明团队在谨慎地处理向后兼容性。自定义 Skill 开发者需要关注。

2. Compaction 机制是当前重点:今天有 3 个 commit 都在修复 compaction 相关问题(调用站点对齐、认证适配、上游 API drift),说明这个功能正在经历一次较大的内部重构或 API 升级。

3. Mattermost 渠道正在孵化:Ayaan Zaidi 在今天提交了多个 Mattermost 相关 commit(schema 定义、WebSocket 监控),Mattermost 支持可能不久就会正式上线。

4. 多人并行开发:Peter、Marcus、Ayaan 三人今天都有提交,且方向不重叠,团队分工明确。

5. Flow 模块地位上升:Model Picker 逻辑迁入 flow 模块,暗示 flow 层正在成为核心编排层。

对我们的影响

影响严重度建议
Skills `sourceInfo → source` 重命名⚠️ 中如果有自定义 Skill 脚本引用 sourceInfo,需要更新
Compaction 修复✅ 正面长会话更稳定,无需操作
Agent API 适配✅ 正面解决之前偶发的 Agent 调用失败
Codex OAuth refresh 稳定✅ 正面如果在用 Codex,不再频繁掉线
Mattermost 集成📌 关注如有 Mattermost 需求可关注后续版本

建议: 等本周内 OpenClaw 发布包含这批修复的新版本后,执行 npm update -g openclaw 升级。Skills 自定义部分需手动检查 sourceInfo 字段引用。

原始 Commits

SHA消息作者时间
[38adeb8](https://github.com/openclaw/openclaw/commit/38adeb888cdccbe3013023b1f0bbf6a29e228f19)fix: align Skill consumers with sourceInfo → source renameMarcus Castro04:49
[2942df6](https://github.com/openclaw/openclaw/commit/2942df6b9f966632f19633aa98d33fdee391001f)fix: align compaction call sites with upstream API driftMarcus Castro04:49
[8cf1e46](https://github.com/openclaw/openclaw/commit/8cf1e46a9420cf4b05cd37412cc0273f72b27671)style: format ui sourcesPeter Steinberger04:24
[3557bce](https://github.com/openclaw/openclaw/commit/3557bce827f5f19b50e5af4c32ffb0d4b478da40)fix: adapt to upstream agent api changesPeter Steinberger04:23
[a4b77ad](https://github.com/openclaw/openclaw/commit/a4b77ad33ff14064341ad9b87d8083b98127d907)refactor: shortcut bundled provider contract fixturesPeter Steinberger03:55
[17203d0](https://github.com/openclaw/openclaw/commit/17203d0af99c45474db5e0bdae0725012ef6199c)fix: stabilize codex oauth refresh testsPeter Steinberger03:55
[4629ab3](https://github.com/openclaw/openclaw/commit/4629ab3d8af52482f2b32ded040b241aa2a94eb9)refactor: move model picker logic into flow modulePeter Steinberger01:50
[06820b6](https://github.com/openclaw/openclaw/commit/06820b6daf4f5ab52d6422d3b1ca9b0e72e1d1cf)refactor(mattermost): define post schema onceAyaan Zaidi04:38
[ca9659f](https://github.com/openclaw/openclaw/commit/ca9659ffb079fb9797d48cef87d3f23b7656c018)style(mattermost): format websocket monitorAyaan Zaidi04:34
[51d851e](https://github.com/openclaw/openclaw/commit/51d851e092307420a0e42a1e68eb1c16f4d6b160)fix(skills): use skill sourceInfoAyaan Zaidi04:22
[b1d853d](https://github.com/openclaw/openclaw/commit/b1d853d88b880d435b2466639b1f78c860853304)fix(agents): adapt compaction request authAyaan Zaidi04:21