Install
openclaw skills install @thcjp/memory-fortress-freeopenclaw skills install @thcjp/memory-fortress-freeAI Agent的终极记忆系统。六层架构,确保持久记忆。
永远不丢失上下文。永远不忘记决策。永远不重复犯错。
记忆堡垒采用六层架构,将多种经过验证的记忆方法整合为一套可靠的记忆体系。基于写前日志(WAL)协议,在Agent响应前先将状态写入持久存储,确保即使发生压缩、重启或中断,关键上下文也不会丢失。
详细内容已移至
references/detail.md- ## 架构总览
活跃工作记忆,在上下文压缩、重启或中断后依然存活。采用写前日志(WAL)协议。
[我们正在做什么]
- 用户偏好:...
- 已做决策:...
- 当前阻塞:...
- [ ] ...
核心规则:在响应前先写入。由用户输入触发,而非依赖Agent记忆。
跨所有记忆的语义搜索。自动召回注入相关上下文。
memory_store text="用户偏好深色模式" category="preference" importance=0.9
memory_recall query="项目状态" limit=5
结构化的决策、经验与上下文存储。支持分支感知。
python3 memory.py -p $DIR remember '{"type":"decision","content":"前端使用React"}' -t tech -i h
python3 memory.py -p $DIR get "前端"
人类可读的长期记忆。日志目录 + 提炼后的智慧沉淀。
workspace/
├── MEMORY.md # 策展长期记忆(精华内容)
└── memory/
├── 2026-01-30.md # 每日日志
├── 2026-01-29.md
└── topics/ # 主题专属文件
跨设备同步,可与知识库对话。
export CLOUD_MEMORY_API_KEY="[REDACTED]"
cloud_memory add "重要上下文"
cloud_memory search "我们决定了什么..."
自动从对话中提取事实,减少约80%的token消耗。
npm install mem0ai
export MEM0_API_KEY="[REDACTED]"
const { MemoryClient } = require('mem0ai');
const client = new MemoryClient({ apiKey: process.env.MEM0_API_KEY });
// 对话自动提取事实
await client.add(messages, { user_id: "user123" });
// 检索相关记忆
const memories = await client.search(query, { user_id: "user123" });
创建热内存文件,立即可用:
cat > SESSION-STATE.md << 'EOF'
本文件是Agent的"内存"——抗压缩、抗重启、抗中断。
[无]
[暂无]
- [ ] 无
[暂无]
*最后更新:[时间戳]*
EOF
在基础搭建之上,初始化日志目录与冷存储:
mkdir -p memory/topics
cd ~/workspace
git init
python3 memory.py -p . sync --start
ls -la memory/
详细内容已移至
references/detail.md- ### 完整搭建(<300秒)
结果处理: 执行完成后,查看输出结果确认操作状态。成功时输出包含处理摘要和结果数据;失败时根据错误信息排查问题,查阅错误处理章节获取恢复步骤。
写前日志:在响应前先写入状态,而非响应后。
| 触发条件 | 执行动作 |
|---|---|
| 用户表达偏好 | 写入SESSION-STATE.md → 然后响应 |
| 用户做出决策 | 写入SESSION-STATE.md → 然后响应 |
| 用户给出截止日期 | 写入SESSION-STATE.md → 然后响应 |
| 用户纠正你 | 写入SESSION-STATE.md → 然后响应 |
为什么? 如果你先响应,在保存前发生崩溃或压缩,上下文就会丢失。WAL协议确保记忆持久性。
memory_recall)memory_store 设置importance=0.9memory_recall query="*" limit=50memory_forget id=<id>用户:"这个项目用Tailwind,不用原生CSS"
Agent(内部执行):
1. 写入SESSION-STATE.md:"决策:使用Tailwind,不用原生CSS"
2. 存入Git-Notes:关于CSS框架的决策
3. memory_store:"用户偏好Tailwind而非原生CSS" importance=0.9
4. 然后响应:"明白了——用Tailwind..."
场景描述:开发团队使用AI Agent协助开发一个为期3个月的项目,需要Agent记住所有架构决策和用户偏好。
配置:
workspace/
├── SESSION-STATE.md # 当前Sprint任务
├── MEMORY.md # 架构决策、技术栈偏好
└── memory/
├── 2026-01-30.md # 每日开发日志
├── decisions/
│ └── architecture.md # 架构决策记录
└── lessons/
└── mistakes.md # 踩坑记录
Agent行为:
PostgreSQL"时,先写入再响应效果:跨会话协作无缝衔接,Agent在第90天仍记得第1天的架构决策。
场景描述:产品经理使用AI Agent管理产品需求,需要追踪每个需求的决策历史与变更原因。
配置:
workspace/
├── SESSION-STATE.md # 当前正在处理的需求
├── MEMORY.md # 产品方向与优先级
└── memory/
├── decisions/
│ ├── 2026-01.md # 1月决策记录
│ └── 2026-02.md # 2月决策记录
└── topics/
├── auth.md # 认证模块决策
└── payment.md # 支付模块决策
Agent行为:
效果:决策追溯从平均30分钟缩短至即时检索,避免重复讨论已决策事项。
场景描述:独立开发者同时进行3个项目,需要Agent为每个项目维护独立记忆上下文。
配置:
详细代码示例已移至
references/detail.md
Agent行为:
效果:3个项目并行开发,Agent不会混淆上下文,切换成本从5分钟降至0。
理解失败的根本原因有助于修复:
| 失败模式 | 原因 | 修复方法 |
|---|---|---|
| 全部遗忘 | memory_search未启用 | 启用搜索功能并配置provider |
| 文件未加载 | Agent跳过读取记忆文件 | 在Agent规则中强制要求读取SESSION-STATE.md |
| 事实未捕获 | 无自动提取 | 使用Mem0或手动日志记录 |
| 子Agent隔离 | 未继承上下文 | 在任务提示中传递关键上下文 |
| 重复犯错 | 经验未记录 | 将错误写入memory/lessons.md |
| 问题 | 修复方法 |
|---|---|
| 遗忘偏好 | 在MEMORY.md中添加## 偏好章节 |
| 重复犯错 | 每次犯错后记录至memory/lessons.md |
| 子Agent缺乏上下文 | 在派生任务提示中包含关键上下文 |
| 遗忘近期工作 | 严格执行每日日志纪律 |
| 记忆搜索无结果 | 检查provider配置与API Key是否设置 |
memory_recall query="*" limit=50
rm -rf ~/.agent/memory/vectordb/
agent gateway restart
python3 memory.py -p . export --format json > memories.json
du -sh ~/.agent/memory/
wc -l MEMORY.md
ls -la memory/
memory/
├── projects/
│ ├── project-a.md
│ └── project-b.md
├── people/
│ └── contacts.md
├── decisions/
│ └── 2026-01.md
├── lessons/
│ └── mistakes.md
└── preferences.md
保持MEMORY.md作为摘要(<5KB),链接到详细文件。
免费版支持核心三层:热内存(SESSION-STATE.md)、冷存储(Git-Notes知识图谱)和策展归档(MEMORY.md+日志)。向量语义搜索、Mem0自动提取和云备份为专业版功能。
WAL(Write-Ahead Log)即写前日志,要求Agent在响应前先将状态写入持久存储。这确保即使发生崩溃、压缩或中断,关键上下文也不会丢失。这是数据库领域经典的持久性保障机制。
建议保持在2KB以内。它只存储当前会话的活跃上下文,完成的任务应归档至日志或MEMORY.md。过大会影响Agent读取速度。
会。记忆过多会导致上下文过载。建议每周执行记忆卫生流程:清理无关向量、归档旧日志、将精华合并至MEMORY.md。MEMORY.md建议控制在5KB以内。
在派生子Agent的任务提示中显式包含关键上下文。子Agent默认不继承父Agent的完整上下文,需要手动传递。也可以让子Agent直接读取SESSION-STATE.md。
Git-Notes存储结构化的决策与经验,支持分支感知和版本追踪,适合机器检索。MEMORY.md是人类可读的策展摘要,适合快速浏览和Agent上下文注入。两者互补使用。
| 问题 | 可能原因 | 解决方案 | 优先级 |
|---|---|---|---|
| Agent对话中遗忘上下文 | SESSION-STATE.md未更新 | 检查WAL协议是否执行;在Agent规则中强制要求先写后响应 | 高 |
| 注入无关记忆 | autoCapture开启或阈值过低 | 关闭autoCapture,提高minImportance阈值至0.7+ | 高 |
| 记忆过大导致召回缓慢 | 长期未执行记忆卫生 | 执行清理流程:清除旧向量、归档日志、合并MEMORY.md | 中 |
| Git-Notes未持久化 | 未执行git notes push | 运行git notes push同步至远程仓库 | 中 |
| memory_search无结果 | provider未配置或API Key缺失 | 检查agent-config.json中memorySearch配置;验证API Key | 高 |
| 子Agent无法获取记忆 | 上下文未传递 | 在子Agent任务提示中显式包含关键上下文 | 中 |
| SESSION-STATE.md过大 | 未及时归档已完成任务 | 每周归档已完成任务至日志,SESSION-STATE.md仅保留活跃上下文 | 低 |
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent平台内置LLM提供 |
| Git | 工具 | 必需 | 系统自带或从git-scm.com安装 |
| Python 3.8+ | 运行时 | 必需 | 从python.org安装 |
| memory.py | 脚本 | 必需 | 随本技能提供 |
本技能基于原始开源作品改进,保留原始版权声明:
本改进作品在原始作品基础上进行了深度差异化改造,包括但不限于:
原始MIT license允许使用、复制、修改和分发,需保留版权声明。本改进作品在保留原始声明的基础上添加自有署名,完全符合MIT license要求。
本免费体验版限制以下高级功能:
解锁全部功能请使用专业版:memory-fortress-pro
记忆堡垒是一款为AI Agent设计的终极记忆系统,采用六层架构(热内存/温存储/冷存储/归档/云备份/自动提取),确保Agent永远不丢失上下文、不忘记决策、不重复犯错
输入: 用户提供记忆堡垒是一款为AI Agent设计的终所需的指令和必要参数。 处理: 按照skill规范执行记忆堡垒是一款为AI Agent设计的终操作,遵循单一意图原则。 输出: 返回记忆堡垒是一款为AI Agent设计的终的执行结果,包含操作状态和输出数据。
input_params参数,支持创建/查询/导出操作基于写前日志(WAL)协议,在响应前先写入状态,保证记忆持久性
输入: 用户提供基于写前日志(WAL)协议所需的指令和必要参数。 处理: 按照skill规范执行基于写前日志(WAL)协议操作,遵循单一意图原则。 输出: 返回基于写前日志(WAL)协议的执行结果,包含操作状态和输出数据。
input_params参数,支持创建/查询/导出操作核心能力:会话状态热内存(抗压缩/重启/中断)、Git-Notes知识图谱冷存储(结构化决策与经验)、人工策展归档(MEMORY
输入: 用户提供核心能力所需的指令和必要参数。 处理: 按照skill规范执行核心能力操作,遵循单一意图原则。 输出: 返回核心能力的执行结果,包含操作状态和输出数据。
input_params参数,支持创建/查询/导出操作md+日志体系)、记忆卫生维护流程、失败模式诊断与修复指南
输入: 用户提供md+日志体系)、记忆卫生维护所需的指令和必要参数。 处理: 按照skill规范执行md+日志体系)、记忆卫生维护操作,遵循单一意图原则。 输出: 返回md+日志体系)、记忆卫生维护的执行结果,包含操作状态和输出数据。
input_params参数,支持创建/查询/导出操作免费版提供核心三层记忆能力
输入: 用户提供免费版提供核心三层记忆能力所需的指令和必要参数。 处理: 按照skill规范执行免费版提供核心三层记忆能力操作,遵循单一意图原则。 输出: 返回免费版提供核心三层记忆能力的执行结果,包含操作状态和输出数据。
input_params参数,支持创建/查询/导出操作技术实现要点:核心能力基于input_params参数与output_format配置实现,支持创建/查询/修改/删除等操作模式,通过config_options进行运行时配置。
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:六层记忆系统、解决上下文丢失、决策遗忘、错误重复痛点、协议确保持久化、Use、when、模型调用、智能对话、LLM、应用时使用、不适用于需要、确定性的关键决策等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。
场景描述:开发团队使用AI Agent协助开发一个为期3个月的项目,需要Agent记住所有架构决策和用户偏好。
配置:
workspace/
├── SESSION-STATE.md # 当前Sprint任务
├── MEMORY.md # 架构决策、技术栈偏好
└── memory/
├── 2026-01-30.md # 每日开发日志
├── decisions/
│ └── architecture.md # 架构决策记录
└── lessons/
└── mistakes.md # 踩坑记录
Agent行为:
PostgreSQL"时,先写入再响应效果:跨会话协作无缝衔接,Agent在第90天仍记得第1天的架构决策。
场景描述:产品经理使用AI Agent管理产品需求,需要追踪每个需求的决策历史与变更原因。
配置:
workspace/
├── SESSION-STATE.md # 当前正在处理的需求
├── MEMORY.md # 产品方向与优先级
└── memory/
├── decisions/
│ ├── 2026-01.md # 1月决策记录
│ └── 2026-02.md # 2月决策记录
└── topics/
├── auth.md # 认证模块决策
└── payment.md # 支付模块决策
Agent行为:
效果:决策追溯从平均30分钟缩短至即时检索,避免重复讨论已决策事项。
场景描述:独立开发者同时进行3个项目,需要Agent为每个项目维护独立记忆上下文。
配置:
详细代码示例已移至
references/detail.md
Agent行为:
效果:3个项目并行开发,Agent不会混淆上下文,切换成本从5分钟降至0。
支持文本输入、文件上传和API调用三种方式。
需要支持SKILL.md的AI Agent平台,详见依赖说明。
输出结果建议人工审核后使用,确保符合具体业务需求。