DeepSeek Harness 模型配置与密钥同步插件

前言

DeepSeek Harness(DSH)在本地保存每台机器的配置、凭证和模型声明。要在另一台机器使用,通常需要重新输入每个 provider 的显示名称、端点、协议、模型目录和密钥。社区现有的 dsh-cloud-sync 插件同步本地插件源和配置目录,但故意不复制明文凭证,这就留下了同步密钥这一空白。

插件定位

tesths/dsh-model-key-sync 是一个 DeepSeek Harness 插件,由维护者 tesths 开发,分类为 admin-security。它通过 S3 兼容存储或 WebDAV 同步模型配置和第三方 API 密钥,让新机器只需一次 pull 即可恢复所有自定义 provider 及其密钥。

核心功能

插件负责同步的内容包括:

  • Provider 路由信息:显示名称、协议、端点、模型目录、密钥引用、provider 默认值(推理、输入、缓存、思考预算)
  • 每个路由的 apiKeyEnv 解析到的 API 密钥
  • 不同步的内容:会话、附件、插件源、Credits/配额、使用历史、其他设置(主题、快捷键等)

远程文件结构为:

<remoteRoot>/v1/<syncGroup>/
├── manifest.json        格式、版本、设备、每对象 sha256 和大小、snapshotId
├── <provider>.json      每个路由一个文件
└── keys.json            { "ENV_NAME": "value" }

每次传输会先写入对象,最后写入 manifest,确保 reader 不会看到不完整的清单。下载时会通过大小和 SHA-256 验证对象完整性。

安装与启用

在 Harness 的智能体中执行:

Install the plugin from github:tesths/dsh-model-key-sync

插件安装程序会运行 bundle 安装器。安装完成后刷新页面,该插件在 Settings → Model Key Sync 下出现。

使用要求:当前 Harness 构建提供 settings、credentials 和 tools 服务,并且存在 llm-pi-ai(或兼容)模型适配器行。

典型用法

WebDAV 配置

在 Settings → Model Key Sync 页面,选择 Backend 为 WebDAV,填写:

字段 示例值
Backend WebDAV
Collection URL https://dav.jianguoyun.com/dav/(坚果云),或你的 Nextcloud 路径
User name 账户登录名(坚果云:你的邮箱)
Password 应用密码,非登录密码
Remote directory dsh-model-key-sync
Sync group 任意名称;每台机器相同

填写后点击 Save(配置和密钥一起保存),然后点击 Test → Upload。

S3 兼容存储配置

支持 R2、OSS、B2、MinIO 和 AWS。填写:

  • Bucket
  • Region(R2 可填 auto,AWS 留空)
  • Endpoint(AWS 留空)
  • Access key id
  • Secret

填写后点击 Save,再点击 Test → Upload。

在第二台机器上恢复

安装插件,打开同一页面,填写相同的值(包括 sync group),点击 Pull。状态卡片会列出已恢复的凭证,例如:

pulled
credentials: ACME_API_KEY, OTHER_API_KEY

日常使用

  • 手动模式:编辑完 Settings → Models 下的模型后手动上传;切换到另一台机器前先 pull。
  • 自动模式:勾选 Auto upload。自动上传不会触发 pull。
  • 冲突处理:不会静默覆盖。如果两边都修改了,pull 会被拒绝并指出冲突轴(model routes、API keys 或两者)。勾选 Force 取远程值,或上传以保留本地值。

适用场景与注意

  • 适合有多台机器需要同步模型配置和第三方 API 密钥的场景。
  • 插件以当前 DSH 进程权限运行,安装前应检查源码与许可证(MIT)。
  • 密钥以明文存储在远程,任何人能访问远程存储(如私有 bucket、专用应用密码)即可读取所有密钥。建议:
  • 使用专用应用密码,可随时撤销
  • 不要共享云端账户
  • 仅需同步模型声明时关闭 Sync keys
  • 若远程被获取,在提供商处撤销相应密钥
  • 本地同步状态(~/.dsh/model-key-sync/cloud-state.json)存储的是哈希,而非密钥。

总结

这个插件填补了 DSH 生态中同步第三方 API 密钥的空白。在配置相同的 WebDAV 或 S3 兼容存储后,新机器只需一次 pull 即可恢复所有自定义 provider 及其密钥,减少重复输入。

  • 插件目录页:https://www.skillhub.cn/plugins/tesths/dsh-model-key-sync
  • GitHub 仓库:https://github.com/tesths/dsh-model-key-sync
羽毛球分组比赛记分
小程序二维码

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

Xiaoye