前言¶
DeepSeek Harness (DSH) 的設計理念是“一切皆插件”。在實際開發中,編寫清晰的提示詞往往需要反覆打磨。dsh-prompt-optimizer 插件旨在解決這一問題,它通過在 DSH Web 界面的輸入框工具欄新增一個圖標按鈕,利用當前激活的模型對輸入內容進行優化,並自動回填到輸入框中。
插件定位¶
這是一個由 wmengxiang 維護的 DSH Web 插件,採用 MIT 許可證。它的核心作用是在 Web profile 的輸入框工具行增加一個交互入口,通過調用當前默認模型,將用戶輸入的提示詞改寫得更加清晰和具體。
核心功能¶
- 一鍵優化:通過點擊按鈕觸發優化流程,無需手動複製粘貼。
- 意圖與語言保留:優化過程僅做清晰化和具體化處理,不改變原任務意圖與語言風格。
- 交互反饋:按鈕在懸停時顯示提示文本;優化過程中按鈕圖標變爲旋轉加載狀態,底部顯示進度條。
- 空內容保護:當輸入框爲空時,按鈕自動置灰,防止誤操作。
- 流式生成:後端通過
ctx.llm.stream讀取模型輸出,實現流式回填。
安裝與啓用¶
通過 DSH CLI 安裝該插件:
dsh plugin --profile web add "github:wmengxiang/dsh-prompt-optimizer#main"
安裝完成後,重啓 Web 界面,插件會隨組合自動加載。若遇到 GitHub 源的 SSH 權限問題,可考慮使用本地路徑安裝或先發布至 npm。
使用步驟¶
- 在輸入框中輸入一段提示詞。
- 點擊輸入框工具行左側的圖標按鈕(懸停可查看“優化提示詞”提示)。
- 等待優化完成,輸入框內容會自動替換爲優化後的結果。
- 使用優化後的提示詞繼續交互。
工作原理¶
該插件分爲 Host 和 Client 兩半。
- Host 半 (lib/index.js):註冊 POST /api/prompt-optimizer 路由,接收輸入文本,調用當前默認模型,通過 ctx.llm.stream 流式讀取結果並返回。
- Client 半 (lib/client.js):利用 window.__ModuleLoader__.load 註冊,向 conversation.input.left 槽位注入圖標按鈕,讀取草稿內容,調用接口後通過 props.inputActions.setDraft 寫回。
注意事項¶
- 插件使用當前激活的默認模型進行優化。在界面上切換模型會改變優化所用的模型。
- 若通過
github:源安裝,pnpm 會默認使用 SSH 協議,需確保已配置 GitHub SSH 密鑰。若未配置,建議改用本地路徑安裝或發佈至 npm 後安裝。
總結¶
該插件爲 DSH Web 用戶提供了便捷的提示詞優化手段,通過流式生成和良好的交互反饋,提升了在 Web 界面下編寫高質量提示詞的效率。更多細節可查看 GitHub 倉庫。