本节摘要:如果说 Claude Code 与 Codex 是"工程师工作流里的 harness",OpenClaw 则展示了 harness 的另一种形态:一个本地自托管的常驻个人 AI 助理,通过多渠道网关接入 WhatsApp、Discord、iMessage、Slack、Telegram 等你已在用的聊天软件(官方)。它于 2026 年成为 GitHub 历史上 star 增长最快的开源项目(约 39 万 star、超过 React,社区统计,2026-09),而它卖的不是模型——模型由用户自接——它卖的就是 harness 本身。本节先看增长现象与三段更名史(Clawdbot → Moltbot → OpenClaw),再用六组件模板解剖它的"网关 + 常驻循环 + 本地权限"结构,最后巡览 opencode、OpenHands、hermes、smolagents 等开源 harness 家族,看看这个生态里不同定位的样本各守哪格。
阅读完本节,你应当能够:
OpenClaw 的增长曲线在开源史上没有先例:2026 年 1 月前后数周内从约 9 千 star 涨到 6 万以上(社区,DigitalOcean 统计),随后持续狂奔,到 2026 年 9 月约 39 万 star,超过 React,成为 GitHub 有史以来 star 增长最快的项目(社区统计)。它前名 Clawdbot,后更名 Moltbot,最终定名 OpenClaw(官方)——一年内三换其名而增长不减,说明用户追的不是名字,是它提供的东西:
| 用户得到的 | 对应 harness 组件 |
|---|---|
| 一个跑在自己电脑/服务器上的助理进程 | ① 常驻主循环(24 小时在线,非"打开终端才存在") |
| 在 WhatsApp/Discord/iMessage/Slack/Telegram 等聊天里直接使唤它 | 渠道网关(输入输出适配层) |
| 模型自己接(API Key 或本地模型) | 模型插槽化——harness 与模型解耦的直接证据 |
| 文件、日程、记忆等本地能力 | ② 工具系统 + ⑤ 记忆与上下文 |
三个数字的读法(社区,2026-09 基准):9 千 → 6 万用了数周,6 万 → 39 万用了约八个月;"超过 React"意味着它进入了主流开发者的视野,而不只是 AI 圈的自嗨——需求是真实且普遍的。
💡 "纯 harness 项目"的证明力:OpenClaw 不训练模型、不卖模型,增长全部来自 harness 层的产品力(渠道覆盖、本地信任、插件生态)。一个不造发动机的车厂拿下史上最快销量增长——这就是第 1.2 节"harness 成为主战场"论断的最硬证据。
按第 1.3 节模板逐格填写(依据官方仓库与社区资料):
渠道层:WhatsApp / Discord / iMessage / Slack / Telegram / … │ (消息进出:格式适配、身份映射、会话路由) ▼ 网关(harness 的 I/O 前门) │ ▼ 常驻主循环 ── 模型插槽(用户自接 API / 本地模型) │ │ │ ├── 上下文:会话记忆 + 长期记忆文件 │ ├── 工具:本地文件 / 日程 / 浏览 / 插件技能 │ ├── 权限:本机执行 —— 信任边界 = 用户自己的机器 │ └── 观测:本地日志(数据不出用户主权范围) ▼ 执行结果 → 回到渠道("任务做完了"出现在你的聊天里)
三个值得单独说的设计含义:
渠道网关是新的"上下文组装器":不同渠道的消息格式、长度限制、交互习惯(Discord 的按钮 vs WhatsApp 的语音)都要归一化成 harness 内部的统一任务表示——这是第 3.3 节上下文组装在多渠道场景下的扩展。
本地自托管把权限问题变尖锐:终端 harness 的爆炸半径是一台开发机;OpenClaw 的爆炸半径是"你的整个数字生活"(它能读你的消息、动你的日程、碰你的文件)。社区对它的安全讨论大部分集中在权限配置与暴露面(把自托管服务暴露到公网的风险)——第 5 章权限设计的全部紧迫性,在这个形态里被放大到极致。
常驻意味着"主动":终端 harness 只在被人召唤时工作;常驻 harness 可以被定时器、事件(新消息、日程提醒)触发。循环的入口从"用户输入"扩展为"事件源",这是主循环设计的一个新维度(第 3 章会点到)。
家族:opencode(终端)、OpenHands(平台)、hermes(常驻框架)、smolagents(教学)——定位决定组件权重,没有全能冠军。
OpenClaw 之外,开源世界里各定位的 harness 样本(均为开源,官方;延伸阅读指向 同站教程库对应精读):
| 项目 | 定位 | harness 侧重点 | 精读 |
|---|---|---|---|
| opencode | 终端编码智能体(开源版 Claude Code 形态) | 工具表与权限、可替换模型后端 | 同站教程库《opencode》 |
| OpenHands | 云端通用 Agent 平台 | 沙箱化的工作区(每会话一个隔离环境)、多 agent 协作 | 同站教程库《OpenHands》 |
| hermes | 常驻型 agent 框架 | 事件驱动循环、hook 机制 | 同站教程库《hermes》 |
| smolagents | 极简教学向 agent 库 | 最小循环与最少抽象,百行级读懂 agent 本质 | 同站教程库《smolagents》 |
| agentscope-java | Java 生态的多 agent 工程 | 企业栈内的 harness 工程化 | 同站教程库《agentscope-java》 |
💡 选参考项目的顺序建议:先读 smolagents(一两个下午能读完,建立"agent 本质是个循环"的体感),再读与你的定位最像的那一本——做终端产品读《opencode》,做平台读《OpenHands》。一次只读一个,带着六组件对照表去读。
这张表的读法:定位决定组件权重。终端编码类把功夫花在工具与权限;平台类(OpenHands)把功夫花在沙箱与多租户;教学类(smolagents)把功夫花在"用最少的代码展示循环本质"——没有一个项目在六组件上全面领先,因为它们的定位不同。这也再次说明:harness 工程的核心不是"堆全组件",而是"在你的定位上把关键组件做到位"。
⚠️ 别把 star 数当设计质量。OpenClaw 的 39 万 star 证明"harness 产品力"的市场需求,不等于它的每个组件都是最佳实践——增长最快的项目往往在安全默认值上欠债(社区已有大量讨论)。读开源样本的正确姿势:学它的结构与取舍,审它的默认值。
本章两个小节共解剖了五类样本:Claude Code(权限派)、Codex CLI(隔离派)、OpenClaw(常驻 + 网关派)、OpenHands(平台派)、smolagents(教学派)。形态五颜六色,但都绕着第 1.3 节那六格转。下一节把全部样本放进一张对照表,把"人人都有的"(必修课)与"各有各选的"(设计空间)分拣出来——常驻形态的加入让对照更有意思:它的六格填法与终端形态几乎处处不同,却一格不缺。
样本足够多了。下一节把它们排进一张对照表:哪些组件是所有 harness 的必答题,哪些是各家自由发挥的选择题——这份"共性骨架"将直接决定本书余下章节的路线。
延伸阅读:同站教程库《hermes》《OpenHands》。