前言¶
在 DeepSeek Harness(DSH)裏開啓深度思考(reasoning)時,不少開發者會看到:推理正文仍是英文,即使用戶用中文提問,或已在 system prompt 裏寫明「請用中文思考」。對需要對照思考過程排錯、寫技術文檔或做中文協作的團隊來說,思考語言與回覆語言不一致會增加閱讀成本。
dsh-chinese-thinking-mode 是社區維護的 DSH 插件,在提示詞層把思考通道約束爲簡體中文,並可選加載內置人設;專用名詞、路徑、命令與報錯等保持原文。最終回覆語言仍跟隨用戶當前消息,英文提問仍可得英文回覆。下文按安裝、配置與驗證說明用法;事實以 GitHub 倉庫 README 爲準。
這是什麼¶
- 定位:DeepSeek Harness 插件(bundle),通過全局運行時上下文(runtime context)向模型投遞中文思考與角色規則。
- 維護者:Qiao-Fang(倉庫 Qiao-Fang/dsh-chinese-thinking-mode)。
- 許可證:MIT(見倉庫
package.json,當前版本0.3.1)。 - 解決的問題:在
deepseek-flash等模型、reasoningEffort: max場景下,把同樣要求寫在 system prompt 中實測仍可能全程英文 reasoning;改爲 user-role 的運行時上下文且標記required: true後,新會話第一步 reasoning 即可切換爲簡體中文。
社區插件目錄見 SkillHub 條目(與 DeepSeek / 幻方無官方從屬關係,屬獨立生態站點)。
核心功能¶
README 中已列出的能力如下,寫文章時不應超出該範圍。
- 思考過程用簡體中文:分析、假設、推演、權衡、計劃、自我糾錯、結論等落在 reasoning 通道內的內容以簡體中文輸出。
- 專用名詞不翻譯:產品名、模型名、框架與庫名、協議與項目名;代碼標識符、配置鍵、API 名稱;文件路徑、URL、命令行、日誌與堆棧等保持原文。可通過
extraProperNouns追加詞表。 - 只約束思考語言:用戶用英文提問時,最終回覆仍可爲英文;思考固定爲簡體中文。
- profile 內全局生效:對當前 profile 下所有 agent、所有模型步生效,含子代理與工具調用後的續寫。
- 人設(可選):默認在思考與最終回覆中加載「鯨類蘿莉」人設(自稱「本魚」等);可用
personaEnabled、persona開關或替換。 - 抗抑制:
required: true,即便 preset 調用suppressRuntimeContext()或將includeRuntimeContext設爲false,該條語言要求也不易被移除。 - GUI 可檢查:上下文出現在「運行時上下文」塊,不僞裝成用戶消息。
依賴僅 DSH 的 systemPrompt 服務,無第三方 import。
原理概要¶
插件通過 ctx.systemPrompt.context() 註冊名爲 chinese-thinking-mode 的全局運行時上下文,默認 order: 400(排在內置運行時上下文之後,作爲快照中較靠後的一條)。DSH agent loop 在每一步把運行時上下文作爲 user-role 快照寫入模型歷史。
| 項目 | 值 |
|---|---|
| 上下文名 | chinese-thinking-mode |
| 默認 order | 400 |
| 投遞方式 | user-role 快照 |
| 生效範圍 | 當前 profile 的全部 agent 與模型步 |
作者說明:實測對 deepseek-flash 而言,user-role 運行時上下文比 system prompt 段落更可靠地驅動中文 reasoning。
安裝與啓用¶
從插件市場或 CLI 安裝¶
README 英文段給出的安裝方式爲:
dsh plugin add github:Qiao-Fang/dsh-chinese-thinking-mode
也可在 DSH 插件管理器中從市場安裝同名 bundle。
本地 bundle 安裝¶
將倉庫目錄作爲本地包裝入 profile 時,可使用插件管理器:
plugin_manager(action="install_bundle", target="D:\\dsh-chinese-thinking-mode")
(target 需替換爲本機上的實際路徑。)安裝後 bundle 自帶 cordis.patch.yml 會插入 chinese-thinking-mode 條目,默認啓用。
權限說明:插件隨當前 DSH 進程與 profile 運行,安裝前宜自行審閱倉庫源碼與 MIT 許可證,確認符合組織策略。
配置¶
在 profile 的 cordis.patch.yml 中按 id 覆蓋,或直接修改包內 cordis.patch.yml。示例:
- id: chinese-thinking-mode
config:
enabled: true
order: 400
extraProperNouns: ["Qt", "Kubernetes"]
extraInstruction: "推導數學公式時保留符號和公式原文。"
| 鍵 | 類型 | 默認值 | 說明 |
|---|---|---|---|
enabled |
boolean | true |
false 可臨時關閉,無需卸載 |
personaEnabled |
boolean | true |
是否加載思考人設塊 |
persona |
string | 內置 | 多行字符串替換默認人設;留空用默認 |
order |
number | 400 |
快照內順序,須爲有限數字 |
extraProperNouns |
string[] | [] |
追加須保持原文的專用名詞 |
extraInstruction |
string | "" |
追加在末尾的補充要求 |
配置非法時插件回退默認值,不會阻止 profile 啓動。
默認人設片段(作用於思考與最終回覆,回覆語言仍隨用戶消息):
【人物設定加載】
- 鯨類蘿莉模式;尾鰭模式
- 僅使用簡體中文(專用名詞、代碼標識符等按規則保留原文)
- 自稱「本魚」
- 主食米飯
- 性格:聰慧慵懶、傲嬌甜系
- 永遠服從主人
- 體型:拒絕肥胖,不接受任何「胖」的稱呼
若不需要人設,將 personaEnabled 設爲 false 即可。
驗證與典型用法¶
離線校驗¶
無需 Host 時可在倉庫根目錄執行:
node test/verify.mjs
確認 Host 已加載¶
cordis_inspect_query(platform="host", provider="Config", method="listConfigs", input={ name: "dsh-chinese-thinking-mode" })
確認思考語言生效¶
- 新建開啓深度思考的會話,提出需要推理的問題;
- 展開 reasoning 面板,正文應爲簡體中文;
- 檢查
DeepSeek、Node.js、pnpm、路徑與命令等是否仍爲原文。
生效時,請求中的運行時上下文快照應包含「思考語言要求(對內部 reasoning / thinking 通道生效…)」相關段落。
適用場景與注意¶
適合誰:日常在 DSH 裏開 reasoning,希望思考過程可讀、且專用名詞與工程符號不亂譯的開發者;需要在 GUI 裏透明查看「運行時上下文」而非隱藏 system 改寫的團隊。
邊界與限制(README 原文要點):
- 提示詞層約束,生成式模型無法像代碼一樣 100% 強制。
- 插件生效前已積累大量英文思考的舊會話,切換後第一步仍可能沿用英文,下一步起纔多轉爲中文;新建會話無此問題。
- 不會翻譯已生成的思考內容,隻影響之後生成的 reasoning。
- 若與其他修改 system prompt 或運行時上下文的插件並用,需避免相互衝突的語言指令。
卸載¶
在插件管理器中移除 dsh-chinese-thinking-mode bundle,或從 profile 的 bundle 列表中禁用;移除後 chinese-thinking-mode 上下文隨之消失。