前言¶
DeepSeek Harness (DSH) 的核心優勢在於其插件化架構,但對於提示詞(Prompt)的管理,往往缺乏結構化的版本控制和組合能力。現有的做法通常依賴文本編輯器,難以追蹤變更歷史或在不同場景間複用片段。
dsh-prompt-presets 是一個內容無關的提示詞配置文件編輯器、版本化編譯器以及導入/導出框架。它不提供故事卡片或角色扮演引擎,而是專注於將提示詞管理從純文本操作轉變爲結構化的配置管理,支持通過 JSON 進行版本控制和組合。
插件介紹¶
這是一個由 LiweiDonVee 維護的獨立社區項目。它爲 DSH 提供了一套管理提示詞配置文件的機制:用戶可以在 Web 界面中編輯、分組、排序提示詞片段,並通過版本控制保存變更。同時,它提供了編譯器接口,允許運行時根據配置文件生成最終的提示詞內容。
核心功能¶
- 版本化提示詞編輯:支持對提示詞配置進行版本保存與回溯。
- 組合:允許將多個提示詞片段組合在一起使用。
- SillyTavern JSON 導入/導出:支持導入和導出 SillyTavern 格式的提示詞數據。
- 配置文件編輯器:提供可視化的 Web 界面用於管理配置文件。
- 編譯器/API:提供
compileForAgent和compileForRender接口,供運行時調用以生成提示詞。 - HTTP API:提供基於環回訪問的 RESTful API,用於讀取配置、驗證和會話管理。
安裝與啓用¶
本插件依賴 Node.js 24、npm 以及 DSH 0.1.7-rc.2。
- 克隆倉庫並安裝依賴:
git clone https://github.com/LiweiDonVee/dsh-prompt-presets.git
cd dsh-prompt-presets
npm ci
npm run check
- 將插件安裝到 DSH Web 配置文件中:
npx --yes @deepseek-ai/dsh@0.1.7-rc.2 plugin --profile web add .
- 啓動 Web 服務:
npx --yes @deepseek-ai/dsh@0.1.7-rc.2 web
- 安裝完成後,重啓 DSH 主機。打開打印出的認證 URL,在 Settings → Prompt Presets 中,可以選擇 Create blank profile 創建空白配置文件,或導入現有的 JSON 文件。
使用方法¶
安裝完成後,數據目錄默認位於 $DSH_HOME/prompt-presets(即 ~/.dsh/prompt-presets)。
配置文件管理¶
在 Web 界面中,你可以創建空白配置文件或導入 JSON 文件。界面支持中英文導航,你可以對提示詞條目進行增刪改、調整順序、設置分組或角色。
運行時集成¶
該插件本身不會自動替換 DSH 的當前系統提示詞。你的運行時代碼必須主動調用提供的編譯服務。
- 定義
prompt-manifest.json文件,指定需要使用的配置文件 ID:
{
"schemaVersion": 1,
"baseProfiles": [],
"cardProfiles": [],
"optionalProfiles": [],
"defaultOverlay": { "enabledEntries": [], "disabledEntries": [] }
}
- 在運行時調用編譯方法,傳入配置文件的絕對路徑 (
manifestPath) 和會話 ID (sessionId):
// 僞代碼示意
const result = ctx.promptPresets.compileForAgent(manifestPath, sessionId);
- 處理返回結果:返回值包含
profileHash、narrativeContract、sections、diagnostics和blocked。如果結果被blocked,必須嚴格遵循(例如拒絕生成內容)。
HTTP API¶
插件提供了認證的本地 API 端點(/prompt-presets/api),支持以下操作:
* GET /catalog:獲取配置文件目錄。
* GET /profiles/:id:讀取指定配置文件。
* PUT /profiles/:id:更新配置文件。
* POST /validate:驗證配置文件。
* 導入/導出路由以及會話有效覆蓋層路由。
注意事項與限制¶
- 不自動替換系統提示詞:編輯器僅管理配置文件,不會自動修改 DSH 正在使用的系統提示詞。需要運行時代碼顯式調用編譯接口。
- 運行環境要求:本地 API 需要用戶已登錄 DSH 且具備環回訪問權限。遠程主機訪問不被支持。
- 數據保留:卸載插件會停止編輯器和服務,但會保留用戶配置文件數據。會話日誌不會通過此插件遷移。
- 無內置內容:該插件不捆綁任何故事卡片、角色、寫作預設或示例提示詞包。初始數據目錄爲空。
- 兼容性:導入的 SillyTavern 數據在導出時會被保留,但本地腳本和擴展數據在運行時不會被執行。
結語¶
DSH Prompt Presets 爲 DeepSeek Harness 提供了基礎的提示詞工程框架。如果你正在構建一個需要版本控制和結構化提示詞管理的智能體,這是一個輕量級的工具。插件詳情與源碼可參考 GitHub 倉庫。