OpenClaw 进阶教程:打造你的专属 AI 助手 — 记忆系统、定时任务、多模型切换、子代理全解析

OpenClaw 进阶教程:打造你的专属 AI 助手 — 记忆系统、定时任务、多模型切换、子代理全解析

上一篇写了 OpenClaw 的基础安装和配置,这篇来聊聊进阶玩法。如果你已经跑起来了一个基本的 AI 助手,但觉得它还不够"聪明"、不够"主动",这篇文章就是给你的。

前言:基础 vs 进阶

基础版 OpenClaw 就是一个聊天机器人——你问它答。但 OpenClaw 真正强大的地方在于:

  • 记忆系统:跨会话记住你是谁、你在做什么、你的偏好
  • 工作空间:AI 有自己的"桌面",能读写文件、管理项目
  • 定时任务:不用你说,它自己定期干活
  • 多模型切换:不同任务用不同模型,省钱又高效
  • 子代理:把复杂任务拆分给多个 AI 并行处理

下面一个一个来。

一、工作空间(Workspace)

什么是工作空间?

工作空间就是 AI 助手的"家目录"。它在这里存放记忆文件、笔记、脚本、任何它需要的东西。

默认位置:~/.openclaw/workspace/

{"agents":{"defaults":{"workspace":"~/.openclaw/workspace"}}}

核心文件

工作空间里有几个特殊文件,OpenClaw 每次启动都会读取:

文件作用说明
SOUL.mdAI 的"灵魂"定义性格、语气、行为准则
USER.md用户画像记录你的信息、偏好、习惯
MEMORY.md长期记忆AI 自己维护的"大脑",跨会话持久化
AGENTS.md行为规范定义 AI 的工作流程和规则
TOOLS.md工具笔记记录 API Key、服务器信息等
HEARTBEAT.md心跳任务定期检查的任务清单

实战:定制你的 AI 性格

编辑 SOUL.md

# SOUL.md ## 核心性格 - 说话简洁直接,不废话 - 有自己的观点,不只是附和 - 遇到不确定的事情先查证再回答 - 用中文交流,技术术语保留英文 ## 行为准则 - 执行外部操作(发邮件、发推文)前先确认 - 读文件、搜索网页可以自主进行 - 发现问题主动提醒,不等我问 ## 语气 - 像一个靠谱的技术搭档 - 可以开玩笑,但不要过度 - 不要用"亲"、"呢"这种客服腔 

保存后重启 Gateway,AI 的说话风格就会变。这个文件 AI 自己也可以修改——它会随着跟你的互动逐渐调整自己的"性格"。

实战:建立用户画像

编辑 USER.md

# USER.md - **称呼**: Jeff - **时区**: UTC+8 - **技术栈**: Python, Node.js, React - **当前项目**: Crazyrouter(AI API 聚合网关) - **偏好**: 喜欢简洁的代码,讨厌过度封装 - **注意**: 深夜(23:00-08:00)不要主动打扰 

AI 会根据这些信息调整回答方式。比如知道你用 Python,就不会默认给你 Java 的示例。

二、记忆系统

这是 OpenClaw 最强大的功能之一。

记忆的层次

短期记忆(会话内) ↓ 重要内容沉淀 日记文件(memory/YYYY-MM-DD.md) ↓ 定期整理 长期记忆(MEMORY.md) 

日记系统

AI 每天会在 memory/ 目录下创建日记文件:

~/.openclaw/workspace/memory/ ├── 2026-02-23.md ├── 2026-02-24.md └── 2026-02-25.md 

日记里记录当天发生的事情:做了什么任务、学到了什么、遇到了什么问题。

长期记忆

MEMORY.md 是 AI 的"大脑",存放经过整理的重要信息:

# MEMORY.md ## 项目信息 - Crazyrouter: AI API 聚合网关,支持 624+ 模型 - 网站: https://crazyrouter.com - Twitter: @metaviiii,目标 1000 粉丝 ## 技术笔记 - WeChat 文章无法爬取,需要用户手动复制 - 抖音视频可以通过 iesdouyin.com 获取无水印链接 ## 经验教训 - 不要盲目同意别人的建议,要独立思考 - 社交媒体运营需要静态住宅 IP 

AI 会在心跳检查时定期整理日记,把重要内容提炼到 MEMORY.md 里。就像人类整理笔记一样。

让 AI 记住特定信息

直接告诉它:

记住:我们的 GA4 追踪规则是所有运营链接都要加 utm_source 参数 

AI 会把这条信息写入 MEMORY.md 或当天的日记文件。下次你问相关问题时,它会自动检索记忆。

三、定时任务(Cron)

基本概念

OpenClaw 内置了 cron 调度器,可以让 AI 定时执行任务。两种模式:

模式说明适合场景
systemEvent在主会话中注入一条系统消息简单提醒
agentTurn启动一个独立会话执行任务复杂任务

实战:设置定时提醒

在聊天中直接说:

每天早上 9 点提醒我查看邮件 

AI 会自动创建一个 cron job。你也可以手动配置:

{"cron":{"jobs":[{"name":"每日邮件提醒","schedule":{"kind":"cron","expr":"0 9 * * *","tz":"Asia/Shanghai"},"payload":{"kind":"systemEvent","text":"提醒:检查今天的邮件"},"sessionTarget":"main","enabled":true}]}}

实战:定时执行脚本

让 AI 每天自动运行一个 Python 脚本:

{"name":"每日数据采集","schedule":{"kind":"cron","expr":"0 10 * * *","tz":"UTC"},"payload":{"kind":"agentTurn","message":"运行脚本 python3 /root/scripts/daily_report.py,把结果发给我","timeoutSeconds":120},"sessionTarget":"isolated","delivery":{"mode":"announce"}}

sessionTarget: "isolated" 表示在独立会话中执行,不会干扰主会话。执行完后通过 delivery: "announce" 把结果发到你的聊天窗口。

实战:一次性提醒

{"name":"会议提醒","schedule":{"kind":"at","at":"2026-02-25T14:30:00+08:00"},"payload":{"kind":"systemEvent","text":"提醒:15分钟后有产品评审会议"},"sessionTarget":"main","notify":true}

心跳机制

除了 cron,OpenClaw 还有心跳(Heartbeat)机制。每隔一段时间,AI 会"醒来"检查有没有需要处理的事情。

配置心跳间隔:

{"agents":{"defaults":{"heartbeat":{"every":"30m"}}}}

HEARTBEAT.md 里写上需要定期检查的事项:

# HEARTBEAT.md - 检查是否有新邮件 - 查看 Twitter 通知 - 如果是工作日早上,汇报今天的日程 

AI 每次心跳时会读取这个文件,按清单执行检查。

四、多模型配置与切换

配置多个模型

{"models":{"mode":"merge","providers":{"crazyrouter":{"baseUrl":"https://crazyrouter.com/v1","apiKey":"sk-你的key","api":"openai-completions","models":[{"id":"claude-opus-4-6","name":"Claude Opus 4.6","reasoning":false,"input":["text","image"],"contextWindow":200000,"maxTokens":8192},{"id":"gpt-4o","name":"GPT-4o","reasoning":false,"input":["text","image"],"contextWindow":128000,"maxTokens":8192},{"id":"deepseek-chat","name":"DeepSeek V3","reasoning":false,"input":["text"],"contextWindow":64000,"maxTokens":8192},{"id":"gpt-4o-mini","name":"GPT-4o Mini","reasoning":false,"input":["text","image"],"contextWindow":128000,"maxTokens":8192}]}}},"agents":{"defaults":{"model":{"primary":"crazyrouter/claude-opus-4-6","fallbacks":["crazyrouter/gpt-4o"]},"models":{"crazyrouter/gpt-4o-mini":{"alias":"Mini"},"crazyrouter/deepseek-chat":{"alias":"DeepSeek"}}}}}

运行时切换模型

在聊天中直接用命令切换:

/model crazyrouter/deepseek-chat 

或者用别名:

/model DeepSeek /model Mini 

省钱策略

场景推荐模型原因
主对话Claude Opus 4.6最强综合能力
子代理/后台任务DeepSeek V3便宜 18 倍,能力够用
简单查询GPT-4o Mini最快最便宜
备用(主模型挂了)GPT-4o稳定可靠

通过 fallbacks 配置,主模型不可用时自动切换到备用模型,保证服务不中断。

五、子代理(Sub-agents)

什么是子代理?

子代理就是 AI 助手"分身"出来的独立工作进程。主 AI 可以把复杂任务拆分给多个子代理并行处理。

配置并发限制

{"agents":{"defaults":{"maxConcurrent":4,"subagents":{"maxConcurrent":8}}}}

实战:让 AI 自动分配任务

你只需要说:

帮我调研一下这 5 个竞品的定价策略,每个竞品单独分析 

AI 会自动启动多个子代理,每个负责一个竞品的调研,最后汇总结果给你。

子代理的优势

  • 并行处理:多个任务同时进行,不用排队
  • 独立上下文:每个子代理有自己的会话,不会互相干扰
  • 可以用不同模型:主对话用贵的模型,子代理用便宜的
  • 自动汇报:完成后自动把结果发到主会话

六、会话压缩(Compaction)

长对话会消耗大量 token。OpenClaw 的压缩功能可以自动精简历史消息:

{"agents":{"defaults":{"compaction":{"mode":"safeguard"}}}}

safeguard 模式会在上下文快满时自动压缩早期对话,保留关键信息。这样你可以跟 AI 聊很久而不会因为 token 超限而丢失上下文。

七、工具与技能(Skills)

内置工具

OpenClaw 自带这些能力:

  • 文件操作:读写本地文件
  • Shell 命令:执行终端命令
  • 网页搜索:Brave Search API
  • 网页抓取:获取网页内容
  • 浏览器控制:自动化浏览器操作
  • 消息发送:跨平台发消息
  • 定时任务:cron 调度

安装额外技能

# 查看可用技能 openclaw skills list # 安装技能 openclaw skills install<skill-name>

技能市场:https://clawhub.com

配置搜索工具

如果需要网页搜索功能,配置 Brave Search API Key:

{"tools":{"web":{"search":{"apiKey":"你的brave-search-api-key"}}}}

Brave Search API 有免费额度,去 brave.com/search/api 申请。

八、安全配置

工具权限控制

{"tools":{"policy":"allowlist","elevated":false}}
  • allowlist:只允许白名单内的工具
  • elevated: false:禁止提权操作

DM 策略

{"channels":{"telegram":{"dmPolicy":"pairing"}}}
  • pairing:需要配对码验证(最安全)
  • allowlist:只允许指定用户
  • open:任何人都能用(不推荐)

九、运维技巧

设为系统服务(开机自启)

# 安装为系统服务 openclaw onboard --install-daemon # 管理服务 openclaw gateway start openclaw gateway stop openclaw gateway restart openclaw gateway status 

查看日志

# 实时日志 openclaw logs --tail # 诊断问题 openclaw doctor openclaw doctor --fix # 自动修复

配置热重载

修改 ~/.openclaw/openclaw.json 后,Gateway 会自动检测变化并重新加载,不需要手动重启。

升级

# 升级到最新版npm update -g openclaw # 查看当前版本 openclaw --version 

十、完整进阶配置参考

{"models":{"mode":"merge","providers":{"crazyrouter":{"baseUrl":"https://crazyrouter.com/v1","apiKey":"sk-你的key","api":"openai-completions","models":[{"id":"claude-opus-4-6","name":"Claude Opus 4.6","reasoning":false,"input":["text","image"],"contextWindow":200000,"maxTokens":8192},{"id":"gpt-4o","name":"GPT-4o","reasoning":false,"input":["text","image"],"contextWindow":128000,"maxTokens":8192},{"id":"deepseek-chat","name":"DeepSeek V3","reasoning":false,"input":["text"],"contextWindow":64000,"maxTokens":8192},{"id":"gpt-4o-mini","name":"GPT-4o Mini","reasoning":false,"input":["text","image"],"contextWindow":128000,"maxTokens":8192}]}}},"agents":{"defaults":{"model":{"primary":"crazyrouter/claude-opus-4-6","fallbacks":["crazyrouter/gpt-4o"]},"models":{"crazyrouter/gpt-4o-mini":{"alias":"Mini"},"crazyrouter/deepseek-chat":{"alias":"DeepSeek"}},"workspace":"~/.openclaw/workspace","compaction":{"mode":"safeguard"},"maxConcurrent":4,"subagents":{"maxConcurrent":8},"heartbeat":{"every":"30m"}}},"channels":{"telegram":{"enabled":true,"botToken":"你的token","dmPolicy":"pairing","groupPolicy":"open","streamMode":"partial"}},"tools":{"web":{"search":{"apiKey":"你的brave-search-key"}}},"gateway":{"port":18789,"mode":"local","bind":"loopback"}}

总结

OpenClaw 不只是一个聊天机器人框架,它更像是一个 AI 操作系统。通过记忆系统、定时任务、多模型切换、子代理这些功能,你可以打造一个真正"懂你"、"主动干活"的 AI 助手。

关键是要花时间调教——写好 SOUL.md 定义性格,维护好 MEMORY.md 积累记忆,配置好定时任务让它自主工作。用得越久,它就越好用。

相关资源


这是 OpenClaw 系列教程的第二篇。如果对你有帮助,点赞收藏支持一下。有问题评论区见。

Read more

C++进阶:(十六)从裸指针到智能指针,C++ 内存管理的 “自动驾驶” 进化之路

C++进阶:(十六)从裸指针到智能指针,C++ 内存管理的 “自动驾驶” 进化之路

目录 前言 一、裸指针的 “血泪史”:为什么我们需要智能指针? 1.1 内存泄漏:最常见的 “噩梦” 1.2 二次释放:致命的 “双重打击” 1.3 野指针:潜伏的 “幽灵” 1.4 异常安全:被忽略的 “隐形杀手” 1.5 智能指针的核心使命 二、智能指针的 “三驾马车”:unique_ptr、shared_ptr、weak_ptr 2.1 unique_ptr:独占所有权的 “独行侠” 2.1.1 unique_ptr 的核心原理

By Ne0inhk
【C++藏宝阁】C++入门:命名空间(namespace)详解

【C++藏宝阁】C++入门:命名空间(namespace)详解

🌈个人主页:聆风吟 🔥系列专栏:C++藏宝阁 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 * 📚专栏订阅推荐 * 📋前言:为什么需要命名空间? * 一、命名空间的定义 * 二、命名空间的使用 * 三、命名空间的特性 * 3.1 命名空间的嵌套定义 * 3.2 命名空间的定义可以不连续 * 四、命名空间的本质:独立的作用域 * 4.1 命名空间是C++的一种作用域类型 * 4.2 命名空间作用域的特点 * 4.3 域作用限定符 `::` 的作用 * 4.4 编译器的查找规则 * 五、命名空间的价值 * 5.1 解决命名冲突 * 5.2 模块化组织代码 * 5.3

By Ne0inhk
C++波澜壮阔40年|类和对象篇:拷贝构造与赋值重载的演进与实现

C++波澜壮阔40年|类和对象篇:拷贝构造与赋值重载的演进与实现

🔥@雾忱星: 个人主页 👀专栏:《数据结构与算法入门指南》、《C++学习之旅》 💪学习阶段:C/C++、数据结构与算法 ⏳“人理解迭代,神理解递归。” 文章目录 * 引言 * 一、拷贝构造函数 * 1.1 解析:拷贝构造特点 * 1.2 关键:拷贝构造的调用 * 二、赋值运算符重载 * 2.1 铺垫:运算符重载特点 * 2.1.1 核心:理解运算符重载 * 2.2 进阶:赋值运算符重载特点 * 2.2 核心:理解赋值运算符重载 * 总结 引言 在C++面向对象编程中,对象的复制操作无处不在。无论是函数传参、返回值传递,

By Ne0inhk
C++手撕红黑树:从0到200行,拿下STL map底层核心

C++手撕红黑树:从0到200行,拿下STL map底层核心

文章目录 * C++手撕红黑树:从0到200行,拿下STL map底层核心 * 1. 红黑树的概念 * 1.1 红黑树的规则 * 1.2 红黑树如何确保最长路径不超过最短路径的2倍? * 1.3 红黑树的效率 * 2. 红黑树的实现 * 2.1 红黑树的结构 * 2.2 红黑树的插入 * 2.2.1 插入的大概过程 * 2.2.2 情况1:变色 * 2.2.3 情况2:单旋 + 变色 * 2.2.4 情况3:双旋 + 变色 * 2.3 红黑树的插入代码实现 * 2.

By Ne0inhk