dsh-wordbox:爲 DSH Web 輸入框增加常用詞句面板

前言

在 DeepSeek Harness(DSH)的 dsh web 對話框裏,開發者經常會重複輸入同一類短語:提示詞片段、技術術語、項目約定用語、常見追問或固定模板。已有做法通常是手動複製,或在編輯器外維護一份片段列表。

dsh-wordbox 針對這個場景提供一個 Web 客戶端插件:在對話輸入框右側增加「詞」按鈕,點擊後彈出常駐上拉麪板,用來管理全局或當前項目的常用詞/句,並一鍵插入到輸入框中。

這是什麼

dsh-wordboxarcmosin 維護的 DSH Web 客戶端插件,許可證爲 MIT。

它屬於標準 DSH bundle 插件,安裝和卸載通過 dsh plugin 命令完成,並自動掛載到 web profile。插件界面支持中/英雙語,跟隨 DSH 界面語言。

核心功能

下面列出已提供的主要能力。

  • 在對話輸入框右側顯示「詞」按鈕;英文界面顯示 W
  • 點擊「詞」按鈕後彈出常駐上拉麪板;可通過再點一次、點擊外部或按 Esc 關閉。
  • 詞條分爲兩個桶:
  • 全局:所有工作區共享。
  • 當前項目:按工作區目錄隔離。
  • 面板提供全部、全局、當前三檔顯示範圍切換。
  • 點擊詞條後,詞條追加進輸入框,保留焦點,並保留一個撤銷步。
  • 點擊詞條後面板不關閉,可連續點擊多條插入。
  • 在當前項目模式下,支持將詞條一鍵添加到全局。
  • 懸停詞條行尾可刪除詞條。
  • 長詞懸停時,會慢速流動顯示完整內容。
  • 詞庫保存在瀏覽器 localStorage,按瀏覽器 profile 隔離。
  • 跨工作區、跨標籤頁通過 storage 事件同步。
  • bundle 爲純 JS,無構建步驟。

安裝與啓用

前置條件是環境中已有 DeepSeek Harness dsh web,並且 pnpm 在 PATH 上。dsh plugin 命令會轉發給 pnpm

安裝命令:

dsh plugin --profile web add dsh-wordbox

執行完成後,重啓 dsh web。重啓後輸入框右側會出現「詞」按鈕;英文界面中顯示爲 W

典型用法

  1. 點擊輸入框右側的「詞」按鈕,面板上拉並保持打開。
  2. 在面板底部右側切換顯示範圍:全部、全局、當前。
  3. 點擊某個詞條,該詞條會追加進輸入框。
  4. 如果還需要繼續插入,可連續點擊多條詞條。
  5. 懸停詞條行尾,出現 × 刪除按鈕,點擊可刪除該詞條。
  6. 在「當前」模式下,懸停詞條行尾會出現添加到全局的按鈕,用於將當前項目詞複製到全局。
  7. 如果詞條過長,懸停時會慢速流動顯示完整內容。

數據、卸載與同步

詞庫保存在瀏覽器 localStorage 中。卸載插件不會刪除這些數據。

卸載命令:

dsh plugin --profile web remove dsh-wordbox

執行後重啓 dsh web,輸入框右側的「詞」按鈕會消失。

如果確認要清空本地詞庫,可刪除以下瀏覽器 localStorage 鍵:

dsh.common-word-box.words.v1
dsh.common-word-box.words.project.v1
dsh.common-word-box.mode.v1

數據按瀏覽器 profile 隔離。跨工作區、跨標籤頁同步通過 storage 事件完成。

開發與更新

  • 修改 lib/client.js 後,宿主 client-hmr 會輪詢 bundle 哈希,變化後自動熱重載。
  • 首次安裝、卸載或修改 cordis.patch.yml 後,需要重啓 dsh web
  • bundle 是純 JS,沒有構建步驟。
  • 個別情況下,執行 removeprofiles\web\node_modules\dsh-wordbox 可能殘留空目錄或鏈接;手動刪除即可,不影響功能。

適用場景與注意

dsh-wordbox 適合以下情況:

  • dsh web 對話中頻繁插入相同短語、提示詞片段或術語。
  • 需要區分全局常用詞和當前項目常用詞。
  • 希望詞庫按瀏覽器 profile 保存,並在同一瀏覽器 profile 內跨工作區、跨標籤頁同步。
  • 需要在一個面板裏連續插入多條內容,減少複製粘貼。

使用注意:

  • 插件會作爲 DSH 客戶端插件,以當前 dsh 進程可用權限參與運行。安裝前建議檢查源碼與 MIT 許可證。
  • dsh plugin 依賴 pnpm,需要保證 pnpm 在 PATH 上。
  • 卸載不會清空瀏覽器 localStorage 中的詞庫數據。
  • 首次安裝、卸載或修改 cordis.patch.yml 後需要重啓 dsh web
  • 修改 lib/client.js 後無需重啓,由宿主 client-hmr 自動熱重載。

鏈接

GitHub 倉庫:https://github.com/arcmosin/dsh-wordbox

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

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

小夜