前言¶
在 DeepSeek Harness(DSH)的 dsh web 對話框裏,開發者經常會重複輸入同一類短語:提示詞片段、技術術語、項目約定用語、常見追問或固定模板。已有做法通常是手動複製,或在編輯器外維護一份片段列表。
dsh-wordbox 針對這個場景提供一個 Web 客戶端插件:在對話輸入框右側增加「詞」按鈕,點擊後彈出常駐上拉麪板,用來管理全局或當前項目的常用詞/句,並一鍵插入到輸入框中。
這是什麼¶
dsh-wordbox 是 arcmosin 維護的 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。
典型用法¶
- 點擊輸入框右側的「詞」按鈕,面板上拉並保持打開。
- 在面板底部右側切換顯示範圍:全部、全局、當前。
- 點擊某個詞條,該詞條會追加進輸入框。
- 如果還需要繼續插入,可連續點擊多條詞條。
- 懸停詞條行尾,出現
×刪除按鈕,點擊可刪除該詞條。 - 在「當前」模式下,懸停詞條行尾會出現添加到全局的按鈕,用於將當前項目詞複製到全局。
- 如果詞條過長,懸停時會慢速流動顯示完整內容。
數據、卸載與同步¶
詞庫保存在瀏覽器 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,沒有構建步驟。
- 個別情況下,執行
remove後profiles\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