← 返回作品集
tech

OpenClaw分享

简要地介绍下OpenClaw

OpenClaw与通用聊天机器人的核心差异

一、本质差异:执行代理 vs. 对话系统

1. 记忆机制

OpenClaw豆包/Kimi
本地文档+向量数据库上下文窗口
长期记忆存储短期对话记忆
个性化知识库会话内连续性
任务历史追踪无持久化存储

2. 执行边界

OpenClaw通用聊天机器人
系统控制权浏览器沙盒
直接操作系统资源纯文本交互
调用本地应用程序网络API调用受限
自动化流程执行无本地系统访问

3. 生态开放性

OpenClaw通用聊天机器人
可编程框架封闭产品花园
开放API接口固定功能集合
自定义工具扩展有限的外部集成
开发者生态建设平台控制的服务边界

二、交互模式差异

1. OpenClaw:意图 → 操作

  • 自然语言指令解析为具体动作
  • 多步骤任务规划与执行
  • 结果反馈与流程优化
  • 示例:"整理本周会议纪要并发送邮件"
  • 2. 通用聊天机器人:文本 → 文本

  • 问题与回答的直接映射
  • 信息检索与内容生成
  • 单轮或多轮对话
  • 示例:"什么是机器学习?"
  • 三、核心能力对比

    1. OpenClaw核心优势

    动手执行能力

  • 自动化重复性工作流程
  • 跨应用数据搬运与处理
  • 定时任务调度与监控
  • 系统集成深度

  • 本地文件系统操作
  • 桌面应用程序控制
  • 网络服务协同工作
  • 2. 通用聊天机器人核心优势

    内容生成质量

  • 创意文本写作
  • 代码编写与调试
  • 多语言翻译
  • 知识问答广度

  • 事实性信息查询
  • 概念解释与教学
  • 实时信息检索
  • 四、总结:互补的AI能力演进

    1. 技术范式差异

  • OpenClaw:行动导向的AI助手
  • 通用聊天机器人:交流导向的AI伙伴
  • 2. 应用场景定位

  • OpenClaw:个人生产力自动化、工作流程优化
  • 通用聊天机器人:知识获取、创意辅助、即时问答
  • 3. 发展趋势

  • 从"能说"到"能做"的AI进化
  • 两种技术路径的融合可能性
  • 用户界面从对话框向智能工作空间的转变
  • OpenClaw Memory 架构解析

    个人数据很重要。存储不仅是功能,更是其“本地优先”架构的命脉。它直接决定了系统的智能程度、安全边界和恢复能力。 目前相关研究很多,但方案都不完美。“谁先解决记忆问题,谁就赢得 24/7 Agent 的战争”。

    三层记忆模型

    ↓ Context(工作记忆)
       ↓ Compaction(短期记忆)
       ↓ Memory Files(长期记忆)
    plain text

    工作记忆(Context)

  • 定义:当前会话中模型能"看到"的所有内容
  • 包含:系统提示词、对话历史、工具调用结果
  • 限制:受 context window 限制,token 用完就需要压缩
  • 短期记忆(Compaction)

  • 触发条件:当工作记忆接近上限时自动触发
  • 机制:将旧对话总结成摘要,压缩后保存到会话历史
  • 特点:类似人类短期记忆,保留要点但丢弃细节
  • 长期记忆(Memory Files)

  • 形式:持久化的 Markdown 文件
  • 内容:存储决策、偏好、教训等需要长期保留的信息
  • 特性:唯一跨会话存在的记忆层
  • 核心文件结构

    ~/.openclaw/workspace/
    ├── MEMORY.md           # 策略性长期记忆(仅主会话)
    ├── memory/
    │   ├── 2026-03-21.md   # 每日日志
    │   ├── 2026-03-22.md
    │   └── 2026-04-25.md
    ├── AGENTS.md           # Agent 行为规范
    ├── SOUL.md             # 人格与语气
    ├── TOOLS.md            # 工具使用笔记
    ├── USER.md             # 用户信息
    └── HEARTBEAT.md        # 心跳检查清单
    plain text

    Context 管理:让 Agent 高效工作

    System Prompt 构建流程

    每次 Agent 执行任务时,OpenClaw 都会重新构建系统提示词,包含:

  • 工具列表与描述:Agent 能调用的工具(exec、read、write、browser 等)
  • Skills 元数据:已安装的技能名称、描述、文件位置(按需读取)
  • 工作区位置:当前工作目录
  • 时间信息:UTC 时间 + 用户时区转换后的本地时间
  • 运行时元数据:主机信息、模型名称、thinking 模式
  • Project Context:注入的工作区文件(AGENTS.mdSOUL.md 等)
  • Compaction 机制

    当会话接近 context window 上限时,OpenClaw 触发自动压缩:

  • 将早期对话总结为摘要
  • 保留最近的消息(默认保留后半部分)
  • 摘要写入会话历史,未来请求用它替代原始消息
  • 压缩前可执行静默的 memory flush:提醒 Agent 将重要信息写入 memory/ 文件 默认情况下以4:00为时间线,重置会话窗口
  • 构建高效的记忆系统

    文件分层策略

    基于实战经验的推荐分层:

    文件用途
    MEMORY.md策略性决策、长期偏好、重要教训
    memory/YYYY-MM-DD.md当日操作日志、临时任务
    TOOLS.md部署规则、工具配置
    AGENTS.md行为规范和工作流

    写入规则:什么时候写什么

    ✅ 写入 MEMORY.md 的内容:

  • 用户偏好(联系方式、工作时间、语言习惯)
  • 策略性决策("以后部署都要确认")
  • 经验教训("2026-03-13 配置错误导致服务中断")
  • 长期项目状态("xx项目进度 3/20")
  • ✅ 写入 memory/YYYY-MM-DD.md 的内容:

  • 当日任务与进展
  • 临时决策("今天先跳过测试,明天补")
  • 技术调研笔记
  • 待办事项
  • ❌ 不要写入记忆文件的内容:

  • 敏感凭据(API key、密码)→ 用 ~/.openclaw/credentials/
  • 临时计算结果("3 + 5 = 8")→ 下次重新计算即可
  • 工具输出的原始日志 → 太长,写总结即可
  • 核心原则:如果你希望 Agent 在下次会话中记住,就必须写文件。所谓的"心智笔记"不存在,文件是唯一的真相。

    检索优化:混合搜索 + 时间衰减

    默认检索机制(SQLite + 外接 Embedding 模型)

  • 混合检索:结合向量相似度(semantic)和 BM25 关键词匹配(lexical)
  • QMD 检索机制

    OpenClaw 支持用 QMD 替代内置的 SQLite 索引器:

    优势

  • 更强的重排序能力(语义相关性更高)
  • 可以索引 workspace 之外的文件
  • 支持会话历史索引(sessions.enabled = true
  • 缺点

  • 需要单独安装 QMD CLI(bun install -g qmd
  • 首次检索可能触发 GGUF 模型下载(较慢)
  • 增加维护复杂度
  • 使用建议: 对大多数用户,默认的内置 SQLite 检索已经足够。只有在以下情况考虑 QMD:

  • 有大量笔记(数万条)需要高精度检索
  • 需要索引多个目录(workspace + 其他文档库)
  • 愿意投入时间调试和优化
  • 外部供应商

    专注于这个场景的外部供应商,例如 mem09 等,可通过云服务或自托管 API 接入。 主要目标一致:准确找到相关信息,同时提供其他功能,例如跨机器同步数据,方便员工之间、Agent 之间的数据共享等。

    什么是 Agent?

    定义

    具备"感知-决策-执行"闭环的自主智能体,不仅是单次问答,而是能持续与环境互动、调用工具、完成复杂任务的"数字员工"。

    核心三要素

    大模型(大脑)

  • 推理与决策中枢
  • 不同Agent可配置不同模型(轻量任务用中小模型,复杂推理用大模型)
  • 技能(四肢)

  • Function Calling / MCP / API 工具集
  • 让Agent具备实际操作能力
  • 记忆(经验)

  • 短期Context窗口(会话级)
  • 长期沉淀(跨会话知识库)
  • 什么是Multi-Agent架构?

    分布式智能体系统,通过多个专业化Agent协同工作解决复杂问题。

    常见误解

    Multi-Agent不是万能解药。

    目标

    建立正确的架构选择决策框架。

    核心原则

  • 从最简单方案开始:只有在有明确证据时,才引入Multi-Agent
  • 优化单Agent的Prompt往往能达到相同效果
  • Multi-Agent适用于特定场景,并非默认选择
  • 3. 适用的场景

    3.1 场景一:上下文污染

  • 问题定义:子任务间的信息互相干扰
  • 解决方案:通过独立子Agent实现上下文隔离
  • 关键原则:通过通信共享上下文,而非通过共享上下文通信
  • 典型案例:多领域知识问答、多步骤推理
  • 3.2 场景二:并行探索

  • 问题定义:任务可拆分为多个独立方向
  • 性能收益:并行处理可使整体处理时间减少90%
  • 实现方式:3-5个子Agent同时探索不同路径
  • 应用案例:Claude研究功能、多方案对比生成
  • 3.3 场景三:工具过多或上下文太长

  • 问题定义:模型有个context anxiety特征(上下文窗口是有限的),单个Agent需管理20+工具时,准确率下降
  • 解决方案A:按领域拆分为专业化Agent
  • 解决方案B:Skill渐进式加载
  • 典型案例:复杂工作流自动化、多系统集成
  • 4. 不适用的三大场景

    4.1 场景一:编码任务

  • 原因:代码修改任务耦合度高
  • 可并行化部分有限:真正的并行机会少
  • 经验法则:涉及1-3个文件修改时,单Agent更快更便宜
  • 例外:大型代码库重构可考虑有限并行
  • 4.2 场景二:简单查询

  • 问题定义:低价值任务不值得额外开销
  • 缩放规则:简单事实核查用1个Agent,进行3-10次工具调用
  • 成本效益考量:评估任务价值与架构复杂度
  • 典型案例:单次API调用、简单数据查询
  • 5. Multi Agent注意事项

    5.1 任务指令设计

    必须极其具体,包含四大要素:

  • 明确目标:要达成什么结果
  • 输出格式:结构化输出要求
  • 工具范围:可使用哪些工具
  • 任务边界:什么不该做
  • 5.2 通信机制优化

  • 轻量级消息传递
  • 状态共享策略
  • 错误处理与重试机制
  • 5.3 性能监控

  • 延迟与成本跟踪
  • 质量评估指标
  • 自动化AB测试框架
  • 6. 总结与建议

    6.1 决策流程

  • 从单Agent开始
  • 识别具体痛点
  • 匹配适用场景
  • 渐进式引入
  • 6.2 最佳实践总结

  • 保持架构简单
  • 工具化而非人格化
  • 明确任务边界
  • 持续监控优化
  • 6.3 后续步骤

  • 评估当前项目
  • 识别改进机会
  • 制定实施计划
  • 记住:Multi-Agent是解决问题的手段,不是目标。只有当简单的单Agent方案无法满足需求时,才考虑引入更复杂的架构。

    OpenClaw Skill 机制指南


    第1页:Skill 基础概念与使用方式

    1. 什么是 Skill?

  • 定义:Skill 是 OpenClaw 的模块化功能单元,本质上是包含 SKILL.md 文件的目录,内含结构化指令和可选脚本。其实可以把skill看成一个App、Openclaw看成一个系统。
  • 核心作用:将特定能力(如操作浏览器、编写代码、管理日程)封装为"说明书",AI通过阅读Skill文件"学会"使用该工具
  • 规范标准:遵循 AgentSkills 开放标准(与GitHub Copilot Skills兼容),具备跨平台可移植性
  • 2. Skill 怎么用?

    安装方式

  • 市场安装(推荐)clawhub install <skill-name>npx clawhub@latest install <skill-name>
  • 手动安装:将Skill文件夹复制到指定目录
  • 加载优先级(高→低)

  • 工作区Skill<workspace>/skills/(当前Agent专用,优先级最高)
  • 全局Skill~/.openclaw/skills/(所有Agent共享)
  • 内置Skill:随安装包附带(优先级最低)
  • 使用机制

    OpenClaw在对话开始时自动扫描可用Skill,将Skill信息注入系统提示,Agent按需调用


    第2页:OpenClaw "必装" Skill 推荐

    根据社区热度和实用性,推荐以下 必装Skill

    类别Skill名称核心功能适用场景
    skill安全扫描skill-vetter扫描新装的skill是否有网络外发、是否读取敏感环境变量、是否写入系统目录、是否有可疑的base64解码
    自己复盘self-improving-agent它会自动记录你纠正过的错误、踩过的坑、反复提到的工作习惯。然后整理成"知识卡片",在后续任务中主动调用。
    智能摘要Summarize长文浓缩 · 要点提取 · 批量处理 · 多语言支持
    网络搜索搜索Tavily SearchAI 优化的搜索引擎,返回高质量、结构化的结果,专为 Agent 设计
    资讯聚合News Aggregator多源新闻聚合
    邮件管理email-manager拉取未读邮件、按条件搜索、生成摘要清单、代发邮件、提取邮件关键信息
    智能家居homeware-sense-skill统一环境感知框架,支持HomeKit、米家、MQTT、GPIO智能硬件集成

    注意

  • 目前openclaw的安全并不是非常好
  • 尽量在官网等可靠渠道安装skill
  • Skill不是越多越好(上下文占用),按需安装

  • 第3页:创建自定义 Skill 实战

    1. Skill 目录结构规范

    my-skill/ ├── SKILL.md # 核心文件:YAML frontmatter + 使用指令(必须) ├── README.md # 可选:详细文档 ├── scripts/ # 可选:辅助脚本(bash/python) └── templates/ # 可选:模板文件

    2. SKILL.md 文件编写规范

  • YAML Frontmatter:定义元数据(名称、描述、版本、作者、依赖)
  • 指令部分:详细说明Agent何时、如何、为何使用该Skill,包含:
  • 3. 创建流程(4步法)

  • 初始化:在 ~/.openclaw/workspace/skills/ 创建目录
  • 编写核心逻辑:撰写 SKILL.md,提取"Know-how"而非简单"Know-that"
  • 添加辅助脚本:如需复杂操作,编写可执行脚本并由Skill调用
  • 本地测试:通过工作区优先级机制立即生效,观察Agent执行效果
  • 或者使用skill creator这个skill创建skill(但是核心的想法和思路仍然需要用户提供)

    4. 发布与分享

  • 私有使用:之间放在本地或是自己的git仓库
  • 公司或团队使用:直接推送到公司的Git仓库,通过URL安装。Team或公司需要以skill的形式将流程或之前存在于人脑中的知识总结及沉淀下来,成为公司的数字资产。
  • 开源社区:之间通过相关命令安装,当前生态已有 2,800+ Skills
  • 设计原则

    保持Skill"原子化"(单一职责)、Token高效(避免冗余上下文)、包含明确的安全边界