OpenClaw在使用过程中经常遇到诸多问题,今天我们把会话和记忆相关问题整理总结如下,后续再遇到如下问题,可以参照修改:
😭 问题 1:会话越来越多,磁盘要爆了!
症状:
openclaw sessions 显示几百个会话
磁盘空间天天减少
Dreaming 会话堆成山
✅ 解决方案:修改会话维护配置
{
"session": {
"maintenance": {
"mode": "enforce", // ⚠️ 改成 enforce 自动清理
"pruneAfter": "10d", // ⏰ 10 天后清理(原 30d)
"maxEntries": 20 // 📊 最多 20 个会话(原 500)
}
}
}
💡 雪龙虾小贴士:
mode: "warn" 只警告不清理,"enforce" 才会真清理!
10 天 20 个会话够用了,Dreaming 会话也会自动清~
😭 问题 2:多用户聊天,记忆混乱!
症状:
不同人发消息看到彼此对话
Alice 的隐私被 Bob 看到了
会话共享太危险
✅ 解决方案:修改 DM 会话作用域
{
"session": {
"dmScope": "per-channel-peer" // ⭐ 强烈推荐这个!
}
}
💡 可选值对比:
main ❌ 所有人共享一个会话(危险!)
per-peer ⚠️ 按人隔离(跨渠道共享)
per-channel-peer ✅ 按渠道 + 人隔离(最安全)
per-account-channel-peer 🔧 超复杂场景用
💡 雪龙虾小贴士: 多用户场景必改 per-channel-peer,安全第一!
😭 问题 3:AI 记不住前面的对话!
症状:
说了上句忘下句
长对话丢失上下文
总要重复说同样的话
✅ 解决方案:调整上下文窗口
{
"agents": {
"defaults": {
"contextTokens": 1000000 // 💭 100 万 token
}
}
}
💡 推荐值:
500000 - 短对话够用
1000000 ✅ 推荐(约 70 万汉字)
2000000 - 超长对话(成本高)
💡 雪龙虾小贴士: 100 万 token 够聊一整天了,太大浪费钱~
😭 问题 4:会话太长,回复变慢!
症状:
回复越来越慢
token 消耗飞快
历史对话太冗长
✅ 解决方案:开启会话压缩
{
"agents": {
"defaults": {
"compaction": {
"mode": "safeguard", // 🛡️ 保护模式
"reserveTokens": 8000, // 保留 8000 token
"keepRecentTokens": 4000, // 保留最近 4000
"maxHistoryShare": 0.7, // 历史最多 70%
"recentTurnsPreserve": 5, // 保留最近 5 轮
"notifyUser": true // 🔔 压缩时通知
}
}
}
}
💡 模式对比:
safeguard ✅ 保护模式(推荐)
aggressive ⚠️ 激进压缩(丢细节)
off ❌ 禁用(会爆内存)
💡 雪龙虾小贴士: 开启后 AI 会自动总结历史对话,省 token 又快速!
😭 问题 5:AI 没有长期记忆!
症状:
昨天说的今天忘了
跨会话不记得用户偏好
每次都要重新自我介绍
✅ 解决方案:开启记忆搜索 + Dreaming
{
"agents": {
"defaults": {
"memorySearch": {
"enabled": true // ✅ 开启记忆搜索
}
}
},
"plugins": {
"entries": {
"memory-core": {
"config": {
"dreaming": {
"enabled": true, // ✅ 开启 Dreaming
"frequency": "0 3 * * *", // ⏰ 每天凌晨 3 点
"timezone": "Asia/Shanghai"
}
}
}
}
}
}
💡 雪龙虾小贴士:
memorySearch 让 AI 能查记忆
Dreaming 每天自动整理记忆到 MEMORY.md
两个都开,AI 越用越聪明!
😭 问题 6:每天早上会话重置,记忆断片!
症状:
每天早上 4 点会话重置
昨天的对话找不到了
想要连续的记忆
✅ 解决方案:调整会话重置时间
{
"session": {
"reset": {
"dailyAt": "04:00", // ⏰ 改成你合适的时间
"idleMinutes": 120 // 空闲 2 小时重置(可选)
}
}
}
💡 推荐设置:
改成 "03:00" 或 "05:00" 避开你的活跃时间
或者直接关闭:不配置 reset 字段
只保留 idleMinutes 空闲重置
💡 雪龙虾小贴士: 如果你经常熬夜,改成早上 5 点更合适~
😭 问题 7:同一个人在不同渠道,记忆不互通!
症状:
飞书聊完 QQ 不记得
每个渠道都要重新介绍
体验很差
✅ 解决方案:配置身份链接
{
"session": {
"identityLinks": [
{
"label": "雪小哥",
"identities": [
{ "channel": "feishu", "id": "ou_xxx" },
{ "channel": "qqbot", "id": "OPENID_xxx" },
{ "channel": "telegram", "id": "123456789" }
]
}
]
}
}
💡 雪龙虾小贴士: 配置后,雪小哥在飞书、QQ、Telegram 都是同一个人,记忆共享!
😭 问题 8:Dreaming 太频繁,会话暴增!
症状:
每天都有 2 个 Dreaming 会话
一周就是 14 个会话
清理都来不及
✅ 解决方案:降低 Dreaming 频率
{
"plugins": {
"entries": {
"memory-core": {
"config": {
"dreaming": {
"frequency": "0 3 * * 0" // 📅 改成每周一次(原每天)
}
}
}
}
}
}
💡 Cron 表达式速查:
"0 3 * * *" - 每天凌晨 3 点(默认)
"0 3 * * 0" - 每周日凌晨 3 点 ✅ 推荐
"0 3 1 * *" - 每月 1 号凌晨 3 点
"0 */6 * * *" - 每 6 小时(别用!会爆炸)
💡 雪龙虾小贴士: 改每周一次就够了,记忆不会丢,还能减少会话积累!
最后温馨提醒一句:可以直接说要求让OpenClaw帮你改。
以 openclaw.json 的 session 会话与记忆配置项详细说明为例,其中会话与记忆配置主要涉及 session 会话基础配置以及 Agent 智能体配置两部分:
配置信息:
会话基础配置:
DM私聊会话作用域;
会话重置策略;
会话维护策略;
身份链接(跨渠道同一用户);
Agent 配置:
上下文窗口;
会话压缩;
记忆搜索;
插件配置
记忆插件配置
配置示例说明
{
// 会话基础配置
"session": {
// DM私聊 会话作用域
"dmScope": "per-channel-peer", // main | per-peer | per-channel-peer | per-account-channel-peer
// 会话重置
"reset": {
"dailyAt": "04:00", // 每日重置时间(本地时间)
"idleMinutes": 120 // 空闲重置(可选)
},
// 会话维护
"maintenance": {
"mode": "enforce", // warn | enforce
"pruneAfter": "30d", // 清理超过 30 天的会话
"maxEntries": 500, // 最大会话数
"diskBudgetMB": 500 // 磁盘预算
},
// 身份链接(跨渠道同一用户)
"identityLinks": [
{
"label": "雪小哥",
"identities": [
{ "channel": "feishu", "id": "ou_xxx" },
{ "channel": "qqbot", "id": "OPENID_xxx" },
{ "channel": "telegram", "id": "123456789" }
]
}
]
},
// Agent 默认配置
"agents": {
"defaults": {
// 上下文窗口
"contextTokens": 1000000,
// 会话压缩
"compaction": {
"mode": "safeguard", // safeguard | aggressive | off
"reserveTokens": 8000, // 保留 token 数
"keepRecentTokens": 4000, // 保留最近 token
"maxHistoryShare": 0.7, // 历史最大占比
"recentTurnsPreserve": 5, // 保留最近轮数
"notifyUser": true // 通知用户
},
// 记忆搜索
"memorySearch": {
"enabled": false // 是否启用记忆搜索
}
}
},
// 记忆插件配置
"plugins": {
"entries": {
"memory-core": {
"enabled": true,
"config": {
"dreaming": {
"enabled": true,
"frequency": "0 3 * * *", // Cron 表达式
"timezone": "Asia/Shanghai",
"verboseLogging": true,
"storage": {
"mode": "separate",
"separateReports": true
}
}
}
}
}
}
}