dsh-next-hint:回合結束後的下一句幽靈建議

前言

在 DeepSeek Harness(DSH)的 composer 中,回合結束後的“下一句”往往需要手動敲擊或複製粘貼。常見的做法是依賴通用提示詞模板(如“繼續”),或者依賴其他插件的預測,但它們要麼不夠貼合上下文,要麼會搶奪 Enter 鍵的發送行爲。dsh-next-hint 在 DSH Desktop 和 web profile 上提供了另一種選擇:當回合結束且 composer 草稿爲空時,在輸入框第一行顯示一條灰色幽靈文本,按下 Tab 鍵採納,不觸發發送。

這是什麼

dsh-next-hint 是一個 DSH 插件,由維護者 xiaoshenming 開發,分類爲客戶端。它利用一個獨立的輔助請求讀取當前會話的最近幾輪對話上下文,從而生成貼合當前工作的下一句建議。建議以“幽靈文本”的形式呈現,可見、可撤銷,且不會自動發送。

核心功能

  • 幽靈建議:回合 settle、草稿爲空時,在 composer 第一行顯示灰色幽靈文本,右側顯示 Tab accept。
  • 按 Tab 採納:Tab 將幽靈文本插入到草稿末尾,光標隨之移動,不發送。
  • 不打字即消失:開始打字時幽靈文本自動消失。
  • 切換會話即丟棄:切換到其他會話時幽靈文本被清除。
  • 靜默失敗:超時、無路由、模型拒絕等情況下,幽靈文本不出現,日誌最多一條 warn,不向用戶暴露錯誤。
  • 不上傳對話原文:瀏覽器只發送 sessionId,對話原文由主機進程讀取並保留在本地,不寫入外部存儲或日誌。

安裝與啓用

DSH Desktop

  1. 打開 DSH Desktop 設置。
  2. 進入 Plugins 頁面。
  3. 添加 Git 包,輸入:
github:xiaoshenming/dsh-next-hint#main
  1. 重啓應用一次,插件隨啓動加入列表。

Web profile

若使用 self-managed 的 web profile:

dsh plugin --profile web add "github:xiaoshenming/dsh-next-hint#main"

同樣需要重啓應用一次。

更新

從插件頁面更新,或在 desktop profile 下:

cd ~/.dsh/profiles/desktop && pnpm update dsh-next-hint

更新後若未生效,再次重啓應用即可。

典型用法

  • 在 DSH 中完成一輪對話,等待 composer 草稿爲空。
  • 若插件啓用,第一行會出現灰色幽靈文本(例如“fix the two failing cases as well”)。
  • 將焦點保持在 composer,按下 Tab 鍵。
  • 幽靈文本被插入到草稿末尾,光標跟隨其後,此時按 Enter 纔會發送。
  • 若開始打字,幽靈文本自動消失。

配置項

進入 DSH 設置 → Plugins → dsh-next-hint,每個配置項都有默認值,無需手動填寫。

配置項 默認值 含義
enabled true 總開關
provider / model 空 空時跟隨會話最後一條路由;兩者必須同時設置或不設置
locale auto 建議語言
maxTurns 3 採樣最近幾輪對話
maxInputBytes 8000 輔助請求的輸入預算
maxOutputTokens 128 輸出 token 上限
maxHintChars 48 幽靈文本長度上限;過長的段落會被丟棄,長句會被截斷
timeoutMs 15000 單次請求超時時間
perSessionCooldownMs 0 會話冷卻時間,默認每回合都建議

技術實現

  • 職責分離:瀏覽器負責判斷是否顯示幽靈文本(草稿是否爲空、是否正在打字、當前會話 ID),主機負責生成建議。
  • 單次請求/響應:瀏覽器向主機的 /api/next-hint 發送 sessionId,主機據此讀取最近幾輪對話,調用一次獨立的 LLM,返回建議或靜默失敗。
  • 官方插槽:幽靈節點掛載在 conversation.composer.dock,由插件自己渲染與清理。
  • 失敗策略:模型返回“無建議”時,插件會用更嚴格的指令再問一次;若仍無建議,則不再顯示幽靈文本。

生態與兼容性

  • 與其它插件的關係:
  • dsh-composer-prediction:同樣是“回合結束 + 幽靈文本 + 瀏覽器決策 + 主機生成”,但使用覆蓋層插槽、獨立設置頁、會話級緩存,並通過 Esc 關閉;本插件使用官方 dock 插槽,切換會話時丟棄建議。從 0.7.7 起,它會檢測本插件並自動暫停,避免重疊。建議只啓用其中一個。
  • dsh-input-assist:補全你正在輸入的句子並檢查拼寫,本插件建議回合結束後的下一句。兩者僅在空閒空 composer 時可能同時出現,此時關閉其中一個即可。
  • 版本要求:已測版本爲 DSH Desktop 0.2.1-rc.2(Windows)與同一版本的 web profile(macOS)。主機需要 ctx.llm、ctx.sessions 和 ctx.webServer.register;瀏覽器需要 conversation.composer.dock 插槽與 composer 輸入門面。若上游調整這些接口,幽靈可能失效,但不會報錯。
  • 權限與安全:插件以當前 DSH 進程權限運行,請求僅允許來自 loopback,外部請求會被拒絕。對話原文僅保存在本地進程,不寫入日誌或外部存儲。

適用場景與注意

  • 適合需要連續對話、並在回合間快速推進工作流的場景。
  • 安裝前建議閱讀源碼與許可證(MIT),確認其行爲與你的使用習慣一致。
  • 若已安裝 dsh-composer-prediction 或 dsh-input-assist,請按文檔提示只啓用其中一個,避免幽靈重疊。

結尾

dsh-next-hint 在回合結束時提供貼合上下文的下一句建議,以幽靈文本的形式呈現,Tab 採納,不自動發送,適合作爲 DSH 中連續對話的輔助工具。更多細節與源碼可參考:
- 技能目錄:https://www.skillhub.cn/plugins/xiaoshenming/dsh-next-hint
- GitHub:https://github.com/xiaoshenming/dsh-next-hint

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

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

小夜