前言¶
在 DeepSeek Harness Web 里,智能体一轮执行后经常会生成 Markdown、代码、图片或文本文件。默认点击 produced-file chip 会把文件交给系统默认应用处理;如果只是快速确认产物,打开原生应用或新标签页的成本偏高。
dsh-markdown-preview 针对这个场景,将点击行为替换为对话内预览:保留原有 produced-files 行,但让 Markdown、图片、代码和受限文本直接在会话中展开。
这是什么¶
dsh-markdown-preview 是一个 DSH 社区插件,用于在 DSH Web 中预览 produced files。当前 package.json 版本为 0.3.0,许可证为 MIT。
它解决的是“文件已经生成,但我想马上看一下内容”的问题。插件不会改变文件落盘位置,也不提供写入能力。
核心能力¶
点击 chip 后在对话中预览¶
安装并重启后,当某轮次生成文件时,点击 produced-file chip 可切换预览面板。
预览不打开原生应用,也不打开新标签页。
Markdown、代码、图片和纯文本¶
- Markdown 在服务端使用
markdown-it渲染,支持 GFM 表格、围栏代码、引用、链接和硬换行;围栏代码使用highlight.js高亮。 - 代码文件支持 40+ 扩展名,在服务端使用
highlight.js高亮,并以深色编辑器样式显示。 - 图片支持 PNG、JPEG、GIF、WebP、SVG,作为 data URL 内联预览;SVG 通过
<img>加载时不会执行脚本。 - 其他文本文件使用纯文本回退;二进制文件会被嗅探并拒绝预览。
全屏与面板操作¶
预览面板头部提供文件大小、全屏、复制内容、在系统应用中打开和折叠操作。
Markdown、图片、代码或纯文本预览可以展开为全屏 overlay,通过按钮或 Esc 关闭。
保留原有体验¶
该插件保留原有 produced-files 行体验:chips、“+ N files”、“Show in folder”和 inline code-mentions 仍可正常工作。
预览面板使用 DSH 主题变量适配明暗主题,并修复深色模式下文字不可读的问题。
安装与启用¶
先确认环境满足:DSH 版本不低于 0.1.0-rc.6,并且 PATH 中有 pnpm,因为 dsh plugin 会转发到 pnpm。
安装命令:
dsh plugin --profile web add dsh-markdown-preview
安装后重启 dsh web。
无需额外配置。插件生效后,只要某轮次生成了文件,点击 produced-file chip 即可切换预览面板。
卸载¶
dsh plugin --profile web remove dsh-markdown-preview
开发模式¶
如果想基于源码修改,可以克隆仓库后以本地路径安装:
git clone https://github.com/GitHubJiKe/dsh-markdown-preview.git
cd dsh-markdown-preview
npm install
dsh plugin --profile web add file:$(pwd)
完成后重启 dsh web。该方式会使用当前工作副本,适合调试。
运行机制与安全边界¶
插件分为 host 端和 client 端。
Host 端注册 /preview RPC channel,并放在 loopback trust fence 下。它负责读取 Markdown、图片、代码或受限文本;打开系统应用的动作代理到 host.openPath。
Client 端接管 deliverables 事件和 conversation.chat.turnTail slot,禁用官方 ui-deliverables 行,并重新提供相关 prompt section/chatFileMentions。
渲染发生在 host 端,浏览器侧保持轻量并负责展示。
安全相关限制:
- 预览通道仅限 loopback,并受 connection trust fence 保护。
- 预览是只读的,没有写入端点。
- Markdown 使用
html:false,原始 HTML 会被转义;链接受markdown-it默认validateLink限制为http(s)/mailto/#。 - 文本文件上限为 1 MiB,图片上限为 4 MiB;超限时显示显式截断提示。
- 二进制文件会被嗅探并拒绝预览。
因为插件会在 DSH 进程中注册通道并读取文件,安装前建议检查源码、依赖和许可证。当前依赖包含 highlight.js ^11.11.1 与 markdown-it ^15.0.0。
适合谁¶
适合经常使用 DSH Web 调试智能体产物的人,尤其是需要频繁查看 Markdown、代码和图片,但不想每次切换原生应用的开发者。
如果主要需求是文件树、路径提及、HTML 导出或 Web 项目预览,该插件不是对应工具;它专注于在官方 produced-files 行上提供内联预览。
链接¶
- GitHub:https://github.com/GitHubJiKe/dsh-markdown-preview
- 目录页:https://www.skillhub.cn/plugins/GitHubJiKe/dsh-markdown-preview