在 DeepSeek Harness (DSH) 的使用流程中,直接在輸入框編寫 Markdown 內容往往缺乏即時反饋。特別是涉及數學公式或複雜排版時,這種盲打體驗較差。dsh-markdown-preview 插件通過官方提供的 conversation.input.dock 槽位,在輸入框上方實現了一個獨立的預覽面板,解決了這一問題。
這是一個 DSH Web 插件。它利用官方 Slot 注入,在聊天輸入框上方提供實時的 Markdown 渲染和 KaTeX 公式展示。插件由 thomasly 維護,採用 MIT 協議,不修改 DSH 核心代碼。
核心功能¶
- Markdown 實時預覽:支持加粗、斜體、行內/代碼塊、刪除線、引用、列表、表格等語法的即時渲染。
- KaTeX 公式支持:通過內聯構建的渲染器,支持
$x+y$行內公式與$$...$$塊級公式的實時顯示。 - 吸附式佈局:預覽面板吸附在輸入卡片上沿。輸入框本身位置固定,不會因預覽內容的增減而跳動。
- 交互控制:提供一鍵收起/展開功能,狀態會保存在本地存儲中。
- 安全與輕量:草稿中的原始 HTML 會被轉義,防止惡意標籤執行;草稿爲空時不渲染,避免佈局抖動。
安裝與啓用¶
安裝方式分爲兩種,需根據實際情況選擇其一,切勿混用。
方式一:官方插件命令(推薦)¶
這是通過 DSH 發佈渠道安裝的方式。
dsh plugin --profile web add github:thomasly/dsh-markdown-preview
執行命令後,需要重啓 dsh web 以使插件生效。
方式二:本地手動掛載¶
這種方式需要手動編輯配置文件。
- 克隆插件到 profile 的插件目錄:
mkdir -p ~/.dsh/profiles/web/plugins
git clone https://github.com/thomasly/dsh-markdown-preview.git ~/.dsh/profiles/web/plugins/dsh-markdown-preview
- 鏈接進 profile 依賴:
cd ~/.dsh/profiles/web
pnpm add --save-exact file:./plugins/dsh-markdown-preview
- 在
~/.dsh/profiles/web/cordis.patch.yml中追加註冊條目:
# 在 insert 下添加
- id: markdown-preview
name: dsh-markdown-preview
- 重啓
dsh web生效。
使用方法¶
打開任意會話,直接在輸入框輸入 Markdown 即可看到上方變化。以下是一些典型用法:
這是 **加粗** 的文字:預覽中文字會立即變粗。行內公式 $x+y$:預覽中會顯示數學符號。- 塊級公式:使用
$$開頭和結尾,預覽中會居中渲染。 - 清空輸入框:預覽面板自動消失。
注意:預覽只是輔助顯示。發送的內容始終是原始 Markdown 文本,由 DSH 自帶的渲染器處理,二者互不影響。
注意事項¶
- 安全性:插件會對草稿中的 HTML 進行轉義,只渲染 Markdown 結構,粘貼惡意標籤不會執行。
- 權限:作爲 DSH 插件,其運行權限與當前 DSH 進程一致。安裝前請檢查源碼與許可證。
- 兼容性:該插件註冊官方 Slot,與輸入框原有功能(如
/觸發、附件、plan 模式等)天然兼容。
總結¶
dsh-markdown-preview 是一個輕量級的輔助工具,它在不修改 DSH 核心代碼的前提下,爲 Web 客戶端提供了所見即所得的 Markdown 預覽體驗。更多細節可參考項目目錄或GitHub 倉庫。