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 仓库。

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

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

Xiaoye