前言¶
在 DSH 裏跑長任務時,主會話往往已經堆了不少上下文。中途若有個術語、某段輸出想確認含義,直接在主輸入框裏插一句,回答會進入主會話記憶,可能打斷當前任務節奏,也會讓後續輪次帶上未必需要的旁支信息。
下面介紹的 dsh-btw(npm 包名 dsh-btw-plugin)面向這類需求:在繼承當前會話上下文的前提下,用獨立浮窗做一次性旁問;回答默認只留在彈窗裏,需要留痕時再經摘要預覽後「送入主會話」。維護者爲 yanzoro926,倉庫 yanzoro926/dsh-btw,分類爲客戶端插件,許可證 MIT(見倉庫 README)。
這是什麼¶
一句話定位:btw(by the way)旁問——臨時對話框,繼承會話上下文,可選上下文範圍與選中文本引用,旁問專用模型與參數;默認不把問答寫回主會話,可選壓縮摘要經確認後寫入。
核心功能¶
以下能力均來自官方 README,安裝前可在 GitHub README 對照界面截圖。
打開方式與回答展示¶
- 輸入框右側 btw 按鈕,或輸入
/btw命令,打開獨立浮窗。 - 回答流式顯示,支持 Markdown;Enter 發送,Shift+Enter 換行。
繼承會話上下文¶
- 自動攜帶當前會話模型可見歷史。
- 上下文欄可在「自動 / 最近 40 條 / 最近 120 條 / 全部 / 全部但不含工具輸出」之間切換,顯示將發送條數與估算 token;超出上限時從舊到新裁剪並標出省略條數。
彈窗內追問與選區引用¶
- 同一彈窗可繼續追問;前幾輪問答作爲上下文回傳(有上限),仍不寫回主會話。
- 先選中一段文字再點 btw,彈窗引用該段(最多 2000 字符);引用條右側 × 可清除。
獨立模型與交互¶
- 可爲旁問單獨選模型,並調溫度、最大輸出 tokens、推理強度;設置只作用於 btw。
- 每條回答顯示本次 token 用量;失敗可重試,可隨時停止生成。
- 浮窗可拖動、縮放,雙擊標題欄最大化;位置與大小會記住。
- 切換會話時窗口自動隱藏,切回恢復;只有點 ×(或 Esc)才關閉並清空。
送入主會話¶
點彈窗頭部「送入主會話」後:
- 用當前旁問模型生成四節壓縮摘要(我問了什麼 / 結論 / 關鍵細節 / 仍未解決,最多約 900 字;失敗則用本地兜底摘要)。
- 在預覽層檢查、修改,點「確認送入」。
寫入後,主會話下一輪請求會帶上這條記錄,DSH 顯示爲上下文/通知卡,不會立刻觸發主會話回覆,也不創建新 turn。摘要確認寫入上限 8000 字,寫入不可撤銷;同一段對話寫入後會顯示「已送入 ✓」並禁用。
隱私(默認行爲)¶
| 行爲 | 會不會發生 |
|---|---|
| 向主會話追加消息 | 默認不會;只有「確認送入」才追加一條 user/message(source.kind='btw') |
| 創建 Agent / 子會話 / 會話文件 | 不會 |
| 寫入標題、壓縮、搜索索引、turn/step | 不會 |
| 插件自己持久化問題或回答 | 不會 |
| 調用模型 provider | 會——旁問即正常模型調用 |
彈窗內問答、引用和草稿只在頁面內存;關閉即丟棄。
安裝與啓用¶
要求 DSH Desktop 0.2.1 或更新。
從 npm 安裝(命令來自 README):
dsh plugin --profile desktop add dsh-btw-plugin
然後完全退出並重新打開 DSH Desktop(不是刷新頁面)。打開任意會話,輸入框右側出現 btw 即表示安裝成功。
插件以當前 DSH 進程權限運行;安裝前建議閱讀 源碼與 LICENSE,確認符合你的環境與安全預期。社區目錄 SkillHub 插件頁 爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。
典型用法¶
- 點輸入框右側 btw,或輸入
/btw後回車,打開彈窗。 - 輸入問題,Enter 發送。
- 頂部「上下文」欄調整本次旁問攜帶多少會話歷史,點「刷新」重新讀取。
- 右側模型下拉切換旁問專用模型;⚙ 可調溫度、輸出上限、推理強度和按鈕顯隱。
- 需要先問某段輸出時:選中文字再打開 btw,引用會帶進問題。
- 結論值得主會話記住時:「送入主會話」→ 等待摘要 → 預覽修改 →「確認送入」。
配置與限制¶
可在 Cordis 插件配置裏覆蓋以下鍵(默認值見 lib/logic.js,完整表見 README):
| 鍵 | 默認 | 作用 |
|---|---|---|
enabled |
true |
關閉後不註冊任何路由 |
maxParentMessages |
200 |
「自動」範圍下最多攜帶父會話消息條數 |
maxRangeMessages |
1000 |
「全部」/「不含工具輸出」硬上限 |
defaultRecentMessages |
40 |
「最近 N 條」默認值 |
maxPriorTurns |
20 |
彈窗內追問回傳歷史上限 |
maxQuestionChars |
8000 |
單次問題長度上限 |
requestTimeoutMs |
300000 |
單次旁問超時 |
summaryTimeoutMs |
60000 |
送入摘要生成超時 |
maxSummaryChars |
8000 |
確認寫入時摘要長度上限 |
已知限制摘錄:引用跨 shadow DOM 可能取不到選區;上下文欄 token 爲粗估;浮窗偏好存 localStorage 不跨設備;目標會話正在生成時會拒絕寫入摘要。package.json 當前版本 0.5.6,Node >=22.5。
結尾¶
dsh-btw 把「繼承上下文的一次性旁問」和「可選、可編輯的摘要入主線」拆開:日常確認不打斷主任務,需要時再讓主會話看見結構化結論。