dsh-openviking-manager:OpenViking 在 DSH 裏的配置與管理界面

前言

在 DeepSeek Harness(DSH)裏接入 OpenViking 時,記憶同步、提交和召回由官方 @openviking/dsh-memory-plugin 完成,但連接地址、用戶 Key、~/.openviking/ovcli.conf 以及「某條會話要不要讀寫記憶」往往仍要手改文件或記環境變量。社區插件 dsh-openviking-manager(維護者 xbzbing,分類:記憶)提供 Web UI,只負責客戶端配置、本機診斷和會話級開關;不替代官方記憶插件,也不運維 OpenViking 服務端。下面介紹它的定位、能力與安裝用法。

這是什麼

dsh-openviking-manager 是 DSH Web profile 下的 UI 插件,用於管理已有 OpenViking 服務的客戶端連接、用戶 Key 和本機配置診斷,並在對話側提供會話級 OpenViking 記憶開關。OpenViking 是火山引擎開源、面向 AI Agent 的上下文數據庫;服務端需自行部署,官方 DSH 集成說明見 DeepSeek Harness 記憶插件。

核心功能

連接與用戶 Key

  • 讀取、導入並原子更新 ~/.openviking/ovcli.conf;已有 user_key 在頁面只顯示掩碼,不回傳明文。
  • 檢查 OpenViking 的 /health、/ready 與用戶身份;校驗 ovcli.conf 的 JSON 與文件權限,經確認後可修復權限。
  • 讀取 ~/.openviking/ov.conf 的非敏感狀態(如認證模式、是否存在 root key);ovcli.conf 始終優先。
  • 表單中臨時使用 root_api_key 調用官方 Admin API:列賬號/用戶、創建賬號或用戶、重新生成用戶 Key;root_api_key 不寫入配置文件。
  • 由當前 endpoint 推導 Studio 地址(<endpoint>/studio),可手工改爲反向代理地址。

會話級記憶開關

對話輸入框左側有按鈕(默認開啓)。關閉某會話後,本插件會攔截官方插件在該會話的上下文注入、記憶寫入/提交,並拒絕 mcp__openviking__* 工具調用。開關狀態僅在插件進程內存中,重啓 DSH 後恢復默認開啓;關閉只對之後的 agent step 生效,歷史中已注入的上下文在被壓縮前仍會保留。

記憶隔離與召回調優

在同一配置頁寫入官方 ovcli.conf 的 plugin 段(保留其他鍵),保存後通過宿主機制自動重載官方記憶插件:

能力 說明
記憶隔離 plugin.recallPeerScope:默認開啓「不允許跨主題共享記憶」(未定義時寫入 actor);關閉則寫回官方默認 all。用戶級畫像與共享資源不受該開關影響。
召回分數與條數 scoreThreshold(本插件產品默認 0.5,官方默認 0.35)、recallLimit(默認 10)
查詢擴寫 recallQueryExpansion(本插件默認關閉,官方默認 auto)
排除 URI recallExcludeUris(可排除 skills、resources 等子樹;OpenViking v0.5.0 起目錄 URI 排除整棵子樹)
超時 timeoutMs(本插件默認 15000 ms)、recallContextTimeoutMs
Actor peer id(高級) plugin.peerId:多倉庫場景推薦留空,由官方按 workspace git 身份推導 peer;單倉或有意共享主題時可填寫。「填入當前倉庫」按官方 workspace 邏輯推導。

對應 OPENVIKING_* 環境變量優先級更高時,頁面字段只讀並顯示警告。UI 跟隨 DSH 系統語言(簡體中文 / 英文)。

安裝與啓用

環境要求(來自倉庫說明):

  • Node.js >= 22
  • DSH >= 0.1.6-alpha.2 < 0.3.0-0
  • 可訪問的 OpenViking 服務
  • 官方 @openviking/dsh-memory-plugin >= 0.3.2

先做記憶插件,再做配置管理器:

# 安裝 openviking 的官方插件
dsh plugin --profile web add @openviking/dsh-memory-plugin
# 安裝配置管理器
dsh plugin --profile web add dsh-openviking-manager
# 也可以直接從 GitHub 倉庫安裝或者從 file 安裝
dsh plugin --profile web add github:xbzbing/dsh-openviking-manager

安裝後可能需要重啓對應 DSH profile;在 DSH 插件頁面可進入 openviking-manager 配置頁。

典型用法

  1. 在配置頁填寫 OpenViking endpoint 與用戶 Key,執行連接驗證;若尚未有用戶,可用臨時 root_api_key 走「恢復與初始化」流程創建用戶並輪換 Key。
  2. 按需調整記憶隔離與召回調優,保存後等待狀態行報告重載結果;若官方記憶插件未加載,按提示手動重啓 DSH。
  3. 某次對話不想讀寫 OpenViking 時,在輸入框左側關閉會話開關,無需改全局配置。

本地向量引擎在 OpenViking 服務端 v0.4.22 起 cosine 分數域由 [-1,1] 映射爲 [0,1],閾值不會自動調整。若升級後與舊版過濾強度要對齊,可將 scoreThreshold 調到 0.75;僅用遠端向量庫或不受映射影響的分數類型時無需調整。細節見倉庫 README「服務端兼容性」一節。

適用場景與注意

適合誰: 已在 DSH Web 中使用 @openviking/dsh-memory-plugin,希望用圖形界面維護 ovcli.conf、做連通性診斷,並在單會話粒度關閉 OpenViking,同時微調召回隔離與參數的團隊或個人。

安全與邊界: 插件以當前 DSH 進程權限運行,安裝前應閱讀源碼與 MIT 許可證。多數管理路由僅接受同源請求;本插件不啓動、停止或修改 OpenViking 服務端。.openviking/config.json 等 workspace 配置需用戶自行管理,本插件不讀寫。

DSH 生態採用「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

結尾

dsh-openviking-manager 把 OpenViking 的客戶端配置、診斷、會話開關和 plugin 段召回調優集中到 DSH Web UI,與官方記憶插件分工明確:官方插件負責記憶數據面,本插件負責「怎麼連、怎麼配、這條會話要不要用」。進一步瞭解可訪問 目錄頁 與 GitHub 倉庫。

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

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

小夜