有史以来最大更新 OpenClaw 2.0「意外」重构

有史以来最大更新 OpenClaw 2.0「意外」重构:一次破坏性迁移,与 Agent 的三大未解难题

官方博客标题就叫《OpenClaw 2.0, Accidentally》。原本只想「简化安装」+「把浏览器应用重写成一流体验」,却连锁重做了安装与本地模型、存储与控制 UI、记忆、技能与自动化、安全、浏览器/Computer Use 六大块。本文按「背景 → 技术拆解 → 代码实践 → 对比生态 → 展望」拆解这次激进迭代,及其没解决的三大痛点。

一、背景与热度由来:一次「停更 7 周」的反常发布

2026 年 8 月 30 日,开源 AI 助手 OpenClaw 发布 2.0(版本号实为 v2026.8.1)。发布性质从标题就点破了:官方博客《OpenClaw 2.0, Accidentally》的作者 Hannes Rudolph 写道,团队原本只有两个目标——简化安装把偏管理后台的浏览器应用重写成一流体验。但要把这两件事做对,清理动作必须贯穿整个项目,最终连锁成 2.0,连发布基础设施本身都被重构。

规模数据足够惊人:933 位贡献者(569 位首次贡献)、超 16,000 个合并 PR,官方口径精确为「16,304 analyzed PRs and commits」,约占项目有史以来全部合并 PR 的 50%。其中仅维护者/内部类变更就占 5,804 项,侧面印证这是一次深度工程重构而非功能堆叠。

节奏的反常更说明问题。此前 230 天发了 106 个版本(多数间隔一两天),这次却停更近 7 周,连发布基础设施本身都被重构。

热度则两极化。发布帖在 HN 引发热议,最高赞评论却是 minimaxir 的「who is still using OpenClaw?」,本身成了 meme;GitHub 周增星从此前的高位跌到最近两周周增约 800(据媒体统计)。背景上,创始人 Peter Steinberger 加入 OpenAI,项目转交 OpenClaw 基金会(MIT 许可证)运营,中文报道称其自述「不再好玩了」。

请添加图片描述

二、技术拆解:六大块重做了什么

2.1 安装与本地模型:把配置移出首次安装

引导安装(Custodian)自动探测机器上已有的 AI 访问能力:复用已验证的 Codex/ChatGPT/Claude CLI 登录、接受 API key、跑提供方自己的登录,或发现 Ollama/LM Studio 模型。官方强调「在保存该模型和凭据前先验证它能应答」(prove the exact choice can answer)。

本地模型运行时换血:node-llama-cpp → 受管的 llama-server,默认上下文增大,内存受限与全新安装都改用更合适的默认模型。但「简化安装」口碑两极:Windows 新用户称流程顺畅,X 上却流传「Do I still need a computer science PhD to install it?」。

2.2 存储层与控制 UI:文件系统 → SQLite,chat-first 重写

这是一次破坏性迁移:sessions 与 transcripts 从文件系统迁到 SQLite,exec approvals 也从 lock files 迁到共享 SQLite。官方明确警告:降级回旧版前必须先恢复归档的 legacy transcript 工件,迁移后新建的会话在旧版看不到,升级前要做 verified backup。

Control UI 重写为 chat-first,废弃 Overview 页,对话放中心,files/approvals/settings/live work 贴近对话。

2.3 记忆系统:本次最重要的技术叙事(Active Memory + Dreaming)

设计哲学一句话:把「发生过什么」与「什么值得长期记住」分离。官方明确引学术来源(arXiv:2504.13171「sleep-time compute」、Generative Agents 的 durable memory framing),Steinberger 承认「记忆问题还没有任何人真正解决」。

Active Memory 默认跨会话召回同一 agent 的私有历史上下文。工程上是 plugin-owned 阻塞式子 agent,escalate 两级:先跑确定性 trigger recall,命中则注入有界隐藏上下文;否则升级到更深只读子 agent(只能调 memory_search/memory_get)。召回严格限定同一 agent 私有会话,排除 groups/channels/其他 agent/被删历史/被策略阻断来源。

Dreaming 三阶段固化:Light(排序/去重/暂存,不持久化)→ REM(反思主题,写 DREAMS.md)→ Deep(加权打分,过门限才写 MEMORY.md)。Deep 阶段采用加权打分,总分 0.0–1.0、权重可复现,需过多道门限,并受半衰期、maxAgeDays 老化控制。Grounded Dreaming 要求:只有「有据可查」的 grounded 摘录可提升进长期记忆,dream diary 本身不作提升来源,固化前结构性剔除 provenance 为 untrusted/system 的候选。

删重复系统:QMD 退役、由 Built-in Memory 统一,据 36氪引 Steinberger,砍掉约 5 万行代码;新增 openclaw memory forget 按 session/hook/participant 预览清除。

请添加图片描述

2.4 技能自学习与自动化编排

Self-learning 默认 auto:off 关闭、propose 排队待审、auto 可对 Workshop-owned 技能做定向 patch 或同轮修复。你自己写或他人所有的技能仍归 owner,自动学习只能「suggest improvements」,不能擅自重写/删除;显式 /learn 或扫描过去工作也只产出待审提案。

Swarm 并行子代理(实验性 opt-in)用普通 JS/TS 控制流编排多子代理,无图 DSL。

2.5 安全与凭据脱敏

审批绑定到「精确的 request/command/session/person」,重连不能复活已完成的请求;script-backed 命令运行前重校验被审过的字节。会话级权限四档:read-only / guarded / workspace / full-access,full-access 仅限管理员。

凭据脱敏是本次亮点:本地 SQLite Secret Store 区分 Protected 值与 Agent-readable 环境值;destination-bound 替换把受保护凭据直接注入已批准的 Gateway-hosted HTTPS 请求,「模型永远看不到」。官方也坦诚边界:Secret Store 值不加密落盘、依赖 state 目录权限;destination-bound 替换仅作用于服从代理设置的 Gateway-hosted HTTPS 子进程,raw socket/容器/远程节点/纯 HTTP/WebSocket 不在路径内;沙箱默认关闭。

2.6 浏览器与 Computer Use

macOS 经 Keychain/Touch ID 批准后,可显式把兼容 cookie 从 Chrome/Brave/Edge/Chromium 拷进隔离托管浏览器,可 sync 到远程托管浏览器但仅限允许的站点列表,两条路径都不复制 local storage/IndexedDB。官方 Chrome 扩展按选定标签页共享,每标签页可各有 copilot;把页面/文档/选中文本发给主会话是一次性 handoff 而非持续访问。Computer Use 可在配对 Mac、显式开启的 Windows 机器操作受支持应用,view-only 会话拒绝输入。

三、代码与实践示例

Swarm 编排:用 Promise.all / while / Promise.race 在 Code Mode 编排多子代理,体现「程序即编排」、无图 DSL 的取舍。

// Code Mode 内,用普通控制流编排多子代理(骨架示意)
const tasks = urls.map((u) => spawn({ agent: "scraper", input: u }));
const results = await Promise.all(tasks); // 并行上限由编排控制流决定

let page = 1;
while (await hasMore(page)) {
  await spawn({ agent: "crawler", input: { page } });
  page++;
}

// 竞速:任一子代理先返回即取用
const first = await Promise.race([
  spawn({ agent: "fast", input: q }),
  spawn({ agent: "thorough", input: q }),
]);
// 配置:Swarm 并行上限等由编排控制流决定,无图 DSL
{
  "swarm": {
    "enabled": true
  }
}

Dreaming 打分:Deep 阶段加权打分,总分 0.0–1.0,权重可复现。

score = w1*Frequency + w2*Relevance + w3*QueryDiversity
      + w4*Recency + w5*Consolidation + w6*ConceptRichness

门限(都要过,具体阈值见官方文档):
  minScore / minRecallCount / minUniqueQueries
老化控制:recencyHalfLifeDays、maxAgeDays

Active Memory 配置plugins.entries.active-memory.config)与清理命令:

plugins:
  entries:
    active-memory:
      config:
        escalate: default      # 先确定性召回,未命中再升级只读子 agent
        recallTools: [memory_search, memory_get]  # 只读召回工具清单
# 按 session / hook / participant 预览并清除可归因的派生记忆
openclaw memory forget --session <id>
openclaw memory forget --hook <name>
openclaw memory forget --participant <name>

安全配置要点:per-session 四档权限 + destination-bound 凭据替换。

session permission: read-only | guarded | workspace | full-access
  - full-access 仅限管理员
  - per-session 控制非追溯(旧 session 保持旧全局姿态)

凭据脱敏:Protected 值 → destination-bound 替换
  - 只注入已批准的 Gateway-hosted HTTPS 请求
  - 不覆盖 raw socket / 容器 / 远程节点 / 纯 HTTP / WebSocket

四、对比与生态:社区为什么「不买账」

架构事实层面,HN 有评论点破「OpenClaw is built on top of Pi」,大量用户转投 Pi / Hermes / Codex;有人称基于 Pi 的电池包体验不错,有人用 Pi SDK + Discord 自建。

竞品碾压是硬数据:OpenClaw 周增约 800 星 vs Hermes 周增近 9000 星;Hermes 支持 /handoff TG 把会话迁移到手机。

token 消耗是硬伤。据中文实测,一个简单任务消耗 4,321,062 tokens、71 次 API 请求只返回报错——每次调用重读 system prompt、工具列表和记忆文件。

升级是重灾区。据网易/jdon 报道,老用户从 2026.7.x 升级集中报错;发布当天记忆与自动化归零被调侃「给龙虾做额叶切除手术」。据社区/Issue 反馈,git merge 删用户文件是长期顽疾(Issue #17913 早有记录并反复重演)。

记忆机制被批「程序员思维」:memory 负责检索、context engine 管上下文二者割裂;compaction 依赖过重,临近爆仓才「记笔记」,长程任务细节丢失(据知乎/搜狐社区分析)。自我学习被质疑为伪命题:据 GitHub Issue #95388 与 LINUX DO 用户观点,全自动自我进化在现模型能力下无法确定性度量效果。版本号也有争议:项目文档明确不发主版本号,「2.0」只是品牌标签,账本上仍是 v2026.8.1。

请添加图片描述

五、总结与展望:所有权优先,但三大难题仍在

官方定位与边界写得很克制:README 定义「for a single operator or for a team whose members trust each other」,架构三角「trusted gateway, untrusted execution, deterministic policy」;Gateway 是单一信任域而非多租户产品,opt-in roles 只管「一个可信 OpenClaw 安装」内部的协作,不是敌对租户间的隔离。

成长叙事也清晰:一个 Claw 可从「盯学校邮件并转发 TG」的单一工作流,长成家庭/团队的 multiplayer 协作,不锁定单一模型或厂商。

技术判断上,2.0 真正有增量的是三件事:记忆(Active Memory/Dreaming 把「发生过」与「值得记住」分离)、凭据脱敏(destination-bound 替换)、会话级权限。而社区最大质疑集中在 token 消耗、升级/迁移破坏性、自我学习的可度量性——这三者仍是 Agent 落地的未解难题。

落点:开源 Agent 的「所有权优先」路线价值真实,但「意外重构」也暴露了快速堆叠 + 破坏性迁移对既有用户的成本;名字可以叫 2.0,账本上仍是 v2026.8.1。


参考链接

posted @ 2026-09-01 18:33  BehaviourBlogs  阅读(12)  评论(0)    收藏  举报