前言¶
在 DeepSeek Harness(DSH)裏反覆輸入同一套提示詞——代碼審查模板、週報骨架、帶變量的任務說明——既費時間,也容易在複製粘貼裏漏改佔位符。把片段記在筆記或獨立文件裏再手工貼回輸入框,分類和版本也往往是另一套流程。社區插件 dsh-prompt-snippets(維護者 dadazhangn)面向這類需求:在本機保存片段,用 {{佔位符}} 填表或默認值直插,並通過輸入框下方的「📋 片段庫」面板瀏覽、搜索、編輯後插入當前草稿。數據默認只存本機;除你主動使用「✨ AI 優化」時會把當前那條片段文本發給已配置的模型服務外,插件自述不與網絡通信。
這是什麼¶
dsh-prompt-snippets 是 DSH 的客戶端類插件:host 半處理 /snippet 命令與 JSON 持久化,client 半在會話輸入框 dock 掛載可拖動、可縮放的面板。片段落在 <DSH_HOME>/data/prompt-snippets/snippets.json(未設置 DSH_HOME 時爲 ~/.dsh)。倉庫 GitHub 當前 npm 版本爲 1.3.0,許可證 MIT,要求宿主 DSH >=0.2.1-rc.3(package.json 的 engines.dsh)。社區目錄頁:skillhub.cn/plugins/dadazhangn/dsh-prompt-snippets(獨立站點,與 DeepSeek / 幻方無官方從屬關係)。
核心功能¶
命令行管理片段¶
- 保存:
/snippet add <名稱> <內容>,同名即更新;行尾--cat=<分類>或-c=<分類>指定分類(正文中間的--cat按字面保留;要在正文結尾寫--cat時用--結束選項)。 - 查詢與維護:
list、show、rm、undo(軟刪除可恢復)、mv;重名時用#id前綴精確指定。 - 標籤與收藏:
/snippet tag <名稱> <標籤…>;/snippet pin/unpin;add也可--tag=、--pin。 - 導入導出:
/snippet export [文件名]寫入exports/目錄;/snippet import <路徑>,支持--replace、--dry。 - AI 優化(命令):
/snippet optimize <名稱>(面板內 ✨ 爲同一能力的 UI 入口)。
面板與快捷插入¶
裝完並重啓 DSH、刷新頁面後,輸入框下方出現「📋 片段庫」。按分類瀏覽,點擊片段插入草稿;支持實時搜索(名稱/分類/正文)、鍵盤導航、↑ ↓ + Enter + Esc。面板內 ✏️ 編輯、底部「+ 新建」、🕘 版本歷史(每片段最多 20 版)、🗑 刪除帶最近 5 條撤銷條。視圖切換:全部 / ★ 收藏 / 最近使用(最多 20 條)。
任意時刻 Ctrl+Shift+K 或 Ctrl+Shift+P 打開全局片段搜索浮層,無需先點開 dock。
佔位符與動態變量¶
正文中的 {{變量名}} 在插入時按規則處理:無佔位符直接插入;全非必填且有默認值則按默認值插入;有必填或缺元數據則彈表單。\{{字面量}} 插入字面 {{字面量}}。內置宏 {{date}}、{{time}}、{{datetime}} 用本地時間替換,不彈表單。變量元數據支持 label、default、options(下拉)、required,可在面板編輯器裏維護。
AI 優化(對比後決定)¶
點 ✨ 用默認模型改寫當前片段,進入「原文 / 優化後」雙欄對比,不自動落盤。優化後一欄可編輯;對比視圖顯示字節數變化與佔位符是否保全。「替換片段正文」 是唯一寫回庫的動作(帶 expectedRevision 樂觀鎖);「插入優化版」 只進輸入框。未配置默認模型時按鈕置灰。最多「再試」3 次。
存儲與可靠性¶
寫入採用臨時文件 → fsync → 輪換 .bak → rename;併發保存串行排隊。保留 snippets.json.bak 及最多 7 級 .bak.N;JSON 損壞時備份爲 snippets.corrupt-<時間戳>.json 並以空庫繼續,面板提示。舊數據 version 1–3 首次讀取遷移到 version: 4,遷移前保留 snippets.json.pre-v4.bak。首次運行且數據文件不存在時預置一組內置模板(代碼審查、Git 提交信息、Bug 排查、週報、日報等);已有文件(哪怕清空)不會再次注入。
安裝與啓用¶
將 web 換成你實際使用的 profile 名(本機 profile 在 ~/.dsh/profiles/<名字>):
dsh plugin --profile web add dsh-prompt-snippets
也可從 GitHub 安裝(跟蹤倉庫 HEAD,不跟隨 npm 發佈):
dsh plugin --profile web add github:dadazhangn/dsh-prompt-snippets
本地源碼調試可用 link: 路徑安裝。裝完重啓 DSH並刷新頁面,確認出現「📋 片段庫」按鈕。
典型用法¶
先通過命令保存幾條片段,再在會話裏用面板插入:
/snippet add 代碼審查 請審查以下代碼並指出問題:{{代碼}}
/snippet add 週報 總結本週工作:{{要點}} --cat=寫作
/snippet list
/snippet show 週報
/snippet pin 週報
/snippet tag 週報 工作、總結
/snippet export 我的片段
/snippet import 我的片段.json --dry
/snippet import 我的片段.json
經過上面的步驟,在任意會話點擊「📋 片段庫」→ 選擇片段 → 內容進入當前草稿。改名稱、分類或正文可在面板 ✏️ 內完成,不必再敲命令。
適用場景與注意¶
適合需要固定提示詞模板、帶佔位符的表單式填充、本機分類與版本歷史的 DSH 用戶;團隊共享可通過 export/import JSON 交換,默認不上傳雲端。
安裝前建議自行查看 倉庫源碼 與 MIT 許可證。插件以當前 DSH 進程權限讀寫本機 snippets.json 與導出目錄;使用 AI 優化時會向你所配置的模型服務發送當前那條片段文本。不滿足 engines.dsh 時,市場安裝入口會禁用並說明原因。
結尾¶
dsh-prompt-snippets 把常用提示詞收進可 crash-safe 的本機 JSON 庫,用佔位符、面板與全局快捷鍵縮短從模板到草稿的路徑。詳情與 issue 見 GitHub 倉庫,安裝與簡介見 SkillHub 目錄頁。