Nagi-ovo/dsh-visualize 预览 preview

Nagi-ovo/dsh-visualize

Plugin插件 Native原生 ⭐ 286 BSD-3-Clause Data & Analysis数据与分析Sessions & Context会话与上下文

在DSH对话中生成交互式可视化|在DSH对话中渲染模型生成的交互式卡片

Project Overview项目介绍

dsh-visualize is a native plugin built exclusively for DeepSeek Harness (DSH), designed to add interactive visualization capabilities to DSH’s Web UI interface. After the DSH model calls the built-in visualize tool provided by this plugin, an interactive card will be rendered directly inside the conversation thread. These cards can be used for a wide range of use cases, including algorithm simulators, data charts, content comparison panels, UI mockups, and other dynamic interactive content. To install the plugin, you can run the DSH CLI command dsh plugin --profile web add github:Nagi-ovo/dsh-visualize, or install it via the community plugin registry from DSH’s settings page.

Using the plugin requires no extra steps from end users beyond what they already do in DSH. All you need to do is tell the DSH model what kind of visualization you want, for example, “create an interactive parameter-adjustable sorting algorithm visualization”. The model will then generate the required HTML fragment and automatically call the visualize tool to insert it into the conversation. All cards automatically match DSH’s light and dark theme and default whale blue color scheme, and they can be restored during session replay even if the original fragment file is no longer available.

All generated visualization cards run inside a sandboxed iframe from an opaque origin, so they cannot access the DSH host page. Content Security Policy (CSP) blocks all external network requests, nested pages, and form submissions, only allowing static resources from pre-approved CDNs to load. Currently, interactive cards can only be rendered in DSH’s Web UI; TUI and headless clients only display plain text tool outputs, and buttons inside cards cannot send follow-up messages to the main conversation yet. The plugin is open source under the permissive BSD-3-Clause license, with a default 1MB size limit per HTML fragment that can be adjusted via configuration.

这是一款专为DeepSeek Harness(DSH)开发的原生插件,用于在DSH的Web UI对话中生成可交互可视化卡片。模型调用visualize工具后,即可在对话流中直接生成可交互卡片,支持用来制作算法模拟器、数据图表、内容对比面板、UI原型mockup等多种交互内容。用户可以通过DSH CLI直接从GitHub安装,也可以通过社区插件注册表在设置面板中安装。

使用流程十分简单,用户只需要直接告诉DSH模型自己需要哪类可视化内容,模型会自动生成对应的HTML片段,然后调用visualize工具将其插入到当前对话中。生成的卡片会自动适配DSH的明暗主题和默认配色方案,即使原始片段文件不存在,会话重放时也能从持久化工具结果恢复卡片。它适合需要在对话过程中生成交互式数据展示、动态演示内容的DSH用户使用。

插件生成的内容运行在沙箱iframe中,受内容安全策略(CSP)限制,会阻止未授权的外部网络请求,仅允许加载指定CDN的静态资源,保障使用安全。目前它仅支持在DSH的Web UI中渲染交互卡片,TUI和无界面客户端仅显示普通工具结果,卡片内按钮暂不支持向主对话发送后续消息。该插件以BSD-3-Clause许可开源,默认单片段大小上限为1MB,可通过配置调整。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 no risk signal found未发现风险信号
  • This site's static screen found no obvious risk signal (stars, license, activity, manifest)本站静态筛查没发现明显风险信号(星标、许可证、更新活跃度、清单完整度)
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add @nagi-ovo/dsh-visualize

把 Nagi-ovo/dsh-visualize 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-visualize

dsh-visualize

简体中文 | English

dsh-visualize 在 dshfind 插件目录上的展示卡

让 DSH 不只回答一段文字。模型调用 visualize 后,Web UI 会在对话里直接出现一张可交互卡片,用来做模拟器、图表、对比面板或 UI mockup。

DSH 对话内生成交互式可视化演示

安装

推荐用 npm 装到 DSH 的 web profile:

dsh plugin --profile web add @nagi-ovo/dsh-visualize
# 如果 dsh web 正在运行,重启后刷新页面

也可以从 GitHub 安装:dsh plugin --profile web add github:Nagi-ovo/dsh-visualize。可以运行 dsh --profile web --dump-config 确认插件已经进入最终配置。需要修改源码时,克隆仓库并在仓库目录运行 dsh plugin --profile web add .;构建产物已经提交,不需要额外构建。使用社区 plugin-registry 的用户也可以从「设置 → 插件」安装。

兼容 DSH 0.1.1-rc.2 到 0.2.0-rc.2。

怎么用

直接告诉模型你想看什么,例如「做一个能调参数的排序算法可视化」。模型会写出一份 HTML fragment,再调用 visualize(path, title?, mode?) 把它放进对话。适合并排比较的内容可以使用 mode: "wide"。

卡片会跟随 DSH 的明暗主题和鲸鱼蓝配色。会话重放时,页面从持久化的工具结果恢复,不依赖原始 fragment 文件仍然存在。

DSH 默认会把已完成回合的工具过程折叠起来。折叠时,这一轮画出的卡片会再显示在最终回答下方,不用展开过程也能看到;「工作步骤展示」选「完全展开」时则只在原位显示。

安全

卡片运行在不透明来源的 sandboxed iframe 中,不能接触宿主页面。CSP 会阻止网络请求、嵌套页面和表单提交,只允许从固定 CDN 加载静态资源。单个 fragment 默认上限为 1000000 字节,可以通过 maxFragmentBytes 调整。

限制

目前只在 Web UI 中渲染交互卡片,TUI 和 headless 客户端会显示普通工具结果。卡片内的按钮暂时不能向主对话发送 follow-up 消息。

灵感来自 Codex 桌面端的 /visualize;skill 的分层 reference 和 Chart.js 优先路线借鉴了 himself65/finance-skills。

← 上一个 Prev deepseek-harness-desktop 下一个 Next awesome-deepseek-harness →