前言¶
在 DSH 插件生態中,控制模型思考過程的語言是一項常見需求。上游插件 dsh-think-zh-expand 通過接管 conversation.chat.node 的 assistant-step 渲染器,實現了思考塊的中文化與強制中文輸出。但這會導致與任何摺疊類插件(如 dsh-auto-collapse 或 dsh-turn-fold)發生衝突:上游自繪的思考塊不產生摺疊插件所需的 DOM 錨點,導致靜默失效。
本插件是 EAC 定製版,保留上游的強制中文邏輯(Server 端 System Prompt 注入)與界面中文化(Client 端 DOM 文本替換),但完全移除了接管渲染器的功能,將思考塊的渲染交還宿主,從而解決與摺疊插件的共存問題。
核心功能¶
1. Server 端強制中文思考¶
插件通過 system-prompt.section 注入一條固定規則(order: -90),強制要求模型的思考過程與回覆使用簡體中文。代碼、命令、文件路徑等術語保持原文,不翻譯。
2. Client 端界面中文化¶
針對 UI 中硬編碼的英文(如 “Thinking”、”Tool Call” 等),插件在 DOM 層進行精準文本替換。使用 MutationObserver 跟隨 React 重渲染持續生效,覆蓋工具名、描述與卡片標題。
3. 兼容性優化¶
插件移除了 assistant-step 渲染器註冊與自繪思考塊功能。Section 名稱已改爲 dsh-think-zh-eac 以避免與上游同名 Section 衝突,確保與摺疊插件共存。
安裝與啓用¶
使用命令行安裝¶
在 DSH Terminal 中針對當前 profile 執行:
dsh plugin --profile web add github:jing-hy/dsh-think-zh-expand-eac
安裝完成後,使用以下命令驗證配置:
dsh --profile web --dump-config
配置輸出中應包含 id: think-zh-expand-eac 與 name: dsh-think-zh-expand-eac。驗證後重啓 DSH。
從源碼安裝¶
git clone https://github.com/jing-hy/dsh-think-zh-expand-eac.git
dsh plugin --profile web-desktop add link:<倉庫路徑>
典型用法¶
本插件設計目標就是與摺疊插件共存。推薦組合使用:
dsh plugin --profile web-desktop add dsh-auto-collapse # 或 dsh-turn-fold
dsh plugin --profile web-desktop add github:jing-hy/dsh-think-zh-expand-eac
注意: 不建議同時啓用 dsh-auto-collapse 和 dsh-turn-fold,兩者機制互相致盲。
注意事項¶
- 環境要求:Node.js 版本需 >= 22。
- 依賴項:需要
cordis (^4.0.0-rc.8)和@deepseek-ai/dsh-system-prompt作爲 peerDependencies。 - 構建產物:
lib/client.js必須提交構建產物,不在安裝時自動構建。 - 許可證:MIT 許可證,保留上游版權。