dsh-prompt-enhancer:用默認模型把輸入框草稿改寫成可執行提示詞

前言

在 DSH 裏與智能體對話時,輸入框裏往往只有一句意圖,例如「把事項中心的材料接口加個導出」。直接發送可以試着讓模型猜,但目標、範圍、驗收標準若不寫清,返工概率會上去。手寫一整段結構化提示詞又費時間。

dsh-prompt-enhancer 在 Web 會話輸入框右側增加「增強提示詞」按鈕:把當前草稿交給當前默認模型做改寫,結果寫回輸入框,不自動發送;失敗有明確反饋,也可隨時改回原稿。下面按定位、能力、安裝、用法與注意點說明。

這是什麼

  • 插件名稱:dsh-prompt-enhancer
  • 維護者:991206772-debug
  • 分類:模型推理(社區目錄 SkillHub)
  • 源碼:GitHub,MIT 許可證,版本 1.0.0(以 package.json 爲準)

一句話:用 Host 側 LLM 路由 + Web 客戶端按鈕,在本地會話裏完成「草稿 → 補齊後的提示詞 → 寫回輸入框」,不執行任務、不替用戶點發送。

核心功能

改寫規則(與 README 一致)

  1. 補全結構:短稿可補齊目標、範圍、約束、驗收標準、交付形態等常見小節。
  2. 硬約束保留:代碼、路徑、報錯、命令、變量名、接口名、URL、數字與單位按原文逐字保留。
  3. 不臆造:草稿沒有且無法合理推斷的內容,寫成「待確認:……」留白,不新增需求。
  4. 只產出提示詞:不執行任務、不加前言、不用代碼塊包裹輸出;輸出語言跟隨草稿。
  5. 長度控制:元提示詞要求不超過原文約 3 倍(極短草稿放寬到約 500 字);Host 側還用 maxTokens 與 20000 字符硬上限兜底。

架構:Host 與 Web Client 各一半

文件 作用
index.js 註冊同源 POST /prompt-enhancer/enhance,校驗、限流、超時,調用 ctx.llm.stream,返回 JSON。
client.js 在 conversation.input.right 註冊 id: prompt-enhancer(order: 30)按鈕,通過 inputActions.setDraft() 寫回草稿。
cordis.patch.yml bundle patch,插入 Host 插件行。
locale/zh.json、locale/en.json 插件管理器中的標題與描述。

客戶端不點擊發送控件、不讀宿主 DOM,只改草稿文本。

安裝與啓用

在 DSH 內安裝 bundle

資料給出的安裝方式爲插件管理器安裝 GitHub 目標(會自動寫入 profile 依賴並啓用 bundle):

plugin_manager(action: "install_bundle", target: "github:991206772-debug/dsh-prompt-enhancer")

裝完後 Web GUI 需要刷新頁面:客戶端半隻在頁面加載時進入模塊表;宿主路由隨 plugin 行激活即可用。

命令行 Profile 安裝(桌面 / CLI)

dsh plugin --profile web add github:991206772-debug/dsh-prompt-enhancer

從 GitHub 安裝時,依賴由插件管理器按聲明安裝;peerDependencies 中的 @deepseek-ai/cordis 由宿主提供,安裝時可能出現的 peer 解析 [WARN] 不影響加載。運行環境要求 Node >=22.3.0。

配置(可選)

默認 config: {} 即可。覆蓋項可寫在 cordis.patch.yml 的 config:,或在 profile 的 patch 層按 id: prompt-enhancer 覆蓋:

字段 默認值 說明
provider "" 覆蓋模型路由;空則用 ctx.agentDefaultModel.currentSelection()。
model "" 與 provider 同時給出才生效,否則回落默認模型。
temperature 0.3 0–2。
maxTokens 1200 64–8192,輸出硬上限。
timeoutMs 60000 Host 側超時(毫秒)。
maxDraftChars 8000 超過則 413,不發模型。
metaPrompt 內置中文元提示詞 整體替換改寫規則。

Schema 由 @deepseek-ai/schemastery 構造,可在插件面板做結構化查看。

典型用法

  1. 在 DSH Web 會話輸入框寫好簡短草稿(可含路徑、接口名、報錯等需保留的原文)。
  2. 點擊輸入框右側 ✨「增強提示詞」按鈕。
  3. 等待 Host 調用默認模型(或你在配置裏指定的 provider/model)。
  4. 檢查寫回輸入框的正文:滿意後再自行發送;不滿意可手工編輯或重新編輯草稿後再增強。

Host 接口契約(供排查或二次集成時對照):

  • 路徑:POST /prompt-enhancer/enhance(同源)
  • 請求頭:content-type: application/json,x-dsh-prompt-enhancer: 1
  • 請求體:{"draft": "..."}

成功時返回 ok: true 及 prompt、provider、model、routeSource、stats 等字段;失敗時統一 ok: false 與 error.code / error.message(如空草稿、超時、未配置模型、草稿過長等)。隱私方面:不落盤草稿、日誌中對疑似密鑰片段做 [redacted] 處理。

適用場景與注意

適合:習慣在 DSH Web 裏寫提示詞、希望用同一套默認模型快速把短意圖擴成可執行說明,且希望自己過目後再發送的開發者。

注意:

  • 插件在當前 DSH 進程權限下運行,增強會調用已配置的 LLM;安裝前建議瀏覽 倉庫源碼 與 MIT 許可證。
  • 按鈕與 mcp-manager-quick(order: 40)同列,本插件 order: 30 在其左側。
  • 社區目錄爲獨立站點 SkillHub,與 DeepSeek / 幻方無官方從屬關係。
  • 已知限制:頁面重渲染後按鈕行爲等細節,在無瀏覽器自動化時需人工點一次確認。

卸載:

plugin_manager(action: "remove_bundle", target: "dsh-prompt-enhancer")

卸載後 HTTP 路由與 slot 隨 ctx.effect 清理;Web 端刷新後客戶端半不再加載。

結尾

dsh-prompt-enhancer 把「寫完整提示詞」從手工擴寫變成輸入框旁的一步操作:模型只負責改寫草稿,發送權仍在你手裏。更多信息見社區目錄 dsh-prompt-enhancer 與 GitHub 倉庫 991206772-debug/dsh-prompt-enhancer。

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

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

小夜