DeepSeek Harness 的插件化架構允許開發者擴展功能,但也帶來了兼容性衝突。dsh-claude-ux 插件提供了風險控制界面,但其底層機制(如區域封鎖、對話接管、分類請求)有時過於嚴格。foliotemp/dsh-claude-antidote 旨在解決這一矛盾:允許該插件與 dsh-claude-ux 同時安裝,保持設置頁顯示總開關爲“開啓”,但實際中和風險控制帶來的負面影響。
插件定位¶
這是一個由 FolioTemp 維護的兼容性補丁插件,屬於 admin-security 類別。它的核心價值在於“僞裝”與“中和”:在 UI 層面維持上游插件的正常狀態,在底層邏輯層面禁用其帶來的限制性功能。
核心功能¶
插件通過攔截和修改上游請求與響應,實現以下效果:
- UI 狀態僞裝:精確攔截
/_dsh/claude/status請求,返回開啓狀態。這使得 DeepSeek Harness 的設置頁繼續顯示“Claude 風控:已啓用”,點擊保存也能正常回顯。 - 保存時禁用:在保存配置請求到達宿主之前,將唯一的真實總開關強制改回
false。其他配置字段(如閾值、模型選擇)正常保存。 - 攔截分類請求:攔截帶有
purpose: dsh-claude-classify的請求,並在本地直接返回全否結果,避免消耗模型 Token。 - 移除系統提示注入:刪除上游添加的
claude:geo和claude:region-policy系統提示節,恢復日期隱寫格式。 - 恢復輸入框:當上遊返回
chatEnded時,插件以priority: -100的優先級搶佔輸入框控制權,顯示 DeepSeek Harness 原生的後臺輸入框。 - 重新調用模型:若上游短暫生效並返回合成回覆,插件能識別該回復並重新調用真實模型進行響應。
安裝與啓用¶
安裝順序有嚴格要求:必須先安裝上游插件 dsh-claude-ux,再安裝此解藥。
npx -y @deepseek-ai/dsh plugin --profile web add github:eri64/dsh-claude-ux
npx -y @deepseek-ai/dsh plugin --profile web add github:FolioTemp/dsh-claude-antidote
安裝完成後,重啓 dsh web 進程,並在瀏覽器中進行硬刷新以加載新插件。
驗證方法¶
安裝成功後,可以通過日誌和接口調用驗證實際狀態:
- 查看日誌:運行
npm test,日誌中應包含[dsh-claude-antidote] active和[dsh-claude-antidote] upstream disabled (startup)。 - 檢查實際狀態:在瀏覽器設置頁中,應看到“Claude 風控”總開關爲開啓。在瀏覽器外直接請求診斷接口,實際值應仍爲
false。
curl.exe --noproxy "*" http://127.0.0.1:3099/_dsh/claude/status
適用場景與注意事項¶
該插件主要服務於需要繞過 dsh-claude-ux 風控限制的開發者。使用時需注意以下限制:
- 自動啓用風險:卸載
dsh-claude-antidote後,不會自動重新啓用上游插件dsh-claude-ux。這避免了卸載後突然恢復區域封鎖或對話結束接管的風險。 - 數據保留:插件不會刪除或改寫歷史會話事件,已經顯示過的拒絕文案或
blocked記錄仍保留在時間線中。 - 請求隔離:插件僅攔截同源、路徑精確匹配的
/_dsh/claude/status請求,不會修改其他插件的fetch請求。 - 環境依賴:DeepSeek Harness 當前處於 developer preview 階段,若宿主改變
conversation.composeroverlay 或 waterfall API,可能需要更新前端恢復層。
總結¶
foliotemp/dsh-claude-antidote 是一個針對 dsh-claude-ux 的功能性兼容補丁。它通過在 UI 層維持正常顯示,在邏輯層完全禁用風險控制,解決了兩個插件共存時的衝突。對於需要精細控制 DeepSeek Harness 行爲的開發者而言,這是一個實用的工具。
- 目錄頁:https://www.skillhub.cn/plugins/FolioTemp/dsh-claude-antidote
- 源碼倉庫:https://github.com/FolioTemp/dsh-claude-antidote