Four-tier memory architecture with automated Dreaming pipeline, three-way synchronization, Active Memory recall, and two-stage auto-extraction.
TierLayerTechnologyPurposeL0Runtime Retrievalmemory-core plugin (Ollama bge-m3 → SQLite + sqlite-vec)Real-time semantic + BM25 hybrid searchL0Cloud RecallMemOS Cloud plugin ( optional)Cross-device memory capture and recallL0Active MemoryBuilt-in OpenClaw pluginPre-reply sub-agent memory search + context injectionL1Working Memorymemory/YYYY-MM-DD.md filesDaily summaries, todos, technical notesL2aLong-term IndexMEMORY.md (~90 lines, read-only base)Bidirectional index → ARCHIVE.md, 0% Auto-Extracted pollutionL2bDetailed ArchiveARCHIVE.md (~220 lines)Full records with ← MEMORY.md:XX reverse referencesL2cStructured KBfacts.sqlite (entity/key/value)Precise lookup for IPs, ports, versions; activation/decay tracking
PipelineScheduleDescriptionDreaming03:00 UTC dailyScan logs → DeepSeek analysis → promote to L2Three-way Sync18:00 / 20:00 / 22:00 CSTCloud ↔ Markdown ↔ Vector alignmentauto-memory v318:30 / 22:30 CSTMemOS Cloud facts → qwen3 filter → Stage1: ARCHIVE.md (SHA-256 dedup) → Stage2: MEMORY.md (summary)session-extract22:00 CSTScan session JSONL → MemOS extractor/reranker → .learnings/ + memory/YYYY-MM-DD.md (two-pass)
text
agent_end → MemOS Cloud (cloud extraction)
↓
┌─ 18:00 sync-pull (Cloud → local cache) ─┐
│ 18:30 auto-memory.py │
│ → Stage 1: ARCHIVE.md (SHA-256 dedup) │
│ → Stage 2: MEMORY.md (one-line summary) │
│ │
│ 20:00 sync-push + reindex │
│ 22:00 session-extract.py │
│ → Pass 1: .learnings/ERRORS.md │
│ → Pass 2: memory/YYYY-MM-DD.md │
│ → archive analyzed → trash │
└───────────────────────────────────────────┘
before_agent_start → MemOS Cloud recall
+ Active Memory sub-agent
+ memory-core (bge-m3 + BM25)
↓
Layered context injected before reply
ScriptPurposeauto_memory_extract.pyv3 two-stage pipeline: ARCHIVE.md archive → MEMORY.md summarysession-extract.pyScan session JSONL → .learnings/ + memory/ (two-pass)seed-facts-db.pyInitialize facts.sqlite from ARCHIVE.mdfacts_activation.pyHebbian activation + daily decay + Hot/Warm/Cooldaily-memory-pipeline.sh6-stage unified daily pipelinewrite_file.pyCross-platform text writer (UTF-8/BOM/CRLF)auto-setup.shOne-command Ollama + memory-core + MemOS Cloud setup
bash
bash scripts/auto-setup.sh
bash
bash scripts/auto-setup.sh --skip-ollama # Skip Ollama install
bash scripts/auto-setup.sh --skip-memos # Skip MemOS Cloud
bash scripts/auto-setup.sh --dry-run # Preview only
See references/setup-guide.md for step-by-step manual configuration.
Incompatible. Both use the same OpenClaw memory slot.
Fix: Disable in openclaw.json:
json
{
"plugins": {
"disabled": ["subconscious-personality-guardian"],
"deny": ["subconscious-personality-guardian"]
}
}
Compatible — designed to work in layers.
text
User message → MemOS Cloud (static facts) → memory-core (recent context)
Compatible — triple-layer recall.
text
User message
→ Active Memory sub-agent (searches all memory stores)
→ MemOS Cloud (injects long-term facts & preferences)
→ memory-core (semantic + BM25 hybrid retrieval)
→ Agent receives layered context
Designed to work together. MemOS captures at agent_end, syncs to local files, then auto-memory reads those files for MEMORY.md curation. v1.10 adds a second channel: memos-extractor-0.6b API (MemOS self-developed model) returns structured facts + preferences, cross-validated against qwen3 output.
See references/architecture.md for full configuration.
text
~/.openclaw/workspace/
├── memory/
│ ├── YYYY-MM-DD.md # Daily working memory (auto-indexed)
│ ├── MEMORY_INDEX.md # Vector BM25 cluster summaries
│ └── .sync-*.json # Sync state files
├── MEMORY.md # Long-term memory index (~90 lines)
├── ARCHIVE.md # Detailed archive (~220 lines, ← bidirectional refs)
├── AGENTS.md # Runtime context + memory rules
└── user_workspace/
├── memos-cloud-cache/ # Cloud-pulled memory (isolated from index)
│ └── memos-cloud-*.md
├── scripts/
│ └── sync-*.py # Sync scripts (pull/push/vector)
└── skills/
└── anamnesis-hub/ # Installed from ClawHub
└── scripts/ # Pipeline scripts (auto-memory, session-extract, etc.)
auto_memory_extract.py — v3 two-stage pipeline (ARCHIVE.md → MEMORY.md)session-extract.py — Session JSONL scan → .learnings/ + memory/seed-facts-db.py — Initialize facts.sqlite from ARCHIVE.mdfacts_activation.py — Hebbian activation + daily decaydaily-memory-pipeline.sh — 6-stage unified daily pipelinewrite_file.py — Cross-platform text file writerauto-setup.sh — One-command Ollama + memory-core + MemOS Cloud setupSee references/INDEX.md for full documentation index.
👉 完整文档请查阅 references/INDEX.md
文档说明references/INDEX.md📌 文档入口索引(快速定位)references/architecture.md四层架构设计、插件配置、协同流程references/setup-guide.md环境配置、手动安装步骤、cron 设置references/memory-directory.mdmemory/ 目录结构、状态文件、LCM 机制references/sync-api.mdMemOS Cloud API 参考references/scripts-reference.md所有脚本统一说明(用途、cron、依赖)references/pipeline-stages.md日终管线 6 阶段详解references/candidates-review.mdP3 记忆候选审核机制references/upgrade-reset.md升级路径、重置流程、卸载步骤