DeepSeek Harness (DSH) 提供了插件化擴展能力。在 Web GUI 環境下,處理多語言文本往往需要頻繁切換窗口上下文。dsh-translator 插件通過瀏覽器端的浮動窗口組件,解決了這一問題。
插件簡介¶
該插件由 zhinian558 維護,開源協議爲 MIT。它爲 Web GUI 提供了一個浮動 AI 翻譯窗口,具備以下核心能力:
* 窗口交互:窗口可拖拽、可調整大小,包含語言選擇器、源文與結果分欄。
* 狀態監控:窗口底部實時顯示提供商賬戶餘額和今日估算消耗(CNY)。
* 服務託管:在主機端託管路由 /translator/* 用於翻譯、餘額查詢和狀態檢查。
* 配置管理:提供獨立的設置命名空間。
* 安全性:API 密鑰由主機端持有,不會以明文形式傳遞到瀏覽器頁面。
安裝與啓用¶
安裝該插件需要使用 DSH 的 CLI 工具。
dsh plugin --profile web add github:zhinian558/dsh-translator
安裝完成後,必須重啓 dsh 進程並刷新瀏覽器頁面才能加載插件。
技術實現與安裝方式¶
插件採用雙面包結構(Host + Browser)。
- Git 安裝:拉取源碼,依賴
prepare腳本在安裝時構建lib/目錄。若使用 pnpm ≥10,需在pnpm-workspace.yaml中允許構建此包。 - NPM/Tarball 安裝:包內自帶預構建的
lib/目錄,無需額外構建權限。 - 本地開發:需要執行
pnpm install && pnpm run build。
插件通過 cordis.patch.yml 將主機服務(webServer、settings、credentials)注入到 DSH 核心中,瀏覽器端通過 window.__ModuleLoader__.load 加載客戶端資源。
核心功能與 API¶
翻譯服務¶
通過 POST 請求調用翻譯接口,請求體格式如下:
{
"text": "待翻譯文本",
"source": "源語言代碼",
"target": "目標語言代碼"
}
支持的 source 值包含 'auto'。返回結果爲 JSON,包含翻譯文本、Token 使用量、服務模型、估算費用(CNY)和延遲。
狀態與餘額¶
- GET /translator/balance:查詢提供商賬戶餘額。DeepSeek 調用
/user/balance,OpenAI 使用公開的 credit-grants 端點,其他兼容端點可能返回不支持。 - GET /translator/status:查詢已解析的提供商信息、密鑰配置來源及餘額查詢支持狀態。
配置¶
插件的設置項包含提供商類型(deepseek | openai)、Base URL、模型、API 密鑰(支持字面量或環境變量引用)以及價格配置。
注意事項¶
- 密鑰解析順序:插件優先使用設置頁中的
apiKey字面量值,其次才使用憑證 seam 引用。 - 數據存儲:窗口位置、大小以及每日使用賬本(按本地日期記錄,30天后清理)均存儲在瀏覽器的
localStorage中。 - 費用估算:今日消耗爲基於本地配置價格和提供商 Token 使用的估算值,非官方賬單,僅供參考。
- 權限:作爲 DSH 插件,它以當前 dsh 進程的權限運行。