跨會話記憶管理插件 (Workspace Memory DSH)

前言

在 DeepSeek Harness (DSH) 架構中,Agent 在會話間丟失上下文是常見問題。現有的目錄掃描方式缺乏語義結構,難以複用項目進度。該插件旨在爲 DSH 提供跨會話的持久記憶管理能力,讓 Agent 能夠記住任務內容、進度和決策原因。

插件簡介

插件全稱爲 workspace_memory_dsh,由開發者 LYRA-88 維護。它基於 DSH 架構,在會話工作區下維護 project_memory/ 目錄,通過命題圖和三層內存漏斗將對話內容轉化爲結構化的節點索引,並注入模型上下文,使 Agent 按“覆蓋命題”導航,而非掃描無類型目錄。

核心功能

該插件包含以下核心機制:

  • 跨會話持久記憶管理:保存項目進度、任務狀態和關鍵決策。
  • 命題圖:將原子命題歸類爲覆蓋命題(節點),構建節點網絡(nodeEdges 和 entryLinks)。
  • 三層內存漏斗:每節點下分爲 core.md(核心事實)、regular.md(常規記憶)和 log/<sessionId>.md(過程日誌,不做向量化)。
  • 混合檢索:支持向量(餘弦距離)與詞法檢索,通過 RRF 算法融合結果。
  • 瀏覽器端審查面板:提供預覽和確認界面,Agent 可審閱記憶更新並提交。
  • 有界節點索引注入:將結構化的節點索引有界地注入模型上下文。

安裝與啓用

插件安裝路徑位於代碼倉庫外部。執行以下命令安裝:

dsh plugin --profile web add <path-to-this-plugin>

安裝後需重啓 dsh web 進程才能生效。

使用方式

插件提供了客戶端組件和遠程 API 兩種調用方式。

客戶端組件

  • MemoryButton (conversation.input.memory):在當前會話輸入區打開記憶預覽/確認面板。
  • MemoryPreviewPanel (conversation.input.overlay):讀取有界子項目的文檔,預覽更新 diff 並提交,支持綁定/解綁會話。
  • MemoryTreeSection (sidebar.workspaces.memoryTree):在側邊欄渲染工作區記憶組。

遠程 API

通過 workspaceMemory 命名空間調用,支持的方法包括:
* listSubprojects / listSubprojectsByPath
* bindSession / classify / commitClassify
* previewUpdate / commitUpdate
* search
* memoryReindex / memoryStatus
* 以及刪除、重命名、會話列表查詢等方法。

存儲與配置

每個工作區下會生成 project_memory/ 目錄,包含 .registry.json(註冊表)、manifest.json(Schema 3)、向量分片 (vec/) 和圖結構 (graph.json)。

嵌入配置

插件支持通過 api.json 配置 OpenAI 兼容的 Embedding 端點。如果配置缺失或無效,插件會自動降級爲純詞法模式(Lexical-only),同時保留圖結構。

{ "embedding": { "baseUrl": "https://…/v1", "apiKey": "sk-…", "model": "text-embedding-3-small" } }

適用場景與注意事項

該插件專爲 Session Memory(會話記憶) 設計,主要用於保存和恢復項目進度、任務狀態、決策原因及下一步計劃。它並非爲大型知識庫或通用長期存儲系統構建,適合在幾到十幾次會話內完成的工作流。

  • 運行依賴:必須依賴 DSH 主機(CLI 或 web 進程)運行。
  • 版本遷移:早期版本(帶 dimensions 樹的 manifest)在首次加載時會自動遷移。
  • 權限與安全:安裝前應檢查源碼與許可證(MIT)。

總結

該插件通過結構化的命題圖和三層漏斗,爲 DSH Agent 提供了可控的跨會話記憶機制。通過混合檢索和瀏覽器審查面板,可以在保持上下文連貫性的同時,降低記憶管理的複雜度。

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

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

小夜