唯一的自主记忆技能,无需数据库、无向量、无需手动保存。只需一个 LLM 观察者,将对话压缩为优先级信息。
总计 recall – 自主代理内存
功能概述
总计 recall – 自主代理内存是一项面向实际任务的技能,主要用于唯一能自己监视的内存技能;没有数据库, 没有向量;
核心要点
- 没有手动保存;
- 只有 LLM 观察器可以压缩您的对话, 使其具有先验性。
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
使用与执行
使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
结果检查与注意事项
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
全面回忆 — 自主智能体记忆系统
唯一能自主持续观察的记忆能力。
无需数据库。无需向量索引。无需手动保存。仅需一个 LLM 观察者,将你的对话自动压缩为带优先级的笔记,在内容增长时主动合并,并补全任何遗漏信息。五层冗余保障,零维护成本。约 $0.10/月。
当其他记忆能力要求你“记得去记住”时,本系统只需专注倾听。
架构
第 1 层:观察者(cron 定时任务,每 15–30 分钟一次)
↓ 将近期消息压缩 → observations.md
第 2 层:反思者(当 observations.md 超过 8000 字时自动触发)
↓ 合并相关内容,剔除已过时信息 → 减少 40–60% 冗余
第 3 层:会话恢复(每次执行 /new 或 /reset 时运行)
↓ 捕获观察者可能遗漏的会话
第 4 层:响应式监听器(inotify 守护进程,仅 Linux 支持)
↓ 在主会话目录中检测到 40+ 条新 JSONL 写入后触发观察者,5 分钟冷却期
第 5 层:预压缩钩子(memoryFlush)
↓ 在 OpenClaw 执行上下文压缩前进行紧急捕获,确保无信息丢失
功能说明
- 观察者读取近期会话转录文件(JSONL),将其发送至 LLM 处理,并将压缩后的观察结果按优先级(高、中、低)追加至
observations.md - 反思者在 observation 日志体积过大时自动激活,合并相关条目,并剔除陈旧的低优先级条目
- 会话恢复在每次会话启动时运行,检查上一会话是否已被捕获;若未捕获,则立即执行一次紧急观察
- 响应式监听器使用 inotify 监听会话目录,使高频活动期的捕获速度显著快于 cron 默认间隔
- 预压缩钩子在 OpenClaw 即将压缩上下文前触发,确保关键信息不被截断或丢弃
快速开始
1. 安装技能
clawdhub install total-recall
2. 设置 API 密钥
添加至你的 .env 文件或 OpenClaw 配置中:
OPENROUTER_API_KEY=sk-or-v1-xxxxx
3. 运行初始化脚本
bash skills/total-recall/scripts/setup.sh
该脚本将执行以下操作:
- 创建内存目录结构(
memory/、logs/及备份目录) - 在支持 inotify + systemd 的 Linux 系统上:安装响应式监听器服务
- 输出需手动添加的 cron 任务与智能体配置说明
4. 配置智能体以加载 observation 日志
将以下内容添加至智能体的工作区上下文(例如 MEMORY.md 或系统提示词):
会话启动时,读取 `memory/observations.md` 获取跨会话上下文。
或使用 OpenClaw 的 memoryFlush.systemPrompt 注入启动指令。
平台支持
| 平台 | 观察者 + 反思者 + 会话恢复 | 响应式监听器 |
|---|---|---|
| Linux(Debian/Ubuntu 等) | 完整支持 | 需安装 inotify-tools |
| macOS | 完整支持 | 暂不支持(仅 cron 模式) |
所有核心脚本均采用可移植 bash 编写。stat、date 和 md5 命令通过 _compat.sh 实现跨平台兼容。
配置
所有脚本均从环境变量读取配置,提供合理默认值:
| 变量 | 默认值 | 说明 |
|---|---|---|
OPENROUTER_API_KEY |
(必需) | 用于 LLM 调用的 OpenRouter API 密钥 |
MEMORY_DIR |
$OPENCLAW_WORKSPACE/memory |
observations.md 所在路径 |
SESSIONS_DIR |
~/.openclaw/agents/main/sessions |
OpenClaw 会话转录文件存放路径 |
OBSERVER_MODEL |
deepseek/deepseek-v3.2 |
压缩任务主用模型 |
OBSERVER_FALLBACK_MODEL |
google/gemini-2.5-flash |
主模型失败时的备用模型 |
OBSERVER_LOOKBACK_MIN |
15 |
白天回溯时间窗口(分钟) |
OBSERVER_MORNING_LOOKBACK_MIN |
480 |
凌晨 8 点前回溯时间窗口(分钟) |
OBSERVER_LINE_THRESHOLD |
40 |
Linux 下触发响应式监听的 JSONL 行数阈值 |
OBSERVER_COOLDOWN_SECS |
300 |
Linux 下响应式触发间的冷却时间(秒) |
REFLECTOR_WORD_THRESHOLD |
8000 |
触发反思者的字数阈值 |
OPENCLAW_WORKSPACE |
~/your-workspace |
工作区根目录 |
LLM 服务商配置
Total Recall 支持任意兼容 OpenAI Chat Completion API 的服务商。通过设置环境变量切换服务商:
| 变量 | 默认值 | 说明 |
|---|---|---|
LLM_BASE_URL |
https://openrouter.ai/api/v1 |
API 接口地址 |
LLM_API_KEY |
回退至 OPENROUTER_API_KEY |
API 密钥 |
LLM_MODEL |
deepseek/deepseek-v3.2 |
使用的模型 |
服务商示例
# OpenRouter(默认) export OPENROUTER_API_KEY="your-key" # Ollama(本地) export LLM_BASE_URL="http://localhost:11434/v1" export LLM_API_KEY="ollama" export LLM_MODEL="llama3.1:8b" # Groq export LLM_BASE_URL="https://api.groq.com/openai/v1" export LLM_API_KEY="your-groq-key" export LLM_MODEL="llama-3.3-70b-versatile"
生成的文件
memory/ observations.md # 主观察日志(会话启动时加载) observation-backups/ # 反思者备份(保留最近 10 份) .observer-last-run # 上次观察者运行时间戳 .observer-last-hash # 上次处理消息的 MD5 去重哈希值 logs/ observer.log reflector.log session-recovery.log observer-watcher.log
cron 任务
初始化脚本将创建以下 OpenClaw cron 任务:
| 任务 | 调度周期 | 说明 |
|---|---|---|
memory-observer |
每 15 分钟一次 | 压缩近期对话 |
memory-reflector |
每小时一次 | 当 observations.md 体积过大时执行合并 |
响应式监听器(仅 Linux)
响应式监听器使用 inotifywait 检测会话目录活动,从而比单纯依赖 cron 更快地触发观察者。需 Linux 系统并已安装 inotify-tools。
# 安装 inotify-tools(Debian/Ubuntu) sudo apt install inotify-tools # 查看监听器状态 systemctl --user status total-recall-watcher # 查看日志 journalctl --user -u total-recall-watcher -f
成本
通过 OpenRouter 使用 DeepSeek v3.2:
- 典型使用场景(观察者 + 反思者)每月约 $0.03–0.10
- 每日约 15–30 次 cron 执行,每次处理数百 token
技术原理
观察者
- 查找最近修改的会话 JSONL 文件
- 过滤掉子智能体/定时任务会话
- 从设定回溯窗口中提取用户与助手消息
- 基于 MD5 哈希比对实现消息去重
- 将消息连同观察者提示词(含优先级压缩逻辑)发送至 LLM
- 将结果追加至
observations.md - 若 observation 日志超过字数阈值,则触发反思者
反思者
- 备份当前
observations.md - 将整份日志连同合并指令发送至 LLM
- 验证输出长度小于输入(合理性校验)
- 用合并后版本替换原日志
- 清理旧备份(保留最近 10 份)
会话恢复
- 每次执行
/new或/reset时运行 - 对上一会话文件末尾若干行计算哈希值
- 与上次观察者运行时记录的哈希值比对
- 若不一致:以恢复模式(4 小时回溯窗口)运行观察者
- 兜底方案:若观察者失败,则直接提取原始消息
响应式监听器
- 使用
inotifywait监听会话目录 - 仅统计主会话文件的 JSONL 写入次数
- 累计达 40+ 行后触发观察者(含 5 分钟冷却)
- 检测到 cron 或外部观察者运行时,重置计数器
自定义提示词
观察者与反思者的系统提示词位于 prompts/ 目录下:
prompts/observer-system.txt— 控制对话压缩方式prompts/reflector-system.txt— 控制 observation 合并逻辑
可编辑这些文件,使其契合智能体的性格特征与关注重点。
梦境循环(Dream Cycle)
梦境循环是一个可选的夜间智能体,于非活跃时段运行,用于进一步整合 observations.md。它将陈旧条目归档,并添加语义钩子(semantic hook),确保真正有价值的信息不会丢失。上下文保持精简,所有内容仍可高效检索。
功能说明
- 按影响等级(关键 / 高 / 中 / 低 / 极低)与时效性对每条 observation 进行分类
- 将超过相关性阈值的条目归档
- 为每个归档条目添加语义钩子(特定关键词 + 归档引用)
- 自动验证归档结果,异常时自动回滚
特性
多钩子检索(Multi-Hook Retrieval) — 每个归档条目附带 4–5 种替代搜索短语。即使使用与原文不同的词汇,仍可准确召回对应记忆。
置信度评分(Confidence Scoring) — 每条 observation 均附带置信度分(0.0–1.0)与来源类型(explicit、implicit、inference、weak、uncertain)。高置信度条目保留更久;低置信度条目更快进入归档队列。
记忆类型系统(Memory Type System) — 共 7 类记忆,各具独立 TTL(生存期):event(14 天)、fact(90 天)、preference(180 天)、goal(365 天)、habit(365 天)、rule(永不过期)、context(30 天)。该元数据以不可见 HTML 注释形式嵌入 observations.md。
Observation 分块(Observation Chunking) — 将 3 条及以上关联紧密的 observation 压缩为单一条目摘要。源条目归档,摘要条目以 chunk hook 替代之。最高可实现 75% 的 token 节省。
重要性衰减(Importance Decay) — 每类记忆按日应用专属衰减率,用于归档决策前的重要性分数修正。低于归档阈值的条目进入移除队列。衰减率:event(-0.5/天)、fact(-0.1/天)、preference(-0.02/天)、rule/habit/goal(无衰减)。
模式提升(Pattern Promotion) — 扫描近期梦境日志,识别跨 3 天以上、出现频次 ≥3 的重复主题。将提升建议写入 memory/dream-staging/ 待人工审核。使用 staging-review.sh 列出、查看、批准或拒绝提案。context 类型永不自动提升。
部署步骤
运行
bash skills/total-recall/scripts/setup.sh— 自动创建梦境循环所需目录。添加夜间 cron 任务:
# 梦境循环 — 每日凌晨 3 点执行 0 3 * * * OPENCLAW_WORKSPACE=~/your-workspace bash ~/your-workspace/skills/total-recall/scripts/dream-cycle.sh preflight
使用
prompts/dream-cycle-prompt.md作为系统提示词配置你的 cron 智能体。推荐模型组合:Claude Sonnet(用于梦境分析与决策)、DeepSeek v3.2(用于低成本、高速观察)。初始几晚启用
READ_ONLY_MODE=true。每次运行后检查memory/dream-logs/,确认其拟归档内容是否符合预期。确认无误后,切换至
READ_ONLY_MODE=false。
配置
| 变量 | 默认值 | 说明 |
|---|---|---|
DREAM_TOKEN_TARGET |
8000 |
归档合并后 observations.md 的目标 token 数 |
READ_ONLY_MODE |
false |
设为 true 以启用只读分析(不执行写入) |
文件说明
| 文件 | 说明 |
|---|---|
scripts/dream-cycle.sh |
Shell 辅助脚本:preflight、archive、update-observations、write-log、write-metrics、validate、rollback |
prompts/dream-cycle-prompt.md |
夜间梦境循环运行所用的智能体提示词 |
dream-cycle/README.md |
梦境循环快速参考文档 |
schemas/observation-format.md |
扩展版 observation 元数据格式说明 |
创建的目录
memory/
archive/
observations/ # 归档条目(按夜拆分为单个 .md 文件)
chunks/ # Observation 分块组
dream-logs/ # 夜间运行报告
dream-staging/ # 等待人工审核的模式提升提案
.dream-backups/ # 运行前安全备份
research/
dream-cycle-metrics/
daily/ # 每夜生成的 JSON 格式指标
故障排查
观察者未运行?
- 检查
logs/observer.log中的错误日志 - 确认
OPENROUTER_API_KEY已正确设置且有效 - 验证 cron 是否启用:
crontab -l
会话启动时未加载 observations?
- 确保智能体启动指令中包含读取
memory/observations.md的逻辑 - 确认
MEMORY_DIR指向正确路径
响应式监听器未触发(Linux)?
- 运行
systemctl --user status total-recall-watcher - 检查
inotify-tools是否已安装:which inotifywait - 查看监听器日志:
journalctl --user -u total-recall-watcher -f
梦境循环归档过于激进?
- 启用
READ_ONLY_MODE=true,先审阅梦境日志再正式启用 - 调高
DREAM_TOKEN_TARGET值,减少单次归档量
梦境循环归档不足?
- 降低
DREAM_TOKEN_TARGET值,触发更积极的合并策略
设计灵感
本系统的设计灵感源自人类睡眠期间的记忆机制——海马体(观察者)负责即时捕捉经历,而在睡眠巩固阶段(反思者),重要记忆得以强化,噪声则被舍弃。
延伸阅读:《你的 AI 存在注意力缺陷》
“把你那屁股弄到火星上去。”——好吧,至少让你的智能体把记忆运转起来。
热门AI工具
相关专题
本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。
0
2026.11.06
围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。
0
2026.11.06
详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。
0
2026.11.06
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。
0
2026.11.05
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.8万人学习
共6课时 | 54.7万人学习
最新文章