OpenClaw保姆级教学(中级篇):从能用变为好用

OpenClaw保姆级教学(中级篇):从能用变为好用

很多人刚安装上OpenClaw第一个问题就是:为什么这么傻?背后原因是「能用」到「好用」之间差了三件事:记得住、找得到、断不了。


前言

很多人刚安装上OpenClaw第一个问题就是:为什么这么傻?

和传说中的怎么不一样?

其实背后的原因,既不是模型问题,也不是prompt问题。

是**「能用」到「好用」**之间差了三件事:

  1. 记得住
  2. 找得到
  3. 断不了

我把踩过的所有坑总结成了一套方法论,一件一件说。


一、记得住——记忆体系

你让Agent帮你学React,聊了一下午,它记住了你的进度、踩过的坑,下一步该学什么。

过几天你再问他,它全忘了——你是谁、学到哪了、昨天聊了什么,全部从零开始。

你得重新教它一遍,而且你也不知道为什么会这样。

每天花10分钟重复教Agent,一个月就是5个小时,全浪费了。

我的方案:三层记忆模型

层级名称存储位置作用
Tier 1信息层memory/learning/原始记录,只追加不删除
Tier 2知识层memory/YYYY-MM-DD.md每日提炼,工作日志
Tier 3智慧层MEMORY.md长期记忆,100行以内

灵感来自人类的记忆方式——你不会记住每天看过的所有文字,但你会记住提炼后的知识点,最终形成底层的思维模式。

7个核心文件

文件职责
AGENTS.md怎么工作(工作流程、操作规范)
SOUL.md我是谁(人格特质、核心原则)
USER.md我服务谁(用户偏好、决策模式)
TOOLS.md怎么操作(工具手册、配置说明)
MEMORY.md我记得什么(长期记忆、方法论)
ERRORS.md我在哪里失败过(错误记录、避坑指南)
SHARED.md团队共识(多Agent共享信息)

核心原则:一个信息只存一个地方。

血的教训

之前踩过的大坑——我的学习笔记 345KB / 8509行,被一次cron任务的write操作直接覆盖成了 9.9KB。

原因是我让Agent追加内容到文件,但模型选了write而不是edit

  • write = 覆盖整个文件内容
  • edit = 在指定位置追加

一个月的学习记录几乎全丢。

从此定下铁律:写入已有文件永远用edit追加,绝不用write覆盖。

这条规则现在写在每个Agent的ERRORS.md和SHARED.md里,所有Agent启动就知道。

Heartbeat:动态吸纳机制

Heartbeat是OpenClaw的定时触发机制,默认每30分钟执行一次。

记忆的动态吸纳不能光靠OpenClaw本身带的机制,需要更主动的整理。

我的做法:设置每6小时进行一次记忆深化整理,一天4次刚好覆盖工作时段。

整理流程

  1. 读取最近的日志文件
  2. 提炼到MEMORY.md/USER.md/ERRORS.md
  3. 清理过时信息

效果

搭好这套记忆体系之后,你的Agent能做到什么?

学习场景:你昨天学到React Hooks第三章,今天Agent自动知道,接着第四章学习

工作场景:你的代码风格偏好、项目架构约定,Agent永远记得,不用每次重复说

团队场景:新建一个Agent,它自动读取ERROR.md,第一秒就知道团队所有规矩和踩过的坑

不是Agent变聪明了,是你给了它一个不会丢的大脑,这才是OpenClaw的灵魂。


二、找得到——搜索决策树

记忆搭好了,但Agent还是会在搜索上反复栽跟头。

先说我当时有多混乱——OpenClaw里搜索工具一大堆:web_fetch、curl、browser,还有各种第三方的。

每次让Agent抓个网页,它就开始乱试:

  1. 用web_fetch → 失败(SSRF拦截了)
  2. 试图改配置绕过 → 系统异常
  3. 换curl → 成功了

同一个坑,Agent A踩了,Agent B还会再踩一遍。 每次搜索任务光试错就要花5-10分钟,浪费30-50%的Token。

关键认知

不要试图改底层配置,要建备用方案。

当时我试图在openclaw.json里加dangerouslyAllowPrivateNetwork来绕SSRF,不但没用,还搞出了系统异常。后来才知道SSRF保护是硬编码的,配置根本改不了

转折点是我发现了一个免费的全网搜索工具,装上之后自动变成OpenClaw Skill,所有Agent直接可用。

全网语义搜索、网页阅读、YouTube字幕提取,全部免费,不需要API Key。

搜索决策树

第一步判断:是否需要JS渲染或登录态?

情况方案
需要JS渲染/登录用browser
不需要用指定免费工具
工具失败按错误类型切换:SSRF拦截用curl,其他错误用web_fetch,都失败才上browser

特殊规则

  • GitHub搜索只能用browser
  • B站IP被封只能用browser
  • 自己的仓库用gh CLI

效果

  • 搜索任务从5-10分钟试错 → 不到1分钟直接命中
  • Token开销砍了一半

最有价值的不是决策树本身,而是背后的思路——我把它写进了SHARED.md

所有Agent启动时自动读取,踩过的坑,新建Agent第一秒就知道。

一个人踩过的坑,其他人不用再踩。


三、断不了——计划文件模式

记得住、找得到,但还有一个几乎没人提过的隐蔽问题。

你有没有遇到过这种情况:Agent在做一个复杂任务,做到一半突然问你——你让我做什么来着?

你以为是bug,重启了session,让它重新开始。又做到一半,又忘了。

不是bug,是OpenClaw的正常机制——context窗口有限,对话太长就会自动压缩,删掉旧的对话和工具结果来释放Token。

如果你的任务状态只存在对话里,压缩一次就全丢了。

解法

收到复杂任务时,先创建一个计划文件:temp/任务名-plan.md

文件结构

目标(一句话)
步骤列表(带checkbox)
当前进度
遇到的问题
下一步

每完成一步就更新文件,打勾。

Context被压缩时,文件不受影响——新session开始读取计划文件,接着上次的进度继续。

效果

你晚上睡觉,Agent在跑一个20步的任务。中间context压缩了3次,跨了2个session。

早上起来,它读完计划文件,接着昨天的第15步继续干,中间没丢任何进度。

你睡了一觉,Agent帮你干了一夜的活。

本质上这就是把短期记忆(context)里的关键状态,外化到长期存储(文件)里。

和三层记忆模型的逻辑一样:重要的东西不能只存在会消失的地方


总结

三个模块讲的是三件事,但底层是同一个道理:

问题解决方案
记得住三层记忆模型 + 7个核心文件
找得到搜索决策树 + SHARED.md
断不了计划文件模式 + Heartbeat

中级篇完整内容

  • 记忆架构:7种信息实时写入规则 + 每个文件的配置模板 + Heartbeat完整代码
  • 搜索与决策:决策树每个分支的参数配置 + 6层产品思维模型
  • 协作机制:SHARED.md完整模板 + 广播代码 + 计划文件自动化
  • 实战:4个完整场景演示 + 各工具详细用法 + 8个Q&A

一共13个主题,每个都有代码块和配置可以直接抄。


高级篇方向:自定义Skill开发、MCP集成、STATE.yaml项目管理、目标驱动自主任务、性能优化和hook应用

← 返回首页