Universal on-screen translator for DeepSeek Harness Web UI: translates text, attributes, Shadow DOM, and iframes across 45+ languages.
Install
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:mustakimabdullah25-tech/dsh-screen-translator
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
Universal on-screen translator for DeepSeek Harness Web UI.
Translates UI text, menus, sidebars, Settings, MCP Connectors, nested iframes, and Shadow DOM elements across 45+ languages in real time without external API keys or rate limits.
📖 English | 中文说明
✨ Features
- 🌍 45+ Languages Supported — Instant real-time translation for English, Simplified & Traditional Chinese, Japanese, Korean, Spanish, French, German, Russian, Arabic, and more.
- ⚡ Multi-Endpoint Google Engine — Automatic failover between
dict-chrome-ex,clients5,single-at, andweb-atAPIs to completely prevent429 Too Many Requestsrate limiting. - 🔍 Full-Spectrum DOM Coverage:
- Visible text nodes and SVG typography (
<text>,<tspan>). - Interactive attributes (
placeholder,title,alt,aria-label,aria-placeholder). - Open Shadow DOM roots and web components.
- Same-origin and nested iframes (MCP panels, modals, dialogs).
- Visible text nodes and SVG typography (
- 🚀 High Performance & Zero-Lag:
- Dual-Tier Cache (In-Memory LRU + LocalStorage persistence) — Instant
0msrendering for previously translated phrases. - Smart Debounced MutationObserver — Only newly inserted or altered DOM elements are processed.
- Sentence Boundary Splitting — Natural splitting at punctuation boundaries (
。,!,?,.,!,?) preserves contextual readability. - Loop Prevention — Strict self-exclusion tags (
[data-no-translate], code blocks, syntax highlighters) prevent infinite loops.
- Dual-Tier Cache (In-Memory LRU + LocalStorage persistence) — Instant
- 🎛️ Clean Native UI Integration:
- Integrated into Settings → General with matching native theme tokens.
- One-click translation actions directly inside assistant conversation turns.
- Granular controls: Enable/Disable, Target Language selector, Translate now, and Clear cache.
📦 Installation
Method 1: Via DSH Plugin Manager (Recommended)
In your terminal or DSH session:
dsh plugin add mustakimabdullah25-tech/dsh-screen-translator
Method 2: Manual Installation from Source
Clone the repository into your DSH plugins directory:
cd "path/to/dsh-workspace/plugins"
git clone https://github.com/mustakimabdullah25-tech/dsh-screen-translator.git
Then install the bundle into your profile:
dsh plugin add ./plugins/dsh-screen-translator
⚙️ Configuration & Usage
Once installed and enabled:
- Open Settings → General.
- Locate the Screen Translator (Auto-Translate Everywhere) section.
- Choose your preferred Target Language from the dropdown.
- Toggle Enabled to start automatic screen translation.
- Hit Translate now to force-translate the entire visible viewport immediately, or Clear cache to wipe stored translations.
🛠️ Architecture
┌────────────────────────────────────────────────────────┐
│ DSH Web Runtime │
│ │
│ ┌───────────────────────┐ ┌───────────────────────┐ │
│ │ MutationObserver │ │ TreeWalker │ │
│ │ (Watches new DOM/SVG) │ │ (Scans DOM/Shadow/IFR)│ │
│ └───────────┬───────────┘ └───────────┬───────────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌────────────────────────────────────────┐ │
│ │ Language & Token Filter │ │
│ │ (Filters Code, Math, Regex, Excludes) │ │
│ └──────────────────┬─────────────────────┘ │
│ │ │
│ ▼ │
│ ┌────────────────────────────────────────┐ │
│ │ Dual Cache (Memory LRU + Storage) │ ──► Hit (0ms)
│ └──────────────────┬─────────────────────┘ │
│ │ Miss │
│ ▼ │
│ ┌────────────────────────────────────────┐ │
│ │ Multi-Endpoint Network Engine │ │
│ │ (Chrome-Ex ➔ Clients5 ➔ Single-At) │ │
│ └────────────────────────────────────────┘ │
└────────────────────────────────────────────────────────┘
📁 Repository Structure
dsh-screen-translator/
├── client.js # Client bundle: DOM translation engine, cache & settings UI
├── index.js # Host entry point (Cordis apply hook)
├── cordis.patch.yml # Cordis composition patch configuration
├── package.json # Bundle metadata and plugin contract
├── README.md # English documentation
├── README_ZH.md # Chinese documentation
└── LICENSE # MIT License
🤝 Contributing
Contributions, issues, and feature requests are welcome!
Feel free to open an issue or submit a pull request on GitHub.
📄 License
This project is licensed under the MIT License.
Links
More in this category
zhu1090093659/dsh-web#packages/dsh-task-board★ 7869
Task board for the dsh web GUI: a sidebar multi-column kanban whose cards run in real DSH agent sessions and can also be scheduled with cron expressions, executed host-side even with the browser closed.
zhu1090093659/dsh-web#packages/dsh-web-all★ 7869
Plugin and skin collection for the DSH Web UI: task board, Git graph, right-side panel, remote mobile UI, pet, live token stats, and a skin center.
omdsh-dev/DSH-better-sidebar★ 3692
Full sidebar workbench with file rendering and editing, terminal, Git, and subagents; third-party plugins can register new tabs.
ccch1mneyyy/dsh-TUI★ 3120
Claude Code-style full-screen terminal UI: pixel-whale header, live status line, and streaming thought expansion.
MeteorNOX/DeepSeek-Balance-Whale-Widget★ 2817
A fixed-corner whale widget for the DSH web GUI — balance, today's usage and per-turn cost with peak/off-peak pricing, editable balance-alert and daily-budget bubbles, a module-based custom bubble queue with A/B weighted choices and random lines or images, 30+ vendor templates (OpenAI, OpenRouter, Kimi, SiliconFlow, Ark, Zhipu, MiniMax and more) with per-model balance and subscription quota, plus task-end sound, imported audio, custom roles and a resource manager. Local-only, no telemetry.
Devin-AXIS/deepseek-design#deepseek-idesign★ 1402
Visual design studio for websites, app prototypes, posters, cards, reports, and magazines, with templates, direct element editing, selection-aware AI draft handoff, and export.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.