omdsh-dev/dsh-tool-markdown ↗★ 2
@deepseek-ai/dsh-tool-markdown
DSH Markdown 工具:HTML 转 Markdown、白名单 Markdown 转 HTML、GFM 表格规范化、目录生成。零依赖轻量解析器。
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:omdsh-dev/dsh-tool-markdown说明文档
阅读完整 README ↗dsh-tool-markdown
DSH Markdown 工具插件 —— HTML↔Markdown 转换、GFM 表格规范化、目录生成。零依赖、纯函数、手写轻量解析器。
动机
模型最常见的文档场景:用户贴一段 HTML(网页源码、邮件、导出文件)、贴表格要求整理、或要求"转成 markdown"。没有工具时模型只能硬编码处理——HTML 实体会错、表格会乱、网页噪音(导航/脚本/广告)会混入。本插件提供确定性转换,与 dsh-tool-csv 互补:csv 管结构化表格,markdown 管文档/网页。
安全模型
- 零依赖:手写递归下降 HTML 解析器(不引入 cheerio/jsdom——净增数十 MB 且是攻击面)
- 零执行面:不 eval、不 new Function、不加载远程资源、不解析 CSS 布局
- 内容剥离:script/style/iframe/object/noscript 内容整体剥离(安全 + 噪音)
- md2html 白名单:只输出
p h1-h6 ul ol li blockquote pre code a img strong em br hr table thead tbody tr th td;文本一律 HTML 转义——markdown 内嵌 `` 只会显示为文本 - 链接 scheme 白名单:
http/https/mailto;javascript:/data:链接降级为纯文本 - 资源上限:嵌套深度 64 层报错(防栈溢出);输入
maxBytes默认 256KB、硬顶 1MB(超限报错不截断) - 工具参数会记入会话日志,不要传入含密钥/会话数据的 HTML
工具声明
注册 markdown 工具(@deepseek-ai/dsh-tool-markdown,row id tool-markdown),统一输出文本。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
action | string | ✅ | html2md / md2html / table / toc |
html | string | html2md 输入(片段或完整文档) | |
markdown | string | md2html/toc 输入 | |
text | string | table 输入(HTML `` 或管道分隔文本) | |
baseUrl | string | 相对 href/src 解析基准(naive join) | |
maxBytes | integer | 输入上限,默认 256000,硬顶 1000000 |
Actions
| action | 功能 |
|---|