你的 Agent 是不是越聊越「健忘」?上一輪剛說好的命名規範,下一輪又從頭問;工具呼叫日誌堆滿上下文,Token 帳單直線上漲,任務通過率卻在下滑。2026 年 5 月,騰訊開源了 TencentDB Agent Memory(MIT 許可)——一套把符號化短期記憶與四層長期記憶組合在一起的本地記憶引擎,預設跑在 SQLite + sqlite-vec 上,零外部 API 依賴。
對 Kvmjet 讀者——iOS、Flutter 與 AI 應用開發者——這意味著:你可以在 OpenClaw 上裝一個外掛,十分鐘內讓 Coding Agent 記住專案 SOP、使用者偏好與跨會話上下文,而不必自建向量庫或把整段歷史塞進 prompt。本文按「能動手」的標準寫:先講原理,再給可複製命令,最後說明在 Cloud Mac / Apple Silicon 上怎麼與現有工作流並排落地。
核心結論:Agent 缺的不是更大的 context window,而是分層、可溯源的記憶。TencentDB Agent Memory 在官方基準裡把 WideSearch 超長 Session 通過率從 33% 提到 50%,Token 消耗降低約 61%——對多輪 Agent 呼叫場景,這比單純換更大模型更划算。
1. 為什麼 Agent 需要分層記憶,而不只是「塞更多上下文」
長程 Agent 的典型失敗模式不是模型不夠聰明,而是上下文被無關資訊淹沒:一次 grep 回傳五千行、瀏覽器抓取塞滿 JSON、連續五十個 SWE-bench 子任務疊在同一會話裡——模型看到的全是雜訊,關鍵決策訊號被擠到視窗邊緣。
常見應對有三條路,各有硬傷:
- 暴力截斷:直接丟掉早期訊息,快但不可逆,使用者偏好與錯誤根因一起消失。
- 整段摘要:用 LLM 壓縮歷史,省 Token 卻容易「摘要幻覺」,原始證據無法核對。
- 純向量 RAG:把對話切片 embedding 後扁平檢索,缺乏「使用者畫像 → 場景 → 原子事實」的層次,召回像在一堆便利貼裡亂翻。
TencentDB Agent Memory 走第四條路:分層 + 符號化 + 可下鑽溯源。短期任務用 Mermaid 畫布表達狀態機,厚重日誌卸載到 refs/*.md;跨會話經驗沿 L0 Conversation → L1 Atom → L2 Scenario → L3 Persona 逐層提煉,每一層都保留 node_id 指回底層原文。官方文件把這套設計稱為「漸進式披露」——Agent 平時只看高層結構,需要考證時再下鑽,詳見騰訊雲 Agent Memory 產品介紹。
對行動與 AI 產品團隊,這直接對應三個日常痛點:Code Review Agent 要記住團隊的 Swift 風格指南;客服 Bot 要記住某大客戶的上次投訴;內部運維 Agent 要記住「staging 禁止直接 kubectl delete」——這些都不該每次會話重講,也不該被不可逆摘要掉。
2. 核心概念:短期卸載與 L0–L3 長期金字塔
2.1 符號化短期記憶(Context Offload)
工具呼叫結果是 Token 黑洞。TencentDB Agent Memory 的做法是卸載 + 符號化:完整日誌寫入外部檔案系統,上下文只保留一張帶 node_id 的 Mermaid 任務圖譜。Agent 按圖譜推理;若某步結論可疑,用 node_id grep 回 refs/ 下的原文——100% 可追溯,不是黑盒摘要。
該能力在外掛 ≥ 0.3.4 可選開啟,需在 OpenClaw 註冊 contextEngine slot 並執行官方 patch 腳本。官方 WideSearch 基準:通過率 +51.52%,Token −61.38%。
2.2 四層長期記憶(L0 → L3)
長期側是語意金字塔,而非扁平向量堆:
- L0 Conversation:原始對話與工具軌跡,證據層。
- L1 Atom:結構化事實(「使用者偏好 Tab 縮排 4 空格」)。
- L2 Scenario:場景塊(「Flutter 發布前檢查清單」)。
- L3 Persona:使用者/專案畫像,日常召回優先讀這一層。
召回採用 BM25 + 向量 + RRF 混合檢索,避免純語意搜尋漏掉精確關鍵字。企業可選騰訊雲向量資料庫(TCVDB)後端;PoC 階段本地 SQLite 足夠。架構與 API 以GitHub 倉庫 README為準。
2.3 接入方式一覽
目前兩條主路徑:
- OpenClaw 外掛:
@tencentdb-agent-memory/memory-tencentdb,Node.js ≥ 22.16,一條命令安裝。 - Hermes Gateway:Docker 映像或掛載外掛目錄,適合已有 Hermes 編排的團隊。
若你已在 Kvmjet 環境跑 OpenClaw 專題頁裡的 Gateway,加記憶層只需多一個外掛設定,不必推倒重來。
| 層級 | 儲存內容 | 典型用途 | 召回方式 |
|---|---|---|---|
| 短期 · refs | 完整工具日誌 | 排錯、稽核 | 按 node_id 下鑽 |
| 短期 · Mermaid | 任務狀態圖譜 | 長任務推理 | 常駐上下文 |
| L0–L1 | 對話與原子事實 | 精確查證 | 混合檢索 |
| L2–L3 | 場景與畫像 | 跨會話個人化 | 優先注入 prompt |
3. 10 分鐘實操:OpenClaw 外掛安裝與啟用
以下在已安裝 OpenClaw(≥ 2026.3.13)的機器上驗證;Cloud Mac 上請先確認 node -v ≥ 22.16。
3.1 安裝外掛
openclaw plugins install @tencentdb-agent-memory/memory-tencentdb openclaw gateway restart
升級時用原生命令,避免語意化版本範圍導致外掛被停用:
openclaw plugins update @tencentdb-agent-memory/memory-tencentdb
3.2 零設定啟用長期記憶
編輯 ~/.openclaw/openclaw.json:
{
"memory-tencentdb": {
"enabled": true
}
}
儲存後重啟 Gateway。外掛會自動完成:對話錄製、記憶提取、場景歸納、Persona 生成、下一輪召回。預設資料目錄在本地 SQLite,無需騰訊雲帳號。
3.3 可選:啟用短期記憶壓縮(≥ 0.3.4)
長任務或多工具鏈場景建議開啟。分兩步:
步驟 1 — 註冊 contextEngine slot:
{
"memory-tencentdb": {
"enabled": true,
"config": {
"offload": { "enabled": true }
}
},
"plugins": {
"slots": {
"contextEngine": "memory-tencentdb"
}
}
}
步驟 2 — 在倉庫根目錄執行官方 patch(注入 after-tool-call 鉤子):
bash scripts/openclaw-after-tool-call-messages.patch.sh
腳本來自TencentDB-Agent-Memory/scripts,克隆倉庫後執行即可。
3.4 驗收清單(5 分鐘)
- 同一 Session 內連續執行 3 次帶大輸出的工具呼叫,觀察上下文是否出現 Mermaid 圖譜而非全文日誌。
- 新開 Session,用自然語言問「我上次說的程式碼風格是什麼」——應能召回 L1/L3 層資訊。
- 檢查本地資料目錄(預設 SQLite 檔案)體積是否隨對話增長;PoC 階段建議定期備份該目錄。
若你同時評估其他 Agent 棧,可參考本站Strix AI Agent 部署教學對比「無記憶層」與「有記憶層」在長任務上的差異——Security Agent 與 Coding Agent 對記憶的訴求不同,但 Token 經濟學類似。
4. 與 Cloud Mac / Apple Silicon 的關聯場景
記憶引擎是常駐背景服務,與「偶爾開 IDE 寫程式」的資源輪廓不同。在 Kvmjet M4 Cloud Mac 上,我們觀察到以下幾類高匹配場景:
- OpenClaw Gateway 7×24:M4 Mac mini 待機約 4W,適合內部值班 Agent;記憶 SQLite 與 Gateway 同機,減少網路延遲與資料出境顧慮。
- 統一記憶體 + sqlite-vec:向量檢索在 Apple Silicon 上受益於高記憶體頻寬;16 GB 節點可同時跑 Gateway、記憶庫與輕量 Ollama 評測,無需再租一台 x86 向量庫伺服器。
- iOS / Flutter 團隊同域:Xcode 建置、Fastlane 與 Coding Agent 共用 Cloud Mac 時,Agent Memory 可記住「此 App 的憑證 Profile 別名」「Flutter flavor 命名」——與遠端 M4 打包機 CI/CD 方案並排,減少「建置機一套、Agent 另一套」的上下文斷裂。
- 本地優先合規:預設 SQLite 後端不強制上雲;金融、醫療 PoC 可先在 Cloud Mac 內網驗證,再按需切換 TCVDB——比直接把對話日誌打進第三方 SaaS 更易過安全評審。
5. 成本、效能與風險對比
把「自建記憶」和「裸 OpenClaw / 純 RAG」放在同一張表裡看(2026 年 Q3 粗算,以 20 人團隊、月均 500 萬 Agent Token 為例):
| 方案 | 額外 infra | Token 影響 | 個人化 | 主要風險 |
|---|---|---|---|---|
| 無記憶 · 大視窗 | $0 | 帳單高、通過率不穩 | 弱 | 截斷丟上下文 |
| 自研向量 RAG | $200–600/月 DB | 中 | 中 | 扁平檢索、運維成本 |
| TencentDB Agent Memory 本地 | $0(複用 Gateway 機器) | 官方 −30%~−61% | 強(L0–L3) | 需備份 SQLite;單點 |
| + TCVDB 企業後端 | 按量雲向量庫 | 同左 | 強 + 多節點 | 資料上雲合規審批 |
與 API 定價的關係:記憶層省下的 Token 會直接反映在 OpenAI / Anthropic 帳單上。若你在規劃下一代模型預算,可結合本站GPT-6 API 定價預測——Agent 多輪呼叫下,記憶壓縮往往比等下一代降價更有效。
效能體感:本地 sqlite-vec 召回延遲通常在毫秒~百毫秒級,瓶頸更多在「提取記憶寫 L1/L3」的 LLM 呼叫,而非檢索本身。長 Session 建議開啟 offload,否則 L0 寫入頻率會拖慢輪次間隔。
風險清單:(1)SQLite 檔案損壞需有備份;(2)Persona 錯誤寫入會持久污染——生產環境應對 L3 更新做人工抽檢;(3)patch 腳本需隨 OpenClaw 版本升級重跑,寫入運維 runbook。
6. 常見問題 FAQ
TencentDB Agent Memory 需要連網或騰訊雲帳號嗎?
預設不需要。開箱使用本地 SQLite + sqlite-vec,對話與記憶留在本機。企業多節點或超大規模向量檢索可切換 TCVDB,但十分鐘 PoC 完全可離線完成。
短期記憶壓縮和長期記憶有什麼區別?
短期面向當前 Session 內的長任務:卸日誌、留 Mermaid 圖譜。長期面向跨 Session:從對話提煉 Atom、Scenario、Persona。只開長期記憶已能「記住使用者」;多工具、多步驟編碼 Agent 建議兩者都開。
在 Cloud Mac 上跑有什麼優勢?
低功耗常駐、統一記憶體適合本地向量檢索、與 Xcode/Flutter 工具鏈同域。記憶資料與建置日誌同機排查,比「Agent 在雲上、程式碼在本地」少一層 VPN 與權限割裂。
只能用 OpenClaw 嗎?
不是。Hermes Gateway 有官方 Docker 與掛載方案;自研框架也可讀倉庫 SDK 接入。OpenClaw 路徑最短,適合已用 Kvmjet OpenClaw 專題的讀者。
7. 總結與下一步
TencentDB Agent Memory 把「Agent 長期記憶」從概念做成了可十分鐘啟用的 OpenClaw 外掛:本地 SQLite 零依賴、L0–L3 分層可溯源、短期 offload 顯著省 Token。對 iOS/Flutter/AI 開發者,下一步建議是:
- 在 PoC Cloud Mac 上按本文第三節完成安裝與驗收;
- 選一條最耗 Token 的真實工作流(如「大倉庫 refactor Agent」)做一週 A/B;
- 寫好 SQLite + refs 備份策略,再考慮是否上 TCVDB 或合併進生產節點。
記憶層裝好後,Agent 才真正像「老夥伴」——而不是每次見面都問「你是誰、專案用什麼框架」的新同事。
在 Cloud Mac 上讓 Agent 記憶與建置同域運行
TencentDB Agent Memory 預設跑在 Gateway 同機——M4 Mac mini Cloud 節點恰好適合這種「輕服務 + 重開發」混合負載:Apple Silicon 統一記憶體讓 sqlite-vec 檢索與 OpenClaw 並發更穩;約 4W 待機適合 7×24 值守型 Agent;macOS 原生 Node.js 與 Docker 省去 Linux VPS 上 arm64 映像匹配的折騰。記憶庫與 Xcode、Fastlane 同機時,Coding Agent 才能真正「記得」你的憑證、Flavor 與團隊規範。
若你正在搭建帶長期記憶的 AI 開發環境,Kvmjet M4 雲端 Mac是性價比很高的 PoC 起點——十分鐘裝記憶外掛,一小時接上真實倉庫,一週內用 Token 帳單驗證是否值得全面推廣。