前言¶
在 DSH 裏與智能體對話時,輸入框裏往往只有一句意圖,例如「把事項中心的材料接口加個導出」。直接發送可以試着讓模型猜,但目標、範圍、驗收標準若不寫清,返工概率會上去。手寫一整段結構化提示詞又費時間。
dsh-prompt-enhancer 在 Web 會話輸入框右側增加「增強提示詞」按鈕:把當前草稿交給當前默認模型做改寫,結果寫回輸入框,不自動發送;失敗有明確反饋,也可隨時改回原稿。下面按定位、能力、安裝、用法與注意點說明。
這是什麼¶
- 插件名稱:dsh-prompt-enhancer
- 維護者:991206772-debug
- 分類:模型推理(社區目錄 SkillHub)
- 源碼:GitHub,MIT 許可證,版本 1.0.0(以
package.json爲準)
一句話:用 Host 側 LLM 路由 + Web 客戶端按鈕,在本地會話裏完成「草稿 → 補齊後的提示詞 → 寫回輸入框」,不執行任務、不替用戶點發送。
核心功能¶
改寫規則(與 README 一致)¶
- 補全結構:短稿可補齊目標、範圍、約束、驗收標準、交付形態等常見小節。
- 硬約束保留:代碼、路徑、報錯、命令、變量名、接口名、URL、數字與單位按原文逐字保留。
- 不臆造:草稿沒有且無法合理推斷的內容,寫成「待確認:……」留白,不新增需求。
- 只產出提示詞:不執行任務、不加前言、不用代碼塊包裹輸出;輸出語言跟隨草稿。
- 長度控制:元提示詞要求不超過原文約 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 構造,可在插件面板做結構化查看。
典型用法¶
- 在 DSH Web 會話輸入框寫好簡短草稿(可含路徑、接口名、報錯等需保留的原文)。
- 點擊輸入框右側 ✨「增強提示詞」按鈕。
- 等待 Host 調用默認模型(或你在配置裏指定的 provider/model)。
- 檢查寫回輸入框的正文:滿意後再自行發送;不滿意可手工編輯或重新編輯草稿後再增強。
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。