前言¶
DSH 的插件生態強調「一切皆插件」。在 DSH Web 使用中,常見需求是:主任務正在推進,但臨時想問一個與當前上下文相關、又不想影響主模型上下文的問題。
dsh-btw 提供 /btw 命令和居中彈窗面板,把這類旁路問答放到獨立會話分支中回答。它對齊 Claude Code 的 /btw 語義,並支持多輪對話、主對話增量同步、清空分支和每會話獨立面板。
這是什麼¶
dsh-btw 是 DSH 旁路問答插件,倉庫路徑爲:
loster12520/dsh-btw
許可證爲 MIT。
它解決的問題是:在 DSH 主對話旁邊進行一次只讀問答。分支可以查看主對話歷史,但問答內容不進入主對話 LLM 上下文。
核心功能¶
/btw 命令¶
在主輸入框輸入:
/btw <問題>
命令會旁路提問,並自動打開居中 BTW 面板展示回答。
輸入無參命令:
/btw
只打開面板並聚焦輸入框。
面板沒有常駐入口,只能通過 /btw 命令打開。
居中彈窗面板¶
面板支持多輪對話,使用問題/答案氣泡展示內容。
可以通過快捷鍵:
Ctrl+Shift+K
或點擊面板上的「清空」按鈕,重置當前會話分支。
只讀分支¶
分支以只讀方式回答。工具白名單如下:
read
glob
grep
read_image
web_search
寫文件、編輯、命令執行、SSH 等全局工具對分支不可見,並且會被拒絕執行。
查看主對話歷史¶
分支創建時,以主對話已完成 turn 爲 seed。
之後每次提問,會注入主對話自上次同步水位之後的增量,因此主對話的進展會持續同步到分支。
不污染主上下文¶
分支是獨立 Session,主對話的 LLM 上下文不包含 btw 問答。
分支不註冊進 subagent registry,GUI 中不會顯示爲子代理,也不會出現在子代理目錄。
每會話獨立維護¶
每個主會話獨立維護 btw 分支、歷史、同步水位和串行隊列。不同主會話的 btw 問答隔離,互不污染。
Host 維護問答歷史:
{id, role, text}
面板通過輪詢以下接口增量同步:
btw/state
安裝與啓用¶
前置要求:
本機已安裝 dsh CLI
pnpm 在 PATH 上
安裝命令:
dsh plugin --profile web add git+https://github.com/loster12520/dsh-btw.git
安裝後,由於 Host 半區改動需要重啓以下進程:
dsh web
之後如果只有 Client 半區改動,瀏覽器硬刷新即可。
安裝前建議檢查源碼和許可證。插件運行在 DSH 的 dsh 進程中,安裝前需要檢查源碼與許可證;其能力受當前 dsh 配置和權限約束。
典型用法¶
在 DSH Web 主輸入框中:
/btw 當前任務中某個變量爲什麼這樣處理
該操作會旁路提問,並自動打開居中面板展示回答。
/btw
該操作只打開面板並聚焦輸入框。
重置當前會話分支:
Ctrl+Shift+K
也可以點擊面板上的「清空」按鈕。
適用場景與注意¶
適合 DSH Web 使用者在任務過程中進行旁路提問,尤其是希望保留只讀檢索能力、但不要讓問答進入主上下文的場景。
注意:
- 項目 README 標註仍在開發中(WIP),尚未發佈穩定版本,API、命令行爲、RPC 契約和麪板 UI 可能隨時變化。
- 請勿用於生產環境。
- 分支只讀,不能執行寫文件、編輯、命令執行、SSH 等全局工具。
- 分支不顯示爲子代理,不出現在子代理目錄。
- 面板只能通過
/btw命令打開,沒有常駐入口。
結尾¶
dsh-btw 的價值是把「旁路提問」做成一個獨立、只讀、按會話隔離的面板流程:可以查主對話歷史,可以追問,也可以隨時清空當前分支,同時不改變主對話上下文。
DSH 社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係,不是官方應用商店。本文已覈實的直接倉庫地址爲:
https://github.com/loster12520/dsh-btw