在使用 DeepSeek Harness 處理長對話時,從歷史回覆中截取片段繼續對話是常見需求。手動複製粘貼往往會導致上下文丟失或格式錯亂。dsh-quote-sidechat 插件通過在選中文本時浮出原生工具條,將引用內容作爲原子節點寫入輸入框,或直接發起側邊提問,解決了這一痛點。
本插件由 panando 維護,分類爲客戶端插件。它主要解決“如何精準引用歷史回覆”和“如何利用片段快速開新線程”的問題。通過宿主提供的引用管線,它能將選中的文本轉化爲可整體刪除、點擊跳轉的引用節點,或直接在側邊欄開啓新對話。
核心功能¶
原子引用 chip
當選中文本並點擊“添加到對話”時,輸入框中生成一個引用 chip,而不是散亂的純文本。這個 chip 是宿主的原子節點,支持整體刪除。點擊 chip,頁面會滾動到原文出處並短暫高亮。提交對話時,chip 會展開爲結構化的引用塊,模型能清晰區分引用與用戶輸入。
側邊提問
點擊“側邊提問”,選中片段會發送到右側欄(需安裝 dsh-better-sidebar)。由於側欄輸入框不支持 chip 渲染,插件會將其轉爲帶結構化邊界的引用文本,確保 Markdown 格式正確。
複製與診斷
支持一鍵複製原文。開發者可通過 DevTools 執行診斷命令檢查引用管線狀態。
JSON.stringify(window.__dshQuoteSideChat.probe(), null, 2)
安裝與配置¶
安裝方式有兩種:
1. 將包添加到 profile 的 dsh.profile.bundles 並安裝依賴。
2. 直接使用插件管理器安裝。
插件屬於瀏覽器擴展,通過 cordis.patch.yml 定義 Loader entry。
配置存儲在瀏覽器的 localStorage 中,鍵名爲 dsh.quote-sidechat.v1。常用配置項如下:
| 字段 | 默認值 | 說明 |
|---|---|---|
enabled |
true |
總開關 |
format |
'auto' |
引用塊文本格式:auto(代碼塊用 fenced / 其餘 blockquote)、quote、fenced、plain |
referenceMode |
'chip' |
引用模式:chip = 原子節點;quote = 純文本引用塊 |
attribution |
false |
是否在引用後補全來源說明 |
minChars |
2 |
觸發工具條的最小字符數 |
宿主缺少引用管線或寫入被拒(會話正忙/草稿版本已變)時,插件會自動降級爲純文本插入並提示,不靜默丟內容。
典型用法¶
- 在對話正文中選中文本。
- 浮出工具條,點擊“添加到對話”,輸入框中會出現一個引用 chip。
- 點擊“側邊提問”,右側欄會打開一個新線程,內容爲該片段的引用文本。
- 點擊輸入框內的 chip,正文滾動定位到對應輪次。
技術實現與注意事項¶
插件依賴宿主提供的接口進行開發,包括註冊引用 source、落成原子 chip、提交時序列化等。引用信息編碼在 ref 字符串中(格式爲 q2|<base64url({ t: 模型文本, s: 會話 id, n: 輪次 })>),刷新頁面後仍可還原。
插件具有零副作用,未選中文本時頁面上不存在可見 DOM。工具條在輸入框內選中、選區失效、只選中空白、低於 minChars、正在提交、被禁用或非對話正文區域時不會彈出。
使用前需確認已安裝 dsh-better-sidebar 以使用側邊提問功能。