dsh-artifact-preview
为 DeepSeek Harness (DSH) 提供 Codex 风格的产物预览。
dsh-artifact-preview 是一个客户端插件(dsh.client.platform: "web"),让产出的文件在对话中直接可见、可检查:
- 对话内产物卡片行 —— agent 写完文件后,消息末尾会出现"产物"行:按类型着色的卡片(Markdown 蓝 / 代码 绿 / CSV 青 / JSON 琥珀 / 图片 粉 / HTML 橙 / 文档 灰),图片卡片内嵌缩略图;点击任意卡片打开侧边预览。
- 分屏侧边预览面板 —— 可拖宽的真分屏右侧面板(对话内容完整可见、不被遮挡),支持渲染:
- Markdown → 富文本(标题、表格、列表、代码块、链接、图片;相对路径本地图片自动解析) - 源代码(.py .js .ts .sh .css …)→ 深色语法高亮 - CSV → HTML 表格 - JSON → 可折叠树 - 图片(.png .jpg .gif .webp .svg …)→ 棋盘格衬底居中 - HTML / 本地端口 → iframe(含开发服务器端口 chips、地址栏、后退/前进/刷新、外部打开)
- 全局钩子(
window.__dshOpenFilePreview/__dshCanPreviewPath),其他插件可把"打开文件"意图路由进预览面板。
安装
从 GitHub 安装(本包同时声明了 dsh.bundle 与 dsh.client,dsh plugin add 会一次性装入依赖并自动注册为活动客户端插件层,无需手工编辑 profile):
dsh plugin --profile web add github:nirvanaslash/dsh-artifact-preview重启 dsh web 服务(或 DSH Desktop)并刷新页面。
发布到 npm 后,dsh plugin --profile web add dsh-artifact-preview 与市场搜索安装同样可用。
前置条件
- DSH Desktop(或安装了
dsh-file-changes配套插件的dsh webprofile)—— 预览通过其/dsh-files/static/<绝对路径>路由读取文件内容。DSH Desktop 内置该路由;纯dsh web安装需先安装dsh-file-changes配套插件。 - 使用
write/edit类工具产出文件的模型("产物"正是由此追踪)。
兼容性
- 面向 DSH
0.1.0-rc.7(DSH Desktop 2.0.1 内置)客户端插件 ABI:window.__ModuleLoader__模块格式、dsh.client元数据、dsh.bundlepatch 注册、conversation.chat.turnTail链槽。链槽选举依赖低priority(-100)赢得产物行、优先于官方 deliverables 行;DSH 升级后请实测。
已知边界
- 对话产物行与预览面板在本包内完全自包含。
- 两项可选行为不随包分发(需修改 DSH 核心文件,公共包有意不带):文件视图的多类型预览按钮、消息正文中文件名引用"打开即预览"。缺少它们时:文件视图预览保持 DSH 官方仅 HTML 的行为,正文引用用系统程序打开。
许可
MIT