dsh-markdown-composer:讓 DSH 輸入框支持 Markdown

前言

DeepSeek Harness (DSH) 的標準輸入框目前主要處理純文本。當需要使用 Markdown 進行格式化時,開發者通常需要手動編寫代碼或依賴外部工具。dsh-markdown-composer 插件通過在官方輸入框的基礎上增加功能,解決了這個問題。它是一個純增量插件,不會替換官方輸入框,從而保留了附件上傳、模型選擇、權限/計劃控件、斜槓命令等全部官方能力。

核心功能

實時預覽

在輸入框上方會出現一個預覽卡片,草稿內容會實時渲染。該預覽使用官方的 MarkdownText 原語,與對話正文使用相同的 GFM + TeX 渲染器。支持的語法包括標題、加粗/斜體/刪除線、行內代碼、圍欄代碼塊(帶高亮)、有序/無序/任務/嵌套列表、引用、表格、鏈接、腳註、KaTeX 數學公式和分隔線。附件和圖片不參與預覽渲染。

格式化工具欄

預覽卡片頭部集成了 12 個按鈕,包括加粗、斜體、刪除線、行內代碼、鏈接、H1、H2、無序列表、有序列表、任務列表、引用和代碼塊。點擊按鈕不會搶走輸入框的焦點。

語法快捷鍵

支持在輸入框內直接使用快捷鍵插入或切換語法。macOS 使用 ⌘,Windows/Linux 使用 Ctrl。快捷鍵按物理鍵位判定。

快捷鍵 動作
⌘B 加粗
⌘I 斜體
⌘K 鏈接
⌘⇧1 / ⌘⇧2 / ⌘⇧3 一級 / 二級 / 三級標題
⌘⇧8 無序列表
⌘⇧7 有序列表
⌘⇧9 任務列表
⌘⇧. 引用
⌘⇧C 代碼塊

列表續寫與 Chip 安全

在列表項或引用行按 Shift+Enter 換行,會自動補上同級標記(如 -、*、1.、- [ ]、>)。在空列表項上再按一次 Shift+Enter 會退出列表。該插件還實現了引用 chip 的安全編輯計劃,確保在編輯草稿時,包含 @文件 或 /指令 chip 的區間不會被覆蓋或降級爲純文本。

安裝與啓用

Web 端安裝

  1. 將插件倉庫放到任意目錄。
  2. 在對應的 profile 的 package.json 中添加依賴:
// ~/.dsh/profiles/<profile>/package.json
{
  "dependencies": {
    "dsh-markdown-composer": "link:/path/to/dsh-markdown-composer"
  }
}
  1. 運行安裝命令:
dsh plugin --profile web install
  1. 重啓 DSH 應用後生效。

桌面端安裝

CLI 的 dsh plugin 命令不支持桌面端 profile。需要在 DSH 應用內使用插件管理器(設置 → 插件,或 Agent 側的 plugin_manager 工具)安裝同一個 link: 依賴。

使用示例

列表續寫

在列表項中按下 Shift+Enter,光標會自動落在下一行的同級標記後:

- 第一點
- 第二點

記憶偏好

預覽開關與摺疊狀態會保存在 localStorage(dsh-markdown-composer.*)中,刷新或重啓後保持上次的設置。

注意事項

  • 輸入內容:輸入框內顯示的仍然是原始 Markdown 文本,所見即所得通過上方的預覽卡片體現。
  • Enter 鍵:Enter 鍵保持 DSH 的原始語義(發送消息),列表續寫僅支持 Shift+Enter。
  • 桌面端限制:桌面端需通過應用內管理器安裝,不支持 dsh plugin --profile desktop。
  • 附件與鏈接:預覽不渲染附件和圖片;本地文件相對路徑在工作區中不會變成可點擊的文件鏈接。

總結

dsh-markdown-composer 是一個針對 DSH 輸入體驗的增量增強插件。它通過實時預覽、工具欄和快捷鍵,讓 Markdown 編輯更直觀,同時保持了與官方輸入框的兼容性。該插件由 dgmico 維護,採用 MIT 許可證。

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

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

小夜