DeepSHPlugins
dsh-think-translate 專案預覽
GITHUB / COMMUNITY PROJECT

dsh-think-translate

UI 增強JavaScript

DSH Web 介面顯示層翻譯:將思考鏈、任務卡片與回答正文翻譯為 8 種目標語言之一(本地 Ollama 或 Google/Bing,自動選擇),原文完整保留。

4 StarsUncleK 更新時間 2026-09-03
訪問 GitHub 倉庫
dsh-think-translate 專案預覽
dsh-think-translate 介面截圖dsh-think-translate 介面截圖

專案介紹

中文

DSH Web 介面顯示層翻譯:將思考鏈、任務卡片與回答正文翻譯為 8 種目標語言之一(本地 Ollama 或 Google/Bing,自動選擇),原文完整保留。

English

Display-layer translation for the DSH Web UI — thinking chains, task cards and answers in 8 target languages via local Ollama or Google/Bing, originals preserved.

專案資訊與收錄訊號

快照 2026-09-11
作者 / 組織
UncleK
倉庫
UncleK/dsh-think-translate
GitHub Stars
4
Forks
1
開發語言
JavaScript
許可證
未記錄
最近推送
2026-09-03
Manifest
資料中檢測到宣告

公開倉庫不自動等於可商用;許可證與當前相容性以原專案文件為準。Manifest 和資料評分不構成安裝安全認證。

資料評分

52/ 100
維護活躍
95
文件與實用資訊
39
生態關注度
26
安裝便捷訊號
75
專案宣告訊號
80

近 8 天仍在更新;文件較簡略;關注度尚低(4)。

評分來自已有資料快照的五維模型,僅作瀏覽參考,不是實際使用評測或安全檢測結論。

安裝與使用

所有專案資料與許可均以對應 GitHub 倉庫為準。

dsh plugin --profile web add "https://github.com/UncleK/dsh-think-translate/releases/download/v1.0.10/dsh-think-translate-1.0.10.tgz"

複製命令不會自動執行。請先閱讀倉庫文件,確認環境要求與許可證。

專案截圖

倉庫 README

GitHub 原文

已儲存的倉庫文件快照;文件抓取時間未記錄,可能與上方目錄介紹處於不同版本。安裝前請核對當前倉庫說明。

儲存庫檔案保留原文,指令與授權文字不作自動改寫。

🐋 dsh-think-translate

Languages: English · 中文 · 日本語 · 한국어 · Español · Français · Deutsch · Русский

npm version license dsh

dsh-think-translate demo

dsh-think-translate demo 2


Translate the reasoning / thinking chain (chain-of-thought), task cards and answers of the DeepSeek Harness Web UI into one of 8 target languages — in real time, on the display layer only. The originals stay untouched in the transcript, and the translated text never enters the model context.

✨ Why dsh-think-translate

DeepSeek-class models often reason in Chinese — or in whatever language they happen to think in. dsh-think-translate renders the Think row, task cards and answer in *your* language while you watch, like subtitles for the model's thinking.

  • 🕵️ Read any thinking chain — reasoning, chain-of-thought, task cards and answers translated in real time, streamed batch by batch
  • 🌍 8 languages, one consistent UI — 中文 / English / 日本語 / 한국어 / Español / Français / Deutsch / Русский; the settings panel, thinking rows and task cards all follow your choice, and it persists across reloads
  • 🔒 Private & offline-first — local Ollama (qwen2.5:7b / 14b or custom) is the default provider: free, unlimited, nothing leaves your machine. First local-model selection auto-downloads the model with a live progress bar and enables it when done
  • 🧠 Zero context cost — pure display layer: the model still sees the original text, and translated text never consumes the context window
  • ☁️ Google / Bing fallback — automatic switch when the local model is unavailable (google goes through a Node CONNECT tunnel using the system proxy, bypassing anti-bot blocks)
  • 🛡️ Code-safe — file paths, commands, URLs, regexes and pure-code lines are never translated
  • 🧩 Paragraph & sentence-aware chunking — long thinking chains are split on blank lines (paragraph structure preserved) and further batched by sentence, so even a small local model keeps quality
  • ⏱️ Resilient — 3× backoff retries, browser-direct fallback, failed results never cached
  • 🎚️ Adjustable translation timing — pre-translate everything, lazy-load historical chains (default), or translate only the expanded chain

📦 Installation

# Option 1: npm (recommended)
dsh plugin --profile web add dsh-think-translate
# then restart web

# Option 2: GitHub
dsh plugin --profile web add github:UncleK/dsh-think-translate

# Option 3: manual (junction + patch)
#  1. link the package into the profile's node_modules
New-Item -ItemType Junction -Path "$HOME\.dsh\profiles\node_modules\dsh-think-translate" `
  -Target "<repo path>"
#  2. add to "$HOME\.dsh\profiles\web\cordis.patch.yml":
# - insert:
#     - id: dsh-think-translate
#       name: dsh-think-translate
#  3. restart web

🚀 Usage

  1. Open Settings → Think Translation
  2. Pick the target language (e.g. 日本語) — the settings panel, thinking rows and task cards all switch to it
  3. Pick the preferred provider:
  • Local model (Ollama) — on first selection a download prompt appears (qwen2.5:7b / 14b or custom); it auto-enables when finished. The "+" button next to the model picker downloads more models anytime
  • google gtx / bing — works out of the box (auto system proxy / VPN)
  1. Send a message that makes the model think, then expand the Think row to read the translation and compare with the original

⚙️ How it works

browser → POST /_xlate/translate (same-origin, no CORS)
  → host provider chain (fail-open):
      openai-compatible (local Ollama, Node fetch to loopback)
      → google gtx (Node https + CONNECT tunnel through system proxy)
      → bing (curl form)
  → browser-direct fallback
  • Host half (lib/index.js): provider adapters, LRU cache (600), /_xlate/models listing, /_xlate/model/pull + pull-status model download management (auto-configures on completion)
  • Client half (lib/client.js): 8-language UI, sentence/paragraph-batched translation, streaming Think rows, localStorage persistence (settings + translation cache)
  • Pure display layer: originals remain in the transcript and model context

🛠 Development

  • No build step: lib/client.js is the browser bundle (source = artifact), lib/index.js is the host ESM
  • Client changes apply on page refresh; host changes need a web restart
  • The 8-language strings live in the UI_TEXT dictionary in lib/client.js

📄 License

MIT

使用前核對

安裝步驟、相容版本與授權範圍以原專案當前文件為準。Stars 和評分是快照中的導航訊號。

安裝與排錯 · 專案問題反饋

同類專案