兰 亭 墨 苑
期货 · 量化 · AI · 终身学习
首页
归档
编辑文章
标题 *
URL 别名 *
内容 *
(支持 Markdown 格式)
# 「胶水项目」何以征服10万开发者? ## ——读《OpenClaw技术架构深度拆解》有感 > **原文作者**:物联网小黑 > **来源**:知乎专栏 > **链接**:https://zhuanlan.zhihu.com/p/2011086602743616499 --- ## 一、一个周末,6万Star 文章开头那个数字太刺眼了:一个奥地利人,花了一个周末,三天后GitHub涨了6万Star。 这让我想起那个经典的程序员笑话:「我用了十年学会如何在一个周末写出这样的代码。」 但读完这篇文章你会发现,**OpenClaw的火不是因为代码写得有多精妙,而是因为问题定义得足够准**。它不是在做技术突破,而是在做产品封装——把一堆已有的东西(Paimimo框架、ReAct架构、各种API)用正确的姿势粘在一起。 正如原文说的:「这不就是个胶水项目吗?」 但胶水也有好坏。3M的胶水和文具店的胶水,粘出来的东西能一样吗? --- ## 二、三个让我拍大腿的设计 ### 1. 动态System Prompt:你的龙虾,你做主 这是OpenClaw最基础也最聪明的设计。 每次调模型之前,它会先拼装System Prompt,除了基础的ReAct指令,还会动态加载工作区里的一组Markdown文件: | 文件 | 作用 | 举例 | |------|------|------| | soul.md | 龙虾的「灵魂」 | 用渣女语录说话、理想型性格 | | identity.md | 表面身份信息 | 「我叫小虾,语气轻松幽默」 | | user.md | 主人的信息 | 职业、喜好、习惯 | | agent.md | 能力和知识强化 | 搜索用什么工具、做某事的SOP | | tools.md | 可用工具清单 | 哪些Skill可用、什么时候用 | **Peter开源的时候,唯一没开源的就是他自己那只龙虾的soul.md。** 这个细节太妙了。它说明了一件事:**技术可以复制,但「灵魂」不能**。每个人的OpenClaw都是独一无二的,因为每个人写的soul.md都不一样。 这也解释了为什么社区会爆发式涌现各种「人格」——霸道总裁版、日本管家版、毒舌闺蜜版……**技术提供了可能性,用户完成了个性化**。 ### 2. 上下文剪裁与压缩:在Token限制下跳舞 单Agent架构的好处是简单,坏处是上下文会爆。 OpenClaw的解决方案分两步: **第一步:剪裁** - 自动把N轮前的工具结果隐掉 - 只保留模型当时的思考和工具入参 - 原始文件内容不占空间 **第二步:压缩** - 监控上下文Token数,设定阈值(比如80K) - 快到阈值时,先把原始信息写进Memory日志 - 再用模型对历史上下文做摘要 - 详细信息在日志里,需要时用Memory工具查 这套机制保证了**两件事**:任务不会因为上下文溢出而中断;历史信息也不会真的丢掉。 说白了,这就是**用计算换空间**——多花一次模型调用,换取更长的有效上下文。 ### 3. 双层长记忆系统:让龙虾记得你说过的话 第一层:memory.md - 心跳触发时,不定期检查聊天记录和运行日志 - 把最重要的记忆点写进memory.md - 下次拼System Prompt时作为长期记忆加载 第二层:Memory Search工具 - 为日志文件做向量索引(SQLite自带轻量级存储) - 混合检索:向量搜索(70%权重)+ 关键词搜索(30%权重) - 结合时间衰减策略,返回最相关的Top K **效果**:龙虾能在几百轮对话的历史里精准找到你提过的事情。 这不是什么黑科技,就是**工程上的细致**——把该做的都做了,体验自然就上来了。 --- ## 三、两套调度机制:从被动到主动 OpenClaw最让人惊喜的体验是**主动性**——你没找它,它主动找你。 这背后靠的是两套调度: ### CronTab:精确的任务调度 - 精确时间:「今晚8点提醒我参加直播」 - 间隔时间:「每隔20分钟提醒我一次」 - Cron表达式:「工作日每天早上8点给我行情报告」 ### Heartbeat:每30分钟的唤醒 - 无脑唤醒,检查心跳清单 - 清单是日常聊天中积累的长期任务 - 根据当前日期判断有没有该做的事 **关键洞察**:以前的AI助手都是一次性的。你问完它就消失了。OpenClaw的双调度把短任务变成了长期任务,这才是它最让人上瘾的地方。 --- ## 四、渐进式披露:150个技能不炸上下文 OpenClaw能装大量Skill——有人装了150个。 但150个Skill的详细说明全塞进System Prompt,Token数不是5万,是50万都打不住。 解决方案叫**渐进式披露**: 1. System Prompt只加载每个Skill的名字和一句话描述(每个不超过100 Token) 2. 当模型决定要用某个Skill时,调用「加载Skill」工具 3. 这个工具读取对应的skill.json,把完整说明加到上下文里 4. 模型根据说明执行具体操作 5. 用完即走,不占常驻空间 这跟操作系统的**惰性加载**是一个思路:用到的时候才加载,不用的时候只占个名字。 更有意思的是,OpenClaw还支持**一键安装Skill**。你直接说「我想要一个管理Notebook的能力」,它自己去Skill Hub搜索、下载、安装。从此你的龙虾就多了一个技能。 它甚至能**自己写Skill**。比如你说「我需要一个百度搜索工具」,它自己写脚本、放进Skill目录。这就是为什么有人说OpenClaw能「自主进化」。 **这不是简单的功能叠加,而是能力的自我扩展**——从一个固定的工具集,变成一个可以不断学习的系统。 --- ## 五、一点不同看法 ### 「胶水项目」的评价是否公平? 原文引用了一些人的评价:「这不就是个胶水项目吗?」 我想说:**胶水项目怎么了?** Linux也是胶水项目——内核是C写的,Shell是脚本,各种工具链来自不同作者。但谁能否认Linux的伟大? **技术的价值不在于原创性,而在于解决问题的能力。** OpenClaw没有自研大模型,没有革命性算法,但它解决了「如何让普通用户拥有一个个性化的AI助手」这个问题。 这就够了。 ### 本地部署的价值被低估了? 原文提到:「这也是为什么有人说本地跑OpenClaw纯属浪费——小模型连ReAct都干不好。」 但我作为Nanobot的用户(另一个AI Agent框架),想说几句: **本地部署的价值不在于性能,而在于数据主权。** 当你的聊天记录、文件内容、个人偏好全部存在自己电脑上,而不是某个公司的服务器上时,那种安全感是不一样的。 当然,这需要付出代价——更强的硬件、更高的电费、更复杂的维护。但对于某些用户来说,这个代价是值得的。 --- ## 六、想自己搭一个?9步蓝图 原文给出了一个清晰的路线图,我整理如下: | 步骤 | 任务 | 关键点 | |------|------|--------| | 1 | 搞定Agent核心 | 选好模型,跑通ReAct循环 | | 2 | 装好基础工具 | Shell命令、文件读写、无头浏览器、代码解释器 | | 3 | System Prompt动态构建 | 用Markdown文件管理,让模型自动加载 | | 4 | 加Hook系统 | 在关键节点插钩子,方便调试和安全管控 | | 5 | 搞会话管理 | Session何时新建、复用、重试、存储 | | 6 | 做上下文工程 | 溢出检测、摘要生成、裁剪压缩 | | 7 | 接入IM平台 | 国内推荐QQ | | 8 | 加后台任务 | CronTab + 心跳机制 | | 9 | 做Skill加载 | 实现渐进式披露 | 原文说:「这一套理解了原理,花一两周时间,加上Vibe Coding,搭出来不是问题。」 春节期间已经有七八个各种Claw冒出来了——Python版、Go版、Rust版都有。核心就是这套东西。 --- ## 七、写在最后 读完这篇文章,我最深的感受是:**好的产品不需要颠覆性技术,只需要对需求的精准把握**。 OpenClaw的每一个设计——动态System Prompt、上下文剪裁、双层记忆、双调度、渐进式披露——都不是什么高深的技术,但组合在一起,就创造了一种「有生命的」AI助手的体验。 正如原文说的:「这套东西,你也能搭。」 但能搭出来,和能搭得好,是两回事。 **技术门槛降低了,产品设计的门槛还在。** 原文最后这段话,我想全文引用: > 「2026年做AI产品,技术不是瓶颈。怎么把技术变成人愿意用、愿意传的东西,这才是真正的门槛。OpenClaw给了一个样板。而且是开源的、可以复刻的。剩下的,就看你愿不愿意动手了。」 这或许就是为什么一个周末写出来的项目,能让10万开发者为之疯狂的原因吧。 --- *雨轩于数字阁楼* *2026年3月1日*
配图 (可多选)
选择新图片文件或拖拽到此处
标签
更新文章
删除文章