Claude-Mem 是一個給 Claude Code 使用的持久化記憶系統。
它想解決的問題很具體:AI 編程助手每次開新會話時,往往會忘記之前討論過的架構決策、踩過的坑、專案偏好和實作背景。
如果一個專案做得久,每次都重新解釋上下文,非常浪費時間。
Claude-Mem 的思路是:把 Claude Code 的會話內容壓縮成記憶,存進本地資料庫和向量庫,之後再透過搜尋工具找回來。
它解決什麼問題
Claude Code 很適合處理程式碼任務,但會話上下文畢竟有限。
常見痛點包括:
- 新會話不知道舊會話做過什麼
- 專案裡的設計決策需要反覆解釋
- 曾經排查過的問題容易重複踩
- 長期任務缺少連續記憶
- 多次對話之間很難沉澱專案知識
Claude-Mem 就是圍繞這些問題設計的。
它不是簡單保存聊天記錄,而是把會話壓縮成更容易檢索的記憶片段。這樣後續需要時,可以透過語義搜尋把相關上下文找回來。
工作方式
從 README 的設計看,Claude-Mem 主要由幾部分組成。
第一部分是 hooks。
它會接入 Claude Code 的會話流程,在合適的時機捕獲會話資料。
第二部分是後台 worker。
worker 負責把原始會話內容處理成更短、更可檢索的記憶。
第三部分是本地儲存。
專案使用 SQLite 保存結構化元資料,用 Chroma 保存向量索引。這樣既能保留會話記錄的基本資訊,也能支援語義檢索。
第四部分是 mem-search。
這是給 Claude Code 使用的查詢入口。需要找回舊上下文時,可以透過它搜尋相關記憶。
整體流程可以理解為:
- Claude Code 會話產生內容
- hooks 捕獲會話資料
- worker 非同步壓縮和整理
- 記憶寫入 SQLite 與 Chroma
- 後續透過
mem-search檢索
適合什麼場景
Claude-Mem 適合長期專案,而不是一次性小任務。
比如:
- 一個倉庫持續開發很多天
- 程式碼結構複雜,背景說明很多
- 需要記住專案約定、命名習慣和架構選擇
- 經常讓 Claude Code 修 Bug、寫功能、整理文件
- 希望 AI 能記住「之前為什麼這麼改」
如果你只是臨時讓 Claude Code 改一行程式碼,長期記憶意義不大。
但如果你把 Claude Code 當作長期協作者,它就會變得有用。
安裝和啟動
README 中給出的安裝方式很直接:
|
|
啟動時可以使用:
|
|
查看狀態:
|
|
如果需要停止:
|
|
這些命令背後的目標,是把記憶系統作為一個長期執行的本地服務接到 Claude Code 工作流裡。
mem-search 怎麼用
mem-search 是找回記憶的關鍵入口。
它的用途不是替代普通搜尋,而是讓 Claude Code 能按語義查詢過去會話中的內容。
比如你可以讓 Claude Code 查詢:
- 某個模組之前為什麼這樣設計
- 某個 Bug 當時怎麼排查
- 專案裡約定的命名規則
- 之前討論過的技術取捨
- 某次重構的背景原因
這種查詢和簡單關鍵字搜尋不同。
如果記憶壓縮和向量索引做得好,即使你不記得原話,也能找回相近語義的內容。
和普通專案文件有什麼區別
專案文件適合記錄穩定結論。
比如:
- 架構說明
- 部署流程
- API 約定
- 資料庫結構
- 開發規範
Claude-Mem 更適合記錄會話過程中產生的上下文。
比如:
- 為什麼某個方案被放棄
- 某個臨時問題怎麼繞過
- 某個實作背後的討論過程
- 還沒來得及寫進文件的專案偏好
- 多次對話裡積累出的任務背景
兩者不是互相替代。
比較好的方式是:穩定知識寫進專案文件,過程性上下文交給記憶系統輔助檢索。
使用時要注意什麼
第一,長期記憶不是越多越好。
如果所有對話都無差別保存,後續檢索可能會變得嘈雜。真正有價值的是專案決策、實作背景、問題排查和長期偏好。
第二,記憶不能替代程式碼和文件。
AI 搜到的舊上下文只能作為參考。最終判斷仍然要看目前程式碼、測試結果和最新需求。
第三,隱私和本地資料要注意。
既然它會保存會話內容,就要清楚哪些專案適合接入,哪些敏感資訊不應該進入對話。
第四,記憶系統需要維護。
隨著專案推進,舊記憶可能過時。過時的上下文如果被誤用,反而會誤導後續任務。
為什麼這類工具值得關注
AI 編程工具正在從「單次問答」走向「長期協作」。
單次問答裡,模型只要回答目前問題就夠了。
長期協作裡,它需要知道專案歷史、之前的決策、團隊偏好和已經踩過的坑。
Claude-Mem 這類工具的意義就在這裡:它把「記住上下文」從臨時聊天能力,變成一個可以安裝、執行、檢索的本地系統。
對真實工程專案來說,這比單純讓模型上下文窗口變長更實用。
因為很多資訊不是一次性塞進上下文就好,而是需要在合適的時候被找回來。
適合誰嘗試
如果你符合下面幾種情況,可以考慮試試:
- 高頻使用 Claude Code
- 經常跨天處理同一個專案
- 專案上下文比較複雜
- 經常需要向 AI 重複解釋背景
- 想把會話裡的經驗沉澱下來
如果你只是偶爾使用 Claude Code,或者專案很小,暫時不一定需要這類系統。
參考
最後一句
Claude-Mem 的重點不是「保存聊天記錄」,而是讓 Claude Code 能在後續任務裡找回有用上下文。
當 AI 編程從一次性任務變成長期專案協作,記憶系統會越來越重要。
它不能替代文件和測試,但可以減少重複解釋,讓 AI 更像一個了解專案歷史的助手。