前言¶
在使用 DeepSeek Harness 處理 HTTP 請求時,有時需要統一或修改請求頭。dsh-user-agent 插件負責將所有出站 HTTP 請求(包括 LLM API 調用和其他 global-fetch 流量)的 User-Agent 重寫爲自定義值。
插件簡介¶
該插件由維護者 dsh-plugins 開發,是一個 MIT 許可的聯網工具插件。它通過覆蓋調用者的請求頭(例如 dsh-llm 的基準 UA)來工作。
核心功能¶
- Rewrite anything that uses global
fetch:重寫任何使用 globalfetch的內容,包括 DeepSeek / OpenAI 兼容適配器調用、網絡搜索以及工具發出的 HTTP 請求。 - Live settings page:提供獨立的 Web 設置標籤頁,可實時開關重寫並編輯字符串,無需重啓。
- Standard settings integration:值存儲在
dsh-user-agent命名空間下,支持跨會話持久化。 - Clean lifecycle:僅在插件運行時包裝
globalThis.fetch,停止或更新時自動恢復原始 fetch。
安裝與啓用¶
使用標準的 DSH 插件安裝命令:
dsh plugin add @dsh-plugin/dsh-user-agent
安裝完成後,打開 Web GUI 設置,進入 UA 設置 標籤頁。開啓開關,輸入目標 User-Agent 字符串,點擊 保存。更改會立即應用到下一次請求。
配置¶
插件支持通過配置文件覆蓋默認值。配置項位於 cordis.patch.yml 或用戶設置層,與標準的 DSH 設置系統集成:
| 字段 | 類型 | 默認值 | 說明 |
|---|---|---|---|
enabled |
boolean |
true |
總開關,關閉時爲透傳模式。 |
userAgent |
string |
DeepSeek-Harness/0.1 (+https://github.com/deepseek-ai/dsh) |
應用於每個重寫請求的 User-Agent 字符串。 |
注意事項¶
- 需要 Node.js 環境版本 >= 20。
- 插件僅在運行期間生效,停止或移除插件後,包裝邏輯即失效。
- 遵循 MIT 許可證。
總結¶
dsh-user-agent 提供了一種在不修改代碼的情況下,對 Harness 發出的所有 HTTP 請求進行 UA 統一管理的方案。適合需要統一請求標識或進行特定請求僞裝的場景。