asd13006/dsh-multi-lang-ui
dsh-multi-lang-ui
dsh-multi-lang-ui is a community DeepSeek Harness plugin. Read the repository README before installing.
Install
npx @deepseek-ai/dsh plugin --profile web add https://github.com/asd13006/dsh-multi-lang-uiRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-multi-lang-ui)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from asd13006/dsh-multi-lang-ui, cleaned of badges and images.
dsh-multi-lang-ui
Languages: English · 繁體中文 · 日本語 · 한국어 · Français · Deutsch · Español
A DSH plugin that adds multiple languages to the DeepSeek Harness Web UI language options — 繁體中文, 日本語, 한국어, Français, Deutsch, Español. Known UI strings use hand-polished translations (each language translated from the English baseline); any new / updated / third-party strings fall back to English (or, for 繁體中文, a runtime Simplified→Traditional converter) — so upstream UI updates and other plugins are covered without re-translating every language.
Features
- Adds 6 languages to the "Settings → General → Language" menu (alongside the built-in 中文 / English): 繁體中文, 日本語, 한국어, Français, Deutsch, Español.
- Hand-polished translations per language: every official locale namespace is translated string-by-string from the English baseline (700+ strings per language).
- Fallback for untranslated strings: upstream-added or third-party-plugin strings — 繁體中文 uses a built-in Simplified→Traditional char table (720+ chars) converted on the fly; the other languages fall back to English (the official
endictionaries are complete for every namespace), so no garbled or missing text appears. - DOM-level fallback conversion (zh-TW only): non-dictionary content (e.g. plugin-market descriptions) is converted from Simplified to Traditional via MutationObserver in zh-TW mode (inputs, code blocks and other user content are always excluded).
- Persistence: the language choice is stored in browser
localStorageand survives reloads. - Zero-intrusion: a pure client plugin — no upstream packages are modified; it silently degrades if the locale service is unavailable, without affecting other plugins.
Installation
Recommended: install from GitHub (give this link to an agent, or run it yourself)
dsh plugin --profile web add https://github.com/asd13006/dsh-multi-lang-ui
Or let an agent install it: paste this repository link into DSH and ask the agent to run the command above.
After installation, restart dsh web, then pick your language in "Settings → General → Language".
Removal (important): always use dsh plugin remove — it cleans up the profile's bundle list; manually deleting the package can leave dangling references that prevent DSH from starting:
dsh plugin --profile web remove dsh-multi-lang-ui
npm install (once published):
dsh plugin --profile web add dsh-multi-lang-ui
How it works
locale translate(ns, key)
│
├─ active is one of our languages ?
│ ├─ curated translation exists (DICTS) ? → return it
│ └─ missing (new strings / third-party plugins)
│ ├─ zh-TW → convert the zh value via the char table
│ └─ others → fall back to the en value
└─ other languages → handled by dsh-client-locale as usual
At startup the plugin:
…

