前言¶
在 DSH 里做智能体任务时,模型输出经常是 Markdown:计划、报告、对比表、迁移说明。这些内容留在会话里可以,但如果要转发、存档或离线打开,就需要一个完整页面。dsh-md-html-render 提供这种能力:把 Markdown 渲染成 standalone、self-contained 的 HTML。
DSH 生态强调「一切皆插件」;社区目录是独立站点,并不是官方应用商店。下面介绍这个插件的定位、安装、用法和注意点。
这是什么¶
dsh-md-html-render 是一个 DeepSeek Harness(DSH)插件,由 LeslieWylie 维护,许可证为 MIT。
它有两个入口:
- 模型可调用的
md_html_render工具,可在 headless profile 中使用。 - Web GUI 的 MD drawer,可在 Web 会话中浏览、渲染、编辑和导出 Markdown。
两者使用同一渲染器。输出是 standalone HTML,内嵌样式,不加载外部 stylesheet、font、script 或 image。
GitHub 仓库地址为 https://github.com/LeslieWylie/dsh-md-preview 。v0.3.0 起,包名从 dsh-md-preview 改为 dsh-md-html-render;GitHub 仓库路径仍为 dsh-md-preview。README 说明它目前未上 npm,安装来源是 GitHub。
核心功能¶
模型调用¶
工具签名为:
md_html_render(markdown, title?, save_path?) -> { html, savedPath?, error? }
参数说明:
| 参数 | 必需 | 说明 |
|---|---|---|
markdown |
是 | Markdown 源 |
title |
否 | 页面标题 |
save_path |
否 | 输出文件路径,通过 session fs service 解析,并遵守 sandbox 策略 |
如果 save_path 被 sandbox 拒绝,工具仍会返回 HTML,同时返回 error。
Web GUI drawer¶
在 Web GUI 中,先点击 session header 的 MD,再浏览 working directory。点击 .md 文件后,可以就地渲染、编辑或导出,并跟随 harness 主题显示。
Drawer 的 readFile 只接受 .md、.markdown、.mdx 或 .txt。
渲染与安全¶
这个插件的边界比较明确:
- 无 runtime dependencies。
- 所有读和写都通过 harness
fsservice 和 sandbox。 - 文档文本会经过 HTML 转义,不安全链接目标会被折叠,不允许 raw HTML execution。
fsservice 是唯一硬依赖;缺少它时插件记录警告并保持 inert。- 可以在 headless、Web GUI 或两者中运行。
运行环境要求 Node ^22.19.0 || >=24.0.0。
安装与启用¶
先确认当前 Node 版本满足要求。
在 profile 的 package.json 中添加依赖:
// ~/.dsh/profiles/<profile>/package.json
{
"dependencies": {
"dsh-md-html-render": "github:LeslieWylie/dsh-md-preview#v0.3.0"
}
}
然后安装并启动:
cd ~/.dsh/profiles/<profile> && pnpm install
dsh --profile <profile>
经过上面的步骤,headless profile 可获得 md_html_render;Web GUI profile 还能获得 MD drawer。
如果不想编辑 profile,也可以按 README 的方式做临时加载:
dsh --profile web --patch <(printf -- "- insert:\n - id: md-preview\n name: dsh-md-html-render\n")
典型用法¶
让模型生成 HTML¶
可以用类似下面的提示:
Render this migration plan to
~/Desktop/plan.html
模型调用 md_html_render 后,会返回 html;如果成功写入 save_path,会带有 savedPath;如果写入被拒,会带有 error。
在 Web GUI 查看本地 Markdown¶
启动一个带 Web GUI 的 profile,然后在 session header 点击 MD。找到目标 Markdown 文件后点击渲染,再根据需要进行编辑或导出。导出的页面与 md_html_render 使用同一渲染器。
适用场景与注意¶
适合以下情况:
- headless DSH profile 需要把 Markdown 变成完整 HTML。
- Web GUI 中需要就地查看、编辑和导出 Markdown。
- 希望输出页不依赖外部资源,并且插件无 runtime dependencies。
- 需要所有文件操作都走 harness fs service 和 sandbox。
安装前需要注意:
- 插件以当前 dsh 进程权限运行;虽然读写通过 harness fs service 和 sandbox,仍建议先检查源码。
- 许可证为 MIT,可按许可证要求使用。
fsservice 缺失时插件不会加载能力,只会记录警告并保持 inert。- 不要把 npm 上的
dsh-md-preview当作本插件;本插件包名是dsh-md-html-render。
验证¶
从源码验证时运行:
npm test
这会执行四套测试。Harness 相关包作为普通 devDependencies 用于测试;如果测试日志出现 SKIPPED,应把这次运行视为未验证。
资源¶
- GitHub:https://github.com/LeslieWylie/dsh-md-preview
- 许可证:MIT
- 已核实资料未提供目录页 URL;如需在社区目录中查找,可按插件名
dsh-md-html-render检索。