EliaAlberti/cpr-compress-preserve-resume

Persistent memory for Claude Code, packaged as a plugin. Save, search, and restore conversation context across sessions.

解決的問題

Claude Code 在會話之間缺乏持久記憶,表示使用者每次重新啟動時都必須重新解釋專案背景、重新發現檔案路徑,並重新推導決策。此外,預設的自動壓縮功能可能會在使用者保存之前靜默刪除對話歷史中的關鍵細節。

如何運作

CPR 為 Claude Code 提供三個自訂斜線指令(技能),讓使用者能明確管理其會話上下文:

  • /preserve:將目前會話中的關鍵學習成果與決策更新至 CLAUDE.md 檔案中,透過自動歸檔舊內容確保檔案保持精簡。
  • /compress:在 CC-Session-Logs/ 目錄中建立結構化、可搜尋的會話日誌。它使用 Python 指令碼 (dump_transcript.py) 將磁碟上的原始對話轉錄內容追加至日誌中,避免產生昂貴的模型輸出權杖。
  • /resume:透過載入 CLAUDE.md 檔案與最近會話日誌的摘要來恢復上下文。也支援依主題搜尋過去會話。

為防止資料遺失,此專案要求使用者在 Claude Code 中停用 Auto-Compact 設定,將上下文壓縮的控制權交由使用者透過 /compact 指令自行管理,該指令應在保存與壓縮會話後才執行。

適用對象

使用 Claude Code CLI 進行多會話專案開發,並希望降低權杖成本、避免重複建立上下文的開發者。

主要亮點

  • 權杖效率:透過以緊湊摘要取代完整上下文重建,將會話重新啟動時的權杖成本估計降低 24% 至 68%。
  • 混合儲存:結合輕量級持久化 CLAUDE.md 檔案用於高階專案狀態,以及詳細會話日誌用於歷史記錄。
  • 低開銷記錄:使用本地指令碼追加原始轉錄內容,表示原始日誌內容不會作為模型輸出產生。
  • 可搜尋歷史:支援使用 /resume [topic] 指令依主題搜尋過去會話日誌。

相關

  • 專案
  • 專案
  • 專案
  • 專案