dsh-preview-panel

by Jiong-w-ang

0 UI 增强github 检测到 manifest package.json#dsh收录于 08-16

DeepSeek Harness多标签预览面板插件

A multi-tab preview panel plugin for DeepSeek Harness

安装

dsh plugin --profile web add github:Jiong-w-ang/dsh-preview-panel

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗

安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。

README

English | 中文

Agent 产出物预览面板。浏览器侧在会话视图环(conversation.view,id preview)中注册一个标签页:累积某轮次产出的文件(来自变更工具的 render-intent locations,再按可预览扩展名白名单过滤),并在沙箱化界面中渲染选中的文件——HTML 用带 sandbox 的 iframe、图片与 SVG 内联、JSON/Markdown 以只读代码块展示。本包是纯消费方:从 cordis.yml 中移除即可零成本关闭该标签页。

使用

在客户端中组合本包后,preview 标签页会出现在 chat 视图旁:

plugins:
  '@deepseek-ai/dsh-client-ui-preview': true

每个轮次,面板会累积 render-intent locations 中扩展名在白名单内(.html、.htm、.svg、.png、.jpg、.jpeg、.json、.md)的文件,按路径去重、最新轮次优先。选中文件后,通过 Host 的 session.readFile RPC 读取并按 MIME 渲染:

  • text/html — 带 sandbox="allow-scripts" 的 iframe;页面脚本运行在不透明源上,无法触达外壳
  • image/png / image/jpeg / image/svg+xml — 以 base64 data URL 内联的 <img>
  • application/json / text/markdown / 其他 — 只读代码块(Markdown 渲染为格式化文本)

Host 会拒绝会话 cwd 之外、扩展名白名单之外、或超过 20 MiB 的读取(5 MiB 返回带警告的截断预览)。

Model Experience

无:预览面板仅在浏览器中渲染会话数据,不进入任何模型请求。

KV Cache effect

无;本包既不组装也不发送 provider 请求。

Known Limitations and Deferred Work

  • 文件内容读取依赖新的 host→client RPC — 面板通过 session.readFile 远端接口读取产出文件字节,接口限定会话 cwd、可预览扩展名白名单与大小上限;Host 拒绝时回退为“不可预览”提示。

原始 README: https://github.com/Jiong-w-ang/dsh-preview-panel/blob/main/README.zh.md ↗