关键词:长期记忆|会话持久化|增量同步|上下文压缩|跨设备一致性 在传统聊天机器人中,对话一旦关闭,上下文即被遗忘。 OpenClaw 的目标是让 AI 智能体具备类人的记忆能力:不仅能记住单次对话,还能在跨天、跨设备、跨渠道的场景下保持上下文连贯。这依赖于一套精心设计的长期记忆与会话同步机制。 本文将详解: 会话如何持久化存储 何时触发同步以平衡性能与一致性 如何防止记忆膨胀与隐私泄露 如何在 WhatsApp、Web、iOS 间共享同一记忆视图 一、会话模型:从瞬时到持久 OpenClaw 本地优先 所有会话文件存储在用户自有服务器 不上传至任何第三方云 你的记忆,你做主。 六、跨设备一致性:一个用户,一个记忆视图 当用户同时使用 WhatsApp(手机)和 Web UI(电脑),如何保证记忆同步?
别让你的 AI 每次醒来都失忆——跨会话记忆的三个坑你花 10 分钟对齐背景。AI 给了完美方案。下次对话,它又不认识你了。不是它笨,是它没有记忆。 这不是你的问题,不是 AI 模型的问题,是会话架构的默认设计。我花了几个月搭建了一套跨会话记忆系统,踩了三个坑。这篇文章讲怎么搭建、怎么维护、怎么不翻车。记忆系统的三层结构先说设计。 解决方案:启动协议固化为"检查清单",不依赖记忆# AI 新会话启动协议(不写进记忆,写进系统提示词)每次新会话必须按以下顺序执行:1. 读取最新交接文档(含 HANDOVER 的文件)2. 跨文件矛盾查询 = 0 # → 三份文件说的是同一件事 pass满足这三个条件,就算一个合格的记忆系统了。不需要完美,够用就好。 写在最后给 AI 加记忆,本质上是在做一件反直觉的事:为一个设计上无状态的系统强行注入连续性。它不会自己"记得"。每一次"记得",都是你设计的文件、规则、读取协议在起作用。但这个门槛值得跨。
大模型很聪明,但它没有记忆。每次对话都是一张白纸。这篇文章记录了我如何用 Elasticsearch 的原生能力,给 Agent 装上一套真正能用的长期记忆系统。 user_id,记忆互不可见记忆衰减:不同类型的记忆有不同的 TTL,偏好记一年,任务进展记一周下面一步步落地。 但在企业内部,记忆隔离是硬性要求。 Elasticsearch 既是记忆的存储层,也是记忆的计算层,还是 Agent 的执行层。这第三点是我最想强调的。 语义记忆提炼:从大量情景记忆中蒸馏出抽象的用户画像。比如从 20 次交互中提炼出"这个用户是一个偏好实战、反感空谈的工程师"。这需要一个额外的 Agent 来做周期性的记忆压缩。但这些都是锦上添花。
会话技术 1、会话跟踪技术的概述 对于会话跟踪这四个词,我们需要拆开来进行解释,首先要理解什么是会话,然后再去理解什么是会话跟踪: 会话:用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接 (1)demo1在第一次获取session对象的时候,session对象会有一个唯一的标识,假如是id:10 (2)demo1在session中存入其他数据并处理完成所有业务后,需要通过Tomcat服务器响应结果给浏览器 (3)Tomcat服务器发现业务处理中使用了session对象,就会把session的唯一标识id:10当做一个cookie,添加Set-Cookie:JESSIONID=10到响应头中,并响应给浏览器 (4)浏览器接收到响应结果后,会把响应头中的coookie数据存储到浏览器的内存中 (5)浏览器在同一会话中访问demo2的时候,会把cookie中的数据按照cookie: JESSIONID=10的格式添加到请求头中并发送给服务器 Tomcat (6)demo2获取到请求后,从请求头中就读取cookie中的JSESSIONID值为10,然后就会到服务器内存中寻找id:10的session对象,如果找到了,就直接返回该对象,如果没有则新创建一个
会话技术 1、会话跟踪技术的概述 对于会话跟踪这四个词,我们需要拆开来进行解释,首先要理解什么是会话,然后再去理解什么是会话跟踪: 会话:用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接 思考:下图中总共建立了几个会话? 图片 每个浏览器都会与服务端建立了一个会话,加起来总共是==3==个会话。 图片 (1)demo1在第一次获取session对象的时候,session对象会有一个唯一的标识,假如是id:10 (2)demo1在session中存入其他数据并处理完成所有业务后,需要通过Tomcat 服务器响应结果给浏览器 (3)Tomcat服务器发现业务处理中使用了session对象,就会把session的唯一标识id:10当做一个cookie,添加Set-Cookie:JESSIONID=10到响应头中 =10的格式添加到请求头中并发送给服务器Tomcat (6)demo2获取到请求后,从请求头中就读取cookie中的JSESSIONID值为10,然后就会到服务器内存中寻找id:10的session对象
问题解决 由于公司里的电脑是win 10所以在部署博客的过程中会遇到一些问题,整理如下: Deployer not found: git 在终端执行命令: npm install hexo-deployer-git
相较于单角色的记忆维护,多角色系统必然会产生更多的会话窗口并分散在各自不同的记忆保存区域中,如果单个去依次整理归档记忆,就成了重复级的繁琐操作。 由此我诞生了一个想法,自己搭建一套自动定时执行的跨agent跨工作区的记忆整理归档工作流。 正好这两天碰上Anthropic的乌龙CC代码泄露事件,很多大佬拆解其底层逻辑,其中有一个关于结构化会话记忆“ClaudeCode为每次对话维护一个结构化Markdown文件,包含会话标题、当前状态、任务规格 token的需求跨Agent记忆整理工作流说明每天晚上23:45,系统会自动:扫描多个Agent的今日会话提取有价值内容评分筛选高质量内容写入每日摘要+增量精华(长记忆沉淀)推送QQ简报给我目标是无需人工干预 agent.agentId,startAgent(agent));}//等待任意一个完成,然后补位awaitPromise.race(Array.from(pool.values()));}实际效果:6个Agent中5个10
其主要功能和核心优势包括: 重新绑定 ctrl-r 和 up (可配置) 到全屏历史搜索界面 将 shell 历史存储在 sqlite 数据库中 备份并同步加密的 shell 历史 在不同终端、会话和机器之间保持相同的历史记录 记录退出代码、当前工作目录、主机名、会话等信息以及命令执行时间等统计数据 除此之外,还支持通过云服务进行数据备份与恢复,并提供详尽而清晰易懂地文档说明。
于是可以在会话框直接添加请求方式。 一、添加会话框菜单 1.点会话框菜单(箭头位置),右键弹出选项菜单 ? 二、隐藏会话菜单 1.选择需要隐藏的菜单,右键。选择Hide this column ? 2.隐藏后也可以让隐藏的菜单显示出来:Ensure all columns are visble ? 三、调整会话框菜单顺序 1.如果需要调整会话框菜单顺序,如:Content-Type菜单按住后往前移动,就能调整了 ? 四、会话排序 1.点击会话框上的菜单,就能对会话列表排序了,如点body菜单 ? 2.点完后上面有个上箭头(正序),或者下箭头(倒叙)。但是不能取消,取消的话关掉fiddler后重新打开就行了
例如,LlaMA-70B 在知识数据集上的表现比 LlaMA-7B 好 30%,这并不能说明模型扩大 10 倍仅仅能在容量上提高 30%。 最引人注目的结果来自于作者的定律 10-12(见图 4)。 作者提出了一个简单的实验来验证:如果高质量数据都加上一个特殊 token(任何特殊 token 都行,模型不需要提前知道是哪个 token),那么模型的知识存储量可以立即回升 10 倍,是不是很神奇?
写在前面 这是一个老生常谈的话题,以前我觉得这种基础文章没有什么好写的,最近为了线上问题深入了解底层,确实有点东西,下面汇总成10种方案。 二、如何解决跨域? 就好比,桃树和柳树,如果你把他们当成很大跨度的东西去记忆理解,那么世上这么多树,你真的要累死了,你把他们都当成是树,哦吼? 你会突然发现,你对世界上所有的树都有所了解,他们都会长叶子,光合作用....当然也有个例,但是你只需要去记忆这些细微的差别,抓住主干。。。嗯,反正就这么个道理。 这个就巧妙地绕过了浏览器的跨域访问限制,但同时它又是安全操作。 10.浏览器开启跨域(终极方案) 其实讲下其实跨域问题是浏览器策略,源头是他,那么能否能关闭这个功能呢? 答案是肯定的。
CNCF的官方开源项目中(https://github.com/cncf/tag-security)发起了一项“云原生安全白皮书”协同翻译的工作——通过开源项目协同的方式,征集了来自不同地域、不同企业的译者10 这次新鲜的开源协作经历不同于之前个人提代码PR的方式,作为组织者(小组leader),我需要考虑大量和中立、跨组织协作相关的问题。 报名过程异常火爆,最终我们从来自国内各个厂商(包括很多友商)的30多个报名的小伙伴中,选出了10位组成了一个跨组织队伍。 PART THREE 分工与协作 在跨组织队伍真正开始协作之前,需要对分工、模式、流程等建议一套共识。 因此,我们建立了沟通群,并将第一次动员组织会议放在了元旦假期的一个晚上。 虽然译者小队只有10人,且来自不同的组织和背景,但我们不希望官方白皮书因为文字风格各异、语言习惯不同、翻译水平参差不齐等问题,而变得非常难以阅读或者产生歧义。
不同频率之间的振荡耦合被称之为跨频率耦合(CFC),相振幅耦合(PAC)就是是CFC的一种常见形式,它指的是高频振荡的振幅被低频振荡的相位调制的一种现象。 评估标准是DSM-IV的结构化和临床访谈(SCIDIV)以及蒙哥马利-奥斯伯格抑郁症评分表(MADRS,分数<10)。 基线评估完成后,参与者按1:1的比例随机接受主动或假性TDCS,频率为5天/周,持续2周(即10次)。干预的细节见(Kumar等人,2020)。 所有控制组被试还进行了MADRS测查,得分超过10分的被试被排除在研究外。最后,控制组被试还进行了简易精神状态检查量表测试(MMSE)和蒙特利尔认知评估(MoCA),以确保他们的基本认知能力无异常。 3.3 EEG数据的采集与处理在被试完成N-back任务时,使用64通道的Synamps 2脑电采集系统和10-20 montage电极帽采集脑电数据。
React Native,是一个混合移动应用开发框架,是目前流行的跨平台移动应用开发框架之一。React Native 采用不同的方法进行混合移动应用开发。 ab8BEeQNhFi6WSYzYLYudDQYGBgYGBgYGBgYGBgYGBgZmcvDqYGBgmhivGQYGBgYGBgYGBgYGBgYGBgbmQw+P/eMrC5UTVAAAAABJRU5ErkJggg=='}} /> 属性 Image 组件有很多属性,但常用的且跨平台的属性真心不多 /img1.jpg')} /> <Image style={{margin:10,width: 177, height: 100}} {{uri: 'https://www.twle.cn/static/i/img1.jpg'}} /> <Image style={{margin:10
这时候你就可以有用了~) 我们今天开始学习新的内容 CSRF概述 CSRF是Cross Site Request Forgery的缩写(也缩写为XSRF) 直译过来就是<跨站请求伪造>的意思,也就是在用户会话下对某个 如果这期间浏览器被人控制着请求了这个网站的url,可能就会执行一些用户不想做的功能(比如修改个人资料) 这个请求并不是用户真正想发出的请求,这就是所谓的<请求伪造> 因为这些请求也是可以从第三方网站提交的,所以前面加上<跨站 多窗口浏览器便捷的同时也带来了一些问题,因为多窗口浏览器新开的窗口是具有当前所有会话的 即我用Firefox登陆了我的Blog,然后我想看新闻了,又运行一个Firefox窗口进程(不是打开一个新的标签页 ,而是重新点击一遍Firefox打开另一个浏览器) 这个时候两个Firefox窗口的会话是彼此独立的,从看新闻的Firefox发送请求到Blog不会有我登录的cookie 但是多窗口浏览器(意指在同一个浏览器进程中打开一个新的标签页 )永远都只有一个进程,各窗口的会话是通用的,即看新闻的窗口发请求到Blog是会带上我在Blog登录的cookie(当然,现在的浏览器安全性比以前高很多了,一般不会发生这种事~) 攻击的条件 要进行CSRF
人类的记忆有工作记忆、短期记忆和长期记忆之分,不同层次的记忆各司其职又相互协作。智能体大模型借鉴这一机制,构建分层记忆架构。 在智能体内部,通过MemoryBank、记忆变量、记忆片段等精巧设计实现长期记忆功能。MemoryBank就像是一个记忆容器,统一管理各类记忆信息。 记忆变量以键值对的形式存在,比如“用户偏好=古典音乐”,可以精准记录用户关键信息。记忆片段则是一段完整的对话或事件信息记录。 在多用户、多场景应用中,为了保障信息安全和准确性,智能体采用隔离设计,不同用户的记忆相互独立,不同应用场景的记忆也不会混淆。 例如,在跨语言多轮对话中,更好地融合语言信息与文化背景知识,让长期记忆不仅能理解文字表面意思,还能深入挖掘背后的文化内涵,实现真正无国界的智能交互。
Session 核心概念:AI Agent 的记忆中枢 会话定义 OpenClaw 将每个 Agent 的直接聊天会话视为核心单元。 会话是 Agent 记忆的载体,承载着对话历史、上下文状态和令牌计数等关键信息。 直接聊天会话的键格式为: agent:<agentId>:<mainKey> 默认 mainKey 为 main。 其他来源的键映射 来源类型 键格式 Cron jobs cron:<job.id> Webhooks hook:<uuid> Node runs node-<nodeId> identityLinks 跨频道映射 maintenance: { mode: "warn", pruneAfter: "30d", maxEntries: 500, rotateBytes: "10mb 支持多种过滤条件: { "kinds": ["main", "group"], "limit": 50, "activeMinutes": 60, "messageLimit": 10
它通过三层记忆架构、MCP规则联动、多Skill并行协同,让AI助手记住项目全生命周期信息,跨会话、跨工具无缝衔接,开发效率直线飙升,Token成本大幅下降。 三大核心能力 持久记忆存储 自动捕获会话内工具调用、代码修改、命令执行等操作,生成结构化观察记录 三层渐进式检索:活跃内存→语义检索→长期总结,新会话自动注入关键信息 本地SQLite+Chroma 混合存储,数据安全可控,支持跨设备同步 多Agent并行协 任务自动拆解,多子Agent并行处理,负载动态均衡,结果智能合并 MCP规则全局共享,Skill执行统一调度,避免重复操作与冲突 跨工具记忆互通 一键复现问题 Token消耗降低约90%,工具调用上限提升约20倍,大型项目开发更划算 安装配置步骤 环境准备 系统:Windows 10+、macOS 10.15+、Ubuntu 20.04+ 依赖 未使用插件 使用开源神器 提升效果 上下文记忆 会话清零 跨会话永久存储 减少重复说明约80% 多Agent协作 信息孤岛 全局记忆共享 任务效率提升约3倍 Token消耗 全额填充 智能摘要注入 成本降低约
维度短期记忆(工作记忆)长期记忆类比计算机RAM硬盘存储作用范围单次会话/任务内跨会话、跨任务存储内容当前对话历史、即时上下文、最近交互用户偏好、事实知识、历史经验、反思总结存在形式上下文窗口、消息列表 、运行时缓存外部数据库、向量存储、知识图谱生命周期会话结束即清除(除非主动保存)持久化存储,可跨周/月/年管理方式压缩、裁剪、折叠检索、更新、演化2.1 短期记忆短期记忆存在于会话范围内,即单个会话或任务中 、错误和改进点任务完成时全局回顾,提炼战略记忆将执行经验升华为更高层次策略跨会话启动时检索相关记忆,恢复上下文查询向量数据库,获取用户偏好五、如何检索记忆? 它牵涉信息表达、结构化组织、检索策略、工具调用链管理、行为一致性维护以及跨会话的经验演化。 突破智能体长时记忆瓶颈,双代理架构实现跨会话连续工作,国家科技图书文献中心,2025-11 10 设计代理人工智能:架构、自主性和责任感,Ranktracker,2025-12 您好,我是肥晨。
维度 短期记忆(工作记忆) 长期记忆 类比 计算机RAM 硬盘存储 作用范围 单次会话/任务内 跨会话、跨任务 存储内容 当前对话历史、即时上下文、最近交互 用户偏好、事实知识、历史经验、反思总结 存在形式 总结近期模式、错误和改进点 任务完成时 全局回顾,提炼战略记忆 将执行经验升华为更高层次策略 跨会话启动时 检索相关记忆,恢复上下文 查询向量数据库,获取用户偏好 五、如何检索记忆? 长期记忆 存储跨会话知识和经验 检索、更新、演化 元记忆 自我反思与改进 定期总结、提炼模式 真正的Agent Memory是一种系统工程,而非单一模块。 它牵涉信息表达、结构化组织、检索策略、工具调用链管理、行为一致性维护以及跨会话的经验演化。 ] Anthropic突破智能体长时记忆瓶颈,双代理架构实现跨会话连续工作,国家科技图书文献中心,2025-11 [10] 设计代理人工智能:架构、自主性和责任感,Ranktracker,2025-12