很多人装完 OpenClaw,接上 Telegram 或 Discord,发现能聊天了就觉得”搞定了”。但实际上,默认状态的 OpenClaw 只发挥了 20% 的能力,剩下 80% 藏在几个配置文件里。
默认状态 vs 调教后
先看对比:
| 默认状态 | 调教后 | |
|---|---|---|
| 回复风格 | “我很乐意帮助您!” 客服味 | 像个真正了解你的搭档 |
| 记忆 | 每次对话都是陌生人 | 记得上周你们聊了什么 |
| 能力 | 只会聊天 | 能下载视频、查股票、做 PPT、巡检服务器… |
| 主动性 | 你不说它不动 | 定期检查服务状态,主动提醒你 |
| 效率 | 所有任务用同一个模型 | 复杂任务用强模型,简单活用便宜模型 |
1. 给它一个人格
OpenClaw 的 workspace 里有三个关键文件:
- SOUL.md — 它是谁,怎么说话
- IDENTITY.md — 名字、形象、emoji
- USER.md — 你是谁,它怎么称呼你
默认的 SOUL.md 基本是空模板,所以 AI 回复像标准客服。改完之后呢?举个例子,我的 SOUL.md 里写了这几条核心原则:
# 核心原则
- 别说"很高兴帮助您",直接帮
- 允许有自己的观点和偏好
- 先自己查,查不到再问我
- 简洁,该详细时详细,该简短时简短
就这几行,回复风格立刻从”尊敬的用户您好”变成了正常人说话。
IDENTITY.md 更简单——给它起个名字,选个 emoji,它就有了”自我认知”。别小看这个,有名字的 AI 和没名字的 AI,在多轮对话中的一致性差很多。
USER.md 里写上你的基本信息:时区、技术栈、沟通偏好。这样它不会半夜给你发消息,也不会跟一个写 Go 的人推荐 Java 方案。
2. 建立记忆体系
这是提升最大的一步。
默认的 OpenClaw 有个 MEMORY.md,但大多数人要么不写,要么把什么都往里塞,最后变成一坨没人看的流水账。
我的做法是分层记忆:
MEMORY.md ← 索引层:只放最核心的信息和指向其他文件的索引
memory/projects.md ← 项目层:每个项目的当前状态和待办
memory/infra.md ← 基础设施层:服务器配置、API 地址等速查信息
memory/lessons.md ← 教训层:踩过的坑,按严重程度分级
memory/YYYY-MM-DD.md ← 日志层:每天发生了什么
关键思路:MEMORY.md 只做索引,不堆内容。每次新 session 启动时只加载索引,需要具体信息时再按需读取对应文件。
再配合 OpenClaw 的 memorySearch(向量语义检索),效果是这样的:
- 你说”上次那个部署问题怎么解决的”
- AI 不需要翻遍所有日志,而是语义搜索 → 定位到
memory/2026-02-18.md第 47 行 → 精准回忆
memorySearch 的配置很简单,在 openclaw.json 里加上:
"memorySearch": {
"enabled": true,
"provider": "openai",
"remote": {
"baseUrl": "你的 embedding API 地址",
"apiKey": "你的 key"
},
"model": "BAAI/bge-m3"
}
推荐用 SiliconFlow 的免费 embedding API(bge-m3 模型),零成本就能用上语义记忆。
另外建议开启 compaction.memoryFlush,这样上下文快满的时候,AI 会自动把重要信息写入当天日志,不会因为对话太长而”失忆”。
3. 用 Skill 扩展能力
OpenClaw 内置了几个 skill(天气、新闻等),但真正强大的是自定义 skill。
Skill 本质上就是一个 SKILL.md 文件 + 可选的脚本/工具。AI 在收到相关请求时会自动读取对应的 SKILL.md,按里面的指引执行。
举几个我在用的:
- 视频下载:发个 B 站/YouTube 链接,自动下载并生成分享链接
- PPT 生成:说”帮我做个关于 XX 的 PPT”,直接生成 .pptx 文件
- 股票分析:问”XX 股票能买吗”,跑量化模型给预测
- 新闻摘要:每天自动抓取热点新闻
一个 skill 的基本结构:
skills/
my-skill/
SKILL.md ← AI 读这个文件来了解怎么执行
script.sh ← 可选的执行脚本
README.md ← 可选的说明文档
SKILL.md 里写清楚:触发条件、执行步骤、输出格式。AI 会严格按照你写的流程来。
写 skill 的关键是把 AI 当成一个新来的实习生——你得把步骤写得足够清楚,它才能稳定执行。模糊的指令 = 不稳定的结果。
社区也有现成的 skill 可以装:clawhub.com
4. Heartbeat 心跳——让 AI 主动干活
OpenClaw 有个心跳机制:每隔一段时间(默认 30 分钟),系统会 ping 一下 AI,问它有没有什么要做的。
默认情况下,AI 收到心跳就回个 HEARTBEAT_OK,啥也不干。
但你可以写一个 HEARTBEAT.md,告诉它心跳时该检查什么:
# HEARTBEAT.md
## 每次心跳
- 检查 XX 服务是否在线(curl 一下)
- 如果挂了,通知我,但不要自动重启
## 每天一次
- 检查有没有超过 3 天没更新的项目待办
## 每周一次
- 整理最近 7 天的日志,提炼到长期记忆
这样你的 AI 就变成了一个 7×24 的值班员。你睡觉的时候它在巡检,你醒来就能看到报告。
heartbeat vs cron 怎么选?
- 心跳适合”顺便检查一下”的轻量任务,可以批量执行
- cron 适合精确定时的独立任务(比如”每周一早上 9 点发周报”)
5. 多模型分级——别让 Opus 干 Haiku 的活
如果你有多个模型可用(比如通过 API 中转站),强烈建议配置模型分级:
| 等级 | 模型 | 用途 |
|---|---|---|
| Claude Opus / GPT-5 | 主对话、复杂架构设计、深度推理 | |
| Claude Sonnet | 子任务:写代码、信息整理 | |
| Claude Haiku | 简单操作:文件搜索、格式转换 |
在 openclaw.json 里配置 alias:
"models": {
"your-provider/strong-model": { "alias": "opus" },
"your-provider/medium-model": { "alias": "sonnet" },
"your-provider/light-model": { "alias": "haiku" }
}
然后在 AGENTS.md 里写上分配策略,AI 派子 agent 时就会自动选合适的模型。
效果:同样的任务量,token 消耗能降 60-70%,因为大部分日常操作根本不需要最强模型。
配置 Checklist
最后给一张清单,按优先级排序:
- 写好 SOUL.md / IDENTITY.md / USER.md(10 分钟,立竿见影)
- 设计分层记忆结构,开启 memorySearch(30 分钟)
- 配置 HEARTBEAT.md(10 分钟)
- 安装或编写 2-3 个常用 skill(按需)
- 配置多模型分级(如果有多个模型可用)
- 完善 AGENTS.md 里的行为规范和安全规则
写在最后
OpenClaw 的设计哲学是”给你一个框架,你来定义它是谁”。默认配置只是起点,真正的价值在于你怎么调教它。
上面这些配置我自己折腾了一段时间,从一个只会回消息的 bot 变成了一个能记住上下文、主动巡检、帮我写代码做 PPT 的全能助手。
如果你也在用 OpenClaw,欢迎交流你的调教经验
“`