DeepSeek Harness Hub
← 返回列表

界面翻译插件RadicalGitter/dsh-ui-translate

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

浏览器本地离线翻译中文界面,原文绝不上传

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/22 · 已提供中文文档

面向 DeepSeek Harness Web 的隐私优先、浏览器本地中文到英文翻译,使用 OPUS-MT。

综合分
29
GitHub 分
29
用户评分
★ Stars
2
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add RadicalGitter/dsh-ui-translate
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-connection@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-settings
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-ui-translate

一个隐私优先的 DeepSeek Harness Web 插件,可以在不启用 Chrome 自动翻译的情况下,翻译所有可见的中文 UI 和内容——包括会话标题、工作区名称、消息、搜索结果和插件文本。

隐私与变更模型

- 该插件在首次安装时处于禁用状态,并默认使用进程内离线词库。
- 具备网络能力的翻译仍仅限于编译期允许列表中的已知 DSH UI 短语和有界数字模板。
- 显式选择的浏览器本地 OPUS-MT 后端会翻译所有已连接的可见中文文本,包括用户撰写和会话派生的内容。源文本和译文都保留在专用的浏览器 Worker 内,绝不会被上传。
- 可编辑/撰写字段、textarea、input、select、contenteditable、代码/预格式化内容、[data-input-backdrop]、translate="no" 和 .notranslate 保持不被改动,以避免破坏用户撰写或可执行的文本。插件可以将只读的  显式标记为散文,使用 data-dsh-translate="prose";只有浏览器本地后端可以翻译这个选择性启用的表面。
- 翻译只更改 Text.data;元素结构、属性、稳定的会话/工作区 ID、链接、监听器和 React 所有权保持完整。
- 翻译后的文本会获得一个可配置的标记:紫色叠加层(默认)、虚线下划线、两者都有,或都没有。将鼠标直接悬停在翻译后的字符上约 0.65 秒,会显示恰好一个上下文操作:翻译状态下显示 Show original,显示原文后显示 Re-translate。该控件不会包裹或拦截底层链接。
- 翻译后的会话标题是展示别名:点击它们仍会通过其未更改的 ID/链接打开规范线程。目前尚不提供由代理进行的自由文本别名解析。
- 禁用或重新配置该插件会恢复原始文本。翻译结果缓存是有界的且仅存在于内存中;下载的模型资源使用浏览器缓存。
- 本地推理以小型顺序批次逐步运行:可见的导航、设置和实时状态文本优先于对话积压内容,滚动时会将新可见的内容加入队列。

后端

| 后端 | 默认 | 网络行为 |
| --- | --- | --- |
| 离线词库 | 是 | 无网络。将已批准的中文标签和有界的宠物数量/点数模板翻译为英文;未知标签保持不变。 |
| 浏览器本地 OPUS-MT | 否 | 仅限中文到英文。翻译所有可见的中文 UI 和内容。首次使用时,从 Hugging Face 下载约 110 MB 的固定量化模型文件,将其缓存在浏览器中,并在专用的本地 Worker 内执行推理。页面文本不会被上传。 |
| OpenAI 兼容 | 否 | 仅在用户显式选择此后端并启用翻译后,发送允许列表中的 UI 短语。调用通过一个经过令牌认证、同源、限速、仅限回环的 Host 路由进行。 |
浏览器本地后端使用 Xenova/opus-mt-zh-en,并固定到修订版本 39d480d52a9ea3065a1f117adfe4dbc55de10e6f。选择它即表示明确同意从 Hugging Face 下载公共模型产物。在此模式下,模型文件是唯一的远程载荷:源 UI 文本和译文都保留在浏览器 Worker 内。长消息会被切分为有界的句子/块,并在本地重建。取消、禁用、重新配置或卸载插件都会终止正在进行的推理。这个紧凑的本地模型可能会产生直译或生硬的译文;病态的空白、过长以及重复标点输出会在到达页面之前被丢弃或规范化。

译文通过浏览器 Custom Highlight API 进行视觉标记;在该 API 不可用时,则使用插件自有的范围覆盖层。浮动控制框位于 React 拥有的内容之外,需要有意悬停文本才会出现,并且一次只显示一个操作:先显示原文,然后使本地结果缓存失效并重新翻译。

OpenAI 兼容提供程序默认使用 http://127.0.0.1:11434/v1 和模型 qwen2.5:7b。接受回环、RFC1918、链路本地、.local 和 host.docker.internal 端点。公共主机需要显式启用 Allow a public endpoint 设置并使用 HTTPS。

可选 bearer token 由 Host 从 DSH_UI_TRANSLATE_API_KEY(或仅用于组合的 apiKeyEnv 设置)读取。它绝不会存储在浏览器状态中,也不会发送到设置 UI。重定向会被拒绝,因此凭据不会被转发到另一个源。

提供程序代码在 Host 上隔离于 TranslationProvider / TranslationProviderRegistry 之后,在浏览器中隔离于 ClientTranslationBackend / ClientBackendRegistry 之后。浏览器本地模型通过编译时经过审查的语言对目录进行解析,该目录固定模型、修订版本、许可证元数据、源匹配器和目标拼接策略;配置无法提供任意模型资产 URL。

集成可读插件内容

动态挂载的插件文本不需要 API 调用:文档观察器会自动发现普通的可见文本。逐字元素仍受保护,因为通用翻译器无法知道  包含的是散文、JSON、工具参数还是可执行代码。如果插件渲染可信的只读散文——例如注入的 AGENTS.md、上下文摘要或工具描述——则可以在该确切元素上选择启用:

可供用户阅读的注入上下文

不要将该属性放在 JSON schema、工具参数、源代码、终端输出或同时包含这些表面的祖先元素上。当选择离线词汇表或具备网络能力的后端时,该属性会有意保持惰性,因此任意注入的上下文无法跨越 Host 隐私边界。

安装

在 npm 发布之后:

dsh plugin --profile web add dsh-ui-translate

从此仓库检出:

sh
dsh plugin --profile web add link:/absolute/path/to/dsh-ui-translate

或者,如果你的 DSH 配置文件安装器支持 Git 依赖,可以直接添加 Git 仓库:
sh
dsh plugin --profile web add https://github.com/RadicalGitter/dsh-ui-translate.git

重启 dsh web,然后打开 设置 → UI 翻译。该插件在你启用之前一直处于关闭状态。

配置

设置页面提供以下选项:

- 启用/禁用(默认:禁用);
- 目标语言(默认:英语);
- 后端(默认:离线词汇表),包括可选的浏览器本地 OPUS-MT 引擎;
- 选择 OPUS-MT 时的本地模型下载/初始化状态;
- 翻译标记样式:紫色覆盖层(默认)、虚线下划线、两者兼有,或无;
- 针对已翻译内容的延迟悬停逐文本原文/重新翻译控件;
- 选择该后端时的 OpenAI 兼容端点、模型,以及公共端点选择加入。

相同的值可以在后续的 Cordis 补丁中提供:
yaml
- id: ui-translate
config:
enabled: true
sourceLanguage: zh
targetLanguage: en
backend: openai-compatible
markerStyle: overlay
endpoint: http://127.0.0.1:11434/v1
model: qwen2.5:7b
allowRemoteEndpoint: false
apiKeyEnv: DSH_UI_TRANSLATE_API_KEY

开源模型与运行时归属

可选的浏览器本地后端基于以下开源项目构建:

- Helsinki-NLP/opus-mt-zh-en,由赫尔辛基大学语言技术研究组开发,依据 CC BY 4.0 许可;
- Xenova/opus-mt-zh-en,由 Xenova(Joshua Lochner)发布的浏览器兼容 ONNX 转换版本,使用上文所列的固定修订版本;
- @huggingface/transformers 3.8.1,依据 Apache-2.0 许可;
- ONNX Runtime Web,依据 MIT 许可。

请参阅 THIRD_PARTY_NOTICES.md 以获取完整的归属信息、模型引用、修订版本、许可证链接及限制说明。

开发
sh
npm install
npm run typecheck
npm test
npm run build
npm pack --dry-run

cordis.patch.yml 使此仓库成为标准的 DSH 配置文件包。该包的 dsh.client 元数据会告知 Web 客户端模块扫描器提供 lib/client.js。

安全与隐私

请参阅 SECURITY.md。简而言之:安装过程和默认后端不执行任何翻译请求,浏览器文本绝不会被此插件存储到磁盘上,远程端点需要明确选择加入。在启用网络提供商之前,请审查端点所有权和模型保留政策。

许可证

MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群