User report (Simplified Chinese, via Telegram community)
deepseek 的思考过程仍然是英文,有什么办法换成中文吗
Translation: "DeepSeek's thinking process is still in English. Is there any way to change it to Chinese?"
The user is interacting in Chinese (asking questions in Chinese), but the model's reasoning_content (the visible chain-of-thought in V4 thinking mode) and often the final reply come back in English. They want the assistant to reason and respond in their language.
Root cause
Every prompt file under crates/tui/src/prompts/ is in English. The system prompt the model sees on every turn establishes English as the response language by example, and DeepSeek V4's reasoning_content channel inherits that bias even when user-visible content switches mid-conversation.
Files (all English-only today):
crates/tui/src/prompts/
├── agent.txt
├── base.md
├── base.txt
├── compact.md
├── cycle_handoff.md
├── normal.txt
├── plan.txt
├── yolo.txt
├── subagent_output_format.md
├── approvals/…
├── modes/…
└── personalities/…
crates/tui/src/prompts.rs assembles these into the final system prompt with no locale routing.
Proposed fix for v0.8.11
Two complementary pieces; ship both.
1. Language-mirror instruction in the system prompt (quick, ships everything)
Add a small section to base.md / base.txt (the prompt prefix that always loads) that explicitly tells the model to mirror the user's primary language in both reasoning_content and the final reply:
Language
Detect the language the user writes in and respond in that same language — including your internal reasoning. If the user writes in Simplified Chinese (简体中文), your reasoning_content and final reply must both be in Simplified Chinese. If they switch languages mid-conversation, switch with them. The default if no clear signal is present is English.
This is a one-block addition with no config surface. It works on every turn for every user without any setup.
2. Optional config knob (language / locale) for explicit override
For users who want to lock the assistant to a specific language regardless of input (e.g. coaching English speakers, or users on mixed-language teams), add:
# ~/.deepseek/config.toml
[ui]
language = \"zh-CN\" # or \"en-US\", \"ja-JP\", etc.
When set, append a stronger instruction to the system prompt (e.g. "Always reason and respond in Simplified Chinese, regardless of the language of the user's input.").
Surface in /config so users can toggle without editing TOML.
Acceptance criteria for v0.8.11
References
crates/tui/src/prompts.rs — system prompt assembly.
crates/tui/src/prompts/base.md, base.txt — always-loaded prompt prefix.
crates/tui/src/prompts/agent.txt, plan.txt, yolo.txt — mode-specific prompts (English-only today).
- DeepSeek V4 thinking-mode docs:
reasoning_content is a separate channel from content; both inherit the same language bias from the system prompt.
Reporter
User "leo smith" via the project's Telegram community on 2026-05-04.
User report (Simplified Chinese, via Telegram community)
Translation: "DeepSeek's thinking process is still in English. Is there any way to change it to Chinese?"
The user is interacting in Chinese (asking questions in Chinese), but the model's
reasoning_content(the visible chain-of-thought in V4 thinking mode) and often the final reply come back in English. They want the assistant to reason and respond in their language.Root cause
Every prompt file under
crates/tui/src/prompts/is in English. The system prompt the model sees on every turn establishes English as the response language by example, and DeepSeek V4'sreasoning_contentchannel inherits that bias even when user-visible content switches mid-conversation.Files (all English-only today):
crates/tui/src/prompts.rsassembles these into the final system prompt with no locale routing.Proposed fix for v0.8.11
Two complementary pieces; ship both.
1. Language-mirror instruction in the system prompt (quick, ships everything)
Add a small section to
base.md/base.txt(the prompt prefix that always loads) that explicitly tells the model to mirror the user's primary language in bothreasoning_contentand the final reply:This is a one-block addition with no config surface. It works on every turn for every user without any setup.
2. Optional config knob (
language/locale) for explicit overrideFor users who want to lock the assistant to a specific language regardless of input (e.g. coaching English speakers, or users on mixed-language teams), add:
When set, append a stronger instruction to the system prompt (e.g. "Always reason and respond in Simplified Chinese, regardless of the language of the user's input.").
Surface in
/configso users can toggle without editing TOML.Acceptance criteria for v0.8.11
base.md/base.txtship a## Languagesection that instructs language-mirroring for both reasoning_content and final reply.reasoning_contentand reply are in Simplified Chinese (manual eval against the V4 model).[ui] languageconfig knob is documented indocs/CONFIGURATION.mdand surfaced in/config.crates/tui-corearen't disturbed by the new prompt block (or the block is added in a position the tests already tolerate).References
crates/tui/src/prompts.rs— system prompt assembly.crates/tui/src/prompts/base.md,base.txt— always-loaded prompt prefix.crates/tui/src/prompts/agent.txt,plan.txt,yolo.txt— mode-specific prompts (English-only today).reasoning_contentis a separate channel fromcontent; both inherit the same language bias from the system prompt.Reporter
User "leo smith" via the project's Telegram community on 2026-05-04.