DeepSeek Harness 提示詞優化插件 (dsh-prompt-optimization-master)

前言

DeepSeek Harness(DSH)的插件生態允許用戶擴展輸入框的功能。提示詞優化插件借鑑了騰訊 WorkBuddy 的 EnhancePrompt 機制,旨在解決草稿不夠清晰的問題。該插件通過獨立調用模型,將輸入框中的未發送草稿改寫爲更具體的提示詞,並提供一鍵還原功能。

安裝

通過 DSH 的插件命令行工具安裝,支持 Web 和桌面端(需注意 Origin 校驗)。

dsh plugin --profile web add github:ruiyukirin/dsh-prompt-optimization-master

核心功能

插件在 DSH 輸入框的工具欄右側添加了一個提示詞優化按鈕。其行爲由草稿狀態和輸入框狀態共同決定。

  1. 按鈕狀態流轉

    • 有草稿且空閒:顯示 ✨ 按鈕。點擊後發送草稿給模型改寫,結果直接替換輸入框。
    • 優化中:顯示 ⏳ 按鈕。點擊可取消請求並還原原文。
    • 已優化:顯示 ↩️ 按鈕。點擊恢復到優化前的原文。
  2. 智能顯示與隱藏

    • 空草稿隱藏:當草稿爲空(包括零寬空格 U+200B)時,按鈕自動隱藏。
    • 忙狀態隱藏:當輸入框處於提交(submitting)或仲裁(adjudicating)狀態時,按鈕隱藏,防止誤操作。
  3. 會話與上下文管理

    • 獨立調用:優化請求走獨立的模型調用,不創建會話、不寫入對話歷史、不讀取歷史上下文。
    • 自動復位:切換會話後,上一個會話的備份與錯誤提示會自動清除,防止狀態殘留。

配置

在 DSH 的設置面板中找到「提示詞優化」獨立條目進行配置。

  • 啓用 ✨ 按鈕:開關按鈕的顯示。
  • 最少字符數:設置觸發優化的最小草稿長度,留空則跟隨宿主默認值。
  • 指定模型:默認跟隨當前會話模型。勾選後可固定提供方與模型 ID,將優化請求路由到更便宜的模型上。

工作原理與限制

該插件使用獨立的 HTTP 路由(POST /dsh-prompt-enhance/enhance)進行模型交互,而非 Remote。

  1. 提示詞設計
    採用雙層結構:System 層定義角色(提示詞工程專家),User 層提供任務模板和少樣本示例,重點鎖定輸出語言並壓制元話術。

  2. 桌面版 Origin 校驗
    桌面版界面運行在 dsh-app:// 協議上。Electron 會轉發非靜態資源請求,但強制要求請求頭 Origin: dsh-app://app。宿主側必須顯式接受該 Origin 校驗,否則桌面版會返回 403。

  3. 思考型模型預算問題
    實測發現,思考型模型(如 hy4-preview)會喫光輸出預算,導致可見輸出爲 0。插件已修復此問題:

    • 動態分配輸出預算:思考型模型分配 32768,普通模型分配 4096。
    • 使用 ctx.llm.resolveModelInfo() 判斷模型是否開啓思考,並按模型自身的 defaultMaxTokens 封頂。
    • 增加 60 秒硬超時,並針對截斷錯誤提供自動重試機制。

開發與調試

插件的客戶端和宿主端修改對熱更新的影響不同。

  1. 修改規則

    • 客戶端半改動:修改 client/client.js 等文件後,刷新頁面即可生效。HMR 僅在模塊首次加入時推送一次。
    • 宿主半改動:修改 dsh/index.js 等文件後,必須重啓 DSH。Loader 會緩存進程內的模塊。
  2. 離線測試
    插件包含完整的測試套件,可在不依賴 DSH 的情況下運行。

npm test        # 運行宿主半、客戶端半與推理預算測試
  • 宿主半測試(test/smoke.mjs):覆蓋路由註冊、請求守衛、提示詞組裝等 45 項檢查。
  • 客戶端半測試(test/client.test.mjs):覆蓋狀態機與狀態轉換,共 57 項檢查。
  • 推理預算測試(test/reasoning-budget.mjs):覆蓋思考識別、上限封頂、截斷重試,共 29 項檢查。
羽毛球分组比赛记分
小程序二维码

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

小夜