DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Visualize — DeepSeek Harness 插件(DSH Plugin)
← Plugins

dsh-visualize

Visualize

visualize_html 工具 + dsh Web UI 的沙盒化 HTML 预览卡片(Codex /vizualize 类似功能)

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add dsh-visualize@0.2.1
README兼容性版本

兼容性与来源证明

Visualize 以 dsh-visualize 发布,当前版本为 0.2.1。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
npm
Registry 更新时间
2026/9/20

版本

0.2.1stable
2026/8/17
0.1.0stable
2026/8/17

相关插件

正在加载相关插件…

最新版
0.2.1
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
21.7 kB
文件数
6
Surface
web
许可证
MIT
发布源
npm
GitHub
★ 1
周下载
91
最近提交
2026/9/20
查看源码 ↗
项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录

相关插件

继续浏览 ui-customization 分类下经过校验的插件。

Remote Web Ui@linxin666/dsh-remote-web-ui通过扫码配对访问 dsh Web GUI,共享一个官方界面:设置按钮旁的二维码可将手机和 PC 配对到同一个 Web GUI(手机采用竖屏触控适配层,PC 使用完整桌面界面),通过一次性令牌和 rClient Ui Task Board@linxin666/dsh-client-ui-task-board面向 DSH Web GUI 的主机权威任务面板,支持实际会话执行、主机 cron 调度以及可选的跨平台空闲睡眠保护;以挂载方式提供,无需修改 DSH 源代码。Client Ui Git Graph@linxin666/dsh-client-ui-git-graph外部 dsh Web GUI 插件:空会话 Git 分支选择器和 Git 图,包含实际的主机端 Git 操作与防护,作为 dsh 配置文件包Pet@linxin666/dsh-pet适用于 dsh Web GUI 的多宠物伴侣插件:由注册表驱动的浮动宠物,可响应模型活动,支持为每只宠物命名、抚摸/喂食互动以及亲密度评分

README

dsh-visualize

Out-of-tree DSH (DeepSeek Harness) plugin: the visualize_html tool plus a sandboxed HTML preview card in the Web chat — a Codex /vizualize analogue rendered inside the conversation.

What it does

  • Node half (src/index.ts, mounts in the host loader tree): registers the visualize_html(path) tool and the human-facing /visualize [path] command. It resolves the path against the session workspace, reads the file through ctx.fs (the profile's sandbox policy applies), shows the model only a short summary, and embeds the capped HTML in the durable presentationMeta (tool/result.meta → ToolResultNode.meta). The HTML never enters model context; the canonical value is execution-local.
  • Browser half (src/client.tsx, a dsh.client dual-face package): registers the visualize_html keyed view in the tool.call.toolview slot. The settled card renders meta.html in an iframe with sandbox="allow-scripts" (no allow-same-origin → opaque origin: scripts run but cannot reach the page, cookies, storage, or same-origin resources), plus Open in browser (existing host.openPath) and Copy HTML.

User-facing surface

  • /visualize <path> — slash command (discovered by the Web command menu): steers a user turn that calls visualize_html, so the preview card appears in the chat.
  • Bare /visualize (no path) — a request to the model to create a visualization: it thinks about what would be useful in the current context, builds it as a self-contained HTML file, and renders it with visualize_html.
  • The model also sees the tool:visualize_html prompt section and the tool schema itself — that guidance is what makes the command work end to end.

Install

Published to npm: dsh-visualize.

# the profile is a pnpm workspace root, so -w is required
dsh plugin --profile <name> add -w dsh-visualize

The package is a bundle — it declares dsh.bundle.patch and ships its own cordis.patch.yml, so dsh plugin add registers it as a profile layer automatically (no manual patch rows). Then restart the profile (the shipped web surface disables HMR, so profile layers are not watched live):

dsh --profile <name> --port 3081

Local development checkout (live link, rebuilds picked up on page refresh):

dsh plugin --profile <name> add -w link:/path/to/dsh-plugins/visualize

Runtime config (row visualize):

config:
  maxPreviewBytes: 262144   # cap on the HTML embedded in the durable result

Development

pnpm install            # from the repo root (pnpm workspace)
pnpm --filter dsh-visualize build      # tsdown → lib/index.mjs + lib/client.js
pnpm --filter dsh-visualize typecheck  # tsc --noEmit
pnpm --filter dsh-visualize test       # node --test (node half unit tests)

After a rebuild, refresh the browser page — the client bundle is served no-cache; a server restart is only needed when the loader tree changes.

Limitations

  • Sibling assets do not load — srcdoc has no base URL, so relative CSS/images next to the file are not fetched inside the preview; self-contained HTML renders fully. (Deferred: a host RPC to serve sibling assets.)
  • Preview truncation is a hard byte cap; the full file opens via the browser.
  • The card is Web-only (keyed tool view); headless surfaces see the summary text.