前言¶
在 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