DeepSeek Harness plugin

dsh-thinking-language-zh

Force DeepSeek Harness agents to think, reason, and reply in Chinese — a one-section dsh bundle

Jump to install

Source facts

Repository
ayanJava111/dsh-thinking-language-zh
Latest update
Aug 16, 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/ayanJava111/dsh-thinking-language-zh
Plugin: dsh-thinking-language-zh
Author: ayanJava111

Check the source files

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

File explorer4 files
README.mdSource · read only
README language

dsh-thinking-language

English | 中文

A one-section DeepSeek Harness bundle that pins the language an agent thinks, reasons, and replies in. The shipped default is Chinese mode: once installed, every agent composed by the deployment gets an ordered system-prompt section right after its persona telling the model to think and answer in Chinese.

It works on any DeepSeek Harness deployment (Web UI, headless, ACP) because it only contributes a system-prompt section — no tools, no shell access, no model changes. <img width="2202" height="969" alt="image" src="https://github.com/user-attachments/assets/1bb77dfb-4373-423d-8749-0ce83bfaa929" />

Install

dsh plugin --profile <name> add dsh-thinking-language

That installs the package into the profile and appends the bundle layer (the package declares dsh.bundle, so dsh plugin activates it automatically). Then:

dsh --profile <name>

The layer registers the thinking-language row, whose default config is the Chinese instruction. No further setup is needed. Verify the layer first without starting:

dsh --profile <name> --dump-config   # shows a "# == dsh-thinking-language" layer

Config

One row, three fields:

KeyDefaultMeaning
textthe Chinese instruction belowThe instruction rendered as the thinking:language section. A template: complete {{…}} groups interpolate strictly against registered prompt variables ({{model}} and {{cwd}} are registered by the shipped agent loop). Empty text drops the section at render.
completefalseMake this section the complete system prompt, suppressing every other section. Leave off unless the language instruction must stand alone.

The default text is:

> 请始终使用中文进行思考、推理与回复:你的思考过程(reasoning)与所有输出一律使用中文,包括对工具调用结果的解读与最终回答。

Change the language or wording

Patch layers replace the targeted row's whole config, so an override restates every key it wants. Put this in your profile's cordis.patch.yml (or a --patch overlay) to switch to English:

- id: thinking-language
  config:
    text: >-
      Always think, reason, and reply in English.

How it works

The plugin exports the standard plugin contract (name, inject: ['systemPrompt'], Config type and Schemastery schema, apply) and registers one section:

  • Name: thinking:language (exported as THINKING_LANGUAGE_SECTION).
  • Order: 1 — immediately after the deployment persona (0), before the tool-guidance band (100–199), so the model reads the language instruction at the start of the prompt body.
  • It never shadows the persona: persona presets (@deepseek-ai/dsh-persona) and this plugin coexist in the same composition.
  • Registration rides the calling fiber, so hot-reloading a config edit removes the old section before the new one registers.

Model experience

  • What the model sees: one extra prompt section between the persona and tool guidance, e.g. 请始终使用中文进行思考、推理与回复:你的思考过程(reasoning)与所有输出一律使用中文,包括对工具调用结果的解读与最终回答。 — every request, for every agent on the deployment.
  • Token effect: a fixed cost per request, equal to the rendered instruction text (about 60 tokens for the default).
  • KV-cache effect: the section is stable for a given config, so prompt-prefix caching stays intact. Editing the text changes the prefix from the first changed token.

Develop

pnpm install
pnpm test        # vitest
pnpm typecheck   # tsc --noEmit
pnpm build       # tsdown -> lib/
pnpm smoke       # mounts lib/ against the real peers and asserts the rendered prompt

The prepare script runs tsdown with a self-contained config, so installing from git (dsh plugin add github:you/dsh-thinking-language) also produces the published entry. @deepseek-ai/dsh-system-prompt and @deepseek-ai/cordis are peer dependencies resolved from the dsh installation the profile runs on.

Publish

  • npm: pnpm publish (the files list ships lib/, cordis.patch.yml, and both READMEs; dsh.bundle points at the patch layer).
  • Tarball: pnpm pack, then dsh plugin add ./dsh-thinking-language-0.1.0.tgz.
  • Git: push the repo and let users dsh plugin add github:you/dsh-thinking-language — pnpm runs prepare after install, which builds lib/ from source (users must allow the build for git dependencies).

Known limitations

  • Thinking text is the model's own reasoning output, steered by the system prompt rather than a wire-level switch: the section is a strong instruction, not a hard guarantee, and occasional non-Chinese fragments may still appear.
  • If a deployed preset registers its own complete persona (complete: true on a persona row), it suppresses this section along with every other section.
  • Peer range ^0.1.0-rc.2 targets the current rc series of @deepseek-ai/dsh-system-prompt; a future major may rename exports, which a peer bump would address.

License

[MIT](LICENSE)