dsh-memory-spaces:DeepSeek Harness 的用戶自治本地記憶空間

DSH 開發中,決策、約束、偏好和項目事實往往被困在 Session 當中。手動複製這些信息既繁瑣又容易出錯,而 unrestricted global memory(不受限制的全局記憶池)又可能引入無關上下文或隱私風險。dsh-memory-spaces 旨在解決這一矛盾,它提供了一種替代方案:用戶自治的本地記憶空間。

下面介紹這個插件的核心邏輯與使用方法。

它是什麼

dsh-memory-spaces 是一個獨立社區插件(MIT 協議),由用戶 icearia0219 維護。它位於插件生態的“記憶”分類中,核心價值在於:讓用戶顯式地選擇哪些 Session 產生內容,哪些 Session 可以讀取內容。

插件不將所有對話納入一個自動讀寫開關,而是將記憶管理權交給用戶。它維護一個本地 SQLite 數據庫,提供持久化、可檢查的記憶存儲,且默認是私有的。

核心功能

該插件主要包含以下能力:

  • 用戶自治的本地記憶空間:記憶屬於本地,由用戶定義和管理。
  • 持久化與可檢查性:提供不依賴全局池的持久化記憶,且支持查看歷史。
  • 顯式分享:明確指定哪些 Session 是“源”(貢獻者)或“消費者”(使用者)。
  • 可預覽與版本化:記憶支持版本回溯,且在使用前可預覽。
  • 來源可追溯:支持 provenance-aware(來源感知)的 recall(檢索)。
  • 默認私有:Session 默認無法讀取任何空間記憶,直到用戶顯式連接。
  • 獨立的源/消費者關係:一個 Session 可以既是源又是消費者,也可以只是其中之一。擁有關係並不意味着歷史或未來對話的自動複製。
  • 人工治理:空間創建、關係變更、生命週期決策等操作必須由用戶在 UI 中執行,插件不會將這些作爲模型工具暴露。
  • 發送前審覈:在 composer 中自動匹配的記憶可以被用戶檢查或抑制。
  • 本地 SQLite 存儲所有權:數據存儲在本地,不依賴遠程同步。

安裝與啓用

安裝前請確認 DSH 版本。該插件兼容 DSH aggregate releases >=0.1.5-rc.3 <0.2.0。

在 Web Profile 下安裝指定版本:

dsh plugin --profile web add dsh-memory-spaces@0.1.1

安裝完成後,重啓 dsh web 即可啓用。

典型用法

使用流程分爲三個階段:創建與保存、建立連接、使用與審覈。

  1. 創建與保存
    打開一個 Session,在 UI 中選擇 Memory spaces。創建一個新的空間,然後顯式地選擇該 Session 中需要保存的消息。這一步完成了“源”的建立。

  2. 建立連接
    將另一個本地 Session 連接爲該空間的“消費者”。此時該 Session 獲得了讀取該空間記憶的權限,但並不自動擁有寫入權。

  3. 使用與審覈
    在消費者 Session 中發送與記憶相關的 Prompt。在發送前,檢查 composer 中的候選記憶。如果不需要某些記憶,可以將其抑制或修改後再發送。

適用場景與注意事項

適用場景:
* 需要在多個 Session 間共享特定上下文,但不想污染全局上下文的開發者。
* 需要對注入給模型的記憶進行嚴格審查的場景。
* 需要管理項目歷史事實、決策約束的開發者。

注意事項:
* 非模型工具:關係變更和破壞性治理操作(如刪除、清除來源)不會暴露爲模型工具,必須由用戶直接操作。
* 不可信輸入:存儲的記憶被視爲不可信輸入。插件雖然提供預覽和審覈,但無法保證對 prompt injection 的完全防禦。
* 本地存儲風險:Profile-local SQLite 數據庫未加密。如果進程擁有文件系統或 shell 訪問權限,可以修改數據庫。
* 無遠程同步:插件不支持遠程邀請或跨實例同步。
* 敏感內容警告:在存儲對話、歷史摘要或快照前,會出現敏感內容警告。

總結

dsh-memory-spaces 通過將記憶管理從“自動全局”轉變爲“顯式本地”,讓開發者對 DeepSeek Harness 的上下文流擁有了更精細的控制權。它適合那些希望在不犧牲安全性和可控性的前提下,在多個對話間複用知識庫的用戶。

插件詳情與源碼請參考:
* GitHub 倉庫
* 技能Hub 目錄

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜