dsh-memvault:DeepSeek Harness 的 MemVault 記憶橋接插件

MemVault 是一個本地長期記憶服務,它是一個 SQLite 存儲和 FastAPI/CLI 管道。但它是 stdio MCP 服務器,MCP 是“拉取”協議,服務器只能被調用,沒有通道將內容放入模型上下文。因此,“記憶已加載”無法從 MCP 側實現。必須由客戶端完成,即這個插件。

插件定位

dsh-memvault 是 DeepSeek Harness 的一個記憶類插件。它旨在連接 MemVault 的存儲層與 DSH 的上下文層。

維護者:zhang66633
許可證:MIT
分類:記憶

核心功能

該插件主要完成三個層面的工作:

  1. 注入(讀)
    核心記憶塊進入 system prompt。通過 ctx.systemPrompt.context() 實現動態運行時上下文貢獻,使得模型在每一步都無需調用工具即可“擁有”這些記憶。

  2. 提取(寫)
    完成的對話回合會積累在一個窗口中,該窗口會被作爲一個完整的對話交給 MemVault 的提取/向量化管線。機制是通過 ctx.on('session/event') 監聽 turn/end 事件,然後調用 python -m memvault.cli add --stdin。

  3. 展示(面板)
    提供一個真實的記憶面板。通過五個具體的 Host 路由(/memvault/api/*)提供界面。面板包含對話標籤頁和設置頁面,支持查看當前注入內容、審查提取結果、編輯核心塊以及瀏覽存儲內容。

安裝與啓用

由於官方 CLI 安裝命令在提供的資料中未覈實,請通過以下方式手動安裝:

  1. 克隆倉庫:git clone https://github.com/zhang66633/dsh-memvault.git
  2. 插件爲純 ESM 模塊,無打包器依賴,無需額外構建步驟。
  3. 在 DeepSeek Harness 的插件配置中引用該模塊路徑。

使用說明

使用前需要確保 MemVault 的 Python 管道(CLI 子進程)正在運行,並且本地存在 memvault.db 文件。

  1. 配置路徑
    在記憶面板中,確認當前使用的存儲文件、插件狀態文件、Python 腳本目錄以及項目目錄是否正確。面板會顯示哪些 Scope 是隻讀的,哪些是可寫的。
  2. 查看與編輯
    在“記憶”標籤頁中,可以查看當前注入到系統提示詞中的核心塊。支持編輯和刪除操作,也可以創建新的核心塊。
  3. 審查與追蹤
    通過提取結果頁面,可以查看最近五次的提取產出。點擊具體的記憶條目,可以打開 MemVault 的審計鏈(history)和關係圖(relations)。支持標記需要審查的條目,並直接複製修正請求。
  4. 瀏覽存儲
    在存儲瀏覽視圖中,可以通過子字符串搜索內存表,支持按類型和 Scope 過濾,分頁顯示。可以查看每條記憶的類型、範圍、年齡和 ID。

注意事項

  • 運行時依賴:插件本身零運行時依賴,僅使用 Node.js 內置模塊(node:sqlite, node:child_process, node:fs)。
  • 數據庫訪問:插件以只讀模式直連 SQLite 數據庫,不依賴額外的 HTTP 服務器。
  • 重啓安全:等待窗口(有界渲染的對話記錄)會在每個回合結束時寫入狀態文件,因此回合之間的重啓不會導致記憶丟失。
  • 後臺提取:提取操作在會話空閒時運行(例如用戶暫停等待回答時),不在模型等待回答的關鍵路徑上,且一次調用可覆蓋多個回合。

生態背景

DeepSeek Harness 的理念是“一切皆插件”。該插件是 MemVault 的 DSH 特定層,它與 MemVault 本身的通用 MCP 服務是解耦的。安裝此插件後,記憶不再是模型需要“記住”去查找的東西,而是已經加載好的上下文。

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

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

小夜