dsh-mem0:自託管 mem0 記憶讀寫插件

在 DeepSeek Harness (DSH) 的插件化架構中,Agent 的長期記憶往往需要獨立於宿主進程管理。dsh-mem0 專注於解決這一場景:它允許宿主 Agent 通過 mem0_* 工具直接讀寫自部署的 mem0 REST 服務。

這是一個由 orangeshinee 維護的插件。它對接新版 OSS 構建(mem0/mem0-api-server),支持 Dashboard、X-API-Key 認證,且 REST 端點無 /v1 前綴。通過熱插拔機制掛載,無需修改 DSH 源碼。

核心工具能力

插件提供以下工具,覆蓋記憶生命週期的讀寫操作:

  • mem0_add:寫入記憶,支持字符串或消息數組,默認按 defaultUserId / defaultAgentId 歸類。
  • mem0_search:語義搜索,返回結果帶相關性分數。
  • mem0_get:讀取記憶列表(按標識符過濾)或單條。
  • mem0_update:更新記憶文本、metadata 或過期時間。
  • mem0_delete:刪除單條記憶;批量刪除需確認 confirm: "DELETE ALL" 且用戶爲 admin。
  • mem0_history:查看單條記憶的變更歷史。
  • mem0_reset:清空全部記憶,需確認 confirm: "RESET" 且用戶爲 admin。
  • mem0_status:健康檢查、認證狀態及配置狀態(不輸出 apiKey)。

安裝與啓用

安裝過程通過 DSH CLI 完成,支持從 GitHub 倉庫或本地目錄掛載。

# 從 GitHub 安裝
dsh plugin --profile web add github:orangeshinee/dsh-mem0

# 從本地目錄安裝(熱插拔)
dsh plugin --profile web add link:$(pwd)

# 裝完重啓 dsh web 生效

配置方式

插件不提供側邊欄 UI,但內置了瀏覽器端配置卡片。用戶需在設置面板 → 插件 → 插件配置中編輯 dsh-mem0 卡片。

關鍵配置項

鍵 默認值 說明
baseUrl http://127.0.0.1:8888 自部署 mem0 地址(無尾斜槓,無 /v1)
apiKey 空 dashboard「API Keys」創建的 m0sk_... 或 legacy ADMIN_API_KEY
authType apiKey 認證方式:apiKey / adminKey / jwt / none
defaultUserId HeTony 未指定 user_id 時的默認歸屬
defaultAgentId dsh-agent 未指定 agent_id 時的默認歸屬
timeoutMs 15000 單請求超時時間
announceToAgent true 是否向 Agent 宣告插件能力
enabled true 總開關

安全機制

配置經 dsh settings provider 持久化。插件配置卡片由瀏覽器端提供(client/client.cjs),通過插件自帶的 /api/dsh-mem0/config 路由讀寫。由於 Harness 的 settings 線上通道只開放白名單命名空間,插件無法自行加入。apiKey 在 schema 上標記爲 role('secret'):路由只下發“已配置/未配置”標記,密鑰字面量不會進入瀏覽器。

運行時依賴

運行時依賴(@deepseek-ai/dsh-settings / @deepseek-ai/schemastery)已列爲硬依賴。dsh plugin add 會隨包安裝(profile 默認 autoInstallPeers:false,peerDependencies 不會被裝)。

適用場景

該插件適合需要長期存儲 Agent 上下文、對話歷史或業務數據的場景。由於以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。

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

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

小夜