DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

Zhen-Bo /

Zhen-Bo/dsh-translate-tab

Verified

Translation plugin for DeepSeek Harness. Adds a two-pane Translate page to the sidebar with model, reasoning effort and prompt controls.

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@065c2220

🌐 dsh-translate-tab

A translation plugin for DeepSeek Harness.

npm version MIT License DeepSeek Harness plugin 15 languages TypeScript Listed on dsh-plugin.org

Installation · Quick start · Usage · Troubleshooting

English | 繁體中文

The Translate page in DeepSeek Harness. English source text on the left, detected automatically and translated into Traditional Chinese on the right.

✨ Features

  • Sidebar integration: adds a Translate entry under Plugins that opens a two-pane translation view in the main area.
  • Shared model catalog: uses the same providers and models as Harness chat, with adjustable reasoning effort.
  • Low-latency default: uses the catalog's default model with reasoning effort off.
  • 15 languages: with automatic source language detection.
  • Configurable prompt: supports {{target_language}}, {{source_language}} and {{text}} variables.
  • Localized interface: follows the Harness language setting in English, Simplified Chinese and Traditional Chinese.

📋 Requirements

  • DeepSeek Harness desktop app with the dsh CLI on PATH
  • At least one model configured with a valid API key in Settings › Models

📦 Installation

From DSH Plugin Hub

  1. Install DSH Plugin Hub:

    dsh plugin --profile desktop add dsh-plugin
    
  2. Restart DeepSeek Harness.

  3. Open Settings › Plugin Market, search for dsh-translate-tab and select Install.

From npm

  1. Install the plugin from the npm registry:

    dsh plugin --profile desktop add dsh-translate-tab
    
  2. Restart DeepSeek Harness.

From GitHub

  1. Install the plugin from the repository:

    dsh plugin --profile desktop add "github:Zhen-Bo/dsh-translate-tab"
    
  2. Restart DeepSeek Harness.

🚀 Quick start

  1. Open Plugins › Translate in the sidebar.
  2. Enter the source text in the left pane.
  3. Press Ctrl + Enter, or ⌘ + Enter on macOS.

The translation streams into the right pane.

🧭 Usage

Languages

Traditional Chinese, Simplified Chinese, English, Japanese, Korean, French, German, Spanish, Portuguese, Italian, Russian, Vietnamese, Thai, Indonesian and Arabic, each available as source or target.

Automatic detection applies to the source and recognizes Japanese, Korean, Arabic, Thai, Russian, Simplified Chinese, Traditional Chinese and English.

Model and reasoning effort

The model picker is at the top right. Reasoning effort is set with the slider below the model list.

Translation prompt

The prompt editor opens from the button next to the model picker. The prompt is sent as the user message with the following variables substituted:

Variable Value
{{target_language}} Target language name in English, for example Japanese
{{source_language}} Source language name, or the detected source language
{{text}} Source text. Appended to the end when the prompt omits this variable

Storage

Data Location Lifetime
Languages, model, reasoning effort and custom prompt localStorage key dsh-translate-tab:v1 Persistent
Source text draft sessionStorage key dsh-translate-tab:draft Current window session

🔧 Troubleshooting

Message Resolution
This model has no API key yet Add a key in Settings › Models, or select another model
The API key was rejected Verify the key in Settings › Models
Too many requests Retry after a short wait
The response stopped early Run the translation again
Text is too long Split the source text into segments under 100,000 characters

If Translate is missing under Plugins, verify the install path and restart DeepSeek Harness.

🧹 Uninstall

dsh plugin --profile desktop remove dsh-translate-tab

Restart DeepSeek Harness afterwards.

🧩 Architecture

Path Runtime Role
src/client Harness window Translate page in React and TypeScript
src/server Harness host POST /translate/api/stream, streams a single model call
src/shared Both Route, text limits and stream event types
locale Harness window Interface text, registered with the Harness locale service
lib Both Build output loaded by Harness
Stream format

The route accepts same-origin requests from the Harness window and responds with newline-delimited JSON:

{"t":"text","v":"..."}        translated text
{"t":"done"}                  finished
{"t":"aborted"}               cancelled
{"t":"error","message":"..."} failed

💻 Development

  1. Install dependencies and link the working copy to the desktop profile:

    npm install
    dsh plugin --profile desktop add "link:D:/path/to/dsh-translate-tab"
    
  2. Run the build in watch mode, then restart DeepSeek Harness to load changes:

    npm run dev
    
Command Purpose
npm run build Builds lib/client.js and lib/index.js
npm run check Runs the type check, lint, tests and build
npm run fix Formats the code with gts

📄 License

Licensed under the MIT License.

—/ 5

No ratings yet

Verified DSH bundle

Commit 065c2220c006

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout