iyllyt/dsh-btw:爲 DSH 增加 /btw 旁路提問插件

前言

在 DeepSeek Harness(DSH)中執行主任務時,經常會遇到一種夾縫問題:主 Agent 還在繼續工作,你臨時想確認一個當前上下文裏已經出現過的細節。直接發送普通消息,會把問題帶入主會話,可能影響後續任務;另開一個會話,又會缺少剛纔討論過的背景。

dsh-btw 是 iyllyt 維護的非官方社區插件,許可證爲 MIT。它爲 DSH 提供 /btw 旁路提問:在主 Agent 忙碌時提交一次與當前上下文相關的快速提問,回答顯示在臨時面板中,不進入主會話歷史。

這是什麼

一句話定位:dsh-btw 是面向 DSH 的一次性旁路問答插件。

它複用父會話當前可共享的上下文,生成一次回答;主任務繼續執行,BTW 的問題和回答不寫入普通會話歷史。

核心功能

  • 主任務並行:主 Agent 忙碌時也可以提交 /btw,主任務不會被暫停。
  • 共享上下文:複用父會話當前的模型配置、系統提示詞、工具 schema 和安全消息前綴。
  • 一次性回答:只進行一輪模型生成,不執行工具,也不會繼續追問。
  • 會話隔離:不向主 SessionStore 寫入用戶消息、回答或隱藏 Session。
  • 臨時界面:Markdown 回答顯示在 composer 上方,不遮擋輸入框。
  • 隱私存檔:可選擇私有 JSONL、僅內存或完全不保存三種 sidechain 模式。
  • 緩存保護:Anthropic/pi-ai 路由把緩存邊界移回共享前綴;其他路由交給 provider 管理。
  • 可取消:關閉面板會中止請求,並支持獨立超時控制。

安裝

下面是已覈實事實中給出的 web profile 安裝命令:

dsh plugin --profile web add github:iyllyt/dsh-btw

該插件是非官方社區插件,與 Anthropic、Claude Code 或 DeepSeek AI 沒有關聯。許可證爲 MIT。安裝前建議檢查源碼與許可證,並確認它將在當前 DSH 進程權限下運行。

典型用法

先在主會話發送至少一條消息,然後在輸入框輸入:

/btw 剛纔說的配置文件叫什麼?

也可以用來確認當前上下文中的設計選擇或報錯關係:

/btw 爲什麼這裏選擇隊列而不是直接執行?
/btw 我們最終決定使用哪種緩存策略?
/btw 這個報錯和剛纔修改的代碼有關嗎?

交互方式:

  • / :滾動長回答
  • Enter / Space / Esc:關閉回答
  • 請求未完成時點擊 Cancel:中止本次 BTW

適用場景與限制

適合用於當前上下文已知細節的快速提問,例如確認剛纔提到的配置文件、已經討論過的方案、已讀代碼中的選擇。

不適合以下需求:

  • 讀取尚未看過的文件
  • 執行命令
  • 聯網搜索
  • 連續追問
  • 真正修改文件或執行操作

原因是 BTW 沒有工具權限,也沒有後續輪次;它是額外的一次模型請求,不等同於普通消息或帶工具的子任務。

隱私與存檔

  • 可選擇 private-jsonlmemorynone 三種 sidechain 模式。
  • 默認 sidechain 模式爲 private-jsonl,寫入 $DSH_HOME/btw-sidechains/v1
  • private-jsonl 目錄權限爲 0700,文件權限爲 0600,並按天數和最大數量自動清理。
  • 會話隔離方面,BTW 不向主 SessionStore 寫入用戶消息、回答或隱藏 Session。
  • 卸載插件不會自動刪除已經寫入 $DSH_HOME/btw-sidechains/v1 的私有審計記錄。

配置與兼容性

  • 當前版本:0.2.0
  • 目標 DSH:0.1.0-rc.6
  • Node.js:>=22
  • 配置覆蓋會替換同一插件行的整個 config,而不是遞歸合併;覆蓋時需寫出希望保留的全部字段。
  • Anthropic/pi-ai 路由會把緩存邊界移回共享前綴;其他路由交給 provider 管理。
  • pi-ai 緩存橋接會在預期的 rc.6 adapter internals 改變時 fail closed。

相關鏈接

倉庫地址:https://github.com/iyllyt/dsh-btw

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜