dsh-knj-prompts:DSH 提示詞場景插件

在 DeepSeek Harness (DSH) 的開發與使用過程中,頻繁切換提示詞模板、處理變量填充以及維護不同上下文的會話是常見需求。dsh-knj-prompts 旨在解決這些問題,通過場景化管理提示詞,支持變量預覽與自動會話切換。

插件定位

這是一個客戶端插件,由 yangdongzhen590 維護。它提供了一套可視化的提示詞場景管理機制,支持變量填充、場景編輯以及場景包的導出與導入。

核心功能

場景選擇與變量填充

在輸入框工具行右側點擊「✦ 提示詞」按鈕,會列出全部場景。內置場景帶有「內置」標記,變量以 chip 形式展示。
如果場景提示詞中包含 {變量},點擊後會先彈出填充面板。用戶逐個輸入變量值,輸入時右側會實時預覽最終效果,確認後自動填充到輸入框。

會話自動處理

根據當前會話狀態,插件會採取不同的填充策略:
* 空白會話:直接在當前會話中填充草稿。
* 已有對話:自動通過官方 New Session 通道在同工作區創建新會話,並將提示詞填充至草稿區。

場景管理

點擊「管理場景…」可打開管理彈窗,支持:
* 新增 / 編輯 / 刪除:內置場景可編輯但不可刪除。
* 保存全部:將更改落盤。
場景數據存儲在 <DSH_HOME>/knj-prompts/scenes.json,支持原子寫操作,文件損壞時會自動備份重建。內置 seed 會合併到本地數據。

場景包 (Scene Package)

插件內置了「導出場景包」與「安裝場景包」兩個場景,用於引導 AI 使用相應的 skill。
場景包是普通場景的可遷移 ZIP 文件,不包含普通 DSH 插件代碼,也不復制運行配置值。其標準結構如下:

<scene-id>.dshscene.zip
├─ manifest.json
├─ scene.json
├─ README.md
├─ skills/          # 可選:<skill-id>/SKILL.md 及其文件
└─ materials/       # 可選:操作說明中列出的素材

安全執行機制

插件不會執行場景包內的內容。
* 安裝流程:選擇「安裝場景包」會打開文件選擇器,僅接受 ZIP 格式,暫存到 <DSH_HOME>/knj-prompts/imports/,並在安裝會話草稿中寫入服務器返回的真實路徑。
* 執行主體:具體的解壓、安裝 skill、寫運行配置等動作由 AI 通過 installer skill 完成。執行前會預檢、展示計劃並詢問環境配置。若嵌入的 skill 在目標根目錄同名,整體阻斷,確認前和發生衝突時不得部分寫入。

安裝與啓用

在插件目錄下執行以下命令進行構建與打包:

npm.cmd run typecheck && npm.cmd run check:client && npm.cmd run build && npm.cmd run build:client && npm.cmd run pack

構建完成後,在 web profile 的 package.json 中將依賴指向新生成的 tgz 文件並重裝即可啓用。

典型用法

  1. 使用場景:輸入框右側「✦ 提示詞」下拉選擇一個場景。
  2. 處理變量:如果場景包含 {變量},先在彈出的面板中輸入變量並實時預覽,確認後點擊確認。
  3. 發送對話:根據當前會話狀態,如果是空白會話則直接發送;如果已有對話,插件會自動切到新會話,用戶微調後發送。
  4. 導入場景:選擇「安裝場景包」場景,選擇一個 .dshscene.zip 文件。插件將其上傳,隨後由 AI 讀取該文件並按照其定義的流程進行安裝。

注意事項

  • 權限範圍:插件以當前 DSH 進程權限運行。安裝前應檢查源碼與許可證。
  • V1 版本限制:當前版本不支持多場景包、覆蓋/合併、遠程倉庫、簽名、依賴圖、更新同步或自動配置發現。
  • 技能文件:插件首啓時僅從本包 skills/ 複製 scene-package-exporter 和 scene-package-installer 到 <DSH_HOME>/skills/。如果本地已有同名目錄,一律保留,絕不覆蓋或合併。

總結

dsh-knj-prompts 通過結構化的場景管理和嚴格的執行流程,解決了 DSH 中提示詞複用和變量填充的痛點。它將場景包視爲可遷移的 ZIP,並將實際執行權交給 AI skill,在保證靈活性的同時限制了插件的執行權限。

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

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

小夜