🧠 memory-lancedb-pro

April 4, 2026 · View on GitHub

🧠 memory-lancedb-pro · 🦞OpenClaw Plugin

OpenClaw 智慧體的 AI 記憶助理

讓你的 AI 智慧體擁有真正的記憶力——跨工作階段、跨智慧體、跨時間。

基於 LanceDB 的 OpenClaw 長期記憶外掛,自動儲存偏好、決策和專案上下文,在後續工作階段中自動回憶。

OpenClaw Plugin npm version LanceDB License: MIT

English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Français | Español | Deutsch | Italiano | Русский | Português (Brasil)


為什麼選 memory-lancedb-pro?

大多數 AI 智慧體都有「失憶症」——每次新對話,之前聊過的全部清零。

memory-lancedb-pro 是 OpenClaw 的生產級長期記憶外掛,把你的智慧體變成一個真正的 AI 記憶助理——自動擷取重要資訊,讓雜訊自然衰減,在恰當的時候回憶起恰當的內容。無需手動標記,無需複雜設定。

AI 記憶助理實際效果

沒有記憶——每次都從零開始:

你: 「縮排用 tab,所有函式都要加錯誤處理。」 (下一次工作階段) 你: 「我都說了用 tab 不是空格!」 😤 (再下一次工作階段) 你: 「……我真的說了第三遍了,tab,還有錯誤處理。」

有了 memory-lancedb-pro——你的智慧體學會了、記住了:

你: 「縮排用 tab,所有函式都要加錯誤處理。」 (下一次工作階段——智慧體自動回憶你的偏好) 智慧體: (默默改成 tab 縮排,並補上錯誤處理)你: 「上個月我們為什麼選了 PostgreSQL 而不是 MongoDB?」 智慧體: 「根據我們 2 月 12 日的討論,主要原因是……」 ✅

這就是 AI 記憶助理 的價值——學習你的風格,回憶過去的決策,提供個人化的回應,不再讓你重複自己。

還能做什麼?

你能得到的
自動擷取智慧體從每次對話中學習——不需要手動呼叫 memory_store
智慧擷取LLM 驅動的 6 類分類:使用者輪廓、偏好、實體、事件、案例、模式
智慧遺忘Weibull 衰減模型——重要記憶留存,雜訊自然消退
混合檢索向量 + BM25 全文搜尋,融合交叉編碼器重排序
上下文注入相關記憶在每次回覆前自動浮現
多作用域隔離按智慧體、按使用者、按專案隔離記憶邊界
任意服務商OpenAI、Jina、Gemini、Ollama 或任意 OpenAI 相容 API
完整工具鏈CLI、備份、遷移、升級、匯入匯出——生產可用

快速開始

CPU 需求: 你的 CPU 必須支援 AVX/AVX2 指令集(Intel Sandy Bridge 2011 年後 / AMD Bulldozer 2011 年後)。LanceDB 的原生向量引擎依賴這些指令——不支援的 CPU 會導致外掛崩潰(SIGILL 非法指令錯誤)。檢查方法:grep -o 'avx[^ ]*' /proc/cpuinfo | head -1(無輸出 = 不支援)。詳見 #419

方式 A:一鍵安裝指令碼(推薦)

社群維護的 安裝指令碼 一條指令搞定安裝、升級和修復:

curl -fsSL https://raw.githubusercontent.com/CortexReach/toolbox/main/memory-lancedb-pro-setup/setup-memory.sh -o setup-memory.sh
bash setup-memory.sh

指令碼涵蓋的完整場景和其他社群工具,詳見下方 生態工具

方式 B:手動安裝

透過 OpenClaw CLI(推薦):

openclaw plugins install memory-lancedb-pro@beta

或透過 npm:

npm i memory-lancedb-pro@beta

如果用 npm 安裝,你還需要在 openclaw.jsonplugins.load.paths 中新增外掛安裝目錄的 絕對路徑。這是最常見的安裝問題。

openclaw.json 中新增設定:

{
  "plugins": {
    "slots": { "memory": "memory-lancedb-pro" },
    "entries": {
      "memory-lancedb-pro": {
        "enabled": true,
        "config": {
          "embedding": {
            "provider": "openai-compatible",
            "apiKey": "${OPENAI_API_KEY}",
            "model": "text-embedding-3-small"
          },
          "autoCapture": true,
          "autoRecall": true,
          "smartExtraction": true,
          "extractMinMessages": 2,
          "extractMaxChars": 8000,
          "sessionMemory": { "enabled": false }
        }
      }
    }
  }
}

為什麼用這些預設值?

  • autoCapture + smartExtraction → 智慧體自動從每次對話中學習
  • autoRecall → 相關記憶在每次回覆前自動注入
  • extractMinMessages: 2 → 正常兩輪對話即觸發擷取
  • sessionMemory.enabled: false → 避免工作階段摘要在初期汙染檢索結果

驗證並重啟:

openclaw config validate
openclaw gateway restart
openclaw logs --follow --plain | grep "memory-lancedb-pro"

你應該能看到:

  • memory-lancedb-pro: smart extraction enabled
  • memory-lancedb-pro@...: plugin registered

完成!你的智慧體現在擁有長期記憶了。

更多安裝路徑(現有使用者、升級)

已在使用 OpenClaw?

  1. plugins.load.paths 中新增外掛的 絕對路徑
  2. 繫結記憶插槽:plugins.slots.memory = "memory-lancedb-pro"
  3. 驗證:openclaw plugins info memory-lancedb-pro && openclaw memory-pro stats

從 v1.1.0 之前的版本升級?

# 1) 備份
openclaw memory-pro export --scope global --output memories-backup.json
# 2) 試執行
openclaw memory-pro upgrade --dry-run
# 3) 執行升級
openclaw memory-pro upgrade
# 4) 驗證
openclaw memory-pro stats

詳見 CHANGELOG-v1.1.0.md 了解行為變更和升級說明。

Telegram Bot 快速匯入(點選展開)

如果你在使用 OpenClaw 的 Telegram 整合,最簡單的方式是直接給主 Bot 發訊息,而不是手動編輯設定檔。

以下為英文原文,方便直接複製傳送給 Bot:

Help me connect this memory plugin with the most user-friendly configuration: https://github.com/CortexReach/memory-lancedb-pro

Requirements:
1. Set it as the only active memory plugin
2. Use Jina for embedding
3. Use Jina for reranker
4. Use gpt-4o-mini for the smart-extraction LLM
5. Enable autoCapture, autoRecall, smartExtraction
6. extractMinMessages=2
7. sessionMemory.enabled=false
8. captureAssistant=false
9. retrieval mode=hybrid, vectorWeight=0.7, bm25Weight=0.3
10. rerank=cross-encoder, candidatePoolSize=12, minScore=0.6, hardMinScore=0.62
11. Generate the final openclaw.json config directly, not just an explanation

生態工具

memory-lancedb-pro 是核心外掛。社群圍繞它建構了配套工具,讓安裝和日常使用更加順暢:

安裝指令碼——一鍵安裝、升級和修復

CortexReach/toolbox/memory-lancedb-pro-setup

不只是簡單的安裝器——指令碼能智慧處理各種常見場景:

你的情況指令碼會做什麼
從未安裝全新下載 → 安裝依賴 → 選擇設定 → 寫入 openclaw.json → 重啟
透過 git clone 安裝,卡在舊版本自動 git fetch + checkout 到最新 → 重裝依賴 → 驗證
設定中有無效欄位自動偵測並透過 schema 過濾移除不支援的欄位
透過 npm 安裝跳過 git 更新,提醒你自行執行 npm update
openclaw CLI 因無效設定崩潰降級方案:直接從 openclaw.json 檔案讀取工作目錄路徑
extensions/ 而非 plugins/從設定或檔案系統自動偵測外掛位置
已是最新版僅執行健康檢查,不做變動
bash setup-memory.sh                    # 安裝或升級
bash setup-memory.sh --dry-run          # 僅預覽
bash setup-memory.sh --beta             # 包含預發布版本
bash setup-memory.sh --uninstall        # 還原設定並移除外掛

內建服務商預設:Jina / DashScope / SiliconFlow / OpenAI / Ollama,或自帶任意 OpenAI 相容 API。完整用法(含 --ref--selfcheck-only 等)詳見安裝指令碼 README

Claude Code / OpenClaw Skill——AI 引導式設定

CortexReach/memory-lancedb-pro-skill

安裝這個 Skill,你的 AI 智慧體(Claude Code 或 OpenClaw)就能深度掌握 memory-lancedb-pro 的所有功能。只需說 「help me enable the best config」 即可獲得:

  • 7 步引導式設定流程,提供 4 套部署方案:
    • 滿血版(Jina + OpenAI)/ 省錢版(免費 SiliconFlow 重排序)/ 簡約版(僅 OpenAI)/ 全本機版(Ollama,零 API 成本)
  • 全部 9 個 MCP 工具 的正確用法:memory_recallmemory_storememory_forgetmemory_updatememory_statsmemory_listself_improvement_logself_improvement_extract_skillself_improvement_review (完整工具集需要設定 enableManagementTools: true——預設快速設定僅公開 4 個核心工具)
  • 避開常見陷阱:workspace 外掛啟用、autoRecall 預設 false、jiti 快取、環境變數、作用域隔離等

Claude Code 安裝:

git clone https://github.com/CortexReach/memory-lancedb-pro-skill.git ~/.claude/skills/memory-lancedb-pro

OpenClaw 安裝:

git clone https://github.com/CortexReach/memory-lancedb-pro-skill.git ~/.openclaw/workspace/skills/memory-lancedb-pro-skill

影片教學

完整演示:安裝、設定、混合檢索內部原理。

YouTube Video https://youtu.be/MtukF1C8epQ

Bilibili Video https://www.bilibili.com/video/BV1zUf2BGEgn/


架構

┌─────────────────────────────────────────────────────────┐
│                   index.ts (入口)                        │
│  外掛註冊 · 設定解析 · 生命週期鉤子                        │
└────────┬──────────┬──────────┬──────────┬───────────────┘
         │          │          │          │
    ┌────▼───┐ ┌────▼───┐ ┌───▼────┐ ┌──▼──────────┐
    │ store  │ │embedder│ │retriever│ │   scopes    │
    │ .ts    │ │ .ts    │ │ .ts    │ │    .ts      │
    └────────┘ └────────┘ └────────┘ └─────────────┘
         │                     │
    ┌────▼───┐           ┌─────▼──────────┐
    │migrate │           │noise-filter.ts │
    │ .ts    │           │adaptive-       │
    └────────┘           │retrieval.ts    │
                         └────────────────┘
    ┌─────────────┐   ┌──────────┐
    │  tools.ts   │   │  cli.ts  │
    │ (智慧體 API)│   │ (CLI)    │
    └─────────────┘   └──────────┘

完整架構解析見 docs/memory_architecture_analysis.md

檔案說明(點選展開)
檔案用途
index.ts外掛入口,註冊 OpenClaw Plugin API、解析設定、掛載生命週期鉤子
openclaw.plugin.json外掛中繼資料 + 完整 JSON Schema 設定宣告
cli.tsCLI 指令:memory-pro list/search/stats/delete/delete-bulk/export/import/reembed/upgrade/migrate
src/store.tsLanceDB 儲存層:建表 / 全文索引 / 向量搜尋 / BM25 搜尋 / CRUD
src/embedder.tsEmbedding 抽象層,相容任意 OpenAI 相容 API
src/retriever.ts混合檢索引擎:向量 + BM25 → 混合融合 → 重排序 → 生命週期衰減 → 過濾
src/scopes.ts多作用域存取控制
src/tools.ts智慧體工具定義:memory_recallmemory_storememory_forgetmemory_update + 管理工具
src/noise-filter.ts過濾智慧體拒絕回覆、元問題、打招呼等低品質內容
src/adaptive-retrieval.ts判斷查詢是否需要記憶檢索
src/migrate.ts從內建 memory-lancedb 遷移到 Pro
src/smart-extractor.tsLLM 驅動的 6 類擷取,支援 L0/L1/L2 分層儲存和兩階段去重
src/decay-engine.tsWeibull 拉伸指數衰減模型
src/tier-manager.ts三級晉升/降級:外圍 ↔ 工作 ↔ 核心

核心功能

混合檢索

查詢 → embedQuery() ─┐
                      ├─→ 混合融合 → 重排序 → 生命週期衰減加權 → 長度正規化 → 過濾
查詢 → BM25 全文 ─────┘
  • 向量搜尋 — 基於 LanceDB ANN 的語意相似度(餘弦距離)
  • BM25 全文搜尋 — 透過 LanceDB FTS 索引進行精確關鍵字比對
  • 混合融合 — 以向量分數為基礎,BM25 命中結果獲得加權提升(非標準 RRF——針對實際召回品質調優)
  • 可設定權重vectorWeightbm25WeightminScore

交叉編碼器重排序

  • 內建 JinaSiliconFlowVoyage AIPinecone 適配器
  • 相容任意 Jina 相容端點(如 Hugging Face TEI、DashScope)
  • 混合打分:60% 交叉編碼器 + 40% 原始融合分數
  • 優雅降級:API 失敗時回退到餘弦相似度

多階段評分管線

階段效果
混合融合結合語意召回和精確比對召回
交叉編碼器重排序提升語意精確命中的排名
生命週期衰減加權Weibull 時效性 + 存取頻率 + 重要性 × 置信度
長度正規化防止長條目主導結果(錨點:500 字元)
硬最低分移除無關結果(預設:0.35)
MMR 多樣性餘弦相似度 > 0.85 → 降權

智慧記憶擷取(v1.1.0)

  • LLM 驅動的 6 類擷取:使用者輪廓、偏好、實體、事件、案例、模式
  • L0/L1/L2 分層儲存:L0(一句話索引)→ L1(結構化摘要)→ L2(完整敘述)
  • 兩階段去重:向量相似度預過濾(≥0.7)→ LLM 語意決策(CREATE/MERGE/SKIP)
  • 類別感知合併profile 始終合併,events/cases 僅追加

記憶生命週期管理(v1.1.0)

  • Weibull 衰減引擎:綜合分數 = 時效性 + 頻率 + 內在價值
  • 三級晉升外圍 ↔ 工作 ↔ 核心,閾值可設定
  • 存取強化:頻繁被召回的記憶衰減更慢(類似間隔重複機制)
  • 重要性調制半衰期:重要記憶衰減更慢

多作用域隔離

  • 內建作用域:globalagent:<id>custom:<name>project:<id>user:<id>
  • 透過 scopes.agentAccess 實現智慧體級別的存取控制
  • 預設:每個智慧體存取 global + 自己的 agent:<id> 作用域

自動擷取與自動回憶

  • 自動擷取agent_end):從對話中擷取偏好/事實/決策/實體,去重後每輪最多儲存 3 條
  • 自動回憶before_agent_start):注入 <relevant-memories> 上下文(最多 3 條)

雜訊過濾與自適應檢索

  • 過濾低品質內容:智慧體拒絕回覆、元問題、打招呼
  • 跳過檢索:打招呼、斜線指令、簡單確認、表情符號
  • 強制檢索:記憶關鍵字(「記得」、「之前」、「上次」)
  • CJK 感知閾值(中文:6 字元 vs 英文:15 字元)

與內建 memory-lancedb 的對比(點選展開)
功能內建 memory-lancedbmemory-lancedb-pro
向量搜尋
BM25 全文搜尋-
混合融合(向量 + BM25)-
交叉編碼器重排序(多服務商)-
時效性提升和時間衰減-
長度正規化-
MMR 多樣性-
多作用域隔離-
雜訊過濾-
自適應檢索-
管理 CLI-
工作階段記憶-
任務感知 Embedding-
LLM 智慧擷取(6 類)-有(v1.1.0)
Weibull 衰減 + 層級晉升-有(v1.1.0)
任意 OpenAI 相容 Embedding有限

設定

完整設定範例
{
  "embedding": {
    "apiKey": "${JINA_API_KEY}",
    "model": "jina-embeddings-v5-text-small",
    "baseURL": "https://api.jina.ai/v1",
    "dimensions": 1024,
    "taskQuery": "retrieval.query",
    "taskPassage": "retrieval.passage",
    "normalized": true
  },
  "dbPath": "~/.openclaw/memory/lancedb-pro",
  "autoCapture": true,
  "autoRecall": true,
  "retrieval": {
    "mode": "hybrid",
    "vectorWeight": 0.7,
    "bm25Weight": 0.3,
    "minScore": 0.3,
    "rerank": "cross-encoder",
    "rerankApiKey": "${JINA_API_KEY}",
    "rerankModel": "jina-reranker-v3",
    "rerankEndpoint": "https://api.jina.ai/v1/rerank",
    "rerankProvider": "jina",
    "candidatePoolSize": 20,
    "recencyHalfLifeDays": 14,
    "recencyWeight": 0.1,
    "filterNoise": true,
    "lengthNormAnchor": 500,
    "hardMinScore": 0.35,
    "timeDecayHalfLifeDays": 60,
    "reinforcementFactor": 0.5,
    "maxHalfLifeMultiplier": 3
  },
  "enableManagementTools": false,
  "scopes": {
    "default": "global",
    "definitions": {
      "global": { "description": "Shared knowledge" },
      "agent:discord-bot": { "description": "Discord bot private" }
    },
    "agentAccess": {
      "discord-bot": ["global", "agent:discord-bot"]
    }
  },
  "sessionMemory": {
    "enabled": false,
    "messageCount": 15
  },
  "smartExtraction": true,
  "llm": {
    "apiKey": "${OPENAI_API_KEY}",
    "model": "gpt-4o-mini",
    "baseURL": "https://api.openai.com/v1"
  },
  "extractMinMessages": 2,
  "extractMaxChars": 8000
}
Embedding 服務商

相容 任意 OpenAI 相容 Embedding API

服務商模型Base URL維度
Jina(推薦)jina-embeddings-v5-text-smallhttps://api.jina.ai/v11024
OpenAItext-embedding-3-smallhttps://api.openai.com/v11536
Voyagevoyage-4-lite / voyage-4https://api.voyageai.com/v11024 / 1024
Google Geminigemini-embedding-001https://generativelanguage.googleapis.com/v1beta/openai/3072
Ollama(本地)nomic-embed-texthttp://localhost:11434/v1取決於模型
重排序服務商

交叉編碼器重排序透過 rerankProvider 支援多個服務商:

服務商rerankProvider範例模型
Jina(預設)jinajina-reranker-v3
SiliconFlow(有免費額度)siliconflowBAAI/bge-reranker-v2-m3
Voyage AIvoyagererank-2.5
Pineconepineconebge-reranker-v2-m3

任何 Jina 相容的重排序端點也可以使用——設定 rerankProvider: "jina" 並將 rerankEndpoint 指向你的服務(如 Hugging Face TEI、DashScope qwen3-rerank)。

智慧擷取(LLM)— v1.1.0

smartExtraction 啟用(預設 true)時,外掛使用 LLM 智慧擷取和分類記憶,取代基於正則的觸發方式。

欄位類型預設值說明
smartExtractionbooleantrue是否啟用 LLM 智慧 6 類別擷取
llm.authstringapi-keyapi-key 使用 llm.apiKey / embedding.apiKeyoauth 預設使用外掛級 OAuth token 檔案
llm.apiKeystring(複用 embedding.apiKeyLLM 服務商 API Key
llm.modelstringopenai/gpt-oss-120bLLM 模型名稱
llm.baseURLstring(複用 embedding.baseURLLLM API 端點
llm.oauthProviderstringopenai-codexllm.authoauth 時使用的 OAuth provider id
llm.oauthPathstring~/.openclaw/.memory-lancedb-pro/oauth.jsonllm.authoauth 時使用的 OAuth token 檔案
llm.timeoutMsnumber30000LLM 請求逾時(毫秒)
extractMinMessagesnumber2觸發擷取的最小訊息數
extractMaxCharsnumber8000傳送給 LLM 的最大字元數

OAuth llm 設定(使用現有 Codex / ChatGPT 登入快取來發送 LLM 請求):

{
  "llm": {
    "auth": "oauth",
    "oauthProvider": "openai-codex",
    "model": "gpt-5.4",
    "oauthPath": "${HOME}/.openclaw/.memory-lancedb-pro/oauth.json",
    "timeoutMs": 30000
  }
}

llm.auth: "oauth" 說明:

  • llm.oauthProvider 目前僅支援 openai-codex
  • OAuth token 預設存放在 ~/.openclaw/.memory-lancedb-pro/oauth.json
  • 如需自訂路徑,可設定 llm.oauthPath
  • auth login 會在 OAuth 檔案旁邊快照原來的 api-key 模式 llm 設定;auth logout 在可用時會恢復這份快照。
  • api-key 切到 oauth 時不會自動沿用 llm.baseURL;只有在你明確需要自訂 ChatGPT/Codex 相容後端時,才應在 oauth 模式下手動設定。
生命週期設定(衰減 + 層級)
欄位預設值說明
decay.recencyHalfLifeDays30Weibull 時效性衰減的基礎半衰期
decay.frequencyWeight0.3存取頻率在綜合分數中的權重
decay.intrinsicWeight0.3重要性 × 置信度 的權重
decay.betaCore0.8核心 記憶的 Weibull beta
decay.betaWorking1.0工作 記憶的 Weibull beta
decay.betaPeripheral1.3外圍 記憶的 Weibull beta
tier.coreAccessThreshold10晉升到 核心 所需的最小召回次數
tier.peripheralAgeDays60降級過期記憶的天數閾值
存取強化

頻繁被召回的記憶衰減更慢(類似間隔重複機制)。

設定項(在 retrieval 下):

  • reinforcementFactor(0-2,預設 0.5)— 設為 0 可停用
  • maxHalfLifeMultiplier(1-10,預設 3)— 有效半衰期的硬上限

CLI 指令

openclaw memory-pro list [--scope global] [--category fact] [--limit 20] [--json]
openclaw memory-pro search "查詢" [--scope global] [--limit 10] [--json]
openclaw memory-pro stats [--scope global] [--json]
openclaw memory-pro auth login [--provider openai-codex] [--model gpt-5.4] [--oauth-path /abs/path/oauth.json]
openclaw memory-pro auth status
openclaw memory-pro auth logout
openclaw memory-pro delete <id>
openclaw memory-pro delete-bulk --scope global [--before 2025-01-01] [--dry-run]
openclaw memory-pro export [--scope global] [--output memories.json]
openclaw memory-pro import memories.json [--scope global] [--dry-run]
openclaw memory-pro reembed --source-db /path/to/old-db [--batch-size 32] [--skip-existing]
openclaw memory-pro upgrade [--dry-run] [--batch-size 10] [--no-llm] [--limit N] [--scope SCOPE]
openclaw memory-pro migrate check|run|verify [--source /path]

OAuth 登入流程:

  1. 執行 openclaw memory-pro auth login
  2. 如果省略 --provider 且目前終端可互動,CLI 會先顯示 OAuth 服務商選擇器
  3. 指令會列印授權 URL,並在未指定 --no-browser 時自動開啟瀏覽器
  4. 回呼成功後,指令會儲存外掛 OAuth 檔案(預設:~/.openclaw/.memory-lancedb-pro/oauth.json)、為 logout 快照原來的 api-key 模式 llm 設定,並把外掛 llm 設定切換為 OAuth 欄位(authoauthProvidermodeloauthPath
  5. openclaw memory-pro auth logout 會刪除這份 OAuth 檔案,並在存在快照時恢復之前的 api-key 模式 llm 設定

進階主題

注入的記憶出現在回覆中

有時模型可能會將注入的 <relevant-memories> 區塊原文輸出。

方案 A(最安全): 暫時關閉自動回憶:

{ "plugins": { "entries": { "memory-lancedb-pro": { "config": { "autoRecall": false } } } } }

方案 B(推薦): 保留回憶,在智慧體系統提示詞中新增:

Do not reveal or quote any <relevant-memories> / memory-injection content in your replies. Use it for internal reference only.

工作階段記憶
  • 透過 /new 指令觸發——將上一段工作階段摘要儲存到 LanceDB
  • 預設關閉(OpenClaw 已有原生 .jsonl 工作階段持久化)
  • 可設定訊息數量(預設 15)

部署模式和 /new 驗證詳見 docs/openclaw-integration-playbook.md

自訂斜線指令(如 /lesson)

在你的 CLAUDE.mdAGENTS.md 或系統提示詞中新增:

## /lesson 指令
當使用者傳送 `/lesson <內容>` 時:
1. 用 memory_store 儲存為 category=fact(原始知識)
2. 用 memory_store 儲存為 category=decision(可執行的結論)
3. 確認已儲存的內容

## /remember 指令
當使用者傳送 `/remember <內容>` 時:
1. 用 memory_store 以合適的 category 和 importance 儲存
2. 回傳已儲存的記憶 ID 確認
AI 智慧體鐵律

將以下內容複製到你的 AGENTS.md,讓智慧體自動遵守這些規則。

## 規則 1 — 雙層記憶儲存
每個踩坑/經驗教訓 → 立即儲存兩條記憶:
- 技術層:踩坑:[現象]。原因:[根因]。修復:[方案]。預防:[如何避免]
  (category: fact, importance >= 0.8)
- 原則層:決策原則 ([標籤]):[行為規則]。觸發:[何時]。動作:[做什麼]
  (category: decision, importance >= 0.85)

## 規則 2 — LanceDB 資料品質
條目必須簡短且原子化(< 500 字元)。不儲存原始對話摘要或重複內容。

## 規則 3 — 重試前先回憶
任何工具呼叫失敗時,必須先用 memory_recall 搜尋相關關鍵字,再重試。

## 規則 4 — 確認目標程式碼庫
修改前確認你操作的是 memory-lancedb-pro 還是內建 memory-lancedb。

## 規則 5 — 修改外掛程式碼後清除 jiti 快取
修改 plugins/ 下的 .ts 檔案後,必須先清除 /tmp/jiti/ 目錄再重啟 openclaw gateway。
資料庫 Schema

LanceDB 表 memories

欄位類型說明
idstring (UUID)主鍵
textstring記憶文字(全文索引)
vectorfloat[]Embedding 向量
categorystring儲存類別:preference / fact / decision / entity / reflection / other
scopestring作用域識別碼(如 globalagent:main
importancefloat重要性分數 0-1
timestampint64建立時間戳記(毫秒)
metadatastring (JSON)擴充中繼資料

v1.1.0 常用 metadata 欄位:l0_abstractl1_overviewl2_contentmemory_categorytieraccess_countconfidencelast_accessed_at

關於分類的說明: 頂層 category 欄位使用 6 個儲存類別。智慧擷取的 6 類語意標籤(profile / preferences / entities / events / cases / patterns)儲存在 metadata.memory_category 中。

故障排除

"Cannot mix BigInt and other types"(LanceDB / Apache Arrow)

在 LanceDB 0.26+ 上,某些數值欄位可能以 BigInt 形式回傳。升級到 memory-lancedb-pro >= 1.0.14——外掛現在會在運算前使用 Number(...) 進行類型轉換。


文件

文件說明
OpenClaw 整合手冊部署模式、驗證、迴歸矩陣
記憶架構分析完整架構深度解析
CHANGELOG v1.1.0v1.1.0 行為變更和升級說明
長上下文分塊長文件分塊策略

測試版:智慧記憶 v1.1.0

狀態:Beta(測試版)——透過 npm i memory-lancedb-pro@beta 安裝。使用 latest 的穩定版使用者不受影響。

功能說明
智慧擷取LLM 驅動的 6 類擷取,支援 L0/L1/L2 中繼資料。停用時回退到正則模式。
生命週期評分Weibull 衰減整合到檢索中——高頻和高重要性記憶排名更高。
層級管理三級系統(核心 → 工作 → 外圍),自動晉升/降級。

回饋:GitHub Issues · 回退:npm i memory-lancedb-pro@latest


依賴

套件用途
@lancedb/lancedb ≥0.26.2向量資料庫(ANN + FTS)
openai ≥6.21.0OpenAI 相容 Embedding API 客戶端
@sinclair/typebox 0.34.48JSON Schema 類型定義

Contributors

@win4r @kctony @Akatsuki-Ryu @JasonSuz @Minidoracat @furedericca-lab @joe2643 @AliceLJY @chenjiyong

Full list: Contributors

Star History

Star History Chart

授權條款

MIT


我的微信 QR Code