DeepSeek Harness 插件:dsh-translator 浮动翻译窗口

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 进程的权限运行。
羽毛球分组比赛记分
小程序二维码

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

小夜