Claude-Mem:替 Claude Code 補上一層真正的長期記憶
Claude-Mem 不是單純的聊天紀錄備份,而是替 Claude Code 打造長期記憶層:用 hooks 自動捕捉 session 訊號,再透過 SQLite、Chroma 與分層搜尋,把可用的上下文帶回下一次對話。對長時間開發、反覆切換任務,或需要保留決策脈絡的人來說,它解的是非常實際的痛點。
Claude-Mem:替 Claude Code 補上一層真正的長期記憶
如果你常用 Claude Code 寫程式,應該很熟這種感覺:上一個 session 才把專案背景、命名規則、技術債與踩坑紀錄講完,下一次重新打開又要再來一遍。模型不是不聰明,而是它沒有真正的長期記憶。
claude-mem 想解的,就是這個很實際的痛點。它不是單純把對話記錄存起來而已,而是透過 hooks、worker service、SQLite、向量搜尋與分層檢索,把 Claude Code 在開發過程中的上下文整理成可搜尋、可壓縮、可延續的知識層。對長時間開發、反覆切換任務、或需要讓 AI 跟著專案脈絡走的人來說,這是一個很值得注意的工具。
這個專案到底在解什麼問題
AI coding 工具最常見的瓶頸,不一定是回答能力,而是上下文的保存能力。你可以很快讓模型理解一次,但只要 session 結束、上下文窗口切換,很多細節就會散掉:
- 這個專案的架構決策是什麼?
- 哪些函式或檔案已經重構過?
- 哪些錯誤其實已經修過,不能再重來一次?
- 使用者的偏好、限制與命名習慣是什麼?
claude-mem 的定位,就是把這些零散訊號變成持久記憶。它不是要求你手動寫筆記,而是盡量在你使用 Claude Code 的過程中,自動把有價值的資訊收集起來,再把可用的片段在下一次 session 中帶回來。
它怎麼運作
從 README 來看,claude-mem 的設計不是單點功能,而是一整套記憶系統。
1. 用 hooks 自動捕捉 session 訊號
它會在幾個 lifecycle 時機收集資訊,例如:
- SessionStart
- UserPromptSubmit
- PostToolUse
- Stop
- SessionEnd
這代表它不是等你手動整理內容,而是盡可能在對話與工具使用的節點上,抓取可累積的脈絡。
2. 用 worker service 管理資料
專案本身還有 worker service,預設會跑在 37777 port,並提供 web viewer UI。這很重要,因為記憶系統如果只能寫入、不能查看,最後就會變成黑盒子;但如果你能看到觀察紀錄、摘要和 timeline,就更容易判斷它到底記住了什麼。
3. SQLite + Chroma 的混合儲存
它把不同層級的資料拆開處理:
- SQLite:存 sessions、observations、summaries
- Chroma:做語意檢索
- 另外搭配關鍵字與語意混合搜尋
這種做法的好處很明顯:你不需要只靠關鍵字找資料,也不必把全部內容直接塞進上下文。它先幫你縮小範圍,再把真正相關的內容取回來。
4. 三層搜尋減少 token 浪費
我覺得這是它最實用的設計之一。
它的搜尋流程大致是:
- 先用
search拿 compact index - 再用
timeline看前後脈絡 - 最後只對必要的 observation IDs 取完整內容
這種分層方式的核心,不是把更多東西塞給模型,而是把更對的東西放進上下文。對長專案來說,這通常比單純加大上下文更有效。
如何開始使用
這類 GitHub repo / CLI 工具,真正重要的不是「介紹得多漂亮」,而是你能不能很快驗證它真的有用。官方提供的安裝方式很直接:
npx claude-mem install如果你用的是其他 IDE / CLI,也可以依文件安裝到對應環境,例如 Gemini CLI 或 OpenCode。
我會建議你這樣驗證:
- 先安裝完成並重新啟動 Claude Code
- 開一個新的 session,丟一個真實的開發任務
- 觀察它是否能帶回上一輪的背景或摘要
- 打開
http://localhost:37777看 web viewer 是否有資料流 - 連續做兩三次不同任務,確認它不是只記住單一句子,而是真的能延續脈絡
如果你想更深入,可以直接從官方 README 與 docs 入口往下看,重點會在 hooks、搜尋層級、資料儲存與權限控制。
我認為它真正有價值的地方
1. 減少重複說明
這是最直接的收益。當你在同一個專案上跑很多 session 時,最耗時間的往往不是寫 code,而是重新解釋:專案背景、設計偏好、之前踩過的坑、不能亂改的部分。
2. 把 AI 變成有工作記憶的夥伴
很多 AI 工具都很會「當下回答」,但一旦跨 session,就像重新認識你一次。claude-mem 的價值在於,它讓 AI 不只是聊天,而是能跟著專案一起累積記憶。
3. 比單純堆上下文更可控
它有自己的搜尋與過濾層,也提供 <private> 之類的方式排除敏感內容。這比把所有紀錄都硬塞進 prompt 安全得多,也更適合真的拿來工作。
你要注意的限制
1. 它不是離線獨立產品
claude-mem 的價值很依賴 Claude Code / Gemini CLI / OpenCode 這些工作流。換句話說,如果你的使用情境不在這些工具裡,它的效益就會下降。
2. 安裝方式不能誤解成一般 npm 全域安裝
README 已經明確提醒:npm install -g claude-mem 只會裝 SDK / library,不會幫你註冊插件 hooks 或 worker service。這一點很容易踩坑。
3. 它採用 AGPL-3.0
如果你有企業內部部署、修改後再提供服務,授權條款要先看清楚。這不是技術問題,而是實際導入時必須先處理好的問題。
4. Beta 功能要保守使用
專案有 beta channel,裡面會放一些實驗性功能。正式工作環境我會建議先用穩定版,確認核心流程沒問題後,再考慮開啟進階功能。
這篇文章的結論
claude-mem 做的事情其實很務實:它把 Claude Code 的短期上下文,變成可搜尋、可壓縮、可延續的長期記憶。它不是要取代模型能力,而是補上 AI coding 工具最常缺的那一塊:工作記憶。
如果你只是偶爾問幾個一次性的問題,這工具的價值可能沒那麼明顯;但只要你進入長專案、多 session、反覆協作的場景,它就很可能變成非常重要的基礎設施。
參考資料
- GitHub Repo:<https://github.com/thedotmack/claude-mem>
- 官方文件:<https://docs.claude-mem.ai/>
- README:<https://github.com/thedotmack/claude-mem/blob/main/README.md>