OpenClaw 2026.3.13:合并 beta 与正式线之后,看长上下文、真浏览器和网关
原创 · 约 16 分钟阅读 · 阅读 --
Last updated on

OpenClaw 2026.3.13:合并 beta 与正式线之后,看长上下文、真浏览器和网关

作者: Alex Xiang


欢迎关注微信公众号「字与码」。

2026.3.13 这条发行线在 GitHub 上先以预发布 v2026.3.13-beta.1(2026-03-14,npm v2026.3.13-beta.1)给出大块的 Changes/Fixes 说明,再以 v2026.3.13-1 收束正式标签(npm 仍为 2026.3.13)。beta 页里值得记一句交付细节:macOS 安装包仍标应用版本 2026.3.13,且 appcast.xml 刻意不变,方便与后续非 beta 发布共用产物。稳定线相对 beta 又并入了一小批收尾补丁(例如 PR #45689 给未应答 gateway RPC 加有界超时、PR #43762 Feishu 早期事件去重、PR #45622 将受限探针 RPC 视为降级可达性等),因此读发布说明时最好 beta + 稳定 + CHANGELOG 一起看。下面按主题归类,不逐条复述英文 bullet。

一、长上下文与 agent 运行时:压缩、记忆与「别再把推理当正文」

Compaction 仍是核心:#28347 用 整会话压缩前 token 做 post-compaction sanity,避免只拿「待摘要子集」的 tokensBefore 当基准导致计数失真。实现上可见 compact.ts @ v2026.3.13-1 先累加 fullSessionTokensBefore,再以 observedTokenCount ?? fullSessionTokensBefore 为 baseline 校验 tokensAfter,估失败则宁可放弃写入假精确值。

// 逻辑大意:整会话 pre-compaction 估算 → 与 provider 观测值取 baseline → 校验 tokensAfter
const sanityCheckBaseline = observedTokenCount ?? fullSessionTokensBefore;
if (
  sanityCheckBaseline > 0 &&
  tokensAfter >
    (observedTokenCount !== undefined ? sanityCheckBaseline : sanityCheckBaseline * 1.1)
) {
  tokensAfter = undefined;
}

同主题下,beta 里已写的 压缩摘要里保留人格与语言连续性(#10456)、MEMORY.md / memory.md 只加载一份 避免 Docker 大小写挂载双份记忆(#26054),以及 隔离 cron 嵌套任务走 nested lane 防止与压缩队列死锁,都是在说——长会话、定时任务、记忆文件同时存在时,状态机要 可预测

面向 Azure OpenAI/new/reset 与压缩后启动文案改写(#43403)属于「云上内容过滤器误伤」类问题;非原生 openai-completions 上尊重用户显式 compat(#44432)则是兼容层里常见的「框架替你关能力」反弹。本地侧,Ollama 不再把原生 thinking/reasoning 抬成用户可见正文(#45330)、Anthropic 回放时丢掉 thinking 块(#44843),都是在收紧「模型内部通道」与「聊天气泡」的边界。

跨 agent 子会话 解析目标工作区(#40176)影响的是多代理编排时文件与上下文落点是否串台——属于高级用法,但一旦踩坑很难自查,这类修复比加新功能更实在。

二、浏览器:DevTools MCP、真档案与批量 act 的收尾

beta 已把主线说清:Chrome DevTools MCP 挂实时已登录 Chrome、profile="user" / profile="chrome-relay" 减少 browserSession 选择负担、act 支持批量动作、选择器与延迟点击。稳定线后续又跟了 batch act 调度归一与失败/上限处理#45457#45506)以及 existing-session 驱动校验与生命周期#45682),并容忍 Chrome MCP 仅返回文本的 list_pages / new_page。合起来看,这一线从「能连上」走向 长时间挂会话也不断流、不断连

三、网关与控制面:Dashboard、鉴权、RPC 与安装体验

Dashboard v2 在工具流式结果到来时 不再整表重载聊天记录(#45541),对重度 tool 用户是直接性能修复; oversized 纯文本用段落渲染、滚动 pill 样式回归等(#45559、#44856)则是同一套 UI 债务的补齐。

Control UI纯 HTTP(内网、反代)场景下 保留共享 token/密码直到 WebSocket 握手(#45088),以及 恢复仅操作员可用的设备鉴权旁路、把浏览器连接失败从「鉴权失败」里拆出来(#45512),解决的是自托管里最常见的误判路径。

Gateway 侧:对 未应答 RPC 请求设上限并清理 pending(#45689)避免客户端 Promise 永久悬挂;scope-limited 探针 RPC 记为降级可达(#45622)让自动化脚本对「半残」状态有正确预期;session reset 保留 lastAccountId / lastThreadId(#44773)减少重置后串线程。Windows 上安装/停止/状态/回环鉴权的一串补丁(计划任务超时回落、Startup 监听端口解析等)与 macOS 上 onboard 守护进程自重启、PortGuard 不误杀 Docker Desktop(#13798)、exec 审批与 gateway prompter 对齐(#13707)同属「桌面网关当长期服务跑」的硬化。

构建与依赖plugin-sdk 打包去重 缓解约 2× 内存回归(#45426);Dockerfile apt-get upgrade构建上下文中防止 gateway token 泄漏(#44956)则偏供应链与镜像卫生。Pi 系依赖 升至 0.58.0OPENCLAW_TZ 固定容器时区,落在「可复现运维」一类。

四、通道、投递与集成

Telegram:媒体下载把直连/代理策略穿进 SSRF 守卫路径(#44639)、IPv4 回退重试(#45327)、webhook 先验 secret、错误里 redact 文件 URL——都是高流量通道上的 正确性 + 不泄 tokenDiscord 网关元数据拉取失败视为瞬态(#44397)、allowlist 在缺 guild 对象时仍认 guild_idSlack 可选交互式回复指令与文档(#44607 等)、probe 路径简化(#44775)。Feishu 除 beta 已列的 UTF-8 文件名外,稳定线加 早期事件级去重(#43762),减轻重复回复。

投递去重 follow-up(#44666)与 插件通道/绑定冲突快速失败(#45628)属于「多插件、多通道」组合下的一致性。

五、安全、配置与杂项

beta 的 Fixes 里已有大量 exec approval 收紧(pnpm/env/PowerShell/Perl、技能路径绑定等)、配对 bootstrap 单次有效外部内容标记绕过字符剥离iMessage 远程附件路径进 SCP 前校验 等;稳定线继续叠 模型与校验(如 agents.list[].paramssignal groups、firecrawl/readabilitywideArea.domain)、Gemini / Vertex ID 规范化(#42435)、Anthropic 启动别名内联 避免配置级崩溃(#45520)等。整体是 默认更安全 + 严格校验不误杀合法配置 两条线并行。

移动端:Android 聊天设置与扫码换 Google Code ScannerTalkMode 连接泄漏修复;iOS 首次欢迎页与连接指引。与 beta 声明一致,Android 应用尚未公开发布 的提示见官方文档更新(#23051)。


小结:把 beta 与 v2026.3.13-1 并读后,2026.3.13 这条线主要是在 长会话与压缩可信度真浏览器会话工程化网关/控制面与 Windows/macOS 安装体验 上加厚一层,再用通道与安全补丁把自托管和多集成的坑填平。

参考