OpenClaw v2026.4.9 发布:记忆回填与日记视图,安全修复全面加固
摘要:OpenClaw 于 2026 年 4 月 9 日凌晨发布 v2026.4.9 版本,重点增强 Memory/Dreaming 系统的历史数据处理能力。本次更新引入 REM 回填通道(grounded REM backfill lane),支持将旧版每日笔记回溯生成梦境日记与持久记忆,无需双重记忆栈。Control UI 新增结构化日记视图,提供时间线导航、回填/重置控制及可追溯的梦总结。安全层面修复 7 项关键漏洞,涵盖浏览器 SSRF 重定向绕过、.env 文件注入、远程节点执行事件污染、插件认证冲突等高风险问题。此外,iOS 版本引入 CalVer 显式版本锁定,优化 TestFlight 发布流程。本文深度解析 v2026.4.9 的记忆回填机制、日记视图功能、安全修复细节及升级建议,为已启用记忆系统的用户提供操作指南。
一、版本概览:记忆系统的"历史数据"革命
1.1 发布基本信息
- 版本号:v2026.4.9
- 发布时间:2026 年 4 月 9 日 02:25(UTC+8)
- 距离上版本:v2026.4.5 发布仅 3 天,快速迭代节奏
- 核心主题:Memory/Dreaming 历史数据处理 + 安全加固
1.2 关键变更速览
| 类别 | 变更项 | 影响范围 |
|---|---|---|
| 记忆系统 | REM 回填通道、日记视图、回填/重置控制 | 已启用 Dreaming 的用户 |
| 安全修复 | 浏览器 SSRF、.env 注入、远程节点事件污染 | 所有用户(高危) |
| iOS 发布 | CalVer 版本锁定、TestFlight 流程优化 | iOS 用户/测试者 |
| 插件生态 | Provider Auth Aliases、SDK 导出优化 | 插件开发者 |
二、记忆系统:从"增量"到"存量"的突破
2.1 背景:v2026.4.5 的遗留问题
v2026.4.5 重构了 Dreaming 系统为三阶段模式(Light/Deep/REM),但存在一个关键局限:
- 仅处理新数据:REM 阶段仅能处理升级后产生的每日笔记
- 历史数据沉睡:升级前的旧笔记无法回溯生成梦境日记
- 双重栈问题:用户需维护"旧记忆栈"和"新记忆栈",导致数据割裂
用户反馈(来自 GitHub Issue #61745):
"我升级后启用了 REM,但发现三个月前的笔记完全没有被处理。难道我要手动把旧笔记重新导入一遍?"
2.2 v2026.4.9 解决方案:REM 回填通道
核心特性:
- Grounded REM Backfill Lane:引入独立的回填通道,专门处理历史每日笔记
rem-harness --path:支持指定历史笔记路径,批量回放至梦境系统- Diary Commit/Reset Flows:提供日记提交和重置流程,支持回滚操作
- Durable-Fact Extraction:优化持久事实提取算法,减少噪声干扰
- Live Short-Term Promotion Integration:回填过程中同步集成短期记忆提升
工作原理:
旧流程(v2026.4.5-4.8):
每日笔记 → REM 阶段 → 梦境日记(仅新数据)
新流程(v2026.4.9+):
历史笔记 → rem-harness --path → 回填通道 → 梦境日记 + 持久记忆
↓
与实时 REM 并行,互不阻塞
技术优势:
- 无需双重栈:旧笔记直接融入现有记忆系统,无需维护两套数据
- 可追溯性:每条回填的记忆都保留源日期标签(source-day labels)
- 安全回滚:支持
reset操作,误操作可恢复到回填前状态 - 增量兼容:回填过程中新产生的笔记仍可正常进入实时 REM 阶段
2.3 Control UI 结构化日记视图
新增功能(PR #63395):
| 功能模块 | 描述 | 用户价值 |
|---|---|---|
| 时间线导航 | 以时间轴形式展示梦境日记,支持缩放/跳转 | 快速定位特定日期的记忆 |
| 回填/重置控制 | 可视化操作入口,选择日期范围执行回填/重置 | 降低命令行操作门槛 |
| 可追溯总结 | 显示每条记忆的来源(哪天的笔记、哪个会话) | 增强记忆可信度 |
| Grounded Scene Lane | 展示"场景化"记忆片段(如连续对话、事件链) | 理解记忆上下文关联 |
| Promotion Hints | 提示哪些记忆可能被提升为持久记忆 | 预判记忆演化路径 |
| Clear-Grounded Action | 安全清除已回填的地面数据,保留原始笔记 | 清理实验性数据 |
界面预览(文字描述):
┌─────────────────────────────────────────────────────────────┐
│ Dreams Diary - Timeline View │
├─────────────────────────────────────────────────────────────┤
│ 2026-04 [▼] │
│ ├── 04-09: [REM] 项目 A 技术讨论 → 持久记忆候选 │
│ ├── 04-08: [Light] 日常对话摘要 │
│ ├── 04-07: [Backfill] 旧笔记回填 → 场景:需求评审会议 │
│ └── 04-06: [Backfill] 旧笔记回填 → 场景:用户反馈分析 │
│ │
│ [▶ 回放] [⏹ 重置] [🗑 清除地面数据] │
└─────────────────────────────────────────────────────────────┘
2.4 实操指南:如何执行回填
命令行方式:
# 1. 查看可回填的笔记路径
openclaw memory diary list
# 2. 执行回填(指定日期范围)
openclaw memory rem-harness --path memory/2026-03 --start 2026-03-01 --end 2026-03-31
# 3. 查看回填进度
openclaw memory dreaming status
# 4. 如有误操作,执行重置
openclaw memory diary reset --date 2026-03-15
Control UI 方式:
- 打开 Control UI → Dreams 面板
- 点击"Backfill"按钮
- 选择日期范围(如 2026-03-01 至 2026-03-31)
- 点击"Start Backfill"
- 等待完成(进度条显示)
注意事项:
- 回填过程可能消耗较多 Token(取决于笔记数量)
- 建议在低峰期执行(如凌晨)
- 回填前务必备份
memory/目录
三、安全修复:7 项关键漏洞封堵
3.1 浏览器 SSRF 重定向绕过(高危)
漏洞描述(Issue #63226):
- 攻击向量:用户点击恶意链接 → 浏览器跳转 → 最终 landing 到内网地址
- 绕过点:初始 URL 合法,但交互驱动的主框架导航(click/evaluate/hook-triggered)后跳转到禁止 URL
- 风险:攻击者可诱导 AI 访问内网服务(如
http://192.168.1.1),窃取敏感信息
修复方案:
- 交互后重检:在 click、evaluate、hook-triggered click、batched action flows 等交互驱动导航后,重新运行目的地安全检查
- SSRF 隔离区:若 landing URL 命中禁止列表,立即阻断并隔离会话
影响评估:
- 必须升级:使用浏览器工具的用户
- 临时缓解:禁用浏览器插件或限制访问白名单域名
3.2 .env 文件注入(高危)
漏洞描述(Issue #62660、#62663):
- 攻击向量:恶意工作区插件在
.env文件中写入运行时控制环境变量 - 受影响变量:
BROWSER_CONTROL_OVERRIDE:覆盖浏览器控制策略SKIP_SERVER:跳过服务器验证- 其他运行时控制变量
- 风险:攻击者可绕过安全策略,获取系统控制权
修复方案:
- 黑名单机制:禁止不受信任的工作区
.env文件设置运行时控制变量 - URL 格式校验:在懒加载前拒绝不安全的 URL 风格浏览器控制覆盖说明符
影响评估:
- 必须升级:使用第三方插件或共享工作区的用户
- 临时缓解:手动审查
.env文件,删除可疑变量
3.3 远程节点执行事件污染(高危)
漏洞描述(Issue #62659):
- 攻击向量:恶意远程节点在
exec.started、exec.finished、exec.denied事件中注入特制文本 - 污染路径:事件摘要被标记为"可信系统事件" → 注入
System:内容 → 影响后续对话 - 风险:提示词注入攻击,误导 AI 执行非预期操作
修复方案:
- 去信任化:将远程节点执行事件摘要标记为不可信系统事件
- 输入清洗:在入队前 sanitize 节点提供的 command/output/reason 文本
影响评估:
- 必须升级:使用远程节点(Remote Nodes)的用户
- 临时缓解:禁用远程节点或仅连接可信节点
3.4 插件认证冲突(中危)
漏洞描述(Issue #62368):
- 攻击向量:不受信任的工作区插件在非交互式 onboarding 期间与捆绑提供商的 auth-choice ids 冲突
- 风险:插件可能窃取运营者密钥或干扰认证流程
修复方案:
- 命名空间隔离:防止工作区插件与捆绑提供商的认证选择 ID 冲突
- 显式信任:仅当插件被明确信任时,才允许其处理认证密钥
3.5 其他安全修复
| 漏洞 | 描述 | 修复方案 |
|---|---|---|
| 依赖审计 | basic-ftp CRLF 命令注入漏洞 | 强制升级到 5.2.1 |
| Slack 媒体认证 | 跨域重定向时 bearer token 被剥离 | 同域重定向保留 token,跨域剥离 |
| Matrix 同步崩溃 | Matrix sync 失败导致整个网关崩溃 | 隔离后台处理器错误,通道级重启 |
| 控制 UI 会话历史 | 快速切换会话时加载陈旧历史 | 防护陈旧会话历史重载 |
四、iOS 版本锁定:TestFlight 发布流程优化
4.1 问题背景
此前 iOS 版本存在以下问题:
- 版本混乱:TestFlight 迭代时短版本号自动递增,导致与 Gateway 版本不同步
- 发布不同步:iOS 应用已发布,但 Gateway 还未准备好,导致功能不兼容
4.2 v2026.4.9 解决方案
CalVer 显式锁定(PR #63001):
- 版本文件:
apps/ios/version.json引入显式 CalVer(如2026.4.9) - TestFlight 迭代:在同一短版本号上迭代,直到维护者主动提升
- 发布流程:
# 从 Gateway 版本同步 iOS 版本号 pnpm ios:version:pin -- --from-gateway # 手动指定版本号 pnpm ios:version:pin --version 2026.4.9
优势:
- 版本对齐:iOS 应用与 Gateway 版本严格对应
- 可控发布:维护者决定何时升级版本号
- 测试灵活:TestFlight 可在同一版本号下多次迭代
五、插件生态:Provider Auth Aliases
5.1 功能说明
问题背景:
- 多个 Provider 变体(如 OpenAI、OpenRouter、Azure OpenAI)需要重复配置认证信息
- 核心层需要为每个变体编写特定的认证接线代码
解决方案:
providerAuthAliases声明:Provider manifest 可声明认证别名- 共享资源:
- 环境变量(如
OPENAI_API_KEY) - 认证配置文件
- API Key onboarding 选择
- 环境变量(如
示例:
{
"name": "openrouter",
"providerAuthAliases": ["openai"],
"auth": {
"sharedEnv": ["OPENAI_API_KEY"],
"sharedProfiles": ["openai-default"]
}
}
优势:
- 减少重复配置:用户配置一次 OpenAI Key,OpenRouter 自动复用
- 解耦核心:核心层无需为每个变体编写特定逻辑
- 灵活扩展:插件作者可自由定义别名关系
六、升级建议与风险提示
6.1 必须升级的场景
- ✅ 已启用 Dreaming 系统:需要回填历史笔记或使用日记视图
- ✅ 使用浏览器工具:修复 SSRF 重定向绕过漏洞
- ✅ 使用远程节点:修复执行事件污染漏洞
- ✅ 使用第三方插件:修复 .env 注入和认证冲突漏洞
- ✅ iOS 测试者:版本锁定优化 TestFlight 体验
6.2 升级步骤
# 1. 备份配置和记忆数据
cp -r ~/.openclaw ~/.openclaw.backup
cp -r ~/memory ~/memory.backup
# 2. 升级
openclaw upgrade
# 3. 验证配置
openclaw doctor
# 4. 重启 Gateway
openclaw gateway restart
# 5. (可选)执行回填
openclaw memory rem-harness --path memory/2026-03
6.3 潜在风险
| 风险 | 描述 | 缓解方案 |
|---|---|---|
| 回填消耗 Token | 大量历史笔记回填可能产生高额 API 费用 | 设置预算告警,分批次回填 |
| 记忆冲突 | 回填数据与现有记忆重复 | 使用 reset 功能回滚 |
| 插件兼容性 | 部分插件可能未适配新安全策略 | 联系插件作者更新 |
七、结语:记忆系统的"时间旅行"
v2026.4.9 的发布,标志着 OpenClaw 记忆系统从"增量处理"迈向"存量回溯"的新阶段。REM 回填通道让历史笔记焕发新生,结构化日记视图让记忆演化过程透明可控。与此同时,7 项安全修复封堵了关键漏洞,为生产环境部署扫清障碍。
正如一位用户在 Issue 中的评论:"Finally, my old notes can speak again. It's like time travel for my memory."(终于,我的旧笔记能再次发声了。这就像记忆的时空旅行。)
对于已启用记忆系统的用户,建议:
- 尽快升级:获取回填能力和安全修复
- 执行回填:将历史笔记融入梦境系统
- 监控费用:设置 Token 预算告警
- 反馈问题:通过 GitHub Issues 或中文社区报告异常
OpenClaw 的记忆,正在变得完整。
参考资料:
- GitHub Releases v2026.4.9: https://github.com/openclaw/openclaw/releases/tag/v2026.4.9
- PR #63395: Control UI/dreaming structured diary view
- PR #63226: Browser/security SSRF redirect fix
- PR #62660: Security/dotenv injection fix
- OpenClaw 中文社区:https://clawd.org.cn/
本文事实核查截至 2026 年 4 月 9 日 03:00,后续版本更新请以官方 Release 为准。
评论