dsh-md-overlay:DSH 裏的 Markdown 預覽面板

前言

DSH(DeepSeek Harness)採用插件化架構。在會話中預覽 Markdown 報告或文檔時,若切換到外部編輯器會打斷上下文,直接在對話中展示又缺乏良好的排版與交互。dsh-md-overlay 插件通過引入一個可懸浮/可停靠的 Markdown 預覽面板,以及一個 md_preview 模型工具,解決了這一痛點,實現了會話內的一鍵預覽。

插件定位

這是一個 DSH Web 客戶端插件,由 2017java 維護,採用 MIT 許可證。

插件提供兩個核心能力:
1. md_preview 模型工具:讀取 workspace 內的 .md 文件並觸發面板預覽。
2. 預覽面板:支持浮層/停靠雙模式、多標籤頁管理、寬度拖拽調整,以及代碼塊語法高亮。

核心功能

  • md_preview 模型工具:該工具註冊爲全局工具,所有會話可見。當調用該工具時,插件會讀取 workspace 內的 Markdown 文件,並在對話中展示預覽卡片,同時打開右側預覽面板。
  • 浮層 / 停靠雙模式:默認狀態下,面板懸浮在內容之上。點擊面板頭部的 📌 圖標可將其停靠,推擠頁面佈局融入;再次點擊可恢復懸浮。
  • 多標籤與拖拽:支持一次打開多個文檔,點擊標籤切換,逐個關閉。面板寬度可通過左緣拖拽調整,範圍在 320px 到 75% 屏寬之間。
  • 代碼塊渲染:支持 JS/TS/Python/Bash/YAML/HTML/CSS 語法高亮,顯示行號、語言徽標,並提供一鍵複製功能。
  • 目錄與列表:自動收集文檔標題生成目錄(TOC),點擊可平滑滾動至對應章節。支持任務清單(- [x])和嵌套列表。
  • HTML 處理:自動剝離 HTML 註釋,進行實體反轉義,確保渲染安全。
  • 安全邊界:插件僅讀取 workspace 內的文件,文件大小超過 1MB 時會被拒絕加載。

安裝與啓用

前置條件:確保 DSH(dsh web)可正常運行。

dsh plugin --profile web add dsh-md-overlay@latest

安裝完成後,請硬刷新瀏覽器(Cmd/Ctrl + Shift + R)以加載新插件。

典型用法

  • 指令觸發:在對話中輸入“預覽一下 report.md”,Agent 調用 md_preview 工具,右側面板會自動打開並渲染該文檔。
  • 產物點擊:對話中如果出現“產出文件”等 .md 產物,直接點擊該文件名,面板會自動打開並展示內容。

注意事項

  • 相對路徑圖片:暫不支持解析 Markdown 中的相對路徑圖片。
  • 特殊語法:暫不支持 LaTeX 和 Mermaid(這些是 better-sidebar 的強項,本插件規劃中未包含)。
  • 觸發機制:預覽卡片和麪板只在 md_preview 工具被調用,或者點擊 .md 產物後纔出現,其他類型文件會交給系統默認應用或側邊欄處理。

總結

dsh-md-overlay 適合需要在 DSH 會話中頻繁查看 Markdown 文檔、代碼報告的用戶。它通過提供一個懸浮且可嵌入佈局的預覽窗口,減少了應用切換成本。

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

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

小夜