前言¶
在 DSH 中處理 Markdown 產出時,模型可能給出整段文本,而使用者往往只想修改其中幾個塊、列表項或一句話。直接把自然語言發給模型,常常缺少原文位置和上下文。
dsh-md-annotator 用於在 dsh-better-sidebar 的 Markdown 預覽中逐項批註,再把批註整理成結構化修改指令寫入當前會話輸入框,便於後續發送給模型。
這是什麼¶
dsh-md-annotator 是一個 DSH web 插件,定位是在側邊欄 Markdown 預覽上做批註,並把批註轉成修改指令。
它依賴 DSH web profile,並依賴已掛載的 dsh-better-sidebar。倉庫賬號爲 3361805598-gif,package.json 的 author 字段爲 lawyer_cui;許可證爲 MIT。
核心功能¶
批註對象與類型¶
打開 .md 文件時,插件會把文檔解析爲標題、段落、列表項、表格、代碼塊、引用、水平線等塊。懸停塊或列表項後可添加內聯批註,支持增、改、刪,一處可添加多條,並可打“必須改、建議改、疑問”等類型標籤。
也可以選中同一段落或列表項內的任意文字添加選區批註。被選中文字會持續高亮,批註引用精確到選中文字。
批註展示與清單¶
已批註塊會顯示琥珀色左邊框和計數角標。底部固定欄顯示總數,可收起或展開批註清單。
批註清單懸浮面板可拖動位置、可調整大小,支持單條移除、一鍵清空,並可點擊跳轉定位。
發送修改指令¶
點擊“全部發送”後,插件會把結構化指令寫入當前會話輸入框草稿。指令按類型分組,包含文件路徑、行號、原文引用和批註。
清單內也支持逐條發送,或勾選後批量發送。
重生成後的重匹配¶
文件被重新生成後,插件會按塊序號和原文重匹配批註。失配項會標註“原文已變化”。
設置與備份¶
側邊欄設置頁可以整體開關本預覽器,並可配置發送後自動清空批註與發送內容前綴。
清單面板與底部欄提供導出按鈕,可把當前文件全部批註下載爲 JSON 備份。批註保存在瀏覽器內存中:切換 Tab 或會話不丟失,但重啓 DSH 或停用插件後會清空。
安裝與啓用¶
先確認前置條件:
- Node ≥ 20
- pnpm ≥ 10
dsh web可正常運行- 已掛載
dsh-better-sidebar
如果未掛載 dsh-better-sidebar,插件行會一直等待服務而不會激活。
安裝發佈版¶
下載 v0.6.0 安裝包並校驗 SHA-256:
curl -L -o dsh-md-annotator-0.6.0.tgz \
https://github.com/3361805598-gif/dsh-md-annotator/releases/download/v0.6.0/dsh-md-annotator-0.6.0.tgz
shasum -a 256 dsh-md-annotator-0.6.0.tgz
v0.6.0 安裝包的 SHA-256 應爲:
7e389c52e9ec65f6864b766fe39e586c67d5df80fa94fdd26cf7cfc18c9fff08
把安裝包放入 web profile 的 vendor 目錄後執行安裝:
mkdir -p ~/.dsh/profiles/web/vendor
cp dsh-md-annotator-0.6.0.tgz ~/.dsh/profiles/web/vendor/
dsh plugin --profile web add file:vendor/dsh-md-annotator-0.6.0.tgz
安裝後重啓 dsh web,再在瀏覽器中硬刷新,快捷鍵爲 Cmd/Ctrl+Shift+R。
從源碼打包¶
在包目錄內執行:
pnpm pack
cp dist/dsh-md-annotator-<version>.tgz ~/.dsh/profiles/web/vendor/
dsh plugin --profile web add file:vendor/dsh-md-annotator-<version>.tgz
完成後同樣重啓 dsh web,並在瀏覽器中硬刷新。
停用與卸載¶
臨時停用時,在側邊欄設置頁的側邊卡片中關閉 md-annotator 條目。停用後,.md 文件的內置 Markdown 預覽會恢復。
完全卸載:
dsh plugin --profile web remove dsh-md-annotator
然後重啓 dsh web。
典型用法¶
1、打開 .md 文件,在預覽中懸停任意塊或列表項,點擊“+批註”,內聯填寫修改意見。
2、在預覽中拖選同一段落或列表項內的文字,點擊“+批註選區”,填寫意見。
3、點擊“全部發送”,當前會話輸入框草稿會寫入結構化修改指令;回車即可發送給模型。
4、也可以在批註清單內逐條發送,或勾選後批量發送。
5、若臨時不想使用,在側邊欄設置頁關閉 md-annotator 條目。
適用場景與注意¶
這個插件適合在 DSH web 中結合 dsh-better-sidebar 使用,適合需要把 Markdown 預覽中的修改點整理成結構化指令、再發給模型處理的場景。
需要注意:
- 插件運行期間會接管
.md文件的側邊欄預覽,內置預覽的編輯模式不可用;停用後自動恢復。 - 側邊欄支持切換預覽與源碼編輯模式,源碼編輯支持
Cmd/Ctrl+S或宿主保存按鈕寫回原 Markdown 文件。 - 批註保存在瀏覽器內存中,不會寫入原 Markdown 文件;重啓 DSH 或停用插件後會清空。
- UI 爲全中文,無 i18n 層,個人插件定位。
- 內聯 Markdown 解析器爲 CommonMark 子集,不支持 setext 標題、嵌套列表、內聯 HTML、列表項內代碼圍欄或引用、表格單元格轉義管道符。
localStorage持久化與拖拽排序爲後續演進方向。
插件安裝並啓用後會進入 DSH 插件體系運行。安裝前應檢查源碼、依賴和 MIT 許可證;啓用後,插件以當前 dsh 進程權限運行,建議在受信任的項目和倉庫中使用。
鏈接¶
社區目錄頁:https://www.skillhub.cn/plugins/3361805598-gif/dsh-md-annotator