前言¶
DeepSeek Harness(DSH)通過 llm-pi-ai 適配器,本身支持爲每個模型聲明 reasoningEfforts(思考強度)和 input(輸入模態)。官方「模型」頁的編輯卡卻刻意不暴露這兩個字段。結果是:第三方模型在 Composer 裏往往沒有思考檔位選擇器,手工添加的模型容易被當成純文本;想補全能力只能去改 settings.yaml。
dsh-better-reasoning-effort-fish 是社區插件 dsh-better-reasoning-effort(原作者 HaoyueQin,上游基線 v0.5.2)的個人 Fork,維護者爲 Fish-under-sea。它在官方模型編輯卡內注入 UI,並帶一鍵自動適配。相對上游,本 Fork 讓出官方模型能力面板的 settings.models.provider-card 席位,以便與 dsh-web 的模型能力插件共存。
這是什麼¶
npm 包名:dsh-better-reasoning-effort-fish(當前資料中版本 0.5.8)。許可證 MIT(版權歸原作者,本倉庫 LICENSE 未改)。分類屬於 DSH 生態中的模型推理方向。
插件類型爲 client + host(Web 客戶端注入 + host 側自動填充等邏輯)。它不改變 DSH 核心,只在官方「模型」頁 DOM 上錨定注入,並與卡片自身的保存/取消行爲對齊。
核心功能¶
下面介紹資料中已明確列出的能力。
官方頁內編輯¶
展開某條模型行後,在官方容量字段下方會出現「選項」編輯塊,包括:
- 思考強度:勾選檔位(off / minimal / low / medium / high / xhigh / max),並可填寫線上取值(例如 Composer 選 High 時網關收到自定義字符串)。
- 輸入模態:勾選圖片輸入等,聲明模型接受的模態。
- 端點兼容(協議兼容時出現):在
openai-completions上配置思考預算字段 / vLLM 優先級;在openai-responses上配置max_output_tokens的處理方式。
改動進入待寫入狀態,點卡片 保存 一併落盤;取消 或刷新則與卡片其他字段一起丟棄。
三種勾選意圖:
- 全不勾 + 保存 → 取消聲明(回到繼承)。
- 只勾 off + 保存 → 禁用推理。
- 勾選具體檔位 → 寫入聲明。
自動適配與自動填充¶
- 自動適配:一鍵填入推薦檔位、線上取值與模態;內置知識庫(資料寫明 15 家廠商 65 個條目)、線協議推斷、同源
/models探測,建議帶置信度標註。 - 自動填充:啓動時補齊未聲明模型的推薦聲明;會話中新增模型也會補寫。可通過配置關閉(見下文
autofill、modalityAutofill)。
Composer 與默認值¶
- 官方模型菜單彈出體可替換爲上游風格的思考強度滑塊(拖動 / 鍵盤,樂觀提交、被拒回滾),右下角觸發鈕保持原樣。
- 模型行上可設默認思考強度,寫入設置文檔,新會話打開該模型即使用。
請求頭與 User-Agent¶
在提供商卡片內可編輯官方 headers 字段(掩碼顯示、路徑合併),並按 origin 精確接管 fetch 層的 user-agent;同源 /models 探測一併覆蓋。
防禦式注入¶
注入錨定官方「模型」頁 DOM。官方升級改變結構時,注入會暫停,官方頁本身不受影響。
本 Fork 相對上游的改動¶
上游在提供商卡片上佔用 settings.models.provider-card 席位註冊請求頭編輯器。該席位爲 keyed slot:同一 (key, priority) 只能有一個條目。@linxin666/dsh-client-ui-model-capabilities(dsh-web 模型能力面板)與上游使用相同的 llm-pi-ai key 與默認優先級,並存時會導致模型能力面板靜默消失。
本 Fork 將請求頭編輯器改掛到卡片自身的編輯器容器,不再註冊該席位,模型能力面板可正常顯示;請求頭編輯仍在卡片內。插件 id、host 路由前綴與包名已與上游分開,理論上可同 profile 並存,但資料建議只裝一個,避免兩套 UI 同時改同一份設置。
安裝與啓用¶
環境要求(來自 README badge 與 package 說明):
- DeepSeek Harness
>= 0.1.5-alpha.1(資料寫明當前對照0.2.0-rc.2編譯與門禁)。 - Node
^22.19.0 || >=24。
從 npm 安裝(推薦):
# 桌面版
dsh plugin --profile desktop add dsh-better-reasoning-effort-fish
# Web 版
dsh plugin --profile web add dsh-better-reasoning-effort-fish
DSH 內置 pnpm 的 minimum-release-age 爲 24 小時:版本發佈一天內的安裝可能解析到「足夠舊的最新版」。若要立刻安裝指定版本,可寫包名加版本,例如:
dsh plugin --profile web add dsh-better-reasoning-effort-fish@0.5.8
也可從 GitHub Release 的 tarball 安裝(跳過 registry 與發佈冷靜期,升級時替換 URL 中的版本號):
dsh plugin --profile web add \
https://github.com/Fish-under-sea/dsh-better-reasoning-effort-fish/releases/download/v<version>/dsh-better-reasoning-effort-fish-<version>.tgz
安裝後重啓 DSH 並強制刷新瀏覽器。
若曾使用 HanaAyane 的 dsh-reasoning-effort,資料建議先移除,避免 Composer 同一席位出現兩個檔位控件:
dsh plugin --profile web remove dsh-reasoning-effort
典型用法¶
經過上面的安裝步驟後,可按下面流程配置第三方模型。
- 在官方「模型」頁配置第三方供應商(API Key 等)。
- 展開目標模型行,在注入的編輯塊中:
- 勾選思考檔位並填寫線上取值(如需要);
- 在「輸入模態」區勾選圖片輸入等;
- 需要時可點「自動適配」參考推薦值,再按需微調官方輸入框;
- 點卡片 保存 落盤。 - 需要自定義網關行爲時,查看「端點兼容」分區並按協議類型開關相應項。
- 展開提供商卡片,在請求頭區域編輯
user-agent等(隨卡片保存)。
聲明完成後,該模型在 Composer 中應出現思考強度選擇;聲明瞭圖片輸入的模型可按 DSH 能力傳附件。
可選配置¶
在 settings.yaml 的插件 config 塊中可寫:
| 配置鍵 | 默認值 | 說明 |
|---|---|---|
autofill |
true |
啓動時自動填充未聲明模型的推薦聲明 |
modalityAutofill |
true |
自動填充是否連帶輸入模態 |
probeTimeoutMs |
15000 |
/models 探測超時(毫秒) |
bootRetryDelaysMs |
[1000, 2000, 4000, 8000, 16000, 30000] |
啓動自動填充失敗後的重試延遲 |
defaultGuard |
true |
無檔位調用落廠商默認檔,而非發送 thinking: disabled |
示例:
- insert:
- id: dsh-better-reasoning-effort-fish
name: dsh-better-reasoning-effort-fish
config:
autofill: true
modalityAutofill: true
probeTimeoutMs: 15000
bootRetryDelaysMs: [1000, 2000, 4000, 8000, 16000, 30000]
defaultGuard: true
適用場景與注意¶
適合誰:在 DSH 裏大量使用第三方 OpenAI 兼容網關或自建中轉,需要在 UI 裏聲明思考檔位與視覺模態,又不想長期手寫 YAML 的開發者。
權限與安全:插件以當前 DSH 進程權限運行,會讀寫設置文檔;安裝前應閱讀倉庫源碼與 MIT 許可證。資料明確:headers 中的憑據在磁盤上不脫敏(只讀視圖掩碼,設置文件仍明文),請與 API Key 同等對待。
已知限制(摘要):
- 注入依賴官方「模型」頁 DOM,官方大改後需等待插件適配。
- 自動適配探測僅應答迴環與 IP 字面量 host,不跟隨重定向。
reasoningEfforts爲聲明性建議,端點實際行爲以提供商文檔爲準。- 模態詞彙跟隨 pi-ai 核心(當前
text/image)。 - 請求頭區域依賴官方卡片編輯器容器結構;本 Fork 爲共存讓出席位,官方若改結構,請求頭區域可能暫時不出現,但不破壞官方頁。
- 同一時間只應有一個
user-agent改寫器;插件會提示已知同類衝突。
社區插件目錄(SkillHub)與 DeepSeek / 幻方無官方從屬關係;星標等統計以目錄頁爲準(線索中爲 0)。
鏈接¶
- 社區目錄:https://www.skillhub.cn/plugins/Fish-under-sea/dsh-better-reasoning-effort-fish
- GitHub:https://github.com/Fish-under-sea/dsh-better-reasoning-effort-fish
- 上游原項目:https://github.com/HaoyueQin/dsh-better-reasoning-effort
本插件把 reasoningEfforts 與 input 從 YAML 搬回官方模型編輯卡,並針對 dsh-web 生態做了席位衝突修復;若你的 profile 裏同時裝模型能力類插件,優先評估本 Fork 是否更符合共存需求。