前言¶
在 DeepSeek Harness(DSH)的 Web 界面裏,經常要在會話回答和右側欄文檔預覽之間來回:複製一段文字、貼進輸入框、再補充「這段話什麼意思」「幫我改一下」。窗口一多,上下文也容易丟。dsh-ask-selection 把這件事收成一次右鍵:在選區上選「追問」或「要求修改」,由插件拼好帶來源的結構化引用,再發到當前會話或只插入草稿。
下面按定位、功能、安裝與用法說明;事實以倉庫 README 與 package.json 爲準。
這是什麼¶
dsh-ask-selection 是 DSH 的客戶端插件(dsh.client.platform = web),由 meiyuxuan2007 維護,當前公開發布版本爲 0.2.0(MIT)。插件在 dsh Web 的會話回答與右側欄文檔預覽中監聽文字選區與右鍵菜單,不依賴第三方 npm 運行時包;文案優先走宿主 @deepseek-ai/dsh-client-locale,不可用時回退內置詞典。
社區目錄頁:meiyuxuan2007/dsh-ask-selection。源碼:GitHub。
核心功能¶
會話裏的選區追問¶
在任意消息裏選中片段 → 右鍵 →「追問選中內容」或「要求修改選中內容」。插件會識別聊天區真實 DOM 標記,避免在頁頭、滾動條等非消息區域誤彈菜單;輸入框內選字仍走原生右鍵。
右側欄文檔預覽¶
支持的預覽類型包括:Markdown、純文本、代碼、PDF、Office(docx / pptx 轉換後的 PDF)、Excel。
- 文本類:引用裏自動帶上文件路徑、Markdown 小節標題、行號範圍。
- PDF / Office:帶上文件路徑與頁碼。
- Excel:讀取當前單元格(名稱框 + 公式欄)與工作表名。
兩種回填方式¶
在追問面板裏寫好要求後:
- 按
Enter:直接發送到當前會話(僅在焦點位於輸入框時生效)。 - 點「插入輸入框」:只寫入 composer 草稿,可繼續編輯;寫入成功後才關閉面板,失敗則保留面板與已輸入內容。
輕引用模式¶
對文本類文檔,可以只引用「文件路徑 · 位置 + 開頭 80 字」,讓模型自行讀原文,縮短提示詞,也減輕長引用被截斷的影響。Excel、Office 等二進制預覽以及會話內選區仍發送完整引用。
發出消息的大致形態如下(摘自 README 示例):
我想追問以下引用內容(來源:notes.md · 小節「部署」· 第 3 頁):
引用內容:
> ……選中的原文……
我的要求:
這一段爲什麼要先建索引?
安裝與要求¶
插件隨當前 dsh 進程的 Node 環境加載;安裝前請自行查看倉庫源碼與 MIT 許可證是否滿足你的策略。
要求:帶 Web 界面的 dsh 客戶端,且 Node.js ≥ 22。
命令行安裝:
dsh plugin add dsh-ask-selection
也可在 dsh 插件頁點「安裝」,輸入框填寫 dsh-ask-selection。同一輸入框還支持 Git 地址、tgz 包和本地絕對路徑,便於安裝未發佈版本(具體以 dsh 插件頁說明爲準)。
典型用法¶
- 在會話回答或右側欄文檔預覽中選中一段文字。
- 右鍵,選擇「追問選中內容」或「要求修改選中內容」。
- 在面板中寫明要求,按
Enter發送,或點「插入輸入框」僅寫入草稿。
若文檔爲文本類且啓用輕引用,面板行爲以界面選項爲準;會話選區與 Excel / Office 預覽仍以完整引用爲主。
適用場景與已知邊界¶
適合:長期在 dsh Web 裏對照側欄文檔(代碼、筆記、PDF、表格)與模型對話的開發者;希望把「選中 → 帶來源追問」固定成一套操作、減少複製粘貼的人。
邊界(README 已列):
- Excel 目前只取公式欄中的當前單元格,不批量讀取多格選區。
- 圖片預覽無可複製文字,插件不處理。
- 文本類行號基於預覽分頁渲染;長文件只加載前幾頁時,行號範圍只覆蓋已加載部分。
插件 UI 註冊在 conversation.input.overlay 等客戶端槽位,DOM 探測採用 fail-open:找不到標記時退化爲通用來源標籤,不阻斷原生行爲。
結尾¶
dsh-ask-selection 把「選中文本 → 帶來源追問或改稿」收進 Web 客戶端右鍵菜單,覆蓋會話與多種側欄預覽,並區分直接發送與插入草稿。DSH 生態上插件由社區目錄與倉庫分發,與 DeepSeek / 幻方無官方從屬關係;若要安裝或反饋問題,可訪問 目錄頁 與 GitHub 倉庫。