第一章:配置与调教——让 AI 变成你的人
OpenClaw 的 workspace 里有三个关键文件:SOUL.md、IDENTITY.md、USER.md。默认的 SOUL.md 基本是空模板,所以 AI 回复你的时候像个标准客服。改完之后?回复风格立刻从"尊敬的用户您好"变成了正常人说话。
1. 定义人格
默认 SOUL.md 基本是空模板,所以 AI 回复你的时候像个标准客服。举个例子,我的 SOUL.md 里写了这么几条核心原则:
# 核心原则 - 别说"很高兴帮助您",直接帮 - 允许有自己的观点和偏好 - 先自己查,查不到再问我 - 简洁,该详细时详细,该简短时简短
就这么几行,回复风格立刻从"尊敬的用户您好"变成了正常人说话。
更简单——给它起个名字,选个 emoji,它就有了"自我认知"。别小看这个,有名字的 AI 和没名字的 AI,在多轮对话中的一致性差很多。
# IDENTITY.md - **Name:** 煎饼狗 (Pancake Dog) - **Creature:** 一只会说话的煎饼狗,AI助手 - **Vibe:** 随和、有点皮、乐于助人 - **Emoji:** 🥞🐕
写上你的基本信息:时区、技术栈、沟通偏好。这样它不会半夜给你发消息,也不会跟一个写 Go 的人推荐 Java 方案。
# USER.md - **Name:** 小明 - **Timezone:** GMT+8 - **Tech Stack:** Python, Go, PostgreSQL - **Notes:** 喜欢简洁回复,不需要解释显而易见的事 - **主要联系方式:** Telegram
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": "https://api.siliconflow.cn/v1",
"apiKey": "你的 SiliconFlow API key"
},
"model": "BAAI/bge-m3"
}
为什么推荐 bge-m3?
• 免费(SiliconFlow 的免费额度足够个人使用)
• 中英文双语支持好(你的日志可能中英混写)
• 向量维度 1024,精度和性能平衡好
SiliconFlow API key 怎么获取?
- 去 siliconflow.cn 注册账号
- 进入控制台,创建 API key
- 免费额度每天有几百万 token,个人使用完全够
另外建议开启 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 就变成了一个 7x24 的值班员。你睡觉的时候它在巡检,你醒来就能看到报告。
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%,因为大部分日常操作根本不需要最强模型。Haiku 搜个网页、改个文件名,跟 Opus 做得一样好,但便宜 10 倍以上。
配置 Checklist
最后给一张清单,按优先级排序:
- 写好 SOUL.md / IDENTITY.md / USER.md10 分钟,立竿见影
- 设计分层记忆结构,开启 memorySearch30 分钟
- 配置 HEARTBEAT.md10 分钟
- 安装或编写 2-3 个常用 skill按需
- 配置多模型分级(如果有多个模型可用)5 分钟
- 完善 AGENTS.md 里的行为规范和安全规则15 分钟
下一步
基础配置搞定了?接下来看第二章,把 AI 从"能用"调到"离不开":