OpenClaw 从中级到高级完整教程
深入学习 OpenClaw:工作规范、记忆优化、子 Agent、Cron 任务、Skill 开发、多渠道部署、性能调优完整指南
OpenClaw 从中级到高级完整教程
来源:Twitter @onehopeA9 | 最后更新:2026 年 2 月 | 适用版本:OpenClaw v2.23+
这是一份超详细的 OpenClaw 中高级教程,涵盖从基础到进阶的完整学习路线。
目录
- 教程说明:适合谁学习
- 学习路线:从基础到进阶
- 核心配置:AGENTS.md 工作规范
- 记忆优化:构建可靠的记忆体系
- 子 Agent 应用:团队协作模式
- 定时任务:Cron 自动化实践
- Skill 开发:扩展 AI 能力
- 多渠道部署:全平台接入方案
- 性能调优:配置参数详解
- 实战练习清单
- 疑难解答
- 进阶学习资源
教程说明:适合谁学习
学习前提
本教程面向已经完成 OpenClaw 基础配置的用户。在开始之前,请确认你已经:
- ✅ 成功安装 OpenClaw 并能正常运行
- ✅ 完成基本配置文件的创建(SOUL.md / USER.md / IDENTITY.md)
- ✅ 了解记忆系统的基本概念(MEMORY.md 和 memorySearch)
- ✅ 熟悉 workspace 目录结构
- ✅ 具备基本的命令行操作能力
技术要求
- OpenClaw 已安装并正常运行
- 至少一个 AI 模型 API(Claude 或 GPT)
- 理解 JSON 和 Markdown 格式
- 基本的文件系统操作能力
你将学到什么
完成本教程后,你的 OpenClaw 将实现以下能力提升:
- 建立完整的工作规范体系
- 构建可靠的长期记忆系统
- 实现任务并行处理
- 掌握定时自动化
- 开发自定义 Skill
- 配置多渠道接入
- 优化性能和成本
学习路线:从基础到进阶
推荐学习顺序
第一阶段:工作规范建立(30-60 分钟)
- 创建 AGENTS.md 工作手册
- 定义 session 启动流程
- 设置记忆写入规范
- 配置安全边界
第二阶段:记忆系统优化(60-120 分钟)
- 启用 memoryFlush 防止信息丢失
- 优化日志格式提升检索精度
- 配置自动维护机制
- 调整 embedding 模型
第三阶段:高级功能应用(120-240 分钟)
- 部署子 Agent 实现任务分发
- 创建 Cron 定时任务
- 开发自定义 Skill
- 配置多渠道接入
第四阶段:性能调优(1-2 天)
- 调整模型参数
- 优化 token 使用
- 配置缓存策略
- 监控系统性能
学习建议
- 循序渐进:不要跳过基础步骤,每个配置都有其作用
- 实践验证:每完成一个配置,立即测试验证效果
- 记录问题:遇到问题及时记录,便于后续排查
- 备份配置:重要修改前备份配置文件
核心配置:AGENTS.md AI打工守则
为什么需要 AGENTS.md
在基础教程中,我们创建了描述 AI 性格的 SOUL.md、描述用户信息的 USER.md、以及定义身份的 IDENTITY.md。但这些文件只解决了”AI 是谁”和”用户是谁”的问题,并没有告诉 AI”如何工作”。
AGENTS.md 的作用是定义 AI 的工作流程和行为准则,类似于员工手册。它告诉 AI:
- 每次启动时应该读取哪些文件
- 记忆应该如何组织和存储
- 哪些操作需要用户确认
- 如何处理不同类型的任务
类比说明
- SOUL.md → 个人性格档案
- USER.md → 服务对象信息
- IDENTITY.md → 身份标识
- AGENTS.md → 工作流程手册
Session 启动配置
OpenClaw 每次启动新会话时都处于”初始状态”,需要通过读取文件来恢复记忆和上下文。合理的启动流程可以确保 AI 快速进入工作状态。
配置文件位置: workspace/AGENTS.md
## Session 启动流程
每次会话开始时,按以下顺序自动执行:
1. 读取 `SOUL.md` - 加载性格和行为风格
2. 读取 `USER.md` - 了解用户背景和偏好
3. 读取 `memory/YYYY-MM-DD.md` - 加载今天和昨天的日志
4. 如果是主会话:额外读取 `MEMORY.md` - 加载核心记忆索引
以上操作无需询问,自动执行。
记忆管理规范
OpenClaw 的记忆系统采用分层设计,不同类型的信息存储在不同的文件中。
## 记忆分层
| 层级 | 文件 | 用途 |
|------|------|------|
| 索引层 | `MEMORY.md` | 关于用户、能力概览、记忆索引。保持精简(<40行) |
| 项目层 | `memory/projects.md` | 各项目当前状态与待办 |
| 基础设施层 | `memory/infra.md` | 服务器、API、部署等配置速查 |
| 教训层 | `memory/lessons.md` | 踩过的坑,按严重程度分级 |
| 日志层 | `memory/YYYY-MM-DD.md` | 每日原始记录 |
写入规则
- 当天发生的事情 → 写入
memory/YYYY-MM-DD.md - 项目状态变更 → 同步更新
memory/projects.md - 遇到问题和解决方案 → 记录到
memory/lessons.md - 核心信息变更 → 更新
MEMORY.md索引
重要原则:
- 记录结论而非过程
- 使用标签便于检索
- 保持 MEMORY.md 精简(<40 行)
- 想要记住的信息必须写入文件,不要依赖”记在脑子里”
日志格式
高效日志示例:
### [项目:WebApp] Nginx 反向代理配置
- **结果**:成功配置 Nginx 反向代理,应用通过 443 端口访问
- **相关文件**:`/etc/nginx/sites-available/webapp.conf`
- **经验教训**:upstream 必须使用 127.0.0.1 而非 localhost(避免 IPv6 问题)
- **检索标签**:#nginx #deploy #webapp #reverse-proxy
安全和权限边界
## 安全规范
### 基本原则
- 不得泄露私人数据和敏感信息
- 执行破坏性操作前必须确认
- 删除文件使用 `trash` 而非 `rm`(可恢复优于永久删除)
- 不确定时,先询问用户
### 操作权限分类
**可以自由执行的操作:**
- 读取文件、浏览目录
- 搜索网络信息
- 查询日历和邮件
- 在 workspace 内部工作
**需要用户确认的操作:**
- 发送邮件、推文、公开消息
- 任何向外部发送数据的操作
- 删除或修改重要文件
- 不确定后果的操作
记忆优化:构建可靠的记忆体系
现状分析
在完成基础教程后,你的 OpenClaw 已经具备了基本的记忆功能:
- 分层记忆结构(MEMORY.md + memory/*.md)
- 语义检索功能(memorySearch)
但在实际使用中,可能会遇到以下问题:
问题 1:长对话后 AI “失忆” 当对话内容超过上下文窗口限制时,OpenClaw 会自动压缩旧对话,这个过程可能导致重要信息丢失。
问题 2:检索命中率不理想 日志格式不统一、缺少标签,信息密度低,导致 memorySearch 难以找到相关内容。
问题 3:记忆文件缺乏维护 随着时间推移,过期信息堆积,噪音增加,影响检索质量。
启用 memoryFlush 功能
问题场景: 你和 AI 进行了长时间的深度讨论,制定了重要决策。突然发现 AI 的回复开始变得”健忘”,好像忘记了之前讨论的内容。
解决方案: 启用 memoryFlush 功能。该功能会在压缩触发前,先让 AI 将重要信息写入文件,然后再执行压缩。
配置方法:
{
"agents": {
"defaults": {
"compaction": {
"reserveTokensFloor": 20000,
"memoryFlush": {
"enabled": true,
"softThresholdTokens": 4000
}
}
}
}
}
参数说明:
- softThresholdTokens: 4000 意味着当剩余空间不足 4000 tokens 时触发 memoryFlush
- 太小(如 1000):AI 没有足够空间写入详细信息
- 太大(如 10000):会频繁触发,影响性能
- 4000 是经过测试的平衡值
优化日志格式提升检索精度
memorySearch 使用向量语义检索技术,将搜索词和日志内容都转换为向量,然后计算相似度。
提升检索精度的关键因素:
- 使用标签:标签(如 #deploy、#nginx)可以显著提升召回率
- 结构化格式:固定的格式使关键信息集中,便于匹配
- 单一主题:一条日志只记录一件事,避免信息混杂
配置 Embedding 模型
{
"memorySearch": {
"enabled": true,
"provider": "openai",
"remote": {
"baseUrl": "https://api.siliconflow.cn/v1",
"apiKey": "你的_SiliconFlow_API_Key"
},
"model": "BAAI/bge-m3"
}
}
为什么选择 bge-m3:
- 成本:SiliconFlow 提供免费额度,个人使用足够
- 多语言:对中英文混合文本支持良好
- 性能:向量维度 1024,在精度和速度间取得平衡
子 Agent 应用:团队协作模式
什么是子 Agent
在基础配置中,OpenClaw 是单线程工作的:你提出一个任务,AI 从头到尾完成。但对于复杂任务,这种模式效率很低。
子 Agent 的概念: 子 Agent 是主 Agent 派生出的独立工作进程,可以并行执行不同的子任务。
类比:
- 单 Agent 模式:你是项目经理,所有工作都自己做
- 多 Agent 模式:你是项目经理,可以派遣团队成员并行工作
适用场景
场景 1:信息收集任务
- 单 Agent:顺序访问 5 个网站,耗时 10 分钟
- 多 Agent:派 5 个子 Agent 并行收集,耗时 2 分钟
场景 2:数据处理任务
- 单 Agent:逐个处理,耗时很长
- 多 Agent:分配给 10 个子 Agent,每个处理 10 个文件
场景 3:监控任务
- 单 Agent:轮询检查,响应慢
- 多 Agent:每个服务分配一个监控 Agent
配置子 Agent
{
"agents": {
"defaults": {
"subAgents": {
"enabled": true,
"maxConcurrent": 3,
"timeout": 300000
}
}
}
}
参数说明:
- maxConcurrent: 推荐 3-5,在性能和成本间取得平衡
- 太小(如 1):无法发挥并行优势
- 太大(如 10):可能触发 API 速率限制,增加成本
子 Agent 最佳实践
-
任务分解要合理
- 好的分解:将”分析 100 个文件”分解为 10 个子任务
- 不好的分解:将”写一篇文章”分解为多个子任务(写作需要连贯性)
-
设置合理的超时时间
- 简单查询:60 秒
- 数据分析:5 分钟
- 复杂处理:10 分钟
定时任务:Cron 自动化实践
Cron 任务概述
Cron 是 OpenClaw 的定时任务功能,可以让 AI 在指定时间自动执行任务,无需人工触发。
典型应用场景:
- 每日简报:每天早上发送天气、日程、新闻摘要
- 定期备份:每周自动备份重要文件
- 监控告警:每小时检查服务状态,异常时通知
- 定时提醒:工作日下午 6 点提醒结束工作
Cron 表达式
格式:分钟 小时 日期 月份 星期
常用示例:
| 表达式 | 含义 |
|---|---|
| 0 8 * * * | 每天早上 8 点 |
| 0 18 * * 1-5 | 工作日下午 6 点 |
| 0 17 * * 5 | 每周五下午 5 点 |
| */30 * * * * | 每 30 分钟 |
在线工具:crontab.guru 可以帮助你生成和验证 cron 表达式。
示例任务
每日早报:
{
"name": "morning-briefing",
"schedule": "0 8 * * *",
"timezone": "Asia/Shanghai",
"task": {
"type": "message",
"content": "早安!今日简报:\n1. 查询天气\n2. 读取今日日程\n3. 总结昨日工作日志\n4. 提醒今日待办事项"
},
"enabled": true
}
管理 Cron 任务
# 查看所有任务
openclaw cron list
# 启用/禁用任务
openclaw cron enable daily-briefing
openclaw cron disable daily-briefing
# 手动触发任务(测试用)
openclaw cron run daily-briefing
Skill 开发:扩展 AI 能力
Skill 系统概述
Skill 是 OpenClaw 的能力扩展机制,类似于插件或应用。每个 Skill 定义了一组特定的任务和工作流程。
Skill 的作用:
- 封装复杂的工作流程
- 定义专业领域的任务模板
- 提供可复用的能力模块
Skill 类型:
- 官方 Skill:OpenClaw 团队维护的标准 Skill
- 社区 Skill:用户分享的第三方 Skill
- 自定义 Skill:你自己开发的 Skill
Skill 文件结构
workspace/skills/my-skill/
├── SKILL.md # Skill 说明文档
├── config.json # 配置文件
└── templates/ # 模板文件(可选)
创建简单 Skill 示例
创建文件 workspace/skills/weather-check/SKILL.md:
# 天气查询 Skill
## 功能描述
查询指定城市的天气信息并格式化输出。
## 使用方法
用户:查询北京天气
AI 执行流程:
1. 调用天气 API 获取数据
2. 提取关键信息:温度、天气状况、空气质量
3. 格式化输出
## 输出格式
📍 北京天气
🌡️ 温度:15°C
☁️ 天气:多云
💨 风力:3 级
🌫️ 空气质量:良
## 配置要求
需要配置天气 API Key:
- 提供商:OpenWeatherMap
- 配置路径:config.json
多渠道部署:全平台接入方案
多渠道接入概述
OpenClaw 支持同时接入多个消息平台,实现”一个 AI,多处可用”的效果。
支持的平台:
- 即时通讯:Telegram、Discord、Slack、WhatsApp
- 社交媒体:Twitter、微信(通过第三方桥接)
- Web 接口:WebChat、HTTP API
- 本地接口:CLI 命令行
Telegram 接入配置
- 在 Telegram 中搜索 @BotFather
- 发送 /newbot 命令
- 按提示设置 Bot 名称和用户名
- 获取 Bot Token
{
"gateways": {
"telegram": {
"enabled": true,
"token": "你的_Bot_Token",
"allowedUsers": ["你的_Telegram_User_ID"]
}
}
}
Discord 接入配置
- 访问 Discord Developer Portal
- 创建新应用
- 在 Bot 页面创建 Bot 并获取 Token
- 在 OAuth2 页面生成邀请链接,添加 Bot 到服务器
{
"gateways": {
"discord": {
"enabled": true,
"token": "你的_Discord_Bot_Token",
"allowedChannels": ["频道_ID"],
"commandPrefix": "!"
}
}
}
性能调优:配置参数详解
模型选择和配置
{
"agents": {
"defaults": {
"model": {
"provider": "anthropic",
"name": "claude-3-5-sonnet-20241022",
"temperature": 0.7,
"maxTokens": 4096
},
"fallback": {
"enabled": true,
"models": [
{
"provider": "openai",
"name": "gpt-4o"
}
]
}
}
}
}
temperature 选择建议:
- 0.3-0.5:代码生成、数据分析(需要精确)
- 0.7-0.8:日常对话、内容创作(平衡)
- 0.9-1.0:创意写作、头脑风暴(创造性)
Token 使用优化
- 启用缓存
{
"agents": {
"defaults": {
"cache": {
"enabled": true,
"ttl": 3600,
"maxSize": 100
}
}
}
}
- 使用更便宜的模型
{
"agents": {
"simple-tasks": {
"model": {
"provider": "openai",
"name": "gpt-4o-mini"
}
}
}
}
成本控制
{
"billing": {
"limits": {
"daily": 10.00,
"monthly": 200.00
},
"alerts": {
"enabled": true,
"thresholds": [0.5, 0.8, 0.95]
}
}
}
当使用量达到阈值(50%、80%、95%)时,系统会发送告警。
实战练习清单
基础配置(必做)
- 任务 1:创建 AGENTS.md 工作规范
- 任务 2:优化记忆系统(memoryFlush + 日志格式)
- 任务 3:配置子 Agent 并完成并行任务
- 任务 4:创建至少 2 个 Cron 定时任务
- 任务 5:开发一个自定义 Skill
- 任务 6:配置多渠道接入(至少 2 个平台)
- 任务 7:性能优化和成本控制
进阶项目(推荐)
- 项目 1:构建自动化早报系统
- 项目 2:邮件自动分类系统
- 项目 3:多平台消息聚合
- 项目 4:服务监控告警系统
- 项目 5:知识库管理系统
疑难解答
Q1:memoryFlush 没有触发怎么办?
- 检查 openclaw.json 中 memoryFlush.enabled 是否为 true
- 启用 verbose 模式:发送 /verbose 命令
- 进行长对话测试(100+ 轮)观察是否触发
Q2:子 Agent 执行失败
- 降低 maxConcurrent 值
- 增加 timeout 时间
- 检查任务是否适合并行处理
Q3:Cron 任务没有执行
- 使用 crontab.guru 验证表达式
- 检查 timezone 字段
- 运行 openclaw cron list 查看任务状态
Q4:memorySearch 检索不到内容
- 检查 memorySearch 配置
- 按照优化格式重写日志
- 添加相关标签
Q5:API 成本过高
- 启用缓存减少重复调用
- 对简单任务使用更便宜的模型
- 优化系统提示减少固定成本
- 设置每日限额防止超支
进阶学习资源
官方资源
- 官方网站:openclaw.ai
- GitHub 仓库:github.com/openclaw/openclaw
- 官方文档:docs.openclaw.ai
- Skill 市场:clawhub.com
社区资源
- Reddit: r/clawdbot、r/AiForSmallBusiness
- Discord: OpenClaw 官方 Discord 服务器
- GitHub Discussions
总结
完成本教程后,你的 OpenClaw 已经从”好用”提升到”更好用”,甚至”离不开”的水平。
你已经掌握:
- ✅ 完整的工作规范体系(AGENTS.md)
- ✅ 可靠的记忆管理机制
- ✅ 高效的任务并行处理
- ✅ 精确的定时自动化
- ✅ 自主的能力扩展
- ✅ 全平台的接入方案
- ✅ 优化的性能配置
下一步建议:
- 深入实践:选择一个实战项目,将所学知识应用到实际场景
- 持续优化:根据使用情况不断调整配置
- 参与社区:分享你的经验,帮助其他用户
- 探索创新:尝试开发独特的 Skill 和工作流
原文作者:@onehopeA9 最后更新:2026 年 2 月 版本:2.0 适用于:OpenClaw v2.23+