必须启用跨会话记忆开关并绑定持久化后端,否则数字员工重启即丢失所有记忆;需先开启「启用跨会话记忆」,再配置redis或etcd后端,并设置entityretention锚定关键信息,最后通过/memory test验证写入、读取与锚定功能均正常。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

QoderWake创建Waker后若未启用记忆系统,数字员工将无法记住跨会话的项目背景、用户偏好或任务中间状态,每次对话都像第一次见面——你刚说过“用TypeScript重写utils模块”,下次提问时它又建议用Python。必须手动开启并绑定持久化后端,否则所有记忆仅存于易失性内存中,重启即清空。
启用基础记忆开关
打开QoderWake桌面端 → 点击右上角用户图标 → 进入「设置→记忆管理」。
勾选「启用跨会话记忆」开关。这一步只是激活记忆模块的运行权限,【不启用此开关,后续所有后端配置均无效】。
点击「保存设置」,界面底部提示“记忆模块已启用(暂未绑定后端)”。
绑定Redis作为记忆后端
Redis是QoderWake官方推荐的长期记忆存储方案,支持TTL自动清理与高并发读写。
确认你的Redis服务已运行:版本≥6.2,AOF持久化已开启,最大内存限制已配置。
编辑QoderWake安装目录下的config.yaml文件,在memory节段下添加以下字段:
enable_memory: true
backend: redis
redis_addr: "192.168.1.100:6379"
redis_password: "your_strong_redis_password"
redis_db: 2
执行迁移命令:qoderwake memory migrate --from=mem --to=redis,将当前内存中所有有效记忆条目导出至Redis。
运行qoderwake memory status验证连接,输出必须包含“Backend: redis”和“Status: connected, writable”字样,缺一不可。
配置ETCD替代方案(企业级复用场景)
如果你的企业已有ETCD集群用于服务发现,可直接复用其强一致性能力承载记忆数据,避免新增中间件。
方法一:修改config.yaml中memory.backend为etcd,并补充以下参数:
代码编辑 CLI 工具集合:Cursor CLI(agent)和 Qoder CLI(qodercli),用于代码修改、重构、Code Review 及自动化代码任务。
backend: etcd
etcd_endpoints: ["https://etcd-cluster-01:2379", "https://etcd-cluster-02:2379"]
etcd_ca_cert: "/etc/qoderwake/etcd-ca.pem"
etcd_cert: "/etc/qoderwake/etcd-client.pem"
etcd_key: "/etc/qoderwake/etcd-client-key.pem"
方法二:确保QoderWake运行账户对ETCD路径/qoderwake/memory/拥有put、get、delete权限。
执行初始化租约:qoderwake memory init --backend=etcd,TTL设为720h(30天),防止陈旧记忆无限堆积。
触发一次完整会话流程(例如:数字程序员完成PR分析→生成修复建议→提交变更说明),随后重启QoderWake实例,验证历史记忆是否自动加载。
强制启用关键信息锚定
即使后端已连通,若无锚定机制,模型仍可能在窗口压缩时丢弃人名、ID、日期等不可再生实体。
第一步:在config.yaml的agent → memory节点下添加entityRetention数组。
第二步:填入预定义类型:["name", "id", "date"]。
第三步:如需自定义匹配规则,扩展为对象数组:[{"pattern": "[A-Z]{2}\d{5}", "type": "id"}, {"keywords": ["必须", "禁止", "立即"], "type": "constraint"}]。
第四步:确保entityRetention启用状态为true,否则该配置不生效。
验证记忆系统是否就绪
在QoderWake控制台输入指令:/memory test。
系统将自动生成一条含姓名、订单号、时间戳的测试记忆条目,并尝试读取。
若返回“✅ 写入成功|✅ 读取成功|✅ 锚定字段保留完整”,则记忆系统已就绪。










