伯克利-自主系统设计原则:OpenClaw
1.LLM发展的三个阶段1.1 阶段0纯粹的下一词预测器时间节点2019年左右代表工作Google BERT、OpenAI GPT-1/2/3、Google LaMBDA核心机制输入一组 token →Transformer 输出下一个 token运行原理循环调用 Transformer每次生成一个 token逐字构建句子输入: My name is → 模型预测下一个 token概率最高的词 例: Alex 或 Steve 或 Sarah1.2 阶段1微调后的助手2021-2022年核心变化给预训练 LLM 提供大量助手-人类对话样本进行微调效果模型倾向于以助手身份回答 → 催生 ChatGPT 等聊天界面本质还是在做补全只是风格更适合对话1.3 阶段2受限智能体2020-2023年特点LLM 额外工具通过静态编排工作代表Google AI Overview、LangChain、AutoGen局限流程预先定义好智能体只是按顺序执行一系列步骤1.4 阶段3自主智能体2025-2026年← 当前阶段核心特征动态发现工具 动态编排代表OpenClaw、Claude Code关键突破能自我修改、自我学习1.5 Agentic Loop 本质所有系统的本质 调用大模型OpenAI/Gemini/Anthropic等唯一区别 给到的上下文contextHarness 打包上下文 确保调用时具备所需上下文二、OpenClaw 架构OpenClaw 是一个**通用的封装层**专门用来与现实世界交互具备丰富的背景信息能连邮箱、电话24小时不休息能越用越聪明自我进化2.1 三层核心架构┌─────────────────────────────────────────────────┐ │ 连接器层 (Connectors) │ │ - WhatsApp / Gmail / Discord / iMessage │ │ - 提供用户与智能体的交互接口 │ ├─────────────────────────────────────────────────┤ │ 网关控制器 (Gateway Controller) │ │ - 消息路由、绘画管理、安全性 │ │ - Session管理、内存管理、配置管理 │ ├─────────────────────────────────────────────────┤ │ 智能体运行时层 (Agent Runtime) │ │ - 调用LLM、构建上下文、执行工具 │ │ - Provider模型服务商 │ │ - Tools工具、Skills技能 │ └─────────────────────────────────────────────────┘三、连接器层3.1 工作原理以 WhatsApp 为例用户扫码登录 → 生成唯一识别令牌存储在电脑上OpenClaw 模拟 WhatsApp 网页版客户端带上令牌请求新消息 → 伪装成正牌客户端获取消息将消息传递给 OpenClaw 处理3.2 两种配置方式配置方式说明风险绑定私人手机号和邮箱能看到所有内容、代表用户发消息隐私风险高配置专属手机号和邮箱隔离更安全推荐做法上下文信息较少3.3 访问管理后台OpenClaw 管理界面可以查看和管理所有连接渠道。四、网关控制器层4.1 SessionSession可以类比操作系统中的**进程**概念特性类比独立上下文进程有独立内存空间强制隔离进程隔离独立权限进程权限控制可在沙箱中运行进程沙箱进程间通信机制IPC进程间通信每个 Session 可以生成多个智能体类比一进程多线程默认有一个核心智能体可衍生协作智能体主 Session通过界面访问权限为管理员级别心跳 Session特殊系统 Session4.2 心跳机制Heartbeat触发频率默认每30分钟可配置更短 工作流程 1. 心跳 Session 被唤醒 2. 将 heartbeat.md 内容 历史记录 发送给 LLM 3. 智能体自行决定需要检查什么 4. 发现异常 → 发送跨 Session 消息唤醒其他 Session 处理场景“我去瞄一眼实验进度”“顺便查下邮件”发现异常立即处理4.3 Cron 任务调度为什么需要 Cron如果让程序一直跑着等待执行时间点效率极低每秒轮询检查时间Cron 解决方案将任务配置存下来“特定时间点唤醒休眠程序”支持循环任务每天早上9点每周三早上9点每月第二个周三早上7:30OpenClaw 应用用户需求每天早上9点发送最新论文摘要 OpenClaw 处理流程 1. 创建一个专门处理此任务的 Session 2. 用 Cron 工具设置定时任务每天8:55启动 3. 任务启动后花5分钟下载论文、处理总结 4. 9:00 发送邮件给用户4.4 两种时间机制配合机制用途触发方式Cron固定时间点执行定时触发Heartbeat突发情况、自行安排检查被唤醒后主动检查两者结合 → 产生像人一样的自主4.5 记忆管理基于向量数据库存储过往对话和文档每天结束时生成每日总结文档让智能体能跟进正在处理的事项上下文4.6 消息路由北向接口负责将消息从连接器路由到对应的 Session每个用户/每个 Discord 频道 可以对应不同 Session方便上下文管理五、智能体运行时层5.1 核心组件┌─────────────────────────────────────────┐ │ Agent Runtime │ ├─────────────────────────────────────────┤ │ Provider模型服务商 │ │ - OpenAI / Anthropic / Google 等 │ │ - 可配置本地开发机 │ ├─────────────────────────────────────────┤ │ Tools工具 │ │ - 内置工具、MCP工具、自动生成的LSP工具│ ├─────────────────────────────────────────┤ │ Skills技能 │ │ - Anthropic 定义的开放标准 │ │ - Markdown 格式的任务菜谱 │ └─────────────────────────────────────────┘六、工具Tools6.1 内置工具列表从 OpenClaw GitHub 可见的工具类别工具说明文件操作Read, Edit, Write文件读写编辑搜索Web search网页搜索浏览器Browser含 Chromium浏览器自动化命令执行Bash/Shell (exec)服务器命令行工具进程通信Inter-agent messagingSession 间通信图片生成专用图片生成工具无需调用外部 APIMCPMCP tools用户自定义工具代码智能LSP toolsIDE 级别的代码理解6.2 LSP 工具代码智能自动生成的工具提供 IDE 级别的智能体验定义跳转鼠标悬停在函数名上 → 跳转定义引用查找右键选择查找引用代码补全智能代码建议底层实现扫描代码构建抽象语法树AST遍历语法树建立索引和关系模拟编译器课上学到的代码分析逻辑6.3 命令行工具exec/bash智能体通过这个工具与本地电脑的底层程序交互是最常用的工具之一。七、技能Skills7.1 Skills vs Tools 的区别维度ToolsSkills本质具体可执行的工具文本描述的菜谱定义代码实现Markdown 文件用途执行具体操作告诉智能体什么场景该做什么、怎么做维护需要技术人员非技术人员也能写7.2 Skills 协议来源Anthropic 开发的开放标准现已开源被多家公司采用本质给 LLM 的纯文本说明书7.3 Skill 文件结构# 头部Header name: dice-roll description: 掷骰子技能演示 # ← 仅这部分会被放进调用 LLM 的上下文 --- # 正文Body ## 具体操作流程 如果用户需要掷骰子 1. 使用 bash 工具执行命令 2. 命令生成随机数作为骰子结果7.4 三层架构层级文件内容何时读取第一层skill.md头部name、description调用 LLM 时立即读取第二层skill.md 正文操作流程智能体决定可能需要这个技能时读取第三层关联文件示例、脚本、资源第二层读完确定使用该技能时读取7.5 上下文限制默认最多放150 个技能或3 万字符超出时智能过滤、精简到少量这是智能体运行时的核心职责之一7.6 示例1Password Skill包含内容 - 如何配置 1Password - 如何使用 - 各种工作流配置 - 2FA 使用规范 - 安全操作规范 工作方式 当智能体决定需要通过 1Password 操作时 → 自动加载此技能 → 按照步骤执行7.7 skill生态Anthropic Skills 仓库约46,000 GitHub stars类型涵盖浏览器、办公效率、任务处理、Web 代理、网络搜索等7.8 为什么 Skills 火了管用文本指令比代码更容易被 LLM 理解和遵循门槛低非技术人员也能写不需要懂代码八、配置文件OpenClaw 的配置文件都是原始 Markdown 文件供智能体直接调用。8.1 四个核心文件文件用途内容示例user.md用户信息姓名、时区、邮箱、论文署名、研究方向、爱好等soul.md智能体身份定义“你不是聊天机器人你在成为一个独立的存在”agents.md运作规则提醒记录、存储记忆、安全准则、提问注意事项tools.md工具使用技巧如何用好工具的窍门非具体工具列表8.2 bootstrap.md启动引导文件你刚醒过来是时候弄清楚你是谁了。 不要搞审问那一套随便从我是谁、你是谁开始。 你需要搞懂的就是这些。 然后你得去把身份、用户和灵魂这些文件配置好把它记下来。 祝你好运要做出点成绩。8.3 Soul.md# 这文件由你来演化 随着你搞清楚自己是谁... # 核心原则 - 这灵魂文件对性格稳定非常重要 - 否则行为完全取决于正在处理的内容 - 处理数学 → 像数学文本的风格 - 处理人文 → 有人文的价值观8.4 agents.md提醒智能体把东西记下来存进记忆安全准则提问时注意事项隐私和安全相关规则直接写在文件里九、上下文构造9.1 发送给 LLM 的实际文本结构┌─────────────────────────────────────────────┐ │ System Prompt │ ├─────────────────────────────────────────────┤ │ 你是个私人助手 │ │ 你有的工具Read, Edit, Write, Bash, Search │ │ 建议启动子智能体 │ ├─────────────────────────────────────────────┤ │ Tools 声明 │ ├─────────────────────────────────────────────┤ │ 安全规则OpenClaw 内置安全措施的全部 │ ├─────────────────────────────────────────────┤ │ Skills 头部智能过滤后最多150个/3万字符 │ ├─────────────────────────────────────────────┤ │ 记忆工具调用建议 │ │ 如果在做可能用到记忆的事去试试... │ │ 可选非强制 │ ├─────────────────────────────────────────────┤ │ 工作空间/工作目录信息 │ ├─────────────────────────────────────────────┤ │ 心跳机制信息 │ ├─────────────────────────────────────────────┤ │ 额外配置信息 │ └─────────────────────────────────────────────┘十、扩展性设计OpenClaw 成功的核心原因之一全面支持插件扩展扩展点说明Connectors社区贡献了大量连接器Memory内存管理插件Provider支持任何模型服务商Tools工具扩展Skills技能扩展自我发现机制智能体可以自己去寻找、安装需要的技能默认会询问用户是否同意可以配置为自由探索找到有用的就装这种自我发现能力是典型的**代理性自主行为**。十一、部署11.1 算力需求分析OpenClaw 对算力要求非常低大部分计算交给大模型厂商处理主要工作把信息打包成上下文不需要大存储、不需要超快处理器11.2 对比方案优点缺点托管虚拟机AWS/GCP简单省心需要自己维护Exo Dev简单、每月$20、50台持久VM单台存储上限20GB本地机器完全控制配置复杂、成本高11.3 推荐Exo Dev联合创始人来自 TeleK配置如 Tailscale 一样简单安全访问像本地一样操作每台 VM 存储上限 20GB适合大多数场景11.4 本地机器配置Mac Mini M4 Ultra - 2TB SSD - 64GB 内存 - 多核处理器注配置较复杂且成本高需小心管理网络安全11.5 混合方案日常用 Exo Dev VM高算力任务让 OpenClaw 抢占云端 GPU 机器给智能体配上 OpenAI API Key让它预分配带 GPU 的虚拟机十二、使用界面与 Discord 集成12.1 为什么用 Discord相比单次对话Discord 解决了上下文混乱问题单次对话Discord 解决方案多话题挤在一条聊天串每个频道独立对话历史消息漏掉、被忽略按话题归类清晰可见心理负担重上下文分离12.2 Discord 示例# 主频道 - 和智能体聊不同话题 # 并行项目频道 - 数学动画视频 → 直接传 YouTube - 实验室网站开发 - 研究想法实验 # Luigi另一智能体 - 配置了云 GPU 权限 - 测试部署 JAMA小模型 - 最大化推理速度、token 生成率优势所有任务可以并行推进OpenClaw 能分开管理上下文。十三、集成工具13.1 环境工具Environment Tools直接使用服务器命令行工具如Exo Dev CLI 启动新虚拟机Claude Code 通过 API key 登录13.2 Google Workspace 集成Google 发布的官方集成只需登录认证一次支持工具读写 Google Docs幻灯片、表格联系人邮件、聊天各种 Google 服务效果网络能力超强可生成实验报告、图表、文档并分享13.3 MCP Server支持通过 MCP 协议添加工具13.4 1Password 技能包含操作步骤和安全规范十四、智能体间通信14.1 专属邮箱方案给智能体配专属邮箱可以和其他智能体或真人通信14.2 场景1. 朋友发邮件附带自己智能体的技能 2. 我的智能体收到 → 分析技能 3. 智能体问我你觉得这些技能怎么样 4. 我说喜欢 5. 智能体自动安装 安全限制松 → 可以自己安装这是攻击入口也是强大能力14.3 未来**专家智能体之间直接交流合作**解决复杂问题十五、安全性15.1 质疑与思考“这东西谁会用怎么用”“现实世界太复杂无法形式化安全管理”15.2 类比你能骗过任何员工钓鱼邮件就是例子解决方式培训 常识推理15.3 OpenClaw 的安全策略内置安全规则写在 agents.md 中足够聪明的模型能识别被套路场景太离谱时会察觉异常15.4 关键不再需要建立形式化的安全模型 → 依靠足够聪明的模型自己做出合理选择 → 这种发展趋势正在占上风十六、实例1自动建网站任务让智能体做一个解释注意力机制的网站结果生成交互式网站公开可访问部署在云服务器全程零人工干预自主完成流程通过命令行创建 VM本地写好网站部署到公网绑定端口通知用户上线注真正的端到端自主不是生成漂亮代码。2ML 研究复现任务复现论文实验测试能否做出更好的 ML 方案流程写 ML 流程远程跑训练盯着过程修 bug出图表和报告3全自动 YouTube 频道配置给智能体 Google 账号权限专门创建的 YouTube 频道账号智能体自主完成频道封面设计主页头像频道名称和简介生成视频脚本用 3Blue1Brown 的 manim 库做动画调用 OpenAI TTS API 生成语音用 FFmpeg 拼接素材上传 YouTube结果生成了31 个视频示例关于 CAN 网络的论文解释如何去中心化又高效地搜索文件使用生动的比喻和可视化语音和画面完全由智能体生成十七、思考17.1 代码质量 vs 设计质量“看这代码之后我觉得代码质量已经不重要了。单看代码本身写得很烂。”“但在 Google 写这代码早就滚蛋了根本别想合进主干。”结论实现抽象不再重要设计抽象依然很重要设计 实现17.2 要素让 OpenClaw 变得神奇的核心设计要素作用时间维度能安排任务、定时唤醒、自我配置循环性怪圈Gödel, Escher, Bach自我配置智能体通过调 LLM 配置自己17.3 怪圈Douglas Hofstadter《哥德尔、埃舍尔、巴赫》提到的循环性让系统无法分清起点智能体通过调 LLM 变成配置自己的接口这种循环非常特别17.4 飞轮效应自我发现 → 自我配置 → 更强能力 → 更多自我发现 → 飞轮效应即将爆发17.5 未解决的问题问题思考下一层封装是什么可能需要**可塑架构的系统**架构本身能否进化OpenClaw 固定架构但能编辑自己的配置自定义智能体的边界在哪改底层框架才算自己的用 Claude Code 交互算吗模糊场景如何解决足够聪明的模型能像人一样思考理解上下文“如果智能体够聪明能像人一样思考同样的问题他能回答得更清楚。前提是他得懂上下文这样表现才好。”十八、总结18.1 OpenClaw 设计原则原则实现方式自主性标准智能体循环持续推进时间掌控Heartbeat活跃感 Cron规划未来灵活性所有关键组件提供插件接口个性化Skills 和 Tools 增强功能18.2 三层架构连接器层用户接口 ↓ 网关控制器Session管理、内存管理、Cron、配置 ↓ 智能体运行时Provider、Tools、Skills18.3 扩展点Connectors连接器Memory内存管理Provider模型服务商Tools工具Skills技能18.4 展望未来半年将会看到更多有趣的自主系统这些设计原则将被嵌入到现实世界的各种系统中参考文献:Anthropic Skills 构建指南OpenClaw GitHub