dsh-md-reader:DSH Markdown 閱讀插件

在 DSH(DeepSeek Harness)的開發或協作場景中,會話消息裏的文件鏈接通常由系統默認程序處理,或以獨立浮層形式打開。這種方式會打斷當前會話的上下文,且佈局不統一。dsh-md-reader 插件接管了這一行爲,在 DSH 詳情欄內以真三欄佈局直接渲染文檔,提供統一的閱讀環境。

插件介紹

這是由 wjx-ai 開發的客戶端插件。它利用 DSH 的雙半身架構(宿主半身提供只讀 HTTP 路由,瀏覽器半身提供渲染),攔截會話中的 Markdown / 圖片鏈接,在瀏覽器右側詳情欄展開閱讀面板。插件無需構建鏈,安裝後通過 cordis.patch.yml 自動合併配置。

核心功能

  • 真三欄佈局:非遮罩浮層,而是驅動 DSH 佈局系統展開右側詳情柵格軌道。側邊欄固定寬,會話區自動收窄,文檔區自適應。
  • 多格式支持:支持 .md, .markdown, .mdown, .mkd, .txt 文本,以及常見圖片格式。
  • 目錄與導航:正文自動掃描 h1–h6 生成目錄 TOC;點擊可平滑滾動定位;正文內的內聯鏈接若匹配同級文件或相對路徑,可繼續在面板內打開。
  • 編輯器功能:支持 ⧉ 複製原文、A-/A+ 字號縮放(70%–150%,持久化)、⏱ 自動跟隨磁盤變更(可見時每 3 秒探測 mtime)、⟳ 手動重載、↗ 系統打開。
  • 主題與兼容:明暗主題跟隨;保留原生出口;關閉面板後右下角保留 📖 懸浮入口,可重開最近文檔。

安裝與啓用

前置要求:
1. 已安裝 DSH 且版本 >= 0.1.0-rc.6。
2. 已啓動過 DSH。
3. 系統環境變量 PATH 中包含 pnpm。

安裝命令:

dsh plugin --profile web add github:wjx-ai/dsh-md-reader

安裝後,包內的 cordis.patch.yml 會作爲 Profile Bundle patch 自動合併進 profile 層棧。安裝完成後刷新瀏覽器即可生效。

使用方法

  • 打開文檔:點擊會話中任意 .md / .markdown / .mdown / .mkd / .txt 或圖片文件鏈接,右側展開三欄閱讀面板。
  • 快捷鍵操作:
  • ☰:展開/收起目錄
  • ⧉:複製原文
  • A- / A+:縮小 / 放大字號
  • ⏱:切換自動跟隨磁盤變更
  • ⟳:手動重載文檔
  • ↗:用系統默認程序打開
  • Esc / ×:關閉面板
  • 關閉後:面板關閉後,右下角保留 📖 懸浮入口,點擊可重開最近文檔。

宿主半身 API

插件宿主半身提供只讀 HTTP 路由,供瀏覽器半身調用:

GET /api/md-reader/file?path=<絕對或相對路徑>&base=<可選解析基目錄>[&meta=1]
GET /api/md-reader/list?dir=<目錄>
  • 參數說明:
  • path:文件路徑,支持絕對路徑或相對於 base 的相對路徑。
  • base:可選,解析相對路徑的基目錄。
  • meta=1:僅返回元信息,用於自動跟隨輪詢。
  • 返回內容:
  • 文本文件:{ ok, kind:'text', path, dir, name, size, mtime, content }
  • 圖片:{ ok, kind:'image', mime, data }(Base64 內聯)
  • 列表:返回目錄文件列表
  • 安全限制:
  • 擴展名白名單:.md, .markdown, .mdown, .mkd, .txt 及常見圖片。
  • 大小限制:文本 2 MiB,圖片 8 MiB,列表 500 條。
  • 路徑限制:webServer 綁定非迴環地址時,絕對路徑必須落在已註冊工作區根內。
  • 認證:未認證請求返回 401。

注意事項

  • 插件依賴 DSH >= 0.1.0-rc.6,且安裝命令需 PATH 中有 pnpm。
  • cordis.patch.yml 會自動合併,無需手動編輯配置。
  • 插件全程只讀,無寫入端點,未認證請求會被攔截。
  • 在空白會話頁下,面板可能會退化爲浮層樣式;正常點擊文件鏈接時,三欄佈局總是成立。
  • 雙半身插件要求宿主半身提供只讀 HTTP 路由,瀏覽器半身攔截點擊並渲染。

目錄與倉庫

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

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

小夜