OpenClawCN 中文资料站开始 · 文档 · 进阶 · 动态 · 支持
进阶指南中高级
#memory#context#sessions#soul

记忆系统配置与使用

深入了解 OpenClaw 的记忆系统,包括短期记忆、长期记忆和上下文管理。

最后更新2026-03-11

AI 摘要

这页重点

核心结论

深入了解 OpenClaw 的记忆系统,包括短期记忆、长期记忆和上下文管理。

适用主题

进阶指南

高频关键词

memory / context / sessions / soul

可信信号

最后更新 2026-03-11

记忆系统配置与使用

本文详细介绍 OpenClaw 的记忆系统。

记忆类型

短期记忆

  • 当前会话上下文
  • 最近 N 条消息
  • 临时变量

长期记忆

  • 用户偏好设置
  • 历史交互记录
  • 知识库

持久记忆

  • 跨会话记忆
  • 用户画像
  • 技能知识

配置选项

基本配置

{
  "memory": {
    "short_term": {
      "max_messages": 20,
      "window_tokens": 8000
    },
    "long_term": {
      "enabled": true,
      "storage": "local",
      "retention": "90d"
    }
  }
}

记忆操作

保存记忆

# 保存用户偏好
await memory.save(
    key="user_preference",
    value={
        "language": "zh-CN",
        "notifications": True,
        "theme": "dark"
    },
    scope="user",
    user_id="user123"
)

读取记忆

# 读取用户偏好
preference = await memory.get(
    key="user_preference",
    scope="user",
    user_id="user123"
)

搜索记忆

# 搜索相关记忆
results = await memory.search(
    query="上次说的项目",
    scope="user",
    user_id="user123",
    limit=5
)

上下文管理

会话上下文

# 设置会话上下文
session.context = {
    "task": "数据分析",
    "data_source": "sales_2024",
    "goal": "生成月度报告"
}

# 获取上下文
task = session.context.get("task")

上下文窗口

{
  "context": {
    "window_strategy": "sliding",
    "max_tokens": 16000,
    "priority": "recent"
  }
}

用户画像

创建画像

user_profile = {
    "id": "user123",
    "name": "张三",
    "role": "工程师",
    "interests": ["技术", "AI", "编程"],
    "preferences": {
        "response_style": "简洁",
        "detail_level": "详细"
    },
    "history": {
        "total_conversations": 150,
        "topics": ["Python", "AI", "DevOps"]
    }
}

await memory.save_profile(user_profile)

使用画像

# 获取用户画像
profile = await memory.get_profile("user123")

# 根据画像调整响应
if profile.preferences.detail_level == "详细":
    response = await generate_detailed_response(query)
else:
    response = await generate_brief_response(query)

知识库

添加知识

knowledge = {
    "id": "project_alpha",
    "content": "Project Alpha 是一个 AI 项目...",
    "tags": ["AI", "项目", "2024"],
    "source": "documentation"
}

await memory.add_knowledge(knowledge)

查询知识

# 基于语义搜索
results = await memory.search_knowledge(
    query="AI 项目相关信息",
    tags=["AI", "项目"],
    limit=10
)

记忆策略

自动摘要

@memory.event("session_end")
async def summarize_session(session):
    # 提取关键信息
    summary = await summarize(session.messages)
    
    # 保存摘要
    await memory.save(
        key=f"session_summary_{session.id}",
        value=summary,
        scope="long_term"
    )

记忆衰减

{
  "memory": {
    "decay": {
      "enabled": true,
      "importance_threshold": 0.3,
      "decay_rate": 0.1
    }
  }
}

隐私控制

数据隔离

{
  "memory": {
    "isolation": {
      "user_data_separated": true,
      "encryption_at_rest": true,
      "export_control": true
    }
  }
}

数据删除

# 删除用户所有记忆
await memory.delete_all(user_id="user123")

# 删除特定记忆
await memory.delete(key="preference", user_id="user123")

下一步

继续深入

把零散经验接成稳定方法

最佳实践更适合在你已经跑通基础链路后阅读。可以顺着前后文继续看,也可以回到实践列表按难度和场景筛选。

关联入口

同主题、同路径、同阶段