前言¶
在 DeepSeek Harness(DSH)裏做 agent 開發或讀長對話時,常見做法是再開一條主會話,把選中的一段文字貼過去,等模型解釋或翻譯。這樣會打斷當前線程,主會話日誌也會被追問和中間結果填滿。若只需要「這段英文什麼意思」「這個術語指什麼」「渲染報告裏一句話怎麼理解」,更理想的是就地回答、一次 completion、且不把內容寫回主會話。
下面介紹社區插件 dsh-explainer(npm 包名同插件 id,維護者 wzciczw)。它在 DSH Web GUI 的對話、Markdown/代碼、渲染後的 HTML 報告、右側欄編輯器等位置支持劃詞或快捷鍵打開輕量卡片,默認繼承主窗口模型與只讀上下文快照,完成解釋/翻譯/快問後仍保持主會話乾淨。
這是什麼¶
dsh-explainer 是 DSH 的客戶端插件(當前 npm 版本 0.3.0,MIT 許可證)。宿主要求 DSH >=0.2.1-rc.2 且 <0.3.0,Node >=20。
一句話定位:在界面任意可選文本處選中內容,得到隔離的一次性回答——無子代理、無工具循環,默認約 800 tokens 量級輸出;主會話只讀快照,不追加、不污染。需要多步推理、改文件或跑工具時,應繼續使用主會話(卡片內也提供「發主會話」升級路徑)。
社區目錄頁:skillhub.cn/plugins/wzciczw/dsh-explainer。源碼與完整說明:github.com/wzciczw/dsh-explainer。DSH 生態理念是「一切皆插件」;SkillHub 等目錄爲社區索引,與 DeepSeek / 幻方無官方從屬關係。
核心功能¶
劃詞與快問入口¶
- 劃詞問:選中文字後出現「✦ 問這段」,點擊或
Ctrl/Cmd+Shift+E打開卡片;需要右鍵入口時按住 Alt/Option 再右鍵(普通右鍵保留系統菜單)。 - 快問:
Ctrl/Cmd+Shift+K打開同一張卡片,不帶選區引用;輸入欄側不再有按鈕,窗口由快捷鍵、劃詞或文檔工具欄打開。 - 右側欄文件:原生 document preview 與 better-sidebar 編輯器內同樣可劃詞;默認讀取該文件全文作爲上下文(僅工作區內、只讀)。HTML 默認使用插件自帶的渲染預覽,可在渲染後的頁面裏劃詞;若不想執行頁面腳本,可在查看器菜單切回內置預覽。
默認自動回答(約 0.4 秒)¶
劃詞打開後,插件會先識別選區形態,再自動開始對應回答;此期間若在輸入框打字,則取消自動回答、改答你的問題。可通過配置 autoAnswer: false 關閉自動回答。
| 選中內容 | 默認行爲 |
|---|---|
| 英文正文 | 完整中文翻譯,再一句話點出要點 |
| 名詞 / 術語(約 1–3 詞) | 解釋概念,必要時給最小例子 |
| 中文正文 / 代碼 / 其他 | 解釋這段文字 |
| 英文問句(以問號結尾) | 直接回答,不翻譯問題 |
識別會對 the concept of、什麼是 等外殼做剝離,並用是否有謂語動詞區分術語與句子,避免把概念短語誤當成整段翻譯。
模型、上下文與隔離¶
- 默認跟隨主窗口的
modelSelection;主窗口切換模型後,彈窗下一次請求同步。在cordis.patch.yml的explainer配置裏寫defaultModel: provider/model可釘住主對話可選模型之一;彈窗標題會標示當前模型。 - 新建線程時把主會話最近消息做成只讀快照(可配置
inheritContext、contextMaxMessages、contextMaxChars等);追問只寫在宿主內存線程裏,不寫回主會話日誌。 - 一次 completion、偏低思考檔(配置
reasoningEffort時如low即俗稱 ds-low);流式輸出,Esc先停流再關窗。
聯網與文件快照(只讀)¶
- 問題或選區含「最新 / 版本 / 價格 / 模型 / 上下文」等時效相關詞時,宿主可通過
ctx.web.search注入最多 4 條來源(webSearch/webSearchMaxResults);無可用搜索 provider 時跳過。 - 問題或上下文中提到的路徑/文件名會只讀讀取工作區文件片段(
fileAccess等項控制上限),便於回答「這個文件何時更新」類問題,無需工具調用。
HTML 預覽與 iframe 劃詞¶
打開 .html 時插件可替換默認 HTML 預覽:頁面在不透明 sandbox iframe 中渲染(allow-scripts,無 allow-same-origin),劃詞經橋接腳本把選區發給父頁面;交互式畫布若拖不出選區,可用預覽左下角「劃詞模式」或按住 Alt/Option 拖動。
答案動作¶
複製、插入主輸入框、發主會話(深答)、重試。卡片約 520×560,可拖動;Enter 發送,Shift+Enter 換行。
安裝與啓用¶
在 DSH「插件 → 發現」中搜索 dsh-explainer 安裝(需已配置社區插件市場索引,參見 awesome-dsh-plugin)。或使用 CLI:
dsh plugin --profile <profile> add dsh-explainer
安裝後在 DSH 中重啓一次(宿主側通常需要重啓;瀏覽器側隨頁面加載)。
可選配置寫在 profile 的 cordis.patch.yml 裏 explainer 插件行,例如輸出上限、是否繼承上下文、右鍵策略、默認模型等。修改後按界面刷新或重啓 DSH 生效。完整字段見倉庫 README「配置」一節。
典型用法¶
- 安裝並重啓 DSH 後,在對話裏選中一段英文術語,點「✦ 問這段」或
Ctrl/Cmd+Shift+E,等待約 0.4 秒自動解釋;若只想問別的問題,在自動開始前於底部輸入框輸入即可取消默認行爲。 - 閱讀 agent 生成的 HTML 報告時,在渲染頁劃詞提問;頁面腳本在隔離幀運行,若需純靜態預覽則切回內置預覽。
- 不按選區、直接
Ctrl/Cmd+Shift+K打開快問,輸入問題並Enter;追問仍在同一線程,主會話列表不變。 - 需要改代碼或調用工具時,在卡片內使用「發主會話」,把當前問題升級到主會話處理。
快捷操作彙總:
| 操作 | 鍵 / 手勢 |
|---|---|
| 劃詞問 | 選中 →「✦ 問這段」 |
| 劃詞問(右鍵) | 選中 → Alt/Option+右鍵 |
| 劃詞問(鍵盤) | 選中 → Ctrl/Cmd+Shift+E |
| 快問 | Ctrl/Cmd+Shift+K |
| 發送 / 追問 | Enter |
| 換行 | Shift+Enter |
| 停止 / 關閉 | Esc(流式中先停止) |
適用場景與注意¶
適合:閱讀英文文檔與對話、對照 HTML 報告、在右側欄源碼旁快速理解術語或段落;希望答案快、且不想污染主會話歷史。
不適合(README 明確建議):多步推理、工具調用、改文件——請用主會話。
安全與權限:插件以當前 DSH 進程權限運行,可讀取工作區內配置允許的文件、並在開啓 webSearch 時發起聯網搜索。安裝前請閱讀 源碼 與 MIT 許可證,自行評估是否納入 profile。
何時別用它:需要「腳本完全不執行」的靜態 HTML 時,在查看器菜單切回內置預覽,而不是依賴插件 HTML renderer。
結尾¶
dsh-explainer 把「選中即問、一次 completion、隔離線程、不寫主會話」做成 DSH 客戶端裏的固定交互:對話、代碼、渲染 HTML 與側欄編輯器同一套劃詞與快問邏輯,並可選釘模型、聯網與文件快照。若你的 workflow 經常在解釋與深答之間切換,可先裝上試一輪劃詞與 Ctrl/Cmd+Shift+K 快問,再按需改 cordis.patch.yml。
- 目錄頁:https://www.skillhub.cn/plugins/wzciczw/dsh-explainer
- GitHub:https://github.com/wzciczw/dsh-explainer