前言¶
在 DeepSeek Harness(DSH)裏寫長對話、反覆改提示詞時,常見做法是複製到外部筆記或瀏覽器擴展裏管理。Gemini Voyager 是面向瀏覽器的擴展,提供浮動提示詞面板、公式複製、會話分組等能力,但需要單獨窗口或擴展環境。維護者 Kirby-YiBy 的 dsh-prompt-library 用 DSH 原生插件 API 把這些「可攜帶」的界面搬進 DSH 客戶端本身:不裝擴展、不另開瀏覽器頁,數據落在本機 ~/.dsh。
下面按定位、功能、安裝與用法說明該插件;事實以 GitHub 倉庫 README 爲準。社區目錄頁見 skillhub.cn,與 DeepSeek / 幻方無官方從屬關係。
這是什麼¶
dsh-prompt-library(npm 包名同插件 id)是 DSH 客戶端類插件:Voyager 風格的提示詞庫、一鍵複製公式 LaTeX、對話引用插入輸入框,以及側邊欄會話文件夾。當前 package 版本爲 0.17.0,許可證 MIT,倉庫 Kirby-YiBy/dsh-prompt-library。
插件分 host 與 browser 兩半:lib/index.js 維護 JSON 存儲並提供 HTTP API;client/client.js 向 DSH 註冊 shell.overlay、conversation.input.dock、sidebar.panellist、main 等槽位。倉庫無構建步驟,直接以源碼形式打進 profile bundle。
核心功能¶
提示詞庫(浮動球)¶
界面爲可拖拽的 46px 浮動球,點擊打開約 440px 寬的面板;位置會記住,面板可拖標題欄並支持位置鎖定。
- 搜索:按名稱、正文、標籤實時過濾。
- 篩選:全部 / 置頂 / 最近,以及多選標籤(AND)。
- 視圖:緊湊(默認)與舒適;置頂項分組並帶分隔線,可拖拽或方向鍵重排。
- 懸停約 250ms 可預覽完整 Markdown;編輯時名稱必填且唯一,刪除需確認一次。
- 正文支持
{{name}}佔位符,填表插入;\{{可轉義。 - 導入/導出使用 Voyager 格式
gemini-voyager.prompts.v1;界面中英切換;條目可點擊插入或點擊複製。
引用回覆¶
在對話中選中任意文本會出現小工具欄,點 引用 會把選區以 Markdown 引用塊追加到 composer:每行前加 >,前面空一行,通過 DSH 的 shell.draftEditor.appendDraft 寫入草稿,不模擬按鍵,避免誤發送。
公式複製¶
懸停已渲染公式會高亮,點擊後將 LaTeX 寫入剪貼板。檢測順序爲 [data-math] → ms-katex → .katex / .katex-display → .math-inline;源碼來自 data-math、data-math-source 或 KaTeX 的 annotation[encoding="application/x-tex"]。頁腳可切換輸出格式:$…$、裸 LaTeX、Word 用 MathML、Notion 用 $$…$$;行內公式默認 $…$,塊級默認 $$…$$。
會話文件夾¶
側邊欄 rail 上的圖標打開文件夾頁。會話來自 DSH 目錄 ctx.sessions.list,子 agent 會話會被過濾。頂部 chip 爲全部 / 未歸檔 / 各文件夾及數量;拖拽會話到文件夾即可歸檔,chip 會高亮爲投放目標。雙擊文件夾或點 ✎ 可內聯重命名;✕ 刪除文件夾前確認一次,刪除只解除歸檔,不會刪會話。可按標題搜索,列表顯示所屬文件夾與是否運行中。
刻意未移植的 Voyager 能力¶
README 明確未做:Timeline(依賴 transcript 錨點)、導出整段對話(缺 session 消息 API)、星標庫 / Google Drive 雲同步、以及 DSH 未對第三方開放的 / 補全管道。
安裝與啓用¶
環境要求:
- DeepSeek Harness 0.2.1-rc.5 或更新(Desktop 或
dsh web)。 - 主機 Node.js 20+。
從 GitHub 安裝(README 推薦寫法):
dsh plugin --profile desktop add github:Kirby-YiBy/dsh-prompt-library
安裝後重載應用窗口。首次安裝有時需 完全重啓 DSH:客戶端 bundle 在啓動時組裝的,僅刷新頁面不一定加載新插件條目。若使用 dsh web,把 --profile desktop 換成 --profile web。
卸載:
dsh plugin --profile desktop remove dsh-prompt-library
卸載插件不會自動刪本地數據;要清空庫與文件夾需自行刪除 ~/.dsh 下對應 JSON(見下一節)。
數據存放位置¶
| 文件 | 內容 |
|---|---|
~/.dsh/prompt-library.json |
提示詞庫(Voyager PromptItem 結構) |
~/.dsh/session-folders.json |
文件夾定義與會話 id 到文件夾 id 的映射 |
~/.dsh/prompt-library-debug.log |
診斷日誌,可隨時刪 |
README 說明:無遙測、無聯網、無賬號,數據不離開本機。
典型用法¶
- 安裝並重啓 DSH 後,在界面中找到浮動球,打開面板搜索或篩選提示詞,點擊插入 composer 或複製正文;含
{{變量}}的條目會先彈出填寫卡片。 - 長對話裏選中模型回覆的一段文字,用工具欄 引用 把內容帶進輸入框再寫追問。
- 閱讀含 KaTeX 的回覆時,點擊公式複製 LaTeX,按頁腳格式開關選擇
$…$或 MathML 等再粘貼到 Word / Notion。 - 打開側邊欄會話文件夾面板,新建文件夾,把歷史會話拖入 chip;用搜索找舊會話標題。
開發調試時,倉庫提供無構建的客戶端測試:
node test-client.mjs
本地 link 安裝(開發用,README 原文):
dsh plugin --profile desktop add link:/absolute/path/to/dsh-prompt-library
link: 目標目錄必須一直存在,否則啓動加載失敗。
適用場景與注意¶
適合經常在 DSH 裏複用提示詞模板、需要本地歸檔多會話、或要從對話裏快速摘公式 LaTeX 的開發者。若你依賴 Voyager 的雲同步、時間線或整段導出,本插件目前不提供對應能力。
安裝前請自行查看 源碼與 LICENSE:DSH 插件以當前 dsh 進程權限 在主機上運行,host 側會讀寫 ~/.dsh 並在 loopback 暴露 /dsh-prompts/api/*;變更類請求僅接受來自 DSH 界面相關 origin,其他來源返回 403。使用前確認版本與許可證符合你的環境策略。
結尾¶
dsh-prompt-library 把 Voyager 裏與「寫提示、整理會話、抄公式」相關的交互收進 DSH 客戶端,數據本地 JSON 存儲,可與 Voyager 提示詞包互導。更多信息與演示視頻見倉庫 README;安裝入口亦可從社區目錄 Kirby-YiBy/dsh-prompt-library 跳轉到 GitHub。