Theme / v13.24.1

Claude-Mem

Claude Code 持久化記憶系統

指令詳解

forget 指令詳解

如何使用 forget 安全刪除本地持久化記憶庫中的過時、冗餘或敏感的記憶項

定位說明forgetmanagement-side 工具(安全刪除記憶項),不屬於官方 README 中描述的 Search Tools 三層 workflow。它與 save_observation 同屬記憶維護指令,用於保持記憶庫乾淨準確。

指令用途

雖然長期記憶能夠幫助 AI 助手延續上下文,但如果記憶庫中保留了已經被廢棄的舊決策(例如:在 Session A 中決定使用 SQLite,但在 Session C 中改用了 PostgreSQL),這會導致 AI 產生認知衝突,給出錯誤的重構建議。更嚴重的是,如果記憶中意外記錄了金鑰或密碼,這會帶來嚴重的資安隱患。

forget 是 Claude-Mem 提供的 記憶安全擦除指令。它允許開發者與 AI 助手,精確地刪除特定 ID 的記憶,或者清除符合特定關鍵字的歷史冗餘記憶,確保 AI 的記憶庫始終乾淨、準確且安全。


運作流程

  1. 參數接收:接收 observationId(目標記憶 ID)或 filter(過濾關鍵字)。
  2. 安全擦除:從 SQLite 持久化資料庫中徹底刪除該數據。
  3. 完成確認

實戰對話範例

範例:刪除過期的資料庫設計記憶

  • You:
    /opsx:explore "我們已經決定不再使用 SqliteHelper,請幫我把記憶中關於 SqliteHelper 的過期觀察刪除。"
  • AI:

    好的,為了防止過時的設計決策干擾我後續的代碼生成,我將調用 forget 工具,將關於 “SqliteHelper” 的舊記憶刪除。

    首先,我拉取包含該關鍵字的記憶 ID。 CM 呼叫: get_observations(query: "SqliteHelper")
    CM 回傳: [{"observationId": "obs_1009", "summary": "計畫採用 SqliteHelper 管理本地數據快取。"}]

    接著執行刪除。 CM 呼叫: forget(observationId: "obs_1009")
    CM 回傳: {"status": "deleted", "observationId": "obs_1009"}

    該記憶已成功從本地資料庫中刪除!這能確保我後續的開發建議只會圍繞著我們最新的 Entity Framework Core 架構展開。