Lyellr88/marm-memory

Local-first 3-in-1 AI memory layer & MCP server for Claude Code, Codex, Grok, Gemini, VS Code and Cursor. Fuses session history, codebase indexing & concept graphs in SQLite. Enables zero-cloud, privacy-first context & instant recall for multi-agent swarms.

解決的問題

MARM Memory 是一個持久的、本地優先的記憶層,旨在防止 AI Agent 出現「記憶缺失」、對話漂移與上下文污染。它允許多個 Agent(如 Claude Code、Cursor 或 VS Code Agent)在不同的對話與專案之間共享統一的長期記憶,確保在清除對話紀錄時,決策、程式碼符號與專案歷史不會遺失。

工作原理

MARM 使用具備 WAL 模式的嵌入式 SQLite 資料庫,將三個不同的上下文層融合到單一執行期中,以實現高並發:

  • Core Memory: 使用本地向量嵌入 (Jina v2 Small) 與全文搜尋 (FTS5) 的混合方式來處理情境記憶、對話日誌與筆記。
  • Code Graph: 透過靜態分析對程式碼庫進行索引,提供即時的符號查找、呼叫追蹤與架構概覽。
  • Concept Graph: 從儲存的歷史紀錄中提取實體與類型化關係,將高層級的開發者決策直接連結到特定的程式碼符號。

它作為一個 Model Context Protocol (MCP) 伺服器運行,支援 HTTP 與 STDIO 傳輸,並包含一個用於視覺化與除錯記憶的本地 Web 控制台。

適用對象

主要面向使用 MCP 相容的 AI 程式碼 Agent 的開發人員與研究人員,他們需要在多個工具與長期運行的多 Agent 專案中擁有持久且共享的記憶狀態。

亮點

  • 混合檢索: 將 BM25 精確匹配與語義重排序結合,即使在記憶增長時也能保持快速的檢索速度。
  • 多 Agent 支援: 使用序列化寫入隊列,防止多個 Agent 同時寫入記憶時發生衝突。
  • 本地優先: 不需要外部向量資料庫;使用嵌入式 SQLite 進行儲存。
  • 整合工具: 綑綁了 14 個 MCP 工具,涵蓋記憶、程式碼索引與概念提取。
  • 視覺化遙測: 包含一個內建的本地 Web 應用程式 (MARM Console),用於瀏覽與管理儲存的知識。