DeepSeek Harness plugin

dsh-translator

A native, streaming translation workspace for DeepSeek Harness.

Jump to install

Source facts

Repository
SiYue-ZO/dsh-translator
Latest update
Aug 13, 2026
Category
Tools & Capabilities
GitHub stars
1
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/SiYue-ZO/dsh-translator
Plugin: dsh-translator
Author: SiYue-ZO

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer4 files
README.en.mdSource · read only
README language

<div align="center">

DSH Translator

Turn DeepSeek Harness into a real AI translation application.

![DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) ![CI](https://github.com/SiYue-ZO/dsh-translator/actions/workflows/ci.yml) ![License](LICENSE)

中文 · [Install](#install) · [Features](#features) · [Architecture](#architecture)

</div>

---

DSH Translator is a native DeepSeek Harness plugin. It replaces the central chat surface with a two-pane translation workspace: choose languages, paste text, watch the result stream in, then copy, speak, download, or revisit it from history.

It introduces no translation API of its own. Translation uses the model selected in dsh and retains its credentials, sessions, and streaming transport.

> This release targets the dsh 0.1.0-rc.6 Web profile.

Features

  • Automatic source-language detection and configurable target language
  • Native two-pane editor with a responsive mobile layout
  • 12 common languages and one-click language/content swap
  • Streaming result display with stop support
  • Natural, professional, academic, technical, and literal styles
  • Target-only and bilingual output modes
  • Character/word counts and Ctrl / ⌘ + Enter
  • Paste, copy, browser speech, and .txt download
  • Text/Markdown/CSV/JSON/HTML/XML import up to 2 MB
  • Searchable local history for the latest 100 translations
  • Markdown, tables, HTML/XML tags, links, and placeholder preservation
  • Editable terminology glossary and per-request requirements
  • Optional copy-on-completion
  • JSON-encoded untrusted source content to resist instruction-like source text
  • No additional service or API key

Install

> dsh is currently a developer preview. Use Node.js 22.19+ or 24+, with dsh and pnpm available.

Install the bundle into the official web profile:

dsh plugin --profile web add github:SiYue-ZO/dsh-translator
dsh web

Open the URL printed in the terminal (by default http://127.0.0.1:3080) and create a session. The translation workspace appears in the center column.

For a local checkout:

git clone https://github.com/SiYue-ZO/dsh-translator.git
cd dsh-translator
npm install
npm run check
dsh plugin --profile web add .
dsh web

Uninstall with:

dsh plugin --profile web remove dsh-translator

Use

Choose source and target languages, paste the source, and select Translate. The button becomes Stop translation while the model is generating.

The source toolbar supports clipboard paste, text-file import, and clear. The result toolbar supports speech, download, and copy. Settings contain style, bilingual mode, formatting preservation, glossary entries in source = target form, and custom requirements. Browser settings and history remain in local storage.

Configure

Defaults live in [cordis.patch.yml](cordis.patch.yml). A later dsh patch can override the row by id. dsh replaces a row's entire config rather than deep-merging it, so repeat every field in an override:

- id: translator
  config:
    sourceLanguage: auto
    targetLanguage: Japanese
    style: professional
    outputMode: bilingual
    preserveFormatting: true
    translateCodeComments: false
    glossary:
      DeepSeek Harness: DeepSeek Harness
      agent: エージェント
      plugin: プラグイン
    customInstructions: 'Japanese punctuation must use the full-width style.'
    includeRuntimeContext: false

Apply it for one launch:

dsh --profile web --patch ./translator.override.yml
FieldDefaultMeaning
sourceLanguageautoA source language name, or automatic detection
targetLanguageSimplified ChineseDefault target language
stylenaturalnatural, professional, academic, technical, or literal
outputModetarget-onlytarget-only or bilingual
preserveFormattingtruePreserve markup and layout where practical
translateCodeCommentsfalseTranslate comments and docstrings
glossary{}Exact source-to-target term preferences
customInstructions''Additional translation rules
includeRuntimeContextfalseInclude dynamic workspace context in model requests

Architecture

The Host half registers a complete translation persona through dsh/Cordis. The Web half occupies dsh's native conversation slot and calls SessionFace.prompt/cancel, preserving dsh's selected model and streaming pipeline. Dynamic workspace context is disabled by default.

Each translation creates a request with its own language, style, glossary, and layout controls. Source text is placed in a JSON string explicitly marked as untrusted data so instruction-like content is translated rather than followed. History and UI preferences stay in browser local storage.

Develop

npm install
npm run check
npm pack --dry-run

npm run build compiles the Host entry, Client types, and dsh-compatible lib/client.js. Tests cover the persona, request isolation, glossary parsing, and Cordis registration.

Limitations

  • Quality, context length, and language coverage depend on the selected model.
  • This release targets text and plain-text files; it does not parse PDF, DOCX, images, or audio.
  • History is browser-local and disappears if site storage is cleared.
  • dsh is a developer preview, so future breaking API changes may require an update.

License

[MIT](LICENSE) © 2026 SiYue-ZO