dsh-custom-provider-settings:爲 DeepSeek Harness 自定義供應商補充請求頭與模型能力

前言

DeepSeek Harness(DSH)的插件生態遵循「一切皆插件」。這裏需要區分:社區插件目錄是獨立站點,與 DeepSeek / 幻方沒有官方從屬關係,也不是官方應用商店。

對使用自定義 provider 的開發者來說,常見問題包括:端點要求特定 User-Agent 或額外 HTTP header;模型是否接受圖片;推理檔位如何暴露;OpenAI-compatible 端點不接受 developer role 時如何兼容。

下面介紹 dsh-custom-provider-settings。它由 supersealwqas 維護,MIT 許可,通過 DSH 插件系統加載,不修改 Harness 源文件。

這是什麼

dsh-custom-provider-settings 是一個 WebUI 插件,爲 DeepSeek Harness 增加全局模型請求頭,並擴展自定義 provider 的 per-provider headers、圖片輸入聲明、推理檔位配置和 DeepSeek system-role compatibility。

它的核心邊界是:

  • 全局請求頭作用於所有 channel 和 model,包括 official DeepSeek、built-in third-party 和 custom providers。
  • per-provider headers、model capabilities 和 compatibility controls 僅作用於帶 Custom tag 的 provider。

核心能力

全局請求頭

  • 在 WebUI 中配置全局 User-Agent 和額外 headers,用於每次模型請求。
  • 清空全局 headers 後,可恢復 Harness 原始請求頭行爲。
  • 全局和 per-provider 的 User-Agent 字段都提供常見 presets,同時保留自由輸入。

自定義 provider 請求頭

  • 爲帶 Custom tag 的 provider 配置 User-Agent 和額外 HTTP request headers。
  • 同名字段中,匹配的 local values 優先於 global values。
  • 正常模型請求和 Fetch available models 都會使用這些請求頭。
  • Fetch available models 使用當前 form 中已填入的 header 值,包括尚未保存的值。

模型輸入與推理配置

  • 將每個 custom model 聲明爲 text-only 或 text-and-image capable。
  • 配置每個 model 暴露的 reasoning levels,並將每個 level 映射到發給其 API 的值。
  • 設置 provider-level default reasoning level。
  • 爲 openai-completions providers 配置 reasoning parameter format。

system-role compatibility

  • 對 compatible custom OpenAI provider,當端點拒絕 developer messages 時,可管理 DSH 的 native compat.supportsDeveloperRole switch。
  • 該 checkbox 是 WebUI 層面對 DSH native pi-ai compatibility setting 的封裝,不攔截或重寫 JSON request body。

安裝與啓用

前置條件

  • Node.js ^22.19.0 或 >=24.0.0;推薦 Node.js 24 LTS。
  • DeepSeek Harness 0.1.1-rc.2 或兼容版本,且具備 web profile 和 native supportsDeveloperRole support。
  • 安裝、升級或移除插件前,停止正在運行的 WebUI;命令完成後重啓 WebUI。
  • 插件通過 DSH 插件系統加載,運行權限取決於啓動 DSH 的進程。安裝前請檢查源碼、MIT 許可和自身環境。

安裝命令

下面的命令安裝 v0.5.0 release TGZ。該 URL 在此 reviewed version 發佈爲 GitHub Release 後可用。

npx --yes -p @deepseek-ai/dsh dsh plugin --profile web add https://github.com/supersealwqas/dsh-custom-provider-settings/releases/download/v0.5.0/dsh-custom-provider-settings-0.5.0.tgz

命令完成後,重啓 WebUI 使插件生效。

典型用法

  1. 打開 Settings > Models。
  2. 在模型列表頂部的 Global model request headers 區域輸入 User-Agent 或其他 headers;留空可保持 Harness defaults。
  3. 編輯一個已經包含模型的 Custom tag provider,或選擇 Add provider > Add a custom provider 並輸入其 models。
  4. 在插入的 per-provider Request headers 區域配置該 provider 的 headers;匹配的 local values 優先於 global values。
  5. 對 compatible custom OpenAI provider,如果端點拒絕 developer role,啓用 Use the system role。
  6. 在 Model capabilities 下選擇每個 model 的 input 和 reasoning capabilities;僅當 API 和 model 都支持 image input 時選擇 Text and images only。
  7. 使用原有 Apply 或 Create provider 按鈕。
  8. 新建會話並選擇該 model;global headers 會自動應用。

User-Agent presets

全局和 per-provider 的 User-Agent 字段包含以下 presets:

claude-cli/2.1.161 (external, cli)
claude-cli/2.1.161
claude-code/1.0.0
claude-code/0.1.0
Kilo-Code/1.0

字段仍可手動輸入其他 User-Agent。

使用注意

  • 全局 headers 會影響所有 channel 和 model,配置前確認不會改變官方 DeepSeek 或內置第三方 provider 的行爲。
  • per-provider 設置只作用於帶 Custom tag 的 provider。
  • Text and images only 只是向 Harness 聲明模型能力;它不能爲不支持視覺的 API 或 model 增加 vision support。
  • system-role 設置面向 DSH native compatibility setting,不是請求體改寫。
  • 已保存在 settings.yaml 的全局 headers 和 provider extension fields 不會自動刪除。
  • v0.5.0 TGZ 命令是否可立即使用,取決於該版本是否已作爲 GitHub Release 發佈。

鏈接

GitHub:

https://github.com/supersealwqas/dsh-custom-provider-settings

插件線索中的目錄頁(未獨立覈實):

https://www.skillhub.cn/plugins/supersealwqas/dsh-custom-provider-settings

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

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

小夜